/*
Theme Name: Coldbox
Theme URI: https://coldbox.miruc.co/
Description: Coldbox is a clean blog-focused WordPress theme. It helps increase site traffic from Google and SNS. It is easy to customize, lightweight, SEO friendly, and quicker load. This theme is fully layouted by Flexbox module, that is, it is really flexible. See Demo: https://coldbox.miruc.co/demo/
Version: 1.1.0
Author: Toshihiro Kanai (Mirucon)
Author URI: https://miruc.co/
Tags: blog, one-column, two-columns, right-sidebar, left-sidebar, grid-layout, translation-ready, flexible-header, custom-background, custom-header, custom-colors, custom-menu, featured-images, post-formats, sticky-post, theme-options, editor-style, threaded-comments
Text Domain: coldbox
License: GNU General Public License v3.0
License URI: http://www.gnu.org/licenses/gpl-3.0.html
*/
/*
Responsive Breakpoints
961+     => PC
960-641  => Tablet
639-     => Smartphone
*/
/* ------------------------------------------------------------------------
Table Of Contents

0. Reset
1. Global
2. Base Styling
3. Single
4. Index
5. Archive
6. Page
7. 404 Page
8. Header
9. Footer
10. Sidebar
11. Comment
12. WP native
13. Misc
14. Styling for CJK
15. Plugin
----------------------------------------------------------------------- */
/* ------------------------------------------------------------------------- *
/*  0. Reset
/* ------------------------------------------------------------------------- */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

h1, h2, h3, h4, h5, h6 {
  font: inherit;
}

textarea, input, select, button {
  font: inherit;
  -webkit-tap-highlight-color: rgba(68, 68, 68, .3);
}

a:hover, a:active {
  outline-width: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  overflow: auto;
}

ol, ul {
  list-style: none;
}

/* ------------------------------------------------------------------------- *
*  1. Global
* ------------------------------------------------------------------------- */
html {
  font-size: 62.5% !important;
}

body {
  background-color: #f8f8f8;
  color: #333;
  word-wrap: break-word;
  font-size: 1.65em;
  line-height: 1.4;
  font-family: "Open Sans", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
}

#main {
  margin-bottom: 40px;
}

.container-outer {
  position: relative;
}

.container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  position: relative;
  max-width: 1140px;
  padding: 0 10px;
  margin: 0 auto;
}

@media screen and (max-width: 980px) and (min-width: 641px) {
  .container {
    display: block;
  }
}

@media screen and (max-width: 640px) {
  .container {
    display: block;
    padding: 0;
  }
}

@media screen and (min-width: 961px) {
  .content {
    min-height: 80vh;
    width: 100%;
  }
}

.content-inner {
  padding: 10px;
  background-color: #fafafa;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .05);
}

@media screen and (max-width: 640px) {
  .content-inner {
    padding: 5px;
  }
}

.sidebar-s1 {
  width: 320px;
}

@media screen and (max-width: 980px) {
  .sidebar-s1 {
    width: 100%;
  }
}

.right-sidebar-s1 .content {
  padding-right: 340px;
  padding-left: 0;
}

@media screen and (max-width: 980px) {
  .right-sidebar-s1 .content {
    padding: 0;
  }
}

.right-sidebar-s1 .sidebar-s1 {
  margin-left: -320px;
}

@media screen and (max-width: 980px) {
  .right-sidebar-s1 .sidebar-s1 {
    margin-left: 0;
  }
}

.left-sidebar-s1 .content {
  padding-right: 0;
  padding-left: 340px;
}

@media screen and (max-width: 980px) {
  .left-sidebar-s1 .content {
    padding: 0;
  }
}

.left-sidebar-s1 .sidebar-s1 {
  margin-right: -320px;
  -webkit-order: -1;
      -ms-flex-order: -1;
          order: -1;
}

@media screen and (max-width: 980px) {
  .left-sidebar-s1 .sidebar-s1 {
    margin-right: 0;
  }
}

@media screen and (min-width: 961px) {
  .hide-sidebar-s1 .grid-view .post, .hide-sidebar-s1 .grid-view .page {
    width: 33.333%;
  }
}

.bottom-sidebar-s1 #wrapper > .container {
  display: block;
}

@media screen and (min-width: 961px) {
  .bottom-sidebar-s1 .sidebar-s1 {
    width: 100%;
    margin-top: 24px;
  }
  .bottom-sidebar-s1 .sidebar-inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
  }
  .bottom-sidebar-s1 .sidebar .widget {
    width: calc(33.333% - 10px);
    margin: 5px;
  }
  .bottom-sidebar-s1 .grid-view .post, .bottom-sidebar-s1 .grid-view .page {
    width: 33.333%;
  }
}

::-webkit-scrollbar {
  height: 12px;
  background-color: transparent;
}

::-webkit-scrollbar-thumb {
  background-color: #888;
}

::-webkit-scrollbar-thumb:hover {
  background-color: #777;
}

::-moz-selection {
  background: #00619F;
  color: #fff;
  text-shadow: none;
}

::selection {
  background: #00619F;
  color: #fff;
  text-shadow: none;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  border-style: none;
}

iframe {
  max-width: 100%;
  vertical-align: middle;
}

/* ------------------------------------------------------------------------- *
*  2. Base Styling
* ------------------------------------------------------------------------- */
/*   Base : Typography
/* -------------------------------------------------- */
a {
  color: inherit;
  text-decoration: none;
  transition: all .2s;
  -webkit-tap-highlight-color: rgba(68, 68, 68, .3);
}

b, strong {
  font-weight: bold;
}

big {
  font-size: larger;
}

hr {
  height: 0;
  overflow: visible;
  border: 1px solid #f0f0f0;
}

small {
  font-size: smaller;
}

sub {
  vertical-align: sub;
  font-size: smaller;
}

sup {
  vertical-align: super;
  font-size: smaller;
}

ins {
  text-decoration: underline;
}

address, cite, q, var, em {
  font-style: italic;
}

abbr {
  position: relative;
  text-decoration: none;
}

h1, h2, h3, h4, h5, h6 {
  color: #111;
  line-height: 1.4;
  letter-spacing: -.03em;
}

h1 {
  font-size: 1.875em;
}

h2 {
  font-size: 1.56em;
}

h3 {
  font-size: 1.43em;
}

h4 {
  font-size: 1.34em;
}

h5 {
  font-size: 1.25em;
}

h6 {
  font-size: 1.12em;
}

/*   Base : Entry
/* -------------------------------------------------- */
.entry {
  line-height: 1.6;
}

.entry a {
  color: #00619F;
  box-shadow: 0 1px 0 0 currentColor;
}

.entry a:hover {
  color: #2e4453;
  box-shadow: 0 2px 0 0 #000;
}

.entry dt {
  font-weight: bold;
}

.entry dd {
  margin-bottom: 1em;
}

.entry hr {
  margin: 1em 0;
}

.entry iframe {
  margin-bottom: 1em;
}

.entry p {
  margin-bottom: 1em;
}

.entry p > iframe {
  margin-bottom: 0;
}

.entry .mejs-container {
  margin-bottom: 1em;
}

.entry abbr::after {
  content: attr(title);
  display: block;
  visibility: hidden;
  position: absolute;
  top: -26px;
  right: -7px;
  z-index: 999;
  padding: 0.1875em 0.75em;
  border-radius: 1px;
  background-color: #f8f8f8;
  color: #666;
  font-size: .88em;
  font-weight: 300;
  text-align: center;
  white-space: nowrap;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, .2);
}

.entry abbr:hover::after {
  visibility: visible;
}

.entry h1, .entry h2, .entry h3, .entry h4, .entry h5, .entry h6 {
  font-weight: bold;
}

.entry h1:first-child, .entry h2:first-child, .entry h3:first-child, .entry h4:first-child, .entry h5:first-child, .entry h6:first-child {
  margin-top: 0;
}

.entry h1 {
  margin: 1.8em 0 1em;
}

.entry h2 {
  margin: 1.6em 0 1em;
}

.entry h3 {
  margin: 1.5em 0 1em;
}

.entry h4 {
  margin: 1.4em 0 .9em;
}

.entry h5 {
  margin: 1.3em 0 .8em;
}

.entry h6 {
  margin: 1.2em 0 .8em;
}

.entry ul {
  list-style: square;
  position: relative;
  margin-bottom: 1em;
  padding-left: 30px;
}

.entry ol {
  list-style: decimal;
  position: relative;
  margin-bottom: 1em;
  padding-left: 30px;
}

.entry blockquote {
  position: relative;
  margin-bottom: 1em;
  padding: 1em 1em 1em 3.2em;
  border-radius: 1px;
  color: #666;
  font-style: italic;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1);
}

.entry blockquote::before {
  content: "\f10d";
  display: block;
  position: absolute;
  top: 15px;
  left: 16px;
  color: #aaa;
  font-family: FontAwesome;
  font-weight: 300;
  font-size: 1.6em;
  line-height: 1;
  font-style: normal;
}

.entry blockquote > *:last-child {
  margin-bottom: 0;
}

.entry pre {
  position: relative;
  margin: 1.1em 0;
  padding: 1em 1.2em;
  background: #44463B;
  color: #E5E5EB;
  white-space: pre;
  overflow-x: auto;
  overflow-y: hidden;
  font-size: .96em;
  line-height: 1.4;
  font-family: 'Source Code Pro', Monaco, Menlo, 'Courier New', Consolas, monospace;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1);
}

.entry pre > code {
  display: block;
  padding: 0;
  background: transparent;
  color: inherit;
  white-space: inherit;
}

.entry code {
  background-color: #f0f0f0;
  padding: 0 .1em;
  margin: 0 .05em;
  border-radius: 1px;
  font-size: .96em;
  font-family: 'Source Code Pro', Monaco, Menlo, 'Courier New', Consolas, monospace;
}

.entry kbd {
  background-color: #f0f0f0;
  padding: 0 .1em;
  margin: 0 .05em;
  border: 1px solid #44463B;
  border-radius: 1px;
  font-size: .96em;
  font-family: 'Source Code Pro', Monaco, Menlo, 'Courier New', Consolas, monospace;
}

.entry table {
  width: 100%;
  margin-bottom: 1em;
  font-size: .95em;
  text-align: center;
  overflow-x: auto;
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, .08);
}

.entry table tr:nth-of-type(even) {
  background-color: #fbfbfb;
}

.entry table td, .entry table th {
  border-bottom: 1px solid #ddd;
}

.entry table th {
  padding: 7px 10px;
  border-top: 1px solid #ddd;
  background: #f6f6f6;
  font-weight: bold;
}

.entry table td {
  padding: 6px;
  vertical-align: middle;
}

.entry address {
  margin-bottom: 1em;
  font-style: italic;
}

@media screen and (max-width: 640px) {
  .entry {
    padding-right: 15px;
    padding-left: 15px;
  }
}

.entry-inner::after {
  content: "";
  display: block;
  clear: both;
}

/*   Base : Common Parts
/* -------------------------------------------------- */
.content-inside {
  background-color: #fff;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1);
}

.content-box {
  padding: 2em 40px;
  border-bottom: 1px solid #eaeaea;
}

.content-box:last-child {
  border-bottom: 0;
}

@media screen and (max-width: 640px) {
  .content-box {
    padding-right: 20px;
    padding-left: 20px;
  }
}

.title-box {
  position: relative;
  padding: 1.4em;
  background-color: #f8f8f8;
  font-weight: 300;
  font-family: Lato, Arial, sans-serif;
}

.title-box-inner {
  -webkit-flex-flow: column wrap;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  padding: 40px 40px;
}

.title-box .post-date {
  position: relative;
  color: #777;
  line-height: 1;
}

.title-box h1 {
  margin: 0;
  font-size: 3rem;
}

.title-box a:hover {
  color: #00619F;
}

@media screen and (max-width: 640px) {
  .title-box-inner {
    padding-right: 10px;
    padding-left: 10px;
  }
}

.action-bar {
  display: block;
  position: absolute;
  bottom: -2px;
  left: 0;
  width: auto;
  height: 2px;
  background-color: #00619F;
  pointer-events: none;
  transition: all .2s;
}

/*   Base : Forms
/* -------------------------------------------------- */
input[type=text], input[type=password], input[type=email], input[type=url], input[type=search],
input[type=tel], input[type=date], input[type=datetime], input[type=month], input[type=week],
input[type=time], input[type=datetime-local], input[type=number] {
  display: inline-block;
  -webkit-appearance: none;
  -moz-apperance: none;
  max-width: 100%;
  padding: 4px 6px;
  border: 1px solid #ddd;
  background-color: #fefefe;
  color: #777;
  outline: 0;
  transition: all .2s;
}

input[type=text]:focus, input[type=password]:focus, input[type=email]:focus, input[type=url]:focus, input[type=search]:focus,
input[type=tel]:focus, input[type=date]:focus, input[type=datetime]:focus, input[type=month]:focus, input[type=week]:focus,
input[type=time]:focus, input[type=datetime-local]:focus, input[type=number]:focus {
  border-color: currentColor;
  background-color: #fff;
}

input[type=password] {
  display: inline-block;
  max-width: 100%;
  padding: 4px 6px;
  border: 1px solid #ddd;
  color: #777;
  outline: 0;
  transition: all .2s;
}

input[type=password]:focus {
  border-color: currentColor;
}

input[type=color] {
  display: inline-block;
  max-width: 100%;
  border: 1px solid #ddd;
  color: #777;
  outline: 0;
  transition: all .2s;
}

input[type=color]:focus {
  border-color: currentColor;
}

input[type=checkbox] {
  display: inline-block;
  margin: 3px 3px 3px 4px;
}

input[type=radio] {
  margin: 3px 3px 0px 5px;
}

input[type=submit], input[type=button], button[type=submit], button[type=button] {
  display: inline-block;
  position: relative;
  max-width: 100%;
  padding: 5px 7px;
  border: 1px solid transparent;
  outline: 0;
  border-radius: 2px;
  background-color: #444;
  color: #fff;
  font-weight: 600;
  transition: all .2s;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
}

input[type=submit]:hover, input[type=submit]:focus, input[type=button]:hover, input[type=button]:focus, button[type=submit]:hover, button[type=submit]:focus, button[type=button]:hover, button[type=button]:focus {
  border: 1px solid #777;
  background-color: #777;
  color: #fff;
}

input[type=reset], button[type=reset] {
  display: inline-block;
  max-width: 100%;
  padding: 5px 7px;
  border: 1px solid transparent;
  outline: 0;
  border-radius: 2px;
  background-color: #888;
  color: #fff;
  font-weight: 600;
  transition: all .2s;
  -webkit-appearance: none;
  -moz-appearance: none;
}

input[type=reset]:hover, input[type=reset]:focus, button[type=reset]:hover, button[type=reset]:focus {
  border: 1px solid #444;
  background-color: #666666;
}

textarea {
  display: block;
  max-width: 100%;
  padding: 10px;
  border: 1px solid #ddd;
  outline: 0;
  font-size: 15px;
  transition: border .2s;
}

textarea:focus {
  border-color: #00619F;
}

/* ------------------------------------------------------------------------- *
*  3. Single
* ------------------------------------------------------------------------- */
/*   Post Meta
/* -------------------------------------------------- */
.post-meta {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  max-width: 100%;
  padding-top: 1em;
  padding-bottom: 1em;
  color: #666;
  font-size: .8em;
  line-height: 1.6;
  text-transform: uppercase;
}

.post-meta a {
  white-space: nowrap;
}

.post-meta a:hover {
  color: #00619F;
}

.post-meta > *[class^=post-] {
  display: inline-block;
  padding-right: 10px;
}

.post-meta > *[class^=post-]::before {
  display: inline-block;
  position: relative;
  padding-right: .2em;
  font-family: FontAwesome;
  line-height: 1;
}

.post-meta .post-date::before {
  content: "\f017";
}

.post-meta .post-category::before {
  content: "\f07b";
}

.post-meta .post-modified::before {
  content: "\f1da";
}

.post-meta .post-tag::before {
  content: "\f02b";
}

.post-meta .post-author::before {
  content: "\f007";
}

.post-meta .post-edit::before {
  content: "\f040";
}

.post-meta .post-update::before {
  content: "\f021";
}

.post-meta .post-comment a::before {
  content: "\f075";
  display: inline-block;
  position: relative;
  padding-right: .2em;
  font-family: FontAwesome;
  line-height: 1;
}

/*   Single : entry header
/* -------------------------------------------------- */
.post-meta.content-box a {
  color: #333;
  box-shadow: 0 1px 0 0 currentColor;
}

.post-meta.content-box a:hover {
  color: #00619F;
}

.post-meta.content-box .post-category a {
  margin: 0 0 .3em 0;
}

.post-meta.content-box .post-category a:hover {
  box-shadow: 0 2px 0 0 rgba(216, 87, 25, .4);
}

.post-meta.content-box .post-author a:hover {
  box-shadow: 0 2px 0 0 rgba(0, 97, 159, .4);
}

.post-meta.content-box .post-comment a:hover {
  box-shadow: 0 2px 0 0 rgba(10, 74, 18, .4);
}

.entry .post-meta {
  margin-bottom: 3em;
}

/*   Single : Bottom Post Category, Tag
/* -------------------------------------------------- */
.btm-post-meta {
  margin-top: 3em;
  clear: both;
}

p.post-btm-tags, p.post-btm-cats {
  position: relative;
  margin-bottom: .1em;
  font-size: .88em;
  line-height: 1.6;
}

p.post-btm-tags .fa, p.post-btm-cats .fa {
  margin-right: .2em;
  width: 16px;
}

p.post-btm-tags a, p.post-btm-cats a {
  display: inline-block;
  margin: 0 .4em .3em 0;
  color: currentColor;
  white-space: nowrap;
}

p.post-btm-tags a:hover, p.post-btm-cats a:hover {
  color: #00619F;
}

.meta-label {
  margin-right: .4em;
  color: #111;
  font-size: 1.1em;
  font-weight: 300;
}

.post-btm-cats a:hover {
  box-shadow: 0 2px 0 0 rgba(216, 87, 25, .4);
}

.post-btm-tags a:hover {
  box-shadow: 0 2px 0 0 rgba(25, 216, 49, .4);
}

/*   Single : Author Box
/* -------------------------------------------------- */
.author-box {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  margin-top: 2em;
  padding: 1em;
  border-radius: 2px;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .14);
}

.author-box .author-thumbnail {
  -webkit-flex-shrink: 1;
      -ms-flex-negative: 1;
          flex-shrink: 1;
}

.author-box .author-thumbnail img {
  border-radius: 50%;
}

.author-box .author-content {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-left: 1em;
}

.author-box .author-infomation {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: .3em;
}

.author-box .author-name {
  display: inline-block;
  margin-bottom: 0;
  font-size: 1.2em;
}

.author-box .author-description {
  margin-bottom: 0;
  font-size: .94em;
  font-weight: 300;
}

.author-box .author-links {
  margin-left: .7em;
}

.author-box .author-links .social-links {
  margin-bottom: 0;
  font-size: .74em;
}

.author-box .author-links .social-links a > i {
  color: #777;
}

.author-box .author-links .social-links a:hover > i {
  color: #222;
}

.author-box .author-links a::before, .author-box .author-links a::after {
  content: none;
}

@media screen and (max-width: 640px) {
  .author-box .author-infomation {
    display: block;
  }
  .author-box .author-links {
    margin-left: 0;
  }
}

/*   Single : entry footer
/* -------------------------------------------------- */
> * {
  margin-bottom: 20px;
  padding: 10px 25px;
  background-color: #fff;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1);
}

.content-box > h4 {
  position: relative;
  margin: .2em 0 .7em 0;
  text-transform: capitalize;
  font-weight: 300;
}

/*   Single : Related Posts
/* -------------------------------------------------- */
.related-posts .related-posts-list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  margin-left: 1%;
}

.related-posts .related-article {
  position: relative;
  width: 33%;
  margin-bottom: 16px;
}

.related-posts .post {
  height: auto;
  padding: 0 .02em;
  background-color: #fff;
  transition: all .4s;
}

.related-posts .post-thumbnail {
  overflow: hidden;
}

.related-posts .post-thumbnail a {
  display: block;
  height: 100%;
}

.related-posts .post-thumbnail img {
  display: block;
  width: 100%;
  height: auto;
  overflow: hidden;
  transition: all .4s ease-out;
}

.related-posts .post-content {
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap;
  padding: 0.5625em 0.75em;
}

.related-posts .post-category {
  margin-bottom: 0.25em;
  font-size: 0.8125em;
  color: #666;
}

.related-posts .post-category a {
  color: #00619F;
}

.related-posts .post-category a:hover {
  color: #444;
}

.related-posts .post-title {
  font-size: 0.9625em;
  line-height: 1.3;
  font-family: Lato, Arial, sans-serif;
  letter-spacing: 0;
  overflow: hidden;
  transition: all .2s;
}

.related-posts .post-title a {
  display: block;
  height: 100%;
}

.related-posts .post:hover {
  box-shadow: 0 3px 3px 0 rgba(0, 0, 0, .15);
}

.related-posts .post:hover .post-thumbnail img {
  opacity: .8;
}

.related-posts .post:hover .post-title {
  color: #00619F;
}

@media screen and (max-width: 640px) {
  .related-posts .related-posts-list {
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    margin-left: 0;
  }
  .related-posts .related-posts-list .related-article {
    width: 50%;
  }
  .related-posts .related a:hover .post-thumbnail img {
    -webkit-transform: none;
            transform: none;
    opacity: .9;
  }
}

/*   Single : Post Navigation
/* -------------------------------------------------- */
.post-nav {
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1);
}

.post-nav ul {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.post-nav .prev, .post-nav .next {
  position: relative;
  overflow: hidden;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.post-nav .next a, .post-nav .prev a {
  display: block;
  min-height: 100%;
  background: rgba(0, 0, 0, .6);
  transition: background-color .4s;
}

.post-nav .next a {
  padding: 12px 40px 12px 24px;
}

.post-nav .prev a {
  padding: 12px 24px 12px 40px;
}

.post-nav .post-thumbnail {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  overflow: hidden;
  opacity: .5;
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur stdDeviation="3" /></filter></svg>#filter');
  -webkit-filter: blur(3px);
          filter: blur(3px);
  transition: all .4s;
}

.post-nav .nav-title {
  position: relative;
  margin-bottom: .4em;
  color: #f0f0f0;
  text-align: center;
  text-transform: uppercase;
  text-shadow: 0 0 2px rgba(0, 0, 0, .6);
  font-size: 14px;
  font-family: Lato, Arial, sans-serif;
}

.post-nav .post-title {
  position: relative;
  color: #fff;
  text-shadow: 1px 1px rgba(0, 0, 0, .5);
  line-height: 1.6;
}

.post-nav .chevron-right {
  position: absolute;
  top: calc(50% - 10px);
  right: 14px;
  width: 16px;
  height: 16px;
  background: transparent;
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  transition: all .4s;
}

.post-nav .chevron-left {
  position: absolute;
  top: calc(50% - 10px);
  left: 14px;
  width: 16px;
  height: 16px;
  background: transparent;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  transition: all .4s;
}

.post-nav .next .nav-title {
  right: -8px;
}

.post-nav .prev .nav-title {
  left: -8px;
}

.post-nav .next a:hover {
  background: rgba(0, 0, 0, .55);
}

.post-nav .next a:hover .post-thumbnail {
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur stdDeviation="2" /></filter></svg>#filter');
  -webkit-filter: blur(2px);
          filter: blur(2px);
}

.post-nav .next a:hover .chevron-right {
  right: 18px;
}

.post-nav .prev a:hover {
  background: rgba(0, 0, 0, .55);
}

.post-nav .prev a:hover .post-thumbnail {
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur stdDeviation="2" /></filter></svg>#filter');
  -webkit-filter: blur(2px);
          filter: blur(2px);
}

.post-nav .prev a:hover .chevron-left {
  left: 18px;
}

@media screen and (max-width: 640px) {
  .post-nav ul {
    display: block;
  }
  .next a, .prev a {
    padding: 12px 40px;
  }
}

/*   Single : Multipages Navigation
/* -------------------------------------------------- */
.post-pages {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  width: 100%;
  margin: 10px auto 10px;
  border-bottom: 2px solid #ddd;
  color: #00619F;
  font-weight: bold;
}

.post-pages span {
  display: inline-block;
  position: relative;
  bottom: -2px;
  padding: 6px 10px;
  border-bottom: 2px solid #ddd;
  transition: border .4s;
}

.post-pages li > * {
  display: block;
  transition: border .4s;
}

.post-pages > span {
  color: #000;
  border-bottom: 2px solid #00619F;
}

.post-pages > a:hover > span {
  border-bottom: 2px solid #00619F;
}

/*   Single : SNS Button
/* -------------------------------------------------- */
.share-list-container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.balloon-btn {
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  position: relative;
}

.balloon-btn .share {
  transition: all .4s;
}

.balloon-btn .share i {
  position: relative;
  left: calc(50% - 1.2rem);
  z-index: 999;
  font-size: 2.4rem;
}

.balloon-btn .share-inner {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: .4em .6em;
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, .2);
  color: #fff;
}

.balloon-btn .count {
  position: absolute;
  right: 0;
  bottom: 0;
  transition: all .4s;
}

.balloon-btn .count-inner {
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  bottom: 0;
  right: 0;
  min-height: 1.2em;
  min-width: 1.1em;
  padding: .4em;
  border-radius: 1px;
  background-color: #444;
  color: rgba(255, 255, 255, .7);
  font-size: .9em;
  line-height: 1;
  font-family: Lato, Arial, sans-serif;
  font-weight: bold;
  transition: all .4s;
}

.balloon-btn .share-inner:hover {
  opacity: .8;
  box-shadow: 0 2px 3px rgba(0, 0, 0, .2), 0 1px 3px rgba(0, 0, 0, .1) inset;
}

.balloon-btn .count-inner:hover {
  color: #fff;
}

.balloon-btn.twitter .share-inner {
  background-color: #6bace2;
}

.balloon-btn.facebook .share-inner {
  background-color: #445d93;
}

.balloon-btn.googleplus .share-inner {
  background-color: #d36054;
}

.balloon-btn.hatena .share-inner {
  background-color: #4c7ec6;
}

.balloon-btn.pocket .share-inner {
  background-color: #e15c69;
}

.balloon-btn.line .share-inner {
  background-color: #50c150;
}

.balloon-btn.feedly .share-inner {
  background-color: #94be61;
}

.balloon-btn:first-of-type .share-inner {
  border-radius: 2px 0 0 2px;
}

.balloon-btn:last-of-type .share-inner {
  border-radius: 0 2px 2px 0;
}

@media only screen and (max-width: 767px) {
  .share-list-container {
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

/*   Password Lock
/* -------------------------------------------------- */
.post-password-form p:last-child {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
}

.post-password-form p:last-child label {
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.post-password-form p:last-child input[type=password] {
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  border-right-width: 0;
}

.post-password-form p:last-child input[type=submit] {
  -webkit-flex-shrink: 1;
      -ms-flex-negative: 1;
          flex-shrink: 1;
  padding: 4px 10px;
}

/*   Single : post formats
/* -------------------------------------------------- */
.format-aside .post-title-box {
  display: none;
}

.format-aside .post-format::before {
  content: "\f111";
}

.format-gallery .post-format::before {
  content: "\f1c5";
}

.format-link .post-format::before {
  content: "\f0c1";
}

.format-image .post-format::before {
  content: "\f03e";
}

.format-quote .post-format::before {
  content: "\f10d";
}

.format-status .post-format::before {
  content: "\f005";
}

.format-video .post-format::before {
  content: "\f008";
}

.format-audio .post-format::before {
  content: "\f028";
}

.format-chat .post-format::before {
  content: "\f086";
}

/* clearfix */
.entry-header::after, .entry-content::after, .entry-footer::after {
  content: "";
  display: block;
  clear: both;
}

/* ------------------------------------------------------------------------- *
*  4. Index
* ------------------------------------------------------------------------- */
.post-excerpt {
  color: #aaa;
  font-size: .85em;
  line-height: 1.4;
}

body.home #main {
  margin-top: 40px;
}

/*   Index : Grid View
/* -------------------------------------------------- */
.grid-view {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  padding: 16px 8px 0;
  overflow: hidden;
}

.grid-view .post, .grid-view .page {
  width: 50%;
  margin-bottom: 1.6em;
}

@media screen and (max-width: 640px) {
  .grid-view {
    -webkit-flex-flow: column wrap;
        -ms-flex-flow: column wrap;
            flex-flow: column wrap;
    padding: 2em 20px 0;
  }
  .grid-view .post, .grid-view .page {
    width: 100%;
  }
}

.grid-view .post-inner {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  position: relative;
  height: 100%;
  margin: 0 8px;
  background-color: #fff;
  transition: all .3s ease-out;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1);
}

.grid-view .post-link {
  display: block;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: 100%;
  box-shadow: 0 1px 0 0 rgba(0, 0, 0, .04);
}

.grid-view .post-thumbnail {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
  transition: all .4s ease-out;
}

.grid-view .post-thumbnail img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: auto;
  transition: all .4s ease-out;
}

.grid-view .post-content {
  display: block;
  margin: 6px 0;
  padding: 0 15px;
}

.grid-view .post-date {
  position: relative;
  margin: 4px 0;
  color: #777;
  font-size: .9em;
  line-height: 1;
  text-align: center;
}

.grid-view .post-title {
  margin: 6px 0;
  font-size: 1.2em;
  font-weight: bold;
  transition: all .4s;
}

.grid-view .post-excerpt {
  margin: 10px 0;
}

.grid-view .post-meta {
  margin: 1px 0;
  padding: 4px 15px;
  font-size: .8em;
}

.grid-view .post-category a {
  display: inline-block;
  padding: 0 4px;
}

.grid-view .post-meta > *[class^=post-] {
  padding-right: 6px;
}

.grid-view .post-category::before {
  content: "\f114";
  padding-right: 0;
}

.grid-view .post-comment a::before {
  content: "\f0e5";
  display: inline-block;
  padding-right: .2em;
  font-family: FontAwesome;
}

.grid-view .post-inner:hover {
  box-shadow: 0 6px 10px 0 rgba(0, 0, 0, .2);
  -webkit-transform: translate(0, -1px);
          transform: translate(0, -1px);
}

.grid-view .post-inner a:hover .post-thumbnail img {
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur stdDeviation="1" /></filter></svg>#filter');
  -webkit-filter: blur(1px);
          filter: blur(1px);
}

.grid-view .post-inner a:hover .post-title {
  color: #00619F;
}

/*   Index : Standard View
/* -------------------------------------------------- */
.standard-view {
  padding: 20px 10px;
}

.standard-view .post, .standard-view .page {
  margin-bottom: 20px;
}

.standard-view .post-inner {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  position: relative;
  padding: 20px;
  background-color: #fff;
  transition: .3s all;
  box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .1);
}

.standard-view .post-header {
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: 100%;
}

.standard-view .post-thumbnail {
  -webkit-flex-shrink: 1;
      -ms-flex-negative: 1;
          flex-shrink: 1;
  max-width: 200px;
  position: relative;
  margin-right: 20px;
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start;
  transition: .3s all;
  box-shadow: 0 0 3px 0 rgba(0, 0, 0, .2);
}

.standard-view .post-thumbnail img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 2px;
}

.standard-view .post-title {
  margin-bottom: 12px;
  font-size: 1.4em;
  line-height: 1.3;
  font-weight: bold;
}

.standard-view .post-title a {
  display: block;
  transition: .3s all;
}

.standard-view .post-content {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap;
}

.standard-view .post-meta {
  margin: 12px 0;
  padding-top: 0;
  padding-bottom: 0;
}

.standard-view .post-excerpt {
  margin: 12px 0;
}

.standard-view .more {
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start;
}

.standard-view .post-inner:hover {
  box-shadow: 0 0 2px 1px rgba(0, 0, 0, .22);
}

.standard-view .post-inner:hover .post-title {
  color: #00619F;
}

.standard-view .post-inner:hover .post-thumbnail {
  opacity: .9;
}

@media screen and (max-width: 640px) {
  .standard-view {
    margin-bottom: 20px;
    padding: 0;
    background-color: #fff;
    box-shadow: 0 0 6px 0 rgba(0, 0, 0, .2);
  }
  .standard-view .post, .standard-view .page {
    margin-bottom: 0;
    border-bottom: 1px solid #f0f0f0;
    box-shadow: none;
  }
  .standard-view .post-inner {
    padding-left: 130px;
    box-shadow: none;
  }
  .standard-view .post-thumbnail {
    max-width: 100px;
    margin-left: -115px;
    margin-right: 15px;
  }
  .standard-view .post-meta {
    margin-bottom: 0;
  }
  .standard-view .post-excerpt {
    margin-bottom: 0;
  }
  .standard-view .more {
    display: none;
  }
  .standard-view ul.page-numbers {
    border-bottom: 0;
  }
}

/*   Index : Page Navigation
/* -------------------------------------------------- */
ul.page-numbers {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  width: 100%;
  margin: 0 auto 10px;
  border-bottom: 2px solid #ddd;
  color: #00619F;
  font-weight: bold;
}

ul.page-numbers li {
  display: inline-block;
  position: relative;
  bottom: -2px;
}

ul.page-numbers li > * {
  display: block;
  padding: 6px 10px;
  border-bottom: 2px solid #ddd;
  transition: border .4s;
}

ul.page-numbers li > span {
  color: #444;
}

ul.page-numbers span.page-numbers.current {
  color: #000;
  border-bottom: 2px solid #00619F;
}

ul.page-numbers a.page-numbers:hover {
  border-bottom: 2px solid #00619F;
}

/* ------------------------------------------------------------------------- *
*  5. Archive
* ------------------------------------------------------------------------- */
.title-description {
  color: #666;
}

.taxonomy-description {
  position: relative;
  margin: 1em 6px 0;
  padding: 10px 16px;
  border-top: 1px solid currentColor;
  background-color: #f4f4f4;
  color: #777;
  text-transform: capitalize;
  font-weight: 300;
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, .08);
}

/* ------------------------------------------------------------------------- *
*  6. Pages
* ------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------- *
*  7. 404 Page
* ------------------------------------------------------------------------- */
.error-messages {
  font-weight: 300;
  font-family: Lato, Arial, sans-serif;
}

.error-messages p {
  margin-bottom: 2em;
}

.error-messages h2 {
  padding: .8em 1.4em;
  background-color: #f8f8f8;
}

.content-inner > .error-messages {
  padding-bottom: 16px;
}

@media screen and (max-width: 640px) {
  .content-inner > .error-messages {
    padding-bottom: 2em;
  }
  .error-messages h2 {
    padding: .2em .8em;
  }
}

.error404 .content-inner {
  padding: 1.8em;
}

.error404 .content-inner > .error-messages {
  padding-bottom: 0;
}

@media only screen and (min-width: 640px) {
  .error404 .content-inner .search-form {
    position: relative;
    margin: 1em 6px 0;
    padding: 10px 16px;
    border-top: 1px solid currentColor;
    background-color: #f4f4f4;
    color: #777;
    text-transform: capitalize;
    font-weight: 300;
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, .08);
  }
}

/* ------------------------------------------------------------------------- *
*  8. Header
* ------------------------------------------------------------------------- */
#header {
  position: relative;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
  background-color: #fff;
  transition: box-shadow .4s;
  box-shadow: 1px 0 1px 0 rgba(0, 0, 0, .4);
}

#header.sticky {
  position: fixed;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, .2);
}

@media screen and (max-width: 640px) {
  #header {
    background-position: center;
  }
}

.header-inner {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 50px;
  font-size: .94em;
  font-weight: 300;
}

.site-info {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 30px 20px;
  transition: all .4s;
}

.site-title {
  display: inline-block;
  max-width: 100%;
  font-size: 1.875em;
  color: #444;
  font-weight: 600;
  line-height: 1.2;
}

.site-title a {
  display: block;
}

.site-title img {
  display: block;
  max-height: 60%;
  height: auto;
  margin: 0 auto;
}

.site-description {
  display: inline-block;
  max-width: 100%;
  padding: 0 2rem;
  color: #666;
  font-weight: 300;
}

@media screen and (min-width: 768px) and (max-width: 768px) {
  .site-info {
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
  }
  .site-description {
    padding: .4em 1em 0;
  }
}

@media screen and (max-width: 767px) {
  .header-inner {
    padding-right: 0;
  }
  .site-info {
    display: block;
    text-align: center;
    width: calc(100% - 50px);
    max-width: calc(100% - 50px);
  }
  .header-menu-enabled .site-info {
    width: calc(100% - 100px);
    max-width: calc(100% - 100px);
  }
  .site-description {
    padding: 0 0.75em 0;
    line-height: 1.6;
  }
}

@media screen and (min-width: 768px) {
  .header-column .site-info {
    -webkit-align-self: flex-start;
        -ms-flex-item-align: start;
            align-self: flex-start;
    width: 100%;
  }
  .header-column .header-inner {
    -webkit-flex-flow: column wrap;
        -ms-flex-flow: column wrap;
            flex-flow: column wrap;
  }
}

@media screen and (min-width: 768px) {
  .header-row .search-toggle {
    height: 100%;
  }
  .header-row .header-inner {
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
  }
  .header-row #header-menu {
    width: auto;
  }
}

.header-row .sticky .site-info {
  padding: 15px 20px;
}

@media screen and (min-width: 768px) and (max-width: 782px) {
  body.admin-bar.header-row #header.sticky {
    padding-top: 46px;
  }
}

@media screen and (min-width: 783px) {
  body.admin-bar.header-row #header.sticky {
    padding-top: 32px;
  }
}

@media screen and (max-width: 640px) {
  .site-info {
    padding-right: 20px;
    padding-left: 20px;
  }
}

/*   Header : Navigation Menu
/* -------------------------------------------------- */
#header-menu {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center;
  width: 100%;
}

.menu-container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  position: relative;
  width: 100%;
}

.menu-container li {
  display: inline-block;
  position: relative;
  max-width: 100%;
}

@media screen and (min-width: 768px) {
  .menu-container#top-nav {
    padding-right: 50px;
  }
  .menu-container a {
    display: block;
    padding: 15px 12px;
    line-height: 20px;
    transition: color .2s, background-color .2s;
  }
  .menu-container li:hover > a {
    color: black;
  }
  .menu-container .sub-menu {
    display: none;
    width: 200px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1000;
    padding: 4px 0;
    background-color: #fff;
    color: #555;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, .2);
  }
  .menu-container .sub-menu li {
    width: 100%;
  }
  .menu-container .sub-menu li > a {
    padding: 8px 14px;
  }
  .menu-container li:hover > .sub-menu {
    display: block;
    top: 50px;
  }
  .menu-container li > .sub-menu > li:hover > .sub-menu {
    top: -4px;
    left: 200px;
  }
  .menu-container .sub-menu li:hover > a {
    background-color: #4b4b4b;
    color: #fff;
  }
  .menu-container > li > a::before {
    content: "";
    position: absolute;
    right: 50%;
    bottom: 11px;
    left: 50%;
    width: 0;
    border-bottom: 1px solid currentColor;
    transition: all .2s;
  }
  .menu-container > li:hover > a::before {
    right: 15px;
    left: 15px;
    width: calc(100% - 30px);
    overflow: hidden;
  }
  .menu-container > li.menu-item-has-children > a::after {
    content: '';
    display: inline-block;
    position: relative;
    top: -3px;
    left: 3px;
    width: 6px;
    height: 6px;
    border-bottom: 1px solid currentColor;
    border-right: 1px solid currentColor;
    background-color: transparent;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    transition: all .2s;
  }
  .menu-container > li.menu-item-has-children li.menu-item-has-children > a::after {
    content: '';
    display: inline-block;
    float: right;
    position: relative;
    top: 6px;
    left: 2px;
    width: 6px;
    height: 6px;
    border-bottom: 1px solid currentColor;
    border-right: 1px solid currentColor;
    background-color: transparent;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    transition: all .4s;
  }
  .menu-container > li.menu-item-has-children:hover > a::after {
    top: 0;
    -webkit-transform: rotate(225deg);
            transform: rotate(225deg);
  }
}

@media screen and (max-width: 767px) {
  #header-menu {
    position: fixed;
    visibility: hidden;
    top: 0;
    height: 120vh;
    width: 100%;
  }
  #header-nav {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1003;
    width: 80%;
    height: 100vh;
    padding-top: 6em;
    background-color: #51575d;
    overflow-y: auto;
  }
  #header-nav.menu-container a {
    color: #fff;
  }
  #header-nav.menu-container:hover {
    color: #00619F;
  }
  .menu-container {
    display: block;
  }
  .menu-container li {
    display: block;
  }
  .menu-container a {
    display: block;
    padding: .8em .9em;
  }
  .menu-container a:hover {
    background: rgba(68, 68, 68, .1);
    color: #000;
  }
  .menu-container li > a {
    border-top: 1px solid rgba(119, 119, 119, .7);
  }
  .menu-container > li:last-child > a {
    border-bottom: 1px solid rgba(119, 119, 119, .7);
  }
  .menu-container .sub-menu {
    display: block !important;
    margin-left: 2em;
  }
  .menu-container > li > a {
    font-weight: bold;
  }
  .menu-container li.menu-item-has-children > a::after {
    content: '';
    display: inline-block;
    position: relative;
    top: 2px;
    left: 2px;
    border: 4px solid transparent;
    border-top-color: currentColor;
  }
}

/*   Header : Header toggles
/* -------------------------------------------------- */
.nav-toggle {
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
              -ms-grid-row-align: stretch;
          align-self: stretch;
  position: relative;
  right: 0;
  width: 50px;
  height: auto;
  cursor: pointer;
  transition: all .4s;
  -webkit-tap-highlight-color: transparent;
}

.nav-toggle .top, .nav-toggle .middle, .nav-toggle .bottom {
  position: absolute;
  top: 50%;
  left: 19%;
  z-index: 1001;
  width: 62%;
  height: 1px;
  background: currentColor;
  transition: all .4s;
}

.nav-toggle .top {
  -webkit-transform: translateY(-10px);
          transform: translateY(-10px);
}

.nav-toggle .middle {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}

.nav-toggle .bottom {
  -webkit-transform: translateY(10px);
          transform: translateY(10px);
}

.nav-toggle.open .top {
  height: 1px;
  -webkit-transform: rotate(-45deg) translateY(0px);
          transform: rotate(-45deg) translateY(0px);
  background-color: #f8f8f8;
}

.nav-toggle.open .middle {
  height: 1px;
  opacity: 0;
  visibility: hidden;
}

.nav-toggle.open .bottom {
  height: 1px;
  -webkit-transform: rotate(45deg) translateY(0px);
          transform: rotate(45deg) translateY(0px);
  background-color: #f8f8f8;
}

.search-toggle {
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
              -ms-grid-row-align: stretch;
          align-self: stretch;
  position: relative;
  top: 0;
  width: 50px;
  height: auto;
  cursor: pointer;
  transition: all .4s ease-in;
  -webkit-tap-highlight-color: rgba(68, 68, 68, .3);
}

.search-toggle .icon.search {
  width: 20px;
  height: 20px;
  top: calc(50% - 10px);
  left: calc(50% - 12px);
  border-color: #444;
  transition: all .4s;
}

.search-toggle .icon.search::before {
  top: 20px;
  left: 9px;
  height: 9px;
  background-color: #444;
  transition: all .4s;
}

.search-toggle.open .icon.search {
  border-color: #000;
}

.search-toggle.open .icon.search::before {
  background-color: #000;
}

@media screen and (min-width: 768px) {
  .search-toggle {
    position: absolute;
    right: 0;
    height: 100%;
  }
}

.header-searchbar {
  position: absolute;
  top: calc(100% - 20px);
  right: 6px;
  z-index: 1001;
  max-width: 320px;
  width: 80%;
}

.header-searchbar .search-form .search-inner {
  border-right-style: solid;
  border-radius: 1px;
}

.header-searchbar .search-submit {
  display: none;
}

@media screen and (min-width: 981px) {
  body.header-column:not(.header-menu-enabled) .search-toggle {
    height: 100%;
  }
}

@media screen and (max-width: 767px) {
  .header-searchbar {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .nav-toggle, .header-searchbar {
    display: none;
  }
}

/*   Header: Toggle Animation
/* -------------------------------------------------- */
@media screen and (max-width: 767px) {
  #header-menu {
    opacity: 0;
    visibility: hidden;
  }
  .nav-toggle.header-menu.open + #header-menu {
    opacity: 1;
    visibility: visible;
    transition: opacity .4s, visibility .4s;
  }
  #header-menu > #header-nav {
    -webkit-animation: fadeOutLeft .4s both;
            animation: fadeOutLeft .4s both;
  }
  .nav-toggle.header-menu.open + #header-menu > #header-nav {
    -webkit-animation: fadeInRight .4s both;
            animation: fadeInRight .4s both;
  }
}

/* ------------------------------------------------------------------------- *
*  9. Footer
* ------------------------------------------------------------------------- */
#footer {
  position: relative;
  min-height: 80px;
  padding: 30px 20px;
  background: #44463B;
  color: rgba(255, 255, 255, .6);
}

#footer .container {
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
}

#footer a {
  color: rgba(255, 255, 255, .9);
}

#footer a:hover {
  color: white;
}

#footer .copyright {
  -webkit-flex-shrink: 1;
      -ms-flex-negative: 1;
          flex-shrink: 1;
  font-weight: 300;
  line-height: 1.6;
}

#footer .social-links {
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding: 0 .7em;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

@media screen and (min-width: 640px) and (max-width: 980px) {
  #footer .container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (max-width: 640px) {
  #footer .container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: column wrap;
        -ms-flex-flow: column wrap;
            flex-flow: column wrap;
  }
  #footer .social-links {
    padding-top: .9em;
    -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around;
  }
  #footer .copyright {
    text-align: center;
  }
}

/* ------------------------------------------------------------------------- *
*  10. Sidebar
* ------------------------------------------------------------------------- */
/*   Sidebar and widgets styling
/* -------------------------------------------------- */
.sidebar {
  padding: 10px;
  background-color: #fafafa;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .05);
}

.sidebar .widget {
  background-color: #fff;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1);
}

.sidebar .widget:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 980px) {
  .sidebar {
    margin-top: 40px;
  }
  .sidebar-inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

@media screen and (max-width: 980px) and (min-width: 641px) {
  .sidebar .widget {
    width: calc(50% - 10px);
    margin: 5px;
  }
}

@media screen and (max-width: 640px) {
  .sidebar {
    display: block;
    padding-left: 1em;
  }
  .sidebar .widget {
    width: 100%;
  }
}

/*   Sidebar : Widget
/* -------------------------------------------------- */
.widget {
  margin-bottom: 24px;
  padding: 20px;
  font-size: .94em;
}

.widget .widget-title {
  position: relative;
  margin-bottom: .8em;
  font-size: 1.2em;
  font-weight: 300;
  text-transform: capitalize;
}

.widget a {
  color: #888;
}

.widget a:hover {
  color: currentColor;
}

.widget select {
  width: 100%;
  padding: 4px 6px;
}

.widget option {
  padding: 4px 0;
}

.widget_recent_entries li a {
  display: block;
  position: relative;
  padding: 10px 8px;
  border-bottom: 1px solid #eaeaea;
  line-height: 1.5;
}

.widget_recent_entries li:first-of-type a {
  border-top: 1px solid #eaeaea;
}

.widget_recent_entries .post-date {
  display: block;
  color: #444;
}

.widget_recent_comments li {
  display: block;
  position: relative;
  padding: 10px 8px;
  border-bottom: 1px solid #eaeaea;
  line-height: 1.5;
}

.widget_recent_comments li:first-of-type {
  border-top: 1px solid #eaeaea;
}

.widget_archive li a {
  display: block;
  position: relative;
  padding: 10px 8px;
  border-bottom: 1px solid #eaeaea;
  line-height: 1.5;
}

.widget_archive li:first-of-type a {
  border-top: 1px solid #eaeaea;
}

.widget_archive .count {
  position: absolute;
  right: 0;
}

.widget_archive li a::before {
  content: "\f073";
  position: relative;
  top: -1px;
  padding-right: .5em;
  font-family: FontAwesome;
  font-size: .8em;
}

.widget_categories li a {
  display: block;
  position: relative;
  padding: 10px 8px;
  border-bottom: 1px solid #eaeaea;
  line-height: 1.5;
}

.widget_categories li a::before {
  content: "\f115";
  padding-right: .4em;
  font-family: FontAwesome;
  font-size: .8em;
}

.widget_categories li:first-of-type a {
  border-top: 1px solid #eaeaea;
}

.widget_categories .count {
  position: absolute;
  right: 0;
}

.widget_categories .children {
  padding-left: 1em;
}

.widget_categories .children:first-of-type a {
  border-top: 0;
}

.widget_categories .children li a::before {
  content: "\f114";
  padding-right: .4em;
  font-family: FontAwesome;
  font-size: .8em;
}

.widget_tag_cloud a {
  display: inline-block;
  margin: .2em .03em;
  padding: 4px 6px;
  border: 1px solid #ddd;
  border-radius: 2px;
  background-color: #f0f0f0;
  color: rgba(0, 0, 0, .8);
  line-height: 1.2;
  font-size: 1.5rem !important;
  transition: all .4s;
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, .1);
}

.widget_tag_cloud a:hover {
  color: #000;
  background-color: #ddd;
  box-shadow: 0 2px 1px 0 rgba(0, 0, 0, .3);
}

.widget_tag_cloud a .count {
  margin-left: .2em;
  color: #777;
  font-family: Lato, Arial, sans-serif;
  font-size: .9em;
  line-height: 1.2;
}

.widget_pages li a {
  display: block;
  position: relative;
  padding: 10px 8px;
  border-bottom: 1px solid #eaeaea;
  line-height: 1.5;
}

.widget_pages li:first-of-type a {
  border-top: 1px solid #eaeaea;
}

.widget_pages .children {
  padding-left: 1em;
}

.widget_pages .children:first-of-type a {
  border-top: 0;
}

.widget_nav_menu li a {
  display: block;
  position: relative;
  padding: 10px 8px;
  border-bottom: 1px solid #eaeaea;
  line-height: 1.5;
}

.widget_nav_menu li:first-of-type a {
  border-top: 1px solid #eaeaea;
}

.widget_nav_menu .sub-menu {
  padding-left: 1em;
}

.widget_nav_menu .sub-menu:first-of-type a {
  border-top: 0;
}

.widget_meta li a {
  display: block;
  position: relative;
  padding: 10px 8px;
  border-bottom: 1px solid #eaeaea;
  line-height: 1.5;
}

.widget_meta li:first-of-type a {
  border-top: 1px solid #eaeaea;
}

.widget #wp-calendar {
  width: 100%;
}

.widget #wp-calendar a {
  color: #00619F;
}

.widget #wp-calendar a:hover {
  color: #2e4453;
}

.widget #wp-calendar caption {
  margin-bottom: .4em;
}

.widget #wp-calendar tbody {
  text-align: center;
  vertical-align: middle;
}

.widget #wp-calendar tbody a {
  box-shadow: 0 1px 0 0 currentColor;
}

.widget #wp-calendar tbody a:hover {
  box-shadow: 0 2px 0 0 #000;
}

.widget_rss li {
  display: block;
  position: relative;
  padding: 10px 8px;
  border-bottom: 1px solid #eaeaea;
  line-height: 1.5;
}

.widget_rss li:first-of-type {
  border-top: 1px solid #eaeaea;
}

.widget .widgets-list-layout a {
  display: block;
}

.widget .widgets-list-layout a img {
  transition: all .2s;
}

.widget .widgets-list-layout li {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 1em;
  border-bottom: 1px solid #ddd;
  margin-bottom: 1em;
}

.widget .widgets-list-layout li img.widgets-list-layout-blavatar {
  max-width: 100px;
  width: 100px;
  border-radius: 6px;
  transition: all .2s;
}

.widget .widgets-list-layout .widgets-list-layout-links {
  width: 100%;
  padding: .6em .5em 0;
}

.widget .widgets-list-layout .widgets-list-layout-links a {
  color: #444;
  transition: all .2s;
}

.widget .widgets-list-layout li:hover a {
  color: #00619F;
}

.widget .widgets-list-layout li:hover img {
  opacity: .8;
}

/* ------------------------------------------------------------------------- *
*  11. Comment
/* ------------------------------------------------------------------------- */
.comment-tabmenu {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  position: relative;
  border-bottom: 2px solid #ddd;
  font-weight: bold;
}

.comment-tabmenu .tabitem {
  position: relative;
  bottom: -2px;
  font-size: .94em;
}

.comment-tabmenu .tabitem > a {
  display: inline-block;
  padding: .5em 1.1em;
  border-bottom: 2px solid #ddd;
  transition: all .4s;
}

.comment-tabmenu .tabitem:not(.active):hover > a {
  border-bottom: 2px solid #bbb;
}

.comment-tabmenu .active > a {
  color: #00619F;
}

.comment-tabmenu .count {
  margin-left: .4em;
  padding: 0 .28em;
  background-color: #ddd;
  color: #666;
  border-radius: 2px;
  font-size: .94em;
  line-height: 1;
}

.comment-tabmenu .tabitem > a[href^='#comment-list']::before {
  content: "\f075";
  padding-right: .2em;
  font-family: FontAwesome;
}

.comment-tabmenu .tabitem > a[href^='#ping-list']::before {
  content: "\f064";
  padding-right: .2em;
  font-family: FontAwesome;
}

@media screen and (max-width: 374px) {
  .comment-tabmenu .tabitem {
    font-size: .88em;
  }
  .comment-tabmenu .tabitem > a {
    padding-right: .6em;
    padding-left: .6em;
  }
}

#comment-list .comment {
  position: relative;
}

#comment-list .comment-body {
  padding: 1.6em 0;
  border-top: 1px solid #f0f0f0;
  line-height: 1.6;
}

#comment-list > li:first-child .comment-body {
  border-top-style: none;
}

#comment-list > .comment-body:last-child {
  border-bottom: 1px solid #f7f7f7;
}

#comment-list .comment-meta {
  margin-bottom: 1.6em;
  color: #888;
  font-size: .96em;
}

#comment-list .comment-meta a {
  color: #888;
  box-shadow: none;
}

#comment-list .comment-meta a:hover {
  color: #333;
}

#comment-list .comment-author .avatar {
  width: 42px;
  height: auto;
  float: left;
  border-radius: 50%;
  margin-right: 1em;
}

#comment-list .comment-author .fn {
  color: #333;
  font-weight: bold;
  font-style: normal;
}

#comment-list .comment-author .fn a {
  color: #00619F;
  box-shadow: 0 1px 0 0 currentColor;
}

#comment-list .comment-author .fn a:hover {
  color: #333;
  box-shadow: 0 1px 0 0 #000;
}

#comment-list .bypostauthor > article .fn::after {
  content: "\f007";
  margin: 0 .2em;
  color: #66673b;
  font-family: "fontAwesome";
  text-transform: uppercase;
}

#comment-list .says {
  position: absolute;
  width: 1px;
  height: 1px;
  clip: rect(1px, 1px, 1px, 1px);
  overflow: hidden;
}

#comment-list .edit-link::before {
  content: " / ";
  padding: 0 .4em;
  color: #aaa;
}

#comment-list .comment-content {
  margin-left: 1em;
  padding-left: 1.2em;
  border-left: 1px solid #f0f0f0;
}

#comment-list .children {
  margin-top: -10px;
}

#comment-list .children > li {
  padding-left: 1.6em;
}

#comment-list .reply a {
  color: #999;
  font-size: 0.875em;
  box-shadow: none;
}

#comment-list .reply a:hover {
  color: #000;
}

#ping-list {
  padding: 20px 0;
}

#ping-list .comment-body {
  padding: 10px 0;
}

#ping-list .edit-link::before {
  content: " / ";
  padding: 0 .4em;
}

#ping-list .edit-link a {
  color: #888;
  box-shadow: none;
}

#respond {
  padding: 1.6em 0;
}

#respond .comment-form {
  padding: 10px 20px;
  background: #f6f6f6;
}

#respond p {
  margin-bottom: .4em;
}

#respond .form-submit {
  margin-top: .6em;
}

#respond .logged-in-as {
  color: #666;
  font-size: .95em;
}

#respond .logged-in-as a:hover {
  color: #00619F;
}

#respond .comment-notes {
  color: #666;
  font-size: .95em;
}

#respond #reply-title {
  margin-bottom: .4em;
  font-weight: 300;
  font-size: 1.3em;
}

#respond #reply-title small {
  font-weight: 400;
  font-size: .8em;
}

#respond label {
  display: block;
  font-weight: bold;
}

#respond textarea {
  width: 100%;
  height: 140px;
  resize: vertical;
}

#respond input[type=text], #respond input[type=email], #respond input[type=url] {
  display: block;
  width: 60%;
  padding: 6px 8px;
}

#respond input[type=submit] {
  padding: 8px;
}

@media screen and (max-width: 640px) {
  #respond input[type=text] {
    max-width: none;
    width: 80%;
  }
}

.comment-pages {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  width: 100%;
  margin: 10px auto 10px;
  border-bottom: 2px solid #ddd;
  color: #00619F;
  font-weight: bold;
}

.comment-pages span, .comment-pages a {
  display: inline-block;
  position: relative;
  bottom: -2px;
  padding: 6px 10px;
  border-bottom: 2px solid #ddd;
  transition: border .4s;
}

.comment-pages span {
  border-bottom-color: #00619F;
  color: #000;
}

.comment-pages * {
  display: block;
  transition: border .4s;
}

.comment-pages > a:hover {
  border-bottom: 2px solid #00619F;
}

.comment-body a {
  color: #00619F;
  box-shadow: 0 1px 0 0 currentColor;
}

.comment-body a:hover {
  color: #2e4453;
  box-shadow: 0 2px 0 0 #000;
}

.comment-body dt {
  font-weight: bold;
}

.comment-body dd {
  margin-bottom: 1em;
}

.comment-body hr {
  margin: 1em 0;
}

.comment-body iframe {
  margin-bottom: 1em;
}

.comment-body p {
  margin-bottom: 1em;
}

.comment-body p > iframe {
  margin-bottom: 0;
}

.comment-body h1, .comment-body h2, .comment-body h3, .comment-body h4, .comment-body h5, .comment-body h6 {
  font-weight: bold;
}

.comment-body h1 {
  margin: 1.8em 0 1em;
}

.comment-body h2 {
  margin: 1.6em 0 1em;
}

.comment-body h3 {
  margin: 1.5em 0 1em;
}

.comment-body h4 {
  margin: 1.4em 0 .9em;
}

.comment-body h5 {
  margin: 1.3em 0 .8em;
}

.comment-body h6 {
  margin: 1.2em 0 .8em;
}

.comment-body ul {
  list-style: square;
  position: relative;
  margin-bottom: 1em;
  padding-left: 30px;
}

.comment-body ol {
  list-style: decimal;
  position: relative;
  margin-bottom: 1em;
  padding-left: 30px;
}

.comment-body blockquote {
  position: relative;
  margin-bottom: 1em;
  padding: 10px 10px 10px 48px;
  border-radius: 1px;
  color: #666;
  font-style: italic;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1);
}

.comment-body blockquote::before {
  content: "\f10d";
  display: block;
  position: absolute;
  top: 10px;
  left: 12px;
  color: #aaa;
  font-family: FontAwesome;
  font-weight: 300;
  font-size: 1.6em;
  line-height: 1;
  font-style: normal;
}

.comment-body pre {
  position: relative;
  margin: 1em 0;
  padding: 1em 1.2em;
  background: #44463B;
  color: #E5E5EB;
  white-space: pre;
  overflow-x: auto;
  overflow-y: hidden;
  font-size: .96em;
  line-height: 1.4;
  font-family: 'Source Code Pro', Monaco, Consolas, monospace;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1);
}

.comment-body pre > code {
  display: block;
  padding: 0;
  background: transparent;
  color: inherit;
  white-space: inherit;
}

.comment-body code {
  background-color: #f0f0f0;
  padding: 0 3px;
  border-radius: 1px;
  font-size: .9em;
  font-family: 'Source Code Pro', Monaco, Consolas, monospace;
}

.comment-body kbd {
  background-color: #f0f0f0;
  padding: 0 3px;
  border: 1px solid #44463B;
  border-radius: 1px;
  font-size: .9em;
  font-family: 'Source Code Pro', Monaco, Consolas, monospace;
}

.comment-body table {
  width: 100%;
  margin-bottom: 1em;
  font-size: .95em;
  text-align: center;
  overflow-x: auto;
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, .08);
}

.comment-body table td, .comment-body table th {
  border-bottom: 1px solid #ddd;
}

.comment-body table th {
  padding: 7px 10px;
  border-top: 1px solid #ddd;
  background: #f6f6f6;
  font-weight: bold;
}

.comment-body table td {
  padding: 6px;
  vertical-align: middle;
}

.comment-body address {
  margin-bottom: 1em;
  font-style: italic;
}

/* ------------------------------------------------------------------------- *
*  12. WP native
* ------------------------------------------------------------------------- */
.wp-caption {
  max-width: 100%;
  margin-bottom: 1em;
  padding: 5px 5px 0;
  text-align: center;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1);
}

.wp-caption .wp-caption-text {
  margin: 0;
  padding: .6em 4px;
  line-height: 1.4;
  font-style: italic;
}

.aligncenter {
  display: block;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.alignright {
  float: right;
  max-width: 100%;
  margin-left: 10px;
}

.alignleft {
  float: left;
  max-width: 100%;
  margin-right: 10px;
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

html body .screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  clip: rect(1px, 1px, 1px, 1px);
  overflow: hidden;
}

body.home {
  border-top-color: transparent;
}

/*   Gallery
/* -------------------------------------------------- */
.gallery-columns-1 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}

.gallery-columns-1 .gallery-item {
  width: 100%;
  margin-bottom: 1em;
  padding: 0 .1rem;
}

.gallery-columns-2 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}

.gallery-columns-2 .gallery-item {
  width: 50%;
  margin-bottom: 1em;
  padding: 0 .1rem;
}

.gallery-columns-3 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}

.gallery-columns-3 .gallery-item {
  width: 33.33333%;
  margin-bottom: 1em;
  padding: 0 .1rem;
}

.gallery-columns-4 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}

.gallery-columns-4 .gallery-item {
  width: 25%;
  margin-bottom: 1em;
  padding: 0 .1rem;
}

.gallery-columns-5 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}

.gallery-columns-5 .gallery-item {
  width: 20%;
  margin-bottom: 1em;
  padding: 0 .1rem;
}

.gallery-columns-6 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}

.gallery-columns-6 .gallery-item {
  width: 16.66667%;
  margin-bottom: 1em;
  padding: 0 .1rem;
}

.gallery-columns-7 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}

.gallery-columns-7 .gallery-item {
  width: 14.28571%;
  margin-bottom: 1em;
  padding: 0 .1rem;
}

.gallery-columns-8 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}

.gallery-columns-8 .gallery-item {
  width: 12.5%;
  margin-bottom: 1em;
  padding: 0 .1rem;
}

.gallery-columns-9 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}

.gallery-columns-9 .gallery-item {
  width: 11.11111%;
  margin-bottom: 1em;
  padding: 0 .1rem;
}

.wp-caption img {
  margin: 0 auto;
  padding: 0;
  border: 0;
}

.gallery-icon.landscape {
  text-align: center;
}

.gallery-caption {
  max-width: 100%;
  padding: 5px 5px 0;
  font-style: italic;
  font-size: .94em;
  line-height: 1.4;
  text-align: center;
}

/* ------------------------------------------------------------------------- *
*  13. Misc
* ------------------------------------------------------------------------- */
#back-to-top {
  display: none;
  position: fixed;
  bottom: 0;
  right: 10px;
  padding: 12px 16px;
  background-color: #fff;
  border-radius: 6px 6px 0 0;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, .6);
  transition: box-shadow .4s, padding .4s;
}

.chevron-up {
  display: inline-block;
  position: relative;
  top: 8px;
  width: 14px;
  height: 14px;
  border-top: 1px solid #44463B;
  border-left: 1px solid #44463B;
  background: transparent;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  transition: all .4s;
}

#back-to-top.abs {
  position: absolute;
}

#back-to-top:hover, #back-to-top.clicked {
  padding-bottom: 16px;
  box-shadow: 0 0 4px rgba(0, 0, 0, .6), 0 3px 6px rgba(0, 0, 0, .4);
}

/* Social Links */
.social-links {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  box-shadow: none;
}

.social-links li {
  position: relative;
}

.social-links i {
  font-size: 1.55em;
}

.social-links > li:not(:first-child) {
  margin-left: .5em;
}

.social-links a, .social-links a:hover {
  box-shadow: none;
}

.social-links a::after {
  content: attr(title);
  display: block;
  visibility: hidden;
  position: absolute;
  top: -35px;
  right: -5px;
  z-index: 999;
  padding: 0.1875em 0.75em;
  border-radius: 1px;
  background-color: #f8f8f8;
  color: #666;
  font-size: .88em;
  font-weight: 300;
  text-align: center;
  white-space: nowrap;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, .2);
}

.social-links a::before {
  content: "";
  visibility: hidden;
  position: absolute;
  top: -10px;
  right: calc(50% - .55em);
  z-index: 998;
  width: 0;
  height: 0;
  border: solid transparent 8px;
  border-top-color: #f8f8f8;
  border-bottom-width: 0;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, .2);
}

.social-links a:hover::after, .social-links a:hover::before {
  visibility: visible;
}

ul.social-links {
  padding-left: 0;
  list-style: none;
}

/* Search Bar */
.search-form {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
}

.search-form .search-inner {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  width: 100%;
  padding: 6px 6px;
  border-right-style: none;
  border-radius: 2px 0 0 2px;
  font-size: .96em;
  line-height: normal;
}

.search-form .search-submit {
  width: 60px;
  position: relative;
  background-color: #444;
  border-radius: 0 2px 2px 0;
}

.search-form .search-submit:hover, .search-form .search-submit:focus {
  background-color: #777;
  box-shadow: none;
}

.search-form .icon {
  top: calc(50% - 6px);
  left: calc(50% - 8px);
}

.icon.search {
  color: #444;
  position: absolute;
  width: 12px;
  height: 12px;
  margin-top: -1px;
  margin-left: -1px;
  border: solid 1px #fff;
  border-radius: 100%;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.icon.search::before {
  content: '';
  position: absolute;
  top: 12px;
  left: 5px;
  height: 6px;
  width: 1px;
  background-color: #fff;
}

/* READ MORE button */
.more {
  display: inline-block;
  position: relative;
  font-family: Lato, Arial, sans-serif;
  transition: all .7s ease-in-out;
}

.more a {
  display: block;
  padding: 7px 8px;
  font-size: 14px;
  border: 1px solid #333;
  color: #333;
  font-weight: 500;
}

.more a:hover {
  background: #333;
  color: #fff;
}

.more .fa {
  width: 0;
  font-style: normal;
  visibility: hidden;
  opacity: 0;
  color: #fff;
  padding-left: 0;
  font-size: 1.2em;
  transition: visibility 0s, font-size 0s, opacity .7s ease-in-out, padding .7s ease-in-out;
}

.more .fa::after {
  content: "\f061";
  font-family: FontAwesome;
}

.more a:hover .fa {
  width: auto;
  visibility: visible;
  opacity: 1;
  padding-left: .5em;
}

/* Custom Classes for several usage */
.select-none {
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

.fs15 {
  font-size: 0.9375em;
}

.fs17 {
  font-size: 1.0625em;
}

.fs20 {
  font-size: 1.25em;
}

.sans-serif {
  font-family: Helvetica, Arial, sans-serif;
}

.serif {
  font-family: Georgia, serif;
}

.bold {
  font-weight: 700;
}

.semibold {
  font-weight: 600;
}

.monospace {
  font-family: "Source Code Pro", Monaco, monospace;
}

.info-1 {
  display: block;
  margin: 1.6em 0;
  padding: 1.2em 1.4em;
  border: 2px solid #39c;
  border-radius: 3px;
  background-color: rgba(51, 153, 204, .1);
}

.attention-1 {
  padding: 1.4em;
  border: solid 2px #ff5000;
  border-radius: 3px;
  background: #ffd580;
}

.link-box {
  display: block;
  padding: 4px 6px;
  background-color: #f0f0f0;
}

.link-box > a {
  display: block;
}

/*   Keyframes
/* -------------------------------------------------- */
@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
  }
  100% {
    opacity: 1;
    visibility: visible;
    -webkit-transform: none;
            transform: none;
  }
}
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
  }
  100% {
    opacity: 1;
    visibility: visible;
    -webkit-transform: none;
            transform: none;
  }
}

@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
    visibility: visible;
    -webkit-transform: none;
            transform: none;
  }
  100% {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
  }
}

@keyframes fadeOutRight {
  0% {
    opacity: 1;
    visibility: visible;
    -webkit-transform: none;
            transform: none;
  }
  100% {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
  }
}

@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
  }
  100% {
    opacity: 1;
    visibility: visible;
    -webkit-transform: none;
            transform: none;
  }
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
  }
  100% {
    opacity: 1;
    visibility: visible;
    -webkit-transform: none;
            transform: none;
  }
}

@-webkit-keyframes fadeOutleft {
  0% {
    opacity: 1;
    visibility: visible;
    -webkit-transform: none;
            transform: none;
  }
  100% {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
  }
}

@keyframes fadeOutleft {
  0% {
    opacity: 1;
    visibility: visible;
    -webkit-transform: none;
            transform: none;
  }
  100% {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
    visibility: hidden;
  }
  100% {
    opacity: 1;
    visibility: visible;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
    visibility: hidden;
  }
  100% {
    opacity: 1;
    visibility: visible;
  }
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}

/* ------------------------------------------------------------------------- *
*  14. CJK Styling
* -------------------------------------------------------------------------- */
:lang(ja) .bradcrumb, :lang(ko) .bradcrumb, :lang(zh) .bradcrumb {
  margin-bottom: .2em;
}

:lang(ja) .entry, :lang(ja) .comment-body, :lang(ko) .entry, :lang(ko) .comment-body, :lang(zh) .entry, :lang(zh) .comment-body {
  line-height: 1.8;
}

:lang(ja) h1, :lang(ja) h2, :lang(ja) h3, :lang(ja) h4, :lang(ja) h5, :lang(ja) h6, :lang(ko) h1, :lang(ko) h2, :lang(ko) h3, :lang(ko) h4, :lang(ko) h5, :lang(ko) h6, :lang(zh) h1, :lang(zh) h2, :lang(zh) h3, :lang(zh) h4, :lang(zh) h5, :lang(zh) h6 {
  line-height: 1.5;
}

:lang(ja) .related-posts .post-title, :lang(ko) .related-posts .post-title, :lang(zh) .related-posts .post-title {
  line-height: inherit;
}

:lang(ja) h1 {
  font-family: Lato, 'Noto Sans CJK JP Light', 'Yu Gothic Light', 'Hiragino Sans', Arial, sans-serif;
}

/* ------------------------------------------------------------------------- *
*  15. Plugin
* ------------------------------------------------------------------------- */
/*   plugin : Table Of Content Style
/* -------------------------------------------------- */
#toc_container {
  display: block;
  background: transparent;
  width: 80%;
  min-width: 80%;
  max-width: 80%;
  margin: 1.4em auto;
  padding: 20px 0;
  border: 1px solid #44463B;
  font-size: .95em;
  line-height: 1.4;
}

#toc_container ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

#toc_container a {
  text-decoration: none;
  box-shadow: none;
}

#toc_container a:hover {
  text-decoration: none;
  box-shadow: none;
}

#toc_container p.toc_title {
  margin: 0;
  text-align: center;
  font-weight: bold;
}

#toc_container a span {
  font-weight: 300;
  font-family: Lato, Arial, sans-serif;
}

#toc_container a span::after {
  content: ".";
  padding-left: .1em;
}

#toc_container ul {
  margin-left: 1em;
}

#toc_container .toc_list a {
  display: block;
  padding: 8px 10px;
  border-bottom: 1px solid #44463B;
  transition: all .4s, border .4s .4s;
}

#toc_container .toc_list ul ul a {
  border-bottom-style: dotted;
}

@media screen and (max-width: 640px) {
  #toc_container {
    width: 95%;
    min-width: 95%;
    max-width: 95%;
    padding-top: 15px;
    padding-bottom: 15px;
    font-size: .95em;
  }
}

/*  plugin : contact form 7
/* ------------------------------------ */
.wpcf7 p {
  font-weight: 600;
  margin-bottom: 1.2em;
  position: relative;
}

.wpcf7 p span {
  font-weight: 400;
  color: #777;
}

.wpcf7 div.wpcf7-validation-errors {
  border: none;
  margin: 0;
  padding: 0;
}

.wpcf7 div.wpcf7-mail-sent-ok, .wpcf7 div.wpcf7-mail-sent-ng {
  border: none;
}

.wpcf7 div.wpcf7-response-output {
  margin: 0;
  padding: 0;
}

.wpcf7 span.wpcf7-form-control-wrap {
  display: block;
  position: relative;
}

.wpcf7 span.wpcf7-not-valid-tip {
  background-color: #f2dede;
  border-color: #e3bfbf;
  color: #b94a48;
  padding: 4px 14px;
  font-size: 12px;
  line-height: 20px;
  position: absolute;
  left: 0;
  top: 12px;
  width: auto;
  right: 0;
  display: block;
}

.wpcf7 input[type=text], .wpcf7 input[type=password], .wpcf7 input[type=email], .wpcf7 input[type=url], .wpcf7 input[type=search], .wpcf7 input[type=tel], .wpcf7 input[type=date], .wpcf7 input[type=datetime], .wpcf7 input[type=month], .wpcf7 input[type=week], .wpcf7 input[type=time], .wpcf7 input[type=datetime-local], .wpcf7 input[type=number], .wpcf7 select, .wpcf7 textarea {
  padding: 8px 10px;
  background-color: #f8f8f8;
  margin-top: .4em;
}

.wpcf7 input[type="submit"] {
  font-size: 1.2em;
}

.wpcf7 textarea {
  width: 100%;
}

/*   hightlight.js
/* -------------------------------------------------- */
.hljs {
  color: #E5E5EB;
  background: #282b2e;
  display: block;
  padding: 0;
}

.hljs-bullet, .hljs-literal, .hljs-number, .hljs-symbol {
  color: #6897BB;
}

.hljs-deletion, .hljs-keyword, .hljs-selector-tag {
  color: #cc7832;
}

.hljs-link, .hljs-template-variable, .hljs-variable {
  color: #629755;
}

.hljs-comment, .hljs-quote {
  color: grey;
}

.hljs-meta {
  color: #bd4b40;
}

.hljs-addition, .hljs-attribute, .hljs-string {
  color: #8cab7a;
}

.hljs-section, .hljs-title, .hljs-type {
  color: #ffc66d;
}

.hljs-name, .hljs-selector-class, .hljs-selector-id {
  color: #e66562;
}

.lang-tag * {
  color: #fff;
}

.hljs-emphasis {
  font-style: italic;
}

.hljs-strong {
  font-weight: 700;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLnNjc3MiLCJfdmFyaWFibGVzLnNjc3MiLCJzdHlsZS5jc3MiLCJfc2luZ2xlLnNjc3MiLCI8bm8gc291cmNlPiIsIl9pbmRleC5zY3NzIiwiX2hlYWRlci5zY3NzIiwiX2Zvb3Rlci5zY3NzIiwiX3NpZGViYXIuc2NzcyIsIl9jb21tZW50LnNjc3MiLCJfcGx1Z2luLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0E7Ozs7Ozs7Ozs7O0VBV0U7QUFDRjs7Ozs7RUFLRTtBQUNGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OzBFQW1CMEU7QUFTMUU7OytFQUUrRTtBQUMvRTtFQUFJLFVBQVU7RUFBRSxXQUFXO0VBQUUsdUJBQXVCO0NBQUk7O0FBQ3hEO0VBQXlCLGNBQWU7Q0FBRTs7QUFDMUM7RUFBa0MsY0FBYztFQUFFLGtEQUFpQztDQUFvQjs7QUFDdkc7RUFBb0IsaUJBQWtCO0NBQUU7O0FBQ3hDO0VBQVEsMEJBQTBCO0VBQUUsa0JBQWtCO0VBQUUsZUFBZ0I7Q0FBRTs7QUFDMUU7RUFBUyxpQkFBaUI7Q0FBSTs7QUFFOUI7OzhFQUU4RTtBQUM5RTtFQUNFLDRCQUE0QjtDQUM3Qjs7QUFDRDtFQUNFLDBCQUEwQjtFQUMxQixZQ2xEUztFRG1EVCxzQkFBc0I7RUFDdEIsa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQiw0Q0NsRXdDO0VEbUV4QyxvQ0FBb0M7RUFDcEMsbUNBQW1DO0VBQ25DLCtCQUErQjtDQUNoQzs7QUFDRDtFQUNFLG9CQUFvQjtDQUNyQjs7QUFDRDtFQUNFLG1CQUFtQjtDQUNwQjs7QUFDRDtFQUNFLHNCQUFjO0VBQWQscUJBQWM7RUFBZCxjQUFjO0VBQ2QsNEJBQW9CO01BQXBCLHdCQUFvQjtVQUFwQixvQkFBb0I7RUFDcEIsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsZUFBZTtDQUdoQjs7QUFGQztFQVBGO0lBT2dGLGVBQWdCO0dBRS9GO0NFcUJBOztBRnRCQztFQVJGO0lBUWlELGVBQWU7SUFBRSxX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REFDd0Q7QUFDeEQ7RUFBUSxlQUFlO0VBQUUsb0JBQW9CO0VBQUUsZUFBZTtFQUFFLFdBQVc7Q0FBSTs7QUFDL0U7RUFBMEQsZUFBZTtDQUFJOztBQUM3RTtFQUFvRCxlQUFlO0NBQUk7O0FBQ3ZFO0VBQXNELGVBQWU7Q0FBSTs7QUFDekU7RUFBNkIsWUFBWTtDQUFJOztBQUM3QztFQUFhLGVBQWU7Q0FBSTs7QUFDaEM7RUFBZ0QsZUFBZTtDQUFJOztBQUNuRTtFQUF5QyxlQUFlO0NBQUk7O0FBQzVEO0VBQXNELGVBQWU7Q0FBSTs7QUFDekU7RUFBYyxZQUFZO0NBQUk7O0FBQzlCO0VBQWlCLG1CQUFtQjtDQUFJOztBQUN4QztFQUFlLGlCQUFpQjtDQUFJIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qXG5UaGVtZSBOYW1lOiBDb2xkYm94XG5UaGVtZSBVUkk6IGh0dHBzOi8vY29sZGJveC5taXJ1Yy5jby9cbkRlc2NyaXB0aW9uOiBDb2xkYm94IGlzIGEgY2xlYW4gYmxvZy1mb2N1c2VkIFdvcmRQcmVzcyB0aGVtZS4gSXQgaGVscHMgaW5jcmVhc2Ugc2l0ZSB0cmFmZmljIGZyb20gR29vZ2xlIGFuZCBTTlMuIEl0IGlzIGVhc3kgdG8gY3VzdG9taXplLCBsaWdodHdlaWdodCwgU0VPIGZyaWVuZGx5LCBhbmQgcXVpY2tlciBsb2FkLiBUaGlzIHRoZW1lIGlzIGZ1bGx5IGxheW91dGVkIGJ5IEZsZXhib3ggbW9kdWxlLCB0aGF0IGlzLCBpdCBpcyByZWFsbHkgZmxleGlibGUuIFNlZSBEZW1vOiBodHRwczovL2NvbGRib3gubWlydWMuY28vZGVtby9cblZlcnNpb246IDEuMS4wXG5BdXRob3I6IFRvc2hpaGlybyBLYW5haSAoTWlydWNvbilcbkF1dGhvciBVUkk6IGh0dHBzOi8vbWlydWMuY28vXG5UYWdzOiBibG9nLCBvbmUtY29sdW1uLCB0d28tY29sdW1ucywgcmlnaHQtc2lkZWJhciwgbGVmdC1zaWRlYmFyLCBncmlkLWxheW91dCwgdHJhbnNsYXRpb24tcmVhZHksIGZsZXhpYmxlLWhlYWRlciwgY3VzdG9tLWJhY2tncm91bmQsIGN1c3RvbS1oZWFkZXIsIGN1c3RvbS1jb2xvcnMsIGN1c3RvbS1tZW51LCBmZWF0dXJlZC1pbWFnZXMsIHBvc3QtZm9ybWF0cywgc3RpY2t5LXBvc3QsIHRoZW1lLW9wdGlvbnMsIGVkaXRvci1zdHlsZSwgdGhyZWFkZWQtY29tbWVudHNcblRleHQgRG9tYWluOiBjb2xkYm94XG5MaWNlbnNlOiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wXG5MaWNlbnNlIFVSSTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2dwbC0zLjAuaHRtbFxuKi9cbi8qXG5SZXNwb25zaXZlIEJyZWFrcG9pbnRzXG45NjErICAgICA9PiBQQ1xuOTYwLTY0MSAgPT4gVGFibGV0XG42MzktICAgICA9PiBTbWFydHBob25lXG4qL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5UYWJsZSBPZiBDb250ZW50c1xuXG4wLiBSZXNldFxuMS4gR2xvYmFsXG4yLiBCYXNlIFN0eWxpbmdcbjMuIFNpbmdsZVxuNC4gSW5kZXhcbjUuIEFyY2hpdmVcbjYuIFBhZ2VcbjcuIDQwNCBQYWdlXG44LiBIZWFkZXJcbjkuIEZvb3RlclxuMTAuIFNpZGViYXJcbjExLiBDb21tZW50XG4xMi4gV1AgbmF0aXZlXG4xMy4gTWlzY1xuMTQuIFN0eWxpbmcgZm9yIENKS1xuMTUuIFBsdWdpblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXG4vLyBNaXhpblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCBcInZhcmlhYmxlcy5zY3NzXCI7XG5AbWl4aW4gYm94LXNoYWRvdygkeDogMCwgJHk6IDAsICRibHVyOiA2cHgsICRzcHJlYWQ6IDAsICRjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpKSB7IGJveC1zaGFkb3c6ICR4ICR5ICRibHVyICRzcHJlYWQgJGNvbG9yOyB9XG5AbWl4aW4gYm94LXNoYWRvdy1pbnNldCgkeDogMCwgJHk6IDAsICRibHVyOiA2cHgsICRzcHJlYWQ6IDAsICRjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpKSB7IGJveC1zaGFkb3c6ICR4ICR5ICRibHVyICRzcHJlYWQgJGNvbG9yIGluc2V0OyB9XG5AZnVuY3Rpb24gZW0oJHB4LCAkYmFzZTogJGJhc2UtZm9udC1zaXplKSB7IEByZXR1cm4gKCRweCAvICRiYXNlKSAqIDFlbTsgfVxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXG4vKiAgMC4gUmVzZXRcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiogeyBtYXJnaW46IDA7IHBhZGRpbmc6IDA7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYgeyBmb250OiBpbmhlcml0IH1cbnRleHRhcmVhLCBpbnB1dCwgc2VsZWN0LCBidXR0b24geyBmb250OiBpbmhlcml0OyAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoNjgsIDY4LCA2OCwgLjMpOyB9XG5hOmhvdmVyLCBhOmFjdGl2ZSB7IG91dGxpbmUtd2lkdGg6IDAgfVxudGFibGUgeyBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyBib3JkZXItc3BhY2luZzogMDsgb3ZlcmZsb3c6IGF1dG8gfVxub2wsIHVsIHsgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbiogIDEuIEdsb2JhbFxuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5odG1sIHtcbiAgZm9udC1zaXplOiA2Mi41JSAhaW1wb3J0YW50O1xufVxuYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XG4gIGNvbG9yOiAkdGV4dDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBmb250LXNpemU6IDEuNjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgZm9udC1mYW1pbHk6ICRtYWluLWZvbnQ7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG59XG4jbWFpbiB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG4uY29udGFpbmVyLW91dGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiAxMTQwcHg7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicG1heC10YWJsZXQpIGFuZCAobWluLXdpZHRoOiAkYnBtaW4tdGFibGV0KSB7IGRpc3BsYXk6IGJsb2NrIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJwbWF4LW1vYmlsZSkgeyBkaXNwbGF5OiBibG9jazsgcGFkZGluZzogMCB9XG59XG4uY29udGVudCB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk2MXB4KSB7XG4gICAgbWluLWhlaWdodDogODB2aDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmNvbnRlbnQtaW5uZXIge1xuICBwYWRkaW5nOiAxMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR5OiAxcHgsICRibHVyOiAzcHgsICRjb2xvcjogcmdiYSgwLCAwLCAwLCAuMDUpKTtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJwbWF4LW1vYmlsZSkge1xuICAgIHBhZGRpbmc6IDVweDtcbiAgfVxufVxuLnNpZGViYXItczEge1xuICB3aWR0aDogJHNpZGUtd2lkdGg7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicG1heC10YWJsZXQpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLnJpZ2h0LXNpZGViYXItczEge1xuICAuY29udGVudCB7IHBhZGRpbmctcmlnaHQ6ICRzaWRlLXdpZHRoICsgMjBweDsgcGFkZGluZy1sZWZ0OiAwOyBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnBtYXgtdGFibGV0KSB7IHBhZGRpbmc6IDAgfSB9XG4gIC5zaWRlYmFyLXMxIHsgbWFyZ2luLWxlZnQ6IC0kc2lkZS13aWR0aDsgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJwbWF4LXRhYmxldCkgeyBtYXJnaW4tbGVmdDogMCB9IH1cbn1cbi5sZWZ0LXNpZGViYXItczEge1xuICAuY29udGVudCB7IHBhZGRpbmctcmlnaHQ6IDA7IHBhZGRpbmctbGVmdDogJHNpZGUtd2lkdGggKyAyMHB4OyBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnBtYXgtdGFibGV0KSB7IHBhZGRpbmc6IDAgfSB9XG4gIC5zaWRlYmFyLXMxIHsgbWFyZ2luLXJpZ2h0OiAtJHNpZGUtd2lkdGg7IG9yZGVyOiAtMTsgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJwbWF4LXRhYmxldCkgeyBtYXJnaW4tcmlnaHQ6IDAgfSB9XG59XG4uaGlkZS1zaWRlYmFyLXMxIHsgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYxcHgpIHtcbiAgLmdyaWQtdmlldyAucG9zdCwgLmdyaWQtdmlldyAucGFnZSB7IHdpZHRoOiAzMy4zMzMlOyB9IH1cbn1cbi5ib3R0b20tc2lkZWJhci1zMSB7XG4gICN3cmFwcGVyID4gLmNvbnRhaW5lciB7IGRpc3BsYXk6IGJsb2NrIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYxcHgpIHtcbiAgICAuc2lkZWJhci1zMSB7IHdpZHRoOiAxMDAlOyBtYXJnaW4tdG9wOiAyNHB4OyAgfVxuICAgIC5zaWRlYmFyLWlubmVyIHsgZGlzcGxheTogZmxleDsgZmxleC1mbG93OiByb3cgd3JhcDsgfVxuICAgIC5zaWRlYmFyIC53aWRnZXQgeyB3aWR0aDogY2FsYygzMy4zMzMlIC0gMTBweCk7IG1hcmdpbjogNXB4OyB9XG4gICAgLmdyaWQtdmlldyAucG9zdCwgLmdyaWQtdmlldyAucGFnZSB7IHdpZHRoOiAzMy4zMzMlOyB9XG4gIH1cbn1cbjo6LXdlYmtpdC1zY3JvbGxiYXIgeyBoZWlnaHQ6IDEycHg7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG46Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHsgYmFja2dyb3VuZC1jb2xvcjogIzg4ODsgfVxuOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6ICM3NzcgfVxuOjpzZWxlY3Rpb24geyBiYWNrZ3JvdW5kOiAkbGluazsgY29sb3I6ICNmZmY7IHRleHQtc2hhZG93OiBub25lOyB9XG5pbWcgeyBtYXgtd2lkdGg6IDEwMCU7IGhlaWdodDogYXV0bzsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgYm9yZGVyLXN0eWxlOiBub25lIH1cbmlmcmFtZSB7IG1heC13aWR0aDogMTAwJTsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbiogIDIuIEJhc2UgU3R5bGluZ1xuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAgIEJhc2UgOiBUeXBvZ3JhcGh5XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYSB7IGNvbG9yOiBpbmhlcml0OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IHRyYW5zaXRpb246IGFsbCAuMnM7IC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSg2OCwgNjgsIDY4LCAuMyk7IH1cbmIsIHN0cm9uZyB7IGZvbnQtd2VpZ2h0OiBib2xkIH1cbmJpZyB7IGZvbnQtc2l6ZTogbGFyZ2VyIH1cbmhyIHsgaGVpZ2h0OiAwOyBvdmVyZmxvdzogdmlzaWJsZTsgYm9yZGVyOiAxcHggc29saWQgI2YwZjBmMCB9XG5zbWFsbCB7IGZvbnQtc2l6ZTogc21hbGxlciB9XG5zdWIgeyB2ZXJ0aWNhbC1hbGlnbjogc3ViOyBmb250LXNpemU6IHNtYWxsZXIgfVxuc3VwIHsgdmVydGljYWwtYWxpZ246IHN1cGVyOyBmb250LXNpemU6IHNtYWxsZXIgfVxuaW5zIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbmFkZHJlc3MsIGNpdGUsIHEsIHZhciwgZW0geyBmb250LXN0eWxlOiBpdGFsaWMgfVxuYWJiciB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgdGV4dC1kZWNvcmF0aW9uOiBub25lIH1cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBjb2xvcjogIzExMTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0uMDNlbTtcbn1cbmgxIHsgZm9udC1zaXplOiAxLjg3NWVtIH1cbmgyIHsgZm9udC1zaXplOiAxLjU2ZW0gfVxuaDMgeyBmb250LXNpemU6IDEuNDNlbSB9XG5oNCB7IGZvbnQtc2l6ZTogMS4zNGVtIH1cbmg1IHsgZm9udC1zaXplOiAxLjI1ZW0gfVxuaDYgeyBmb250LXNpemU6IDEuMTJlbSB9XG5cbi8qICAgQmFzZSA6IEVudHJ5XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmVudHJ5IHtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcblxuICBhIHsgY29sb3I6ICRsaW5rOyBib3gtc2hhZG93OiAwIDFweCAwIDAgY3VycmVudENvbG9yIH1cbiAgYTpob3ZlciB7IGNvbG9yOiAkaG92ZXI7IGJveC1zaGFkb3c6IDAgMnB4IDAgMCAjMDAwIH1cbiAgZHQgeyBmb250LXdlaWdodDogYm9sZCB9XG4gIGRkIHsgbWFyZ2luLWJvdHRvbTogMWVtIH1cbiAgaHIgeyBtYXJnaW46IDFlbSAwOyB9XG4gIGlmcmFtZSB7IG1hcmdpbi1ib3R0b206IDFlbSB9XG4gIHAgeyBtYXJnaW4tYm90dG9tOiAxZW0gfVxuICBwID4gaWZyYW1lIHsgbWFyZ2luLWJvdHRvbTogMCB9XG4gIC5tZWpzLWNvbnRhaW5lciB7IG1hcmdpbi1ib3R0b206IDFlbSB9XG4gIGFiYnI6OmFmdGVyIHtcbiAgICBjb250ZW50OiBhdHRyKHRpdGxlKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTI2cHg7XG4gICAgcmlnaHQ6IC03cHg7XG4gICAgei1pbmRleDogOTk5O1xuICAgIHBhZGRpbmc6IGVtKDNweCkgZW0oMTJweCk7XG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgZm9udC1zaXplOiAuODhlbTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGNvbG9yOiByZ2JhKDAsIDAsIDAsIC4yKSk7XG4gIH1cbiAgYWJicjpob3Zlcjo6YWZ0ZXIge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAmOmZpcnN0LWNoaWxkIHsgbWFyZ2luLXRvcDogMCB9XG4gIH1cbiAgaDEge1xuICAgIG1hcmdpbjogMS44ZW0gMCAxZW07XG4gIH1cbiAgaDIge1xuICAgIG1hcmdpbjogMS42ZW0gMCAxZW07XG4gIH1cbiAgaDMge1xuICAgIG1hcmdpbjogMS41ZW0gMCAxZW07XG4gIH1cbiAgaDQge1xuICAgIG1hcmdpbjogMS40ZW0gMCAuOWVtO1xuICB9XG4gIGg1IHtcbiAgICBtYXJnaW46IDEuM2VtIDAgLjhlbTtcbiAgfVxuICBoNiB7XG4gICAgbWFyZ2luOiAxLjJlbSAwIC44ZW07XG4gIH1cblxuICB1bCB7XG4gICAgbGlzdC1zdHlsZTogc3F1YXJlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG4gIG9sIHtcbiAgICBsaXN0LXN0eWxlOiBkZWNpbWFsO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG5cbiAgYmxvY2txdW90ZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICBwYWRkaW5nOiAxZW0gMWVtIDFlbSAzLjJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHk6IDFweCwgJGJsdXI6IDNweCwgJGNvbG9yOiByZ2JhKDAsIDAsIDAsIC4xKSk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMTBkXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTVweDsgbGVmdDogMTZweDtcbiAgICAgIGNvbG9yOiAjYWFhO1xuICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICB9XG4gICAgJiA+ICo6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDAgfVxuICB9XG5cbiAgcHJlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAxLjFlbSAwO1xuICAgIHBhZGRpbmc6IDFlbSAxLjJlbTtcbiAgICBiYWNrZ3JvdW5kOiAkYWNjZW50O1xuICAgIGNvbG9yOiAjRTVFNUVCO1xuICAgIHdoaXRlLXNwYWNlOiBwcmU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgZm9udC1zaXplOiAuOTZlbTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIGZvbnQtZmFtaWx5OiAnU291cmNlIENvZGUgUHJvJywgTW9uYWNvLCBNZW5sbywgJ0NvdXJpZXIgTmV3JywgQ29uc29sYXMsIG1vbm9zcGFjZTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCR5OiAxcHgsICRibHVyOiAzcHgsICRjb2xvcjogcmdiYSgwLCAwLCAwLCAuMSkpO1xuICB9XG4gIHByZSA+IGNvZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd2hpdGUtc3BhY2U6IGluaGVyaXQ7XG4gIH1cbiAgY29kZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcbiAgICBwYWRkaW5nOiAwIC4xZW07XG4gICAgbWFyZ2luOiAwIC4wNWVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgICBmb250LXNpemU6IC45NmVtO1xuICAgIGZvbnQtZmFtaWx5OiAnU291cmNlIENvZGUgUHJvJywgTW9uYWNvLCBNZW5sbywgJ0NvdXJpZXIgTmV3JywgQ29uc29sYXMsIG1vbm9zcGFjZTtcbiAgfVxuICBrYmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7XG4gICAgcGFkZGluZzogMCAuMWVtO1xuICAgIG1hcmdpbjogMCAuMDVlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYWNjZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgICBmb250LXNpemU6IC45NmVtO1xuICAgIGZvbnQtZmFtaWx5OiAnU291cmNlIENvZGUgUHJvJywgTW9uYWNvLCBNZW5sbywgJ0NvdXJpZXIgTmV3JywgQ29uc29sYXMsIG1vbm9zcGFjZTtcbiAgfVxuXG4gIHRhYmxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgZm9udC1zaXplOiAuOTVlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCR5OiAxcHgsICRibHVyOiAxcHgsICRjb2xvcjogcmdiYSgwLCAwLCAwLCAuMDgpKTtcbiAgICB0cjpudGgtb2YtdHlwZShldmVuKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmJmYmZiO1xuICAgIH1cbiAgICB0ZCwgdGgge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XG4gICAgfVxuICAgIHRoIHtcbiAgICAgIHBhZGRpbmc6IDdweCAxMHB4O1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGQ7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3I7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gICAgdGQge1xuICAgICAgcGFkZGluZzogNnB4O1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICBhZGRyZXNzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJwbWF4LW1vYmlsZSkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IHBhZGRpbmctbGVmdDogMTVweDtcbiAgfVxuXG59XG5cbi5lbnRyeS1pbm5lcjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi8qICAgQmFzZSA6IENvbW1vbiBQYXJ0c1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jb250ZW50LWluc2lkZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHk6IDFweCwgJGJsdXI6IDNweCwgJGNvbG9yOiByZ2JhKDAsIDAsIDAsIC4xKSk7XG59XG4uY29udGVudC1ib3gge1xuICBwYWRkaW5nOiAyZW0gNDBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlYWVhZWE7XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnBtYXgtbW9iaWxlKSB7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIH1cbn1cbi50aXRsZS1ib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEuNGVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LWZhbWlseTogJGxhdG87XG4gICYtaW5uZXIge1xuICAgIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7XG4gICAgcGFkZGluZzogNDBweCA0MHB4O1xuICB9XG4gIC5wb3N0LWRhdGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogIzc3NztcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuICBoMSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxuICBhOmhvdmVyIHsgY29sb3I6ICRsaW5rIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJwbWF4LW1vYmlsZSkge1xuICAgICYtaW5uZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICB9XG4gIH1cbn1cbi5hY3Rpb24tYmFyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtMnB4OyBsZWZ0OiAwO1xuICB3aWR0aDogYXV0bzsgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaW5rO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIC4ycztcbn1cblxuLyogICBCYXNlIDogRm9ybXNcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5pbnB1dFt0eXBlPXRleHRdLCBpbnB1dFt0eXBlPXBhc3N3b3JkXSwgaW5wdXRbdHlwZT1lbWFpbF0sIGlucHV0W3R5cGU9dXJsXSwgaW5wdXRbdHlwZT1zZWFyY2hdLFxuaW5wdXRbdHlwZT10ZWxdLCBpbnB1dFt0eXBlPWRhdGVdLCBpbnB1dFt0eXBlPWRhdGV0aW1lXSwgaW5wdXRbdHlwZT1tb250aF0sIGlucHV0W3R5cGU9d2Vla10sXG5pbnB1dFt0eXBlPXRpbWVdLCBpbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXSwgaW5wdXRbdHlwZT1udW1iZXJdIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZXJhbmNlOiBub25lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDRweCA2cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGNvbG9yOiAjNzc3O1xuICBvdXRsaW5lOiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xuICAmOmZvY3VzIHsgYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbn1cbmlucHV0W3R5cGU9cGFzc3dvcmRdIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDRweCA2cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIGNvbG9yOiAjNzc3O1xuICBvdXRsaW5lOiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xuICAmOmZvY3VzIHsgYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7IH1cbn1cbmlucHV0W3R5cGU9cmFuZ2VdIHtcbn1cbmlucHV0W3R5cGU9Y29sb3JdIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIGNvbG9yOiAjNzc3O1xuICBvdXRsaW5lOiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xuICAmOmZvY3VzIHsgYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7IH1cbn1cbmlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDNweCAzcHggM3B4IDRweDtcbn1cbmlucHV0W3R5cGU9cmFkaW9dIHtcbiAgbWFyZ2luOiAzcHggM3B4IDBweCA1cHg7XG59XG5pbnB1dFt0eXBlPXN1Ym1pdF0sIGlucHV0W3R5cGU9YnV0dG9uXSwgYnV0dG9uW3R5cGU9c3VibWl0XSwgYnV0dG9uW3R5cGU9YnV0dG9uXSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDVweCA3cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBvdXRsaW5lOiAwO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NDQ7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogNjAwO1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNzc3O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3Nzc7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbn1cbmlucHV0W3R5cGU9cmVzZXRdLCBidXR0b25bdHlwZT1yZXNldF0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogNXB4IDdweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIG91dGxpbmU6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg4ODtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRyYW5zaXRpb246IGFsbCAuMnM7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAmOmhvdmVyLCAmOmZvY3VzIHsgYm9yZGVyOiAxcHggc29saWQgIzQ0NDsgYmFja2dyb3VuZC1jb2xvcjogIzg4OCAtICMyMjI7IH1cbn1cbnRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1zaXplOiAxNXB4O1xuICB0cmFuc2l0aW9uOiBib3JkZXIgLjJzO1xuICAmOmZvY3VzIHsgYm9yZGVyLWNvbG9yOiAkbGluayB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxuKiAgMy4gU2luZ2xlXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgXCJfc2luZ2xlLnNjc3NcIjtcblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbiogIDQuIEluZGV4XG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgXCJfaW5kZXguc2Nzc1wiO1xuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxuKiAgNS4gQXJjaGl2ZVxuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4udGl0bGUtZGVzY3JpcHRpb24ge1xuICBjb2xvcjogIzY2Njtcbn1cbi50YXhvbm9teS1kZXNjcmlwdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAxZW0gNnB4IDA7XG4gIHBhZGRpbmc6IDEwcHggMTZweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcbiAgY29sb3I6ICM3Nzc7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBmb250LXdlaWdodDogMzAwO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR5OiAxcHgsICRibHVyOiAxcHgsICRjb2xvcjogcmdiYSgwLCAwLCAwLCAuMDgpKTtcbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbiogIDYuIFBhZ2VzXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxuKiAgNy4gNDA0IFBhZ2VcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmVycm9yLW1lc3NhZ2VzIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1mYW1pbHk6IExhdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuXG4gIHAgeyBtYXJnaW4tYm90dG9tOiAyZW0gfVxuICBoMiB7XG4gICAgcGFkZGluZzogLjhlbSAxLjRlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xuICB9XG4gIC5jb250ZW50LWlubmVyID4gJiB7XG4gICAgcGFkZGluZy1ib3R0b206IDE2cHg7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJwbWF4LW1vYmlsZSkge1xuICAgIC5jb250ZW50LWlubmVyID4gJiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMmVtO1xuICAgIH1cbiAgICBoMiB7XG4gICAgICBwYWRkaW5nOiAuMmVtIC44ZW07XG4gICAgfVxuICB9XG59XG4uZXJyb3I0MDQge1xuICAuY29udGVudC1pbm5lciB7XG4gICAgcGFkZGluZzogMS44ZW07XG4gICAgJiA+IC5lcnJvci1tZXNzYWdlcyB7IHBhZGRpbmctYm90dG9tOiAwIH1cblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGJwbWF4LW1vYmlsZSkge1xuICAgICAgLnNlYXJjaC1mb3JtIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW46IDFlbSA2cHggMDtcbiAgICAgICAgcGFkZGluZzogMTBweCAxNnB4O1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgY3VycmVudENvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xuICAgICAgICBjb2xvcjogIzc3NztcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHk6IDFweCwgJGJsdXI6IDFweCwgJGNvbG9yOiByZ2JhKDAsIDAsIDAsIC4wOCkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxuKiAgOC4gSGVhZGVyXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgXCJfaGVhZGVyLnNjc3NcIjtcblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbiogIDkuIEZvb3RlclxuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW1wb3J0IFwiZm9vdGVyLnNjc3NcIjtcblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbiogIDEwLiBTaWRlYmFyXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgXCJzaWRlYmFyLnNjc3NcIjtcblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbiogIDExLiBDb21tZW50XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW1wb3J0IFwiY29tbWVudC5zY3NzXCI7XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXG4qICAxMi4gV1AgbmF0aXZlXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi53cC1jYXB0aW9uIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIHBhZGRpbmc6IDVweCA1cHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR5OiAxcHgsICRibHVyOiAzcHgsICRjb2xvcjogcmdiYSgwLCAwLCAwLCAuMSkpO1xufVxuLndwLWNhcHRpb24gLndwLWNhcHRpb24tdGV4dCB7IG1hcmdpbjogMDsgcGFkZGluZzogLjZlbSA0cHg7IGxpbmUtaGVpZ2h0OiAxLjQ7IGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuLmFsaWduY2VudGVyIHsgZGlzcGxheTogYmxvY2s7IG1heC13aWR0aDogMTAwJTsgbWFyZ2luLWxlZnQ6IGF1dG87IG1hcmdpbi1yaWdodDogYXV0byB9XG4uYWxpZ25yaWdodCB7IGZsb2F0OiByaWdodDsgbWF4LXdpZHRoOiAxMDAlOyBtYXJnaW4tbGVmdDogMTBweCB9XG4uYWxpZ25sZWZ0IHsgZmxvYXQ6IGxlZnQ7IG1heC13aWR0aDogMTAwJTsgbWFyZ2luLXJpZ2h0OiAxMHB4IH1cbi5jbGVhcmZpeDphZnRlciB7XHRjb250ZW50OiBcIlwiOyBcdGRpc3BsYXk6IGJsb2NrO1x0Y2xlYXI6IGJvdGg7IH1cbmh0bWwgYm9keSAuc2NyZWVuLXJlYWRlci10ZXh0IHsgcG9zaXRpb246IGFic29sdXRlO1x0d2lkdGg6IDFweDsgaGVpZ2h0OiAxcHg7IGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTsgb3ZlcmZsb3c6IGhpZGRlbjtcdH1cbmJvZHkuaG9tZSB7IGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50IH1cblxuLyogICBHYWxsZXJ5XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA5IHtcbiAgLmdhbGxlcnktY29sdW1ucy0jeyRpfSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuXG4gICAgLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC8gI3skaX0pO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgICAgcGFkZGluZzogMCAuMXJlbTtcbiAgICB9XG4gIH1cbn1cbi53cC1jYXB0aW9uIGltZyB7IG1hcmdpbjogMCBhdXRvOyBwYWRkaW5nOiAwOyBib3JkZXI6IDA7IH1cbi5nYWxsZXJ5LWljb24ubGFuZHNjYXBlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmdhbGxlcnktY2FwdGlvbiB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogNXB4IDVweCAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtc2l6ZTogLjk0ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbiogIDEzLiBNaXNjXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNiYWNrLXRvLXRvcCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwOyByaWdodDogMTBweDtcbiAgcGFkZGluZzogMTJweCAxNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiA2cHggNnB4IDAgMDtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYmx1cjogNHB4LCAkY29sb3I6IHJnYmEoMCwgMCwgMCwgLjYpKTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuNHMsIHBhZGRpbmcgLjRzO1xufVxuLmNoZXZyb24tdXAge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiA4cHg7XG4gIHdpZHRoOiAxNHB4OyBoZWlnaHQ6IDE0cHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYWNjZW50O1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRhY2NlbnQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zaXRpb246IGFsbCAuNHM7XG59XG4jYmFjay10by10b3AuYWJzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuI2JhY2stdG8tdG9wOmhvdmVyLCAjYmFjay10by10b3AuY2xpY2tlZCB7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICBib3gtc2hhZG93OiAwIDAgNHB4IHJnYmEoMCwgMCwgMCwgLjYpLCAwIDNweCA2cHggcmdiYSgwLCAwLCAwLCAuNCk7XG59XG5cbi8qIFNvY2lhbCBMaW5rcyAqL1xuLnNvY2lhbC1saW5rcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgaSB7XG4gICAgZm9udC1zaXplOiAxLjU1ZW07XG4gIH1cbiAgJiA+IGxpOm5vdCg6Zmlyc3QtY2hpbGQpIHsgbWFyZ2luLWxlZnQ6IC41ZW07IH1cbiAgYSwgYTpob3ZlciB7IGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIodGl0bGUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMzVweDtcbiAgICByaWdodDogLTVweDtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgcGFkZGluZzogZW0oM3B4KSBlbSgxMnB4KTtcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbiAgICBjb2xvcjogIzY2NjtcbiAgICBmb250LXNpemU6IC44OGVtO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY29sb3I6IHJnYmEoMCwgMCwgMCwgLjIpKTtcbiAgfVxuICBhOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xMHB4O1xuICAgIHJpZ2h0OiBjYWxjKDUwJSAtIC41NWVtKTtcbiAgICB6LWluZGV4OiA5OTg7XG4gICAgd2lkdGg6IDA7IGhlaWdodDogMDtcbiAgICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50IDhweDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjZjhmOGY4O1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY29sb3I6IHJnYmEoMCwgMCwgMCwgLjIpKTtcbiAgfVxuICBhOmhvdmVyOjphZnRlciwgYTpob3Zlcjo6YmVmb3JlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC8vIC5mYWNlYm9vayAuZmEgeyBjb2xvcjogIzNiNTk5OCB9XG4gIC8vIC50d2l0dGVyIC5mYSB7IGNvbG9yOiAjMDBhY2VkIH1cbiAgLy8gLnlvdXR1YmUgLmZhIHsgY29sb3I6ICNiYjAwMDAgfVxuICAvLyAubGlua2VkaW4gLmZhIHsgY29sb3I6ICMwMDdiYjYgfVxuICAvLyAuaW5zdGFncmFtIC5mYSB7IGNvbG9yOiAjNTE3ZmE0IH1cbiAgLy8gLnBpbnRlcmVzdCAuZmEgeyBjb2xvcjogI2NiMjAyNyB9XG4gIC8vIC52aW5lIC5mYSB7IGNvbG9yOiAjMDBiZjhmIH1cbiAgLy8gLnNuYXBjaGF0IC5mYSB7IGNvbG9yOiAjZmZmYzAwIH1cbiAgLy8gLmZsaWNrciAuZmEgeyBjb2xvcjogI2ZmMDA4NCB9XG4gIC8vIC50dW1ibHIgLmZhIHsgY29sb3I6ICMzMjUwNmQgfVxuICAvLyAudmltZW8gLmZhIHsgY29sb3I6ICNhYWQ0NTAgfVxuICAvLyAuZm91cnNxdWFyZSAuZmEgeyBjb2xvcjogIzAwNzJiMSB9XG4gIC8vIC5zbGFjayAuZmEgeyBjb2xvcjogIzc4ZDRiNiB9XG4gIC8vIC5za3lwZSAuZmEgeyBjb2xvcjogIzBiYmZmMiB9XG4gIC8vIC5nb29nbGUtcGx1cyAuZmEgeyBjb2xvcjogI2RkNGMzYjsgfVxuICAvLyAuYmVsbCAuZmEgeyBjb2xvcjogI2ZmYmUwNiB9XG4gIC8vIC5yc3MgLmZhIHsgY29sb3I6ICNiOTQyMmYgfVxuICAvLyAuZmVlZGx5IC5mYSB7IGNvbG9yOiAjODdjMDQwIH1cbiAgLy8gLnBheXBhbCAuZmEgeyBjb2xvcjogIzI1M2I4MCB9XG4gIC8vIC5zdGVhbSAuZmEgeyBjb2xvcjogIzE0NDk3ZCB9XG4gIC8vIC5mZWVkbHkgKltjbGFzcyo9J2ZlZWRseSddIHsgY29sb3I6ICM5NGJlNjEgfVxufVxudWwuc29jaWFsLWxpbmtzIHsgcGFkZGluZy1sZWZ0OiAwOyBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi8qIFNlYXJjaCBCYXIgKi9cbi5zZWFyY2gtZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgLnNlYXJjaC1pbm5lciB7XG4gICAgZmxleDogMTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiA2cHggNnB4O1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAycHggMCAwIDJweDtcbiAgICBmb250LXNpemU6IC45NmVtO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIH1cbiAgLnNlYXJjaC1zdWJtaXQge1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDQ0O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMnB4IDJweCAwO1xuICAgICY6aG92ZXIsICY6Zm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3OyBib3gtc2hhZG93OiBub25lIH1cbiAgfVxuICAuaWNvbiB7IHRvcDogY2FsYyg1MCUgLSA2cHgpOyBsZWZ0OiBjYWxjKDUwJSAtIDhweCkgfVxufVxuLmljb24uc2VhcmNoIHtcbiAgY29sb3I6ICM0NDQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTJweDtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIGJvcmRlcjogc29saWQgMXB4ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMnB4O1xuICAgIGxlZnQ6IDVweDtcbiAgICBoZWlnaHQ6IDZweDtcbiAgICB3aWR0aDogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIH1cbn1cblxuLyogUkVBRCBNT1JFIGJ1dHRvbiAqL1xuLm1vcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1mYW1pbHk6ICRsYXRvO1xuICB0cmFuc2l0aW9uOiBhbGwgLjdzIGVhc2UtaW4tb3V0O1xuICBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA3cHggOHB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkdGV4dDtcbiAgICBjb2xvcjogJHRleHQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICR0ZXh0O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG4gIC5mYSB7XG4gICAgd2lkdGg6IDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBmb250LXNpemU6IDEuMmVtO1xuICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMHMsIGZvbnQtc2l6ZSAwcywgb3BhY2l0eSAuN3MgZWFzZS1pbi1vdXQsIHBhZGRpbmcgLjdzIGVhc2UtaW4tb3V0O1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMDYxXCI7XG4gICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgfVxuICB9XG4gIGE6aG92ZXIgLmZhIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgcGFkZGluZy1sZWZ0OiAuNWVtO1xuICAgICY6OmFmdGVyIHtcbiAgICB9XG4gIH1cbn1cblxuLyogQ3VzdG9tIENsYXNzZXMgZm9yIHNldmVyYWwgdXNhZ2UgKi9cbi5zZWxlY3Qtbm9uZSB7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7IC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7IC1tcy11c2VyLXNlbGVjdDogbm9uZTsgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG4uY2xlYXJmaXg6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xufVxuLmZzMTUgeyBmb250LXNpemU6IGVtKDE1cHgpOyB9XG4uZnMxNyB7IGZvbnQtc2l6ZTogZW0oMTdweCk7IH1cbi5mczIwIHsgZm9udC1zaXplOiBlbSgyMHB4KTsgfVxuLnNhbnMtc2VyaWYgeyBmb250LWZhbWlseTogSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjsgfVxuLnNlcmlmIHsgZm9udC1mYW1pbHk6IEdlb3JnaWEsIHNlcmlmOyB9XG4uYm9sZCB7IGZvbnQtd2VpZ2h0OiA3MDA7IH1cbi5zZW1pYm9sZCB7IGZvbnQtd2VpZ2h0OiA2MDA7IH1cbi5tb25vc3BhY2UgeyBmb250LWZhbWlseTogXCJTb3VyY2UgQ29kZSBQcm9cIiwgTW9uYWNvLCBtb25vc3BhY2U7IH1cbi5pbmZvLTEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxLjZlbSAwO1xuICBwYWRkaW5nOiAxLjJlbSAxLjRlbTtcbiAgYm9yZGVyOiAycHggc29saWQgIzM5YztcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUxLCAxNTMsIDIwNCwgLjEpO1xufVxuLmF0dGVudGlvbi0xIHtcbiAgcGFkZGluZzogMS40ZW07XG4gIGJvcmRlcjogc29saWQgMnB4ICNmZjUwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZDogI2ZmZDU4MDtcbn1cbi5saW5rLWJveCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA0cHggNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwO1xuICAmID4gYSB7IGRpc3BsYXk6IGJsb2NrIH1cbn1cblxuLyogICBLZXlmcmFtZXNcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5Aa2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlT3V0UmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluUmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXRsZWZ0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxuKiAgMTQuIENKSyBTdHlsaW5nXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG46bGFuZyhqYSksIDpsYW5nKGtvKSwgOmxhbmcoemgpIHtcbiAgLmJyYWRjcnVtYiB7XG4gICAgbWFyZ2luLWJvdHRvbTogLjJlbTtcbiAgfVxuICAuZW50cnksIC5jb21tZW50LWJvZHkge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIH1cbiAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgfVxuICAucmVsYXRlZC1wb3N0cyAucG9zdC10aXRsZSB7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cbn1cbjpsYW5nKGphKSB7XG4gIGgxIHtcbiAgICBmb250LWZhbWlseTogTGF0bywgJ05vdG8gU2FucyBDSksgSlAgTGlnaHQnLCAnWXUgR290aGljIExpZ2h0JywgJ0hpcmFnaW5vIFNhbnMnLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgfVxufVxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxuKiAgMTUuIFBsdWdpblxuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW1wb3J0IFwicGx1Z2luLnNjc3NcIjtcbiIsIiRtYWluLXdpZHRoOiAxMTQwcHg7XG4kc2lkZS13aWR0aDogMzIwcHg7XG4kbGF0bzogTGF0bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4kbWFpbi1mb250OiAnT3BlbiBTYW5zJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4kYmFzZS1mb250LXNpemU6IDE2cHg7XG5cbiRicG1heC1tb2JpbGU6IDY0MHB4O1xuJGJwbWluLXRhYmxldDogNjQxcHg7XG4kYnBtYXgtdGFibGV0OiA5ODBweDtcbiRicG1pbi1wYzogOTgxcHg7XG5cbiRib3JkZXI6ICNlYWVhZWE7XG4kYWNjZW50OiAjNDQ0NjNCO1xuJGxpbms6ICMwMDYxOUY7XG4kaG92ZXI6ICMyZTQ0NTM7XG4kdGV4dDogIzMzMztcbiRoZWFkOiAjMTExO1xuJGJsdWU6ICM0MTYyOTI7XG4kYmctY29sb3I6ICNmNmY2ZjY7XG4iLCIvKlxuVGhlbWUgTmFtZTogQ29sZGJveFxuVGhlbWUgVVJJOiBodHRwczovL2NvbGRib3gubWlydWMuY28vXG5EZXNjcmlwdGlvbjogQ29sZGJveCBpcyBhIGNsZWFuIGJsb2ctZm9jdXNlZCBXb3JkUHJlc3MgdGhlbWUuIEl0IGhlbHBzIGluY3JlYXNlIHNpdGUgdHJhZmZpYyBmcm9tIEdvb2dsZSBhbmQgU05TLiBJdCBpcyBlYXN5IHRvIGN1c3RvbWl6ZSwgbGlnaHR3ZWlnaHQsIFNFTyBmcmllbmRseSwgYW5kIHF1aWNrZXIgbG9hZC4gVGhpcyB0aGVtZSBpcyBmdWxseSBsYXlvdXRlZCBieSBGbGV4Ym94IG1vZHVsZSwgdGhhdCBpcywgaXQgaXMgcmVhbGx5IGZsZXhpYmxlLiBTZWUgRGVtbzogaHR0cHM6Ly9jb2xkYm94Lm1pcnVjLmNvL2RlbW8vXG5WZXJzaW9uOiAxLjEuMFxuQXV0aG9yOiBUb3NoaWhpcm8gS2FuYWkgKE1pcnVjb24pXG5BdXRob3IgVVJJOiBodHRwczovL21pcnVjLmNvL1xuVGFnczogYmxvZywgb25lLWNvbHVtbiwgdHdvLWNvbHVtbnMsIHJpZ2h0LXNpZGViYXIsIGxlZnQtc2lkZWJhciwgZ3JpZC1sYXlvdXQsIHRyYW5zbGF0aW9uLXJlYWR5LCBmbGV4aWJsZS1oZWFkZXIsIGN1c3RvbS1iYWNrZ3JvdW5kLCBjdXN0b20taGVhZGVyLCBjdXN0b20tY29sb3JzLCBjdXN0b20tbWVudSwgZmVhdHVyZWQtaW1hZ2VzLCBwb3N0LWZvcm1hdHMsIHN0aWNreS1wb3N0LCB0aGVtZS1vcHRpb25zLCBlZGl0b3Itc3R5bGUsIHRocmVhZGVkLWNvbW1lbnRzXG5UZXh0IERvbWFpbjogY29sZGJveFxuTGljZW5zZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjMuMFxuTGljZW5zZSBVUkk6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLmh0bWxcbiovXG4vKlxuUmVzcG9uc2l2ZSBCcmVha3BvaW50c1xuOTYxKyAgICAgPT4gUENcbjk2MC02NDEgID0+IFRhYmxldFxuNjM5LSAgICAgPT4gU21hcnRwaG9uZVxuKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuVGFibGUgT2YgQ29udGVudHNcblxuMC4gUmVzZXRcbjEuIEdsb2JhbFxuMi4gQmFzZSBTdHlsaW5nXG4zLiBTaW5nbGVcbjQuIEluZGV4XG41LiBBcmNoaXZlXG42LiBQYWdlXG43LiA0MDQgUGFnZVxuOC4gSGVhZGVyXG45LiBGb290ZXJcbjEwLiBTaWRlYmFyXG4xMS4gQ29tbWVudFxuMTIuIFdQIG5hdGl2ZVxuMTMuIE1pc2NcbjE0LiBTdHlsaW5nIGZvciBDSktcbjE1LiBQbHVnaW5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbi8qICAwLiBSZXNldFxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuKiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIGZvbnQ6IGluaGVyaXQ7XG59XG5cbnRleHRhcmVhLCBpbnB1dCwgc2VsZWN0LCBidXR0b24ge1xuICBmb250OiBpbmhlcml0O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoNjgsIDY4LCA2OCwgMC4zKTtcbn1cblxuYTpob3ZlciwgYTphY3RpdmUge1xuICBvdXRsaW5lLXdpZHRoOiAwO1xufVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxub2wsIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXG4qICAxLiBHbG9iYWxcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuaHRtbCB7XG4gIGZvbnQtc2l6ZTogNjIuNSUgIWltcG9ydGFudDtcbn1cblxuYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XG4gIGNvbG9yOiAjMzMzO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGZvbnQtc2l6ZTogMS42NWVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG59XG5cbiNtYWluIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cblxuLmNvbnRhaW5lci1vdXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiAxMTQwcHg7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk4MHB4KSBhbmQgKG1pbi13aWR0aDogNjQxcHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjFweCkge1xuICAuY29udGVudCB7XG4gICAgbWluLWhlaWdodDogODB2aDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uY29udGVudC1pbm5lciB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC5jb250ZW50LWlubmVyIHtcbiAgICBwYWRkaW5nOiA1cHg7XG4gIH1cbn1cblxuLnNpZGViYXItczEge1xuICB3aWR0aDogMzIwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk4MHB4KSB7XG4gIC5zaWRlYmFyLXMxIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4ucmlnaHQtc2lkZWJhci1zMSAuY29udGVudCB7XG4gIHBhZGRpbmctcmlnaHQ6IDM0MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk4MHB4KSB7XG4gIC5yaWdodC1zaWRlYmFyLXMxIC5jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5yaWdodC1zaWRlYmFyLXMxIC5zaWRlYmFyLXMxIHtcbiAgbWFyZ2luLWxlZnQ6IC0zMjBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTgwcHgpIHtcbiAgLnJpZ2h0LXNpZGViYXItczEgLnNpZGViYXItczEge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5sZWZ0LXNpZGViYXItczEgLmNvbnRlbnQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDM0MHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5ODBweCkge1xuICAubGVmdC1zaWRlYmFyLXMxIC5jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5sZWZ0LXNpZGViYXItczEgLnNpZGViYXItczEge1xuICBtYXJnaW4tcmlnaHQ6IC0zMjBweDtcbiAgb3JkZXI6IC0xO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5ODBweCkge1xuICAubGVmdC1zaWRlYmFyLXMxIC5zaWRlYmFyLXMxIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYxcHgpIHtcbiAgLmhpZGUtc2lkZWJhci1zMSAuZ3JpZC12aWV3IC5wb3N0LCAuaGlkZS1zaWRlYmFyLXMxIC5ncmlkLXZpZXcgLnBhZ2Uge1xuICAgIHdpZHRoOiAzMy4zMzMlO1xuICB9XG59XG5cbi5ib3R0b20tc2lkZWJhci1zMSAjd3JhcHBlciA+IC5jb250YWluZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYxcHgpIHtcbiAgLmJvdHRvbS1zaWRlYmFyLXMxIC5zaWRlYmFyLXMxIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICB9XG4gIC5ib3R0b20tc2lkZWJhci1zMSAuc2lkZWJhci1pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICB9XG4gIC5ib3R0b20tc2lkZWJhci1zMSAuc2lkZWJhciAud2lkZ2V0IHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMlIC0gMTBweCk7XG4gICAgbWFyZ2luOiA1cHg7XG4gIH1cbiAgLmJvdHRvbS1zaWRlYmFyLXMxIC5ncmlkLXZpZXcgLnBvc3QsIC5ib3R0b20tc2lkZWJhci1zMSAuZ3JpZC12aWV3IC5wYWdlIHtcbiAgICB3aWR0aDogMzMuMzMzJTtcbiAgfVxufVxuXG46Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgaGVpZ2h0OiAxMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4ODg7XG59XG5cbjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3O1xufVxuXG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICMwMDYxOUY7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuaWZyYW1lIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbiogIDIuIEJhc2UgU3R5bGluZ1xuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAgIEJhc2UgOiBUeXBvZ3JhcGh5XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAuMnM7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSg2OCwgNjgsIDY4LCAwLjMpO1xufVxuXG5iLCBzdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuYmlnIHtcbiAgZm9udC1zaXplOiBsYXJnZXI7XG59XG5cbmhyIHtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2YwZjBmMDtcbn1cblxuc21hbGwge1xuICBmb250LXNpemU6IHNtYWxsZXI7XG59XG5cbnN1YiB7XG4gIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjtcbn1cblxuc3VwIHtcbiAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xuICBmb250LXNpemU6IHNtYWxsZXI7XG59XG5cbmlucyB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG5hZGRyZXNzLCBjaXRlLCBxLCB2YXIsIGVtIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5hYmJyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBjb2xvcjogIzExMTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0uMDNlbTtcbn1cblxuaDEge1xuICBmb250LXNpemU6IDEuODc1ZW07XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiAxLjU2ZW07XG59XG5cbmgzIHtcbiAgZm9udC1zaXplOiAxLjQzZW07XG59XG5cbmg0IHtcbiAgZm9udC1zaXplOiAxLjM0ZW07XG59XG5cbmg1IHtcbiAgZm9udC1zaXplOiAxLjI1ZW07XG59XG5cbmg2IHtcbiAgZm9udC1zaXplOiAxLjEyZW07XG59XG5cbi8qICAgQmFzZSA6IEVudHJ5XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmVudHJ5IHtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLmVudHJ5IGEge1xuICBjb2xvcjogIzAwNjE5RjtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwIGN1cnJlbnRDb2xvcjtcbn1cblxuLmVudHJ5IGE6aG92ZXIge1xuICBjb2xvcjogIzJlNDQ1MztcbiAgYm94LXNoYWRvdzogMCAycHggMCAwICMwMDA7XG59XG5cbi5lbnRyeSBkdCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uZW50cnkgZGQge1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG59XG5cbi5lbnRyeSBociB7XG4gIG1hcmdpbjogMWVtIDA7XG59XG5cbi5lbnRyeSBpZnJhbWUge1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG59XG5cbi5lbnRyeSBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuXG4uZW50cnkgcCA+IGlmcmFtZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5lbnRyeSAubWVqcy1jb250YWluZXIge1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG59XG5cbi5lbnRyeSBhYmJyOjphZnRlciB7XG4gIGNvbnRlbnQ6IGF0dHIodGl0bGUpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTI2cHg7XG4gIHJpZ2h0OiAtN3B4O1xuICB6LWluZGV4OiA5OTk7XG4gIHBhZGRpbmc6IDAuMTg3NWVtIDAuNzVlbTtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zaXplOiAuODhlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3gtc2hhZG93OiAwIDAgNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4uZW50cnkgYWJicjpob3Zlcjo6YWZ0ZXIge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4uZW50cnkgaDEsIC5lbnRyeSBoMiwgLmVudHJ5IGgzLCAuZW50cnkgaDQsIC5lbnRyeSBoNSwgLmVudHJ5IGg2IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5lbnRyeSBoMTpmaXJzdC1jaGlsZCwgLmVudHJ5IGgyOmZpcnN0LWNoaWxkLCAuZW50cnkgaDM6Zmlyc3QtY2hpbGQsIC5lbnRyeSBoNDpmaXJzdC1jaGlsZCwgLmVudHJ5IGg1OmZpcnN0LWNoaWxkLCAuZW50cnkgaDY6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uZW50cnkgaDEge1xuICBtYXJnaW46IDEuOGVtIDAgMWVtO1xufVxuXG4uZW50cnkgaDIge1xuICBtYXJnaW46IDEuNmVtIDAgMWVtO1xufVxuXG4uZW50cnkgaDMge1xuICBtYXJnaW46IDEuNWVtIDAgMWVtO1xufVxuXG4uZW50cnkgaDQge1xuICBtYXJnaW46IDEuNGVtIDAgLjllbTtcbn1cblxuLmVudHJ5IGg1IHtcbiAgbWFyZ2luOiAxLjNlbSAwIC44ZW07XG59XG5cbi5lbnRyeSBoNiB7XG4gIG1hcmdpbjogMS4yZW0gMCAuOGVtO1xufVxuXG4uZW50cnkgdWwge1xuICBsaXN0LXN0eWxlOiBzcXVhcmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG59XG5cbi5lbnRyeSBvbCB7XG4gIGxpc3Qtc3R5bGU6IGRlY2ltYWw7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG59XG5cbi5lbnRyeSBibG9ja3F1b3RlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIHBhZGRpbmc6IDFlbSAxZW0gMWVtIDMuMmVtO1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG4gIGNvbG9yOiAjNjY2O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLmVudHJ5IGJsb2NrcXVvdGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTBkXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTVweDtcbiAgbGVmdDogMTZweDtcbiAgY29sb3I6ICNhYWE7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zaXplOiAxLjZlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLmVudHJ5IGJsb2NrcXVvdGUgPiAqOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZW50cnkgcHJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDEuMWVtIDA7XG4gIHBhZGRpbmc6IDFlbSAxLjJlbTtcbiAgYmFja2dyb3VuZDogIzQ0NDYzQjtcbiAgY29sb3I6ICNFNUU1RUI7XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgZm9udC1zaXplOiAuOTZlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgZm9udC1mYW1pbHk6ICdTb3VyY2UgQ29kZSBQcm8nLCBNb25hY28sIE1lbmxvLCAnQ291cmllciBOZXcnLCBDb25zb2xhcywgbW9ub3NwYWNlO1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5lbnRyeSBwcmUgPiBjb2RlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgd2hpdGUtc3BhY2U6IGluaGVyaXQ7XG59XG5cbi5lbnRyeSBjb2RlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcbiAgcGFkZGluZzogMCAuMWVtO1xuICBtYXJnaW46IDAgLjA1ZW07XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgZm9udC1zaXplOiAuOTZlbTtcbiAgZm9udC1mYW1pbHk6ICdTb3VyY2UgQ29kZSBQcm8nLCBNb25hY28sIE1lbmxvLCAnQ291cmllciBOZXcnLCBDb25zb2xhcywgbW9ub3NwYWNlO1xufVxuXG4uZW50cnkga2JkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcbiAgcGFkZGluZzogMCAuMWVtO1xuICBtYXJnaW46IDAgLjA1ZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM0NDQ2M0I7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgZm9udC1zaXplOiAuOTZlbTtcbiAgZm9udC1mYW1pbHk6ICdTb3VyY2UgQ29kZSBQcm8nLCBNb25hY28sIE1lbmxvLCAnQ291cmllciBOZXcnLCBDb25zb2xhcywgbW9ub3NwYWNlO1xufVxuXG4uZW50cnkgdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICBmb250LXNpemU6IC45NWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIGJveC1zaGFkb3c6IDAgMXB4IDFweCAwIHJnYmEoMCwgMCwgMCwgMC4wOCk7XG59XG5cbi5lbnRyeSB0YWJsZSB0cjpudGgtb2YtdHlwZShldmVuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYmZiZmI7XG59XG5cbi5lbnRyeSB0YWJsZSB0ZCwgLmVudHJ5IHRhYmxlIHRoIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XG59XG5cbi5lbnRyeSB0YWJsZSB0aCB7XG4gIHBhZGRpbmc6IDdweCAxMHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDtcbiAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5lbnRyeSB0YWJsZSB0ZCB7XG4gIHBhZGRpbmc6IDZweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmVudHJ5IGFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLmVudHJ5IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgfVxufVxuXG4uZW50cnktaW5uZXI6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4vKiAgIEJhc2UgOiBDb21tb24gUGFydHNcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY29udGVudC1pbnNpZGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5jb250ZW50LWJveCB7XG4gIHBhZGRpbmc6IDJlbSA0MHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VhZWFlYTtcbn1cblxuLmNvbnRlbnQtYm94Omxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAuY29udGVudC1ib3gge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB9XG59XG5cbi50aXRsZS1ib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEuNGVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LWZhbWlseTogTGF0bywgQXJpYWwsIHNhbnMtc2VyaWY7XG59XG5cbi50aXRsZS1ib3gtaW5uZXIge1xuICBmbGV4LWZsb3c6IGNvbHVtbiB3cmFwO1xuICBwYWRkaW5nOiA0MHB4IDQwcHg7XG59XG5cbi50aXRsZS1ib3ggLnBvc3QtZGF0ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICM3Nzc7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4udGl0bGUtYm94IGgxIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDNyZW07XG59XG5cbi50aXRsZS1ib3ggYTpob3ZlciB7XG4gIGNvbG9yOiAjMDA2MTlGO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAudGl0bGUtYm94LWlubmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxufVxuXG4uYWN0aW9uLWJhciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTJweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2MTlGO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIC4ycztcbn1cblxuLyogICBCYXNlIDogRm9ybXNcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5pbnB1dFt0eXBlPXRleHRdLCBpbnB1dFt0eXBlPXBhc3N3b3JkXSwgaW5wdXRbdHlwZT1lbWFpbF0sIGlucHV0W3R5cGU9dXJsXSwgaW5wdXRbdHlwZT1zZWFyY2hdLFxuaW5wdXRbdHlwZT10ZWxdLCBpbnB1dFt0eXBlPWRhdGVdLCBpbnB1dFt0eXBlPWRhdGV0aW1lXSwgaW5wdXRbdHlwZT1tb250aF0sIGlucHV0W3R5cGU9d2Vla10sXG5pbnB1dFt0eXBlPXRpbWVdLCBpbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXSwgaW5wdXRbdHlwZT1udW1iZXJdIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZXJhbmNlOiBub25lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDRweCA2cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGNvbG9yOiAjNzc3O1xuICBvdXRsaW5lOiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xufVxuXG5pbnB1dFt0eXBlPXRleHRdOmZvY3VzLCBpbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1cywgaW5wdXRbdHlwZT1lbWFpbF06Zm9jdXMsIGlucHV0W3R5cGU9dXJsXTpmb2N1cywgaW5wdXRbdHlwZT1zZWFyY2hdOmZvY3VzLFxuaW5wdXRbdHlwZT10ZWxdOmZvY3VzLCBpbnB1dFt0eXBlPWRhdGVdOmZvY3VzLCBpbnB1dFt0eXBlPWRhdGV0aW1lXTpmb2N1cywgaW5wdXRbdHlwZT1tb250aF06Zm9jdXMsIGlucHV0W3R5cGU9d2Vla106Zm9jdXMsXG5pbnB1dFt0eXBlPXRpbWVdOmZvY3VzLCBpbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXTpmb2N1cywgaW5wdXRbdHlwZT1udW1iZXJdOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbmlucHV0W3R5cGU9cGFzc3dvcmRdIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDRweCA2cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIGNvbG9yOiAjNzc3O1xuICBvdXRsaW5lOiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xufVxuXG5pbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogY3VycmVudENvbG9yO1xufVxuXG5pbnB1dFt0eXBlPWNvbG9yXSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICBjb2xvcjogIzc3NztcbiAgb3V0bGluZTogMDtcbiAgdHJhbnNpdGlvbjogYWxsIC4ycztcbn1cblxuaW5wdXRbdHlwZT1jb2xvcl06Zm9jdXMge1xuICBib3JkZXItY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cblxuaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogM3B4IDNweCAzcHggNHB4O1xufVxuXG5pbnB1dFt0eXBlPXJhZGlvXSB7XG4gIG1hcmdpbjogM3B4IDNweCAwcHggNXB4O1xufVxuXG5pbnB1dFt0eXBlPXN1Ym1pdF0sIGlucHV0W3R5cGU9YnV0dG9uXSwgYnV0dG9uW3R5cGU9c3VibWl0XSwgYnV0dG9uW3R5cGU9YnV0dG9uXSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDVweCA3cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBvdXRsaW5lOiAwO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NDQ7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogNjAwO1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsIGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cywgaW5wdXRbdHlwZT1idXR0b25dOmhvdmVyLCBpbnB1dFt0eXBlPWJ1dHRvbl06Zm9jdXMsIGJ1dHRvblt0eXBlPXN1Ym1pdF06aG92ZXIsIGJ1dHRvblt0eXBlPXN1Ym1pdF06Zm9jdXMsIGJ1dHRvblt0eXBlPWJ1dHRvbl06aG92ZXIsIGJ1dHRvblt0eXBlPWJ1dHRvbl06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNzc3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuaW5wdXRbdHlwZT1yZXNldF0sIGJ1dHRvblt0eXBlPXJlc2V0XSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA1cHggN3B4O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgb3V0bGluZTogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODg4O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdHJhbnNpdGlvbjogYWxsIC4ycztcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9cmVzZXRdOmhvdmVyLCBpbnB1dFt0eXBlPXJlc2V0XTpmb2N1cywgYnV0dG9uW3R5cGU9cmVzZXRdOmhvdmVyLCBidXR0b25bdHlwZT1yZXNldF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNDQ0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2NjY2O1xufVxuXG50ZXh0YXJlYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgdHJhbnNpdGlvbjogYm9yZGVyIC4ycztcbn1cblxudGV4dGFyZWE6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMwMDYxOUY7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxuKiAgMy4gU2luZ2xlXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qICAgUG9zdCBNZXRhXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBvc3QtbWV0YSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogMWVtO1xuICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zaXplOiAuOGVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4ucG9zdC1tZXRhIGEge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ucG9zdC1tZXRhIGE6aG92ZXIge1xuICBjb2xvcjogIzAwNjE5Rjtcbn1cblxuLnBvc3QtbWV0YSA+ICpbY2xhc3NePXBvc3QtXSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuLnBvc3QtbWV0YSA+ICpbY2xhc3NePXBvc3QtXTo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IC4yZW07XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5wb3N0LW1ldGEgLnBvc3QtZGF0ZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTdcIjtcbn1cblxuLnBvc3QtbWV0YSAucG9zdC1jYXRlZ29yeTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwN2JcIjtcbn1cblxuLnBvc3QtbWV0YSAucG9zdC1tb2RpZmllZDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZGFcIjtcbn1cblxuLnBvc3QtbWV0YSAucG9zdC10YWc6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDJiXCI7XG59XG5cbi5wb3N0LW1ldGEgLnBvc3QtYXV0aG9yOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwN1wiO1xufVxuXG4ucG9zdC1tZXRhIC5wb3N0LWVkaXQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQwXCI7XG59XG5cbi5wb3N0LW1ldGEgLnBvc3QtdXBkYXRlOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyMVwiO1xufVxuXG4ucG9zdC1tZXRhIC5wb3N0LWNvbW1lbnQgYTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzVcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IC4yZW07XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi8qICAgU2luZ2xlIDogZW50cnkgaGVhZGVyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBvc3QtbWV0YS5jb250ZW50LWJveCBhIHtcbiAgY29sb3I6ICMzMzM7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCBjdXJyZW50Q29sb3I7XG59XG5cbi5wb3N0LW1ldGEuY29udGVudC1ib3ggYTpob3ZlciB7XG4gIGNvbG9yOiAjMDA2MTlGO1xufVxuXG4ucG9zdC1tZXRhLmNvbnRlbnQtYm94IC5wb3N0LWNhdGVnb3J5IGEge1xuICBtYXJnaW46IDAgMCAuM2VtIDA7XG59XG5cbi5wb3N0LW1ldGEuY29udGVudC1ib3ggLnBvc3QtY2F0ZWdvcnkgYTpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDAgMCByZ2JhKDIxNiwgODcsIDI1LCAwLjQpO1xufVxuXG4ucG9zdC1tZXRhLmNvbnRlbnQtYm94IC5wb3N0LWF1dGhvciBhOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAycHggMCAwIHJnYmEoMCwgOTcsIDE1OSwgMC40KTtcbn1cblxuLnBvc3QtbWV0YS5jb250ZW50LWJveCAucG9zdC1jb21tZW50IGE6aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDJweCAwIDAgcmdiYSgxMCwgNzQsIDE4LCAwLjQpO1xufVxuXG4uZW50cnkgLnBvc3QtbWV0YSB7XG4gIG1hcmdpbi1ib3R0b206IDNlbTtcbn1cblxuLyogICBTaW5nbGUgOiBCb3R0b20gUG9zdCBDYXRlZ29yeSwgVGFnXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmJ0bS1wb3N0LW1ldGEge1xuICBtYXJnaW4tdG9wOiAzZW07XG4gIGNsZWFyOiBib3RoO1xufVxuXG5wLnBvc3QtYnRtLXRhZ3MsIHAucG9zdC1idG0tY2F0cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogLjFlbTtcbiAgZm9udC1zaXplOiAuODhlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxucC5wb3N0LWJ0bS10YWdzIC5mYSwgcC5wb3N0LWJ0bS1jYXRzIC5mYSB7XG4gIG1hcmdpbi1yaWdodDogLjJlbTtcbiAgd2lkdGg6IDE2cHg7XG59XG5cbnAucG9zdC1idG0tdGFncyBhLCBwLnBvc3QtYnRtLWNhdHMgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIC40ZW0gLjNlbSAwO1xuICBjb2xvcjogY3VycmVudENvbG9yO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG5wLnBvc3QtYnRtLXRhZ3MgYTpob3ZlciwgcC5wb3N0LWJ0bS1jYXRzIGE6aG92ZXIge1xuICBjb2xvcjogIzAwNjE5Rjtcbn1cblxuLm1ldGEtbGFiZWwge1xuICBtYXJnaW4tcmlnaHQ6IC40ZW07XG4gIGNvbG9yOiAjMTExO1xuICBmb250LXNpemU6IDEuMWVtO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4ucG9zdC1idG0tY2F0cyBhOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAycHggMCAwIHJnYmEoMjE2LCA4NywgMjUsIDAuNCk7XG59XG5cbi5wb3N0LWJ0bS10YWdzIGE6aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDJweCAwIDAgcmdiYSgyNSwgMjE2LCA0OSwgMC40KTtcbn1cblxuLyogICBTaW5nbGUgOiBBdXRob3IgQm94XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmF1dGhvci1ib3gge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBtYXJnaW4tdG9wOiAyZW07XG4gIHBhZGRpbmc6IDFlbTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpO1xufVxuXG4uYXV0aG9yLWJveCAuYXV0aG9yLXRodW1ibmFpbCB7XG4gIGZsZXgtc2hyaW5rOiAxO1xufVxuXG4uYXV0aG9yLWJveCAuYXV0aG9yLXRodW1ibmFpbCBpbWcge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5hdXRob3ItYm94IC5hdXRob3ItY29udGVudCB7XG4gIGZsZXg6IDE7XG4gIHBhZGRpbmctbGVmdDogMWVtO1xufVxuXG4uYXV0aG9yLWJveCAuYXV0aG9yLWluZm9tYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAuM2VtO1xufVxuXG4uYXV0aG9yLWJveCAuYXV0aG9yLW5hbWUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG59XG5cbi5hdXRob3ItYm94IC5hdXRob3ItZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IC45NGVtO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uYXV0aG9yLWJveCAuYXV0aG9yLWxpbmtzIHtcbiAgbWFyZ2luLWxlZnQ6IC43ZW07XG59XG5cbi5hdXRob3ItYm94IC5hdXRob3ItbGlua3MgLnNvY2lhbC1saW5rcyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogLjc0ZW07XG59XG5cbi5hdXRob3ItYm94IC5hdXRob3ItbGlua3MgLnNvY2lhbC1saW5rcyBhID4gaSB7XG4gIGNvbG9yOiAjNzc3O1xufVxuXG4uYXV0aG9yLWJveCAuYXV0aG9yLWxpbmtzIC5zb2NpYWwtbGlua3MgYTpob3ZlciA+IGkge1xuICBjb2xvcjogIzIyMjtcbn1cblxuLmF1dGhvci1ib3ggLmF1dGhvci1saW5rcyBhOjpiZWZvcmUsIC5hdXRob3ItYm94IC5hdXRob3ItbGlua3MgYTo6YWZ0ZXIge1xuICBjb250ZW50OiBub25lO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAuYXV0aG9yLWJveCAuYXV0aG9yLWluZm9tYXRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5hdXRob3ItYm94IC5hdXRob3ItbGlua3Mge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi8qICAgU2luZ2xlIDogZW50cnkgZm9vdGVyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuPiAqIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZzogMTBweCAyNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5jb250ZW50LWJveCA+IGg0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IC4yZW0gMCAuN2VtIDA7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4vKiAgIFNpbmdsZSA6IFJlbGF0ZWQgUG9zdHNcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucmVsYXRlZC1wb3N0cyAucmVsYXRlZC1wb3N0cy1saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgbWFyZ2luLWxlZnQ6IDElO1xufVxuXG4ucmVsYXRlZC1wb3N0cyAucmVsYXRlZC1hcnRpY2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMzMlO1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xufVxuXG4ucmVsYXRlZC1wb3N0cyAucG9zdCB7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMCAuMDJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgdHJhbnNpdGlvbjogYWxsIC40cztcbn1cblxuLnJlbGF0ZWQtcG9zdHMgLnBvc3QtdGh1bWJuYWlsIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnJlbGF0ZWQtcG9zdHMgLnBvc3QtdGh1bWJuYWlsIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ucmVsYXRlZC1wb3N0cyAucG9zdC10aHVtYm5haWwgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCAuNHMgZWFzZS1vdXQ7XG59XG5cbi5yZWxhdGVkLXBvc3RzIC5wb3N0LWNvbnRlbnQge1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gIHBhZGRpbmc6IDAuNTYyNWVtIDAuNzVlbTtcbn1cblxuLnJlbGF0ZWQtcG9zdHMgLnBvc3QtY2F0ZWdvcnkge1xuICBtYXJnaW4tYm90dG9tOiAwLjI1ZW07XG4gIGZvbnQtc2l6ZTogMC44MTI1ZW07XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4ucmVsYXRlZC1wb3N0cyAucG9zdC1jYXRlZ29yeSBhIHtcbiAgY29sb3I6ICMwMDYxOUY7XG59XG5cbi5yZWxhdGVkLXBvc3RzIC5wb3N0LWNhdGVnb3J5IGE6aG92ZXIge1xuICBjb2xvcjogIzQ0NDtcbn1cblxuLnJlbGF0ZWQtcG9zdHMgLnBvc3QtdGl0bGUge1xuICBmb250LXNpemU6IDAuOTYyNWVtO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBmb250LWZhbWlseTogTGF0bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xufVxuXG4ucmVsYXRlZC1wb3N0cyAucG9zdC10aXRsZSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnJlbGF0ZWQtcG9zdHMgLnBvc3Q6aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDNweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4ucmVsYXRlZC1wb3N0cyAucG9zdDpob3ZlciAucG9zdC10aHVtYm5haWwgaW1nIHtcbiAgb3BhY2l0eTogLjg7XG59XG5cbi5yZWxhdGVkLXBvc3RzIC5wb3N0OmhvdmVyIC5wb3N0LXRpdGxlIHtcbiAgY29sb3I6ICMwMDYxOUY7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC5yZWxhdGVkLXBvc3RzIC5yZWxhdGVkLXBvc3RzLWxpc3Qge1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLnJlbGF0ZWQtcG9zdHMgLnJlbGF0ZWQtcG9zdHMtbGlzdCAucmVsYXRlZC1hcnRpY2xlIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5yZWxhdGVkLXBvc3RzIC5yZWxhdGVkIGE6aG92ZXIgLnBvc3QtdGh1bWJuYWlsIGltZyB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG9wYWNpdHk6IC45O1xuICB9XG59XG5cbi8qICAgU2luZ2xlIDogUG9zdCBOYXZpZ2F0aW9uXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBvc3QtbmF2IHtcbiAgYm94LXNoYWRvdzogMCAxcHggM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4ucG9zdC1uYXYgdWwge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4ucG9zdC1uYXYgLnByZXYsIC5wb3N0LW5hdiAubmV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZmxleDogMTtcbn1cblxuLnBvc3QtbmF2IC5uZXh0IGEsIC5wb3N0LW5hdiAucHJldiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuNHM7XG59XG5cbi5wb3N0LW5hdiAubmV4dCBhIHtcbiAgcGFkZGluZzogMTJweCA0MHB4IDEycHggMjRweDtcbn1cblxuLnBvc3QtbmF2IC5wcmV2IGEge1xuICBwYWRkaW5nOiAxMnB4IDI0cHggMTJweCA0MHB4O1xufVxuXG4ucG9zdC1uYXYgLnBvc3QtdGh1bWJuYWlsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogYXV0bztcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvcGFjaXR5OiAuNTtcbiAgZmlsdGVyOiBibHVyKDNweCk7XG4gIHRyYW5zaXRpb246IGFsbCAuNHM7XG59XG5cbi5wb3N0LW5hdiAubmF2LXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAuNGVtO1xuICBjb2xvcjogI2YwZjBmMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1mYW1pbHk6IExhdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xufVxuXG4ucG9zdC1uYXYgLnBvc3QtdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LXNoYWRvdzogMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbi5wb3N0LW5hdiAuY2hldnJvbi1yaWdodCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDUwJSAtIDEwcHgpO1xuICByaWdodDogMTRweDtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zaXRpb246IGFsbCAuNHM7XG59XG5cbi5wb3N0LW5hdiAuY2hldnJvbi1sZWZ0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoNTAlIC0gMTBweCk7XG4gIGxlZnQ6IDE0cHg7XG4gIHdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zaXRpb246IGFsbCAuNHM7XG59XG5cbi5wb3N0LW5hdiAubmV4dCAubmF2LXRpdGxlIHtcbiAgcmlnaHQ6IC04cHg7XG59XG5cbi5wb3N0LW5hdiAucHJldiAubmF2LXRpdGxlIHtcbiAgbGVmdDogLThweDtcbn1cblxuLnBvc3QtbmF2IC5uZXh0IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNTUpO1xufVxuXG4ucG9zdC1uYXYgLm5leHQgYTpob3ZlciAucG9zdC10aHVtYm5haWwge1xuICBmaWx0ZXI6IGJsdXIoMnB4KTtcbn1cblxuLnBvc3QtbmF2IC5uZXh0IGE6aG92ZXIgLmNoZXZyb24tcmlnaHQge1xuICByaWdodDogMThweDtcbn1cblxuLnBvc3QtbmF2IC5wcmV2IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNTUpO1xufVxuXG4ucG9zdC1uYXYgLnByZXYgYTpob3ZlciAucG9zdC10aHVtYm5haWwge1xuICBmaWx0ZXI6IGJsdXIoMnB4KTtcbn1cblxuLnBvc3QtbmF2IC5wcmV2IGE6aG92ZXIgLmNoZXZyb24tbGVmdCB7XG4gIGxlZnQ6IDE4cHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC5wb3N0LW5hdiB1bCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm5leHQgYSwgLnByZXYgYSB7XG4gICAgcGFkZGluZzogMTJweCA0MHB4O1xuICB9XG59XG5cbi8qICAgU2luZ2xlIDogTXVsdGlwYWdlcyBOYXZpZ2F0aW9uXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBvc3QtcGFnZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxMHB4IGF1dG8gMTBweDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkZGQ7XG4gIGNvbG9yOiAjMDA2MTlGO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnBvc3QtcGFnZXMgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3R0b206IC0ycHg7XG4gIHBhZGRpbmc6IDZweCAxMHB4O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2RkZDtcbiAgdHJhbnNpdGlvbjogYm9yZGVyIC40cztcbn1cblxuLnBvc3QtcGFnZXMgbGkgPiAqIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zaXRpb246IGJvcmRlciAuNHM7XG59XG5cbi5wb3N0LXBhZ2VzID4gc3BhbiB7XG4gIGNvbG9yOiAjMDAwO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzAwNjE5Rjtcbn1cblxuLnBvc3QtcGFnZXMgPiBhOmhvdmVyID4gc3BhbiB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDA2MTlGO1xufVxuXG4vKiAgIFNpbmdsZSA6IFNOUyBCdXR0b25cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2hhcmUtbGlzdC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uYmFsbG9vbi1idG4ge1xuICBmbGV4LWdyb3c6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmJhbGxvb24tYnRuIC5zaGFyZSB7XG4gIHRyYW5zaXRpb246IGFsbCAuNHM7XG59XG5cbi5iYWxsb29uLWJ0biAuc2hhcmUgaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogY2FsYyg1MCUgLSAxLjJyZW0pO1xuICB6LWluZGV4OiA5OTk7XG4gIGZvbnQtc2l6ZTogMi40cmVtO1xufVxuXG4uYmFsbG9vbi1idG4gLnNoYXJlLWlubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogLjRlbSAuNmVtO1xuICBib3gtc2hhZG93OiAwIDFweCAxcHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYmFsbG9vbi1idG4gLmNvdW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xufVxuXG4uYmFsbG9vbi1idG4gLmNvdW50LWlubmVyIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIG1pbi1oZWlnaHQ6IDEuMmVtO1xuICBtaW4td2lkdGg6IDEuMWVtO1xuICBwYWRkaW5nOiAuNGVtO1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NDQ7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIGZvbnQtc2l6ZTogLjllbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtZmFtaWx5OiBMYXRvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRyYW5zaXRpb246IGFsbCAuNHM7XG59XG5cbi5iYWxsb29uLWJ0biAuc2hhcmUtaW5uZXI6aG92ZXIge1xuICBvcGFjaXR5OiAuODtcbiAgYm94LXNoYWRvdzogMCAycHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKSBpbnNldDtcbn1cblxuLmJhbGxvb24tYnRuIC5jb3VudC1pbm5lcjpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYmFsbG9vbi1idG4udHdpdHRlciAuc2hhcmUtaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmJhY2UyO1xufVxuXG4uYmFsbG9vbi1idG4uZmFjZWJvb2sgLnNoYXJlLWlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ0NWQ5Mztcbn1cblxuLmJhbGxvb24tYnRuLmdvb2dsZXBsdXMgLnNoYXJlLWlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QzNjA1NDtcbn1cblxuLmJhbGxvb24tYnRuLmhhdGVuYSAuc2hhcmUtaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZWM2O1xufVxuXG4uYmFsbG9vbi1idG4ucG9ja2V0IC5zaGFyZS1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMTVjNjk7XG59XG5cbi5iYWxsb29uLWJ0bi5saW5lIC5zaGFyZS1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MGMxNTA7XG59XG5cbi5iYWxsb29uLWJ0bi5mZWVkbHkgLnNoYXJlLWlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk0YmU2MTtcbn1cblxuLmJhbGxvb24tYnRuOmZpcnN0LW9mLXR5cGUgLnNoYXJlLWlubmVyIHtcbiAgYm9yZGVyLXJhZGl1czogMnB4IDAgMCAycHg7XG59XG5cbi5iYWxsb29uLWJ0bjpsYXN0LW9mLXR5cGUgLnNoYXJlLWlubmVyIHtcbiAgYm9yZGVyLXJhZGl1czogMCAycHggMnB4IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnNoYXJlLWxpc3QtY29udGFpbmVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuXG4vKiAgIFBhc3N3b3JkIExvY2tcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucG9zdC1wYXNzd29yZC1mb3JtIHA6bGFzdC1jaGlsZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbn1cblxuLnBvc3QtcGFzc3dvcmQtZm9ybSBwOmxhc3QtY2hpbGQgbGFiZWwge1xuICBmbGV4LWdyb3c6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5wb3N0LXBhc3N3b3JkLWZvcm0gcDpsYXN0LWNoaWxkIGlucHV0W3R5cGU9cGFzc3dvcmRdIHtcbiAgZmxleC1ncm93OiAxO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG59XG5cbi5wb3N0LXBhc3N3b3JkLWZvcm0gcDpsYXN0LWNoaWxkIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gIGZsZXgtc2hyaW5rOiAxO1xuICBwYWRkaW5nOiA0cHggMTBweDtcbn1cblxuLyogICBTaW5nbGUgOiBwb3N0IGZvcm1hdHNcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZm9ybWF0LWFzaWRlIC5wb3N0LXRpdGxlLWJveCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5mb3JtYXQtYXNpZGUgLnBvc3QtZm9ybWF0OjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExMVwiO1xufVxuXG4uZm9ybWF0LWdhbGxlcnkgLnBvc3QtZm9ybWF0OjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjNVwiO1xufVxuXG4uZm9ybWF0LWxpbmsgLnBvc3QtZm9ybWF0OjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjMVwiO1xufVxuXG4uZm9ybWF0LWltYWdlIC5wb3N0LWZvcm1hdDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwM2VcIjtcbn1cblxuLmZvcm1hdC1xdW90ZSAucG9zdC1mb3JtYXQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTBkXCI7XG59XG5cbi5mb3JtYXQtc3RhdHVzIC5wb3N0LWZvcm1hdDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDVcIjtcbn1cblxuLmZvcm1hdC12aWRlbyAucG9zdC1mb3JtYXQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDA4XCI7XG59XG5cbi5mb3JtYXQtYXVkaW8gLnBvc3QtZm9ybWF0OjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyOFwiO1xufVxuXG4uZm9ybWF0LWNoYXQgLnBvc3QtZm9ybWF0OjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4NlwiO1xufVxuXG4vKiBjbGVhcmZpeCAqL1xuLmVudHJ5LWhlYWRlcjo6YWZ0ZXIsIC5lbnRyeS1jb250ZW50OjphZnRlciwgLmVudHJ5LWZvb3Rlcjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxuKiAgNC4gSW5kZXhcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBvc3QtZXhjZXJwdCB7XG4gIGNvbG9yOiAjYWFhO1xuICBmb250LXNpemU6IC44NWVtO1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuXG5ib2R5LmhvbWUgI21haW4ge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuXG4vKiAgIEluZGV4IDogR3JpZCBWaWV3XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmdyaWQtdmlldyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIHBhZGRpbmc6IDE2cHggOHB4IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5ncmlkLXZpZXcgLnBvc3QsIC5ncmlkLXZpZXcgLnBhZ2Uge1xuICB3aWR0aDogNTAlO1xuICBtYXJnaW4tYm90dG9tOiAxLjZlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLmdyaWQtdmlldyB7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gd3JhcDtcbiAgICBwYWRkaW5nOiAyZW0gMjBweCAwO1xuICB9XG4gIC5ncmlkLXZpZXcgLnBvc3QsIC5ncmlkLXZpZXcgLnBhZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5ncmlkLXZpZXcgLnBvc3QtaW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMCA4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1vdXQ7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLmdyaWQtdmlldyAucG9zdC1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXgtZ3JvdzogMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCByZ2JhKDAsIDAsIDAsIDAuMDQpO1xufVxuXG4uZ3JpZC12aWV3IC5wb3N0LXRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCAuNHMgZWFzZS1vdXQ7XG59XG5cbi5ncmlkLXZpZXcgLnBvc3QtdGh1bWJuYWlsIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiBhdXRvO1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzIGVhc2Utb3V0O1xufVxuXG4uZ3JpZC12aWV3IC5wb3N0LWNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA2cHggMDtcbiAgcGFkZGluZzogMCAxNXB4O1xufVxuXG4uZ3JpZC12aWV3IC5wb3N0LWRhdGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogNHB4IDA7XG4gIGNvbG9yOiAjNzc3O1xuICBmb250LXNpemU6IC45ZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5ncmlkLXZpZXcgLnBvc3QtdGl0bGUge1xuICBtYXJnaW46IDZweCAwO1xuICBmb250LXNpemU6IDEuMmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdHJhbnNpdGlvbjogYWxsIC40cztcbn1cblxuLmdyaWQtdmlldyAucG9zdC1leGNlcnB0IHtcbiAgbWFyZ2luOiAxMHB4IDA7XG59XG5cbi5ncmlkLXZpZXcgLnBvc3QtbWV0YSB7XG4gIG1hcmdpbjogMXB4IDA7XG4gIHBhZGRpbmc6IDRweCAxNXB4O1xuICBmb250LXNpemU6IC44ZW07XG59XG5cbi5ncmlkLXZpZXcgLnBvc3QtY2F0ZWdvcnkgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMCA0cHg7XG59XG5cbi5ncmlkLXZpZXcgLnBvc3QtbWV0YSA+ICpbY2xhc3NePXBvc3QtXSB7XG4gIHBhZGRpbmctcmlnaHQ6IDZweDtcbn1cblxuLmdyaWQtdmlldyAucG9zdC1jYXRlZ29yeTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTRcIjtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLmdyaWQtdmlldyAucG9zdC1jb21tZW50IGE6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGU1XCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1yaWdodDogLjJlbTtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xufVxuXG4uZ3JpZC12aWV3IC5wb3N0LWlubmVyOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCA2cHggMTBweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTFweCk7XG59XG5cbi5ncmlkLXZpZXcgLnBvc3QtaW5uZXIgYTpob3ZlciAucG9zdC10aHVtYm5haWwgaW1nIHtcbiAgZmlsdGVyOiBibHVyKDFweCk7XG59XG5cbi5ncmlkLXZpZXcgLnBvc3QtaW5uZXIgYTpob3ZlciAucG9zdC10aXRsZSB7XG4gIGNvbG9yOiAjMDA2MTlGO1xufVxuXG4vKiAgIEluZGV4IDogU3RhbmRhcmQgVmlld1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zdGFuZGFyZC12aWV3IHtcbiAgcGFkZGluZzogMjBweCAxMHB4O1xufVxuXG4uc3RhbmRhcmQtdmlldyAucG9zdCwgLnN0YW5kYXJkLXZpZXcgLnBhZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uc3RhbmRhcmQtdmlldyAucG9zdC1pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgdHJhbnNpdGlvbjogLjNzIGFsbDtcbiAgYm94LXNoYWRvdzogMCAxcHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4uc3RhbmRhcmQtdmlldyAucG9zdC1oZWFkZXIge1xuICBmbGV4LWdyb3c6IDE7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc3RhbmRhcmQtdmlldyAucG9zdC10aHVtYm5haWwge1xuICBmbGV4LXNocmluazogMTtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gIHRyYW5zaXRpb246IC4zcyBhbGw7XG4gIGJveC1zaGFkb3c6IDAgMCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5cbi5zdGFuZGFyZC12aWV3IC5wb3N0LXRodW1ibmFpbCBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xufVxuXG4uc3RhbmRhcmQtdmlldyAucG9zdC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG4gIGZvbnQtc2l6ZTogMS40ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uc3RhbmRhcmQtdmlldyAucG9zdC10aXRsZSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zaXRpb246IC4zcyBhbGw7XG59XG5cbi5zdGFuZGFyZC12aWV3IC5wb3N0LWNvbnRlbnQge1xuICBmbGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG59XG5cbi5zdGFuZGFyZC12aWV3IC5wb3N0LW1ldGEge1xuICBtYXJnaW46IDEycHggMDtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uc3RhbmRhcmQtdmlldyAucG9zdC1leGNlcnB0IHtcbiAgbWFyZ2luOiAxMnB4IDA7XG59XG5cbi5zdGFuZGFyZC12aWV3IC5tb3JlIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbn1cblxuLnN0YW5kYXJkLXZpZXcgLnBvc3QtaW5uZXI6aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDAgMnB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMjIpO1xufVxuXG4uc3RhbmRhcmQtdmlldyAucG9zdC1pbm5lcjpob3ZlciAucG9zdC10aXRsZSB7XG4gIGNvbG9yOiAjMDA2MTlGO1xufVxuXG4uc3RhbmRhcmQtdmlldyAucG9zdC1pbm5lcjpob3ZlciAucG9zdC10aHVtYm5haWwge1xuICBvcGFjaXR5OiAuOTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLnN0YW5kYXJkLXZpZXcge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgMCA2cHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIH1cbiAgLnN0YW5kYXJkLXZpZXcgLnBvc3QsIC5zdGFuZGFyZC12aWV3IC5wYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjBmMGYwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbiAgLnN0YW5kYXJkLXZpZXcgLnBvc3QtaW5uZXIge1xuICAgIHBhZGRpbmctbGVmdDogMTMwcHg7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuICAuc3RhbmRhcmQtdmlldyAucG9zdC10aHVtYm5haWwge1xuICAgIG1heC13aWR0aDogMTAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMTVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIH1cbiAgLnN0YW5kYXJkLXZpZXcgLnBvc3QtbWV0YSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuc3RhbmRhcmQtdmlldyAucG9zdC1leGNlcnB0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC5zdGFuZGFyZC12aWV3IC5tb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5zdGFuZGFyZC12aWV3IHVsLnBhZ2UtbnVtYmVycyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vKiAgIEluZGV4IDogUGFnZSBOYXZpZ2F0aW9uXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xudWwucGFnZS1udW1iZXJzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvIDEwcHg7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZGRkO1xuICBjb2xvcjogIzAwNjE5RjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbnVsLnBhZ2UtbnVtYmVycyBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3R0b206IC0ycHg7XG59XG5cbnVsLnBhZ2UtbnVtYmVycyBsaSA+ICoge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogNnB4IDEwcHg7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZGRkO1xuICB0cmFuc2l0aW9uOiBib3JkZXIgLjRzO1xufVxuXG51bC5wYWdlLW51bWJlcnMgbGkgPiBzcGFuIHtcbiAgY29sb3I6ICM0NDQ7XG59XG5cbnVsLnBhZ2UtbnVtYmVycyBzcGFuLnBhZ2UtbnVtYmVycy5jdXJyZW50IHtcbiAgY29sb3I6ICMwMDA7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDA2MTlGO1xufVxuXG51bC5wYWdlLW51bWJlcnMgYS5wYWdlLW51bWJlcnM6aG92ZXIge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzAwNjE5Rjtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXG4qICA1LiBBcmNoaXZlXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi50aXRsZS1kZXNjcmlwdGlvbiB7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4udGF4b25vbXktZGVzY3JpcHRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMWVtIDZweCAwO1xuICBwYWRkaW5nOiAxMHB4IDE2cHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gIGNvbG9yOiAjNzc3O1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgYm94LXNoYWRvdzogMCAxcHggMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjA4KTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXG4qICA2LiBQYWdlc1xuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbiogIDcuIDQwNCBQYWdlXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5lcnJvci1tZXNzYWdlcyB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtZmFtaWx5OiBMYXRvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbn1cblxuLmVycm9yLW1lc3NhZ2VzIHAge1xuICBtYXJnaW4tYm90dG9tOiAyZW07XG59XG5cbi5lcnJvci1tZXNzYWdlcyBoMiB7XG4gIHBhZGRpbmc6IC44ZW0gMS40ZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XG59XG5cbi5jb250ZW50LWlubmVyID4gLmVycm9yLW1lc3NhZ2VzIHtcbiAgcGFkZGluZy1ib3R0b206IDE2cHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC5jb250ZW50LWlubmVyID4gLmVycm9yLW1lc3NhZ2VzIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMmVtO1xuICB9XG4gIC5lcnJvci1tZXNzYWdlcyBoMiB7XG4gICAgcGFkZGluZzogLjJlbSAuOGVtO1xuICB9XG59XG5cbi5lcnJvcjQwNCAuY29udGVudC1pbm5lciB7XG4gIHBhZGRpbmc6IDEuOGVtO1xufVxuXG4uZXJyb3I0MDQgLmNvbnRlbnQtaW5uZXIgPiAuZXJyb3ItbWVzc2FnZXMge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDBweCkge1xuICAuZXJyb3I0MDQgLmNvbnRlbnQtaW5uZXIgLnNlYXJjaC1mb3JtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAxZW0gNnB4IDA7XG4gICAgcGFkZGluZzogMTBweCAxNnB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcbiAgICBjb2xvcjogIzc3NztcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDFweCAwIHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXG4qICA4LiBIZWFkZXJcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2hlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAwMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjRzO1xuICBib3gtc2hhZG93OiAxcHggMCAxcHggMCByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG5cbiNoZWFkZXIuc3RpY2t5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3gtc2hhZG93OiAwIDAgNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAjaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIH1cbn1cblxuLmhlYWRlci1pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gIGZvbnQtc2l6ZTogLjk0ZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbi5zaXRlLWluZm8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBmbGV4LWdyb3c6IDE7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgdHJhbnNpdGlvbjogYWxsIC40cztcbn1cblxuLnNpdGUtdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAxLjg3NWVtO1xuICBjb2xvcjogIzQ0NDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLnNpdGUtdGl0bGUgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2l0ZS10aXRsZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LWhlaWdodDogNjAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uc2l0ZS1kZXNjcmlwdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDJyZW07XG4gIGNvbG9yOiAjNjY2O1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5zaXRlLWluZm8ge1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIH1cbiAgLnNpdGUtZGVzY3JpcHRpb24ge1xuICAgIHBhZGRpbmc6IC40ZW0gMWVtIDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhlYWRlci1pbm5lciB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuICAuc2l0ZS1pbmZvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDUwcHgpO1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNTBweCk7XG4gIH1cbiAgLmhlYWRlci1tZW51LWVuYWJsZWQgLnNpdGUtaW5mbyB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEwMHB4KTtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDEwMHB4KTtcbiAgfVxuICAuc2l0ZS1kZXNjcmlwdGlvbiB7XG4gICAgcGFkZGluZzogMCAwLjc1ZW0gMDtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItY29sdW1uIC5zaXRlLWluZm8ge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmhlYWRlci1jb2x1bW4gLmhlYWRlci1pbm5lciB7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gd3JhcDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLXJvdyAuc2VhcmNoLXRvZ2dsZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG4gIC5oZWFkZXItcm93IC5oZWFkZXItaW5uZXIge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgfVxuICAuaGVhZGVyLXJvdyAjaGVhZGVyLW1lbnUge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5oZWFkZXItcm93IC5zdGlja3kgLnNpdGUtaW5mbyB7XG4gIHBhZGRpbmc6IDE1cHggMjBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA3ODJweCkge1xuICBib2R5LmFkbWluLWJhci5oZWFkZXItcm93ICNoZWFkZXIuc3RpY2t5IHtcbiAgICBwYWRkaW5nLXRvcDogNDZweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3ODNweCkge1xuICBib2R5LmFkbWluLWJhci5oZWFkZXItcm93ICNoZWFkZXIuc3RpY2t5IHtcbiAgICBwYWRkaW5nLXRvcDogMzJweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAuc2l0ZS1pbmZvIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgfVxufVxuXG4vKiAgIEhlYWRlciA6IE5hdmlnYXRpb24gTWVudVxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNoZWFkZXItbWVudSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5tZW51LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5tZW51LWNvbnRhaW5lciBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tZW51LWNvbnRhaW5lciN0b3AtbmF2IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICB9XG4gIC5tZW51LWNvbnRhaW5lciBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxNXB4IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgLjJzLCBiYWNrZ3JvdW5kLWNvbG9yIC4ycztcbiAgfVxuICAubWVudS1jb250YWluZXIgbGk6aG92ZXIgPiBhIHtcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cbiAgLm1lbnUtY29udGFpbmVyIC5zdWItbWVudSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMjAwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDEwMDA7XG4gICAgcGFkZGluZzogNHB4IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBjb2xvcjogIzU1NTtcbiAgICBib3gtc2hhZG93OiAwIDFweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIH1cbiAgLm1lbnUtY29udGFpbmVyIC5zdWItbWVudSBsaSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lbnUtY29udGFpbmVyIC5zdWItbWVudSBsaSA+IGEge1xuICAgIHBhZGRpbmc6IDhweCAxNHB4O1xuICB9XG4gIC5tZW51LWNvbnRhaW5lciBsaTpob3ZlciA+IC5zdWItbWVudSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdG9wOiA1MHB4O1xuICB9XG4gIC5tZW51LWNvbnRhaW5lciBsaSA+IC5zdWItbWVudSA+IGxpOmhvdmVyID4gLnN1Yi1tZW51IHtcbiAgICB0b3A6IC00cHg7XG4gICAgbGVmdDogMjAwcHg7XG4gIH1cbiAgLm1lbnUtY29udGFpbmVyIC5zdWItbWVudSBsaTpob3ZlciA+IGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0YjRiNGI7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgLm1lbnUtY29udGFpbmVyID4gbGkgPiBhOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgYm90dG9tOiAxMXB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY3VycmVudENvbG9yO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG4gIH1cbiAgLm1lbnUtY29udGFpbmVyID4gbGk6aG92ZXIgPiBhOjpiZWZvcmUge1xuICAgIHJpZ2h0OiAxNXB4O1xuICAgIGxlZnQ6IDE1cHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgLm1lbnUtY29udGFpbmVyID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTNweDtcbiAgICBsZWZ0OiAzcHg7XG4gICAgd2lkdGg6IDZweDtcbiAgICBoZWlnaHQ6IDZweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbiAgfVxuICAubWVudS1jb250YWluZXIgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiA2cHg7XG4gICAgbGVmdDogMnB4O1xuICAgIHdpZHRoOiA2cHg7XG4gICAgaGVpZ2h0OiA2cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICB9XG4gIC5tZW51LWNvbnRhaW5lciA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXIgPiBhOjphZnRlciB7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDIyNWRlZyk7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgI2hlYWRlci1tZW51IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IDEyMHZoO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gICNoZWFkZXItbmF2IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDEwMDM7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHBhZGRpbmctdG9wOiA2ZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzUxNTc1ZDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG4gICNoZWFkZXItbmF2Lm1lbnUtY29udGFpbmVyIGEge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gICNoZWFkZXItbmF2Lm1lbnUtY29udGFpbmVyOmhvdmVyIHtcbiAgICBjb2xvcjogIzAwNjE5RjtcbiAgfVxuICAubWVudS1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5tZW51LWNvbnRhaW5lciBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm1lbnUtY29udGFpbmVyIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IC44ZW0gLjllbTtcbiAgfVxuICAubWVudS1jb250YWluZXIgYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSg2OCwgNjgsIDY4LCAwLjEpO1xuICAgIGNvbG9yOiAjMDAwO1xuICB9XG4gIC5tZW51LWNvbnRhaW5lciBsaSA+IGEge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDExOSwgMTE5LCAxMTksIDAuNyk7XG4gIH1cbiAgLm1lbnUtY29udGFpbmVyID4gbGk6bGFzdC1jaGlsZCA+IGEge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDExOSwgMTE5LCAxMTksIDAuNyk7XG4gIH1cbiAgLm1lbnUtY29udGFpbmVyIC5zdWItbWVudSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMmVtO1xuICB9XG4gIC5tZW51LWNvbnRhaW5lciA+IGxpID4gYSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgLm1lbnUtY29udGFpbmVyIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDJweDtcbiAgICBsZWZ0OiAycHg7XG4gICAgYm9yZGVyOiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogY3VycmVudENvbG9yO1xuICB9XG59XG5cbi8qICAgSGVhZGVyIDogSGVhZGVyIHRvZ2dsZXNcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubmF2LXRvZ2dsZSB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLm5hdi10b2dnbGUgLnRvcCwgLm5hdi10b2dnbGUgLm1pZGRsZSwgLm5hdi10b2dnbGUgLmJvdHRvbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDE5JTtcbiAgei1pbmRleDogMTAwMTtcbiAgd2lkdGg6IDYyJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgdHJhbnNpdGlvbjogYWxsIC40cztcbn1cblxuLm5hdi10b2dnbGUgLnRvcCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG59XG5cbi5uYXYtdG9nZ2xlIC5taWRkbGUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbn1cblxuLm5hdi10b2dnbGUgLmJvdHRvbSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbn1cblxuLm5hdi10b2dnbGUub3BlbiAudG9wIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlWSgwcHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xufVxuXG4ubmF2LXRvZ2dsZS5vcGVuIC5taWRkbGUge1xuICBoZWlnaHQ6IDFweDtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubmF2LXRvZ2dsZS5vcGVuIC5ib3R0b20ge1xuICBoZWlnaHQ6IDFweDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZVkoMHB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbn1cblxuLnNlYXJjaC10b2dnbGUge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzIGVhc2UtaW47XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSg2OCwgNjgsIDY4LCAwLjMpO1xufVxuXG4uc2VhcmNoLXRvZ2dsZSAuaWNvbi5zZWFyY2gge1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICB0b3A6IGNhbGMoNTAlIC0gMTBweCk7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gMTJweCk7XG4gIGJvcmRlci1jb2xvcjogIzQ0NDtcbiAgdHJhbnNpdGlvbjogYWxsIC40cztcbn1cblxuLnNlYXJjaC10b2dnbGUgLmljb24uc2VhcmNoOjpiZWZvcmUge1xuICB0b3A6IDIwcHg7XG4gIGxlZnQ6IDlweDtcbiAgaGVpZ2h0OiA5cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NDQ7XG4gIHRyYW5zaXRpb246IGFsbCAuNHM7XG59XG5cbi5zZWFyY2gtdG9nZ2xlLm9wZW4gLmljb24uc2VhcmNoIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDAwO1xufVxuXG4uc2VhcmNoLXRvZ2dsZS5vcGVuIC5pY29uLnNlYXJjaDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNlYXJjaC10b2dnbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLmhlYWRlci1zZWFyY2hiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlIC0gMjBweCk7XG4gIHJpZ2h0OiA2cHg7XG4gIHotaW5kZXg6IDEwMDE7XG4gIG1heC13aWR0aDogMzIwcHg7XG4gIHdpZHRoOiA4MCU7XG59XG5cbi5oZWFkZXItc2VhcmNoYmFyIC5zZWFyY2gtZm9ybSAuc2VhcmNoLWlubmVyIHtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG4uaGVhZGVyLXNlYXJjaGJhciAuc2VhcmNoLXN1Ym1pdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk4MXB4KSB7XG4gIGJvZHkuaGVhZGVyLWNvbHVtbjpub3QoLmhlYWRlci1tZW51LWVuYWJsZWQpIC5zZWFyY2gtdG9nZ2xlIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhlYWRlci1zZWFyY2hiYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdi10b2dnbGUsIC5oZWFkZXItc2VhcmNoYmFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8qICAgSGVhZGVyOiBUb2dnbGUgQW5pbWF0aW9uXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgI2hlYWRlci1tZW51IHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAubmF2LXRvZ2dsZS5oZWFkZXItbWVudS5vcGVuICsgI2hlYWRlci1tZW51IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNHMsIHZpc2liaWxpdHkgLjRzO1xuICB9XG4gICNoZWFkZXItbWVudSA+ICNoZWFkZXItbmF2IHtcbiAgICBhbmltYXRpb246IGZhZGVPdXRMZWZ0IC40cyBib3RoO1xuICB9XG4gIC5uYXYtdG9nZ2xlLmhlYWRlci1tZW51Lm9wZW4gKyAjaGVhZGVyLW1lbnUgPiAjaGVhZGVyLW5hdiB7XG4gICAgYW5pbWF0aW9uOiBmYWRlSW5SaWdodCAuNHMgYm90aDtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbiogIDkuIEZvb3RlclxuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jZm9vdGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiA4MHB4O1xuICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gIGJhY2tncm91bmQ6ICM0NDQ2M0I7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XG59XG5cbiNmb290ZXIgLmNvbnRhaW5lciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuI2Zvb3RlciBhIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbn1cblxuI2Zvb3RlciBhOmhvdmVyIHtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4jZm9vdGVyIC5jb3B5cmlnaHQge1xuICBmbGV4LXNocmluazogMTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuI2Zvb3RlciAuc29jaWFsLWxpbmtzIHtcbiAgZmxleC1ncm93OiAxO1xuICBwYWRkaW5nOiAwIC43ZW07XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0MHB4KSBhbmQgKG1heC13aWR0aDogOTgwcHgpIHtcbiAgI2Zvb3RlciAuY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICNmb290ZXIgLmNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbiB3cmFwO1xuICB9XG4gICNmb290ZXIgLnNvY2lhbC1saW5rcyB7XG4gICAgcGFkZGluZy10b3A6IC45ZW07XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIH1cbiAgI2Zvb3RlciAuY29weXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXG4qICAxMC4gU2lkZWJhclxuKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAgIFNpZGViYXIgYW5kIHdpZGdldHMgc3R5bGluZ1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zaWRlYmFyIHtcbiAgcGFkZGluZzogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbiAgYm94LXNoYWRvdzogMCAxcHggM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cblxuLnNpZGViYXIgLndpZGdldCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnNpZGViYXIgLndpZGdldDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTgwcHgpIHtcbiAgLnNpZGViYXIge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gIH1cbiAgLnNpZGViYXItaW5uZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5ODBweCkgYW5kIChtaW4td2lkdGg6IDY0MXB4KSB7XG4gIC5zaWRlYmFyIC53aWRnZXQge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgIG1hcmdpbjogNXB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC5zaWRlYmFyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgfVxuICAuc2lkZWJhciAud2lkZ2V0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4vKiAgIFNpZGViYXIgOiBXaWRnZXRcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ud2lkZ2V0IHtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgcGFkZGluZzogMjBweDtcbiAgZm9udC1zaXplOiAuOTRlbTtcbn1cblxuLndpZGdldCAud2lkZ2V0LXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAuOGVtO1xuICBmb250LXNpemU6IDEuMmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cblxuLndpZGdldCBhIHtcbiAgY29sb3I6ICM4ODg7XG59XG5cbi53aWRnZXQgYTpob3ZlciB7XG4gIGNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi53aWRnZXQgc2VsZWN0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDRweCA2cHg7XG59XG5cbi53aWRnZXQgb3B0aW9uIHtcbiAgcGFkZGluZzogNHB4IDA7XG59XG5cbi53aWRnZXRfcmVjZW50X2VudHJpZXMgbGkgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEwcHggOHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VhZWFlYTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLndpZGdldF9yZWNlbnRfZW50cmllcyBsaTpmaXJzdC1vZi10eXBlIGEge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2VhZWFlYTtcbn1cblxuLndpZGdldF9yZWNlbnRfZW50cmllcyAucG9zdC1kYXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjNDQ0O1xufVxuXG4ud2lkZ2V0X3JlY2VudF9jb21tZW50cyBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEwcHggOHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VhZWFlYTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLndpZGdldF9yZWNlbnRfY29tbWVudHMgbGk6Zmlyc3Qtb2YtdHlwZSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWFlYWVhO1xufVxuXG4ud2lkZ2V0X2FyY2hpdmUgbGkgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEwcHggOHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VhZWFlYTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLndpZGdldF9hcmNoaXZlIGxpOmZpcnN0LW9mLXR5cGUgYSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWFlYWVhO1xufVxuXG4ud2lkZ2V0X2FyY2hpdmUgLmNvdW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbn1cblxuLndpZGdldF9hcmNoaXZlIGxpIGE6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDczXCI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAuNWVtO1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGZvbnQtc2l6ZTogLjhlbTtcbn1cblxuLndpZGdldF9jYXRlZ29yaWVzIGxpIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxMHB4IDhweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlYWVhZWE7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi53aWRnZXRfY2F0ZWdvcmllcyBsaSBhOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExNVwiO1xuICBwYWRkaW5nLXJpZ2h0OiAuNGVtO1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGZvbnQtc2l6ZTogLjhlbTtcbn1cblxuLndpZGdldF9jYXRlZ29yaWVzIGxpOmZpcnN0LW9mLXR5cGUgYSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWFlYWVhO1xufVxuXG4ud2lkZ2V0X2NhdGVnb3JpZXMgLmNvdW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbn1cblxuLndpZGdldF9jYXRlZ29yaWVzIC5jaGlsZHJlbiB7XG4gIHBhZGRpbmctbGVmdDogMWVtO1xufVxuXG4ud2lkZ2V0X2NhdGVnb3JpZXMgLmNoaWxkcmVuOmZpcnN0LW9mLXR5cGUgYSB7XG4gIGJvcmRlci10b3A6IDA7XG59XG5cbi53aWRnZXRfY2F0ZWdvcmllcyAuY2hpbGRyZW4gbGkgYTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTRcIjtcbiAgcGFkZGluZy1yaWdodDogLjRlbTtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6IC44ZW07XG59XG5cbi53aWRnZXRfdGFnX2Nsb3VkIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogLjJlbSAuMDNlbTtcbiAgcGFkZGluZzogNHB4IDZweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBmb250LXNpemU6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICBib3gtc2hhZG93OiAwIDFweCAxcHggMCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi53aWRnZXRfdGFnX2Nsb3VkIGE6aG92ZXIge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbiAgYm94LXNoYWRvdzogMCAycHggMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuXG4ud2lkZ2V0X3RhZ19jbG91ZCBhIC5jb3VudCB7XG4gIG1hcmdpbi1sZWZ0OiAuMmVtO1xuICBjb2xvcjogIzc3NztcbiAgZm9udC1mYW1pbHk6IExhdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IC45ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi53aWRnZXRfcGFnZXMgbGkgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEwcHggOHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VhZWFlYTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLndpZGdldF9wYWdlcyBsaTpmaXJzdC1vZi10eXBlIGEge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2VhZWFlYTtcbn1cblxuLndpZGdldF9wYWdlcyAuY2hpbGRyZW4ge1xuICBwYWRkaW5nLWxlZnQ6IDFlbTtcbn1cblxuLndpZGdldF9wYWdlcyAuY2hpbGRyZW46Zmlyc3Qtb2YtdHlwZSBhIHtcbiAgYm9yZGVyLXRvcDogMDtcbn1cblxuLndpZGdldF9uYXZfbWVudSBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMTBweCA4cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWFlYWVhO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4ud2lkZ2V0X25hdl9tZW51IGxpOmZpcnN0LW9mLXR5cGUgYSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWFlYWVhO1xufVxuXG4ud2lkZ2V0X25hdl9tZW51IC5zdWItbWVudSB7XG4gIHBhZGRpbmctbGVmdDogMWVtO1xufVxuXG4ud2lkZ2V0X25hdl9tZW51IC5zdWItbWVudTpmaXJzdC1vZi10eXBlIGEge1xuICBib3JkZXItdG9wOiAwO1xufVxuXG4ud2lkZ2V0X21ldGEgbGkgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEwcHggOHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VhZWFlYTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLndpZGdldF9tZXRhIGxpOmZpcnN0LW9mLXR5cGUgYSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWFlYWVhO1xufVxuXG4ud2lkZ2V0ICN3cC1jYWxlbmRhciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ud2lkZ2V0ICN3cC1jYWxlbmRhciBhIHtcbiAgY29sb3I6ICMwMDYxOUY7XG59XG5cbi53aWRnZXQgI3dwLWNhbGVuZGFyIGE6aG92ZXIge1xuICBjb2xvcjogIzJlNDQ1Mztcbn1cblxuLndpZGdldCAjd3AtY2FsZW5kYXIgY2FwdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IC40ZW07XG59XG5cbi53aWRnZXQgI3dwLWNhbGVuZGFyIHRib2R5IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ud2lkZ2V0ICN3cC1jYWxlbmRhciB0Ym9keSBhIHtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwIGN1cnJlbnRDb2xvcjtcbn1cblxuLndpZGdldCAjd3AtY2FsZW5kYXIgdGJvZHkgYTpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDAgMCAjMDAwO1xufVxuXG4ud2lkZ2V0X3JzcyBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEwcHggOHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VhZWFlYTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLndpZGdldF9yc3MgbGk6Zmlyc3Qtb2YtdHlwZSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWFlYWVhO1xufVxuXG4ud2lkZ2V0IC53aWRnZXRzLWxpc3QtbGF5b3V0IGEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndpZGdldCAud2lkZ2V0cy1saXN0LWxheW91dCBhIGltZyB7XG4gIHRyYW5zaXRpb246IGFsbCAuMnM7XG59XG5cbi53aWRnZXQgLndpZGdldHMtbGlzdC1sYXlvdXQgbGkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuXG4ud2lkZ2V0IC53aWRnZXRzLWxpc3QtbGF5b3V0IGxpIGltZy53aWRnZXRzLWxpc3QtbGF5b3V0LWJsYXZhdGFyIHtcbiAgbWF4LXdpZHRoOiAxMDBweDtcbiAgd2lkdGg6IDEwMHB4O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHRyYW5zaXRpb246IGFsbCAuMnM7XG59XG5cbi53aWRnZXQgLndpZGdldHMtbGlzdC1sYXlvdXQgLndpZGdldHMtbGlzdC1sYXlvdXQtbGlua3Mge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogLjZlbSAuNWVtIDA7XG59XG5cbi53aWRnZXQgLndpZGdldHMtbGlzdC1sYXlvdXQgLndpZGdldHMtbGlzdC1sYXlvdXQtbGlua3MgYSB7XG4gIGNvbG9yOiAjNDQ0O1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xufVxuXG4ud2lkZ2V0IC53aWRnZXRzLWxpc3QtbGF5b3V0IGxpOmhvdmVyIGEge1xuICBjb2xvcjogIzAwNjE5Rjtcbn1cblxuLndpZGdldCAud2lkZ2V0cy1saXN0LWxheW91dCBsaTpob3ZlciBpbWcge1xuICBvcGFjaXR5OiAuODtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXG4qICAxMS4gQ29tbWVudFxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNvbW1lbnQtdGFibWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkZGQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uY29tbWVudC10YWJtZW51IC50YWJpdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3R0b206IC0ycHg7XG4gIGZvbnQtc2l6ZTogLjk0ZW07XG59XG5cbi5jb21tZW50LXRhYm1lbnUgLnRhYml0ZW0gPiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAuNWVtIDEuMWVtO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2RkZDtcbiAgdHJhbnNpdGlvbjogYWxsIC40cztcbn1cblxuLmNvbW1lbnQtdGFibWVudSAudGFiaXRlbTpub3QoLmFjdGl2ZSk6aG92ZXIgPiBhIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNiYmI7XG59XG5cbi5jb21tZW50LXRhYm1lbnUgLmFjdGl2ZSA+IGEge1xuICBjb2xvcjogIzAwNjE5Rjtcbn1cblxuLmNvbW1lbnQtdGFibWVudSAuY291bnQge1xuICBtYXJnaW4tbGVmdDogLjRlbTtcbiAgcGFkZGluZzogMCAuMjhlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbiAgY29sb3I6ICM2NjY7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgZm9udC1zaXplOiAuOTRlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5jb21tZW50LXRhYm1lbnUgLnRhYml0ZW0gPiBhW2hyZWZePScjY29tbWVudC1saXN0J106OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc1XCI7XG4gIHBhZGRpbmctcmlnaHQ6IC4yZW07XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbn1cblxuLmNvbW1lbnQtdGFibWVudSAudGFiaXRlbSA+IGFbaHJlZl49JyNwaW5nLWxpc3QnXTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjRcIjtcbiAgcGFkZGluZy1yaWdodDogLjJlbTtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzRweCkge1xuICAuY29tbWVudC10YWJtZW51IC50YWJpdGVtIHtcbiAgICBmb250LXNpemU6IC44OGVtO1xuICB9XG4gIC5jb21tZW50LXRhYm1lbnUgLnRhYml0ZW0gPiBhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAuNmVtO1xuICAgIHBhZGRpbmctbGVmdDogLjZlbTtcbiAgfVxufVxuXG4jY29tbWVudC1saXN0IC5jb21tZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jY29tbWVudC1saXN0IC5jb21tZW50LWJvZHkge1xuICBwYWRkaW5nOiAxLjZlbSAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2YwZjBmMDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuI2NvbW1lbnQtbGlzdCA+IGxpOmZpcnN0LWNoaWxkIC5jb21tZW50LWJvZHkge1xuICBib3JkZXItdG9wLXN0eWxlOiBub25lO1xufVxuXG4jY29tbWVudC1saXN0ID4gLmNvbW1lbnQtYm9keTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmN2Y3Zjc7XG59XG5cbiNjb21tZW50LWxpc3QgLmNvbW1lbnQtbWV0YSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNmVtO1xuICBjb2xvcjogIzg4ODtcbiAgZm9udC1zaXplOiAuOTZlbTtcbn1cblxuI2NvbW1lbnQtbGlzdCAuY29tbWVudC1tZXRhIGEge1xuICBjb2xvcjogIzg4ODtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuI2NvbW1lbnQtbGlzdCAuY29tbWVudC1tZXRhIGE6aG92ZXIge1xuICBjb2xvcjogIzMzMztcbn1cblxuI2NvbW1lbnQtbGlzdCAuY29tbWVudC1hdXRob3IgLmF2YXRhciB7XG4gIHdpZHRoOiA0MnB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIGZsb2F0OiBsZWZ0O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1hcmdpbi1yaWdodDogMWVtO1xufVxuXG4jY29tbWVudC1saXN0IC5jb21tZW50LWF1dGhvciAuZm4ge1xuICBjb2xvcjogIzMzMztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuI2NvbW1lbnQtbGlzdCAuY29tbWVudC1hdXRob3IgLmZuIGEge1xuICBjb2xvcjogIzAwNjE5RjtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwIGN1cnJlbnRDb2xvcjtcbn1cblxuI2NvbW1lbnQtbGlzdCAuY29tbWVudC1hdXRob3IgLmZuIGE6aG92ZXIge1xuICBjb2xvcjogIzMzMztcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwICMwMDA7XG59XG5cbiNjb21tZW50LWxpc3QgLmJ5cG9zdGF1dGhvciA+IGFydGljbGUgLmZuOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMDA3XCI7XG4gIG1hcmdpbjogMCAuMmVtO1xuICBjb2xvcjogIzY2NjczYjtcbiAgZm9udC1mYW1pbHk6IFwiZm9udEF3ZXNvbWVcIjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuI2NvbW1lbnQtbGlzdCAuc2F5cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuI2NvbW1lbnQtbGlzdCAuZWRpdC1saW5rOjpiZWZvcmUge1xuICBjb250ZW50OiBcIiAvIFwiO1xuICBwYWRkaW5nOiAwIC40ZW07XG4gIGNvbG9yOiAjYWFhO1xufVxuXG4jY29tbWVudC1saXN0IC5jb21tZW50LWNvbnRlbnQge1xuICBtYXJnaW4tbGVmdDogMWVtO1xuICBwYWRkaW5nLWxlZnQ6IDEuMmVtO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNmMGYwZjA7XG59XG5cbiNjb21tZW50LWxpc3QgLmNoaWxkcmVuIHtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG59XG5cbiNjb21tZW50LWxpc3QgLmNoaWxkcmVuID4gbGkge1xuICBwYWRkaW5nLWxlZnQ6IDEuNmVtO1xufVxuXG4jY29tbWVudC1saXN0IC5yZXBseSBhIHtcbiAgY29sb3I6ICM5OTk7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuI2NvbW1lbnQtbGlzdCAucmVwbHkgYTpob3ZlciB7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4jcGluZy1saXN0IHtcbiAgcGFkZGluZzogMjBweCAwO1xufVxuXG4jcGluZy1saXN0IC5jb21tZW50LWJvZHkge1xuICBwYWRkaW5nOiAxMHB4IDA7XG59XG5cbiNwaW5nLWxpc3QgLmVkaXQtbGluazo6YmVmb3JlIHtcbiAgY29udGVudDogXCIgLyBcIjtcbiAgcGFkZGluZzogMCAuNGVtO1xufVxuXG4jcGluZy1saXN0IC5lZGl0LWxpbmsgYSB7XG4gIGNvbG9yOiAjODg4O1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4jcmVzcG9uZCB7XG4gIHBhZGRpbmc6IDEuNmVtIDA7XG59XG5cbiNyZXNwb25kIC5jb21tZW50LWZvcm0ge1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIGJhY2tncm91bmQ6ICNmNmY2ZjY7XG59XG5cbiNyZXNwb25kIHAge1xuICBtYXJnaW4tYm90dG9tOiAuNGVtO1xufVxuXG4jcmVzcG9uZCAuZm9ybS1zdWJtaXQge1xuICBtYXJnaW4tdG9wOiAuNmVtO1xufVxuXG4jcmVzcG9uZCAubG9nZ2VkLWluLWFzIHtcbiAgY29sb3I6ICM2NjY7XG4gIGZvbnQtc2l6ZTogLjk1ZW07XG59XG5cbiNyZXNwb25kIC5sb2dnZWQtaW4tYXMgYTpob3ZlciB7XG4gIGNvbG9yOiAjMDA2MTlGO1xufVxuXG4jcmVzcG9uZCAuY29tbWVudC1ub3RlcyB7XG4gIGNvbG9yOiAjNjY2O1xuICBmb250LXNpemU6IC45NWVtO1xufVxuXG4jcmVzcG9uZCAjcmVwbHktdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAuNGVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IDEuM2VtO1xufVxuXG4jcmVzcG9uZCAjcmVwbHktdGl0bGUgc21hbGwge1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IC44ZW07XG59XG5cbiNyZXNwb25kIGxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4jcmVzcG9uZCB0ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDE0MHB4O1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG4jcmVzcG9uZCBpbnB1dFt0eXBlPXRleHRdLCAjcmVzcG9uZCBpbnB1dFt0eXBlPWVtYWlsXSwgI3Jlc3BvbmQgaW5wdXRbdHlwZT11cmxdIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA2MCU7XG4gIHBhZGRpbmc6IDZweCA4cHg7XG59XG5cbiNyZXNwb25kIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gIHBhZGRpbmc6IDhweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgI3Jlc3BvbmQgaW5wdXRbdHlwZT10ZXh0XSB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIHdpZHRoOiA4MCU7XG4gIH1cbn1cblxuLmNvbW1lbnQtcGFnZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxMHB4IGF1dG8gMTBweDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkZGQ7XG4gIGNvbG9yOiAjMDA2MTlGO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmNvbW1lbnQtcGFnZXMgc3BhbiwgLmNvbW1lbnQtcGFnZXMgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3R0b206IC0ycHg7XG4gIHBhZGRpbmc6IDZweCAxMHB4O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2RkZDtcbiAgdHJhbnNpdGlvbjogYm9yZGVyIC40cztcbn1cblxuLmNvbW1lbnQtcGFnZXMgc3BhbiB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICMwMDYxOUY7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4uY29tbWVudC1wYWdlcyAqIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zaXRpb246IGJvcmRlciAuNHM7XG59XG5cbi5jb21tZW50LXBhZ2VzID4gYTpob3ZlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDA2MTlGO1xufVxuXG4uY29tbWVudC1ib2R5IGEge1xuICBjb2xvcjogIzAwNjE5RjtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwIGN1cnJlbnRDb2xvcjtcbn1cblxuLmNvbW1lbnQtYm9keSBhOmhvdmVyIHtcbiAgY29sb3I6ICMyZTQ0NTM7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDAgMCAjMDAwO1xufVxuXG4uY29tbWVudC1ib2R5IGR0IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5jb21tZW50LWJvZHkgZGQge1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG59XG5cbi5jb21tZW50LWJvZHkgaHIge1xuICBtYXJnaW46IDFlbSAwO1xufVxuXG4uY29tbWVudC1ib2R5IGlmcmFtZSB7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cblxuLmNvbW1lbnQtYm9keSBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuXG4uY29tbWVudC1ib2R5IHAgPiBpZnJhbWUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY29tbWVudC1ib2R5IGgxLCAuY29tbWVudC1ib2R5IGgyLCAuY29tbWVudC1ib2R5IGgzLCAuY29tbWVudC1ib2R5IGg0LCAuY29tbWVudC1ib2R5IGg1LCAuY29tbWVudC1ib2R5IGg2IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5jb21tZW50LWJvZHkgaDEge1xuICBtYXJnaW46IDEuOGVtIDAgMWVtO1xufVxuXG4uY29tbWVudC1ib2R5IGgyIHtcbiAgbWFyZ2luOiAxLjZlbSAwIDFlbTtcbn1cblxuLmNvbW1lbnQtYm9keSBoMyB7XG4gIG1hcmdpbjogMS41ZW0gMCAxZW07XG59XG5cbi5jb21tZW50LWJvZHkgaDQge1xuICBtYXJnaW46IDEuNGVtIDAgLjllbTtcbn1cblxuLmNvbW1lbnQtYm9keSBoNSB7XG4gIG1hcmdpbjogMS4zZW0gMCAuOGVtO1xufVxuXG4uY29tbWVudC1ib2R5IGg2IHtcbiAgbWFyZ2luOiAxLjJlbSAwIC44ZW07XG59XG5cbi5jb21tZW50LWJvZHkgdWwge1xuICBsaXN0LXN0eWxlOiBzcXVhcmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG59XG5cbi5jb21tZW50LWJvZHkgb2wge1xuICBsaXN0LXN0eWxlOiBkZWNpbWFsO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xufVxuXG4uY29tbWVudC1ib2R5IGJsb2NrcXVvdGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgcGFkZGluZzogMTBweCAxMHB4IDEwcHggNDhweDtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5jb21tZW50LWJvZHkgYmxvY2txdW90ZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMGRcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICBsZWZ0OiAxMnB4O1xuICBjb2xvcjogI2FhYTtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IDEuNmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4uY29tbWVudC1ib2R5IHByZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAxZW0gMDtcbiAgcGFkZGluZzogMWVtIDEuMmVtO1xuICBiYWNrZ3JvdW5kOiAjNDQ0NjNCO1xuICBjb2xvcjogI0U1RTVFQjtcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICBmb250LXNpemU6IC45NmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBmb250LWZhbWlseTogJ1NvdXJjZSBDb2RlIFBybycsIE1vbmFjbywgQ29uc29sYXMsIG1vbm9zcGFjZTtcbiAgYm94LXNoYWRvdzogMCAxcHggM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4uY29tbWVudC1ib2R5IHByZSA+IGNvZGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogaW5oZXJpdDtcbn1cblxuLmNvbW1lbnQtYm9keSBjb2RlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcbiAgcGFkZGluZzogMCAzcHg7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgZm9udC1zaXplOiAuOWVtO1xuICBmb250LWZhbWlseTogJ1NvdXJjZSBDb2RlIFBybycsIE1vbmFjbywgQ29uc29sYXMsIG1vbm9zcGFjZTtcbn1cblxuLmNvbW1lbnQtYm9keSBrYmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwO1xuICBwYWRkaW5nOiAwIDNweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzQ0NDYzQjtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xuICBmb250LXNpemU6IC45ZW07XG4gIGZvbnQtZmFtaWx5OiAnU291cmNlIENvZGUgUHJvJywgTW9uYWNvLCBDb25zb2xhcywgbW9ub3NwYWNlO1xufVxuXG4uY29tbWVudC1ib2R5IHRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgZm9udC1zaXplOiAuOTVlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBib3gtc2hhZG93OiAwIDFweCAxcHggMCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xufVxuXG4uY29tbWVudC1ib2R5IHRhYmxlIHRkLCAuY29tbWVudC1ib2R5IHRhYmxlIHRoIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XG59XG5cbi5jb21tZW50LWJvZHkgdGFibGUgdGgge1xuICBwYWRkaW5nOiA3cHggMTBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGQ7XG4gIGJhY2tncm91bmQ6ICNmNmY2ZjY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uY29tbWVudC1ib2R5IHRhYmxlIHRkIHtcbiAgcGFkZGluZzogNnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uY29tbWVudC1ib2R5IGFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXG4qICAxMi4gV1AgbmF0aXZlXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi53cC1jYXB0aW9uIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIHBhZGRpbmc6IDVweCA1cHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi53cC1jYXB0aW9uIC53cC1jYXB0aW9uLXRleHQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IC42ZW0gNHB4O1xuICBsaW5lLWhlaWdodDogMS40O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5hbGlnbmNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5hbGlnbnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xufVxuXG4uYWxpZ25sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG4uY2xlYXJmaXg6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG59XG5cbmh0bWwgYm9keSAuc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5ib2R5LmhvbWUge1xuICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyogICBHYWxsZXJ5XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmdhbGxlcnktY29sdW1ucy0xIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbn1cblxuLmdhbGxlcnktY29sdW1ucy0xIC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogY2FsYygxMDAlIC8gMSk7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgcGFkZGluZzogMCAuMXJlbTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy0yIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbn1cblxuLmdhbGxlcnktY29sdW1ucy0yIC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogY2FsYygxMDAlIC8gMik7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgcGFkZGluZzogMCAuMXJlbTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy0zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbn1cblxuLmdhbGxlcnktY29sdW1ucy0zIC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgcGFkZGluZzogMCAuMXJlbTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy00IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbn1cblxuLmdhbGxlcnktY29sdW1ucy00IC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogY2FsYygxMDAlIC8gNCk7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgcGFkZGluZzogMCAuMXJlbTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy01IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbn1cblxuLmdhbGxlcnktY29sdW1ucy01IC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogY2FsYygxMDAlIC8gNSk7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgcGFkZGluZzogMCAuMXJlbTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy02IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbn1cblxuLmdhbGxlcnktY29sdW1ucy02IC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogY2FsYygxMDAlIC8gNik7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgcGFkZGluZzogMCAuMXJlbTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy03IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbn1cblxuLmdhbGxlcnktY29sdW1ucy03IC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogY2FsYygxMDAlIC8gNyk7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgcGFkZGluZzogMCAuMXJlbTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy04IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbn1cblxuLmdhbGxlcnktY29sdW1ucy04IC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogY2FsYygxMDAlIC8gOCk7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgcGFkZGluZzogMCAuMXJlbTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy05IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbn1cblxuLmdhbGxlcnktY29sdW1ucy05IC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogY2FsYygxMDAlIC8gOSk7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgcGFkZGluZzogMCAuMXJlbTtcbn1cblxuLndwLWNhcHRpb24gaW1nIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLmdhbGxlcnktaWNvbi5sYW5kc2NhcGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5nYWxsZXJ5LWNhcHRpb24ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDVweCA1cHggMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXNpemU6IC45NGVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxuKiAgMTMuIE1pc2NcbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2JhY2stdG8tdG9wIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAxMHB4O1xuICBwYWRkaW5nOiAxMnB4IDE2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDZweCA2cHggMCAwO1xuICBib3gtc2hhZG93OiAwIDAgNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjYpO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IC40cywgcGFkZGluZyAuNHM7XG59XG5cbi5jaGV2cm9uLXVwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogOHB4O1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzQ0NDYzQjtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjNDQ0NjNCO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xufVxuXG4jYmFjay10by10b3AuYWJzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4jYmFjay10by10b3A6aG92ZXIsICNiYWNrLXRvLXRvcC5jbGlja2VkIHtcbiAgcGFkZGluZy1ib3R0b206IDE2cHg7XG4gIGJveC1zaGFkb3c6IDAgMCA0cHggcmdiYSgwLCAwLCAwLCAwLjYpLCAwIDNweCA2cHggcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuXG4vKiBTb2NpYWwgTGlua3MgKi9cbi5zb2NpYWwtbGlua3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uc29jaWFsLWxpbmtzIGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc29jaWFsLWxpbmtzIGkge1xuICBmb250LXNpemU6IDEuNTVlbTtcbn1cblxuLnNvY2lhbC1saW5rcyA+IGxpOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC41ZW07XG59XG5cbi5zb2NpYWwtbGlua3MgYSwgLnNvY2lhbC1saW5rcyBhOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnNvY2lhbC1saW5rcyBhOjphZnRlciB7XG4gIGNvbnRlbnQ6IGF0dHIodGl0bGUpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTM1cHg7XG4gIHJpZ2h0OiAtNXB4O1xuICB6LWluZGV4OiA5OTk7XG4gIHBhZGRpbmc6IDAuMTg3NWVtIDAuNzVlbTtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zaXplOiAuODhlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3gtc2hhZG93OiAwIDAgNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4uc29jaWFsLWxpbmtzIGE6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0xMHB4O1xuICByaWdodDogY2FsYyg1MCUgLSAuNTVlbSk7XG4gIHotaW5kZXg6IDk5ODtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudCA4cHg7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmOGY4Zjg7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCA2cHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5cbi5zb2NpYWwtbGlua3MgYTpob3Zlcjo6YWZ0ZXIsIC5zb2NpYWwtbGlua3MgYTpob3Zlcjo6YmVmb3JlIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxudWwuc29jaWFsLWxpbmtzIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vKiBTZWFyY2ggQmFyICovXG4uc2VhcmNoLWZvcm0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG59XG5cbi5zZWFyY2gtZm9ybSAuc2VhcmNoLWlubmVyIHtcbiAgZmxleDogMTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDZweCA2cHg7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMnB4IDAgMCAycHg7XG4gIGZvbnQtc2l6ZTogLjk2ZW07XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi5zZWFyY2gtZm9ybSAuc2VhcmNoLXN1Ym1pdCB7XG4gIHdpZHRoOiA2MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NDQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgMnB4IDJweCAwO1xufVxuXG4uc2VhcmNoLWZvcm0gLnNlYXJjaC1zdWJtaXQ6aG92ZXIsIC5zZWFyY2gtZm9ybSAuc2VhcmNoLXN1Ym1pdDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Nzc7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5zZWFyY2gtZm9ybSAuaWNvbiB7XG4gIHRvcDogY2FsYyg1MCUgLSA2cHgpO1xuICBsZWZ0OiBjYWxjKDUwJSAtIDhweCk7XG59XG5cbi5pY29uLnNlYXJjaCB7XG4gIGNvbG9yOiAjNDQ0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDEycHg7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICBib3JkZXI6IHNvbGlkIDFweCAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbi5pY29uLnNlYXJjaDo6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMnB4O1xuICBsZWZ0OiA1cHg7XG4gIGhlaWdodDogNnB4O1xuICB3aWR0aDogMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4vKiBSRUFEIE1PUkUgYnV0dG9uICovXG4ubW9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LWZhbWlseTogTGF0bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIHRyYW5zaXRpb246IGFsbCAuN3MgZWFzZS1pbi1vdXQ7XG59XG5cbi5tb3JlIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogN3B4IDhweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMzMzO1xuICBjb2xvcjogIzMzMztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLm1vcmUgYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ubW9yZSAuZmEge1xuICB3aWR0aDogMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMHMsIGZvbnQtc2l6ZSAwcywgb3BhY2l0eSAuN3MgZWFzZS1pbi1vdXQsIHBhZGRpbmcgLjdzIGVhc2UtaW4tb3V0O1xufVxuXG4ubW9yZSAuZmE6OmFmdGVyIHtcbiAgY29udGVudDogXCJcXGYwNjFcIjtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xufVxuXG4ubW9yZSBhOmhvdmVyIC5mYSB7XG4gIHdpZHRoOiBhdXRvO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xuICBwYWRkaW5nLWxlZnQ6IC41ZW07XG59XG5cbi8qIEN1c3RvbSBDbGFzc2VzIGZvciBzZXZlcmFsIHVzYWdlICovXG4uc2VsZWN0LW5vbmUge1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uY2xlYXJmaXg6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uZnMxNSB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1ZW07XG59XG5cbi5mczE3IHtcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcbn1cblxuLmZzMjAge1xuICBmb250LXNpemU6IDEuMjVlbTtcbn1cblxuLnNhbnMtc2VyaWYge1xuICBmb250LWZhbWlseTogSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbn1cblxuLnNlcmlmIHtcbiAgZm9udC1mYW1pbHk6IEdlb3JnaWEsIHNlcmlmO1xufVxuXG4uYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5zZW1pYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5tb25vc3BhY2Uge1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgQ29kZSBQcm9cIiwgTW9uYWNvLCBtb25vc3BhY2U7XG59XG5cbi5pbmZvLTEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxLjZlbSAwO1xuICBwYWRkaW5nOiAxLjJlbSAxLjRlbTtcbiAgYm9yZGVyOiAycHggc29saWQgIzM5YztcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUxLCAxNTMsIDIwNCwgMC4xKTtcbn1cblxuLmF0dGVudGlvbi0xIHtcbiAgcGFkZGluZzogMS40ZW07XG4gIGJvcmRlcjogc29saWQgMnB4ICNmZjUwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZDogI2ZmZDU4MDtcbn1cblxuLmxpbmstYm94IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDRweCA2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7XG59XG5cbi5saW5rLWJveCA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogICBLZXlmcmFtZXNcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5Aa2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRSaWdodCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5SaWdodCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0bGVmdCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxuKiAgMTQuIENKSyBTdHlsaW5nXG4qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG46bGFuZyhqYSkgLmJyYWRjcnVtYiwgOmxhbmcoa28pIC5icmFkY3J1bWIsIDpsYW5nKHpoKSAuYnJhZGNydW1iIHtcbiAgbWFyZ2luLWJvdHRvbTogLjJlbTtcbn1cblxuOmxhbmcoamEpIC5lbnRyeSwgOmxhbmcoamEpIC5jb21tZW50LWJvZHksIDpsYW5nKGtvKSAuZW50cnksIDpsYW5nKGtvKSAuY29tbWVudC1ib2R5LCA6bGFuZyh6aCkgLmVudHJ5LCA6bGFuZyh6aCkgLmNvbW1lbnQtYm9keSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG59XG5cbjpsYW5nKGphKSBoMSwgOmxhbmcoamEpIGgyLCA6bGFuZyhqYSkgaDMsIDpsYW5nKGphKSBoNCwgOmxhbmcoamEpIGg1LCA6bGFuZyhqYSkgaDYsIDpsYW5nKGtvKSBoMSwgOmxhbmcoa28pIGgyLCA6bGFuZyhrbykgaDMsIDpsYW5nKGtvKSBoNCwgOmxhbmcoa28pIGg1LCA6bGFuZyhrbykgaDYsIDpsYW5nKHpoKSBoMSwgOmxhbmcoemgpIGgyLCA6bGFuZyh6aCkgaDMsIDpsYW5nKHpoKSBoNCwgOmxhbmcoemgpIGg1LCA6bGFuZyh6aCkgaDYge1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG46bGFuZyhqYSkgLnJlbGF0ZWQtcG9zdHMgLnBvc3QtdGl0bGUsIDpsYW5nKGtvKSAucmVsYXRlZC1wb3N0cyAucG9zdC10aXRsZSwgOmxhbmcoemgpIC5yZWxhdGVkLXBvc3RzIC5wb3N0LXRpdGxlIHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbjpsYW5nKGphKSBoMSB7XG4gIGZvbnQtZmFtaWx5OiBMYXRvLCAnTm90byBTYW5zIENKSyBKUCBMaWdodCcsICdZdSBHb3RoaWMgTGlnaHQnLCAnSGlyYWdpbm8gU2FucycsIEFyaWFsLCBzYW5zLXNlcmlmO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbiogIDE1LiBQbHVnaW5cbiogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogICBwbHVnaW4gOiBUYWJsZSBPZiBDb250ZW50IFN0eWxlXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI3RvY19jb250YWluZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHdpZHRoOiA4MCU7XG4gIG1pbi13aWR0aDogODAlO1xuICBtYXgtd2lkdGg6IDgwJTtcbiAgbWFyZ2luOiAxLjRlbSBhdXRvO1xuICBwYWRkaW5nOiAyMHB4IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM0NDQ2M0I7XG4gIGZvbnQtc2l6ZTogLjk1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbiN0b2NfY29udGFpbmVyIHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4jdG9jX2NvbnRhaW5lciBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4jdG9jX2NvbnRhaW5lciBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4jdG9jX2NvbnRhaW5lciBwLnRvY190aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuI3RvY19jb250YWluZXIgYSBzcGFuIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1mYW1pbHk6IExhdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xufVxuXG4jdG9jX2NvbnRhaW5lciBhIHNwYW46OmFmdGVyIHtcbiAgY29udGVudDogXCIuXCI7XG4gIHBhZGRpbmctbGVmdDogLjFlbTtcbn1cblxuI3RvY19jb250YWluZXIgdWwge1xuICBtYXJnaW4tbGVmdDogMWVtO1xufVxuXG4jdG9jX2NvbnRhaW5lciAudG9jX2xpc3QgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA4cHggMTBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0NDQ2M0I7XG4gIHRyYW5zaXRpb246IGFsbCAuNHMsIGJvcmRlciAuNHMgLjRzO1xufVxuXG4jdG9jX2NvbnRhaW5lciAudG9jX2xpc3QgdWwgdWwgYSB7XG4gIGJvcmRlci1ib3R0b20tc3R5bGU6IGRvdHRlZDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgI3RvY19jb250YWluZXIge1xuICAgIHdpZHRoOiA5NSU7XG4gICAgbWluLXdpZHRoOiA5NSU7XG4gICAgbWF4LXdpZHRoOiA5NSU7XG4gICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgZm9udC1zaXplOiAuOTVlbTtcbiAgfVxufVxuXG4vKiAgcGx1Z2luIDogY29udGFjdCBmb3JtIDdcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLndwY2Y3IHAge1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ud3BjZjcgcCBzcGFuIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICM3Nzc7XG59XG5cbi53cGNmNyBkaXYud3BjZjctdmFsaWRhdGlvbi1lcnJvcnMge1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLndwY2Y3IGRpdi53cGNmNy1tYWlsLXNlbnQtb2ssIC53cGNmNyBkaXYud3BjZjctbWFpbC1zZW50LW5nIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4ud3BjZjcgZGl2LndwY2Y3LXJlc3BvbnNlLW91dHB1dCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLndwY2Y3IHNwYW4ud3BjZjctZm9ybS1jb250cm9sLXdyYXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ud3BjZjcgc3Bhbi53cGNmNy1ub3QtdmFsaWQtdGlwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZGVkZTtcbiAgYm9yZGVyLWNvbG9yOiAjZTNiZmJmO1xuICBjb2xvcjogI2I5NGE0ODtcbiAgcGFkZGluZzogNHB4IDE0cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAxMnB4O1xuICB3aWR0aDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ud3BjZjcgaW5wdXRbdHlwZT10ZXh0XSwgLndwY2Y3IGlucHV0W3R5cGU9cGFzc3dvcmRdLCAud3BjZjcgaW5wdXRbdHlwZT1lbWFpbF0sIC53cGNmNyBpbnB1dFt0eXBlPXVybF0sIC53cGNmNyBpbnB1dFt0eXBlPXNlYXJjaF0sIC53cGNmNyBpbnB1dFt0eXBlPXRlbF0sIC53cGNmNyBpbnB1dFt0eXBlPWRhdGVdLCAud3BjZjcgaW5wdXRbdHlwZT1kYXRldGltZV0sIC53cGNmNyBpbnB1dFt0eXBlPW1vbnRoXSwgLndwY2Y3IGlucHV0W3R5cGU9d2Vla10sIC53cGNmNyBpbnB1dFt0eXBlPXRpbWVdLCAud3BjZjcgaW5wdXRbdHlwZT1kYXRldGltZS1sb2NhbF0sIC53cGNmNyBpbnB1dFt0eXBlPW51bWJlcl0sIC53cGNmNyBzZWxlY3QsIC53cGNmNyB0ZXh0YXJlYSB7XG4gIHBhZGRpbmc6IDhweCAxMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xuICBtYXJnaW4tdG9wOiAuNGVtO1xufVxuXG4ud3BjZjcgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG59XG5cbi53cGNmNyB0ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiAgIGhpZ2h0bGlnaHQuanNcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uaGxqcyB7XG4gIGNvbG9yOiAjRTVFNUVCO1xuICBiYWNrZ3JvdW5kOiAjMjgyYjJlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMDtcbn1cblxuLmhsanMtYnVsbGV0LCAuaGxqcy1saXRlcmFsLCAuaGxqcy1udW1iZXIsIC5obGpzLXN5bWJvbCB7XG4gIGNvbG9yOiAjNjg5N0JCO1xufVxuXG4uaGxqcy1kZWxldGlvbiwgLmhsanMta2V5d29yZCwgLmhsanMtc2VsZWN0b3ItdGFnIHtcbiAgY29sb3I6ICNjYzc4MzI7XG59XG5cbi5obGpzLWxpbmssIC5obGpzLXRlbXBsYXRlLXZhcmlhYmxlLCAuaGxqcy12YXJpYWJsZSB7XG4gIGNvbG9yOiAjNjI5NzU1O1xufVxuXG4uaGxqcy1jb21tZW50LCAuaGxqcy1xdW90ZSB7XG4gIGNvbG9yOiBncmV5O1xufVxuXG4uaGxqcy1tZXRhIHtcbiAgY29sb3I6ICNiZDRiNDA7XG59XG5cbi5obGpzLWFkZGl0aW9uLCAuaGxqcy1hdHRyaWJ1dGUsIC5obGpzLXN0cmluZyB7XG4gIGNvbG9yOiAjOGNhYjdhO1xufVxuXG4uaGxqcy1zZWN0aW9uLCAuaGxqcy10aXRsZSwgLmhsanMtdHlwZSB7XG4gIGNvbG9yOiAjZmZjNjZkO1xufVxuXG4uaGxqcy1uYW1lLCAuaGxqcy1zZWxlY3Rvci1jbGFzcywgLmhsanMtc2VsZWN0b3ItaWQge1xuICBjb2xvcjogI2U2NjU2Mjtcbn1cblxuLmxhbmctdGFnICoge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmhsanMtZW1waGFzaXMge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5obGpzLXN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4iLCIvKiAgIFBvc3QgTWV0YVxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5wb3N0LW1ldGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6IDFlbTtcbiAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgY29sb3I6ICM2NjY7XG4gIGZvbnQtc2l6ZTogLjhlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYSB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAmOmhvdmVyIHsgY29sb3I6ICRsaW5rOyB9XG4gIH1cbiAgJiA+ICpbY2xhc3NePXBvc3QtXSB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgcGFkZGluZy1yaWdodDogMTBweDsgfVxuICAmID4gKltjbGFzc149cG9zdC1dOjpiZWZvcmUgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZy1yaWdodDogLjJlbTsgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lOyBsaW5lLWhlaWdodDogMTsgfVxuICAucG9zdC1kYXRlOjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAxN1wiOyB9XG4gIC5wb3N0LWNhdGVnb3J5OjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA3YlwiOyB9XG4gIC5wb3N0LW1vZGlmaWVkOjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkYVwiOyB9XG4gIC5wb3N0LXRhZzo6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMmJcIjsgfVxuICAucG9zdC1hdXRob3I6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDA3XCI7IH1cbiAgLnBvc3QtZWRpdDo6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNDBcIjsgfVxuICAucG9zdC11cGRhdGU6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDIxXCI7IH1cbiAgLnBvc3QtY29tbWVudCBhOjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA3NVwiOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZy1yaWdodDogLjJlbTsgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lOyBsaW5lLWhlaWdodDogMTsgfVxufVxuXG4vKiAgIFNpbmdsZSA6IGVudHJ5IGhlYWRlclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5wb3N0LW1ldGEuY29udGVudC1ib3gge1xuICBhIHsgY29sb3I6ICR0ZXh0OyBib3gtc2hhZG93OiAwIDFweCAwIDAgY3VycmVudENvbG9yIH1cbiAgYTpob3ZlciB7IGNvbG9yOiAkbGluayB9XG4gIC5wb3N0LWNhdGVnb3J5IGF7IG1hcmdpbjogMCAwIC4zZW0gMDsgfVxuICAucG9zdC1jYXRlZ29yeSBhOmhvdmVyIHsgQGluY2x1ZGUgYm94LXNoYWRvdygkeDogMCwgJHk6IDJweCwgJGJsdXI6IDAsICRjb2xvcjogcmdiYSgyMTYsIDg3LCAyNSwgMC40KSkgfVxuICAucG9zdC1hdXRob3IgYTpob3ZlciB7IEBpbmNsdWRlIGJveC1zaGFkb3coJHg6IDAsICR5OiAycHgsICRibHVyOiAwLCAkY29sb3I6IHJnYmEoIzAwNjE5RiwgMC40KSkgfVxuICAucG9zdC1jb21tZW50IGE6aG92ZXIgeyBAaW5jbHVkZSBib3gtc2hhZG93KCR4OiAwLCAkeTogMnB4LCAkYmx1cjogMCwgJGNvbG9yOiByZ2JhKCMwYTRhMTIsIDAuNCkpO31cbn1cblxuLmVudHJ5IC5wb3N0LW1ldGEge1xuICBtYXJnaW4tYm90dG9tOiAzZW07XG59XG5cbi8qICAgU2luZ2xlIDogQm90dG9tIFBvc3QgQ2F0ZWdvcnksIFRhZ1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5idG0tcG9zdC1tZXRhIHsgbWFyZ2luLXRvcDogM2VtOyBjbGVhcjogYm90aCB9XG5wLnBvc3QtYnRtLXRhZ3MsIHAucG9zdC1idG0tY2F0cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogLjFlbTtcbiAgZm9udC1zaXplOiAuODhlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgLmZhIHsgbWFyZ2luLXJpZ2h0OiAuMmVtOyB3aWR0aDogMTZweCB9XG4gIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgLjRlbSAuM2VtIDA7XG4gICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICY6aG92ZXIgeyBjb2xvcjogJGxpbms7IH1cbiAgfVxufVxuLm1ldGEtbGFiZWwge1xuICBtYXJnaW4tcmlnaHQ6IC40ZW07XG4gIGNvbG9yOiAjMTExO1xuICBmb250LXNpemU6IDEuMWVtO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuLnBvc3QtYnRtLWNhdHMgYTpob3ZlciB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHg6IDAsICR5OiAycHgsICRibHVyOjAsICRjb2xvcjogcmdiYSgjZDg1NzE5LCAuNCkpO1xufVxuLnBvc3QtYnRtLXRhZ3MgYTpob3ZlciB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHg6IDAsICR5OiAycHgsICRibHVyOjAsICRjb2xvcjogcmdiYSgjMTlkODMxLCAuNCkpO1xufVxuXG4vKiAgIFNpbmdsZSA6IEF1dGhvciBCb3hcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uYXV0aG9yLWJveCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIG1hcmdpbi10b3A6IDJlbTtcbiAgcGFkZGluZzogMWVtO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHg6IDAsICR5OiAxcHgsICRibHVyOiAzcHgsICRjb2xvcjogcmdiYSgwLCAwLCAwLCAuMTQpKTtcblxuICAuYXV0aG9yLXRodW1ibmFpbCB7XG4gICAgZmxleC1zaHJpbms6IDE7XG4gICAgaW1nIHsgYm9yZGVyLXJhZGl1czogNTAlIH1cbiAgfVxuXG4gIC5hdXRob3ItY29udGVudCB7XG4gICAgZmxleDogMTtcbiAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgfVxuXG4gIC5hdXRob3ItaW5mb21hdGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogLjNlbTtcbiAgfVxuXG4gIC5hdXRob3ItbmFtZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAxLjJlbTtcbiAgfVxuXG4gIC5hdXRob3ItZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAuOTRlbTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICB9XG5cbiAgLmF1dGhvci1saW5rcyB7XG4gICAgbWFyZ2luLWxlZnQ6IC43ZW07XG4gICAgLnNvY2lhbC1saW5rcyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgZm9udC1zaXplOiAuNzRlbTtcbiAgICAgIGEgPiBpIHsgY29sb3I6ICM3NzcgfVxuICAgICAgYTpob3ZlciA+IGkgeyBjb2xvcjogIzIyMjsgfVxuICAgIH1cbiAgICBhOjpiZWZvcmUsIGE6OmFmdGVyIHsgY29udGVudDogbm9uZSB9XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnBtYXgtbW9iaWxlKSB7XG4gICAgLmF1dGhvci1pbmZvbWF0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAuYXV0aG9yLWxpbmtzIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG5cblxuLyogICBTaW5nbGUgOiBlbnRyeSBmb290ZXJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4mID4gKiB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmc6IDEwcHggMjVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkeTogMXB4LCAkYmx1cjogM3B4LCAkY29sb3I6IHJnYmEoMCwgMCwgMCwgLjEpKTtcbn1cbi5jb250ZW50LWJveCA+IGg0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IC4yZW0gMCAuN2VtIDA7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4vKiAgIFNpbmdsZSA6IFJlbGF0ZWQgUG9zdHNcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucmVsYXRlZC1wb3N0cyB7XG5cbiAgLnJlbGF0ZWQtcG9zdHMtbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1sZWZ0OiAxJTtcbiAgfVxuXG4gIC5yZWxhdGVkLWFydGljbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMzMlO1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIH1cblxuICAucG9zdCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDAgLjAyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICB9XG4gIC5wb3N0LXRodW1ibmFpbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBhIHsgZGlzcGxheTogYmxvY2s7IGhlaWdodDogMTAwJSB9XG4gICAgaW1nIHsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IGF1dG87IG92ZXJmbG93OiBoaWRkZW47IHRyYW5zaXRpb246IGFsbCAuNHMgZWFzZS1vdXQ7IH1cbiAgfVxuICAucG9zdC1jb250ZW50IHtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgcGFkZGluZzogZW0oOXB4KSBlbSgxMnB4KTtcbiAgfVxuICAucG9zdC1jYXRlZ29yeSB7XG4gICAgbWFyZ2luLWJvdHRvbTogZW0oNHB4KTtcbiAgICBmb250LXNpemU6IGVtKDEzcHgpO1xuICAgIGNvbG9yOiAjNjY2O1xuICAgIGEge1xuICAgICAgY29sb3I6ICRsaW5rO1xuICAgICAgJjpob3ZlciB7IGNvbG9yOiAjNDQ0IH1cbiAgICB9XG4gIH1cbiAgLnBvc3QtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogZW0oMTUuNHB4KTtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIGZvbnQtZmFtaWx5OiAkbGF0bztcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG4gICAgYSB7IGRpc3BsYXk6IGJsb2NrOyBoZWlnaHQ6IDEwMCUgfVxuICB9XG5cbiAgLnBvc3Q6aG92ZXIge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHk6IDNweCwgJGJsdXI6IDNweCwgJGNvbG9yOiByZ2JhKDAsIDAsIDAsIC4xNSkpO1xuICAgIC5wb3N0LXRodW1ibmFpbCBpbWcge1xuICAgICAgb3BhY2l0eTogLjg7XG4gICAgfVxuICAgIC5wb3N0LXRpdGxlIHtcbiAgICAgIGNvbG9yOiAkbGluaztcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnBtYXgtbW9iaWxlKSB7XG4gICAgLnJlbGF0ZWQtcG9zdHMtbGlzdCB7XG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAucmVsYXRlZC1hcnRpY2xlIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJlbGF0ZWQgYTpob3ZlciB7XG4gICAgICAucG9zdC10aHVtYm5haWwgaW1nIHtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBvcGFjaXR5OiAuOTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyogICBTaW5nbGUgOiBQb3N0IE5hdmlnYXRpb25cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucG9zdC1uYXYge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR5OiAxcHgsICRibHVyOiAzcHgsICRjb2xvcjogcmdiYSgwLCAwLCAwLCAuMSkpO1xuICB1bCB7IGRpc3BsYXk6IGZsZXggfVxuICAucHJldiwgLm5leHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGZsZXg6IDE7XG4gIH1cbiAgLm5leHQgYSwgLnByZXYgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC42KTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC40cztcbiAgfVxuICAubmV4dCBhIHtcbiAgICBwYWRkaW5nOiAxMnB4IDQwcHggMTJweCAyNHB4O1xuICB9XG4gIC5wcmV2IGEge1xuICAgIHBhZGRpbmc6IDEycHggMjRweCAxMnB4IDQwcHg7XG4gIH1cbiAgLnBvc3QtdGh1bWJuYWlsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwOyByaWdodDogMDsgYm90dG9tOiAwOyBsZWZ0OiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgb3BhY2l0eTogLjU7XG4gICAgZmlsdGVyOiBibHVyKDNweCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgfVxuICAubmF2LXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogLjRlbTtcbiAgICBjb2xvcjogI2YwZjBmMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsIDAsIDAsIC42KTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC1mYW1pbHk6ICRsYXRvO1xuICB9XG4gIC5wb3N0LXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1zaGFkb3c6IDFweCAxcHggcmdiYSgwLCAwLCAwLCAuNSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgfVxuICAuY2hldnJvbi1yaWdodCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMHB4KTsgcmlnaHQ6IDE0cHg7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNmZmY7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gIH1cbiAgLmNoZXZyb24tbGVmdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMHB4KTsgbGVmdDogMTRweDtcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZmZmO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICB9XG4gIC5uZXh0IC5uYXYtdGl0bGUgeyByaWdodDogLThweCB9XG4gIC5wcmV2IC5uYXYtdGl0bGUgeyBsZWZ0OiAtOHB4IH1cbiAgLm5leHQgYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNTUpO1xuICAgIC5wb3N0LXRodW1ibmFpbCB7IGZpbHRlcjogYmx1cigycHgpOyB9XG4gICAgLmNoZXZyb24tcmlnaHQgeyByaWdodDogMThweDsgfVxuICB9XG4gIC5wcmV2IGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjU1KTtcbiAgICAucG9zdC10aHVtYm5haWwgeyBmaWx0ZXI6IGJsdXIoMnB4KTsgfVxuICAgIC5jaGV2cm9uLWxlZnQgeyBsZWZ0OiAxOHB4OyB9XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicG1heC1tb2JpbGUpIHtcbiAgLnBvc3QtbmF2IHVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubmV4dCBhLCAucHJldiBhIHtcbiAgICBwYWRkaW5nOiAxMnB4IDQwcHg7XG4gIH1cbn1cblxuLyogICBTaW5nbGUgOiBNdWx0aXBhZ2VzIE5hdmlnYXRpb25cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucG9zdC1wYWdlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDEwcHggYXV0byAxMHB4O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2RkZDtcbiAgY29sb3I6ICRsaW5rO1xuICBmb250LXdlaWdodDogYm9sZDtcblxuICBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvdHRvbTogLTJweDtcbiAgICBwYWRkaW5nOiA2cHggMTBweDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2RkZDtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXIgLjRzXG4gIH1cblxuICBsaSA+ICoge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zaXRpb246IGJvcmRlciAuNHM7XG4gIH1cbiAgJiA+IHNwYW4geyBjb2xvcjogIzAwMDsgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRsaW5rOyB9XG4gICYgPiBhOmhvdmVyID4gc3BhbiB7IGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkbGluazsgfVxufVxuXG4vKiAgIFNpbmdsZSA6IFNOUyBCdXR0b25cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2hhcmUtbGlzdC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uYmFsbG9vbi1idG4ge1xuICBmbGV4LWdyb3c6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuc2hhcmUge1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgaSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogY2FsYyg1MCUgLSAxLjJyZW0pOyB6LWluZGV4OiA5OTk7IGZvbnQtc2l6ZTogMi40cmVtOyB9XG4gIH1cbiAgLnNoYXJlLWlubmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmc6IC40ZW0gLjZlbTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCR5OiAxcHgsICRibHVyOiAxcHgpO1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIC5jb3VudCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwOyBib3R0b206IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgfVxuICAuY291bnQtaW5uZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDsgcmlnaHQ6IDA7XG4gICAgbWluLWhlaWdodDogMS4yZW07XG4gICAgbWluLXdpZHRoOiAxLjFlbTtcbiAgICBwYWRkaW5nOiAuNGVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDQ0O1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43KTtcbiAgICBmb250LXNpemU6IC45ZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1mYW1pbHk6ICRsYXRvO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gIH1cbiAgLnNoYXJlLWlubmVyOmhvdmVyIHsgb3BhY2l0eTogLjg7IGJveC1zaGFkb3c6IDAgMnB4IDNweCByZ2JhKDAsIDAsIDAsIC4yKSwgMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgLjEpIGluc2V0IH1cbiAgLmNvdW50LWlubmVyOmhvdmVyIHsgY29sb3I6ICNmZmY7IH1cbiAgJi50d2l0dGVyIC5zaGFyZS1pbm5lciB7IGJhY2tncm91bmQtY29sb3I6ICM2YmFjZTIgfVxuICAmLmZhY2Vib29rIC5zaGFyZS1pbm5lciB7IGJhY2tncm91bmQtY29sb3I6ICM0NDVkOTMgfVxuICAmLmdvb2dsZXBsdXMgLnNoYXJlLWlubmVyIHsgYmFja2dyb3VuZC1jb2xvcjogI2QzNjA1NCB9XG4gICYuaGF0ZW5hIC5zaGFyZS1pbm5lciB7IGJhY2tncm91bmQtY29sb3I6ICM0YzdlYzYgfVxuICAmLnBvY2tldCAuc2hhcmUtaW5uZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZTE1YzY5IH1cbiAgJi5saW5lIC5zaGFyZS1pbm5lciB7IGJhY2tncm91bmQtY29sb3I6ICM1MGMxNTAgfVxuICAmLmZlZWRseSAuc2hhcmUtaW5uZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjOTRiZTYxIH1cbiAgJjpmaXJzdC1vZi10eXBlIC5zaGFyZS1pbm5lciB7IGJvcmRlci1yYWRpdXM6IDJweCAwIDAgMnB4IH1cbiAgJjpsYXN0LW9mLXR5cGUgLnNoYXJlLWlubmVyIHsgYm9yZGVyLXJhZGl1czogMCAycHggMnB4IDAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7IC5zaGFyZS1saXN0LWNvbnRhaW5lciB7IGp1c3RpZnktY29udGVudDogY2VudGVyIH0gfVxuXG4vKiAgIFBhc3N3b3JkIExvY2tcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucG9zdC1wYXNzd29yZC1mb3JtIHtcbiAgcDpsYXN0LWNoaWxkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBsYWJlbCB7XG4gICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgaW5wdXRbdHlwZT1wYXNzd29yZF0ge1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIH1cbiAgICBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICBwYWRkaW5nOiA0cHggMTBweDtcbiAgICB9XG4gIH1cbn1cblxuXG4vKiAgIFNpbmdsZSA6IHBvc3QgZm9ybWF0c1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5mb3JtYXQtYXNpZGUgeyAucG9zdC10aXRsZS1ib3ggeyBkaXNwbGF5OiBub25lIH0gfVxuLmZvcm1hdC1hc2lkZSAucG9zdC1mb3JtYXQ6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTExXCI7IH1cbi5mb3JtYXQtZ2FsbGVyeSAucG9zdC1mb3JtYXQ6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWM1XCI7IH1cbi5mb3JtYXQtbGluayAucG9zdC1mb3JtYXQ6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGMxXCI7IH1cbi5mb3JtYXQtaW1hZ2UgLnBvc3QtZm9ybWF0OjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAzZVwiOyB9XG4uZm9ybWF0LXF1b3RlIC5wb3N0LWZvcm1hdDo6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMGRcIjsgfVxuLmZvcm1hdC1zdGF0dXMgLnBvc3QtZm9ybWF0OjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwNVwiIH1cbi5mb3JtYXQtdmlkZW8gLnBvc3QtZm9ybWF0OjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwOFwiOyB9XG4uZm9ybWF0LWF1ZGlvIC5wb3N0LWZvcm1hdDo6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMjhcIjsgfVxuLmZvcm1hdC1jaGF0IC5wb3N0LWZvcm1hdDo6YmVmb3JlIHsgY29udGVudDogXCJcXGYwODZcIjsgfVxuXG4vKiBjbGVhcmZpeCAqL1xuLmVudHJ5LWhlYWRlcjo6YWZ0ZXIsIC5lbnRyeS1jb250ZW50OjphZnRlciwgLmVudHJ5LWZvb3Rlcjo6YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBkaXNwbGF5OiBibG9jazsgY2xlYXI6IGJvdGggfVxuIixudWxsLCIucG9zdC1leGNlcnB0IHtcbiAgY29sb3I6ICNhYWE7XG4gIGZvbnQtc2l6ZTogLjg1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbmJvZHkuaG9tZSAjbWFpbiB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG5cbi8qICAgSW5kZXggOiBHcmlkIFZpZXdcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZ3JpZC12aWV3IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgcGFkZGluZzogMTZweCA4cHggMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAucG9zdCwgLnBhZ2Uge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMS42ZW07XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnBtYXgtbW9iaWxlKSB7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gd3JhcDtcbiAgICBwYWRkaW5nOiAyZW0gMjBweCAwO1xuICAgIC5wb3N0LCAucGFnZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAucG9zdC1pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMCA4cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2Utb3V0O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHk6IDFweCwgJGJsdXI6IDNweCwgJGNvbG9yOiByZ2JhKDAsIDAsIDAsIC4xKSk7XG4gIH1cbiAgLnBvc3QtbGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHg6IDAsICR5OiAxcHgsICRibHVyOiAwLCAkY29sb3I6IHJnYmEoMCwgMCwgMCwgLjA0KSk7XG4gIH1cblxuICAucG9zdC10aHVtYm5haWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzIGVhc2Utb3V0O1xuICAgIGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuNHMgZWFzZS1vdXQ7XG4gICAgfVxuICB9XG4gIC5wb3N0LWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogNnB4IDA7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICB9XG4gIC5wb3N0LWRhdGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDRweCAwO1xuICAgIGNvbG9yOiAjNzc3O1xuICAgIGZvbnQtc2l6ZTogLjllbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLnBvc3QtdGl0bGUge1xuICAgIG1hcmdpbjogNnB4IDA7XG4gICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICB9XG4gIC5wb3N0LWV4Y2VycHQge1xuICAgIG1hcmdpbjogMTBweCAwO1xuICB9XG5cbiAgLnBvc3QtbWV0YSB7XG4gICAgbWFyZ2luOiAxcHggMDtcbiAgICBwYWRkaW5nOiA0cHggMTVweDtcbiAgICBmb250LXNpemU6IC44ZW07XG4gIH1cbiAgLnBvc3QtY2F0ZWdvcnkgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAgNHB4O1xuICB9XG4gIC5wb3N0LW1ldGEgPiAqW2NsYXNzXj1wb3N0LV0geyBwYWRkaW5nLXJpZ2h0OiA2cHggfVxuICAucG9zdC1jYXRlZ29yeSB7XG4gICAgJjo6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMTRcIjsgcGFkZGluZy1yaWdodDogMCB9XG4gIH1cbiAgLnBvc3QtY29tbWVudCB7XG4gICAgYTo6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZTVcIjsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBwYWRkaW5nLXJpZ2h0OiAuMmVtOyBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7IH1cbiAgfVxuXG4gIC8vIEhvdmVyIEFuaW1hdGlvbnNcbiAgLnBvc3QtaW5uZXI6aG92ZXIge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHk6IDZweCwgJGJsdXI6IDEwcHgsICRzcHJlYWQ6IDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xcHgpO1xuICB9XG4gIC5wb3N0LWlubmVyIGE6aG92ZXIge1xuICAgIC5wb3N0LXRodW1ibmFpbCBpbWcge1xuICAgICAgZmlsdGVyOiBibHVyKDFweCk7XG4gICAgfVxuICAgIC5wb3N0LXRpdGxlIHtcbiAgICAgIGNvbG9yOiAkbGluaztcbiAgICB9XG4gIH1cblxufVxuXG4vKiAgIEluZGV4IDogU3RhbmRhcmQgVmlld1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zdGFuZGFyZC12aWV3IHtcbiAgcGFkZGluZzogMjBweCAxMHB4O1xuXG4gIC5wb3N0LCAucGFnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuICAucG9zdC1pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgdHJhbnNpdGlvbjogLjNzIGFsbDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCR5OiAxcHgsICRibHVyOiA0cHgsICRjb2xvcjogcmdiYSgwLCAwLCAwLCAuMSkpO1xuICB9XG4gIC5wb3N0LWhlYWRlciB7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5wb3N0LXRodW1ibmFpbCB7XG4gICAgZmxleC1zaHJpbms6IDE7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgdHJhbnNpdGlvbjogLjNzIGFsbDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRibHVyOiAzcHgpO1xuICAgIGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIH1cbiAgfVxuICAucG9zdC10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICBmb250LXNpemU6IDEuNGVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgYSB7IGRpc3BsYXk6IGJsb2NrOyB0cmFuc2l0aW9uOiAuM3MgYWxsOyB9XG4gIH1cbiAgLnBvc3QtY29udGVudCB7XG4gICAgZmxleDogMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgfVxuICAucG9zdC1tZXRhIHtcbiAgICBtYXJnaW46IDEycHggMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuICAucG9zdC1leGNlcnB0IHtcbiAgICBtYXJnaW46IDEycHggMDtcbiAgfVxuICAubW9yZSB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgfVxuICAucG9zdC1pbm5lcjpob3ZlciB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkeDogMCwgJHk6IDAsICRibHVyOiAycHgsICRzcHJlYWQ6IDFweCwgJGNvbG9yOiByZ2JhKDAsIDAsIDAsIC4yMikpO1xuICAgIC5wb3N0LXRpdGxlIHtcbiAgICAgIGNvbG9yOiAkbGluaztcbiAgICB9XG4gICAgLnBvc3QtdGh1bWJuYWlsIHtcbiAgICAgIG9wYWNpdHk6IC45O1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicG1heC1tb2JpbGUpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCk7XG4gICAgLnBvc3QsIC5wYWdlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YwZjBmMDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICAgIC5wb3N0LWlubmVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweCArIDE1cHggKyAxMDBweDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICAgIC5wb3N0LXRodW1ibmFpbCB7XG4gICAgICBtYXgtd2lkdGg6IDEwMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xMTVweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICB9XG4gICAgLnBvc3QtbWV0YSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICAucG9zdC1leGNlcnB0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIC5tb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIHVsLnBhZ2UtbnVtYmVycyB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vKiAgIEluZGV4IDogUGFnZSBOYXZpZ2F0aW9uXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xudWwucGFnZS1udW1iZXJzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvIDEwcHg7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZGRkO1xuICBjb2xvcjogJGxpbms7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvdHRvbTogLTJweDtcbiAgfVxuXG4gIGxpID4gKiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogNnB4IDEwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkZGQ7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyIC40cztcbiAgfVxuICBsaSA+IHNwYW4geyBjb2xvcjogIzQ0NCB9XG4gIHNwYW4ucGFnZS1udW1iZXJzLmN1cnJlbnQgeyBjb2xvcjogIzAwMDsgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRsaW5rOyB9XG4gIGEucGFnZS1udW1iZXJzOmhvdmVyIHsgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRsaW5rOyB9XG59XG4iLCIjaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDA7IHJpZ2h0OiAwOyBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuNHM7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHg6IDFweCwgJGJsdXI6IDFweCwgJGNvbG9yOiByZ2JhKDAsIDAsIDAsIC40KSk7XG4gICYuc3RpY2t5IHsgcG9zaXRpb246IGZpeGVkOyBAaW5jbHVkZSBib3gtc2hhZG93KCRibHVyOiA2cHgpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicG1heC1tb2JpbGUpIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIH1cbn1cbi5oZWFkZXItaW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICBmb250LXNpemU6IC45NGVtO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uc2l0ZS1pbmZvIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgZmxleC1ncm93OiAxO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAuNHM7XG59XG5cbi5zaXRlLXRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogZW0oMzBweCk7XG4gIGNvbG9yOiAjNDQ0O1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBhIHsgZGlzcGxheTogYmxvY2sgfVxuICBpbWcgeyBkaXNwbGF5OiBibG9jazsgbWF4LWhlaWdodDogNjAlOyBoZWlnaHQ6IGF1dG87IG1hcmdpbjogMCBhdXRvOyB9XG59XG4uc2l0ZS1kZXNjcmlwdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDJyZW07XG4gIGNvbG9yOiAjNjY2O1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5zaXRlLWluZm8geyBmbGV4LWZsb3c6IHJvdyB3cmFwIH1cbiAgLnNpdGUtZGVzY3JpcHRpb24geyBwYWRkaW5nOiAuNGVtIDFlbSAwOyB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oZWFkZXItaW5uZXIgeyBwYWRkaW5nLXJpZ2h0OiAwIH1cbiAgLnNpdGUtaW5mbyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA1MHB4KTtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDUwcHgpO1xuICB9XG4gIC5oZWFkZXItbWVudS1lbmFibGVkIC5zaXRlLWluZm8ge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMDBweCk7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxMDBweCk7XG4gIH1cbiAgLnNpdGUtZGVzY3JpcHRpb24ge1xuICAgIHBhZGRpbmc6IDAgZW0oMTJweCkgMDtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICB9XG59XG5cbi5oZWFkZXItY29sdW1uIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuc2l0ZS1pbmZvIHsgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgd2lkdGg6IDEwMCU7IH1cbiAgICAuaGVhZGVyLWlubmVyIHsgZmxleC1mbG93OiBjb2x1bW4gd3JhcDsgfVxuICB9XG59XG5cbi5oZWFkZXItcm93IHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuc2VhcmNoLXRvZ2dsZSB7IGhlaWdodDogMTAwJSB9XG4gICAgLmhlYWRlci1pbm5lciB7IGZsZXgtZmxvdzogcm93IG5vd3JhcDsgfVxuICAgICNoZWFkZXItbWVudSB7IHdpZHRoOiBhdXRvOyB9XG4gIH1cbiAgLnN0aWNreSAuc2l0ZS1pbmZvIHtcbiAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA3ODJweCkgeyBib2R5LmFkbWluLWJhci5oZWFkZXItcm93IHsgI2hlYWRlci5zdGlja3kgeyBwYWRkaW5nLXRvcDogNDZweCB9IH0gfVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzgzcHgpIHtcbiAgYm9keS5hZG1pbi1iYXIuaGVhZGVyLXJvdyB7ICNoZWFkZXIuc3RpY2t5IHsgcGFkZGluZy10b3A6IDMycHggfSB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnBtYXgtbW9iaWxlKSB7IC5zaXRlLWluZm8geyBwYWRkaW5nLXJpZ2h0OiAyMHB4OyBwYWRkaW5nLWxlZnQ6IDIwcHggfSB9XG5cblxuLyogICBIZWFkZXIgOiBOYXZpZ2F0aW9uIE1lbnVcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jaGVhZGVyLW1lbnUgeyBhbGlnbi1zZWxmOiBjZW50ZXI7IHdpZHRoOiAxMDAlIH1cbi5tZW51LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG5cbiAgICAmI3RvcC1uYXYgeyBwYWRkaW5nLXJpZ2h0OiA1MHB4IH1cblxuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAxNXB4IDEycHg7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4ycywgYmFja2dyb3VuZC1jb2xvciAuMnM7XG4gICAgfVxuICAgIGxpOmhvdmVyID4gYSB7XG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAxKTtcbiAgICB9XG5cbiAgICAvLyBTdWIgTWVudVxuICAgIC5zdWItbWVudSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwOyBsZWZ0OiAwOyB6LWluZGV4OiAxMDAwO1xuICAgICAgcGFkZGluZzogNHB4IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgY29sb3I6ICM1NTU7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCR5OiAxcHgsICRibHVyOiAycHgpO1xuICAgICAgbGkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgJiA+IGEge1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAxNHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGxpOmhvdmVyID4gLnN1Yi1tZW51IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB0b3A6IDUwcHg7XG4gICAgfVxuICAgIGxpID4gLnN1Yi1tZW51ID4gbGk6aG92ZXIgPiAuc3ViLW1lbnUge1xuICAgICAgdG9wOiAtNHB4OyBsZWZ0OiAyMDBweDtcbiAgICB9XG4gICAgLnN1Yi1tZW51IGxpOmhvdmVyID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGI0YjRiO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuXG4gICAgJiA+IGxpID4gYTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogNTAlOyBib3R0b206IDExcHg7IGxlZnQ6IDUwJTtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG4gICAgfVxuICAgICYgPiBsaTpob3ZlciA+IGE6OmJlZm9yZSB7XG4gICAgICByaWdodDogMTVweDsgbGVmdDogMTVweDtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICAgICYgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IC0zcHg7IGxlZnQ6IDNweDtcbiAgICAgIHdpZHRoOiA2cHg7IGhlaWdodDogNnB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbiAgICB9XG4gICAgJiA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGE6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiA2cHg7IGxlZnQ6IDJweDtcbiAgICAgIHdpZHRoOiA2cHg7IGhlaWdodDogNnB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgfVxuICAgICYgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyID4gYTo6YWZ0ZXIgeyB0b3A6IDA7IHRyYW5zZm9ybTogcm90YXRlKDIyNWRlZyk7IH1cbiAgICAmID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyID4gYTo6YWZ0ZXIge31cbiAgfVxuXG59XG5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcblxuICAjaGVhZGVyLW1lbnUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdG9wOiAwO1xuICAgIGhlaWdodDogMTIwdmg7IHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgI2hlYWRlci1uYXYge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7IHJpZ2h0OiAwOyB6LWluZGV4OiAxMDAzO1xuICAgIHdpZHRoOiA4MCU7IGhlaWdodDogMTAwdmg7XG4gICAgcGFkZGluZy10b3A6IGVtKDk2cHgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MTU3NWQ7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgICYubWVudS1jb250YWluZXIge1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkbGluaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWVudS1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAuOGVtIC45ZW07XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSg2OCwgNjgsIDY4LCAuMSk7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgfVxuICAgIH1cbiAgICBsaSA+IGEge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTE5LCAxMTksIDExOSwgMC43KTtcbiAgICB9XG4gICAgJiA+IGxpOmxhc3QtY2hpbGQgPiBhIHsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTE5LCAxMTksIDExOSwgMC43KTt9XG4gICAgLnN1Yi1tZW51IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tbGVmdDogMmVtO1xuICAgIH1cbiAgICAmID4gbGkgPiBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgICBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDJweDsgbGVmdDogMnB4O1xuICAgICAgYm9yZGVyOiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgfVxuICB9XG5cbn1cblxuLyogICBIZWFkZXIgOiBIZWFkZXIgdG9nZ2xlc1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5uYXYtdG9nZ2xlIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDsgcG9zaXRpb246IHJlbGF0aXZlOyByaWdodDogMDsgd2lkdGg6IDUwcHg7IGhlaWdodDogYXV0bzsgY3Vyc29yOiBwb2ludGVyOyB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAudG9wLCAubWlkZGxlLCAuYm90dG9tIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNTAlOyBsZWZ0OiAxOSU7IHotaW5kZXg6IDEwMDE7IHdpZHRoOiA2MiU7IGhlaWdodDogMXB4OyBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7IHRyYW5zaXRpb246IGFsbCAuNHM7XG4gIH1cbiAgLnRvcCB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7IH1cbiAgLm1pZGRsZSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIC5ib3R0b20geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7IH1cbiAgJi5vcGVuIHtcbiAgICAudG9wIHsgaGVpZ2h0OiAxcHg7IHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlWSgwcHgpOyBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4OyB9XG4gICAgLm1pZGRsZSB7IGhlaWdodDogMXB4OyBvcGFjaXR5OiAwOyB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgICAuYm90dG9tIHsgaGVpZ2h0OiAxcHg7IHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGVZKDBweCk7IGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7IH1cbiAgfVxufVxuLnNlYXJjaC10b2dnbGUge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoOyBwb3NpdGlvbjogcmVsYXRpdmU7IHRvcDogMDsgd2lkdGg6IDUwcHg7IGhlaWdodDogYXV0bzsgY3Vyc29yOiBwb2ludGVyOyB0cmFuc2l0aW9uOiBhbGwgLjRzIGVhc2UtaW47XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSg2OCwgNjgsIDY4LCAuMyk7XG4gIC5pY29uLnNlYXJjaCB7IHdpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7IHRvcDogY2FsYyg1MCUgLSAxMHB4KTsgbGVmdDogY2FsYyg1MCUgLSAxMnB4KTsgYm9yZGVyLWNvbG9yOiAjNDQ0OyB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAgICY6OmJlZm9yZSB7IHRvcDogMjBweDsgbGVmdDogOXB4OyBoZWlnaHQ6IDlweDsgYmFja2dyb3VuZC1jb2xvcjogIzQ0NDsgdHJhbnNpdGlvbjogYWxsIC40czsgfVxuICB9XG4gICYub3BlbiB7XG4gICAgLmljb24uc2VhcmNoIHsgYm9yZGVyLWNvbG9yOiAjMDAwO1xuICAgICAgJjo6YmVmb3JlIHsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDt9XG4gICAgfVxuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgcmlnaHQ6IDA7IGhlaWdodDogMTAwJTsgfVxufVxuLmhlYWRlci1zZWFyY2hiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlIC0gMjBweCk7IHJpZ2h0OiA2cHg7XG4gIHotaW5kZXg6IDEwMDE7XG4gIG1heC13aWR0aDogMzIwcHg7XG4gIHdpZHRoOiA4MCU7XG4gIC5zZWFyY2gtZm9ybSAuc2VhcmNoLWlubmVyIHsgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDsgYm9yZGVyLXJhZGl1czogMXB4IH1cbiAgLnNlYXJjaC1zdWJtaXQgeyBkaXNwbGF5OiBub25lIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGJwbWluLXBjKSB7XG4gIGJvZHkuaGVhZGVyLWNvbHVtbjpub3QoLmhlYWRlci1tZW51LWVuYWJsZWQpIC5zZWFyY2gtdG9nZ2xlIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHsgLmhlYWRlci1zZWFyY2hiYXIgeyBkaXNwbGF5OiBub25lIH0gfSAvLyBNb2JpbGVcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7IC5uYXYtdG9nZ2xlLCAuaGVhZGVyLXNlYXJjaGJhciB7IGRpc3BsYXk6IG5vbmUgfSB9IC8vIFBDXG5cblxuLyogICBIZWFkZXI6IFRvZ2dsZSBBbmltYXRpb25cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjaGVhZGVyLW1lbnUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIC5uYXYtdG9nZ2xlLmhlYWRlci1tZW51Lm9wZW4gKyAjaGVhZGVyLW1lbnUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC40cywgdmlzaWJpbGl0eSAuNHM7XG4gIH1cbiAgI2hlYWRlci1tZW51ID4gI2hlYWRlci1uYXYge1xuICAgIGFuaW1hdGlvbjogZmFkZU91dExlZnQgLjRzIGJvdGg7XG4gIH1cbiAgLm5hdi10b2dnbGUuaGVhZGVyLW1lbnUub3BlbiArICNoZWFkZXItbWVudSA+ICNoZWFkZXItbmF2IHtcbiAgICBhbmltYXRpb246IGZhZGVJblJpZ2h0IC40cyBib3RoO1xuICB9XG59XG4iLCIjZm9vdGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiA4MHB4O1xuICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gIGJhY2tncm91bmQ6ICRhY2NlbnQ7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC42KTtcblxuICAuY29udGFpbmVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC45KTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpO1xuICAgIH1cbiAgfVxuXG4gIC5jb3B5cmlnaHQge1xuICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgfVxuXG4gIC5zb2NpYWwtbGlua3Mge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBwYWRkaW5nOiAwIC43ZW07XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxufVxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRicG1heC1tb2JpbGUpIGFuZCAobWF4LXdpZHRoOiAkYnBtYXgtdGFibGV0KSB7XG5cbiAgI2Zvb3RlciB7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbiAgfVxuXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicG1heC1tb2JpbGUpIHtcblxuICAjZm9vdGVyIHtcbiAgICAuY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWZsb3c6IGNvbHVtbiB3cmFwO1xuICAgIH1cbiAgICAuc29jaWFsLWxpbmtzIHtcbiAgICAgIHBhZGRpbmctdG9wOiAuOWVtO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgfVxuICAgIC5jb3B5cmlnaHQge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxuXG59XG4iLCIvKiAgIFNpZGViYXIgYW5kIHdpZGdldHMgc3R5bGluZ1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zaWRlYmFyIHtcbiAgcGFkZGluZzogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkeTogMXB4LCAkYmx1cjogM3B4LCAkY29sb3I6IHJnYmEoMCwgMCwgMCwgLjA1KSk7XG5cbiAgLndpZGdldCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCR5OiAxcHgsICRibHVyOiAzcHgsICRjb2xvcjogcmdiYSgwLCAwLCAwLCAuMSkpO1xuICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDAgfVxuICB9XG5cbn1cblxuLy8gVGFibGV0ICYmIE1vYmlsZVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJwbWF4LXRhYmxldCkge1xuICAuc2lkZWJhciB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgfVxuICAuc2lkZWJhci1pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG59XG4vLyBUYWJsZXRcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicG1heC10YWJsZXQpIGFuZCAobWluLXdpZHRoOiAkYnBtaW4tdGFibGV0KSB7XG4gIC5zaWRlYmFyIC53aWRnZXQge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgIG1hcmdpbjogNXB4O1xuICB9XG59XG4vLyBNb2JpbGVcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicG1heC1tb2JpbGUpIHtcbiAgLnNpZGViYXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctbGVmdDogMWVtO1xuXG4gICAgLndpZGdldCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxufVxuXG5cbi8qICAgU2lkZWJhciA6IFdpZGdldFxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi53aWRnZXQge1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICBwYWRkaW5nOiAyMHB4O1xuICBmb250LXNpemU6IC45NGVtO1xuXG4gIC53aWRnZXQtdGl0bGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAuOGVtO1xuICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiAjODg4O1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICB9XG4gIH1cblxuICBzZWxlY3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDRweCA2cHg7XG4gIH1cbiAgb3B0aW9uIHtcbiAgICBwYWRkaW5nOiA0cHggMDtcbiAgfVxuXG4gICZfcmVjZW50X2VudHJpZXMge1xuICAgIGxpIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAxMHB4IDhweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICB9IGxpOmZpcnN0LW9mLXR5cGUgYSB7IGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyIH1cbiAgICAucG9zdC1kYXRlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6ICM0NDQ7XG4gICAgfVxuICB9XG4gICZfcmVjZW50X2NvbW1lbnRzIHtcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmc6IDEwcHggOHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXI7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIH0gbGk6Zmlyc3Qtb2YtdHlwZSB7IGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyIH1cbiAgfVxuICAmX2FyY2hpdmUge1xuICAgIGxpIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAxMHB4IDhweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICB9IGxpOmZpcnN0LW9mLXR5cGUgYSB7IGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyIH1cbiAgICAuY291bnQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIGxpIGE6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDczXCI7IHBvc2l0aW9uOiByZWxhdGl2ZTsgdG9wOiAtMXB4OyBwYWRkaW5nLXJpZ2h0OiAuNWVtOyBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7IGZvbnQtc2l6ZTogLjhlbSB9XG5cbiAgfVxuICAmX2NhdGVnb3JpZXMge1xuICAgIGxpIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAxMHB4IDhweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICY6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTE1XCI7IHBhZGRpbmctcmlnaHQ6IC40ZW07IGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTsgZm9udC1zaXplOiAuOGVtIH1cbiAgICB9IGxpOmZpcnN0LW9mLXR5cGUgYSB7IGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyIH1cbiAgICAuY291bnQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIC5jaGlsZHJlbiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICAgICY6Zmlyc3Qtb2YtdHlwZSBhIHsgYm9yZGVyLXRvcDogMCB9XG4gICAgICBsaSBhOjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExNFwiOyBwYWRkaW5nLXJpZ2h0OiAuNGVtOyBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7IGZvbnQtc2l6ZTogLjhlbSB9XG4gICAgfVxuICB9XG4gICZfdGFnX2Nsb3VkIHtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogLjJlbSAuMDNlbTtcbiAgICAgIHBhZGRpbmc6IDRweCA2cHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIC44KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBmb250LXNpemU6IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHk6IDFweCwgJGJsdXI6IDFweCwgJGNvbG9yOiByZ2JhKDAsIDAsIDAsIC4xKSk7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHk6IDJweCwgJGJsdXI6IDFweCwgJGNvbG9yOiByZ2JhKDAsIDAsIDAsIC4zKSk7XG4gICAgICB9XG4gICAgICAuY291bnQge1xuICAgICAgICBtYXJnaW4tbGVmdDogLjJlbTtcbiAgICAgICAgY29sb3I6ICM3Nzc7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBMYXRvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiAuOWVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX3BhZ2VzIHtcbiAgICBsaSBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZzogMTBweCA4cHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlcjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgfSBsaTpmaXJzdC1vZi10eXBlIGEgeyBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlciB9XG4gICAgLmNoaWxkcmVuIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMWVtO1xuICAgICAgJjpmaXJzdC1vZi10eXBlIGEgeyBib3JkZXItdG9wOiAwIH1cbiAgICB9XG4gIH1cbiAgJl9uYXZfbWVudSB7XG4gICAgbGkgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmc6IDEwcHggOHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXI7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIH0gbGk6Zmlyc3Qtb2YtdHlwZSBhIHsgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXIgfVxuICAgIC5zdWItbWVudSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICAgICY6Zmlyc3Qtb2YtdHlwZSBhIHsgYm9yZGVyLXRvcDogMCB9XG4gICAgfVxuICB9XG4gICZfbWV0YSB7XG4gICAgbGkgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmc6IDEwcHggOHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXI7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIH0gbGk6Zmlyc3Qtb2YtdHlwZSBhIHsgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXIgfVxuICB9XG4gICN3cC1jYWxlbmRhciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYSB7IGNvbG9yOiAkbGluazsgfVxuICAgIGE6aG92ZXIgeyBjb2xvcjogJGhvdmVyOyB9XG4gICAgY2FwdGlvbiB7IG1hcmdpbi1ib3R0b206IC40ZW07IH1cbiAgICB0Ym9keSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBhIHsgQGluY2x1ZGUgYm94LXNoYWRvdygkeDogMCwgJHk6IDFweCwgJGJsdXI6IDAsICRjb2xvcjogY3VycmVudENvbG9yKTsgfVxuICAgICAgYTpob3ZlciB7IEBpbmNsdWRlIGJveC1zaGFkb3coJHg6IDAsICR5OiAycHgsICRibHVyOiAwLCAkY29sb3I6ICMwMDApO31cbiAgICB9XG4gIH1cbiAgJl9yc3Mge1xuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZzogMTBweCA4cHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlcjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgfSBsaTpmaXJzdC1vZi10eXBlIHsgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXIgfVxuXG4gIH1cblxuICAud2lkZ2V0cy1saXN0LWxheW91dCBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBpbWcgeyB0cmFuc2l0aW9uOiBhbGwgLjJzOyB9XG4gIH1cbiAgLndpZGdldHMtbGlzdC1sYXlvdXQgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgaW1nLndpZGdldHMtbGlzdC1sYXlvdXQtYmxhdmF0YXIge1xuICAgICAgbWF4LXdpZHRoOiAxMDBweDtcbiAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG4gICAgfVxuICB9XG4gIC53aWRnZXRzLWxpc3QtbGF5b3V0IC53aWRnZXRzLWxpc3QtbGF5b3V0LWxpbmtzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAuNmVtIC41ZW0gMDtcbiAgfVxuICAud2lkZ2V0cy1saXN0LWxheW91dCAud2lkZ2V0cy1saXN0LWxheW91dC1saW5rcyBhIHtcbiAgICBjb2xvcjogIzQ0NDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xuICB9XG4gIC53aWRnZXRzLWxpc3QtbGF5b3V0IGxpOmhvdmVyIHtcbiAgICBhIHsgY29sb3I6ICRsaW5rOyB9XG4gICAgaW1nIHsgb3BhY2l0eTogLjggfVxuICB9XG5cblxuXG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJwbWF4LW1vYmlsZSkge1xuXG4gICAgLndpZGdldC10aXRsZSB7XG4gICAgfVxuXG4gIH1cblxufVxuIiwiLmNvbW1lbnQtdGFibWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkZGQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAudGFiaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvdHRvbTogLTJweDtcbiAgICBmb250LXNpemU6IC45NGVtO1xuICB9XG4gIC50YWJpdGVtID4gYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IC41ZW0gMS4xZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkZGQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgfVxuICAudGFiaXRlbTpub3QoLmFjdGl2ZSk6aG92ZXIgPiBhIHtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2JiYjtcbiAgfVxuICAuYWN0aXZlID4gYSB7IGNvbG9yOiAkbGluazsgfVxuICAuY291bnQge1xuICAgIG1hcmdpbi1sZWZ0OiAuNGVtO1xuICAgIHBhZGRpbmc6IDAgLjI4ZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbiAgICBjb2xvcjogIzY2NjtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgZm9udC1zaXplOiAuOTRlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuICAudGFiaXRlbSA+IGFbaHJlZl49JyNjb21tZW50LWxpc3QnXTo6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNzVcIjsgcGFkZGluZy1yaWdodDogLjJlbTsgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lOyB9XG4gIC50YWJpdGVtID4gYVtocmVmXj0nI3BpbmctbGlzdCddOjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA2NFwiOyBwYWRkaW5nLXJpZ2h0OiAuMmVtOyBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7IH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzRweCkge1xuICAgIC50YWJpdGVtIHtcbiAgICAgIGZvbnQtc2l6ZTogLjg4ZW07XG4gICAgfVxuICAgIC50YWJpdGVtID4gYSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAuNmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAuNmVtO1xuICAgIH1cbiAgfVxufVxuXG4jY29tbWVudC1saXN0IHtcblxuICAuY29tbWVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmNvbW1lbnQtYm9keSB7XG4gICAgcGFkZGluZzogMS42ZW0gMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2YwZjBmMDtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICB9XG4gICYgPiBsaTpmaXJzdC1jaGlsZCAuY29tbWVudC1ib2R5IHsgYm9yZGVyLXRvcC1zdHlsZTogbm9uZTsgfVxuICAmID4gLmNvbW1lbnQtYm9keTpsYXN0LWNoaWxkICB7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjdmN2Y3OyB9XG5cbiAgLmNvbW1lbnQtbWV0YSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS42ZW07XG4gICAgY29sb3I6ICM4ODg7XG4gICAgZm9udC1zaXplOiAuOTZlbTtcbiAgICBhIHsgY29sb3I6ICM4ODg7IGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICBhOmhvdmVyIHsgY29sb3I6ICR0ZXh0OyB9XG4gIH1cbiAgLmNvbW1lbnQtYXV0aG9yIC5hdmF0YXIge1xuICAgIHdpZHRoOiA0MnB4OyBoZWlnaHQ6IGF1dG87XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG4gIC5jb21tZW50LWF1dGhvciAuZm4ge1xuICAgIGNvbG9yOiAkdGV4dDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgYSB7IGNvbG9yOiAkbGluazsgYm94LXNoYWRvdzogMCAxcHggMCAwIGN1cnJlbnRDb2xvcjsgfVxuICAgIGE6aG92ZXIgeyBjb2xvcjogJHRleHQ7IGJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDAwOyB9XG4gIH1cbiAgLmJ5cG9zdGF1dGhvciA+IGFydGljbGUgLmZuIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlxcZjAwN1wiO1xuICAgICAgbWFyZ2luOiAwIC4yZW07XG4gICAgICBjb2xvcjogIzY2NjczYjtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImZvbnRBd2Vzb21lXCI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cbiAgfVxuICAuc2F5cyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7IGhlaWdodDogMXB4O1xuICAgIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIC5lZGl0LWxpbms6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCIgLyBcIjtcbiAgICBwYWRkaW5nOiAwIC40ZW07XG4gICAgY29sb3I6ICNhYWE7XG4gIH1cblxuICAuY29tbWVudC1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yZW07XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZjBmMGYwO1xuICB9XG5cbiAgLmNoaWxkcmVuIHtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgfVxuXG4gIC5jaGlsZHJlbiA+IGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNmVtO1xuICB9XG5cbiAgLnJlcGx5IGEge1xuICAgIGNvbG9yOiAjOTk5O1xuICAgIGZvbnQtc2l6ZTogZW0oMTRweCk7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAmOmhvdmVyIHsgY29sb3I6ICMwMDA7IH1cbiAgfVxufVxuXG4jcGluZy1saXN0IHtcbiAgcGFkZGluZzogMjBweCAwO1xuICAuY29tbWVudC1ib2R5IHtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG4gIH1cbiAgLmVkaXQtbGluazo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIiAvIFwiO1xuICAgIHBhZGRpbmc6IDAgLjRlbTtcbiAgfVxuICAuZWRpdC1saW5rIGEge1xuICAgIGNvbG9yOiAjODg4O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuLy8gUmVwbHkgc3R5bGVcbiNyZXNwb25kIHtcbiAgcGFkZGluZzogMS42ZW0gMDtcblxuICAuY29tbWVudC1mb3JtIHtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgYmFja2dyb3VuZDogJGJnLWNvbG9yO1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogLjRlbTtcbiAgfVxuXG4gIC5mb3JtLXN1Ym1pdCB7XG4gICAgbWFyZ2luLXRvcDogLjZlbTtcbiAgfVxuXG4gIC5sb2dnZWQtaW4tYXMge1xuICAgIGNvbG9yOiAjNjY2O1xuICAgIGZvbnQtc2l6ZTogLjk1ZW07XG4gICAgYTpob3ZlciB7IGNvbG9yOiAkbGluayB9XG4gIH1cblxuICAuY29tbWVudC1ub3RlcyB7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgZm9udC1zaXplOiAuOTVlbTtcbiAgfVxuXG4gICNyZXBseS10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLjRlbTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgc21hbGwgeyBmb250LXdlaWdodDogNDAwOyBmb250LXNpemU6IC44ZW0gfVxuICB9XG5cbiAgbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgdGV4dGFyZWEge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTQwcHg7XG4gICAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgfVxuICBpbnB1dFt0eXBlPXRleHRdLCBpbnB1dFt0eXBlPWVtYWlsXSwgaW5wdXRbdHlwZT11cmxdIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNjAlO1xuICAgIHBhZGRpbmc6IDZweCA4cHg7XG4gIH1cbiAgaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgICBwYWRkaW5nOiA4cHg7XG4gIH1cblxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicG1heC1tb2JpbGUpIHtcbiAgICBpbnB1dFt0eXBlPXRleHRdIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgfVxuXG4gIH1cblxufVxuXG4uY29tbWVudC1wYWdlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDEwcHggYXV0byAxMHB4O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2RkZDtcbiAgY29sb3I6ICRsaW5rO1xuICBmb250LXdlaWdodDogYm9sZDtcblxuICBzcGFuLCBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvdHRvbTogLTJweDtcbiAgICBwYWRkaW5nOiA2cHggMTBweDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2RkZDtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXIgLjRzXG4gIH1cblxuICBzcGFuIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkbGluaztcbiAgICBjb2xvcjogIzAwMDtcbiAgfVxuXG4gICoge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zaXRpb246IGJvcmRlciAuNHM7XG4gIH1cbiAgJiA+IGE6aG92ZXIgeyBib3JkZXItYm90dG9tOiAycHggc29saWQgJGxpbms7IH1cbn1cblxuLmNvbW1lbnQtYm9keSB7XG5cbiAgYSB7IGNvbG9yOiAkbGluazsgYm94LXNoYWRvdzogMCAxcHggMCAwIGN1cnJlbnRDb2xvciB9XG4gIGE6aG92ZXIgeyBjb2xvcjogJGhvdmVyOyBib3gtc2hhZG93OiAwIDJweCAwIDAgIzAwMCB9XG4gIGR0IHsgZm9udC13ZWlnaHQ6IGJvbGQgfVxuICBkZCB7IG1hcmdpbi1ib3R0b206IDFlbSB9XG4gIGhyIHsgbWFyZ2luOiAxZW0gMDsgfVxuICBpZnJhbWUgeyBtYXJnaW4tYm90dG9tOiAxZW0gfVxuICBwIHsgbWFyZ2luLWJvdHRvbTogMWVtIH1cbiAgcCA+IGlmcmFtZSB7IG1hcmdpbi1ib3R0b206IDAgfVxuXG4gIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIGgxIHtcbiAgICBtYXJnaW46IDEuOGVtIDAgMWVtO1xuICB9XG4gIGgyIHtcbiAgICBtYXJnaW46IDEuNmVtIDAgMWVtO1xuICB9XG4gIGgzIHtcbiAgICBtYXJnaW46IDEuNWVtIDAgMWVtO1xuICB9XG4gIGg0IHtcbiAgICBtYXJnaW46IDEuNGVtIDAgLjllbTtcbiAgfVxuICBoNSB7XG4gICAgbWFyZ2luOiAxLjNlbSAwIC44ZW07XG4gIH1cbiAgaDYge1xuICAgIG1hcmdpbjogMS4yZW0gMCAuOGVtO1xuICB9XG5cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IHNxdWFyZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgfVxuICBvbCB7XG4gICAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgfVxuXG4gIGJsb2NrcXVvdGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgcGFkZGluZzogMTBweCAxMHB4IDEwcHggNDhweDtcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHk6IDFweCwgJGJsdXI6IDNweCwgJGNvbG9yOiByZ2JhKDAsIDAsIDAsIC4xKSk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMTBkXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTBweDsgbGVmdDogMTJweDtcbiAgICAgIGNvbG9yOiAjYWFhO1xuICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICB9XG4gIH1cblxuICBwcmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDFlbSAwO1xuICAgIHBhZGRpbmc6IDFlbSAxLjJlbTtcbiAgICBiYWNrZ3JvdW5kOiAkYWNjZW50O1xuICAgIGNvbG9yOiAjRTVFNUVCO1xuICAgIHdoaXRlLXNwYWNlOiBwcmU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgZm9udC1zaXplOiAuOTZlbTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIGZvbnQtZmFtaWx5OiAnU291cmNlIENvZGUgUHJvJywgTW9uYWNvLCBDb25zb2xhcywgbW9ub3NwYWNlO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHk6IDFweCwgJGJsdXI6IDNweCwgJGNvbG9yOiByZ2JhKDAsIDAsIDAsIC4xKSk7XG4gIH1cbiAgcHJlID4gY29kZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3aGl0ZS1zcGFjZTogaW5oZXJpdDtcbiAgfVxuICBjb2RlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwO1xuICAgIHBhZGRpbmc6IDAgM3B4O1xuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgICBmb250LXNpemU6IC45ZW07XG4gICAgZm9udC1mYW1pbHk6ICdTb3VyY2UgQ29kZSBQcm8nLCBNb25hY28sIENvbnNvbGFzLCBtb25vc3BhY2U7XG4gIH1cbiAga2JkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwO1xuICAgIHBhZGRpbmc6IDAgM3B4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRhY2NlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xuICAgIGZvbnQtc2l6ZTogLjllbTtcbiAgICBmb250LWZhbWlseTogJ1NvdXJjZSBDb2RlIFBybycsIE1vbmFjbywgQ29uc29sYXMsIG1vbm9zcGFjZTtcbiAgfVxuXG4gIHRhYmxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgZm9udC1zaXplOiAuOTVlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCR5OiAxcHgsICRibHVyOiAxcHgsICRjb2xvcjogcmdiYSgwLCAwLCAwLCAuMDgpKTtcbiAgICB0ZCwgdGgge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XG4gICAgfVxuICAgIHRoIHtcbiAgICAgIHBhZGRpbmc6IDdweCAxMHB4O1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGQ7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3I7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gICAgdGQge1xuICAgICAgcGFkZGluZzogNnB4O1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICBhZGRyZXNzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICB9XG5cblxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vKiAgIHBsdWdpbiA6IFRhYmxlIE9mIENvbnRlbnQgU3R5bGVcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jdG9jX2NvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgd2lkdGg6IDgwJTtcbiAgbWluLXdpZHRoOiA4MCU7XG4gIG1heC13aWR0aDogODAlO1xuICBtYXJnaW46IDEuNGVtIGF1dG87XG4gIHBhZGRpbmc6IDIwcHggMDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGFjY2VudDtcbiAgZm9udC1zaXplOiAuOTVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcblxuICB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAmOmhvdmVyIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBib3gtc2hhZG93OiBub25lIH1cbiAgfVxuICBwLnRvY190aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICBhIHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1mYW1pbHk6ICRsYXRvO1xuICB9XG4gIGEgc3Bhbjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiLlwiO1xuICAgIHBhZGRpbmctbGVmdDogLjFlbTtcbiAgfVxuXG4gIHVsIHtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICB9XG4gIC50b2NfbGlzdCB7XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDhweCAxMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRhY2NlbnQ7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjRzLCBib3JkZXIgLjRzIC40cztcbiAgICB9XG4gICAgdWwgdWwgYSB7XG4gICAgICBib3JkZXItYm90dG9tLXN0eWxlOiBkb3R0ZWQ7XG4gICAgfVxuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicG1heC1tb2JpbGUpIHtcbiAgICB3aWR0aDogOTUlO1xuICAgIG1pbi13aWR0aDogOTUlO1xuICAgIG1heC13aWR0aDogOTUlO1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgIGZvbnQtc2l6ZTogLjk1ZW07XG4gIH1cbn1cblxuXG4vKiAgcGx1Z2luIDogY29udGFjdCBmb3JtIDdcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLndwY2Y3IHtcbiAgcCB7IGZvbnQtd2VpZ2h0OiA2MDA7IG1hcmdpbi1ib3R0b206IDEuMmVtOyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgcCBzcGFuIHsgZm9udC13ZWlnaHQ6IDQwMDsgY29sb3I6ICM3Nzc7IH1cbiAgZGl2LndwY2Y3LXZhbGlkYXRpb24tZXJyb3JzIHsgYm9yZGVyOiBub25lOyBtYXJnaW46IDA7IHBhZGRpbmc6IDA7IH1cbiAgZGl2LndwY2Y3LW1haWwtc2VudC1vaywgZGl2LndwY2Y3LW1haWwtc2VudC1uZyB7IGJvcmRlcjogbm9uZTsgfVxuICBkaXYud3BjZjctcmVzcG9uc2Utb3V0cHV0IHsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyB9XG4gIHNwYW4ud3BjZjctZm9ybS1jb250cm9sLXdyYXAgeyBkaXNwbGF5OiBibG9jazsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIHNwYW4ud3BjZjctbm90LXZhbGlkLXRpcCB7IGJhY2tncm91bmQtY29sb3I6ICNmMmRlZGU7IGJvcmRlci1jb2xvcjogI2UzYmZiZjsgY29sb3I6ICNiOTRhNDg7IHBhZGRpbmc6IDRweCAxNHB4OyBmb250LXNpemU6IDEycHg7IGxpbmUtaGVpZ2h0OiAyMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDA7IHRvcDogMTJweDsgd2lkdGg6IGF1dG87IHJpZ2h0OiAwOyBkaXNwbGF5OiBibG9jazsgfVxuXG4gIGlucHV0W3R5cGU9dGV4dF0sIGlucHV0W3R5cGU9cGFzc3dvcmRdLCBpbnB1dFt0eXBlPWVtYWlsXSwgaW5wdXRbdHlwZT11cmxdLCBpbnB1dFt0eXBlPXNlYXJjaF0sIGlucHV0W3R5cGU9dGVsXSwgaW5wdXRbdHlwZT1kYXRlXSwgaW5wdXRbdHlwZT1kYXRldGltZV0sIGlucHV0W3R5cGU9bW9udGhdLCBpbnB1dFt0eXBlPXdlZWtdLCBpbnB1dFt0eXBlPXRpbWVdLCBpbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXSwgaW5wdXRbdHlwZT1udW1iZXJdLCBzZWxlY3QsIHRleHRhcmVhIHtcbiAgICBwYWRkaW5nOiAgOHB4IDEwcHg7IGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7IG1hcmdpbi10b3A6IC40ZW07XG4gIH1cbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7IGZvbnQtc2l6ZTogMS4yZW07IH1cbiAgdGV4dGFyZWEgeyB3aWR0aDogMTAwJTsgfVxufVxuXG5cbi8qICAgaGlnaHRsaWdodC5qc1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5obGpzIHsgY29sb3I6ICNFNUU1RUI7IGJhY2tncm91bmQ6ICMyODJiMmU7IGRpc3BsYXk6IGJsb2NrOyBwYWRkaW5nOiAwOyB9XG4uaGxqcy1idWxsZXQsIC5obGpzLWxpdGVyYWwsIC5obGpzLW51bWJlciwgLmhsanMtc3ltYm9sIHsgY29sb3I6ICM2ODk3QkI7IH1cbi5obGpzLWRlbGV0aW9uLCAuaGxqcy1rZXl3b3JkLCAuaGxqcy1zZWxlY3Rvci10YWcgeyBjb2xvcjogI2NjNzgzMjsgfVxuLmhsanMtbGluaywgLmhsanMtdGVtcGxhdGUtdmFyaWFibGUsIC5obGpzLXZhcmlhYmxlIHsgY29sb3I6ICM2Mjk3NTU7IH1cbi5obGpzLWNvbW1lbnQsIC5obGpzLXF1b3RlIHsgY29sb3I6IGdyZXk7IH1cbi5obGpzLW1ldGEgeyBjb2xvcjogI2JkNGI0MDsgfVxuLmhsanMtYWRkaXRpb24sIC5obGpzLWF0dHJpYnV0ZSwgLmhsanMtc3RyaW5nIHsgY29sb3I6ICM4Y2FiN2E7IH1cbi5obGpzLXNlY3Rpb24sIC5obGpzLXRpdGxlLCAuaGxqcy10eXBlIHsgY29sb3I6ICNmZmM2NmQ7IH1cbi5obGpzLW5hbWUsIC5obGpzLXNlbGVjdG9yLWNsYXNzLCAuaGxqcy1zZWxlY3Rvci1pZCB7IGNvbG9yOiAjZTY2NTYyOyB9XG4ubGFuZy10YWcgKiB7IGNvbG9yOiAjZmZmOyB9XG4uaGxqcy1lbXBoYXNpcyB7IGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuLmhsanMtc3Ryb25nIHsgZm9udC13ZWlnaHQ6IDcwMDsgfVxuIl19 */
