/*
Theme Name: Mohawk
Theme URI: https://prestabrain.org/themes/woosa/
Author: Prestabrain Team
Author URI: https://wordpress.org/
Description: In 2014, our default theme lets you create a responsive magazine website with a sleek, modern design. Feature your favorite homepage content in either a grid or a slider. Use the three widget areas to customize your website, and change your content's layout with a full-width page template and a contributor page to show off your authors. Creating a magazine website with WordPress has never been easier.
Version: 1.5
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: black, green, white, light, dark, two-columns, three-columns, left-sidebar, right-sidebar, fixed-layout, responsive-layout, custom-background, custom-header, custom-menu, editor-style, featured-images, flexible-header, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready, accessibility-ready
Text Domain: woosa

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/
/*!
 * Bootstrap v3.3.5 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/* $headings-font-weight:    700 !default; */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline; }

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

[hidden],
template {
  display: none; }

a {
  background-color: transparent; }

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

abbr[title] {
  border-bottom: 1px dotted; }

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

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

mark {
  background: #ff0;
  color: #000; }

small {
  font-size: 80%; }

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; }

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

figure {
  margin: 1em 40px; }

hr {
  box-sizing: content-box;
  height: 0; }

pre {
  overflow: auto; }

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

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

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

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

button[disabled],
html input[disabled] {
  cursor: default; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

input {
  line-height: normal; }

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

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

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box; }

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

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

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

td,
th {
  padding: 0; }

/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: ""; }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .navbar {
    display: none; }
  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important; }
  .label {
    border: 1px solid #000; }
  .table {
    border-collapse: collapse !important; }
    .table td,
    .table th {
      background-color: #fff !important; }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important; } }

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

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

html {
  font-size: 10px;
  -webkit-tap-highlight-color: transparent; }

body {
  font-family: "Poppins", sans-serif;
  font-size: 14px;
  line-height: 1.62857;
  color: #666666;
  background-color: #f6f6f6;
  overflow-x: hidden; }

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

a {
  color: #000;
  text-decoration: none; }
  a:hover, a:focus {
    color: #54a9a2;
    text-decoration: none; }
  a:focus {
    outline: none;
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px; }

figure {
  margin: 0; }

img {
  vertical-align: middle; }

.img-responsive {
  display: block;
  max-width: 100%;
  height: auto; }

.img-rounded {
  border-radius: 0px; }

.img-thumbnail {
  padding: 4px;
  line-height: 1.62857;
  background-color: #f6f6f6;
  border: 1px solid #ddd;
  border-radius: 0px;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  display: inline-block;
  max-width: 100%;
  height: auto; }

.img-circle {
  border-radius: 50%; }

hr {
  margin-top: 22px;
  margin-bottom: 22px;
  border: 0;
  border-top: 1px solid #eeeeee; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto; }

[role="button"] {
  cursor: pointer; }

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: "Poppins";
  font-weight: 700;
  line-height: 1.1;
  color: #000000;
  letter-spacing: -1px; }
  h1 small,
  h1 .small, h2 small,
  h2 .small, h3 small,
  h3 .small, h4 small,
  h4 .small, h5 small,
  h5 .small, h6 small,
  h6 .small,
  .h1 small,
  .h1 .small, .h2 small,
  .h2 .small, .h3 small,
  .h3 .small, .h4 small,
  .h4 .small, .h5 small,
  .h5 .small, .h6 small,
  .h6 .small {
    font-weight: normal;
    line-height: 1;
    color: #777777; }

h1, .h1,
h2, .h2,
h3, .h3 {
  margin-top: 22px;
  margin-bottom: 11px; }
  h1 small,
  h1 .small, .h1 small,
  .h1 .small,
  h2 small,
  h2 .small, .h2 small,
  .h2 .small,
  h3 small,
  h3 .small, .h3 small,
  .h3 .small {
    font-size: 65%; }

h4, .h4,
h5, .h5,
h6, .h6 {
  margin-top: 11px;
  margin-bottom: 11px; }
  h4 small,
  h4 .small, .h4 small,
  .h4 .small,
  h5 small,
  h5 .small, .h5 small,
  .h5 .small,
  h6 small,
  h6 .small, .h6 small,
  .h6 .small {
    font-size: 75%; }

h1, .h1 {
  font-size: 39px; }

h2, .h2 {
  font-size: 30px; }

h3, .h3 {
  font-size: 24px; }

h4, .h4 {
  font-size: 20px; }

h5, .h5 {
  font-size: 14px; }

h6, .h6 {
  font-size: 12px; }

p {
  margin: 0 0 11px; }

.lead {
  margin-bottom: 22px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.4; }
  @media (min-width: 768px) {
    .lead {
      font-size: 21px; } }

small,
.small {
  font-size: 85%; }

mark,
.mark {
  background-color: #f0c73b;
  padding: .2em; }

.text-left {
  text-align: left; }

.text-right {
  text-align: right; }

.text-center {
  text-align: center; }

.text-justify {
  text-align: justify; }

.text-nowrap {
  white-space: nowrap; }

.text-lowercase {
  text-transform: lowercase; }

.text-uppercase, .initialism {
  text-transform: uppercase; }

.text-capitalize {
  text-transform: capitalize; }

.text-muted {
  color: #777777; }

.text-primary {
  color: #54a9a2; }

a.text-primary:hover,
a.text-primary:focus {
  color: #438781; }

.text-success {
  color: #3c763d; }

a.text-success:hover,
a.text-success:focus {
  color: #2b542c; }

.text-info {
  color: #31708f; }

a.text-info:hover,
a.text-info:focus {
  color: #245269; }

.text-warning {
  color: #8a6d3b; }

a.text-warning:hover,
a.text-warning:focus {
  color: #66512c; }

.text-danger {
  color: #a94442; }

a.text-danger:hover,
a.text-danger:focus {
  color: #843534; }

.bg-primary {
  color: #fff; }

.bg-primary {
  background-color: #54a9a2 !important; }

a.bg-primary:hover,
a.bg-primary:focus {
  background-color: #438781; }

.bg-success {
  background-color: #dff0d8 !important; }

a.bg-success:hover,
a.bg-success:focus {
  background-color: #c1e2b3; }

.bg-info {
  background-color: #d9edf7 !important; }

a.bg-info:hover,
a.bg-info:focus {
  background-color: #afd9ee; }

.bg-warning {
  background-color: #f0c73b !important; }

a.bg-warning:hover,
a.bg-warning:focus {
  background-color: #e6b612; }

.bg-danger {
  background-color: #f8d7da !important; }

a.bg-danger:hover,
a.bg-danger:focus {
  background-color: #f0acb2; }

.page-header {
  padding-bottom: 10px;
  margin: 44px 0 22px;
  border-bottom: 1px solid #eeeeee; }

ul,
ol {
  margin-top: 0;
  margin-bottom: 11px; }
  ul ul,
  ul ol,
  ol ul,
  ol ol {
    margin-bottom: 0; }

.list-unstyled {
  padding-left: 0;
  list-style: none; }

.list-inline {
  padding-left: 0;
  list-style: none;
  margin-left: -5px; }
  .list-inline > li {
    display: inline-block;
    padding-left: 5px;
    padding-right: 5px; }

dl {
  margin-top: 0;
  margin-bottom: 22px; }

dt,
dd {
  line-height: 1.62857; }

dt {
  font-weight: bold; }

dd {
  margin-left: 0; }

.dl-horizontal dd:before, .dl-horizontal dd:after {
  content: " ";
  display: table; }

.dl-horizontal dd:after {
  clear: both; }

@media (min-width: 768px) {
  .dl-horizontal dt {
    float: left;
    width: 160px;
    clear: left;
    text-align: right;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }
  .dl-horizontal dd {
    margin-left: 180px; } }

abbr[title],
abbr[data-original-title] {
  cursor: help;
  border-bottom: 1px dotted #777777; }

.initialism {
  font-size: 90%; }

blockquote {
  padding: 11px 22px;
  margin: 0 0 22px;
  font-size: 17.5px;
  border-left: 5px solid #eeeeee; }
  blockquote p:last-child,
  blockquote ul:last-child,
  blockquote ol:last-child {
    margin-bottom: 0; }
  blockquote footer,
  blockquote small,
  blockquote .small {
    display: block;
    font-size: 80%;
    line-height: 1.62857;
    color: #777777; }
    blockquote footer:before,
    blockquote small:before,
    blockquote .small:before {
      content: '\2014 \00A0'; }

.blockquote-reverse,
blockquote.pull-right,
#pbr-masthead.pbr-header-v3 .pbr-topbar blockquote.inner,
#pbr-masthead.pbr-header-v3 blockquote.pbr-mainmenu {
  padding-right: 15px;
  padding-left: 0;
  border-right: 5px solid #eeeeee;
  border-left: 0;
  text-align: right; }
  .blockquote-reverse footer:before,
  .blockquote-reverse small:before,
  .blockquote-reverse .small:before,
  blockquote.pull-right footer:before, #pbr-masthead.pbr-header-v3 .pbr-topbar blockquote.inner footer:before, #pbr-masthead.pbr-header-v3 blockquote.pbr-mainmenu footer:before,
  blockquote.pull-right small:before, #pbr-masthead.pbr-header-v3 .pbr-topbar blockquote.inner small:before, #pbr-masthead.pbr-header-v3 blockquote.pbr-mainmenu small:before,
  blockquote.pull-right .small:before, #pbr-masthead.pbr-header-v3 .pbr-topbar blockquote.inner .small:before, #pbr-masthead.pbr-header-v3 blockquote.pbr-mainmenu .small:before {
    content: ''; }
  .blockquote-reverse footer:after,
  .blockquote-reverse small:after,
  .blockquote-reverse .small:after,
  blockquote.pull-right footer:after, #pbr-masthead.pbr-header-v3 .pbr-topbar blockquote.inner footer:after, #pbr-masthead.pbr-header-v3 blockquote.pbr-mainmenu footer:after,
  blockquote.pull-right small:after, #pbr-masthead.pbr-header-v3 .pbr-topbar blockquote.inner small:after, #pbr-masthead.pbr-header-v3 blockquote.pbr-mainmenu small:after,
  blockquote.pull-right .small:after, #pbr-masthead.pbr-header-v3 .pbr-topbar blockquote.inner .small:after, #pbr-masthead.pbr-header-v3 blockquote.pbr-mainmenu .small:after {
    content: '\00A0 \2014'; }

address {
  margin-bottom: 22px;
  font-style: normal;
  line-height: 30px; }

code,
kbd,
pre,
samp {
  font-family: "Montserrat", monospace; }

code {
  padding: 2px 4px;
  font-size: 90%;
  color: #c7254e;
  background-color: #f9f2f4;
  border-radius: 0px; }

kbd {
  padding: 2px 4px;
  font-size: 90%;
  color: #fff;
  background-color: #333;
  border-radius: 0px;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25); }
  kbd kbd {
    padding: 0;
    font-size: 100%;
    font-weight: bold;
    box-shadow: none; }

pre {
  display: block;
  padding: 10.5px;
  margin: 0 0 11px;
  font-size: 13px;
  line-height: 1.62857;
  word-break: break-all;
  word-wrap: break-word;
  color: #666666;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 0px; }
  pre code {
    padding: 0;
    font-size: inherit;
    color: inherit;
    white-space: pre-wrap;
    background-color: transparent;
    border-radius: 0; }

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll; }

.container {
  margin-right: auto;
  margin-left: auto; }
  .container:before, .container:after {
    content: " ";
    display: table; }
  .container:after {
    clear: both; }
  @media (min-width: 768px) {
    .container {
      width: 780px; } }
  @media (min-width: 992px) {
    .container {
      width: 1000px; } }
  @media (min-width: 1200px) {
    .container {
      width: 1200px; } }

.container-fluid {
  margin-right: auto;
  margin-left: auto; }
  .container-fluid:before, .container-fluid:after {
    content: " ";
    display: table; }
  .container-fluid:after {
    clear: both; }

.row {
  margin-left: -15px;
  margin-right: -15px; }
  .row:before, .row:after {
    content: " ";
    display: table; }
  .row:after {
    clear: both; }

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, #pbr-masthead.pbr-header-v3 .pbr-topbar .inner, #pbr-masthead.pbr-header-v3 .pbr-mainmenu, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px; }

.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left; }

.col-xs-1 {
  width: 8.33333%; }

.col-xs-2 {
  width: 16.66667%; }

.col-xs-3 {
  width: 25%; }

.col-xs-4 {
  width: 33.33333%; }

.col-xs-5 {
  width: 41.66667%; }

.col-xs-6 {
  width: 50%; }

.col-xs-7 {
  width: 58.33333%; }

.col-xs-8 {
  width: 66.66667%; }

.col-xs-9 {
  width: 75%; }

.col-xs-10 {
  width: 83.33333%; }

.col-xs-11 {
  width: 91.66667%; }

.col-xs-12 {
  width: 100%; }

.col-xs-pull-0 {
  right: auto; }

.col-xs-pull-1 {
  right: 8.33333%; }

.col-xs-pull-2 {
  right: 16.66667%; }

.col-xs-pull-3 {
  right: 25%; }

.col-xs-pull-4 {
  right: 33.33333%; }

.col-xs-pull-5 {
  right: 41.66667%; }

.col-xs-pull-6 {
  right: 50%; }

.col-xs-pull-7 {
  right: 58.33333%; }

.col-xs-pull-8 {
  right: 66.66667%; }

.col-xs-pull-9 {
  right: 75%; }

.col-xs-pull-10 {
  right: 83.33333%; }

.col-xs-pull-11 {
  right: 91.66667%; }

.col-xs-pull-12 {
  right: 100%; }

.col-xs-push-0 {
  left: auto; }

.col-xs-push-1 {
  left: 8.33333%; }

.col-xs-push-2 {
  left: 16.66667%; }

.col-xs-push-3 {
  left: 25%; }

.col-xs-push-4 {
  left: 33.33333%; }

.col-xs-push-5 {
  left: 41.66667%; }

.col-xs-push-6 {
  left: 50%; }

.col-xs-push-7 {
  left: 58.33333%; }

.col-xs-push-8 {
  left: 66.66667%; }

.col-xs-push-9 {
  left: 75%; }

.col-xs-push-10 {
  left: 83.33333%; }

.col-xs-push-11 {
  left: 91.66667%; }

.col-xs-push-12 {
  left: 100%; }

.col-xs-offset-0 {
  margin-left: 0%; }

.col-xs-offset-1 {
  margin-left: 8.33333%; }

.col-xs-offset-2 {
  margin-left: 16.66667%; }

.col-xs-offset-3 {
  margin-left: 25%; }

.col-xs-offset-4 {
  margin-left: 33.33333%; }

.col-xs-offset-5 {
  margin-left: 41.66667%; }

.col-xs-offset-6 {
  margin-left: 50%; }

.col-xs-offset-7 {
  margin-left: 58.33333%; }

.col-xs-offset-8 {
  margin-left: 66.66667%; }

.col-xs-offset-9 {
  margin-left: 75%; }

.col-xs-offset-10 {
  margin-left: 83.33333%; }

.col-xs-offset-11 {
  margin-left: 91.66667%; }

.col-xs-offset-12 {
  margin-left: 100%; }

@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left; }
  .col-sm-1 {
    width: 8.33333%; }
  .col-sm-2 {
    width: 16.66667%; }
  .col-sm-3 {
    width: 25%; }
  .col-sm-4 {
    width: 33.33333%; }
  .col-sm-5 {
    width: 41.66667%; }
  .col-sm-6 {
    width: 50%; }
  .col-sm-7 {
    width: 58.33333%; }
  .col-sm-8 {
    width: 66.66667%; }
  .col-sm-9 {
    width: 75%; }
  .col-sm-10 {
    width: 83.33333%; }
  .col-sm-11 {
    width: 91.66667%; }
  .col-sm-12 {
    width: 100%; }
  .col-sm-pull-0 {
    right: auto; }
  .col-sm-pull-1 {
    right: 8.33333%; }
  .col-sm-pull-2 {
    right: 16.66667%; }
  .col-sm-pull-3 {
    right: 25%; }
  .col-sm-pull-4 {
    right: 33.33333%; }
  .col-sm-pull-5 {
    right: 41.66667%; }
  .col-sm-pull-6 {
    right: 50%; }
  .col-sm-pull-7 {
    right: 58.33333%; }
  .col-sm-pull-8 {
    right: 66.66667%; }
  .col-sm-pull-9 {
    right: 75%; }
  .col-sm-pull-10 {
    right: 83.33333%; }
  .col-sm-pull-11 {
    right: 91.66667%; }
  .col-sm-pull-12 {
    right: 100%; }
  .col-sm-push-0 {
    left: auto; }
  .col-sm-push-1 {
    left: 8.33333%; }
  .col-sm-push-2 {
    left: 16.66667%; }
  .col-sm-push-3 {
    left: 25%; }
  .col-sm-push-4 {
    left: 33.33333%; }
  .col-sm-push-5 {
    left: 41.66667%; }
  .col-sm-push-6 {
    left: 50%; }
  .col-sm-push-7 {
    left: 58.33333%; }
  .col-sm-push-8 {
    left: 66.66667%; }
  .col-sm-push-9 {
    left: 75%; }
  .col-sm-push-10 {
    left: 83.33333%; }
  .col-sm-push-11 {
    left: 91.66667%; }
  .col-sm-push-12 {
    left: 100%; }
  .col-sm-offset-0 {
    margin-left: 0%; }
  .col-sm-offset-1 {
    margin-left: 8.33333%; }
  .col-sm-offset-2 {
    margin-left: 16.66667%; }
  .col-sm-offset-3 {
    margin-left: 25%; }
  .col-sm-offset-4 {
    margin-left: 33.33333%; }
  .col-sm-offset-5 {
    margin-left: 41.66667%; }
  .col-sm-offset-6 {
    margin-left: 50%; }
  .col-sm-offset-7 {
    margin-left: 58.33333%; }
  .col-sm-offset-8 {
    margin-left: 66.66667%; }
  .col-sm-offset-9 {
    margin-left: 75%; }
  .col-sm-offset-10 {
    margin-left: 83.33333%; }
  .col-sm-offset-11 {
    margin-left: 91.66667%; }
  .col-sm-offset-12 {
    margin-left: 100%; } }

@media (min-width: 992px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, #pbr-masthead.pbr-header-v3 .pbr-topbar .inner, #pbr-masthead.pbr-header-v3 .pbr-mainmenu, .col-md-10, .col-md-11, .col-md-12 {
    float: left; }
  .col-md-1 {
    width: 8.33333%; }
  .col-md-2 {
    width: 16.66667%; }
  .col-md-3 {
    width: 25%; }
  .col-md-4 {
    width: 33.33333%; }
  .col-md-5 {
    width: 41.66667%; }
  .col-md-6 {
    width: 50%; }
  .col-md-7 {
    width: 58.33333%; }
  .col-md-8 {
    width: 66.66667%; }
  .col-md-9, #pbr-masthead.pbr-header-v3 .pbr-topbar .inner, #pbr-masthead.pbr-header-v3 .pbr-mainmenu {
    width: 75%; }
  .col-md-10 {
    width: 83.33333%; }
  .col-md-11 {
    width: 91.66667%; }
  .col-md-12 {
    width: 100%; }
  .col-md-pull-0 {
    right: auto; }
  .col-md-pull-1 {
    right: 8.33333%; }
  .col-md-pull-2 {
    right: 16.66667%; }
  .col-md-pull-3 {
    right: 25%; }
  .col-md-pull-4 {
    right: 33.33333%; }
  .col-md-pull-5 {
    right: 41.66667%; }
  .col-md-pull-6 {
    right: 50%; }
  .col-md-pull-7 {
    right: 58.33333%; }
  .col-md-pull-8 {
    right: 66.66667%; }
  .col-md-pull-9 {
    right: 75%; }
  .col-md-pull-10 {
    right: 83.33333%; }
  .col-md-pull-11 {
    right: 91.66667%; }
  .col-md-pull-12 {
    right: 100%; }
  .col-md-push-0 {
    left: auto; }
  .col-md-push-1 {
    left: 8.33333%; }
  .col-md-push-2 {
    left: 16.66667%; }
  .col-md-push-3 {
    left: 25%; }
  .col-md-push-4 {
    left: 33.33333%; }
  .col-md-push-5 {
    left: 41.66667%; }
  .col-md-push-6 {
    left: 50%; }
  .col-md-push-7 {
    left: 58.33333%; }
  .col-md-push-8 {
    left: 66.66667%; }
  .col-md-push-9 {
    left: 75%; }
  .col-md-push-10 {
    left: 83.33333%; }
  .col-md-push-11 {
    left: 91.66667%; }
  .col-md-push-12 {
    left: 100%; }
  .col-md-offset-0 {
    margin-left: 0%; }
  .col-md-offset-1 {
    margin-left: 8.33333%; }
  .col-md-offset-2 {
    margin-left: 16.66667%; }
  .col-md-offset-3 {
    margin-left: 25%; }
  .col-md-offset-4 {
    margin-left: 33.33333%; }
  .col-md-offset-5 {
    margin-left: 41.66667%; }
  .col-md-offset-6 {
    margin-left: 50%; }
  .col-md-offset-7 {
    margin-left: 58.33333%; }
  .col-md-offset-8 {
    margin-left: 66.66667%; }
  .col-md-offset-9 {
    margin-left: 75%; }
  .col-md-offset-10 {
    margin-left: 83.33333%; }
  .col-md-offset-11 {
    margin-left: 91.66667%; }
  .col-md-offset-12 {
    margin-left: 100%; } }

@media (min-width: 1200px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left; }
  .col-lg-1 {
    width: 8.33333%; }
  .col-lg-2 {
    width: 16.66667%; }
  .col-lg-3 {
    width: 25%; }
  .col-lg-4 {
    width: 33.33333%; }
  .col-lg-5 {
    width: 41.66667%; }
  .col-lg-6 {
    width: 50%; }
  .col-lg-7 {
    width: 58.33333%; }
  .col-lg-8 {
    width: 66.66667%; }
  .col-lg-9 {
    width: 75%; }
  .col-lg-10 {
    width: 83.33333%; }
  .col-lg-11 {
    width: 91.66667%; }
  .col-lg-12 {
    width: 100%; }
  .col-lg-pull-0 {
    right: auto; }
  .col-lg-pull-1 {
    right: 8.33333%; }
  .col-lg-pull-2 {
    right: 16.66667%; }
  .col-lg-pull-3 {
    right: 25%; }
  .col-lg-pull-4 {
    right: 33.33333%; }
  .col-lg-pull-5 {
    right: 41.66667%; }
  .col-lg-pull-6 {
    right: 50%; }
  .col-lg-pull-7 {
    right: 58.33333%; }
  .col-lg-pull-8 {
    right: 66.66667%; }
  .col-lg-pull-9 {
    right: 75%; }
  .col-lg-pull-10 {
    right: 83.33333%; }
  .col-lg-pull-11 {
    right: 91.66667%; }
  .col-lg-pull-12 {
    right: 100%; }
  .col-lg-push-0 {
    left: auto; }
  .col-lg-push-1 {
    left: 8.33333%; }
  .col-lg-push-2 {
    left: 16.66667%; }
  .col-lg-push-3 {
    left: 25%; }
  .col-lg-push-4 {
    left: 33.33333%; }
  .col-lg-push-5 {
    left: 41.66667%; }
  .col-lg-push-6 {
    left: 50%; }
  .col-lg-push-7 {
    left: 58.33333%; }
  .col-lg-push-8 {
    left: 66.66667%; }
  .col-lg-push-9 {
    left: 75%; }
  .col-lg-push-10 {
    left: 83.33333%; }
  .col-lg-push-11 {
    left: 91.66667%; }
  .col-lg-push-12 {
    left: 100%; }
  .col-lg-offset-0 {
    margin-left: 0%; }
  .col-lg-offset-1 {
    margin-left: 8.33333%; }
  .col-lg-offset-2 {
    margin-left: 16.66667%; }
  .col-lg-offset-3 {
    margin-left: 25%; }
  .col-lg-offset-4 {
    margin-left: 33.33333%; }
  .col-lg-offset-5 {
    margin-left: 41.66667%; }
  .col-lg-offset-6 {
    margin-left: 50%; }
  .col-lg-offset-7 {
    margin-left: 58.33333%; }
  .col-lg-offset-8 {
    margin-left: 66.66667%; }
  .col-lg-offset-9 {
    margin-left: 75%; }
  .col-lg-offset-10 {
    margin-left: 83.33333%; }
  .col-lg-offset-11 {
    margin-left: 91.66667%; }
  .col-lg-offset-12 {
    margin-left: 100%; } }

table {
  background-color: transparent; }

caption {
  padding-top: 8px;
  padding-bottom: 8px;
  color: #777777;
  text-align: left; }

th {
  text-align: left; }

.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 22px; }
  .table > thead > tr > th,
  .table > thead > tr > td,
  .table > tbody > tr > th,
  .table > tbody > tr > td,
  .table > tfoot > tr > th,
  .table > tfoot > tr > td {
    padding: 8px;
    line-height: 1.62857;
    vertical-align: top;
    border-top: 1px solid #ddd; }
  .table > thead > tr > th {
    vertical-align: bottom;
    border-bottom: 2px solid #ddd; }
  .table > caption + thead > tr:first-child > th,
  .table > caption + thead > tr:first-child > td,
  .table > colgroup + thead > tr:first-child > th,
  .table > colgroup + thead > tr:first-child > td,
  .table > thead:first-child > tr:first-child > th,
  .table > thead:first-child > tr:first-child > td {
    border-top: 0; }
  .table > tbody + tbody {
    border-top: 2px solid #ddd; }
  .table .table {
    background-color: #f6f6f6; }

.table-condensed > thead > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > th,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > th,
.table-condensed > tfoot > tr > td {
  padding: 5px; }

.table-bordered {
  border: 1px solid #ddd; }
  .table-bordered > thead > tr > th,
  .table-bordered > thead > tr > td,
  .table-bordered > tbody > tr > th,
  .table-bordered > tbody > tr > td,
  .table-bordered > tfoot > tr > th,
  .table-bordered > tfoot > tr > td {
    border: 1px solid #ddd; }
  .table-bordered > thead > tr > th,
  .table-bordered > thead > tr > td {
    border-bottom-width: 2px; }

.table-striped > tbody > tr:nth-of-type(odd) {
  background-color: #f9f9f9; }

.table-hover > tbody > tr:hover {
  background-color: #f5f5f5; }

table col[class*="col-"] {
  position: static;
  float: none;
  display: table-column; }

table td[class*="col-"],
table th[class*="col-"] {
  position: static;
  float: none;
  display: table-cell; }

.table > thead > tr > td.active,
.table > thead > tr > th.active,
.table > thead > tr.active > td,
.table > thead > tr.active > th,
.table > tbody > tr > td.active,
.table > tbody > tr > th.active,
.table > tbody > tr.active > td,
.table > tbody > tr.active > th,
.table > tfoot > tr > td.active,
.table > tfoot > tr > th.active,
.table > tfoot > tr.active > td,
.table > tfoot > tr.active > th {
  background-color: #f5f5f5; }

.table-hover > tbody > tr > td.active:hover,
.table-hover > tbody > tr > th.active:hover,
.table-hover > tbody > tr.active:hover > td,
.table-hover > tbody > tr:hover > .active,
.table-hover > tbody > tr.active:hover > th {
  background-color: #e8e8e8; }

.table > thead > tr > td.success,
.table > thead > tr > th.success,
.table > thead > tr.success > td,
.table > thead > tr.success > th,
.table > tbody > tr > td.success,
.table > tbody > tr > th.success,
.table > tbody > tr.success > td,
.table > tbody > tr.success > th,
.table > tfoot > tr > td.success,
.table > tfoot > tr > th.success,
.table > tfoot > tr.success > td,
.table > tfoot > tr.success > th {
  background-color: #dff0d8; }

.table-hover > tbody > tr > td.success:hover,
.table-hover > tbody > tr > th.success:hover,
.table-hover > tbody > tr.success:hover > td,
.table-hover > tbody > tr:hover > .success,
.table-hover > tbody > tr.success:hover > th {
  background-color: #d0e9c6; }

.table > thead > tr > td.info,
.table > thead > tr > th.info,
.table > thead > tr.info > td,
.table > thead > tr.info > th,
.table > tbody > tr > td.info,
.table > tbody > tr > th.info,
.table > tbody > tr.info > td,
.table > tbody > tr.info > th,
.table > tfoot > tr > td.info,
.table > tfoot > tr > th.info,
.table > tfoot > tr.info > td,
.table > tfoot > tr.info > th {
  background-color: #d9edf7; }

.table-hover > tbody > tr > td.info:hover,
.table-hover > tbody > tr > th.info:hover,
.table-hover > tbody > tr.info:hover > td,
.table-hover > tbody > tr:hover > .info,
.table-hover > tbody > tr.info:hover > th {
  background-color: #c4e3f3; }

.table > thead > tr > td.warning,
.table > thead > tr > th.warning,
.table > thead > tr.warning > td,
.table > thead > tr.warning > th,
.table > tbody > tr > td.warning,
.table > tbody > tr > th.warning,
.table > tbody > tr.warning > td,
.table > tbody > tr.warning > th,
.table > tfoot > tr > td.warning,
.table > tfoot > tr > th.warning,
.table > tfoot > tr.warning > td,
.table > tfoot > tr.warning > th {
  background-color: #f0c73b; }

.table-hover > tbody > tr > td.warning:hover,
.table-hover > tbody > tr > th.warning:hover,
.table-hover > tbody > tr.warning:hover > td,
.table-hover > tbody > tr:hover > .warning,
.table-hover > tbody > tr.warning:hover > th {
  background-color: #eec023; }

.table > thead > tr > td.danger,
.table > thead > tr > th.danger,
.table > thead > tr.danger > td,
.table > thead > tr.danger > th,
.table > tbody > tr > td.danger,
.table > tbody > tr > th.danger,
.table > tbody > tr.danger > td,
.table > tbody > tr.danger > th,
.table > tfoot > tr > td.danger,
.table > tfoot > tr > th.danger,
.table > tfoot > tr.danger > td,
.table > tfoot > tr.danger > th {
  background-color: #f8d7da; }

.table-hover > tbody > tr > td.danger:hover,
.table-hover > tbody > tr > th.danger:hover,
.table-hover > tbody > tr.danger:hover > td,
.table-hover > tbody > tr:hover > .danger,
.table-hover > tbody > tr.danger:hover > th {
  background-color: #f4c1c6; }

.table-responsive {
  overflow-x: auto;
  min-height: 0.01%; }
  @media screen and (max-width: 767px) {
    .table-responsive {
      width: 100%;
      margin-bottom: 16.5px;
      overflow-y: hidden;
      -ms-overflow-style: -ms-autohiding-scrollbar;
      border: 1px solid #ddd; }
      .table-responsive > .table {
        margin-bottom: 0; }
        .table-responsive > .table > thead > tr > th,
        .table-responsive > .table > thead > tr > td,
        .table-responsive > .table > tbody > tr > th,
        .table-responsive > .table > tbody > tr > td,
        .table-responsive > .table > tfoot > tr > th,
        .table-responsive > .table > tfoot > tr > td {
          white-space: nowrap; }
      .table-responsive > .table-bordered {
        border: 0; }
        .table-responsive > .table-bordered > thead > tr > th:first-child,
        .table-responsive > .table-bordered > thead > tr > td:first-child,
        .table-responsive > .table-bordered > tbody > tr > th:first-child,
        .table-responsive > .table-bordered > tbody > tr > td:first-child,
        .table-responsive > .table-bordered > tfoot > tr > th:first-child,
        .table-responsive > .table-bordered > tfoot > tr > td:first-child {
          border-left: 0; }
        .table-responsive > .table-bordered > thead > tr > th:last-child,
        .table-responsive > .table-bordered > thead > tr > td:last-child,
        .table-responsive > .table-bordered > tbody > tr > th:last-child,
        .table-responsive > .table-bordered > tbody > tr > td:last-child,
        .table-responsive > .table-bordered > tfoot > tr > th:last-child,
        .table-responsive > .table-bordered > tfoot > tr > td:last-child {
          border-right: 0; }
        .table-responsive > .table-bordered > tbody > tr:last-child > th,
        .table-responsive > .table-bordered > tbody > tr:last-child > td,
        .table-responsive > .table-bordered > tfoot > tr:last-child > th,
        .table-responsive > .table-bordered > tfoot > tr:last-child > td {
          border-bottom: 0; } }

fieldset {
  padding: 0;
  margin: 0;
  border: 0;
  min-width: 0; }

legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 22px;
  font-size: 21px;
  line-height: inherit;
  color: #666666;
  border: 0;
  border-bottom: 1px solid #e5e5e5; }

label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: bold; }

input[type="search"] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  line-height: normal; }

input[type="file"] {
  display: block; }

input[type="range"] {
  display: block;
  width: 100%; }

select[multiple],
select[size] {
  height: auto; }

input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: none;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px; }

output {
  display: block;
  padding-top: 10px;
  font-size: 14px;
  line-height: 1.62857;
  color: #555555; }

.form-control {
  display: block;
  width: 100%;
  height: 46px;
  padding: 9px 20px;
  font-size: 14px;
  line-height: 1.62857;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 0px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; }
  .form-control:focus {
    border-color: #66afe9;
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none; }
  .form-control::-moz-placeholder {
    color: #999;
    opacity: 1; }
  .form-control:-ms-input-placeholder {
    color: #999; }
  .form-control::-webkit-input-placeholder {
    color: #999; }
  .form-control[disabled], .form-control[readonly],
  fieldset[disabled] .form-control {
    background-color: #eeeeee;
    opacity: 1; }
  .form-control[disabled],
  fieldset[disabled] .form-control {
    cursor: not-allowed; }

textarea.form-control {
  height: auto; }

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

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"].form-control,
  input[type="time"].form-control,
  input[type="datetime-local"].form-control,
  input[type="month"].form-control {
    line-height: 46px; }
  input[type="date"].input-sm, .input-group-sm > input[type="date"].form-control,
  .input-group-sm > input[type="date"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="date"].btn,
  .input-group-sm input[type="date"],
  input[type="time"].input-sm,
  .input-group-sm > input[type="time"].form-control,
  .input-group-sm > input[type="time"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="time"].btn,
  .input-group-sm
  input[type="time"],
  input[type="datetime-local"].input-sm,
  .input-group-sm > input[type="datetime-local"].form-control,
  .input-group-sm > input[type="datetime-local"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="datetime-local"].btn,
  .input-group-sm
  input[type="datetime-local"],
  input[type="month"].input-sm,
  .input-group-sm > input[type="month"].form-control,
  .input-group-sm > input[type="month"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="month"].btn,
  .input-group-sm
  input[type="month"] {
    line-height: 30px; }
  input[type="date"].input-lg, .input-group-lg > input[type="date"].form-control,
  .input-group-lg > input[type="date"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="date"].btn,
  .input-group-lg input[type="date"],
  input[type="time"].input-lg,
  .input-group-lg > input[type="time"].form-control,
  .input-group-lg > input[type="time"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="time"].btn,
  .input-group-lg
  input[type="time"],
  input[type="datetime-local"].input-lg,
  .input-group-lg > input[type="datetime-local"].form-control,
  .input-group-lg > input[type="datetime-local"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="datetime-local"].btn,
  .input-group-lg
  input[type="datetime-local"],
  input[type="month"].input-lg,
  .input-group-lg > input[type="month"].form-control,
  .input-group-lg > input[type="month"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="month"].btn,
  .input-group-lg
  input[type="month"] {
    line-height: 65px; } }

.form-group {
  margin-bottom: 20px; }

.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px; }
  .radio label,
  .checkbox label {
    min-height: 22px;
    padding-left: 20px;
    margin-bottom: 0;
    font-weight: normal;
    cursor: pointer; }

.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
  position: absolute;
  margin-left: -20px;
  margin-top: 4px \9; }

.radio + .radio,
.checkbox + .checkbox {
  margin-top: -5px; }

.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  vertical-align: middle;
  font-weight: normal;
  cursor: pointer; }

.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px; }

input[type="radio"][disabled], input[type="radio"].disabled,
fieldset[disabled] input[type="radio"],
input[type="checkbox"][disabled],
input[type="checkbox"].disabled,
fieldset[disabled]
input[type="checkbox"] {
  cursor: not-allowed; }

.radio-inline.disabled,
fieldset[disabled] .radio-inline,
.checkbox-inline.disabled,
fieldset[disabled]
.checkbox-inline {
  cursor: not-allowed; }

.radio.disabled label,
fieldset[disabled] .radio label,
.checkbox.disabled label,
fieldset[disabled]
.checkbox label {
  cursor: not-allowed; }

.form-control-static {
  padding-top: 10px;
  padding-bottom: 10px;
  margin-bottom: 0;
  min-height: 36px; }
  .form-control-static.input-lg, .input-group-lg > .form-control-static.form-control,
  .input-group-lg > .form-control-static.input-group-addon,
  .input-group-lg > .input-group-btn > .form-control-static.btn, .form-control-static.input-sm, .input-group-sm > .form-control-static.form-control,
  .input-group-sm > .form-control-static.input-group-addon,
  .input-group-sm > .input-group-btn > .form-control-static.btn {
    padding-left: 0;
    padding-right: 0; }

.input-sm, .input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 0px; }

select.input-sm, .input-group-sm > select.form-control,
.input-group-sm > select.input-group-addon,
.input-group-sm > .input-group-btn > select.btn {
  height: 30px;
  line-height: 30px; }

textarea.input-sm, .input-group-sm > textarea.form-control,
.input-group-sm > textarea.input-group-addon,
.input-group-sm > .input-group-btn > textarea.btn,
select[multiple].input-sm,
.input-group-sm > select[multiple].form-control,
.input-group-sm > select[multiple].input-group-addon,
.input-group-sm > .input-group-btn > select[multiple].btn {
  height: auto; }

.form-group-sm .form-control {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 0px; }

.form-group-sm select.form-control {
  height: 30px;
  line-height: 30px; }

.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto; }

.form-group-sm .form-control-static {
  height: 30px;
  min-height: 34px;
  padding: 6px 10px;
  font-size: 12px;
  line-height: 1.5; }

.input-lg, .input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 65px;
  padding: 15px 20px;
  font-size: 18px;
  line-height: 1.8;
  border-radius: 0px; }

select.input-lg, .input-group-lg > select.form-control,
.input-group-lg > select.input-group-addon,
.input-group-lg > .input-group-btn > select.btn {
  height: 65px;
  line-height: 65px; }

textarea.input-lg, .input-group-lg > textarea.form-control,
.input-group-lg > textarea.input-group-addon,
.input-group-lg > .input-group-btn > textarea.btn,
select[multiple].input-lg,
.input-group-lg > select[multiple].form-control,
.input-group-lg > select[multiple].input-group-addon,
.input-group-lg > .input-group-btn > select[multiple].btn {
  height: auto; }

.form-group-lg .form-control {
  height: 65px;
  padding: 15px 20px;
  font-size: 18px;
  line-height: 1.8;
  border-radius: 0px; }

.form-group-lg select.form-control {
  height: 65px;
  line-height: 65px; }

.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto; }

.form-group-lg .form-control-static {
  height: 65px;
  min-height: 40px;
  padding: 16px 20px;
  font-size: 18px;
  line-height: 1.8; }

.has-feedback {
  position: relative; }
  .has-feedback .form-control {
    padding-right: 57.5px; }

.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: 46px;
  height: 46px;
  line-height: 46px;
  text-align: center;
  pointer-events: none; }

.input-lg + .form-control-feedback, .input-group-lg > .form-control + .form-control-feedback,
.input-group-lg > .input-group-addon + .form-control-feedback,
.input-group-lg > .input-group-btn > .btn + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
  width: 65px;
  height: 65px;
  line-height: 65px; }

.input-sm + .form-control-feedback, .input-group-sm > .form-control + .form-control-feedback,
.input-group-sm > .input-group-addon + .form-control-feedback,
.input-group-sm > .input-group-btn > .btn + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
  width: 30px;
  height: 30px;
  line-height: 30px; }

.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
  color: #3c763d; }

.has-success .form-control {
  border-color: #3c763d;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-success .form-control:focus {
    border-color: #2b542c;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; }

.has-success .input-group-addon {
  color: #3c763d;
  border-color: #3c763d;
  background-color: #dff0d8; }

.has-success .form-control-feedback {
  color: #3c763d; }

.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
  color: #8a6d3b; }

.has-warning .form-control {
  border-color: #8a6d3b;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-warning .form-control:focus {
    border-color: #66512c;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b; }

.has-warning .input-group-addon {
  color: #8a6d3b;
  border-color: #8a6d3b;
  background-color: #f0c73b; }

.has-warning .form-control-feedback {
  color: #8a6d3b; }

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
  color: #a94442; }

.has-error .form-control {
  border-color: #a94442;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-error .form-control:focus {
    border-color: #843534;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; }

.has-error .input-group-addon {
  color: #a94442;
  border-color: #a94442;
  background-color: #f8d7da; }

.has-error .form-control-feedback {
  color: #a94442; }

.has-feedback label ~ .form-control-feedback {
  top: 27px; }

.has-feedback label.sr-only ~ .form-control-feedback {
  top: 0; }

.help-block {
  display: block;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #a6a6a6; }

@media (min-width: 768px) {
  .form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle; }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle; }
  .form-inline .form-control-static {
    display: inline-block; }
  .form-inline .input-group {
    display: inline-table;
    vertical-align: middle; }
    .form-inline .input-group .input-group-addon,
    .form-inline .input-group .input-group-btn,
    .form-inline .input-group .form-control {
      width: auto; }
  .form-inline .input-group > .form-control {
    width: 100%; }
  .form-inline .control-label {
    margin-bottom: 0;
    vertical-align: middle; }
  .form-inline .radio,
  .form-inline .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle; }
    .form-inline .radio label,
    .form-inline .checkbox label {
      padding-left: 0; }
  .form-inline .radio input[type="radio"],
  .form-inline .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0; }
  .form-inline .has-feedback .form-control-feedback {
    top: 0; } }

.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 10px; }

.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 32px; }

.form-horizontal .form-group {
  margin-left: -15px;
  margin-right: -15px; }
  .form-horizontal .form-group:before, .form-horizontal .form-group:after {
    content: " ";
    display: table; }
  .form-horizontal .form-group:after {
    clear: both; }

@media (min-width: 768px) {
  .form-horizontal .control-label {
    text-align: right;
    margin-bottom: 0;
    padding-top: 10px; } }

.form-horizontal .has-feedback .form-control-feedback {
  right: 15px; }

@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 28px;
    font-size: 18px; } }

@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
    font-size: 12px; } }

.btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: 500;
  text-align: center;
  text-transform: uppercase;
  vertical-align: middle;
  letter-spacing: 5px;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 9px 20px;
  font-size: 12px;
  line-height: 1.62857;
  border-radius: 0px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  .btn:focus, .btn.focus, .btn:active:focus, .btn:active.focus, .btn.active:focus, .btn.active.focus {
    outline: none;
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px; }
  .btn:hover, .btn:focus, .btn.focus {
    color: #fff;
    text-decoration: none; }
  .btn:active, .btn.active {
    outline: 0;
    background-image: none;
    -webkit-box-shadow: inset 0 3px 5px transparent;
    box-shadow: inset 0 3px 5px transparent; }
  .btn.disabled, .btn[disabled],
  fieldset[disabled] .btn {
    cursor: not-allowed;
    opacity: 0.65;
    filter: alpha(opacity=65);
    -webkit-box-shadow: none;
    box-shadow: none; }

a.btn.disabled,
fieldset[disabled] a.btn {
  pointer-events: none; }

.btn-default {
  color: #fff;
  background-color: #54a9a2;
  border-color: #54a9a2; }
  .btn-default:focus, .btn-default.focus {
    color: #fff;
    background-color: #438781;
    border-color: #40807b; }
  .btn-default:hover {
    color: #fff;
    background-color: #438781;
    border-color: #40807b; }
  .btn-default:active, .btn-default.active,
  .open > .btn-default.dropdown-toggle {
    color: #fff;
    background-color: #438781;
    border-color: #40807b; }
    .btn-default:active:hover, .btn-default:active:focus, .btn-default:active.focus, .btn-default.active:hover, .btn-default.active:focus, .btn-default.active.focus,
    .open > .btn-default.dropdown-toggle:hover,
    .open > .btn-default.dropdown-toggle:focus,
    .open > .btn-default.dropdown-toggle.focus {
      color: #fff;
      background-color: #376f6a;
      border-color: #40807b; }
  .btn-default:active, .btn-default.active,
  .open > .btn-default.dropdown-toggle {
    background-image: none; }
  .btn-default.disabled, .btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled.focus, .btn-default.disabled:active, .btn-default.disabled.active, .btn-default[disabled], .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled].focus, .btn-default[disabled]:active, .btn-default[disabled].active,
  fieldset[disabled] .btn-default,
  fieldset[disabled] .btn-default:hover,
  fieldset[disabled] .btn-default:focus,
  fieldset[disabled] .btn-default.focus,
  fieldset[disabled] .btn-default:active,
  fieldset[disabled] .btn-default.active {
    background-color: #54a9a2;
    border-color: #54a9a2; }
  .btn-default .badge {
    color: #54a9a2;
    background-color: #fff; }

.btn-primary {
  color: #fff;
  background-color: #54a9a2;
  border-color: #4c9892; }
  .btn-primary:focus, .btn-primary.focus {
    color: #fff;
    background-color: #438781;
    border-color: #376f6a; }
  .btn-primary:hover {
    color: #fff;
    background-color: #438781;
    border-color: #376f6a; }
  .btn-primary:active, .btn-primary.active,
  .open > .btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #438781;
    border-color: #376f6a; }
    .btn-primary:active:hover, .btn-primary:active:focus, .btn-primary:active.focus, .btn-primary.active:hover, .btn-primary.active:focus, .btn-primary.active.focus,
    .open > .btn-primary.dropdown-toggle:hover,
    .open > .btn-primary.dropdown-toggle:focus,
    .open > .btn-primary.dropdown-toggle.focus {
      color: #fff;
      background-color: #376f6a;
      border-color: #376f6a; }
  .btn-primary:active, .btn-primary.active,
  .open > .btn-primary.dropdown-toggle {
    background-image: none; }
  .btn-primary.disabled, .btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary.disabled:active, .btn-primary.disabled.active, .btn-primary[disabled], .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus, .btn-primary[disabled]:active, .btn-primary[disabled].active,
  fieldset[disabled] .btn-primary,
  fieldset[disabled] .btn-primary:hover,
  fieldset[disabled] .btn-primary:focus,
  fieldset[disabled] .btn-primary.focus,
  fieldset[disabled] .btn-primary:active,
  fieldset[disabled] .btn-primary.active {
    background-color: #54a9a2;
    border-color: #4c9892; }
  .btn-primary .badge {
    color: #54a9a2;
    background-color: #fff; }

.btn-success {
  color: #fff;
  background-color: #70ba28;
  border-color: #63a523; }
  .btn-success:focus, .btn-success.focus {
    color: #fff;
    background-color: #57901f;
    border-color: #457319; }
  .btn-success:hover {
    color: #fff;
    background-color: #57901f;
    border-color: #457319; }
  .btn-success:active, .btn-success.active,
  .open > .btn-success.dropdown-toggle {
    color: #fff;
    background-color: #57901f;
    border-color: #457319; }
    .btn-success:active:hover, .btn-success:active:focus, .btn-success:active.focus, .btn-success.active:hover, .btn-success.active:focus, .btn-success.active.focus,
    .open > .btn-success.dropdown-toggle:hover,
    .open > .btn-success.dropdown-toggle:focus,
    .open > .btn-success.dropdown-toggle.focus {
      color: #fff;
      background-color: #457319;
      border-color: #457319; }
  .btn-success:active, .btn-success.active,
  .open > .btn-success.dropdown-toggle {
    background-image: none; }
  .btn-success.disabled, .btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success.disabled:active, .btn-success.disabled.active, .btn-success[disabled], .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus, .btn-success[disabled]:active, .btn-success[disabled].active,
  fieldset[disabled] .btn-success,
  fieldset[disabled] .btn-success:hover,
  fieldset[disabled] .btn-success:focus,
  fieldset[disabled] .btn-success.focus,
  fieldset[disabled] .btn-success:active,
  fieldset[disabled] .btn-success.active {
    background-color: #70ba28;
    border-color: #63a523; }
  .btn-success .badge {
    color: #70ba28;
    background-color: #fff; }

.btn-info {
  color: #fff;
  background-color: #04adf0;
  border-color: #049bd7; }
  .btn-info:focus, .btn-info.focus {
    color: #fff;
    background-color: #0389be;
    border-color: #03709b; }
  .btn-info:hover {
    color: #fff;
    background-color: #0389be;
    border-color: #03709b; }
  .btn-info:active, .btn-info.active,
  .open > .btn-info.dropdown-toggle {
    color: #fff;
    background-color: #0389be;
    border-color: #03709b; }
    .btn-info:active:hover, .btn-info:active:focus, .btn-info:active.focus, .btn-info.active:hover, .btn-info.active:focus, .btn-info.active.focus,
    .open > .btn-info.dropdown-toggle:hover,
    .open > .btn-info.dropdown-toggle:focus,
    .open > .btn-info.dropdown-toggle.focus {
      color: #fff;
      background-color: #03709b;
      border-color: #03709b; }
  .btn-info:active, .btn-info.active,
  .open > .btn-info.dropdown-toggle {
    background-image: none; }
  .btn-info.disabled, .btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info.disabled:active, .btn-info.disabled.active, .btn-info[disabled], .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled].focus, .btn-info[disabled]:active, .btn-info[disabled].active,
  fieldset[disabled] .btn-info,
  fieldset[disabled] .btn-info:hover,
  fieldset[disabled] .btn-info:focus,
  fieldset[disabled] .btn-info.focus,
  fieldset[disabled] .btn-info:active,
  fieldset[disabled] .btn-info.active {
    background-color: #04adf0;
    border-color: #049bd7; }
  .btn-info .badge {
    color: #04adf0;
    background-color: #fff; }

.btn-warning {
  color: #fff;
  background-color: #f0c73b;
  border-color: #eec023; }
  .btn-warning:focus, .btn-warning.focus {
    color: #fff;
    background-color: #e6b612;
    border-color: #c59c0f; }
  .btn-warning:hover {
    color: #fff;
    background-color: #e6b612;
    border-color: #c59c0f; }
  .btn-warning:active, .btn-warning.active,
  .open > .btn-warning.dropdown-toggle {
    color: #fff;
    background-color: #e6b612;
    border-color: #c59c0f; }
    .btn-warning:active:hover, .btn-warning:active:focus, .btn-warning:active.focus, .btn-warning.active:hover, .btn-warning.active:focus, .btn-warning.active.focus,
    .open > .btn-warning.dropdown-toggle:hover,
    .open > .btn-warning.dropdown-toggle:focus,
    .open > .btn-warning.dropdown-toggle.focus {
      color: #fff;
      background-color: #c59c0f;
      border-color: #c59c0f; }
  .btn-warning:active, .btn-warning.active,
  .open > .btn-warning.dropdown-toggle {
    background-image: none; }
  .btn-warning.disabled, .btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning.disabled:active, .btn-warning.disabled.active, .btn-warning[disabled], .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled].focus, .btn-warning[disabled]:active, .btn-warning[disabled].active,
  fieldset[disabled] .btn-warning,
  fieldset[disabled] .btn-warning:hover,
  fieldset[disabled] .btn-warning:focus,
  fieldset[disabled] .btn-warning.focus,
  fieldset[disabled] .btn-warning:active,
  fieldset[disabled] .btn-warning.active {
    background-color: #f0c73b;
    border-color: #eec023; }
  .btn-warning .badge {
    color: #f0c73b;
    background-color: #fff; }

.btn-danger {
  color: #fff;
  background-color: #e43636;
  border-color: #e12020; }
  .btn-danger:focus, .btn-danger.focus {
    color: #fff;
    background-color: #cc1b1b;
    border-color: #ac1717; }
  .btn-danger:hover {
    color: #fff;
    background-color: #cc1b1b;
    border-color: #ac1717; }
  .btn-danger:active, .btn-danger.active,
  .open > .btn-danger.dropdown-toggle {
    color: #fff;
    background-color: #cc1b1b;
    border-color: #ac1717; }
    .btn-danger:active:hover, .btn-danger:active:focus, .btn-danger:active.focus, .btn-danger.active:hover, .btn-danger.active:focus, .btn-danger.active.focus,
    .open > .btn-danger.dropdown-toggle:hover,
    .open > .btn-danger.dropdown-toggle:focus,
    .open > .btn-danger.dropdown-toggle.focus {
      color: #fff;
      background-color: #ac1717;
      border-color: #ac1717; }
  .btn-danger:active, .btn-danger.active,
  .open > .btn-danger.dropdown-toggle {
    background-image: none; }
  .btn-danger.disabled, .btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger.disabled:active, .btn-danger.disabled.active, .btn-danger[disabled], .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled].focus, .btn-danger[disabled]:active, .btn-danger[disabled].active,
  fieldset[disabled] .btn-danger,
  fieldset[disabled] .btn-danger:hover,
  fieldset[disabled] .btn-danger:focus,
  fieldset[disabled] .btn-danger.focus,
  fieldset[disabled] .btn-danger:active,
  fieldset[disabled] .btn-danger.active {
    background-color: #e43636;
    border-color: #e12020; }
  .btn-danger .badge {
    color: #e43636;
    background-color: #fff; }

.btn-link {
  color: #000;
  font-weight: normal;
  border-radius: 0; }
  .btn-link, .btn-link:active, .btn-link.active, .btn-link[disabled],
  fieldset[disabled] .btn-link {
    background-color: transparent;
    -webkit-box-shadow: none;
    box-shadow: none; }
  .btn-link, .btn-link:hover, .btn-link:focus, .btn-link:active {
    border-color: transparent; }
  .btn-link:hover, .btn-link:focus {
    color: #54a9a2;
    text-decoration: none;
    background-color: transparent; }
  .btn-link[disabled]:hover, .btn-link[disabled]:focus,
  fieldset[disabled] .btn-link:hover,
  fieldset[disabled] .btn-link:focus {
    color: #777777;
    text-decoration: none; }

.btn-lg, .btn-group-lg > .btn {
  padding: 15px 20px;
  font-size: 12px;
  line-height: 1.8;
  border-radius: 0px; }

.btn-sm, .btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 0px;
  letter-spacing: 1px; }

.btn-xs, .btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 0px;
  letter-spacing: 1px; }

.btn-block {
  display: block;
  width: 100%; }

.btn-block + .btn-block {
  margin-top: 5px; }

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%; }

.fade {
  opacity: 0;
  -webkit-transition: opacity 0.15s linear;
  -o-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear; }
  .fade.in {
    opacity: 1; }

.collapse {
  display: none; }
  .collapse.in {
    display: block; }

tr.collapse.in {
  display: table-row; }

tbody.collapse.in {
  display: table-row-group; }

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  -webkit-transition-property: height, visibility;
  transition-property: height, visibility;
  -webkit-transition-duration: 0.35s;
  transition-duration: 0.35s;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease; }

.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: 4px dashed;
  border-top: 4px solid \9;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent; }

.dropup,
.dropdown {
  position: relative; }

.dropdown-toggle:focus {
  outline: 0; }

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  list-style: none;
  font-size: 14px;
  text-align: left;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background-clip: padding-box; }
  .dropdown-menu.pull-right, #pbr-masthead.pbr-header-v3 .pbr-topbar .dropdown-menu.inner, #pbr-masthead.pbr-header-v3 .dropdown-menu.pbr-mainmenu {
    right: 0;
    left: auto; }
  .dropdown-menu .divider {
    height: 1px;
    margin: 10px 0;
    overflow: hidden;
    background-color: #e5e5e5; }
  .dropdown-menu > li > a {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: normal;
    line-height: 1.62857;
    color: #666666;
    white-space: nowrap; }

.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
  text-decoration: none;
  color: #595959;
  background-color: #f5f5f5; }

.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  background-color: #54a9a2; }

.dropdown-menu > .disabled > a, .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
  color: #777777; }

.dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
  text-decoration: none;
  background-color: transparent;
  background-image: none;
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  cursor: not-allowed; }

.open > .dropdown-menu {
  display: block; }

.open > a {
  outline: 0; }

.dropdown-menu-right {
  left: auto;
  right: 0; }

.dropdown-menu-left {
  left: 0;
  right: auto; }

.dropdown-header {
  display: block;
  padding: 3px 20px;
  font-size: 12px;
  line-height: 1.62857;
  color: #777777;
  white-space: nowrap; }

.dropdown-backdrop {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  z-index: 990; }

.pull-right > .dropdown-menu, #pbr-masthead.pbr-header-v3 .pbr-topbar .inner > .dropdown-menu, #pbr-masthead.pbr-header-v3 .pbr-mainmenu > .dropdown-menu {
  right: 0;
  left: auto; }

.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
  border-top: 0;
  border-bottom: 4px dashed;
  border-bottom: 4px solid \9;
  content: ""; }

.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 2px; }

@media (min-width: 768px) {
  .navbar-right .dropdown-menu {
    right: 0;
    left: auto; }
  .navbar-right .dropdown-menu-left {
    left: 0;
    right: auto; } }

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-block;
  vertical-align: middle; }
  .btn-group > .btn,
  .btn-group-vertical > .btn {
    position: relative;
    float: left; }
    .btn-group > .btn:hover, .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
    .btn-group-vertical > .btn:hover,
    .btn-group-vertical > .btn:focus,
    .btn-group-vertical > .btn:active,
    .btn-group-vertical > .btn.active {
      z-index: 2; }

.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
  margin-left: -1px; }

.btn-toolbar {
  margin-left: -5px; }
  .btn-toolbar:before, .btn-toolbar:after {
    content: " ";
    display: table; }
  .btn-toolbar:after {
    clear: both; }
  .btn-toolbar .btn,
  .btn-toolbar .btn-group,
  .btn-toolbar .input-group {
    float: left; }
  .btn-toolbar > .btn,
  .btn-toolbar > .btn-group,
  .btn-toolbar > .input-group {
    margin-left: 5px; }

.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0; }

.btn-group > .btn:first-child {
  margin-left: 0; }
  .btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0; }

.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0; }

.btn-group > .btn-group {
  float: left; }

.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0; }

.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0; }

.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0; }

.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0; }

.btn-group > .btn + .dropdown-toggle {
  padding-left: 8px;
  padding-right: 8px; }

.btn-group > .btn-lg + .dropdown-toggle, .btn-group-lg.btn-group > .btn + .dropdown-toggle {
  padding-left: 12px;
  padding-right: 12px; }

.btn-group.open .dropdown-toggle {
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
  .btn-group.open .dropdown-toggle.btn-link {
    -webkit-box-shadow: none;
    box-shadow: none; }

.btn .caret {
  margin-left: 0; }

.btn-lg .caret, .btn-group-lg > .btn .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0; }

.dropup .btn-lg .caret, .dropup .btn-group-lg > .btn .caret {
  border-width: 0 5px 5px; }

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%; }

.btn-group-vertical > .btn-group:before, .btn-group-vertical > .btn-group:after {
  content: " ";
  display: table; }

.btn-group-vertical > .btn-group:after {
  clear: both; }

.btn-group-vertical > .btn-group > .btn {
  float: none; }

.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0; }

.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
  border-radius: 0; }

.btn-group-vertical > .btn:first-child:not(:last-child) {
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-bottom-left-radius: 0px;
  border-top-right-radius: 0;
  border-top-left-radius: 0; }

.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0; }

.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0; }

.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate; }
  .btn-group-justified > .btn,
  .btn-group-justified > .btn-group {
    float: none;
    display: table-cell;
    width: 1%; }
  .btn-group-justified > .btn-group .btn {
    width: 100%; }
  .btn-group-justified > .btn-group .dropdown-menu {
    left: auto; }

[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none; }

.input-group {
  position: relative;
  display: table;
  border-collapse: separate; }
  .input-group[class*="col-"] {
    float: none;
    padding-left: 0;
    padding-right: 0; }
  .input-group .form-control {
    position: relative;
    z-index: 2;
    float: left;
    width: 100%;
    margin-bottom: 0; }

.input-group-addon,
.input-group-btn,
.input-group .form-control {
  display: table-cell; }
  .input-group-addon:not(:first-child):not(:last-child),
  .input-group-btn:not(:first-child):not(:last-child),
  .input-group .form-control:not(:first-child):not(:last-child) {
    border-radius: 0; }

.input-group-addon,
.input-group-btn {
  width: 1%;
  white-space: nowrap;
  vertical-align: middle; }

.input-group-addon {
  padding: 9px 20px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  color: #555555;
  text-align: center;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  border-radius: 0px; }
  .input-group-addon.input-sm,
  .input-group-sm > .input-group-addon,
  .input-group-sm > .input-group-btn > .input-group-addon.btn {
    padding: 5px 10px;
    font-size: 12px;
    border-radius: 0px; }
  .input-group-addon.input-lg,
  .input-group-lg > .input-group-addon,
  .input-group-lg > .input-group-btn > .input-group-addon.btn {
    padding: 15px 20px;
    font-size: 18px;
    border-radius: 0px; }
  .input-group-addon input[type="radio"],
  .input-group-addon input[type="checkbox"] {
    margin-top: 0; }

.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0; }

.input-group-addon:first-child {
  border-right: 0; }

.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0; }

.input-group-addon:last-child {
  border-left: 0; }

.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap; }
  .input-group-btn > .btn {
    position: relative; }
    .input-group-btn > .btn + .btn {
      margin-left: -1px; }
    .input-group-btn > .btn:hover, .input-group-btn > .btn:focus, .input-group-btn > .btn:active {
      z-index: 2; }
  .input-group-btn:first-child > .btn,
  .input-group-btn:first-child > .btn-group {
    margin-right: -1px; }
  .input-group-btn:last-child > .btn,
  .input-group-btn:last-child > .btn-group {
    z-index: 2;
    margin-left: -1px; }

.nav {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none; }
  .nav:before, .nav:after {
    content: " ";
    display: table; }
  .nav:after {
    clear: both; }
  .nav > li {
    position: relative;
    display: block; }
    .nav > li > a {
      position: relative;
      display: block;
      padding: 10px 15px; }
      .nav > li > a:hover, .nav > li > a:focus {
        text-decoration: none;
        background-color: transparent; }
    .nav > li.disabled > a {
      color: #777777; }
      .nav > li.disabled > a:hover, .nav > li.disabled > a:focus {
        color: #777777;
        text-decoration: none;
        background-color: transparent;
        cursor: not-allowed; }
  .nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
    background-color: transparent;
    border-color: #000; }
  .nav .nav-divider {
    height: 1px;
    margin: 10px 0;
    overflow: hidden;
    background-color: #e5e5e5; }
  .nav > li > a > img {
    max-width: none; }

.nav-tabs {
  border-bottom: 1px solid transparent; }
  .nav-tabs > li {
    float: left;
    margin-bottom: -1px; }
    .nav-tabs > li > a {
      margin-right: 2px;
      line-height: 1.62857;
      border: 1px solid transparent;
      border-radius: 0px 0px 0 0; }
      .nav-tabs > li > a:hover {
        border-color: transparent transparent transparent; }
    .nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
      color: #54a9a2;
      background-color: #f6f6f6;
      border: 1px solid transparent;
      border-bottom-color: transparent;
      cursor: default; }

.nav-pills > li {
  float: left; }
  .nav-pills > li > a {
    border-radius: 0px; }
  .nav-pills > li + li {
    margin-left: 2px; }
  .nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
    color: #fff;
    background-color: #54a9a2; }

.nav-stacked > li {
  float: none; }
  .nav-stacked > li + li {
    margin-top: 2px;
    margin-left: 0; }

.nav-justified, .nav-tabs.nav-justified {
  width: 100%; }
  .nav-justified > li, .nav-tabs.nav-justified > li {
    float: none; }
    .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
      text-align: center;
      margin-bottom: 5px; }
  .nav-justified > .dropdown .dropdown-menu {
    top: auto;
    left: auto; }
  @media (min-width: 768px) {
    .nav-justified > li, .nav-tabs.nav-justified > li {
      display: table-cell;
      width: 1%; }
      .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
        margin-bottom: 0; } }

.nav-tabs-justified, .nav-tabs.nav-justified {
  border-bottom: 0; }
  .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
    margin-right: 0;
    border-radius: 0px; }
  .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
  .nav-tabs-justified > .active > a:hover, .nav-tabs.nav-justified > .active > a:hover,
  .nav-tabs-justified > .active > a:focus, .nav-tabs.nav-justified > .active > a:focus {
    border: 1px solid #ddd; }
  @media (min-width: 768px) {
    .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
      border-bottom: 1px solid #ddd;
      border-radius: 0px 0px 0 0; }
    .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
    .nav-tabs-justified > .active > a:hover, .nav-tabs.nav-justified > .active > a:hover,
    .nav-tabs-justified > .active > a:focus, .nav-tabs.nav-justified > .active > a:focus {
      border-bottom-color: #f6f6f6; } }

.tab-content > .tab-pane {
  display: none; }

.tab-content > .active {
  display: block; }

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-right-radius: 0;
  border-top-left-radius: 0; }

.navbar {
  position: relative;
  min-height: 50px;
  margin-bottom: 22px;
  border: 1px solid transparent; }
  .navbar:before, .navbar:after {
    content: " ";
    display: table; }
  .navbar:after {
    clear: both; }
  @media (min-width: 768px) {
    .navbar {
      border-radius: 0px; } }

.navbar-header:before, .navbar-header:after {
  content: " ";
  display: table; }

.navbar-header:after {
  clear: both; }

@media (min-width: 768px) {
  .navbar-header {
    float: left; } }

.navbar-collapse {
  overflow-x: visible;
  padding-right: 15px;
  padding-left: 15px;
  border-top: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
  -webkit-overflow-scrolling: touch; }
  .navbar-collapse:before, .navbar-collapse:after {
    content: " ";
    display: table; }
  .navbar-collapse:after {
    clear: both; }
  .navbar-collapse.in {
    overflow-y: auto; }
  @media (min-width: 768px) {
    .navbar-collapse {
      width: auto;
      border-top: 0;
      box-shadow: none; }
      .navbar-collapse.collapse {
        display: block !important;
        height: auto !important;
        padding-bottom: 0;
        overflow: visible !important; }
      .navbar-collapse.in {
        overflow-y: visible; }
      .navbar-fixed-top .navbar-collapse,
      .navbar-static-top .navbar-collapse,
      .navbar-fixed-bottom .navbar-collapse {
        padding-left: 0;
        padding-right: 0; } }

.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
  max-height: 340px; }
  @media (max-device-width: 480px) and (orientation: landscape) {
    .navbar-fixed-top .navbar-collapse,
    .navbar-fixed-bottom .navbar-collapse {
      max-height: 200px; } }

.container > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-header,
.container-fluid > .navbar-collapse {
  margin-right: -15px;
  margin-left: -15px; }
  @media (min-width: 768px) {
    .container > .navbar-header,
    .container > .navbar-collapse,
    .container-fluid > .navbar-header,
    .container-fluid > .navbar-collapse {
      margin-right: 0;
      margin-left: 0; } }

.navbar-static-top {
  z-index: 1000;
  border-width: 0 0 1px; }
  @media (min-width: 768px) {
    .navbar-static-top {
      border-radius: 0; } }

.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030; }
  @media (min-width: 768px) {
    .navbar-fixed-top,
    .navbar-fixed-bottom {
      border-radius: 0; } }

.navbar-fixed-top {
  top: 0;
  border-width: 0 0 1px; }

.navbar-fixed-bottom {
  bottom: 0;
  margin-bottom: 0;
  border-width: 1px 0 0; }

.navbar-brand {
  float: left;
  padding: 14px 15px;
  font-size: 18px;
  line-height: 22px;
  height: 50px; }
  .navbar-brand:hover, .navbar-brand:focus {
    text-decoration: none; }
  .navbar-brand > img {
    display: block; }
  @media (min-width: 768px) {
    .navbar > .container .navbar-brand,
    .navbar > .container-fluid .navbar-brand {
      margin-left: -15px; } }

.navbar-toggle {
  position: relative;
  float: right;
  margin-right: 15px;
  padding: 9px 10px;
  margin-top: 8px;
  margin-bottom: 8px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 0px; }
  .navbar-toggle:focus {
    outline: 0; }
  .navbar-toggle .icon-bar {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 1px; }
  .navbar-toggle .icon-bar + .icon-bar {
    margin-top: 4px; }
  @media (min-width: 768px) {
    .navbar-toggle {
      display: none; } }

.navbar-nav {
  margin: 7px -15px; }
  .navbar-nav > li > a {
    padding-top: 10px;
    padding-bottom: 10px;
    line-height: 22px; }
  @media (max-width: 767px) {
    .navbar-nav .open .dropdown-menu {
      position: static;
      float: none;
      width: auto;
      margin-top: 0;
      background-color: transparent;
      border: 0;
      box-shadow: none; }
      .navbar-nav .open .dropdown-menu > li > a,
      .navbar-nav .open .dropdown-menu .dropdown-header {
        padding: 5px 15px 5px 25px; }
      .navbar-nav .open .dropdown-menu > li > a {
        line-height: 22px; }
        .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-nav .open .dropdown-menu > li > a:focus {
          background-image: none; } }
  @media (min-width: 768px) {
    .navbar-nav {
      float: left;
      margin: 0; }
      .navbar-nav > li {
        float: left; }
        .navbar-nav > li > a {
          padding-top: 14px;
          padding-bottom: 14px; } }

.navbar-form {
  margin-left: -15px;
  margin-right: -15px;
  padding: 10px 15px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  margin-top: 2px;
  margin-bottom: 2px; }
  @media (min-width: 768px) {
    .navbar-form .form-group {
      display: inline-block;
      margin-bottom: 0;
      vertical-align: middle; }
    .navbar-form .form-control {
      display: inline-block;
      width: auto;
      vertical-align: middle; }
    .navbar-form .form-control-static {
      display: inline-block; }
    .navbar-form .input-group {
      display: inline-table;
      vertical-align: middle; }
      .navbar-form .input-group .input-group-addon,
      .navbar-form .input-group .input-group-btn,
      .navbar-form .input-group .form-control {
        width: auto; }
    .navbar-form .input-group > .form-control {
      width: 100%; }
    .navbar-form .control-label {
      margin-bottom: 0;
      vertical-align: middle; }
    .navbar-form .radio,
    .navbar-form .checkbox {
      display: inline-block;
      margin-top: 0;
      margin-bottom: 0;
      vertical-align: middle; }
      .navbar-form .radio label,
      .navbar-form .checkbox label {
        padding-left: 0; }
    .navbar-form .radio input[type="radio"],
    .navbar-form .checkbox input[type="checkbox"] {
      position: relative;
      margin-left: 0; }
    .navbar-form .has-feedback .form-control-feedback {
      top: 0; } }
  @media (max-width: 767px) {
    .navbar-form .form-group {
      margin-bottom: 5px; }
      .navbar-form .form-group:last-child {
        margin-bottom: 0; } }
  @media (min-width: 768px) {
    .navbar-form {
      width: auto;
      border: 0;
      margin-left: 0;
      margin-right: 0;
      padding-top: 0;
      padding-bottom: 0;
      -webkit-box-shadow: none;
      box-shadow: none; } }

.navbar-nav > li > .dropdown-menu {
  margin-top: 0;
  border-top-right-radius: 0;
  border-top-left-radius: 0; }

.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
  margin-bottom: 0;
  border-top-right-radius: 0px;
  border-top-left-radius: 0px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.navbar-btn {
  margin-top: 2px;
  margin-bottom: 2px; }
  .navbar-btn.btn-sm, .btn-group-sm > .navbar-btn.btn {
    margin-top: 10px;
    margin-bottom: 10px; }
  .navbar-btn.btn-xs, .btn-group-xs > .navbar-btn.btn {
    margin-top: 14px;
    margin-bottom: 14px; }

.navbar-text {
  margin-top: 14px;
  margin-bottom: 14px; }
  @media (min-width: 768px) {
    .navbar-text {
      float: left;
      margin-left: 15px;
      margin-right: 15px; } }

@media (min-width: 768px) {
  .navbar-left {
    float: left !important; }
  .navbar-right {
    float: right !important;
    margin-right: -15px; }
    .navbar-right ~ .navbar-right {
      margin-right: 0; } }

.navbar-default {
  background-color: #f8f8f8;
  border-color: #e7e7e7; }
  .navbar-default .navbar-brand {
    color: #777; }
    .navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {
      color: #5e5e5e;
      background-color: transparent; }
  .navbar-default .navbar-text {
    color: #777; }
  .navbar-default .navbar-nav > li > a {
    color: #777; }
    .navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
      color: #333;
      background-color: transparent; }
  .navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus {
    color: #555;
    background-color: #e7e7e7; }
  .navbar-default .navbar-nav > .disabled > a, .navbar-default .navbar-nav > .disabled > a:hover, .navbar-default .navbar-nav > .disabled > a:focus {
    color: #ccc;
    background-color: transparent; }
  .navbar-default .navbar-toggle {
    border-color: #ddd; }
    .navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
      background-color: #ddd; }
    .navbar-default .navbar-toggle .icon-bar {
      background-color: #888; }
  .navbar-default .navbar-collapse,
  .navbar-default .navbar-form {
    border-color: #e7e7e7; }
  .navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
    background-color: #e7e7e7;
    color: #555; }
  @media (max-width: 767px) {
    .navbar-default .navbar-nav .open .dropdown-menu > li > a {
      color: #777; }
      .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
        color: #333;
        background-color: transparent; }
    .navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
      color: #555;
      background-color: #e7e7e7; }
    .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
      color: #ccc;
      background-color: transparent; } }
  .navbar-default .navbar-link {
    color: #777; }
    .navbar-default .navbar-link:hover {
      color: #333; }
  .navbar-default .btn-link {
    color: #777; }
    .navbar-default .btn-link:hover, .navbar-default .btn-link:focus {
      color: #333; }
    .navbar-default .btn-link[disabled]:hover, .navbar-default .btn-link[disabled]:focus,
    fieldset[disabled] .navbar-default .btn-link:hover,
    fieldset[disabled] .navbar-default .btn-link:focus {
      color: #ccc; }

.navbar-inverse {
  background-color: #222;
  border-color: #090909; }
  .navbar-inverse .navbar-brand {
    color: #9d9d9d; }
    .navbar-inverse .navbar-brand:hover, .navbar-inverse .navbar-brand:focus {
      color: #fff;
      background-color: transparent; }
  .navbar-inverse .navbar-text {
    color: #9d9d9d; }
  .navbar-inverse .navbar-nav > li > a {
    color: #9d9d9d; }
    .navbar-inverse .navbar-nav > li > a:hover, .navbar-inverse .navbar-nav > li > a:focus {
      color: #fff;
      background-color: transparent; }
  .navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus {
    color: #fff;
    background-color: #090909; }
  .navbar-inverse .navbar-nav > .disabled > a, .navbar-inverse .navbar-nav > .disabled > a:hover, .navbar-inverse .navbar-nav > .disabled > a:focus {
    color: #444;
    background-color: transparent; }
  .navbar-inverse .navbar-toggle {
    border-color: #333; }
    .navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus {
      background-color: #333; }
    .navbar-inverse .navbar-toggle .icon-bar {
      background-color: #fff; }
  .navbar-inverse .navbar-collapse,
  .navbar-inverse .navbar-form {
    border-color: #101010; }
  .navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus {
    background-color: #090909;
    color: #fff; }
  @media (max-width: 767px) {
    .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
      border-color: #090909; }
    .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
      background-color: #090909; }
    .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
      color: #9d9d9d; }
      .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
        color: #fff;
        background-color: transparent; }
    .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
      color: #fff;
      background-color: #090909; }
    .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
      color: #444;
      background-color: transparent; } }
  .navbar-inverse .navbar-link {
    color: #9d9d9d; }
    .navbar-inverse .navbar-link:hover {
      color: #fff; }
  .navbar-inverse .btn-link {
    color: #9d9d9d; }
    .navbar-inverse .btn-link:hover, .navbar-inverse .btn-link:focus {
      color: #fff; }
    .navbar-inverse .btn-link[disabled]:hover, .navbar-inverse .btn-link[disabled]:focus,
    fieldset[disabled] .navbar-inverse .btn-link:hover,
    fieldset[disabled] .navbar-inverse .btn-link:focus {
      color: #444; }

.breadcrumb {
  padding: 40px 15px;
  margin-bottom: 22px;
  list-style: none;
  background-color: #efefef;
  /* border-radius: $border-radius-base; */ }
  .breadcrumb > li {
    display: inline-block; }
    .breadcrumb > li + li:before {
      padding: 0 5px;
      color: #666; }
  .breadcrumb > .active {
    color: #777777; }

.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 0;
  border-radius: 0px; }
  .pagination > li {
    display: inline; }
    .pagination > li > a,
    .pagination > li > span {
      position: relative;
      float: left;
      padding: 9px 20px;
      line-height: 1.62857;
      text-decoration: none;
      color: #000;
      background-color: #fff;
      border: 1px solid #ddd;
      margin-left: -1px; }
    .pagination > li:first-child > a,
    .pagination > li:first-child > span {
      margin-left: 0;
      border-bottom-left-radius: 0px;
      border-top-left-radius: 0px; }
    .pagination > li:last-child > a,
    .pagination > li:last-child > span {
      border-bottom-right-radius: 0px;
      border-top-right-radius: 0px; }
  .pagination > li > a:hover, .pagination > li > a:focus,
  .pagination > li > span:hover,
  .pagination > li > span:focus {
    z-index: 3;
    color: #54a9a2;
    background-color: #eeeeee;
    border-color: #ddd; }
  .pagination > li > a.current,
  .pagination > li > span.current {
    color: #54a9a2; }
  .pagination > .active > a, .pagination > .active > a:hover, .pagination > .active > a:focus,
  .pagination > .active > span,
  .pagination > .active > span:hover,
  .pagination > .active > span:focus {
    z-index: 2;
    color: #fff;
    background-color: #54a9a2;
    border-color: #54a9a2;
    cursor: default; }
  .pagination > .disabled > span,
  .pagination > .disabled > span:hover,
  .pagination > .disabled > span:focus,
  .pagination > .disabled > a,
  .pagination > .disabled > a:hover,
  .pagination > .disabled > a:focus {
    color: #777777;
    background-color: #fff;
    border-color: #ddd;
    cursor: not-allowed; }

.pagination-lg > li > a,
.pagination-lg > li > span {
  padding: 15px 20px;
  font-size: 18px;
  line-height: 1.8; }

.pagination-lg > li:first-child > a,
.pagination-lg > li:first-child > span {
  border-bottom-left-radius: 0px;
  border-top-left-radius: 0px; }

.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
  border-bottom-right-radius: 0px;
  border-top-right-radius: 0px; }

.pagination-sm > li > a,
.pagination-sm > li > span {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5; }

.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
  border-bottom-left-radius: 0px;
  border-top-left-radius: 0px; }

.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
  border-bottom-right-radius: 0px;
  border-top-right-radius: 0px; }

.label {
  display: inline;
  padding: .2em .6em .3em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25em; }
  .label:empty {
    display: none; }
  .btn .label {
    position: relative;
    top: -1px; }

a.label:hover, a.label:focus {
  color: #54a9a2;
  text-decoration: none;
  cursor: pointer; }

.label-default {
  background-color: #777777; }
  .label-default[href]:hover, .label-default[href]:focus {
    background-color: #5e5e5e; }

.label-primary {
  background-color: #54a9a2; }
  .label-primary[href]:hover, .label-primary[href]:focus {
    background-color: #438781; }

.label-success {
  background-color: #70ba28; }
  .label-success[href]:hover, .label-success[href]:focus {
    background-color: #57901f; }

.label-info {
  background-color: #04adf0; }
  .label-info[href]:hover, .label-info[href]:focus {
    background-color: #0389be; }

.label-warning {
  background-color: #f0c73b; }
  .label-warning[href]:hover, .label-warning[href]:focus {
    background-color: #e6b612; }

.label-danger {
  background-color: #e43636; }
  .label-danger[href]:hover, .label-danger[href]:focus {
    background-color: #cc1b1b; }

.badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  line-height: 1;
  vertical-align: middle;
  white-space: nowrap;
  text-align: center;
  background-color: #777777;
  border-radius: 10px; }
  .badge:empty {
    display: none; }
  .btn .badge {
    position: relative;
    top: -1px; }
  .btn-xs .badge, .btn-group-xs > .btn .badge,
  .btn-group-xs > .btn .badge {
    top: 0;
    padding: 1px 5px; }
  .list-group-item.active > .badge,
  .nav-pills > .active > a > .badge {
    color: #000;
    background-color: #fff; }
  .list-group-item > .badge {
    float: right; }
  .list-group-item > .badge + .badge {
    margin-right: 5px; }
  .nav-pills > li > a > .badge {
    margin-left: 3px; }

a.badge:hover, a.badge:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer; }

.alert, .woocommerce-error, .woocommerce-info, .woocommerce-message {
  padding: 15px;
  margin-bottom: 22px;
  border: 1px solid transparent;
  border-radius: 0px; }
  .alert h4, .woocommerce-error h4, .woocommerce-info h4, .woocommerce-message h4 {
    margin-top: 0;
    color: inherit; }
  .alert .alert-link, .woocommerce-error .alert-link, .woocommerce-info .alert-link, .woocommerce-message .alert-link {
    font-weight: bold; }
  .alert > p, .woocommerce-error > p, .woocommerce-info > p, .woocommerce-message > p,
  .alert > ul, .woocommerce-error > ul, .woocommerce-info > ul, .woocommerce-message > ul {
    margin-bottom: 0; }
  .alert > p + p, .woocommerce-error > p + p, .woocommerce-info > p + p, .woocommerce-message > p + p {
    margin-top: 5px; }

.alert-dismissable,
.alert-dismissible {
  padding-right: 35px; }
  .alert-dismissable .close,
  .alert-dismissible .close {
    position: relative;
    top: -2px;
    right: -21px;
    color: inherit; }

.alert-success, .woocommerce-message {
  background-color: #dff0d8;
  border-color: #d6e9c6;
  color: #3c763d; }
  .alert-success hr, .woocommerce-message hr {
    border-top-color: #c9e2b3; }
  .alert-success .alert-link, .woocommerce-message .alert-link {
    color: #2b542c; }

.alert-info, .woocommerce-info {
  background-color: #d9edf7;
  border-color: #bce8f1;
  color: #31708f; }
  .alert-info hr, .woocommerce-info hr {
    border-top-color: #a6e1ec; }
  .alert-info .alert-link, .woocommerce-info .alert-link {
    color: #245269; }

.alert-warning {
  background-color: #f0c73b;
  border-color: #ee9e23;
  color: #8a6d3b; }
  .alert-warning hr {
    border-top-color: #e69312; }
  .alert-warning .alert-link {
    color: #66512c; }

.alert-danger, .woocommerce-error {
  background-color: #f8d7da;
  border-color: #f4c1ce;
  color: #a94442; }
  .alert-danger hr, .woocommerce-error hr {
    border-top-color: #f0acbd; }
  .alert-danger .alert-link, .woocommerce-error .alert-link {
    color: #843534; }

@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 40px 0; }
  to {
    background-position: 0 0; } }

@keyframes progress-bar-stripes {
  from {
    background-position: 40px 0; }
  to {
    background-position: 0 0; } }

.progress {
  overflow: hidden;
  height: 22px;
  margin-bottom: 22px;
  background-color: #f5f5f5;
  border-radius: 0px;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); }

.progress-bar {
  float: left;
  width: 0%;
  height: 100%;
  font-size: 12px;
  line-height: 22px;
  color: #fff;
  text-align: center;
  background-color: #54a9a2;
  -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  -webkit-transition: width 0.6s ease;
  -o-transition: width 0.6s ease;
  transition: width 0.6s ease; }

.progress-striped .progress-bar,
.progress-bar-striped {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 40px 40px; }

.progress.active .progress-bar,
.progress-bar.active {
  -webkit-animation: progress-bar-stripes 2s linear infinite;
  -o-animation: progress-bar-stripes 2s linear infinite;
  animation: progress-bar-stripes 2s linear infinite; }

.progress-bar-success {
  background-color: #70ba28; }
  .progress-striped .progress-bar-success {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-info {
  background-color: #04adf0; }
  .progress-striped .progress-bar-info {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-warning {
  background-color: #f0c73b; }
  .progress-striped .progress-bar-warning {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-danger {
  background-color: #e43636; }
  .progress-striped .progress-bar-danger {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.media {
  margin-top: 15px; }
  .media:first-child {
    margin-top: 0; }

.media,
.media-body {
  zoom: 1;
  overflow: hidden; }

.media-object {
  display: block; }
  .media-object.img-thumbnail {
    max-width: none; }

.media-right,
.media > .pull-right, #pbr-masthead.pbr-header-v3 .pbr-topbar
.media > .inner, #pbr-masthead.pbr-header-v3
.media > .pbr-mainmenu {
  padding-left: 10px; }

.media-left,
.media > .pull-left {
  padding-right: 20px; }

.media-left,
.media-right,
.media-body {
  display: table-cell;
  vertical-align: top; }

.media-middle {
  vertical-align: middle; }

.media-bottom {
  vertical-align: bottom; }

.media-heading {
  margin-top: 0;
  margin-bottom: 5px; }

.media-list {
  padding-left: 0;
  list-style: none; }

.list-group {
  margin-bottom: 20px;
  padding-left: 0; }

.list-group-item {
  position: relative;
  display: block;
  padding: 10px 15px;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid #ddd; }
  .list-group-item:first-child {
    border-top-right-radius: 0px;
    border-top-left-radius: 0px; }
  .list-group-item:last-child {
    margin-bottom: 0;
    border-bottom-right-radius: 0px;
    border-bottom-left-radius: 0px; }

a.list-group-item,
button.list-group-item {
  color: #555; }
  a.list-group-item .list-group-item-heading,
  button.list-group-item .list-group-item-heading {
    color: #333; }
  a.list-group-item:hover, a.list-group-item:focus,
  button.list-group-item:hover,
  button.list-group-item:focus {
    text-decoration: none;
    color: #555;
    background-color: #f5f5f5; }

button.list-group-item {
  width: 100%;
  text-align: left; }

.list-group-item.disabled, .list-group-item.disabled:hover, .list-group-item.disabled:focus {
  background-color: #eeeeee;
  color: #777777;
  cursor: not-allowed; }
  .list-group-item.disabled .list-group-item-heading, .list-group-item.disabled:hover .list-group-item-heading, .list-group-item.disabled:focus .list-group-item-heading {
    color: inherit; }
  .list-group-item.disabled .list-group-item-text, .list-group-item.disabled:hover .list-group-item-text, .list-group-item.disabled:focus .list-group-item-text {
    color: #777777; }

.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus {
  z-index: 2;
  color: #fff;
  background-color: #54a9a2;
  border-color: #54a9a2; }
  .list-group-item.active .list-group-item-heading,
  .list-group-item.active .list-group-item-heading > small,
  .list-group-item.active .list-group-item-heading > .small, .list-group-item.active:hover .list-group-item-heading,
  .list-group-item.active:hover .list-group-item-heading > small,
  .list-group-item.active:hover .list-group-item-heading > .small, .list-group-item.active:focus .list-group-item-heading,
  .list-group-item.active:focus .list-group-item-heading > small,
  .list-group-item.active:focus .list-group-item-heading > .small {
    color: inherit; }
  .list-group-item.active .list-group-item-text, .list-group-item.active:hover .list-group-item-text, .list-group-item.active:focus .list-group-item-text {
    color: #dcedec; }

.list-group-item-success {
  color: #3c763d;
  background-color: #dff0d8; }

a.list-group-item-success,
button.list-group-item-success {
  color: #3c763d; }
  a.list-group-item-success .list-group-item-heading,
  button.list-group-item-success .list-group-item-heading {
    color: inherit; }
  a.list-group-item-success:hover, a.list-group-item-success:focus,
  button.list-group-item-success:hover,
  button.list-group-item-success:focus {
    color: #3c763d;
    background-color: #d0e9c6; }
  a.list-group-item-success.active, a.list-group-item-success.active:hover, a.list-group-item-success.active:focus,
  button.list-group-item-success.active,
  button.list-group-item-success.active:hover,
  button.list-group-item-success.active:focus {
    color: #fff;
    background-color: #3c763d;
    border-color: #3c763d; }

.list-group-item-info {
  color: #31708f;
  background-color: #d9edf7; }

a.list-group-item-info,
button.list-group-item-info {
  color: #31708f; }
  a.list-group-item-info .list-group-item-heading,
  button.list-group-item-info .list-group-item-heading {
    color: inherit; }
  a.list-group-item-info:hover, a.list-group-item-info:focus,
  button.list-group-item-info:hover,
  button.list-group-item-info:focus {
    color: #31708f;
    background-color: #c4e3f3; }
  a.list-group-item-info.active, a.list-group-item-info.active:hover, a.list-group-item-info.active:focus,
  button.list-group-item-info.active,
  button.list-group-item-info.active:hover,
  button.list-group-item-info.active:focus {
    color: #fff;
    background-color: #31708f;
    border-color: #31708f; }

.list-group-item-warning {
  color: #8a6d3b;
  background-color: #f0c73b; }

a.list-group-item-warning,
button.list-group-item-warning {
  color: #8a6d3b; }
  a.list-group-item-warning .list-group-item-heading,
  button.list-group-item-warning .list-group-item-heading {
    color: inherit; }
  a.list-group-item-warning:hover, a.list-group-item-warning:focus,
  button.list-group-item-warning:hover,
  button.list-group-item-warning:focus {
    color: #8a6d3b;
    background-color: #eec023; }
  a.list-group-item-warning.active, a.list-group-item-warning.active:hover, a.list-group-item-warning.active:focus,
  button.list-group-item-warning.active,
  button.list-group-item-warning.active:hover,
  button.list-group-item-warning.active:focus {
    color: #fff;
    background-color: #8a6d3b;
    border-color: #8a6d3b; }

.list-group-item-danger {
  color: #a94442;
  background-color: #f8d7da; }

a.list-group-item-danger,
button.list-group-item-danger {
  color: #a94442; }
  a.list-group-item-danger .list-group-item-heading,
  button.list-group-item-danger .list-group-item-heading {
    color: inherit; }
  a.list-group-item-danger:hover, a.list-group-item-danger:focus,
  button.list-group-item-danger:hover,
  button.list-group-item-danger:focus {
    color: #a94442;
    background-color: #f4c1c6; }
  a.list-group-item-danger.active, a.list-group-item-danger.active:hover, a.list-group-item-danger.active:focus,
  button.list-group-item-danger.active,
  button.list-group-item-danger.active:hover,
  button.list-group-item-danger.active:focus {
    color: #fff;
    background-color: #a94442;
    border-color: #a94442; }

.list-group-item-heading {
  margin-top: 0;
  margin-bottom: 5px; }

.list-group-item-text {
  margin-bottom: 0;
  line-height: 1.3; }

.panel {
  margin-bottom: 22px;
  background-color: #fff;
  border: 1px solid transparent;
  border-radius: 0px;
  -webkit-box-shadow: none;
  box-shadow: none; }

.panel-body {
  padding: 20px; }
  .panel-body:before, .panel-body:after {
    content: " ";
    display: table; }
  .panel-body:after {
    clear: both; }

.panel-heading {
  padding: 15px 20px;
  border-bottom: 1px solid transparent;
  border-top-right-radius: -1px;
  border-top-left-radius: -1px; }
  .panel-heading > .dropdown .dropdown-toggle {
    color: inherit; }

.panel-title {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  color: inherit; }
  .panel-title > a,
  .panel-title > small,
  .panel-title > .small,
  .panel-title > small > a,
  .panel-title > .small > a {
    color: inherit; }

.panel-footer {
  padding: 15px 20px;
  background-color: #f5f5f5;
  border-top: 1px solid transparent;
  border-bottom-right-radius: -1px;
  border-bottom-left-radius: -1px; }

.panel > .list-group,
.panel > .panel-collapse > .list-group {
  margin-bottom: 0; }
  .panel > .list-group .list-group-item,
  .panel > .panel-collapse > .list-group .list-group-item {
    border-width: 1px 0;
    border-radius: 0; }
  .panel > .list-group:first-child .list-group-item:first-child,
  .panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {
    border-top: 0;
    border-top-right-radius: -1px;
    border-top-left-radius: -1px; }
  .panel > .list-group:last-child .list-group-item:last-child,
  .panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
    border-bottom: 0;
    border-bottom-right-radius: -1px;
    border-bottom-left-radius: -1px; }

.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0; }

.panel-heading + .list-group .list-group-item:first-child {
  border-top-width: 0; }

.list-group + .panel-footer {
  border-top-width: 0; }

.panel > .table,
.panel > .table-responsive > .table,
.panel > .panel-collapse > .table {
  margin-bottom: 0; }
  .panel > .table caption,
  .panel > .table-responsive > .table caption,
  .panel > .panel-collapse > .table caption {
    padding-left: 20px;
    padding-right: 20px; }

.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
  border-top-right-radius: -1px;
  border-top-left-radius: -1px; }
  .panel > .table:first-child > thead:first-child > tr:first-child,
  .panel > .table:first-child > tbody:first-child > tr:first-child,
  .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
  .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
    border-top-left-radius: -1px;
    border-top-right-radius: -1px; }
    .panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
    .panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
      border-top-left-radius: -1px; }
    .panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
    .panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
      border-top-right-radius: -1px; }

.panel > .table:last-child,
.panel > .table-responsive:last-child > .table:last-child {
  border-bottom-right-radius: -1px;
  border-bottom-left-radius: -1px; }
  .panel > .table:last-child > tbody:last-child > tr:last-child,
  .panel > .table:last-child > tfoot:last-child > tr:last-child,
  .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
  .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
    border-bottom-left-radius: -1px;
    border-bottom-right-radius: -1px; }
    .panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
    .panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
      border-bottom-left-radius: -1px; }
    .panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
    .panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
      border-bottom-right-radius: -1px; }

.panel > .panel-body + .table,
.panel > .panel-body + .table-responsive,
.panel > .table + .panel-body,
.panel > .table-responsive + .panel-body {
  border-top: 1px solid #ddd; }

.panel > .table > tbody:first-child > tr:first-child th,
.panel > .table > tbody:first-child > tr:first-child td {
  border-top: 0; }

.panel > .table-bordered,
.panel > .table-responsive > .table-bordered {
  border: 0; }
  .panel > .table-bordered > thead > tr > th:first-child,
  .panel > .table-bordered > thead > tr > td:first-child,
  .panel > .table-bordered > tbody > tr > th:first-child,
  .panel > .table-bordered > tbody > tr > td:first-child,
  .panel > .table-bordered > tfoot > tr > th:first-child,
  .panel > .table-bordered > tfoot > tr > td:first-child,
  .panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
  .panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
    border-left: 0; }
  .panel > .table-bordered > thead > tr > th:last-child,
  .panel > .table-bordered > thead > tr > td:last-child,
  .panel > .table-bordered > tbody > tr > th:last-child,
  .panel > .table-bordered > tbody > tr > td:last-child,
  .panel > .table-bordered > tfoot > tr > th:last-child,
  .panel > .table-bordered > tfoot > tr > td:last-child,
  .panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
  .panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
    border-right: 0; }
  .panel > .table-bordered > thead > tr:first-child > td,
  .panel > .table-bordered > thead > tr:first-child > th,
  .panel > .table-bordered > tbody > tr:first-child > td,
  .panel > .table-bordered > tbody > tr:first-child > th,
  .panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
  .panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
  .panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
  .panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
    border-bottom: 0; }
  .panel > .table-bordered > tbody > tr:last-child > td,
  .panel > .table-bordered > tbody > tr:last-child > th,
  .panel > .table-bordered > tfoot > tr:last-child > td,
  .panel > .table-bordered > tfoot > tr:last-child > th,
  .panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
  .panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
  .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
  .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
    border-bottom: 0; }

.panel > .table-responsive {
  border: 0;
  margin-bottom: 0; }

.panel-group {
  margin-bottom: 22px; }
  .panel-group .panel {
    margin-bottom: 0;
    border-radius: 0px; }
    .panel-group .panel + .panel {
      margin-top: 5px; }
  .panel-group .panel-heading {
    border-bottom: 0; }
    .panel-group .panel-heading + .panel-collapse > .panel-body,
    .panel-group .panel-heading + .panel-collapse > .list-group {
      border-top: 1px solid transparent; }
  .panel-group .panel-footer {
    border-top: 0; }
    .panel-group .panel-footer + .panel-collapse .panel-body {
      border-bottom: 1px solid transparent; }

.panel-default {
  border-color: #ededed; }
  .panel-default > .panel-heading {
    color: #666666;
    background-color: #f5f5f5;
    border-color: #ededed; }
    .panel-default > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #ededed; }
    .panel-default > .panel-heading .badge {
      color: #f5f5f5;
      background-color: #666666; }
  .panel-default > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #ededed; }

.panel-primary {
  border-color: #54a9a2; }
  .panel-primary > .panel-heading {
    color: #fff;
    background-color: #54a9a2;
    border-color: #54a9a2; }
    .panel-primary > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #54a9a2; }
    .panel-primary > .panel-heading .badge {
      color: #54a9a2;
      background-color: #fff; }
  .panel-primary > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #54a9a2; }

.panel-success {
  border-color: #d6e9c6; }
  .panel-success > .panel-heading {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #d6e9c6; }
    .panel-success > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #d6e9c6; }
    .panel-success > .panel-heading .badge {
      color: #dff0d8;
      background-color: #3c763d; }
  .panel-success > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #d6e9c6; }

.panel-info {
  border-color: #bce8f1; }
  .panel-info > .panel-heading {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bce8f1; }
    .panel-info > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #bce8f1; }
    .panel-info > .panel-heading .badge {
      color: #d9edf7;
      background-color: #31708f; }
  .panel-info > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #bce8f1; }

.panel-warning {
  border-color: #ee9e23; }
  .panel-warning > .panel-heading {
    color: #8a6d3b;
    background-color: #f0c73b;
    border-color: #ee9e23; }
    .panel-warning > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #ee9e23; }
    .panel-warning > .panel-heading .badge {
      color: #f0c73b;
      background-color: #8a6d3b; }
  .panel-warning > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #ee9e23; }

.panel-danger {
  border-color: #f4c1ce; }
  .panel-danger > .panel-heading {
    color: #a94442;
    background-color: #f8d7da;
    border-color: #f4c1ce; }
    .panel-danger > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #f4c1ce; }
    .panel-danger > .panel-heading .badge {
      color: #f8d7da;
      background-color: #a94442; }
  .panel-danger > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #f4c1ce; }

.embed-responsive {
  position: relative;
  display: block;
  height: 0;
  padding: 0;
  overflow: hidden; }
  .embed-responsive .embed-responsive-item,
  .embed-responsive iframe,
  .embed-responsive embed,
  .embed-responsive object,
  .embed-responsive video {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    border: 0; }

.embed-responsive-16by9 {
  padding-bottom: 56.25%; }

.embed-responsive-4by3 {
  padding-bottom: 75%; }

.modal-open {
  overflow: hidden; }

.modal {
  display: none;
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10500;
  -webkit-overflow-scrolling: touch;
  outline: 0; }
  .modal.fade .modal-dialog {
    -webkit-transform: translate(0, -25%);
    -ms-transform: translate(0, -25%);
    -o-transform: translate(0, -25%);
    transform: translate(0, -25%);
    -webkit-transition: -webkit-transform 0.3s ease-out;
    -moz-transition: -moz-transform 0.3s ease-out;
    -o-transition: -o-transform 0.3s ease-out;
    transition: transform 0.3s ease-out; }
  .modal.in .modal-dialog {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto; }

.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px; }

.modal-content {
  position: relative;
  background-color: #fff;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0px;
  -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  background-clip: padding-box;
  outline: 0; }

.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000; }
  .modal-backdrop.fade {
    opacity: 0;
    filter: alpha(opacity=0); }
  .modal-backdrop.in {
    opacity: 0.5;
    filter: alpha(opacity=50); }

.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5;
  min-height: 16.62857px; }

.modal-header .close {
  margin-top: -2px; }

.modal-title {
  margin: 0;
  line-height: 1.62857; }

.modal-body {
  position: relative;
  padding: 15px; }

.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5; }
  .modal-footer:before, .modal-footer:after {
    content: " ";
    display: table; }
  .modal-footer:after {
    clear: both; }
  .modal-footer .btn + .btn {
    margin-left: 5px;
    margin-bottom: 0; }
  .modal-footer .btn-group .btn + .btn {
    margin-left: -1px; }
  .modal-footer .btn-block + .btn-block {
    margin-left: 0; }

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll; }

@media (min-width: 480px) {
  .modal-dialog {
    width: 600px;
    margin: 10% auto; }
  .modal-content {
    -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); }
  .modal-sm {
    width: 300px; } }

@media (max-width: 480px) {
  .modal-dialog {
    margin: 70px auto; } }

@media (min-width: 992px) {
  .modal-lg {
    width: 900px; } }

.carousel {
  position: relative; }

.carousel-inner {
  position: relative;
  overflow: hidden;
  width: 100%; }
  .carousel-inner > .item {
    display: none;
    position: relative;
    -webkit-transition: 0.6s ease-in-out left;
    -o-transition: 0.6s ease-in-out left;
    transition: 0.6s ease-in-out left; }
    .carousel-inner > .item > img,
    .carousel-inner > .item > a > img {
      display: block;
      max-width: 100%;
      height: auto;
      line-height: 1; }
    @media all and (transform-3d), (-webkit-transform-3d) {
      .carousel-inner > .item {
        -webkit-transition: -webkit-transform 0.6s ease-in-out;
        -moz-transition: -moz-transform 0.6s ease-in-out;
        -o-transition: -o-transform 0.6s ease-in-out;
        transition: transform 0.6s ease-in-out;
        -webkit-backface-visibility: hidden;
        -moz-backface-visibility: hidden;
        backface-visibility: hidden;
        -webkit-perspective: 1000px;
        -moz-perspective: 1000px;
        perspective: 1000px; }
        .carousel-inner > .item.next, .carousel-inner > .item.active.right {
          -webkit-transform: translate3d(100%, 0, 0);
          transform: translate3d(100%, 0, 0);
          left: 0; }
        .carousel-inner > .item.prev, .carousel-inner > .item.active.left {
          -webkit-transform: translate3d(-100%, 0, 0);
          transform: translate3d(-100%, 0, 0);
          left: 0; }
        .carousel-inner > .item.next.left, .carousel-inner > .item.prev.right, .carousel-inner > .item.active {
          -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
          left: 0; } }
  .carousel-inner > .active,
  .carousel-inner > .next,
  .carousel-inner > .prev {
    display: block; }
  .carousel-inner > .active {
    left: 0; }
  .carousel-inner > .next,
  .carousel-inner > .prev {
    position: absolute;
    top: 0;
    width: 100%; }
  .carousel-inner > .next {
    left: 100%; }
  .carousel-inner > .prev {
    left: -100%; }
  .carousel-inner > .next.left,
  .carousel-inner > .prev.right {
    left: 0; }
  .carousel-inner > .active.left {
    left: -100%; }
  .carousel-inner > .active.right {
    left: 100%; }

.carousel-control {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 40px;
  height: 55px;
  line-height: 55px;
  opacity: 0.5;
  filter: alpha(opacity=50);
  -webkit-box-shadow: 0 0 0 1px #ebebeb inset;
  box-shadow: 0 0 0 1px #ebebeb inset;
  font-size: 20px;
  color: #fff;
  text-align: center;
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-transition: all 0.5s ease-in-out 0s;
  -o-transition: all 0.5s ease-in-out 0s;
  transition: all 0.5s ease-in-out 0s;
  -webkit-box-shadow: 0 0 0 30px #000 inset;
  box-shadow: 0 0 0 30px #000 inset; }
  .carousel-control.left {
    /*     @include gradient-horizontal($start-color: rgba(0,0,0,.5), $end-color: rgba(0,0,0,.0001)); */ }
  .carousel-control.right {
    left: auto;
    right: 0;
    /*     @include gradient-horizontal($start-color: rgba(0,0,0,.0001), $end-color: rgba(0,0,0,.5)); */ }
  .carousel-control:hover, .carousel-control:focus {
    outline: 0;
    color: #fff;
    text-decoration: none;
    opacity: 0.9;
    filter: alpha(opacity=90);
    -webkit-box-shadow: 0 0 0 30px #54a9a2 inset;
    box-shadow: 0 0 0 30px #54a9a2 inset; }
  .carousel-control .icon-prev,
  .carousel-control .icon-next,
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right {
    position: absolute;
    top: 50%;
    margin-top: -10px;
    z-index: 5;
    display: inline-block; }
  .carousel-control .icon-prev,
  .carousel-control .glyphicon-chevron-left {
    left: 50%;
    margin-left: -10px; }
  .carousel-control .icon-next,
  .carousel-control .glyphicon-chevron-right {
    right: 50%;
    margin-right: -10px; }
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 20px;
    height: 20px;
    line-height: 1;
    font-family: serif; }
  .carousel-control .icon-prev:before {
    content: '\2039'; }
  .carousel-control .icon-next:before {
    content: '\203a'; }

.carousel-indicators {
  position: absolute;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  margin-left: -30%;
  padding-left: 0;
  list-style: none;
  text-align: center; }
  .carousel-indicators li {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 1px;
    text-indent: -999px;
    border: 1px solid #fff;
    border-radius: 10px;
    cursor: pointer;
    background-color: #000 \9;
    background-color: transparent; }
  .carousel-indicators .active {
    margin: 0;
    width: 12px;
    height: 12px;
    background-color: #fff; }

.carousel-caption {
  position: absolute;
  left: 15%;
  right: 15%;
  bottom: 20px;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); }
  .carousel-caption .btn {
    text-shadow: none; }

@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -15px;
    font-size: 30px; }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -15px; }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -15px; }
  .carousel-caption {
    left: 20%;
    right: 20%;
    padding-bottom: 30px; }
  .carousel-indicators {
    bottom: 20px; } }

.clearfix:before, .clearfix:after {
  content: " ";
  display: table; }

.clearfix:after {
  clear: both; }

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

.pull-right, #pbr-masthead.pbr-header-v3 .pbr-topbar .inner, #pbr-masthead.pbr-header-v3 .pbr-mainmenu {
  float: right !important; }

.pull-left {
  float: left !important; }

.hide {
  display: none !important; }

.show {
  display: block !important; }

.invisible {
  visibility: hidden; }

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0; }

.hidden {
  display: none !important; }

.affix {
  position: fixed; }

@-ms-viewport {
  width: device-width; }

.visible-xs {
  display: none !important; }

.visible-sm {
  display: none !important; }

.visible-md {
  display: none !important; }

.visible-lg {
  display: none !important; }

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important; }

@media (max-width: 767px) {
  .visible-xs {
    display: block !important; }
  table.visible-xs {
    display: table !important; }
  tr.visible-xs {
    display: table-row !important; }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important; } }

@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important; } }

@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important; } }

@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important; }
  table.visible-sm {
    display: table !important; }
  tr.visible-sm {
    display: table-row !important; }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important; }
  table.visible-md {
    display: table !important; }
  tr.visible-md {
    display: table-row !important; }
  th.visible-md,
  td.visible-md {
    display: table-cell !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important; } }

@media (min-width: 1200px) {
  .visible-lg {
    display: block !important; }
  table.visible-lg {
    display: table !important; }
  tr.visible-lg {
    display: table-row !important; }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important; } }

@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important; } }

@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important; } }

@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important; } }

@media (max-width: 767px) {
  .hidden-xs {
    display: none !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important; } }

@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important; } }

.visible-print {
  display: none !important; }

@media print {
  .visible-print {
    display: block !important; }
  table.visible-print {
    display: table !important; }
  tr.visible-print {
    display: table-row !important; }
  th.visible-print,
  td.visible-print {
    display: table-cell !important; } }

.visible-print-block {
  display: none !important; }
  @media print {
    .visible-print-block {
      display: block !important; } }

.visible-print-inline {
  display: none !important; }
  @media print {
    .visible-print-inline {
      display: inline !important; } }

.visible-print-inline-block {
  display: none !important; }
  @media print {
    .visible-print-inline-block {
      display: inline-block !important; } }

@media print {
  .hidden-print {
    display: none !important; } }

/*
 * Global variables
 */
/* main color which will be used for all main block styles... */
/**
 * Import component variables
 */
/**
 *
 */
/* --- SCSS For Accordion --- */
/* --- SCSS For Breadcrumb --- */
/* --- SCSS For Buttons --- */
/* --- SCSS For Call-to-action --- */
/* --- SCSS For Content-slider --- */
/*  */
/* carousel-controls-v1 */
/* carousel-controls-v2 */
/* carousel-controls-v3 */
/* Navigation Styles */
/* carousel-indicators-v1 */
/* carousel-indicators-v2 */
/* carousel-indicators-v3 */
/* carousel-indicators-v4 */
/* carousel-indicators-v5 */
/* carousel-indicators-v6 */
/* --- SCSS For Counters --- */
/* --- SCSS For Heading --- */
/* --- SCSS For Icon-box --- */
/* --- SCSS For Interactive-banner --- */
/* --- SCSS For Latest-posts --- */
/* latest posts */
/* --- SCSS For List --- */
/* variables for list */
/* variables for list light */
/* --- SCSS For Message --- */
/* --- SCSS For Newsletter --- */
/* --- SCSS For Piechart --- */
/* --- SCSS For Pricing --- */
/* --- SCSS For Process-steps --- */
/* process-steps */
/* --- SCSS For Service --- */
/* variables for tab style1 using as base of tab */
/* --- SCSS For Style-icon --- */
/* Variables icons default */
/* Variables icons bodered */
/* Variables icons darker */
/* Variables icons light */
/* Variables icons plain */
/* Variables icons for light style */
/* Variables icons outline */
/* Variables icons inverse */
/* --- SCSS For Table --- */
/* --- SCSS For Tabs --- */
/* variables for tab style1 using as base of tab */
/* tab style version 5 */
/* tab style version 6 */
/* --- SCSS For Testimonials --- */
/* testimonials default */
/* testimonials-v1 */
/* testimonials light */
/* --- SCSS For Typography --- */
/**
 *   Blocks Layout Selectors
 */
/********* LAYOUT **************/
/**
 * Import component variables
 */
/** elements mixins **/
/**
* Transition-timing-function property@mixin 
*/
/*background RGBA
============================================*/
/*inline-block
============================================*/
/****/
/****/
/****/
/** elements mixins **/
/**
* Transition-timing-function property@mixin 
*/
/*background RGBA
============================================*/
/*inline-block
============================================*/
/****/
/****/
/*!
 * Bootstrap v3.3.5 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
body {
  font-weight: 300;
  line-height: 1.8; }

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

.sticky {
  background: #FFFFFF;
  border: 1px solid #ededed;
  padding: 10px; }

.aligncenter,
div.aligncenter {
  display: block;
  margin: 5px auto 5px auto; }

.alignright {
  float: right;
  margin: 5px 0 20px 0; }

.alignleft {
  float: left;
  margin: 5px 20px 20px 0; }

a img.alignright {
  float: right;
  margin: 5px 0 20px 20px; }

a img.alignnone {
  margin: 5px 20px 20px 0; }

a img.alignleft {
  float: left;
  margin: 5px 20px 20px 0; }

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

.wp-caption {
  background: #ffffff none repeat scroll 0 0;
  border: medium none;
  max-width: 474px;
  margin: 0;
  text-align: center; }

.wp-caption.alignleft {
  margin: 5px 20px 20px 0; }

.wp-caption.alignright {
  margin: 5px 0 20px 20px; }

.wp-caption img {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 98.5%;
  padding: 0;
  width: auto; }

.wp-caption p.wp-caption-text {
  font-size: 11px;
  line-height: 17px;
  margin: 0;
  padding: 0 4px 5px; }

/* Text meant only for screen readers. */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden; }

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */ }

.nopadding {
  padding: 0 !important;
  margin: 0 !important; }

.video-responsive {
  height: 0;
  padding-top: 0;
  padding-bottom: 56.25%;
  margin-bottom: 10px;
  position: relative;
  overflow: hidden; }
  .video-responsive embed, .video-responsive iframe, .video-responsive object, .video-responsive video {
    top: 0;
    left: 0;
    position: absolute;
    width: 100%;
    height: 100%; }

.audio-responsive iframe {
  width: 100%;
  height: 126px; }

.contactinfos li {
  line-height: 33px; }
  .contactinfos li i {
    width: 25px;
    margin: 0 3px; }

@media (max-width: 767px) {
  .zoomContainer {
    display: none; }
  .woocommerce-main-image {
    position: relative; }
  .woocommerce-main-image:before {
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    content: ""; } }

body {
  overflow-x: hidden; }

#main .container {
  position: relative; }
  #main .container .container {
    width: 100%; }

#main .container-full {
  width: 100%; }

#site-header {
  text-align: center; }

/**
 * Page Style
 */
#page {
  max-width: 1400px;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  background: #fff; }
  #page.page-static-left {
    -webkit-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out; }
    #page.page-static-left.active {
      -webkit-transition: all 0.25s ease-out;
      -o-transition: all 0.25s ease-out;
      transition: all 0.25s ease-out;
      margin-left: 250px; }
      #page.page-static-left.active .sidebar-static-left {
        -webkit-transition: all 0.25s ease-out;
        -o-transition: all 0.25s ease-out;
        transition: all 0.25s ease-out;
        left: 0; }
  #page.active .button-action:before {
    content: "\f060"; }

.site-main {
  overflow: hidden; }

/**
 * Topbar layout styles
 */
#pbr-topbar {
  background: #282828;
  color: #999999;
  padding: 16px 0px;
  text-transform: uppercase;
  font-size: 11px; }
  #pbr-topbar a {
    color: #999999; }
    #pbr-topbar a:hover {
      color: #54a9a2; }
  #pbr-topbar .list-inline {
    margin: 0;
    padding: 0; }
  #pbr-topbar a:hover {
    text-decoration: none; }

.topbar-mobile {
  width: 100%;
  background: #3C424C;
  display: table; }
  .topbar-mobile .btn-offcanvas {
    background-color: transparent; }
  .topbar-mobile .fa {
    color: #FFF;
    font-size: 20px; }

.active-mobile {
  line-height: 48px;
  width: 48px;
  height: 48px;
  position: relative;
  cursor: pointer;
  -webkit-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  text-align: center; }
  .active-mobile:hover {
    background-color: #353535 !important;
    cursor: pointer; }
    .active-mobile:hover .active-content {
      display: block;
      opacity: 1;
      visibility: visible;
      left: 0;
      right: auto; }
  .active-mobile .active-content {
    position: absolute;
    top: 100%;
    z-index: 99999;
    color: #FFF;
    padding: 20px;
    background-color: #353535;
    left: -10000px;
    opacity: 0;
    filter: alpha(opacity=0);
    position: absolute;
    min-width: 270px;
    visibility: hidden;
    right: 0;
    text-align: left;
    -webkit-transition: opacity 0.3s ease 0s;
    -o-transition: opacity 0.3s ease 0s;
    transition: opacity 0.3s ease 0s; }
  .active-mobile ul {
    padding: 0; }
    .active-mobile ul li {
      display: block;
      margin: 0;
      padding: 5px 0;
      line-height: normal; }
  .active-mobile .search-category-container {
    display: none; }
  .active-mobile .search-category-input {
    /* 3 */
    /* 3 */
    /* 4 */
    /* 6 */
    /* 6 */
    /* 7 */
    font-size: 15px;
    /* 9 */
    font-size: 1.5rem;
    /* 9 */
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    height: 42px; }
  .active-mobile .btn-search {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px; }
    .active-mobile .btn-search .fa {
      color: #FFF;
      border: none;
      font-size: 16px;
      background-color: transparent; }
    .active-mobile .btn-search:hover .fa {
      color: #54a9a2; }
  .active-mobile.setting-popup a {
    color: #FFF; }
    .active-mobile.setting-popup a:hover {
      color: #54a9a2; }

.box-user {
  position: relative;
  z-index: 11;
  cursor: pointer;
  margin-left: 20px; }
  .box-user .account-links {
    padding: 0 20px;
    margin-top: 10px;
    margin-bottom: 10px; }
  .box-user .dropdown-toggle {
    cursor: pointer; }
    .box-user .dropdown-toggle:hover {
      color: #54a9a2; }
  .box-user.open > .dropdown-toggle {
    color: #54a9a2 !important; }

.wpml-lang {
  margin-left: 20px; }
  .wpml-lang .dropdown-toggle {
    cursor: pointer; }
    .wpml-lang .dropdown-toggle:hover {
      color: #54a9a2; }
  .wpml-lang ul {
    list-style: none;
    padding: 5px 0;
    margin: 0; }
    .wpml-lang ul li {
      padding: 0 25px;
      line-height: 30px; }
      .wpml-lang ul li img {
        margin-right: 10px; }
      .wpml-lang ul li a:hover {
        color: #54a9a2;
        font-weight: bold; }
      .wpml-lang ul li.active {
        font-weight: bold; }
        .wpml-lang ul li.active a {
          color: #54a9a2; }

.logo-wrapper {
  line-height: 45px; }

/**
 * Header Layout styles
 */
#pbr-masthead {
  position: relative;
  padding: 30px 0; }
  #pbr-masthead .header-main {
    position: relative; }
  #pbr-masthead .logo-wrapper .logo-theme a {
    /*  background: url('../../../images/logo.png') no-repeat center top $nocolor;
            @include size(124px,45px);
            display: inline-block;
            img{
                display: none;
            } */ }
  @media (max-width: 991px) {
    #pbr-masthead .logo-wrapper {
      width: 100%;
      text-align: center; } }
  #pbr-masthead .pbr-header-right {
    margin-left: 40px; }
  #pbr-masthead.pbr-header-default {
    background: #2d2d2d; }
  #pbr-masthead.pbr-header-v3 {
    padding: 0;
    min-height: 175px; }
    #pbr-masthead.pbr-header-v3 #pbr-logo {
      position: absolute;
      top: 0; }
    #pbr-masthead.pbr-header-v3 .pbr-mainmenu {
      display: flex;
      justify-content: space-between;
      padding: 30px 0; }
      #pbr-masthead.pbr-header-v3 .pbr-mainmenu .navbar-collapse {
        padding: 0; }
  @media (min-width: 991px) {
    #pbr-masthead.header-absolute {
      position: absolute;
      width: 100%;
      z-index: 10; } }
  @media (max-width: 991px) {
    #pbr-masthead.header-absolute {
      background: #333; } }
  #pbr-masthead .has-sticky {
    -webkit-transition: all 1s ease 0s;
    -o-transition: all 1s ease 0s;
    transition: all 1s ease 0s; }
    #pbr-masthead .has-sticky.keeptop {
      position: fixed;
      top: 0;
      width: 100%;
      z-index: 9999;
      left: 0;
      background-color: #282828;
      padding: 25px 0;
      -webkit-transition: all 1s ease 0s;
      -o-transition: all 1s ease 0s;
      transition: all 1s ease 0s; }

/**
 * Search block layout and styles
 */
.search-box-wrapper i {
  font-size: 18px;
  line-height: 26px; }

.search-box .input-group-addon {
  background: #FFFFFF;
  border: none;
  border-radius: 0px 0px 0px 0px;
  min-width: 200px;
  font-weight: normal;
  position: relative;
  padding: 2px 10px 2px 0 !important; }
  .search-box .input-group-addon input {
    background: transparent;
    border-color: #54a9a2;
    color: #FFF; }
  .search-box .input-group-addon:after {
    content: " ";
    width: 1px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background: #CCC; }

.search-box input, .search-box select {
  border: none;
  border-radius: 0px;
  background: #FFF; }

.search-box select {
  border-radius: 0 0 0 !important;
  border: none !important;
  background: transparent !important;
  box-shadow: 0 0 0 !important;
  font-weight: normal;
  margin-right: 2px; }

.search-box.search-box-simple .input-group {
  border: solid 2px #54a9a2;
  border-radius: 0px;
  background: #FFFFFF; }

.search-box.search-box-simple .input-group-addon {
  background: transparent; }

.search-box.search-box-simple input {
  color: #000000; }

.toggle-overlay-container {
  /* height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transition: all 0.5s ease 0s;
    visibility: hidden;
    width: 100%; */
  z-index: 10;
  background: #FFFFFF; }
  .toggle-overlay-container .search-box {
    /* width: calc(100% - 86px);
        float: left; */ }
    .toggle-overlay-container .search-box .input-group {
      /* width: 90%;
            margin:30px auto; */
      border: solid 2px #54a9a2; }
      .toggle-overlay-container .search-box .input-group .form-control {
        height: 40px; }
  .toggle-overlay-container .dropdown-toggle-button {
    width: 86px;
    height: 100%;
    text-align: center;
    float: right;
    background: #F2f2f2;
    cursor: hand;
    cursor: pointer; }
  .toggle-overlay-container.active {
    opacity: 1;
    visibility: visible; }

/**
 * Mass Bottom Header Styles
 */
.pbr-massbottom-head .inner {
  background: #54a9a2;
  padding: 6px 9px;
  border-top: #4d9b95 solid 1px;
  color: #54a9a2; }

/**
 * Main menu styles
 */
#pbr-mainmenu {
  background: transparent;
  position: relative; }

/**
 * Breadscrumb content style
 */
.pbr-breadscrumb {
  background: #efefef;
  padding: 40px 15px;
  margin-bottom: 30px; }
  .pbr-breadscrumb .breadcrumb {
    background: transparent;
    margin: 0;
    position: relative; }
    @media (min-width: 768px) {
      .pbr-breadscrumb .breadcrumb {
        padding: 40px 0 0; } }
    @media (max-width: 768px) {
      .pbr-breadscrumb .breadcrumb {
        padding: 0; } }
    .pbr-breadscrumb .breadcrumb li:last-child {
      display: block; }
      .pbr-breadscrumb .breadcrumb li:last-child:before {
        display: none; }
    .pbr-breadscrumb .breadcrumb li.active {
      top: 0;
      left: 0;
      position: absolute; }
      .pbr-breadscrumb .breadcrumb li.active h2, .pbr-breadscrumb .breadcrumb li.active h1 {
        margin: 0;
        font-family: "Poppins", sans-serif; }
      @media (max-width: 768px) {
        .pbr-breadscrumb .breadcrumb li.active {
          display: none; } }
    .pbr-breadscrumb .breadcrumb li span {
      padding: 0 7px; }
    .pbr-breadscrumb .breadcrumb a {
      color: #666; }
      .pbr-breadscrumb .breadcrumb a:hover {
        color: #54a9a2; }

/**
 * Footer layout styles
 */
#main article.post h1.entry-title {
  font-size: 30px; }

.pbr-footer {
  background-color: #1d1d1d;
  color: #999999; }
  .pbr-footer .footer-top {
    background: transparent;
    color: #fff;
    background-color: #54a9a2;
    padding: 50px 0 30px;
    text-transform: uppercase;
    letter-spacing: 1px; }
    .pbr-footer .footer-top a {
      color: #999999; }
      .pbr-footer .footer-top a:hover {
        color: #54a9a2; }
    .pbr-footer .footer-top h2, .pbr-footer .footer-top h3, .pbr-footer .footer-top h4, .pbr-footer .footer-top h5, .pbr-footer .footer-top h6 {
      color: #fff;
      margin: 8px 0; }
    .pbr-footer .footer-top p {
      margin-bottom: 0; }
    .pbr-footer .footer-top i {
      font-size: 24px;
      width: 60px;
      height: 60px;
      border: 2px solid #fff;
      border-radius: 50%;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      -ms-border-radius: 50%;
      -o-border-radius: 50%;
      line-height: 54px;
      text-align: center;
      margin-right: 20px; }
  .pbr-footer .footer-bottom {
    background: transparent;
    color: #fff; }
    .pbr-footer .footer-bottom a {
      color: #999999; }
      .pbr-footer .footer-bottom a:hover {
        color: #54a9a2; }

.home .pbr-footer {
  margin-top: 0; }

/*------------------------------------*    Copyright
\*------------------------------------*/
.pbr-copyright {
  color: #999;
  font-size: 13px;
  font-weight: 400;
  width: 100%;
  background: #fff;
  padding-top: 0;
  padding-bottom: 0; }
  .pbr-copyright .widget .widget-title, .pbr-copyright .widget .widgettitle {
    color: #FFF;
    text-transform: none;
    margin: 0 0 25px;
    /* 3 */
    /* 3 */
    /* 4 */
    /* 6 */
    /* 6 */
    /* 7 */
    font-size: 18px;
    /* 9 */
    font-size: 1.8rem;
    /* 9 */ }
  .pbr-copyright .input-group {
    border: 0px; }
    .pbr-copyright .input-group .fa {
      color: #777777; }
  .pbr-copyright a {
    color: #FFF;
    color: #999; }
    .pbr-copyright a:hover, .pbr-copyright a:focus, .pbr-copyright a:active {
      color: #54a9a2; }
  .pbr-copyright address {
    margin: 0; }
  .pbr-copyright .payment {
    padding-top: 30px; }
  .pbr-copyright .container {
    padding: 30px 0; }
    @media (max-width: 480px) {
      .pbr-copyright .container {
        text-align: center; } }

.scrollup {
  border: 3px solid #ededed;
  width: 50px;
  height: 50px;
  display: inline-block;
  line-height: 46px;
  text-align: center; }
  .scrollup:hover {
    border: 3px solid #54a9a2; }

/* block */
.widget {
  margin-bottom: 20px;
  position: relative;
  padding: 0px;
  background: transparent;
  border-width: 0px;
  border-style: solid;
  /* block styles */ }
  .widget .widget-title, .widget .widgettitle {
    /* color: $block-module-heading-color; */
    padding: 20px 0;
    margin: 0 0 10px;
    text-transform: none;
    font-size: 30px;
    font-family: "Poppins", sans-serif;
    position: relative;
    z-index: 10;
    letter-spacing: 1px;
    line-height: 1.1; }
    .widget .widget-title > span, .widget .widgettitle > span {
      padding-left: 20px;
      margin-top: 0;
      border-bottom: 1px solid rgba(255, 255, 255, 0.2);
      position: relative;
      letter-spacing: -2px; }
      .widget .widget-title > span:after, .widget .widgettitle > span:after {
        width: 10px;
        height: 10px;
        position: absolute;
        top: 50%;
        content: "";
        margin-top: -5px;
        background-color: #54a9a2;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        left: 0; }
    .widget .widget-title .subtitle, .widget .widgettitle .subtitle {
      font-weight: normal;
      font-size: 11px;
      text-transform: none; }
      .widget .widget-title .subtitle:before, .widget .widgettitle .subtitle:before {
        display: none; }
  .widget .widget-title-v2 {
    border-top: 1px solid #ededed; }
    .widget .widget-title-v2 > span {
      background: #FFF;
      position: relative;
      top: -10px;
      padding: 0 20px; }
  .widget .widget-content {
    border-radius: 0px;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    -ms-border-radius: 0px;
    -o-border-radius: 0px;
    background-color: transparent; }
    .widget .widget-content:before, .widget .widget-content:after {
      content: " ";
      display: table; }
    .widget .widget-content:after {
      clear: both; }
  .widget .widget-title-reversed {
    margin-right: 75px; }
  .widget.nopadding .widget-content {
    padding: 0;
    margin: 0; }

.widget-default .widget-title, .widget-default .widgettitle {
  border-bottom-color: #000; }
  .widget-default .widget-title > span:before, .widget-default .widgettitle > span:before {
    border-color: #000; }

.widget-default > .widget-footer + .widget-collapse .widget-body {
  border-bottom-color: #ededed; }

.widget-primary .widget-title, .widget-primary .widgettitle {
  border-bottom-color: #54a9a2; }
  .widget-primary .widget-title > span:before, .widget-primary .widgettitle > span:before {
    border-color: #54a9a2; }

.widget-primary > .widget-footer + .widget-collapse .widget-body {
  border-bottom-color: #54a9a2; }

.widget-success .widget-title, .widget-success .widgettitle {
  border-bottom-color: #dff0d8; }
  .widget-success .widget-title > span:before, .widget-success .widgettitle > span:before {
    border-color: #dff0d8; }

.widget-success > .widget-footer + .widget-collapse .widget-body {
  border-bottom-color: #d6e9c6; }

.widget-info .widget-title, .widget-info .widgettitle {
  border-bottom-color: #d9edf7; }
  .widget-info .widget-title > span:before, .widget-info .widgettitle > span:before {
    border-color: #d9edf7; }

.widget-info > .widget-footer + .widget-collapse .widget-body {
  border-bottom-color: #bce8f1; }

.widget-warning .widget-title, .widget-warning .widgettitle {
  border-bottom-color: #f0c73b; }
  .widget-warning .widget-title > span:before, .widget-warning .widgettitle > span:before {
    border-color: #f0c73b; }

.widget-warning > .widget-footer + .widget-collapse .widget-body {
  border-bottom-color: #ee9e23; }

.widget-danger .widget-title, .widget-danger .widgettitle {
  border-bottom-color: #f8d7da; }
  .widget-danger .widget-title > span:before, .widget-danger .widgettitle > span:before {
    border-color: #f8d7da; }

.widget-danger > .widget-footer + .widget-collapse .widget-body {
  border-bottom-color: #f4c1ce; }

.sidebar .widget .widget-title, .sidebar .widget .widgettitle {
  font-size: 20px; }

/**
 * Styling Css for widgets in footer layout
 */
.pbr-footer .widget .widget-title, .pbr-footer .widget .widgettitle {
  font-size: 18px;
  border: none;
  margin-bottom: 0; }
  .pbr-footer .widget .widget-title > span, .pbr-footer .widget .widgettitle > span {
    padding: 0px 0px; }
    .pbr-footer .widget .widget-title > span:before, .pbr-footer .widget .widgettitle > span:before {
      content: none; }

.widget-footer {
  margin-bottom: 20px; }
  .widget-footer .widget-title {
    font-size: 30px;
    text-transform: none;
    color: #fff;
    padding: 50px 0 35px 20px;
    margin-bottom: 35px;
    margin-top: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
    .widget-footer .widget-title span {
      position: relative;
      letter-spacing: -2px; }
      .widget-footer .widget-title span:after {
        width: 10px;
        height: 10px;
        position: absolute;
        top: 50%;
        content: "";
        margin-top: -5px;
        background-color: #54a9a2;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        left: -20px; }
  .widget-footer ul {
    padding-left: 15px; }
    .widget-footer ul li {
      padding: 5px 0; }
    .widget-footer ul.list-unstyled {
      padding-left: 0; }

.title-heading {
  font-size: 30px;
  text-transform: none;
  padding-left: 25px;
  margin-bottom: 20px;
  margin-top: 0;
  position: relative;
  letter-spacing: -2px; }
  .title-heading:after {
    width: 10px;
    height: 10px;
    position: absolute;
    top: 50%;
    content: "";
    margin-top: -5px;
    background-color: #54a9a2;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -ms-border-radius: 10px;
    -o-border-radius: 10px;
    left: 0; }

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

.pbr-newsletter {
  border-top: 1px solid #ededed;
  margin-top: 30px; }

/* List Style Widgets*/
.widget_archive a,
.widget_recent_entries a,
.widget_recent_comments a,
.widget_layered_nav a,
.widget_product_categories a {
  font-weight: 400; }

.widget_archive a:before,
.widget_recent_entries a:before,
.widget_recent_comments a:first-child:before,
.widget_layered_nav a:before,
.widget_product_categories a:before,
.widget_categories a:before {
  margin-right: 10px;
  font-family: "FontAwesome";
  color: #54a9a2;
  display: inline-block;
  font-size: 11px;
  line-height: 22px; }

.widget_archive a:before {
  content: "\f016"; }

.widget_recent_entries a:before {
  content: "\f0f6"; }

.widget_recent_comments a:first-child:before {
  content: "\f0e5"; }

.widget_layered_nav a:before {
  content: "\f0da"; }

.widget_categories a:before {
  content: "\f114"; }

.widget_archive ul li,
.widget_categories ul li,
.widget_links ul li,
.widget_meta ul li,
.widget_pages ul li,
.widget_recent_comments ul li,
.widget_recent_entries ul li,
.widget_rss ul li,
.widget_nav_menu ul li {
  border-bottom: 1px solid #ededed;
  padding: 10px 0; }

.widget_categories li ul,
.widget_pages li ul {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  margin-top: 9px; }

.widget_categories li li:last-child,
.widget_pages li li:last-child {
  padding-bottom: 0; }

.widget select {
  border: 1px solid #ededed;
  padding: 10px 15px; }

#wp-calendar #today {
  color: #54a9a2;
  font-weight: 700; }

.widget_recent_comments .comment-author-link {
  color: #54a9a2; }

/* Recent Posts Widget */
.widget_recent_entries .post-date {
  display: block;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 700;
  margin-top: 5px;
  color: #54a9a2; }

.widget_pbr_recent_post .post-widget {
  margin-top: 20px; }

.widget_pbr_recent_post .item-post.media {
  border-top: 1px solid #ededed;
  padding-top: 20px; }
  .widget_pbr_recent_post .item-post.media:first-child {
    padding-top: 0;
    border-top: none; }
  .widget_pbr_recent_post .item-post.media a.image {
    width: 80px;
    padding-right: 15px; }
  .widget_pbr_recent_post .item-post.media .media-body .entry-title {
    margin: -3px 0 0; }
  .widget_pbr_recent_post .item-post.media .media-body > p {
    display: none; }

.widget_pbr_recent_post .post-stick-layout .item-post.media.item-big {
  border-top: none; }
  .widget_pbr_recent_post .post-stick-layout .item-post.media.item-big a.image {
    padding-right: 0;
    width: 100%;
    margin-bottom: 10px; }
  .widget_pbr_recent_post .post-stick-layout .item-post.media.item-big .entry-title {
    margin: 0 0 10px;
    font-weight: 700;
    font-size: 14px;
    line-height: 20px; }

.widget_pbr_recent_post .post-stick-layout .item-post.media {
  padding-top: 15px; }
  .widget_pbr_recent_post .post-stick-layout .item-post.media .media-body .entry-title {
    margin: 0 0 5px; }
  .widget_pbr_recent_post .post-stick-layout .item-post.media .post-date {
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 700;
    color: #54a9a2; }

/* Search Widget */
.widget_search .btn-search input {
  border: none; }

/* RSS Widget */
.rsswidget img {
  margin-top: -4px; }

.rssSummary {
  margin: 9px 0; }

.rss-date {
  display: block; }

.widget_rss li {
  margin-bottom: 18px; }

.widget_rss li:last-child {
  margin-bottom: 0; }

/* Text Widget */
.widget_text > div > :last-child {
  margin-bottom: 0; }

/* Calendar Widget*/
.widget_calendar table {
  line-height: 2;
  margin: 0;
  width: 100%; }

.widget_calendar caption {
  color: #000;
  font-weight: 700;
  line-height: 1.7142857142;
  margin-bottom: 10px;
  text-align: left;
  text-transform: uppercase; }

.widget_calendar thead th {
  background: #f5f5f5; }

.widget_calendar tbody td, .widget_calendar thead th {
  text-align: center;
  padding: 2px; }

.widget_calendar tbody a {
  background-color: #24890d;
  color: #fff;
  display: block; }
  .widget_calendar tbody a:hover {
    background-color: #41a62a;
    color: #fff; }

.widget_calendar #prev {
  padding-left: 5px; }

.widget_calendar #next {
  padding-right: 5px;
  text-align: right; }

/****/
.popupnewsletter .btn-flying-right {
  position: fixed;
  top: 40%;
  right: 0;
  z-index: 99; }

.popupnewsletter .modal {
  text-align: center; }

@media screen and (min-width: 768px) {
  .popupnewsletter .modal:before {
    display: inline-block;
    vertical-align: middle;
    content: " ";
    height: 100%; } }

.popupnewsletter .modal-dialog {
  display: inline-block;
  text-align: left;
  vertical-align: middle; }

/**social**/
.widget_pbr_socials_widget a {
  display: block; }
  .widget_pbr_socials_widget a:hover i {
    color: #54a9a2;
    transition: color 0.3s ease 0s; }

.widget_pbr_socials_widget i {
  color: #FFF; }

.widget_pbr_socials_widget .bo-sicolor a {
  display: inline-block;
  margin-right: 10px; }
  .widget_pbr_socials_widget .bo-sicolor a i {
    width: 44px;
    height: 44px;
    line-height: 40px;
    text-align: center;
    font-size: 16px;
    border-radius: 25px;
    -webkit-border-radius: 25px;
    -moz-border-radius: 25px;
    -ms-border-radius: 25px;
    -o-border-radius: 25px;
    border: 2px solid rgba(255, 255, 255, 0.2);
    background-color: transparent;
    display: inline-block; }
    .widget_pbr_socials_widget .bo-sicolor a i:hover {
      border-color: #54a9a2;
      background-color: transparent; }
  .widget_pbr_socials_widget .bo-sicolor a span {
    display: none; }

.pbr-featurebox .row {
  padding: 50px;
  border: 1px solid #ededed; }
  @media (min-width: 768px) and (max-width: 991px) {
    .pbr-featurebox .row {
      padding: 20px; } }

.widget-brand-logo {
  margin: 15px 0; }
  .widget-brand-logo .owl-pagination {
    margin-top: 30px; }
  .widget-brand-logo .item-brand {
    position: relative;
    display: block; }
    .widget-brand-logo .item-brand img {
      filter: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='grayscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0'/></filter></svg>#grayscale");
      filter: grayscale(100%);
      -webkit-filter: grayscale(100%);
      -moz-filter: grayscale(100%);
      -ms-filter: grayscale(100%);
      -o-filter: grayscale(100%);
      filter: gray;
      opacity: 1;
      filter: alpha(opacity=100);
      -webkit-transition: all 0.2s ease-in-out 0s;
      -o-transition: all 0.2s ease-in-out 0s;
      transition: all 0.2s ease-in-out 0s; }
  .widget-brand-logo:hover .item-brand img {
    opacity: 0.5;
    filter: alpha(opacity=50); }
  .widget-brand-logo:hover .item-brand:hover img {
    filter: grayscale(0%);
    -webkit-filter: grayscale(0%);
    -moz-filter: grayscale(0%);
    -ms-filter: grayscale(0%);
    -o-filter: grayscale(0%);
    filter: none;
    opacity: 1;
    filter: alpha(opacity=100); }

.woo-onsale .onsale {
  display: none; }

.woo-onsale .product-sale-label {
  position: absolute;
  width: 36px;
  height: 36px;
  background-color: #fb4949;
  color: #fff;
  top: 10px;
  right: 10px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  line-height: 36px;
  font-size: 12px;
  font-weight: 400; }

.pbr-pagination {
  margin-top: 30px; }

.pbr-designs .widget-content {
  background-color: #1d1d1d; }
  .pbr-designs .widget-content .owl-item .item {
    padding: 0; }
    .pbr-designs .widget-content .owl-item .item .content {
      padding-top: 100px;
      padding-bottom: 100px; }
      .pbr-designs .widget-content .owl-item .item .content .design_title {
        color: #fff;
        margin-bottom: 70px; }
      .pbr-designs .widget-content .owl-item .item .content .design_description {
        color: #999;
        font-size: 20px;
        line-height: 32px;
        margin-bottom: 70px; }
      .pbr-designs .widget-content .owl-item .item .content .button-video .fa {
        font-size: 16px;
        padding-right: 5px; }

/* pbr-video-popup */
.pbr-video-popup .video-popup {
  box-pack: center;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  justify-content: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex; }
  .pbr-video-popup .video-popup .button-video {
    border: 2px solid #fff;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 12px;
    line-height: 54px;
    font-weight: 600; }
    .pbr-video-popup .video-popup .button-video i {
      border-right: 2px solid #fff;
      line-height: 54px;
      width: 54px;
      text-align: center; }
    .pbr-video-popup .video-popup .button-video span {
      padding: 0 30px; }
    .pbr-video-popup .video-popup .button-video:hover {
      border-color: #54a9a2;
      color: #54a9a2; }
      .pbr-video-popup .video-popup .button-video:hover i {
        border-color: #54a9a2; }

/* widget Banner Info */
.widget-banner-info .description {
  margin-bottom: 60px;
  position: relative;
  z-index: 3; }
  .widget-banner-info .description ul {
    width: 100%;
    list-style: none;
    padding-left: 0;
    margin: 0;
    border: 2px solid rgba(255, 255, 255, 0.3);
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 50px 25px;
    position: relative; }
    .widget-banner-info .description ul li {
      width: 50%;
      line-height: 30px;
      padding: 5px 25px;
      color: #fff;
      text-align: right;
      display: flex; }
      .widget-banner-info .description ul li span {
        flex: 1;
        display: flex; }
        .widget-banner-info .description ul li span:after {
          content: '';
          border-top: dotted 1px rgba(255, 255, 255, 0.3);
          height: 1px;
          top: 50%;
          flex: 1;
          position: relative;
          margin: 0 20px; }

.widget-banner-info .banner-img {
  position: relative; }
  .widget-banner-info .banner-img:before {
    bottom: 0;
    background: radial-gradient(ellipse at center, rgba(255, 255, 255, 0.15) 20%, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0));
    background: -moz-radial-gradient(ellipse at center, rgba(255, 255, 255, 0.15) 20%, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0));
    background: -webkit-radial-gradient(ellipse at center, rgba(255, 255, 255, 0.15) 20%, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0));
    background: -ms-radial-gradient(ellipse at center, rgba(255, 255, 255, 0.15) 20%, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0));
    transform: scale(3);
    content: "";
    height: 400px;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 100%;
    width: 400px;
    z-index: 1; }
  .widget-banner-info .banner-img img {
    z-index: 2;
    position: relative; }

/* widget Banner Info */
.widget-banner-effect {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-around;
  -webkit-justify-content: space-around;
  -moz-justify-content: space-around;
  -ms-justify-content: space-around; }
  .widget-banner-effect:before {
    width: 100%;
    height: 100%;
    position: absolute;
    content: "";
    background-color: rgba(0, 0, 0, 0.1);
    -webkit-transition: all 1s;
    /* Safari */
    -ms-transition: all 1s;
    transition: all 1s; }
  .widget-banner-effect > div {
    align-self: center;
    -webkit-align-self: center;
    -moz-align-self: center;
    -ms-align-self: center; }
  .widget-banner-effect .banner-effect-content {
    position: absolute;
    margin: auto;
    padding: 0 15%;
    content: "";
    color: #fff; }
    .widget-banner-effect .banner-effect-content .widget-heading {
      color: #fff;
      font-size: 30px;
      margin: 15px 0 25px;
      -webkit-transition: all 2s;
      /* Safari */
      -ms-transition: all 2s;
      transition: all 2s;
      -ms-transform: scale(1);
      /* IE 9 */
      -webkit-transform: scale(1);
      /* Safari */
      transform: scale(1); }
    .widget-banner-effect .banner-effect-content .description {
      -ms-transform: scale(0);
      /* IE 9 */
      -webkit-transform: scale(0);
      /* Safari */
      transform: scale(0);
      -webkit-transition: all 0;
      /* Safari */
      -ms-transition: all 0;
      transition: all 0;
      opacity: 0;
      filter: Alpha(opacity=0);
      visibility: hidden; }
  .widget-banner-effect:hover:before {
    background-color: rgba(0, 0, 0, 0.6);
    -webkit-transition: all 1s;
    /* Safari */
    -ms-transition: all 1s;
    transition: all 1s; }
  .widget-banner-effect:hover .widget-heading {
    -webkit-transition: all 2s;
    /* Safari */
    -ms-transition: all 2s;
    transition: all 2s;
    -ms-transform: scale(1.15);
    /* IE 9 */
    -webkit-transform: scale(1.15);
    /* Safari */
    transform: scale(1.15); }
  .widget-banner-effect:hover .description {
    -ms-transform: scale(1);
    /* IE 9 */
    -webkit-transform: scale(1);
    /* Safari */
    transform: scale(1);
    -webkit-transition: all 1s;
    /* Safari */
    -ms-transition: all 1s;
    transition: all 1s;
    opacity: 1;
    filter: Alpha(opacity=1);
    visibility: visible; }

/* Banner Countdown */
.banner-countdown-widget .banner-countdown-inner {
  color: #fff;
  display: flex;
  justify-content: space-around;
  flex-direction: column;
  text-align: center;
  padding: 20% 10%; }
  .banner-countdown-widget .banner-countdown-inner h3 {
    color: #fff;
    text-transform: uppercase;
    font-size: 30px;
    font-weight: 600;
    letter-spacing: 1px;
    margin: 10px 0; }
  .banner-countdown-widget .banner-countdown-inner .heading-countdown {
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 400;
    margin-bottom: 20px; }
  .banner-countdown-widget .banner-countdown-inner .viewall {
    margin-top: 20px; }
    .banner-countdown-widget .banner-countdown-inner .viewall a {
      border: 1px solid #fff;
      color: #fff;
      text-transform: uppercase;
      line-height: 30px;
      font-weight: 500;
      padding: 0 20px;
      display: inline-block;
      font-size: 12px;
      letter-spacing: 1px; }

.banner-countdown-widget .countdown-times {
  overflow: hidden;
  -webkit-transform: translate(0px, 0px);
  -ms-transform: translate(0px, 0px);
  -o-transform: translate(0px, 0px);
  transform: translate(0px, 0px);
  -webkit-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease; }
  .banner-countdown-widget .countdown-times > div {
    margin: 5px 3px;
    padding: 20px 5px 15px;
    background-color: #fff;
    font-size: 10px;
    color: #898989;
    text-transform: normal;
    font-weight: 500;
    min-width: 65px;
    display: inline-flex;
    flex-direction: column; }
    .banner-countdown-widget .countdown-times > div > b {
      font-size: 24px;
      line-height: 1;
      font-weight: 500;
      color: #54a9a2; }

/*------------------------------------*    Tags Widget
\*------------------------------------*/
.tagcloud a {
  position: relative;
  z-index: 1;
  color: #666666;
  border: 1px solid #ededed;
  margin: 2px 0;
  padding: 5px 10px;
  background: transparent;
  text-transform: none;
  font-size: 14px !important;
  display: inline-block;
  *display: inline;
  zoom: 1;
  border-radius: 0px;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  -ms-border-radius: 0px;
  -o-border-radius: 0px; }
  .tagcloud a:after {
    content: "";
    position: absolute;
    top: 0;
    width: 0;
    z-index: -1;
    height: 100%;
    left: 0;
    background-color: #54a9a2;
    -webkit-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear; }
  .tagcloud a:hover {
    color: #FFF;
    border-color: #54a9a2; }
    .tagcloud a:hover:after {
      width: 100%; }

.pbr-rotateimages .rotate {
  background: url("../../../images/bg-rotate-.png") no-repeat center bottom transparent;
  background-size: 100% auto; }
  @media screen and (min-width: 1200px) {
    .pbr-rotateimages .rotate {
      padding: 0 15% 100px; } }
  @media screen and (max-width: 1200px) {
    .pbr-rotateimages .rotate {
      padding: 0 8% 100px; } }
  @media screen and (max-width: 992px) {
    .pbr-rotateimages .rotate {
      padding: 0 8% 70px; } }
  @media screen and (max-width: 768px) {
    .pbr-rotateimages .rotate {
      padding: 0 6% 60px; } }
  @media screen and (max-width: 320px) {
    .pbr-rotateimages .rotate {
      padding: 0 0 30px; } }

.pbr-rotateimages .spritespin-instance {
  cursor: move; }

.pbr-rotateimages .widget-content {
  text-align: center; }

@media screen and (max-width: 992px) {
  .pbr-rotateimages .spritespin-canvas, .pbr-rotateimages .spritespin-instance {
    height: 568px !important;
    width: 680px !important; } }

@media screen and (max-width: 700px) {
  .pbr-rotateimages .spritespin-canvas, .pbr-rotateimages .spritespin-instance {
    height: 418px !important;
    width: 500px !important; } }

@media screen and (max-width: 480px) {
  .pbr-rotateimages .spritespin-canvas, .pbr-rotateimages .spritespin-instance {
    height: 317px !important;
    width: 380px !important; } }

@media screen and (max-width: 480px) {
  .pbr-rotateimages .spritespin-canvas, .pbr-rotateimages .spritespin-instance {
    height: 267px !important;
    width: 320px !important; } }

/* Widget Post Carousel */
.widget-post-carousel .blog-post {
  overflow: hidden; }
  .widget-post-carousel .blog-post .entry-title {
    font-size: 16px;
    font-weight: 600;
    margin-top: 10px; }
  .widget-post-carousel .blog-post .entry-date {
    font-weight: 400; }
    .widget-post-carousel .blog-post .entry-date .day {
      font-size: 30px;
      color: #000;
      font-weight: 500; }
  .widget-post-carousel .blog-post .readmore {
    margin-top: 10px; }
    .widget-post-carousel .blog-post .readmore a {
      color: #54a9a2;
      text-decoration: underline;
      font-size: 12px;
      font-weight: 400; }

.widget-post-carousel .blog-post-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex; }
  .widget-post-carousel .blog-post-list > div {
    flex: 1; }
  .widget-post-carousel .blog-post-list .information-post {
    margin-left: 15px; }
  .widget-post-carousel .blog-post-list .post-thumbnail {
    margin-right: 15px; }

.widget-post-carousel .blog-post-grid {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: flex-start;
  -webkit-justify-content: flex-start;
  -moz-justify-content: flex-start;
  -ms-justify-content: flex-start; }
  .widget-post-carousel .blog-post-grid:hover .post-thumbnail {
    -ms-transform: scale(1.05);
    /* IE 9 */
    -webkit-transform: scale(1.05);
    /* Safari */
    transform: scale(1.05);
    -webkit-transition: all 1s;
    /* Safari */
    -ms-transition: all 1s;
    transition: all 1s; }
  .widget-post-carousel .blog-post-grid .post-thumbnail {
    position: relative;
    -ms-transform: scale(1);
    /* IE 9 */
    -webkit-transform: scale(1);
    /* Safari */
    transform: scale(1);
    -webkit-transition: all 1s;
    /* Safari */
    -ms-transition: all 1s;
    transition: all 1s; }
    .widget-post-carousel .blog-post-grid .post-thumbnail:before {
      width: 100%;
      height: 100%;
      position: absolute;
      content: "";
      background-color: rgba(0, 0, 0, 0.4);
      -webkit-transition: all 1s;
      /* Safari */
      -ms-transition: all 1s;
      transition: all 1s; }
  .widget-post-carousel .blog-post-grid:hover .post-thumbnail {
    -ms-transform: scale(1.05);
    /* IE 9 */
    -webkit-transform: scale(1.05);
    /* Safari */
    transform: scale(1.05);
    -webkit-transition: all 1s;
    /* Safari */
    -ms-transition: all 1s;
    transition: all 1s; }
    .widget-post-carousel .blog-post-grid:hover .post-thumbnail:before {
      background-color: rgba(0, 0, 0, 0.6);
      -webkit-transition: all 1s;
      /* Safari */
      -ms-transition: all 1s;
      transition: all 1s; }
  .widget-post-carousel .blog-post-grid > div {
    align-self: flex-end;
    -webkit-align-self: flex-end;
    -moz-align-self: flex-end;
    -ms-align-self: flex-end; }
  .widget-post-carousel .blog-post-grid .information-post {
    position: absolute;
    margin: auto;
    padding: 30px;
    content: "";
    color: #fff; }
  .widget-post-carousel .blog-post-grid .entry-title a {
    color: #fff;
    font-size: 18px; }
    .widget-post-carousel .blog-post-grid .entry-title a:hover {
      color: #54a9a2; }
  .widget-post-carousel .blog-post-grid .entry-date .day {
    color: #fff; }

.wpb_widgetised_column > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex; }

.wpb_widgetised_column .wpb_widgetised_column_heading {
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 3px;
  font-weight: 600;
  margin: 0 20px 0 0;
  line-height: 52px; }

.wpb_widgetised_column .widget_mc4wp_form_widget {
  width: 50%; }
  .wpb_widgetised_column .widget_mc4wp_form_widget .form-style-1 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    flex: 1 1 0; }
    .wpb_widgetised_column .widget_mc4wp_form_widget .form-style-1 > p {
      display: -webkit-box;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flexbox;
      display: flex;
      width: 100%; }
      .wpb_widgetised_column .widget_mc4wp_form_widget .form-style-1 > p input[type="email"] {
        width: 500px;
        border: 2px solid #ededed;
        margin: 0 10px;
        min-height: 52px; }
      .wpb_widgetised_column .widget_mc4wp_form_widget .form-style-1 > p .btn-default {
        background-color: transparent;
        border: 2px solid #000;
        color: #000; }

.vc_custom_heading.button a {
  display: block;
  background-color: #54a9a2;
  color: #fff; }
  .vc_custom_heading.button a:hover {
    color: #fff; }

.contact-add i {
  font-size: 16px;
  margin-right: 10px; }

/* footer-menu */
.footer-menu ul li {
  display: inline-block;
  border-bottom: none !important;
  width: auto !important;
  margin: 0 20px; }

.footer-social .bo-sicolor a i {
  border: none;
  color: #999;
  font-size: 14px;
  width: auto; }

.footer-social .bo-sicolor a:hover i {
  color: #54a9a2; }

.search-category {
  border: 2px solid #ededed;
  background-color: #fff;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px; }
  .search-category .btn-search {
    padding: 0;
    border: none; }
    .search-category .btn-search .searchsubmit {
      line-height: 46px;
      padding: 0 20px;
      border: none;
      font-size: 16px;
      background-color: transparent; }
  .search-category .search-category-container {
    background-color: transparent;
    padding: 0;
    border: none; }
  .search-category .dropdown_product_cat {
    height: 46px;
    border: none !important;
    color: #666666;
    font-size: 13px;
    background-color: transparent;
    padding: 0 20px !important;
    -webkit-box-shadow: none;
    box-shadow: none; }
    .search-category .dropdown_product_cat:focus {
      outline-offset: 0; }
  .search-category .search-category-input {
    background-color: transparent;
    border: none;
    -webkit-box-shadow: none;
    box-shadow: none; }
    .search-category .search-category-input:focus {
      border: none; }

/*
*  Main Menu
*/
.navbar-mega {
  min-height: inherit;
  margin: 0px;
  border: 0px solid transparent;
  border-radius: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0; }
  .navbar-mega .navbar-toggle {
    border-color: #ededed; }
    .navbar-mega .navbar-toggle .icon-bar {
      background-color: #54a9a2; }
  .navbar-mega .navbar-nav {
    float: none; }
    .navbar-mega .navbar-nav > .open > a {
      border-color: transparent;
      border-left-color: rgba(0, 0, 0, 0.1);
      color: #54a9a2;
      background: transparent; }
      .navbar-mega .navbar-nav > .open > a:before {
        opacity: 1;
        filter: alpha(opacity=100); }
    .navbar-mega .navbar-nav ul {
      padding: 0;
      margin: 0;
      list-style: none; }
      .navbar-mega .navbar-nav ul li.parent {
        position: relative; }
      .navbar-mega .navbar-nav ul li.dropdown-submenu {
        position: relative; }
        .navbar-mega .navbar-nav ul li.dropdown-submenu .dropdown-menu {
          top: 0;
          left: 100%;
          right: auto;
          position: absolute; }
    .navbar-mega .navbar-nav li.active {
      background: none; }
      .navbar-mega .navbar-nav li.active > a {
        background: none; }
        .navbar-mega .navbar-nav li.active > a:before {
          height: 3px; }
    .navbar-mega .navbar-nav li a:hover, .navbar-mega .navbar-nav li a:active, .navbar-mega .navbar-nav li a:focus {
      background: none;
      color: #54a9a2; }
    .navbar-mega .navbar-nav li.open > a {
      background: none;
      color: #54a9a2; }
    .navbar-mega .navbar-nav > li {
      display: inline-block;
      float: none;
      margin: 0 15px; }
      .navbar-mega .navbar-nav > li > a {
        font-family: "Poppins", sans-serif;
        position: relative;
        color: #000;
        padding: 13px 0 12px;
        margin: 0;
        text-transform: uppercase;
        font-weight: 400;
        border-radius: 0;
        -webkit-border-radius: 0;
        -moz-border-radius: 0;
        -ms-border-radius: 0;
        -o-border-radius: 0;
        /* 3 */
        /* 3 */
        /* 4 */
        /* 6 */
        /* 6 */
        /* 7 */
        font-size: 14px;
        /* 9 */
        font-size: 1.4rem;
        /* 9 */
        -webkit-transition: all 0.35s;
        -o-transition: all 0.35s;
        transition: all 0.35s; }
        .navbar-mega .navbar-nav > li > a .caret {
          color: #222222;
          border-width: 3px;
          -webkit-transition: all 0.35s;
          -o-transition: all 0.35s;
          transition: all 0.35s; }
        .navbar-mega .navbar-nav > li > a:before {
          background: #54a9a2 none repeat scroll 0 0;
          content: "";
          height: 0;
          left: 0;
          position: absolute;
          bottom: 0;
          transition: all 200ms ease-in-out 0s;
          width: 100%;
          z-index: 1; }
        .navbar-mega .navbar-nav > li > a:hover, .navbar-mega .navbar-nav > li > a:focus {
          color: #fff;
          background: transparent; }
          .navbar-mega .navbar-nav > li > a:hover:before, .navbar-mega .navbar-nav > li > a:focus:before {
            opacity: 1;
            filter: alpha(opacity=100);
            height: 3px; }
          .navbar-mega .navbar-nav > li > a:hover .caret, .navbar-mega .navbar-nav > li > a:focus .caret {
            color: #fff; }
      .navbar-mega .navbar-nav > li:first-child a {
        border: none; }
      .navbar-mega .navbar-nav > li .dropdown-menu {
        padding: 0;
        background: #fff;
        min-width: 250px;
        border-radius: 0;
        -webkit-border-radius: 0;
        -moz-border-radius: 0;
        -ms-border-radius: 0;
        -o-border-radius: 0;
        position: absolute;
        opacity: 0;
        display: block;
        right: 0;
        top: 101%;
        -webkit-transition: all 0.3s ease-out 0s;
        -o-transition: all 0.3s ease-out 0s;
        transition: all 0.3s ease-out 0s;
        transform: translate(0px, 20px);
        -webkit-transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
        -o-transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
        transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
        visibility: hidden;
        z-index: 999;
        border: none; }
        .navbar-mega .navbar-nav > li .dropdown-menu ul.dropdown-menu {
          left: 100%;
          top: 0;
          position: absolute;
          opacity: 0;
          visibility: hidden;
          -webkit-transition: all 0.3s ease-out 0s;
          -o-transition: all 0.3s ease-out 0s;
          transition: all 0.3s ease-out 0s;
          transform: translate(0px, 20px); }
        .navbar-mega .navbar-nav > li .dropdown-menu .row {
          padding-top: 0; }
        .navbar-mega .navbar-nav > li .dropdown-menu li {
          display: block;
          padding: 10px 0 0;
          position: relative; }
          .navbar-mega .navbar-nav > li .dropdown-menu li a {
            min-height: inherit;
            display: block;
            font-weight: 300;
            padding: 10px 20px 0;
            color: #000;
            text-transform: none;
            -webkit-transition: all 0.2s linear;
            -o-transition: all 0.2s linear;
            transition: all 0.2s linear;
            /* 3 */
            /* 3 */
            /* 4 */
            /* 6 */
            /* 6 */
            /* 7 */
            font-size: 14px;
            /* 9 */
            font-size: 1.4rem;
            /* 9 */ }
            .navbar-mega .navbar-nav > li .dropdown-menu li a:hover {
              color: #54a9a2;
              background: transparent; }
          .navbar-mega .navbar-nav > li .dropdown-menu li:last-child {
            padding-bottom: 20px; }
          .navbar-mega .navbar-nav > li .dropdown-menu li:hover > ul.dropdown-menu {
            opacity: 1;
            visibility: visible;
            transform: translate(0px, 0px); }
        .navbar-mega .navbar-nav > li .dropdown-menu .widgettitle {
          padding: 20px;
          /* 3 */
          /* 3 */
          /* 4 */
          /* 6 */
          /* 6 */
          /* 7 */
          font-size: 14px;
          /* 9 */
          font-size: 1.4rem;
          /* 9 */
          border-color: #ededed;
          margin-bottom: 0; }
      .navbar-mega .navbar-nav > li .mega-dropdown-menu {
        padding: 30px; }
        .navbar-mega .navbar-nav > li .mega-dropdown-menu ul li a {
          padding-left: 0;
          padding-right: 0; }
          .navbar-mega .navbar-nav > li .mega-dropdown-menu ul li a:hover {
            padding-left: 10px;
            padding-right: 10px; }
    .navbar-mega .navbar-nav > .active {
      background: transparent; }
      .navbar-mega .navbar-nav > .active > a {
        color: #54a9a2; }
        .navbar-mega .navbar-nav > .active > a:before {
          opacity: 1;
          filter: alpha(opacity=100); }
    .navbar-mega .navbar-nav > .aligned-fullwidth {
      position: static !important; }
      .navbar-mega .navbar-nav > .aligned-fullwidth > .dropdown-menu {
        width: 100% !important; }
    .navbar-mega .navbar-nav > .aligned-right {
      position: static !important; }
      .navbar-mega .navbar-nav > .aligned-right > .dropdown-menu {
        right: 0;
        left: auto; }
    .navbar-mega .navbar-nav > .aligned-left {
      position: static !important; }
      .navbar-mega .navbar-nav > .aligned-left > .dropdown-menu {
        left: 0;
        right: auto; }
    .navbar-mega .navbar-nav .wpb-container-mega {
      margin: 0; }
    .navbar-mega .navbar-nav .container-mega .row {
      padding-bottom: 0;
      margin: 0 !important;
      width: 100%;
      position: relative;
      overflow: hidden; }
      .navbar-mega .navbar-nav .container-mega .row > div {
        position: relative;
        padding: 0; }
        .navbar-mega .navbar-nav .container-mega .row > div:after {
          content: "";
          width: 1px;
          height: 1000px;
          background: #ededed;
          position: absolute;
          left: 0;
          top: 0; }
        .navbar-mega .navbar-nav .container-mega .row > div:first-child:after {
          content: none; }
  .navbar-mega .text-label {
    position: absolute;
    top: -25px;
    right: 45%;
    padding: 0px 3px;
    font-size: 9px;
    color: #FFFFFF; }
    .navbar-mega .text-label.text-hot {
      background: #e43636; }
      .navbar-mega .text-label.text-hot:after {
        border-top-color: #e43636; }
    .navbar-mega .text-label.text-new {
      background: #04adf0; }
      .navbar-mega .text-label.text-new:after {
        border-top-color: #04adf0; }
    .navbar-mega .text-label:after {
      content: "";
      position: absolute;
      border: 3px solid transparent;
      top: 100%;
      left: 50%;
      margin-left: -3px; }

@media (min-width: 768px) {
  .navbar-mega .navbar-nav > li:hover > .dropdown-menu {
    opacity: 1;
    right: 0px;
    transform: translate(0px, 0px);
    visibility: visible; } }

/**
 * White Styles
 */
.navbar-mega-light .navbar-mega .navbar-nav > li > a, .navbar-mega-light .navbar-mega .navbar-nav > li > a .caret {
  color: #FFFFFF; }
  .navbar-mega-light .navbar-mega .navbar-nav > li > a:hover, .navbar-mega-light .navbar-mega .navbar-nav > li > a .caret:hover {
    color: #FFFFFF; }

.navbar-mega-theme {
  background: #54a9a2; }
  .navbar-mega-theme .navbar-mega .navbar-nav > li > a, .navbar-mega-theme .navbar-mega .navbar-nav > li > a .caret {
    color: #FFFFFF; }

/**
 * Simple Styles
 */
.navbar-mega-simple .pbr-megamenu {
  /* display: inline-block; */ }

/*** Vertical Megamenu ***/
.pbr-vertical-menu .navbar-vertical-mega {
  display: block;
  position: relative;
  width: 100%; }
  .pbr-vertical-menu .navbar-vertical-mega > li {
    display: block;
    float: none;
    clear: both;
    width: 100%;
    border-bottom: solid 1px #ededed; }
    .pbr-vertical-menu .navbar-vertical-mega > li > a {
      text-transform: uppercase;
      padding-top: 10px;
      padding-bottom: 10px;
      font-size: 13px; }
    .pbr-vertical-menu .navbar-vertical-mega > li .dropdown-menu {
      top: 0;
      left: 100%; }
    .pbr-vertical-menu .navbar-vertical-mega > li:hover > .dropdown-menu {
      display: block; }
    .pbr-vertical-menu .navbar-vertical-mega > li .caret {
      float: right; }

.pbr-vertical-menu.menu-right > li .dropdown-menu {
  top: 0;
  right: 100%; }

.menu-item-language-current .submenu-languages {
  display: none;
  position: absolute;
  top: 100%;
  background-color: #fff;
  min-width: 170px; }

.menu-item-language-current:hover .submenu-languages {
  display: block; }

.menu-item-language-current:hover .submenu-languages li {
  padding: 5px 10px; }

.bg-bottom {
  background-image: url("../../../images/bg-coffee6.png");
  background-position: bottom right;
  background-repeat: no-repeat; }

.main-content h1 {
  display: none; }

/**
 * 6.10 Contributor Page
 * -----------------------------------------------------------------------------
 */
.content-area {
  padding-top: 30px; }

.page .woocommerce-page .content-area {
  padding-top: 30px; }

.page .content-area {
  padding-top: 0; }

.contributor {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 48px 10px; }

.contributor:first-of-type {
  padding-top: 24px; }

.contributor-info {
  margin: 0 auto;
  max-width: 474px; }

.contributor-avatar {
  border: 1px solid rgba(0, 0, 0, 0.1);
  float: left;
  margin: 0 30px 20px 0;
  padding: 2px; }

.contributor-name {
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
  margin: 0; }

.contributor-bio a {
  text-decoration: underline; }

.contributor-bio a:hover {
  text-decoration: none; }

.contributor-posts-link {
  display: inline-block;
  line-height: normal;
  padding: 10px 30px; }

.contributor-posts-link:before {
  content: "\f443"; }

/**
 * 6.11 404 Page
 * -----------------------------------------------------------------------------
 */
.notfound-page .title {
  font-size: 160px;
  color: #54a9a2;
  font-weight: 700;
  line-height: 1;
  display: block; }
  .notfound-page .title .sub {
    font-size: 36px;
    font-weight: 300;
    color: #666;
    padding: 30px 0;
    margin: 0 0 30px;
    display: block;
    position: relative; }
    .notfound-page .title .sub:before {
      content: "";
      height: 3px;
      width: 100px;
      background: #666;
      position: absolute;
      left: 50%;
      bottom: 0;
      margin-left: -50px; }

.notfound-page .error-description {
  color: #666;
  padding: 0 20%;
  font-size: 20px; }
  @media (max-width: 991px) {
    .notfound-page .error-description {
      padding: 0 10px; } }

.notfound-page .page-action {
  margin-top: 50px; }
  .notfound-page .page-action a {
    margin: 10px 10px; }
    @media (max-width: 360px) {
      .notfound-page .page-action a {
        padding-left: 10px;
        padding-right: 10px; } }

.contact > div {
  margin-bottom: 10px; }

@media (max-width: 768px) {
  .wpb-js-composer .bg-rowmobile {
    background: none !important; }
  .wpb-js-composer .bg-colmobile {
    background-color: #54a9a2; } }

/**
 * 8.0 Gallery
 * -----------------------------------------------------------------------------
 */
.gallery .gallery-item {
  float: left;
  margin: 0 4px 4px 0;
  overflow: hidden;
  padding: 0;
  position: relative; }

.gallery-columns-1 .gallery-item {
  max-width: 100%;
  width: auto; }

.gallery-columns-2 .gallery-item {
  max-width: 48%;
  max-width: -webkit-calc(50% - 14px);
  max-width: calc(50% - 14px);
  width: auto; }

.gallery-columns-3 .gallery-item {
  max-width: 32%;
  max-width: -webkit-calc(33.3% - 11px);
  max-width: calc(33.3% - 11px);
  width: auto; }

.gallery-columns-4 .gallery-item {
  max-width: 23%;
  max-width: -webkit-calc(25% - 9px);
  max-width: calc(25% - 9px);
  width: auto; }

.gallery-columns-5 .gallery-item {
  max-width: 19%;
  max-width: -webkit-calc(20% - 8px);
  max-width: calc(20% - 8px);
  width: auto; }

.gallery-columns-6 .gallery-item {
  max-width: 15%;
  max-width: -webkit-calc(16.7% - 7px);
  max-width: calc(16.7% - 7px);
  width: auto; }

.gallery-columns-7 .gallery-item {
  max-width: 13%;
  max-width: -webkit-calc(14.28% - 7px);
  max-width: calc(14.28% - 7px);
  width: auto; }

.gallery-columns-8 .gallery-item {
  max-width: 11%;
  max-width: -webkit-calc(12.5% - 6px);
  max-width: calc(12.5% - 6px);
  width: auto; }

.gallery-columns-9 .gallery-item {
  max-width: 9%;
  max-width: -webkit-calc(11.1% - 6px);
  max-width: calc(11.1% - 6px);
  width: auto; }

.gallery-columns-1 .gallery-item:nth-of-type(1n),
.gallery-columns-2 .gallery-item:nth-of-type(2n),
.gallery-columns-3 .gallery-item:nth-of-type(3n),
.gallery-columns-4 .gallery-item:nth-of-type(4n),
.gallery-columns-5 .gallery-item:nth-of-type(5n),
.gallery-columns-6 .gallery-item:nth-of-type(6n),
.gallery-columns-7 .gallery-item:nth-of-type(7n),
.gallery-columns-8 .gallery-item:nth-of-type(8n),
.gallery-columns-9 .gallery-item:nth-of-type(9n) {
  margin-right: 0; }

.gallery .gallery-caption {
  background-color: rgba(0, 0, 0, 0.7);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  color: #fff;
  font-size: 12px;
  line-height: 1.5;
  margin: 0;
  max-height: 50%;
  opacity: 0;
  padding: 6px 8px;
  position: absolute;
  bottom: 0;
  left: 0;
  text-align: left;
  width: 100%; }

.gallery .gallery-caption:before {
  content: "";
  height: 100%;
  min-height: 49px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%; }

.gallery-item:hover .gallery-caption {
  opacity: 1; }

.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption {
  display: none; }

/**
 * 9.0 Audio/Video
 * ----------------------------------------------------------------------------
 */
.mejs-mediaelement,
.mejs-container .mejs-controls {
  background: #000; }

.mejs-controls .mejs-time-rail .mejs-time-loaded,
.mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current {
  background: #fff; }

.mejs-controls .mejs-time-rail .mejs-time-current {
  background: #24890d; }

.mejs-controls .mejs-time-rail .mejs-time-total,
.mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total {
  background: rgba(255, 255, 255, 0.33); }

.mejs-controls .mejs-time-rail span,
.mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,
.mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current {
  border-radius: 0; }

.mejs-overlay-loading {
  background: transparent; }

.mejs-overlay-button {
  background-color: #fff;
  background-image: none;
  border-radius: 2px;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.8);
  color: #000;
  height: 36px;
  margin-left: -24px;
  width: 48px; }

.mejs-overlay-button:before {
  -webkit-font-smoothing: antialiased;
  content: '\f452';
  display: inline-block;
  font: normal 32px/1.125 Genericons;
  position: absolute;
  top: 1px;
  left: 10px; }

.mejs-controls .mejs-button button:focus {
  outline: none; }

.mejs-controls .mejs-button button {
  -webkit-font-smoothing: antialiased;
  background: none;
  color: #fff;
  display: inline-block;
  font: normal 16px/1 Genericons; }

.mejs-playpause-button.mejs-play button:before {
  content: '\f452'; }

.mejs-playpause-button.mejs-pause button:before {
  content: '\f448'; }

.mejs-volume-button.mejs-mute button:before {
  content: '\f109';
  font-size: 20px;
  position: absolute;
  top: -2px;
  left: 0; }

.mejs-volume-button.mejs-unmute button:before {
  content: '\f109';
  left: 0;
  position: absolute;
  top: 0; }

.mejs-fullscreen-button button:before {
  content: '\f474'; }

.mejs-fullscreen-button.mejs-unfullscreen button:before {
  content: '\f406'; }

.mejs-overlay:hover .mejs-overlay-button {
  background-color: #24890d;
  color: #fff; }

.mejs-controls .mejs-button button:hover {
  color: #41a62a; }

div.page-links,
footer.entry-meta {
  margin: 10px 0;
  overflow: hidden;
  width: 100%; }

.widget_categories ul, .widget_pages ul,
.widget_recent_entries ul, .widget_nav_menu ul {
  list-style: none;
  padding: 0;
  margin: 0; }
  .widget_categories ul ul, .widget_pages ul ul,
  .widget_recent_entries ul ul, .widget_nav_menu ul ul {
    padding-left: 20px; }
  .widget_categories ul li, .widget_pages ul li,
  .widget_recent_entries ul li, .widget_nav_menu ul li {
    width: 100%; }
    .widget_categories ul li:last-child, .widget_pages ul li:last-child,
    .widget_recent_entries ul li:last-child, .widget_nav_menu ul li:last-child {
      border: none; }

.widget_archive ul {
  list-style: none;
  margin: 0;
  padding: 0; }
  .widget_archive ul li {
    line-height: 30px; }
  .widget_archive ul ul {
    padding-left: 10px; }

.widget_rss > ul,
.widget_recent_comments > ul,
.widget_meta > ul,
.widget_pages > ul {
  list-style: none;
  padding: 0; }

.widget_text img {
  margin-bottom: 10px; }

.widget_text select {
  max-width: 100%; }

.widget_calendar table {
  width: 100%; }

/**
 * 6.3 Entry Meta
 * -----------------------------------------------------------------------------
 */
.sticky .entry-date {
  display: none; }

.cat-links {
  font-weight: 900;
  text-transform: uppercase; }

.cat-links a {
  color: #2b2b2b; }

.cat-links a:hover {
  color: #54a9a2; }

.byline {
  display: none; }

/* Tag links style */
.entry-meta {
  color: #999;
  font-size: 12px;
  line-height: 26px;
  font-weight: 500;
  text-transform: uppercase; }
  .entry-meta a {
    color: #000;
    text-transform: uppercase; }
    .entry-meta a:hover {
      color: #54a9a2; }
  .entry-meta span .meta-sep {
    color: #dcdcdc;
    margin: 0 2px; }
  .entry-meta span span {
    color: #54a9a2; }
  .entry-meta .avatar {
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    margin-bottom: 20px; }

.tag-links {
  margin-top: 8px; }
  .tag-links a {
    background-color: #000;
    border-radius: 0 2px 2px 0;
    color: #fff;
    display: inline-block;
    font-size: 11px;
    line-height: 1.2727272727;
    margin: 2px 4px 2px 10px;
    padding: 3px 7px;
    position: relative;
    text-transform: uppercase; }
    .tag-links a:hover {
      background-color: #54a9a2;
      color: #fff; }
    .tag-links a:before {
      border-top: 10px solid transparent;
      border-right: 8px solid #000;
      border-bottom: 10px solid transparent;
      content: "";
      height: 0;
      position: absolute;
      top: 0;
      left: -8px;
      width: 0; }
    .tag-links a:hover:before {
      border-right-color: #54a9a2; }
    .tag-links a:after {
      background-color: #fff;
      border-radius: 50%;
      content: "";
      height: 4px;
      position: absolute;
      top: 8px;
      left: -2px;
      width: 4px; }

.entry-date a,
.meta-sep a,
.author a,
.entry-category a,
.comments-link a,
.edit-link a {
  margin-left: 5px; }

.entry-category ul {
  margin: 0;
  display: inline-block;
  padding: 0; }
  .entry-category ul li {
    margin: 0;
    padding: 0; }

/**
 * 6.4 Entry Content
 * -----------------------------------------------------------------------------
 */
.entry-content,
.entry-summary,
.page-content {
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
  word-wrap: break-word; }

.site-content .entry-content,
.site-content .entry-summary,
.page-content {
  margin-bottom: 30px; }

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

.entry-content a,
.entry-summary a,
.page-content a,
.comment-content a {
  text-decoration: none; }

.entry-content table,
.comment-content table {
  font-size: 14px;
  line-height: 1.2857142857;
  margin-bottom: 24px; }

.entry-content th,
.comment-content th {
  font-weight: 600;
  padding: 8px; }

.entry-content td,
.comment-content td {
  padding: 8px; }

.entry-content .edit-link {
  clear: both;
  display: block;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.3333333333;
  text-transform: uppercase; }

.entry-content .edit-link a {
  color: #54a9a2;
  text-decoration: none; }

.entry-content .edit-link a:hover {
  color: #41a62a; }

.entry-content .more-link {
  white-space: nowrap; }

.ratings a {
  text-indent: -9999em !important; }

.post-categories li {
  display: inline-block;
  list-style: none;
  list-style-type: dashed; }

/**
 * Navigation links
 */
.nav-links {
  background: #fafafa;
  padding: 20px;
  margin-top: 30px; }
  .nav-links .meta-nav {
    font-weight: bold;
    margin-right: 10px; }

.entry-content-page {
  position: relative; }
  .entry-content-page .edit-link {
    background: #000;
    position: absolute;
    top: 0;
    right: 0;
    padding: 5px 6px;
    z-index: 10000; }
    .entry-content-page .edit-link a {
      font-size: 11px;
      color: #FFF !important; }

/* Mediaelements */
.hentry .mejs-container {
  margin: 12px 0 18px; }

.hentry .mejs-mediaelement,
.hentry .mejs-container .mejs-controls {
  background: #000; }

.hentry .mejs-controls .mejs-time-rail .mejs-time-loaded,
.hentry .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current {
  background: #fff; }

.hentry .mejs-controls .mejs-time-rail .mejs-time-current {
  background: #24890d; }

.hentry .mejs-controls .mejs-time-rail .mejs-time-total,
.hentry .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total {
  background: rgba(255, 255, 255, 0.33); }

.hentry .mejs-container .mejs-controls .mejs-time {
  padding-top: 9px; }

.hentry .mejs-controls .mejs-time-rail span,
.hentry .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,
.hentry .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current {
  border-radius: 0; }

.hentry .mejs-overlay-loading {
  background: transparent; }

.hentry .mejs-overlay-button {
  background-color: #fff;
  background-image: none;
  border-radius: 2px;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.8);
  color: #000;
  height: 36px;
  margin-left: -24px;
  width: 48px; }

.hentry .mejs-overlay-button:before {
  -webkit-font-smoothing: antialiased;
  content: '\f452';
  display: inline-block;
  font: normal 32px/1.125 Genericons;
  position: absolute;
  top: 1px;
  left: 10px; }

.hentry .mejs-controls .mejs-button button:focus {
  outline: none; }

.hentry .mejs-controls .mejs-button button {
  -webkit-font-smoothing: antialiased;
  background: none;
  color: #fff;
  display: inline-block;
  font: normal 16px/1 Genericons; }

.hentry .mejs-playpause-button.mejs-play button:before {
  content: '\f452'; }

.hentry .mejs-playpause-button.mejs-pause button:before {
  content: '\f448'; }

.hentry .mejs-volume-button.mejs-mute button:before {
  content: '\f109';
  font-size: 20px;
  position: absolute;
  top: -2px;
  left: 0; }

.hentry .mejs-volume-button.mejs-unmute button:before {
  content: '\f109';
  left: 0;
  position: absolute;
  top: 0; }

.hentry .mejs-fullscreen-button button:before {
  content: '\f474'; }

.hentry .mejs-fullscreen-button.mejs-unfullscreen button:before {
  content: '\f406'; }

.hentry .mejs-overlay:hover .mejs-overlay-button {
  background-color: #24890d;
  color: #fff; }

.hentry .mejs-controls .mejs-button button:hover {
  color: #41a62a; }

article {
  position: relative; }
  article.post {
    margin-bottom: 20px; }
    article.post .entry-thumb {
      margin-bottom: 15px; }
      article.post .entry-thumb img {
        width: 100%; }
    article.post .entry-title {
      font-size: 18px; }
  article header {
    position: relative; }
    article header .cat-links {
      top: -40px;
      left: 20px;
      z-index: 9; }
  article h5.entry-title {
    line-height: 1.4;
    text-transform: uppercase;
    font-weight: 700;
    margin-top: 15px; }
  article .entry-excerpt {
    color: #999999;
    line-height: 24px; }
  article .entry-thumb {
    overflow: hidden; }
  article .post-format a i {
    display: none; }

/*------------------------------------*    Comment List
\*------------------------------------*/
.comments .the-comment {
  padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #ededed; }
  .comments .the-comment .avatar {
    float: left;
    margin-right: 10px; }
    .comments .the-comment .avatar img {
      width: 50px;
      height: 50px;
      border-radius: 50%;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      -ms-border-radius: 50%;
      -o-border-radius: 50%; }

.comments .children .the-comment {
  padding-left: 65px; }

.comments .children .children .the-comment {
  padding-left: 130px; }

.comments .comment-author {
  color: #999;
  font-size: 12px; }
  .comments .comment-author strong {
    color: #000;
    font-size: 14px; }

.comments .comment-meta {
  font-size: 12px;
  color: #aaa; }

.comments a {
  font-weight: 600;
  text-transform: uppercase; }

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

.pagination {
  margin-bottom: 30px; }
  .pagination span, .pagination a {
    border: 1px solid #ededed;
    padding: 6px 12px; }
  .pagination span.current,
  .pagination a:hover {
    color: #54a9a2; }

/*------------------------------------*    Single portfolio
\*------------------------------------*/
.pbr-portfolio-navigator {
  margin-bottom: 20px; }
  .pbr-portfolio-navigator .btn {
    margin-right: 10px; }
  .pbr-portfolio-navigator a {
    color: #FFF; }

.single-body .entry-title h1 {
  display: block !important; }

.post-single {
  padding-bottom: 60px;
  border-bottom: 1px solid #ededed;
  margin-bottom: 60px; }
  .post-single .post-thumbnail {
    margin-bottom: 30px; }
  .post-single article {
    margin-bottom: 0; }
    @media (min-width: 480px) {
      .post-single article .entry-meta {
        text-align: right;
        margin-right: 40px; } }
    @media (max-width: 768px) {
      .post-single article .entry-meta {
        text-align: center;
        margin-bottom: 15px; } }

.related-posts {
  border-top: 1px solid #ededed;
  margin-bottom: 30px;
  margin-top: 50px;
  padding-top: 30px; }

.post-archive .row:last-child .post-single {
  border-bottom: none; }

/*------------------------------------*\ 
    portfolio
\*------------------------------------*/
.single-portfolio .header-title .entry-title {
  margin-top: 0; }

.single-portfolio .header-title .btn {
  padding-left: 0;
  padding-right: 0; }
  .single-portfolio .header-title .btn::hover {
    text-decoration: none; }

.single-portfolio .post-area .entry-thumb {
  margin-bottom: 20px; }
  .single-portfolio .post-area .entry-thumb img {
    width: 100%;
    height: auto; }

.portfolio-masonry-entry {
  margin-bottom: 30px; }
  .portfolio-masonry-entry.nopadding {
    margin-bottom: 0; }

.ih-item.square {
  position: relative; }
  .ih-item.square .info {
    backface-visibility: hidden;
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    text-align: center;
    top: 0;
    background: #333333;
    color: #FFF; }
    .ih-item.square .info > * {
      color: #FFF; }
    .ih-item.square .info h3 {
      text-transform: uppercase;
      color: #fff;
      text-align: center;
      padding: 10px;
      background: #000;
      margin: 30px 0 0 0;
      font-size: 15px; }
    .ih-item.square .info p {
      font-style: italic;
      position: relative;
      color: #bbb;
      padding: 20px 20px 20px;
      text-align: center;
      font-size: 14px; }

.ih-item.square.effect2 {
  overflow: hidden; }
  .ih-item.square.effect2.colored .info {
    background: #333333; }
    .ih-item.square.effect2.colored .info h3 {
      background: #111111; }
  .ih-item.square.effect2 .img {
    opacity: 1;
    -webkit-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    -webkit-transform: rotate(0deg) scale(1);
    -moz-transform: rotate(0deg) scale(1);
    -ms-transform: rotate(0deg) scale(1);
    -o-transform: rotate(0deg) scale(1);
    transform: rotate(0deg) scale(1); }
  .ih-item.square.effect2 .info {
    background: #333333;
    visibility: hidden;
    -webkit-transition: all 0.35s 0.3s ease-in-out;
    -o-transition: all 0.35s 0.3s ease-in-out;
    transition: all 0.35s 0.3s ease-in-out; }
    .ih-item.square.effect2 .info h3 {
      -webkit-transform: translateY(-200px);
      -moz-transform: translateY(-200px);
      -ms-transform: translateY(-200px);
      -o-transform: translateY(-200px);
      transform: translateY(-200px);
      -webkit-transition: all 0.35s 0.6s ease-in-out;
      -o-transition: all 0.35s 0.6s ease-in-out;
      transition: all 0.35s 0.6s ease-in-out; }
    .ih-item.square.effect2 .info p {
      -webkit-transform: translateY(-200px);
      -moz-transform: translateY(-200px);
      -ms-transform: translateY(-200px);
      -o-transform: translateY(-200px);
      transform: translateY(-200px);
      -webkit-transition: all 0.35s 0.5s linear;
      -o-transition: all 0.35s 0.5s linear;
      transition: all 0.35s 0.5s linear; }
  .ih-item.square.effect2 a:hover .img {
    -webkit-transform: rotate(720deg) scale(0);
    -moz-transform: rotate(720deg) scale(0);
    -ms-transform: rotate(720deg) scale(0);
    -o-transform: rotate(720deg) scale(0);
    transform: rotate(720deg) scale(0);
    opacity: 0; }
  .ih-item.square.effect2 a:hover .info {
    visibility: visible; }
    .ih-item.square.effect2 a:hover .info h3,
    .ih-item.square.effect2 a:hover .info p {
      -webkit-transform: translateY(0);
      -moz-transform: translateY(0);
      -ms-transform: translateY(0);
      -o-transform: translateY(0);
      transform: translateY(0); }

.ih-item.square.effect3.bottom_to_top {
  overflow: hidden; }
  .ih-item.square.effect3.bottom_to_top .info {
    top: auto;
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transform: translateY(100%);
    -moz-transform: translateY(100%);
    -ms-transform: translateY(100%);
    -o-transform: translateY(100%);
    transform: translateY(100%);
    -webkit-transition: all 0.35s;
    -o-transition: all 0.35s;
    transition: all 0.35s; }
  .ih-item.square.effect3.bottom_to_top .img {
    -webkit-transition: all 0.35s;
    -o-transition: all 0.35s;
    transition: all 0.35s; }
  .ih-item.square.effect3.bottom_to_top a:hover .img {
    -webkit-transform: translateY(-50px);
    -moz-transform: translateY(-50px);
    -ms-transform: translateY(-50px);
    -o-transform: translateY(-50px);
    transform: translateY(-50px); }
  .ih-item.square.effect3.bottom_to_top a:hover .info {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0); }

.ih-item.square.effect5 .img {
  -webkit-transition: all 0.35s ease-in-out;
  -o-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1); }

.ih-item.square.effect5 .info {
  background: #000;
  opacity: 0;
  -webkit-transition: all 0.35s ease-in-out;
  -o-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out; }

.ih-item.square.effect5 a:hover .img {
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  -webkit-transition-delay: 0, 0;
  -moz-transition-delay: 0, 0;
  -ms-transition-delay: 0, 0;
  -o-transition-delay: 0, 0;
  transition-delay: 0, 0; }

.ih-item.square.effect5 a:hover .info {
  visibility: visible;
  opacity: 1;
  -webkit-transform: scale(1) rotate(0deg);
  -moz-transform: scale(1) rotate(0deg);
  -ms-transform: scale(1) rotate(0deg);
  -o-transform: scale(1) rotate(0deg);
  transform: scale(1) rotate(0deg);
  -webkit-transition-delay: 0.3s, 0.3s;
  -moz-transition-delay: 0.3s, 0.3s;
  -ms-transition-delay: 0.3s, 0.3s;
  -o-transition-delay: 0.3s, 0.3s;
  transition-delay: 0.3s, 0.3s; }

.ih-item.square.effect5.left_to_right .info {
  -webkit-transform: scale(0) rotate(-180deg);
  -moz-transform: scale(0) rotate(-180deg);
  -ms-transform: scale(0) rotate(-180deg);
  -o-transform: scale(0) rotate(-180deg);
  transform: scale(0) rotate(-180deg); }

.ih-item.square.effect6 {
  overflow: hidden; }
  .ih-item.square.effect6 .img {
    -webkit-transition: all 0.35s ease-in-out;
    -o-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); }
  .ih-item.square.effect6 .info {
    background: #000;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all 0.35s ease-in-out;
    -o-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out; }
    .ih-item.square.effect6 .info h3 {
      -webkit-transition: all 0.35s ease-in-out;
      -o-transition: all 0.35s ease-in-out;
      transition: all 0.35s ease-in-out; }
    .ih-item.square.effect6 .info p {
      -webkit-transition: all 0.35s 0.1s linear;
      -o-transition: all 0.35s 0.1s linear;
      transition: all 0.35s 0.1s linear; }
  .ih-item.square.effect6 a:hover .img {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
    transform: scale(1.2); }
  .ih-item.square.effect6 a:hover .info {
    visibility: visible;
    opacity: 1; }

.ih-item.square.effect6.bottom_to_top .info h3 {
  -webkit-transform: translateY(100%);
  -moz-transform: translateY(100%);
  -ms-transform: translateY(100%);
  -o-transform: translateY(100%);
  transform: translateY(100%); }

.ih-item.square.effect6.bottom_to_top .info p {
  -webkit-transform: translateY(100%);
  -moz-transform: translateY(100%);
  -ms-transform: translateY(100%);
  -o-transform: translateY(100%);
  transform: translateY(100%); }

.ih-item.square.effect6.bottom_to_top a:hover .info h3,
.ih-item.square.effect6.bottom_to_top a:hover .info p {
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0); }

.ih-item.square.effect7 {
  overflow: hidden; }
  .ih-item.square.effect7 .img {
    -webkit-transition: all 0.35s ease-in-out;
    -o-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); }
  .ih-item.square.effect7 .info {
    background: #000;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all 0.35s ease-in-out;
    -o-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out; }
    .ih-item.square.effect7 .info h3 {
      -webkit-transform: scale(4);
      -moz-transform: scale(4);
      -ms-transform: scale(4);
      -o-transform: scale(4);
      transform: scale(4);
      -webkit-transition: all 0.35s 0.1s ease-in-out;
      -o-transition: all 0.35s 0.1s ease-in-out;
      transition: all 0.35s 0.1s ease-in-out; }
    .ih-item.square.effect7 .info p {
      -webkit-transform: scale(5);
      -moz-transform: scale(5);
      -ms-transform: scale(5);
      -o-transform: scale(5);
      transform: scale(5);
      -webkit-transition: all 0.35s 0.3s linear;
      -o-transition: all 0.35s 0.3s linear;
      transition: all 0.35s 0.3s linear; }
  .ih-item.square.effect7 a:hover .img {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
    transform: scale(1.2); }
  .ih-item.square.effect7 a:hover .info {
    visibility: visible;
    opacity: 1; }
    .ih-item.square.effect7 a:hover .info h3,
    .ih-item.square.effect7 a:hover .info p {
      -webkit-transform: scale(1);
      -moz-transform: scale(1);
      -ms-transform: scale(1);
      -o-transform: scale(1);
      transform: scale(1); }

.ih-item.square.effect8 {
  overflow: hidden; }
  .ih-item.square.effect8 .img {
    opacity: 1;
    -webkit-transition: all 0.35s ease-in-out;
    -o-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out; }
  .ih-item.square.effect8 .info {
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all 0.35s ease-in-out;
    -o-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out; }
    .ih-item.square.effect8 .info h3 {
      -webkit-transition: all 0.35s 0.1s ease-in-out;
      -o-transition: all 0.35s 0.1s ease-in-out;
      transition: all 0.35s 0.1s ease-in-out; }
    .ih-item.square.effect8 .info p {
      -webkit-transition: all 0.35s 0.15s linear;
      -o-transition: all 0.35s 0.15s linear;
      transition: all 0.35s 0.15s linear; }
  .ih-item.square.effect8 a:hover .img {
    opacity: 0; }
  .ih-item.square.effect8 a:hover .info {
    visibility: visible;
    opacity: 1; }

.ih-item.square.effect8.scale_up .img {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1); }

.ih-item.square.effect8.scale_up .info {
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0); }
  .ih-item.square.effect8.scale_up .info h3,
  .ih-item.square.effect8.scale_up .info p {
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -ms-transform: scale(0);
    -o-transform: scale(0);
    transform: scale(0); }

.ih-item.square.effect8.scale_up a:hover .img {
  -webkit-transform: scale(5);
  -moz-transform: scale(5);
  -ms-transform: scale(5);
  -o-transform: scale(5);
  transform: scale(5); }

.ih-item.square.effect8.scale_up a:hover .info {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1); }
  .ih-item.square.effect8.scale_up a:hover .info h3,
  .ih-item.square.effect8.scale_up a:hover .info p {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); }

.ih-item.square.effect10 {
  overflow: hidden; }
  .ih-item.square.effect10 .img {
    -webkit-transition: all 0.35s ease-in-out;
    -o-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out; }
  .ih-item.square.effect10 .info {
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all 0.35s ease-in-out;
    -o-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out; }
  .ih-item.square.effect10 a:hover .info {
    visibility: visible;
    opacity: 1; }

.ih-item.square.effect10.left_to_right .img {
  -webkit-transform: translateX(0);
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -o-transform: translateX(0);
  transform: translateX(0); }

.ih-item.square.effect10.left_to_right .info {
  -webkit-transform: translateX(-100%);
  -moz-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  -o-transform: translateX(-100%);
  transform: translateX(-100%); }

.ih-item.square.effect10.left_to_right a:hover .img {
  -webkit-transform: translateX(100%);
  -moz-transform: translateX(100%);
  -ms-transform: translateX(100%);
  -o-transform: translateX(100%);
  transform: translateX(100%); }

.ih-item.square.effect10.left_to_right a:hover .info {
  -webkit-transform: translateX(0);
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -o-transform: translateX(0);
  transform: translateX(0); }

.ih-item.square.effect12 {
  overflow: hidden; }
  .ih-item.square.effect12 .img {
    -webkit-transition: all 0.35s ease-in;
    -o-transition: all 0.35s ease-in;
    transition: all 0.35s ease-in; }
  .ih-item.square.effect12 .info {
    background: #000;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all 0.35s ease-in;
    -o-transition: all 0.35s ease-in;
    transition: all 0.35s ease-in; }
    .ih-item.square.effect12 .info h3 {
      -webkit-transition: all 0.35s ease-in;
      -o-transition: all 0.35s ease-in;
      transition: all 0.35s ease-in; }
    .ih-item.square.effect12 .info p {
      -webkit-transition: all 0.35s ease-in;
      -o-transition: all 0.35s ease-in;
      transition: all 0.35s ease-in; }
  .ih-item.square.effect12 a:hover .info {
    visibility: visible;
    opacity: 1;
    -webkit-transition-delay: 0.2s, 0.2s;
    -moz-transition-delay: 0.2s, 0.2s;
    -ms-transition-delay: 0.2s, 0.2s;
    -o-transition-delay: 0.2s, 0.2s;
    transition-delay: 0.2s, 0.2s; }
    .ih-item.square.effect12 a:hover .info h3 {
      -webkit-transition-delay: 0.3s, 0.3s;
      -moz-transition-delay: 0.3s, 0.3s;
      -ms-transition-delay: 0.3s, 0.3s;
      -o-transition-delay: 0.3s, 0.3s;
      transition-delay: 0.3s, 0.3s; }
    .ih-item.square.effect12 a:hover .info p {
      -webkit-transition-delay: 0.25s, 0.25s;
      -moz-transition-delay: 0.25s, 0.25s;
      -ms-transition-delay: 0.25s, 0.25s;
      -o-transition-delay: 0.25s, 0.25s;
      transition-delay: 0.25s, 0.25s; }

.ih-item.square.effect12.left_to_right .info {
  -webkit-transform: translate(-460px, -100px) rotate(-180deg);
  -moz-transform: translate(-460px, -100px) rotate(-180deg);
  -ms-transform: translate(-460px, -100px) rotate(-180deg);
  -o-transform: translate(-460px, -100px) rotate(-180deg);
  transform: translate(-460px, -100px) rotate(-180deg); }
  .ih-item.square.effect12.left_to_right .info h3 {
    -webkit-transform: translateY(-100px);
    -moz-transform: translateY(-100px);
    -ms-transform: translateY(-100px);
    -o-transform: translateY(-100px);
    transform: translateY(-100px); }
  .ih-item.square.effect12.left_to_right .info p {
    -webkit-transform: translateX(-300px) rotate(-90deg);
    -moz-transform: translateX(-300px) rotate(-90deg);
    -ms-transform: translateX(-300px) rotate(-90deg);
    -o-transform: translateX(-300px) rotate(-90deg);
    transform: translateX(-300px) rotate(-90deg); }

.ih-item.square.effect12.left_to_right a:hover .info {
  -webkit-transform: translate(0px, 0px);
  -moz-transform: translate(0px, 0px);
  -ms-transform: translate(0px, 0px);
  -o-transform: translate(0px, 0px);
  transform: translate(0px, 0px); }
  .ih-item.square.effect12.left_to_right a:hover .info h3 {
    -webkit-transform: translateY(0px);
    -moz-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -o-transform: translateY(0px);
    transform: translateY(0px); }
  .ih-item.square.effect12.left_to_right a:hover .info p {
    -webkit-transform: translateX(0px) rotate(0deg);
    -moz-transform: translateX(0px) rotate(0deg);
    -ms-transform: translateX(0px) rotate(0deg);
    -o-transform: translateX(0px) rotate(0deg);
    transform: translateX(0px) rotate(0deg); }

.ih-item.square.effect14 {
  overflow: hidden; }
  .ih-item.square.effect14 .img {
    opacity: 1;
    -webkit-transition: all 0.35s ease-in-out;
    -o-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out; }
  .ih-item.square.effect14 .info {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
    -webkit-transition: all 0.35s ease 0.2s;
    -o-transition: all 0.35s ease 0.2s;
    transition: all 0.35s ease 0.2s; }
  .ih-item.square.effect14 a:hover .img {
    opacity: 0;
    pointer-events: none;
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5); }
  .ih-item.square.effect14 a:hover .info {
    visibility: visible;
    opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); }

.ih-item.square.effect14.left_to_right .img {
  -webkit-transform: translateX(0) rotate(0);
  -moz-transform: translateX(0) rotate(0);
  -ms-transform: translateX(0) rotate(0);
  -o-transform: translateX(0) rotate(0);
  transform: translateX(0) rotate(0); }

.ih-item.square.effect14.left_to_right a:hover .img {
  -webkit-transform: translateX(100%) rotate(180deg);
  -moz-transform: translateX(100%) rotate(180deg);
  -ms-transform: translateX(100%) rotate(180deg);
  -o-transform: translateX(100%) rotate(180deg);
  transform: translateX(100%) rotate(180deg); }

.ih-item.square.effect15 {
  overflow: hidden;
  -webkit-perspective: 900px;
  -ms-perspective: 900px;
  -moz-perspective: 900px;
  -o-perspective: 900px;
  perspective: 900px; }
  .ih-item.square.effect15 .img {
    opacity: 1;
    -webkit-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out; }
  .ih-item.square.effect15 .info {
    opacity: 0;
    -webkit-transition: all 0.35s ease-in-out 0.3s;
    -o-transition: all 0.35s ease-in-out 0.3s;
    transition: all 0.35s ease-in-out 0.3s; }
  .ih-item.square.effect15 a:hover .img {
    opacity: 0;
    visibility: hidden; }
  .ih-item.square.effect15 a:hover .info {
    visibility: visible;
    opacity: 1; }

.ih-item.square.effect15.left_to_right .img {
  -webkit-transform: rotateY(0);
  -moz-transform: rotateY(0);
  -ms-transform: rotateY(0);
  -o-transform: rotateY(0);
  transform: rotateY(0);
  -webkit-transform-origin: 100% 50%;
  -moz-transform-origin: 100% 50%;
  -ms-transform-origin: 100% 50%;
  transform-origin: 100% 50%; }

.ih-item.square.effect15.left_to_right .info {
  -webkit-transform: rotateY(90deg);
  -moz-transform: rotateY(90deg);
  -ms-transform: rotateY(90deg);
  -o-transform: rotateY(90deg);
  transform: rotateY(90deg);
  -webkit-transform-origin: 0% 50%;
  -moz-transform-origin: 0% 50%;
  -ms-transform-origin: 0% 50%;
  transform-origin: 0% 50%; }

.ih-item.square.effect15.left_to_right a:hover .img {
  -webkit-transform: rotateY(-90deg);
  -moz-transform: rotateY(-90deg);
  -ms-transform: rotateY(-90deg);
  -o-transform: rotateY(-90deg);
  transform: rotateY(-90deg); }

.ih-item.square.effect15.left_to_right a:hover .info {
  -webkit-transform: rotateY(0);
  -moz-transform: rotateY(0);
  -ms-transform: rotateY(0);
  -o-transform: rotateY(0);
  transform: rotateY(0); }

.ih-item.square.effect16 .info {
  opacity: 0;
  filter: alpha(opacity=0);
  background: #54a9a2;
  -webkit-transition: all 0.35s;
  -o-transition: all 0.35s;
  transition: all 0.35s; }
  @media (max-width: 991px) {
    .ih-item.square.effect16 .info {
      padding-top: 10px !important; } }
  @media (max-width: 767px) {
    .ih-item.square.effect16 .info {
      display: none !important; } }
  .ih-item.square.effect16 .info h3 {
    background: none; }
    .ih-item.square.effect16 .info h3 a {
      color: #000 !important;
      -webkit-transition: all 0.35s;
      -o-transition: all 0.35s;
      transition: all 0.35s; }
      .ih-item.square.effect16 .info h3 a:hover {
        color: #FFF !important; }
  .ih-item.square.effect16 .info .description {
    display: none; }
  .ih-item.square.effect16 .info .created, .ih-item.square.effect16 .info .zoom {
    display: block !important;
    visibility: visible !important;
    padding: 0;
    color: #FFF;
    font-weight: 400; }
  .ih-item.square.effect16 .info .zoom i {
    border: 1px solid #FFF !important; }
  .ih-item.square.effect16 .info .info-inner {
    position: absolute;
    top: 50%;
    margin-top: -60px;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 1; }
    .ih-item.square.effect16 .info .info-inner h3 {
      margin: 0; }

.ih-item.square.effect16:hover .info {
  opacity: 1;
  filter: alpha(opacity=100); }

.ih-item.square.effect16 .info {
  opacity: 0;
  filter: alpha(opacity=0);
  background: #54a9a2;
  -webkit-transition: all 0.35s;
  -o-transition: all 0.35s;
  transition: all 0.35s; }
  @media (max-width: 991px) {
    .ih-item.square.effect16 .info {
      padding-top: 10px !important; } }
  @media (max-width: 767px) {
    .ih-item.square.effect16 .info {
      display: none !important; } }
  .ih-item.square.effect16 .info h3 {
    background: none; }
    .ih-item.square.effect16 .info h3 a {
      color: #000 !important;
      -webkit-transition: all 0.35s;
      -o-transition: all 0.35s;
      transition: all 0.35s; }
      .ih-item.square.effect16 .info h3 a:hover {
        color: #FFF !important; }
  .ih-item.square.effect16 .info .description {
    display: none; }
  .ih-item.square.effect16 .info .created, .ih-item.square.effect16 .info .zoom {
    display: block !important;
    visibility: visible !important;
    padding: 0;
    color: #FFF;
    font-weight: 400; }
  .ih-item.square.effect16 .info .zoom i {
    border: 1px solid #FFF !important; }
  .ih-item.square.effect16 .info .info-inner {
    position: absolute;
    top: 50%;
    margin-top: -60px;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 1; }
    .ih-item.square.effect16 .info .info-inner h3 {
      margin: 0; }

.ih-item.square.effect16:hover .info {
  opacity: 1;
  filter: alpha(opacity=100); }

.zoomLens {
  width: 50px !important;
  height: 50px !important; }
  .zoomLens:before {
    content: "+";
    height: 50px;
    width: 50px;
    text-align: center;
    line-height: 48px;
    font-size: 25px;
    display: block;
    font-weight: 400; }

.bg-style-v4 {
  background: url("../../../images/bg-style-v4.jpg") no-repeat center top transparent; }

.bg-style-v3 {
  background: url("../../../images/bg-style-v3.jpg") no-repeat center top transparent; }

.bg-style-v2 {
  background: url("../../../images/bg-style-v2.jpg") no-repeat right bottom #efefef; }

@media screen and (min-width: 768px) {
  .bg-style-v1 {
    background-image: url("../../../images/bg-style-v1.png");
    background-repeat: no-repeat;
    background-color: transparent;
    background-position: right top; } }

.bg-success {
  background-color: #70ba28; }

.bg-warning {
  background-color: #f0c73b; }

.bg-danger {
  background-color: #e43636; }

.bg-info {
  background-color: #04adf0; }

.bg-primary {
  background-color: #54a9a2; }

/*Space
------------------------------------*/
/*Margin Top*/
.space-top-5 {
  margin-top: 5px !important; }

.space-top-10 {
  margin-top: 10px !important; }

.space-top-15 {
  margin-top: 15px !important; }

.space-top-20 {
  margin-top: 20px !important; }

.space-top-25 {
  margin-top: 25px !important; }

.space-top-30 {
  margin-top: 30px !important; }

.space-top-35 {
  margin-top: 35px !important; }

.space-top-40 {
  margin-top: 40px !important; }

.space-top-45 {
  margin-top: 45px !important; }

.space-top-50 {
  margin-top: 50px !important; }

/*Margin Bottom*/
.space-5 {
  margin-bottom: 5px !important; }

.space-10 {
  margin-bottom: 10px !important; }

.space-15 {
  margin-bottom: 15px !important; }

.space-20 {
  margin-bottom: 20px !important; }

.space-25 {
  margin-bottom: 25px !important; }

.space-30 {
  margin-bottom: 30px !important; }

.space-35 {
  margin-bottom: 35px !important; }

.space-40 {
  margin-bottom: 40px !important; }

.space-45 {
  margin-bottom: 45px !important; }

.space-50 {
  margin-bottom: 50px !important; }

.no-margin-bottom {
  margin-bottom: 0; }

/*Padding Around the Block*/
.space-padding-0 {
  padding: 0 !important; }

.space-padding-10 {
  padding: 10px !important; }

.space-padding-20 {
  padding: 20px !important; }

.space-padding-30 {
  padding: 30px !important; }

.space-padding-40 {
  padding: 40px !important; }

.space-padding-50 {
  padding: 50px !important; }

.padding-left-50 {
  padding-left: 50px; }

.space-padding-tb-100 {
  padding-bottom: 100px;
  padding-top: 100px; }

.space-padding-bottom-40 {
  padding-bottom: 40px !important; }

.hasborder {
  border: 1px solid #ededed; }

.bg-none {
  background: transparent !important; }

/* 
 *      Core Owl Carousel CSS File
 *      v1.3.3
 */
.no-space-row .row {
  margin: 0; }

.no-space-row [class^="col-"],
.no-space-row [class*="col-"] {
  padding: 0; }

.no-padding {
  margin: 0 !important;
  padding: 0 !important; }

.bg-white {
  background: #FFF; }

.btn-outline-light {
  color: #FFFFFF;
  background-color: transparent;
  border-color: #FFFFFF; }
  .btn-outline-light:hover, .btn-outline-light:focus, .btn-outline-light:active, .btn-outline-light.active {
    color: #FFFFFF;
    background-color: #54a9a2;
    border-color: #54a9a2; }
  .open .btn-outline-light.dropdown-toggle {
    color: #FFFFFF;
    background-color: #54a9a2;
    border-color: #54a9a2; }
  .btn-outline-light:active, .btn-outline-light.active {
    background-image: none; }
  .open .btn-outline-light.dropdown-toggle {
    background-image: none; }
  .btn-outline-light.disabled, .btn-outline-light.disabled:hover, .btn-outline-light.disabled:focus, .btn-outline-light.disabled:active, .btn-outline-light.disabled.active, .btn-outline-light[disabled], .btn-outline-light[disabled]:hover, .btn-outline-light[disabled]:focus, .btn-outline-light[disabled]:active, .btn-outline-light[disabled].active,
  fieldset[disabled] .btn-outline-light,
  fieldset[disabled] .btn-outline-light:hover,
  fieldset[disabled] .btn-outline-light:focus,
  fieldset[disabled] .btn-outline-light:active,
  fieldset[disabled] .btn-outline-light.active {
    background-color: transparent;
    border-color: #FFFFFF; }
  .btn-outline-light .badge {
    color: transparent;
    background-color: #FFFFFF; }

.btn-outline-dark {
  color: #000;
  background-color: transparent;
  border-color: #000; }
  .btn-outline-dark:hover, .btn-outline-dark:focus, .btn-outline-dark:active, .btn-outline-dark.active {
    color: #FFF;
    background-color: #54a9a2;
    border-color: #54a9a2; }
  .open .btn-outline-dark.dropdown-toggle {
    color: #FFF;
    background-color: #54a9a2;
    border-color: #54a9a2; }
  .btn-outline-dark:active, .btn-outline-dark.active {
    background-image: none; }
  .open .btn-outline-dark.dropdown-toggle {
    background-image: none; }
  .btn-outline-dark.disabled, .btn-outline-dark.disabled:hover, .btn-outline-dark.disabled:focus, .btn-outline-dark.disabled:active, .btn-outline-dark.disabled.active, .btn-outline-dark[disabled], .btn-outline-dark[disabled]:hover, .btn-outline-dark[disabled]:focus, .btn-outline-dark[disabled]:active, .btn-outline-dark[disabled].active,
  fieldset[disabled] .btn-outline-dark,
  fieldset[disabled] .btn-outline-dark:hover,
  fieldset[disabled] .btn-outline-dark:focus,
  fieldset[disabled] .btn-outline-dark:active,
  fieldset[disabled] .btn-outline-dark.active {
    background-color: transparent;
    border-color: #000; }
  .btn-outline-dark .badge {
    color: transparent;
    background-color: #000; }

.btn-inverse-light {
  color: #54a9a2;
  background-color: #FFFFFF;
  border-color: #FFF; }
  .btn-inverse-light:hover, .btn-inverse-light:focus, .btn-inverse-light:active, .btn-inverse-light.active {
    color: #FFFFFF;
    background-color: transparent;
    border-color: #FFFFFF; }
  .open .btn-inverse-light.dropdown-toggle {
    color: #FFFFFF;
    background-color: transparent;
    border-color: #FFFFFF; }
  .btn-inverse-light:active, .btn-inverse-light.active {
    background-image: none; }
  .open .btn-inverse-light.dropdown-toggle {
    background-image: none; }
  .btn-inverse-light.disabled, .btn-inverse-light.disabled:hover, .btn-inverse-light.disabled:focus, .btn-inverse-light.disabled:active, .btn-inverse-light.disabled.active, .btn-inverse-light[disabled], .btn-inverse-light[disabled]:hover, .btn-inverse-light[disabled]:focus, .btn-inverse-light[disabled]:active, .btn-inverse-light[disabled].active,
  fieldset[disabled] .btn-inverse-light,
  fieldset[disabled] .btn-inverse-light:hover,
  fieldset[disabled] .btn-inverse-light:focus,
  fieldset[disabled] .btn-inverse-light:active,
  fieldset[disabled] .btn-inverse-light.active {
    background-color: #FFFFFF;
    border-color: #FFF; }
  .btn-inverse-light .badge {
    color: #FFFFFF;
    background-color: #54a9a2; }

.btn-outline {
  background: transparent;
  background: transparent;
  background: transparent;
  background: transparent;
  background: transparent;
  background: transparent; }
  .btn-outline.btn-default {
    color: #000; }
    .btn-outline.btn-default:hover {
      color: #FFFFFF; }
  .btn-outline.btn-primary {
    color: #54a9a2; }
    .btn-outline.btn-primary:hover {
      color: #FFFFFF; }
  .btn-outline.btn-success {
    color: #54a9a2; }
    .btn-outline.btn-success:hover {
      color: #FFFFFF; }
  .btn-outline.btn-info {
    color: #04adf0; }
    .btn-outline.btn-info:hover {
      color: #FFFFFF; }
  .btn-outline.btn-danger {
    color: #e43636; }
    .btn-outline.btn-danger:hover {
      color: #FFFFFF; }
  .btn-outline.btn-warning {
    color: #f0c73b; }
    .btn-outline.btn-warning:hover {
      color: #FFFFFF; }

.btn-inverse.btn-primary:hover {
  color: #54a9a2;
  background: transparent; }

.btn-inverse.btn-success:hover {
  color: #54a9a2;
  background: transparent; }

.btn-inverse.btn-info:hover {
  color: #04adf0;
  background: transparent; }

.btn-inverse.btn-danger:hover {
  color: #e43636;
  background: transparent; }

.btn-inverse.btn-warning:hover {
  color: #f0c73b;
  background: transparent; }

.btn-3d {
  border: 0 none;
  box-shadow: 0 -5px 0 0 rgba(0, 0, 0, 0.15) inset; }

/* clearfix */
.owl-carousel .owl-wrapper:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }

/* display none until init */
.owl-carousel {
  display: none;
  position: relative;
  width: 100%;
  -ms-touch-action: pan-y; }

.owl-carousel .owl-wrapper {
  display: none;
  position: relative;
  -webkit-transform: translate3d(0px, 0px, 0px); }

.owl-carousel .owl-wrapper-outer {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100% !important;
  direction: ltr !important; }

.owl-carousel .owl-wrapper-outer.autoHeight {
  -webkit-transition: height 500ms ease-in-out;
  -moz-transition: height 500ms ease-in-out;
  -ms-transition: height 500ms ease-in-out;
  -o-transition: height 500ms ease-in-out;
  transition: height 500ms ease-in-out; }

.owl-carousel .owl-item {
  float: left; }
  .owl-carousel .owl-item .item {
    padding: 0 15px; }

.owl-controls .owl-page,
.owl-controls .owl-buttons div {
  cursor: pointer; }

.owl-controls .owl-buttons div {
  position: absolute; }

.owl-controls .owl-buttons .owl-prev {
  left: 10px;
  top: 50%; }

.owl-controls .owl-buttons .owl-next {
  right: 10px;
  top: 50%; }

/* .owl-controls {
        -webkit-user-select: none;
        -khtml-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
        display: none!important;
}
 */
/* mouse grab icon */
/* fix */
.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden; }

/* OpenCart Code */
.owl-carousel {
  margin: 0 0px; }

.owl-carousel .owl-buttons div {
  opacity: 0;
  color: rgba(0, 0, 0, 0.8);
  text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.3);
  transition: all .3s ease; }

.owl-carousel:hover .owl-buttons div {
  opacity: 0.7; }

.owl-carousel .owl-buttons div i {
  font-size: 40px;
  margin: -20px 0 0; }

.owl-carousel .owl-buttons .owl-prev {
  left: -50px; }

.owl-carousel .owl-buttons .owl-next {
  right: -50px; }

.owl-carousel:hover .owl-buttons .owl-prev {
  left: 10px; }

.owl-carousel:hover .owl-buttons .owl-next {
  right: 10px; }

.owl-pagination {
  text-align: center;
  top: 0px;
  position: relative;
  margin-bottom: 30px; }

.owl-controls .owl-page {
  display: inline-block;
  margin: 0px 6px; }

.owl-controls .owl-page span {
  display: block;
  width: 8px;
  height: 8px;
  background: #54a9a2;
  border-radius: 20px;
  /*      box-shadow: inset 0 0 3px rgba(0,0,0,0.3);       */ }

.owl-controls .owl-page.active {
  position: relative;
  top: 4px; }

.owl-controls .owl-page.active span {
  background: transparent;
  border: 2px solid #54a9a2;
  width: 14px;
  height: 14px; }

.owl-carousel-play {
  position: relative;
  margin-left: -15px;
  margin-right: -15px; }
  .owl-carousel-play .owl-item:last-child .product-wrapper {
    border: none; }

.owl-carousel-play .carousel-control {
  z-index: 20;
  top: 40%;
  opacity: 0; }

.owl-carousel-play:hover .carousel-control {
  opacity: 1;
  -webkit-transition: all 0.35s ease 0s;
  -o-transition: all 0.35s ease 0s;
  transition: all 0.35s ease 0s; }
  .owl-carousel-play:hover .carousel-control.left {
    left: 15px; }
  .owl-carousel-play:hover .carousel-control.right {
    right: 15px; }

.carousel-md {
  width: 50px;
  height: 75px;
  line-height: 75px; }

.carousel-sm {
  width: 38px;
  height: 57px;
  line-height: 57px;
  font-size: 14px; }

.carousel-xs {
  width: 30px;
  height: 45px;
  line-height: 45px;
  font-size: 14px; }

.carousel-controls-v3 .carousel-control {
  box-shadow: 0 0 0 30px #FFF inset;
  color: #999;
  border: 1px solid #ededed;
  -webkit-transition: all 0.35s ease 0s;
  -o-transition: all 0.35s ease 0s;
  transition: all 0.35s ease 0s;
  font-size: 20px; }
  .carousel-controls-v3 .carousel-control.left {
    left: -20px; }
  .carousel-controls-v3 .carousel-control.right {
    right: -20px; }
  .carousel-controls-v3 .carousel-control:hover {
    box-shadow: 0 0 0 30px #54a9a2 inset;
    color: #fff;
    border: 1px solid #54a9a2; }

.carousel-controls-v4 {
  width: 60px;
  height: 30px;
  right: 10px;
  position: absolute;
  top: -46px; }
  .carousel-controls-v4 .carousel-control {
    background-color: rgba(0, 0, 0, 0.6);
    color: #FFF;
    z-index: 99;
    height: 25px;
    background-color: #333;
    border: 1px solid #4b4b4b;
    left: auto;
    font-size: 15px; }
    .carousel-controls-v4 .carousel-control.left {
      left: 0; }
    .carousel-controls-v4 .carousel-control.right {
      right: 0; }

/*Font Weight*/
.fweight-100 {
  font-weight: 100 !important; }

.fweight-200 {
  font-weight: 200 !important; }

.fweight-300 {
  font-weight: 300 !important; }

.fweight-400 {
  font-weight: 400 !important; }

.fweight-500 {
  font-weight: 500 !important; }

.fweight-600 {
  font-weight: 600 !important; }

.fweight-700 {
  font-weight: 700 !important; }

.fweight-800 {
  font-weight: 800 !important; }

.text-big-1 {
  font-size: 18px;
  line-height: 32px; }

.text-big-2 {
  font-size: 24px; }

.text-big-3 {
  font-size: 50px;
  letter-spacing: -3px; }

.text-big-4 {
  font-size: 60px;
  letter-spacing: -3px; }

.text-purple {
  color: #6c58bd !important; }

.text-red {
  color: #c32322 !important; }

.text-red-1 {
  color: #ff0000 !important; }

.text-orange {
  color: #f66000 !important; }

.text-yellow {
  color: #e2d951 !important; }

.text-black {
  color: #000 !important; }

.text-white, .text-light {
  color: #FFFFFF !important; }

.text-darker {
  color: #333 !important; }

.text-brown {
  color: #ccc !important; }

.text-uppercase, .initialism {
  text-transform: uppercase; }

/*Radius
------------------------------------*/
.radius-0 {
  border-radius: 0 !important; }

.radius-x {
  border-radius: 50% !important; }

.radius-1x {
  border-radius: 10px !important; }

.radius-2x {
  border-radius: 20px !important; }

.radius-3x {
  border-radius: 30px !important; }

.radius-4x {
  border-radius: 40px !important; }

.radius-5x {
  border-radius: 5px !important; }

.radius-6x {
  border-radius: 3px !important; }

.list-border li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
  .list-border li:last-child {
    border-bottom: none; }

.list-circle li {
  margin-bottom: 10px;
  position: relative;
  padding-left: 20px; }
  .list-circle li:before {
    width: 6px;
    height: 6px;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    -ms-border-radius: 6px;
    -o-border-radius: 6px;
    background-color: #54a9a2;
    top: 8px;
    left: 0;
    position: absolute;
    content: ""; }

/**
 * Menu
 */
ul.menu {
  padding: 0;
  margin: 0; }
  ul.menu li {
    list-style: none; }

/****/
.testimonials .testimonials-avatar {
  width: 70px;
  height: 70px;
  overflow: hidden; }

.testimonials .testimonials-quote {
  padding: 10px 25px;
  position: relative; }

.testimonials .testimonials-body .rating {
  width: 100px;
  height: 16px;
  margin-bottom: 35px;
  background-position: center top;
  background-repeat: no-repeat;
  display: inline-block; }

.testimonials .testimonials-body .rating_5 {
  background-image: url("../../../images/star5.png"); }

.testimonials .testimonials-body .rating_4 {
  background-image: url("../../../images/star4.png"); }

.testimonials .testimonials-body .rating_3 {
  background-image: url("../../../images/star3.png"); }

.testimonials .testimonials-body .rating_2 {
  background-image: url("../../../images/star2.png"); }

.testimonials .testimonials-body .rating_1 {
  background-image: url("../../../images/star1.png"); }

.testimonials .testimonials-left {
  padding: 20px 0; }
  .testimonials .testimonials-left .testimonials-avatar {
    float: left;
    display: inline-block;
    border: 5px solid #ebebeb;
    margin-right: 15px; }
  .testimonials .testimonials-left .testimonials-body {
    background-color: #fff;
    -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -ms-border-radius: 10px;
    -o-border-radius: 10px;
    overflow: visible;
    padding: 50px 40px 40px;
    position: relative; }
    .testimonials .testimonials-left .testimonials-body:before {
      position: absolute;
      top: -18px;
      left: 40px;
      background: url("../../../images/quote.png") no-repeat center top transparent;
      width: 55px;
      height: 55px;
      content: ""; }
    .testimonials .testimonials-left .testimonials-body .testimonials-quote {
      padding: 35px 0 0; }
    .testimonials .testimonials-left .testimonials-body .rating {
      margin-top: 30px;
      margin-bottom: 10px; }
  .testimonials .testimonials-left .profile-group {
    width: 70%; }
    .testimonials .testimonials-left .profile-group .name {
      margin: 15px 0 0; }

.testimonials.testimonials-v2 {
  text-align: center; }
  @media screen and (min-width: 992px) {
    .testimonials.testimonials-v2 {
      overflow: hidden; }
      .testimonials.testimonials-v2 .widget-content {
        margin: 0 2px; }
      .testimonials.testimonials-v2 .owl-item {
        position: relative; }
        .testimonials.testimonials-v2 .owl-item:before {
          position: absolute;
          top: 0;
          right: 0;
          width: 1px;
          height: 100%;
          background-color: rgba(0, 0, 0, 0.05);
          content: ""; } }
  .testimonials.testimonials-v2 .testimonials-body {
    padding: 50px 10px 10px;
    position: relative;
    display: block;
    overflow: hidden;
    background: url("../../../images/quote.png") no-repeat center top transparent; }
  .testimonials.testimonials-v2 .testimonials-avatar {
    display: inline-block;
    border: 5px solid #ebebeb; }
  .testimonials.testimonials-v2 .testimonials-profile {
    position: relative; }
    .testimonials.testimonials-v2 .testimonials-profile .name {
      text-transform: uppercase;
      margin-bottom: 5px;
      font-size: 14px;
      font-weight: 500; }
  .testimonials.testimonials-v2 .owl-controls .owl-page span {
    background-color: #FFF; }
  .testimonials.testimonials-v2 .owl-controls .owl-page.active span {
    border-color: #FFF;
    background-color: transparent; }

.testimonials.testimonials-v4 .testimonials-body {
  margin: 20px 25px; }

.testimonials.testimonials-v4 .testimonials-avatar {
  position: absolute;
  top: 15px;
  left: -30px; }

.testimonials.testimonials-v4 .testimonials-description, .testimonials.testimonials-v4 .testimonials-meta {
  margin-left: 30px; }

.testimonials.testimonials-v5 .testimonials-body {
  padding-left: 150px; }
  .testimonials.testimonials-v5 .testimonials-body:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background: url("../../../images/icon_test.png") no-repeat center top transparent;
    width: 100px;
    height: 85px; }
  .testimonials.testimonials-v5 .testimonials-body .testimonials-avatar {
    border: 5px solid #54a9a2;
    margin-top: 30px; }
  .testimonials.testimonials-v5 .testimonials-body .testimonials-description {
    font-size: 36px;
    line-height: 38px;
    text-transform: uppercase;
    font-weight: 600;
    font-family: "Poppins", sans-serif;
    color: #000; }
  .testimonials.testimonials-v5 .testimonials-body .testimonials-name {
    font-family: "Poppins", sans-serif;
    margin-top: 30px; }

/** SOCIAL ICONS ***/
.pbr-social-share {
  margin-bottom: 20px; }

.bo-social-icons [class^="bo-social-"] {
  color: #FFFFFF;
  display: inline-block;
  margin: 5px 0;
  overflow: hidden;
  text-decoration: none;
  text-align: center;
  vertical-align: top;
  line-height: 30px;
  width: 30px;
  height: 30px;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  background: #ededed;
  transition: all 0.2s ease-out 0s; }
  .bo-social-icons [class^="bo-social-"]:hover {
    background: #000000;
    color: #FFFFFF; }

.bo-social-icons .bo-social-white {
  background: #FFFFFF;
  color: #a1a1a1;
  border: 1px solid #a1a1a1; }

.bo-social-icons .bo-social-outline {
  background: transparent;
  color: #000;
  border: 1px solid #000; }

.bo-social-icons .bo-social-outline-light {
  background: transparent;
  color: #FFF;
  border: 1px solid #FFFFFF; }
  .bo-social-icons .bo-social-outline-light:hover {
    background: #FFF;
    color: #000;
    border-color: #000; }

.bo-social-icons:first-child [class*="bo-social-"] {
  margin-top: 0; }

.bo-social-icons:last-child [class*="bo-social-"] {
  margin-bottom: 0; }

.bo-sicolor .bo-social-twitter {
  background: #00bdec; }

.bo-sicolor .bo-social-twitter:hover {
  background: #000000; }

.bo-sicolor .bo-social-dribbble {
  background: #ef5b92; }

.bo-sicolor .bo-social-dribbble:hover {
  background: #000000; }

.bo-sicolor .bo-social-facebook {
  background: #3b5998; }

.bo-sicolor .bo-social-facebook:hover {
  background: #000000; }

.bo-sicolor .bo-social-duckduckgo {
  background: #de3100; }

.bo-sicolor .bo-social-duckduckgo:hover {
  background: #000000; }

.bo-sicolor .bo-social-aim {
  background: #158799; }

.bo-sicolor .bo-social-aim:hover {
  background: #000000; }

.bo-sicolor .bo-social-delicious {
  background: #183864; }

.bo-sicolor .bo-social-delicious:hover {
  background: #000000; }

.bo-sicolor .bo-social-paypal {
  background: #32689a; }

.bo-sicolor .bo-social-paypal:hover {
  background: #000000; }

.bo-sicolor .bo-social-android {
  background: #8ab733; }

.bo-sicolor .bo-social-android:hover {
  background: #000000; }

.bo-sicolor .bo-social-gplus {
  background: #d94a39; }

.bo-sicolor .bo-social-gplus:hover {
  background: #000000; }

.bo-sicolor .bo-social-lanyrd {
  background: #3879ba; }

.bo-sicolor .bo-social-lanyrd:hover {
  background: #000000; }

.bo-sicolor .bo-social-stumbleupon {
  background: #ea4b24; }

.bo-sicolor .bo-social-stumbleupon:hover {
  background: #000000; }

.bo-sicolor .bo-social-fivehundredpx {
  background: #00a6e1; }

.bo-sicolor .bo-social-fivehundredpx:hover {
  background: #000000; }

.bo-sicolor .bo-social-pinterest {
  background: #b8242a; }

.bo-sicolor .bo-social-pinterest:hover {
  background: #000000; }

.bo-sicolor .bo-social-bitcoin {
  background: #f7931a; }

.bo-sicolor .bo-social-bitcoin:hover {
  background: #000000; }

.bo-sicolor .bo-social-w3c {
  background: #005a9c; }

.bo-sicolor .bo-social-w3c:hover {
  background: #000000; }

.bo-sicolor .bo-social-foursquare {
  background: #3bb7e8; }

.bo-sicolor .bo-social-foursquare:hover {
  background: #000000; }

.bo-sicolor .bo-social-html5 {
  background: #e44e26; }

.bo-sicolor .bo-social-html5:hover {
  background: #000000; }

.bo-sicolor .bo-social-ie {
  background: #00ccff; }

.bo-sicolor .bo-social-ie:hover {
  background: #000000; }

.bo-sicolor .bo-social-grooveshark {
  background: #f66f00; }

.bo-sicolor .bo-social-grooveshark:hover {
  background: #000000; }

.bo-sicolor .bo-social-ninetyninedesigns {
  background: #ff5501; }

.bo-sicolor .bo-social-ninetyninedesigns:hover {
  background: #000000; }

.bo-sicolor .bo-social-forrst {
  background: #223f17; }

.bo-sicolor .bo-social-forrst:hover {
  background: #000000; }

.bo-sicolor .bo-social-spotify {
  background: #8fbd05; }

.bo-sicolor .bo-social-spotify:hover {
  background: #000000; }

.bo-sicolor .bo-social-reddit {
  background: #ff4500; }

.bo-sicolor .bo-social-reddit:hover {
  background: #000000; }

.bo-sicolor .bo-social-gowalla {
  background: #f6911d; }

.bo-sicolor .bo-social-gowalla:hover {
  background: #000000; }

.bo-sicolor .bo-social-apple {
  background: #5f5f5f; }

.bo-sicolor .bo-social-apple:hover {
  background: #000000; }

.bo-sicolor .bo-social-blogger {
  background: #fb9241; }

.bo-sicolor .bo-social-blogger:hover {
  background: #000000; }

.bo-sicolor .bo-social-cc {
  background: #5e7c00; }

.bo-sicolor .bo-social-cc:hover {
  background: #000000; }

.bo-sicolor .bo-social-evernote {
  background: #61b239; }

.bo-sicolor .bo-social-evernote:hover {
  background: #000000; }

.bo-sicolor .bo-social-flickr {
  background: #ff0084; }

.bo-sicolor .bo-social-flickr:hover {
  background: #000000; }

.bo-sicolor .bo-social-google {
  background: #d94a39; }

.bo-sicolor .bo-social-google:hover {
  background: #000000; }

.bo-sicolor .bo-social-viadeo {
  background: #f5a433; }

.bo-sicolor .bo-social-viadeo:hover {
  background: #000000; }

.bo-sicolor .bo-social-instapaper {
  background: #eaec08; }

.bo-sicolor .bo-social-instapaper:hover {
  background: #000000; }

.bo-sicolor .bo-social-klout {
  background: #e34600; }

.bo-sicolor .bo-social-klout:hover {
  background: #000000; }

.bo-sicolor .bo-social-linkedin {
  background: #1b92bd; }

.bo-sicolor .bo-social-linkedin:hover {
  background: #000000; }

.bo-sicolor .bo-social-meetup {
  background: #e51938; }

.bo-sicolor .bo-social-meetup:hover {
  background: #000000; }

.bo-sicolor .bo-social-vk {
  background: #587da4; }

.bo-sicolor .bo-social-vk:hover {
  background: #000000; }

.bo-sicolor .bo-social-disqus {
  background: #2e9fff; }

.bo-sicolor .bo-social-disqus:hover {
  background: #000000; }

.bo-sicolor .bo-social-rss {
  background: #ff7f00; }

.bo-sicolor .bo-social-rss:hover {
  background: #000000; }

.bo-sicolor .bo-social-skype {
  background: #18b7f1; }

.bo-sicolor .bo-social-skype:hover {
  background: #000000; }

.bo-sicolor .bo-social-youtube {
  background: #c4302b; }

.bo-sicolor .bo-social-youtube:hover {
  background: #000000; }

.bo-sicolor .bo-social-vimeo {
  background: #01557a; }

.bo-sicolor .bo-social-vimeo:hover {
  background: #000000; }

.bo-sicolor .bo-social-windows {
  background: #00ccff; }

.bo-sicolor .bo-social-windows:hover {
  background: #000000; }

.bo-sicolor .bo-social-xing {
  background: #036567; }

.bo-sicolor .bo-social-xing:hover {
  background: #000000; }

.bo-sicolor .bo-social-yahoo {
  background: #61399d; }

.bo-sicolor .bo-social-yahoo:hover {
  background: #000000; }

.bo-sicolor .bo-social-chrome {
  background: #58b947; }

.bo-sicolor .bo-social-chrome:hover {
  background: #000000; }

.bo-sicolor .bo-social-macstore {
  background: #6e6e6e; }

.bo-sicolor .bo-social-macstore:hover {
  background: #000000; }

.bo-sicolor .bo-social-amazon {
  background: #ff9900; }

.bo-sicolor .bo-social-amazon:hover {
  background: #000000; }

.bo-sicolor .bo-social-steam {
  background: #a5a4a1; }

.bo-sicolor .bo-social-steam:hover {
  background: #000000; }

.bo-sicolor .bo-social-dropbox {
  background: #7ab6ec; }

.bo-sicolor .bo-social-dropbox:hover {
  background: #000000; }

.bo-sicolor .bo-social-cloudapp {
  background: #489dde; }

.bo-sicolor .bo-social-cloudapp:hover {
  background: #000000; }

.bo-sicolor .bo-social-ebay {
  background: #86b817; }

.bo-sicolor .bo-social-ebay:hover {
  background: #000000; }

.bo-sicolor .bo-social-github {
  background: #667F8E; }

.bo-sicolor .bo-social-github:hover {
  background: #000000; }

.bo-sicolor .bo-social-googleplay {
  background: #5befd0; }

.bo-sicolor .bo-social-googleplay:hover {
  background: #000000; }

.bo-sicolor .bo-social-itunes {
  background: #177ac8; }

.bo-sicolor .bo-social-itunes:hover {
  background: #000000; }

.bo-sicolor .bo-social-plurk {
  background: #a73d07; }

.bo-sicolor .bo-social-plurk:hover {
  background: #000000; }

.bo-sicolor .bo-social-songkick {
  background: #f80046; }

.bo-sicolor .bo-social-songkick:hover {
  background: #000000; }

.bo-sicolor .bo-social-lastfm {
  background: #c60e16; }

.bo-sicolor .bo-social-lastfm:hover {
  background: #000000; }

.bo-sicolor .bo-social-gmail {
  background: #e04a3f; }

.bo-sicolor .bo-social-gmail:hover {
  background: #000000; }

.bo-sicolor .bo-social-pinboard {
  background: #224cf4; }

.bo-sicolor .bo-social-pinboard:hover {
  background: #000000; }

.bo-sicolor .bo-social-openid {
  background: #be661b; }

.bo-sicolor .bo-social-openid:hover {
  background: #000000; }

.bo-sicolor .bo-social-quora {
  background: #c41a00; }

.bo-sicolor .bo-social-quora:hover {
  background: #000000; }

.bo-sicolor .bo-social-soundcloud {
  background: #ff5c00; }

.bo-sicolor .bo-social-soundcloud:hover {
  background: #000000; }

.bo-sicolor .bo-social-tumblr {
  background: #395874; }

.bo-sicolor .bo-social-tumblr:hover {
  background: #000000; }

.bo-sicolor .bo-social-eventasaurus {
  background: #b9f15e; }

.bo-sicolor .bo-social-eventasaurus:hover {
  background: #000000; }

.bo-sicolor .bo-social-wordpress {
  background: #464646; }

.bo-sicolor .bo-social-wordpress:hover {
  background: #000000; }

.bo-sicolor .bo-social-yelp {
  background: #c41200; }

.bo-sicolor .bo-social-yelp:hover {
  background: #000000; }

.bo-sicolor .bo-social-intensedebate {
  background: #00aeef; }

.bo-sicolor .bo-social-intensedebate:hover {
  background: #000000; }

.bo-sicolor .bo-social-eventbrite {
  background: #ff6c00; }

.bo-sicolor .bo-social-eventbrite:hover {
  background: #000000; }

.bo-sicolor .bo-social-scribd {
  background: #002939; }

.bo-sicolor .bo-social-scribd:hover {
  background: #000000; }

.bo-sicolor .bo-social-posterous {
  background: #f8d667; }

.bo-sicolor .bo-social-posterous:hover {
  background: #000000; }

.bo-sicolor .bo-social-stripe {
  background: #617ee8; }

.bo-sicolor .bo-social-stripe:hover {
  background: #000000; }

.bo-sicolor .bo-social-opentable {
  background: #990000; }

.bo-sicolor .bo-social-opentable:hover {
  background: #000000; }

.bo-sicolor .bo-social-instagram {
  background: #4c799f; }

.bo-sicolor .bo-social-instagram:hover {
  background: #000000; }

.bo-sicolor .bo-social-dwolla {
  background: #ff7404; }

.bo-sicolor .bo-social-dwolla:hover {
  background: #000000; }

.bo-sicolor .bo-social-appnet {
  background: #1e0c29; }

.bo-sicolor .bo-social-appnet:hover {
  background: #000000; }

.bo-sicolor .bo-social-statusnet {
  background: #fb6104; }

.bo-sicolor .bo-social-statusnet:hover {
  background: #000000; }

.bo-sicolor .bo-social-acrobat {
  background: #ff0000; }

.bo-sicolor .bo-social-acrobat:hover {
  background: #000000; }

.bo-sicolor .bo-social-drupal {
  background: #007dc3; }

.bo-sicolor .bo-social-drupal:hover {
  background: #000000; }

.bo-sicolor .bo-social-pocket {
  background: #ee4056; }

.bo-sicolor .bo-social-pocket:hover {
  background: #000000; }

.bo-sicolor .bo-social-bitbucket {
  background: #205081; }

.bo-sicolor .bo-social-bitbucket:hover {
  background: #000000; }

.bo-sicolor .bo-social-flattr {
  background: #fbbc23; }

.bo-sicolor .bo-social-flattr:hover {
  background: #000000; }

.bo-sicolor .bo-social-eventful {
  background: #0066cc; }

.bo-sicolor .bo-social-eventful:hover {
  background: #000000; }

.bo-sicolor .bo-social-smashmag {
  background: #d6231c; }

.bo-sicolor .bo-social-smashmag:hover {
  background: #000000; }

.bo-sicolor .bo-social-wordpress {
  background: #1e8cbe; }

.bo-sicolor .bo-social-wordpress:hover {
  background: #000000; }

.bo-sicolor .bo-social-calendar {
  background: #ff0000; }

.bo-sicolor .bo-social-calendar:hover {
  background: #000000; }

.bo-sicolor .bo-social-call {
  background: #04be3d; }

.bo-sicolor .bo-social-call:hover {
  background: #000000; }

.bo-sicolor .bo-social-guest {
  background: #03a9d2; }

.bo-sicolor .bo-social-guest:hover {
  background: #000000; }

.bo-sicolor .bo-social-weibo {
  background: #fd0000; }

.bo-sicolor .bo-social-weibo:hover {
  background: #000000; }

.bo-sicolor .bo-social-plancast {
  background: #e4b82c; }

.bo-sicolor .bo-social-plancast:hover {
  background: #000000; }

.bo-sicolor .bo-social-email {
  background: blue; }

.bo-sicolor .bo-social-email:hover {
  background: #000000; }

.bo-sicolor .bo-social-myspace {
  background: #2068b0; }

.bo-sicolor .bo-social-myspace:hover {
  background: #000000; }

.bo-sicolor .bo-social-podcast {
  background: #f38b36; }

.bo-sicolor .bo-social-podcast:hover {
  background: #000000; }

.bo-sicolor .bo-social-cart {
  background: #00a204; }

.bo-sicolor .bo-social-cart:hover {
  background: #000000; }

/* --- SCSS For Typography --- */
.dropcap {
  color: #000;
  float: left;
  font-weight: 800;
  line-height: 48px;
  width: 60px;
  height: 60px;
  margin-right: 10px;
  padding: 3px 10px 2px;
  text-transform: uppercase;
  text-align: center;
  font-size: 48px; }
  .dropcap.dropcap-v2 {
    color: #fff;
    background: #54a9a2; }
  .dropcap.dropcap-info {
    background: #04adf0; }
  .dropcap.dropcap-danger {
    background: #e43636; }
  .dropcap.dropcap-success {
    background: #70ba28; }
  .dropcap.dropcap-warning {
    background: #f0c73b; }

.blockquote {
  position: relative;
  font-weight: 300;
  font-style: italic; }
  .blockquote.blockquote-left i {
    left: 17px;
    margin-right: 10px; }
  .blockquote.blockquote-right {
    border-left: none;
    padding-left: 30px;
    padding-right: 20px; }
    .blockquote.blockquote-right i {
      right: 17px;
      margin-left: 10px; }
    .blockquote.blockquote-right .blockquote-in {
      margin-right: 45px; }
  .blockquote.blockquote-brd {
    padding: 15px;
    border: 1px solid #eeeeee; }
    .blockquote.blockquote-brd i {
      color: #000000;
      top: 30px;
      left: 25px;
      position: absolute; }
    .blockquote.blockquote-brd .blockquote-in {
      margin-left: 45px; }
  .blockquote.blockquote-info {
    border-left-color: #04adf0; }
  .blockquote.blockquote-danger {
    border-left-color: #e43636; }
  .blockquote.blockquote-success {
    border-left-color: #70ba28; }
  .blockquote.blockquote-warning {
    border-left-color: #f0c73b; }
  .blockquote.border {
    border: 1px solid #ddd; }

.vc_parallax .vc_parallax-inner {
  background-attachment: fixed !important; }

.icons-examples {
  padding-bottom: 20px;
  min-height: 130px; }
  .icons-examples .fa {
    /* 3 */
    /* 3 */
    /* 4 */
    /* 6 */
    /* 6 */
    /* 7 */
    font-size: 24px;
    /* 9 */
    font-size: 2.4rem;
    /* 9 */
    line-height: 40px;
    width: 40px;
    height: 40px;
    text-align: center; }

/* --- SCSS For Counters --- */
.counters .counter-wrap {
  font-size: 30px;
  color: #000;
  font-weight: 600; }
  .counters .counter-wrap .fa {
    font-size: 36px;
    color: #54a9a2; }
  .counters .counter-wrap .counter {
    position: relative;
    margin-bottom: 10px; }
    .counters .counter-wrap .counter:after {
      content: "";
      position: absolute;
      width: calc(100% + 30px);
      height: 1px;
      background: #ededed;
      bottom: 0;
      left: -20px; }

.counters h5 {
  font-weight: 700;
  margin: 5px 0;
  text-transform: uppercase;
  position: relative;
  letter-spacing: 0;
  font-size: 12px;
  color: #999; }

.counters .counter-body {
  border-left: 1px solid #ededed;
  padding-left: 20px; }

/* --- SCSS For Pricing --- */
.pricing {
  text-align: center; }
  .pricing ul {
    padding-left: 0;
    padding-right: 0; }
    .pricing ul li {
      list-style: none; }
  .pricing.pricing-v1 {
    background: #FFFFFF;
    border: 3px solid #313131; }
    .pricing.pricing-v1 .pricing-header > * {
      font-family: "Poppins", sans-serif; }
    .pricing.pricing-v1 .plan-title {
      font-size: 24px;
      text-transform: uppercase;
      font-weight: 300;
      margin: 0;
      padding: 30px 0;
      background: #313131;
      color: #FFF; }
    .pricing.pricing-v1 .plan-figure {
      font-size: 48px;
      font-weight: 700;
      color: #000; }
    .pricing.pricing-v1 .plan-price {
      font-size: 16px;
      border-bottom: 2px solid #ededed;
      line-height: 1;
      padding: 25px 0; }
      .pricing.pricing-v1 .plan-price p {
        margin: 0; }
    .pricing.pricing-v1 .plan-currency {
      font-size: 30px;
      font-weight: 700;
      color: #000;
      position: relative;
      top: -15px; }
    .pricing.pricing-v1 .plain-info {
      padding: 20px; }
      .pricing.pricing-v1 .plain-info li {
        font-size: 16px;
        color: #555555;
        font-weight: 400;
        padding: 15px 0; }
    .pricing.pricing-v1 .pricing-footer {
      padding: 0px 20px 40px 20px; }
    .pricing.pricing-v1.pricing-highlight {
      border-color: #54a9a2 !important; }
  .pricing.pricing-v2 {
    background: #FFFFFF; }
    .pricing.pricing-v2 .plan-title {
      color: #000;
      font-size: 24px;
      text-transform: uppercase;
      font-weight: 300;
      margin: 0;
      padding: 30px 0; }
    .pricing.pricing-v2 .plan-price {
      background: #54a9a2;
      margin: 0 -10px;
      position: relative;
      height: 100px; }
      .pricing.pricing-v2 .plan-price .plan-price-body {
        background: #54a9a2;
        margin: 0 auto;
        border-radius: 50%;
        position: absolute;
        left: 0;
        top: -15px;
        right: 0;
        color: #FFF;
        width: 130px;
        height: 130px; }
      .pricing.pricing-v2 .plan-price .plan-figure {
        font-size: 48px;
        font-weight: 300; }
      .pricing.pricing-v2 .plan-price .plan-currency {
        font-size: 30px;
        font-weight: 300; }
    .pricing.pricing-v2 .plain-info {
      padding: 20px; }
      .pricing.pricing-v2 .plain-info li {
        color: #000;
        line-height: 62px;
        border-bottom: 1px dashed #C8C8C8; }
    .pricing.pricing-v2 .pricing-footer {
      padding: 0 20px 40px 20px; }
    .pricing.pricing-v2.pricing-highlight .plan-title {
      background: #FFF;
      color: #000; }
    .pricing.pricing-v2.pricing-highlight .plan-price-body {
      background: #54a9a2;
      color: #FFF; }
    .pricing.pricing-v2.pricing-highlight .btn-block {
      background: #54a9a2;
      border-color: #54a9a2; }
      .pricing.pricing-v2.pricing-highlight .btn-block:hover, .pricing.pricing-v2.pricing-highlight .btn-block:focus, .pricing.pricing-v2.pricing-highlight .btn-block:active {
        background: none;
        color: #54a9a2; }
  .pricing.pricing-v3 {
    background: #FFFFFF;
    border: 1px solid #DEDEDE; }
    .pricing.pricing-v3 .plan-title {
      background: #261F2F;
      font-size: 24px;
      text-transform: uppercase;
      font-weight: 300;
      margin: 0;
      padding: 30px 0;
      border: none; }
      .pricing.pricing-v3 .plan-title span {
        color: #FFF; }
    .pricing.pricing-v3 .plan-figure {
      font-size: 48px;
      font-weight: 300;
      color: #000; }
    .pricing.pricing-v3 .plan-price {
      font-size: 16px;
      background: #332C3E;
      padding: 15px 0; }
      .pricing.pricing-v3 .plan-price > * {
        color: #FFF;
        line-height: 1; }
    .pricing.pricing-v3 .plan-currency {
      font-size: 30px;
      font-weight: 300; }
    .pricing.pricing-v3 .plain-info li {
      font-size: 16px;
      color: #000;
      font-weight: 300;
      background: #F8F8F8;
      padding: 14px 0; }
      .pricing.pricing-v3 .plain-info li:nth-child(2n+1) {
        background: #FFF; }
    .pricing.pricing-v3 .pricing-footer {
      padding: 0px 20px 40px 20px; }
    .pricing.pricing-v3.pricing-highlight .plan-title {
      background: #54a9a2;
      color: #FFF; }
    .pricing.pricing-v3.pricing-highlight .plan-price {
      background: #54a9a2;
      color: #FFF; }
    .pricing.pricing-v3.pricing-highlight .btn-block {
      background: #54a9a2;
      border-color: #54a9a2; }
      .pricing.pricing-v3.pricing-highlight .btn-block:hover, .pricing.pricing-v3.pricing-highlight .btn-block:focus, .pricing.pricing-v3.pricing-highlight .btn-block:active {
        background: none;
        color: #54a9a2; }
  .pricing.pricing-highlight .plan-title {
    background: #54a9a2;
    color: #FFFFFF; }

/* our team */
[class*="team-v"] {
  text-align: center; }
  [class*="team-v"] [class^="bo-social-"] {
    margin: 0; }
  [class*="team-v"] .team-name {
    text-transform: uppercase;
    font-size: 14px;
    margin: 0 0 10px 0; }

.team-list {
  margin-bottom: 50px; }
  .team-list .team-name {
    font-size: 18px;
    margin: 0 0 20px 0;
    text-transform: uppercase;
    padding: 0 0 20px 0;
    position: relative; }
    .team-list .team-name:after {
      bottom: 0;
      left: 0;
      content: "";
      background: #54a9a2;
      width: 30px;
      height: 2px;
      position: absolute; }
  .team-list .team-position {
    text-transform: uppercase;
    color: #54a9a2;
    font-weight: 800;
    margin-bottom: 25px; }
  .team-list .team-info {
    margin-bottom: 15px; }
  .team-list .bo-social-icons {
    text-align: left; }
    .team-list .bo-social-icons [class*="bo-social-"] {
      margin: 0; }

.team-gallery {
  background: #FFF; }
  .team-gallery .team-header {
    position: relative;
    text-align: center; }
    .team-gallery .team-header:before {
      top: 0;
      left: 0;
      content: "";
      position: absolute;
      visibility: hidden;
      width: 100%;
      height: 100%;
      opacity: 0;
      filter: alpha(opacity=0);
      -webkit-transition: all 0.5s ease 0s;
      -o-transition: all 0.5s ease 0s;
      transition: all 0.5s ease 0s;
      background: rgba(84, 169, 162, 0.5); }
  .team-gallery .team-name {
    font-size: 14px;
    margin-top: 0;
    text-transform: uppercase; }
  .team-gallery .team-gallery-box {
    top: 0;
    left: 0;
    width: 80%;
    right: 0;
    height: 50%;
    bottom: 0;
    margin: auto;
    position: absolute;
    visibility: hidden;
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transition: all 0.5s ease 0s;
    -o-transition: all 0.5s ease 0s;
    transition: all 0.5s ease 0s; }
  .team-gallery .team-info {
    color: #FFFFFF; }
  .team-gallery .team-position {
    color: #999999;
    margin-bottom: 0; }
  .team-gallery .team-body-content {
    padding: 30px;
    position: relative; }
    .team-gallery .team-body-content:before {
      content: "";
      right: 0;
      width: 1px;
      height: 50px;
      position: absolute;
      background: #54a9a2; }
  .team-gallery .bo-social-white {
    border-color: #FFF;
    color: #FFF;
    background: none; }
  .team-gallery:hover .team-header:before {
    visibility: visible;
    opacity: 1;
    filter: alpha(opacity=100); }
  .team-gallery:hover .team-gallery-box {
    visibility: visible;
    opacity: 1;
    filter: alpha(opacity=100); }

.team-hover {
  background: #FFF;
  border: none; }
  .team-hover .team-header {
    position: relative;
    text-align: center; }
    .team-hover .team-header:before {
      top: 0;
      left: 0;
      content: "";
      position: absolute;
      visibility: hidden;
      width: 100%;
      height: 100%;
      opacity: 0;
      filter: alpha(opacity=0);
      -webkit-transition: all 0.5s ease 0s;
      -o-transition: all 0.5s ease 0s;
      transition: all 0.5s ease 0s;
      background: rgba(84, 169, 162, 0.5); }
  .team-hover .team-name {
    font-size: 14px;
    margin-top: 0;
    text-transform: uppercase; }
  .team-hover .team-gallery-box {
    width: 100%;
    height: 45px;
    top: 50%;
    margin-top: -22.5px; }
  .team-hover .team-info {
    color: #FFFFFF; }
  .team-hover .team-position {
    color: #999999;
    margin-bottom: 0; }
  .team-hover .team-body-content {
    padding: 20px;
    position: relative;
    text-align: center; }
    .team-hover .team-body-content:before {
      content: none; }
    .team-hover .team-body-content > * {
      text-align: center; }
    .team-hover .team-body-content .team-name {
      margin-bottom: 5px; }
  .team-hover .bo-social-white {
    border-color: #FFF;
    color: #FFF;
    background: none; }
  .team-hover:hover .team-header:before {
    visibility: visible;
    opacity: 1;
    filter: alpha(opacity=100); }
  .team-hover:hover .team-gallery-box {
    visibility: visible;
    opacity: 1;
    filter: alpha(opacity=100); }

.team-small {
  border: none !important; }
  .team-small .team-body {
    background: none !important; }
  .team-small .team-info {
    display: none !important; }
  .team-small:hover .team-body {
    -webkit-transform: translateY(0) !important;
    -ms-transform: translateY(0) !important;
    -o-transform: translateY(0) !important;
    transform: translateY(0) !important; }

/* --- SCSS For call to action --- */
.pbr-calltoaction .vc_cta3.vc_cta3-style-custom {
  border: 0;
  padding: 10% 10% 0 10%;
  min-height: 466px; }
  @media (max-width: 480px) {
    .pbr-calltoaction .vc_cta3.vc_cta3-style-custom {
      min-height: 334px; } }
  @media (min-width: 768px) and (max-width: 991px) {
    .pbr-calltoaction .vc_cta3.vc_cta3-style-custom {
      min-height: 234px;
      padding: 30px 0 0; } }
  @media (min-width: 992px) and (max-width: 1199px) {
    .pbr-calltoaction .vc_cta3.vc_cta3-style-custom {
      min-height: 342px; } }

.pbr-calltoaction h2 {
  margin-bottom: 30px;
  letter-spacing: 1px;
  font-size: 18px; }

.pbr-calltoaction .vc_btn3.vc_btn3-style-custom {
  text-transform: uppercase;
  font-weight: 600;
  background-image: none;
  margin: 20px 0; }

/* --- SCSS For Icon-box --- */
.feature-box.bg-image {
  padding: 18% 20px; }

.feature-box .fbox-image {
  float: left;
  margin-right: 20px;
  padding-right: 20px;
  position: relative;
  margin-bottom: 10px; }
  @media (min-width: 768px) and (max-width: 991px) {
    .feature-box .fbox-image {
      margin-right: 10px;
      padding-right: 10px; } }
  @media (max-width: 480px) {
    .feature-box .fbox-image {
      margin-right: 0;
      padding-right: 10px; } }
  @media (max-width: 767px) {
    .feature-box .fbox-image {
      float: none; } }

.feature-box .fbox-content {
  float: left; }
  @media (max-width: 480px) {
    .feature-box .fbox-content {
      margin-bottom: 20px;
      float: none; } }
  @media (max-width: 767px) {
    .feature-box .fbox-content {
      float: none;
      margin-bottom: 20px;
      margin-top: 10px; } }

.feature-box small {
  font-size: 12px;
  margin-top: 5px;
  display: inline-block;
  color: #54a9a2; }

.feature-box h4 {
  margin: 0 0 15px;
  font-family: "Poppins", sans-serif; }

.feature-box .fbox-icon {
  float: left;
  margin: 10px 15px 0 0;
  color: #54a9a2; }
  .feature-box .fbox-icon .icons {
    font-size: 2em;
    color: #54a9a2;
    width: 40px;
    height: 40px;
    line-height: 40px;
    overflow: hidden;
    text-align: center; }

.feature-box.separator_align_right .fbox-image, .feature-box.separator_align_right .fbox-icon {
  float: right;
  margin: 0 0 0 20px; }

.feature-box.separator_align_center .fbox-image, .feature-box.separator_align_center .fbox-icon {
  float: none;
  margin: 0 0 30px 0; }

.feature-box.feature-box-v1 .fbox-image {
  margin-bottom: 20px; }

.feature-box.feature-box-v1 .fbox-content {
  float: none;
  overflow: hidden; }

.feature-box-default {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex; }
  .feature-box-default > div {
    align-self: center;
    width: 50%; }
  .feature-box-default.separator_align_center .fbox-image, .feature-box-default.separator_align_center .fbox-icon {
    float: none;
    margin: 0; }
  .feature-box-default.separator_align_right .fbox-image, .feature-box-default.separator_align_right .fbox-icon {
    float: none;
    margin: 0; }
  .feature-box-default .fbox-image,
  .feature-box-default .fbox-icon {
    margin-right: 0;
    float: left;
    position: relative;
    padding-right: 0; }
    .feature-box-default .fbox-image .icons,
    .feature-box-default .fbox-icon .icons {
      width: 70px;
      height: 70px;
      line-height: 70px;
      font-size: 40px; }
  .feature-box-default .fbox-content {
    padding: 0 7%; }

.feature-box-v1 .fbox-image,
.feature-box-v1 .fbox-icon {
  float: left;
  position: relative;
  margin: 0 15px 0 0;
  padding-right: 0; }
  .feature-box-v1 .fbox-image .icons,
  .feature-box-v1 .fbox-icon .icons {
    font-size: 30px;
    color: #000; }

.feature-box-v1 small {
  margin-top: 10px;
  margin-bottom: 5px;
  text-transform: uppercase;
  color: #000;
  font-size: 14px; }

.feature-box-v2 {
  text-align: center; }
  .feature-box-v2 .fbox-image, .feature-box-v2 .fbox-icon {
    float: none;
    margin-bottom: 20px; }
    .feature-box-v2 .fbox-image .icons, .feature-box-v2 .fbox-icon .icons {
      width: 70px;
      height: 70px;
      line-height: 70px;
      font-size: 36px;
      background: none; }
  .feature-box-v2 .fbox-content {
    overflow: hidden; }

.feature-box.feature-box-v3 {
  position: relative;
  padding: 45px 30px 20px;
  text-align: center !important;
  background: #F5F5F5; }
  .feature-box.feature-box-v3 .fbox-image, .feature-box.feature-box-v3 .fbox-icon {
    position: absolute;
    content: "";
    left: 0;
    right: 0;
    top: -36px;
    margin: 0 auto; }
    .feature-box.feature-box-v3 .fbox-image .icons, .feature-box.feature-box-v3 .fbox-icon .icons {
      font-size: 24px;
      width: 70px;
      height: 70px;
      line-height: 70px;
      color: #FFF;
      border-radius: 50%;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      -ms-border-radius: 50%;
      -o-border-radius: 50%;
      background: #54a9a2; }
  .feature-box.feature-box-v3 .fbox-content {
    float: none; }

.feature-box.feature-box-v4 {
  padding: 20px 30px;
  border: 1px solid #ddd;
  border-bottom: 3px solid #54a9a2;
  text-align: center !important; }
  .feature-box.feature-box-v4 .fbox-image, .feature-box.feature-box-v4 .fbox-icon {
    text-align: center;
    float: none !important;
    margin-bottom: 20px; }
    .feature-box.feature-box-v4 .fbox-image .icons, .feature-box.feature-box-v4 .fbox-icon .icons {
      font-size: 36px;
      width: 70px;
      height: 70px;
      line-height: 70px;
      color: #000000;
      background: none; }
  .feature-box.feature-box-v4 .fbox-content {
    float: none; }
  .feature-box.feature-box-v4 .description {
    text-align: center; }

/**
 * Tab Style
 */
.tab-v8 .nav-inner {
  text-align: center; }

.tab-v8 .nav-tabs {
  display: inline-block;
  border: none; }
  .tab-v8 .nav-tabs li {
    position: relative; }
    .tab-v8 .nav-tabs li a {
      border: none;
      background: transparent;
      font-weight: bold;
      text-transform: uppercase;
      font-size: 12px;
      color: #FFF; }
      .tab-v8 .nav-tabs li a.active, .tab-v8 .nav-tabs li a:focus, .tab-v8 .nav-tabs li a:hover {
        background: transparent;
        border-top: none; }
    .tab-v8 .nav-tabs li.active, .tab-v8 .nav-tabs li:focus, .tab-v8 .nav-tabs li:hover, .tab-v8 .nav-tabs li.ui-state-active {
      background: transparent;
      border: none; }
      .tab-v8 .nav-tabs li.active a, .tab-v8 .nav-tabs li:focus a, .tab-v8 .nav-tabs li:hover a, .tab-v8 .nav-tabs li.ui-state-active a {
        border: none;
        color: #54a9a2; }
    .tab-v8 .nav-tabs li:before {
      content: ">";
      padding: 0;
      color: #FFF;
      position: absolute;
      right: -6px;
      top: 10px; }
    .tab-v8 .nav-tabs li:last-child:before {
      content: none; }

/**
 * Black tab Styles
 */
.navtabs-black .nav-tabs > li > a, .navtabs-black .nav-tabs > li::before {
  color: #000; }

.pbr-inforbox .inforbox-inner {
  text-align: center;
  padding: 10px; }

/**
 * Brand Styles
 */
.brands-carousel {
  margin-left: -10px;
  margin-right: -10px; }
  .brands-carousel .item-brand {
    margin: 10px 15px;
    height: 80px;
    overflow: hidden;
    border: solid 2px #ededed; }
    .brands-carousel .item-brand img {
      max-width: 100%; }

/* effect-v1 */
.effect-v1 {
  background-color: #000;
  overflow: hidden;
  position: relative;
  /* style for hover */ }
  .effect-v1:before {
    border: 1px solid #ffffff;
    bottom: 20px;
    content: "";
    left: 20px;
    position: absolute;
    right: 20px;
    top: 20px;
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    -o-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    z-index: 1; }
  .effect-v1 img {
    -webkit-transform: scale(1.12);
    -ms-transform: scale(1.12);
    -o-transform: scale(1.12);
    transform: scale(1.12);
    -webkit-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    -o-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    transition: opacity 0.35s ease 0s, transform 0.35s ease 0s; }
  .effect-v1 .action {
    -webkit-transform: scale(1.12);
    -ms-transform: scale(1.12);
    -o-transform: scale(1.12);
    transform: scale(1.12);
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    -o-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    transition: opacity 0.35s ease 0s, transform 0.35s ease 0s; }
  .effect-v1:hover:before {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); }
  .effect-v1:hover img {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); }
  .effect-v1:hover .action {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    opacity: 1;
    filter: alpha(opacity=100); }

/* effect-v2*/
.effect-v2 {
  background-color: #000;
  overflow: hidden;
  position: relative;
  /* style for hover */ }
  .effect-v2:before {
    border: 1px solid #ffffff;
    bottom: 20px;
    content: "";
    left: 20px;
    position: absolute;
    right: 20px;
    top: 20px;
    -webkit-transform: translate3d(-20px, 0px, 0px);
    transform: translate3d(-20px, 0px, 0px);
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    -o-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    z-index: 1; }
  .effect-v2 img {
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    -o-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    -o-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    transition: opacity 0.35s ease 0s, transform 0.35s ease 0s; }
  .effect-v2 .action {
    -webkit-transform: translate3d(-10px, 0px, 0px);
    transform: translate3d(-10px, 0px, 0px);
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    -o-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    transition: opacity 0.35s ease 0s, transform 0.35s ease 0s; }
  .effect-v2:hover:before {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: translate3d(0px, 0px, 0px);
    transform: translate3d(0px, 0px, 0px); }
  .effect-v2:hover img {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -webkit-transform: scale(1.2, 1);
    -ms-transform: scale(1.2, 1);
    -o-transform: scale(1.2, 1);
    transform: scale(1.2, 1); }
  .effect-v2:hover .action {
    -webkit-transform: translate3d(0px, 0px, 0px);
    transform: translate3d(0px, 0px, 0px);
    opacity: 1;
    filter: alpha(opacity=100); }

/* effect-v3*/
.effect-v3 {
  position: relative;
  /* style for hover */ }
  @media (min-width: 1200px) {
    .effect-v3 {
      background-color: #000; } }
  .effect-v3:before, .effect-v3:after {
    bottom: 20px;
    content: "";
    left: 20px;
    opacity: 0;
    position: absolute;
    right: 20px;
    top: 20px;
    -webkit-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    -o-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    z-index: 1; }
  .effect-v3:before {
    border-bottom: 1px solid #ffffff;
    border-top: 1px solid #ffffff;
    -webkit-transform: scale(0, 1);
    -ms-transform: scale(0, 1);
    -o-transform: scale(0, 1);
    transform: scale(0, 1); }
  .effect-v3:after {
    border-left: 1px solid #ffffff;
    border-right: 1px solid #ffffff;
    -webkit-transform: scale(1, 0);
    -ms-transform: scale(1, 0);
    -o-transform: scale(1, 0);
    transform: scale(1, 0); }
  .effect-v3 img {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: opacity 0.35s ease 0s;
    -o-transition: opacity 0.35s ease 0s;
    transition: opacity 0.35s ease 0s;
    width: 100%; }
  .effect-v3 .banner-title {
    -webkit-transform: translate3d(0px, -20px, 0px);
    transform: translate3d(0px, -20px, 0px);
    -webkit-transition: transform 0.35s ease 0s;
    -o-transition: transform 0.35s ease 0s;
    transition: transform 0.35s ease 0s; }
  .effect-v3 .action {
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transform: translate3d(0px, 40px, 0px);
    transform: translate3d(0px, 40px, 0px);
    -webkit-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    -o-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    transition: opacity 0.35s ease 0s, transform 0.35s ease 0s; }
  .effect-v3:hover:before, .effect-v3:hover:after {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); }
  .effect-v3:hover img {
    opacity: 0.5;
    filter: alpha(opacity=50); }
  .effect-v3:hover .banner-title, .effect-v3:hover .action {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: translate3d(0px, 0px, 0px);
    transform: translate3d(0px, 0px, 0px); }

/* effect-v4*/
.effect-v4 {
  background-color: #000;
  overflow: hidden;
  position: relative;
  /* style for hover */ }
  .effect-v4:before {
    border: 2px solid #ffffff;
    bottom: 20px;
    -webkit-box-shadow: 0 0 0 30px rgba(255, 255, 255, 0.2);
    box-shadow: 0 0 0 30px rgba(255, 255, 255, 0.2);
    content: "";
    left: 20px;
    opacity: 0;
    position: absolute;
    right: 20px;
    top: 20px;
    -webkit-transform: scale(1.4);
    -ms-transform: scale(1.4);
    -o-transform: scale(1.4);
    transform: scale(1.4);
    -webkit-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    -o-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    z-index: 1; }
  .effect-v4 img {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: opacity 0.35s ease 0s;
    -o-transition: opacity 0.35s ease 0s;
    transition: opacity 0.35s ease 0s; }
  .effect-v4 .banner-title {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    -webkit-transition: transform 0.35s ease 0s;
    -o-transition: transform 0.35s ease 0s;
    transition: transform 0.35s ease 0s; }
  .effect-v4 .action {
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
    transform: scale(1.2);
    -webkit-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    -o-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    transition: opacity 0.35s ease 0s, transform 0.35s ease 0s; }
  .effect-v4:hover:before {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); }
  .effect-v4:hover img {
    opacity: 0.5;
    filter: alpha(opacity=50); }
  .effect-v4:hover .banner-title {
    -webkit-transform: scale(0.95);
    -ms-transform: scale(0.95);
    -o-transform: scale(0.95);
    transform: scale(0.95); }
  .effect-v4:hover .action {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); }

/* effect-v6*/
.effect-v6 {
  background-color: #000;
  overflow: hidden;
  position: relative;
  /* style for hover */ }
  .effect-v6 img {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: opacity 0.35s ease 0s;
    -o-transition: opacity 0.35s ease 0s;
    transition: opacity 0.35s ease 0s; }
  .effect-v6 .action {
    transform: translate3d(0px, -100px, 0px);
    transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    opacity: 0; }
  .effect-v6:hover img {
    opacity: 0.5;
    filter: alpha(opacity=50); }
  .effect-v6:hover .action {
    opacity: 1;
    transform: translate3d(0px, 0px, 0px); }

/* effect-v7*/
.effect-v7 {
  overflow: hidden;
  position: relative;
  /* style for hover */ }
  .effect-v7:before {
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transition: all 0.4s cubic-bezier(0.94, 0.85, 0.1, 0.62) 0s;
    -o-transition: all 0.4s cubic-bezier(0.94, 0.85, 0.1, 0.62) 0s;
    transition: all 0.4s cubic-bezier(0.94, 0.85, 0.1, 0.62) 0s;
    z-index: 1;
    border: 200px double transparent;
    opacity: 1;
    filter: alpha(opacity=100);
    visibility: visible; }
  .effect-v7:hover:before {
    opacity: 0;
    filter: alpha(opacity=0);
    border: 0 double rgba(255, 255, 255, 0.7);
    visibility: hidden; }

/* effect-v8*/
.effect-v8 {
  overflow: hidden;
  position: relative;
  /* style for hover */ }
  .effect-v8:before {
    border-bottom: 50px solid rgba(255, 255, 255, 0.4);
    border-top: 50px solid rgba(255, 255, 255, 0.4);
    content: "";
    height: 100%;
    left: 0;
    opacity: 0;
    filter: alpha(opacity=0);
    position: absolute;
    top: 0;
    transform: rotate3d(0, 0, 1, 45deg) scale3d(1, 0, 1);
    -o-transform: rotate3d(0, 0, 1, 45deg) scale3d(1, 0, 1);
    -webkit-transform: rotate3d(0, 0, 1, 45deg) scale3d(1, 0, 1);
    -moz-transform: rotate3d(0, 0, 1, 45deg) scale3d(1, 0, 1);
    -ms-transform: rotate3d(0, 0, 1, 45deg) scale3d(1, 0, 1);
    -webkit-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    -o-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    transform-origin: 50% 50% 0;
    width: 100%; }
  .effect-v8:hover:before {
    opacity: 1;
    filter: alpha(opacity=100);
    transform: rotate3d(0, 0, 1, 45deg) scale3d(1, 4, 1);
    -o-transform: rotate3d(0, 0, 1, 45deg) scale3d(1, 4, 1);
    -webkit-transform: rotate3d(0, 0, 1, 45deg) scale3d(1, 4, 1);
    -moz-transform: rotate3d(0, 0, 1, 45deg) scale3d(1, 4, 1);
    -ms-transform: rotate3d(0, 0, 1, 45deg) scale3d(1, 4, 1); }

/* effect-v9*/
.effect-v9 {
  overflow: hidden;
  position: relative;
  /* style for hover */ }
  .effect-v9:before {
    border: 50px solid transparent;
    border-top-right-radius: 50px;
    border-top-left-radius: 50px;
    border-bottom-right-radius: 50px;
    border-bottom-left-radius: 50px;
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    position: absolute;
    top: 0;
    content: "";
    opacity: 1;
    filter: alpha(opacity=100);
    width: 100px;
    height: 100px;
    -webkit-transform: scale(7);
    -ms-transform: scale(7);
    -o-transform: scale(7);
    transform: scale(7);
    -webkit-transition: all 0.3s ease-in-out 0s;
    -o-transition: all 0.3s ease-in-out 0s;
    transition: all 0.3s ease-in-out 0s;
    visibility: visible;
    z-index: 1; }
  .effect-v9:hover:before {
    border: 0 solid rgba(0, 0, 0, 0.7);
    opacity: 0;
    filter: alpha(opacity=0);
    visibility: hidden; }

/* effect-v10*/
.effect-v10 {
  overflow: hidden;
  position: relative;
  /* style for hover */ }
  .effect-v10:before {
    background-color: rgba(255, 255, 255, 0.2);
    display: block;
    width: 100%;
    height: 100%;
    left: -100%;
    opacity: 0;
    filter: alpha(opacity=0);
    position: absolute;
    top: 0;
    -webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
    content: "";
    z-index: 1; }
  .effect-v10:hover:before {
    left: 0;
    opacity: 1;
    filter: alpha(opacity=100); }

/* effect-v11*/
.effect-default {
  background-color: #000;
  overflow: hidden;
  position: relative;
  /* style for hover */ }
  .effect-default .banner-title {
    -webkit-transform: translate3d(0px, 20px, 0px);
    transform: translate3d(0px, 20px, 0px);
    -webkit-transition: transform 0.35s ease 0s;
    -o-transition: transform 0.35s ease 0s;
    transition: transform 0.35s ease 0s; }
  .effect-default img {
    -webkit-transform: scale(1.15);
    -ms-transform: scale(1.15);
    -o-transform: scale(1.15);
    transform: scale(1.15);
    -webkit-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    -o-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    opacity: 0.7;
    filter: alpha(opacity=70); }
  .effect-default .action {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    -o-transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
    border: 1px solid #fff;
    margin: 1em 0 0;
    padding: 1em;
    color: #FFF; }
  .effect-default:hover:before {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); }
  .effect-default:hover img {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); }
  .effect-default:hover .action {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    opacity: 1;
    filter: alpha(opacity=100); }
  .effect-default:hover .banner-title {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: translate3d(0px, 0px, 0px);
    transform: translate3d(0px, 0px, 0px); }

.layer-up:before {
  content: "";
  position: absolute;
  height: 80px;
  width: 100%;
  top: 0;
  left: 0;
  background: linear-gradient(-178deg, #ffffff 47%, transparent 0, transparent 0); }

.layer-up:after {
  content: "";
  position: absolute;
  height: 80px;
  width: 100%;
  bottom: 0;
  left: 0;
  background: linear-gradient(-178deg, transparent 47%, transparent 0, #ffffff 0); }

.testimonials-v3 {
  text-align: center; }
  .testimonials-v3 .testimonials-description {
    font-size: 36px;
    color: #54a9a2;
    line-height: 1.3;
    font-weight: 600;
    position: relative;
    padding: 30px; }
    .testimonials-v3 .testimonials-description:before {
      position: absolute;
      left: 0px;
      top: 0px;
      content: '\f10d';
      font-family: FontAwesome;
      font-size: 100px;
      color: #54a9a2;
      z-index: -1; }
  .testimonials-v3 .flex {
    display: flex;
    justify-content: center; }
    .testimonials-v3 .flex .job,
    .testimonials-v3 .flex .name {
      margin: 0 10px; }
    .testimonials-v3 .flex .name {
      text-transform: uppercase;
      color: #000;
      font-weight: 500; }

.feature-box-v5 .fbox-body {
  display: flex;
  flex-direction: row-reverse;
  align-items: baseline; }
  .feature-box-v5 .fbox-body h4 {
    font-size: 50px;
    margin-right: 5px;
    margin-bottom: 0;
    font-weight: 600; }
  .feature-box-v5 .fbox-body small {
    font-size: 18px;
    font-weight: 500; }
  @media (max-width: 480px) {
    .feature-box-v5 .fbox-body {
      justify-content: center; } }

.feature-box-v5 .description {
  font-size: 14px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 500; }
  @media (max-width: 480px) {
    .feature-box-v5 .description {
      text-align: center; } }

.pbr-footer.footer-4 {
  background-color: #2b2b2b;
  color: #ccc; }
  @media (max-width: 480px) {
    .pbr-footer.footer-4 {
      padding: 20px; } }
  .pbr-footer.footer-4 a {
    color: #cccccc; }
  .pbr-footer.footer-4 .widget.widget_product_categories ul li, .pbr-footer.footer-4 .widget.widget_categories ul li, .pbr-footer.footer-4 .widget.widget_layered_nav ul li, .pbr-footer.footer-4 .widget.widget_layered_nav_filters ul li, .pbr-footer.footer-4 .widget_nav_menu ul li {
    border: none;
    padding: 0; }
  .pbr-footer.footer-4 .contact-add p {
    border-bottom: 1px solid #414141;
    padding-bottom: 10px; }
    .pbr-footer.footer-4 .contact-add p:last-child {
      border: none; }
  .pbr-footer.footer-4 .social li {
    width: 40px;
    height: 40px;
    border: 2px solid #414141;
    text-align: center;
    border-radius: 100%;
    margin-right: 5px; }
    .pbr-footer.footer-4 .social li a {
      margin: 0; }
      .pbr-footer.footer-4 .social li a i {
        line-height: 36px; }
      .pbr-footer.footer-4 .social li a i:hover, .pbr-footer.footer-4 .social li a:hover {
        color: #54a9a2; }
  .pbr-footer.footer-4 h3.vc_custom_heading {
    font-weight: 600; }

@media (min-width: 481px) {
  .translateX-l50 {
    transform: translateX(-50%); }
  .translateX-r50 {
    transform: translateX(50%);
    z-index: 9 !important; } }

.woocommerce-error::before, .woocommerce-info::before, .woocommerce-message::before {
  display: none; }

.select2-container--default .select2-selection--single {
  height: 32px;
  border-radius: 3px !important;
  border-color: #ddd; }

.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 32px; }

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 28px; }

.woocommerce .woocommerce-ordering select {
  border-radius: 3px;
  border-color: #ddd; }

.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea {
  border-radius: 3px !important;
  border-color: #ddd !important; }

.animate-text {
  transition: all 0.3s; }
  .animate-text:hover {
    letter-spacing: 2px;
    transition: all 0.3s; }

.parallax {
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover; }

.vc_row {
  margin-left: 0 !important;
  margin-right: 0 !important; }
  .vc_row .vc_col-xs-1,
  .vc_row .vc_col-xs-2,
  .vc_row .vc_col-xs-3,
  .vc_row .vc_col-xs-4,
  .vc_row .vc_col-xs-5,
  .vc_row .vc_col-xs-6,
  .vc_row .vc_col-xs-7,
  .vc_row .vc_col-xs-8,
  .vc_row .vc_col-xs-9,
  .vc_row .vc_col-xs-10,
  .vc_row .vc_col-xs-11 {
    float: left; }
  @media (min-width: 768px) {
    .vc_row .vc_col-sm-1,
    .vc_row .vc_col-sm-2,
    .vc_row .vc_col-sm-3,
    .vc_row .vc_col-sm-4,
    .vc_row .vc_col-sm-5,
    .vc_row .vc_col-sm-6,
    .vc_row .vc_col-sm-7,
    .vc_row .vc_col-sm-8,
    .vc_row .vc_col-sm-9,
    .vc_row .vc_col-sm-10,
    .vc_row .vc_col-sm-11 {
      float: left; }
    .vc_row .vc_col-sm-push-1 {
      left: 8.33333%;
      right: inherit; }
    .vc_row .vc_col-sm-push-2 {
      left: 16.66667%;
      right: inherit; }
    .vc_row .vc_col-sm-push-3 {
      left: 25%;
      right: inherit; }
    .vc_row .vc_col-sm-push-4 {
      left: 33.33333%;
      right: inherit; }
    .vc_row .vc_col-sm-push-5 {
      left: 41.66667%;
      right: inherit; }
    .vc_row .vc_col-sm-push-6 {
      left: 50%;
      right: inherit; }
    .vc_row .vc_col-sm-push-7 {
      left: 58.33333%;
      right: inherit; }
    .vc_row .vc_col-sm-push-8 {
      left: 66.66667%;
      right: inherit; }
    .vc_row .vc_col-sm-push-9 {
      left: 75%;
      right: inherit; }
    .vc_row .vc_col-sm-push-10 {
      left: 83.33333%;
      right: inherit; }
    .vc_row .vc_col-sm-push-11 {
      left: 91.66667%;
      right: inherit; }
    .vc_row .vc_col-sm-pull-1 {
      left: 8.33333%;
      right: inherit; }
    .vc_row .vc_col-sm-pull-2 {
      left: 16.66667%;
      right: inherit; }
    .vc_row .vc_col-sm-pull-3 {
      left: 25%;
      right: inherit; }
    .vc_row .vc_col-sm-pull-4 {
      left: 33.33333%;
      right: inherit; }
    .vc_row .vc_col-sm-pull-5 {
      left: 41.66667%;
      right: inherit; }
    .vc_row .vc_col-sm-pull-6 {
      left: 50%;
      right: inherit; }
    .vc_row .vc_col-sm-pull-7 {
      left: 58.33333%;
      right: inherit; }
    .vc_row .vc_col-sm-pull-8 {
      left: 66.66667%;
      right: inherit; }
    .vc_row .vc_col-sm-pull-9 {
      left: 75%;
      right: inherit; }
    .vc_row .vc_col-sm-pull-10 {
      left: 83.33333%;
      right: inherit; }
    .vc_row .vc_col-sm-pull-11 {
      left: 91.66667%;
      right: inherit; }
    .vc_row .vc_col-sm-offset-1 {
      margin-left: 8.33333%;
      margin-right: inherit; }
    .vc_row .vc_col-sm-offset-2 {
      margin-left: 16.66667%;
      margin-right: inherit; }
    .vc_row .vc_col-sm-offset-3 {
      margin-left: 25%;
      margin-right: inherit; }
    .vc_row .vc_col-sm-offset-4 {
      margin-left: 33.33333%;
      margin-right: inherit; }
    .vc_row .vc_col-sm-offset-5 {
      margin-left: 41.66667%;
      margin-right: inherit; }
    .vc_row .vc_col-sm-offset-6 {
      margin-left: 50%;
      margin-right: inherit; }
    .vc_row .vc_col-sm-offset-7 {
      margin-left: 58.33333%;
      margin-right: inherit; }
    .vc_row .vc_col-sm-offset-8 {
      margin-left: 66.66667%;
      margin-right: inherit; }
    .vc_row .vc_col-sm-offset-9 {
      margin-left: 75%;
      margin-right: inherit; }
    .vc_row .vc_col-sm-offset-10 {
      margin-left: 83.33333%;
      margin-right: inherit; }
    .vc_row .vc_col-sm-offset-11 {
      margin-left: 91.66667%;
      margin-right: inherit; } }
  @media (min-width: 992px) {
    .vc_row .vc_col-md-1,
    .vc_row .vc_col-md-2,
    .vc_row .vc_col-md-3,
    .vc_row .vc_col-md-4,
    .vc_row .vc_col-md-5,
    .vc_row .vc_col-md-6,
    .vc_row .vc_col-md-7,
    .vc_row .vc_col-md-8,
    .vc_row .vc_col-md-9,
    .vc_row .vc_col-md-10,
    .vc_row .vc_col-md-11 {
      float: left; }
    .vc_row .vc_col-md-push-0 {
      left: auto;
      right: inherit; }
    .vc_row .vc_col-md-push-1 {
      left: 8.33333%;
      right: inherit; }
    .vc_row .vc_col-md-push-2 {
      left: 16.66667%;
      right: inherit; }
    .vc_row .vc_col-md-push-3 {
      left: 25%;
      right: inherit; }
    .vc_row .vc_col-md-push-4 {
      left: 33.33333%;
      right: inherit; }
    .vc_row .vc_col-md-push-5 {
      left: 41.66667%;
      right: inherit; }
    .vc_row .vc_col-md-push-6 {
      left: 50%;
      right: inherit; }
    .vc_row .vc_col-md-push-7 {
      left: 58.33333%;
      right: inherit; }
    .vc_row .vc_col-md-push-8 {
      left: 66.66667%;
      right: inherit; }
    .vc_row .vc_col-md-push-9 {
      left: 75%;
      right: inherit; }
    .vc_row .vc_col-md-push-10 {
      left: 83.33333%;
      right: inherit; }
    .vc_row .vc_col-md-push-11 {
      left: 91.66667%;
      right: inherit; }
    .vc_row .vc_col-md-pull-0 {
      left: auto;
      right: inherit; }
    .vc_row .vc_col-md-pull-1 {
      left: 8.33333%;
      right: inherit; }
    .vc_row .vc_col-md-pull-2 {
      left: 16.66667%;
      right: inherit; }
    .vc_row .vc_col-md-pull-3 {
      left: 25%;
      right: inherit; }
    .vc_row .vc_col-md-pull-4 {
      left: 33.33333%;
      right: inherit; }
    .vc_row .vc_col-md-pull-5 {
      left: 41.66667%;
      right: inherit; }
    .vc_row .vc_col-md-pull-6 {
      left: 50%;
      right: inherit; }
    .vc_row .vc_col-md-pull-7 {
      left: 58.33333%;
      right: inherit; }
    .vc_row .vc_col-md-pull-8 {
      left: 66.66667%;
      right: inherit; }
    .vc_row .vc_col-md-pull-9 {
      left: 75%;
      right: inherit; }
    .vc_row .vc_col-md-pull-10 {
      left: 83.33333%;
      right: inherit; }
    .vc_row .vc_col-md-pull-11 {
      left: 91.66667%;
      right: inherit; }
    .vc_row .vc_col-md-offset-0 {
      margin-left: 0;
      margin-right: inherit; }
    .vc_row .vc_col-md-offset-1 {
      margin-left: 8.33333%;
      margin-right: inherit; }
    .vc_row .vc_col-md-offset-2 {
      margin-left: 16.66667%;
      margin-right: inherit; }
    .vc_row .vc_col-md-offset-3 {
      margin-left: 25%;
      margin-right: inherit; }
    .vc_row .vc_col-md-offset-4 {
      margin-left: 33.33333%;
      margin-right: inherit; }
    .vc_row .vc_col-md-offset-5 {
      margin-left: 41.66667%;
      margin-right: inherit; }
    .vc_row .vc_col-md-offset-6 {
      margin-left: 50%;
      margin-right: inherit; }
    .vc_row .vc_col-md-offset-7 {
      margin-left: 58.33333%;
      margin-right: inherit; }
    .vc_row .vc_col-md-offset-8 {
      margin-left: 66.66667%;
      margin-right: inherit; }
    .vc_row .vc_col-md-offset-9 {
      margin-left: 75%;
      margin-right: inherit; }
    .vc_row .vc_col-md-offset-10 {
      margin-left: 83.33333%;
      margin-right: inherit; }
    .vc_row .vc_col-md-offset-11 {
      margin-left: 91.66667%;
      margin-right: inherit; } }
  @media (min-width: 1200px) {
    .vc_row .vc_col-lg-1,
    .vc_row .vc_col-lg-2,
    .vc_row .vc_col-lg-3,
    .vc_row .vc_col-lg-4,
    .vc_row .vc_col-lg-5,
    .vc_row .vc_col-lg-6,
    .vc_row .vc_col-lg-7,
    .vc_row .vc_col-lg-8,
    .vc_row .vc_col-lg-9,
    .vc_row .vc_col-lg-10,
    .vc_row .vc_col-lg-11 {
      float: left; }
    .vc_row .vc_col-lg-push-0 {
      left: auto;
      right: inherit; }
    .vc_row .vc_col-lg-push-1 {
      left: 8.33333%;
      right: inherit; }
    .vc_row .vc_col-lg-push-2 {
      left: 16.66667%;
      right: inherit; }
    .vc_row .vc_col-lg-push-3 {
      left: 25%;
      right: inherit; }
    .vc_row .vc_col-lg-push-4 {
      left: 33.33333%;
      right: inherit; }
    .vc_row .vc_col-lg-push-5 {
      left: 41.66667%;
      right: inherit; }
    .vc_row .vc_col-lg-push-6 {
      left: 50%;
      right: inherit; }
    .vc_row .vc_col-lg-push-7 {
      left: 58.33333%;
      right: inherit; }
    .vc_row .vc_col-lg-push-8 {
      left: 66.66667%;
      right: inherit; }
    .vc_row .vc_col-lg-push-9 {
      left: 75%;
      right: inherit; }
    .vc_row .vc_col-lg-push-10 {
      left: 83.33333%;
      right: inherit; }
    .vc_row .vc_col-lg-push-11 {
      left: 91.66667%;
      right: inherit; }
    .vc_row .vc_col-lg-pull-0 {
      left: auto;
      right: inherit; }
    .vc_row .vc_col-lg-pull-1 {
      left: 8.33333%;
      right: inherit; }
    .vc_row .vc_col-lg-pull-2 {
      left: 16.66667%;
      right: inherit; }
    .vc_row .vc_col-lg-pull-3 {
      left: 25%;
      right: inherit; }
    .vc_row .vc_col-lg-pull-4 {
      left: 33.33333%;
      right: inherit; }
    .vc_row .vc_col-lg-pull-5 {
      left: 41.66667%;
      right: inherit; }
    .vc_row .vc_col-lg-pull-6 {
      left: 50%;
      right: inherit; }
    .vc_row .vc_col-lg-pull-7 {
      left: 58.33333%;
      right: inherit; }
    .vc_row .vc_col-lg-pull-8 {
      left: 66.66667%;
      right: inherit; }
    .vc_row .vc_col-lg-pull-9 {
      left: 75%;
      right: inherit; }
    .vc_row .vc_col-lg-pull-10 {
      left: 83.33333%;
      right: inherit; }
    .vc_row .vc_col-lg-pull-11 {
      left: 91.66667%;
      right: inherit; }
    .vc_row .vc_col-lg-offset-0 {
      margin-left: 0;
      margin-right: inherit; }
    .vc_row .vc_col-lg-offset-1 {
      margin-left: 8.33333%;
      margin-right: inherit; }
    .vc_row .vc_col-lg-offset-2 {
      margin-left: 16.66667%;
      margin-right: inherit; }
    .vc_row .vc_col-lg-offset-3 {
      margin-left: 25%;
      margin-right: inherit; }
    .vc_row .vc_col-lg-offset-4 {
      margin-left: 33.33333%;
      margin-right: inherit; }
    .vc_row .vc_col-lg-offset-5 {
      margin-left: 41.66667%;
      margin-right: inherit; }
    .vc_row .vc_col-lg-offset-6 {
      margin-left: 50%;
      margin-right: inherit; }
    .vc_row .vc_col-lg-offset-7 {
      margin-left: 58.33333%;
      margin-right: inherit; }
    .vc_row .vc_col-lg-offset-8 {
      margin-left: 66.66667%;
      margin-right: inherit; }
    .vc_row .vc_col-lg-offset-9 {
      margin-left: 75%;
      margin-right: inherit; }
    .vc_row .vc_col-lg-offset-10 {
      margin-left: 83.33333%;
      margin-right: inherit; }
    .vc_row .vc_col-lg-offset-11 {
      margin-left: 91.66667%;
      margin-right: inherit; } }

/**
 * VC internal Elements
 */
.wpb_column {
  z-index: 2; }

.vc_col-has-fill {
  z-index: 1; }

.vc_row.vc_row-o-full-height {
  min-height: 100vh; }

.vc_row.vc_row-flex .container .row_no_padding, .vc_row.vc_row-flex .container .row, .vc_row .container-full .row_no_padding, .vc_row .container-full .row {
  box-sizing: border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .vc_row.vc_row-flex .container .row_no_padding > .vc_column_container, .vc_row.vc_row-flex .container .row > .vc_column_container, .vc_row .container-full .row_no_padding > .vc_column_container, .vc_row .container-full .row > .vc_column_container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .vc_row.vc_row-flex .container .row_no_padding > .vc_column_container > .vc_column-inner, .vc_row.vc_row-flex .container .row > .vc_column_container > .vc_column-inner, .vc_row .container-full .row_no_padding > .vc_column_container > .vc_column-inner, .vc_row .container-full .row > .vc_column_container > .vc_column-inner {
      -webkit-box-flex: 1;
      -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
      flex-grow: 1;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column; }
      @media (-ms-high-contrast: active), (-ms-high-contrast: none) {
        .vc_row.vc_row-flex .container .row_no_padding > .vc_column_container > .vc_column-inner, .vc_row.vc_row-flex .container .row > .vc_column_container > .vc_column-inner, .vc_row .container-full .row_no_padding > .vc_column_container > .vc_column-inner, .vc_row .container-full .row > .vc_column_container > .vc_column-inner {
          /* IE10+ specific styles */ }
          .vc_row.vc_row-flex .container .row_no_padding > .vc_column_container > .vc_column-inner > *, .vc_row.vc_row-flex .container .row > .vc_column_container > .vc_column-inner > *, .vc_row .container-full .row_no_padding > .vc_column_container > .vc_column-inner > *, .vc_row .container-full .row > .vc_column_container > .vc_column-inner > * {
            min-height: 1em; } }

.vc_row.vc_row-flex .container::before, .vc_row.vc_row-flex .container::after, .vc_row .container-full::before, .vc_row .container-full::after {
  display: none; }

.vc_row.vc_row-o-columns-stretch .container .row_no_padding, .vc_row.vc_row-o-columns-stretch .container .row, .vc_row.vc_row-o-columns-stretch .container-full .row_no_padding, .vc_row.vc_row-o-columns-stretch .container-full .row {
  -webkit-align-content: stretch;
  -ms-flex-line-pack: stretch;
  align-content: stretch; }

.vc_row.vc_row-o-columns-top .container .row_no_padding, .vc_row.vc_row-o-columns-top .container .row, .vc_row.vc_row-o-columns-top .container-full .row_no_padding, .vc_row.vc_row-o-columns-top .container-full .row {
  -webkit-align-content: flex-start;
  -ms-flex-line-pack: start;
  align-content: flex-start; }

.vc_row.vc_row-o-columns-bottom .container .row_no_padding, .vc_row.vc_row-o-columns-bottom .container .row, .vc_row.vc_row-o-columns-bottom .container-full .row_no_padding, .vc_row.vc_row-o-columns-bottom .container-full .row {
  -webkit-align-content: flex-end;
  -ms-flex-line-pack: end;
  align-content: flex-end; }

.vc_row.vc_row-o-columns-middle .container .row_no_padding, .vc_row.vc_row-o-columns-middle .container .row, .vc_row.vc_row-o-columns-middle .container-full .row_no_padding, .vc_row.vc_row-o-columns-middle .container-full .row {
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center; }

.vc_row.vc_row-o-columns-top .container .row_no_padding::after, .vc_row.vc_row-o-columns-top .container .row::after, .vc_row.vc_row-o-columns-top .container-full .row_no_padding::after, .vc_row.vc_row-o-columns-top .container-full .row::after, .vc_row.vc_row-o-columns-bottom .container .row_no_padding::after, .vc_row.vc_row-o-columns-bottom .container .row::after, .vc_row.vc_row-o-columns-bottom .container-full .row_no_padding::after, .vc_row.vc_row-o-columns-bottom .container-full .row::after, .vc_row.vc_row-o-columns-middle .container .row_no_padding::after, .vc_row.vc_row-o-columns-middle .container .row::after, .vc_row.vc_row-o-columns-middle .container-full .row_no_padding::after, .vc_row.vc_row-o-columns-middle .container-full .row::after {
  content: '';
  width: 100%;
  height: 0;
  overflow: hidden;
  visibility: hidden;
  display: block; }

.vc_row.vc_row-o-equal-height .container .row_no_padding > .vc_column_container, .vc_row.vc_row-o-equal-height .container .row > .vc_column_container, .vc_row.vc_row-o-equal-height .container-full .row_no_padding > .vc_column_container, .vc_row.vc_row-o-equal-height .container-full .row > .vc_column_container {
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch; }

.vc_row.vc_row-o-content-top .container .row_no_padding > .vc_column_container > .vc_column-inner, .vc_row.vc_row-o-content-top .container .row > .vc_column_container > .vc_column-inner, .vc_row.vc_row-o-content-top .container-full .row_no_padding > .vc_column_container > .vc_column-inner, .vc_row.vc_row-o-content-top .container-full .row > .vc_column_container > .vc_column-inner {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start; }

.vc_row.vc_row-o-content-top:not(.vc_row-o-equal-height) .container .row_no_padding > .vc_column_container, .vc_row.vc_row-o-content-top:not(.vc_row-o-equal-height) .container .row > .vc_column_container, .vc_row.vc_row-o-content-top:not(.vc_row-o-equal-height) .container-full .row_no_padding > .vc_column_container, .vc_row.vc_row-o-content-top:not(.vc_row-o-equal-height) .container-full .row > .vc_column_container {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start; }

.vc_row.vc_row-o-content-bottom .container .row_no_padding > .vc_column_container > .vc_column-inner, .vc_row.vc_row-o-content-bottom .container .row > .vc_column_container > .vc_column-inner, .vc_row.vc_row-o-content-bottom .container-full .row_no_padding > .vc_column_container > .vc_column-inner, .vc_row.vc_row-o-content-bottom .container-full .row > .vc_column_container > .vc_column-inner {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end; }

.vc_row.vc_row-o-content-bottom:not(.vc_row-o-equal-height) .container .row_no_padding > .vc_column_container, .vc_row.vc_row-o-content-bottom:not(.vc_row-o-equal-height) .container .row > .vc_column_container, .vc_row.vc_row-o-content-bottom:not(.vc_row-o-equal-height) .container-full .row_no_padding > .vc_column_container, .vc_row.vc_row-o-content-bottom:not(.vc_row-o-equal-height) .container-full .row > .vc_column_container {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end; }

.vc_row.vc_row-o-content-middle .container .row_no_padding > .vc_column_container > .vc_column-inner, .vc_row.vc_row-o-content-middle .container .row > .vc_column_container > .vc_column-inner, .vc_row.vc_row-o-content-middle .container-full .row_no_padding > .vc_column_container > .vc_column-inner, .vc_row.vc_row-o-content-middle .container-full .row > .vc_column_container > .vc_column-inner {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center; }

.vc_row.vc_row-o-content-middle:not(.vc_row-o-equal-height) .container .row_no_padding > .vc_column_container, .vc_row.vc_row-o-content-middle:not(.vc_row-o-equal-height) .container .row > .vc_column_container, .vc_row.vc_row-o-content-middle:not(.vc_row-o-equal-height) .container-full .row_no_padding > .vc_column_container, .vc_row.vc_row-o-content-middle:not(.vc_row-o-equal-height) .container-full .row > .vc_column_container {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center; }

.vc_row.vc_row-flex .container .row_no_padding > .vc_vc_column,
.vc_row.vc_row-flex .container .row_no_padding > .vc_vc_column_inner, .vc_row.vc_row-flex .container .row > .vc_vc_column,
.vc_row.vc_row-flex .container .row > .vc_vc_column_inner, .vc_row.vc_row-flex .container-full .row_no_padding > .vc_vc_column,
.vc_row.vc_row-flex .container-full .row_no_padding > .vc_vc_column_inner, .vc_row.vc_row-flex .container-full .row > .vc_vc_column,
.vc_row.vc_row-flex .container-full .row > .vc_vc_column_inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .vc_row.vc_row-flex .container .row_no_padding > .vc_vc_column > .vc_column_container,
  .vc_row.vc_row-flex .container .row_no_padding > .vc_vc_column_inner > .vc_column_container, .vc_row.vc_row-flex .container .row > .vc_vc_column > .vc_column_container,
  .vc_row.vc_row-flex .container .row > .vc_vc_column_inner > .vc_column_container, .vc_row.vc_row-flex .container-full .row_no_padding > .vc_vc_column > .vc_column_container,
  .vc_row.vc_row-flex .container-full .row_no_padding > .vc_vc_column_inner > .vc_column_container, .vc_row.vc_row-flex .container-full .row > .vc_vc_column > .vc_column_container,
  .vc_row.vc_row-flex .container-full .row > .vc_vc_column_inner > .vc_column_container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%; }
    .vc_row.vc_row-flex .container .row_no_padding > .vc_vc_column > .vc_column_container > .vc_column-inner,
    .vc_row.vc_row-flex .container .row_no_padding > .vc_vc_column_inner > .vc_column_container > .vc_column-inner, .vc_row.vc_row-flex .container .row > .vc_vc_column > .vc_column_container > .vc_column-inner,
    .vc_row.vc_row-flex .container .row > .vc_vc_column_inner > .vc_column_container > .vc_column-inner, .vc_row.vc_row-flex .container-full .row_no_padding > .vc_vc_column > .vc_column_container > .vc_column-inner,
    .vc_row.vc_row-flex .container-full .row_no_padding > .vc_vc_column_inner > .vc_column_container > .vc_column-inner, .vc_row.vc_row-flex .container-full .row > .vc_vc_column > .vc_column_container > .vc_column-inner,
    .vc_row.vc_row-flex .container-full .row > .vc_vc_column_inner > .vc_column_container > .vc_column-inner {
      -webkit-box-flex: 1;
      -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
      flex-grow: 1;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column; }

.vc_row.vc_row-o-equal-height .container .row_no_padding > .vc_column_container, .vc_row.vc_row-o-equal-height .container .row > .vc_column_container, .vc_row.vc_row-o-equal-height .container-full .row_no_padding > .vc_column_container, .vc_row.vc_row-o-equal-height .container-full .row > .vc_column_container {
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch; }

.vc_row.vc_row-o-content-top .container .row_no_padding > .vc_vc_column > .vc_column_container > .vc_column-inner,
.vc_row.vc_row-o-content-top .container .row_no_padding > .vc_vc_column_inner > .vc_column_container > .vc_column-inner, .vc_row.vc_row-o-content-top .container .row > .vc_vc_column > .vc_column_container > .vc_column-inner,
.vc_row.vc_row-o-content-top .container .row > .vc_vc_column_inner > .vc_column_container > .vc_column-inner, .vc_row.vc_row-o-content-top .container-full .row_no_padding > .vc_vc_column > .vc_column_container > .vc_column-inner,
.vc_row.vc_row-o-content-top .container-full .row_no_padding > .vc_vc_column_inner > .vc_column_container > .vc_column-inner, .vc_row.vc_row-o-content-top .container-full .row > .vc_vc_column > .vc_column_container > .vc_column-inner,
.vc_row.vc_row-o-content-top .container-full .row > .vc_vc_column_inner > .vc_column_container > .vc_column-inner {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start; }

.vc_row.vc_row-o-content-top:not(.vc_row-o-equal-height) .container .row_no_padding > .vc_vc_column > .vc_column_container,
.vc_row.vc_row-o-content-top:not(.vc_row-o-equal-height) .container .row_no_padding > .vc_vc_column_inner > .vc_column_container, .vc_row.vc_row-o-content-top:not(.vc_row-o-equal-height) .container .row > .vc_vc_column > .vc_column_container,
.vc_row.vc_row-o-content-top:not(.vc_row-o-equal-height) .container .row > .vc_vc_column_inner > .vc_column_container, .vc_row.vc_row-o-content-top:not(.vc_row-o-equal-height) .container-full .row_no_padding > .vc_vc_column > .vc_column_container,
.vc_row.vc_row-o-content-top:not(.vc_row-o-equal-height) .container-full .row_no_padding > .vc_vc_column_inner > .vc_column_container, .vc_row.vc_row-o-content-top:not(.vc_row-o-equal-height) .container-full .row > .vc_vc_column > .vc_column_container,
.vc_row.vc_row-o-content-top:not(.vc_row-o-equal-height) .container-full .row > .vc_vc_column_inner > .vc_column_container {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start; }

.vc_row.vc_row-o-content-bottom .container .row_no_padding > .vc_vc_column > .vc_column_container > .vc_column-inner,
.vc_row.vc_row-o-content-bottom .container .row_no_padding > .vc_vc_column_inner > .vc_column_container > .vc_column-inner, .vc_row.vc_row-o-content-bottom .container .row > .vc_vc_column > .vc_column_container > .vc_column-inner,
.vc_row.vc_row-o-content-bottom .container .row > .vc_vc_column_inner > .vc_column_container > .vc_column-inner, .vc_row.vc_row-o-content-bottom .container-full .row_no_padding > .vc_vc_column > .vc_column_container > .vc_column-inner,
.vc_row.vc_row-o-content-bottom .container-full .row_no_padding > .vc_vc_column_inner > .vc_column_container > .vc_column-inner, .vc_row.vc_row-o-content-bottom .container-full .row > .vc_vc_column > .vc_column_container > .vc_column-inner,
.vc_row.vc_row-o-content-bottom .container-full .row > .vc_vc_column_inner > .vc_column_container > .vc_column-inner {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end; }

.vc_row.vc_row-o-content-bottom:not(.vc_row-o-equal-height) .container .row_no_padding > .vc_vc_column > .vc_column_container,
.vc_row.vc_row-o-content-bottom:not(.vc_row-o-equal-height) .container .row_no_padding > .vc_vc_column_inner > .vc_column_container, .vc_row.vc_row-o-content-bottom:not(.vc_row-o-equal-height) .container .row > .vc_vc_column > .vc_column_container,
.vc_row.vc_row-o-content-bottom:not(.vc_row-o-equal-height) .container .row > .vc_vc_column_inner > .vc_column_container, .vc_row.vc_row-o-content-bottom:not(.vc_row-o-equal-height) .container-full .row_no_padding > .vc_vc_column > .vc_column_container,
.vc_row.vc_row-o-content-bottom:not(.vc_row-o-equal-height) .container-full .row_no_padding > .vc_vc_column_inner > .vc_column_container, .vc_row.vc_row-o-content-bottom:not(.vc_row-o-equal-height) .container-full .row > .vc_vc_column > .vc_column_container,
.vc_row.vc_row-o-content-bottom:not(.vc_row-o-equal-height) .container-full .row > .vc_vc_column_inner > .vc_column_container {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end; }

.vc_row.vc_row-o-content-middle > .vc_vc_column > .vc_column_container > .vc_column-inner,
.vc_row.vc_row-o-content-middle > .vc_vc_column_inner > .vc_column_container > .vc_column-inner {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center; }

.vc_row.vc_row-o-content-middle:not(.vc_row-o-equal-height) .container .row_no_padding > .vc_vc_column > .vc_column_container,
.vc_row.vc_row-o-content-middle:not(.vc_row-o-equal-height) .container .row_no_padding > .vc_vc_column_inner > .vc_column_container, .vc_row.vc_row-o-content-middle:not(.vc_row-o-equal-height) .container .row > .vc_vc_column > .vc_column_container,
.vc_row.vc_row-o-content-middle:not(.vc_row-o-equal-height) .container .row > .vc_vc_column_inner > .vc_column_container, .vc_row.vc_row-o-content-middle:not(.vc_row-o-equal-height) .container-full .row_no_padding > .vc_vc_column > .vc_column_container,
.vc_row.vc_row-o-content-middle:not(.vc_row-o-equal-height) .container-full .row_no_padding > .vc_vc_column_inner > .vc_column_container, .vc_row.vc_row-o-content-middle:not(.vc_row-o-equal-height) .container-full .row > .vc_vc_column > .vc_column_container,
.vc_row.vc_row-o-content-middle:not(.vc_row-o-equal-height) .container-full .row > .vc_vc_column_inner > .vc_column_container {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center; }

/**
  */
.noborder .pbr-category-filter {
  border-right: 0; }

.pbr-category-filter .category-filter-link {
  display: none; }

.pbr-category-filter.category-filter-default {
  background: #000 none repeat scroll 0 0;
  cursor: pointer;
  max-height: 360px;
  max-width: 962px;
  min-width: 320px;
  overflow: hidden;
  position: relative;
  text-align: center; }
  .pbr-category-filter.category-filter-default small {
    display: none; }
  .pbr-category-filter.category-filter-default .img {
    display: block;
    max-width: 100%;
    min-height: 100%;
    opacity: 0.8;
    position: relative;
    transform: scale(1.12);
    transition: opacity 0.35s ease 0s, transform 0.35s ease 0s; }
  .pbr-category-filter.category-filter-default h4 {
    top: 120px;
    transform: translate3d(0px, 0px, 0px);
    transition: transform 0.35s ease 0s;
    left: 30px;
    padding: 10px 0;
    position: absolute;
    right: 30px;
    color: #FFF;
    letter-spacing: 2px;
    font-size: 48px;
    font-family: "Poppins", sans-serif; }
    .pbr-category-filter.category-filter-default h4 span {
      display: inline-block;
      position: relative; }
      .pbr-category-filter.category-filter-default h4 span:after {
        background: #ffffff none repeat scroll 0 0;
        content: "";
        height: 2px;
        left: 0;
        right: 0;
        margin: 0 auto;
        position: absolute;
        bottom: 0;
        transform: translate3d(0px, 10px, 0px);
        width: 100%;
        opacity: 0;
        transition: opacity 0.35s ease 0s, transform 0.35s ease 0s; }
  .pbr-category-filter.category-filter-default .category-caption {
    backface-visibility: hidden;
    color: #ffffff;
    font-size: 1.25em;
    padding: 2em;
    text-transform: uppercase;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    padding: 3em; }
    .pbr-category-filter.category-filter-default .category-caption:before {
      background: rgba(0, 0, 0, 0.4);
      bottom: 30px;
      content: "";
      left: 30px;
      position: absolute;
      right: 30px;
      top: 30px;
      transform: scale(1.1);
      opacity: 0;
      transition: opacity 0.35s ease 0s, transform 0.35s ease 0s; }
  .pbr-category-filter.category-filter-default .category-filter-content {
    margin: 0 auto;
    transform: translate3d(0px, 200px, 0px);
    opacity: 0;
    transition: opacity 0.35s ease 0s, transform 0.35s ease 0s; }
  .pbr-category-filter.category-filter-default:hover img {
    opacity: 0.5;
    transform: scale(1); }
  .pbr-category-filter.category-filter-default:hover h4 {
    transform: translate3d(0px, -50px, 0px); }
    .pbr-category-filter.category-filter-default:hover h4 span:after {
      opacity: 1;
      transform: translate3d(0px, 15px, 0px); }
  .pbr-category-filter.category-filter-default:hover .category-caption:before {
    opacity: 1;
    transform: scale(1); }
  .pbr-category-filter.category-filter-default:hover .category-filter-content {
    opacity: 1;
    transform: translate3d(0px, 120px, 0px); }
  .pbr-category-filter.category-filter-default:hover .category-filter-list li {
    opacity: 1;
    filter: alpha(opacity=100);
    bottom: 0; }
  .pbr-category-filter.category-filter-default .category-filter-list li {
    display: inline-block;
    margin: 0 10px;
    -webkit-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: 0.35s;
    transition-duration: 0.35s;
    opacity: 0;
    filter: alpha(opacity=0);
    position: relative;
    bottom: -50px; }
    .pbr-category-filter.category-filter-default .category-filter-list li a {
      font-size: 12px;
      color: #FFF;
      text-transform: uppercase; }
      .pbr-category-filter.category-filter-default .category-filter-list li a:hover {
        color: #54a9a2; }
  .pbr-category-filter.category-filter-default .category-filter-list li:nth-child(1) {
    -webkit-transition-delay: 0.1s, 0s;
    -moz-transition-delay: 0.1s, 0s;
    -ms-transition-delay: 0.1s, 0s;
    -o-transition-delay: 0.1s, 0s;
    transition-delay: 0.1s, 0s; }
  .pbr-category-filter.category-filter-default .category-filter-list li:nth-child(2) {
    -webkit-transition-delay: 0.2s, 0s;
    -moz-transition-delay: 0.2s, 0s;
    -ms-transition-delay: 0.2s, 0s;
    -o-transition-delay: 0.2s, 0s;
    transition-delay: 0.2s, 0s; }
  .pbr-category-filter.category-filter-default .category-filter-list li:nth-child(3) {
    -webkit-transition-delay: 0.3s, 0s;
    -moz-transition-delay: 0.3s, 0s;
    -ms-transition-delay: 0.3s, 0s;
    -o-transition-delay: 0.3s, 0s;
    transition-delay: 0.3s, 0s; }
  .pbr-category-filter.category-filter-default .category-filter-list li:nth-child(4) {
    -webkit-transition-delay: 0.4s, 0s;
    -moz-transition-delay: 0.4s, 0s;
    -ms-transition-delay: 0.4s, 0s;
    -o-transition-delay: 0.4s, 0s;
    transition-delay: 0.4s, 0s; }
  .pbr-category-filter.category-filter-default .category-filter-list li:nth-child(5) {
    -webkit-transition-delay: 0.5s, 0s;
    -moz-transition-delay: 0.5s, 0s;
    -ms-transition-delay: 0.5s, 0s;
    -o-transition-delay: 0.5s, 0s;
    transition-delay: 0.5s, 0s; }

.pbr-category-filter.category-filter-v1 {
  text-align: center; }
  .pbr-category-filter.category-filter-v1:before {
    background-color: #ededed;
    content: "";
    height: 95px;
    left: 0;
    position: absolute;
    top: 28%;
    width: 1px; }
  .pbr-category-filter.category-filter-v1 .category-filter-content {
    display: block;
    left: 0;
    right: 0;
    position: absolute;
    top: 0;
    transition: all 0.4s ease 0s;
    width: 60%;
    margin: 0 auto;
    z-index: 1;
    min-height: 228px;
    border: 1px solid transparent; }
    .pbr-category-filter.category-filter-v1 .category-filter-content ul {
      left: 0;
      margin: 0 auto;
      opacity: 0;
      padding: 0 20px;
      position: absolute;
      right: 0;
      top: 80px;
      transition: all 400ms ease 0s; }
  .pbr-category-filter.category-filter-v1 .filter-head {
    margin-bottom: 40px; }
  .pbr-category-filter.category-filter-v1 h4 {
    font-size: 14px;
    margin-top: 20px; }
  .pbr-category-filter.category-filter-v1 .category-image {
    margin-top: 100px; }
  .pbr-category-filter.category-filter-v1 small {
    position: relative; }
    .pbr-category-filter.category-filter-v1 small:before {
      position: absolute;
      content: "";
      left: 0;
      right: 0;
      margin: 0 auto;
      width: 40px;
      height: 3px;
      background-color: #ededed;
      bottom: -20px; }
  .pbr-category-filter.category-filter-v1:hover .category-filter-content {
    background: #ffffff none repeat scroll 0 0;
    border-color: #000;
    top: 0;
    height: auto; }
    .pbr-category-filter.category-filter-v1:hover .category-filter-content a {
      font-size: 11px;
      text-transform: uppercase; }
    .pbr-category-filter.category-filter-v1:hover .category-filter-content ul {
      opacity: 1;
      top: 100px; }
    .pbr-category-filter.category-filter-v1:hover .category-filter-content h4 {
      color: #54a9a2;
      cursor: pointer; }

.wpb_column:first-child .pbr-category-filter.category-filter-v1:before {
  content: none; }

/**
   *
   */
.widget-text-heading {
  padding-top: 45px;
  padding-bottom: 20px; }
  .widget-text-heading .subtitle {
    letter-spacing: 6px;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 500;
    padding: 5px 0 0;
    color: #999; }
  .widget-text-heading .widget-heading {
    font-size: 60px;
    position: relative;
    z-index: 3;
    letter-spacing: -4px;
    font-family: "Poppins", sans-serif;
    text-transform: none;
    margin-top: 15px; }
  .widget-text-heading .description {
    margin: 20px 0;
    font-size: 18px; }
  .widget-text-heading.heading-style1 .widget-heading .heading-text {
    position: relative;
    display: inline-block; }
    @media screen and (min-width: 992px) {
      .widget-text-heading.heading-style1 .widget-heading .heading-text:before, .widget-text-heading.heading-style1 .widget-heading .heading-text:after {
        width: 10px;
        height: 10px;
        position: absolute;
        top: 50%;
        content: "";
        margin-top: -5px;
        background-color: #54a9a2;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px; }
      .widget-text-heading.heading-style1 .widget-heading .heading-text:before {
        right: -20px; }
      .widget-text-heading.heading-style1 .widget-heading .heading-text:after {
        left: -20px; } }
  .widget-text-heading.heading-style2 {
    padding-top: 40px;
    padding-bottom: 10px; }
    .widget-text-heading.heading-style2 .widget-heading {
      font-size: 36px;
      letter-spacing: -2px; }
      .widget-text-heading.heading-style2 .widget-heading .heading-text {
        position: relative;
        display: inline-block;
        z-index: 1; }
        .widget-text-heading.heading-style2 .widget-heading .heading-text:before {
          width: 70px;
          height: 70px;
          position: absolute;
          top: calc(50% - 40px);
          content: "";
          background-color: #54a9a2;
          border-radius: 50%;
          -webkit-border-radius: 50%;
          -moz-border-radius: 50%;
          -ms-border-radius: 50%;
          -o-border-radius: 50%;
          left: -30px;
          z-index: -1; }
    .widget-text-heading.heading-style2 .description {
      margin-bottom: 0; }
    .widget-text-heading.heading-style2.text-right .widget-heading .heading-text:before {
      right: -30px;
      left: inherit; }

/**
 * Product Tabs Widgets
 */
.widget-productcats .widget-heading h3 {
  margin: 10px 0 0; }

.widget-productcats .widget-heading .sub-categories {
  padding-top: 20px; }
  .widget-productcats .widget-heading .sub-categories a {
    color: #888;
    font-size: 95%; }

.wpb_flickr_widget {
  text-align: center; }
  .wpb_flickr_widget .wpb_wrapper {
    margin-top: -20px; }
  .wpb_flickr_widget .wpb_flickr_heading {
    font-size: 18px; }
  .wpb_flickr_widget .flickr_badge_image {
    float: none;
    display: inline-block;
    margin: 20px 10px 0;
    width: 120px;
    height: 120px; }
  .wpb_flickr_widget .flickr_stream_wrap {
    display: none; }

.vc_grid-item .vc_separator {
  display: none; }

.vc_grid-item .vc_grid-item-mini .vc_gitem-zone .vc_gitem-zone-mini .vc_gitem_row .vc_gitem-col {
  padding: 15px 20px 20px; }
  .vc_grid-item .vc_grid-item-mini .vc_gitem-zone .vc_gitem-zone-mini .vc_gitem_row .vc_gitem-col .vc_custom_heading {
    margin: 0;
    padding: 0; }
    .vc_grid-item .vc_grid-item-mini .vc_gitem-zone .vc_gitem-zone-mini .vc_gitem_row .vc_gitem-col .vc_custom_heading h1, .vc_grid-item .vc_grid-item-mini .vc_gitem-zone .vc_gitem-zone-mini .vc_gitem_row .vc_gitem-col .vc_custom_heading h2, .vc_grid-item .vc_grid-item-mini .vc_gitem-zone .vc_gitem-zone-mini .vc_gitem_row .vc_gitem-col .vc_custom_heading h3, .vc_grid-item .vc_grid-item-mini .vc_gitem-zone .vc_gitem-zone-mini .vc_gitem_row .vc_gitem-col .vc_custom_heading h4, .vc_grid-item .vc_grid-item-mini .vc_gitem-zone .vc_gitem-zone-mini .vc_gitem_row .vc_gitem-col .vc_custom_heading h5, .vc_grid-item .vc_grid-item-mini .vc_gitem-zone .vc_gitem-zone-mini .vc_gitem_row .vc_gitem-col .vc_custom_heading h6 {
      font-size: 14px; }
  .vc_grid-item .vc_grid-item-mini .vc_gitem-zone .vc_gitem-zone-mini .vc_gitem_row .vc_gitem-col .vc_gitem-post-data-source-post_excerpt {
    max-height: 95px;
    overflow: hidden; }
  .vc_grid-item .vc_grid-item-mini .vc_gitem-zone .vc_gitem-zone-mini .vc_gitem_row .vc_gitem-col .vc_btn3.vc_btn3-size-md {
    padding: 10px 20px;
    border: none !important;
    margin-top: 15px; }

/**
 * Styles for progress bar
 */
.vc_progress_bar {
  margin-top: 40px; }
  .vc_progress_bar .vc_single_bar {
    margin-bottom: 30px !important; }
    .vc_progress_bar .vc_single_bar .vc_bar {
      background-color: transparent;
      border-radius: 0;
      height: 20px; }
    .vc_progress_bar .vc_single_bar .vc_label {
      margin: 0;
      padding: 0 !important;
      position: absolute;
      top: -25px;
      height: 20px; }
      .vc_progress_bar .vc_single_bar .vc_label .vc_label_units {
        float: left;
        color: red;
        margin: 0 10px 0 0;
        font-weight: bold; }

.vc_tta-container h2 {
  margin-top: 0; }

/*------------------------------------------------------------------
[# Toggles]
-------------------------------------------------------------------*/
.vc_toggle_default.vc_toggle_color_default {
  margin-bottom: 20px; }
  .vc_toggle_default.vc_toggle_color_default .vc_toggle_title {
    padding: 10px 25px !important; }

.vc_toggle_default .vc_toggle_title {
  padding-left: 20px;
  border: 1px solid #e4e4e4;
  cursor: pointer;
  background-color: #f7f7f7; }
  .vc_toggle_default .vc_toggle_title h4 {
    text-transform: none; }

/*------------------------------------------------------------------
pbr-our-team
-------------------------------------------------------------------*/
.pbr-our-team ul.list-inline li {
  padding: 0 10px; }
  .pbr-our-team ul.list-inline li a {
    color: #999; }
    .pbr-our-team ul.list-inline li a:hover {
      color: #54a9a2; }

/*
 * Single Image 
 */
.wpb_single_image {
  position: relative;
  text-transform: uppercase; }
  .wpb_single_image .wpb_heading {
    background: #FFF;
    opacity: 0.8;
    padding: 4px 6px;
    top: 10%;
    left: 20px;
    color: #000;
    font-size: 90%;
    font-weight: normal;
    position: absolute; }
  .wpb_single_image .description {
    position: absolute;
    top: 40%;
    left: 20px;
    max-width: 90%; }
    .wpb_single_image .description span {
      font-weight: bold; }

.vc_tta.vc_general .vc_tta-panel-title {
  font-size: 14px !important; }
  .vc_tta.vc_general .vc_tta-panel-title > a {
    position: relative;
    text-align: left; }
    .vc_tta.vc_general .vc_tta-panel-title > a:before {
      width: 42px;
      height: 100%;
      background-color: #000;
      position: absolute;
      top: 0;
      content: ""; }
  .vc_tta.vc_general .vc_tta-panel-title.vc_tta-controls-icon-position-right > a {
    padding: 14px 42px 14px 20px; }
    .vc_tta.vc_general .vc_tta-panel-title.vc_tta-controls-icon-position-right > a:before {
      right: 0; }
    .vc_tta.vc_general .vc_tta-panel-title.vc_tta-controls-icon-position-right > a .vc_tta-controls-icon {
      right: 15px; }
  .vc_tta.vc_general .vc_tta-panel-title.vc_tta-controls-icon-position-left > a {
    padding: 14px 20px14px 42px; }
    .vc_tta.vc_general .vc_tta-panel-title.vc_tta-controls-icon-position-left > a:before {
      left: 0; }
    .vc_tta.vc_general .vc_tta-panel-title.vc_tta-controls-icon-position-left > a .vc_tta-controls-icon {
      left: 18px; }

.vc_tta.vc_general .vc_tta-controls-icon {
  width: 8px;
  height: 8px; }
  .vc_tta.vc_general .vc_tta-controls-icon:before, .vc_tta.vc_general .vc_tta-controls-icon:after {
    border-color: #fff !important; }

.vc_tta.vc_general .vc_active .vc_tta-panel-title > a {
  position: relative; }
  .vc_tta.vc_general .vc_active .vc_tta-panel-title > a:before {
    background-color: #54a9a2; }

.wpb_gmaps_widget .wpb_wrapper {
  padding: 0 !important; }

.vc_general .vc_tta-panels .vc_tta-panel .vc_tta-panel-body {
  background-color: #fff !important; }
  .vc_general .vc_tta-panels .vc_tta-panel .vc_tta-panel-body .vc_toggle_title {
    background-color: #fff !important; }
    .vc_general .vc_tta-panels .vc_tta-panel .vc_tta-panel-body .vc_toggle_title h4 {
      font-size: 14px;
      font-weight: 500;
      position: relative; }

.vc_general.vc_tta-tabs .vc_tta-tabs-container .vc_tta-tabs-list {
  border-bottom: 1px solid #ededed;
  margin-bottom: 15px; }
  .vc_general.vc_tta-tabs .vc_tta-tabs-container .vc_tta-tabs-list .vc_tta-tab {
    margin-left: 10px;
    margin-right: 10px; }
    .vc_general.vc_tta-tabs .vc_tta-tabs-container .vc_tta-tabs-list .vc_tta-tab a {
      font-size: 16px;
      text-transform: uppercase;
      font-weight: 700;
      border: none;
      padding-left: 0;
      padding-right: 0; }
      .vc_general.vc_tta-tabs .vc_tta-tabs-container .vc_tta-tabs-list .vc_tta-tab a:hover {
        border-bottom: 5px solid #54a9a2 !important;
        background-color: transparent;
        color: #000; }
    .vc_general.vc_tta-tabs .vc_tta-tabs-container .vc_tta-tabs-list .vc_tta-tab.vc_active a {
      border-bottom: 5px solid #54a9a2 !important;
      background-color: transparent;
      color: #000; }

/* Custom Heading */
.vc_custom_heading a {
  line-height: 54px;
  padding: 0 20px;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #fff;
  background-color: #54a9a2;
  display: inline-block;
  font-weight: 500; }

.vc_custom_heading.link a {
  background-color: transparent;
  padding: 25px 0 0;
  color: #54a9a2 !important;
  text-transform: uppercase;
  letter-spacing: 3px;
  font-size: 600 !important;
  font-size: 12px; }
  .vc_custom_heading.link a:hover {
    color: #000 !important; }

/* image_grid*/
.pbr-footer .wpb_image_grid {
  position: relative; }
  .pbr-footer .wpb_image_grid .wpb_image_grid_ul {
    justify-content: space-around;
    display: inline-block; }
    .pbr-footer .wpb_image_grid .wpb_image_grid_ul li {
      display: -webkit-box;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flexbox;
      display: flex;
      align-self: center;
      left: 0 !important;
      position: relative !important;
      margin: 0 !important;
      top: 0 !important;
      width: 33% !important;
      padding: 8px;
      background-color: transparent; }

/* image_grid*/
@media (min-width: 768px) {
  .wpb_image_grid .wpb_image_grid_ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-around; } }

.wpb_image_grid .wpb_image_grid_ul li {
  align-self: center;
  left: 0 !important;
  position: relative !important;
  margin: 0 !important;
  top: 0 !important;
  background-color: #000; }
  @media (max-width: 480px) {
    .wpb_image_grid .wpb_image_grid_ul li {
      width: 50% !important;
      margin: 15px !important; } }
  .wpb_image_grid .wpb_image_grid_ul li img {
    width: 100%;
    opacity: 0.85;
    filter: alpha(opacity=85); }
  .wpb_image_grid .wpb_image_grid_ul li:hover img {
    opacity: 1;
    filter: alpha(opacity=100); }

@media (min-width: 1200px) {
  .col-lg-cus-5 {
    width: 20%;
    float: left;
    padding-left: 15px;
    padding-right: 15px; } }

@media (min-width: 992px) and (max-width: 1200px) {
  .col-md-cus-5 {
    width: 20%;
    float: left;
    padding-left: 15px;
    padding-right: 15px; } }

@media (max-width: 480px) {
  .col-xs-cus-12 {
    width: 100%;
    padding-left: 15px;
    padding-right: 15px; } }

/*
 * Off Canvas
 * --------------------------------------------------
 */
.sidebar-offcanvas {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 50%;
  z-index: 999;
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
  text-align: left;
  background-color: #FFF;
  left: -50%;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out; }
  .sidebar-offcanvas.active {
    left: 0; }

.btn-offcanvas:hover {
  color: #54a9a2; }

.offcanvas-head button {
  padding: 14px 25px; }

.row-offcanvas {
  position: relative;
  -webkit-transition: all 0.25s ease-out;
  -o-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out; }
  .row-offcanvas.active {
    left: 0; }

.offcanvas-showright {
  background: rgba(84, 169, 162, 0.8);
  position: relative;
  -webkit-transition: all 0.25s ease-out;
  -o-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out;
  width: 400px;
  position: absolute;
  right: -800px;
  top: 0;
  z-index: 1000;
  display: block;
  padding: 50px 0; }
  .offcanvas-showright.active {
    display: block;
    right: 0; }
  .offcanvas-showright .showright {
    background-color: #FFF;
    width: 40px;
    height: 40px;
    border: none;
    margin-right: 50px; }
    .offcanvas-showright .showright .fa {
      color: #54a9a2; }

@media screen and (max-width: 992px) {
  .row-offcanvas-right {
    right: 0; }
  .row-offcanvas-left {
    left: 0; }
  .row-offcanvas-right .sidebar-offcanvas {
    right: -50%; }
  .row-offcanvas-right.active {
    right: 50%; }
  .row-offcanvas-left.active {
    left: 0; } }

.navbar-offcanvas {
  border: none; }
  .navbar-offcanvas ul#main-menu-offcanvas {
    float: none;
    display: block; }
    .navbar-offcanvas ul#main-menu-offcanvas > li {
      position: relative;
      border-bottom: 1px solid #ededed;
      display: block;
      float: none; }
      .navbar-offcanvas ul#main-menu-offcanvas > li .caret {
        position: absolute;
        right: 10px;
        top: 10px;
        width: 25px;
        height: 25px;
        border: 1px solid #ededed;
        z-index: 9;
        background: #f5f5f5; }
        .navbar-offcanvas ul#main-menu-offcanvas > li .caret:hover {
          cursor: pointer; }
        .navbar-offcanvas ul#main-menu-offcanvas > li .caret:after {
          font-family: FontAwesome;
          content: "\f107";
          top: 0px;
          left: 7px;
          position: absolute;
          z-index: 9; }
      .navbar-offcanvas ul#main-menu-offcanvas > li ul {
        position: relative;
        float: none;
        border: none;
        -webkit-box-shadow: none;
        box-shadow: none;
        padding: 0 10px 15px; }
        .navbar-offcanvas ul#main-menu-offcanvas > li ul li a {
          font-size: 13px;
          font-weight: 300;
          padding-top: 5px;
          padding-bottom: 5px; }
          .navbar-offcanvas ul#main-menu-offcanvas > li ul li a:hover {
            color: #54a9a2;
            background-color: transparent; }
    .navbar-offcanvas ul#main-menu-offcanvas li.active > a {
      background: none;
      color: #54a9a2; }

@media (max-width: 480px) {
  .active-mobile.cart-popup .active-content {
    right: 0;
    left: -100px; } }

body {
  background-color: #f4f0ed;
  background-image: url("../../../images/bg-body.jpg");
  background-repeat: none;
  background-position: top center; }

@media (min-width: 991px) {
  #page {
    max-width: 1400px;
    margin-top: 40px;
    margin-bottom: 40px; } }

#page .pbr-topbar {
  background-color: #42200a; }
  #page .pbr-topbar .container {
    width: 100%; }

@media (max-width: 991px) {
  #pbr-masthead.header-absolute {
    background-color: #fff;
    border-bottom: 1px solid #ededed; } }

#pbr-masthead.pbr-header-default {
  background-color: #ffffff;
  border-bottom: 1px solid #ededed; }

.navbar-mega-light .navbar-mega .navbar-nav > li > a, .navbar-mega-light .navbar-mega .navbar-nav > li > a .caret {
  color: #000; }
  .navbar-mega-light .navbar-mega .navbar-nav > li > a:hover, .navbar-mega-light .navbar-mega .navbar-nav > li > a .caret:hover {
    color: #54a9a2; }

.pbr-footer {
  color: #ccc;
  background-image: url("../../../images/bg-footer-cofeemaker.jpg");
  background-repeat: none;
  background-position: top center; }
  .pbr-footer .pbr-copyright {
    background-color: transparent; }

.widget_recent_entries .widgettitle {
  font-size: 20px;
  color: #fff;
  letter-spacing: 0px; }

.widget_recent_entries ul li {
  border-color: rgba(255, 255, 255, 0.1); }
  .widget_recent_entries ul li a {
    color: #ccc; }
    .widget_recent_entries ul li a:before {
      color: #ccc; }
    .widget_recent_entries ul li a:hover {
      color: #54a9a2; }
      .widget_recent_entries ul li a:hover:before {
        color: #54a9a2; }

.wpb_widgetised_column .wpb_widgetised_column_heading {
  color: #fff; }

.wpb_widgetised_column .widget_mc4wp_form_widget .form-style-1 > p .btn-default {
  background-color: transparent;
  border: 2px solid #54a9a2;
  color: #fff; }

.wpb_widgetised_column .widget_mc4wp_form_widget .form-style-1 > p input[type="email"] {
  border: 2px solid #ededed;
  background-color: transparent; }

.pbr-copyright {
  color: #ccc; }
  .pbr-copyright a {
    color: #fff; }
    .pbr-copyright a:hover {
      color: #54a9a2; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tpbnMvaG9tZV9jb2ZmZWVtYWtlci9zdHlsZS5jc3MiLCJzb3VyY2VzIjpbInNraW5zL2hvbWVfY29mZmVlbWFrZXIvc3R5bGUuc2NzcyIsInNraW5zL2hvbWVfY29mZmVlbWFrZXIvdmFycy9fdmFycy5zY3NzIiwiX2Jvb3RzdHJhcC5zY3NzIiwiYm9vdHN0cmFwL192YXJpYWJsZXMuc2NzcyIsImJvb3RzdHJhcC9fbWl4aW5zLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19oaWRlLXRleHQuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX29wYWNpdHkuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2ltYWdlLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19sYWJlbHMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LWZpbHRlci5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcmVzaXplLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19yZXNwb25zaXZlLXZpc2liaWxpdHkuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3NpemUuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3RhYi1mb2N1cy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdGV4dC1vdmVyZmxvdy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdmVuZG9yLXByZWZpeGVzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19hbGVydHMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2J1dHRvbnMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3BhbmVscy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2Zvcm1zLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19wcm9ncmVzcy1iYXIuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19jZW50ZXItYmxvY2suc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX25hdi12ZXJ0aWNhbC1hbGlnbi5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2dyaWQuc2NzcyIsImJvb3RzdHJhcC9fbm9ybWFsaXplLnNjc3MiLCJib290c3RyYXAvX3ByaW50LnNjc3MiLCJib290c3RyYXAvX3NjYWZmb2xkaW5nLnNjc3MiLCJib290c3RyYXAvX3R5cGUuc2NzcyIsImJvb3RzdHJhcC9fY29kZS5zY3NzIiwiYm9vdHN0cmFwL19ncmlkLnNjc3MiLCJib290c3RyYXAvX3RhYmxlcy5zY3NzIiwiYm9vdHN0cmFwL19mb3Jtcy5zY3NzIiwiYm9vdHN0cmFwL19idXR0b25zLnNjc3MiLCJib290c3RyYXAvX2NvbXBvbmVudC1hbmltYXRpb25zLnNjc3MiLCJib290c3RyYXAvX2Ryb3Bkb3ducy5zY3NzIiwiYm9vdHN0cmFwL19idXR0b24tZ3JvdXBzLnNjc3MiLCJib290c3RyYXAvX2lucHV0LWdyb3Vwcy5zY3NzIiwiYm9vdHN0cmFwL19uYXZzLnNjc3MiLCJib290c3RyYXAvX25hdmJhci5zY3NzIiwiYm9vdHN0cmFwL19icmVhZGNydW1icy5zY3NzIiwiYm9vdHN0cmFwL19wYWdpbmF0aW9uLnNjc3MiLCJib290c3RyYXAvX2xhYmVscy5zY3NzIiwiYm9vdHN0cmFwL19iYWRnZXMuc2NzcyIsImJvb3RzdHJhcC9fYWxlcnRzLnNjc3MiLCJib290c3RyYXAvX3Byb2dyZXNzLWJhcnMuc2NzcyIsImJvb3RzdHJhcC9fbWVkaWEuc2NzcyIsImJvb3RzdHJhcC9fbGlzdC1ncm91cC5zY3NzIiwiYm9vdHN0cmFwL19wYW5lbHMuc2NzcyIsImJvb3RzdHJhcC9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwiYm9vdHN0cmFwL19tb2RhbHMuc2NzcyIsImJvb3RzdHJhcC9fY2Fyb3VzZWwuc2NzcyIsImJvb3RzdHJhcC9fdXRpbGl0aWVzLnNjc3MiLCJib290c3RyYXAvX3Jlc3BvbnNpdmUtdXRpbGl0aWVzLnNjc3MiLCJjb21wb25lbnRzL192YXJpYWJsZXMuc2NzcyIsImNvbXBvbmVudHMvdmFycy9fZm9ybS5zY3NzIiwiY29tcG9uZW50cy92YXJzL19uYXYuc2NzcyIsImNvbXBvbmVudHMvdmFycy9fbGF5b3V0LnNjc3MiLCJjb21wb25lbnRzL3ZhcnMvX2VsZW1lbnRzLnNjc3MiLCJjb21wb25lbnRzL3ZhcnMvX3dpZGdldC5zY3NzIiwiY29tcG9uZW50cy9fbWl4aW5zLnNjc3MiLCJjb21wb25lbnRzL21peGlucy9fcnRsLnNjc3MiLCJjb21wb25lbnRzL21peGlucy9fZnVuY3Rpb25zLnNjc3MiLCJjb21wb25lbnRzL21peGlucy9fdGVtcGxhdGUtbWl4aW5zLnNjc3MiLCJjb21wb25lbnRzL19iYXNlLnNjc3MiLCJjb21wb25lbnRzL190ZW1wbGF0ZS1sYXlvdXQuc2NzcyIsImNvbXBvbmVudHMvX3dpZGdldC1sYXlvdXQuc2NzcyIsImNvbXBvbmVudHMvX3dpZGdldHMuc2NzcyIsImNvbXBvbmVudHMvX25hdi5zY3NzIiwiY29tcG9uZW50cy9fcGFnZS5zY3NzIiwiY29tcG9uZW50cy9fcG9zdC1mb3JtYXRzLnNjc3MiLCJjb21wb25lbnRzL19wb3N0LXNpbmdsZS5zY3NzIiwiY29tcG9uZW50cy9fY3VzdG9tLXBvc3R0eXBlLnNjc3MiLCJjb21wb25lbnRzL19lbGVtZW50cy5zY3NzIiwiY29tcG9uZW50cy9fdmMuc2NzcyIsImNvbXBvbmVudHMvX3Jlc3BvbnNpdmUuc2NzcyIsInNraW5zL2hvbWVfY29mZmVlbWFrZXIvYWRkaXRpb24vX3N0eWxlLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLypcblRoZW1lIE5hbWU6IE1vaGF3a1xuVGhlbWUgVVJJOiBodHRwczovL3ByZXN0YWJyYWluLm9yZy90aGVtZXMvd29vc2EvXG5BdXRob3I6IFByZXN0YWJyYWluIFRlYW1cbkF1dGhvciBVUkk6IGh0dHBzOi8vd29yZHByZXNzLm9yZy9cbkRlc2NyaXB0aW9uOiBJbiAyMDE0LCBvdXIgZGVmYXVsdCB0aGVtZSBsZXRzIHlvdSBjcmVhdGUgYSByZXNwb25zaXZlIG1hZ2F6aW5lIHdlYnNpdGUgd2l0aCBhIHNsZWVrLCBtb2Rlcm4gZGVzaWduLiBGZWF0dXJlIHlvdXIgZmF2b3JpdGUgaG9tZXBhZ2UgY29udGVudCBpbiBlaXRoZXIgYSBncmlkIG9yIGEgc2xpZGVyLiBVc2UgdGhlIHRocmVlIHdpZGdldCBhcmVhcyB0byBjdXN0b21pemUgeW91ciB3ZWJzaXRlLCBhbmQgY2hhbmdlIHlvdXIgY29udGVudCdzIGxheW91dCB3aXRoIGEgZnVsbC13aWR0aCBwYWdlIHRlbXBsYXRlIGFuZCBhIGNvbnRyaWJ1dG9yIHBhZ2UgdG8gc2hvdyBvZmYgeW91ciBhdXRob3JzLiBDcmVhdGluZyBhIG1hZ2F6aW5lIHdlYnNpdGUgd2l0aCBXb3JkUHJlc3MgaGFzIG5ldmVyIGJlZW4gZWFzaWVyLlxuVmVyc2lvbjogMS41XG5MaWNlbnNlOiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2MiBvciBsYXRlclxuTGljZW5zZSBVUkk6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWxcblRhZ3M6IGJsYWNrLCBncmVlbiwgd2hpdGUsIGxpZ2h0LCBkYXJrLCB0d28tY29sdW1ucywgdGhyZWUtY29sdW1ucywgbGVmdC1zaWRlYmFyLCByaWdodC1zaWRlYmFyLCBmaXhlZC1sYXlvdXQsIHJlc3BvbnNpdmUtbGF5b3V0LCBjdXN0b20tYmFja2dyb3VuZCwgY3VzdG9tLWhlYWRlciwgY3VzdG9tLW1lbnUsIGVkaXRvci1zdHlsZSwgZmVhdHVyZWQtaW1hZ2VzLCBmbGV4aWJsZS1oZWFkZXIsIGZ1bGwtd2lkdGgtdGVtcGxhdGUsIG1pY3JvZm9ybWF0cywgcG9zdC1mb3JtYXRzLCBydGwtbGFuZ3VhZ2Utc3VwcG9ydCwgc3RpY2t5LXBvc3QsIHRoZW1lLW9wdGlvbnMsIHRyYW5zbGF0aW9uLXJlYWR5LCBhY2Nlc3NpYmlsaXR5LXJlYWR5XG5UZXh0IERvbWFpbjogd29vc2FcblxuVGhpcyB0aGVtZSwgbGlrZSBXb3JkUHJlc3MsIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBHUEwuXG5Vc2UgaXQgdG8gbWFrZSBzb21ldGhpbmcgY29vbCwgaGF2ZSBmdW4sIGFuZCBzaGFyZSB3aGF0IHlvdSd2ZSBsZWFybmVkIHdpdGggb3RoZXJzLlxuKi9cbkBpbXBvcnQgXCJ2YXJzL3ZhcnNcIjtcblxuQGltcG9ydCBcIi4uLy4uL2Jvb3RzdHJhcFwiO1xuXG5AaW1wb3J0IFwiLi4vLi4vY29tcG9uZW50cy92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL21peGluc1wiO1xuXG5AaW1wb3J0IFwiLi4vLi4vY29tcG9uZW50cy9iYXNlXCI7XG5AaW1wb3J0IFwiLi4vLi4vY29tcG9uZW50cy90ZW1wbGF0ZS1sYXlvdXRcIjtcblxuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvd2lkZ2V0LWxheW91dFwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvd2lkZ2V0c1wiO1xuXG5AaW1wb3J0IFwiLi4vLi4vY29tcG9uZW50cy9uYXZcIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL3BhZ2VcIjtcblxuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvcG9zdC1mb3JtYXRzXCI7XG5AaW1wb3J0IFwiLi4vLi4vY29tcG9uZW50cy9wb3N0LXNpbmdsZVwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvY3VzdG9tLXBvc3R0eXBlXCI7XG5cbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL2VsZW1lbnRzXCI7XG5AaW1wb3J0IFwiLi4vLi4vY29tcG9uZW50cy92Y1wiO1xuXG5cbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL3Jlc3BvbnNpdmVcIjtcblxuQGltcG9ydCBcImFkZGl0aW9uL3N0eWxlXCI7XG4iLCIkaW1hZ2UtZm9udHMtcGF0aCAgICAgICAgICAgOiBcIi4uLy4uLy4uL2ZvbnRzL1wiO1xyXG4kZmEtZm9udC1wYXRoICAgICAgICAgICAgICA6IFwiLi4vLi4vLi4vZm9udHMvXCI7XHJcbiRpbWFnZS10aGVtZS1wYXRoICAgICAgICAgIDogXCIuLi8uLi8uLi9pbWFnZXMvXCI7XHJcbiRpbWFnZS10aGVtZS1za2luXHRcdFx0OiBcIi4uLy4uLy4uL2ltYWdlcy9cIjtcclxuJHRoZW1lLWNvbG9yICAgICAgICAgICAgICAgOiAjNTRhOWEyO1xyXG4kdGhlbWUtY29sb3Itc2Vjb25kYXJ5ICAgICAgOiAjNTRhOWEyO1xyXG4kbGluay1ob3Zlci1jb2xvclx0XHRcdDokdGhlbWUtY29sb3I7XHJcbiRicmFuZC1wcmltYXJ5ICAgICAgICAgICAgICA6JHRoZW1lLWNvbG9yO1xyXG5cclxuXHJcbiRidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgJHRoZW1lLWNvbG9yIDtcclxuJGJ0bi1kZWZhdWx0LWJvcmRlcjogICAgICAgICAkdGhlbWUtY29sb3IgOyIsIi8qIVxuICogQm9vdHN0cmFwIHYzLjMuNSAoaHR0cDovL2dldGJvb3RzdHJhcC5jb20pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE1IFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKi9cblxuLy8gQ29yZSB2YXJpYWJsZXMgYW5kIG1peGluc1xuQGltcG9ydCBcImJvb3RzdHJhcC92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbWl4aW5zXCI7XG5cbi8vIFJlc2V0IGFuZCBkZXBlbmRlbmNpZXNcbkBpbXBvcnQgXCJib290c3RyYXAvbm9ybWFsaXplXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3ByaW50XCI7XG4vL0BpbXBvcnQgXCJib290c3RyYXAvZ2x5cGhpY29uc1wiO1xuXG4vLyBDb3JlIENTU1xuQGltcG9ydCBcImJvb3RzdHJhcC9zY2FmZm9sZGluZ1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC90eXBlXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2NvZGVcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvZ3JpZFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC90YWJsZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvZm9ybXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvYnV0dG9uc1wiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwiYm9vdHN0cmFwL2NvbXBvbmVudC1hbmltYXRpb25zXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2Ryb3Bkb3duc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9idXR0b24tZ3JvdXBzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2lucHV0LWdyb3Vwc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9uYXZzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL25hdmJhclwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9icmVhZGNydW1ic1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wYWdpbmF0aW9uXCI7XG4vL0BpbXBvcnQgXCJib290c3RyYXAvcGFnZXJcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbGFiZWxzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2JhZGdlc1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9qdW1ib3Ryb25cIjtcbi8vQGltcG9ydCBcImJvb3RzdHJhcC90aHVtYm5haWxzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2FsZXJ0c1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wcm9ncmVzcy1iYXJzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL21lZGlhXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcGFuZWxzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3Jlc3BvbnNpdmUtZW1iZWRcIjtcbi8vQGltcG9ydCBcImJvb3RzdHJhcC93ZWxsc1wiO1xuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL2Nsb3NlXCI7XG5cbi8vIENvbXBvbmVudHMgdy8gSmF2YVNjcmlwdFxuQGltcG9ydCBcImJvb3RzdHJhcC9tb2RhbHNcIjtcbi8vQGltcG9ydCBcImJvb3RzdHJhcC90b29sdGlwXCI7XG4vL0BpbXBvcnQgXCJib290c3RyYXAvcG9wb3ZlcnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvY2Fyb3VzZWxcIjtcblxuLy8gVXRpbGl0eSBjbGFzc2VzXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3V0aWxpdGllc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9yZXNwb25zaXZlLXV0aWxpdGllc1wiO1xuIiwiJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlcjogZmFsc2UgIWRlZmF1bHQ7XG4vL1xuLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vPT0gQ29sb3JzXG4vL1xuLy8jIyBHcmF5IGFuZCBicmFuZCBjb2xvcnMgZm9yIHVzZSBhY3Jvc3MgQm9vdHN0cmFwLlxuXG4kbGlnaHQtZ3JheSAgICAgIDogbGlnaHRlbigjMDAwMDAwLCA2MCUpICFkZWZhdWx0OyAgICAgICAgLy8gIzk5OTk5OVxuJHZlcnktbGlnaHQtZ3JheSA6ICNlNWU1ZTUgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgIC8vICNlNWU1ZTVcbiR2ZXJ5LWRhcmstZ3JheSAgOiBsaWdodGVuKCMwMDAwMDAsIDklKSAhZGVmYXVsdDsgICAgICAgICAvLyAjMTcxNzE3IFxuJGdyYXktZGFya2VyICAgICA6ICMwZDI5MmYgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgIC8vICMwZDI5MmZcbiRncmF5LWRhcmsgICAgICAgOiAjNjY2NjY2ICFkZWZhdWx0OyAgICAgICAgICAgLy8gIzMzMzMzM1xuJGdyYXkgICAgICAgICAgICA6IGxpZ2h0ZW4oIzAwMCwgMzMuNSUpICFkZWZhdWx0OyAgICAgICAgIC8vICM1NTU1NTVcbiRncmF5LWxpZ2h0ICAgICAgOiBsaWdodGVuKCMwMDAsIDQ2LjclKSAhZGVmYXVsdDsgICAgICAgICAvLyAjNzc3Nzc3XG4kZ3JheS1saWdodGVyICAgIDogbGlnaHRlbigjMDAwLCA5My41JSkgIWRlZmF1bHQ7ICAgICAgICAgLy8gI2VlZWVlZVxuXG4kYnJhbmQtcHJpbWFyeSAgIDogI2I5OTc2NyAhZGVmYXVsdDtcbiRicmFuZC1zdWNjZXNzICAgOiAjNzBiYTI4ICFkZWZhdWx0O1xuJGJyYW5kLWluZm8gICAgICA6ICMwNGFkZjAgIWRlZmF1bHQ7XG4kYnJhbmQtd2FybmluZyAgIDogI2YwYzczYiAhZGVmYXVsdDtcbiRicmFuZC1kYW5nZXIgICAgOiAjZTQzNjM2ICFkZWZhdWx0O1xuXG5cbi8vPT0gU2NhZmZvbGRpbmdcbi8vXG4vLyMjIFNldHRpbmdzIGZvciBzb21lIG9mIHRoZSBtb3N0IGdsb2JhbCBzdHlsZXMuXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgYDxib2R5PmAuXG4kYm9keS1iZzogICAgICAgICAgICAgICAjZjZmNmY2ICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgdGV4dCBjb2xvciBvbiBgPGJvZHk+YC5cbiR0ZXh0LWNvbG9yOiAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG5cbi8vKiogR2xvYmFsIHRleHR1YWwgbGluayBjb2xvci5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4vLyoqIExpbmsgaG92ZXIgY29sb3Igc2V0IHZpYSBgZGFya2VuKClgIGZ1bmN0aW9uLlxuJGxpbmstaG92ZXItY29sb3I6ICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbi8vKiogTGluayBob3ZlciBkZWNvcmF0aW9uLlxuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcblxuXG4vLz09IFR5cG9ncmFwaHlcbi8vXG4vLyMjIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogJ1BvcHBpbnMnLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiAgICAgIEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCBtb25vc3BhY2UgZm9udHMgZm9yIGA8Y29kZT5gLCBgPGtiZD5gLCBhbmQgYDxwcmU+YC5cbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgXCJNb250c2VycmF0XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgJ1BvcHBpbnMnLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxhcmdlOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcbiRmb250LXNpemUtc21hbGw6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuXG4kZm9udC1zaXplLWgxOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjg1NykpICFkZWZhdWx0OyAvLyB+MzZweFxuJGZvbnQtc2l6ZS1oMjogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi4xNSkpICFkZWZhdWx0OyAvLyB+MzBweFxuJGZvbnQtc2l6ZS1oMzogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjcpKSAhZGVmYXVsdDsgLy8gfjI0cHhcbiRmb250LXNpemUtaDQ6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS40MjgpKSAhZGVmYXVsdDsgLy8gfjE4cHhcbiRmb250LXNpemUtaDU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1oNjogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbiRmb250LXdlaWdodC1iYXNlXHQ6IDMwMCAhZGVmYXVsdDtcbi8vKiogVW5pdC1sZXNzIGBsaW5lLWhlaWdodGAgZm9yIHVzZSBpbiBjb21wb25lbnRzIGxpa2UgYnV0dG9ucy5cbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgMS42Mjg1NzE0MjkgIWRlZmF1bHQ7IC8vIDIwLzE0XG4vLyoqIENvbXB1dGVkIFwibGluZS1oZWlnaHRcIiAoYGZvbnQtc2l6ZWAgKiBgbGluZS1oZWlnaHRgKSBmb3IgdXNlIHdpdGggYG1hcmdpbmAsIGBwYWRkaW5nYCwgZXRjLlxuJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOiAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UpKSAhZGVmYXVsdDsgLy8gfjIwcHhcblxuLy8qKiBCeSBkZWZhdWx0LCB0aGlzIGluaGVyaXRzIGZyb20gdGhlIGA8Ym9keT5gLlxuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICBcIlBvcHBpbnNcIiAhZGVmYXVsdDtcbi8qICRoZWFkaW5ncy1mb250LXdlaWdodDogICAgNzAwICFkZWZhdWx0OyAqL1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICA3MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgIDEuMSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgIzAwMDAwMCAhZGVmYXVsdDtcblxuXG4vLz09IEljb25vZ3JhcGh5XG4vL1xuLy8jIyBTcGVjaWZ5IGN1c3RvbSBsb2NhdGlvbiBhbmQgZmlsZW5hbWUgb2YgdGhlIGluY2x1ZGVkIEdseXBoaWNvbnMgaWNvbiBmb250LiBVc2VmdWwgZm9yIHRob3NlIGluY2x1ZGluZyBCb290c3RyYXAgdmlhIEJvd2VyLlxuXG4vLyoqIExvYWQgZm9udHMgZnJvbSB0aGlzIGRpcmVjdG9yeS5cblxuLy8gW2NvbnZlcnRlcl0gSWYgJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciBpZiB1c2VkLCBwcm92aWRlIHBhdGggcmVsYXRpdmUgdG8gdGhlIGFzc2V0cyBsb2FkIHBhdGguXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGJlY2F1c2Ugc29tZSBhc3NldCBoZWxwZXJzLCBzdWNoIGFzIFNwcm9ja2V0cywgZG8gbm90IHdvcmsgd2l0aCBmaWxlLXJlbGF0aXZlIHBhdGhzLlxuJGljb24tZm9udC1wYXRoOiBpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCBcImJvb3RzdHJhcC9cIiwgXCIuLi9mb250cy9ib290c3RyYXAvXCIpICFkZWZhdWx0O1xuXG4vLyoqIEZpbGUgbmFtZSBmb3IgYWxsIGZvbnQgZmlsZXMuXG4kaWNvbi1mb250LW5hbWU6ICAgICAgICAgIFwiZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhclwiICFkZWZhdWx0O1xuLy8qKiBFbGVtZW50IElEIHdpdGhpbiBTVkcgaWNvbiBmaWxlLlxuJGljb24tZm9udC1zdmctaWQ6ICAgICAgICBcImdseXBoaWNvbnNfaGFsZmxpbmdzcmVndWxhclwiICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29tcG9uZW50c1xuLy9cbi8vIyMgRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLiBWYWx1ZXMgYmFzZWQgb24gMTRweCB0ZXh0IGFuZCAxLjQyOCBsaW5lLWhlaWdodCAofjIwcHggdG8gc3RhcnQpLlxuXG4kcGFkZGluZy1iYXNlLXZlcnRpY2FsOiAgICAgOXB4ICFkZWZhdWx0O1xuJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsOiAgIDIwcHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOiAgICAxNXB4ICFkZWZhdWx0O1xuJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDogIDIwcHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsOiAgICA1cHggIWRlZmF1bHQ7XG4kcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsOiAgMTBweCAhZGVmYXVsdDtcblxuJHBhZGRpbmcteHMtdmVydGljYWw6ICAgICAgIDFweCAhZGVmYXVsdDtcbiRwYWRkaW5nLXhzLWhvcml6b250YWw6ICAgICA1cHggIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1sYXJnZTogICAgICAgICAxLjggIWRlZmF1bHQ7IC8vIGV4dHJhIGRlY2ltYWxzIGZvciBXaW4gOC4xIENocm9tZVxuJGxpbmUtaGVpZ2h0LXNtYWxsOiAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgIDBweCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICAwcHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAgMHB4ICFkZWZhdWx0O1xuXG4vLyoqIEdsb2JhbCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogR2xvYmFsIGJhY2tncm91bmQgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyoqIFdpZHRoIG9mIHRoZSBgYm9yZGVyYCBmb3IgZ2VuZXJhdGluZyBjYXJldHMgdGhhdCBpbmRpY2F0b3IgZHJvcGRvd25zLlxuJGNhcmV0LXdpZHRoLWJhc2U6ICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogQ2FyZXRzIGluY3JlYXNlIHNsaWdodGx5IGluIHNpemUgZm9yIGxhcmdlciBjb21wb25lbnRzLlxuJGNhcmV0LXdpZHRoLWxhcmdlOiAgICAgICAgIDVweCAhZGVmYXVsdDtcblxuXG4vLz09IFRhYmxlc1xuLy9cbi8vIyMgQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4vLyoqIFBhZGRpbmcgZm9yIGA8dGg+YHMgYW5kIGA8dGQ+YHMuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAgIDhweCAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBmb3IgY2VsbHMgaW4gYC50YWJsZS1jb25kZW5zZWRgLlxuJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc6ICA1cHggIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGFsbCB0YWJsZXMuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtc3RyaXBlZGAuXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgICNmOWY5ZjkgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1ob3ZlcmAuXG4kdGFibGUtYmctaG92ZXI6ICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlciAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRhYmxlIGFuZCBjZWxsIGJvcmRlcnMuXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBCdXR0b25zXG4vL1xuLy8jIyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICA1MDAgIWRlZmF1bHQ7XG5cbiRidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcblxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tcHJpbWFyeS1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1zdWNjZXNzLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbiRidG4taW5mby1ib3JkZXI6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnRuLWluZm8tYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4td2FybmluZy1iZzogICAgICAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4td2FybmluZy1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkYnRuLWRhbmdlci1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3Jtc1xuLy9cbi8vIyNcblxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dCBkaXNhYmxlZD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgYDxpbnB1dD5gc1xuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcbiRpbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IFJlbmFtZSBgJGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGAkaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4vLyBUaGlzIGhhcyBubyBlZmZlY3Qgb24gYDxzZWxlY3Q+YHMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgaW5wdXRzIG9uIGZvY3VzXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAgICAgICAgICAgICAjNjZhZmU5ICFkZWZhdWx0O1xuXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgICAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKiAyKSArIDYpICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgICAoY2VpbCgkZm9udC1zaXplLWxhcmdlICogJGxpbmUtaGVpZ2h0LWxhcmdlKSArICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtc21hbGw6ICAgICAgICAgICAgIChmbG9vcigkZm9udC1zaXplLXNtYWxsICogJGxpbmUtaGVpZ2h0LXNtYWxsKSArICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG5cbi8vKiogYC5mb3JtLWdyb3VwYCBtYXJnaW5cbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRsZWdlbmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kbGVnZW5kLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGN1cnNvciBmb3IgZm9ybSBjb250cm9scyBhbmQgYnV0dG9ucy5cbiRjdXJzb3ItZGlzYWJsZWQ6ICAgICAgICAgICAgICAgIG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG5cbi8vPT0gRHJvcGRvd25zXG4vL1xuLy8jIyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vKiogQmFja2dyb3VuZCBmb3IgdGhlIGRyb3Bkb3duIG1lbnUuXG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgLlxuJGRyb3Bkb3duLWJvcmRlcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMTUpICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgICoqZm9yIElFOCoqLlxuJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbi8vKiogRGl2aWRlciBjb2xvciBmb3IgYmV0d2VlbiBkcm9wZG93biBpdGVtcy5cbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogRHJvcGRvd24gbGluayB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbi8vKiogSG92ZXIgY29sb3IgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRncmF5LWRhcmssIDUlKSAhZGVmYXVsdDtcbi8vKiogSG92ZXIgYmFja2dyb3VuZCBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gdGV4dCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuLy8qKiBEaXNhYmxlZCBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGhlYWRlcnMgd2l0aGluIGRyb3Bkb3duIG1lbnVzLlxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogRGVwcmVjYXRlZCBgJGRyb3Bkb3duLWNhcmV0LWNvbG9yYCBhcyBvZiB2My4xLjBcbiRkcm9wZG93bi1jYXJldC1jb2xvcjogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG5cblxuLy8tLSBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG4vL1xuLy8gTm90ZTogVGhlc2UgdmFyaWFibGVzIGFyZSBub3QgZ2VuZXJhdGVkIGludG8gdGhlIEN1c3RvbWl6ZXIuXG5cbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LW5hdmJhci1maXhlZDogICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kOiAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgIDEwNTAwICFkZWZhdWx0O1xuXG5cbi8vPT0gTWVkaWEgcXVlcmllcyBicmVha3BvaW50c1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBicmVha3BvaW50cyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSwgYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gRXh0cmEgc21hbGwgc2NyZWVuIC8gcGhvbmVcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14c2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXhzOiAgICAgICAgICAgICAgICAgIDQ4MHB4ICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzLW1pbmAgYXMgb2YgdjMuMi4wXG4kc2NyZWVuLXhzLW1pbjogICAgICAgICAgICAgICRzY3JlZW4teHMgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tcGhvbmVgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1waG9uZTogICAgICAgICAgICAgICAkc2NyZWVuLXhzLW1pbiAhZGVmYXVsdDtcblxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tc21gIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1zbTogICAgICAgICAgICAgICAgICA3NjhweCAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1zbSAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi10YWJsZXRgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi10YWJsZXQ6ICAgICAgICAgICAgICAkc2NyZWVuLXNtLW1pbiAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1tZGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLW1kOiAgICAgICAgICAgICAgICAgIDk5MnB4ICFkZWZhdWx0O1xuJHNjcmVlbi1tZC1taW46ICAgICAgICAgICAgICAkc2NyZWVuLW1kICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1kZXNrdG9wOiAgICAgICAgICAgICAkc2NyZWVuLW1kLW1pbiAhZGVmYXVsdDtcblxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGdgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1sZzogICAgICAgICAgICAgICAgICAxMjAwcHggIWRlZmF1bHQ7XG4kc2NyZWVuLWxnLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbGcgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGctZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnLWRlc2t0b3A6ICAgICAgICAgICRzY3JlZW4tbGctbWluICFkZWZhdWx0O1xuXG4vLyBTbyBtZWRpYSBxdWVyaWVzIGRvbid0IG92ZXJsYXAgd2hlbiByZXF1aXJlZCwgcHJvdmlkZSBhIG1heGltdW1cbiRzY3JlZW4teHMtbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tc20tbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLW1kLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1tZC1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1sZy1taW4gLSAxKSAhZGVmYXVsdDtcblxuXG4vLz09IEdyaWQgc3lzdGVtXG4vL1xuLy8jIyBEZWZpbmUgeW91ciBjdXN0b20gcmVzcG9uc2l2ZSBncmlkLlxuXG4vLyoqIE51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkLlxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGJldHdlZW4gY29sdW1ucy4gR2V0cyBkaXZpZGVkIGluIGhhbGYgZm9yIHRoZSBsZWZ0IGFuZCByaWdodC5cbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAzMHB4ICFkZWZhdWx0O1xuLy8gTmF2YmFyIGNvbGxhcHNlXG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVjb21lcyB1bmNvbGxhcHNlZC5cbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQ6ICAgICAkc2NyZWVuLXNtLW1pbiAhZGVmYXVsdDtcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWdpbnMgY29sbGFwc2luZy5cbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4OiAoJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29udGFpbmVyIHNpemVzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyMjIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuJGNvbnRhaW5lci10YWJsZXQ6ICAgICAgICAgICAgICgoNzUwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLXNtLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1zbTogICAgICAgICAgICAgICAgICRjb250YWluZXItdGFibGV0ICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuJGNvbnRhaW5lci1kZXNrdG9wOiAgICAgICAgICAgICgoOTcwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLW1kLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1tZDogICAgICAgICAgICAgICAgICRjb250YWluZXItZGVza3RvcCAhZGVmYXVsdDtcblxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4kY29udGFpbmVyLWxhcmdlLWRlc2t0b3A6ICAgICAgKCgxMTcwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1sZy1taW5gIGFuZCB1cC5cbiRjb250YWluZXItbGc6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWxhcmdlLWRlc2t0b3AgIWRlZmF1bHQ7XG5cblxuXG4vLz09IE5hdmJhclxuLy9cbi8vIyNcblxuLy8gQmFzaWNzIG9mIGEgbmF2YmFyXG4kbmF2YmFyLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICRsaW5lLWhlaWdodC1jb21wdXRlZCAhZGVmYXVsdDtcbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgKCgkbmF2YmFyLWhlaWdodCAtICRsaW5lLWhlaWdodC1jb21wdXRlZCkgLyAyKSAhZGVmYXVsdDtcbiRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDogICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgI2Y4ZjhmOCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBsaW5rc1xuJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciB0b2dnbGVcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICM4ODggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09PSBJbnZlcnRlZCBuYXZiYXJcbi8vIFJlc2V0IGludmVydGVkIG5hdmJhciBiYXNpY3NcbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzIyMiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXG4kbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciB0b2dnbGVcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IE5hdnNcbi8vXG4vLyMjXG5cbi8vPT09IFNoYXJlZCBuYXYgc3R5bGVzXG4kbmF2LWxpbmstcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiRuYXYtZGlzYWJsZWQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLz09IFRhYnNcbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdi10YWJzLWp1c3RpZmllZC1hY3RpdmUtbGluay1ib3JkZXItY29sb3I6ICAgICAkYm9keS1iZyAhZGVmYXVsdDtcblxuLy89PSBQaWxsc1xuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy89PSBQYWdpbmF0aW9uXG4vL1xuLy8jI1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXI6ICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2VyXG4vL1xuLy8jI1xuXG4kcGFnZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1iZyAhZGVmYXVsdDtcbiRwYWdlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJvcmRlciAhZGVmYXVsdDtcbiRwYWdlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRwYWdlci1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kcGFnZXItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnZXItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cbiRwYWdlci1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vPT0gSnVtYm90cm9uXG4vL1xuLy8jI1xuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1jb2xvcjogICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWhlYWRpbmctY29sb3I6ICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1mb250LXNpemU6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS41KSkgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWhlYWRpbmctZm9udC1zaXplOiAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiA0LjUpKSAhZGVmYXVsdDtcblxuXG4vLz09IEZvcm0gc3RhdGVzIGFuZCBhbGVydHNcbi8vXG4vLyMjIERlZmluZSBjb2xvcnMgZm9yIGZvcm0gZmVlZGJhY2sgc3RhdGVzIGFuZCwgYnkgZGVmYXVsdCwgYWxlcnRzLlxuXG4kc3RhdGUtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAgICAjM2M3NjNkICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgI2RmZjBkOCAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1zdWNjZXNzLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1pbmZvLXRleHQ6ICAgICAgICAgICAgICAgICMzMTcwOGYgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1iZzogICAgICAgICAgICAgICAgICAjZDllZGY3ICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWluZm8tYmcsIC0xMCksIDclKSAhZGVmYXVsdDtcblxuJHN0YXRlLXdhcm5pbmctdGV4dDogICAgICAgICAgICAgIzhhNmQzYiAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICNmMGM3M2IgIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtd2FybmluZy1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAgICAjYTk0NDQyICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1iZzogICAgICAgICAgICAgICAgI2Y4ZDdkYSAhZGVmYXVsdDtcbiRzdGF0ZS1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1kYW5nZXItYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuXG4vLz09IFRvb2x0aXBzXG4vL1xuLy8jI1xuXG4vLyoqIFRvb2x0aXAgbWF4IHdpZHRoXG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCB0ZXh0IGNvbG9yXG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIGJhY2tncm91bmQgY29sb3JcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcblxuLy8qKiBUb29sdGlwIGFycm93IHdpZHRoXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICA1cHggIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgYXJyb3cgY29sb3JcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuXG5cbi8vPT0gUG9wb3ZlcnNcbi8vXG4vLyMjXG5cbi8vKiogUG9wb3ZlciBib2R5IGJhY2tncm91bmQgY29sb3JcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBtYXhpbXVtIHdpZHRoXG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGJvcmRlciBjb2xvclxuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4yKSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBmYWxsYmFjayBib3JkZXIgY29sb3JcbiRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvcjogICAgICAgI2NjYyAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIHRpdGxlIGJhY2tncm91bmQgY29sb3JcbiRwb3BvdmVyLXRpdGxlLWJnOiAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGFycm93IGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgd2lkdGhcbiRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoOiAgICAgICAgICAgKCRwb3BvdmVyLWFycm93LXdpZHRoICsgMSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgICAgZmFkZV9pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIDAuMDUpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGZhbGxiYWNrIGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjogIGRhcmtlbigkcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3IsIDIwJSkgIWRlZmF1bHQ7XG5cblxuLy89PSBMYWJlbHNcbi8vXG4vLyMjXG5cbi8vKiogRGVmYXVsdCBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtZGVmYXVsdC1iZzogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogUHJpbWFyeSBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtcHJpbWFyeS1iZzogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtc3VjY2Vzcy1iZzogICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbi8vKiogSW5mbyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtaW5mby1iZzogICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbi8vKiogV2FybmluZyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtd2FybmluZy1iZzogICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbi8vKiogRGFuZ2VyIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kYW5nZXItYmc6ICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBsYWJlbCB0ZXh0IGNvbG9yXG4kbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuLy8qKiBEZWZhdWx0IHRleHQgY29sb3Igb2YgYSBsaW5rZWQgbGFiZWxcbiRsYWJlbC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG5cbi8vPT0gTW9kYWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIHRpdGxlXG4kbW9kYWwtdGl0bGUtcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCB0aXRsZSBsaW5lLWhlaWdodFxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBjb250ZW50IGFyZWFcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3JcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yICoqZm9yIElFOCoqXG4kbW9kYWwtY29udGVudC1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogTW9kYWwgYmFja2Ryb3AgYmFja2dyb3VuZCBjb2xvclxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgYmFja2Ryb3Agb3BhY2l0eVxuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgLjUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGhlYWRlciBib3JkZXIgY29sb3JcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICNlNWU1ZTUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGZvb3RlciBib3JkZXIgY29sb3JcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICA5MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgIDYwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBBbGVydHNcbi8vXG4vLyMjIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZzogICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgIGJvbGQgIWRlZmF1bHQ7XG5cbiRhbGVydC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LWluZm8tYmc6ICAgICAgICAgICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XG4kYWxlcnQtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtd2FybmluZy1iZzogICAgICAgICAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1kYW5nZXItYmc6ICAgICAgICAgICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcblxuXG4vLz09IFByb2dyZXNzIGJhcnNcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgd2hvbGUgcHJvZ3Jlc3MgY29tcG9uZW50XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBQcm9ncmVzcyBiYXIgdGV4dCBjb2xvclxuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVmFyaWFibGUgZm9yIHNldHRpbmcgcm91bmRlZCBjb3JuZXJzIG9uIHByb2dyZXNzIGJhci5cbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1zdWNjZXNzLWJnOiAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4vLyoqIFdhcm5pbmcgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXdhcm5pbmctYmc6ICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbi8vKiogRGFuZ2VyIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1kYW5nZXItYmc6ICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbi8vKiogSW5mbyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItaW5mby1iZzogICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuXG5cbi8vPT0gTGlzdCBncm91cFxuLy9cbi8vIyNcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9uIGAubGlzdC1ncm91cC1pdGVtYFxuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBgLmxpc3QtZ3JvdXAtaXRlbWAgYm9yZGVyIGNvbG9yXG4kbGlzdC1ncm91cC1ib3JkZXI6ICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4vLyoqIExpc3QgZ3JvdXAgYm9yZGVyIHJhZGl1c1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2Ygc2luZ2xlIGxpc3QgaXRlbXMgb24gaG92ZXJcbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogQm9yZGVyIGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGVsZW1lbnRzXG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyOiAgICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yOiAgbGlnaHRlbigkbGlzdC1ncm91cC1hY3RpdmUtYmcsIDQwJSkgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtbGluay1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjogICAkbGlzdC1ncm91cC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1oZWFkaW5nLWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFuZWxzXG4vL1xuLy8jI1xuXG4kcGFuZWwtYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhbmVsLWJvZHktcGFkZGluZzogICAgICAgICAgMjBweCAhZGVmYXVsdDtcbiRwYW5lbC1oZWFkaW5nLXBhZGRpbmc6ICAgICAgIDE1cHggMjBweCAhZGVmYXVsdDtcbiRwYW5lbC1mb290ZXItcGFkZGluZzogICAgICAgICRwYW5lbC1oZWFkaW5nLXBhZGRpbmcgIWRlZmF1bHQ7XG4kcGFuZWwtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgZWxlbWVudHMgd2l0aGluIHBhbmVsc1xuJHBhbmVsLWlubmVyLWJvcmRlcjogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgI2VkZWRlZCAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1wcmltYXJ5LXRleHQ6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1ib3JkZXI6ICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFuZWwtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZzogICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1oZWFkaW5nLWJnOiAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmc6ICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItaGVhZGluZy1iZzogICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBUaHVtYm5haWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgaW1hZ2VcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJhY2tncm91bmQgY29sb3JcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIGNvbG9yXG4kdGh1bWJuYWlsLWJvcmRlcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIHJhZGl1c1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBDdXN0b20gdGV4dCBjb2xvciBmb3IgdGh1bWJuYWlsIGNhcHRpb25zXG4kdGh1bWJuYWlsLWNhcHRpb24tY29sb3I6ICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBjYXB0aW9uXG4kdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZzogICA5cHggIWRlZmF1bHQ7XG5cblxuLy89PSBXZWxsc1xuLy9cbi8vIyNcblxuJHdlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR3ZWxsLWJvcmRlcjogICAgICAgICAgICAgICAgIGRhcmtlbigkd2VsbC1iZywgNyUpICFkZWZhdWx0O1xuXG5cbi8vPT0gQmFkZ2VzXG4vL1xuLy8jI1xuXG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBMaW5rZWQgYmFkZ2UgdGV4dCBjb2xvciBvbiBob3ZlclxuJGJhZGdlLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRiYWRnZS1iZzogICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIEJhZGdlIHRleHQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFkZ2UgYmFja2dyb3VuZCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAxICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgMTBweCAhZGVmYXVsdDtcblxuXG4vLz09IEJyZWFkY3J1bWJzXG4vL1xuLy8jI1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsOiAgIDQwcHggIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw6IDE1cHggIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgYmFja2dyb3VuZCBjb2xvclxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAjZWZlZmVmICFkZWZhdWx0O1xuLy8qKiBCcmVhZGNydW1iIHRleHQgY29sb3JcbiRicmVhZGNydW1iLWNvbG9yOiAgICAgICAgICAgICAgIzY2NiAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBvZiBjdXJyZW50IHBhZ2UgaW4gdGhlIGJyZWFkY3J1bWJcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIFRleHR1YWwgc2VwYXJhdG9yIGZvciBiZXR3ZWVuIGJyZWFkY3J1bWIgZWxlbWVudHNcbiRicmVhZGNydW1iLXNlcGFyYXRvcjogICAgICAgICAgXCI+XCIgIWRlZmF1bHQ7XG5cblxuLy89PSBDYXJvdXNlbFxuLy9cbi8vIyNcblxuJGNhcm91c2VsLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKDAsMCwwLC42KSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgNDBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENsb3NlXG4vL1xuLy8jI1xuXG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgIDAgMXB4IDAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENvZGVcbi8vXG4vLyMjXG5cbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICNjNzI1NGUgIWRlZmF1bHQ7XG4kY29kZS1iZzogICAgICAgICAgICAgICAgICAgICAjZjlmMmY0ICFkZWZhdWx0O1xuXG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuJHByZS1iZzogICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcHJlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBUeXBlXG4vL1xuLy8jI1xuXG4vLyoqIEhvcml6b250YWwgb2Zmc2V0IGZvciBmb3JtcyBhbmQgbGlzdHMuXG4kY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsOiAxODBweCAhZGVmYXVsdDtcbi8vKiogVGV4dCBtdXRlZCBjb2xvclxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEFiYnJldmlhdGlvbnMgYW5kIGFjcm9ueW1zIGJvcmRlciBjb2xvclxuJGFiYnItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEhlYWRpbmdzIHNtYWxsIGNvbG9yXG4kaGVhZGluZ3Mtc21hbGwtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBzbWFsbCBjb2xvclxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgZm9udCBzaXplXG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgYm9yZGVyIGNvbG9yXG4kYmxvY2txdW90ZS1ib3JkZXItY29sb3I6ICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBQYWdlIGhlYWRlciBib3JkZXIgY29sb3JcbiRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFdpZHRoIG9mIGhvcml6b250YWwgZGVzY3JpcHRpb24gbGlzdCB0aXRsZXNcbiRkbC1ob3Jpem9udGFsLW9mZnNldDogICAgICAgICRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWwgIWRlZmF1bHQ7XG4vLyoqIEhvcml6b250YWwgbGluZSBjb2xvci5cbiRoci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4iLCIvLyBNaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcIm1peGlucy9oaWRlLXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvb3BhY2l0eVwiO1xuQGltcG9ydCBcIm1peGlucy9pbWFnZVwiO1xuQGltcG9ydCBcIm1peGlucy9sYWJlbHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtZmlsdGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNwb25zaXZlLXZpc2liaWxpdHlcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy90YWItZm9jdXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWVtcGhhc2lzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtb3ZlcmZsb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdmVuZG9yLXByZWZpeGVzXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJtaXhpbnMvYWxlcnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFuZWxzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtZGl2aWRlclwiO1xuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xuQGltcG9ydCBcIm1peGlucy9wcm9ncmVzcy1iYXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFibGUtcm93XCI7XG5cbi8vIFNraW5zXG5AaW1wb3J0IFwibWl4aW5zL2JhY2tncm91bmQtdmFyaWFudFwiO1xuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyYWRpZW50c1wiO1xuXG4vLyBMYXlvdXRcbkBpbXBvcnQgXCJtaXhpbnMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2VudGVyLWJsb2NrXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi12ZXJ0aWNhbC1hbGlnblwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkLWZyYW1ld29ya1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbi8vXG4vLyBIZWFkcyB1cCEgdjMgbGF1bmNoZWQgd2l0aCBvbmx5IGAuaGlkZS10ZXh0KClgLCBidXQgcGVyIG91ciBwYXR0ZXJuIGZvclxuLy8gbWl4aW5zIGJlaW5nIHJldXNlZCBhcyBjbGFzc2VzIHdpdGggdGhlIHNhbWUgbmFtZSwgdGhpcyBkb2Vzbid0IGhvbGQgdXAuIEFzXG4vLyBvZiB2My4wLjEgd2UgaGF2ZSBhZGRlZCBgLnRleHQtaGlkZSgpYCBhbmQgZGVwcmVjYXRlZCBgLmhpZGUtdGV4dCgpYC5cbi8vXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2NvbW1pdC9hYTAzOTZlYWU3NTdcblxuLy8gRGVwcmVjYXRlZCBhcyBvZiB2My4wLjEgKHdpbGwgYmUgcmVtb3ZlZCBpbiB2NClcbkBtaXhpbiBoaWRlLXRleHQoKSB7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBOZXcgbWl4aW4gdG8gdXNlIGFzIG9mIHYzLjAuMVxuQG1peGluIHRleHQtaGlkZSgpIHtcbiAgQGluY2x1ZGUgaGlkZS10ZXh0O1xufVxuIiwiLy8gT3BhY2l0eVxuXG5AbWl4aW4gb3BhY2l0eSgkb3BhY2l0eSkge1xuICBvcGFjaXR5OiAkb3BhY2l0eTtcbiAgLy8gSUU4IGZpbHRlclxuICAkb3BhY2l0eS1pZTogKCRvcGFjaXR5ICogMTAwKTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PSRvcGFjaXR5LWllKTtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuQG1peGluIGltZy1yZXNwb25zaXZlKCRkaXNwbGF5OiBibG9jaykge1xuICBkaXNwbGF5OiAkZGlzcGxheTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBoZWlnaHQ6IGF1dG87IC8vIFBhcnQgMjogU2NhbGUgdGhlIGhlaWdodCBhY2NvcmRpbmcgdG8gdGhlIHdpZHRoLCBvdGhlcndpc2UgeW91IGdldCBzdHJldGNoaW5nXG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLiBOb3RlIHRoYXQgdGhlXG4vLyBzcGVsbGluZyBvZiBgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvYCBpcyBpbnRlbnRpb25hbC5cbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWltYWdlLXBhdGgoXCIjeyRmaWxlLTF4fVwiKSwgXCIjeyRmaWxlLTF4fVwiKSk7XG5cbiAgQG1lZGlhXG4gIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggICBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMi8xKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDJkcHB4KSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMnh9XCIpLCBcIiN7JGZpbGUtMnh9XCIpKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xuICB9XG59XG4iLCIvLyBMYWJlbHNcblxuQG1peGluIGxhYmVsLXZhcmlhbnQoJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICAmW2hyZWZdIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJlc2V0IGZpbHRlcnMgZm9yIElFXG4vL1xuLy8gV2hlbiB5b3UgbmVlZCB0byByZW1vdmUgYSBncmFkaWVudCBiYWNrZ3JvdW5kLCBkbyBub3QgZm9yZ2V0IHRvIHVzZSB0aGlzIHRvIHJlc2V0XG4vLyB0aGUgSUUgZmlsdGVyIGZvciBJRTkgYW5kIGJlbG93LlxuXG5AbWl4aW4gcmVzZXQtZmlsdGVyKCkge1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkID0gZmFsc2UpO1xufVxuIiwiLy8gUmVzaXplIGFueXRoaW5nXG5cbkBtaXhpbiByZXNpemFibGUoJGRpcmVjdGlvbikge1xuICByZXNpemU6ICRkaXJlY3Rpb247IC8vIE9wdGlvbnM6IGhvcml6b250YWwsIHZlcnRpY2FsLCBib3RoXG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcbn1cbiIsIi8vIFJlc3BvbnNpdmUgdXRpbGl0aWVzXG5cbi8vXG4vLyBNb3JlIGVhc2lseSBpbmNsdWRlIGFsbCB0aGUgc3RhdGVzIGZvciByZXNwb25zaXZlLXV0aWxpdGllcy5sZXNzLlxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZSN7JHBhcmVudH0gIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0ciN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgjeyRwYXJlbnR9LFxuICB0ZCN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBTaXppbmcgc2hvcnRjdXRzXG5cbkBtaXhpbiBzaXplKCR3aWR0aCwgJGhlaWdodCkge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG59XG5cbkBtaXhpbiBzcXVhcmUoJHNpemUpIHtcbiAgQGluY2x1ZGUgc2l6ZSgkc2l6ZSwgJHNpemUpO1xufVxuIiwiLy8gV2ViS2l0LXN0eWxlIGZvY3VzXG5cbkBtaXhpbiB0YWItZm9jdXMoKSB7XG4gIC8vIERlZmF1bHRcbiAgb3V0bGluZTogbm9uZTtcbiAgLy8gV2ViS2l0XG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCgpIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZS5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cbiIsIi8vIFR5cG9ncmFwaHlcblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG4gIGEjeyRwYXJlbnR9OmhvdmVyLFxuICBhI3skcGFyZW50fTpmb2N1cyB7XG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIFRleHQgb3ZlcmZsb3dcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtb3ZlcmZsb3coKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gVmVuZG9yIFByZWZpeGVzXG4vL1xuLy8gQWxsIHZlbmRvciBtaXhpbnMgYXJlIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGR1ZSB0byB0aGUgaW50cm9kdWN0aW9uIG9mXG4vLyBBdXRvcHJlZml4ZXIgaW4gb3VyIEdydW50ZmlsZS4gVGhleSB3aWxsIGJlIHJlbW92ZWQgaW4gdjQuXG5cbi8vIC0gQW5pbWF0aW9uc1xuLy8gLSBCYWNrZmFjZSB2aXNpYmlsaXR5XG4vLyAtIEJveCBzaGFkb3dcbi8vIC0gQm94IHNpemluZ1xuLy8gLSBDb250ZW50IGNvbHVtbnNcbi8vIC0gSHlwaGVuc1xuLy8gLSBQbGFjZWhvbGRlciB0ZXh0XG4vLyAtIFRyYW5zZm9ybWF0aW9uc1xuLy8gLSBUcmFuc2l0aW9uc1xuLy8gLSBVc2VyIFNlbGVjdFxuXG5cbi8vIEFuaW1hdGlvbnNcbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbiAgICAgICAtby1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1uYW1lKCRuYW1lKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbn1cbkBtaXhpbiBhbmltYXRpb24tZHVyYXRpb24oJGR1cmF0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1kZWxheSgkZGVsYXkpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbiAgICAgICAgICBhbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbn1cbkBtaXhpbiBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50KCRpdGVyYXRpb24tY291bnQpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xuICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1maWxsLW1vZGUoJGZpbGwtbW9kZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG4gICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcbn1cblxuLy8gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gUHJldmVudCBicm93c2VycyBmcm9tIGZsaWNrZXJpbmcgd2hlbiB1c2luZyBDU1MgM0QgdHJhbnNmb3Jtcy5cbi8vIERlZmF1bHQgdmFsdWUgaXMgYHZpc2libGVgLCBidXQgY2FuIGJlIGNoYW5nZWQgdG8gYGhpZGRlbmBcblxuQG1peGluIGJhY2tmYWNlLXZpc2liaWxpdHkoJHZpc2liaWxpdHkpe1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xuICAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xufVxuXG4vLyBEcm9wIHNoYWRvd3Ncbi8vXG4vLyBOb3RlOiBEZXByZWNhdGVkIGAuYm94LXNoYWRvdygpYCBhcyBvZiB2My4xLjAgc2luY2UgYWxsIG9mIEJvb3RzdHJhcCdzXG4vLyBzdXBwb3J0ZWQgYnJvd3NlcnMgdGhhdCBoYXZlIGJveCBzaGFkb3cgY2FwYWJpbGl0aWVzIG5vdyBzdXBwb3J0IGl0LlxuXG5AbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogJHNoYWRvdzsgLy8gaU9TIDw0LjMgJiBBbmRyb2lkIDw0LjFcbiAgICAgICAgICBib3gtc2hhZG93OiAkc2hhZG93O1xufVxuXG4vLyBCb3ggc2l6aW5nXG5AbWl4aW4gYm94LXNpemluZygkYm94bW9kZWwpIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgIC1tb3otYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgICAgICAgIGJveC1zaXppbmc6ICRib3htb2RlbDtcbn1cblxuLy8gQ1NTMyBDb250ZW50IENvbHVtbnNcbkBtaXhpbiBjb250ZW50LWNvbHVtbnMoJGNvbHVtbi1jb3VudCwgJGNvbHVtbi1nYXA6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAtd2Via2l0LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAgLW1vei1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gICAgICAgICAgY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAtd2Via2l0LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xuICAgICAtbW96LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xuICAgICAgICAgIGNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xufVxuXG4vLyBPcHRpb25hbCBoeXBoZW5hdGlvblxuQG1peGluIGh5cGhlbnMoJG1vZGU6IGF1dG8pIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LWh5cGhlbnM6ICRtb2RlO1xuICAgICAtbW96LWh5cGhlbnM6ICRtb2RlO1xuICAgICAgLW1zLWh5cGhlbnM6ICRtb2RlOyAvLyBJRTEwK1xuICAgICAgIC1vLWh5cGhlbnM6ICRtb2RlO1xuICAgICAgICAgIGh5cGhlbnM6ICRtb2RlO1xufVxuXG4vLyBQbGFjZWhvbGRlciB0ZXh0XG5AbWl4aW4gcGxhY2Vob2xkZXIoJGNvbG9yOiAkaW5wdXQtY29sb3ItcGxhY2Vob2xkZXIpIHtcbiAgLy8gRmlyZWZveFxuICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIG9wYWNpdHk6IDE7IC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2XG4gIH1cbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogJGNvbG9yOyB9IC8vIEludGVybmV0IEV4cGxvcmVyIDEwK1xuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyICB7IGNvbG9yOiAkY29sb3I7IH0gLy8gU2FmYXJpIGFuZCBDaHJvbWVcbn1cblxuLy8gVHJhbnNmb3JtYXRpb25zXG5AbWl4aW4gc2NhbGUoJHJhdGlvLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xufVxuXG5AbWl4aW4gc2NhbGVYKCRyYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG59XG5AbWl4aW4gc2NhbGVZKCRyYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG59XG5AbWl4aW4gc2tldygkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy80ODg1OyBJRTkrXG4gICAgICAgLW8tdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbn1cbkBtaXhpbiB0cmFuc2xhdGUoJHgsICR5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbn1cbkBtaXhpbiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xufVxuQG1peGluIHJvdGF0ZSgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiByb3RhdGVYKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiByb3RhdGVZKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgICAtbW96LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiBwZXJzcGVjdGl2ZS1vcmlnaW4oJHBlcnNwZWN0aXZlKSB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG59XG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkb3JpZ2luKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47IC8vIElFOSBvbmx5XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbn1cblxuXG4vLyBUcmFuc2l0aW9uc1xuXG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tcHJvcGVydHkoJHRyYW5zaXRpb24tcHJvcGVydHkuLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCR0cmFuc2l0aW9uLWRlbGF5KSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1kdXJhdGlvbigkdHJhbnNpdGlvbi1kdXJhdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXRyYW5zZm9ybSgkdHJhbnNpdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb247XG59XG5cblxuLy8gVXNlciBzZWxlY3Rcbi8vIEZvciBzZWxlY3RpbmcgdGV4dCBvbiB0aGUgcGFnZVxuXG5AbWl4aW4gdXNlci1zZWxlY3QoJHNlbGVjdCkge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xuICAgICAtbW96LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiAkc2VsZWN0OyAvLyBJRTEwK1xuICAgICAgICAgIHVzZXItc2VsZWN0OiAkc2VsZWN0O1xufVxuIiwiLy8gQWxlcnRzXG5cbkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkdGV4dC1jb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJHRleHQtY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAxMiUpO1xuICB9XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDE3JSk7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcbiAgICB9XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgJixcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG5cbiAgLmJhZGdlIHtcbiAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG59XG4iLCIvLyBQYW5lbHNcblxuQG1peGluIHBhbmVsLXZhcmlhbnQoJGJvcmRlciwgJGhlYWRpbmctdGV4dC1jb2xvciwgJGhlYWRpbmctYmctY29sb3IsICRoZWFkaW5nLWJvcmRlcikge1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJiA+IC5wYW5lbC1oZWFkaW5nIHtcbiAgICBjb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRoZWFkaW5nLWJvcmRlcjtcblxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgfVxuICB9XG4gICYgPiAucGFuZWwtZm9vdGVyIHtcbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG59XG4iLCIvLyBQYWdpbmF0aW9uXG5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgPiBsaSB7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmLCBidXR0b24mIHRvIGEubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSwgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX1cbiAgfVxuXG4gIGEubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICB9XG4gICAgJi5hY3RpdmUsXG4gICAgJi5hY3RpdmU6aG92ZXIsXG4gICAgJi5hY3RpdmU6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogI2U1ZTVlNSkge1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpIC0gMSkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xufVxuIiwiLy8gRm9ybSB2YWxpZGF0aW9uIHN0YXRlc1xuLy9cbi8vIFVzZWQgaW4gZm9ybXMubGVzcyB0byBnZW5lcmF0ZSB0aGUgZm9ybSB2YWxpZGF0aW9uIENTUyBmb3Igd2FybmluZ3MsIGVycm9ycyxcbi8vIGFuZCBzdWNjZXNzZXMuXG5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkdGV4dC1jb2xvcjogIzU1NSwgJGJvcmRlci1jb2xvcjogI2NjYywgJGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjUpIHtcbiAgLy8gQ29sb3IgdGhlIGxhYmVsIGFuZCBoZWxwIHRleHRcbiAgLmhlbHAtYmxvY2ssXG4gIC5jb250cm9sLWxhYmVsLFxuICAucmFkaW8sXG4gIC5jaGVja2JveCxcbiAgLnJhZGlvLWlubGluZSxcbiAgLmNoZWNrYm94LWlubGluZSxcbiAgJi5yYWRpbyBsYWJlbCxcbiAgJi5jaGVja2JveCBsYWJlbCxcbiAgJi5yYWRpby1pbmxpbmUgbGFiZWwsXG4gICYuY2hlY2tib3gtaW5saW5lIGxhYmVsICB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB9XG4gIC8vIFNldCB0aGUgYm9yZGVyIGFuZCBib3ggc2hhZG93IG9uIHNwZWNpZmljIGlucHV0cyB0byBtYXRjaFxuICAuZm9ybS1jb250cm9sIHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSk7IC8vIFJlZGVjbGFyZSBzbyB0cmFuc2l0aW9ucyB3b3JrXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLWNvbG9yLCAxMCUpO1xuICAgICAgJHNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksIDAgMCA2cHggbGlnaHRlbigkYm9yZGVyLWNvbG9yLCAyMCUpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkc2hhZG93KTtcbiAgICB9XG4gIH1cbiAgLy8gU2V0IHZhbGlkYXRpb24gc3RhdGVzIGFsc28gZm9yIGFkZG9uc1xuICAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XG4gIH1cbiAgLy8gT3B0aW9uYWwgZmVlZGJhY2sgaWNvblxuICAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtYm9yZGVyLWZvY3VzYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygkY29sb3I6ICRpbnB1dC1ib3JkZXItZm9jdXMpIHtcbiAgJGNvbG9yLXJnYmE6IHJnYmEocmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKSwgLjYpO1xuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIFJlbGF0aXZlIHRleHQgc2l6ZSwgcGFkZGluZywgYW5kIGJvcmRlci1yYWRpaSBjaGFuZ2VzIGZvciBmb3JtIGNvbnRyb2xzLiBGb3Jcbi8vIGhvcml6b250YWwgc2l6aW5nLCB3cmFwIGNvbnRyb2xzIGluIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy4gYDxzZWxlY3Q+YFxuLy8gZWxlbWVudCBnZXRzIHNwZWNpYWwgbG92ZSBiZWNhdXNlIGl0J3Mgc3BlY2lhbCwgYW5kIHRoYXQncyBhIGZhY3QhXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiBpbnB1dC1zaXplKCRwYXJlbnQsICRpbnB1dC1oZWlnaHQsICRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgc2VsZWN0I3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgdGV4dGFyZWEjeyRwYXJlbnR9LFxuICBzZWxlY3RbbXVsdGlwbGVdI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG4iLCIvLyBQcm9ncmVzcyBiYXJzXG5cbkBtaXhpbiBwcm9ncmVzcy1iYXItdmFyaWFudCgkY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gIC8vIERlcHJlY2F0ZWQgcGFyZW50IGNsYXNzIHJlcXVpcmVtZW50IGFzIG9mIHYzLjIuMFxuICAucHJvZ3Jlc3Mtc3RyaXBlZCAmIHtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkO1xuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlID4gdGhlYWQgPiB0cixcbiAgLnRhYmxlID4gdGJvZHkgPiB0cixcbiAgLnRhYmxlID4gdGZvb3QgPiB0ciB7XG4gICAgPiB0ZC4jeyRzdGF0ZX0sXG4gICAgPiB0aC4jeyRzdGF0ZX0sXG4gICAgJi4jeyRzdGF0ZX0gPiB0ZCxcbiAgICAmLiN7JHN0YXRlfSA+IHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXG4gIC50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIge1xuICAgID4gdGQuI3skc3RhdGV9OmhvdmVyLFxuICAgID4gdGguI3skc3RhdGV9OmhvdmVyLFxuICAgICYuI3skc3RhdGV9OmhvdmVyID4gdGQsXG4gICAgJjpob3ZlciA+IC4jeyRzdGF0ZX0sXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0aCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG4iLCIvLyBHcmFkaWVudHNcblxuXG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd25cbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93blxufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbn1cbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG59XG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTApOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICM1NTUsICRvdXRlci1jb2xvcjogIzMzMykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiLy8gQ2xlYXJmaXhcbi8vXG4vLyBGb3IgbW9kZXJuIGJyb3dzZXJzXG4vLyAxLiBUaGUgc3BhY2UgY29udGVudCBpcyBvbmUgd2F5IHRvIGF2b2lkIGFuIE9wZXJhIGJ1ZyB3aGVuIHRoZVxuLy8gICAgY29udGVudGVkaXRhYmxlIGF0dHJpYnV0ZSBpcyBpbmNsdWRlZCBhbnl3aGVyZSBlbHNlIGluIHRoZSBkb2N1bWVudC5cbi8vICAgIE90aGVyd2lzZSBpdCBjYXVzZXMgc3BhY2UgdG8gYXBwZWFyIGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBlbGVtZW50c1xuLy8gICAgdGhhdCBhcmUgY2xlYXJmaXhlZC5cbi8vIDIuIFRoZSB1c2Ugb2YgYHRhYmxlYCByYXRoZXIgdGhhbiBgYmxvY2tgIGlzIG9ubHkgbmVjZXNzYXJ5IGlmIHVzaW5nXG4vLyAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXG4vL1xuLy8gU291cmNlOiBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay9cblxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7IC8vIDFcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMlxuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG4iLCIvLyBDZW50ZXItYWxpZ24gYSBibG9jayBsZXZlbCBlbGVtZW50XG5cbkBtaXhpbiBjZW50ZXItYmxvY2soKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuIiwiLy8gTmF2YmFyIHZlcnRpY2FsIGFsaWduXG4vL1xuLy8gVmVydGljYWxseSBjZW50ZXIgZWxlbWVudHMgaW4gdGhlIG5hdmJhci5cbi8vIEV4YW1wbGU6IGFuIGVsZW1lbnQgaGFzIGEgaGVpZ2h0IG9mIDMwcHgsIHNvIHdyaXRlIG91dCBgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbigzMHB4KTtgIHRvIGNhbGN1bGF0ZSB0aGUgYXBwcm9wcmlhdGUgdG9wIG1hcmdpbi5cblxuQG1peGluIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkZWxlbWVudC1oZWlnaHQpIHtcbiAgbWFyZ2luLXRvcDogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGk6IDEsICRsaXN0OiBcIi5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIikge1xuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgLy8gSW5uZXIgZ3V0dGVyIHZpYSBwYWRkaW5nXG4gICAgcGFkZGluZy1sZWZ0OiAgY2VpbCgoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cbn1cblxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MsICRpOiAxLCAkbGlzdDogXCIuY29sLSN7JGNsYXNzfS0jeyRpfVwiKSB7XG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wtI3skY2xhc3N9LSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cblxuQG1peGluIGNhbGMtZ3JpZC1jb2x1bW4oJGluZGV4LCAkY2xhc3MsICR0eXBlKSB7XG4gIEBpZiAoJHR5cGUgPT0gd2lkdGgpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LSN7JGluZGV4fSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1c2gtI3skaW5kZXh9IHtcbiAgICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0wIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVsbCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0jeyRpbmRleH0ge1xuICAgICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0wIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IG9mZnNldCkge1xuICAgIC5jb2wtI3skY2xhc3N9LW9mZnNldC0jeyRpbmRleH0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBsb29wLWdyaWQtY29sdW1ucygkY29sdW1ucywgJGNsYXNzLCAkdHlwZSkge1xuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICBAaW5jbHVkZSBjYWxjLWdyaWQtY29sdW1uKCRpLCAkY2xhc3MsICR0eXBlKTtcbiAgfVxufVxuXG5cbi8vIENyZWF0ZSBncmlkIGZvciBzcGVjaWZpYyBjbGFzc1xuQG1peGluIG1ha2UtZ3JpZCgkY2xhc3MpIHtcbiAgQGluY2x1ZGUgZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcyk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgd2lkdGgpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1bGwpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1c2gpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIG9mZnNldCk7XG59XG4iLCIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuLy8gQ2VudGVyZWQgY29udGFpbmVyIGVsZW1lbnRcbkBtaXhpbiBjb250YWluZXItZml4ZWQoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIC8vIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIC8vIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7IFxuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gQ3JlYXRlcyBhIHdyYXBwZXIgZm9yIGEgc2VyaWVzIG9mIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgbWFyZ2luLWxlZnQ6ICBjZWlsKCgkZ3V0dGVyIC8gLTIpKTtcbiAgbWFyZ2luLXJpZ2h0OiBmbG9vcigoJGd1dHRlciAvIC0yKSk7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgZXh0cmEgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2UteHMtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2Utc20tY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuXG4vLyBHZW5lcmF0ZSB0aGUgbWVkaXVtIGNvbHVtbnNcbkBtaXhpbiBtYWtlLW1kLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgdGhlIGxhcmdlIGNvbHVtbnNcbkBtaXhpbiBtYWtlLWxnLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbiIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLy9cbi8vIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4vLyAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxuLy8gICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuLy9cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAxXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuLy9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8gSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuLy8gYW5kIEZpcmVmb3guXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuLy9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuLy8gMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuLy9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gMlxufVxuXG4vL1xuLy8gUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbi8vIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4vL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4vLyBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4vL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gTGlua3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbi8vXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLy9cbi8vIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbi8vIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbi8vXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vL1xuLy8gQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuLy8gY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLy9cbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4vL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vLyBFbWJlZGRlZCBjb250ZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4vL1xuXG5pbWcge1xuICBib3JkZXI6IDA7XG59XG5cbi8vXG4vLyBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbi8vXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gR3JvdXBpbmcgY29udGVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuLy9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbi8vXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbn1cblxuLy9cbi8vIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vXG4vLyBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8vIEZvcm1zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbi8vIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbi8vXG5cbi8vXG4vLyAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4vLyAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbi8vIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4vLyAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbi8vXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAxXG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgbWFyZ2luOiAwOyAvLyAzXG59XG5cbi8vXG4vLyBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbi8vXG5cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuLy8gQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbi8vIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4vLyBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4vL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLy9cbi8vIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4vLyAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbi8vIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbi8vIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4vLyAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4vL1xuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8vIDFcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxuICBjdXJzb3I6IHBvaW50ZXI7IC8vIDNcbn1cblxuLy9cbi8vIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4vL1xuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4vL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbi8vIHRoZSBVQSBzdHlsZXNoZWV0LlxuLy9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vL1xuLy8gSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuLy8gRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbi8vXG4vLyAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuLy8gMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbi8vXG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbi8vIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4vLyBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4vL1xuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy9cbi8vIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy8gMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8yXG59XG5cbi8vXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbi8vIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbi8vIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuLy9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4vLyAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4vL1xuXG5sZWdlbmQge1xuICBib3JkZXI6IDA7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbi8vXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vXG4vLyBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4vLyBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbi8vXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vIFRhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwO1xufVxuIiwiLyohIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzcyAqL1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUHJpbnQgc3R5bGVzLlxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6IGg1YnAuY29tL3Jcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBtZWRpYSBwcmludCB7XG4gICAgKixcbiAgICAqOmJlZm9yZSxcbiAgICAqOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYSxcbiAgICBhOnZpc2l0ZWQge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICBhW2hyZWZdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgfVxuXG4gICAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gICAgfVxuXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgYVtocmVmXj1cIiNcIl06YWZ0ZXIsXG4gICAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG5cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICB0aGVhZCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgLy8gaDVicC5jb20vdFxuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgb3JwaGFuczogMztcbiAgICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5idG4sXG4gICAgLmRyb3B1cCA+IC5idG4ge1xuICAgICAgICA+IC5jYXJldCB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxhYmVsIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgdGQsXG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICB0aCxcbiAgICAgICAgdGQge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG59XG4iLCIvL1xuLy8gU2NhZmZvbGRpbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gUmVzZXQgdGhlIGJveC1zaXppbmdcbi8vXG4vLyBIZWFkcyB1cCEgVGhpcyByZXNldCBtYXkgY2F1c2UgY29uZmxpY3RzIHdpdGggc29tZSB0aGlyZC1wYXJ0eSB3aWRnZXRzLlxuLy8gRm9yIHJlY29tbWVuZGF0aW9ucyBvbiByZXNvbHZpbmcgc3VjaCBjb25mbGljdHMsIHNlZVxuLy8gaHR0cDovL2dldGJvb3RzdHJhcC5jb20vZ2V0dGluZy1zdGFydGVkLyN0aGlyZC1ib3gtc2l6aW5nXG4qIHtcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbn1cbio6YmVmb3JlLFxuKjphZnRlciB7XG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG59XG5cblxuLy8gQm9keSByZXNldFxuXG5odG1sIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XG59XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjsgXG59XG5cbi8vIFJlc2V0IGZvbnRzIGZvciByZWxldmFudCBlbGVtZW50c1xuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5cbi8vIExpbmtzXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgdGFiLWZvY3VzO1xuICB9XG59XG5cblxuLy8gRmlndXJlc1xuLy9cbi8vIFdlIHJlc2V0IHRoaXMgaGVyZSBiZWNhdXNlIHByZXZpb3VzbHkgTm9ybWFsaXplIGhhZCBubyBgZmlndXJlYCBtYXJnaW5zLiBUaGlzXG4vLyBlbnN1cmVzIHdlIGRvbid0IGJyZWFrIGFueW9uZSdzIHVzZSBvZiB0aGUgZWxlbWVudC5cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5cbi8vIEltYWdlc1xuXG5pbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi5pbWctcmVzcG9uc2l2ZSB7XG4gIEBpbmNsdWRlIGltZy1yZXNwb25zaXZlO1xufVxuXG4vLyBSb3VuZGVkIGNvcm5lcnNcbi5pbWctcm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlO1xufVxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgaXMgbWl4aW4tZWQgaW50byB0aHVtYm5haWxzLmxlc3MgZm9yIGAudGh1bWJuYWlsYC5cbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR0aHVtYm5haWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4ycyBlYXNlLWluLW91dCk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1yZXNwb25zaXZlKGlubGluZS1ibG9jayk7XG59XG5cbi8vIFBlcmZlY3QgY2lyY2xlXG4uaW1nLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTsgLy8gc2V0IHJhZGl1cyBpbiBwZXJjZW50c1xufVxuXG5cbi8vIEhvcml6b250YWwgcnVsZXNcblxuaHIge1xuICBtYXJnaW4tdG9wOiAgICAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGhyLWJvcmRlcjtcbn1cblxuXG4vLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xuLy9cbi8vIFNlZTogaHR0cDovL2ExMXlwcm9qZWN0LmNvbS9wb3N0cy9ob3ctdG8taGlkZS1jb250ZW50L1xuXG4uc3Itb25seSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gIH1cbn1cblxuXG4vLyBpT1MgXCJjbGlja2FibGUgZWxlbWVudHNcIiBmaXggZm9yIHJvbGU9XCJidXR0b25cIlxuLy9cbi8vIEZpeGVzIFwiY2xpY2thYmlsaXR5XCIgaXNzdWUgKGFuZCBtb3JlIGdlbmVyYWxseSwgdGhlIGZpcmluZyBvZiBldmVudHMgc3VjaCBhcyBmb2N1cyBhcyB3ZWxsKVxuLy8gZm9yIHRyYWRpdGlvbmFsbHkgbm9uLWZvY3VzYWJsZSBlbGVtZW50cyB3aXRoIHJvbGU9XCJidXR0b25cIlxuLy8gc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuIiwiLy9cbi8vIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSGVhZGluZ3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJGhlYWRpbmdzLXNtYWxsLWNvbG9yO1xuICB9XG59XG5cbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyB7XG4gIG1hcmdpbi10b3A6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogNjUlO1xuICB9XG59XG5oNCwgLmg0LFxuaDUsIC5oNSxcbmg2LCAuaDYge1xuICBtYXJnaW4tdG9wOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG4gIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcblxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgfVxufVxuXG5oMSwgLmgxIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgxOyB9XG5oMiwgLmgyIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgyOyB9XG5oMywgLmgzIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgzOyB9XG5oNCwgLmg0IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg0OyB9XG5oNSwgLmg1IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg1OyB9XG5oNiwgLmg2IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg2OyB9XG5cblxuLy8gQm9keSB0ZXh0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbnAge1xuICBtYXJnaW46IDAgMCAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG59XG5cbi5sZWFkIHtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBmb250LXNpemU6IGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAxLjE1KSk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlICogMS41KTtcbiAgfVxufVxuXG5cbi8vIEVtcGhhc2lzICYgbWlzY1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBFeDogKDEycHggc21hbGwgZm9udCAvIDE0cHggYmFzZSBmb250KSAqIDEwMCUgPSBhYm91dCA4NSVcbnNtYWxsLFxuLnNtYWxsIHtcbiAgZm9udC1zaXplOiBmbG9vcigoMTAwJSAqICRmb250LXNpemUtc21hbGwgLyAkZm9udC1zaXplLWJhc2UpKTtcbn1cblxubWFyayxcbi5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHN0YXRlLXdhcm5pbmctYmc7XG4gIHBhZGRpbmc6IC4yZW07XG59XG5cbi8vIEFsaWdubWVudFxuLnRleHQtbGVmdCAgICAgICAgICAgeyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4udGV4dC1yaWdodCAgICAgICAgICB7IHRleHQtYWxpZ246IHJpZ2h0OyB9XG4udGV4dC1jZW50ZXIgICAgICAgICB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuLnRleHQtanVzdGlmeSAgICAgICAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG4udGV4dC1ub3dyYXAgICAgICAgICB7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLy8gVHJhbnNmb3JtYXRpb25cbi50ZXh0LWxvd2VyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTsgfVxuLnRleHQtdXBwZXJjYXNlICAgICAgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4udGV4dC1jYXBpdGFsaXplICAgICB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG4udGV4dC1tdXRlZCB7XG4gIGNvbG9yOiAkdGV4dC1tdXRlZDtcbn1cblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1wcmltYXJ5JywgJGJyYW5kLXByaW1hcnkpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXN1Y2Nlc3MnLCAkc3RhdGUtc3VjY2Vzcy10ZXh0KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1pbmZvJywgJHN0YXRlLWluZm8tdGV4dCk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtd2FybmluZycsICRzdGF0ZS13YXJuaW5nLXRleHQpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LWRhbmdlcicsICRzdGF0ZS1kYW5nZXItdGV4dCk7XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcbi8vIEZvciBub3cgd2UnbGwgbGVhdmUgdGhlc2UgYWxvbmdzaWRlIHRoZSB0ZXh0IGNsYXNzZXMgdW50aWwgdjQgd2hlbiB3ZSBjYW5cbi8vIHNhZmVseSBzaGlmdCB0aGluZ3MgYXJvdW5kIChwZXIgU2VtVmVyIHJ1bGVzKS5cbi5iZy1wcmltYXJ5IHtcbiAgLy8gR2l2ZW4gdGhlIGNvbnRyYXN0IGhlcmUsIHRoaXMgaXMgdGhlIG9ubHkgY2xhc3MgdG8gaGF2ZSBpdHMgY29sb3IgaW52ZXJ0ZWRcbiAgLy8gYXV0b21hdGljYWxseS5cbiAgY29sb3I6ICNmZmY7XG59XG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctcHJpbWFyeScsICRicmFuZC1wcmltYXJ5KTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXN1Y2Nlc3MnLCAkc3RhdGUtc3VjY2Vzcy1iZyk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1pbmZvJywgJHN0YXRlLWluZm8tYmcpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctd2FybmluZycsICRzdGF0ZS13YXJuaW5nLWJnKTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLWRhbmdlcicsICRzdGF0ZS1kYW5nZXItYmcpO1xuXG5cbi8vIFBhZ2UgaGVhZGVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5wYWdlLWhlYWRlciB7XG4gIHBhZGRpbmctYm90dG9tOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpIC0gMSk7XG4gIG1hcmdpbjogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAqIDIpIDAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHBhZ2UtaGVhZGVyLWJvcmRlci1jb2xvcjtcbn1cblxuXG4vLyBMaXN0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBVbm9yZGVyZWQgYW5kIE9yZGVyZWQgbGlzdHNcbnVsLFxub2wge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG4gIHVsLFxuICBvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLyBMaXN0IG9wdGlvbnNcblxuLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGZyb20gYC5saXN0LXVuc3R5bGVkYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhcyBgQG1peGluIGxpc3QtdW5zdHlsZWRgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbn1cblxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG5cbiAgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgfVxufVxuXG4vLyBEZXNjcmlwdGlvbiBMaXN0c1xuZGwge1xuICBtYXJnaW4tdG9wOiAwOyAvLyBSZW1vdmUgYnJvd3NlciBkZWZhdWx0XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbn1cbmR0LFxuZGQge1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG59XG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuZGQge1xuICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcbn1cblxuLy8gSG9yaXpvbnRhbCBkZXNjcmlwdGlvbiBsaXN0c1xuLy9cbi8vIERlZmF1bHRzIHRvIGJlaW5nIHN0YWNrZWQgd2l0aG91dCBhbnkgb2YgdGhlIGJlbG93IHN0eWxlcyBhcHBsaWVkLCB1bnRpbCB0aGVcbi8vIGdyaWQgYnJlYWtwb2ludCBpcyByZWFjaGVkIChkZWZhdWx0IG9mIH43NjhweCkuXG5cbi5kbC1ob3Jpem9udGFsIHtcbiAgZGQge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4OyAvLyBDbGVhciB0aGUgZmxvYXRlZCBgZHRgIGlmIGFuIGVtcHR5IGBkZGAgaXMgcHJlc2VudFxuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBkdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAoJGRsLWhvcml6b250YWwtb2Zmc2V0IC0gMjApO1xuICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIEBpbmNsdWRlIHRleHQtb3ZlcmZsb3c7XG4gICAgfVxuICAgIGRkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkZGwtaG9yaXpvbnRhbC1vZmZzZXQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTWlzY1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBBYmJyZXZpYXRpb25zIGFuZCBhY3Jvbnltc1xuYWJiclt0aXRsZV0sXG4vLyBBZGQgZGF0YS0qIGF0dHJpYnV0ZSB0byBoZWxwIG91dCBvdXIgdG9vbHRpcCBwbHVnaW4sIHBlciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzUyNTdcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0ge1xuICBjdXJzb3I6IGhlbHA7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgJGFiYnItYm9yZGVyLWNvbG9yO1xufVxuLmluaXRpYWxpc20ge1xuICBmb250LXNpemU6IDkwJTtcbiAgQGV4dGVuZCAudGV4dC11cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG5ibG9ja3F1b3RlIHtcbiAgcGFkZGluZzogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbWFyZ2luOiAwIDAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBmb250LXNpemU6ICRibG9ja3F1b3RlLWZvbnQtc2l6ZTtcbiAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAkYmxvY2txdW90ZS1ib3JkZXItY29sb3I7XG5cbiAgcCxcbiAgdWwsXG4gIG9sIHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBOb3RlOiBEZXByZWNhdGVkIHNtYWxsIGFuZCAuc21hbGwgYXMgb2YgdjMuMS4wXG4gIC8vIENvbnRleHQ6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NjBcbiAgZm9vdGVyLFxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDgwJTsgLy8gYmFjayB0byBkZWZhdWx0IGZvbnQtc2l6ZVxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICBjb2xvcjogJGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDE0IFxcMDBBMCc7IC8vIGVtIGRhc2gsIG5ic3BcbiAgICB9XG4gIH1cbn1cblxuLy8gT3Bwb3NpdGUgYWxpZ25tZW50IG9mIGJsb2NrcXVvdGVcbi8vXG4vLyBIZWFkcyB1cDogYGJsb2NrcXVvdGUucHVsbC1yaWdodGAgaGFzIGJlZW4gZGVwcmVjYXRlZCBhcyBvZiB2My4xLjAuXG4uYmxvY2txdW90ZS1yZXZlcnNlLFxuYmxvY2txdW90ZS5wdWxsLXJpZ2h0IHtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCAkYmxvY2txdW90ZS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAvLyBBY2NvdW50IGZvciBjaXRhdGlvblxuICBmb290ZXIsXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgICY6YmVmb3JlIHsgY29udGVudDogJyc7IH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwQTAgXFwyMDE0JzsgLy8gbmJzcCwgZW0gZGFzaFxuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRyZXNzZXNcbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG59XG4iLCIvL1xuLy8gQ29kZSAoaW5saW5lIGFuZCBibG9jaylcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSW5saW5lIGFuZCBibG9jayBjb2RlIHN0eWxlc1xuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbn1cblxuLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBwYWRkaW5nOiAycHggNHB4O1xuICBmb250LXNpemU6IDkwJTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbn1cblxuLy8gVXNlciBpbnB1dCB0eXBpY2FsbHkgZW50ZXJlZCB2aWEga2V5Ym9hcmRcbmtiZCB7XG4gIHBhZGRpbmc6IDJweCA0cHg7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc21hbGw7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTFweCAwIHJnYmEoMCwwLDAsLjI1KTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtIDEpIC8gMik7XG4gIG1hcmdpbjogMCAwICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcbiAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlIC0gMSk7IC8vIDE0cHggdG8gMTNweFxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBjb2xvcjogJHByZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByZS1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJHByZS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6ICRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG4iLCIvL1xuLy8gR3JpZCBzeXN0ZW1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuLmNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lci1maXhlZDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICB3aWR0aDogJGNvbnRhaW5lci1zbTtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICB3aWR0aDogJGNvbnRhaW5lci1tZDtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICB3aWR0aDogJGNvbnRhaW5lci1sZztcbiAgfVxufVxuXG5cbi8vIEZsdWlkIGNvbnRhaW5lclxuLy9cbi8vIFV0aWxpemVzIHRoZSBtaXhpbiBtZWFudCBmb3IgZml4ZWQgd2lkdGggY29udGFpbmVycywgYnV0IHdpdGhvdXQgYW55IGRlZmluZWRcbi8vIHdpZHRoIGZvciBmbHVpZCwgZnVsbCB3aWR0aCBsYXlvdXRzLlxuXG4uY29udGFpbmVyLWZsdWlkIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyLWZpeGVkO1xufVxuXG5cbi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiBhbmQgY2xlYXIgdGhlIGZsb2F0cyBvZiB5b3VyIGNvbHVtbnMuXG5cbi5yb3cge1xuICBAaW5jbHVkZSBtYWtlLXJvdztcbn1cblxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucztcblxuXG4vLyBFeHRyYSBzbWFsbCBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIGV4dHJhIHNtYWxsIGRldmljZXMgbGlrZVxuLy8gc21hcnRwaG9uZXMuXG5cbkBpbmNsdWRlIG1ha2UtZ3JpZCh4cyk7XG5cblxuLy8gU21hbGwgZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgc21hbGwgZGV2aWNlIHJhbmdlLCBmcm9tIHBob25lc1xuLy8gdG8gdGFibGV0cy5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChzbSk7XG59XG5cblxuLy8gTWVkaXVtIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIGRlc2t0b3AgZGV2aWNlIHJhbmdlLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKG1kKTtcbn1cblxuXG4vLyBMYXJnZSBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBsYXJnZSBkZXNrdG9wIGRldmljZSByYW5nZS5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChsZyk7XG59XG4iLCIvL1xuLy8gVGFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnO1xufVxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxudGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5cbi8vIEJhc2VsaW5lIHN0eWxlc1xuXG4udGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIC8vIENlbGxzXG4gID4gdGhlYWQsXG4gID4gdGJvZHksXG4gID4gdGZvb3Qge1xuICAgID4gdHIge1xuICAgICAgPiB0aCxcbiAgICAgID4gdGQge1xuICAgICAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBCb3R0b20gYWxpZ24gZm9yIGNvbHVtbiBoZWFkaW5nc1xuICA+IHRoZWFkID4gdHIgPiB0aCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuICAvLyBSZW1vdmUgdG9wIGJvcmRlciBmcm9tIHRoZWFkIGJ5IGRlZmF1bHRcbiAgPiBjYXB0aW9uICsgdGhlYWQsXG4gID4gY29sZ3JvdXAgKyB0aGVhZCxcbiAgPiB0aGVhZDpmaXJzdC1jaGlsZCB7XG4gICAgPiB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIEFjY291bnQgZm9yIG11bHRpcGxlIHRib2R5IGluc3RhbmNlc1xuICA+IHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gTmVzdGluZ1xuICAudGFibGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xuICB9XG59XG5cblxuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuXG4udGFibGUtY29uZGVuc2VkIHtcbiAgPiB0aGVhZCxcbiAgPiB0Ym9keSxcbiAgPiB0Zm9vdCB7XG4gICAgPiB0ciB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIHBhZGRpbmc6ICR0YWJsZS1jb25kZW5zZWQtY2VsbC1wYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJvcmRlcmVkIHZlcnNpb25cbi8vXG4vLyBBZGQgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gID4gdGhlYWQsXG4gID4gdGJvZHksXG4gID4gdGZvb3Qge1xuICAgID4gdHIge1xuICAgICAgPiB0aCxcbiAgICAgID4gdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IHRoZWFkID4gdHIge1xuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gWmVicmEtc3RyaXBpbmdcbi8vXG4vLyBEZWZhdWx0IHplYnJhLXN0cmlwZSBzdHlsZXMgKGFsdGVybmF0aW5nIGdyYXkgYW5kIHRyYW5zcGFyZW50IGJhY2tncm91bmRzKVxuXG4udGFibGUtc3RyaXBlZCB7XG4gID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZShvZGQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmctYWNjZW50O1xuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICA+IHRib2R5ID4gdHI6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZy1ob3ZlcjtcbiAgfVxufVxuXG5cbi8vIFRhYmxlIGNlbGwgc2l6aW5nXG4vL1xuLy8gUmVzZXQgZGVmYXVsdCB0YWJsZSBiZWhhdmlvclxuXG50YWJsZSBjb2xbY2xhc3MqPVwiY29sLVwiXSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7IC8vIFByZXZlbnQgYm9yZGVyIGhpZGluZyBpbiBGaXJlZm94IGFuZCBJRTktMTEgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjIzKVxuICBmbG9hdDogbm9uZTtcbiAgZGlzcGxheTogdGFibGUtY29sdW1uO1xufVxudGFibGUge1xuICB0ZCxcbiAgdGgge1xuICAgICZbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljOyAvLyBQcmV2ZW50IGJvcmRlciBoaWRpbmcgaW4gRmlyZWZveCBhbmQgSUU5LTExIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTYyMylcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJsZSBiYWNrZ3JvdW5kc1xuLy9cbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4vLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuXG4vLyBHZW5lcmF0ZSB0aGUgY29udGV4dHVhbCB2YXJpYW50c1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ2FjdGl2ZScsICR0YWJsZS1iZy1hY3RpdmUpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ3N1Y2Nlc3MnLCAkc3RhdGUtc3VjY2Vzcy1iZyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnaW5mbycsICRzdGF0ZS1pbmZvLWJnKTtcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCd3YXJuaW5nJywgJHN0YXRlLXdhcm5pbmctYmcpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ2RhbmdlcicsICRzdGF0ZS1kYW5nZXItYmcpO1xuXG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gV3JhcCB5b3VyIHRhYmxlcyBpbiBgLnRhYmxlLXJlc3BvbnNpdmVgIGFuZCB3ZSdsbCBtYWtlIHRoZW0gbW9iaWxlIGZyaWVuZGx5XG4vLyBieSBlbmFibGluZyBob3Jpem9udGFsIHNjcm9sbGluZy4gT25seSBhcHBsaWVzIDw3NjhweC4gRXZlcnl0aGluZyBhYm92ZSB0aGF0XG4vLyB3aWxsIGRpc3BsYXkgbm9ybWFsbHkuXG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgbWluLWhlaWdodDogMC4wMSU7IC8vIFdvcmthcm91bmQgZm9yIElFOSBidWcgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE0ODM3KVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAqIDAuNzUpO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gICAgLy8gVGlnaHRlbiB1cCBzcGFjaW5nXG4gICAgPiAudGFibGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgLy8gRW5zdXJlIHRoZSBjb250ZW50IGRvZXNuJ3Qgd3JhcFxuICAgICAgPiB0aGVhZCxcbiAgICAgID4gdGJvZHksXG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0ciB7XG4gICAgICAgICAgPiB0aCxcbiAgICAgICAgICA+IHRkIHtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU3BlY2lhbCBvdmVycmlkZXMgZm9yIHRoZSBib3JkZXJlZCB0YWJsZXNcbiAgICA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICBib3JkZXI6IDA7XG5cbiAgICAgIC8vIE51a2UgdGhlIGFwcHJvcHJpYXRlIGJvcmRlcnMgc28gdGhhdCB0aGUgcGFyZW50IGNhbiBoYW5kbGUgdGhlbVxuICAgICAgPiB0aGVhZCxcbiAgICAgID4gdGJvZHksXG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0ciB7XG4gICAgICAgICAgPiB0aDpmaXJzdC1jaGlsZCxcbiAgICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgICAgPiB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gT25seSBudWtlIHRoZSBsYXN0IHJvdydzIGJvdHRvbS1ib3JkZXIgaW4gYHRib2R5YCBhbmQgYHRmb290YCBzaW5jZVxuICAgICAgLy8gY2hhbmNlcyBhcmUgdGhlcmUgd2lsbCBiZSBvbmx5IG9uZSBgdHJgIGluIGEgYHRoZWFkYCBhbmQgdGhhdCB3b3VsZFxuICAgICAgLy8gcmVtb3ZlIHRoZSBib3JkZXIgYWx0b2dldGhlci5cbiAgICAgID4gdGJvZHksXG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICA+IHRoLFxuICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEZvcm1zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIE5vcm1hbGl6ZSBub24tY29udHJvbHNcbi8vXG4vLyBSZXN0eWxlIGFuZCBiYXNlbGluZSBub24tY29udHJvbCBmb3JtIGVsZW1lbnRzLlxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xuICAvLyBDaHJvbWUgYW5kIEZpcmVmb3ggc2V0IGEgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4gIC8vIHNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGl0IGJlaGF2ZXMgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTkuXG4gIG1pbi13aWR0aDogMDtcbn1cblxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogJGxlZ2VuZC1jb2xvcjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxlZ2VuZC1ib3JkZXItY29sb3I7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIEZvcmNlIElFOCB0byB3cmFwIGxvbmcgY29udGVudCAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTMxNDEpXG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cblxuLy8gTm9ybWFsaXplIGZvcm0gY29udHJvbHNcbi8vXG4vLyBXaGlsZSBtb3N0IG9mIG91ciBmb3JtIHN0eWxlcyByZXF1aXJlIGV4dHJhIGNsYXNzZXMsIHNvbWUgYmFzaWMgbm9ybWFsaXphdGlvblxuLy8gaXMgcmVxdWlyZWQgdG8gZW5zdXJlIG9wdGltdW0gZGlzcGxheSB3aXRoIG9yIHdpdGhvdXQgdGhvc2UgY2xhc3NlcyB0byBiZXR0ZXJcbi8vIGFkZHJlc3MgYnJvd3NlciBpbmNvbnNpc3RlbmNpZXMuXG5cbi8vIE92ZXJyaWRlIGNvbnRlbnQtYm94IGluIE5vcm1hbGl6ZSAoKiBpc24ndCBzcGVjaWZpYyBlbm91Z2gpXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbn1cblxuLy8gUG9zaXRpb24gcmFkaW9zIGFuZCBjaGVja2JveGVzIGJldHRlclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgbWFyZ2luOiA0cHggMCAwO1xuICBtYXJnaW4tdG9wOiAxcHggXFw5OyAvLyBJRTgtOVxuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG5pbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBNYWtlIHJhbmdlIGlucHV0cyBiZWhhdmUgbGlrZSB0ZXh0dWFsIGZvcm0gY29udHJvbHNcbmlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gTWFrZSBtdWx0aXBsZSBzZWxlY3QgZWxlbWVudHMgaGVpZ2h0IG5vdCBmaXhlZFxuc2VsZWN0W211bHRpcGxlXSxcbnNlbGVjdFtzaXplXSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gRm9jdXMgZm9yIGZpbGUsIHJhZGlvLCBhbmQgY2hlY2tib3hcbmlucHV0W3R5cGU9XCJmaWxlXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzIHtcbiAgQGluY2x1ZGUgdGFiLWZvY3VzO1xufVxuXG4vLyBBZGp1c3Qgb3V0cHV0IGVsZW1lbnRcbm91dHB1dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbn1cblxuXG4vLyBDb21tb24gZm9ybSBjb250cm9sc1xuLy9cbi8vIFNoYXJlZCBzaXplIGFuZCB0eXBlIHJlc2V0cyBmb3IgZm9ybSBjb250cm9scy4gQXBwbHkgYC5mb3JtLWNvbnRyb2xgIHRvIGFueVxuLy8gb2YgdGhlIGZvbGxvd2luZyBmb3JtIGNvbnRyb2xzOlxuLy9cbi8vIHNlbGVjdFxuLy8gdGV4dGFyZWFcbi8vIGlucHV0W3R5cGU9XCJ0ZXh0XCJdXG4vLyBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl1cbi8vIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXVxuLy8gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZVwiXVxuLy8gaW5wdXRbdHlwZT1cIm1vbnRoXCJdXG4vLyBpbnB1dFt0eXBlPVwidGltZVwiXVxuLy8gaW5wdXRbdHlwZT1cIndlZWtcIl1cbi8vIGlucHV0W3R5cGU9XCJudW1iZXJcIl1cbi8vIGlucHV0W3R5cGU9XCJlbWFpbFwiXVxuLy8gaW5wdXRbdHlwZT1cInVybFwiXVxuLy8gaW5wdXRbdHlwZT1cInNlYXJjaFwiXVxuLy8gaW5wdXRbdHlwZT1cInRlbFwiXVxuLy8gaW5wdXRbdHlwZT1cImNvbG9yXCJdXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlOyAvLyBNYWtlIGlucHV0cyBhdCBsZWFzdCB0aGUgaGVpZ2h0IG9mIHRoZWlyIGJ1dHRvbiBjb3VudGVycGFydCAoYmFzZSBsaW5lLWhlaWdodCArIHBhZGRpbmcgKyBib3JkZXIpXG4gIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcbiAgYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXM7IC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIDxzZWxlY3Q+cyBpbiBDU1MuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlci1jb2xvciBlYXNlLWluLW91dCAuMTVzLCBib3gtc2hhZG93IGVhc2UtaW4tb3V0IC4xNXMpO1xuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLWZvY3VzO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gIEBpbmNsdWRlIHBsYWNlaG9sZGVyO1xuXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXG4gIC8vXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cbiAgJltkaXNhYmxlZF0sXG4gICZbcmVhZG9ubHldLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnLWRpc2FibGVkO1xuICAgIG9wYWNpdHk6IDE7IC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTVcbiAgfVxuXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIHRleHRhcmVhJiB0byB0ZXh0YXJlYS5mb3JtLWNvbnRyb2xcbn1cblxuLy8gUmVzZXQgaGVpZ2h0IGZvciBgdGV4dGFyZWFgc1xudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8vIFNlYXJjaCBpbnB1dHMgaW4gaU9TXG4vL1xuLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuLy8gYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4vLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5cbi8vIFNwZWNpYWwgc3R5bGVzIGZvciBpT1MgdGVtcG9yYWwgaW5wdXRzXG4vL1xuLy8gSW4gTW9iaWxlIFNhZmFyaSwgc2V0dGluZyBgZGlzcGxheTogYmxvY2tgIG9uIHRlbXBvcmFsIGlucHV0cyBjYXVzZXMgdGhlXG4vLyB0ZXh0IHdpdGhpbiB0aGUgaW5wdXQgdG8gYmVjb21lIHZlcnRpY2FsbHkgbWlzYWxpZ25lZC4gQXMgYSB3b3JrYXJvdW5kLCB3ZVxuLy8gc2V0IGEgcGl4ZWwgbGluZS1oZWlnaHQgdGhhdCBtYXRjaGVzIHRoZSBnaXZlbiBoZWlnaHQgb2YgdGhlIGlucHV0LCBidXQgb25seVxuLy8gZm9yIFNhZmFyaS4gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk4NDhcbi8vXG4vLyBOb3RlIHRoYXQgYXMgb2YgOC4zLCBpT1MgZG9lc24ndCBzdXBwb3J0IGBkYXRldGltZWAgb3IgYHdlZWtgLlxuXG5AbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAwKSB7XG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICBpbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAgICYuZm9ybS1jb250cm9sIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7XG4gICAgfVxuXG4gICAgJi5pbnB1dC1zbSxcbiAgICAuaW5wdXQtZ3JvdXAtc20gJiB7XG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICB9XG5cbiAgICAmLmlucHV0LWxnLFxuICAgIC5pbnB1dC1ncm91cC1sZyAmIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xufVxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXG5cbi5yYWRpbyxcbi5jaGVja2JveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgbGFiZWwge1xuICAgIG1pbi1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDsgLy8gRW5zdXJlIHRoZSBpbnB1dCBkb2Vzbid0IGp1bXAgd2hlbiB0aGVyZSBpcyBubyB0ZXh0XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbi5yYWRpbyBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4ucmFkaW8taW5saW5lIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbi5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG4uY2hlY2tib3gtaW5saW5lIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICBtYXJnaW4tdG9wOiA0cHggXFw5O1xufVxuXG4ucmFkaW8gKyAucmFkaW8sXG4uY2hlY2tib3ggKyAuY2hlY2tib3gge1xuICBtYXJnaW4tdG9wOiAtNXB4OyAvLyBNb3ZlIHVwIHNpYmxpbmcgcmFkaW9zIG9yIGNoZWNrYm94ZXMgZm9yIHRpZ2h0ZXIgc3BhY2luZ1xufVxuXG4vLyBSYWRpb3MgYW5kIGNoZWNrYm94ZXMgb24gc2FtZSBsaW5lXG4ucmFkaW8taW5saW5lLFxuLmNoZWNrYm94LWlubGluZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5yYWRpby1pbmxpbmUgKyAucmFkaW8taW5saW5lLFxuLmNoZWNrYm94LWlubGluZSArIC5jaGVja2JveC1pbmxpbmUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tbGVmdDogMTBweDsgLy8gc3BhY2Ugb3V0IGNvbnNlY3V0aXZlIGlubGluZSBjb250cm9sc1xufVxuXG4vLyBBcHBseSBzYW1lIGRpc2FibGVkIGN1cnNvciB0d2VhayBhcyBmb3IgaW5wdXRzXG4vLyBTb21lIHNwZWNpYWwgY2FyZSBpcyBuZWVkZWQgYmVjYXVzZSA8bGFiZWw+cyBkb24ndCBpbmhlcml0IHRoZWlyIHBhcmVudCdzIGBjdXJzb3JgLlxuLy9cbi8vIE5vdGU6IE5laXRoZXIgcmFkaW9zIG5vciBjaGVja2JveGVzIGNhbiBiZSByZWFkb25seS5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG59XG4vLyBUaGVzZSBjbGFzc2VzIGFyZSB1c2VkIGRpcmVjdGx5IG9uIDxsYWJlbD5zXG4ucmFkaW8taW5saW5lLFxuLmNoZWNrYm94LWlubGluZSB7XG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cbn1cbi8vIFRoZXNlIGNsYXNzZXMgYXJlIHVzZWQgb24gZWxlbWVudHMgd2l0aCA8bGFiZWw+IGRlc2NlbmRhbnRzXG4ucmFkaW8sXG4uY2hlY2tib3gge1xuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgbGFiZWwge1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFN0YXRpYyBmb3JtIGNvbnRyb2wgdGV4dFxuLy9cbi8vIEFwcGx5IGNsYXNzIHRvIGEgYHBgIGVsZW1lbnQgdG8gbWFrZSBhbnkgc3RyaW5nIG9mIHRleHQgYWxpZ24gd2l0aCBsYWJlbHMgaW5cbi8vIGEgaG9yaXpvbnRhbCBmb3JtIGxheW91dC5cblxuLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAvLyBTaXplIGl0IGFwcHJvcHJpYXRlbHkgbmV4dCB0byByZWFsIGZvcm0gY29udHJvbHNcbiAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XG4gIHBhZGRpbmctYm90dG9tOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xuICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gZnJvbSBgcGBcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICRmb250LXNpemUtYmFzZSk7XG5cbiAgJi5pbnB1dC1sZyxcbiAgJi5pbnB1dC1zbSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gVGhlIGAuZm9ybS1ncm91cC0qIGZvcm0tY29udHJvbGAgdmFyaWF0aW9ucyBhcmUgc2FkbHkgZHVwbGljYXRlZCB0byBhdm9pZCB0aGVcbi8vIGlzc3VlIGRvY3VtZW50ZWQgaW4gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNTA3NC5cblxuQGluY2x1ZGUgaW5wdXQtc2l6ZSgnLmlucHV0LXNtJywgJGlucHV0LWhlaWdodC1zbWFsbCwgJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGwpO1xuLmZvcm0tZ3JvdXAtc20ge1xuICAuZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gICAgcGFkZGluZzogJHBhZGRpbmctc21hbGwtdmVydGljYWwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zbWFsbDtcbiAgICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbDtcbiAgfVxuICBzZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gIH1cbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sLFxuICBzZWxlY3RbbXVsdGlwbGVdLmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gICAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICRmb250LXNpemUtc21hbGwpO1xuICAgIHBhZGRpbmc6ICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCArIDEpICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtc21hbGw7XG4gIH1cbn1cblxuQGluY2x1ZGUgaW5wdXQtc2l6ZSgnLmlucHV0LWxnJywgJGlucHV0LWhlaWdodC1sYXJnZSwgJHBhZGRpbmctbGFyZ2UtdmVydGljYWwsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRmb250LXNpemUtbGFyZ2UsICRsaW5lLWhlaWdodC1sYXJnZSwgJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2UpO1xuLmZvcm0tZ3JvdXAtbGcge1xuICAuZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gICAgcGFkZGluZzogJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sYXJnZTtcbiAgICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgfVxuICBzZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gIH1cbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sLFxuICBzZWxlY3RbbXVsdGlwbGVdLmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gICAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICRmb250LXNpemUtbGFyZ2UpO1xuICAgIHBhZGRpbmc6ICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCArIDEpICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtbGFyZ2U7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgZmVlZGJhY2sgc3RhdGVzXG4vL1xuLy8gQXBwbHkgY29udGV4dHVhbCBhbmQgc2VtYW50aWMgc3RhdGVzIHRvIGluZGl2aWR1YWwgZm9ybSBjb250cm9scy5cblxuLmhhcy1mZWVkYmFjayB7XG4gIC8vIEVuYWJsZSBhYnNvbHV0ZSBwb3NpdGlvbmluZ1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLy8gRW5zdXJlIGljb25zIGRvbid0IG92ZXJsYXAgdGV4dFxuICAuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAoJGlucHV0LWhlaWdodC1iYXNlICogMS4yNSk7XG4gIH1cbn1cbi8vIEZlZWRiYWNrIGljb24gKHJlcXVpcmVzIC5nbHlwaGljb24gY2xhc3Nlcylcbi5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDI7IC8vIEVuc3VyZSBpY29uIGlzIGFib3ZlIGlucHV0IGdyb3Vwc1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uaW5wdXQtbGcgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmlucHV0LWdyb3VwLWxnICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcbi5mb3JtLWdyb3VwLWxnIC5mb3JtLWNvbnRyb2wgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgd2lkdGg6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG59XG4uaW5wdXQtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmlucHV0LWdyb3VwLXNtICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcbi5mb3JtLWdyb3VwLXNtIC5mb3JtLWNvbnRyb2wgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgd2lkdGg6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG59XG5cbi8vIEZlZWRiYWNrIHN0YXRlc1xuLmhhcy1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHN0YXRlLXN1Y2Nlc3MtdGV4dCwgJHN0YXRlLXN1Y2Nlc3MtdGV4dCwgJHN0YXRlLXN1Y2Nlc3MtYmcpO1xufVxuLmhhcy13YXJuaW5nIHtcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHN0YXRlLXdhcm5pbmctdGV4dCwgJHN0YXRlLXdhcm5pbmctdGV4dCwgJHN0YXRlLXdhcm5pbmctYmcpO1xufVxuLmhhcy1lcnJvciB7XG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRzdGF0ZS1kYW5nZXItdGV4dCwgJHN0YXRlLWRhbmdlci10ZXh0LCAkc3RhdGUtZGFuZ2VyLWJnKTtcbn1cblxuLy8gUmVwb3NpdGlvbiBmZWVkYmFjayBpY29uIGlmIGlucHV0IGhhcyB2aXNpYmxlIGxhYmVsIGFib3ZlXG4uaGFzLWZlZWRiYWNrIGxhYmVsIHtcblxuICAmIH4gLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgIHRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArIDUpOyAvLyBIZWlnaHQgb2YgdGhlIGBsYWJlbGAgYW5kIGl0cyBtYXJnaW5cbiAgfVxuICAmLnNyLW9ubHkgfiAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICAgdG9wOiAwO1xuICB9XG59XG5cblxuLy8gSGVscCB0ZXh0XG4vL1xuLy8gQXBwbHkgdG8gYW55IGVsZW1lbnQgeW91IHdpc2ggdG8gY3JlYXRlIGxpZ2h0IHRleHQgZm9yIHBsYWNlbWVudCBpbW1lZGlhdGVseVxuLy8gYmVsb3cgYSBmb3JtIGNvbnRyb2wuIFVzZSBmb3IgZ2VuZXJhbCBoZWxwLCBmb3JtYXR0aW5nLCBvciBpbnN0cnVjdGlvbmFsIHRleHQuXG5cbi5oZWxwLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7IC8vIGFjY291bnQgZm9yIGFueSBlbGVtZW50IHVzaW5nIGhlbHAtYmxvY2tcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjb2xvcjogbGlnaHRlbigkdGV4dC1jb2xvciwgMjUlKTsgLy8gbGlnaHRlbiB0aGUgdGV4dCBzb21lIGZvciBjb250cmFzdFxufVxuXG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgaXMgbWl4aW4tZWQgaW50byBgLm5hdmJhci1mb3JtYCBpbiBuYXZiYXJzLmxlc3MuXG5cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBmcm9tIGAuZm9ybS1pbmxpbmVgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcbkBtaXhpbiBmb3JtLWlubGluZSB7XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIEluIG5hdmJhci1mb3JtLCBhbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAuaW5wdXQtZ3JvdXAtYWRkb24sXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuLFxuICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElucHV0IGdyb3VwcyBuZWVkIHRoYXQgMTAwJSB3aWR0aCB0aG91Z2hcbiAgICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5yYWRpbyxcbiAgICAuY2hlY2tib3gge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICAuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC8vIFJlLW92ZXJyaWRlIHRoZSBmZWVkYmFjayBpY29uLlxuICAgIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG59XG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYXMgYEBtaXhpbiBmb3JtLWlubGluZWAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuLmZvcm0taW5saW5lIHtcbiAgQGluY2x1ZGUgZm9ybS1pbmxpbmU7XG59XG5cblxuXG4vLyBIb3Jpem9udGFsIGZvcm1zXG4vL1xuLy8gSG9yaXpvbnRhbCBmb3JtcyBhcmUgYnVpbHQgb24gZ3JpZCBjbGFzc2VzIGFuZCBhbGxvdyB5b3UgdG8gY3JlYXRlIGZvcm1zIHdpdGhcbi8vIGxhYmVscyBvbiB0aGUgbGVmdCBhbmQgaW5wdXRzIG9uIHRoZSByaWdodC5cblxuLmZvcm0taG9yaXpvbnRhbCB7XG5cbiAgLy8gQ29uc2lzdGVudCB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzXG4gIC8vXG4gIC8vIExhYmVscyBhbHNvIGdldCBzb21lIHJlc2V0IHN0eWxlcywgYnV0IHRoYXQgaXMgc2NvcGVkIHRvIGEgbWVkaWEgcXVlcnkgYmVsb3cuXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94LFxuICAucmFkaW8taW5saW5lLFxuICAuY2hlY2tib3gtaW5saW5lIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7IC8vIERlZmF1bHQgcGFkZGluZyBwbHVzIGEgYm9yZGVyXG4gIH1cbiAgLy8gQWNjb3VudCBmb3IgcGFkZGluZyB3ZSdyZSBhZGRpbmcgdG8gZW5zdXJlIHRoZSBhbGlnbm1lbnQgYW5kIG9mIGhlbHAgdGV4dFxuICAvLyBhbmQgb3RoZXIgY29udGVudCBiZWxvdyBpdGVtc1xuICAucmFkaW8sXG4gIC5jaGVja2JveCB7XG4gICAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSkpO1xuICB9XG5cbiAgLy8gTWFrZSBmb3JtIGdyb3VwcyBiZWhhdmUgbGlrZSByb3dzXG4gIC5mb3JtLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdztcbiAgfVxuXG4gIC8vIFJlc2V0IHNwYWNpbmcgYW5kIHJpZ2h0IGFsaWduIGxhYmVscywgYnV0IHNjb3BlIHRvIG1lZGlhIHF1ZXJpZXMgc28gdGhhdFxuICAvLyBsYWJlbHMgb24gbmFycm93IHZpZXdwb3J0cyBzdGFjayB0aGUgc2FtZSBhcyBhIGRlZmF1bHQgZm9ybSBleGFtcGxlLlxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAuY29udHJvbC1sYWJlbCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTsgLy8gRGVmYXVsdCBwYWRkaW5nIHBsdXMgYSBib3JkZXJcbiAgICB9XG4gIH1cblxuICAvLyBWYWxpZGF0aW9uIHN0YXRlc1xuICAvL1xuICAvLyBSZXBvc2l0aW9uIHRoZSBpY29uIGJlY2F1c2UgaXQncyBub3cgd2l0aGluIGEgZ3JpZCBjb2x1bW4gYW5kIGNvbHVtbnMgaGF2ZVxuICAvLyBgcG9zaXRpb246IHJlbGF0aXZlO2Agb24gdGhlbS4gQWxzbyBhY2NvdW50cyBmb3IgdGhlIGdyaWQgZ3V0dGVyIHBhZGRpbmcuXG4gIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cblxuICAvLyBGb3JtIGdyb3VwIHNpemVzXG4gIC8vXG4gIC8vIFF1aWNrIHV0aWxpdHkgY2xhc3MgZm9yIGFwcGx5aW5nIGAuaW5wdXQtbGdgIGFuZCBgLmlucHV0LXNtYCBzdHlsZXMgdG8gdGhlXG4gIC8vIGlucHV0cyBhbmQgbGFiZWxzIHdpdGhpbiBhIGAuZm9ybS1ncm91cGAuXG4gIC5mb3JtLWdyb3VwLWxnIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICgoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgKiAkbGluZS1oZWlnaHQtbGFyZ2UpICsgMSk7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm0tZ3JvdXAtc20ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICsgMSk7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCdXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2Ugc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBGb3IgaW5wdXQuYnRuXG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGxldHRlci1zcGFjaW5nOiA1cHg7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLWJhc2UtdmVydGljYWwsICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1iYXNlIC0gMiwgJGxpbmUtaGVpZ2h0LWJhc2UsICRidG4tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgQGluY2x1ZGUgdXNlci1zZWxlY3Qobm9uZSk7XG5cbiAgJixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgQGluY2x1ZGUgdGFiLWZvY3VzO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiAkYnRuLWRlZmF1bHQtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDNweCA1cHggcmdiYSgwLDAsMCwwKSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC42NSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiB0byBhLmJ0blxufVxuXG5hLmJ0biB7XG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWRlZmF1bHQge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWRlZmF1bHQtY29sb3IsICRidG4tZGVmYXVsdC1iZywgJGJ0bi1kZWZhdWx0LWJvcmRlcik7XG59XG4uYnRuLXByaW1hcnkge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXByaW1hcnktY29sb3IsICRidG4tcHJpbWFyeS1iZywgJGJ0bi1wcmltYXJ5LWJvcmRlcik7XG59XG4vLyBTdWNjZXNzIGFwcGVhcnMgYXMgZ3JlZW5cbi5idG4tc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tc3VjY2Vzcy1jb2xvciwgJGJ0bi1zdWNjZXNzLWJnLCAkYnRuLXN1Y2Nlc3MtYm9yZGVyKTtcbn1cbi8vIEluZm8gYXBwZWFycyBhcyBibHVlLWdyZWVuXG4uYnRuLWluZm8ge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWluZm8tY29sb3IsICRidG4taW5mby1iZywgJGJ0bi1pbmZvLWJvcmRlcik7XG59XG4vLyBXYXJuaW5nIGFwcGVhcnMgYXMgb3JhbmdlXG4uYnRuLXdhcm5pbmcge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXdhcm5pbmctY29sb3IsICRidG4td2FybmluZy1iZywgJGJ0bi13YXJuaW5nLWJvcmRlcik7XG59XG4vLyBEYW5nZXIgYW5kIGVycm9yIGFwcGVhciBhcyByZWRcbi5idG4tZGFuZ2VyIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1kYW5nZXItY29sb3IsICRidG4tZGFuZ2VyLWJnLCAkYnRuLWRhbmdlci1ib3JkZXIpO1xufVxuXG5cbi8vIExpbmsgYnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICYsXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCdXR0b24gU2l6ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tbGcge1xuICAvLyBsaW5lLWhlaWdodDogZW5zdXJlIGV2ZW4tbnVtYmVyZWQgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIGxhcmdlIGlucHV0XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWxhcmdlIC0gNiwgJGxpbmUtaGVpZ2h0LWxhcmdlLCAkYnRuLWJvcmRlci1yYWRpdXMtbGFyZ2UpO1xufVxuLmJ0bi1zbSB7XG4gIC8vIGxpbmUtaGVpZ2h0OiBlbnN1cmUgcHJvcGVyIGhlaWdodCBvZiBidXR0b24gbmV4dCB0byBzbWFsbCBpbnB1dFxuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkYnRuLWJvcmRlci1yYWRpdXMtc21hbGwpO1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xufVxuLmJ0bi14cyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXhzLXZlcnRpY2FsLCAkcGFkZGluZy14cy1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkbGluZS1oZWlnaHQtc21hbGwsICRidG4tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG59XG5cblxuLy8gQmxvY2sgYnV0dG9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBWZXJ0aWNhbGx5IHNwYWNlIG91dCBtdWx0aXBsZSBibG9jayBidXR0b25zXG4uYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLy8gU3BlY2lmaWNpdHkgb3ZlcnJpZGVzXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gICYuYnRuLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy9cbi8vIENvbXBvbmVudCBhbmltYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBIZWFkcyB1cCFcbi8vXG4vLyBXZSBkb24ndCB1c2UgdGhlIGAub3BhY2l0eSgpYCBtaXhpbiBoZXJlIHNpbmNlIGl0IGNhdXNlcyBhIGJ1ZyB3aXRoIHRleHRcbi8vIGZpZWxkcyBpbiBJRTctOC4gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zNTUyLlxuXG4uZmFkZSB7XG4gIG9wYWNpdHk6IDA7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAuMTVzIGxpbmVhcik7XG4gICYuaW4ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmNvbGxhcHNlIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICAmLmluICAgICAgeyBkaXNwbGF5OiBibG9jazsgfVxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgdHImLmluIHRvIHRyLmNvbGxhcHNlLmluXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0Ym9keSYuaW4gdG8gdGJvZHkuY29sbGFwc2UuaW5cbn1cblxudHIuY29sbGFwc2UuaW4gICAgeyBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cblxudGJvZHkuY29sbGFwc2UuaW4geyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7IH1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eShoZWlnaHQsIHZpc2liaWxpdHkpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKC4zNXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbihlYXNlKTtcbn1cbiIsIi8vXG4vLyBEcm9wZG93biBtZW51c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBEcm9wZG93biBhcnJvdy9jYXJldFxuLmNhcmV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItdG9wOiAgICRjYXJldC13aWR0aC1iYXNlIGRhc2hlZDtcbiAgYm9yZGVyLXRvcDogICAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCBcXDk7IC8vIElFOFxuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4vLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoZGl2KVxuLmRyb3B1cCxcbi5kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8gUHJldmVudCB0aGUgZm9jdXMgb24gdGhlIGRyb3Bkb3duIHRvZ2dsZSB3aGVuIGNsb3NpbmcgZHJvcGRvd25zXG4uZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnUgKHVsKVxuLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1kcm9wZG93bjtcbiAgZGlzcGxheTogbm9uZTsgLy8gbm9uZSBieSBkZWZhdWx0LCBidXQgYmxvY2sgb24gXCJvcGVuXCIgb2YgdGhlIG1lbnVcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1pbi13aWR0aDogMTYwcHg7XG4gIHBhZGRpbmc6IDVweCAwO1xuICBtYXJnaW46IDJweCAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOyAvLyBJRTggZmFsbGJhY2tcbiAgYm9yZGVyOiAxcHggc29saWQgJGRyb3Bkb3duLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDZweCAxMnB4IHJnYmEoMCwwLDAsLjE3NSkpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuXG4gIC8vIEFsaWducyB0aGUgZHJvcGRvd24gbWVudSB0byByaWdodFxuICAvL1xuICAvLyBEZXByZWNhdGVkIGFzIG9mIDMuMS4wIGluIGZhdm9yIG9mIGAuZHJvcGRvd24tbWVudS1bZGlyXWBcbiAgJi5wdWxsLXJpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIHRoZSBkcm9wZG93blxuICAuZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgbmF2LWRpdmlkZXIoJGRyb3Bkb3duLWRpdmlkZXItYmcpO1xuICB9XG5cbiAgLy8gTGlua3Mgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4gID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAzcHggMjBweDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIH1cbn1cblxuLy8gSG92ZXIvRm9jdXMgc3RhdGVcbi5kcm9wZG93bi1tZW51ID4gbGkgPiBhIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcbiAgfVxufVxuXG4vLyBBY3RpdmUgc3RhdGVcbi5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+IGEge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZztcbiAgfVxufVxuXG4vLyBEaXNhYmxlZCBzdGF0ZVxuLy9cbi8vIEdyYXkgb3V0IHRleHQgYW5kIGVuc3VyZSB0aGUgaG92ZXIvZm9jdXMgc3RhdGUgcmVtYWlucyBncmF5XG5cbi5kcm9wZG93bi1tZW51ID4gLmRpc2FibGVkID4gYSB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgfVxuXG4gIC8vIE51a2UgaG92ZXIvZm9jdXMgZWZmZWN0c1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIENTUyBncmFkaWVudFxuICAgIEBpbmNsdWRlIHJlc2V0LWZpbHRlcjtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cbn1cblxuLy8gT3BlbiBzdGF0ZSBmb3IgdGhlIGRyb3Bkb3duXG4ub3BlbiB7XG4gIC8vIFNob3cgdGhlIG1lbnVcbiAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIG91dGxpbmUgd2hlbiA6Zm9jdXMgaXMgdHJpZ2dlcmVkXG4gID4gYSB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLyBNZW51IHBvc2l0aW9uaW5nXG4vL1xuLy8gQWRkIGV4dHJhIGNsYXNzIHRvIGAuZHJvcGRvd24tbWVudWAgdG8gZmxpcCB0aGUgYWxpZ25tZW50IG9mIHRoZSBkcm9wZG93blxuLy8gbWVudSB3aXRoIHRoZSBwYXJlbnQuXG4uZHJvcGRvd24tbWVudS1yaWdodCB7XG4gIGxlZnQ6IGF1dG87IC8vIFJlc2V0IHRoZSBkZWZhdWx0IGZyb20gYC5kcm9wZG93bi1tZW51YFxuICByaWdodDogMDtcbn1cbi8vIFdpdGggdjMsIHdlIGVuYWJsZWQgYXV0by1mbGlwcGluZyBpZiB5b3UgaGF2ZSBhIGRyb3Bkb3duIHdpdGhpbiBhIHJpZ2h0XG4vLyBhbGlnbmVkIG5hdiBjb21wb25lbnQuIFRvIGVuYWJsZSB0aGUgdW5kb2luZyBvZiB0aGF0LCB3ZSBwcm92aWRlIGFuIG92ZXJyaWRlXG4vLyB0byByZXN0b3JlIHRoZSBkZWZhdWx0IGRyb3Bkb3duIG1lbnUgYWxpZ25tZW50LlxuLy9cbi8vIFRoaXMgaXMgb25seSBmb3IgbGVmdC1hbGlnbmluZyBhIGRyb3Bkb3duIG1lbnUgd2l0aGluIGEgYC5uYXZiYXItcmlnaHRgIG9yXG4vLyBgLnB1bGwtcmlnaHRgIG5hdiBjb21wb25lbnQuXG4uZHJvcGRvd24tbWVudS1sZWZ0IHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAzcHggMjBweDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIEJhY2tkcm9wIHRvIGNhdGNoIGJvZHkgY2xpY2tzIG9uIG1vYmlsZSwgZXRjLlxuLmRyb3Bkb3duLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6ICgkemluZGV4LWRyb3Bkb3duIC0gMTApO1xufVxuXG4vLyBSaWdodCBhbGlnbmVkIGRyb3Bkb3duc1xuLnB1bGwtcmlnaHQgPiAuZHJvcGRvd24tbWVudSB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vXG4vLyBKdXN0IGFkZCAuZHJvcHVwIGFmdGVyIHRoZSBzdGFuZGFyZCAuZHJvcGRvd24gY2xhc3MgYW5kIHlvdSdyZSBzZXQsIGJyby5cbi8vIFRPRE86IGFic3RyYWN0IHRoaXMgc28gdGhhdCB0aGUgbmF2YmFyIGZpeGVkIHN0eWxlcyBhcmUgbm90IHBsYWNlZCBoZXJlP1xuXG4uZHJvcHVwLFxuLm5hdmJhci1maXhlZC1ib3R0b20gLmRyb3Bkb3duIHtcbiAgLy8gUmV2ZXJzZSB0aGUgY2FyZXRcbiAgLmNhcmV0IHtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aC1iYXNlIGRhc2hlZDtcbiAgICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCBcXDk7IC8vIElFOFxuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbiAgLy8gRGlmZmVyZW50IHBvc2l0aW9uaW5nIGZvciBib3R0b20gdXAgbWVudVxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gIH1cbn1cblxuXG4vLyBDb21wb25lbnQgYWxpZ25tZW50XG4vL1xuLy8gUmVpdGVyYXRlIHBlciBuYXZiYXIubGVzcyBhbmQgdGhlIG1vZGlmaWVkIGNvbXBvbmVudCBhbGlnbm1lbnQgdGhlcmUuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gIC5uYXZiYXItcmlnaHQge1xuICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIHJpZ2h0OiAwOyBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgICAvLyBOZWNlc3NhcnkgZm9yIG92ZXJyaWRlcyBvZiB0aGUgZGVmYXVsdCByaWdodCBhbGlnbmVkIG1lbnUuXG4gICAgLy8gV2lsbCByZW1vdmUgY29tZSB2NCBpbiBhbGwgbGlrZWxpaG9vZC5cbiAgICAuZHJvcGRvd24tbWVudS1sZWZ0IHtcbiAgICAgIGxlZnQ6IDA7IHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgYnV0dG9uIHRvIHRoZSBmcm9udFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4uYnRuLWdyb3VwIHtcbiAgLmJ0biArIC5idG4sXG4gIC5idG4gKyAuYnRuLWdyb3VwLFxuICAuYnRuLWdyb3VwICsgLmJ0bixcbiAgLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4OyAvLyBPZmZzZXQgdGhlIGZpcnN0IGNoaWxkJ3MgbWFyZ2luXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gIC5idG4sXG4gIC5idG4tZ3JvdXAsXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAsXG4gID4gLmlucHV0LWdyb3VwIHtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICB9XG59XG5cbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gU2V0IGNvcm5lcnMgaW5kaXZpZHVhbCBiZWNhdXNlIHNvbWV0aW1lcyBhIHNpbmdsZSBidXR0b24gY2FuIGJlIGluIGEgLmJ0bi1ncm91cCBhbmQgd2UgbmVlZCA6Zmlyc3QtY2hpbGQgYW5kIDpsYXN0LWNoaWxkIHRvIGJvdGggbWF0Y2hcbi5idG4tZ3JvdXAgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gICY6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSkge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cbn1cbi8vIE5lZWQgLmRyb3Bkb3duLXRvZ2dsZSBzaW5jZSA6bGFzdC1jaGlsZCBkb2Vzbid0IGFwcGx5IGdpdmVuIGEgLmRyb3Bkb3duLW1lbnUgaW1tZWRpYXRlbHkgYWZ0ZXIgaXRcbi5idG4tZ3JvdXAgPiAuYnRuOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwID4gLmRyb3Bkb3duLXRvZ2dsZTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cblxuLy8gQ3VzdG9tIGVkaXRzIGZvciBpbmNsdWRpbmcgYnRuLWdyb3VwcyB3aXRoaW4gYnRuLWdyb3VwcyAodXNlZnVsIGZvciBpbmNsdWRpbmcgZHJvcGRvd24gYnV0dG9ucyB3aXRoaW4gYSBidG4tZ3JvdXApXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gID4gLmJ0bjpsYXN0LWNoaWxkLFxuICA+IC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuXG4vLyBPbiBhY3RpdmUgYW5kIG9wZW4sIGRvbid0IHNob3cgb3V0bGluZVxuLmJ0bi1ncm91cCAuZHJvcGRvd24tdG9nZ2xlOmFjdGl2ZSxcbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgb3V0bGluZTogMDtcbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC14cyA+IC5idG4geyBAZXh0ZW5kIC5idG4teHM7IH1cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gR2l2ZSB0aGUgbGluZSBiZXR3ZWVuIGJ1dHRvbnMgc29tZSBkZXB0aFxuLmJ0bi1ncm91cCA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBhZGRpbmctbGVmdDogMTJweDtcbiAgcGFkZGluZy1yaWdodDogMTJweDtcbn1cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBSZW1vdmUgdGhlIGdyYWRpZW50IGFuZCBzZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vIFJlcG9zaXRpb24gdGhlIGNhcmV0XG4uYnRuIC5jYXJldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLy8gQ2FyZXRzIGluIG90aGVyIGJ1dHRvbiBzaXplc1xuLmJ0bi1sZyAuY2FyZXQge1xuICBib3JkZXItd2lkdGg6ICRjYXJldC13aWR0aC1sYXJnZSAkY2FyZXQtd2lkdGgtbGFyZ2UgMDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbn1cbi8vIFVwc2lkZSBkb3duIGNhcmV0cyBmb3IgLmRyb3B1cFxuLmRyb3B1cCAuYnRuLWxnIC5jYXJldCB7XG4gIGJvcmRlci13aWR0aDogMCAkY2FyZXQtd2lkdGgtbGFyZ2UgJGNhcmV0LXdpZHRoLWxhcmdlO1xufVxuXG5cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBDbGVhciBmbG9hdHMgc28gZHJvcGRvd24gbWVudXMgY2FuIGJlIHByb3Blcmx5IHBsYWNlZFxuICA+IC5idG4tZ3JvdXAge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgID4gLmJ0biB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG4gIH1cblxuICA+IC5idG4gKyAuYnRuLFxuICA+IC5idG4gKyAuYnRuLWdyb3VwLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIHtcbiAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gICY6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRidG4tYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG4gICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2U7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICA+IC5idG46bGFzdC1jaGlsZCxcbiAgPiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxufVxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG46Zmlyc3QtY2hpbGQge1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbn1cblxuXG4vLyBKdXN0aWZpZWQgYnV0dG9uIGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWdyb3VwLWp1c3RpZmllZCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgd2lkdGg6IDElO1xuICB9XG4gID4gLmJ0bi1ncm91cCAuYnRuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0bi1ncm91cCAuZHJvcGRvd24tbWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94IGFuZCByYWRpbyBvcHRpb25zXG4vL1xuLy8gSW4gb3JkZXIgdG8gc3VwcG9ydCB0aGUgYnJvd3NlcidzIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFjaywgcG93ZXJlZCBieSB0aGVcbi8vIGByZXF1aXJlZGAgYXR0cmlidXRlLCB3ZSBoYXZlIHRvIFwiaGlkZVwiIHRoZSBpbnB1dHMgdmlhIGBjbGlwYC4gV2UgY2Fubm90IHVzZVxuLy8gYGRpc3BsYXk6IG5vbmU7YCBvciBgdmlzaWJpbGl0eTogaGlkZGVuO2AgYXMgdGhhdCBhbHNvIGhpZGVzIHRoZSBwb3BvdmVyLlxuLy8gU2ltcGx5IHZpc3VhbGx5IGhpZGluZyB0aGUgaW5wdXRzIHZpYSBgb3BhY2l0eWAgd291bGQgbGVhdmUgdGhlbSBjbGlja2FibGUgaW5cbi8vIGNlcnRhaW4gY2FzZXMgd2hpY2ggaXMgcHJldmVudGVkIGJ5IHVzaW5nIGBjbGlwYCBhbmQgYHBvaW50ZXItZXZlbnRzYC5cbi8vIFRoaXMgd2F5LCB3ZSBlbnN1cmUgYSBET00gZWxlbWVudCBpcyB2aXNpYmxlIHRvIHBvc2l0aW9uIHRoZSBwb3BvdmVyIGZyb20uXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEyNzk0IGFuZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTQ1NTkgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG5cbltkYXRhLXRvZ2dsZT1cImJ1dHRvbnNcIl0ge1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIElucHV0IGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQmFzZSBzdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGRyb3Bkb3duc1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTsgLy8gcHJldmVudCBpbnB1dCBncm91cHMgZnJvbSBpbmhlcml0aW5nIGJvcmRlciBzdHlsZXMgZnJvbSB0YWJsZSBjZWxscyB3aGVuIHBsYWNlZCB3aXRoaW4gYSB0YWJsZVxuXG4gIC8vIFVuZG8gcGFkZGluZyBhbmQgZmxvYXQgb2YgZ3JpZCBjbGFzc2VzXG4gICZbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICAvLyBFbnN1cmUgdGhhdCB0aGUgaW5wdXQgaXMgYWx3YXlzIGFib3ZlIHRoZSAqYXBwZW5kZWQqIGFkZG9uIGJ1dHRvbiBmb3JcbiAgICAvLyBwcm9wZXIgYm9yZGVyIGNvbG9ycy5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgIC8vIElFOSBmdWJhcnMgdGhlIHBsYWNlaG9sZGVyIGF0dHJpYnV0ZSBpbiB0ZXh0IGlucHV0cyBhbmQgdGhlIGFycm93cyBvblxuICAgIC8vIHNlbGVjdCBlbGVtZW50cyBpbiBpbnB1dCBncm91cHMuIFRvIGZpeCBpdCwgd2UgZmxvYXQgdGhlIGlucHV0LiBEZXRhaWxzOlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1NjEjaXNzdWVjb21tZW50LTI4OTM2ODU1XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vIFNpemluZyBvcHRpb25zXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xuICBAZXh0ZW5kIC5pbnB1dC1sZztcbn1cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XG4gIEBleHRlbmQgLmlucHV0LXNtO1xufVxuXG5cbi8vIERpc3BsYXkgYXMgdGFibGUtY2VsbFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWJ0bixcbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcblxuICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cbi8vIEFkZG9uIGFuZCBhZGRvbiB3cmFwcGVyIGZvciBidXR0b25zXG4uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtYnRuIHtcbiAgd2lkdGg6IDElO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBNYXRjaCB0aGUgaW5wdXRzXG59XG5cbi8vIFRleHQgaW5wdXQgZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAtYWRkb24ge1xuICBwYWRkaW5nOiAkcGFkZGluZy1iYXNlLXZlcnRpY2FsICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcblxuICAvLyBTaXppbmdcbiAgJi5pbnB1dC1zbSB7XG4gICAgcGFkZGluZzogJHBhZGRpbmctc21hbGwtdmVydGljYWwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc21hbGw7XG4gIH1cbiAgJi5pbnB1dC1sZyB7XG4gICAgcGFkZGluZzogJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIH1cblxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuZHJvcGRvd24tdG9nZ2xlLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xufVxuLmlucHV0LWdyb3VwLWFkZG9uOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6bGFzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1hZGRvbjpsYXN0LWNoaWxkLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXAgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmRyb3Bkb3duLXRvZ2dsZSxcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuLmlucHV0LWdyb3VwLWFkZG9uOmxhc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLy8gQnV0dG9uIGlucHV0IGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmlucHV0LWdyb3VwLWJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gSmFua2lseSBwcmV2ZW50IGlucHV0IGJ1dHRvbiBncm91cHMgZnJvbSB3cmFwcGluZyB3aXRoIGB3aGl0ZS1zcGFjZWAgYW5kXG4gIC8vIGBmb250LXNpemVgIGluIGNvbWJpbmF0aW9uIHdpdGggYGlubGluZS1ibG9ja2Agb24gYnV0dG9ucy5cbiAgZm9udC1zaXplOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3Igc3BhY2luZywgcG9zaXRpb24gZm9yIGJyaW5naW5nIGhvdmVyZWQvZm9jdXNlZC9hY3RpdmVkXG4gIC8vIGVsZW1lbnQgYWJvdmUgdGhlIHNpYmxpbmdzLlxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICArIC5idG4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgfVxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gIH1cblxuICAvLyBOZWdhdGl2ZSBtYXJnaW4gdG8gb25seSBoYXZlIGEgMXB4IGJvcmRlciBiZXR3ZWVuIHRoZSB0d29cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgPiAuYnRuLFxuICAgID4gLmJ0bi1ncm91cCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgPiAuYnRuLFxuICAgID4gLmJ0bi1ncm91cCB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gTmF2c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubmF2IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IHVsL29sXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gID4gbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nO1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdGF0ZSBzZXRzIHRleHQgdG8gZ3JheSBhbmQgbnVrZXMgaG92ZXIvdGFiIGVmZmVjdHNcbiAgICAmLmRpc2FibGVkID4gYSB7XG4gICAgICBjb2xvcjogJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBPcGVuIGRyb3Bkb3duc1xuICAub3BlbiA+IGEge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtbGluay1ob3Zlci1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJGxpbmstY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gTmF2IGRpdmlkZXJzIChkZXByZWNhdGVkIHdpdGggdjMuMC4xKVxuICAvL1xuICAvLyBUaGlzIHNob3VsZCBoYXZlIGJlZW4gcmVtb3ZlZCBpbiB2MyB3aXRoIHRoZSBkcm9wcGluZyBvZiBgLm5hdi1saXN0YCwgYnV0XG4gIC8vIHdlIG1pc3NlZCBpdC4gV2UgZG9uJ3QgY3VycmVudGx5IHN1cHBvcnQgdGhpcyBhbnl3aGVyZSwgYnV0IGluIHRoZSBpbnRlcmVzdFxuICAvLyBvZiBtYWludGFpbmluZyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IGluIGNhc2UgeW91IHVzZSBpdCwgaXQncyBkZXByZWNhdGVkLlxuICAubmF2LWRpdmlkZXIge1xuICAgIEBpbmNsdWRlIG5hdi1kaXZpZGVyO1xuICB9XG5cbiAgLy8gUHJldmVudCBJRTggZnJvbSBtaXNwbGFjaW5nIGltZ3NcbiAgLy9cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2lzc3Vlcy85ODQjaXNzdWVjb21tZW50LTM5ODU5ODlcbiAgPiBsaSA+IGEgPiBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxufVxuXG5cbi8vIFRhYnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gR2l2ZSB0aGUgdGFicyBzb21ldGhpbmcgdG8gc2l0IG9uXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLy8gTWFrZSB0aGUgbGlzdC1pdGVtcyBvdmVybGF5IHRoZSBib3R0b20gYm9yZGVyXG4gICAgbWFyZ2luLWJvdHRvbTogLTFweDtcblxuICAgIC8vIEFjdHVhbCB0YWJzIChhcyBsaW5rcylcbiAgICA+IGEge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAwIDA7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlLCBhbmQgaXRzIDpob3ZlciB0byBvdmVycmlkZSBub3JtYWwgOmhvdmVyXG4gICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gcHVsbGluZyB0aGlzIGluIG1haW5seSBmb3IgbGVzcyBzaG9ydGhhbmRcbiAgJi5uYXYtanVzdGlmaWVkIHtcbiAgICBAZXh0ZW5kIC5uYXYtanVzdGlmaWVkO1xuICAgIEBleHRlbmQgLm5hdi10YWJzLWp1c3RpZmllZDtcbiAgfVxufVxuXG5cbi8vIFBpbGxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubmF2LXBpbGxzIHtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAvLyBMaW5rcyByZW5kZXJlZCBhcyBwaWxsc1xuICAgID4gYSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuICAgICsgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAmLmFjdGl2ZSA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gU3RhY2tlZCBwaWxsc1xuLm5hdi1zdGFja2VkIHtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgKyBsaSB7XG4gICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgLy8gbm8gbmVlZCBmb3IgdGhpcyBnYXAgYmV0d2VlbiBuYXYgaXRlbXNcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXYgdmFyaWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSnVzdGlmaWVkIG5hdiBsaW5rc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gbGkge1xuICAgIGZsb2F0OiBub25lO1xuICAgID4gYSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgfVxuICB9XG5cbiAgPiAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgPiBhIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gTW92ZSBib3JkZXJzIHRvIGFuY2hvcnMgaW5zdGVhZCBvZiBib3R0b20gb2YgbGlzdFxuLy9cbi8vIE1peGluIGZvciBhZGRpbmcgb24gdG9wIHRoZSBzaGFyZWQgYC5uYXYtanVzdGlmaWVkYCBzdHlsZXMgZm9yIG91ciB0YWJzXG4ubmF2LXRhYnMtanVzdGlmaWVkIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICA+IGxpID4gYSB7XG4gICAgLy8gT3ZlcnJpZGUgbWFyZ2luIGZyb20gLm5hdi10YWJzXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIH1cblxuICA+IC5hY3RpdmUgPiBhLFxuICA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuICA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhLFxuICAgID4gLmFjdGl2ZSA+IGE6aG92ZXIsXG4gICAgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5cbi8vIERyb3Bkb3duc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBTcGVjaWZpYyBkcm9wZG93bnNcbi5uYXYtdGFicyAuZHJvcGRvd24tbWVudSB7XG4gIC8vIG1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICBtYXJnaW4tdG9wOiAtMXB4O1xuICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbn1cbiIsIi8vXG4vLyBOYXZiYXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIFdyYXBwZXIgYW5kIGJhc2UgY2xhc3Ncbi8vXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXG5cbi5uYXZiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6ICRuYXZiYXItaGVpZ2h0OyAvLyBFbnN1cmUgYSBuYXZiYXIgYWx3YXlzIHNob3dzIChlLmcuLCB3aXRob3V0IGEgLm5hdmJhci1icmFuZCBpbiBjb2xsYXBzZWQgbW9kZSlcbiAgbWFyZ2luLWJvdHRvbTogJG5hdmJhci1tYXJnaW4tYm90dG9tO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAvLyBQcmV2ZW50IGZsb2F0cyBmcm9tIGJyZWFraW5nIHRoZSBuYXZiYXJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkbmF2YmFyLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgaGVhZGluZ1xuLy9cbi8vIEdyb3VwcyBgLm5hdmJhci1icmFuZGAgYW5kIGAubmF2YmFyLXRvZ2dsZWAgaW50byBhIHNpbmdsZSBjb21wb25lbnQgZm9yIGVhc3lcbi8vIHN0eWxpbmcgb2YgcmVzcG9uc2l2ZSBhc3BlY3RzLlxuXG4ubmF2YmFyLWhlYWRlciB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgY29sbGFwc2UgKGJvZHkpXG4vL1xuLy8gR3JvdXAgeW91ciBuYXZiYXIgY29udGVudCBpbnRvIHRoaXMgZm9yIGVhc3kgY29sbGFwc2luZyBhbmQgZXhwYW5kaW5nIGFjcm9zc1xuLy8gdmFyaW91cyBkZXZpY2Ugc2l6ZXMuIEJ5IGRlZmF1bHQsIHRoaXMgY29udGVudCBpcyBjb2xsYXBzZWQgd2hlbiA8NzY4cHgsIGJ1dFxuLy8gd2lsbCBleHBhbmQgcGFzdCB0aGF0IGZvciBhIGhvcml6b250YWwgZGlzcGxheS5cbi8vXG4vLyBUbyBzdGFydCAob24gbW9iaWxlIGRldmljZXMpIHRoZSBuYXZiYXIgbGlua3MsIGZvcm1zLCBhbmQgYnV0dG9ucyBhcmUgc3RhY2tlZFxuLy8gdmVydGljYWxseSBhbmQgaW5jbHVkZSBhIGBtYXgtaGVpZ2h0YCB0byBvdmVyZmxvdyBpbiBjYXNlIHlvdSBoYXZlIHRvbyBtdWNoXG4vLyBjb250ZW50IGZvciB0aGUgdXNlcidzIHZpZXdwb3J0LlxuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgb3ZlcmZsb3cteDogdmlzaWJsZTtcbiAgcGFkZGluZy1yaWdodDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIHBhZGRpbmctbGVmdDogICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSk7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgJi5pbiB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBzZXR0aW5nXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYuaW4ge1xuICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAvLyBVbmRvIHRoZSBjb2xsYXBzZSBzaWRlIHBhZGRpbmcgZm9yIG5hdmJhcnMgd2l0aCBjb250YWluZXJzIHRvIGVuc3VyZVxuICAgIC8vIGFsaWdubWVudCBvZiByaWdodC1hbGlnbmVkIGNvbnRlbnRzLlxuICAgIC5uYXZiYXItZml4ZWQtdG9wICYsXG4gICAgLm5hdmJhci1zdGF0aWMtdG9wICYsXG4gICAgLm5hdmJhci1maXhlZC1ib3R0b20gJiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4ubmF2YmFyLWZpeGVkLXRvcCxcbi5uYXZiYXItZml4ZWQtYm90dG9tIHtcbiAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgbWF4LWhlaWdodDogJG5hdmJhci1jb2xsYXBzZS1tYXgtaGVpZ2h0O1xuXG4gICAgQG1lZGlhIChtYXgtZGV2aWNlLXdpZHRoOiAkc2NyZWVuLXhzLW1pbikgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICBtYXgtaGVpZ2h0OiAyMDBweDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCb3RoIG5hdmJhciBoZWFkZXIgYW5kIGNvbGxhcHNlXG4vL1xuLy8gV2hlbiBhIGNvbnRhaW5lciBpcyBwcmVzZW50LCBjaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIHRoZSBoZWFkZXIgYW5kIGNvbGxhcHNlLlxuXG4uY29udGFpbmVyLFxuLmNvbnRhaW5lci1mbHVpZCB7XG4gID4gLm5hdmJhci1oZWFkZXIsXG4gID4gLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgbWFyZ2luLWxlZnQ6ICAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6ICAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBOYXZiYXIgYWxpZ25tZW50IG9wdGlvbnNcbi8vXG4vLyBEaXNwbGF5IHRoZSBuYXZiYXIgYWNyb3NzIHRoZSBlbnRpcmV0eSBvZiB0aGUgcGFnZSBvciBmaXhlZCBpdCB0byB0aGUgdG9wIG9yXG4vLyBib3R0b20gb2YgdGhlIHBhZ2UuXG5cbi8vIFN0YXRpYyB0b3AgKHVuZml4ZWQsIGJ1dCAxMDAlIHdpZGUpIG5hdmJhclxuLm5hdmJhci1zdGF0aWMtdG9wIHtcbiAgei1pbmRleDogJHppbmRleC1uYXZiYXI7XG4gIGJvcmRlci13aWR0aDogMCAwIDFweDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLy8gRml4IHRoZSB0b3AvYm90dG9tIG5hdmJhcnMgd2hlbiBzY3JlZW4gcmVhbCBlc3RhdGUgc3VwcG9ydHMgaXRcbi5uYXZiYXItZml4ZWQtdG9wLFxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW5hdmJhci1maXhlZDtcblxuICAvLyBVbmRvIHRoZSByb3VuZGVkIGNvcm5lcnNcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG4ubmF2YmFyLWZpeGVkLXRvcCB7XG4gIHRvcDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4O1xufVxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xuICBib3R0b206IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG92ZXJyaWRlIC5uYXZiYXIgZGVmYXVsdHNcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwO1xufVxuXG5cbi8vIEJyYW5kL3Byb2plY3QgbmFtZVxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6ICRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbCAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBoZWlnaHQ6ICRuYXZiYXItaGVpZ2h0O1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gID4gaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgLm5hdmJhciA+IC5jb250YWluZXIgJixcbiAgICAubmF2YmFyID4gLmNvbnRhaW5lci1mbHVpZCAmIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIHRvZ2dsZVxuLy9cbi8vIEN1c3RvbSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBgLm5hdmJhci1jb2xsYXBzZWAsIHBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlXG4vLyBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLm5hdmJhci10b2dnbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgcGFkZGluZzogOXB4IDEwcHg7XG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigzNHB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgLy8gV2UgcmVtb3ZlIHRoZSBgb3V0bGluZWAgaGVyZSwgYnV0IGxhdGVyIGNvbXBlbnNhdGUgYnkgYXR0YWNoaW5nIGA6aG92ZXJgXG4gIC8vIHN0eWxlcyB0byBgOmZvY3VzYC5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gIC8vIEJhcnNcbiAgLmljb24tYmFyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMjJweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7XG4gIH1cbiAgLmljb24tYmFyICsgLmljb24tYmFyIHtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2IGxpbmtzXG4vL1xuLy8gQnVpbGRzIG9uIHRvcCBvZiB0aGUgYC5uYXZgIGNvbXBvbmVudHMgd2l0aCBpdHMgb3duIG1vZGlmaWVyIGNsYXNzIHRvIG1ha2Vcbi8vIHRoZSBuYXYgdGhlIGZ1bGwgaGVpZ2h0IG9mIHRoZSBob3Jpem9udGFsIG5hdiAoYWJvdmUgNzY4cHgpLlxuXG4ubmF2YmFyLW5hdiB7XG4gIG1hcmdpbjogKCRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbCAvIDIpICgtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWwpO1xuXG4gID4gbGkgPiBhIHtcbiAgICBwYWRkaW5nLXRvcDogICAgMTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheSB3aGVuIGNvbGxhcHNlZFxuICAgIC5vcGVuIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgID4gbGkgPiBhLFxuICAgICAgLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICAgIHBhZGRpbmc6IDVweCAxNXB4IDVweCAyNXB4O1xuICAgICAgfVxuICAgICAgPiBsaSA+IGEge1xuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVW5jb2xsYXBzZSB0aGUgbmF2XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgPiBsaSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgID4gYSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAgICAkbmF2YmFyLXBhZGRpbmctdmVydGljYWw7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLXBhZGRpbmctdmVydGljYWw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIGZvcm1cbi8vXG4vLyBFeHRlbnNpb24gb2YgdGhlIGAuZm9ybS1pbmxpbmVgIHdpdGggc29tZSBleHRyYSBmbGF2b3IgZm9yIG9wdGltdW0gZGlzcGxheSBpblxuLy8gb3VyIG5hdmJhcnMuXG5cbi5uYXZiYXItZm9ybSB7XG4gIG1hcmdpbi1sZWZ0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIG1hcmdpbi1yaWdodDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBwYWRkaW5nOiAxMHB4ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgJHNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKSwgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkc2hhZG93KTtcblxuICAvLyBNaXhpbiBiZWhhdmlvciBmb3Igb3B0aW11bSBkaXNwbGF5XG4gIEBpbmNsdWRlIGZvcm0taW5saW5lO1xuXG4gIC5mb3JtLWdyb3VwIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWZXJ0aWNhbGx5IGNlbnRlciBpbiBleHBhbmRlZCwgaG9yaXpvbnRhbCBuYXZiYXJcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRpbnB1dC1oZWlnaHQtYmFzZSk7XG5cbiAgLy8gVW5kbyAxMDAlIHdpZHRoIGZvciBwdWxsIGNsYXNzZXNcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vLyBEcm9wZG93biBtZW51c1xuXG4vLyBNZW51IHBvc2l0aW9uIGFuZCBtZW51IGNhcmV0c1xuLm5hdmJhci1uYXYgPiBsaSA+IC5kcm9wZG93bi1tZW51IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG59XG4vLyBNZW51IHBvc2l0aW9uIGFuZCBtZW51IGNhcmV0IHN1cHBvcnQgZm9yIGRyb3B1cHMgdmlhIGV4dHJhIGRyb3B1cCBjbGFzc1xuLm5hdmJhci1maXhlZC1ib3R0b20gLm5hdmJhci1uYXYgPiBsaSA+IC5kcm9wZG93bi1tZW51IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG5hdmJhci1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG59XG5cblxuLy8gQnV0dG9ucyBpbiBuYXZiYXJzXG4vL1xuLy8gVmVydGljYWxseSBjZW50ZXIgYSBidXR0b24gd2l0aGluIGEgbmF2YmFyICh3aGVuICpub3QqIGluIGEgZm9ybSkuXG5cbi5uYXZiYXItYnRuIHtcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRpbnB1dC1oZWlnaHQtYmFzZSk7XG5cbiAgJi5idG4tc20ge1xuICAgIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkaW5wdXQtaGVpZ2h0LXNtYWxsKTtcbiAgfVxuICAmLmJ0bi14cyB7XG4gICAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKDIyKTtcbiAgfVxufVxuXG5cbi8vIFRleHQgaW4gbmF2YmFyc1xuLy9cbi8vIEFkZCBhIGNsYXNzIHRvIG1ha2UgYW55IGVsZW1lbnQgcHJvcGVybHkgYWxpZ24gaXRzZWxmIHZlcnRpY2FsbHkgd2l0aGluIHRoZSBuYXZiYXJzLlxuXG4ubmF2YmFyLXRleHQge1xuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICB9XG59XG5cblxuLy8gQ29tcG9uZW50IGFsaWdubWVudFxuLy9cbi8vIFJlcHVycG9zZSB0aGUgcHVsbCB1dGlsaXRpZXMgYXMgdGhlaXIgb3duIG5hdmJhciB1dGlsaXRpZXMgdG8gYXZvaWQgc3BlY2lmaWNpdHlcbi8vIGlzc3VlcyB3aXRoIHBhcmVudHMgYW5kIGNoYWluaW5nLiBPbmx5IGRvIHRoaXMgd2hlbiB0aGUgbmF2YmFyIGlzIHVuY29sbGFwc2VkXG4vLyB0aG91Z2ggc28gdGhhdCBuYXZiYXIgY29udGVudHMgcHJvcGVybHkgc3RhY2sgYW5kIGFsaWduIGluIG1vYmlsZS5cbi8vXG4vLyBEZWNsYXJlZCBhZnRlciB0aGUgbmF2YmFyIGNvbXBvbmVudHMgdG8gZW5zdXJlIG1vcmUgc3BlY2lmaWNpdHkgb24gdGhlIG1hcmdpbnMuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gIC5uYXZiYXItbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuICAubmF2YmFyLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG5cbiAgICB+IC5uYXZiYXItcmlnaHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBuYXZiYXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBEZWZhdWx0IG5hdmJhclxuLm5hdmJhci1kZWZhdWx0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJnO1xuICBib3JkZXItY29sb3I6ICRuYXZiYXItZGVmYXVsdC1ib3JkZXI7XG5cbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1iZztcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtY29sb3I7XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICAgID4gLmFjdGl2ZSA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ob3Zlci1iZztcbiAgICB9XG4gICAgLmljb24tYmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC10b2dnbGUtaWNvbi1iYXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1jb2xsYXBzZSxcbiAgLm5hdmJhci1mb3JtIHtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGVmYXVsdC1ib3JkZXI7XG4gIH1cblxuICAvLyBEcm9wZG93biBtZW51IGl0ZW1zXG4gIC5uYXZiYXItbmF2IHtcbiAgICAvLyBSZW1vdmUgYmFja2dyb3VuZCBjb2xvciBmcm9tIG9wZW4gZHJvcGRvd25cbiAgICA+IC5vcGVuID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgICAvLyBEcm9wZG93bnMgZ2V0IGN1c3RvbSBkaXNwbGF5IHdoZW4gY29sbGFwc2VkXG4gICAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLy8gTGlua3MgaW4gbmF2YmFyc1xuICAvL1xuICAvLyBBZGQgYSBjbGFzcyB0byBlbnN1cmUgbGlua3Mgb3V0c2lkZSB0aGUgbmF2YmFyIG5hdiBhcmUgY29sb3JlZCBjb3JyZWN0bHkuXG5cbiAgLm5hdmJhci1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gICAgJltkaXNhYmxlZF0sXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEludmVyc2UgbmF2YmFyXG5cbi5uYXZiYXItaW52ZXJzZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1iZztcbiAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYm9yZGVyO1xuXG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gRGFya2VuIHRoZSByZXNwb25zaXZlIG5hdiB0b2dnbGVcbiAgLm5hdmJhci10b2dnbGUge1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ib3JkZXItY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc7XG4gICAgfVxuICAgIC5pY29uLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtdG9nZ2xlLWljb24tYmFyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItY29sbGFwc2UsXG4gIC5uYXZiYXItZm9ybSB7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCA3JSk7XG4gIH1cblxuICAvLyBEcm9wZG93bnNcbiAgLm5hdmJhci1uYXYge1xuICAgID4gLm9wZW4gPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZztcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcbiAgICAgIC8vIERyb3Bkb3ducyBnZXQgY3VzdG9tIGRpc3BsYXlcbiAgICAgIC5vcGVuIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgPiAuZHJvcGRvd24taGVhZGVyIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRuYXZiYXItaW52ZXJzZS1ib3JkZXI7XG4gICAgICAgIH1cbiAgICAgICAgLmRpdmlkZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1ib3JkZXI7XG4gICAgICAgIH1cbiAgICAgICAgPiBsaSA+IGEge1xuICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gLmFjdGl2ZSA+IGEge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gLmRpc2FibGVkID4gYSB7XG4gICAgICAgICAgJixcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gICAgJltkaXNhYmxlZF0sXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQnJlYWRjcnVtYnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmJyZWFkY3J1bWIge1xuICBwYWRkaW5nOiAkYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsICRicmVhZGNydW1iLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJlYWRjcnVtYi1iZztcbiAgLyogYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTsgKi9cblxuICA+IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICArIGxpOmJlZm9yZSB7XG4gICAgIC8vY29udGVudDogXCIjeyRicmVhZGNydW1iLXNlcGFyYXRvcn1cIjsgLy8gVW5pY29kZSBzcGFjZSBhZGRlZCBzaW5jZSBpbmxpbmUtYmxvY2sgbWVhbnMgbm9uLWNvbGxhcHNpbmcgd2hpdGUtc3BhY2VcbiAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgY29sb3I6ICRicmVhZGNydW1iLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gID4gLmFjdGl2ZSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjtcbiAgfVxufVxuIiwiLy9cbi8vIFBhZ2luYXRpb24gKG11bHRpcGxlIHBhZ2VzKVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjowO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZTsgLy8gUmVtb3ZlIGxpc3Qtc3R5bGUgYW5kIGJsb2NrLWxldmVsIGRlZmF1bHRzXG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gQ29sbGFwc2Ugd2hpdGUtc3BhY2VcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXI7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IGxpID4gYSxcbiAgPiBsaSA+IHNwYW4ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjtcbiAgICB9XG4gICAgJi5jdXJyZW50e1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gID4gLmFjdGl2ZSA+IGEsXG4gID4gLmFjdGl2ZSA+IHNwYW4ge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyO1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cbiAgfVxuXG4gID4gLmRpc2FibGVkIHtcbiAgICA+IHNwYW4sXG4gICAgPiBzcGFuOmhvdmVyLFxuICAgID4gc3Bhbjpmb2N1cyxcbiAgICA+IGEsXG4gICAgPiBhOmhvdmVyLFxuICAgID4gYTpmb2N1cyB7XG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIExhcmdlXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1sYXJnZSwgJGxpbmUtaGVpZ2h0LWxhcmdlLCAkYm9yZGVyLXJhZGl1cy1sYXJnZSk7XG59XG5cbi8vIFNtYWxsXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG59XG4iLCIvL1xuLy8gTGFiZWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHBhZGRpbmc6IC4yZW0gLjZlbSAuM2VtO1xuICBmb250LXNpemU6IDc1JTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGxhYmVsLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYm9yZGVyLXJhZGl1czogLjI1ZW07XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEubGFiZWxcblxuICAvLyBFbXB0eSBsYWJlbHMgY29sbGFwc2UgYXV0b21hdGljYWxseSAobm90IGF2YWlsYWJsZSBpbiBJRTgpXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBRdWljayBmaXggZm9yIGxhYmVscyBpbiBidXR0b25zXG4gIC5idG4gJiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTFweDtcbiAgfVxufVxuXG4vLyBBZGQgaG92ZXIgZWZmZWN0cywgYnV0IG9ubHkgZm9yIGxpbmtzXG5hLmxhYmVsIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRsYWJlbC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLy8gQ29sb3JzXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnMgKGxpbmtlZCBsYWJlbHMgZ2V0IGRhcmtlciBvbiA6aG92ZXIpXG5cbi5sYWJlbC1kZWZhdWx0IHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtZGVmYXVsdC1iZyk7XG59XG5cbi5sYWJlbC1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtcHJpbWFyeS1iZyk7XG59XG5cbi5sYWJlbC1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtc3VjY2Vzcy1iZyk7XG59XG5cbi5sYWJlbC1pbmZvIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtaW5mby1iZyk7XG59XG5cbi5sYWJlbC13YXJuaW5nIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtd2FybmluZy1iZyk7XG59XG5cbi5sYWJlbC1kYW5nZXIge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1kYW5nZXItYmcpO1xufVxuIiwiLy9cbi8vIEJhZGdlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogMTBweDtcbiAgcGFkZGluZzogM3B4IDdweDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGJhZGdlLWNvbG9yO1xuICBsaW5lLWhlaWdodDogJGJhZGdlLWxpbmUtaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWRnZS1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJhZGdlLWJvcmRlci1yYWRpdXM7XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHkgKG5vdCBhdmFpbGFibGUgaW4gSUU4KVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuICAuYnRuICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gIH1cblxuICAuYnRuLXhzICYsXG4gIC5idG4tZ3JvdXAteHMgPiAuYnRuICYge1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAxcHggNXB4O1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEuYmFkZ2VcblxuICAvLyBBY2NvdW50IGZvciBiYWRnZXMgaW4gbmF2c1xuICAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSA+ICYsXG4gIC5uYXYtcGlsbHMgPiAuYWN0aXZlID4gYSA+ICYge1xuICAgIGNvbG9yOiAkYmFkZ2UtYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWRnZS1hY3RpdmUtYmc7XG4gIH1cblxuICAubGlzdC1ncm91cC1pdGVtID4gJiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG5cbiAgLmxpc3QtZ3JvdXAtaXRlbSA+ICYgKyAmIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgfVxuXG4gIC5uYXYtcGlsbHMgPiBsaSA+IGEgPiAmIHtcbiAgICBtYXJnaW4tbGVmdDogM3B4O1xuICB9XG59XG5cbi8vIEhvdmVyIHN0YXRlLCBidXQgb25seSBmb3IgbGlua3NcbmEuYmFkZ2Uge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGJhZGdlLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuIiwiLy9cbi8vIEFsZXJ0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYWxlcnQge1xuICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGFsZXJ0LWJvcmRlci1yYWRpdXM7XG5cbiAgLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbiAgaDQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgLy8gU3BlY2lmaWVkIGZvciB0aGUgaDQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuICAuYWxlcnQtbGluayB7XG4gICAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xuICB9XG5cbiAgLy8gSW1wcm92ZSBhbGlnbm1lbnQgYW5kIHNwYWNpbmcgb2YgaW5uZXIgY29udGVudFxuICA+IHAsXG4gID4gdWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICA+IHAgKyBwIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gIH1cbn1cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzYWJsZSwgLy8gVGhlIG1pc3NwZWxsZWQgLmFsZXJ0LWRpc21pc3NhYmxlIHdhcyBkZXByZWNhdGVkIGluIDMuMi4wLlxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogKCRhbGVydC1wYWRkaW5nICsgMjApO1xuXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXG4gIC5jbG9zZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTJweDtcbiAgICByaWdodDogLTIxcHg7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbi5hbGVydC1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtc3VjY2Vzcy1iZywgJGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyLCAkYWxlcnQtc3VjY2Vzcy10ZXh0KTtcbn1cblxuLmFsZXJ0LWluZm8ge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1pbmZvLWJnLCAkYWxlcnQtaW5mby1ib3JkZXIsICRhbGVydC1pbmZvLXRleHQpO1xufVxuXG4uYWxlcnQtd2FybmluZyB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LXdhcm5pbmctYmcsICRhbGVydC13YXJuaW5nLWJvcmRlciwgJGFsZXJ0LXdhcm5pbmctdGV4dCk7XG59XG5cbi5hbGVydC1kYW5nZXIge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1kYW5nZXItYmcsICRhbGVydC1kYW5nZXItYm9yZGVyLCAkYWxlcnQtZGFuZ2VyLXRleHQpO1xufVxuIiwiLy9cbi8vIFByb2dyZXNzIGJhcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFyIGFuaW1hdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gV2ViS2l0XG5ALXdlYmtpdC1rZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tICB7IGJhY2tncm91bmQtcG9zaXRpb246IDQwcHggMDsgfVxuICB0byAgICB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxufVxuXG4vLyBTcGVjIGFuZCBJRTEwK1xuQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gIGZyb20gIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogNDBweCAwOyB9XG4gIHRvICAgIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG59XG5cblxuLy8gQmFyIGl0c2VsZlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBPdXRlciBjb250YWluZXJcbi5wcm9ncmVzcyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcbiAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLWJvcmRlci1yYWRpdXM7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjEpKTtcbn1cblxuLy8gQmFyIG9mIHByb2dyZXNzXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAtMXB4IDAgcmdiYSgwLDAsMCwuMTUpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih3aWR0aCAuNnMgZWFzZSk7XG59XG5cbi8vIFN0cmlwZWQgYmFyc1xuLy9cbi8vIGAucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyYCBpcyBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBpbiBmYXZvciBvZiB0aGVcbi8vIGAucHJvZ3Jlc3MtYmFyLXN0cmlwZWRgIGNsYXNzLCB3aGljaCB5b3UganVzdCBhZGQgdG8gYW4gZXhpc3Rpbmdcbi8vIGAucHJvZ3Jlc3MtYmFyYC5cbi5wcm9ncmVzcy1zdHJpcGVkIC5wcm9ncmVzcy1iYXIsXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkO1xuICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggNDBweDtcbn1cblxuLy8gQ2FsbCBhbmltYXRpb24gZm9yIHRoZSBhY3RpdmUgb25lXG4vL1xuLy8gYC5wcm9ncmVzcy5hY3RpdmUgLnByb2dyZXNzLWJhcmAgaXMgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgaW4gZmF2b3Igb2YgdGhlXG4vLyBgLnByb2dyZXNzLWJhci5hY3RpdmVgIGFwcHJvYWNoLlxuLnByb2dyZXNzLmFjdGl2ZSAucHJvZ3Jlc3MtYmFyLFxuLnByb2dyZXNzLWJhci5hY3RpdmUge1xuICBAaW5jbHVkZSBhbmltYXRpb24ocHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMnMgbGluZWFyIGluZmluaXRlKTtcbn1cblxuXG4vLyBWYXJpYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5wcm9ncmVzcy1iYXItc3VjY2VzcyB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZyk7XG59XG5cbi5wcm9ncmVzcy1iYXItaW5mbyB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItaW5mby1iZyk7XG59XG5cbi5wcm9ncmVzcy1iYXItd2FybmluZyB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItd2FybmluZy1iZyk7XG59XG5cbi5wcm9ncmVzcy1iYXItZGFuZ2VyIHtcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJHByb2dyZXNzLWJhci1kYW5nZXItYmcpO1xufVxuIiwiLm1lZGlhIHtcbiAgLy8gUHJvcGVyIHNwYWNpbmcgYmV0d2VlbiBpbnN0YW5jZXMgb2YgLm1lZGlhXG4gIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4ubWVkaWEsXG4ubWVkaWEtYm9keSB7XG4gIHpvb206IDE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cblxuLm1lZGlhLW9iamVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIC8vIEZpeCBjb2xsYXBzZSBpbiB3ZWJraXQgZnJvbSBtYXgtd2lkdGg6IDEwMCUgYW5kIGRpc3BsYXk6IHRhYmxlLWNlbGwuXG4gICYuaW1nLXRodW1ibmFpbCB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5cbi5tZWRpYS1yaWdodCxcbi5tZWRpYSA+IC5wdWxsLXJpZ2h0IHtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xufVxuXG4ubWVkaWEtbGVmdCxcbi5tZWRpYSA+IC5wdWxsLWxlZnQge1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuXG4ubWVkaWEtbGVmdCxcbi5tZWRpYS1yaWdodCxcbi5tZWRpYS1ib2R5IHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLm1lZGlhLW1pZGRsZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5tZWRpYS1ib3R0b20ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIGhlYWRpbmdzIGZvciB0aWdodGVyIGRlZmF1bHQgc3BhY2luZ1xuLm1lZGlhLWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi8vIE1lZGlhIGxpc3QgdmFyaWF0aW9uXG4vL1xuLy8gVW5kbyBkZWZhdWx0IHVsL29sIHN0eWxlc1xuLm1lZGlhLWxpc3Qge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvL1xuLy8gTGlzdCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIC8vIFBsYWNlIHRoZSBib3JkZXIgb24gdGhlIGxpc3QgaXRlbXMgYW5kIG5lZ2F0aXZlIG1hcmdpbiB1cCBmb3IgYmV0dGVyIHN0eWxpbmdcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRsaXN0LWdyb3VwLWJvcmRlcjtcblxuICAvLyBSb3VuZCB0aGUgZmlyc3QgYW5kIGxhc3QgaXRlbXNcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG59XG5cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZSBpdGVtcy5cbi8vIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2hvd2luZyBzZWxlY3RlZCBpdGVtcy5cblxuYS5saXN0LWdyb3VwLWl0ZW0sXG5idXR0b24ubGlzdC1ncm91cC1pdGVtIHtcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWxpbmstY29sb3I7XG5cbiAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtbGluay1oZWFkaW5nLWNvbG9yO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG59XG5cbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0ge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICYuZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQ6aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG5cbiAgICAvLyBGb3JjZSBjb2xvciB0byBpbmhlcml0IGZvciBjdXN0b20gY29udGVudFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFjdGl2ZSBjbGFzcyBvbiBpdGVtIGl0c2VsZiwgbm90IHBhcmVudFxuICAmLmFjdGl2ZSxcbiAgJi5hY3RpdmU6aG92ZXIsXG4gICYuYWN0aXZlOmZvY3VzIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjtcblxuICAgIC8vIEZvcmNlIGNvbG9yIHRvIGluaGVyaXQgZm9yIGN1c3RvbSBjb250ZW50XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IHNtYWxsLFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IC5zbWFsbCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KHN1Y2Nlc3MsICRzdGF0ZS1zdWNjZXNzLWJnLCAkc3RhdGUtc3VjY2Vzcy10ZXh0KTtcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KGluZm8sICRzdGF0ZS1pbmZvLWJnLCAkc3RhdGUtaW5mby10ZXh0KTtcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KHdhcm5pbmcsICRzdGF0ZS13YXJuaW5nLWJnLCAkc3RhdGUtd2FybmluZy10ZXh0KTtcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KGRhbmdlciwgJHN0YXRlLWRhbmdlci1iZywgJHN0YXRlLWRhbmdlci10ZXh0KTtcblxuXG4vLyBDdXN0b20gY29udGVudCBvcHRpb25zXG4vL1xuLy8gRXh0cmEgY2xhc3NlcyBmb3IgY3JlYXRpbmcgd2VsbC1mb3JtYXR0ZWQgY29udGVudCB3aXRoaW4gYC5saXN0LWdyb3VwLWl0ZW1gcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cbiIsIi8vXG4vLyBQYW5lbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLnBhbmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFuZWwtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAkcGFuZWwtYm9yZGVyLXJhZGl1cztcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbn1cblxuLy8gUGFuZWwgY29udGVudHNcbi5wYW5lbC1ib2R5IHtcbiAgcGFkZGluZzogJHBhbmVsLWJvZHktcGFkZGluZztcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi8vIE9wdGlvbmFsIGhlYWRpbmdcbi5wYW5lbC1oZWFkaW5nIHtcbiAgcGFkZGluZzogJHBhbmVsLWhlYWRpbmctcGFkZGluZztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG5cbiAgPiAuZHJvcGRvd24gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gV2l0aGluIGhlYWRpbmcsIHN0cmlwIGFueSBgaCpgIHRhZyBvZiBpdHMgZGVmYXVsdCBtYXJnaW5zIGZvciBzcGFjaW5nLlxuLnBhbmVsLXRpdGxlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjEyNSkpO1xuICBjb2xvcjogaW5oZXJpdDtcblxuICA+IGEsXG4gID4gc21hbGwsXG4gID4gLnNtYWxsLFxuICA+IHNtYWxsID4gYSxcbiAgPiAuc21hbGwgPiBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBPcHRpb25hbCBmb290ZXIgKHN0YXlzIGdyYXkgaW4gZXZlcnkgbW9kaWZpZXIgY2xhc3MpXG4ucGFuZWwtZm9vdGVyIHtcbiAgcGFkZGluZzogJHBhbmVsLWZvb3Rlci1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFuZWwtZm9vdGVyLWJnO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJHBhbmVsLWlubmVyLWJvcmRlcjtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xufVxuXG5cbi8vIExpc3QgZ3JvdXBzIGluIHBhbmVsc1xuLy9cbi8vIEJ5IGRlZmF1bHQsIHNwYWNlIG91dCBsaXN0IGdyb3VwIGNvbnRlbnQgZnJvbSBwYW5lbCBoZWFkaW5ncyB0byBhY2NvdW50IGZvclxuLy8gYW55IGtpbmQgb2YgY3VzdG9tIGNvbnRlbnQgYmV0d2VlbiB0aGUgdHdvLlxuXG4ucGFuZWwge1xuICA+IC5saXN0LWdyb3VwLFxuICA+IC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICBib3JkZXItd2lkdGg6IDFweCAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB9XG5cbiAgICAvLyBBZGQgYm9yZGVyIHRvcCByYWRpdXMgZm9yIGZpcnN0IG9uZVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBZGQgYm9yZGVyIGJvdHRvbSByYWRpdXMgZm9yIGxhc3Qgb25lXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgPiAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxufVxuLy8gQ29sbGFwc2Ugc3BhY2UgYmV0d2VlbiB3aGVuIHRoZXJlJ3Mgbm8gYWRkaXRpb25hbCBjb250ZW50LlxuLnBhbmVsLWhlYWRpbmcgKyAubGlzdC1ncm91cCB7XG4gIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gIH1cbn1cbi5saXN0LWdyb3VwICsgLnBhbmVsLWZvb3RlciB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG59XG5cbi8vIFRhYmxlcyBpbiBwYW5lbHNcbi8vXG4vLyBQbGFjZSBhIG5vbi1ib3JkZXJlZCBgLnRhYmxlYCB3aXRoaW4gYSBwYW5lbCAobm90IHdpdGhpbiBhIGAucGFuZWwtYm9keWApIGFuZFxuLy8gd2F0Y2ggaXQgZ28gZnVsbCB3aWR0aC5cblxuLnBhbmVsIHtcbiAgPiAudGFibGUsXG4gID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUsXG4gID4gLnBhbmVsLWNvbGxhcHNlID4gLnRhYmxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgY2FwdGlvbiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRwYW5lbC1ib2R5LXBhZGRpbmc7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFuZWwtYm9keS1wYWRkaW5nO1xuICAgIH1cbiAgfVxuICAvLyBBZGQgYm9yZGVyIHRvcCByYWRpdXMgZm9yIGZpcnN0IG9uZVxuICA+IC50YWJsZTpmaXJzdC1jaGlsZCxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuXG4gICAgPiB0aGVhZDpmaXJzdC1jaGlsZCxcbiAgICA+IHRib2R5OmZpcnN0LWNoaWxkIHtcbiAgICAgID4gdHI6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuXG4gICAgICAgIHRkOmZpcnN0LWNoaWxkLFxuICAgICAgICB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgICAgdGQ6bGFzdC1jaGlsZCxcbiAgICAgICAgdGg6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIEFkZCBib3JkZXIgYm90dG9tIHJhZGl1cyBmb3IgbGFzdCBvbmVcbiAgPiAudGFibGU6bGFzdC1jaGlsZCxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZTpsYXN0LWNoaWxkID4gLnRhYmxlOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcblxuICAgID4gdGJvZHk6bGFzdC1jaGlsZCxcbiAgICA+IHRmb290Omxhc3QtY2hpbGQge1xuICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcblxuICAgICAgICB0ZDpmaXJzdC1jaGlsZCxcbiAgICAgICAgdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICB9XG4gICAgICAgIHRkOmxhc3QtY2hpbGQsXG4gICAgICAgIHRoOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IC5wYW5lbC1ib2R5ICsgLnRhYmxlLFxuICA+IC5wYW5lbC1ib2R5ICsgLnRhYmxlLXJlc3BvbnNpdmUsXG4gID4gLnRhYmxlICsgLnBhbmVsLWJvZHksXG4gID4gLnRhYmxlLXJlc3BvbnNpdmUgKyAucGFuZWwtYm9keSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cbiAgPiAudGFibGUgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRoLFxuICA+IC50YWJsZSA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbiAgPiAudGFibGUtYm9yZGVyZWQsXG4gID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgICA+IHRoZWFkLFxuICAgID4gdGJvZHksXG4gICAgPiB0Zm9vdCB7XG4gICAgICA+IHRyIHtcbiAgICAgICAgPiB0aDpmaXJzdC1jaGlsZCxcbiAgICAgICAgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgPiB0aDpsYXN0LWNoaWxkLFxuICAgICAgICA+IHRkOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICA+IHRoZWFkLFxuICAgID4gdGJvZHkge1xuICAgICAgPiB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgPiB0Ym9keSxcbiAgICA+IHRmb290IHtcbiAgICAgID4gdHI6bGFzdC1jaGlsZCB7XG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgPiAudGFibGUtcmVzcG9uc2l2ZSB7XG4gICAgYm9yZGVyOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuXG4vLyBDb2xsYXBzYWJsZSBwYW5lbHMgKGFrYSwgYWNjb3JkaW9uKVxuLy9cbi8vIFdyYXAgYSBzZXJpZXMgb2YgcGFuZWxzIGluIGAucGFuZWwtZ3JvdXBgIHRvIHR1cm4gdGhlbSBpbnRvIGFuIGFjY29yZGlvbiB3aXRoXG4vLyB0aGUgaGVscCBvZiBvdXIgY29sbGFwc2UgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi5wYW5lbC1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcblxuICAvLyBUaWdodGVuIHVwIG1hcmdpbiBzbyBpdCdzIG9ubHkgYmV0d2VlbiBwYW5lbHNcbiAgLnBhbmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRwYW5lbC1ib3JkZXItcmFkaXVzO1xuXG4gICAgKyAucGFuZWwge1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIH1cbiAgfVxuXG4gIC5wYW5lbC1oZWFkaW5nIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSxcbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkcGFuZWwtaW5uZXItYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gIC5wYW5lbC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgKyAucGFuZWwtY29sbGFwc2UgLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwYW5lbC1pbm5lci1ib3JkZXI7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zXG4ucGFuZWwtZGVmYXVsdCB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLWRlZmF1bHQtYm9yZGVyLCAkcGFuZWwtZGVmYXVsdC10ZXh0LCAkcGFuZWwtZGVmYXVsdC1oZWFkaW5nLWJnLCAkcGFuZWwtZGVmYXVsdC1ib3JkZXIpO1xufVxuLnBhbmVsLXByaW1hcnkge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1wcmltYXJ5LWJvcmRlciwgJHBhbmVsLXByaW1hcnktdGV4dCwgJHBhbmVsLXByaW1hcnktaGVhZGluZy1iZywgJHBhbmVsLXByaW1hcnktYm9yZGVyKTtcbn1cbi5wYW5lbC1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtc3VjY2Vzcy1ib3JkZXIsICRwYW5lbC1zdWNjZXNzLXRleHQsICRwYW5lbC1zdWNjZXNzLWhlYWRpbmctYmcsICRwYW5lbC1zdWNjZXNzLWJvcmRlcik7XG59XG4ucGFuZWwtaW5mbyB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLWluZm8tYm9yZGVyLCAkcGFuZWwtaW5mby10ZXh0LCAkcGFuZWwtaW5mby1oZWFkaW5nLWJnLCAkcGFuZWwtaW5mby1ib3JkZXIpO1xufVxuLnBhbmVsLXdhcm5pbmcge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC13YXJuaW5nLWJvcmRlciwgJHBhbmVsLXdhcm5pbmctdGV4dCwgJHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZywgJHBhbmVsLXdhcm5pbmctYm9yZGVyKTtcbn1cbi5wYW5lbC1kYW5nZXIge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1kYW5nZXItYm9yZGVyLCAkcGFuZWwtZGFuZ2VyLXRleHQsICRwYW5lbC1kYW5nZXItaGVhZGluZy1iZywgJHBhbmVsLWRhbmdlci1ib3JkZXIpO1xufVxuIiwiLy8gRW1iZWRzIHJlc3BvbnNpdmVcbi8vXG4vLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSxcbiAgaWZyYW1lLFxuICBlbWJlZCxcbiAgb2JqZWN0LFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi8vIE1vZGlmaWVyIGNsYXNzIGZvciAxNjo5IGFzcGVjdCByYXRpb1xuLmVtYmVkLXJlc3BvbnNpdmUtMTZieTkge1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xufVxuXG4vLyBNb2RpZmllciBjbGFzcyBmb3IgNDozIGFzcGVjdCByYXRpb1xuLmVtYmVkLXJlc3BvbnNpdmUtNGJ5MyB7XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG59XG4iLCIvL1xuLy8gTW9kYWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc2hpdFxuXG4vLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbi5tb2RhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBkaXNwbGF5OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gICYuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMCwgLTI1JSk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi10cmFuc2Zvcm0oMC4zcyBlYXNlLW91dCk7XG4gIH1cbiAgJi5pbiAubW9kYWwtZGlhbG9nIHsgQGluY2x1ZGUgdHJhbnNsYXRlKDAsIDApIH1cbn1cbi5tb2RhbC1vcGVuIC5tb2RhbCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAxMHB4O1xufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOyAvL29sZCBicm93c2VycyBmYWxsYmFjayAoaWU4IGV0YylcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDNweCA5cHggcmdiYSgwLDAsMCwuNSkpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IEBpbmNsdWRlIG9wYWNpdHkoMCk7IH1cbiAgJi5pbiB7IEBpbmNsdWRlIG9wYWNpdHkoJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkpOyB9XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgcGFkZGluZzogJG1vZGFsLXRpdGxlLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgbWluLWhlaWdodDogKCRtb2RhbC10aXRsZS1wYWRkaW5nICsgJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbn1cbi8vIENsb3NlIGljb25cbi5tb2RhbC1oZWFkZXIgLmNsb3NlIHtcbiAgbWFyZ2luLXRvcDogLTJweDtcbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ7XG59XG5cbi8vIE1vZGFsIGJvZHlcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3Rlcilcbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IC8vIHJpZ2h0IGFsaWduIGJ1dHRvbnNcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBjbGVhcmZpeDsgLy8gY2xlYXIgaXQgaW4gY2FzZSBmb2xrcyB1c2UgLnB1bGwtKiBjbGFzc2VzIG9uIGJ1dHRvbnNcblxuICAvLyBQcm9wZXJseSBzcGFjZSBvdXQgYnV0dG9uc1xuICAuYnRuICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBhY2NvdW50IGZvciBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHdoaWNoIGdldHMgdGhlIGJvdHRvbSBtYXJnaW4gbGlrZSBhbGwgb3RoZXIgaW5wdXRzXG4gIH1cbiAgLy8gYnV0IG92ZXJyaWRlIHRoYXQgZm9yIGJ1dHRvbiBncm91cHNcbiAgLmJ0bi1ncm91cCAuYnRuICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIH1cbiAgLy8gYW5kIG92ZXJyaWRlIGl0IGZvciBibG9jayBidXR0b25zIGFzIHdlbGxcbiAgLmJ0bi1ibG9jayArIC5idG4tYmxvY2sge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgd2lkdGg6ICRtb2RhbC1tZDtcbiAgICBtYXJnaW46IDEwJSBhdXRvO1xuICB9XG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgNXB4IDE1cHggcmdiYSgwLDAsMCwuNSkpO1xuICB9XG5cbiAgLy8gTW9kYWwgc2l6ZXNcbiAgLm1vZGFsLXNtIHsgd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG4gICAgLm1vZGFsLWRpYWxvZyB7XG4gICAgICBtYXJnaW46IDcwcHggYXV0bztcbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAubW9kYWwtbGcgeyB3aWR0aDogJG1vZGFsLWxnOyB9XG59XG4iLCIvL1xuLy8gQ2Fyb3VzZWxcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gV3JhcHBlciBmb3IgdGhlIHNsaWRlIGNvbnRhaW5lciBhbmQgaW5kaWNhdG9yc1xuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLml0ZW0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oLjZzIGVhc2UtaW4tb3V0IGxlZnQpO1xuXG4gICAgLy8gQWNjb3VudCBmb3IgamFua2l0dWRlIG9uIGltYWdlc1xuICAgID4gaW1nLFxuICAgID4gYSA+IGltZyB7XG4gICAgICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cblxuICAgIC8vIFdlYktpdCBDU1MzIHRyYW5zZm9ybXMgZm9yIHN1cHBvcnRlZCBkZXZpY2VzXG4gICAgQG1lZGlhIGFsbCBhbmQgKHRyYW5zZm9ybS0zZCksICgtd2Via2l0LXRyYW5zZm9ybS0zZCkge1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi10cmFuc2Zvcm0oMC42cyBlYXNlLWluLW91dCk7XG4gICAgICBAaW5jbHVkZSBiYWNrZmFjZS12aXNpYmlsaXR5KGhpZGRlbik7XG4gICAgICBAaW5jbHVkZSBwZXJzcGVjdGl2ZSgxMDAwcHgpO1xuXG4gICAgICAmLm5leHQsXG4gICAgICAmLmFjdGl2ZS5yaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgICAgJi5wcmV2LFxuICAgICAgJi5hY3RpdmUubGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICAgICYubmV4dC5sZWZ0LFxuICAgICAgJi5wcmV2LnJpZ2h0LFxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUsXG4gID4gLm5leHQsXG4gID4gLnByZXYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgPiAuYWN0aXZlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgPiAubmV4dCxcbiAgPiAucHJldiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLm5leHQge1xuICAgIGxlZnQ6IDEwMCU7XG4gIH1cbiAgPiAucHJldiB7XG4gICAgbGVmdDogLTEwMCU7XG4gIH1cbiAgPiAubmV4dC5sZWZ0LFxuICA+IC5wcmV2LnJpZ2h0IHtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgPiAuYWN0aXZlLmxlZnQge1xuICAgIGxlZnQ6IC0xMDAlO1xuICB9XG4gID4gLmFjdGl2ZS5yaWdodCB7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuXG59XG5cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5jYXJvdXNlbC1jb250cm9sIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBoZWlnaHQ6IDU1cHg7XG4gIGxpbmUtaGVpZ2h0OiA1NXB4O1xuICBAaW5jbHVkZSBvcGFjaXR5KCRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHkpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCAwIDFweCAjZWJlYmViIGluc2V0KTtcbiAgZm9udC1zaXplOiAkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjVzIGVhc2UtaW4tb3V0IDBzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgMCAzMHB4ICMwMDAgaW5zZXQpO1xuICAvLyBXZSBjYW4ndCBoYXZlIHRoaXMgdHJhbnNpdGlvbiBoZXJlIGJlY2F1c2UgV2ViS2l0IGNhbmNlbHMgdGhlIGNhcm91c2VsXG4gIC8vIGFuaW1hdGlvbiBpZiB5b3UgdHJpcCB0aGlzIHdoaWxlIGluIHRoZSBtaWRkbGUgb2YgYW5vdGhlciBhbmltYXRpb24uXG5cbiAgLy8gU2V0IGdyYWRpZW50cyBmb3IgYmFja2dyb3VuZHNcbiAgJi5sZWZ0IHtcbi8qICAgICBAaW5jbHVkZSBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogcmdiYSgwLDAsMCwuNSksICRlbmQtY29sb3I6IHJnYmEoMCwwLDAsLjAwMDEpKTsgKi9cbiAgfVxuICAmLnJpZ2h0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuLyogICAgIEBpbmNsdWRlIGdyYWRpZW50LWhvcml6b250YWwoJHN0YXJ0LWNvbG9yOiByZ2JhKDAsMCwwLC4wMDAxKSwgJGVuZC1jb2xvcjogcmdiYSgwLDAsMCwuNSkpOyAqL1xuICB9XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIG9wYWNpdHkoLjkpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDAgMzBweCAkYnJhbmQtcHJpbWFyeSBpbnNldCk7XG4gIH1cblxuICAvLyBUb2dnbGVzXG4gIC5pY29uLXByZXYsXG4gIC5pY29uLW5leHQsXG4gIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LFxuICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAuaWNvbi1wcmV2LFxuICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCB7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgfVxuICAuaWNvbi1uZXh0LFxuICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQge1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgfVxuICAuaWNvbi1wcmV2LFxuICAuaWNvbi1uZXh0IHtcbiAgICB3aWR0aDogIDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtZmFtaWx5OiBzZXJpZjtcbiAgfVxuXG5cbiAgLmljb24tcHJldiB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAzOSc7Ly8gU0lOR0xFIExFRlQtUE9JTlRJTkcgQU5HTEUgUVVPVEFUSU9OIE1BUksgKFUrMjAzOSlcbiAgICB9XG4gIH1cbiAgLmljb24tbmV4dCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAzYSc7Ly8gU0lOR0xFIFJJR0hULVBPSU5USU5HIEFOR0xFIFFVT1RBVElPTiBNQVJLIChVKzIwM0EpXG4gICAgfVxuICB9XG59XG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzXG4vL1xuLy8gQWRkIGFuIHVub3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxMHB4O1xuICBsZWZ0OiA1MCU7XG4gIHotaW5kZXg6IDE1O1xuICB3aWR0aDogNjAlO1xuICBtYXJnaW4tbGVmdDogLTMwJTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogIDEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIG1hcmdpbjogMXB4O1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNhcm91c2VsLWluZGljYXRvci1ib3JkZXItY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAvLyBJRTgtOSBoYWNrIGZvciBldmVudCBoYW5kbGluZ1xuICAgIC8vXG4gICAgLy8gSW50ZXJuZXQgRXhwbG9yZXIgOC05IGRvZXMgbm90IHN1cHBvcnQgY2xpY2tzIG9uIGVsZW1lbnRzIHdpdGhvdXQgYSBzZXRcbiAgICAvLyBgYmFja2dyb3VuZC1jb2xvcmAuIFdlIGNhbm5vdCB1c2UgYGZpbHRlcmAgc2luY2UgdGhhdCdzIG5vdCB2aWV3ZWQgYXMgYVxuICAgIC8vIGJhY2tncm91bmQgY29sb3IgYnkgdGhlIGJyb3dzZXIuIFRodXMsIGEgaGFjayBpcyBuZWVkZWQuXG4gICAgLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNJbnRlcm5ldF9FeHBsb3JlclxuICAgIC8vXG4gICAgLy8gRm9yIElFOCwgd2Ugc2V0IHNvbGlkIGJsYWNrIGFzIGl0IGRvZXNuJ3Qgc3VwcG9ydCBgcmdiYSgpYC4gRm9yIElFOSwgd2VcbiAgICAvLyBzZXQgYWxwaGEgdHJhbnNwYXJlbmN5IGZvciB0aGUgYmVzdCByZXN1bHRzIHBvc3NpYmxlLlxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAgXFw5OyAvLyBJRThcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDApOyAvLyBJRTlcbiAgfVxuICAuYWN0aXZlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6ICAxMnB4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgfVxufVxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhpZGRlbiBieSBkZWZhdWx0IGZvciBzbWFsbGVyIHZpZXdwb3J0c1xuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDE1JTtcbiAgcmlnaHQ6IDE1JTtcbiAgYm90dG9tOiAyMHB4O1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1zaGFkb3c6ICRjYXJvdXNlbC10ZXh0LXNoYWRvdztcbiAgJiAuYnRuIHtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTsgLy8gTm8gc2hhZG93IGZvciBidXR0b24gZWxlbWVudHMgaW4gY2Fyb3VzZWwtY2FwdGlvblxuICB9XG59XG5cblxuLy8gU2NhbGUgdXAgY29udHJvbHMgZm9yIHRhYmxldHMgYW5kIHVwXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuXG4gIC8vIFNjYWxlIHVwIHRoZSBjb250cm9scyBhIHNtaWRnZVxuICAuY2Fyb3VzZWwtY29udHJvbCB7XG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxuICAgIC5pY29uLXByZXYsXG4gICAgLmljb24tbmV4dCB7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIG1hcmdpbi10b3A6IC0xNXB4O1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgIH1cbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCxcbiAgICAuaWNvbi1wcmV2IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICB9XG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxuICAgIC5pY29uLW5leHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgICB9XG4gIH1cblxuICAvLyBTaG93IGFuZCBsZWZ0IGFsaWduIHRoZSBjYXB0aW9uc1xuICAuY2Fyb3VzZWwtY2FwdGlvbiB7XG4gICAgbGVmdDogMjAlO1xuICAgIHJpZ2h0OiAyMCU7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIH1cblxuICAvLyBNb3ZlIHVwIHRoZSBpbmRpY2F0b3JzXG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgICBib3R0b206IDIwcHg7XG4gIH1cbn1cbiIsIi8vXG4vLyBVdGlsaXR5IGNsYXNzZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gRmxvYXRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5jbGVhcmZpeCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuLmNlbnRlci1ibG9jayB7XG4gIEBpbmNsdWRlIGNlbnRlci1ibG9jaztcbn1cbi5wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG4ucHVsbC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cblxuXG4vLyBUb2dnbGluZyBjb250ZW50XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE5vdGU6IERlcHJlY2F0ZWQgLmhpZGUgaW4gZmF2b3Igb2YgLmhpZGRlbiBvciAuc3Itb25seSAoYXMgYXBwcm9wcmlhdGUpIGluIHYzLjAuMVxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4uc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnRleHQtaGlkZSB7XG4gIEBpbmNsdWRlIHRleHQtaGlkZTtcbn1cblxuXG4vLyBIaWRlIGZyb20gc2NyZWVucmVhZGVycyBhbmQgYnJvd3NlcnNcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gRm9yIEFmZml4IHBsdWdpblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYWZmaXgge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG4iLCIvL1xuLy8gUmVzcG9uc2l2ZTogVXRpbGl0eSBjbGFzc2VzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIElFMTAgaW4gV2luZG93cyAoUGhvbmUpIDhcbi8vXG4vLyBTdXBwb3J0IGZvciByZXNwb25zaXZlIHZpZXdzIHZpYSBtZWRpYSBxdWVyaWVzIGlzIGtpbmQgb2YgYm9ya2VkIGluIElFMTAsIGZvclxuLy8gU3VyZmFjZS9kZXNrdG9wIGluIHNwbGl0IHZpZXcgYW5kIGZvciBXaW5kb3dzIFBob25lIDguIFRoaXMgcGFydGljdWxhciBmaXhcbi8vIG11c3QgYmUgYWNjb21wYW5pZWQgYnkgYSBzbmlwcGV0IG9mIEphdmFTY3JpcHQgdG8gc25pZmYgdGhlIHVzZXIgYWdlbnQgYW5kXG4vLyBhcHBseSBzb21lIGNvbmRpdGlvbmFsIENTUyB0byAqb25seSogdGhlIFN1cmZhY2UvZGVza3RvcCBXaW5kb3dzIDguIExvb2sgYXRcbi8vIG91ciBHZXR0aW5nIFN0YXJ0ZWQgcGFnZSBmb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiB0aGlzIGJ1Zy5cbi8vXG4vLyBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHRoZSBmb2xsb3dpbmc6XG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTA0OTdcbi8vIERvY3M6IGh0dHA6Ly9nZXRib290c3RyYXAuY29tL2dldHRpbmctc3RhcnRlZC8jc3VwcG9ydC1pZTEwLXdpZHRoXG4vLyBTb3VyY2U6IGh0dHA6Ly90aW1rYWRsZWMuY29tLzIwMTMvMDEvd2luZG93cy1waG9uZS04LWFuZC1kZXZpY2Utd2lkdGgvXG4vLyBTb3VyY2U6IGh0dHA6Ly90aW1rYWRsZWMuY29tLzIwMTIvMTAvaWUxMC1zbmFwLW1vZGUtYW5kLXJlc3BvbnNpdmUtZGVzaWduL1xuXG5AYXQtcm9vdCB7XG4gIEAtbXMtdmlld3BvcnQge1xuICAgIHdpZHRoOiBkZXZpY2Utd2lkdGg7XG4gIH1cbn1cblxuXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xuLy8gTm90ZTogRGVwcmVjYXRlZCAudmlzaWJsZS14cywgLnZpc2libGUtc20sIC52aXNpYmxlLW1kLCBhbmQgLnZpc2libGUtbGcgYXMgb2YgdjMuMi4wXG5cbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS14cycpO1xuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXNtJyk7XG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtbWQnKTtcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1sZycpO1xuXG4udmlzaWJsZS14cy1ibG9jayxcbi52aXNpYmxlLXhzLWlubGluZSxcbi52aXNpYmxlLXhzLWlubGluZS1ibG9jayxcbi52aXNpYmxlLXNtLWJsb2NrLFxuLnZpc2libGUtc20taW5saW5lLFxuLnZpc2libGUtc20taW5saW5lLWJsb2NrLFxuLnZpc2libGUtbWQtYmxvY2ssXG4udmlzaWJsZS1tZC1pbmxpbmUsXG4udmlzaWJsZS1tZC1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1sZy1ibG9jayxcbi52aXNpYmxlLWxnLWlubGluZSxcbi52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUteHMnKTtcbn1cbi52aXNpYmxlLXhzLWJsb2NrIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUteHMtaW5saW5lIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXhzLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtc20nKTtcbn1cbi52aXNpYmxlLXNtLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1zbS1pbmxpbmUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtbWQnKTtcbn1cbi52aXNpYmxlLW1kLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1tZC1pbmxpbmUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1tZC1pbmxpbmUtYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLWxnJyk7XG59XG4udmlzaWJsZS1sZy1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLWxnLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1sZy1pbmxpbmUtYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4teHMnKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tc20nKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tbWQnKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLWxnJyk7XG59XG5cblxuLy8gUHJpbnQgdXRpbGl0aWVzXG4vL1xuLy8gTWVkaWEgcXVlcmllcyBhcmUgcGxhY2VkIG9uIHRoZSBpbnNpZGUgdG8gYmUgbWl4aW4tZnJpZW5kbHkuXG5cbi8vIE5vdGU6IERlcHJlY2F0ZWQgLnZpc2libGUtcHJpbnQgYXMgb2YgdjMuMi4wXG5cbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1wcmludCcpO1xuXG5AbWVkaWEgcHJpbnQge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXByaW50Jyk7XG59XG4udmlzaWJsZS1wcmludC1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXByaW50LWlubGluZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1wcmludC1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1wcmludCcpO1xufVxuIiwiLypcbiAqIEdsb2JhbCB2YXJpYWJsZXNcbiAqL1xuJGltYWdlLXRoZW1lLXBhdGggICAgICAgICAgICAgICAgOiAnLi4vaW1hZ2VzLycgIWRlZmF1bHQ7XG4kaW1hZ2UtdGhlbWUtc2tpbiAgICAgICAgICAgICAgICA6ICcuLi9pbWFnZXMvJyAhZGVmYXVsdDtcbi8vIHN0YW5kYXJkIGNvbG9yc1xuJHdoaXRlXHRcdCAgICA6ICNGRkYgIWRlZmF1bHQ7XG4kYmxhY2tcdFx0XHQ6ICMwMDAgIWRlZmF1bHQ7XG4kbm9jb2xvclx0XHQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGxpZ2h0LWdyYXlcdDogI0NDQyAhZGVmYXVsdDsgXG5cblxuLy8gY29sb3IgZm9yIGRlZmF1bHQgdGhlbWVcbiR0aGVtZS1jb2xvciAgICA6ICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7IC8qIG1haW4gY29sb3Igd2hpY2ggd2lsbCBiZSB1c2VkIGZvciBhbGwgbWFpbiBibG9jayBzdHlsZXMuLi4gKi9cbiRib3JkZXItY29sb3JcdDogI2VkZWRlZCAhZGVmYXVsdDtcblxuXG4kdGhlbWUtY29sb3Itc2Vjb25kICBcdFx0XHQgOiAjZjFiYTI3ICFkZWZhdWx0O1xuJHRoZW1lLWNvbG9yLWRlZmF1bHQgICAgICAgICAgICAgOiAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG4kdGhlbWUtY29sb3ItaG92ZXIgICAgICAgICAgICAgICA6ICNmMWJhMjcgIWRlZmF1bHQ7XG4kdGhlbWUtY29sb3Itc2Vjb25kYXJ5ICAgICAgICAgICA6ICMyNjJhMmUgIWRlZmF1bHQ7XG4kbGluay1jb2xvciAgICAgICAgICAgICAgICAgICAgICA6ICNmMWJhMjcgIWRlZmF1bHQ7XG5cblxuLy8gVGhlbWUgTWFyZ2luLCBQYWRkaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kdGhlbWUtbWFyZ2luICAgIDogMjBweCAhZGVmYXVsdDtcbiR0aGVtZS1wYWRkaW5nICAgOiAyMHB4ICFkZWZhdWx0O1xuLy8gZm9udHNcbiRmb250LWZhbWlseS1zZWNvbmQgOiAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7IFxuJHRoZW1lLXBhZGRpbmcgOiAzMHB4ICFkZWZhdWx0OyBcbi8qKlxuICogSW1wb3J0IGNvbXBvbmVudCB2YXJpYWJsZXNcbiAqL1xuQGltcG9ydCBcInZhcnMvZm9ybVwiO1xuQGltcG9ydCBcInZhcnMvbmF2XCI7XG5AaW1wb3J0IFwidmFycy9sYXlvdXRcIjtcbkBpbXBvcnQgXCJ2YXJzL2VsZW1lbnRzXCI7XG5AaW1wb3J0IFwidmFycy93aWRnZXRcIjtcbiIsIi8vIFNlbGVjdFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHNlbGVjdC1zaXplICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogMzJweCAhZGVmYXVsdDtcbiRzZWxlY3QtYm9yZGVyLWNvbG9yICAgICAgICAgICAgICAgICAgICA6ICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kc2VsZWN0LXBhZGRpbmcgICAgICAgICAgICAgICAgICAgICAgICAgOiA0cHggNnB4ICFkZWZhdWx0O1xuXG4vLyBJbnB1dFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGlucHV0LXBhZGRpbmcgICAgICAgICAgICAgICAgICAgICAgICAgIDogNXB4IDZweCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUgICAgICAgICAgICAgICAgICAgICAgICA6ICRmb250LXNpemUtYmFzZSAtIDE7XG5cbiRpbnB1dC1ncm91cC1mb3JtLWJnICAgICAgICAgICAgICAgICAgICA6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWZvcm0tbWFyZ2luICAgICAgICAgICAgICAgIDogMCAwIDVweCAwIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtcGFkZGluZyAgICAgICAgICAgICAgICAgICAgOiA2cHggMTFweCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1mb250LXNpemUgICAgICAgICAgICAgICAgICA6IDEycHggIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3IgICAgICAgICAgICAgICAgOiAjZmZmICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWhlaWdodCAgICAgICAgICAgICAgICAgICAgIDogNDJweCAhZGVmYXVsdDtcblxuJGlucHV0LWZvcm0tYmcgICAgICAgICAgICAgICAgICAgICAgICAgIDogJGdyYXktZGFya2VyICFkZWZhdWx0O1xuXG4vLyBCdXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRidG4tdHJhbnNmb3JtICAgICAgICAgICAgICAgICAgICAgICAgICA6IHVwcGVyY2FzZSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy12ZXJ0aWNhbCAgICAgICAgICAgICAgICAgICA6IDVweCAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy1ob3Jpem9udGFsICAgICAgICAgICAgICAgICA6IDIwcHggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgICAgOiAxMnB4ICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodCAgICAgICAgICAgICAgICAgICAgICAgIDogMzBweCAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cyAgICAgICAgICAgICAgICAgICAgICA6IDRweCAhZGVmYXVsdDtcblxuJGJ0bi1sZy1wYWRkaW5nLXZlcnRpY2FsICAgICAgICAgICAgICAgIDogMTVweCAhZGVmYXVsdDtcbiRidG4tbGctcGFkZGluZy1ob3Jpem9udGFsICAgICAgICAgICAgICA6IDMwcHggIWRlZmF1bHQ7XG4kYnRuLWxnLWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgOiAxOHB4ICFkZWZhdWx0O1xuJGJ0bi1sZy1saW5lLWhlaWdodCAgICAgICAgICAgICAgICAgICAgIDogJGxpbmUtaGVpZ2h0LWxhcmdlICFkZWZhdWx0O1xuJGJ0bi1sZy1ib3JkZXItcmFkaXVzICAgICAgICAgICAgICAgICAgIDogNXB4ICFkZWZhdWx0O1xuXG4kYnRuLXNtLXBhZGRpbmctdmVydGljYWwgICAgICAgICAgICAgICAgOiA3cHggIWRlZmF1bHQ7XG4kYnRuLXNtLXBhZGRpbmctaG9yaXpvbnRhbCAgICAgICAgICAgICAgOiAxMnB4ICFkZWZhdWx0O1xuJGJ0bi1zbS1mb250LXNpemUgICAgICAgICAgICAgICAgICAgICAgIDogMTBweCAhZGVmYXVsdDtcbiRidG4tc20tbGluZS1oZWlnaHQgICAgICAgICAgICAgICAgICAgICA6ICRsaW5lLWhlaWdodC1zbWFsbCAhZGVmYXVsdDtcbiRidG4tc20tYm9yZGVyLXJhZGl1cyAgICAgICAgICAgICAgICAgICA6ICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG4kYnRuLXhzLXBhZGRpbmctdmVydGljYWwgICAgICAgICAgICAgICAgOiA0cHggIWRlZmF1bHQ7XG4kYnRuLXhzLXBhZGRpbmctaG9yaXpvbnRhbCAgICAgICAgICAgICAgOiAxMHB4ICFkZWZhdWx0O1xuJGJ0bi14cy1mb250LXNpemUgICAgICAgICAgICAgICAgICAgICAgIDogMTBweCAhZGVmYXVsdDtcbiRidG4teHMtbGluZS1oZWlnaHQgICAgICAgICAgICAgICAgICAgICA6ICRsaW5lLWhlaWdodC1zbWFsbCAhZGVmYXVsdDtcbiRidG4teHMtYm9yZGVyLXJhZGl1cyAgICAgICAgICAgICAgICAgICA6ICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG4kYnRuLW91dGxpbmUtY29sb3IgICAgICAgICAgICAgICAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtaG92ZXItY29sb3IgICAgICAgICAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtaGVpZ2h0ICAgICAgICAgICAgICAgICAgICAgOiAzNnB4ICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLXBhZGRpbmcgXHRcdFx0OiAzcHggMTVweCAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1iZyAgICAgICAgICAgICAgICAgICAgICAgICA6ICR0aGVtZS1jb2xvciAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1ob3Zlci1iZyAgICAgICAgICAgICAgICAgICA6JHRoZW1lLWNvbG9yLXNlY29uZCAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1ib3JkZXIgICAgICAgICAgICAgICAgICAgICA6IDAgIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtYm9yZGVyLWhvdmVyICAgICAgICAgICAgICAgOiAwICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgIDogMTJweCAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1saW5lLWhlaWdodCAgICAgICAgICAgICAgICA6IDI4cHggIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtYm9yZGVyLXJhZGl1cyAgICAgICAgICAgICAgOiAwICFkZWZhdWx0O1xuXG4kYnRuLW91dGxpbmUtc20tcGFkZGluZy12ZXJ0aWNhbCAgICAgICAgOiA4cHggIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtc20tcGFkZGluZy1ob3Jpem9udGFsICAgICAgOiAxOHB4ICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLXNtLWZvbnQtc2l6ZSAgICAgICAgICAgICAgIDogMTFweCAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1zbS1saW5lLWhlaWdodCAgICAgICAgICAgICA6IDEuMyAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1zbS1ib3JkZXItcmFkaXVzICAgICAgICAgICA6IDNweCAhZGVmYXVsdDtcblxuJGJ0bi1vdXRsaW5lLXhzLXBhZGRpbmctdmVydGljYWwgICAgICAgIDogNXB4ICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLXhzLXBhZGRpbmctaG9yaXpvbnRhbCAgICAgIDogMTVweCAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS14cy1mb250LXNpemUgICAgICAgICAgICAgICA6IDExcHggIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUteHMtbGluZS1oZWlnaHQgICAgICAgICAgICAgOiAxLjIgIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUteHMtYm9yZGVyLXJhZGl1cyAgICAgICAgICAgOiAzcHggIWRlZmF1bHQ7XG5cbiRidG4tb3V0bGluZS1sZy1wYWRkaW5nLXZlcnRpY2FsICAgICAgICA6IDIxcHggIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtbGctcGFkZGluZy1ob3Jpem9udGFsICAgICAgOiA0OHB4ICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWxnLWZvbnQtc2l6ZSAgICAgICAgICAgICAgIDogMTRweCAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1sZy1saW5lLWhlaWdodCAgICAgICAgICAgICA6IDMgIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtbGctYm9yZGVyLXJhZGl1cyAgICAgICAgICAgOiA0cHggIWRlZmF1bHQ7XG5cbiRidG4taW52ZXJzZS1jb2xvciAgICAgICAgICAgICAgICAgICAgICA6ICRibGFjayAhZGVmYXVsdDtcbiRidG4taW52ZXJzZS1ob3Zlci1jb2xvciAgICAgICAgICAgICAgICA6ICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4taW52ZXJzZS1iZyAgICAgICAgICAgICAgICAgICAgICAgICA6ICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4taW52ZXJzZS1ob3Zlci1iZyAgICAgICAgICAgICAgICAgICA6ICRibGFjayAhZGVmYXVsdDtcbiRidG4taW52ZXJzZS1ib3JkZXItY29sb3IgICAgICAgICAgICAgICA6ICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kYnRuLWludmVyc2UtYm9yZGVyLWhvdmVyLWNvbG9yICAgICAgICAgOiAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGJ0bi1pbnZlcnNlLWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgIDogMTJweCAhZGVmYXVsdDtcbiRidG4taW52ZXJzZS1wYWRkaW5nICAgICAgICAgICAgICAgICAgICA6IDEwcHggMTVweCAhZGVmYXVsdDtcblxuJGJ0bi1vdXRsaW5lLWludmVyc2UtY29sb3IgICAgICAgICAgICAgIDogJHRoZW1lLWNvbG9yLXNlY29uZCAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1pbnZlcnNlLWJnICAgICAgICAgICAgICAgICA6ICRibGFjayAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1pbnZlcnNlLWJvcmRlci1jb2xvciAgICAgICA6IDFweCBzb2xpZCAkYnRuLW91dGxpbmUtaW52ZXJzZS1iZyAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1pbnZlcnNlLWhvdmVyLWJnICAgICAgICAgICA6ICR0aGVtZS1jb2xvciAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1pbnZlcnNlLWhvdmVyLWNvbG9yICAgICAgICA6ICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1pbnZlcnNlLWJvcmRlci1ob3Zlci1jb2xvciA6IDFweCBzb2xpZCAkdGhlbWUtY29sb3Itc2Vjb25kICFkZWZhdWx0O1xuXG4vLyBTZWFyY2hcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRzZWFyY2gtYmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICR3aGl0ZSAhZGVmYXVsdDtcbiRzZWFyY2gtZm9udC1zaXplICAgICAgICAgICAgICAgICAgICAgICA6IDEycHggIWRlZmF1bHQ7XG4kc2VhcmNoLXBhZGRpbmcgICAgICAgICAgICAgICAgICAgICAgICAgOiAxNXB4ICFkZWZhdWx0O1xuJHNlYXJjaC13aWR0aCAgICAgICAgICAgICAgICAgICAgICAgICAgIDogYXV0byAhZGVmYXVsdDtcbiRzZWFyY2gtYnV0dG9uLWJnICAgICAgICAgICAgICAgICAgICAgICA6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHNlYXJjaC1tYWluLWJ1dHRvbi1iZyAgICAgICAgICAgICAgICAgIDogJHdoaXRlICFkZWZhdWx0O1xuJHNlYXJjaC1tYWluLWJ1dHRvbi1ib3JkZXIgICAgICAgICAgICAgIDogJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRzZWFyY2gtbWFpbi1idXR0b24tY29sb3IgICAgICAgICAgICAgICA6ICRncmF5LWRhcmtlciAhZGVmYXVsdDtcbiRzZWFyY2gtYnV0dG9uLWJvcmRlciAgICAgICAgICAgICAgICAgICA6IDBweCAhZGVmYXVsdDtcbiRzZWFyY2gtYnV0dG9uLWhvdmVyLWJnICAgICAgICAgICAgICAgICA6ICR3aGl0ZSAhZGVmYXVsdDtcbiRzZWFyY2gtYnV0dG9uLWNvbG9yICAgICAgICAgICAgICAgICAgICA6ICR3aGl0ZSAhZGVmYXVsdDtcbiRzZWFyY2gtYnV0dG9uLXNpemUgICAgICAgICAgICAgICAgICAgICA6IDM2cHggIWRlZmF1bHQ7XG4kc2VhcmNoLWJ1dHRvbi1ob3Zlci1jb2xvciAgICAgICAgICAgICAgOiAkZ3JheS1kYXJrZXIgIWRlZmF1bHQ7XG4kc2VhcmNoLXJhZGl1cyAgICAgICAgICAgICAgICAgICAgICAgICAgOiAzcHggIWRlZmF1bHQ7XG4kc2VhcmNoLWhlaWdodCAgICAgICAgICAgICAgICAgICAgICAgICAgOiA1MHB4ICFkZWZhdWx0O1xuJHNlYXJjaC1ib3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgIDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kc2VhcmNoLWhvdmVyLWJvcmRlciAgICAgICAgICAgICAgICAgICAgOiAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJHNlYXJjaC1ib3JkZXItcmFkaXVzICAgICAgICAgICAgICAgICAgIDogNHB4ICFkZWZhdWx0O1xuJHNlYXJjaC1jYXRlZ29yaWVzLWJvcmRlci1yYWRpdXMgICAgICAgIDogNHB4ICFpbXBvcnRhbnQ7XG4iLCIvLyBNYWluIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRtZWdhbWVudS1iZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItbWVnYS1ib3JkZXIgICAgICAgICAgICAgICAgICAgICAgICA6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1tZWdhLWxpbmUtaGVpZ2h0ICAgICAgICAgICAgICAgICAgIDogNzVweCAhZGVmYXVsdDtcblxuJG5hdmJhci1tZWdhLXNraW4yLWJnICAgICAgICAgICAgICAgICAgICAgIDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLW1lZ2Etc2tpbjItYm9yZGVyICAgICAgICAgICAgICAgICAgOiAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1tZWdhLXNraW4yLWxpbmUtaGVpZ2h0ICAgICAgICAgICAgIDogMzBweCAhZGVmYXVsdDsgXG5cbiRuYXZiYXItdGV4dC10cmFuc2Zvcm0gICAgICAgICAgICAgICAgICAgICA6IHVwcGVyY2FzZSAhZGVmYXVsdDtcblxuJG5hdmJhci1mb250LXNpemUgICAgICAgICAgICAgICAgICAgICAgICAgIDogMTRweCAhZGVmYXVsdDtcbiRuYXZiYXItZm9udC13ZWlnaHQgICAgICAgICAgICAgICAgICAgICAgICA6IDQwMCAhZGVmYXVsdDtcbiBcbiRuYXZiYXItbGluay1tYXJnaW4gICAgICAgICAgICAgICAgICAgICAgICA6IDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmstcGFkZGluZyAgICAgICAgICAgICAgICAgICAgICAgOiAwIDE1cHggIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmstY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgOiAkYmxhY2sgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmstaG92ZXItY29sb3IgICAgICAgICAgICAgICAgICAgOiAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmstaG92ZXItYmcgICAgICAgICAgICAgICAgICAgICAgOiAkbm9jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1hY3RpdmUtY29sb3IgICAgICAgICAgICAgICAgICA6ICR0aGVtZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1hY3RpdmUtYmcgICAgICAgICAgICAgICAgICAgICA6ICRub2NvbG9yICFkZWZhdWx0O1xuXG4kbmF2YmFyLXdpZGdldC10aXRsZS1jb2xvciAgICAgICAgICAgICAgICAgOiAkYmxhY2sgIWRlZmF1bHQ7XG4kbmF2YmFyLXdpZGdldC10aXRsZS1tYXJnaW4gICAgICAgICAgICAgICAgOiAwIDAgMTBweCAwICFkZWZhdWx0O1xuJG5hdmJhci13aWRnZXQtdGl0bGUtZm9udC1zaXplICAgICAgICAgICAgIDogMTRweCAhZGVmYXVsdDtcbiRuYXZiYXItd2lkZ2V0LXRpdGxlLWZvbnQtd2VpZ2h0XHRcdCAgICAgICA6IDkwMCAhZGVmYXVsdDtcblxuJG5hdmJhci1kcm9wZG93bi1wYWRkaW5nICAgICAgICAgICAgICAgICAgIDogMTBweCAyMHB4IDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLWJnICAgICAgICAgICAgICAgICAgICAgICAgOiAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1zaXplICAgICAgICAgICAgICAgICAgICAgIDogMjUwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLWxpbmstY29sb3IgICAgICAgICAgICAgICAgOiAjMDAwICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yICAgICAgICAgIDogJHRoZW1lLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1saW5rLWhvdmVyLWJnICAgICAgICAgICAgIDogJG5vY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLWxpbmstdHJhbnNmb3JtICAgICAgICAgICAgOiBub25lICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1saW5rLWZvbnQtc2l6ZSAgICAgICAgICAgIDogMTRweCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbGluay1mb250LXdlaWdodCAgICAgICAgICA6IDMwMCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbGluay1ib3JkZXItY29sb3IgICAgICAgICA6ICRub2NvbG9yICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpbmstc21hbGwtcGFkZGluZyAgICAgICAgICAgICAgICAgOiAxOHB4IDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmstbGFyZ2UtcGFkZGluZyAgICAgICAgICAgICAgICAgOiA0NnB4IDAgNDZweCAhZGVmYXVsdDsgIFxuXG4vLyBWZXJ0aWNhbCBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFRvcCBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kbmF2YmFyLW1lbnV0b3AtZm9udC13ZWlnaHRcdFx0XHRcdCAgICA6IDgwMCAhZGVmYXVsdDtcbiRuYXZiYXItbWVudXRvcC1mb250LXNpemVcdFx0XHRcdCAgICAgICA6IDEycHggIWRlZmF1bHQ7XG4kbmF2YmFyLW1lbnV0b3AtcGFkZGluZy10b3BcdFx0XHRcdCAgICA6IDIycHggIWRlZmF1bHQ7XG4kbmF2YmFyLW1lbnV0b3AtcGFkZGluZy1ib3R0b21cdFx0XHQgICAgOiAxOHB4ICFkZWZhdWx0O1xuJG5hdmJhci1tZW51dG9wLWNvbG9yXHRcdFx0XHRcdCAgICAgICA6ICM4MjgyODIgIWRlZmF1bHQ7XG4kbmF2YmFyLW1lbnV0b3AtbWFyZ2luXHRcdFx0XHRcdCAgICAgICA6IDAgMTBweCAhZGVmYXVsdDtcblxuLy8gT2ZmLUNhbnZhcyBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kbmF2YmFyLW9mZmNhbnZhcy13aWR0aCAgICAgICAgICAgICAgICAgICAgOiA2OSUgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1iZy1jbG9zZSAgICAgICAgICAgICAgICAgOiAkbm9jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLWNvbG9yICAgICAgICAgICAgICAgICAgICA6ICRibGFjayAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLWJnICAgICAgICAgICAgICAgICAgICAgICA6ICNmNWY1ZjUgICFkZWZhdWx0O1xuJG5hdmJhci1vZmZjYW52YXMtYm9yZGVyICAgICAgICAgICAgICAgICAgIDogcmdiYSgwLCAwLCAwLCAwLjEpICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgbGlua3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRuYXZiYXItb2ZmY2FudmFzLWxpbmstY29sb3IgICAgICAgICAgICAgICA6ICR0ZXh0LWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1vZmZjYW52YXMtbGluay1ob3Zlci1jb2xvciAgICAgICAgIDogIzAyODFBQiAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLWxpbmstaG92ZXItYmcgICAgICAgICAgICA6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1vZmZjYW52YXMtbGluay1hY3RpdmUtY29sb3IgICAgICAgIDogJG5hdmJhci1vZmZjYW52YXMtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLWxpbmstYWN0aXZlLWJnICAgICAgICAgICA6IGRhcmtlbigkbmF2YmFyLW9mZmNhbnZhcy1iZywgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLWxpbmstZGlzYWJsZWQtY29sb3IgICAgICA6ICM0NDQgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1saW5rLWRpc2FibGVkLWJnICAgICAgICAgOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLWxpbmstZm9udC1zaXplICAgICAgICAgICA6IDE0cHggIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJG5hdmJhci1vZmZjYW52YXMtYnJhbmQtY29sb3IgICAgICAgICAgICAgIDogJG5hdmJhci1vZmZjYW52YXMtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLWJyYW5kLWhvdmVyLWNvbG9yICAgICAgICA6ICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLWJyYW5kLWhvdmVyLWJnICAgICAgICAgICA6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgc2VhcmNoXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kbmF2YmFyLW9mZmNhbnZhcy1zZWFyY2gtYmcgICAgICAgICAgICAgICAgOiBsaWdodGVuKCRuYXZiYXItb2ZmY2FudmFzLWJnLCAyNSUpICFkZWZhdWx0O1xuJG5hdmJhci1vZmZjYW52YXMtc2VhcmNoLWJnLWZvY3VzICAgICAgICAgIDogJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1vZmZjYW52YXMtc2VhcmNoLWJvcmRlciAgICAgICAgICAgIDogJG5hdmJhci1vZmZjYW52YXMtYmcgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1zZWFyY2gtcGxhY2Vob2xkZXItY29sb3IgOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLXNlYXJjaC1pbnB1dC1iZyAgICAgICAgICA6IHRyYW5zcGFyZW50aXplKCRibGFjaywgLjEwKSAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIHRvZ2dsZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJG5hdmJhci1vZmZjYW52YXMtdG9nZ2xlLWhvdmVyLWJnICAgICAgICAgIDogJGdyYXktZGFyayAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLXRvZ2dsZS1pY29uLWJhci1iZyAgICAgICA6ICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLXRvZ2dsZS1ib3JkZXItY29sb3IgICAgICA6ICRncmF5LWRhcmsgIWRlZmF1bHQ7XG5cbiRuYXZiYXItb2ZmY2FudmFzLWJ1dHRvbi1wb3NpdGlvbiAgICAgICAgICA6IC0xNzJweCAhZGVmYXVsdDsiLCJcbi8vIFRvcGJhclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHRvcGJhci1iZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAjMjgyODI4ICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLWNvbG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1ob3Zlci1jb2xvciAgICAgICAgICAgICAgICAgICAgICAgIDogJHRoZW1lLWNvbG9yICFkZWZhdWx0O1xuJHRvcGJhci1jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcbiR0b3BiYXItYm9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogMCAhZGVmYXVsdDtcbiR0b3BiYXItZm9udC1zaXplICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogMTFweCAhZGVmYXVsdDtcbiR0b3BiYXItaWNvbi1jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kdG9wYmFyLWljb24tZm9udC1zaXplICAgICAgICAgICAgICAgICAgICAgICAgICA6IDEzcHggIWRlZmF1bHQ7XG4kdG9wYmFyLXRleHQtdHJhbnNmb3JtICAgICAgICAgICAgICAgICAgICAgICAgICA6IHVwcGVyY2FzZSAhZGVmYXVsdDtcbiR0b3BiYXItcGFkZGluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICBcdFx0OiAxNnB4IDBweCAhZGVmYXVsdDtcblxuLy8vLyBIZWFkZXJcblxuJGhlYWRlci1tYWluLXBhZGRpbmcgOiAzMHB4IDAgIWRlZmF1bHQ7IFxuXG5cblxuJG1hc3Nib3R0b20taGVhZC1iZ1x0XHQgOiAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG4kbWFzc2JvdHRvbS1oZWFkLXBhZGRpbmcgOiA2cHggOXB4ICFkZWZhdWx0O1xuJG1hc3Nib3R0b20taGVhZC1jb2xvciAgIDogJHRoZW1lLWNvbG9yICFkZWZhdWx0O1xuJG1hc3Nib3R0b20taGVhZC1ib3JkZXItY29sb3I6IGRhcmtlbigkbWFzc2JvdHRvbS1oZWFkLWJnLDQlKSFkZWZhdWx0OyBcblxuLyoqXG4gKlxuICovXG5cbiAkbWFpbm1lbnUtYmc6ICMyMjIyMjIgIWRlZmF1bHQ7XG5cblxuXG5cbi8vIEZvb3RlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAgXG4kZm9vdGVyLWJnICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICMwZDBjMGMgIWRlZmF1bHQ7XG4kZm9vdGVyLWNvbG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICM5OTk5OTkgIWRlZmF1bHQ7XG4kZm9vdGVyLXRyYW5zZm9ybSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IG5vbmUgIWRlZmF1bHQ7XG4kZm9vdGVyLWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IDE0cHggIWRlZmF1bHQ7IFxuJGZvb3Rlci1ib3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBub25lICFkZWZhdWx0O1xuJGZvb3Rlci1wYWRkaW5nLXRvcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiA1MHB4ICFkZWZhdWx0O1xuJGZvb3Rlci1wYWRkaW5nLWJvdHRvbSAgICAgICAgICAgICAgICAgICAgICAgICAgOiA1MHB4ICFkZWZhdWx0O1xuJGZvb3Rlci10ZXh0LWhpZ2h0bGlnaHQgICAgICAgICAgICAgICAgICAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kZm9vdGVyLWxpbmstZm9udC1zaXplXHRcdFx0XHRcdFx0XHQ6IDE0cHggIWRlZmF1bHQ7XG4kZm9vdGVyLWNvbHVtbi1tYXJnaW4gICAgICAgICAgICAgICAgICAgICAgICAgICA6IDAgMCAyNXB4IDAgIWRlZmF1bHQ7XG4kZm9vdGVyLWxpbmstY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICM5OTk5OTkgIWRlZmF1bHQ7XG4kZm9vdGVyLWxpbmstaG92ZXItY29sb3IgICAgICAgICAgICAgICAgICAgICAgICA6ICR0aGVtZS1jb2xvciAhZGVmYXVsdDtcbiRmb290ZXItaWNvbi1jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogZGFya2VuKCR3aGl0ZSwgMjAlKSAhZGVmYXVsdDtcbiRmb290ZXItaWNvbi1mb250LXNpemUgICAgICAgICAgICAgICAgICAgICAgICAgIDogMTNweCAhZGVmYXVsdDtcbiRmb290ZXItaGVhZGluZy1mb250LXNpemUgICAgICAgICAgICAgICAgICAgICAgIDogMThweCAhZGVmYXVsdDtcbiRmb290ZXItaGVhZGluZy1jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJHdoaXRlICFkZWZhdWx0O1xuJGZvb3Rlci1oZWFkaW5nLW1hcmdpbiAgICAgICAgICAgICAgICAgICAgICAgICAgOiAwIDAgMjVweCAhZGVmYXVsdDtcbiRmb290ZXItaGVhZGluZy1wYWRkaW5nICAgICAgICAgICAgICAgICAgICAgICAgIDogMCAwIDIwcHggIWRlZmF1bHQ7XG4kZm9vdGVyLWhlYWRpbmctZGlzcGxheSAgICAgICAgICAgICAgICAgICAgICAgICA6IG5vbmUgIWRlZmF1bHQ7XG4kZm9vdGVyLWhlYWRpbmctdHJhbnNmb3JtICAgICAgICAgICAgICAgICAgICAgICA6IG5vbmUgIWRlZmF1bHQ7XG4kZm9vdGVyLWxpc3QtdHJhbnNmb3JtICAgICAgICAgICAgICAgICAgICAgICAgICA6IG5vbmUgIWRlZmF1bHQ7XG4kZm9vdGVyLWxpc3QtZm9udC1zaXplICAgICAgICAgICAgICAgICAgICAgICAgICA6IDE0cHggIWRlZmF1bHQ7IFxuJGZvb3Rlci1saXN0LW1hcmdpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAwIDAgMTBweCAhZGVmYXVsdDtcbiRmb290ZXItbGlzdC1saWdodC1oZWlnaHQgICAgICAgICAgICAgICAgICAgICAgIDogMi41ICFkZWZhdWx0OyAgXG4kZm9vdGVyLWhlYWRpbmctZndlaWdodCAgICAgICAgICAgICAgICAgICAgICAgICA6IDQwMCAhZGVmYXVsdDtcbiRmb290ZXItaGVhZGluZy1mZmFtaWx5ICAgICAgICAgICAgICAgICAgICAgICAgIDogJGZvbnQtZmFtaWx5LXNlY29uZCAhZGVmYXVsdDtcblxuJGZvb3Rlci1uZXdzbGV0dGVyLXBhZGRpbmcgICAgICAgICAgICAgICAgICAgICAgOiAyNXB4ICFkZWZhdWx0O1xuJGZvb3Rlci1uZXdzbGV0dGVyLWJnICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG4kZm9vdGVyLW5ld3NsZXR0ZXItY29sb3IgICAgICAgICAgICAgICAgICAgICAgICA6ICM0ODQ4NDggIWRlZmF1bHQ7XG4kZm9vdGVyLW5ld3NsZXR0ZXItaGVhZGluZy1mb250LXNpemUgICAgICAgICAgICA6IDE4cHggIWRlZmF1bHQ7XG5cbiRmb290ZXItdG9wLWJnIFx0XHRcdFx0XHRcdFx0XHRcdDogJHRoZW1lLWNvbG9yICFkZWZhdWx0O1xuJGZvb3Rlci10b3AtY29sb3IgIFx0XHRcdFx0XHRcdFx0XHQ6ICNmZmYgIWRlZmF1bHQ7XG4kZm9vdGVyLXRvcC1wYWRkaW5nLXRvcFx0XHRcdFx0XHRcdFx0OiAxMnB4ICFkZWZhdWx0OyBcbiRmb290ZXItdG9wLXBhZGRpbmctYm90dG9tXHRcdFx0XHRcdFx0OiAxMnB4ICFkZWZhdWx0O1xuJGZvb3Rlci10b3AtZm9udC1zaXplXHRcdFx0XHRcdFx0XHQ6IDEycHggIWRlZmF1bHQ7XG4kZm9vdGVyLXRvcC1sZXR0ZXItc3BhY2luZ1x0XHRcdFx0XHRcdDogMnB4ICFkZWZhdWx0O1xuJGZvb3Rlci10b3AtYm9yZGVyLWNvbG9yIFx0XHRcdFx0XHRcdDogcmdiYSgwLCAwLCAwLCAwLjEpO1xuXG4kZm9vdGVyLWJvdHRvbS1iZyBcdFx0XHRcdFx0XHRcdFx0XHQ6ICR3aGl0ZSAhZGVmYXVsdDtcbiRmb290ZXItYm90dG9tLWNvbG9yICBcdFx0XHRcdFx0XHRcdFx0OiAjZmZmICFkZWZhdWx0O1xuJGZvb3Rlci1ib3R0b20tcGFkZGluZy10b3BcdFx0XHRcdFx0XHRcdDogMTJweCAhZGVmYXVsdDsgXG4kZm9vdGVyLWJvdHRvbS1wYWRkaW5nLWJvdHRvbVx0XHRcdFx0XHRcdDogMTJweCAhZGVmYXVsdDtcbiRmb290ZXItYm90dG9tLWZvbnQtc2l6ZVx0XHRcdFx0XHRcdFx0OiAxMnB4ICFkZWZhdWx0O1xuJGZvb3Rlci1ib3R0b20tbGV0dGVyLXNwYWNpbmdcdFx0XHRcdFx0XHQ6IDJweCAhZGVmYXVsdDtcbiRmb290ZXItYm90dG9tLWJvcmRlci1jb2xvciBcdFx0XHRcdFx0XHQ6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbi8vIENvcHlyaWdodFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gLy8gQ29weXJpZ2h0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kY29weXJpZ2h0LWJnICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICNmZmYgIWRlZmF1bHQ7XG4kY29weXJpZ2h0LWNvbG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICM5OTkgIWRlZmF1bHQ7XG4kY29weXJpZ2h0LWxpbmstY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICM5OTkgIWRlZmF1bHQ7XG4kY29weXJpZ2h0LXBhZGRpbmctdG9wICAgICAgICAgICAgICAgICAgICAgICAgICA6IDAgIWRlZmF1bHQ7XG4kY29weXJpZ2h0LXBhZGRpbmctYm90dG9tICAgICAgICAgICAgICAgICAgICAgICA6IDAgIWRlZmF1bHQ7XG4kY29weXJpZ2h0LWZvbnQtc2l6ZVx0XHRcdFx0XHRcdFx0ICAgICAgICAgOiAxM3B4ICFkZWZhdWx0OyBcbiRjb3B5cmlnaHQtZm9udC13ZWlnaHRcdFx0XHRcdFx0XHRcdCAgICAgIDogNDAwICFkZWZhdWx0O1xuXG4kZGVsLWZvbnQtc2l6ZVx0XHRcdFx0XHRcdFx0XHRcdCAgICAgICAgIDogMTJweCAhZGVmYXVsdDtcbiRkZWwtY29sb3JcdFx0XHRcdFx0XHRcdFx0XHRcdCAgICAgICAgIDogIzk5OTk5OTsiLCIkYm8tcGFyYWxsYXgtYmVmb3JlLWJhY2tncm91bmQgOiB1cmwoXCJodHRwOi8vdmVudXNkZW1vLmNvbS93cG9wYWwvbWl4L21vYmlsZS93cC1jb250ZW50L3VwbG9hZHMvMjAxNC8xMS9iZy1mb290ZXItY2QuanBnXCIpIWRlZmF1bHQ7XG5cbiRlbGVtZW50LWNvbG9yLXByaW1hcnkgICAgICAgIDogJHRoZW1lLWNvbG9yICFkZWZhdWx0O1xuXG4gLyogLS0tIFNDU1MgRm9yIEFjY29yZGlvbiAtLS0gKi9cbiRiby1hY2NvcmRpb24tYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDsgXG4kYm8tYWNjb3JkaW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG5cbiRiby1hY2NvcmRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZWVlICFkZWZhdWx0O1xuXG4gLyogLS0tIFNDU1MgRm9yIEJyZWFkY3J1bWIgLS0tICovXG5cbiAvKiAtLS0gU0NTUyBGb3IgQnV0dG9ucyAtLS0gKi9cblxuIC8qIC0tLSBTQ1NTIEZvciBDYWxsLXRvLWFjdGlvbiAtLS0gKi8kd2hpdGUgOiAjRkZGRkZGICFkZWZhdWx0O1xuXG4gLyogLS0tIFNDU1MgRm9yIENvbnRlbnQtc2xpZGVyIC0tLSAqLy8qICAqL1xuXG4kYm8tY2Fyb3VzZWwtbWQtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA1MHB4ICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLW1kLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgNzVweCAhZGVmYXVsdDtcblxuJGJvLWNhcm91c2VsLXNtLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMzhweCAhZGVmYXVsdDtcbiRiby1jYXJvdXNlbC1zbS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDU3cHggIWRlZmF1bHQ7XG5cbiRiby1jYXJvdXNlbC14cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kYm8tY2Fyb3VzZWwteHMtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICA0NXB4ICFkZWZhdWx0O1xuIFxuLyogY2Fyb3VzZWwtY29udHJvbHMtdjEgKi9cbiRiby1jYXJvdXNlbC1jb250cm9scy12MS1jb2xvcjogICAgICAgICAgICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG4kYm8tY2Fyb3VzZWwtY29udHJvbHMtdjEtaG92ZXItY29sb3I6ICAgICAgICAgICAgICBkYXJrZW4oJGJvLWNhcm91c2VsLWNvbnRyb2xzLXYxLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLWNvbnRyb2xzLXYxLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAwLjUpICFkZWZhdWx0O1xuXG4vKiBjYXJvdXNlbC1jb250cm9scy12MiAqL1xuJGJvLWNhcm91c2VsLWNvbnRyb2xzLXYyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgIzk5OSAhZGVmYXVsdDtcbiRiby1jYXJvdXNlbC1jb250cm9scy12Mi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgIGRhcmtlbigkYm8tY2Fyb3VzZWwtY29udHJvbHMtdjItY29sb3IsIDI1JSkgIWRlZmF1bHQ7XG5cbi8qIGNhcm91c2VsLWNvbnRyb2xzLXYzICovXG4kYm8tY2Fyb3VzZWwtY29udHJvbHMtdjMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLWNvbnRyb2xzLXYzLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRiby1jYXJvdXNlbC1jb250cm9scy12My1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAgIWRlZmF1bHQ7XG4kYm8tY2Fyb3VzZWwtY29udHJvbHMtdjMtaG92ZXItYmc6ICAgICAgICAgICAgICAgICAkZWxlbWVudC1jb2xvci1wcmltYXJ5ICFkZWZhdWx0O1xuXG5cblxuLyogTmF2aWdhdGlvbiBTdHlsZXMgKi9cblxuLyogY2Fyb3VzZWwtaW5kaWNhdG9ycy12MSAqL1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjEtYmc6ICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRiby1jYXJvdXNlbC1pbmRpY2F0b3JzLXYxLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuXG4vKiBjYXJvdXNlbC1pbmRpY2F0b3JzLXYyICovXG4kYm8tY2Fyb3VzZWwtaW5kaWNhdG9ycy12Mi1iZzogICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjItaG92ZXItYmc6ICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG5cbi8qIGNhcm91c2VsLWluZGljYXRvcnMtdjMgKi9cbiRiby1jYXJvdXNlbC1pbmRpY2F0b3JzLXYzLWJnOiAgICAgICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjMtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG5cbi8qIGNhcm91c2VsLWluZGljYXRvcnMtdjQgKi9cbiRiby1jYXJvdXNlbC1pbmRpY2F0b3JzLXY0LWJnOiAgICAgICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjQtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG5cblxuLyogY2Fyb3VzZWwtaW5kaWNhdG9ycy12NSAqL1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjUtYmc6ICAgICAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYm8tY2Fyb3VzZWwtaW5kaWNhdG9ycy12NS1ob3Zlci1iZzogICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcblxuLyogY2Fyb3VzZWwtaW5kaWNhdG9ycy12NiAqL1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjYtYmc6ICAgICAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYm8tY2Fyb3VzZWwtaW5kaWNhdG9ycy12Ni1ob3Zlci1iZzogICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcblxuIC8qIC0tLSBTQ1NTIEZvciBDb3VudGVycyAtLS0gKi9cbiRiby1jb3VudGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAjMDAwO1xuJGJvLWNvdW50ZXItZm9udC13ZWlnaHQ6ICAgICAgICAgICAgIDYwMDtcbiRiby1jb3VudGVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAzMHB4O1xuXG4kYm8tY291bnRlci1pY29uLWZvbnQtc2l6ZTogICAgICAgICAgMzZweDtcbiRiby1jb3VudGVyLWhlYWRpbmctZm9udC13ZWlnaHQ6ICAgICA3MDA7XG5cbiAvKiAtLS0gU0NTUyBGb3IgSGVhZGluZyAtLS0gKi9cbiAkYm8taGVhZGluZy1jb2xvcjogICAgICAgICAgICAkdGhlbWUtY29sb3I7XG5cbiAvKiAtLS0gU0NTUyBGb3IgSWNvbi1ib3ggLS0tICovXG5cbiAvKiAtLS0gU0NTUyBGb3IgSW50ZXJhY3RpdmUtYmFubmVyIC0tLSAqL1xuXG4gLyogLS0tIFNDU1MgRm9yIExhdGVzdC1wb3N0cyAtLS0gKi8vKiBsYXRlc3QgcG9zdHMgKi9cbiRiby1sYXRlc3QtcG9zdHMtY29sb3I6ICAgICAgICAgICAgICAgICAgICM2OTY5Njk7XG4kYm8tbGF0ZXN0LXBvc3RzLWEtY29sb3I6ICAgICAgICAgICAgICAgICAjMDAwO1xuJGJvLWxhdGVzdC1wb3N0cy1hLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmVkO1xuJGJvLWxhdGVzdC1wb3N0cy1mb250LXNpemU6ICAgICAgICAgICAgICAgMTRweDtcbiRiby1sYXRlc3QtcG9zdHMtdGl0bGUtZm9udC1zaXplOiAgICAgICAgIDE4cHg7XG5cbiRiby1sYXRlc3QtcG9zdHMtcHJvZmlsZS1mb250LXNpemU6ICAgICAgIDEzcHg7XG4kYm8tbGF0ZXN0LXBvc3RzLXByb2ZpbGUtY29sb3I6ICAgICAgICAgICAjNjk2OTY5O1xuXG4gLyogLS0tIFNDU1MgRm9yIExpc3QgLS0tICovLyogdmFyaWFibGVzIGZvciBsaXN0ICovXG4kYm8tbGlzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAjNjY2ICFkZWZhdWx0OyBcbiRiby1saXN0LWEtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRiby1saXN0LWNvbG9yICFkZWZhdWx0OyBcbiRiby1saXN0LWEtY29sb3ItaG92ZXI6ICAgICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICAhZGVmYXVsdDtcblxuLyogdmFyaWFibGVzIGZvciBsaXN0IGxpZ2h0ICovXG5cbiRiby1saXN0LWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICNGRkZGRkYgIWRlZmF1bHQ7IFxuJGJvLWxpc3QtbGlnaHQtYS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGJvLWxpc3QtbGlnaHQtY29sb3IgIWRlZmF1bHQ7IFxuJGJvLWxpc3QtbGlnaHQtYS1jb2xvci1ob3ZlcjogICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgICFkZWZhdWx0O1xuXG5cbiAvKiAtLS0gU0NTUyBGb3IgTWVzc2FnZSAtLS0gKi9cblxuIC8qIC0tLSBTQ1NTIEZvciBOZXdzbGV0dGVyIC0tLSAqLyRuZXdzbGV0dGVyLXYyLWJnICAgICAgICAgICAgOiBsaWdodGVuKCRncmF5LWxpZ2h0LCA1MCUpICFkZWZhdWx0O1xuJG5ld3NsZXR0ZXItdjMtYmcgICAgICAgICAgICA6ICRncmF5LWRhcmsgIWRlZmF1bHQ7XG5cblxuIC8qIC0tLSBTQ1NTIEZvciBQaWVjaGFydCAtLS0gKi9cblxuIC8qIC0tLSBTQ1NTIEZvciBQcmljaW5nIC0tLSAqL1xuXG4gLyogLS0tIFNDU1MgRm9yIFByb2Nlc3Mtc3RlcHMgLS0tICovLyogcHJvY2Vzcy1zdGVwcyAqL1xuJGJvLXByb2Nlc3Mtc3RlcHMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICMwMDA7XG4kYm8tcHJvY2Vzcy1zdGVwcy1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzAwMDtcblxuJGJvLXByb2Nlc3Mtc3RlcHMtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzO1xuJGJvLXByb2Nlc3Mtc3RlcHMtYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzO1xuXG4gLyogLS0tIFNDU1MgRm9yIFNlcnZpY2UgLS0tICovLyogdmFyaWFibGVzIGZvciB0YWIgc3R5bGUxIHVzaW5nIGFzIGJhc2Ugb2YgdGFiICovXG5cblxuIC8qIC0tLSBTQ1NTIEZvciBTdHlsZS1pY29uIC0tLSAqLy8qIFZhcmlhYmxlcyBpY29ucyBkZWZhdWx0ICovXG4kYm8tc3R5bGUtaWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmIWRlZmF1bHQ7XG4kYm8tc3R5bGUtaWNvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAjZmZmIWRlZmF1bHQ7XG4kYm8tc3R5bGUtaWNvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyFkZWZhdWx0O1xuJGJvLXN0eWxlLWljb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRiby1zdHlsZS1pY29uLWJnLCA1JSkhZGVmYXVsdDtcblxuLyogVmFyaWFibGVzIGljb25zIGJvZGVyZWQgKi9cbiRiby1zdHlsZS1pY29uLWJvZGVyZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzIWRlZmF1bHQ7XG4kYm8tc3R5bGUtaWNvbi1ib2RlcmVkLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICBkYXJrZW4oJGJvLXN0eWxlLWljb24tYm9kZXJlZC1jb2xvciwgMTAlKSFkZWZhdWx0O1xuXG4vKiBWYXJpYWJsZXMgaWNvbnMgZGFya2VyICovXG4kYm8tc3R5bGUtaWNvbi1kYXJrZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiFkZWZhdWx0O1xuJGJvLXN0eWxlLWljb24tZGFya2VyLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICNmZmYhZGVmYXVsdDtcbiRiby1zdHlsZS1pY29uLWRhcmtlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAjMDAwIWRlZmF1bHQ7XG4kYm8tc3R5bGUtaWNvbi1kYXJrZXItaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkYm8tc3R5bGUtaWNvbi1kYXJrZXItYmcsIDM1JSkhZGVmYXVsdDtcblxuLyogVmFyaWFibGVzIGljb25zIGxpZ2h0ICovXG4kYm8tc3R5bGUtaWNvbi1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAjMDAwIWRlZmF1bHQ7XG4kYm8tc3R5bGUtaWNvbi1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAjZmZmIWRlZmF1bHQ7XG4kYm8tc3R5bGUtaWNvbi1saWdodC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAjZjBmMGYwIWRlZmF1bHQ7XG4kYm8tc3R5bGUtaWNvbi1saWdodC1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGJvLXN0eWxlLWljb24tbGlnaHQtYmcsIDEwJSkhZGVmYXVsdDtcblxuLyogVmFyaWFibGVzIGljb25zIHBsYWluICovXG4kYm8tc3R5bGUtaWNvbi1wbGFpbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyFkZWZhdWx0O1xuJGJvLXN0eWxlLWljb24tcGxhaW4taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgIzAwMCFkZWZhdWx0O1xuJGJvLXN0eWxlLWljb24tcGxhaW4tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQhZGVmYXVsdDtcbiRiby1zdHlsZS1pY29uLXBsYWluLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50IWRlZmF1bHQ7XG5cbi8qIFZhcmlhYmxlcyBpY29ucyBmb3IgbGlnaHQgc3R5bGUgKi9cbiRiby1saWdodC1zdHlsZS1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzIWRlZmF1bHQ7XG4kYm8tbGlnaHQtc3R5bGUtaWNvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyFkZWZhdWx0O1xuJGJvLWxpZ2h0LXN0eWxlLWljb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQhZGVmYXVsdDtcbiRiby1saWdodC1zdHlsZS1pY29uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigjZmZmLCA1JSkhZGVmYXVsdDtcblxuJGJvLWxpZ2h0LXN0eWxlLWljb24tYm9kZXJlZC1jb2xvcjogICAgICAgICAgICAgICAgI2ZmZiFkZWZhdWx0O1xuJGJvLWxpZ2h0LXN0eWxlLWljb24tYm9kZXJlZC1ob3Zlci1jb2xvcjogICAgICAgICAgZGFya2VuKCNmZmYsIDUlKSFkZWZhdWx0O1xuJGJvLWxpZ2h0LXN0eWxlLWljb24tYm9kZXJlZC1iZzogICAgICAgICAgICAgICAgICAgI2ZmZiFkZWZhdWx0O1xuJGJvLWxpZ2h0LXN0eWxlLWljb24tYm9kZXJlZC1ob3Zlci1iZzogICAgICAgICAgICAgZGFya2VuKCNmZmYsIDUlKSFkZWZhdWx0O1xuXG4vKiBWYXJpYWJsZXMgaWNvbnMgb3V0bGluZSAqL1xuXG4kaWNvbnMtb3V0bGluZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZDFkNjQ2IWRlZmF1bHQ7XG4kaWNvbnMtb3V0bGluZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCFkZWZhdWx0O1xuJGljb25zLW91dGxpbmUtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGljb25zLW91dGxpbmUtY29sb3IhZGVmYXVsdDtcbiRpY29ucy1vdXRsaW5lLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICNmZmYhZGVmYXVsdDtcdFx0XG4kaWNvbnMtb3V0bGluZS1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkaWNvbnMtb3V0bGluZS1jb2xvciFkZWZhdWx0O1xuJGljb25zLW91dGxpbmUtaG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRpY29ucy1vdXRsaW5lLWhvdmVyLWJnLCA1JSkhZGVmYXVsdDtcblxuLyogVmFyaWFibGVzIGljb25zIGludmVyc2UgKi9cblxuJGljb25zLWludmVyc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiFkZWZhdWx0O1xuJGljb25zLWludmVyc2UtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2QxZDY0NiFkZWZhdWx0O1xuJGljb25zLWludmVyc2UtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRpY29ucy1pbnZlcnNlLWJnLCA1JSkhZGVmYXVsdDtcbiRpY29ucy1pbnZlcnNlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICNkMWQ2NDYhZGVmYXVsdDtcdFxuJGljb25zLWludmVyc2UtaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50IWRlZmF1bHQ7XG4kaWNvbnMtaW52ZXJzZS1ob3Zlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAkaWNvbnMtaW52ZXJzZS1iZyFkZWZhdWx0O1xuXG5cbiAvKiAtLS0gU0NTUyBGb3IgVGFibGUgLS0tICovXG5cbiAvKiAtLS0gU0NTUyBGb3IgVGFicyAtLS0gKi9cbi8qIHZhcmlhYmxlcyBmb3IgdGFiIHN0eWxlMSB1c2luZyBhcyBiYXNlIG9mIHRhYiAqL1xuJGJvLXRhYnMtYS1jb2xvcjojRkZGRkZGICFkZWZhdWx0OyBcbiRiby10YWJzLWEtY29sb3ItYWN0aXZlOiMwMDAwMDAgIWRlZmF1bHQ7XG5cbiRiby10YWJzLXBhZGRpbmc6IDEwcHggMjBweCAhZGVmYXVsdDsgXG4kYm8tdGFicy1iYWNrZ3JvdW5kOiAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG4kYm8tdGFicy1iYWNrZ3JvdW5kLWhvdmVyOiAjZjZmNmY2ICFkZWZhdWx0O1xuJGJvLXRhYnMtY29udGVudC1iYWNrZ3JvdW5kOiNmNmY2ZjYgIWRlZmF1bHQ7XG5cbiRiby10YWJzLWJvcmRlci1jb2xvciA6ICNlZWUgIWRlZmF1bHQ7XG4kYm8tdGFicy1jb250ZW50LWJvcmRlcjogIDFweCBzb2xpZCAkYm8tdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kYm8tdGFicy1jb250ZW50LXBhZGRpbmc6IDE1cHggMjBweCFkZWZhdWx0O1xuXG5cbi8qIHRhYiBzdHlsZSB2ZXJzaW9uIDUgKi9cbiRiby10YWJzLXByaW1hcnktYmFja2dyb3VuZC1ob3ZlcjojMDAwMDAwIWRlZmF1bHQ7XG4kYm8tdGFicy1wcmltYXJ5LWJhY2tncm91bmQ6I0ZGRkZGRiAhZGVmYXVsdDtcblxuLyogdGFiIHN0eWxlIHZlcnNpb24gNiAqL1xuJGJvLXRhYnMtdjYtaGVhZGluZy1iYWNrZ3JvdW5kOiAjRkZGRkZGICFkZWZhdWx0OyBcblxuJGJvLXRhYnMtdjYtYS1jb2xvciA6ICMwMDAwMDAgIWRlZmF1bHQ7XG4kYm8tdGFicy12Ni1hLWNvbG9yLWFjdGl2ZTpyZWQgIWRlZmF1bHQ7XG4kYm8tdGFicy12Ni1oZWFkaW5nLXBhZGRpbmc6IDEwcHggMjBweDtcbiRiby10YWJzLXY2LWhlYWRpbmctYm9yZGVyLXRvcC1jb2xvcjojMDAwMDAwICFkZWZhdWx0OyBcblxuJGJvLXRhYnMtdjYtaGVhZGluZy1ib3JkZXItY29sb3I6I2VlZSAhZGVmYXVsdDsgIFxuJGJvLXRhYnMtdjYtY29udGVudC1ib3JkZXItY29sb3I6MXB4IHNvbGlkICRiby10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuIC8qIC0tLSBTQ1NTIEZvciBUZXN0aW1vbmlhbHMgLS0tICovLyogdGVzdGltb25pYWxzIGRlZmF1bHQgKi9cbiRiby10ZXN0aW1vbmlhbHMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzY5Njk2OTtcbiRiby10ZXN0aW1vbmlhbHMtYS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgIzY5Njk2OTtcbiRiby10ZXN0aW1vbmlhbHMtaGVhZGluZy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIzY5Njk2OTtcdFx0XHRcdFx0XHRcdFxuXG5cbi8qIHRlc3RpbW9uaWFscy12MSAqL1xuJGJvLXRlc3RpbW9uaWFscy12MS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNjk2OTY5O1xuJGJvLXRlc3RpbW9uaWFscy12MS1hLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNjk2OTY5O1xuJGJvLXRlc3RpbW9uaWFscy12MS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAjZjNmM2YzO1xuJGJvLXRlc3RpbW9uaWFscy12MS1saWdodC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAjZjNmM2YzO1xuJGJvLXRlc3RpbW9uaWFscy12MS1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNTU1O1xuXG4vKiB0ZXN0aW1vbmlhbHMgbGlnaHQgKi9cbiRiby10ZXN0aW1vbmlhbHMtbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcbiRiby10ZXN0aW1vbmlhbHMtbGlnaHQtYS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcbiRiby10ZXN0aW1vbmlhbHMtbGlnaHQtaGVhZGluZy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcblxuXG5cbiAvKiAtLS0gU0NTUyBGb3IgVHlwb2dyYXBoeSAtLS0gKi9cbiRiby1ibG9ja3F1b3RlLWljb24tYmFja2dyb3VuZCAgOiAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG4kYm8tYmxvY2txdW90ZS1pY29uLWNvbG9yICAgICAgIDogI0ZGRkZGRiAhZGVmYXVsdDtcbiRiby1ibG9ja3F1b3RlLWljb24tZm9udC1zaXplICAgOiAxN3B4ICFkZWZhdWx0O1xuJGJvLWJsb2NrcXVvdGUtaWNvbi1saW5lLWhlaWdodCA6IDIycHggIWRlZmF1bHQ7XG5cbiRiby1ibG9ja3F1b3RlLWNvbG9yICAgICAgICAgICAgOiAjMDAwMDAwICFkZWZhdWx0O1xuIiwiLyoqXG4gKiAgIEJsb2NrcyBMYXlvdXQgU2VsZWN0b3JzXG4gKi9cbiRibG9jay1wcmVmaXggICAgICAgICAgICAgICAgICAgIDogJ3dpZGdldCcgIWRlZmF1bHQ7XG4kYmxvY2stc2VsZWN0b3IgICAgICAgICAgICAgICAgICA6ICd3aWRnZXQgJyAhZGVmYXVsdDtcbiRibG9jay1oZWFkaW5nLXNlbGVjdG9yICAgICAgICAgIDogJ3dpZGdldC10aXRsZSwgLndpZGdldHRpdGxlJyAhZGVmYXVsdDtcbiRibG9jay1jb250ZW50LXNlbGVjdG9yICAgICAgICAgIDogJ3dpZGdldC1jb250ZW50JyAhZGVmYXVsdDtcbiRibG9jay1oZWFkaW5nLXJldmVyc2VkLXNlbGVjdG9yIDogJ3dpZGdldC10aXRsZS1yZXZlcnNlZCcgIWRlZmF1bHQ7XG4kY29udGFpbmVyLXByZWZpeCAgICAgICAgICAgICAgICA6ICd3cGItY29udGFpbmVyJyAhZGVmYXVsdDtcblxuXG5cbi8vIEJveCBNb2R1bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kYmxvY2stbW9kdWxlLW1hcmdpbi1ib3R0b20gICAgICAgICAgICAgICAgICAgICA6IDIwcHggIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLXBhZGRpbmcgICAgICAgICAgICAgICAgICAgICAgICAgICA6IDBweCAhZGVmYXVsdDtcbiRibG9jay1tb2R1bGUtYm9yZGVyLWNvbG9yICAgICAgICAgICAgICAgICAgICAgIDogbm9uZSAhZGVmYXVsdDtcblxuJGJsb2NrLW1vZHVsZS1oZWFkaW5nLWNvbG9yXHRcdFx0XHRcdFx0OiAjMDAwMDAwICFkZWZhdWx0O1xuJGJsb2NrLW1vZHVsZS1oZWFkaW5nLWJvcmRlciAgICAgICAgICAgICAgICAgICAgOiAwcHggIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhlYWRpbmctdHJhbnNmb3JtICAgICAgICAgICAgICAgICA6IG5vbmUgIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhlYWRpbmctbGluZS1oZWlnaHQgICAgICAgICAgICAgICA6IG5vcm1hbCAhZGVmYXVsdDtcbiRibG9jay1tb2R1bGUtaGVhZGluZy1iZyAgICAgICAgICAgICAgICAgICAgICAgIDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhlYWRpbmctcGFkZGluZyAgICAgICAgICAgICAgICAgICA6IDIwcHggMCAhZGVmYXVsdDtcbiRibG9jay1tb2R1bGUtaGVhZGluZy1tYXJnaW4gICAgICAgICAgICAgICAgICAgIDogMCAwIDEwcHggIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhlYWRpbmctZm9udC1zaXplICAgICAgICAgICAgICAgICA6IDMwcHggIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhlYWRpbmctZm9udC13ZWlnaHQgICAgICAgICAgICAgICA6IDcwMCAhZGVmYXVsdDtcbiRibG9jay1tb2R1bGUtaGVhZGluZy1mb250LWZhbWlseSAgICAgICAgICAgICAgIDogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhlYWRpbmctc2hvdy1zZXBhcmF0b3IgICAgICAgICAgICA6IG5vbmUgIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhlYWRpbmctaW1hZ2UtcG9zaXRpb24gICAgICAgICAgICA6IDAgMCAhZGVmYXVsdDtcblxuJGJsb2NrLW1vZHVsZS1jb250ZW50LWJnICAgICAgICAgICAgICAgICAgICAgICAgOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRibG9jay1tb2R1bGUtY29udGVudC1ib3JkZXIgICAgICAgICAgICAgICAgICAgIDogMXB4IHNvbGlkICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWNvbnRlbnQtcGFkZGluZyAgICAgICAgICAgICAgICAgICA6IDIwcHggIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWNvbnRlbnQtbWFyZ2luICAgICAgICAgICAgICAgICAgICA6IDFweCAhZGVmYXVsdDtcbiRibG9jay1tb2R1bGUtY29udGVudC1yYWRpdXMgICAgICAgICAgICAgICAgICAgIDogMHB4ICFkZWZhdWx0O1xuXG4kYmxvY2stbW9kdWxlLWhpZ2hsaWdodGVkLWJnICAgICAgICAgICAgICAgICAgICA6ICR0aGVtZS1jb2xvciAhZGVmYXVsdDtcbiRibG9jay1tb2R1bGUtaGlnaGxpZ2h0ZWQtYm9yZGVyICAgICAgICAgICAgICAgIDogc29saWQgMnB4ICR0aGVtZS1jb2xvciAhZGVmYXVsdDtcblxuJGJsb2NrLW1vZHVsZS1mb290ZXItaGVhZGluZy1jb2xvciAgICAgICAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRibG9jay1wcm9kdWN0LXBhZGRpbmcgICAgICAgICAgICAgICAgICAgICAgICAgIDogMCAhZGVmYXVsdDtcbiRibG9jay1oZWFkaW5nLWxldHRlci1zcGFjaW5nICAgICAgICAgICAgICAgICAgIDogMCAhZGVmYXVsdDtcblxuLy8gU2lkZWJhclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGJsb2NrLXNpZGViYXItbW9kdWxlLWJvcmRlciAgICAgICAgICAgICAgICAgICAgOiBub25lICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItYm94LXBhZGRpbmcgICAgICAgICAgICAgICAgICAgICAgOiAwICFkZWZhdWx0OyBcbiRibG9jay1zaWRlYmFyLWJveC1tYXJnaW4gICAgICAgICAgICAgICAgICAgICAgIDogMCAwIDMwcHggIWRlZmF1bHQ7XG5cbiRibG9jay1zaWRlYmFyLWxpc3QtcGFkZGluZy12ZXJ0aWNhbCAgICAgICAgICAgIDogMTNweCAwcHggMTNweCAxM3B4ICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItbGlzdC1ib3JkZXItY29sb3IgICAgICAgICAgICAgICAgOiAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kYmxvY2stc2lkZWJhci1oaWdodGxpZ2h0LW1hcmdpbiBcdFx0XHRcdDogMCAwIDIwcHggIWRlZmF1bHQ7XG4kYmxvY2stc2lkZWJhci1oZWFkaW5nLW1hcmdpbiAgICAgICAgICAgIFx0XHQ6IDAgIWRlZmF1bHQ7XG4kYmxvY2stc2lkZWJhci1oZWFkaW5nLWhpZ2h0bGlnaHQtYmcgICAgICAgICAgICA6ICRub2NvbG9yICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGVhZGluZy1oaWdodGxpZ2h0LXBhZGRpbmcgICAgICAgOiAwICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGVhZGluZy1oaWdodGxpZ2h0LW1hcmdpbiAgICBcdDogMCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhlYWRpbmctaGlnaHRsaWdodC1jb2xvciAgICAgICAgIDogJGJsYWNrICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGVhZGluZy1oaWdodGxpZ2h0LW1hcmdpbi1ib3R0b20gOiAwcHggIWRlZmF1bHQ7XG4kYmxvY2stc2lkZWJhci1oZWFkaW5nLWhpZ2h0bGlnaHQtZm9udC1zaXplICAgICA6IDE0cHggIWRlZmF1bHQ7XG4kYmxvY2stc2lkZWJhci1oZWFkaW5nLWhpZ2h0bGlnaHQtZm9udC13ZWlnaHQgICA6IDkwMCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhpZ2h0bGlnaHQtY29udGVudC1iZ1x0XHRcdDogJG5vY29sb3IgIWRlZmF1bHQ7XG4kYmxvY2stc2lkZWJhci1oaWdodGxpZ2h0LWNvbnRlbnQtY29sb3JcdFx0XHQ6ICM2NjY2NjYgIWRlZmF1bHQ7IFxuJGJsb2NrLXNpZGViYXItaGlnaHRsaWdodC1jb250ZW50LXBhZGRpbmdcdFx0OiAwICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGlnaHRsaWdodC1ib3JkZXIgICBcdFx0XHRcdDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKSAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhpZ2h0bGlnaHQtZm9udC1zaXplIFx0XHRcdDogMTJweCAhZGVmYXVsdDtcdFxuJGJsb2NrLXNpZGViYXItaGlnaHRsaWdodC10cmFuc2Zvcm0gXHRcdFx0OiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kYmxvY2stc2lkZWJhci1oaWdodGxpZ2h0LWZvbnQtd2VpZ2h0XHRcdFx0OiAzMDAgIWRlZmF1bHQ7XHRcdFx0XHRcdFx0XG4kYmxvY2stc2lkZWJhci1saW5rLWhpZ2h0bGlnaHQtY29sb3IgICAgICAgICAgICA6ICR3aGl0ZSAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWxpbmstaGlnaHRsaWdodC1ob3Zlci1jb2xvciAgICAgIDogJHRoZW1lLWNvbG9yICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItbGlzdC1oaWdodGxpZ2h0LWJvcmRlci1jb2xvciAgICAgOiAjMzkzOTM5ICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItbGlzdC1oaWdodGxpZ2h0LWZvbnQtc2l6ZSAgICAgICAgOiAxMHB4ICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItbGlzdC1oaWdodGxpZ2h0LXBhZGRpbmcgICAgICAgICAgOiAxN3B4IDE1cHggIWRlZmF1bHQ7XG4kYmxvY2stc2lkZWJhci1saXN0LWhpZ2h0bGlnaHQtaW1hZ2UgICAgICAgICAgICA6IHVybCgnI3skaW1hZ2UtdGhlbWUtcGF0aH1kb3QuanBnJykgMCAyMnB4IG5vLXJlcGVhdCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWxpc3QtaW1hZ2UgICAgICAgICAgICAgICAgICAgICAgIDogdXJsKCcjeyRpbWFnZS10aGVtZS1wYXRofWRvdC5qcGcnKSAwIDIycHggbm8tcmVwZWF0ICFkZWZhdWx0O1xuXG4kYmxvY2stc2lkZWJhci1oZWFkaW5nLXBhZGRpbmcgICAgICAgICAgICAgICAgICA6IDAgMCAzMHB4ICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGVhZGluZy1tYXJnaW4gICAgICAgICAgICAgICAgICAgOiAwICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGVhZGluZy1mb250LXNpemUgICAgICAgICAgICAgICAgOiAxNHB4ICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGVhZGluZy1jb2xvciAgICAgICAgICAgICAgICAgICAgOiAkYmxhY2sgIWRlZmF1bHQ7IFxuJGJsb2NrLXNpZGViYXItaGVhZGluZy1saW5lLWhlaWdodCAgICAgICAgICAgICAgOiAyMHB4ICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGVhZGluZy1mb250LXdlaWdodFx0XHRcdFx0OiA5MDAgIWRlZmF1bHQ7XG5cbiRibG9jay1zaWRlYmFyLXdpZGdldC1ib3JkZXIgICAgICAgICAgICAgICAgICAgIDogMXB4IHNvbGlkIGxpZ2h0ZW4oJGJvcmRlci1jb2xvciwgMyUpICFkZWZhdWx0O1xuXG4vLyBXaWRnZXQgdGFncyBjbG91ZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHdpZGdldC10YWctY29sb3IgICAgICAgICAgICAgIDogJHRleHQtY29sb3IgIWRlZmF1bHQ7XG4kd2lkZ2V0LXRhZy1jb2xvci1ob3ZlciAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kd2lkZ2V0LXRhZy1iZyAgICAgICAgICAgICAgICAgOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiR3aWRnZXQtdGFnLWJnLWhvdmVyICAgICAgICAgICA6ICR0aGVtZS1jb2xvciAhZGVmYXVsdDtcbiR3aWRnZXQtdGFnLWZvbnQtc2l6ZSAgICAgICAgICA6ICRmb250LXNpemUtYmFzZSAhaW1wb3J0YW50O1xuJHdpZGdldC10YWctcGFkZGluZyAgICAgICAgICAgIDogNXB4IDEwcHggIWRlZmF1bHQ7XG4kd2lkZ2V0LXRhZy1tYXJnaW4gICAgICAgICAgICAgOiAycHggMCAhZGVmYXVsdDtcbiR3aWRnZXQtdGFnLWJvcmRlciAgICAgICAgICAgICA6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJHdpZGdldC10YWctYm9yZGVyLWNvbG9yLWhvdmVyIDogJHdpZGdldC10YWctYmctaG92ZXIgIWRlZmF1bHQ7XG4kd2lkZ2V0LXRhZy1ib3JkZXItcmFkaXVzICAgICAgOiAwcHggIWRlZmF1bHQ7XG4kd2lkZ2V0LXRhZy10cmFuc2Zvcm0gICAgICAgICAgOiBub25lICFkZWZhdWx0O1xuXG4vKioqKioqKioqIExBWU9VVCAqKioqKioqKioqKioqKi8iLCIvKipcbiAqIEltcG9ydCBjb21wb25lbnQgdmFyaWFibGVzXG4gKi9cbkBpbXBvcnQgJ21peGlucy9ydGwnOyBcbkBpbXBvcnQgJ21peGlucy9mdW5jdGlvbnMnO1xuQGltcG9ydCAnbWl4aW5zL3RlbXBsYXRlLW1peGlucyc7IiwiLy8gU3VwcG9ydCBmb3IgUlRMIChSaWdodCB0byBMZWZ0KSAmIG5vbi1sYXRpbiBmb250c1xyXG5cclxuJHJ0bC1sZWZ0IDogbGVmdDtcclxuJHJ0bC1yaWdodCA6IHJpZ2h0O1xyXG4kcnRsLWNlbnRlcjogY2VudGVyO1xyXG5cclxuLy8gQkFTSUMgQ09OVkVSVEVSIChpZ25vcmUgdGhlc2UpXHJcblxyXG5AbWl4aW4gcnRsLWJhc2Utc2ltcGxlICgkcHJvcGVydHksICRkaXJlY3Rpb24pIHtcclxuICAjeyRwcm9wZXJ0eX06JGRpcmVjdGlvbjtcclxuICAucnRsICYge1xyXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gJHJ0bC1yaWdodCB7XHJcbiAgICAgICN7JHByb3BlcnR5fTokcnRsLWxlZnQ7XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICN7JHByb3BlcnR5fTokcnRsLXJpZ2h0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5AbWl4aW4gcnRsLWJhc2UtaW5oZXJpdCAoJHByb3BlcnR5LCAkZGlyZWN0aW9uLCAkdmFsdWUsICRpbmhlcml0IDogaW5oZXJpdCkge1xyXG4gICN7JHByb3BlcnR5fS0jeyRkaXJlY3Rpb259OiAkdmFsdWU7XHJcbiAgLnJ0bCAmIHtcclxuICAgIEBpZiAkZGlyZWN0aW9uID09ICRydGwtcmlnaHQge1xyXG4gICAgICAjeyRwcm9wZXJ0eX0tI3skcnRsLWxlZnR9OiAkdmFsdWU7XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICN7JHByb3BlcnR5fS0jeyRydGwtcmlnaHR9OiAkdmFsdWU7XHJcbiAgICB9XHJcbiAgICAjeyRwcm9wZXJ0eX0tI3skZGlyZWN0aW9ufTogJGluaGVyaXQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gcnRsLWJhc2UtdG9wcmlnaHRib3R0b21sZWZ0ICgkcHJvcGVydHksICR0LCAkciwgJGIsICRsKSB7XHJcbiAgI3skcHJvcGVydHl9OiAkdCAkciAkYiAkbDtcclxuICAucnRsICYge1xyXG4gICAgI3skcHJvcGVydHl9OiAkdCAkbCAkYiAkcjtcclxuICB9XHJcbn1cclxuXHJcbi8vIEJPRFkgU1RZTEVTXHJcblxyXG5AbWl4aW4gcnRsLWRpcmVjdGlvbiAoJGZvckJvZHkgOiB0cnVlKSB7XHJcbiAgZGlyZWN0aW9uOiBsdHI7XHJcbiAgQGlmICRmb3JCb2R5IHtcclxuICAgICYucnRsIHtcclxuICAgICAgZGlyZWN0aW9uOiBydGw7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIC5ydGwgJiB7XHJcbiAgICAgIGRpcmVjdGlvbjogcnRsO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHJ0bC1mb250LWZhbWlseSAoJGx0ciwgJHJ0bCwgJGZvckJvZHkgOiBmYWxzZSkge1xyXG4gIGZvbnQtZmFtaWx5OiAkbHRyO1xyXG4gIEBpZiAkZm9yQm9keSB7XHJcbiAgICAmLnJ0bCwgJi5ub24tbGF0aW4ge1xyXG4gICAgICBmb250LWZhbWlseTokcnRsO1xyXG4gICAgfVxyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICAucnRsICYsIC5ub24tbGF0aW4gJiB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiRydGw7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gTUFSR0lOXHJcblxyXG5AbWl4aW4gcnRsLW1hcmdpbiAoJHQsICRyLCAkYiwgJGwpIHtcclxuICBAaW5jbHVkZSBydGwtYmFzZS10b3ByaWdodGJvdHRvbWxlZnQobWFyZ2luLCR0LCAkciwgJGIsICRsKTtcclxufVxyXG5AbWl4aW4gcnRsLW1hcmdpbi1sZWZ0ICgkdmFsdWUpIHtcclxuICBAaW5jbHVkZSBydGwtYmFzZS1pbmhlcml0KG1hcmdpbiwkcnRsLWxlZnQsJHZhbHVlKTtcclxufVxyXG5AbWl4aW4gcnRsLW1hcmdpbi1yaWdodCAoJHZhbHVlKSB7XHJcbiAgQGluY2x1ZGUgcnRsLWJhc2UtaW5oZXJpdChtYXJnaW4sJHJ0bC1yaWdodCwkdmFsdWUpO1xyXG59XHJcblxyXG4vLyBQQURESU5HXHJcblxyXG5AbWl4aW4gcnRsLXBhZGRpbmcgKCR0LCAkciwgJGIsICRsKSB7XHJcbiAgQGluY2x1ZGUgcnRsLWJhc2UtdG9wcmlnaHRib3R0b21sZWZ0KHBhZGRpbmcsJHQsICRyLCAkYiwgJGwpO1xyXG59XHJcbkBtaXhpbiBydGwtcGFkZGluZy1sZWZ0ICgkdmFsdWUpIHtcclxuICBAaW5jbHVkZSBydGwtYmFzZS1pbmhlcml0KHBhZGRpbmcsJHJ0bC1sZWZ0LCR2YWx1ZSk7XHJcbn1cclxuQG1peGluIHJ0bC1wYWRkaW5nLXJpZ2h0ICgkdmFsdWUpIHtcclxuICBAaW5jbHVkZSBydGwtYmFzZS1pbmhlcml0KHBhZGRpbmcsJHJ0bC1yaWdodCwkdmFsdWUpO1xyXG59XHJcblxyXG4vLyBCT1JERVJcclxuXHJcbkBtaXhpbiBydGwtYm9yZGVyLWxlZnQgKCR2YWx1ZSkge1xyXG4gIEBpbmNsdWRlIHJ0bC1iYXNlLWluaGVyaXQoYm9yZGVyLCRydGwtbGVmdCwkdmFsdWUpO1xyXG59XHJcbkBtaXhpbiBydGwtYm9yZGVyLXJpZ2h0ICgkdmFsdWUpIHtcclxuICBAaW5jbHVkZSBydGwtYmFzZS1pbmhlcml0KGJvcmRlciwkcnRsLXJpZ2h0LCR2YWx1ZSk7XHJcbn1cclxuXHJcbi8vIFBPU0lUSU9OXHJcblxyXG5AbWl4aW4gcnRsLWxlZnQgKCR2YWx1ZSkge1xyXG4gICN7JHJ0bC1sZWZ0fTogJHZhbHVlO1xyXG4gIC5ydGwgJiB7XHJcbiAgICAjeyRydGwtcmlnaHR9OiAkdmFsdWU7XHJcbiAgICAjeyRydGwtbGVmdH06IGF1dG87XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBydGwtcmlnaHQgKCR2YWx1ZSkge1xyXG4gICN7JHJ0bC1yaWdodH06ICR2YWx1ZTtcclxuICAucnRsICYge1xyXG4gICAgI3skcnRsLWxlZnR9OiAkdmFsdWU7XHJcbiAgICAjeyRydGwtcmlnaHR9OiBhdXRvO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIENMRUFSXHJcblxyXG5AbWl4aW4gcnRsLWNsZWFyLWxlZnQgKCkge1xyXG4gIEBpbmNsdWRlIHJ0bC1iYXNlLXNpbXBsZShjbGVhciwgJHJ0bC1sZWZ0KTtcclxufVxyXG5AbWl4aW4gcnRsLWNsZWFyLXJpZ2h0ICgpIHtcclxuICBAaW5jbHVkZSBydGwtYmFzZS1zaW1wbGUoY2xlYXIsICRydGwtcmlnaHQpO1xyXG59XHJcblxyXG4vLyBURVhULUFMSUdOXHJcblxyXG5AbWl4aW4gcnRsLXRleHQtYWxpZ24tbGVmdCAoKSB7XHJcbiAgQGluY2x1ZGUgcnRsLWJhc2Utc2ltcGxlKHRleHQtYWxpZ24sICRydGwtbGVmdCk7XHJcbn1cclxuQG1peGluIHJ0bC10ZXh0LWFsaWduLXJpZ2h0ICgpIHtcclxuICBAaW5jbHVkZSBydGwtYmFzZS1zaW1wbGUodGV4dC1hbGlnbiwgJHJ0bC1yaWdodCk7XHJcbn1cclxuQG1peGluIHJ0bC10ZXh0LWFsaWduLWNlbnRlciAoKSB7XHJcbiAgQGluY2x1ZGUgcnRsLWJhc2Utc2ltcGxlKHRleHQtYWxpZ24sICRydGwtY2VudGVyKTtcclxufVxyXG5cclxuLy8gRkxPQVRcclxuXHJcbkBtaXhpbiBydGwtZmxvYXQtbGVmdCAoKSB7XHJcbiAgQGluY2x1ZGUgcnRsLWJhc2Utc2ltcGxlKGZsb2F0LCAkcnRsLWxlZnQpO1xyXG59XHJcbkBtaXhpbiBydGwtZmxvYXQtcmlnaHQgKCkge1xyXG4gIEBpbmNsdWRlIHJ0bC1iYXNlLXNpbXBsZShmbG9hdCwgJHJ0bC1yaWdodCk7XHJcbn1cclxuXHJcbi8vIEJBQ0tHUk9VTkQtUE9TSVRJT05cclxuXHJcbkBtaXhpbiBydGwtYmFja2dyb3VuZC1wb3NpdGlvbi1sZWZ0ICgkdmVydGljYWwpIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiRydGwtbGVmdCAkdmVydGljYWw7XHJcbiAgLnJ0bCAmIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246JHJ0bC1yaWdodCAkdmVydGljYWw7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBydGwtYmFja2dyb3VuZC1wb3NpdGlvbi1yaWdodCAoJHZlcnRpY2FsKSB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjokcnRsLXJpZ2h0ICR2ZXJ0aWNhbDtcclxuICAucnRsICYge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjokcnRsLWxlZnQgJHZlcnRpY2FsO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHJ0bC1iYWNrZ3JvdW5kLXBvc2l0aW9uLXBlcmNlbnQgKCR2ZXJ0aWNhbCwgJGhvclBlcmNlbnQpIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiRob3JQZXJjZW50ICR2ZXJ0aWNhbDtcclxuICAucnRsICYge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjoxMDAlIC0gJGhvclBlcmNlbnQgJHZlcnRpY2FsO1xyXG4gIH1cclxufVxyXG5cclxuLy8gVEVYVC1TSEFET1cgJiBCT1gtU0hBRE9XXHJcblxyXG5AbWl4aW4gcnRsLXRleHQtc2hhZG93ICgkeCwgJHJlc3QpIHtcclxuICB0ZXh0LXNoYWRvdzogJHggJHJlc3Q7XHJcbiAgLnJ0bCAmIHtcclxuICAgIHRleHQtc2hhZG93OiAtMSAqICR4ICRyZXN0O1xyXG4gIH1cclxufVxyXG5AbWl4aW4gcnRsLWJveC1zaGFkb3cgKCR4LCAkcmVzdCkge1xyXG4gIC1tb3otYm94LXNoYWRvdzogJHggJHJlc3Q7XHJcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkeCAkcmVzdDtcclxuICBib3gtc2hhZG93OiAkeCAkcmVzdDtcclxuICAucnRsICYge1xyXG4gICAgLW1vei1ib3gtc2hhZG93OiAtMSAqICR4ICRyZXN0O1xyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAtMSAqICR4ICRyZXN0O1xyXG4gICAgYm94LXNoYWRvdzogLTEgKiAkeCAkcmVzdDtcclxuICB9XHJcbn1cclxuXHJcbi8vIEJPUkRFUi1SQURJVVNcclxuXHJcbkBtaXhpbiBydGwtYm9yZGVyLXJhZGl1cy10b3ByaWdodCAoJHRsLCAkdHIsICRiciwgJGJsKSB7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAkdGwsICR0ciwgJGJyLCAkYmw7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAkdGwsICR0ciwgJGJyLCAkYmw7XHJcbiAgYm9yZGVyLXRvcC1yYWRpdXM6ICR0bCwgJHRyLCAkYnIsICRibDtcclxuICAucnRsICYge1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAkdHIsICR0bCwgJGJsLCAkYnI7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICR0ciwgJHRsLCAkYmwsICRicjtcclxuICAgIGJvcmRlci10b3AtcmFkaXVzOiAkdHIsICR0bCwgJGJsLCAkYnI7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gcnRsLWJvcmRlci1yYWRpdXMtdG9wcmlnaHQgKCR2YWx1ZSkge1xyXG4gIC1tb3otYm9yZGVyLXJhZGl1cy10b3AjeyRydGwtcmlnaHR9OiAkdmFsdWU7XHJcbiAgLXdlYmtpdC1ib3JkZXItdG9wLSN7JHJ0bC1yaWdodH0tcmFkaXVzOiAkdmFsdWU7XHJcbiAgYm9yZGVyLXRvcC0jeyRydGwtcmlnaHR9LXJhZGl1czogJHZhbHVlO1xyXG4gIC5ydGwgJiB7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXMtdG9wI3skcnRsLWxlZnR9OiAkdmFsdWU7XHJcbiAgICAtd2Via2l0LWJvcmRlci10b3AtI3skcnRsLWxlZnR9LXJhZGl1czogJHZhbHVlO1xyXG4gICAgYm9yZGVyLXRvcC0jeyRydGwtbGVmdH0tcmFkaXVzOiAkdmFsdWU7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXMtdG9wI3skcnRsLXJpZ2h0fTogaW5oZXJpdDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXRvcC0jeyRydGwtcmlnaHR9LXJhZGl1czogaW5oZXJpdDtcclxuICAgIGJvcmRlci10b3AtI3skcnRsLXJpZ2h0fS1yYWRpdXM6IGluaGVyaXQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gcnRsLWJvcmRlci1yYWRpdXMtYm90dG9tcmlnaHQgKCR2YWx1ZSkge1xyXG4gIC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b20jeyRydGwtcmlnaHR9OiAkdmFsdWU7XHJcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLSN7JHJ0bC1yaWdodH0tcmFkaXVzOiAkdmFsdWU7XHJcbiAgYm9yZGVyLWJvdHRvbS0jeyRydGwtcmlnaHR9LXJhZGl1czogJHZhbHVlO1xyXG4gIC5ydGwgJiB7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tI3skcnRsLWxlZnR9OiAkdmFsdWU7XHJcbiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tI3skcnRsLWxlZnR9LXJhZGl1czogJHZhbHVlO1xyXG4gICAgYm9yZGVyLWJvdHRvbS0jeyRydGwtbGVmdH0tcmFkaXVzOiAkdmFsdWU7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tI3skcnRsLXJpZ2h0fTogaW5oZXJpdDtcclxuICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS0jeyRydGwtcmlnaHR9LXJhZGl1czogaW5oZXJpdDtcclxuICAgIGJvcmRlci1ib3R0b20tI3skcnRsLXJpZ2h0fS1yYWRpdXM6IGluaGVyaXQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gcnRsLWJvcmRlci1yYWRpdXMtdG9wbGVmdCAoJHZhbHVlKSB7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzLXRvcCN7JHJ0bC1sZWZ0fTogJHZhbHVlO1xyXG4gIC13ZWJraXQtYm9yZGVyLXRvcC0jeyRydGwtbGVmdH0tcmFkaXVzOiAkdmFsdWU7XHJcbiAgYm9yZGVyLXRvcC0jeyRydGwtbGVmdH0tcmFkaXVzOiAkdmFsdWU7XHJcbiAgLnJ0bCAmIHtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1cy10b3AjeyRydGwtcmlnaHR9OiAkdmFsdWU7XHJcbiAgICAtd2Via2l0LWJvcmRlci10b3AtI3skcnRsLXJpZ2h0fS1yYWRpdXM6ICR2YWx1ZTtcclxuICAgIGJvcmRlci10b3AtI3skcnRsLXJpZ2h0fS1yYWRpdXM6ICR2YWx1ZTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1cy10b3AjeyRydGwtbGVmdH06IGluaGVyaXQ7XHJcbiAgICAtd2Via2l0LWJvcmRlci10b3AtI3skcnRsLWxlZnR9LXJhZGl1czogaW5oZXJpdDtcclxuICAgIGJvcmRlci10b3AtI3skcnRsLWxlZnR9LXJhZGl1czogaW5oZXJpdDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBydGwtYm9yZGVyLXJhZGl1cy1ib3R0b21sZWZ0ICgkdmFsdWUpIHtcclxuICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tI3skcnRsLWxlZnR9OiAkdmFsdWU7XHJcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLSN7JHJ0bC1sZWZ0fS1yYWRpdXM6ICR2YWx1ZTtcclxuICBib3JkZXItYm90dG9tLSN7JHJ0bC1sZWZ0fS1yYWRpdXM6ICR2YWx1ZTtcclxuICAucnRsICYge1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbSN7JHJ0bC1yaWdodH06ICR2YWx1ZTtcclxuICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS0jeyRydGwtcmlnaHR9LXJhZGl1czogJHZhbHVlO1xyXG4gICAgYm9yZGVyLWJvdHRvbS0jeyRydGwtcmlnaHR9LXJhZGl1czogJHZhbHVlO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbSN7JHJ0bC1sZWZ0fTogaW5oZXJpdDtcclxuICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS0jeyRydGwtbGVmdH0tcmFkaXVzOiBpbmhlcml0O1xyXG4gICAgYm9yZGVyLWJvdHRvbS0jeyRydGwtbGVmdH0tcmFkaXVzOiBpbmhlcml0O1xyXG4gIH1cclxufVxyXG4iLCIvLyBGdW5jdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFBvc2l0aW9uIG1peGluXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQHBhcmFtIFtzdHJpbmddICRwb3NpdGlvbjogcG9zaXRpb24gdHlwZVxuLy8gQHBhcmFtIFtsaXN0XSAkYXJnczogbGlzdCBvZiBvZmZzZXRzIGFuZCB2YWx1ZXNcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AbWl4aW4gcG9zaXRpb24oJHBvc2l0aW9uLCAkYXJncykge1xuICAgIEBlYWNoICRvIGluIHRvcCByaWdodCBib3R0b20gbGVmdCB7XG4gICAgICAgICRpOiBpbmRleCgkYXJncywgJG8pO1xuICAgICAgICBAaWYgJGlcbiAgICAgICAgICAgIGFuZCAkaSArIDEgPD0gbGVuZ3RoKCRhcmdzKVxuICAgICAgICAgICAgYW5kIHR5cGUtb2YoIG50aCgkYXJncywgJGkgKyAxKSApID09IG51bWJlciB7XG4gICAgICAgICAgICAjeyRvfTogbnRoKCRhcmdzLCAkaSArIDEpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHBvc2l0aW9uOiAkcG9zaXRpb247XG59XG5cblxuLy8gQWJzb2x1dGUgcG9zaXRpb25pbmcgbWl4aW5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBAcGFyYW0gW2xpc3RdICRhcmdzOiBsaXN0IG9mIG9mZnNldHMgYW5kIHZhbHVlc1xuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBtaXhpbiBhYnNvbHV0ZSgkYXJncykge1xuICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAkYXJncyk7XG59XG5cbi8vIEFycm93IG1peGluXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQHBhcmFtIFtzdHJpbmddICRkaXJlY3Rpb246IGFycm93IGRpcmVjdGlvblxuLy8gQHBhcmFtIFtsaXN0XSAkcG9zaXRpb246IGxpc3Qgb2Ygb2Zmc2V0cyBhbmQgdmFsdWVzXG4vLyBAcGFyYW0gW2NvbG9yXSAkY29sb3IgKGluaGVyaXQpOiBhcnJvdyBjb2xvclxuLy8gQHBhcmFtIFtudW1iZXJdICRzaXplICgxZW0pOiBhcnJvdyBzaXplXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuQG1peGluIHRyaWFuZ2xlKCRkaXJlY3Rpb24sICRwb3NpdGlvbiwgJGNvbG9yOiBjdXJyZW50Q29sb3IsICRzaXplOiAxZW0pIHtcbiAgICAvLyBNYWtlIHN1cmUgdGhlIGRpcmVjdGlvbiBpcyB2YWxpZFxuICAgIEBpZiBub3QgaW5kZXgodG9wIHJpZ2h0IGJvdHRvbSBsZWZ0LCAkZGlyZWN0aW9uKSB7XG4gICAgICAgIEB3YXJuIFwiRGlyZWN0aW9uIG11c3QgYmUgb25lIG9mIHRvcCwgcmlnaHQsIGJvdHRvbSBvciBsZWZ0LlwiO1xuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgYWJzb2x1dGUoJHBvc2l0aW9uKTsgLy8gUG9zaXRpb25cbiAgICAgICAgQGluY2x1ZGUgc3F1YXJlKDApOyAvLyBTaXplXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgIGJvcmRlci0je29wcG9zaXRlLXBvc2l0aW9uKCRkaXJlY3Rpb24pfTogJHNpemUgKiAxLjUgc29saWQgJGNvbG9yO1xuICAgICAgICAkcGVycGVuZGljdWxhci1ib3JkZXJzOiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgICAgICBAaWYgJGRpcmVjdGlvbiA9PSB0b3Agb3IgJGRpcmVjdGlvbiA9PSBib3R0b20ge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6ICAgJHBlcnBlbmRpY3VsYXItYm9yZGVycztcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogICRwZXJwZW5kaWN1bGFyLWJvcmRlcnM7XG4gICAgICAgIH1cblxuICAgICAgICBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IG9yICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAkcGVycGVuZGljdWxhci1ib3JkZXJzO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogICAgJHBlcnBlbmRpY3VsYXItYm9yZGVycztcbiAgICAgICAgfVxuICAgIH1cbn1cbiBcbi8vIEZvbnQgc2l6ZSAtIHJlbVxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGZ1bmN0aW9uIHBhcnNlSW50KCRuKSB7IC8qIDIgKi9cbiAgQHJldHVybiAkbiAvICgkbiAqIDAgKyAxKTtcbn1cblxuQG1peGluIGZvbnQtc2l6ZSgkcHJvcGVydHksICR2YWx1ZXMpIHtcbiAgJHB4IDogKCk7IC8qIDMgKi9cbiAgJHJlbTogKCk7IC8qIDMgKi9cblxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7IC8qIDQgKi9cblxuICAgIEBpZiAkdmFsdWUgPT0gMCBvciAkdmFsdWUgPT0gYXV0byB7IC8qIDUgKi9cbiAgICAgICRweCA6IGFwcGVuZCgkcHggLCAkdmFsdWUpO1xuICAgICAgJHJlbTogYXBwZW5kKCRyZW0sICR2YWx1ZSk7XG4gICAgfVxuXG4gICAgQGVsc2Uge1xuICAgICAgJHVuaXQ6IHVuaXQoJHZhbHVlKTsgICAgLyogNiAqL1xuICAgICAgJHZhbDogcGFyc2VJbnQoJHZhbHVlKTsgLyogNiAqL1xuXG4gICAgICBAaWYgJHVuaXQgPT0gXCJweFwiIHsgIC8qIDcgKi9cbiAgICAgICAgJHB4IDogYXBwZW5kKCRweCwgICR2YWx1ZSk7XG4gICAgICAgICRyZW06IGFwcGVuZCgkcmVtLCAoJHZhbCAvIDEwICsgcmVtKSk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkdW5pdCA9PSBcInJlbVwiIHsgLyogNyAqL1xuICAgICAgICAkcHggOiBhcHBlbmQoJHB4LCAgKCR2YWwgKiAxMCArIHB4KSk7XG4gICAgICAgICRyZW06IGFwcGVuZCgkcmVtLCAkdmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcHggPT0gJHJlbSB7ICAgICAvKiA4ICovXG4gICAgI3skcHJvcGVydHl9OiAkcHg7ICAvKiA5ICovXG4gIH0gQGVsc2Uge1xuICAgICN7JHByb3BlcnR5fTogJHB4OyAgLyogOSAqL1xuICAgICN7JHByb3BlcnR5fTogJHJlbTsgLyogOSAqL1xuICB9XG59XG5cblxuLy89PSBCb3JkZXJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AbWl4aW4gYm9yZGVyKCAkY29vcmRpbmF0ZXM6IDAgMCAwIDAsICRjb2xvdXI6ICRib3JkZXItY29sb3IsICRzdHlsZTogc29saWQgKSB7XG4gICAgJHRvcDogbnRoKCRjb29yZGluYXRlcywgMSk7XG4gICAgJHJpZ2h0OiBudGgoJGNvb3JkaW5hdGVzLCAyKTtcbiAgICAkYm90dG9tOiBudGgoJGNvb3JkaW5hdGVzLCAzKTtcbiAgICAkbGVmdDogbnRoKCRjb29yZGluYXRlcywgNCk7XG4gICAgQGlmIG5vdCh1bml0bGVzcygkdG9wKSkge1xuICAgICAgICBib3JkZXItdG9wOiAkdG9wICRzdHlsZSAkY29sb3VyO1xuICAgIH1cbiAgICBAaWYgbm90KHVuaXRsZXNzKCRyaWdodCkpIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAkcmlnaHQgJHN0eWxlICRjb2xvdXI7XG4gICAgfVxuICAgIEBpZiBub3QodW5pdGxlc3MoJGJvdHRvbSkpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJGJvdHRvbSAkc3R5bGUgJGNvbG91cjtcbiAgICB9XG4gICAgQGlmIG5vdCh1bml0bGVzcygkbGVmdCkpIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6ICRsZWZ0ICRzdHlsZSAkY29sb3VyO1xuICAgIH1cbn1cblxuLy8gU3RhdGUgYW5kIGhvdmVyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuQG1peGluIHN0YXRlLWhvdmVyLWRlZmF1bHQoJHRpbWUsICRiYWNrZ3JvdW5kLCAkYm9yZGVyLWNvbG9yKXtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAkdGltZSk7XG4gICAgJjpob3ZlcntcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIH1cbn1cblxuQG1peGluIHN0YXRlLWhvdmVyKCR0aW1lLCRoZWlnaHQsJGNvbG9yKXtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMCAwIDAgJGNvbG9yKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAkdGltZSBjdWJpYy1iZXppZXIoMC44LDAsMCwxKSk7XG4gICAgJjpob3ZlcntcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgJHRpbWUgY3ViaWMtYmV6aWVyKDAuOCwwLDAsMSkpO1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgKC0kaGVpZ2h0KSAwIDAgJGNvbG9yKTtcbiAgICB9XG59XG5cbkBtaXhpbiBzdGF0ZS1ob3Zlci0yKCRiYWNrZ3JvdW5kKXtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTA7XG4gICAgJjphZnRlcntcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHotaW5kZXg6IC01MDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgQGluY2x1ZGUgc2NhbGUoMCk7XG4gICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcigxMDAlLDEwMCUpO1xuICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDApO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWRlbGF5KDAuM3MsMHMpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAwcyBjdWJpYy1iZXppZXIoMC4xOSwxLDAuMjIsMSkgMC4zcyxvcGFjaXR5IDAuM3MgY3ViaWMtYmV6aWVyKDAuMTksMSwwLjIyLDEpKTtcbiAgICB9XG4gICAgJjpob3ZlcntcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBAaW5jbHVkZSBzY2FsZSgxKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAwLjZzIGN1YmljLWJlemllcigwLjE5LDEsMC4yMiwxKSxvcGFjaXR5IDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksMSwwLjIyLDEpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cbi8vPT0gRmxleGlibGUgTGF5b3V0XG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AbWl4aW4gZmxleGJveCB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IC1tb3otZmxleDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xufVxuXG4lZmxleGJveCB7XG4gICAgQGluY2x1ZGUgZmxleGJveDtcbn1cblxuQG1peGluIGlubGluZS1mbGV4IHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtZmxleDtcbiAgICBkaXNwbGF5OiAtbW96LWlubGluZS1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbn1cblxuJWlubGluZS1mbGV4IHtcbiAgICBAaW5jbHVkZSBpbmxpbmUtZmxleDtcbn1cblxuXG5cbi8vIFJldGluYSBTcHJpdGUgTWl4aW5zXG5cbkBtaXhpbiByZXRpbmEtc3ByaXRlLWJhY2tncm91bmQoJHVybCwkcG9zaXRpb24sJHdpZHRoLCRoZWlnaHQpe1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCR1cmwpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRwb3NpdGlvbjtcbiAgICB3aWR0aDokd2lkdGg7XG4gICAgaGVpZ2h0OiRoZWlnaHQ7XG59XG5cbi8qKiBlbGVtZW50cyBtaXhpbnMgKiovXG5cbkBtaXhpbiBib3JkZXItZXhjbHVkZS10b3AoJGJvcmRlci1kZWVwLCAkYm9yZGVyLXR5cGUgLCAkYm9yZGVyLWNvbG9yICl7XG4gICBib3JkZXItYm90dG9tOiAkYm9yZGVyLWRlZXAgJGJvcmRlci10eXBlICRib3JkZXItY29sb3IgO1xuICAgYm9yZGVyLWxlZnQ6ICRib3JkZXItZGVlcCAkYm9yZGVyLXR5cGUgJGJvcmRlci1jb2xvciA7XG4gICBib3JkZXItcmlnaHQ6ICRib3JkZXItZGVlcCAkYm9yZGVyLXR5cGUgJGJvcmRlci1jb2xvciA7XG59XG5cbkBtaXhpbiBib3JkZXItZXhjbHVkZS1ib3R0b20oJGJvcmRlci1kZWVwLCAkYm9yZGVyLXR5cGUgLCAkYm9yZGVyLWNvbG9yICl7XG4gICBib3JkZXItdG9wOiAkYm9yZGVyLWRlZXAgJGJvcmRlci10eXBlICRib3JkZXItY29sb3IgO1xuICAgYm9yZGVyLWxlZnQ6ICRib3JkZXItZGVlcCAkYm9yZGVyLXR5cGUgJGJvcmRlci1jb2xvciA7XG4gICBib3JkZXItcmlnaHQ6ICRib3JkZXItZGVlcCAkYm9yZGVyLXR5cGUgJGJvcmRlci1jb2xvciA7XG59XG5cbkBtaXhpbiBib3JkZXItZXhjbHVkZS1sZWZ0KCRib3JkZXItZGVlcCwgJGJvcmRlci10eXBlICwgJGJvcmRlci1jb2xvciApe1xuICAgYm9yZGVyLXRvcDogJGJvcmRlci1kZWVwICRib3JkZXItdHlwZSAkYm9yZGVyLWNvbG9yIDtcbiAgIGJvcmRlci1ib3R0b206ICRib3JkZXItZGVlcCAkYm9yZGVyLXR5cGUgJGJvcmRlci1jb2xvciA7XG4gICBib3JkZXItcmlnaHQ6ICRib3JkZXItZGVlcCAkYm9yZGVyLXR5cGUgJGJvcmRlci1jb2xvciA7XG59XG5cbkBtaXhpbiBib3JkZXItZXhjbHVkZS1yaWdodCgkYm9yZGVyLWRlZXAsICRib3JkZXItdHlwZSAsICRib3JkZXItY29sb3IgKXtcbiAgIGJvcmRlci10b3A6ICRib3JkZXItZGVlcCAkYm9yZGVyLXR5cGUgJGJvcmRlci1jb2xvciA7XG4gICBib3JkZXItYm90dG9tOiAkYm9yZGVyLWRlZXAgJGJvcmRlci10eXBlICRib3JkZXItY29sb3IgO1xuICAgYm9yZGVyLWxlZnQ6ICRib3JkZXItZGVlcCAkYm9yZGVyLXR5cGUgJGJvcmRlci1jb2xvciA7XG59XG5cbkBtaXhpbiByb3VuZGVkLWNvcm5lcnMgKCRyYWRpdXMpIHtcbiAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgIC1tb3otYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgIC1tcy1ib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgLW8tYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG59XG5cbkBtaXhpbiBjbGVhcmJveHN0eWxlKCl7XG4gICBiYWNrZ3JvdW5kOiBub25lO1xuICAgYm9yZGVyOm5vbmU7XG59XG5cbkBtaXhpbiBjbGVhcmZsb2F0KCl7XG4gICBmbG9hdDogbm9uZTtcbiAgIHdpZHRoOiAxMDAlO1xufVxuIFxuXG5AbWl4aW4gdHJhbnNmb3JtLXN0eWxlKCR0cmFuc2Zvcm0tc3R5bGUpe1xuICAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6ICR0cmFuc2Zvcm0tc3R5bGU7ICAgICAgICAgICAgICAgICAgICBcbiAgIC1tb3otdHJhbnNmb3JtLXN0eWxlOiAkdHJhbnNmb3JtLXN0eWxlOyAgICAgICAgICAgICAgICAgICAgXG4gICAtbXMtdHJhbnNmb3JtLXN0eWxlOiAkdHJhbnNmb3JtLXN0eWxlOyAgICAgICAgICAgICAgICAgICAgXG4gICAtby10cmFuc2Zvcm0tc3R5bGU6ICR0cmFuc2Zvcm0tc3R5bGU7ICAgICAgICAgICAgICAgICAgICBcbiAgIHRyYW5zZm9ybS1zdHlsZTogJHRyYW5zZm9ybS1zdHlsZTtcbn1cblxuQG1peGluIGJhY2tmYWNlLXZpc2liaWxpdHkoJGJhY2tmYWNlLXZpc2liaWxpdHkpe1xuICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogJGJhY2tmYWNlLXZpc2liaWxpdHk7ICAvKiBXM0MgKi9cbiAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogJGJhY2tmYWNlLXZpc2liaWxpdHk7IC8qIFNhZmFyaSAmIENocm9tZSAqL1xuICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiAkYmFja2ZhY2UtdmlzaWJpbGl0eTsgLyogRmlyZWZveCAqL1xuICAgLW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6ICRiYWNrZmFjZS12aXNpYmlsaXR5OyAvKiBJbnRlcm5ldCBFeHBsb3JlciAqL1xuICAgLW8tYmFja2ZhY2UtdmlzaWJpbGl0eTogJGJhY2tmYWNlLXZpc2liaWxpdHk7IC8qIE9wZXJhICovXG59XG5cbkBtaXhpbiBhbmltYXRpb24tdGhlbWUoJGFuaW1hdGlvbi1kdXJhdGlvbiwgJGFuaW1hdGlvbi1maWxsLW1vZGUsICRhbmltYXRpb24tbmFtZSl7XG4gICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogJGFuaW1hdGlvbi1kdXJhdGlvbjsgXG4gICAtbW96LWFuaW1hdGlvbi1kdXJhdGlvbjogJGFuaW1hdGlvbi1kdXJhdGlvbjsgXG4gICAtbXMtYW5pbWF0aW9uLWR1cmF0aW9uOiAkYW5pbWF0aW9uLWR1cmF0aW9uOyBcbiAgIC1vLWFuaW1hdGlvbi1kdXJhdGlvbjogJGFuaW1hdGlvbi1kdXJhdGlvbjsgXG4gICBhbmltYXRpb24tZHVyYXRpb246ICRhbmltYXRpb24tZHVyYXRpb247IFxuXG4gICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6ICRhbmltYXRpb24tZmlsbC1tb2RlO1xuICAgLW1vei1hbmltYXRpb24tZmlsbC1tb2RlOiAkYW5pbWF0aW9uLWZpbGwtbW9kZTtcbiAgIC1tcy1hbmltYXRpb24tZmlsbC1tb2RlOiAkYW5pbWF0aW9uLWZpbGwtbW9kZTtcbiAgIC1vLWFuaW1hdGlvbi1maWxsLW1vZGU6ICRhbmltYXRpb24tZmlsbC1tb2RlO1xuICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogJGFuaW1hdGlvbi1maWxsLW1vZGU7XG5cbiAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ICRhbmltYXRpb24tbmFtZTtcbiAgIC1tb3otYW5pbWF0aW9uLW5hbWU6ICRhbmltYXRpb24tbmFtZTsgXG4gICAtbXMtYW5pbWF0aW9uLW5hbWU6ICRhbmltYXRpb24tbmFtZTsgXG4gICAtby1hbmltYXRpb24tbmFtZTogJGFuaW1hdGlvbi1uYW1lOyBcbiAgIGFuaW1hdGlvbi1uYW1lOiAkYW5pbWF0aW9uLW5hbWU7IFxufVxuXG5AbWl4aW4gcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKXtcbiAgIC13ZWJraXQtcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgIC1tcy1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgLW1vei1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgLW8tcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgIHBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7ICAgIFxufVxuXG4vKipcbiogVHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24gcHJvcGVydHlAbWl4aW4gXG4qL1xuQG1peGluIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pIHtcbiAgIC1tb3otdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAtby10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbiBcblxuQG1peGluIGFwcGVhcmFuY2UoJGFwcGVhcmFuY2Upe1xuICAgYXBwZWFyYW5jZTogJGFyZ3VtZW50cztcbiAgIC1tb3otYXBwZWFyYW5jZTogJGFyZ3VtZW50cztcbiAgIC1tcy1hcHBlYXJhbmNlOiAkYXJndW1lbnRzO1xuICAgLW8tYXBwZWFyYW5jZTogJGFyZ3VtZW50cztcbiAgIC13ZWJraXQtYXBwZWFyYW5jZTogJGFyZ3VtZW50czsgXG59XG5cblxuLypiYWNrZ3JvdW5kIFJHQkFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbkBtaXhpbiByZ2JhKCRjb2xvdXIsICRhbHBoYSlcbntcbiAgICRhbHBoYUNvbG91cjogaHNsYShodWUoJGNvbG91ciksIHNhdHVyYXRpb24oJGNvbG91ciksIGxpZ2h0bmVzcygkY29sb3VyKSwgJGFscGhhKTtcbiAgICRpZUFscGhhQ29sb3VyOiBhcmdiKCRhbHBoYUNvbG91cik7ICAgXG4gICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyOyBcbiAgIGJhY2tncm91bmQtY29sb3I6ICRhbHBoYUNvbG91cjsgICAgICAgXG4gICB6b29tOiAxOyBcbiAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50XFw5OyAgIFxuICAgXG4gICBcbn1cblxuXG5AbWl4aW4gYm9yZGVyLXJnYmEoJGNvbG91ciwgJGFscGhhKVxue1xuICAgJGFscGhhQ29sb3VyOiBoc2xhKGh1ZSgkY29sb3VyKSwgc2F0dXJhdGlvbigkY29sb3VyKSwgbGlnaHRuZXNzKCRjb2xvdXIpLCAkYWxwaGEpO1xuICAgJGllQWxwaGFDb2xvdXI6IGFyZ2IoJGFscGhhQ29sb3VyKTsgICBcbiAgIGJvcmRlci1jb2xvcjogJGNvbG91cjsgXG4gICBib3JkZXItY29sb3I6ICRhbHBoYUNvbG91cjsgICAgICAgXG4gICB6b29tOiAxOyBcbiAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnRcXDk7XG4gIFxufVxuXG4vL2NvcHlyaWdodFxuXG4vL3N1YiBoZWFkaW5nIChoMixoMykgZGVmaW5lXG5AbWl4aW4gc3ViLWhlYWRpbmcge1xuICBmbG9hdDogbGVmdDtcbiAgY29sb3I6ICRibG9jay1oZWFkaW5nLWNvbG9yO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250OiA2MDAgMTRweC8yMHB4ICRmb250LWN1c3RvbTtcbiAgcGFkZGluZzogOHB4IDE1cHg7XG4gIG1hcmdpbjogMCAwIDIwcHg7XG4gIG1pbi13aWR0aDogMTIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogJHRoZW1lLWJnLWRlZmF1bHQ7XG59XG5AbWl4aW4gc3ViLWhlYWRpbmctYmVmb3JlIHtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgcmlnaHQ6IDQ1JTtcbiAgdG9wOiAxMDAlO1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlcjogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wLWNvbG9yOiAkdGhlbWUtYmctZGVmYXVsdDtcbn1cblxuLy9iYWNrZ3JvdW5kXG5AbWl4aW4gYmFja2dyb3VuZC1ob3ZlciB7XG4gIGNvbG9yOiAkYmFzZS10ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDIyOCwgNTAsIDQwLCAwLjMpO1xufVxuXG4vKmlubGluZS1ibG9ja1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG5AbWl4aW4gaW5saW5lLWJsb2NrKCkge1xuICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgKmRpc3BsYXk6IGlubGluZTtcbiAgIHpvb206IDE7ICAgXG59XG5cbi8vIFNpemluZyBzaG9ydGN1dHNcbkBtaXhpbiBzaXplKCR3aWR0aCwgJGhlaWdodCkge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG59XG5cblxuXG4vLyBQYW5lbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtaXhpbiBib3gtdmFyaWFudCgkYm9yZGVyLCAkaGVhZGluZy10ZXh0LWNvbG9yLCAkaGVhZGluZy1iZy1jb2xvciwgJGhlYWRpbmctYm9yZGVyKSB7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICAmID4gLmJveC1oZWFkaW5nIHtcbiAgICBjb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRoZWFkaW5nLWJvcmRlcjtcblxuICAgICsgIC5ib3gtY29udGVudCB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxuICAmID4gLmJveC1jb250ZW50e1xuICAgICAgYm9yZGVyLWNvbG9yOiRib3JkZXI7XG4gIH1cbiAgJiA+IC5ib3gtZm9vdGVyIHtcbiAgICArIC5ib3gtY29sbGFwc2UgLmJveC1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG59XG5AbWl4aW4gYnV0dG9uLTNkKCRzdWZmaXhjbGFzcywgJGhlaWdodDNkICwkY29sb3IzZCl7XG4gIGJvcmRlcjogMDtcbiAgQGlmICgkc3VmZml4Y2xhc3MgPT0gXCJlbXB0eVwiKSB7XG4gICAgICBib3gtc2hhZG93OiAwICRoZWlnaHQzZCAkY29sb3IzZCBpbnNldDtcbiAgICAgIC1vLWJveC1zaGFkb3c6IDAgJGhlaWdodDNkICRjb2xvcjNkIGluc2V0O1xuICAgICAgLW1vei1ib3gtc2hhZG93OiAwICRoZWlnaHQzZCAkY29sb3IzZCBpbnNldDtcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAkaGVpZ2h0M2QgJGNvbG9yM2QgaW5zZXQ7XG4gICAgICAtbXMtYm94LXNoYWRvdzogMCAkaGVpZ2h0M2QgJGNvbG9yM2QgaW5zZXQ7XG4gIH1cbiAgQGVsc2Uge1xuICAmLmJ0bi0jeyRzdWZmaXhjbGFzc317XG4gICAgIGJveC1zaGFkb3c6IDAgJGhlaWdodDNkICRjb2xvcjNkIGluc2V0O1xuICAgICAgLW8tYm94LXNoYWRvdzogMCAkaGVpZ2h0M2QgJGNvbG9yM2QgaW5zZXQ7XG4gICAgICAtbW96LWJveC1zaGFkb3c6IDAgJGhlaWdodDNkICRjb2xvcjNkIGluc2V0O1xuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwICRoZWlnaHQzZCAkY29sb3IzZCBpbnNldDtcbiAgICAgIC1tcy1ib3gtc2hhZG93OiAwICRoZWlnaHQzZCAkY29sb3IzZCBpbnNldDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1pbnZlcnNlKCAkc3VmZml4Y2xhc3MsICAkY29sb3IgLCRiYWNrZ3JvdW5kICl7XG4gXG4gICYuYnRuLSN7JHN1ZmZpeGNsYXNzfXtcbiAgICAgICY6aG92ZXJ7IFxuICAgICAgICBjb2xvcjokY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lKCAkc3VmZml4Y2xhc3MsICRjb2xvciwgJGhvdmVyY29sb3IgKXtcbiAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgJi5idG4tI3skc3VmZml4Y2xhc3N9e1xuICAgICAgY29sb3I6JGNvbG9yO1xuICAgICAgJjpob3ZlcntcbiAgICAgICAgICBjb2xvcjokaG92ZXJjb2xvcjtcbiAgICAgIH1cbiAgfVxufVxuLy8vIGJ1dHRvbiB2YXJpYW50IG91dGxpbmVcbkBtaXhpbiBidXR0b24tdmFyaWFudC1vdXRsaW5lKCRjb2xvciwgJGJhY2tncm91bmQsICRib3JkZXIsICRjb2xvcmhvdmVyLCAkYmdob3ZlciwgJGJvcmRlcmhvdmVyICkge1xuICBjb2xvcjogJGNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgY29sb3I6ICRjb2xvcmhvdmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZ2hvdmVyO1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXJob3ZlciA7XG4gIH1cbiAgLm9wZW4gJiB7ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogJGNvbG9yaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnaG92ZXI7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcmhvdmVyIDtcbiAgfSB9XG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuICAub3BlbiAmIHsgJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH0gfVxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gIH1cblxuICAuYmFkZ2Uge1xuICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cbi8vIGljb24gdmFyaWFudCBpbnZlcnNlXG5cbkBtaXhpbiBpY29ucy1pbnZlcnNlKCAkc3VmZml4Y2xhc3MsICAkY29sb3IgLCRiYWNrZ3JvdW5kICl7XG4gXG4gICYuaWNvbnMtI3skc3VmZml4Y2xhc3N9e1xuICAgICAgJjpob3ZlcnsgXG4gICAgICAgIGNvbG9yOiRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgfVxufVxuLy8gaWNvbiB2YXJpYW50IG91dGxpbmVcblxuQG1peGluIGljb25zLW91dGxpbmUoICRzdWZmaXhjbGFzcywgJGNvbG9yLCAkaG92ZXJjb2xvciApe1xuICAmLmljb25zLSN7JHN1ZmZpeGNsYXNzfXtcbiAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiRjb2xvcjtcbiAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgY29sb3I6JGhvdmVyY29sb3I7XG4gICAgICB9XG4gIH1cbn1cblxuLy8gQmxvY2tcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtaXhpbiBibG9jay12YXJpYW50KCRib3JkZXIsICRoZWFkaW5nLXRleHQtY29sb3IsICRoZWFkaW5nLWJnLWNvbG9yLCAkaGVhZGluZy1ib3JkZXIpIHtcbiAgJiAuI3skYmxvY2staGVhZGluZy1zZWxlY3Rvcn0ge1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiRoZWFkaW5nLWJnLWNvbG9yO1xuICAgICAgICAgPiBzcGFuOmJlZm9yZXtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjokaGVhZGluZy1iZy1jb2xvcjtcbiAgICAgICAgfVxuXG4gIH1cbiAgJiA+IC4jeyRibG9jay1wcmVmaXh9LWZvb3RlciB7XG4gICAgKyAuI3skYmxvY2stcHJlZml4fS1jb2xsYXBzZSAuI3skYmxvY2stcHJlZml4fS1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG59XG5cbi8qKioqL1xuLyoqKiovXG5AbWl4aW4gY29udGFpbmVyLWxheW91dC12YXJpYW50KCRjb2xvciwgJGJhY2tncm91bmQsICRsaW5rY29sb3IgKXtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGF7XG4gICAgICBjb2xvcjokbGlua2NvbG9yOyBcbiAgICAgICY6aG92ZXJ7XG4gICAgICAgIGNvbG9yOiRsaW5rLWhvdmVyLWNvbG9yOyBcbiAgICAgIH0gIFxuICAgIH0gICAgICAgICBcbn1cblxuIiwiLy8gQm94IFNpemVcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5AbWl4aW4gYm94LXNpemUoJGJhY2tncm91bmQsICRwYWRkaW5nLXRvcCwkcGFkZGluZy1ib3R0b20pe1xyXG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XHJcbiAgICBwYWRkaW5nLXRvcDogJHBhZGRpbmctdG9wO1xyXG4gICAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nLWJvdHRvbTtcclxufVxyXG5cclxuLy8gQnV0dG9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuQG1peGluIGJ1dHRvbi1vdXRsaW5lKCRjb2xvciwgJGJhY2tncm91bmQsICRib3JkZXIsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3ItaG92ZXIsICRib3JkZXItaG92ZXIsICRib3JkZXItcmFkaXVzKSB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgICBib3JkZXI6ICRib3JkZXI7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjphY3RpdmUsXHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcclxuICAgICAgICBib3JkZXI6ICRib3JkZXItaG92ZXI7XHJcbiAgICB9XHJcbiAgICAuZmEsLmljb257XHJcbiAgICAgICAgZm9udC1zaXplOiAkaWNvbi1mb250LXNpemUtYmFzZTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIEJsb2NrXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuQG1peGluIGJsb2NrLXZhcmlhbnQoJGJvcmRlciwgJGhlYWRpbmctdGV4dC1jb2xvciwgJGhlYWRpbmctYmctY29sb3IsICRoZWFkaW5nLWJvcmRlcikge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG4gICAgYmFja2dyb3VuZDogJGhlYWRpbmctYmctY29sb3I7XHJcbiAgICAmIC4jeyRibG9jay1oZWFkaW5nLXNlbGVjdG9yfSB7XHJcbiAgICAgICAgJiBzcGFuOmJlZm9yZSwgJiBzcGFuOmFmdGVyeyBiYWNrZ3JvdW5kOiR3aGl0ZTsgfVxyXG4gICAgICAgIGNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLWJnLWNvbG9yO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGhlYWRpbmctYm9yZGVyO1xyXG4gICAgICAgICsgLiN7JGJsb2NrLXByZWZpeH0tY29sbGFwc2UgLiN7JGJsb2NrLWNvbnRlbnQtc2VsZWN0b3J9IHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJvcmRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmID4gLiN7JGJsb2NrLXByZWZpeH0tZm9vdGVyIHtcclxuICAgICAgICArIC4jeyRibG9jay1wcmVmaXh9LWNvbGxhcHNlIC4jeyRibG9jay1wcmVmaXh9LWJvZHkge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYm9yZGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGJsb2NrLWVsZW1lbnRzLXN0eWxlcygkYm9yZGVyLCAkaGVhZGluZy10ZXh0LWNvbG9yLCAkaGVhZGluZy1iZy1jb2xvciwgJGhlYWRpbmctYm9yZGVyLCAkdGV4dC1jb2xvciwgJHRleHQtY29sb3ItcHJpbWFyeSl7XHJcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcbiAgICBiYWNrZ3JvdW5kOiAkaGVhZGluZy1iZy1jb2xvcjtcclxuICAgICYgLiN7JGJsb2NrLWhlYWRpbmctc2VsZWN0b3J9IHtcclxuICAgICAgICBjb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRoZWFkaW5nLWJvcmRlcjtcclxuICAgICAgICArIC4jeyRibG9jay1wcmVmaXh9LWNvbGxhcHNlIC4jeyRibG9jay1jb250ZW50LXNlbGVjdG9yfSB7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRib3JkZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJiA+IC4jeyRibG9jay1wcmVmaXh9LWZvb3RlciB7XHJcbiAgICAgICAgKyAuI3skYmxvY2stcHJlZml4fS1jb2xsYXBzZSAuI3skYmxvY2stcHJlZml4fS1ib2R5IHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJvcmRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qKioqL1xyXG5AbWl4aW4gY29udGFpbmVyLWxheW91dC12YXJpYW50KCRjb2xvciwgJGJhY2tncm91bmQsICRsaW5rY29sb3IsICAkdG9wYmFyLWxpbmstY29sb3ItaG92ZXIgKXtcclxuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuICAgIGF7XHJcbiAgICAgICAgY29sb3I6JGxpbmtjb2xvcjtcclxuICAgIH1cclxuICAgIGE6aG92ZXJ7XHJcbiAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1ob3ZlcjtcclxuICAgIH1cclxufVxyXG5cclxuLy89PSBJbmxpbmUgYmxvY2tcclxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuQG1peGluIGlubGluZS1ibG9jayAoJGhhc2xheW91dCA6IHRydWUpe1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIEBpZiAkaGFzbGF5b3V0ID09IHRydWUge1xyXG4gICAgICAgIC5sdC1pZTggJiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICAgICAgem9vbTogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vPT0gdmVydGljYWwgYmxvY2tcclxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuQG1peGluIHZlcnRpY2FsLWNlbnRlciggJHdpZHRoOiAxMDBweCwgJGhlaWdodDogMTAwcHgpIHtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHRvcDogMDtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIHdpZHRoOiAkd2lkdGg7XHJcbiAgICBoZWlnaHQ6ICRoZWlnaHQ7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbn1cclxuXHJcbi8vPT0gVHJhbnNsYXRlIFggLSBZIC0gWlxyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gdHJhbnNsYXRlWCgkeCkge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHgpO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgkeCk7IC8vIElFOSBvbmx5XHJcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHgpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCR4KTtcclxufVxyXG5cclxuQG1peGluIHRyYW5zbGF0ZVkoJHkpIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCR5KTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHkpOyAvLyBJRTkgb25seVxyXG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCR5KTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkeSk7XHJcbn1cclxuXHJcbkBtaXhpbiB0cmFuc2xhdGVaKCR6KSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigkeik7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKCR6KTsgLy8gSUU5IG9ubHlcclxuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWigkeik7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooJHopO1xyXG59XHJcblxyXG4vLz09IFRyYW5zZm9ybVxyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gdHJhbnNmb3JtKCRhcmd1bWVudCl7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogKCRhcmd1bWVudCk7XHJcbiAgICAtbW96LXRyYW5zZm9ybTogKCRhcmd1bWVudCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiAoJGFyZ3VtZW50KTtcclxuICAgIC1vLXRyYW5zZm9ybTogKCRhcmd1bWVudCk7XHJcbiAgICB0cmFuc2Zvcm06ICgkYXJndW1lbnQpO1xyXG59XHJcblxyXG4vLz09IFRyYW5zZm9ybVxyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gdHJhbnNpdGlvbi1kZWxheSgkdGltZTEsJHRpbWUyKXtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogKCR0aW1lMSwkdGltZTIpO1xyXG4gICAgLW1vei10cmFuc2l0aW9uLWRlbGF5OiAoJHRpbWUxLCR0aW1lMik7XHJcbiAgICAtbXMtdHJhbnNpdGlvbi1kZWxheTogKCR0aW1lMSwkdGltZTIpO1xyXG4gICAgLW8tdHJhbnNpdGlvbi1kZWxheTogKCR0aW1lMSwkdGltZTIpO1xyXG4gICAgdHJhbnNpdGlvbi1kZWxheTogKCR0aW1lMSwkdGltZTIpO1xyXG59XHJcblxyXG4vLz09IEJhY2tncm91bmQgU2l6ZVxyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gYmFja2dyb3VuZC1zaXplKCRzaXplMSwkc2l6ZTIpIHtcclxuICAgIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiAoJHNpemUxLCRzaXplMik7XHJcbiAgICAtbW96LWJhY2tncm91bmQtc2l6ZTogKCRzaXplMSwkc2l6ZTIpO1xyXG4gICAgLW1zLWJhY2tncm91bmQtc2l6ZTogKCRzaXplMSwkc2l6ZTIpO1xyXG4gICAgLW8tYmFja2dyb3VuZC1zaXplOiAoJHNpemUxLCRzaXplMik7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICgkc2l6ZTEsJHNpemUyKTtcclxufVxyXG5cclxuLy89PSBCYWNrZ3JvdW5kIG9yaWdpblxyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gYmFja2dyb3VuZC1vcmlnaW4oJHZhbHVlMSwkdmFsdWUyKXtcclxuICAgIC13ZWJraXQtYmFja2dyb3VuZC1vcmlnaW46ICgkdmFsdWUxLCR2YWx1ZTIpO1xyXG4gICAgLW1vei1iYWNrZ3JvdW5kLW9yaWdpbjogKCR2YWx1ZTEsJHZhbHVlMik7XHJcbiAgICAtbXMtYmFja2dyb3VuZC1vcmlnaW46ICgkdmFsdWUxLCR2YWx1ZTIpO1xyXG4gICAgLW8tYmFja2dyb3VuZC1vcmlnaW46ICgkdmFsdWUxLCR2YWx1ZTIpO1xyXG4gICAgYmFja2dyb3VuZC1vcmlnaW46ICgkdmFsdWUxLCR2YWx1ZTIpO1xyXG59XHJcblxyXG4vLz09IEJvcmRlciByYWRpdXNcclxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1cykge1xyXG4gICAgYm9yZGVyLXJhZGl1cyAgICAgICAgIDogJHJhZGl1cztcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1cyA6ICRyYWRpdXM7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXMgICAgOiAkcmFkaXVzO1xyXG4gICAgLW1zLWJvcmRlci1yYWRpdXMgICAgIDogJHJhZGl1cztcclxuICAgIC1vLWJvcmRlci1yYWRpdXMgICAgICA6ICRyYWRpdXM7XHJcbn1cclxuXHJcbi8vPT0gVGV4dCBTaGFkb3dcclxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuQG1peGluIHRleHQtc2hhZG93KCRzaGFkb3cpIHtcclxuICAgIHRleHQtc2hhZG93ICAgICAgICAgOiAkc2hhZG93O1xyXG4gICAgLXdlYmtpdC10ZXh0LXNoYWRvdyA6ICRzaGFkb3c7XHJcbiAgICAtbW96LXRleHQtc2hhZG93ICAgIDogJHNoYWRvdztcclxuICAgIC1tcy10ZXh0LXNoYWRvdyAgICAgOiAkc2hhZG93O1xyXG4gICAgLW8tdGV4dC1zaGFkb3cgICAgICA6ICRzaGFkb3c7XHJcbn1cclxuXHJcbi8vPT0gVHJhbnNmb3JtIE9yaWdpblxyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkb3JpZ2luWCwkb3JpZ2luWSkge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luIDogJG9yaWdpblggJG9yaWdpblk7XHJcbiAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW4gICAgOiAkb3JpZ2luWCAkb3JpZ2luWTtcclxuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luICAgICA6ICRvcmlnaW5YICRvcmlnaW5ZOyAvLyBJRTkgb25seVxyXG4gICAgdHJhbnNmb3JtLW9yaWdpbiAgICAgICAgIDogJG9yaWdpblggJG9yaWdpblk7XHJcbn1cclxuXHJcbi8vPT0gYXBwZWFyYW5jZVxyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gYXBwZWFyYW5jZSgpIHtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZSA6IG5vbmU7XHJcbiAgICAtbW96LWFwcGVhcmFuY2UgICAgOiBub25lO1xyXG4gICAgLW8tYXBwZWFyYW5jZSAgICAgIDogbm9uZTtcclxuICAgIC1tcy1hcHBlYXJhbmNlICAgICA6IG5vbmU7XHJcbiAgICBhcHBlYXJhbmNlICAgICAgICAgOiBub25lO1xyXG59XHJcblxyXG4vLz09IHNlbGVjdGlvblxyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4kcHJlZml4ZXM6IChcIi1tb3otXCIsIFwiXCIpO1xyXG5AbWl4aW4gc2VsZWN0aW9uKCRjb2xvciwgJGJhY2tncm91bmQpIHtcclxuICAgIEBlYWNoICRwcmVmaXggaW4gJHByZWZpeGVzIHtcclxuICAgICAgICA6OiN7JHByZWZpeH1zZWxlY3Rpb24ge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vPT0gYW5pbWF0aW9uIGZpbGwgbW9kZVxyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gYW5pbWF0aW9uLWZpbGwtbW9kZSgkZmlsbCkge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbDtcclxuICAgIC1tb3otYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGw7XHJcbiAgICAtby1hbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbDtcclxuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsO1xyXG59XHJcblxyXG4vLz09IGZpbHRlclxyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gZmlsdGVyKCRhcmd1bWVudCl7XHJcbiAgICBmaWx0ZXIgICAgICAgICA6ICRhcmd1bWVudDtcclxuICAgIC13ZWJraXQtZmlsdGVyIDogJGFyZ3VtZW50O1xyXG4gICAgLW1vei1maWx0ZXIgICAgOiAkYXJndW1lbnQ7XHJcbiAgICAtby1maWx0ZXIgICAgICA6ICRhcmd1bWVudDtcclxuICAgIC1tcy1maWx0ZXIgICAgIDogJGFyZ3VtZW50O1xyXG59XHJcblxyXG4vLyBDbGVhciBMaXN0c1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbkBtaXhpbiBjbGVhci1saXN0KCl7XHJcbiAgICBwYWRkaW5nICAgIDogMDtcclxuICAgIG1hcmdpbiAgICAgOiAwO1xyXG4gICAgbGlzdC1zdHlsZSA6IG5vbmU7XHJcbn1cclxuXHJcbi8vIEZvcm1hcnQgbGlzdHMgd2lkZ2V0XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuQG1peGluIGxpc3RzLXN0eWxlKCkge1xyXG4gICAgdWwsb2x7XHJcbiAgICAgICAgQGluY2x1ZGUgY2xlYXItbGlzdCgpO1xyXG4gICAgICAgIGxpe1xyXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxke1xyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmNoaWxkcmVue1xyXG4gICAgICAgICAgICAgICAgPiBsaXtcclxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB1bHtcclxuICAgICAgICAgICAgbGk6Zmlyc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTRweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMjRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGltcG9ydCBcImZ1bmN0aW9uc1wiOyIsIi8qIVxuICogQm9vdHN0cmFwIHYzLjMuNSAoaHR0cDovL2dldGJvb3RzdHJhcC5jb20pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE1IFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKi9cbiBib2R5e1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gICBsaW5lLWhlaWdodDogMS44O1xuIH1cbiBpbWd7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDphdXRvO1xuIH0gXG4gLnN0aWNreXtcbiAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgIGJvcmRlcjoxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBwYWRkaW5nOjEwcHg7XG4gfVxuLmFsaWduY2VudGVyLFxuZGl2LmFsaWduY2VudGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDVweCBhdXRvIDVweCBhdXRvO1xufVxuXG4uYWxpZ25yaWdodCB7XG4gICAgZmxvYXQ6cmlnaHQ7XG4gICAgbWFyZ2luOiA1cHggMCAyMHB4IDA7XG59XG5cbi5hbGlnbmxlZnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogNXB4IDIwcHggMjBweCAwO1xufVxuXG5hIGltZy5hbGlnbnJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luOiA1cHggMCAyMHB4IDIwcHg7XG59XG5cbmEgaW1nLmFsaWdubm9uZSB7XG4gICAgbWFyZ2luOiA1cHggMjBweCAyMHB4IDA7XG59XG5cbmEgaW1nLmFsaWdubGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiA1cHggMjBweCAyMHB4IDA7XG59XG5cbmEgaW1nLmFsaWduY2VudGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG9cbn1cblxuLndwLWNhcHRpb24ge1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmYgbm9uZSByZXBlYXQgc2Nyb2xsIDAgMDtcbiAgICBib3JkZXI6IG1lZGl1bSBub25lO1xuICAgIG1heC13aWR0aDogNDc0cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi53cC1jYXB0aW9uLmFsaWdubGVmdCB7XG4gICAgbWFyZ2luOiA1cHggMjBweCAyMHB4IDA7XG59XG5cbi53cC1jYXB0aW9uLmFsaWducmlnaHQge1xuICAgIG1hcmdpbjogNXB4IDAgMjBweCAyMHB4O1xufVxuXG4ud3AtY2FwdGlvbiBpbWcge1xuICAgIGJvcmRlcjogMCBub25lO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgbWF4LXdpZHRoOiA5OC41JTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiBhdXRvO1xufVxuXG4ud3AtY2FwdGlvbiBwLndwLWNhcHRpb24tdGV4dCB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxN3B4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDRweCA1cHg7XG59XG5cbi8qIFRleHQgbWVhbnQgb25seSBmb3Igc2NyZWVuIHJlYWRlcnMuICovXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHdpZHRoOiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5zY3JlZW4tcmVhZGVyLXRleHQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgY2xpcDogYXV0byAhaW1wb3J0YW50O1xuICBjb2xvcjogIzIxNzU5YjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGhlaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAxNXB4IDIzcHggMTRweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0b3A6IDVweDtcbiAgd2lkdGg6IGF1dG87XG4gIHotaW5kZXg6IDEwMDAwMDsgLyogQWJvdmUgV1AgdG9vbGJhci4gKi9cbn1cblxuLm5vcGFkZGluZ3tcbiAgIHBhZGRpbmc6MCFpbXBvcnRhbnQ7XG4gICBtYXJnaW46MCFpbXBvcnRhbnQ7XG59XG5cbi52aWRlby1yZXNwb25zaXZlIHtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICBtYXJnaW4tYm90dG9tIDogMTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZW1iZWQsaWZyYW1lLG9iamVjdCx2aWRlb3tcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIEBpbmNsdWRlIHNxdWFyZShwZXJjZW50YWdlKDEpKTtcbiAgfVxufVxuIFxuLmF1ZGlvLXJlc3BvbnNpdmV7XG4gIGlmcmFtZXtcbiAgICBAaW5jbHVkZSBzaXplKHBlcmNlbnRhZ2UoMSksIDEyNnB4KTtcbiAgfVxufVxuXG5cbi5jb250YWN0aW5mb3N7XG4gICAgbGl7XG4gICAgbGluZS1oZWlnaHQ6IDMzcHg7XG4gICAgICAgIGl7XG4gICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAzcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCl7XG4gICAgLnpvb21Db250YWluZXJ7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC53b29jb21tZXJjZS1tYWluLWltYWdlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgLndvb2NvbW1lcmNlLW1haW4taW1hZ2U6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICB9XG59IiwiLy8vLy8vLy8vLy8gVEVNUExBVEVTIExBWU9VVCAvLy8vLy8vLy8vL1xuXG4kYXBwLXByZWZpeCAgICAgICAgICAgICAgICAgICAgICA6IHBiciAhZGVmYXVsdDtcbiR2Yy1wcmVmaXggICAgICAgICAgICAgICAgICAgICAgIDogcGJyXyAhZGVmYXVsdDtcblxuYm9keXtcbiAgICBvdmVyZmxvdy14OmhpZGRlbjtcbn1cbiNtYWluIHtcbiAgICAuY29udGFpbmVyeyBcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7IFxuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5jb250YWluZXItZnVsbHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgIH1cbn1cbiNzaXRlLWhlYWRlcntcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qKlxuICogUGFnZSBTdHlsZVxuICovXG4jcGFnZXtcbiAgICBtYXgtd2lkdGg6IDE0MDBweDsgXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1sZWZ0OmF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7ICBcbiAgICAmLnBhZ2Utc3RhdGljLWxlZnR7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuMjVzIGVhc2Utb3V0KTtcbiAgICAgICAgJi5hY3RpdmV7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjI1cyBlYXNlLW91dCk7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gICAgICAgICAgICAuc2lkZWJhci1zdGF0aWMtbGVmdHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjI1cyBlYXNlLW91dCk7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmFjdGl2ZSAuYnV0dG9uLWFjdGlvbjpiZWZvcmV7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDYwXCJcbiAgICB9XG59XG4uc2l0ZS1tYWluIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLyoqXG4gKiBUb3BiYXIgbGF5b3V0IHN0eWxlc1xuICovXG4jI3skYXBwLXByZWZpeH0tdG9wYmFye1xuXHQgIEBpbmNsdWRlIGNvbnRhaW5lci1sYXlvdXQtdmFyaWFudCggJHRvcGJhci1jb2xvciAsICR0b3BiYXItYmcgLCAkdG9wYmFyLWxpbmstY29sb3IgKTtcbiAgICAgICAgcGFkZGluZyAgICAgICAgOiAkdG9wYmFyLXBhZGRpbmc7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtIDogJHRvcGJhci10ZXh0LXRyYW5zZm9ybTtcbiAgICAgICAgZm9udC1zaXplICAgICAgOiAkdG9wYmFyLWZvbnQtc2l6ZSA7XG4gICBcdC5saXN0LWlubGluZXtcbiAgIFx0XHQgIG1hcmdpbjogMDsgcGFkZGluZzowO1xuICAgXHR9XG4gICAgYTpob3ZlcntcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH0gICAgXG59XG4udG9wYmFyLW1vYmlsZXtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAjM0M0MjRDO1xuICAgIGRpc3BsYXk6IHRhYmxlOyBcbiAgICAuYnRuLW9mZmNhbnZhc3tcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgLmZhe1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxufVxuLmFjdGl2ZS1tb2JpbGV7XG4gICAgbGluZS1oZWlnaHQ6NDhweDtcbiAgICBAaW5jbHVkZSBzaXplKDQ4cHgsNDhweCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjNzIGVhc2UgMHMpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAmOmhvdmVye1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCR0b3BiYXItYmcsIDUlKSAhaW1wb3J0YW50O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIC5hY3RpdmUtY29udGVudHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmFjdGl2ZS1jb250ZW50e1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgei1pbmRleDogOTk5OTk7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6ICR0aGVtZS1tYXJnaW47XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJHRvcGJhci1iZywgNSUpO1xuICAgICAgICBsZWZ0OiAtMTAwMDBweDtcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBtaW4td2lkdGg6IDI3MHB4O1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMC4zcyBlYXNlIDBzKTtcbiAgICB9XG4gICAgdWx7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpe1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnNlYXJjaC1jYXRlZ29yeS1jb250YWluZXJ7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5zZWFyY2gtY2F0ZWdvcnktaW5wdXR7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShmb250LXNpemUsMTVweCk7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xuICAgICAgICBoZWlnaHQ6IDQycHg7XG4gICAgfVxuICAgIC5idG4tc2VhcmNoe1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4O1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNHB4O1xuICAgICAgICAuZmF7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIC5mYXtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuc2V0dGluZy1wb3B1cHtcbiAgICAgICAgYXtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ib3gtdXNlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDExO1xuICAgIGN1cnNvcjogIHBvaW50ZXI7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgLmFjY291bnQtbGlua3N7XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG4gICAgLmRyb3Bkb3duLXRvZ2dsZXtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgfVxuICAgfSBcbiAgICAmLm9wZW57XG4gICAgICAgID4gLmRyb3Bkb3duLXRvZ2dsZXtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3IhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuLndwbWwtbGFuZ3tcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAuZHJvcGRvd24tdG9nZ2xle1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgIH1cbiAgICB9IFxuICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZzogMCAyNXB4OyBcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgaW1ne1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5hY3RpdmV7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgYXtjb2xvcjogJHRoZW1lLWNvbG9yO31cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5sb2dvLXdyYXBwZXJ7XG4gICAgbGluZS1oZWlnaHQ6IDQ1cHg7XG59XG4jI3skYXBwLXByZWZpeH0tbG9nb3tcblxufVxuLyoqXG4gKiBIZWFkZXIgTGF5b3V0IHN0eWxlc1xuICovXG4jI3skYXBwLXByZWZpeH0tbWFzdGhlYWR7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6ICRoZWFkZXItbWFpbi1wYWRkaW5nO1xuICAgIC5oZWFkZXItbWFpbntcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlXG4gICAgfVxuICAgIC5sb2dvLXdyYXBwZXJ7XG4gICAgICAgIC5sb2dvLXRoZW1lIGF7XG4gICAgICAgICAgIC8qICBiYWNrZ3JvdW5kOiB1cmwoJyN7JGltYWdlLXRoZW1lLXNraW59bG9nby5wbmcnKSBuby1yZXBlYXQgY2VudGVyIHRvcCAkbm9jb2xvcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMTI0cHgsNDVweCk7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH0gKi9cbiAgICAgICAgfVxuICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KXtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgIH1cbiAgICB9XG4gICAgLnBici1oZWFkZXItcmlnaHQge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgICAgIH0gICAgXG4gICAgLy8vIGhlYWRlciBzdHlsZXMgdmVyc2lvbiAxXG4gICAgJi4jeyRhcHAtcHJlZml4fS1oZWFkZXItZGVmYXVsdHtcbiAgICAgICAgYmFja2dyb3VuZDojMmQyZDJkO1xuICAgICAgICBcbiAgICB9XG5cbiAgICAmLiN7JGFwcC1wcmVmaXh9LWhlYWRlci12M3tcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWluLWhlaWdodDogMTc1cHg7XG4gICAgICAgIC5wYnItdG9wYmFye1xuICAgICAgICAgICAgLmlubmVye1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLmNvbC1tZC05O1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLnB1bGwtcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgI3Bici1sb2dve1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5wYnItbWFpbm1lbnV7XG4gICAgICAgICAgICBAZXh0ZW5kIC5jb2wtbWQtOTtcbiAgICAgICAgICAgIEBleHRlbmQgLnB1bGwtcmlnaHQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCAwO1xuICAgICAgICAgICAgLm5hdmJhci1jb2xsYXBzZXtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICAgIFxuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1tYXgpe1xuICAgICAgICAmLmhlYWRlci1hYnNvbHV0ZXtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCl7XG4gICAgICAgICYuaGVhZGVyLWFic29sdXRle1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzMzMztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oYXMtc3RpY2t5IHtcbiAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDFzIGVhc2UgMHMpO1xuICAgICAgICAmLmtlZXB0b3B7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDk5OTk7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI4MjgyODtcbiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHggMDtcbiAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAxcyBlYXNlIDBzKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cblxuLyoqXG4gKiBTZWFyY2ggYmxvY2sgbGF5b3V0IGFuZCBzdHlsZXNcbiAqL1xuXG4uc2VhcmNoLWJveC13cmFwcGVye1xuICAgIGl7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgfVxufVxuXG4uc2VhcmNoLWJveHtcbiAgICAuaW5wdXQtZ3JvdXAtYWRkb257XG4gICAgICAgIGJhY2tncm91bmQ6I0ZGRkZGRjtcbiAgICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICAgIGlucHV0eyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgYm9yZGVyLWNvbG9yOiR0aGVtZS1jb2xvciA7IGNvbG9yOiNGRkY7IH1cbiAgICAgICAgYm9yZGVyLXJhZGl1czowcHggJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlIDBweDtcbiAgICAgICAgbWluLXdpZHRoOiAyMDBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIHBhZGRpbmc6MnB4IDEwcHggMnB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiNDQ0M7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaW5wdXQsIHNlbGVjdHsgYm9yZGVyOm5vbmUgOyBib3JkZXItcmFkaXVzOiRib3JkZXItcmFkaXVzLWJhc2U7YmFja2dyb3VuZDokd2hpdGU7ICB9XG4gICAgc2VsZWN0eyBib3JkZXItcmFkaXVzOjAgMCAwIWltcG9ydGFudDsgIGJvcmRlcjpub25lICFpbXBvcnRhbnQ7IGJhY2tncm91bmQ6dHJhbnNwYXJlbnQhaW1wb3J0YW50OyAgYm94LXNoYWRvdzowIDAgMCFpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgbWFyZ2luLXJpZ2h0OjJweDsgIH1cbiAgICAmLnNlYXJjaC1ib3gtc2ltcGxle1xuICAgICAgICAuaW5wdXQtZ3JvdXB7XG4gICAgICAgICAgICBib3JkZXI6c29saWQgMnB4ICR0aGVtZS1jb2xvcjsgXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiRib3JkZXItcmFkaXVzLWJhc2U7O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICAgICAgfVxuICAgICAgICAuaW5wdXQtZ3JvdXAtYWRkb257IGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7IH0gIFxuICAgICAgICBpbnB1dHsgY29sb3I6IzAwMDAwMCB9IFxuICAgIH1cbn1cblxuLnRvZ2dsZS1vdmVybGF5LWNvbnRhaW5lcnsgXG4gICAgLyogaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UgMHM7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDAlOyAqL1xuICAgIC5zZWFyY2gtYm94IHtcbiAgICAgICAgLyogd2lkdGg6IGNhbGMoMTAwJSAtIDg2cHgpO1xuICAgICAgICBmbG9hdDogbGVmdDsgKi9cbiAgICAgICAgLmlucHV0LWdyb3Vwe1xuICAgICAgICAgICAgLyogd2lkdGg6IDkwJTtcbiAgICAgICAgICAgIG1hcmdpbjozMHB4IGF1dG87ICovXG4gICAgICAgICAgICBib3JkZXI6c29saWQgMnB4ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2x7IGhlaWdodDogNDBweCB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmRyb3Bkb3duLXRvZ2dsZS1idXR0b257XG4gICAgICAgIHdpZHRoOiA4NnB4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZmxvYXQ6cmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQ6I0YyZjJmMjtcbiAgICAgICAgY3Vyc29yOiBoYW5kO2N1cnNvcjpwb2ludGVyO1xuICAgIH1cbiAgICB6LWluZGV4OiAxMDtcbiAgICBiYWNrZ3JvdW5kOiNGRkZGRkY7XG4gICAgJi5hY3RpdmV7XG4gICAgICAgb3BhY2l0eTogMTtcbiAgICAgICB2aXNpYmlsaXR5OnZpc2libGU7XG4gICAgfVxufVxuXG4vKipcbiAqIE1hc3MgQm90dG9tIEhlYWRlciBTdHlsZXNcbiAqL1xuLiN7JGFwcC1wcmVmaXh9LW1hc3Nib3R0b20taGVhZCB7ICAgXG4gICAgLmlubmVyeyBcbiAgICAgICAgYmFja2dyb3VuZDokbWFzc2JvdHRvbS1oZWFkLWJnOyBcbiAgICAgICAgcGFkZGluZzogJG1hc3Nib3R0b20taGVhZC1wYWRkaW5nOyAgIFxuICAgICAgICBib3JkZXItdG9wOiAkbWFzc2JvdHRvbS1oZWFkLWJvcmRlci1jb2xvciBzb2xpZCAxcHg7XG4gICAgICAgIGNvbG9yOiAkbWFzc2JvdHRvbS1oZWFkLWNvbG9yO1xuICAgIH0gXG59XG4vKipcbiAqIE1haW4gbWVudSBzdHlsZXNcbiAqL1xuIyN7JGFwcC1wcmVmaXh9LW1haW5tZW51e1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAuaW5uZXJ7XG4gXG4gICAgfVxufVxuXG4vKipcbiAqIEJyZWFkc2NydW1iIGNvbnRlbnQgc3R5bGVcbiAqL1xuLiN7JGFwcC1wcmVmaXh9LWJyZWFkc2NydW1ie1xuXG4gICAgYmFja2dyb3VuZDogJGJyZWFkY3J1bWItYmc7XG4gICAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy12ZXJ0aWNhbCAkYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAuYnJlYWRjcnVtYntcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKXtcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHggMCAwO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1pbil7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICAgIG1hcmdpbjowIDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsaXtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmFjdGl2ZXtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGgyLGgxe1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Vjb25kO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1taW4pe1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3BhbntcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDdweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBhe1xuICAgICAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxufVxuXG4vKipcbiAqIEZvb3RlciBsYXlvdXQgc3R5bGVzXG4gKi9cbiNtYWlue1xuICAgIGFydGljbGUucG9zdCBoMS5lbnRyeS10aXRsZXtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgIH1cbn1cblxuLiN7JGFwcC1wcmVmaXh9LWZvb3RlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWQxZDFkO1xuICAgIGNvbG9yOiRmb290ZXItY29sb3I7XG4gICAgLmZvb3Rlci10b3B7XG4gICAgICAgIEBpbmNsdWRlIGNvbnRhaW5lci1sYXlvdXQtdmFyaWFudCgkZm9vdGVyLXRvcC1jb2xvciwgdHJhbnNwYXJlbnQsICRmb290ZXItbGluay1jb2xvcik7IFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9vdGVyLXRvcC1iZztcbiAgICAgICAgcGFkZGluZzogNTBweCAwIDMwcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIG1hcmdpbjogOHB4IDA7XG4gICAgICAgIH1cbiAgICAgICAgcHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICAyNHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSg2MHB4LCA2MHB4KTtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNTRweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZm9vdGVyLWNlbnRlcnsgfVxuICAgIC5mb290ZXItYm90dG9te1xuICAgICAgICBAaW5jbHVkZSBjb250YWluZXItbGF5b3V0LXZhcmlhbnQoJGZvb3Rlci1ib3R0b20tY29sb3IsIHRyYW5zcGFyZW50LCAkZm9vdGVyLWxpbmstY29sb3IpOyB9XG4gICAgXG59XG4uaG9tZSB7XG4gICAgLiN7JGFwcC1wcmVmaXh9LWZvb3RlcntcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICAgIENvcHlyaWdodFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi4jeyRhcHAtcHJlZml4fS1jb3B5cmlnaHR7XG4gICAgY29sb3I6ICRjb3B5cmlnaHQtY29sb3I7XG4gICAgZm9udC1zaXplOiAkY29weXJpZ2h0LWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogJGNvcHlyaWdodC1mb250LXdlaWdodDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAaW5jbHVkZSBib3gtc2l6ZSgkY29weXJpZ2h0LWJnLCAkY29weXJpZ2h0LXBhZGRpbmctdG9wLCAkY29weXJpZ2h0LXBhZGRpbmctYm90dG9tKTtcbiAgICAuI3skYmxvY2stc2VsZWN0b3J9IHtcbiAgICAgICAgLiN7JGJsb2NrLWhlYWRpbmctc2VsZWN0b3J9e1xuICAgICAgICAgICAgY29sb3I6ICRmb290ZXItaGVhZGluZy1jb2xvcjtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiAkZm9vdGVyLWhlYWRpbmctdHJhbnNmb3JtO1xuICAgICAgICAgICAgbWFyZ2luOiAkZm9vdGVyLWhlYWRpbmctbWFyZ2luO1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKGZvbnQtc2l6ZSwkZm9vdGVyLWhlYWRpbmctZm9udC1zaXplKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuaW5wdXQtZ3JvdXB7XG4gICAgICAgIGJvcmRlcjogMHB4O1xuICAgICAgICAuZmF7XG4gICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgYXtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjphY3RpdmV7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICB9XG4gICAgICAgIGNvbG9yOiAkY29weXJpZ2h0LWxpbmstY29sb3I7XG4gICAgfVxuICAgIGFkZHJlc3N7IFxuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIC5wYXltZW50e1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICB9XG4gICAgLmNvbnRhaW5lcntcbiAgICAgICAgcGFkZGluZzozMHB4IDA7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzKXtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5zY3JvbGx1cHtcbiAgICBib3JkZXI6IDNweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIHNpemUoNTBweCwgNTBweCk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiA0NnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAmOmhvdmVye1xuICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAkdGhlbWUtY29sb3I7XG4gICAgfVxufSIsIi8qIGJsb2NrICovXG5cbi4jeyRibG9jay1zZWxlY3Rvcn0ge1xuICAgIG1hcmdpbi1ib3R0b206ICRibG9jay1tb2R1bGUtbWFyZ2luLWJvdHRvbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogJGJsb2NrLW1vZHVsZS1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci13aWR0aDogMHB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgLiN7JGJsb2NrLWhlYWRpbmctc2VsZWN0b3J9e1xuICAgICAgICAvKiBjb2xvcjogJGJsb2NrLW1vZHVsZS1oZWFkaW5nLWNvbG9yOyAqL1xuICAgICAgICBwYWRkaW5nOiAkYmxvY2stbW9kdWxlLWhlYWRpbmctcGFkZGluZztcbiAgICAgICAgbWFyZ2luOiAkYmxvY2stbW9kdWxlLWhlYWRpbmctbWFyZ2luO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogJGJsb2NrLW1vZHVsZS1oZWFkaW5nLXRyYW5zZm9ybTtcbiAgICAgICAgZm9udC1zaXplOiAkYmxvY2stbW9kdWxlLWhlYWRpbmctZm9udC1zaXplO1xuICAgICAgICBmb250LWZhbWlseTogJGJsb2NrLW1vZHVsZS1oZWFkaW5nLWZvbnQtZmFtaWx5O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICA+IHNwYW57XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICAgICAgICAgXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTJweDtcbiAgICAgICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMTBweCwxMHB4KTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDEwcHgpO1xuICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zdWJ0aXRsZXtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAmOmJlZm9yZXsgZGlzcGxheTpub25lIH1cbiAgICAgICAgfSAgICBcbiAgICB9XG4gICAgLndpZGdldC10aXRsZS12MntcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgID4gc3BhbntcbiAgICAgICAgICAgIGJhY2tncm91bmQ6JHdoaXRlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAtMTBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6MCAyMHB4O1xuICAgICAgICB9IFxuICAgIH1cbiAgICAuI3skYmxvY2stY29udGVudC1zZWxlY3Rvcn0ge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzICgkYmxvY2stbW9kdWxlLWNvbnRlbnQtcmFkaXVzKTtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsb2NrLW1vZHVsZS1jb250ZW50LWJnO1xuXG4gICAgfVxuICAgIC4jeyRibG9jay1oZWFkaW5nLXJldmVyc2VkLXNlbGVjdG9yfXtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA3NXB4O1xuICAgIH1cblxuICAgIC8qIGJsb2NrIHN0eWxlcyAqL1xuICAgICYubm9wYWRkaW5ne1xuICAgICAgICAuI3skYmxvY2stY29udGVudC1zZWxlY3Rvcn17XG4gICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zXG5cbi4jeyRibG9jay1wcmVmaXh9LWRlZmF1bHQge1xuICBAaW5jbHVkZSBibG9jay12YXJpYW50KCRwYW5lbC1kZWZhdWx0LWJvcmRlciwgJHBhbmVsLWRlZmF1bHQtdGV4dCwgIzAwMCwgJHBhbmVsLWRlZmF1bHQtYm9yZGVyKTtcbn1cbi4jeyRibG9jay1wcmVmaXh9LXByaW1hcnkge1xuICBAaW5jbHVkZSBibG9jay12YXJpYW50KCRwYW5lbC1wcmltYXJ5LWJvcmRlciwgJHBhbmVsLXByaW1hcnktdGV4dCwgJHBhbmVsLXByaW1hcnktaGVhZGluZy1iZywgJHBhbmVsLXByaW1hcnktYm9yZGVyKTtcbn1cbi4jeyRibG9jay1wcmVmaXh9LXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBibG9jay12YXJpYW50KCRwYW5lbC1zdWNjZXNzLWJvcmRlciwgJHBhbmVsLXN1Y2Nlc3MtdGV4dCwgJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZywgJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyKTtcbn1cbi4jeyRibG9jay1wcmVmaXh9LWluZm8ge1xuICBAaW5jbHVkZSBibG9jay12YXJpYW50KCRwYW5lbC1pbmZvLWJvcmRlciwgJHBhbmVsLWluZm8tdGV4dCwgJHBhbmVsLWluZm8taGVhZGluZy1iZywgJHBhbmVsLWluZm8tYm9yZGVyKTtcbn1cbi4jeyRibG9jay1wcmVmaXh9LXdhcm5pbmcge1xuICBAaW5jbHVkZSBibG9jay12YXJpYW50KCRwYW5lbC13YXJuaW5nLWJvcmRlciwgJHBhbmVsLXdhcm5pbmctdGV4dCwgJHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZywgJHBhbmVsLXdhcm5pbmctYm9yZGVyKTtcbn1cbi4jeyRibG9jay1wcmVmaXh9LWRhbmdlciB7XG4gIEBpbmNsdWRlIGJsb2NrLXZhcmlhbnQoJHBhbmVsLWRhbmdlci1ib3JkZXIsICRwYW5lbC1kYW5nZXItdGV4dCwgJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnLCAkcGFuZWwtZGFuZ2VyLWJvcmRlcik7XG59XG5cbi5zaWRlYmFyIHtcbiAgLiN7JGJsb2NrLXNlbGVjdG9yfSB7XG4gICAgLiN7JGJsb2NrLWhlYWRpbmctc2VsZWN0b3J9e1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxuICB9XG5cbn1cblxuLyoqXG4gKiBTdHlsaW5nIENzcyBmb3Igd2lkZ2V0cyBpbiBmb290ZXIgbGF5b3V0XG4gKi9cbi5wYnItZm9vdGVye1xuICAgIC4jeyRibG9jay1zZWxlY3Rvcn0ge1xuICAgICAgICAuI3skYmxvY2staGVhZGluZy1zZWxlY3Rvcn17XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAmID4gc3BhbntcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggMHB4O1xuICAgICAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0gICBcbn1cbi53aWRnZXQtZm9vdGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIC53aWRnZXQtdGl0bGV7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDAgMzVweCAyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAgICAgICBzcGFue1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0ycHg7XG4gICAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKDEwcHgsMTBweCk7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygxMHB4KTtcbiAgICAgICAgICAgICAgbGVmdDogLTIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgdWx7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgbGl7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgfVxuICAgICAgICAmLmxpc3QtdW5zdHlsZWR7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4gLnRpdGxlLWhlYWRpbmd7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTJweDtcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICBAaW5jbHVkZSBzaXplKDEwcHgsMTBweCk7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygxMHB4KTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICB9IiwiLiN7JGJsb2NrLXNlbGVjdG9yfSB7XHJcbiAgICB1bCxvbHtcclxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgIHBhZGRpbmc6MDsgIFxyXG4gICAgfSBcclxufVxyXG5cclxuLnBici1uZXdzbGV0dGVye1xyXG4gICAgYm9yZGVyLXRvcDoxcHggc29saWQgJGJvcmRlci1jb2xvcjtcclxuICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbn1cclxuXHJcblxyXG4vKiBMaXN0IFN0eWxlIFdpZGdldHMqL1xyXG4ud2lkZ2V0X2FyY2hpdmUgYSxcclxuLndpZGdldF9yZWNlbnRfZW50cmllcyBhLFxyXG4ud2lkZ2V0X3JlY2VudF9jb21tZW50cyBhLFxyXG4ud2lkZ2V0X2xheWVyZWRfbmF2IGEsXHJcbi53aWRnZXRfcHJvZHVjdF9jYXRlZ29yaWVzIGFcclxueyBmb250LXdlaWdodDo0MDA7fVxyXG5cclxuLndpZGdldF9hcmNoaXZlIGE6YmVmb3JlLFxyXG4ud2lkZ2V0X3JlY2VudF9lbnRyaWVzIGE6YmVmb3JlLFxyXG4ud2lkZ2V0X3JlY2VudF9jb21tZW50cyBhOmZpcnN0LWNoaWxkOmJlZm9yZSxcclxuLndpZGdldF9sYXllcmVkX25hdiBhOmJlZm9yZSxcclxuLndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgYTpiZWZvcmUsXHJcbi53aWRnZXRfY2F0ZWdvcmllcyBhOmJlZm9yZSB7IG1hcmdpbi1yaWdodDogMTBweDsgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjsgY29sb3I6ICR0aGVtZS1jb2xvcjsgZGlzcGxheTogaW5saW5lLWJsb2NrO2ZvbnQtc2l6ZToxMXB4OyBsaW5lLWhlaWdodDoyMnB4fVxyXG4ud2lkZ2V0X2FyY2hpdmUgYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAxNlwiIH1cclxuLndpZGdldF9yZWNlbnRfZW50cmllcyBhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGY2XCIgfVxyXG4ud2lkZ2V0X3JlY2VudF9jb21tZW50cyBhOmZpcnN0LWNoaWxkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGU1XCIgfVxyXG4ud2lkZ2V0X2xheWVyZWRfbmF2IGE6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZGFcIiB9XHJcbi53aWRnZXRfY2F0ZWdvcmllcyBhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTE0XCIgfVxyXG5cclxuXHJcbi53aWRnZXRfYXJjaGl2ZSB1bCxcclxuLndpZGdldF9jYXRlZ29yaWVzIHVsLFxyXG4ud2lkZ2V0X2xpbmtzIHVsLFxyXG4ud2lkZ2V0X21ldGEgdWwsXHJcbi53aWRnZXRfcGFnZXMgdWwsXHJcbi53aWRnZXRfcmVjZW50X2NvbW1lbnRzIHVsLFxyXG4ud2lkZ2V0X3JlY2VudF9lbnRyaWVzIHVsLFxyXG4gICAud2lkZ2V0X3JzcyB1bCxcclxuLndpZGdldF9uYXZfbWVudSB1bHtcclxuICAgIGxpIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi53aWRnZXRfYXJjaGl2ZSBsaTpmaXJzdC1jaGlsZCxcclxuLndpZGdldF9jYXRlZ29yaWVzIGxpOmZpcnN0LWNoaWxkLFxyXG4ud2lkZ2V0X2xpbmtzIGxpOmZpcnN0LWNoaWxkLFxyXG4ud2lkZ2V0X21ldGEgbGk6Zmlyc3QtY2hpbGQsXHJcbi53aWRnZXRfcGFnZXMgbGk6Zmlyc3QtY2hpbGQsXHJcbi53aWRnZXRfcmVjZW50X2NvbW1lbnRzIGxpOmZpcnN0LWNoaWxkLFxyXG4ud2lkZ2V0X3JlY2VudF9lbnRyaWVzIGxpOmZpcnN0LWNoaWxkIHtcclxuICAgIFxyXG59XHJcblxyXG4ud2lkZ2V0X2NhdGVnb3JpZXMgbGkgdWwsXHJcbi53aWRnZXRfcGFnZXMgbGkgdWwge1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcclxuICAgIG1hcmdpbi10b3A6IDlweDtcclxufVxyXG5cclxuLndpZGdldF9jYXRlZ29yaWVzIGxpIGxpOmxhc3QtY2hpbGQsXHJcbi53aWRnZXRfcGFnZXMgbGkgbGk6bGFzdC1jaGlsZCB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxufVxyXG4ud2lkZ2V0IHtcclxuICAgIHNlbGVjdHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcclxuICAgIH1cclxufVxyXG4jd3AtY2FsZW5kYXIgI3RvZGF5IHtcclxuICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcbi53aWRnZXRfcmVjZW50X2NvbW1lbnRze1xyXG4gICAgLmNvbW1lbnQtYXV0aG9yLWxpbmt7XHJcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgIH1cclxufVxyXG4vKiBSZWNlbnQgUG9zdHMgV2lkZ2V0ICovXHJcblxyXG4ud2lkZ2V0X3JlY2VudF9lbnRyaWVzIC5wb3N0LWRhdGUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbn1cclxuXHJcbi53aWRnZXRfcGJyX3JlY2VudF9wb3N0IHtcclxuICAgIC5wb3N0LXdpZGdldHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgfVxyXG4gICAgLml0ZW0tcG9zdC5tZWRpYSB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICBhLmltYWdlIHtcclxuICAgICAgICAgICAgd2lkdGg6IDgwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7ICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5tZWRpYS1ib2R5IHtcclxuICAgICAgICAgICAgLmVudHJ5LXRpdGxlIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogLTNweCAwIDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiBwIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucG9zdC1zdGljay1sYXlvdXQge1xyXG4gICAgICAgIC5pdGVtLXBvc3QubWVkaWEuaXRlbS1iaWcge1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgICAgICAgICBhLmltYWdlIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmVudHJ5LXRpdGxlIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLml0ZW0tcG9zdC5tZWRpYSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG4gICAgICAgICAgICAubWVkaWEtYm9keSB7XHJcbiAgICAgICAgICAgICAgICAuZW50cnktdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAucG9zdC1kYXRlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyogU2VhcmNoIFdpZGdldCAqL1xyXG4ud2lkZ2V0X3NlYXJjaHtcclxuICAgIC5idG4tc2VhcmNoe1xyXG4gICAgICAgIGlucHV0e1xyXG4gICAgICAgICAgICBib3JkZXI6bm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLyogUlNTIFdpZGdldCAqL1xyXG5cclxuLnJzc3dpZGdldCBpbWcge1xyXG4gICAgbWFyZ2luLXRvcDogLTRweDtcclxufVxyXG5cclxuLnJzc1N1bW1hcnkge1xyXG4gICAgbWFyZ2luOiA5cHggMDtcclxufVxyXG5cclxuLnJzcy1kYXRlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4ud2lkZ2V0X3JzcyBsaSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xyXG59XHJcblxyXG4ud2lkZ2V0X3JzcyBsaTpsYXN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi8qIFRleHQgV2lkZ2V0ICovXHJcblxyXG4ud2lkZ2V0X3RleHQgPiBkaXYgPiA6bGFzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcblxyXG4vKiBDYWxlbmRhciBXaWRnZXQqL1xyXG4ud2lkZ2V0X2NhbGVuZGFyIHtcclxuICAgIHRhYmxlIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICBjYXB0aW9uIHtcclxuICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNzE0Mjg1NzE0MjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIH1cclxuICAgIHRoZWFkIHRoIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xyXG4gICAgfVxyXG4gICAgdGJvZHkgdGQsIHRoZWFkIHRoIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZzoycHg7XHJcbiAgICB9XHJcbiAgICB0Ym9keSBhIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjQ4OTBkO1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQxYTYyYTtcclxuICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICNwcmV2IHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICAgIH1cclxuICAgICNuZXh0IHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qKioqL1xyXG5cclxuLnBvcHVwbmV3c2xldHRlcntcclxuICAgIC5idG4tZmx5aW5nLXJpZ2h0e1xyXG4gICAgICAgIHBvc2l0aW9uOmZpeGVkO1xyXG4gICAgICAgIHRvcDogNDAlO1xyXG4gICAgICAgIHJpZ2h0OjA7XHJcbiAgICAgICAgei1pbmRleDogOTk7XHJcbiAgICB9XHJcbiAgICAubW9kYWwge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHsgXHJcbiAgICAgIC5tb2RhbDpiZWZvcmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5tb2RhbC1kaWFsb2cge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB9XHJcbn1cclxuLyoqc29jaWFsKiovXHJcbi53aWRnZXRfcGJyX3NvY2lhbHNfd2lkZ2V0e1xyXG4gICBcclxuICAgIGF7XHJcbiAgICAgICBcclxuICAgICAgICBkaXNwbGF5OiBibG9jazsgXHJcbiAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2UgMHM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBpe1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcbiAgICAuYm8tc2ljb2xvcntcclxuICAgICAgICBhe1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICAgICBcclxuICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKDQ0cHgsNDRweCk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMjVweCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LCAwLjIpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsgXHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5wYnItZmVhdHVyZWJveHtcclxuICAgIC5yb3d7XHJcbiAgICAgICAgcGFkZGluZzo1MHB4O1xyXG4gICAgICAgIGJvcmRlcjoxcHggc29saWQgJGJvcmRlci1jb2xvcjtcclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KXtcclxuICAgICAgICAgICAgcGFkZGluZzoyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ud2lkZ2V0LWJyYW5kLWxvZ28gIHtcclxuICAgIC5vd2wtcGFnaW5hdGlvbntcclxuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgfVxyXG4gICAgbWFyZ2luOiAxNXB4IDA7XHJcbiAgICAuaXRlbS1icmFuZCB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgZmlsdGVyOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PGZpbHRlciBpZD0nZ3JheXNjYWxlJz48ZmVDb2xvck1hdHJpeCB0eXBlPSdtYXRyaXgnIHZhbHVlcz0nMC4zMzMzIDAuMzMzMyAwLjMzMzMgMCAwIDAuMzMzMyAwLjMzMzMgMC4zMzMzIDAgMCAwLjMzMzMgMC4zMzMzIDAuMzMzMyAwIDAgMCAwIDAgMSAwJy8+PC9maWx0ZXI+PC9zdmc+I2dyYXlzY2FsZVwiKTtcclxuICAgICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xyXG4gICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTsgXHJcbiAgICAgICAgICAtbW96LWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xyXG4gICAgICAgICAgLW1zLWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpOyBcclxuICAgICAgICAgIC1vLWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xyXG4gICAgICAgICAgZmlsdGVyOiBncmF5O1xyXG4gICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcclxuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgJjpob3ZlciB7XHJcbiAgICAuaXRlbS1icmFuZCB7XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwLjUpO1xyXG4gICAgICB9XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMCUpO1xyXG4gICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBncmF5c2NhbGUoMCUpOyBcclxuICAgICAgICAgICAtbW96LWZpbHRlcjogZ3JheXNjYWxlKDAlKTtcclxuICAgICAgICAgICAtbXMtZmlsdGVyOiBncmF5c2NhbGUoMCUpOyBcclxuICAgICAgICAgICAtby1maWx0ZXI6IGdyYXlzY2FsZSgwJSk7XHJcbiAgICAgICAgICAgZmlsdGVyOiBub25lOyBcclxuICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xyXG5cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLy8gV2lkZ2V0IE9uIFNhbGVcclxuLndvby1vbnNhbGUge1xyXG4gICAgLm9uc2FsZSB7XHJcbiAgICAgICAgZGlzcGxheTogIG5vbmU7XHJcbiAgICB9XHJcbiAgICAucHJvZHVjdC1zYWxlLWxhYmVsIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSgzNnB4LCAzNnB4KTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmI0OTQ5O1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIHRvcDogMTBweDtcclxuICAgICAgICByaWdodDogMTBweDtcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICB9XHJcbn1cclxuLnBici1wYWdpbmF0aW9ue1xyXG4gICAgbWFyZ2luLXRvcDogMzBweDtcclxufVxyXG5cclxuLy8gcGJyLWRlc2lnbnNcclxuLnBici1kZXNpZ25zIHtcclxuICAgIC53aWRnZXQtY29udGVudHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWQxZDFkO1xyXG4gICAgICAgIC5vd2wtaXRlbSAuaXRlbSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMDBweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcclxuICAgICAgICAgICAgICAgIC5kZXNpZ25fdGl0bGV7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNzBweDtcclxuICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICAuZGVzaWduX2Rlc2NyaXB0aW9ue1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjOTk5O1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmJ1dHRvbi12aWRlb3tcclxuICAgICAgICAgICAgICAgICAgICAuZmF7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0gICBcclxufVxyXG4vKiBwYnItdmlkZW8tcG9wdXAgKi9cclxuLnBici12aWRlby1wb3B1cHtcclxuICAgIC52aWRlby1wb3B1cHtcclxuICAgICAgICBib3gtcGFjazogY2VudGVyO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcclxuICAgICAgICAtbW96LWJveC1wYWNrOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleGJveDtcclxuICAgICAgICAuYnV0dG9uLXZpZGVve1xyXG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNTRweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTRweDsgXHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTRweDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAzMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgICAgICBpe1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiB3aWRnZXQgQmFubmVyIEluZm8gKi9cclxuLndpZGdldC1iYW5uZXItaW5mbyB7XHJcbiAgICAuZGVzY3JpcHRpb257XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogMztcclxuICAgICAgICB1bHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKCNmZmYsIDAuMyk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDUwcHggMjVweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgIFxyXG4gICAgICAgICAgICBsaXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAyNXB4O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IGRvdHRlZCAgMXB4IHJnYmEoI2ZmZiwgMC4zKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4OjE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmJhbm5lci1pbWd7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSBhdCBjZW50ZXIsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogLW1vei1yYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSBhdCBjZW50ZXIsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSBhdCBjZW50ZXIsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogLW1zLXJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IGNlbnRlciwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCksIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDMpO1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDQwMHB4O1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHRvcDogMTAwJTtcclxuICAgICAgICAgICAgd2lkdGg6IDQwMHB4O1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIHdpZGdldCBCYW5uZXIgSW5mbyAqL1xyXG5cclxuLndpZGdldC1iYW5uZXItZWZmZWN0IHtcclxuICAgIEBpbmNsdWRlIGZsZXhib3g7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbiAgICAtbW96LWp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG4gICAgLW1zLWp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG4gICAgJjpiZWZvcmV7XHJcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlLCAxMDAlKTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAsIDAuMSk7ICAgICBcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAxczsgLyogU2FmYXJpICovXHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAxcztcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMXM7XHJcbiAgICB9XHJcbiAgICA+IGRpdiB7XHJcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gICAgICAgIC13ZWJraXQtYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gICAgICAgIC1tb3otYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gICAgICAgIC1tcy1hbGlnbi1zZWxmOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAuYmFubmVyLWVmZmVjdC1jb250ZW50e1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBtYXJnaW46IGF1dG8gO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTUlO1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgLndpZGdldC1oZWFkaW5ne1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDE1cHggMCAyNXB4O1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAyczsgLyogU2FmYXJpICovXHJcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMnM7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAycztcclxuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7IC8qIElFIDkgKi9cclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOyAvKiBTYWZhcmkgKi9cclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmRlc2NyaXB0aW9ue1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTsgLyogSUUgOSAqL1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7IC8qIFNhZmFyaSAqL1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwOyAvKiBTYWZhcmkgKi9cclxuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMDtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgZmlsdGVyOiBBbHBoYShvcGFjaXR5PTApO1xyXG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJjpob3ZlcntcclxuICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAwLjYpOyAgICAgXHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDFzOyAvKiBTYWZhcmkgKi9cclxuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAxcztcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDFzO1xyXG4gICAgICAgIH1cclxuICAgICAgICAud2lkZ2V0LWhlYWRpbmd7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDJzOyAvKiBTYWZhcmkgKi9cclxuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAycztcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDJzO1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjE1KTsgLyogSUUgOSAqL1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xNSk7IC8qIFNhZmFyaSAqL1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMTUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZGVzY3JpcHRpb257XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpOyAvKiBJRSA5ICovXHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsgLyogU2FmYXJpICovXHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDFzOyAvKiBTYWZhcmkgKi9cclxuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAxcztcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDFzO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICBmaWx0ZXI6IEFscGhhKG9wYWNpdHk9MSk7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiBCYW5uZXIgQ291bnRkb3duICovXHJcbi5iYW5uZXItY291bnRkb3duLXdpZGdldHtcclxuICAgIC5iYW5uZXItY291bnRkb3duLWlubmVye1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZzogMjAlIDEwJTtcclxuICAgICAgICBoM3tcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5oZWFkaW5nLWNvdW50ZG93bntcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnZpZXdhbGx7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogIGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuY291bnRkb3duLXRpbWVze1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlKDBweCwgMHB4KTtcclxuICAgICAgICBAaW5jbHVkZSAgdHJhbnNpdGlvbihhbGwgMC40cyBlYXNlKTtcclxuICAgICAgICA+IGRpdnsgXHJcbiAgICAgICAgICAgIG1hcmdpbjogNXB4IDNweDtcclxuICAgICAgICAgICAgcGFkZGluZzogIDIwcHggNXB4IDE1cHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgICAgICAgICAgY29sb3I6ICM4OTg5ODk7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogNjVweDtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgID4gYntcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcclxuICAgIFRhZ3MgV2lkZ2V0XHJcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi50YWdjbG91ZHtcclxuICAgIGF7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgY29sb3I6ICR3aWRnZXQtdGFnLWNvbG9yO1xyXG4gICAgICAgIGJvcmRlcjogJHdpZGdldC10YWctYm9yZGVyO1xyXG4gICAgICAgIG1hcmdpbjogJHdpZGdldC10YWctbWFyZ2luO1xyXG4gICAgICAgIHBhZGRpbmc6ICR3aWRnZXQtdGFnLXBhZGRpbmc7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJHdpZGdldC10YWctYmc7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06ICR3aWRnZXQtdGFnLXRyYW5zZm9ybTtcclxuICAgICAgICBmb250LXNpemU6ICR3aWRnZXQtdGFnLWZvbnQtc2l6ZTtcclxuICAgICAgICBAaW5jbHVkZSBpbmxpbmUtYmxvY2soKTtcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR3aWRnZXQtdGFnLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdpZGdldC10YWctYmctaG92ZXI7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4ycyBsaW5lYXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICBjb2xvcjogJHdpZGdldC10YWctY29sb3ItaG92ZXI7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjokd2lkZ2V0LXRhZy1ib3JkZXItY29sb3ItaG92ZXI7XHJcbiAgICAgICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gd2lkZ2V0IHJvdGF0ZWltYWdlc1xyXG4ucGJyLXJvdGF0ZWltYWdlcyB7XHJcblxyXG4gICAgLnJvdGF0ZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcjeyRpbWFnZS10aGVtZS1za2lufWJnLXJvdGF0ZS0ucG5nJykgbm8tcmVwZWF0IGNlbnRlciBib3R0b20gJG5vY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XHJcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAxNSUgMTAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgOCUgMTAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgOCUgNzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20pIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCA2JSA2MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMyMHB4KSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zcHJpdGVzcGluLWluc3RhbmNlIHtcclxuICAgICAgICBjdXJzb3I6IG1vdmU7XHJcbiAgICB9XHJcbiAgICAud2lkZ2V0LWNvbnRlbnQge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcbiAgICAgICAgLnNwcml0ZXNwaW4tY2FudmFzLCAuc3ByaXRlc3Bpbi1pbnN0YW5jZSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogNTY4cHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgd2lkdGg6IDY4MHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcwMHB4KSB7XHJcbiAgICAgICAgLnNwcml0ZXNwaW4tY2FudmFzLCAuc3ByaXRlc3Bpbi1pbnN0YW5jZSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDE4cHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgd2lkdGg6IDUwMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcclxuICAgICAgICAuc3ByaXRlc3Bpbi1jYW52YXMsIC5zcHJpdGVzcGluLWluc3RhbmNlIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzMTdweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB3aWR0aDogMzgwcHggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xyXG4gICAgICAgIC5zcHJpdGVzcGluLWNhbnZhcywgLnNwcml0ZXNwaW4taW5zdGFuY2Uge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI2N3B4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyogV2lkZ2V0IFBvc3QgQ2Fyb3VzZWwgKi9cclxuLndpZGdldC1wb3N0LWNhcm91c2VseyBcclxuICAgIC5ibG9nLXBvc3R7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAuZW50cnktdGl0bGV7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmVudHJ5LWRhdGV7XHJcbiAgICAgICAgICAgIC5kYXl7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnJlYWRtb3Jle1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICBhe1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgLmJsb2ctcG9zdC1saXN0IHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4Ym94O1xyXG4gICAgICAgID4gZGl2e1xyXG4gICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuaW5mb3JtYXRpb24tcG9zdHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wb3N0LXRodW1ibmFpbHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5ibG9nLXBvc3QtZ3JpZCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleGJveDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgLW1vei1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgLW1zLWp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuXHJcbiAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgIC5wb3N0LXRodW1ibmFpbHtcclxuICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMDUpOyAvKiBJRSA5ICovXHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7IC8qIFNhZmFyaSAqL1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDFzOyAvKiBTYWZhcmkgKi9cclxuICAgICAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMXM7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMXM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnBvc3QtdGh1bWJuYWlse1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpOyAvKiBJRSA5ICovXHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsgLyogU2FmYXJpICovXHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDFzOyAvKiBTYWZhcmkgKi9cclxuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAxcztcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDFzO1xyXG4gICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMTAwJSwgMTAwJSk7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAwLjQpOyAgICAgXHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAxczsgLyogU2FmYXJpICovXHJcbiAgICAgICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDFzO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDFzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAucG9zdC10aHVtYm5haWx7XHJcbiAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTsgLyogSUUgOSAqL1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDUpOyAvKiBTYWZhcmkgKi9cclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAxczsgLyogU2FmYXJpICovXHJcbiAgICAgICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDFzO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDFzO1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAwLjYpOyAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMXM7IC8qIFNhZmFyaSAqL1xyXG4gICAgICAgICAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMXM7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDFzO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gZGl2IHtcclxuICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYWxpZ24tc2VsZjogZmxleC1lbmQ7XHJcbiAgICAgICAgICAgIC1tb3otYWxpZ24tc2VsZjogZmxleC1lbmQ7XHJcbiAgICAgICAgICAgIC1tcy1hbGlnbi1zZWxmOiBmbGV4LWVuZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmluZm9ybWF0aW9uLXBvc3R7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgbWFyZ2luOiBhdXRvIDtcclxuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5lbnRyeS10aXRsZXtcclxuICAgICAgICAgICAgYXtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5lbnRyeS1kYXRle1xyXG4gICAgICAgICAgICAuZGF5e1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLndwYl93aWRnZXRpc2VkX2NvbHVtbntcclxuICAgID4gZGl2e1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXhib3g7XHJcbiAgICB9XHJcbiAgICAud3BiX3dpZGdldGlzZWRfY29sdW1uX2hlYWRpbmcge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBtYXJnaW46IDAgMjBweCAwIDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDUycHg7XHJcbiAgICB9XHJcblxyXG4gICAgLndpZGdldF9tYzR3cF9mb3JtX3dpZGdldHtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIC5mb3JtLXN0eWxlLTF7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhib3g7XHJcbiAgICAgICAgICAgIGZsZXg6IDEgMSAwO1xyXG4gICAgICAgICAgICA+IHB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4Ym94O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwiZW1haWxcIl17XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRib3JkZXItY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogNTJweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5idG4tZGVmYXVsdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgIzAwMDtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4udmNfY3VzdG9tX2hlYWRpbmcuYnV0dG9uIHtcclxuICAgIGF7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmNvbnRhY3QtYWRke1xyXG4gICAgaXtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBmb290ZXItbWVudSAqL1xyXG4uZm9vdGVyLW1lbnV7XHJcbiAgICB1bHtcclxuICAgICAgICBsaXtcclxuICAgICAgICAgICBkaXNwbGF5OiAgaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgICAgICAgIHdpZHRoOiBhdXRvIWltcG9ydGFudDtcclxuICAgICAgICAgICBtYXJnaW46IDAgMjBweDtcclxuICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmZvb3Rlci1zb2NpYWx7XHJcbiAgICAuYm8tc2ljb2xvciBhIHtcclxuICAgICAgICBpIHtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBjb2xvcjogIzk5OTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zZWFyY2gtY2F0ZWdvcnl7XHJcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJvcmRlci1jb2xvcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNXB4KTtcclxuICAgICAgICAuYnRuLXNlYXJjaHtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAuc2VhcmNoc3VibWl0e1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQ2cHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuc2VhcmNoLWNhdGVnb3J5LWNvbnRhaW5lcntcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmRyb3Bkb3duX3Byb2R1Y3RfY2F0e1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDQ2cHg7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGNvbG9yOiAgJHRleHQtY29sb3I7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XHJcbiAgICAgICAgICAgICY6Zm9jdXN7XHJcbiAgICAgICAgICAgICAgICBvdXRsaW5lLW9mZnNldDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuc2VhcmNoLWNhdGVnb3J5LWlucHV0e1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XHJcbiAgICAgICAgICAgICY6Zm9jdXN7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiIsIi8qXG4qICBNYWluIE1lbnVcbiovXG4ubmF2YmFyLW1lZ2F7XG4gICAgbWluLWhlaWdodDogaW5oZXJpdDtcbiAgICBtYXJnaW46IDBweDtcbiAgICBib3JkZXI6IDBweCBzb2xpZCAkbmF2YmFyLW1lZ2EtYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgLm5hdmJhci10b2dnbGV7XG4gICAgICAgIC5pY29uLWJhcntcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JHRoZW1lLWNvbG9yO1xuICAgICAgICB9XG4gICAgICAgIGJvcmRlci1jb2xvcjokYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgICAubmF2YmFyLW5hdntcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgID4gLm9wZW57XG4gICAgICAgICAgICA+IGF7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbm9jb2xvcjtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJG5hdmJhci1saW5rLWhvdmVyLWJnO1xuICAgICAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB1bHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyLWxpc3QoKTtcbiAgICAgICAgICAgIGxpe1xuICAgICAgICAgICAgICAgICYucGFyZW50e1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYuZHJvcGRvd24tc3VibWVudXtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudXtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBsaXtcblxuICAgICAgICAgICAgJi5hY3RpdmV7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICA+IGF7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1c3tcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9ICAgIFxuICAgICAgICAgICAgJi5vcGVuID4gYXtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiBsaXsgICBcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgICAgICAgICA+IGF7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJG5hdmJhci1saW5rLWNvbG9yO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEzcHggMCAxMnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogJG5hdmJhci10ZXh0LXRyYW5zZm9ybTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJG5hdmJhci1mb250LXdlaWdodDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShmb250LXNpemUsICRuYXZiYXItZm9udC1zaXplKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjM1cyk7XG4gICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAuY2FyZXR7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMjIyMjIyO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IDNweDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zNXMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtY29sb3Igbm9uZSByZXBlYXQgc2Nyb2xsIDAgMDtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW4tb3V0IDBzO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3Vze1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJG5hdmJhci1saW5rLWhvdmVyLWJnO1xuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAuY2FyZXR7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCBhe1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICAgICAuZHJvcGRvd24tbWVudXtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJG5hdmJhci1kcm9wZG93bi1iZztcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6ICRuYXZiYXItZHJvcGRvd24tc2l6ZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHRvcDogMTAxJTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCBhbGwgMC4zcyBlYXNlLW91dCAwcykgO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUoMHB4LCAyMHB4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjRzIGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KSAwcyk7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDk5OTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgdWwuZHJvcGRvd24tbWVudXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggYWxsIDAuM3MgZWFzZS1vdXQgMHMpIDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOnRyYW5zbGF0ZSgwcHgsIDIwcHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAucm93e1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbGl7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRuYXZiYXItZHJvcGRvd24tbGluay1mb250LXdlaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6ICRuYXZiYXItZHJvcGRvd24tcGFkZGluZztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRyb3Bkb3duLWxpbmstY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogJG5hdmJhci1kcm9wZG93bi1saW5rLXRyYW5zZm9ybTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4ycyBsaW5lYXIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKGZvbnQtc2l6ZSwkbmF2YmFyLWRyb3Bkb3duLWxpbmstZm9udC1zaXplKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbmF2YmFyLWRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxke1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206MjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgICAgICAgICAgPiB1bC5kcm9wZG93bi1tZW51e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlKDBweCwgMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gICBcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAud2lkZ2V0dGl0bGV7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MjBweDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKGZvbnQtc2l6ZSwgJG5hdmJhci13aWRnZXQtdGl0bGUtZm9udC1zaXplKTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiRib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfSAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5tZWdhLWRyb3Bkb3duLW1lbnV7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogJHRoZW1lLXBhZGRpbmcgKyAxMDtcbiAgICAgICAgICAgICAgICB1bHtcbiAgICAgICAgICAgICAgICAgICAgbGl7XG4gICAgICAgICAgICAgICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuYWN0aXZle1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJG5hdmJhci1saW5rLWFjdGl2ZS1iZztcbiAgICAgICAgICAgPiAgYXtcbiAgICAgICAgICAgICAgICBjb2xvcjogJG5hdmJhci1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuYWxpZ25lZC1mdWxsd2lkdGh7XG4gICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7ICAgICAgICAgICAgIFxuICAgICAgICAgICAgPiAuZHJvcGRvd24tbWVudXtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9IFxuICAgICAgICA+IC5hbGlnbmVkLXJpZ2h0e1xuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50OyBcbiAgICAgICAgICAgID4gLmRyb3Bkb3duLW1lbnV7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5hbGlnbmVkLWxlZnQge1xuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50OyBcbiAgICAgICAgICAgID4gLmRyb3Bkb3duLW1lbnUgIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC53cGItY29udGFpbmVyLW1lZ2F7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRhaW5lci1tZWdhe1xuICAgICAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgPiBkaXZ7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgICAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMXB4LCAxMDAwcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZDphZnRlcntcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9ICAgXG4gICAgLnRleHQtbGFiZWx7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtMjVweDtcbiAgICAgICAgcmlnaHQ6IDQ1JTtcbiAgICAgICAgcGFkZGluZzowcHggM3B4OyBcbiAgICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICAmLnRleHQtaG90e1xuICAgICAgICAgICAgYmFja2dyb3VuZDokYnJhbmQtZGFuZ2VyO1xuICAgICAgICAgICAgJjphZnRlciB7ICBib3JkZXItdG9wLWNvbG9yOiAkYnJhbmQtZGFuZ2VyIDsgfSBcbiAgICAgICAgfVxuICAgICAgICAmLnRleHQtbmV3e1xuICAgICAgICAgICAgYmFja2dyb3VuZDokYnJhbmQtaW5mbztcbiAgICAgICAgICAgICY6YWZ0ZXIgeyAgYm9yZGVyLXRvcC1jb2xvcjogJGJyYW5kLWluZm8gOyB9IFxuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTNweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG5cbiAgICAubmF2YmFyLW1lZ2EgIC5uYXZiYXItbmF2ID4gbGkge1xuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgPiAuZHJvcGRvd24tbWVudXtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwcHg7ICAgIFxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUoMHB4LCAwcHgpO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7ICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuIFxufVxuLyoqXG4gKiBXaGl0ZSBTdHlsZXNcbiAqL1xuLm5hdmJhci1tZWdhLWxpZ2h0e1xuICAgIC5uYXZiYXItbWVnYSAubmF2YmFyLW5hdiA+IGxpID4gYSwgLm5hdmJhci1tZWdhIC5uYXZiYXItbmF2ID4gbGkgPiBhIC5jYXJldCB7XG4gICAgICAgIGNvbG9yOiNGRkZGRkY7XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbn1cblxuLm5hdmJhci1tZWdhLXRoZW1le1xuICAgIGJhY2tncm91bmQ6JHRoZW1lLWNvbG9yO1xuICAgIC5uYXZiYXItbWVnYSAubmF2YmFyLW5hdiA+IGxpID4gYSwgLm5hdmJhci1tZWdhIC5uYXZiYXItbmF2ID4gbGkgPiBhIC5jYXJldCB7XG4gICAgICAgIGNvbG9yOiNGRkZGRkY7XG4gICAgfVxuICAgIFxufVxuXG5cbi8qKlxuICogU2ltcGxlIFN0eWxlc1xuICovXG4ubmF2YmFyLW1lZ2Etc2ltcGxle1xuICAgLnBici1tZWdhbWVudXtcbiAgICAgICAgLyogZGlzcGxheTogaW5saW5lLWJsb2NrOyAqL1xuICAgfVxufVxuXG5cblxuLyoqKiBWZXJ0aWNhbCBNZWdhbWVudSAqKiovXG4ucGJyLXZlcnRpY2FsLW1lbnV7XG4gICAgLm5hdmJhci12ZXJ0aWNhbC1tZWdhe1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAmID4gbGl7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgJiA+ICBhe1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6MTBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbToxMHB4OyBcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MTNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206c29saWQgMXB4ICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICAuZHJvcGRvd24tbWVudXtcbiAgICAgICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICAmID4gLmRyb3Bkb3duLW1lbnV7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jYXJldHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gICBcbiAgICB9XG4gICAgJi5tZW51LXJpZ2h0ID4gbGkge1xuICAgICAgICAuZHJvcGRvd24tbWVudXtcbiAgICAgICAgICAgIHRvcDowO1xuICAgICAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLm1lbnUtaXRlbS1sYW5ndWFnZS1jdXJyZW50IC5zdWJtZW51LWxhbmd1YWdlcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOjEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIG1pbi13aWR0aDogMTcwcHg7XG59XG4ubWVudS1pdGVtLWxhbmd1YWdlLWN1cnJlbnQ6aG92ZXIgLnN1Ym1lbnUtbGFuZ3VhZ2VzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4ubWVudS1pdGVtLWxhbmd1YWdlLWN1cnJlbnQ6aG92ZXIgLnN1Ym1lbnUtbGFuZ3VhZ2VzIGxpIHtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG59IiwiLmJnLWJvdHRvbXtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGltYWdlLXRoZW1lLXBhdGggfWJnLWNvZmZlZTYucG5nJyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIHJpZ2h0O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cblxuLm1haW4tY29udGVudHtcbiAgICBoMXtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi8qKlxuICogNi4xMCBDb250cmlidXRvciBQYWdlXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG4uY29udGVudC1hcmVhIHtcbiAgIHBhZGRpbmctdG9wOiAzMHB4O1xuIH1cbiAucGFnZSAud29vY29tbWVyY2UtcGFnZSAuY29udGVudC1hcmVhIHtcbiAgIHBhZGRpbmctdG9wOiAzMHB4O1xuIH1cbiAucGFnZSAuY29udGVudC1hcmVhIHtcbiAgIHBhZGRpbmctdG9wOiAwO1xuIH1cbi5jb250cmlidXRvciB7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG5cdC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcblx0LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRib3gtc2l6aW5nOiAgICAgIGJvcmRlci1ib3g7XG5cdHBhZGRpbmc6IDQ4cHggMTBweDtcbn1cblxuLmNvbnRyaWJ1dG9yOmZpcnN0LW9mLXR5cGUge1xuXHRwYWRkaW5nLXRvcDogMjRweDtcbn1cblxuLmNvbnRyaWJ1dG9yLWluZm8ge1xuXHRtYXJnaW46IDAgYXV0bztcblx0bWF4LXdpZHRoOiA0NzRweDtcbn1cblxuLmNvbnRyaWJ1dG9yLWF2YXRhciB7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcblx0ZmxvYXQ6IGxlZnQ7XG5cdG1hcmdpbjogMCAzMHB4IDIwcHggMDtcblx0cGFkZGluZzogMnB4O1xufVxuXG4uY29udHJpYnV0b3ItbmFtZSB7XG5cdGZvbnQtc2l6ZTogMTZweDtcblx0Zm9udC13ZWlnaHQ6IDkwMDtcblx0bGluZS1oZWlnaHQ6IDEuNTtcblx0bWFyZ2luOiAwO1xufVxuXG4uY29udHJpYnV0b3ItYmlvIGEge1xuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmNvbnRyaWJ1dG9yLWJpbyBhOmhvdmVyIHtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uY29udHJpYnV0b3ItcG9zdHMtbGluayB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0bGluZS1oZWlnaHQ6IG5vcm1hbDtcblx0cGFkZGluZzogMTBweCAzMHB4O1xufVxuXG4uY29udHJpYnV0b3ItcG9zdHMtbGluazpiZWZvcmUge1xuXHRjb250ZW50OiBcIlxcZjQ0M1wiO1xufVxuXG5cbi8qKlxuICogNi4xMSA0MDQgUGFnZVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuLm5vdGZvdW5kLXBhZ2V7XG4gICAudGl0bGV7XG4gICAgICBmb250LXNpemU6IDE2MHB4O1xuICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgLnN1YntcbiAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgICAgICAgIG1hcmdpbjogMCAwIDMwcHg7XG4gICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzY2NjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNTBweDtcbiAgICAgICAgIH1cbiAgICAgIH1cbiAgIH1cbiAgIC5lcnJvci1kZXNjcmlwdGlvbntcbiAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgcGFkZGluZzogMCAyMCU7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCl7XG4gICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICB9XG4gICB9XG4gICAucGFnZS1hY3Rpb257XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgYXtcbiAgICAgICAgIG1hcmdpbjogMTBweCAxMHB4O1xuICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogMzYwcHgpe1xuXHQgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG5cdCAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cdCAgICAgfVxuICAgICAgfVxuICAgfVxufVxuLmNvbnRhY3QgPiBkaXZ7XG4gICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbSkge1xuICAud3BiLWpzLWNvbXBvc2VyIHtcbiAgICAuYmctcm93bW9iaWxle1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmJnLWNvbG1vYmlsZXtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICB9XG4gIH1cbn0iLCJcbi8qKlxuICogOC4wIEdhbGxlcnlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxuLmdhbGxlcnkgLmdhbGxlcnktaXRlbSB7XG5cdGZsb2F0OiBsZWZ0O1xuXHRtYXJnaW46IDAgNHB4IDRweCAwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtMSAuZ2FsbGVyeS1pdGVtIHtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHR3aWR0aDogYXV0bztcbn1cblxuLmdhbGxlcnktY29sdW1ucy0yIC5nYWxsZXJ5LWl0ZW0ge1xuXHRtYXgtd2lkdGg6IDQ4JTtcblx0bWF4LXdpZHRoOiAtd2Via2l0LWNhbGMoNTAlIC0gMTRweCk7XG5cdG1heC13aWR0aDogICAgICAgICBjYWxjKDUwJSAtIDE0cHgpO1xuXHR3aWR0aDogYXV0bztcbn1cblxuLmdhbGxlcnktY29sdW1ucy0zIC5nYWxsZXJ5LWl0ZW0ge1xuXHRtYXgtd2lkdGg6IDMyJTtcblx0bWF4LXdpZHRoOiAtd2Via2l0LWNhbGMoMzMuMyUgLSAxMXB4KTtcblx0bWF4LXdpZHRoOiAgICAgICAgIGNhbGMoMzMuMyUgLSAxMXB4KTtcblx0d2lkdGg6IGF1dG87XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtNCAuZ2FsbGVyeS1pdGVtIHtcblx0bWF4LXdpZHRoOiAyMyU7XG5cdG1heC13aWR0aDogLXdlYmtpdC1jYWxjKDI1JSAtIDlweCk7XG5cdG1heC13aWR0aDogICAgICAgICBjYWxjKDI1JSAtIDlweCk7XG5cdHdpZHRoOiBhdXRvO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTUgLmdhbGxlcnktaXRlbSB7XG5cdG1heC13aWR0aDogMTklO1xuXHRtYXgtd2lkdGg6IC13ZWJraXQtY2FsYygyMCUgLSA4cHgpO1xuXHRtYXgtd2lkdGg6ICAgICAgICAgY2FsYygyMCUgLSA4cHgpO1xuXHR3aWR0aDogYXV0bztcbn1cblxuLmdhbGxlcnktY29sdW1ucy02IC5nYWxsZXJ5LWl0ZW0ge1xuXHRtYXgtd2lkdGg6IDE1JTtcblx0bWF4LXdpZHRoOiAtd2Via2l0LWNhbGMoMTYuNyUgLSA3cHgpO1xuXHRtYXgtd2lkdGg6ICAgICAgICAgY2FsYygxNi43JSAtIDdweCk7XG5cdHdpZHRoOiBhdXRvO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTcgLmdhbGxlcnktaXRlbSB7XG5cdG1heC13aWR0aDogMTMlO1xuXHRtYXgtd2lkdGg6IC13ZWJraXQtY2FsYygxNC4yOCUgLSA3cHgpO1xuXHRtYXgtd2lkdGg6ICAgICAgICAgY2FsYygxNC4yOCUgLSA3cHgpO1xuXHR3aWR0aDogYXV0bztcbn1cblxuLmdhbGxlcnktY29sdW1ucy04IC5nYWxsZXJ5LWl0ZW0ge1xuXHRtYXgtd2lkdGg6IDExJTtcblx0bWF4LXdpZHRoOiAtd2Via2l0LWNhbGMoMTIuNSUgLSA2cHgpO1xuXHRtYXgtd2lkdGg6ICAgICAgICAgY2FsYygxMi41JSAtIDZweCk7XG5cdHdpZHRoOiBhdXRvO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTkgLmdhbGxlcnktaXRlbSB7XG5cdG1heC13aWR0aDogOSU7XG5cdG1heC13aWR0aDogLXdlYmtpdC1jYWxjKDExLjElIC0gNnB4KTtcblx0bWF4LXdpZHRoOiAgICAgICAgIGNhbGMoMTEuMSUgLSA2cHgpO1xuXHR3aWR0aDogYXV0bztcbn1cblxuLmdhbGxlcnktY29sdW1ucy0xIC5nYWxsZXJ5LWl0ZW06bnRoLW9mLXR5cGUoMW4pLFxuLmdhbGxlcnktY29sdW1ucy0yIC5nYWxsZXJ5LWl0ZW06bnRoLW9mLXR5cGUoMm4pLFxuLmdhbGxlcnktY29sdW1ucy0zIC5nYWxsZXJ5LWl0ZW06bnRoLW9mLXR5cGUoM24pLFxuLmdhbGxlcnktY29sdW1ucy00IC5nYWxsZXJ5LWl0ZW06bnRoLW9mLXR5cGUoNG4pLFxuLmdhbGxlcnktY29sdW1ucy01IC5nYWxsZXJ5LWl0ZW06bnRoLW9mLXR5cGUoNW4pLFxuLmdhbGxlcnktY29sdW1ucy02IC5nYWxsZXJ5LWl0ZW06bnRoLW9mLXR5cGUoNm4pLFxuLmdhbGxlcnktY29sdW1ucy03IC5nYWxsZXJ5LWl0ZW06bnRoLW9mLXR5cGUoN24pLFxuLmdhbGxlcnktY29sdW1ucy04IC5nYWxsZXJ5LWl0ZW06bnRoLW9mLXR5cGUoOG4pLFxuLmdhbGxlcnktY29sdW1ucy05IC5nYWxsZXJ5LWl0ZW06bnRoLW9mLXR5cGUoOW4pIHtcblx0bWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uZ2FsbGVyeSAuZ2FsbGVyeS1jYXB0aW9uIHtcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuXHQtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdC1tb3otYm94LXNpemluZzogICAgYm9yZGVyLWJveDtcblx0Ym94LXNpemluZzogICAgICAgICBib3JkZXItYm94O1xuXHRjb2xvcjogI2ZmZjtcblx0Zm9udC1zaXplOiAxMnB4O1xuXHRsaW5lLWhlaWdodDogMS41O1xuXHRtYXJnaW46IDA7XG5cdG1heC1oZWlnaHQ6IDUwJTtcblx0b3BhY2l0eTogMDtcblx0cGFkZGluZzogNnB4IDhweDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IDA7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4uZ2FsbGVyeSAuZ2FsbGVyeS1jYXB0aW9uOmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdGhlaWdodDogMTAwJTtcblx0bWluLWhlaWdodDogNDlweDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4uZ2FsbGVyeS1pdGVtOmhvdmVyIC5nYWxsZXJ5LWNhcHRpb24ge1xuXHRvcGFjaXR5OiAxO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTcgLmdhbGxlcnktY2FwdGlvbixcbi5nYWxsZXJ5LWNvbHVtbnMtOCAuZ2FsbGVyeS1jYXB0aW9uLFxuLmdhbGxlcnktY29sdW1ucy05IC5nYWxsZXJ5LWNhcHRpb24ge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG5cbi8qKlxuICogOS4wIEF1ZGlvL1ZpZGVvXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxuLm1lanMtbWVkaWFlbGVtZW50LFxuLm1lanMtY29udGFpbmVyIC5tZWpzLWNvbnRyb2xzIHtcblx0YmFja2dyb3VuZDogIzAwMDtcbn1cblxuLm1lanMtY29udHJvbHMgLm1lanMtdGltZS1yYWlsIC5tZWpzLXRpbWUtbG9hZGVkLFxuLm1lanMtY29udHJvbHMgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtc2xpZGVyIC5tZWpzLWhvcml6b250YWwtdm9sdW1lLWN1cnJlbnQge1xuXHRiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4ubWVqcy1jb250cm9scyAubWVqcy10aW1lLXJhaWwgLm1lanMtdGltZS1jdXJyZW50IHtcblx0YmFja2dyb3VuZDogIzI0ODkwZDtcbn1cblxuLm1lanMtY29udHJvbHMgLm1lanMtdGltZS1yYWlsIC5tZWpzLXRpbWUtdG90YWwsXG4ubWVqcy1jb250cm9scyAubWVqcy1ob3Jpem9udGFsLXZvbHVtZS1zbGlkZXIgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtdG90YWwge1xuXHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4zMyk7XG59XG5cbi5tZWpzLWNvbnRyb2xzIC5tZWpzLXRpbWUtcmFpbCBzcGFuLFxuLm1lanMtY29udHJvbHMgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtc2xpZGVyIC5tZWpzLWhvcml6b250YWwtdm9sdW1lLXRvdGFsLFxuLm1lanMtY29udHJvbHMgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtc2xpZGVyIC5tZWpzLWhvcml6b250YWwtdm9sdW1lLWN1cnJlbnQge1xuXHRib3JkZXItcmFkaXVzOiAwO1xufVxuXG4ubWVqcy1vdmVybGF5LWxvYWRpbmcge1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLm1lanMtb3ZlcmxheS1idXR0b24ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiAycHg7XG5cdGJveC1zaGFkb3c6IDFweCAxcHggMXB4IHJnYmEoMCwwLDAsLjgpO1xuXHRjb2xvcjogIzAwMDtcblx0aGVpZ2h0OiAzNnB4O1xuXHRtYXJnaW4tbGVmdDogLTI0cHg7XG5cdHdpZHRoOiA0OHB4O1xufVxuXG4ubWVqcy1vdmVybGF5LWJ1dHRvbjpiZWZvcmUge1xuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0Y29udGVudDogJ1xcZjQ1Mic7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0Zm9udDogbm9ybWFsIDMycHgvMS4xMjUgR2VuZXJpY29ucztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDFweDtcblx0bGVmdDogMTBweDtcbn1cblxuLm1lanMtY29udHJvbHMgLm1lanMtYnV0dG9uIGJ1dHRvbjpmb2N1cyB7XG5cdG91dGxpbmU6IG5vbmU7XG59XG5cbi5tZWpzLWNvbnRyb2xzIC5tZWpzLWJ1dHRvbiBidXR0b24ge1xuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0YmFja2dyb3VuZDogbm9uZTtcblx0Y29sb3I6ICNmZmY7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0Zm9udDogbm9ybWFsIDE2cHgvMSBHZW5lcmljb25zO1xufVxuXG4ubWVqcy1wbGF5cGF1c2UtYnV0dG9uLm1lanMtcGxheSBidXR0b246YmVmb3JlIHtcblx0Y29udGVudDogJ1xcZjQ1Mic7XG59XG5cbi5tZWpzLXBsYXlwYXVzZS1idXR0b24ubWVqcy1wYXVzZSBidXR0b246YmVmb3JlIHtcblx0Y29udGVudDogJ1xcZjQ0OCc7XG59XG5cbi5tZWpzLXZvbHVtZS1idXR0b24ubWVqcy1tdXRlIGJ1dHRvbjpiZWZvcmUge1xuXHRjb250ZW50OiAnXFxmMTA5Jztcblx0Zm9udC1zaXplOiAyMHB4O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogLTJweDtcblx0bGVmdDogMDtcbn1cblxuLm1lanMtdm9sdW1lLWJ1dHRvbi5tZWpzLXVubXV0ZSBidXR0b246YmVmb3JlIHtcblx0Y29udGVudDogJ1xcZjEwOSc7XG5cdGxlZnQ6IDA7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xufVxuXG4ubWVqcy1mdWxsc2NyZWVuLWJ1dHRvbiBidXR0b246YmVmb3JlIHtcblx0Y29udGVudDogJ1xcZjQ3NCc7XG59XG5cbi5tZWpzLWZ1bGxzY3JlZW4tYnV0dG9uLm1lanMtdW5mdWxsc2NyZWVuIGJ1dHRvbjpiZWZvcmUge1xuXHRjb250ZW50OiAnXFxmNDA2Jztcbn1cblxuLm1lanMtb3ZlcmxheTpob3ZlciAubWVqcy1vdmVybGF5LWJ1dHRvbiB7XG5cdGJhY2tncm91bmQtY29sb3I6ICMyNDg5MGQ7XG5cdGNvbG9yOiAjZmZmO1xufVxuXG4ubWVqcy1jb250cm9scyAubWVqcy1idXR0b24gYnV0dG9uOmhvdmVyIHtcblx0Y29sb3I6ICM0MWE2MmE7XG59XG5kaXYucGFnZS1saW5rcyxcbmZvb3Rlci5lbnRyeS1tZXRhe1xuXHRtYXJnaW46MTBweCAwO1xuXHRvdmVyZmxvdzpoaWRkZW47XG5cdHdpZHRoOjEwMCU7XG59XG4vLyB3aWRnZXRfcmVjZW50X2VudHJpZXNcbi53aWRnZXRfY2F0ZWdvcmllcywud2lkZ2V0X3BhZ2VzLFxuLndpZGdldF9yZWNlbnRfZW50cmllcywud2lkZ2V0X25hdl9tZW51e1xuXHR1bHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdHBhZGRpbmc6MDtcblx0XHRtYXJnaW46MDtcblx0XHR1bHtcblx0XHRcdHBhZGRpbmctbGVmdDogJHRoZW1lLXBhZGRpbmc7XG5cdFx0fVxuXHRcdGxpe1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcblx0XHRcdCY6bGFzdC1jaGlsZHtcblx0XHRcdFx0Ym9yZGVyOm5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cblxuLy8gd2lkdGV0IGRlZmF1bHRcbi53aWRnZXRfYXJjaGl2ZXtcblx0dWx7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRtYXJnaW46MDtcblx0XHRwYWRkaW5nOjA7XG5cdFx0bGl7XG5cdFx0XHRsaW5lLWhlaWdodDogMzBweDtcblx0XHR9XG5cdFx0dWx7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6ICR0aGVtZS1tYXJnaW4gLyAyO1xuXHRcdH1cblx0fVxufVxuLndpZGdldF9yc3MsXG4ud2lkZ2V0X3JlY2VudF9jb21tZW50cyxcbi53aWRnZXRfbWV0YSxcbi53aWRnZXRfcGFnZXN7XG5cdD51bHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdHBhZGRpbmc6MDtcblx0fVxufVxuLndpZGdldF90ZXh0e1xuXHRpbWd7XG5cdFx0bWFyZ2luLWJvdHRvbToxMHB4O1xuXHR9XG5cdHNlbGVjdHtcblx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdH1cbn1cbi53aWRnZXRfY2FsZW5kYXJ7XG5cdHRhYmxle1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG59IiwiXG4vKipcbiAqIDYuMyBFbnRyeSBNZXRhXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG4uc3RpY2t5IC5lbnRyeS1kYXRlIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLmNhdC1saW5rcyB7XG5cdGZvbnQtd2VpZ2h0OiA5MDA7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jYXQtbGlua3MgYSB7XG5cdGNvbG9yOiAjMmIyYjJiO1xufVxuXG4uY2F0LWxpbmtzIGE6aG92ZXIge1xuXHRjb2xvcjogJHRoZW1lLWNvbG9yO1xufVxuXG4uYnlsaW5lIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuXG5cbi8qIFRhZyBsaW5rcyBzdHlsZSAqL1xuXG4uZW50cnktbWV0YSB7XG5cdGNvbG9yOiAjOTk5O1xuXHRmb250LXNpemU6IDEycHg7XG5cdGxpbmUtaGVpZ2h0OiAyNnB4O1xuXHRmb250LXdlaWdodDogNTAwO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRhe1xuXHRcdGNvbG9yOiAjMDAwO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0Jjpob3Zlcntcblx0XHRcdGNvbG9yOiAkdGhlbWUtY29sb3I7XG5cdFx0fVxuXG5cdH1cblxuXHRcblx0c3Bhbntcblx0XHQubWV0YS1zZXAge1xuXHRcdFx0Y29sb3I6ICNkY2RjZGM7XG5cdFx0XHRtYXJnaW46IDAgMnB4O1xuXHRcdH1cblx0XHRzcGFue1xuXHRcdFx0Y29sb3I6ICR0aGVtZS1jb2xvcjtcblx0XHR9XG5cdH0gXG5cdC5hdmF0YXJcdHtcblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0fVxufVxuLnRhZy1saW5rcyB7XG5cdG1hcmdpbi10b3A6IDhweDtcblx0YSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwMDtcblx0XHRib3JkZXItcmFkaXVzOiAwIDJweCAycHggMDtcblx0XHRjb2xvcjogI2ZmZjtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0Zm9udC1zaXplOiAxMXB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjI3MjcyNzI3Mjc7XG5cdFx0bWFyZ2luOiAycHggNHB4IDJweCAxMHB4O1xuXHRcdHBhZGRpbmc6IDNweCA3cHg7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdCAgXHRcblx0ICBcdCY6aG92ZXIge1xuXHRcdCAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XG5cdFx0ICAgIGNvbG9yOiAjZmZmO1xuXHQgIFx0fVxuXHQgIFx0XG5cdCAgXHQmOmJlZm9yZSB7XG5cdFx0ICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0ICAgIGJvcmRlci1yaWdodDogOHB4IHNvbGlkICMwMDA7XG5cdFx0ICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0ICAgIGNvbnRlbnQ6IFwiXCI7XG5cdFx0ICAgIGhlaWdodDogMDtcblx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRcdCAgICB0b3A6IDA7XG5cdFx0ICAgIGxlZnQ6IC04cHg7XG5cdFx0ICAgIHdpZHRoOiAwO1xuXHQgIFx0fVxuXHQgICAgXG5cdCAgICAmOmhvdmVyOmJlZm9yZSB7XG5cdCAgICBcdGJvcmRlci1yaWdodC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuXHQgIFx0fVxuXHQgIFx0JjphZnRlciB7XG5cdFx0ICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0ICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHQgICAgY29udGVudDogXCJcIjtcblx0XHQgICAgaGVpZ2h0OiA0cHg7XG5cdFx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHQgICAgdG9wOiA4cHg7XG5cdFx0ICAgIGxlZnQ6IC0ycHg7XG5cdFx0ICAgIHdpZHRoOiA0cHg7XG5cdCBcdH1cblx0fVxufVxuLmVudHJ5LWRhdGUsXG4ubWV0YS1zZXAsXG4uYXV0aG9yLFxuLmVudHJ5LWNhdGVnb3J5LFxuLmNvbW1lbnRzLWxpbmssXG4uZWRpdC1saW5rIHtcblx0YSB7XG5cdFx0bWFyZ2luLWxlZnQ6IDVweDtcblx0fVxufVxuLmVudHJ5LWNhdGVnb3J5IHtcblx0dWwge1xuXHRcdG1hcmdpbjogMDtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0cGFkZGluZzowO1xuXHRcdGxpIHtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXHR9XG59XG5cbi8qKlxuICogNi40IEVudHJ5IENvbnRlbnRcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxuLmVudHJ5LWNvbnRlbnQsXG4uZW50cnktc3VtbWFyeSxcbi5wYWdlLWNvbnRlbnQge1xuXHQtd2Via2l0LWh5cGhlbnM6IGF1dG87XG5cdC1tb3otaHlwaGVuczogICAgYXV0bztcblx0LW1zLWh5cGhlbnM6ICAgICBhdXRvO1xuXHRoeXBoZW5zOiAgICAgICAgIGF1dG87XG5cdHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cblxuLnNpdGUtY29udGVudCAuZW50cnktY29udGVudCxcbi5zaXRlLWNvbnRlbnQgLmVudHJ5LXN1bW1hcnksXG4ucGFnZS1jb250ZW50IHtcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgaDE6Zmlyc3QtY2hpbGQsXG4uZW50cnktY29udGVudCBoMjpmaXJzdC1jaGlsZCxcbi5lbnRyeS1jb250ZW50IGgzOmZpcnN0LWNoaWxkLFxuLmVudHJ5LWNvbnRlbnQgaDQ6Zmlyc3QtY2hpbGQsXG4uZW50cnktY29udGVudCBoNTpmaXJzdC1jaGlsZCxcbi5lbnRyeS1jb250ZW50IGg2OmZpcnN0LWNoaWxkLFxuLmVudHJ5LXN1bW1hcnkgaDE6Zmlyc3QtY2hpbGQsXG4uZW50cnktc3VtbWFyeSBoMjpmaXJzdC1jaGlsZCxcbi5lbnRyeS1zdW1tYXJ5IGgzOmZpcnN0LWNoaWxkLFxuLmVudHJ5LXN1bW1hcnkgaDQ6Zmlyc3QtY2hpbGQsXG4uZW50cnktc3VtbWFyeSBoNTpmaXJzdC1jaGlsZCxcbi5lbnRyeS1zdW1tYXJ5IGg2OmZpcnN0LWNoaWxkLFxuLnBhZ2UtY29udGVudCBoMTpmaXJzdC1jaGlsZCxcbi5wYWdlLWNvbnRlbnQgaDI6Zmlyc3QtY2hpbGQsXG4ucGFnZS1jb250ZW50IGgzOmZpcnN0LWNoaWxkLFxuLnBhZ2UtY29udGVudCBoNDpmaXJzdC1jaGlsZCxcbi5wYWdlLWNvbnRlbnQgaDU6Zmlyc3QtY2hpbGQsXG4ucGFnZS1jb250ZW50IGg2OmZpcnN0LWNoaWxkIHtcblx0bWFyZ2luLXRvcDogMDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgYSxcbi5lbnRyeS1zdW1tYXJ5IGEsXG4ucGFnZS1jb250ZW50IGEsXG4uY29tbWVudC1jb250ZW50IGEge1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5lbnRyeS1jb250ZW50IGE6aG92ZXIsXG4uZW50cnktc3VtbWFyeSBhOmhvdmVyLFxuLnBhZ2UtY29udGVudCBhOmhvdmVyLFxuLmNvbW1lbnQtY29udGVudCBhOmhvdmVyLFxuLmVudHJ5LWNvbnRlbnQgYS5idXR0b24sXG4uZW50cnktc3VtbWFyeSBhLmJ1dHRvbixcbi5wYWdlLWNvbnRlbnQgYS5idXR0b24sXG4uY29tbWVudC1jb250ZW50IGEuYnV0dG9uIHtcblxufVxuXG4uZW50cnktY29udGVudCB0YWJsZSxcbi5jb21tZW50LWNvbnRlbnQgdGFibGUge1xuXHRmb250LXNpemU6IDE0cHg7XG5cdGxpbmUtaGVpZ2h0OiAxLjI4NTcxNDI4NTc7XG5cdG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG5cbi5lbnRyeS1jb250ZW50IHRoLFxuLmNvbW1lbnQtY29udGVudCB0aCB7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdHBhZGRpbmc6IDhweDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgdGQsXG4uY29tbWVudC1jb250ZW50IHRkIHtcblx0cGFkZGluZzogOHB4O1xufVxuXG4uZW50cnktY29udGVudCAuZWRpdC1saW5rIHtcblx0Y2xlYXI6IGJvdGg7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRmb250LXNpemU6IDEycHg7XG5cdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdGxpbmUtaGVpZ2h0OiAxLjMzMzMzMzMzMzM7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5lbnRyeS1jb250ZW50IC5lZGl0LWxpbmsgYSB7XG5cdGNvbG9yOiAkdGhlbWUtY29sb3I7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmVudHJ5LWNvbnRlbnQgLmVkaXQtbGluayBhOmhvdmVyIHtcblx0Y29sb3I6ICM0MWE2MmE7XG59XG5cbi5lbnRyeS1jb250ZW50IC5tb3JlLWxpbmsge1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnJhdGluZ3MgYXtcblx0dGV4dC1pbmRlbnQ6LTk5OTllbSAhaW1wb3J0YW50O1xufVxuXG4ucG9zdC1jYXRlZ29yaWVze1xuXHRsaXtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRsaXN0LXN0eWxlLXR5cGU6IGRhc2hlZFxuXHR9XG59XG4vKipcbiAqIE5hdmlnYXRpb24gbGlua3NcbiAqL1xuLm5hdi1saW5rc3tcblx0YmFja2dyb3VuZDogI2ZhZmFmYTtcblx0cGFkZGluZzoyMHB4O1xuXHRtYXJnaW4tdG9wOiAgMzBweDtcblx0Lm1ldGEtbmF2e1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdG1hcmdpbi1yaWdodDogMTBweDtcblx0fVxufVxuXG5cblxuLmVudHJ5LWNvbnRlbnQtcGFnZXsgXG4gICAgLmVkaXQtbGlua3tcbiAgICAgICAgYmFja2dyb3VuZDojMDAwO1xuICAgICAgIFxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmc6NXB4IDZweDtcbiAgICAgICAgYXtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgICBjb2xvcjogI0ZGRiFpbXBvcnRhbnQ7XG4gICAgICAgIH0gIFxuICAgICAgICB6LWluZGV4OiAxMDAwMDtcbiAgICB9XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG59XG5cblxuLyogTWVkaWFlbGVtZW50cyAqL1xuXG4uaGVudHJ5IC5tZWpzLWNvbnRhaW5lciB7XG5cdG1hcmdpbjogMTJweCAwIDE4cHg7XG59XG5cbi5oZW50cnkgLm1lanMtbWVkaWFlbGVtZW50LFxuLmhlbnRyeSAubWVqcy1jb250YWluZXIgLm1lanMtY29udHJvbHMge1xuXHRiYWNrZ3JvdW5kOiAjMDAwO1xufVxuXG4uaGVudHJ5IC5tZWpzLWNvbnRyb2xzIC5tZWpzLXRpbWUtcmFpbCAubWVqcy10aW1lLWxvYWRlZCxcbi5oZW50cnkgLm1lanMtY29udHJvbHMgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtc2xpZGVyIC5tZWpzLWhvcml6b250YWwtdm9sdW1lLWN1cnJlbnQge1xuXHRiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4uaGVudHJ5IC5tZWpzLWNvbnRyb2xzIC5tZWpzLXRpbWUtcmFpbCAubWVqcy10aW1lLWN1cnJlbnQge1xuXHRiYWNrZ3JvdW5kOiAjMjQ4OTBkO1xufVxuXG4uaGVudHJ5IC5tZWpzLWNvbnRyb2xzIC5tZWpzLXRpbWUtcmFpbCAubWVqcy10aW1lLXRvdGFsLFxuLmhlbnRyeSAubWVqcy1jb250cm9scyAubWVqcy1ob3Jpem9udGFsLXZvbHVtZS1zbGlkZXIgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtdG90YWwge1xuXHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4zMyk7XG59XG5cbi5oZW50cnkgLm1lanMtY29udGFpbmVyIC5tZWpzLWNvbnRyb2xzIC5tZWpzLXRpbWUge1xuXHRwYWRkaW5nLXRvcDogOXB4O1xufVxuXG4uaGVudHJ5IC5tZWpzLWNvbnRyb2xzIC5tZWpzLXRpbWUtcmFpbCBzcGFuLFxuLmhlbnRyeSAubWVqcy1jb250cm9scyAubWVqcy1ob3Jpem9udGFsLXZvbHVtZS1zbGlkZXIgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtdG90YWwsXG4uaGVudHJ5IC5tZWpzLWNvbnRyb2xzIC5tZWpzLWhvcml6b250YWwtdm9sdW1lLXNsaWRlciAubWVqcy1ob3Jpem9udGFsLXZvbHVtZS1jdXJyZW50IHtcblx0Ym9yZGVyLXJhZGl1czogMDtcbn1cblxuLmhlbnRyeSAubWVqcy1vdmVybGF5LWxvYWRpbmcge1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLmhlbnRyeSAubWVqcy1vdmVybGF5LWJ1dHRvbiB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cdGJvcmRlci1yYWRpdXM6IDJweDtcblx0Ym94LXNoYWRvdzogMXB4IDFweCAxcHggcmdiYSgwLDAsMCwuOCk7XG5cdGNvbG9yOiAjMDAwO1xuXHRoZWlnaHQ6IDM2cHg7XG5cdG1hcmdpbi1sZWZ0OiAtMjRweDtcblx0d2lkdGg6IDQ4cHg7XG59XG5cbi5oZW50cnkgLm1lanMtb3ZlcmxheS1idXR0b246YmVmb3JlIHtcblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdGNvbnRlbnQ6ICdcXGY0NTInO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGZvbnQ6IG5vcm1hbCAzMnB4LzEuMTI1IEdlbmVyaWNvbnM7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAxcHg7XG5cdGxlZnQ6IDEwcHg7XG59XG5cbi5oZW50cnkgLm1lanMtY29udHJvbHMgLm1lanMtYnV0dG9uIGJ1dHRvbjpmb2N1cyB7XG5cdG91dGxpbmU6IG5vbmU7XG59XG5cbi5oZW50cnkgLm1lanMtY29udHJvbHMgLm1lanMtYnV0dG9uIGJ1dHRvbiB7XG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRjb2xvcjogI2ZmZjtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRmb250OiBub3JtYWwgMTZweC8xIEdlbmVyaWNvbnM7XG59XG5cbi5oZW50cnkgLm1lanMtcGxheXBhdXNlLWJ1dHRvbi5tZWpzLXBsYXkgYnV0dG9uOmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGY0NTInO1xufVxuXG4uaGVudHJ5IC5tZWpzLXBsYXlwYXVzZS1idXR0b24ubWVqcy1wYXVzZSBidXR0b246YmVmb3JlIHtcblx0Y29udGVudDogJ1xcZjQ0OCc7XG59XG5cbi5oZW50cnkgLm1lanMtdm9sdW1lLWJ1dHRvbi5tZWpzLW11dGUgYnV0dG9uOmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGYxMDknO1xuXHRmb250LXNpemU6IDIwcHg7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAtMnB4O1xuXHRsZWZ0OiAwO1xufVxuXG4uaGVudHJ5IC5tZWpzLXZvbHVtZS1idXR0b24ubWVqcy11bm11dGUgYnV0dG9uOmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGYxMDknO1xuXHRsZWZ0OiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcbn1cblxuLmhlbnRyeSAubWVqcy1mdWxsc2NyZWVuLWJ1dHRvbiBidXR0b246YmVmb3JlIHtcblx0Y29udGVudDogJ1xcZjQ3NCc7XG59XG5cbi5oZW50cnkgLm1lanMtZnVsbHNjcmVlbi1idXR0b24ubWVqcy11bmZ1bGxzY3JlZW4gYnV0dG9uOmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGY0MDYnO1xufVxuXG4uaGVudHJ5IC5tZWpzLW92ZXJsYXk6aG92ZXIgLm1lanMtb3ZlcmxheS1idXR0b24ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjMjQ4OTBkO1xuXHRjb2xvcjogI2ZmZjtcbn1cblxuLmhlbnRyeSAubWVqcy1jb250cm9scyAubWVqcy1idXR0b24gYnV0dG9uOmhvdmVyIHtcblx0Y29sb3I6ICM0MWE2MmE7XG59XG5hcnRpY2xle1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdCYucG9zdCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHQuZW50cnktdGh1bWIge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMTVweDtcblx0XHRcdGltZyB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuZW50cnktdGl0bGUge1xuXHRcdFx0Zm9udC1zaXplOiAxOHB4O1xuXHRcdH1cblx0fVx0XG5cdGhlYWRlcntcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0LmNhdC1saW5rc3tcblx0XHRcdHRvcDogLTQwcHg7XG5cdFx0XHRsZWZ0OiAyMHB4O1xuXHRcdFx0ei1pbmRleDogOTtcblx0XHRcdFxuXHRcdH1cblx0fVxuXHRoNS5lbnRyeS10aXRsZSB7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNDtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0bWFyZ2luLXRvcDogMTVweDtcblx0fVxuXHRcblx0LmVudHJ5LWV4Y2VycHQge1xuXHRcdGNvbG9yOiAkbGlnaHQtZ3JheTtcblx0XHRsaW5lLWhlaWdodDogMjRweDtcblx0fVxuXHRcblx0LmVudHJ5LXRodW1iIHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHR9XG5cdFxuXHQucG9zdC1mb3JtYXQgYXtcblx0XHRpe1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0fVxufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICBDb21tZW50IExpc3RcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5jb21tZW50c3tcbiAgICAudGhlLWNvbW1lbnR7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgLmF2YXRhcntcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgaW1ne1xuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSg1MHB4LCA1MHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNoaWxkcmVue1xuICAgICAgICAudGhlLWNvbW1lbnR7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDY1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmNoaWxkcmVue1xuXHQgICAgICAgIC50aGUtY29tbWVudHtcblx0ICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMzBweDtcblx0ICAgICAgICB9XG5cdCAgICB9XG4gICAgfVxuICAgIC5jb21tZW50LWF1dGhvcntcbiAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgc3Ryb25ne1xuICAgICAgICBcdGNvbG9yOiAjMDAwO1xuICAgICAgICBcdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5jb21tZW50LW1ldGEge1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZSAtIDI7XG4gICAgICAgIGNvbG9yOiAjYWFhO1xuICAgIH1cbiAgICBhe1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cbiAgICBvbCwgdWwge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxufVxuLnBhZ2luYXRpb24ge1xuXHRtYXJnaW4tYm90dG9tOjMwcHg7XHRcblx0c3Bhbixhe1xuXHRcdGJvcmRlcjoxcHggc29saWQgJGJvcmRlci1jb2xvcjtcblx0XHRwYWRkaW5nOjZweCAxMnB4O1xuXHR9XG5cdHNwYW4uY3VycmVudCxcblx0YTpob3ZlciB7XG5cdFx0Y29sb3I6ICR0aGVtZS1jb2xvcjtcblx0fVxufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICBTaW5nbGUgcG9ydGZvbGlvXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnBici1wb3J0Zm9saW8tbmF2aWdhdG9ye1xuXHRtYXJnaW4tYm90dG9tOjIwcHg7XG5cdC5idG57XG5cdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xuXHR9XG5cdGF7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0fVxufVxuLnNpbmdsZS1ib2R5e1xuXHQuZW50cnktdGl0bGUgaDF7XG5cdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0fVxufVxuLnBvc3Qtc2luZ2xle1xuXHRwYWRkaW5nLWJvdHRvbTogNjBweDtcblx0Ym9yZGVyLWJvdHRvbToxcHggc29saWQgJGJvcmRlci1jb2xvcjtcblx0bWFyZ2luLWJvdHRvbTogNjBweDtcblx0LnBvc3QtdGh1bWJuYWlsIHtcblx0XHQgbWFyZ2luLWJvdHRvbTogMzBweDtcblx0fVxuXHRhcnRpY2xle1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0LmVudHJ5LW1ldGFcdHtcblx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzLW1pbil7XG5cdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDQwcHg7XG5cdFx0XHR9XG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1taW4pe1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDE1cHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cblxuLnJlbGF0ZWQtcG9zdHMge1x0XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuXHRtYXJnaW4tYm90dG9tOiAzMHB4O1xuXHRtYXJnaW4tdG9wOiA1MHB4O1xuXHRwYWRkaW5nLXRvcDogMzBweDtcbn1cblxuLy9wb3N0LWFyY2hpdmVcbi5wb3N0LWFyY2hpdmUge1xuXHQucm93e1xuXHRcdCY6bGFzdC1jaGlsZHtcblx0XHRcdC5wb3N0LXNpbmdsZXtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTpub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFwgXG4gICAgcG9ydGZvbGlvXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnNpbmdsZS1wb3J0Zm9saW97XG5cdC5oZWFkZXItdGl0bGV7IFxuXHRcdC5lbnRyeS10aXRsZXtcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0fVxuXHRcdC5idG57XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdFx0Jjo6aG92ZXJ7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LnBvc3QtYXJlYXtcblx0XHQuZW50cnktdGh1bWJ7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAkdGhlbWUtbWFyZ2luO1xuXHRcdFx0aW1ne1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cbi5wb3J0Zm9saW8tbWFzb25yeS1lbnRyeXtcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcblx0Ji5ub3BhZGRpbmd7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxufSAgXG5cblxuLmloLWl0ZW0uc3F1YXJle1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAuaW5mb3tcbiAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMzMzMzMzO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICA+ICp7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICAgIGgze1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICAgICAgICBtYXJnaW46IDMwcHggMCAwIDA7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZSArIDE7XG4gICAgICAgIH1cbiAgICAgICAgcHtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGNvbG9yOiAjYmJiO1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDIwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5paC1pdGVtLnNxdWFyZS5lZmZlY3QyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICYuY29sb3JlZCB7XG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMzMzMzMzM7XG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzExMTExMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuNXMgZWFzZS1pbi1vdXQgKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCByb3RhdGUoMGRlZykgc2NhbGUoMSkgKTtcbiAgICB9XG5cbiAgICAuaW5mbyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMzMzMzMzM7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuMzVzIC4zcyBlYXNlLWluLW91dCApO1xuICAgICAgICBoMyB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVkoLTIwMHB4KSApO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuMzVzIC42cyBlYXNlLWluLW91dCApO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVkoLTIwMHB4KSApO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuMzVzIC41cyBsaW5lYXIgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICAuaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggcm90YXRlKDcyMGRlZykgc2NhbGUoMCkgKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4gICAgICAgICAgICBoMyxcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWSgwKSApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uaWgtaXRlbS5zcXVhcmV7XG4gICAgJi5lZmZlY3QzLmJvdHRvbV90b190b3Age1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDApO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVZKDEwMCUpICk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjM1cyk7XG4gICAgICAgIH1cbiAgICAgICAgLmltZ3tcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuMzVzKTtcbiAgICAgICAgfVxuICAgICAgICBhOmhvdmVyIHtcbiAgICAgICAgICAgIC5pbWcge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWSgtNTBweCkgKTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVkoMCkgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmloLWl0ZW0uc3F1YXJlLmVmZmVjdDUge1xuICAgIC5pbWcge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCAgYWxsIC4zNXMgZWFzZS1pbi1vdXQgKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSgxKSApO1xuICAgIH1cblxuICAgIC5pbmZvIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCBhbGwgLjM1cyBlYXNlLWluLW91dCApO1xuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICAuaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggc2NhbGUoMCkgKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZGVsYXkoMCwgMCk7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggc2NhbGUoMSkgcm90YXRlKDBkZWcpICk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWRlbGF5KDAuM3MsIDAuM3MpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaWgtaXRlbS5zcXVhcmUuZWZmZWN0NS5sZWZ0X3RvX3JpZ2h0IHtcbiAgICAuaW5mbyB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggc2NhbGUoMCkgcm90YXRlKC0xODBkZWcpICk7XG4gICAgfVxufVxuXG4uaWgtaXRlbS5zcXVhcmUuZWZmZWN0NiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBcbiAgICAuaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuMzVzIGVhc2UtaW4tb3V0ICk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggc2NhbGUoMSkgKTtcbiAgICB9XG5cbiAgICAuaW5mbyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuMzVzIGVhc2UtaW4tb3V0ICk7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oICBhbGwgLjM1cyBlYXNlLWluLW91dCApO1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuMzVzIC4xcyBsaW5lYXIgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICAuaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggc2NhbGUoMS4yKSApO1xuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5paC1pdGVtLnNxdWFyZS5lZmZlY3Q2LmJvdHRvbV90b190b3Age1xuICAgIC5pbmZvIHtcbiAgICAgICAgaDMge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVZKDEwMCUpICk7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWSgxMDAlKSApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYTpob3ZlciB7XG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgIGgzLFxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVZKDApICk7XG4gICAgICAgICAgICB9ICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5paC1pdGVtLnNxdWFyZS5lZmZlY3Q3IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC5pbWcge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCAgYWxsIC4zNXMgZWFzZS1pbi1vdXQgKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSgxKSApO1xuICAgIH1cblxuICAgIC5pbmZvIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCAgYWxsIC4zNXMgZWFzZS1pbi1vdXQgKTtcbiAgICAgICAgaDMge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSg0KSApO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuMzVzIC4xcyBlYXNlLWluLW91dCApO1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSg1KSApO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuMzVzIC4zcyBsaW5lYXIgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICAuaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggc2NhbGUoMS4yKSApO1xuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgIGgzLFxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSgxKSApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uaWgtaXRlbS5zcXVhcmUuZWZmZWN0OCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAuaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuMzVzIGVhc2UtaW4tb3V0ICk7XG4gICAgfVxuXG4gICAgLmluZm8ge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oICBhbGwgLjM1cyBlYXNlLWluLW91dCApO1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oICBhbGwgLjM1cyAuMXMgZWFzZS1pbi1vdXQgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuMzVzIC4xNXMgbGluZWFyICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhOmhvdmVyIHtcbiAgICAgICAgLmltZyB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgIGgzLFxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5paC1pdGVtLnNxdWFyZS5lZmZlY3Q4LnNjYWxlX3VwIHtcbiAgICAuaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSgxKSApO1xuICAgIH1cblxuICAgIC5pbmZvIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSgwKSApO1xuXG4gICAgICAgIGgzLFxuICAgICAgICBwIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggc2NhbGUoMCkgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICAuaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggc2NhbGUoNSkgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggc2NhbGUoMSkgKTtcblxuICAgICAgICAgICAgaDMsXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHNjYWxlKDEpICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5paC1pdGVtLnNxdWFyZS5lZmZlY3QxMCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAuaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuMzVzIGVhc2UtaW4tb3V0ICk7XG4gICAgfVxuXG4gICAgLmluZm8ge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oICBhbGwgLjM1cyBlYXNlLWluLW91dCApO1xuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmloLWl0ZW0uc3F1YXJlLmVmZmVjdDEwLmxlZnRfdG9fcmlnaHQge1xuICAgIC5pbWcge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVgoMCkgKTtcbiAgICB9XG5cbiAgICAuaW5mbyB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWCgtMTAwJSkgKTtcbiAgICB9XG5cbiAgICBhOmhvdmVyIHtcbiAgICAgICAgLmltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVgoMTAwJSkgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWCgwKSApO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaWgtaXRlbS5zcXVhcmUuZWZmZWN0MTIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLmltZyB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oIGFsbCAuMzVzIGVhc2UtaW4gKTtcbiAgICB9XG5cbiAgICAuaW5mbyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggYWxsIC4zNXMgZWFzZS1pbiApO1xuICAgICAgICBoMyB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCBhbGwgLjM1cyBlYXNlLWluICk7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCBhbGwgLjM1cyBlYXNlLWluICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhOmhvdmVyIHtcbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWRlbGF5KCAwLjJzLCAwLjJzICk7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWRlbGF5KCAwLjNzLCAwLjNzICk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZGVsYXkoIDAuMjVzLCAwLjI1cyApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmloLWl0ZW0uc3F1YXJlLmVmZmVjdDEyLmxlZnRfdG9fcmlnaHQge1xuICAgIC5pbmZvIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGUoLTQ2MHB4LCAtMTAwcHgpIHJvdGF0ZSgtMTgwZGVnKSApO1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWSgtMTAwcHgpICk7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWCgtMzAwcHgpIHJvdGF0ZSgtOTBkZWcpICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhOmhvdmVyIHtcbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGUoMHB4LCAwcHgpICk7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVkoMHB4KSApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVgoMHB4KSByb3RhdGUoMGRlZykgKTtcbiAgICAgICAgICAgIH0gICAgICAgICAgICBcbiAgICAgICAgfVxuICAgIH1cbn1cbiBcbi5paC1pdGVtLnNxdWFyZS5lZmZlY3QxNCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAuaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuMzVzIGVhc2UtaW4tb3V0ICk7XG4gICAgfVxuXG4gICAgLmluZm8ge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHNjYWxlKC41KSApO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCBhbGwgLjM1cyBlYXNlIC4ycyk7XG4gICAgfVxuXG4gICAgYTpob3ZlciB7XG4gICAgICAgIC5pbWcge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSguNSkgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSgxKSApO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaWgtaXRlbS5zcXVhcmUuZWZmZWN0MTQubGVmdF90b19yaWdodCB7XG4gICAgLmltZyB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWCgwKSByb3RhdGUoMCkgKTtcbiAgICB9XG5cbiAgICBhOmhvdmVyIHtcbiAgICAgICAgLmltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVgoMTAwJSkgcm90YXRlKDE4MGRlZykgKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmloLWl0ZW0uc3F1YXJlLmVmZmVjdDE1IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIEBpbmNsdWRlIHBlcnNwZWN0aXZlKDkwMHB4KTtcbiAgICAuaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuNHMgZWFzZS1pbi1vdXQgKTtcbiAgICB9XG5cbiAgICAuaW5mbyB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oICBhbGwgLjM1cyBlYXNlLWluLW91dCAuM3MpO1xuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICAuaW1nIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmloLWl0ZW0uc3F1YXJlLmVmZmVjdDE1LmxlZnRfdG9fcmlnaHQge1xuICAgIC5pbWcge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHJvdGF0ZVkoMCkgKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtLW9yaWdpbiggMTAwJSwgNTAlICk7XG4gICAgfVxuXG4gICAgLmluZm8ge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHJvdGF0ZVkoOTBkZWcpICk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybS1vcmlnaW4oIDAlLCA1MCUgKTtcbiAgICB9XG5cbiAgICBhOmhvdmVyIHtcbiAgICAgICAgLmltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHJvdGF0ZVkoLTkwZGVnKSApO1xuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCByb3RhdGVZKDApICk7XG4gICAgICAgIH1cbiAgICB9XG59XG4uaWgtaXRlbS5zcXVhcmUuZWZmZWN0MTZ7XG4gICAgLmluZm97XG4gICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG4gICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zNXMpO1xuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCl7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTBweCFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpe1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIGgze1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2shaW1wb3J0YW50O1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjM1cyk7XG4gICAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZGVzY3JpcHRpb257XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5jcmVhdGVkLCAuem9vbXtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrIWltcG9ydGFudDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG4gICAgICAgIC56b29tIGl7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuaW5mby1pbm5lcntcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTYwcHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlLCBhdXRvKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBoM3tcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlcntcbiAgICAgICAgLmluZm97XG4gICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICB9ICAgICBcbiAgICB9XG59XG5cbi5paC1pdGVtLnNxdWFyZS5lZmZlY3QxNntcbiAgICAuaW5mb3tcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgICAgICAgYmFja2dyb3VuZDogJHRoZW1lLWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjM1cyk7XG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KXtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4IWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCl7XG4gICAgICAgICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgaDN7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgY29sb3I6ICRibGFjayFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuMzVzKTtcbiAgICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5kZXNjcmlwdGlvbntcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLmNyZWF0ZWQsIC56b29te1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2shaW1wb3J0YW50O1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cbiAgICAgICAgLnpvb20gaXtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkd2hpdGUhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5pbmZvLWlubmVye1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNjBweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDEwMCUsIGF1dG8pO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGgze1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmOmhvdmVye1xuICAgICAgICAuaW5mb3tcbiAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgIH0gICAgIFxuICAgIH1cbn1cblxuLy9qcXpvb21cblxuLnpvb21MZW5zIHtcbiAgICB3aWR0aDogNTBweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodCA6IDUwcHggIWltcG9ydGFudDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiK1wiO1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0OHB4O1xuICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cbn0iLCIuYmctc3R5bGUtdjR7XG4gICAgYmFja2dyb3VuZDogdXJsKCcjeyRpbWFnZS10aGVtZS1za2lufWJnLXN0eWxlLXY0LmpwZycpIG5vLXJlcGVhdCBjZW50ZXIgdG9wICRub2NvbG9yO1xufVxuLmJnLXN0eWxlLXYze1xuICAgIGJhY2tncm91bmQ6IHVybCgnI3skaW1hZ2UtdGhlbWUtc2tpbn1iZy1zdHlsZS12My5qcGcnKSBuby1yZXBlYXQgY2VudGVyIHRvcCAkbm9jb2xvcjtcbn0gXG4uYmctc3R5bGUtdjJ7XG4gICAgYmFja2dyb3VuZDogdXJsKCcjeyRpbWFnZS10aGVtZS1za2lufWJnLXN0eWxlLXYyLmpwZycpIG5vLXJlcGVhdCByaWdodCBib3R0b20gI2VmZWZlZjtcbn0gXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgLmJnLXN0eWxlLXYxe1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGltYWdlLXRoZW1lLXNraW59Ymctc3R5bGUtdjEucG5nJykgO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgdG9wO1xuICAgIH0gXG59XG4uYmctc3VjY2Vzc3tcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtc3VjY2Vzcztcbn0gXG4uYmctd2FybmluZ3tcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtd2FybmluZztcbn0gXG4uYmctZGFuZ2Vye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1kYW5nZXI7XG59IFxuLmJnLWluZm8ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1pbmZvO1xufVxuLmJnLXByaW1hcnl7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG59XG5cbi8qU3BhY2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKk1hcmdpbiBUb3AqL1xuLnNwYWNlLXRvcC01ICB7bWFyZ2luLXRvcDogNXB4ICFpbXBvcnRhbnQ7fVxuLnNwYWNlLXRvcC0xMCB7bWFyZ2luLXRvcDogMTBweCAhaW1wb3J0YW50O30gXG4uc3BhY2UtdG9wLTE1IHttYXJnaW4tdG9wOiAxNXB4ICFpbXBvcnRhbnQ7fVxuLnNwYWNlLXRvcC0yMCB7bWFyZ2luLXRvcDogMjBweCAhaW1wb3J0YW50O31cbi5zcGFjZS10b3AtMjUge21hcmdpbi10b3A6IDI1cHggIWltcG9ydGFudDt9XG4uc3BhY2UtdG9wLTMwIHttYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7fVxuLnNwYWNlLXRvcC0zNSB7bWFyZ2luLXRvcDogMzVweCAhaW1wb3J0YW50O31cbi5zcGFjZS10b3AtNDAge21hcmdpbi10b3A6IDQwcHggIWltcG9ydGFudDt9XG4uc3BhY2UtdG9wLTQ1IHttYXJnaW4tdG9wOiA0NXB4ICFpbXBvcnRhbnQ7fVxuLnNwYWNlLXRvcC01MCB7bWFyZ2luLXRvcDogNTBweCAhaW1wb3J0YW50O31cblxuLypNYXJnaW4gQm90dG9tKi9cbi5zcGFjZS01ICB7bWFyZ2luLWJvdHRvbTogNXB4ICFpbXBvcnRhbnQ7fVxuLnNwYWNlLTEwIHttYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7fSBcbi5zcGFjZS0xNSB7bWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50O31cbi5zcGFjZS0yMCB7bWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50O31cbi5zcGFjZS0yNSB7bWFyZ2luLWJvdHRvbTogMjVweCAhaW1wb3J0YW50O31cbi5zcGFjZS0zMCB7bWFyZ2luLWJvdHRvbTogMzBweCAhaW1wb3J0YW50O31cbi5zcGFjZS0zNSB7bWFyZ2luLWJvdHRvbTogMzVweCAhaW1wb3J0YW50O31cbi5zcGFjZS00MCB7bWFyZ2luLWJvdHRvbTogNDBweCAhaW1wb3J0YW50O31cbi5zcGFjZS00NSB7bWFyZ2luLWJvdHRvbTogNDVweCAhaW1wb3J0YW50O31cbi5zcGFjZS01MCB7bWFyZ2luLWJvdHRvbTogNTBweCAhaW1wb3J0YW50O31cbi5uby1tYXJnaW4tYm90dG9te1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4vKlBhZGRpbmcgQXJvdW5kIHRoZSBCbG9jayovXG4uc3BhY2UtcGFkZGluZy0we1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cbi5zcGFjZS1wYWRkaW5nLTEwIHtcbiAgICBwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG4uc3BhY2UtcGFkZGluZy0yMCB7XG4gICAgcGFkZGluZzogMjBweCAhaW1wb3J0YW50O1xufVxuLnNwYWNlLXBhZGRpbmctMzAge1xuICAgIHBhZGRpbmc6IDMwcHggIWltcG9ydGFudDtcbn1cbi5zcGFjZS1wYWRkaW5nLTQwIHtcbiAgICBwYWRkaW5nOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG4uc3BhY2UtcGFkZGluZy01MCB7XG4gICAgcGFkZGluZzogNTBweCAhaW1wb3J0YW50O1xufVxuLnBhZGRpbmctbGVmdC01MHtcbiAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG59XG4uc3BhY2UtcGFkZGluZy10Yi0xMDB7XG4gICAgcGFkZGluZy1ib3R0b206MTAwcHg7XG4gICAgcGFkZGluZy10b3A6MTAwcHg7XG59XG4uc3BhY2UtcGFkZGluZy1ib3R0b20tNDAge3BhZGRpbmctYm90dG9tOiA0MHB4ICFpbXBvcnRhbnQ7fVxuLmhhc2JvcmRlcntcbiAgICBib3JkZXI6MXB4IHNvbGlkICRib3JkZXItY29sb3I7XG59XG4uYmctbm9uZXtcbiAgICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4vKiBcbiAqICAgICAgQ29yZSBPd2wgQ2Fyb3VzZWwgQ1NTIEZpbGVcbiAqICAgICAgdjEuMy4zXG4gKi9cbiAubm8tc3BhY2Utcm93IHtcbiAgICAgICAgLnJvd3tcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbn1cbi5uby1zcGFjZS1yb3cgW2NsYXNzXj1cImNvbC1cIl0sXG4ubm8tc3BhY2Utcm93IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgICAgcGFkZGluZzogMDtcbn1cbi5uby1wYWRkaW5ne1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6MCAhaW1wb3J0YW50O1xufVxuLmJnLXdoaXRle1xuICAgICAgICBiYWNrZ3JvdW5kOiNGRkY7XG59XG5cblxuLmJ0bi1vdXRsaW5lLWxpZ2h0e1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudC1vdXRsaW5lKCAjRkZGRkZGLCB0cmFuc3BhcmVudCwgICNGRkZGRkYsICNGRkZGRkYsICRlbGVtZW50LWNvbG9yLXByaW1hcnksICRlbGVtZW50LWNvbG9yLXByaW1hcnkpO1xufSBcblxuLmJ0bi1vdXRsaW5lLWRhcmt7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50LW91dGxpbmUoICMwMDAsIHRyYW5zcGFyZW50LCAgIzAwMCwgJHdoaXRlLCAkZWxlbWVudC1jb2xvci1wcmltYXJ5LCAkZWxlbWVudC1jb2xvci1wcmltYXJ5KTtcbn0gXG5cbi5idG4taW52ZXJzZS1saWdodHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQtb3V0bGluZSggJGJyYW5kLXByaW1hcnksICNGRkZGRkYsICNGRkYsICNGRkZGRkYsIHRyYW5zcGFyZW50LCAgI0ZGRkZGRiApO1xufSBcblxuLmJ0bi1vdXRsaW5le1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lKGRlZmF1bHQsICMwMDAsICNGRkZGRkYgKTtcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZShwcmltYXJ5LCAkYnJhbmQtcHJpbWFyeSwgI0ZGRkZGRiApO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lKHN1Y2Nlc3MsICRlbGVtZW50LWNvbG9yLXByaW1hcnksICNGRkZGRkYgKTtcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZShpbmZvLCAkYnJhbmQtaW5mbywgI0ZGRkZGRiApO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lKGRhbmdlciwgJGJyYW5kLWRhbmdlciwgI0ZGRkZGRiApO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lKHdhcm5pbmcsICRicmFuZC13YXJuaW5nLCAjRkZGRkZGICk7XG59XG4uYnRuLWludmVyc2V7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWludmVyc2UocHJpbWFyeSwgJGJyYW5kLXByaW1hcnksICNGRkZGRkYgKTtcbiAgICBAaW5jbHVkZSBidXR0b24taW52ZXJzZShzdWNjZXNzLCAkZWxlbWVudC1jb2xvci1wcmltYXJ5LCAjRkZGRkZGICk7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWludmVyc2UoaW5mbywgJGJyYW5kLWluZm8sICNGRkZGRkYgKTtcbiAgICBAaW5jbHVkZSBidXR0b24taW52ZXJzZShkYW5nZXIsICRicmFuZC1kYW5nZXIsICNGRkZGRkYgKTtcbiAgICBAaW5jbHVkZSBidXR0b24taW52ZXJzZSh3YXJuaW5nLCAkYnJhbmQtd2FybmluZywgI0ZGRkZGRiApO1xufVxuLmJ0bi0zZHsgICAgXG4gICAgYm9yZGVyOiAwIG5vbmU7XG4gICAgYm94LXNoYWRvdzogMCAtNXB4IDAgMCByZ2JhKDAsIDAsIDAsIDAuMTUpIGluc2V0O1xufVxuXG4vKiBjbGVhcmZpeCAqL1xuLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXI6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIi5cIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICBoZWlnaHQ6IDA7XG59XG4vKiBkaXNwbGF5IG5vbmUgdW50aWwgaW5pdCAqL1xuLm93bC1jYXJvdXNlbHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtd3JhcHBlcntcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtd3JhcHBlci1vdXRlcntcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBkaXJlY3Rpb246IGx0ciAhaW1wb3J0YW50O1xufVxuLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXItb3V0ZXIuYXV0b0hlaWdodHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAtbXMtdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAtby10cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIHRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDtcbn1cbiAgICAgICAgXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbXtcbiAgICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgfVxufVxuLm93bC1jb250cm9scyAub3dsLXBhZ2UsXG4ub3dsLWNvbnRyb2xzIC5vd2wtYnV0dG9ucyBkaXZ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5vd2wtY29udHJvbHMgLm93bC1idXR0b25zIGRpdiB7XG5wb3NpdGlvbjogYWJzb2x1dGU7XG59XG4gXG4ub3dsLWNvbnRyb2xzIC5vd2wtYnV0dG9ucyAub3dsLXByZXZ7XG4gICAgbGVmdDogMTBweDtcbiAgICB0b3A6IDUwJTsgXG59XG5cbi5vd2wtY29udHJvbHMgLm93bC1idXR0b25zIC5vd2wtbmV4dHtcbiAgICByaWdodDogMTBweDtcbiAgICB0b3A6IDUwJTtcbn1cbi8qIC5vd2wtY29udHJvbHMge1xuICAgICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgICAgICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XG59XG4gKi9cbi8qIG1vdXNlIGdyYWIgaWNvbiAqL1xuLmdyYWJiaW5nIHsgXG4gICAgXG59XG5cbi8qIGZpeCAqL1xuLm93bC1jYXJvdXNlbCAgLm93bC13cmFwcGVyLFxuLm93bC1jYXJvdXNlbCAgLm93bC1pdGVte1xuICAgICAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiAgICBoaWRkZW47XG4gICAgICAgIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiAgICAgaGlkZGVuO1xufVxuXG4vKiBPcGVuQ2FydCBDb2RlICovXG4ub3dsLWNhcm91c2VsIHtcbiAgICAgICAgbWFyZ2luOiAwIDBweDsgXG59XG4ub3dsLWNhcm91c2VsIC5vd2wtYnV0dG9ucyBkaXYge1xuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgY29sb3I6IHJnYmEoMCwwLDAsMC44KTtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDFweCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LDAuMyk7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcbn1cbi5vd2wtY2Fyb3VzZWw6aG92ZXIgLm93bC1idXR0b25zIGRpdiB7XG4gICAgICAgIG9wYWNpdHk6IDAuNztcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1idXR0b25zIGRpdiBpIHtcbiAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICBtYXJnaW46IC0yMHB4IDAgMDtcbn1cblxuLm93bC1jYXJvdXNlbCAub3dsLWJ1dHRvbnMgLm93bC1wcmV2IHtcbiAgICAgICAgbGVmdDogLTUwcHg7ICBcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1idXR0b25zIC5vd2wtbmV4dCB7XG4gICAgICAgIHJpZ2h0OiAtNTBweDsgXG59XG4ub3dsLWNhcm91c2VsOmhvdmVyIC5vd2wtYnV0dG9ucyAub3dsLXByZXYge1xuICAgICAgICBsZWZ0OiAxMHB4OyBcbn1cbi5vd2wtY2Fyb3VzZWw6aG92ZXIgLm93bC1idXR0b25zIC5vd2wtbmV4dCB7XG4gICAgICAgIHJpZ2h0OiAxMHB4OyBcbn1cbi5vd2wtcGFnaW5hdGlvbiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuLm93bC1jb250cm9scyAub3dsLXBhZ2Uge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMHB4IDZweDtcbn1cbi5vd2wtY29udHJvbHMgLm93bC1wYWdlIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICBAaW5jbHVkZSBzaXplKDhweCw4cHgpO1xuICAgICAgICBiYWNrZ3JvdW5kOiR0aGVtZS1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbi8qICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDNweCByZ2JhKDAsMCwwLDAuMyk7ICAgICAgICovXG59XG4ub3dsLWNvbnRyb2xzIC5vd2wtcGFnZS5hY3RpdmV7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogNHB4O1xufVxuLm93bC1jb250cm9scyAub3dsLXBhZ2UuYWN0aXZlIHNwYW4ge1xuICAgICAgICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjoycHggc29saWQgJHRoZW1lLWNvbG9yO1xuICAgIEBpbmNsdWRlIHNpemUoMTRweCwxNHB4KTtcbn1cblxuLm93bC1jYXJvdXNlbC1wbGF5e1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgICAgICAgLm93bC1pdGVte1xuICAgICAgICAgICAgICAgICYgPiBkaXZ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCAucHJvZHVjdC13cmFwcGVye1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOm5vbmVcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgIH1cbn1cbi5vd2wtY2Fyb3VzZWwtcGxheSB7XG4gICAgICAgIC5jYXJvdXNlbC1jb250cm9se1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDIwO1xuICAgICAgICAgICAgICAgIHRvcDogNDAlO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLmNhcm91c2VsLWNvbnRyb2x7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggYWxsIDAuMzVzIGVhc2UgMHMpO1xuICAgICAgICAgICAgJi5sZWZ0e1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnJpZ2h0e1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgfVxufVxuXG4uY2Fyb3VzZWwtbWQge1xuICAgICAgICBAaW5jbHVkZSBzaXplKCRiby1jYXJvdXNlbC1tZC13aWR0aCwgJGJvLWNhcm91c2VsLW1kLWhlaWdodCk7XG4gICAgICAgICBsaW5lLWhlaWdodDogJGJvLWNhcm91c2VsLW1kLWhlaWdodDtcbn1cbi5jYXJvdXNlbC1zbSB7XG4gICAgICAgIEBpbmNsdWRlIHNpemUoJGJvLWNhcm91c2VsLXNtLXdpZHRoLCAkYm8tY2Fyb3VzZWwtc20taGVpZ2h0KTtcbiAgICAgICAgIGxpbmUtaGVpZ2h0OiAkYm8tY2Fyb3VzZWwtc20taGVpZ2h0O1xuICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xufVxuLmNhcm91c2VsLXhzIHtcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSgkYm8tY2Fyb3VzZWwteHMtd2lkdGgsICRiby1jYXJvdXNlbC14cy1oZWlnaHQpO1xuICAgICAgICAgbGluZS1oZWlnaHQ6ICRiby1jYXJvdXNlbC14cy1oZWlnaHQ7XG4gICAgICAgICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5jYXJvdXNlbC1jb250cm9scy12MyB7XG4gICAgICAgIC5jYXJvdXNlbC1jb250cm9sIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDMwcHggJGJvLWNhcm91c2VsLWNvbnRyb2xzLXYzLWJnIGluc2V0O1xuICAgICAgICAgICAgY29sb3I6ICRiby1jYXJvdXNlbC1jb250cm9scy12My1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCBhbGwgMC4zNXMgZWFzZSAwcyk7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICYubGVmdHtcbiAgICAgICAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgICB9XG4gICAgICAgICYucmlnaHR7XG4gICAgICAgICAgICByaWdodDogLTIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMzBweCAkYm8tY2Fyb3VzZWwtY29udHJvbHMtdjMtaG92ZXItYmcgaW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJvLWNhcm91c2VsLWNvbnRyb2xzLXYzLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJvLWNhcm91c2VsLWNvbnRyb2xzLXYzLWhvdmVyLWJnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG59XG5cbi5jYXJvdXNlbC1jb250cm9scy12NCB7XG4gICAgQGluY2x1ZGUgc2l6ZSg2MHB4LCAzMHB4KTtcbiAgICByaWdodDogMTBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtNDZweDtcbiAgICAuY2Fyb3VzZWwtY29udHJvbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgei1pbmRleDogOTk7XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzRiNGI0YjtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAmLmxlZnQge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgICYucmlnaHQge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICB9XG59XG4vKkZvbnQgV2VpZ2h0Ki9cbi5md2VpZ2h0LTEwMCB7Zm9udC13ZWlnaHQ6IDEwMCAhaW1wb3J0YW50O31cbi5md2VpZ2h0LTIwMCB7Zm9udC13ZWlnaHQ6IDIwMCAhaW1wb3J0YW50O31cbi5md2VpZ2h0LTMwMCB7Zm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50O31cbi5md2VpZ2h0LTQwMCB7Zm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O31cbi5md2VpZ2h0LTUwMCB7Zm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O31cbi5md2VpZ2h0LTYwMCB7Zm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O31cbi5md2VpZ2h0LTcwMCB7Zm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O31cbi5md2VpZ2h0LTgwMCB7Zm9udC13ZWlnaHQ6IDgwMCAhaW1wb3J0YW50O31cbi50ZXh0LWJpZy0xe1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbn1cbi50ZXh0LWJpZy0ye1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbn1cbi50ZXh0LWJpZy0ze1xuICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTNweDtcbn1cbi50ZXh0LWJpZy00e1xuICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTNweDtcbn1cbi50ZXh0LXB1cnBsZSB7XG4gICAgICAgIGNvbG9yOiAjNmM1OGJkICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXJlZCB7XG4gICAgICAgIGNvbG9yOiAjYzMyMzIyICFpbXBvcnRhbnQ7XG59XG4udGV4dC1yZWQtMXtcbiAgY29sb3I6ICNmZjAwMDAhaW1wb3J0YW50O1xufVxuLnRleHQtb3JhbmdlIHtcbiAgICAgICAgY29sb3I6ICNmNjYwMDAgIWltcG9ydGFudDtcbn1cblxuLnRleHQteWVsbG93IHtcbiAgICAgICAgY29sb3I6ICNlMmQ5NTEgIWltcG9ydGFudDtcbn1cbi50ZXh0LWJsYWNrIHtcbiAgY29sb3I6IzAwMCFpbXBvcnRhbnQ7XG59XG4udGV4dC13aGl0ZSwgLnRleHQtbGlnaHR7XG4gICAgICAgIGNvbG9yOiNGRkZGRkYhaW1wb3J0YW50O1xufVxuLnRleHQtZGFya2VyIHtcbiAgICAgICAgY29sb3I6IzMzMyFpbXBvcnRhbnQ7XG59XG4udGV4dC1icm93biB7XG4gICAgY29sb3I6I2NjYyFpbXBvcnRhbnQ7XG59XG4gLnRleHQtdXBwZXJjYXNle1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gfVxuIFxuLypSYWRpdXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ucmFkaXVzLTAge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5yYWRpdXMteCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4ucmFkaXVzLTF4IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweCAhaW1wb3J0YW50O1xufVxuXG4ucmFkaXVzLTJ4IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweCAhaW1wb3J0YW50O1xufVxuXG4ucmFkaXVzLTN4IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweCAhaW1wb3J0YW50O1xufVxuXG4ucmFkaXVzLTR4IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNDBweCAhaW1wb3J0YW50O1xufVxuXG4ucmFkaXVzLTV4IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5yYWRpdXMtNngge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHggIWltcG9ydGFudDtcbn1cbi8vc3R5bGUgYm9kZXJcbi5saXN0LWJvcmRlciB7XG4gICAgbGkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAgICAgICBcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4ubGlzdC1jaXJjbGUge1xuICAgIGxpe1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDZweCwgNnB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNnB4KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgIHRvcDogOHB4O1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIH1cbiAgICB9XG59XG4vKipcbiAqIE1lbnVcbiAqL1xuIHVsLm1lbnUgeyAgICAgIFxuICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgIG1hcmdpbjowO1xuICAgICAgICBsaXtcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICB9ICAgICAgICAgICAgICAgXG4gfVxuXG4vKioqKi9cblxuLnRlc3RpbW9uaWFsc3tcbiAgICAudGVzdGltb25pYWxzLWF2YXRhcntcbiAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgICAgICAgIFxuICAgIH1cbiAgICAudGVzdGltb25pYWxzLXF1b3RlIHtcbiAgICAgICAgcGFkZGluZzogMTBweCAyNXB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgLnRlc3RpbW9uaWFscy1ib2R5e1xuICAgICAgICAucmF0aW5ne1xuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMDBweCwgMTZweCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgLnJhdGluZ181IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skaW1hZ2UtdGhlbWUtcGF0aCB9c3RhcjUucG5nJyk7XG4gICAgICAgIH1cbiAgICAgICAgLnJhdGluZ180IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skaW1hZ2UtdGhlbWUtcGF0aCB9c3RhcjQucG5nJyk7XG4gICAgICAgIH1cbiAgICAgICAgLnJhdGluZ18zIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skaW1hZ2UtdGhlbWUtcGF0aCB9c3RhcjMucG5nJyk7XG4gICAgICAgIH1cbiAgICAgICAgLnJhdGluZ18yIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skaW1hZ2UtdGhlbWUtcGF0aCB9c3RhcjIucG5nJyk7XG4gICAgICAgIH1cbiAgICAgICAgLnJhdGluZ18xIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skaW1hZ2UtdGhlbWUtcGF0aCB9c3RhcjEucG5nJyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGVzdGltb25pYWxzLWxlZnR7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgICAgLnRlc3RpbW9uaWFscy1hdmF0YXJ7IFxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IFxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgYm9yZGVyOiA1cHggc29saWQgI2ViZWJlYjsgXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLnRlc3RpbW9uaWFscy1ib2R5e1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDE1cHggcmdiYSgjMDAwLCAwLjEpKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMTBweCk7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDUwcHggNDBweCA0MHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogLTE4cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogNDBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJyN7JGltYWdlLXRoZW1lLXBhdGggfXF1b3RlLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgdG9wICRub2NvbG9yO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1NXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTVweDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRlc3RpbW9uaWFscy1xdW90ZXtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzNXB4IDAgMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5yYXRpbmd7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5wcm9maWxlLWdyb3Vwe1xuICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgIC5uYW1le1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTVweCAwIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnRlc3RpbW9uaWFscy12MiB7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIC53aWRnZXQtY29udGVudHtcbiAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5vd2wtaXRlbXtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxcHgsIDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGVzdGltb25pYWxzLWJvZHl7XG4gICAgICAgICAgICBwYWRkaW5nOiA1MHB4IDEwcHggMTBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnI3skaW1hZ2UtdGhlbWUtcGF0aCB9cXVvdGUucG5nJykgbm8tcmVwZWF0IGNlbnRlciB0b3AgJG5vY29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgLnRlc3RpbW9uaWFscy1hdmF0YXJ7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBib3JkZXI6IDVweCBzb2xpZCAjZWJlYmViOyAgICAgXG4gICAgICAgIH1cbiAgICAgICAgLnRlc3RpbW9uaWFscy1wcm9maWxle1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgLm5hbWV7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOjVweDsgXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjE0cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIC5vd2wtY29udHJvbHMgLm93bC1wYWdle1xuICAgICAgICAgICAgc3BhbntcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICAgIH0gXG4gICAgICAgICAgICAmLmFjdGl2ZXsgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgc3BhbntcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi50ZXN0aW1vbmlhbHMtdjR7XG4gICAgICAgIC50ZXN0aW1vbmlhbHMtYm9keXtcbiAgICAgICAgICAgIG1hcmdpbjoyMHB4IDI1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLnRlc3RpbW9uaWFscy1hdmF0YXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICAgICAgbGVmdDogLTMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnRlc3RpbW9uaWFscy1kZXNjcmlwdGlvbiwgLnRlc3RpbW9uaWFscy1tZXRhe1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi50ZXN0aW1vbmlhbHMtdjV7XG4gICAgICAgIC50ZXN0aW1vbmlhbHMtYm9keXtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTUwcHg7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnI3skaW1hZ2UtdGhlbWUtcGF0aCB9aWNvbl90ZXN0LnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgdG9wIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDg1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudGVzdGltb25pYWxzLWF2YXRhcntcbiAgICAgICAgICAgICAgICBib3JkZXI6IDVweCBzb2xpZCAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogIDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudGVzdGltb25pYWxzLWRlc2NyaXB0aW9ue1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzhweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zZWNvbmQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudGVzdGltb25pYWxzLW5hbWV7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4vKiogU09DSUFMIElDT05TICoqKi9cbi5wYnItc29jaWFsLXNoYXJle1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4uYm8tc29jaWFsLWljb25zeyAgICBcbiAgICBbY2xhc3NePVwiYm8tc29jaWFsLVwiXXsgICAgICAgICAgICAgXG4gICAgICAgIGNvbG9yOiNGRkZGRkY7ICAgICAgICAgICAgICAgXG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOyAgICAgICAgICAgICAgICBcbiAgICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyAgICAgICBcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7ICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIHNxdWFyZSgzMHB4KTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dCAwcztcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IzAwMDAwMDtcbiAgICAgICAgICAgIGNvbG9yOiNGRkZGRkY7XG4gICAgICAgIH1cbiAgICB9IFxuICAgIC5iby1zb2NpYWwtd2hpdGV7XG4gICAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGJvcmRlci1jb2xvciwgMzAlKTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgZGFya2VuKCRib3JkZXItY29sb3IsIDMwJSk7XG4gICAgfSAgIFxuICAgIC5iby1zb2NpYWwtb3V0bGluZXtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuICAgIH0gICBcbiAgICAuYm8tc29jaWFsLW91dGxpbmUtbGlnaHR7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0ZGRkZGRjtcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzAwMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmOmZpcnN0LWNoaWxke1xuICAgICAgICBbY2xhc3MqPVwiYm8tc29jaWFsLVwiXXtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxke1xuICAgICAgICBbY2xhc3MqPVwiYm8tc29jaWFsLVwiXXtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICBcbn1cbi5iby1zaWNvbG9yeyBcbiAgICAgICAgXG4gICAgLmJvLXNvY2lhbC10d2l0dGVye2JhY2tncm91bmQ6ICMwMGJkZWM7fSAuYm8tc29jaWFsLXR3aXR0ZXI6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1kcmliYmJsZXtiYWNrZ3JvdW5kOiAjZWY1YjkyO30gLmJvLXNvY2lhbC1kcmliYmJsZTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWZhY2Vib29re2JhY2tncm91bmQ6ICMzYjU5OTg7fSAuYm8tc29jaWFsLWZhY2Vib29rOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtZHVja2R1Y2tnb3tiYWNrZ3JvdW5kOiAjZGUzMTAwO30gLmJvLXNvY2lhbC1kdWNrZHVja2dvOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtYWlte2JhY2tncm91bmQ6ICMxNTg3OTk7fSAuYm8tc29jaWFsLWFpbTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWRlbGljaW91c3tiYWNrZ3JvdW5kOiAjMTgzODY0O30gLmJvLXNvY2lhbC1kZWxpY2lvdXM6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1wYXlwYWx7YmFja2dyb3VuZDogIzMyNjg5YTt9IC5iby1zb2NpYWwtcGF5cGFsOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtYW5kcm9pZHtiYWNrZ3JvdW5kOiAjOGFiNzMzO30gLmJvLXNvY2lhbC1hbmRyb2lkOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtZ3BsdXN7YmFja2dyb3VuZDogI2Q5NGEzOTt9IC5iby1zb2NpYWwtZ3BsdXM6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1sYW55cmR7YmFja2dyb3VuZDogIzM4NzliYTt9IC5iby1zb2NpYWwtbGFueXJkOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtc3R1bWJsZXVwb257YmFja2dyb3VuZDogI2VhNGIyNDt9IC5iby1zb2NpYWwtc3R1bWJsZXVwb246aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1maXZlaHVuZHJlZHB4e2JhY2tncm91bmQ6ICMwMGE2ZTE7fSAuYm8tc29jaWFsLWZpdmVodW5kcmVkcHg6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1waW50ZXJlc3R7YmFja2dyb3VuZDogI2I4MjQyYTt9IC5iby1zb2NpYWwtcGludGVyZXN0OmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtYml0Y29pbntiYWNrZ3JvdW5kOiAjZjc5MzFhO30gLmJvLXNvY2lhbC1iaXRjb2luOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtdzNje2JhY2tncm91bmQ6ICMwMDVhOWM7fSAuYm8tc29jaWFsLXczYzpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWZvdXJzcXVhcmV7YmFja2dyb3VuZDogIzNiYjdlODt9IC5iby1zb2NpYWwtZm91cnNxdWFyZTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWh0bWw1e2JhY2tncm91bmQ6ICNlNDRlMjY7fSAuYm8tc29jaWFsLWh0bWw1OmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtaWV7YmFja2dyb3VuZDogIzAwY2NmZjt9IC5iby1zb2NpYWwtaWU6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1ncm9vdmVzaGFya3tiYWNrZ3JvdW5kOiAjZjY2ZjAwO30gLmJvLXNvY2lhbC1ncm9vdmVzaGFyazpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLW5pbmV0eW5pbmVkZXNpZ25ze2JhY2tncm91bmQ6ICNmZjU1MDE7fSAuYm8tc29jaWFsLW5pbmV0eW5pbmVkZXNpZ25zOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtZm9ycnN0e2JhY2tncm91bmQ6ICMyMjNmMTc7fSAuYm8tc29jaWFsLWZvcnJzdDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXNwb3RpZnl7YmFja2dyb3VuZDogIzhmYmQwNTt9IC5iby1zb2NpYWwtc3BvdGlmeTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXJlZGRpdHtiYWNrZ3JvdW5kOiAjZmY0NTAwO30gLmJvLXNvY2lhbC1yZWRkaXQ6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1nb3dhbGxhe2JhY2tncm91bmQ6ICNmNjkxMWQ7fSAuYm8tc29jaWFsLWdvd2FsbGE6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1hcHBsZXtiYWNrZ3JvdW5kOiAjNWY1ZjVmO30gLmJvLXNvY2lhbC1hcHBsZTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWJsb2dnZXJ7YmFja2dyb3VuZDogI2ZiOTI0MTt9IC5iby1zb2NpYWwtYmxvZ2dlcjpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWNje2JhY2tncm91bmQ6ICM1ZTdjMDA7fSAuYm8tc29jaWFsLWNjOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtZXZlcm5vdGV7YmFja2dyb3VuZDogIzYxYjIzOTt9IC5iby1zb2NpYWwtZXZlcm5vdGU6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1mbGlja3J7YmFja2dyb3VuZDogI2ZmMDA4NDt9IC5iby1zb2NpYWwtZmxpY2tyOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtZ29vZ2xle2JhY2tncm91bmQ6ICNkOTRhMzk7fSAuYm8tc29jaWFsLWdvb2dsZTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXZpYWRlb3tiYWNrZ3JvdW5kOiAjZjVhNDMzO30gLmJvLXNvY2lhbC12aWFkZW86aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1pbnN0YXBhcGVye2JhY2tncm91bmQ6ICNlYWVjMDg7fSAuYm8tc29jaWFsLWluc3RhcGFwZXI6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1rbG91dHtiYWNrZ3JvdW5kOiAjZTM0NjAwO30gLmJvLXNvY2lhbC1rbG91dDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWxpbmtlZGlue2JhY2tncm91bmQ6ICMxYjkyYmQ7fSAuYm8tc29jaWFsLWxpbmtlZGluOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtbWVldHVwe2JhY2tncm91bmQ6ICNlNTE5Mzg7fSAuYm8tc29jaWFsLW1lZXR1cDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXZre2JhY2tncm91bmQ6ICM1ODdkYTQ7fSAuYm8tc29jaWFsLXZrOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtZGlzcXVze2JhY2tncm91bmQ6ICMyZTlmZmY7fSAuYm8tc29jaWFsLWRpc3F1czpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXJzc3tiYWNrZ3JvdW5kOiAjZmY3ZjAwO30gLmJvLXNvY2lhbC1yc3M6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1za3lwZXtiYWNrZ3JvdW5kOiAjMThiN2YxO30gLmJvLXNvY2lhbC1za3lwZTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXlvdXR1YmV7YmFja2dyb3VuZDogI2M0MzAyYjt9IC5iby1zb2NpYWwteW91dHViZTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXZpbWVve2JhY2tncm91bmQ6ICMwMTU1N2E7fSAuYm8tc29jaWFsLXZpbWVvOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtd2luZG93c3tiYWNrZ3JvdW5kOiAjMDBjY2ZmO30gLmJvLXNvY2lhbC13aW5kb3dzOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwteGluZ3tiYWNrZ3JvdW5kOiAjMDM2NTY3O30gLmJvLXNvY2lhbC14aW5nOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwteWFob297YmFja2dyb3VuZDogIzYxMzk5ZDt9IC5iby1zb2NpYWwteWFob286aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1jaHJvbWV7YmFja2dyb3VuZDogIzU4Yjk0Nzt9IC5iby1zb2NpYWwtY2hyb21lOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtbWFjc3RvcmV7YmFja2dyb3VuZDogIzZlNmU2ZTt9IC5iby1zb2NpYWwtbWFjc3RvcmU6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1hbWF6b257YmFja2dyb3VuZDogI2ZmOTkwMDt9IC5iby1zb2NpYWwtYW1hem9uOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtc3RlYW17YmFja2dyb3VuZDogI2E1YTRhMTt9IC5iby1zb2NpYWwtc3RlYW06aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1kcm9wYm94e2JhY2tncm91bmQ6ICM3YWI2ZWM7fSAuYm8tc29jaWFsLWRyb3Bib3g6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1jbG91ZGFwcHtiYWNrZ3JvdW5kOiAjNDg5ZGRlO30gLmJvLXNvY2lhbC1jbG91ZGFwcDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWViYXl7YmFja2dyb3VuZDogIzg2YjgxNzt9IC5iby1zb2NpYWwtZWJheTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWdpdGh1YntiYWNrZ3JvdW5kOiAjNjY3RjhFO30gLmJvLXNvY2lhbC1naXRodWI6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1nb29nbGVwbGF5e2JhY2tncm91bmQ6ICM1YmVmZDA7fSAuYm8tc29jaWFsLWdvb2dsZXBsYXk6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1pdHVuZXN7YmFja2dyb3VuZDogIzE3N2FjODt9IC5iby1zb2NpYWwtaXR1bmVzOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtcGx1cmt7YmFja2dyb3VuZDogI2E3M2QwNzt9IC5iby1zb2NpYWwtcGx1cms6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1zb25na2lja3tiYWNrZ3JvdW5kOiAjZjgwMDQ2O30gLmJvLXNvY2lhbC1zb25na2ljazpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWxhc3RmbXtiYWNrZ3JvdW5kOiAjYzYwZTE2O30gLmJvLXNvY2lhbC1sYXN0Zm06aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1nbWFpbHtiYWNrZ3JvdW5kOiAjZTA0YTNmO30gLmJvLXNvY2lhbC1nbWFpbDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXBpbmJvYXJke2JhY2tncm91bmQ6ICMyMjRjZjQ7fSAuYm8tc29jaWFsLXBpbmJvYXJkOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtb3Blbmlke2JhY2tncm91bmQ6ICNiZTY2MWI7fSAuYm8tc29jaWFsLW9wZW5pZDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXF1b3Jhe2JhY2tncm91bmQ6ICNjNDFhMDA7fSAuYm8tc29jaWFsLXF1b3JhOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtc291bmRjbG91ZHtiYWNrZ3JvdW5kOiAjZmY1YzAwO30gLmJvLXNvY2lhbC1zb3VuZGNsb3VkOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtdHVtYmxye2JhY2tncm91bmQ6ICMzOTU4NzQ7fSAuYm8tc29jaWFsLXR1bWJscjpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWV2ZW50YXNhdXJ1c3tiYWNrZ3JvdW5kOiAjYjlmMTVlO30gLmJvLXNvY2lhbC1ldmVudGFzYXVydXM6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC13b3JkcHJlc3N7YmFja2dyb3VuZDogIzQ2NDY0Njt9IC5iby1zb2NpYWwtd29yZHByZXNzOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwteWVscHtiYWNrZ3JvdW5kOiAjYzQxMjAwO30gLmJvLXNvY2lhbC15ZWxwOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtaW50ZW5zZWRlYmF0ZXtiYWNrZ3JvdW5kOiAjMDBhZWVmO30gLmJvLXNvY2lhbC1pbnRlbnNlZGViYXRlOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtZXZlbnRicml0ZXtiYWNrZ3JvdW5kOiAjZmY2YzAwO30gLmJvLXNvY2lhbC1ldmVudGJyaXRlOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtc2NyaWJke2JhY2tncm91bmQ6ICMwMDI5Mzk7fSAuYm8tc29jaWFsLXNjcmliZDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXBvc3Rlcm91c3tiYWNrZ3JvdW5kOiAjZjhkNjY3O30gLmJvLXNvY2lhbC1wb3N0ZXJvdXM6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1zdHJpcGV7YmFja2dyb3VuZDogIzYxN2VlODt9IC5iby1zb2NpYWwtc3RyaXBlOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtb3BlbnRhYmxle2JhY2tncm91bmQ6ICM5OTAwMDA7fSAuYm8tc29jaWFsLW9wZW50YWJsZTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWluc3RhZ3JhbXtiYWNrZ3JvdW5kOiAjNGM3OTlmO30gLmJvLXNvY2lhbC1pbnN0YWdyYW06aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1kd29sbGF7YmFja2dyb3VuZDogI2ZmNzQwNDt9IC5iby1zb2NpYWwtZHdvbGxhOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtYXBwbmV0e2JhY2tncm91bmQ6ICMxZTBjMjk7fSAuYm8tc29jaWFsLWFwcG5ldDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXN0YXR1c25ldHtiYWNrZ3JvdW5kOiAjZmI2MTA0O30gLmJvLXNvY2lhbC1zdGF0dXNuZXQ6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1hY3JvYmF0e2JhY2tncm91bmQ6ICNmZjAwMDA7fSAuYm8tc29jaWFsLWFjcm9iYXQ6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1kcnVwYWx7YmFja2dyb3VuZDogIzAwN2RjMzt9IC5iby1zb2NpYWwtZHJ1cGFsOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtcG9ja2V0e2JhY2tncm91bmQ6ICNlZTQwNTY7fSAuYm8tc29jaWFsLXBvY2tldDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWJpdGJ1Y2tldHtiYWNrZ3JvdW5kOiAjMjA1MDgxO30gLmJvLXNvY2lhbC1iaXRidWNrZXQ6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1mbGF0dHJ7YmFja2dyb3VuZDogI2ZiYmMyMzt9IC5iby1zb2NpYWwtZmxhdHRyOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtZXZlbnRmdWx7YmFja2dyb3VuZDogIzAwNjZjYzt9IC5iby1zb2NpYWwtZXZlbnRmdWw6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1zbWFzaG1hZ3tiYWNrZ3JvdW5kOiAjZDYyMzFjO30gLmJvLXNvY2lhbC1zbWFzaG1hZzpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXdvcmRwcmVzc3tiYWNrZ3JvdW5kOiAjMWU4Y2JlO30gLmJvLXNvY2lhbC13b3JkcHJlc3M6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1jYWxlbmRhcntiYWNrZ3JvdW5kOiAjZmYwMDAwO30gLmJvLXNvY2lhbC1jYWxlbmRhcjpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWNhbGx7YmFja2dyb3VuZDogIzA0YmUzZDt9IC5iby1zb2NpYWwtY2FsbDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWd1ZXN0e2JhY2tncm91bmQ6ICMwM2E5ZDI7fSAuYm8tc29jaWFsLWd1ZXN0OmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtd2VpYm97YmFja2dyb3VuZDogI2ZkMDAwMDt9IC5iby1zb2NpYWwtd2VpYm86aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1wbGFuY2FzdHtiYWNrZ3JvdW5kOiAjZTRiODJjO30gLmJvLXNvY2lhbC1wbGFuY2FzdDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWVtYWlse2JhY2tncm91bmQ6IGJsdWV9IC5iby1zb2NpYWwtZW1haWw6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1teXNwYWNle2JhY2tncm91bmQ6ICMyMDY4YjA7fSAuYm8tc29jaWFsLW15c3BhY2U6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1wb2RjYXN0e2JhY2tncm91bmQ6ICNmMzhiMzZ9IC5iby1zb2NpYWwtcG9kY2FzdDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWNhcnR7YmFja2dyb3VuZDogIzAwYTIwNDt9IC5iby1zb2NpYWwtY2FydDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbn1cbiAvKiAtLS0gU0NTUyBGb3IgVHlwb2dyYXBoeSAtLS0gKi8vLyBDb3JlIHZhcmlhYmxlcyBhbmQgbWl4aW5zXG4uZHJvcGNhcCB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgZmxvYXQ6IGxlZnQ7ICAgIFxuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgbGluZS1oZWlnaHQ6IDQ4cHg7ICAgICAgICBcbiAgICBAaW5jbHVkZSBzcXVhcmUoNjBweCk7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIHBhZGRpbmc6IDNweCAxMHB4IDJweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgJi5kcm9wY2FwLXYye1xuICAgICAgICBjb2xvcjogI2ZmZjsgICAgICAgICAgICAgICAgXG4gICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5OyAgICAgICAgXG4gICAgfVxuICAgICYuZHJvcGNhcC1pbmZve1xuICAgICAgICBiYWNrZ3JvdW5kOiRicmFuZC1pbmZvO1xuICAgIH1cbiAgICAmLmRyb3BjYXAtZGFuZ2Vye1xuICAgICAgICBiYWNrZ3JvdW5kOiRicmFuZC1kYW5nZXI7XG4gICAgfVxuICAgICYuZHJvcGNhcC1zdWNjZXNze1xuICAgICAgICBiYWNrZ3JvdW5kOiRicmFuZC1zdWNjZXNzO1xuICAgIH1cbiAgICAmLmRyb3BjYXAtd2FybmluZ3tcbiAgICAgICAgYmFja2dyb3VuZDokYnJhbmQtd2FybmluZztcbiAgICB9XG59XG5cbi5ibG9ja3F1b3RlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgJi5ibG9ja3F1b3RlLWxlZnQge1xuICAgICAgICBpIHtcbiAgICAgICAgICAgIGxlZnQ6IDE3cHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIH0gICAgICAgIFxuICAgIH1cbiAgICAmLmJsb2NrcXVvdGUtcmlnaHQge1xuICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgaSB7XG4gICAgICAgICAgcmlnaHQ6IDE3cHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICB9XG4gICAgICAuYmxvY2txdW90ZS1pbiB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0NXB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmLmJsb2NrcXVvdGUtYnJkIHtcbiAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xuICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYm8tYmxvY2txdW90ZS1jb2xvcjtcbiAgICAgICAgICAgIHRvcDogMzBweDtcbiAgICAgICAgICAgIGxlZnQ6IDI1cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIH1cbiAgICAgICAgLmJsb2NrcXVvdGUtaW4ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDQ1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5ibG9ja3F1b3RlLWluZm97XG4gICAgICAgYm9yZGVyLWxlZnQtY29sb3I6JGJyYW5kLWluZm87XG4gICAgfVxuICAgICYuYmxvY2txdW90ZS1kYW5nZXJ7XG4gICAgICAgYm9yZGVyLWxlZnQtY29sb3I6JGJyYW5kLWRhbmdlcjtcbiAgICB9XG4gICAgJi5ibG9ja3F1b3RlLXN1Y2Nlc3N7XG4gICAgICAgYm9yZGVyLWxlZnQtY29sb3I6JGJyYW5kLXN1Y2Nlc3M7XG4gICAgfVxuICAgICYuYmxvY2txdW90ZS13YXJuaW5ne1xuICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiRicmFuZC13YXJuaW5nO1xuICAgIH1cbiAgICAmLmJvcmRlcntcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gICAgfVxufVxuXG4udmNfcGFyYWxsYXggLnZjX3BhcmFsbGF4LWlubmVye1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDpmaXhlZCAhaW1wb3J0YW50O1xufVxuLy8gU2hvcnRjb2RlIGljb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5pY29ucy1leGFtcGxlc3tcbiAgICBwYWRkaW5nLWJvdHRvbTogJHRoZW1lLXBhZGRpbmc7XG4gICAgbWluLWhlaWdodDogMTMwcHg7XG4gICAgLmZhe1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoZm9udC1zaXplLDI0cHgpO1xuICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSg0MHB4LDQwcHgpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufVxuIC8qIC0tLSBTQ1NTIEZvciBDb3VudGVycyAtLS0gKi8vLyBDb3JlIHZhcmlhYmxlcyBhbmQgbWl4aW5zXG5cblxuLmNvdW50ZXJzIHsgXG4gIC5jb3VudGVyLXdyYXAge1xuICAgIGZvbnQtc2l6ZTogJGJvLWNvdW50ZXItZm9udC1zaXplO1xuICAgIGNvbG9yOiAkYm8tY291bnRlci1jb2xvcjtcbiAgICBmb250LXdlaWdodDogJGJvLWNvdW50ZXItZm9udC13ZWlnaHQ7XG4gICAgLmZhe1xuICAgICAgZm9udC1zaXplOiAkYm8tY291bnRlci1pY29uLWZvbnQtc2l6ZTtcbiAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgfVxuICAgIC5jb3VudGVye1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICY6YWZ0ZXJ7ICBcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBAaW5jbHVkZSBzaXplKGNhbGMoMTAwJSArIDMwcHgpLCAxcHgpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBoNXtcbiAgICBmb250LXdlaWdodDogJGJvLWNvdW50ZXItaGVhZGluZy1mb250LXdlaWdodDtcbiAgICBtYXJnaW46IDVweCAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgY29sb3I6ICM5OTk7XG4gIH1cbiAgLmNvdW50ZXItYm9keSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgfVxufVxuXG5cblxuIC8qIC0tLSBTQ1NTIEZvciBQcmljaW5nIC0tLSAqLy8vIENvcmUgdmFyaWFibGVzIGFuZCBtaXhpbnNcblxuXG4ucHJpY2luZ3tcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdWx7XG4gICAgICAgIHBhZGRpbmctbGVmdDowO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OjA7IFxuICAgICAgICBsaXtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5wcmljaW5nLXYxe1xuICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGOyBcbiAgICAgYm9yZGVyOiAzcHggc29saWQgIzMxMzEzMTtcbiAgICAgLnByaWNpbmctaGVhZGVyID4gKntcbiAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Vjb25kO1xuICAgICB9XG4gICAgIC5wbGFuLXRpdGxleyBcbiAgICAgICAgIGZvbnQtc2l6ZTogMjRweDsgXG4gICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBcbiAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7IFxuICAgICAgICAgbWFyZ2luOiAwOyBcbiAgICAgICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgICAgICAgIGJhY2tncm91bmQ6ICMzMTMxMzE7ICBcbiAgICAgICAgIGNvbG9yOiAkd2hpdGU7ICBcbiAgICAgfVxuICAgICAucGxhbi1maWd1cmV7XG4gICAgICAgICBmb250LXNpemU6IDQ4cHg7IFxuICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgXG4gICAgICAgICBjb2xvcjogIzAwMDsgXG4gICAgIH1cbiAgICAgLnBsYW4tcHJpY2V7XG4gICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgcGFkZGluZzogMjVweCAwO1xuICAgICAgICAgcHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgIH1cbiAgICAgfVxuICAgICAucGxhbi1jdXJyZW5jeXtcbiAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7ICBcbiAgICAgICAgIGNvbG9yOiAkYmxhY2s7ICBcbiAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgIHRvcDogLTE1cHg7IFxuICAgICB9XG4gICAgIC5wbGFpbi1pbmZve1xuICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgIGxpe1xuICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgXG4gICAgICAgICAgICAgY29sb3I6ICM1NTU1NTU7XG4gICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgICAgXG4gICAgICAgICAgICAgcGFkZGluZzogMTVweCAwOyBcbiAgICAgICAgIH0gICAgXG4gICAgIH1cbiAgICAgLnByaWNpbmctZm9vdGVye1xuICAgICAgICAgcGFkZGluZzogMHB4IDIwcHggNDBweCAyMHB4O1xuICAgICB9ICBcbiAgICAgJi5wcmljaW5nLWhpZ2hsaWdodHtcbiAgICAgICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yIWltcG9ydGFudDtcbiAgICAgIH0gICAgICBcbiAgIH1cbiAgICAmLnByaWNpbmctdjJ7XG4gICAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7IFxuICAgICAgICAucGxhbi10aXRsZXtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7IFxuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCAwOyAgXG4gICAgICAgIH1cbiAgICAgICAgLnBsYW4tcHJpY2V7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAtMTBweDsgICAgXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OyBcbiAgICAgICAgICAgIC5wbGFuLXByaWNlLWJvZHl7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgdG9wOiAtMTVweDtcbiAgICAgICAgICAgICAgICByaWdodDogMDsgICAgICAgICAgXG4gICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7ICAgICAgIFxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNxdWFyZSgxMzBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucGxhbi1maWd1cmV7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0OHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7IFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnBsYW4tY3VycmVuY3l7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4OyAgIFxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7ICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucGxhaW4taW5mb3tcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7IFxuICAgICAgICAgICAgbGl7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMwMDA7IFxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2MnB4OyBcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICNDOEM4Qzg7ICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5wcmljaW5nLWZvb3RlcntcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweCA0MHB4IDIwcHg7IFxuICAgICAgICB9ICAgICAgXG4gICAgICAgICYucHJpY2luZy1oaWdobGlnaHR7XG4gICAgICAgICAgLnBsYW4tdGl0bGV7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgIH1cbiAgICAgICAgICAucGxhbi1wcmljZS1ib2R5e1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGVsZW1lbnQtY29sb3ItcHJpbWFyeTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5idG4tYmxvY2t7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZWxlbWVudC1jb2xvci1wcmltYXJ5OyBcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGVsZW1lbnQtY29sb3ItcHJpbWFyeTtcbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZle1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSAgICAgXG4gICAgfVxuICAgICYucHJpY2luZy12M3tcbiAgICAgICAgYmFja2dyb3VuZDogI0ZGRkZGRjsgXG4gICAgICAgIGJvcmRlcjoxcHggc29saWQgI0RFREVERTtcbiAgICAgICAgLnBsYW4tdGl0bGV7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMjYxRjJGO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4OyBcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwOyBcbiAgICAgICAgICAgIG1hcmdpbjogMDsgXG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDA7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7IFxuICAgICAgICAgICAgc3BhbntcbiAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTsgICBcbiAgICAgICAgICAgIH0gICAgICAgICAgXG4gICAgICAgIH1cbiAgICAgICAgLnBsYW4tZmlndXJle1xuICAgICAgICAgICAgZm9udC1zaXplOiA0OHB4OyBcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7IFxuICAgICAgICAgICAgY29sb3I6ICMwMDA7IFxuICAgICAgICB9XG4gICAgICAgIC5wbGFuLXByaWNle1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzMzMkMzRTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgICAgID4gKntcbiAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnBsYW4tY3VycmVuY3l7XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwOyAgICAgXG4gICAgICAgIH1cbiAgICAgICAgLnBsYWluLWluZm97XG4gICAgICAgICAgICBsaXtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7IFxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7ICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI0Y4RjhGODsgIFxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE0cHggMDsgXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4rMSl7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSAgICBcbiAgICAgICAgfVxuICAgICAgICAucHJpY2luZy1mb290ZXJ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwcHggMjBweCA0MHB4IDIwcHg7XG4gICAgICAgIH0gIFxuICAgICAgICAmLnByaWNpbmctaGlnaGxpZ2h0e1xuICAgICAgICAgIC5wbGFuLXRpdGxleyBcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5wbGFuLXByaWNle1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGVsZW1lbnQtY29sb3ItcHJpbWFyeTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5idG4tYmxvY2t7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZWxlbWVudC1jb2xvci1wcmltYXJ5OyBcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGVsZW1lbnQtY29sb3ItcHJpbWFyeTtcbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZle1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSAgXG4gICAgfVxuICAgICYucHJpY2luZy1oaWdobGlnaHR7XG4gICAgICAgIC5wbGFuLXRpdGxle1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGVsZW1lbnQtY29sb3ItcHJpbWFyeTsgXG4gICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjsgICAgICAgICAgICBcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5AbWl4aW4gdHJhbnNsYXRlWSgkeSkge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCR5KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCR5KTsgLy8gSUU5IG9ubHlcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHkpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkeSk7XG59XG5cbi8qIG91ciB0ZWFtICovXG5cbltjbGFzcyo9XCJ0ZWFtLXZcIl17ICBcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgW2NsYXNzXj1cImJvLXNvY2lhbC1cIl17XG4gICAgICAgIG1hcmdpbjogMDsgIFxuICAgIH0gICAgICAgXG4gICAgLnRlYW0tbmFtZXtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgfVxufVxuXG4vLyB0ZWFtIDJcbi50ZWFtLWxpc3R7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAudGVhbS1uYW1le1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgcGFkZGluZzogMCAwIDIwcHggMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZWxlbWVudC1jb2xvci1wcmltYXJ5O1xuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgzMHB4LDJweCk7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnRlYW0tcG9zaXRpb257XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGNvbG9yOiAkZWxlbWVudC1jb2xvci1wcmltYXJ5O1xuICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgIH0gIFxuICAgIC50ZWFtLWluZm97XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuICAgIC5iby1zb2NpYWwtaWNvbnN7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIFtjbGFzcyo9XCJiby1zb2NpYWwtXCJde1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgfSAgICAgIFxufVxuXG4vLyB0ZWFtIDNcbi50ZWFtLWdhbGxlcnl7XG4gICAgYmFja2dyb3VuZDogI0ZGRjtcbiAgICAudGVhbS1oZWFkZXJ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgIFxuICAgICAgICAmOmJlZm9yZXsgICAgICAgICAgICBcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7ICAgICAgICAgIFxuICAgICAgICAgICAgY29udGVudDogXCJcIjsgICAgXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICBAaW5jbHVkZSBzcXVhcmUoMTAwJSk7XG4gICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDApO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC41cyBlYXNlIDBzKTsgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGVsZW1lbnQtY29sb3ItcHJpbWFyeSwuNSk7XG4gICAgICAgIH1cbiAgICB9ICAgICAgICBcbiAgICAudGVhbS1uYW1le1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICAgIC50ZWFtLWdhbGxlcnktYm94eyAgICAgICAgXG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGhlaWdodDogNTAlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIG1hcmdpbjogYXV0bzsgIFxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC41cyBlYXNlIDBzKTsgICBcbiAgICB9XG4gICAgLnRlYW0taW5mb3tcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgfVxuICAgIFxuICAgIC50ZWFtLXBvc2l0aW9ue1xuICAgICAgICBjb2xvcjogIzk5OTk5OTsgXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7ICAgICAgIFxuICAgIH0gICAgICBcbiAgICAudGVhbS1ib2R5LWNvbnRlbnR7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDFweCw1MHB4KTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRlbGVtZW50LWNvbG9yLXByaW1hcnk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmJvLXNvY2lhbC13aGl0ZXtcbiAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfSAgXG4gICAgJjpob3ZlcntcbiAgICAgICAgLnRlYW0taGVhZGVye1xuICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50ZWFtLWdhbGxlcnktYm94e1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgIH1cbiAgICB9ICBcbn1cblxuLy9UZWFtIDRcbi50ZWFtLWhvdmVye1xuICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIC50ZWFtLWhlYWRlcntcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyAgXG4gICAgICAgICY6YmVmb3JleyAgICAgICAgICAgIFxuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDsgICAgICAgICAgXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiOyAgICBcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNxdWFyZSgxMDAlKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjVzIGVhc2UgMHMpOyAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkZWxlbWVudC1jb2xvci1wcmltYXJ5LC41KTtcbiAgICAgICAgfVxuICAgIH0gICAgICAgIFxuICAgIC50ZWFtLW5hbWV7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gICAgLnRlYW0tZ2FsbGVyeS1ib3h7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogNDVweDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLTIyLjVweDtcbiAgICB9XG4gICAgLnRlYW0taW5mb3tcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgfVxuICAgIC50ZWFtLXBvc2l0aW9ue1xuICAgICAgICBjb2xvcjogIzk5OTk5OTsgXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7ICAgICAgIFxuICAgIH0gICAgICBcbiAgICAudGVhbS1ib2R5LWNvbnRlbnR7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgPip7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIC50ZWFtLW5hbWV7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5iby1zb2NpYWwtd2hpdGV7XG4gICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIH0gIFxuICAgICY6aG92ZXJ7XG4gICAgICAgIC50ZWFtLWhlYWRlcntcbiAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGVhbS1nYWxsZXJ5LWJveHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICB9XG4gICAgfSAgXG59XG5cbi50ZWFtLXNtYWxse1xuICBib3JkZXI6IG5vbmUhaW1wb3J0YW50O1xuICAudGVhbS1ib2R5e1xuICAgIGJhY2tncm91bmQ6IG5vbmUhaW1wb3J0YW50O1xuICB9XG4gIC50ZWFtLWluZm97XG4gICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XG4gIH1cbiAgJjpob3ZlcntcbiAgICAudGVhbS1ib2R5e1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkhaW1wb3J0YW50O1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSFpbXBvcnRhbnQ7IFxuICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIWltcG9ydGFudDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cblxuIC8qIC0tLSBTQ1NTIEZvciBjYWxsIHRvIGFjdGlvbiAtLS0gKi8gXG5cbi5wYnItY2FsbHRvYWN0aW9uIHtcbiAgICAudmNfY3RhMy52Y19jdGEzLXN0eWxlLWN1c3RvbSB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgcGFkZGluZzoxMCUgMTAlIDAgMTAlO1xuICAgICAgICBtaW4taGVpZ2h0OiA0NjZweDtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tcGhvbmUpe1xuICAgICAgICAgICAgbWluLWhlaWdodDogMzM0cHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCl7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyMzRweDtcbiAgICAgICAgICAgIHBhZGRpbmc6MzBweCAwIDA7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCl7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OjM0MnB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIGgyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIH1cbiAgICAudmNfYnRuMy52Y19idG4zLXN0eWxlLWN1c3RvbSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6bm9uZTtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgfVxufVxuXG4gLyogLS0tIFNDU1MgRm9yIEljb24tYm94IC0tLSAqLyBcbi5mZWF0dXJlLWJveHtcbiAgICAmLmJnLWltYWdle1xuICAgICAgICBwYWRkaW5nOiAxOCUgMjBweDtcbiAgICB9XG4gICAgLmZib3gtaW1hZ2V7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCl7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXBob25lKXtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KXtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgIH1cbiAgICAuZmJveC1jb250ZW50e1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tcGhvbmUpe1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCl7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIHNtYWxse1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgbWFyZ2luLXRvcDo1cHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBjb2xvcjokYnJhbmQtcHJpbWFyeSA7XG4gICAgfVxuICAgaDR7XG4gICAgICBtYXJnaW46MCAwIDE1cHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gICAgfVxuICAgLmZib3gtaWNvbntcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbjogMTBweCAxNXB4IDAgMDtcbiAgICAgICAgY29sb3I6ICRlbGVtZW50LWNvbG9yLXByaW1hcnk7XG4gICAgICAgIC5pY29uc3tcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgICAgICAgY29sb3I6ICRlbGVtZW50LWNvbG9yLXByaW1hcnk7XG4gICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSg0MHB4LCA0MHB4KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICBcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgIH1cbiAgICYuc2VwYXJhdG9yX2FsaWduX3JpZ2h0IHtcbiAgICAuZmJveC1pbWFnZSwgLmZib3gtaWNvbntcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW46IDAgMCAwIDIwcHg7XG4gICAgfVxuICAgfVxuICAgJi5zZXBhcmF0b3JfYWxpZ25fY2VudGVyIHtcbiAgICAuZmJveC1pbWFnZSwgLmZib3gtaWNvbntcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICB9XG4gICB9XG4gICAmLmZlYXR1cmUtYm94LXYxe1xuICAgICAgICAuZmJveC1pbWFnZXtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmZib3gtY29udGVudHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfSAgICAgICAgXG4gICAgfVxufVxuLmZlYXR1cmUtYm94LWRlZmF1bHR7XG4gICAgQGluY2x1ZGUgZmxleGJveDtcbiAgICA+IGRpdiB7XG4gICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gICAgJi5zZXBhcmF0b3JfYWxpZ25fY2VudGVyIHtcbiAgICAgICAgLmZib3gtaW1hZ2UsIC5mYm94LWljb257XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnNlcGFyYXRvcl9hbGlnbl9yaWdodCB7XG4gICAgLmZib3gtaW1hZ2UsIC5mYm94LWljb257XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgfVxuICAgIC5mYm94LWltYWdlLFxuICAgIC5mYm94LWljb257XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAuaWNvbnN7XG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDcwcHgsIDcwcHgpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDcwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmZib3gtY29udGVudHtcbiAgICAgICAgcGFkZGluZzogMCA3JTtcbiAgICB9XG59XG4uZmVhdHVyZS1ib3gtdjF7XG4gICAgLmZib3gtaW1hZ2UsXG4gICAgLmZib3gtaWNvbntcbiAgICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBcbiAgICAgICAgbWFyZ2luOiAwIDE1cHggMCAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAuaWNvbnN7XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgfVxuICAgICAgICAgICBcbiAgICB9XG4gICAgc21hbGx7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG59XG4uZmVhdHVyZS1ib3gtdjJ7XG4gICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAuZmJveC1pbWFnZSwuZmJveC1pY29ue1xuICAgIGZsb2F0OiAgbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgLmljb25ze1xuICAgICAgICAgQGluY2x1ZGUgc2l6ZSg3MHB4LCA3MHB4KTtcbiAgICAgICAgIGxpbmUtaGVpZ2h0OiA3MHB4O1xuICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIH1cbiAgIH1cbiAgICAuZmJveC1jb250ZW50IHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG59XG4uZmVhdHVyZS1ib3guZmVhdHVyZS1ib3gtdjN7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDQ1cHggMzBweCAyMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlciFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogI0Y1RjVGNTtcbiAgIC5mYm94LWltYWdlLC5mYm94LWljb257XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAtMzZweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgLmljb25ze1xuICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgQGluY2x1ZGUgc2l6ZSg3MHB4LCA3MHB4KTtcbiAgICAgICAgIGxpbmUtaGVpZ2h0OiA3MHB4O1xuICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS1jb2xvcjtcbiAgICAgIH1cbiAgIH1cbiAgIC5mYm94LWNvbnRlbnR7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICB9XG59XG5cbi5mZWF0dXJlLWJveC5mZWF0dXJlLWJveC12NHtcbiAgIHBhZGRpbmc6IDIwcHggMzBweCA7XG4gICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICR0aGVtZS1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIhaW1wb3J0YW50O1xuICAgLmZib3gtaW1hZ2UsIC5mYm94LWljb257XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmbG9hdDogbm9uZSFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgLmljb25ze1xuICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICAgQGluY2x1ZGUgc2l6ZSg3MHB4LCA3MHB4KTtcbiAgICAgICAgIGxpbmUtaGVpZ2h0OiA3MHB4O1xuICAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgfVxuICAgfVxuICAgLmZib3gtY29udGVudHtcbiAgICBmbG9hdDogbm9uZTtcbiAgIH1cbiAgIC5kZXNjcmlwdGlvbntcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgfVxufVxuXG4vKipcbiAqIFRhYiBTdHlsZVxuICovXG4gLnRhYi12OHtcbiAgICAubmF2LWlubmVye1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICB9XG4gICAubmF2LXRhYnMge1xuICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAgIFxuICAgICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICAgIGxpe1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgJi5hY3RpdmUsICY6Zm9jdXMsICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6bm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmFjdGl2ZSwgJjpmb2N1cywgJjpob3ZlciwgJi51aS1zdGF0ZS1hY3RpdmV7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6JGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiI3skYnJlYWRjcnVtYi1zZXBhcmF0b3J9XCI7IC8vIFVuaWNvZGUgc3BhY2UgYWRkZWQgc2luY2UgaW5saW5lLWJsb2NrIG1lYW5zIG5vbi1jb2xsYXBzaW5nIHdoaXRlLXNwYWNlXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICByaWdodDogLTZweDtcbiAgICAgICAgICAgICAgICB0b3A6IDEwcHg7XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqXG4gKiBCbGFjayB0YWIgU3R5bGVzXG4gKi9cbi5uYXZ0YWJzLWJsYWNre1xuICAgIC5uYXYtdGFicyA+IGxpID4gYSwgLm5hdi10YWJzID4gbGk6OmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiMwMDA7XG4gICAgfVxufVxuXG4ucGJyLWluZm9yYm94e1xuICAgIC5pbmZvcmJveC1pbm5lcntcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOjEwcHg7XG4gICAgfVxufVxuLyoqXG4gKiBCcmFuZCBTdHlsZXNcbiAqL1xuLmJyYW5kcy1jYXJvdXNlbHtcbiAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgICAuaXRlbS1icmFuZHtcbiAgICAgICAgbWFyZ2luOjEwcHggMTVweDtcbiAgICAgICAgaW1ne1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBib3JkZXI6c29saWQgMnB4ICRib3JkZXItY29sb3I7XG4gICAgfVxufSAgICBcblxuLyogZWZmZWN0LXYxICovXG4uZWZmZWN0LXYxe1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmZmZmY7XG4gICAgICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgc2NhbGUgKDEuMSk7XG4gICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5ICgwKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oIG9wYWNpdHkgMC4zNXMgZWFzZSAwcywgdHJhbnNmb3JtIDAuMzVzIGVhc2UgMHMpO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgc2NhbGUgKDEuMTIpO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggb3BhY2l0eSAwLjM1cyBlYXNlIDBzLCB0cmFuc2Zvcm0gMC4zNXMgZWFzZSAwcyk7XG4gICAgICAgIH1cbiAgICAgICAgLmFjdGlvbntcbiAgICAgICAgICAgIEBpbmNsdWRlIHNjYWxlICgxLjEyKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCBvcGFjaXR5IDAuMzVzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjM1cyBlYXNlIDBzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIHN0eWxlIGZvciBob3ZlciAqL1xuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgJjpiZWZvcmUgeyAgXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzY2FsZSAoMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMC41KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzY2FsZSAoMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYWN0aW9ue1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNjYWxlICgxKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG59XG5cblxuLyogZWZmZWN0LXYyKi9cbi5lZmZlY3QtdjJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmZmZmY7XG4gICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCAoLTIwcHgsIDBweCwgMHB4KTtcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggb3BhY2l0eSAwLjM1cyBlYXNlIDBzLCB0cmFuc2Zvcm0gMC4zNXMgZWFzZSAwcyk7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIEBpbmNsdWRlIHNjYWxlICgxLCAxKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggb3BhY2l0eSAwLjM1cyBlYXNlIDBzLCB0cmFuc2Zvcm0gMC4zNXMgZWFzZSAwcyk7XG4gICAgfVxuICAgIC5hY3Rpb257XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKC0xMHB4LCAwcHgsIDBweCk7XG4gICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oIG9wYWNpdHkgMC4zNXMgZWFzZSAwcywgdHJhbnNmb3JtIDAuMzVzIGVhc2UgMHMpO1xuICAgIH1cbiAgICAvKiBzdHlsZSBmb3IgaG92ZXIgKi9cbiAgICAmOmhvdmVye1xuICAgICAgICAmOmJlZm9yZSB7ICBcbiAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwLjcpO1xuICAgICAgICAgICAgQGluY2x1ZGUgc2NhbGUgKDEuMiwgMSk7XG4gICAgICAgIH1cbiAgICAgICAgLmFjdGlvbntcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAwcHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vKiBlZmZlY3QtdjMqL1xuLmVmZmVjdC12M3sgXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpe1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgIH0gICAgXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6YmVmb3JlLCY6YWZ0ZXIge1xuICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgIHRvcDogMjBweDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggb3BhY2l0eSAwLjM1cyBlYXNlIDBzLCB0cmFuc2Zvcm0gMC4zNXMgZWFzZSAwcyk7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmZmZmY7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmZmZmO1xuICAgICAgICBAaW5jbHVkZSBzY2FsZSgwLCAxKTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2ZmZmZmZjtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2ZmZmZmZjtcbiAgICAgICAgQGluY2x1ZGUgc2NhbGUoMSwgMCk7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24gKG9wYWNpdHkgMC4zNXMgZWFzZSAwcyk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAuYmFubmVyLXRpdGxle1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwcHgsIC0yMHB4LCAwcHgpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uICh0cmFuc2Zvcm0gMC4zNXMgZWFzZSAwcyk7XG4gICAgfVxuICAgIC5hY3Rpb257XG4gICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDBweCwgNDBweCwgMHB4KTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggb3BhY2l0eSAwLjM1cyBlYXNlIDBzLCB0cmFuc2Zvcm0gMC4zNXMgZWFzZSAwcyk7XG4gICAgfVxuICAgIFxuICAgIC8qIHN0eWxlIGZvciBob3ZlciAqL1xuICAgICY6aG92ZXJ7XG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHsgICBcbiAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgICAgICBAaW5jbHVkZSBzY2FsZSgxKTtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwLjUpO1xuICAgICAgICB9XG4gICAgICAgIC5iYW5uZXItdGl0bGUsLmFjdGlvbntcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICB9XG59XG5cbi8qIGVmZmVjdC12NCovXG4uZWZmZWN0LXY0eyBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZmZmZjtcbiAgICAgICAgYm90dG9tOiAyMHB4O1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCAwIDMwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpKTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICBAaW5jbHVkZSBzY2FsZSgxLjQpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCBvcGFjaXR5IDAuMzVzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjM1cyBlYXNlIDBzKTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiAob3BhY2l0eSAwLjM1cyBlYXNlIDBzKTtcbiAgICB9XG4gICAgLmJhbm5lci10aXRsZXtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzY2FsZSgxKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uICh0cmFuc2Zvcm0gMC4zNXMgZWFzZSAwcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYWN0aW9ue1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2NhbGUoMS4yKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCBvcGFjaXR5IDAuMzVzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjM1cyBlYXNlIDBzKTtcbiAgICAgICAgICAgIH1cbiAgICBcbiAgICAvKiBzdHlsZSBmb3IgaG92ZXIgKi9cbiAgICAmOmhvdmVye1xuICAgICAgICAmOmJlZm9yZSB7ICBcbiAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgICAgICBAaW5jbHVkZSBzY2FsZSgxKTtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwLjUpO1xuICAgICAgICB9XG4gICAgICAgIC5iYW5uZXItdGl0bGV7ICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzY2FsZSgwLjk1KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5hY3Rpb257XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzY2FsZSgxKTtcbiAgICAgICAgICAgIH1cbiAgICB9XG59XG5cbi8qIGVmZmVjdC12NiovXG4uZWZmZWN0LXY2eyBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyBcbiAgICBcbiAgICBpbWcge1xuICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uIChvcGFjaXR5IDAuMzVzIGVhc2UgMHMpO1xuICAgIH1cbiAgICAuYWN0aW9uIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIC0xMDBweCwgMHB4KTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjM1cyBlYXNlIDBzLCB0cmFuc2Zvcm0gMC4zNXMgZWFzZSAwcztcbiAgICAgICAgb3BhY2l0eTogMDtcblxuICAgIH1cbiAgICBcbiAgICAvKiBzdHlsZSBmb3IgaG92ZXIgKi9cbiAgICAmOmhvdmVye1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwLjUpO1xuICAgICAgICB9XG4gICAgICAgIC5hY3Rpb24ge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG4gICAgICAgIH1cblxuICAgIH1cbn1cblxuLyogZWZmZWN0LXY3Ki9cbi5lZmZlY3Qtdjd7IFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuNHMgY3ViaWMtYmV6aWVyKDAuOTQsIDAuODUsIDAuMSwgMC42MikgMHMpO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBib3JkZXI6IDIwMHB4IGRvdWJsZSByZ2JhKDAsIDAsIDAsIDApO1xuICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cbiAgICBcbiAgICAvKiBzdHlsZSBmb3IgaG92ZXIgKi9cbiAgICAmOmhvdmVye1xuICAgICAgICAmOmJlZm9yZSB7ICBcbiAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG4gICAgICAgICAgICBib3JkZXI6IDAgZG91YmxlIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogZWZmZWN0LXY4Ki9cbi5lZmZlY3Qtdjh7IFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6YmVmb3JlIHtcbiAgICAgICBib3JkZXItYm90dG9tOiA1MHB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiAgICAgICAgYm9yZGVyLXRvcDogNTBweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpIHNjYWxlM2QoMSwgMCwgMSk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpIHNjYWxlM2QoMSwgMCwgMSk7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZykgc2NhbGUzZCgxLCAwLCAxKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKSBzY2FsZTNkKDEsIDAsIDEpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZykgc2NhbGUzZCgxLCAwLCAxKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiAob3BhY2l0eSAwLjM1cyBlYXNlIDBzLCB0cmFuc2Zvcm0gMC4zNXMgZWFzZSAwcyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCUgMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICB9XG4gICAgXG4gICAgLyogc3R5bGUgZm9yIGhvdmVyICovXG4gICAgJjpob3ZlcntcbiAgICAgICAgJjpiZWZvcmUgeyAgXG4gICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKSBzY2FsZTNkKDEsIDQsIDEpO1xuICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpIHNjYWxlM2QoMSwgNCwgMSk7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpIHNjYWxlM2QoMSwgNCwgMSk7XG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpIHNjYWxlM2QoMSwgNCwgMSk7XG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZykgc2NhbGUzZCgxLCA0LCAxKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogZWZmZWN0LXY5Ki9cbi5lZmZlY3Qtdjl7IFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyOiA1MHB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMCk7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzICg1MHB4KTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMgKDUwcHgpO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSAoMSk7XG4gICAgICAgIEBpbmNsdWRlIHNpemUoMTAwcHgsIDEwMHB4KTtcbiAgICAgICAgQGluY2x1ZGUgc2NhbGUoNyk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24gKGFsbCAwLjNzIGVhc2UtaW4tb3V0IDBzKTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgXG4gICAgLyogc3R5bGUgZm9yIGhvdmVyICovXG4gICAgJjpob3ZlcntcbiAgICAgICAgJjpiZWZvcmUgeyAgXG4gICAgICAgICAgICBib3JkZXI6IDAgc29saWQgcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSAoMCk7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIGVmZmVjdC12MTAqL1xuLmVmZmVjdC12MTB7ICAgIFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6YmVmb3JlIHsgICAgICBcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlLCAxMDAlKTtcbiAgICAgICAgbGVmdDogLTEwMCU7XG4gICAgICAgIEBpbmNsdWRlIG9wYWNpdHkgKDApO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiAoYWxsIDAuM3MgZWFzZSAwcyk7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgIFxuICAgIC8qIHN0eWxlIGZvciBob3ZlciAqL1xuICAgICY6aG92ZXJ7XG4gICAgICAgICY6YmVmb3JlIHsgIFxuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSAoMSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIGVmZmVjdC12MTEqL1xuLmVmZmVjdC1kZWZhdWx0e1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC5iYW5uZXItdGl0bGV7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwcHgsIDIwcHgsIDBweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uICh0cmFuc2Zvcm0gMC4zNXMgZWFzZSAwcyk7XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNjYWxlICgxLjE1KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oIG9wYWNpdHkgMC4zNXMgZWFzZSAwcywgdHJhbnNmb3JtIDAuMzVzIGVhc2UgMHMpO1xuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSAoMC43KTtcbiAgICAgICAgfVxuICAgICAgICAuYWN0aW9ue1xuICAgICAgICAgICAgQGluY2x1ZGUgc2NhbGUgKDEuMSk7XG4gICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDApO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggb3BhY2l0eSAwLjM1cyBlYXNlIDBzLCB0cmFuc2Zvcm0gMC4zNXMgZWFzZSAwcyk7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICAgICAgbWFyZ2luOiAxZW0gMCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMWVtO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAvKiBzdHlsZSBmb3IgaG92ZXIgKi9cbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICY6YmVmb3JlIHsgIFxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2NhbGUgKDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDAuNSk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2NhbGUgKDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmFjdGlvbntcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzY2FsZSAoMSk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5iYW5uZXItdGl0bGV7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxufVxuLmxheWVyLXVwe1xuICAmOmJlZm9yZXtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICB3aWR0aDogMTAwJTtcbiAgICAgdG9wOiAwO1xuICAgICBsZWZ0OiAwO1xuICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoLTE3OGRlZywgI2ZmZmZmZiA0NyUsIHRyYW5zcGFyZW50IDAsdHJhbnNwYXJlbnQgMCk7IFxuICB9ICBcbiAgICY6YWZ0ZXJ7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgIGhlaWdodDogODBweDtcbiAgICAgd2lkdGg6IDEwMCU7XG4gICAgIGJvdHRvbTogMDtcbiAgICAgbGVmdDogMDtcbiAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KC0xNzhkZWcsIHRyYW5zcGFyZW50IDQ3JSwgdHJhbnNwYXJlbnQgMCwjZmZmZmZmIDApOyBcbiAgfSAgXG59XG5cbi8vZm9yIGhvbWUgZXNrYXRlYm9hcmRcblxuLnRlc3RpbW9uaWFscy12M3tcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgLnRlc3RpbW9uaWFscy1kZXNjcmlwdGlvbntcbiAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICBsaW5lLWhlaWdodDoxLjM7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGYxMGQnO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMDBweDtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmZsZXh7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAuam9iLFxuICAgICAgICAubmFtZXtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5uYW1le1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZlYXR1cmUtYm94LXY1e1xuICAgIC5mYm94LWJvZHl7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgICBoNHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIH1cbiAgICAgICAgc21hbGx7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCl7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZGVzY3JpcHRpb257XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KXtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4ucGJyLWZvb3Rlci5mb290ZXItNHtcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICMyYjJiMmI7XG4gICAgY29sb3I6ICNjY2M7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgfVxuICAgIGF7XG4gICAgICAgIGNvbG9yOiAjY2NjY2NjO1xuICAgIH1cbiAgICAud2lkZ2V0LndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgdWwgbGksIC53aWRnZXQud2lkZ2V0X2NhdGVnb3JpZXMgdWwgbGksIC53aWRnZXQud2lkZ2V0X2xheWVyZWRfbmF2IHVsIGxpLCAud2lkZ2V0LndpZGdldF9sYXllcmVkX25hdl9maWx0ZXJzIHVsIGxpLCAud2lkZ2V0X25hdl9tZW51IHVsIGxpe1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICAgIC5jb250YWN0LWFkZHtcbiAgICAgICAgcHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNDE0MTQxO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGR7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5zb2NpYWx7XG4gICAgICAgIGxpe1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjNDE0MTQxO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgYXttYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgaXtsaW5lLWhlaWdodDogMzZweDt9XG4gICAgICAgICAgICAgICAgaTpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmhvdmVyeyBjb2xvcjogJHRoZW1lLWNvbG9yLXNlY29uZGFyeTt9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgaDMudmNfY3VzdG9tX2hlYWRpbmd7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpe1xuICAgIC50cmFuc2xhdGVYLWw1MHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbiAgICAudHJhbnNsYXRlWC1yNTB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpO1xuICAgICAgICB6LWluZGV4OiA5IWltcG9ydGFudDtcbiAgICB9XG59XG4ud29vY29tbWVyY2UtZXJyb3I6OmJlZm9yZSwgLndvb2NvbW1lcmNlLWluZm86OmJlZm9yZSwgLndvb2NvbW1lcmNlLW1lc3NhZ2U6OmJlZm9yZXtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLndvb2NvbW1lcmNlLWVycm9ye1xuICAgIEBleHRlbmQgLmFsZXJ0O1xuICAgIEBleHRlbmQgLmFsZXJ0LWRhbmdlcjtcbn1cbi53b29jb21tZXJjZS1pbmZve1xuICAgIEBleHRlbmQgLmFsZXJ0O1xuICAgIEBleHRlbmQgLmFsZXJ0LWluZm87XG59XG4ud29vY29tbWVyY2UtbWVzc2FnZXtcbiAgICBAZXh0ZW5kIC5hbGVydDtcbiAgICBAZXh0ZW5kIC5hbGVydC1zdWNjZXNzO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xle1xuICAgIGhlaWdodDogMzJweDtcbiAgICBib3JkZXItcmFkaXVzOiAzcHghaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogI2RkZDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVke1xuICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3d7XG4gICAgaGVpZ2h0OiAyOHB4O1xufVxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlcmluZyBzZWxlY3R7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGJvcmRlci1jb2xvcjogI2RkZDtcblxufVxuLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IGlucHV0LmlucHV0LXRleHQsIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyB0ZXh0YXJlYXtcbiAgICBib3JkZXItcmFkaXVzOiAzcHghaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogI2RkZCFpbXBvcnRhbnQ7XG59XG5cbi5hbmltYXRlLXRleHR7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgJjpob3ZlcntcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgfVxufVxuLnBhcmFsbGF4e1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cbiIsIi52Y19yb3d7XG4gIC8vIEV4dHJhIHNtYWxsIGdyaWRcbiAgLy9cbiAgLy8gR3JpZCBjbGFzc2VzIGZvciBleHRyYSBzbWFsbCBkZXZpY2VzIGxpa2Ugc21hcnRwaG9uZXMuIE5vIG9mZnNldCwgcHVzaCwgb3JcbiAgLy8gcHVsbCBjbGFzc2VzIGFyZSBwcmVzZW50IGhlcmUgZHVlIHRvIHRoZSBzaXplIG9mIHRoZSB0YXJnZXQuXG4gIC8vXG4gIC8vIE5vdGUgdGhhdCBgLnZjX2NvbC14cy0xMmAgZG9lc24ndCBnZXQgZmxvYXRlZCBvbiBwdXJwb3Nl4oCUdGhlcmUncyBubyBuZWVkIHNpbmNlXG4gIC8vIGl0J3MgZnVsbC13aWR0aC5cbiAgbWFyZ2luLWxlZnQ6IDAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IDAhaW1wb3J0YW50O1xuXG4gICAgICAudmNfY29sLXhzLTEsXG4gICAgICAudmNfY29sLXhzLTIsXG4gICAgICAudmNfY29sLXhzLTMsXG4gICAgICAudmNfY29sLXhzLTQsXG4gICAgICAudmNfY29sLXhzLTUsXG4gICAgICAudmNfY29sLXhzLTYsXG4gICAgICAudmNfY29sLXhzLTcsXG4gICAgICAudmNfY29sLXhzLTgsXG4gICAgICAudmNfY29sLXhzLTksXG4gICAgICAudmNfY29sLXhzLTEwLFxuICAgICAgLnZjX2NvbC14cy0xMSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgfVxuICAgICAgLy8gU21hbGwgZ3JpZFxuICAgICAgLy9cbiAgICAgIC8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgc21hbGwgZGV2aWNlIHJhbmdlLCBmcm9tIHBob25lc1xuICAgICAgLy8gdG8gdGFibGV0cy5cbiAgICAgIC8vXG4gICAgICAvLyBOb3RlIHRoYXQgYC52Y19jb2wtc20tMTJgIGRvZXNuJ3QgZ2V0IGZsb2F0ZWQgb24gcHVycG9zZeKAlHRoZXJlJ3Mgbm8gbmVlZCBzaW5jZVxuICAgICAgLy8gaXQncyBmdWxsLXdpZHRoLlxuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi10YWJsZXQpIHtcbiAgICAgICAgLnZjX2NvbC1zbS0xLFxuICAgICAgICAudmNfY29sLXNtLTIsXG4gICAgICAgIC52Y19jb2wtc20tMyxcbiAgICAgICAgLnZjX2NvbC1zbS00LFxuICAgICAgICAudmNfY29sLXNtLTUsXG4gICAgICAgIC52Y19jb2wtc20tNixcbiAgICAgICAgLnZjX2NvbC1zbS03LFxuICAgICAgICAudmNfY29sLXNtLTgsXG4gICAgICAgIC52Y19jb2wtc20tOSxcbiAgICAgICAgLnZjX2NvbC1zbS0xMCxcbiAgICAgICAgLnZjX2NvbC1zbS0xMSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBQdXNoIGFuZCBwdWxsIGNvbHVtbnMgZm9yIHNvdXJjZSBvcmRlciBjaGFuZ2VzXG4gICAgICAgIC52Y19jb2wtc20tcHVzaC0xICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDEgLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1wdXNoLTIgIHsgbGVmdDogcGVyY2VudGFnZSgoMiAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLXNtLXB1c2gtMyAgeyBsZWZ0OiBwZXJjZW50YWdlKCgzIC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtc20tcHVzaC00ICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDQgLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1wdXNoLTUgIHsgbGVmdDogcGVyY2VudGFnZSgoNSAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLXNtLXB1c2gtNiAgeyBsZWZ0OiBwZXJjZW50YWdlKCg2IC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtc20tcHVzaC03ICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDcgLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1wdXNoLTggIHsgbGVmdDogcGVyY2VudGFnZSgoOCAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLXNtLXB1c2gtOSAgeyBsZWZ0OiBwZXJjZW50YWdlKCg5IC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtc20tcHVzaC0xMCB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDEwLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1wdXNoLTExIHsgbGVmdDogcGVyY2VudGFnZSgoMTEvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuXG4gICAgICAgIC52Y19jb2wtc20tcHVsbC0xICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDEgLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1wdWxsLTIgIHsgbGVmdDogcGVyY2VudGFnZSgoMiAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLXNtLXB1bGwtMyAgeyBsZWZ0OiBwZXJjZW50YWdlKCgzIC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtc20tcHVsbC00ICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDQgLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1wdWxsLTUgIHsgbGVmdDogcGVyY2VudGFnZSgoNSAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLXNtLXB1bGwtNiAgeyBsZWZ0OiBwZXJjZW50YWdlKCg2IC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtc20tcHVsbC03ICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDcgLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1wdWxsLTggIHsgbGVmdDogcGVyY2VudGFnZSgoOCAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLXNtLXB1bGwtOSAgeyBsZWZ0OiBwZXJjZW50YWdlKCg5IC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtc20tcHVsbC0xMCB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDEwLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1wdWxsLTExIHsgbGVmdDogcGVyY2VudGFnZSgoMTEvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuXG4gICAgICAgIC8vIE9mZnNldHNcbiAgICAgICAgLnZjX2NvbC1zbS1vZmZzZXQtMSAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoMSAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1vZmZzZXQtMiAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoMiAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1vZmZzZXQtMyAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoMyAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1vZmZzZXQtNCAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoNCAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1vZmZzZXQtNSAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoNSAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1vZmZzZXQtNiAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoNiAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1vZmZzZXQtNyAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoNyAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1vZmZzZXQtOCAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoOCAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1vZmZzZXQtOSAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoOSAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1vZmZzZXQtMTAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoMTAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1zbS1vZmZzZXQtMTEgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoMTEvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgIH1cblxuXG4gICAgICAvLyBNZWRpdW0gZ3JpZFxuICAgICAgLy9cbiAgICAgIC8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgZGVza3RvcCBkZXZpY2UgcmFuZ2UuXG4gICAgICAvL1xuICAgICAgLy8gTm90ZSB0aGF0IGAudmNfY29sLW1kLTEyYCBkb2Vzbid0IGdldCBmbG9hdGVkIG9uIHB1cnBvc2XigJR0aGVyZSdzIG5vIG5lZWQgc2luY2VcbiAgICAgIC8vIGl0J3MgZnVsbC13aWR0aC5cblxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tZGVza3RvcCkge1xuICAgICAgICAudmNfY29sLW1kLTEsXG4gICAgICAgIC52Y19jb2wtbWQtMixcbiAgICAgICAgLnZjX2NvbC1tZC0zLFxuICAgICAgICAudmNfY29sLW1kLTQsXG4gICAgICAgIC52Y19jb2wtbWQtNSxcbiAgICAgICAgLnZjX2NvbC1tZC02LFxuICAgICAgICAudmNfY29sLW1kLTcsXG4gICAgICAgIC52Y19jb2wtbWQtOCxcbiAgICAgICAgLnZjX2NvbC1tZC05LFxuICAgICAgICAudmNfY29sLW1kLTEwLFxuICAgICAgICAudmNfY29sLW1kLTExIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFB1c2ggYW5kIHB1bGwgY29sdW1ucyBmb3Igc291cmNlIG9yZGVyIGNoYW5nZXNcbiAgICAgICAgLnZjX2NvbC1tZC1wdXNoLTAgIHsgbGVmdDogYXV0bzsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLW1kLXB1c2gtMSAgeyBsZWZ0OiBwZXJjZW50YWdlKCgxIC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbWQtcHVzaC0yICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDIgLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1wdXNoLTMgIHsgbGVmdDogcGVyY2VudGFnZSgoMyAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLW1kLXB1c2gtNCAgeyBsZWZ0OiBwZXJjZW50YWdlKCg0IC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbWQtcHVzaC01ICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDUgLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1wdXNoLTYgIHsgbGVmdDogcGVyY2VudGFnZSgoNiAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLW1kLXB1c2gtNyAgeyBsZWZ0OiBwZXJjZW50YWdlKCg3IC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbWQtcHVzaC04ICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDggLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1wdXNoLTkgIHsgbGVmdDogcGVyY2VudGFnZSgoOSAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLW1kLXB1c2gtMTAgeyBsZWZ0OiBwZXJjZW50YWdlKCgxMC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbWQtcHVzaC0xMSB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDExLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cblxuICAgICAgICAudmNfY29sLW1kLXB1bGwtMCAgeyBsZWZ0OiBhdXRvOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbWQtcHVsbC0xICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDEgLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1wdWxsLTIgIHsgbGVmdDogcGVyY2VudGFnZSgoMiAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLW1kLXB1bGwtMyAgeyBsZWZ0OiBwZXJjZW50YWdlKCgzIC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbWQtcHVsbC00ICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDQgLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1wdWxsLTUgIHsgbGVmdDogcGVyY2VudGFnZSgoNSAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLW1kLXB1bGwtNiAgeyBsZWZ0OiBwZXJjZW50YWdlKCg2IC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbWQtcHVsbC03ICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDcgLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1wdWxsLTggIHsgbGVmdDogcGVyY2VudGFnZSgoOCAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLW1kLXB1bGwtOSAgeyBsZWZ0OiBwZXJjZW50YWdlKCg5IC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbWQtcHVsbC0xMCB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDEwLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1wdWxsLTExIHsgbGVmdDogcGVyY2VudGFnZSgoMTEvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuXG4gICAgICAgIC8vIE9mZnNldHNcbiAgICAgICAgLnZjX2NvbC1tZC1vZmZzZXQtMCAgeyBtYXJnaW4tbGVmdDogMDsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1vZmZzZXQtMSAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoMSAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1vZmZzZXQtMiAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoMiAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1vZmZzZXQtMyAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoMyAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1vZmZzZXQtNCAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoNCAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1vZmZzZXQtNSAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoNSAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1vZmZzZXQtNiAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoNiAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1vZmZzZXQtNyAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoNyAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1vZmZzZXQtOCAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoOCAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1vZmZzZXQtOSAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoOSAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1vZmZzZXQtMTAgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoMTAvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1tZC1vZmZzZXQtMTEgeyBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoMTEvICRncmlkLWNvbHVtbnMpKTsgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O31cbiAgICAgIH1cblxuXG4gICAgICAvLyBMYXJnZSBncmlkXG4gICAgICAvL1xuICAgICAgLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBsYXJnZSBkZXNrdG9wIGRldmljZSByYW5nZS5cbiAgICAgIC8vXG4gICAgICAvLyBOb3RlIHRoYXQgYC52Y19jb2wtbGctMTJgIGRvZXNuJ3QgZ2V0IGZsb2F0ZWQgb24gcHVycG9zZeKAlHRoZXJlJ3Mgbm8gbmVlZCBzaW5jZVxuICAgICAgLy8gaXQncyBmdWxsLXdpZHRoLlxuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGNvbnRhaW5lci1sZykge1xuICAgICAgICAudmNfY29sLWxnLTEsXG4gICAgICAgIC52Y19jb2wtbGctMixcbiAgICAgICAgLnZjX2NvbC1sZy0zLFxuICAgICAgICAudmNfY29sLWxnLTQsXG4gICAgICAgIC52Y19jb2wtbGctNSxcbiAgICAgICAgLnZjX2NvbC1sZy02LFxuICAgICAgICAudmNfY29sLWxnLTcsXG4gICAgICAgIC52Y19jb2wtbGctOCxcbiAgICAgICAgLnZjX2NvbC1sZy05LFxuICAgICAgICAudmNfY29sLWxnLTEwLFxuICAgICAgICAudmNfY29sLWxnLTExIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFB1c2ggYW5kIHB1bGwgY29sdW1ucyBmb3Igc291cmNlIG9yZGVyIGNoYW5nZXNcbiAgICAgICAgLnZjX2NvbC1sZy1wdXNoLTAgIHsgbGVmdDogYXV0bzsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLWxnLXB1c2gtMSAgeyBsZWZ0OiBwZXJjZW50YWdlKCgxIC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctcHVzaC0yICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDIgLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1sZy1wdXNoLTMgIHsgbGVmdDogcGVyY2VudGFnZSgoMyAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLWxnLXB1c2gtNCAgeyBsZWZ0OiBwZXJjZW50YWdlKCg0IC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctcHVzaC01ICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDUgLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1sZy1wdXNoLTYgIHsgbGVmdDogcGVyY2VudGFnZSgoNiAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLWxnLXB1c2gtNyAgeyBsZWZ0OiBwZXJjZW50YWdlKCg3IC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctcHVzaC04ICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDggLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0OyB9XG4gICAgICAgIC52Y19jb2wtbGctcHVzaC05ICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDkgLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1sZy1wdXNoLTEwIHsgbGVmdDogcGVyY2VudGFnZSgoMTAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLWxnLXB1c2gtMTEgeyBsZWZ0OiBwZXJjZW50YWdlKCgxMS8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG5cbiAgICAgICAgLnZjX2NvbC1sZy1wdWxsLTAgIHsgbGVmdDogYXV0bzsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLWxnLXB1bGwtMSAgeyBsZWZ0OiBwZXJjZW50YWdlKCgxIC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctcHVsbC0yICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDIgLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1sZy1wdWxsLTMgIHsgbGVmdDogcGVyY2VudGFnZSgoMyAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLWxnLXB1bGwtNCAgeyBsZWZ0OiBwZXJjZW50YWdlKCg0IC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctcHVsbC01ICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDUgLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1sZy1wdWxsLTYgIHsgbGVmdDogcGVyY2VudGFnZSgoNiAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLWxnLXB1bGwtNyAgeyBsZWZ0OiBwZXJjZW50YWdlKCg3IC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctcHVsbC04ICB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDggLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cbiAgICAgICAgLnZjX2NvbC1sZy1wdWxsLTkgIHsgbGVmdDogcGVyY2VudGFnZSgoOSAvICRncmlkLWNvbHVtbnMpKTsgcmlnaHQ6IGluaGVyaXQ7fVxuICAgICAgICAudmNfY29sLWxnLXB1bGwtMTAgeyBsZWZ0OiBwZXJjZW50YWdlKCgxMC8gJGdyaWQtY29sdW1ucykpOyByaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctcHVsbC0xMSB7IGxlZnQ6IHBlcmNlbnRhZ2UoKDExLyAkZ3JpZC1jb2x1bW5zKSk7IHJpZ2h0OiBpbmhlcml0O31cblxuICAgICAgICAvLyBPZmZzZXRzXG4gICAgICAgIC52Y19jb2wtbGctb2Zmc2V0LTAgIHsgbWFyZ2luLWxlZnQ6IDA7IG1hcmdpbi1yaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctb2Zmc2V0LTEgIHsgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKDEgLyAkZ3JpZC1jb2x1bW5zKSk7IG1hcmdpbi1yaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctb2Zmc2V0LTIgIHsgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKDIgLyAkZ3JpZC1jb2x1bW5zKSk7IG1hcmdpbi1yaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctb2Zmc2V0LTMgIHsgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKDMgLyAkZ3JpZC1jb2x1bW5zKSk7IG1hcmdpbi1yaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctb2Zmc2V0LTQgIHsgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKDQgLyAkZ3JpZC1jb2x1bW5zKSk7IG1hcmdpbi1yaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctb2Zmc2V0LTUgIHsgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKDUgLyAkZ3JpZC1jb2x1bW5zKSk7IG1hcmdpbi1yaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctb2Zmc2V0LTYgIHsgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKDYgLyAkZ3JpZC1jb2x1bW5zKSk7IG1hcmdpbi1yaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctb2Zmc2V0LTcgIHsgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKDcgLyAkZ3JpZC1jb2x1bW5zKSk7IG1hcmdpbi1yaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctb2Zmc2V0LTggIHsgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKDggLyAkZ3JpZC1jb2x1bW5zKSk7IG1hcmdpbi1yaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctb2Zmc2V0LTkgIHsgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKDkgLyAkZ3JpZC1jb2x1bW5zKSk7IG1hcmdpbi1yaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctb2Zmc2V0LTEwIHsgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKDEwLyAkZ3JpZC1jb2x1bW5zKSk7IG1hcmdpbi1yaWdodDogaW5oZXJpdDt9XG4gICAgICAgIC52Y19jb2wtbGctb2Zmc2V0LTExIHsgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKDExLyAkZ3JpZC1jb2x1bW5zKSk7IG1hcmdpbi1yaWdodDogaW5oZXJpdDt9XG4gICAgfVxufVxuXG5cbi8qKlxuICogVkMgaW50ZXJuYWwgRWxlbWVudHNcbiAqL1xuIC53cGJfY29sdW1ue1xuICB6LWluZGV4OiAyO1xuIH1cbi52Y19jb2wtaGFzLWZpbGx7XG4gICAgICB6LWluZGV4OiAxO1xufVxuLnZjX3JvdyB7XG4gICYudmNfcm93LW8tZnVsbC1oZWlnaHQge1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICB9XG5cbiAgLy8gZW5hYmxlIGZsZXhcbiAgJi52Y19yb3ctZmxleCAgLmNvbnRhaW5lciwuY29udGFpbmVyLWZ1bGwge1xuICAgIC5yb3dfbm9fcGFkZGluZywgLnJvd3tcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICAgICAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgXG4gICAgICA+IC52Y19jb2x1bW5fY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICA+IC52Y19jb2x1bW4taW5uZXIge1xuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xuICAgICAgICAtd2Via2l0LWZsZXgtZ3JvdzogMTtcbiAgICAgICAgLW1zLWZsZXgtcG9zaXRpdmU6IDE7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAgICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBAbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICAgICAvKiBJRTEwKyBzcGVjaWZpYyBzdHlsZXMgKi9cbiAgICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgfVxuXG4gICBcbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBjb2x1bW5zIGFsaWdubWVudFxuICAmLnZjX3Jvdy1vLWNvbHVtbnMtc3RyZXRjaCB7XG4gICAgLmNvbnRhaW5lciwuY29udGFpbmVyLWZ1bGwge1xuICAgICAgLnJvd19ub19wYWRkaW5nLCAucm93e1xuICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogc3RyZXRjaDtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IHN0cmV0Y2g7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaDtcbiAgfVxufVxuICB9XG4gICYudmNfcm93LW8tY29sdW1ucy10b3Age1xuICAgIC5jb250YWluZXIsLmNvbnRhaW5lci1mdWxsIHtcbiAgICAgIC5yb3dfbm9fcGFkZGluZywgLnJvd3tcbiAgICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgLW1zLWZsZXgtbGluZS1wYWNrOiBzdGFydDtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG59XG4gIH1cbiAgJi52Y19yb3ctby1jb2x1bW5zLWJvdHRvbSB7XG4gICAgLmNvbnRhaW5lciwuY29udGFpbmVyLWZ1bGwge1xuICAgICAgLnJvd19ub19wYWRkaW5nLCAucm93e1xuICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogZmxleC1lbmQ7XG4gICAgLW1zLWZsZXgtbGluZS1wYWNrOiBlbmQ7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQ7XG4gIH1cbn1cbiAgfVxuICAmLnZjX3Jvdy1vLWNvbHVtbnMtbWlkZGxlIHtcbiAgICAuY29udGFpbmVyLC5jb250YWluZXItZnVsbCB7XG4gICAgICAucm93X25vX3BhZGRpbmcsIC5yb3d7XG4gICAgICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgICAgICAtbXMtZmxleC1saW5lLXBhY2s6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLnZjX3Jvdy1vLWNvbHVtbnMtdG9wLFxuICAmLnZjX3Jvdy1vLWNvbHVtbnMtYm90dG9tLFxuICAmLnZjX3Jvdy1vLWNvbHVtbnMtbWlkZGxlIHtcbiAgICAuY29udGFpbmVyLC5jb250YWluZXItZnVsbCB7XG4gICAgICAucm93X25vX3BhZGRpbmcsIC5yb3d7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBlcXVhbCBoZWlnaHRcbiAgJi52Y19yb3ctby1lcXVhbC1oZWlnaHQge1xuICAgIC5jb250YWluZXIsLmNvbnRhaW5lci1mdWxsIHtcbiAgICAgIC5yb3dfbm9fcGFkZGluZywgLnJvd3tcbiAgICA+IC52Y19jb2x1bW5fY29udGFpbmVyIHtcbiAgICAgIC13ZWJraXQtYm94LWFsaWduOiBzdHJldGNoO1xuICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgIC1tcy1mbGV4LWFsaWduOiBzdHJldGNoO1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuICB9XG59XG4gIH1cblxuICAvLyBjb250ZW50IGFsaWdubWVudFxuICAmLnZjX3Jvdy1vLWNvbnRlbnQtdG9wIHtcbiAgICAuY29udGFpbmVyLC5jb250YWluZXItZnVsbCB7XG4gICAgICAucm93X25vX3BhZGRpbmcsIC5yb3d7XG4gICAgPiAudmNfY29sdW1uX2NvbnRhaW5lciB7XG4gICAgICA+IC52Y19jb2x1bW4taW5uZXIge1xuICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBzdGFydDtcbiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IHN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICAgfVxuICAgICY6bm90KC52Y19yb3ctby1lcXVhbC1oZWlnaHQpIHtcbiAgICAgIC5jb250YWluZXIsLmNvbnRhaW5lci1mdWxsIHtcbiAgICAgIC5yb3dfbm9fcGFkZGluZywgLnJvd3tcbiAgICAgID4gLnZjX2NvbHVtbl9jb250YWluZXIge1xuICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogc3RhcnQ7XG4gICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBzdGFydDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICAgfVxuICB9XG4gICYudmNfcm93LW8tY29udGVudC1ib3R0b20ge1xuICAgIC5jb250YWluZXIsLmNvbnRhaW5lci1mdWxsIHtcbiAgICAgIC5yb3dfbm9fcGFkZGluZywgLnJvd3tcbiAgICA+IC52Y19jb2x1bW5fY29udGFpbmVyIHtcbiAgICAgID4gLnZjX2NvbHVtbi1pbm5lciB7XG4gICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGVuZDtcbiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAtbXMtZmxleC1wYWNrOiBlbmQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICAgfVxuICAgICY6bm90KC52Y19yb3ctby1lcXVhbC1oZWlnaHQpIHtcbiAgICAgIC5jb250YWluZXIsLmNvbnRhaW5lci1mdWxsIHtcbiAgICAgIC5yb3dfbm9fcGFkZGluZywgLnJvd3tcbiAgICAgID4gLnZjX2NvbHVtbl9jb250YWluZXIge1xuICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogZW5kO1xuICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGVuZDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAgIH1cbiAgfVxuICAmLnZjX3Jvdy1vLWNvbnRlbnQtbWlkZGxlIHtcbiAgICAuY29udGFpbmVyLC5jb250YWluZXItZnVsbCB7XG4gICAgICAucm93X25vX3BhZGRpbmcsIC5yb3d7XG4gICAgICAgID4gLnZjX2NvbHVtbl9jb250YWluZXIge1xuICAgICAgICAgID4gLnZjX2NvbHVtbi1pbm5lciB7XG4gICAgICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gICAgICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICY6bm90KC52Y19yb3ctby1lcXVhbC1oZWlnaHQpIHtcbiAgICAgIC5jb250YWluZXIsLmNvbnRhaW5lci1mdWxsIHtcbiAgICAgIC5yb3dfbm9fcGFkZGluZywgLnJvd3tcbiAgICAgID4gLnZjX2NvbHVtbl9jb250YWluZXIge1xuICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICAgfVxuICB9XG59XG5cbi52Y19yb3cge1xuICAmLnZjX3Jvdy1mbGV4IHtcbiAgICAuY29udGFpbmVyLC5jb250YWluZXItZnVsbCB7XG4gICAgICAucm93X25vX3BhZGRpbmcsIC5yb3d7XG4gICAgPiAudmNfdmNfY29sdW1uLFxuICAgID4gLnZjX3ZjX2NvbHVtbl9pbm5lciB7XG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgPiAudmNfY29sdW1uX2NvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgPiAudmNfY29sdW1uLWlubmVyIHtcbiAgICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xuICAgICAgICAgIC13ZWJraXQtZmxleC1ncm93OiAxO1xuICAgICAgICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAxO1xuICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAgICAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG59XG5cbiAgLy8gZXF1YWwgaGVpZ2h0XG4gICYudmNfcm93LW8tZXF1YWwtaGVpZ2h0IHtcbiAgICAuY29udGFpbmVyLC5jb250YWluZXItZnVsbCB7XG4gICAgICAucm93X25vX3BhZGRpbmcsIC5yb3d7XG4gICAgPiAudmNfY29sdW1uX2NvbnRhaW5lciB7XG4gICAgICAtd2Via2l0LWJveC1hbGlnbjogc3RyZXRjaDtcbiAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAtbXMtZmxleC1hbGlnbjogc3RyZXRjaDtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cbiAgfVxufVxuICB9XG5cbiAgLy8gY29udGVudCBhbGlnbm1lbnRcbiAgJi52Y19yb3ctby1jb250ZW50LXRvcCB7XG4gICAgLmNvbnRhaW5lciwuY29udGFpbmVyLWZ1bGwge1xuICAgICAgLnJvd19ub19wYWRkaW5nLCAucm93e1xuICAgID4gLnZjX3ZjX2NvbHVtbixcbiAgICA+IC52Y192Y19jb2x1bW5faW5uZXIge1xuICAgICAgPiAudmNfY29sdW1uX2NvbnRhaW5lciB7XG4gICAgICAgID4gLnZjX2NvbHVtbi1pbm5lciB7XG4gICAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogc3RhcnQ7XG4gICAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgLW1zLWZsZXgtcGFjazogc3RhcnQ7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4gICAgJjpub3QoLnZjX3Jvdy1vLWVxdWFsLWhlaWdodCkge1xuICAgICAgLmNvbnRhaW5lciwuY29udGFpbmVyLWZ1bGwge1xuICAgICAgLnJvd19ub19wYWRkaW5nLCAucm93e1xuICAgICAgPiAudmNfdmNfY29sdW1uLFxuICAgICAgPiAudmNfdmNfY29sdW1uX2lubmVyIHtcbiAgICAgICAgPiAudmNfY29sdW1uX2NvbnRhaW5lciB7XG4gICAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0O1xuICAgICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG59XG59XG4gICAgfVxuICB9XG4gICYudmNfcm93LW8tY29udGVudC1ib3R0b20ge1xuICAgIC5jb250YWluZXIsLmNvbnRhaW5lci1mdWxsIHtcbiAgICAgIC5yb3dfbm9fcGFkZGluZywgLnJvd3tcbiAgICA+IC52Y192Y19jb2x1bW4sXG4gICAgPiAudmNfdmNfY29sdW1uX2lubmVyIHtcbiAgICAgID4gLnZjX2NvbHVtbl9jb250YWluZXIge1xuICAgICAgICA+IC52Y19jb2x1bW4taW5uZXIge1xuICAgICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGVuZDtcbiAgICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgLW1zLWZsZXgtcGFjazogZW5kO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiAgICAmOm5vdCgudmNfcm93LW8tZXF1YWwtaGVpZ2h0KSB7XG4gICAgICAuY29udGFpbmVyLC5jb250YWluZXItZnVsbCB7XG4gICAgICAucm93X25vX3BhZGRpbmcsIC5yb3d7XG4gICAgICA+IC52Y192Y19jb2x1bW4sXG4gICAgICA+IC52Y192Y19jb2x1bW5faW5uZXIge1xuICAgICAgICA+IC52Y19jb2x1bW5fY29udGFpbmVyIHtcbiAgICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogZW5kO1xuICAgICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBlbmQ7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLnZjX3Jvdy1vLWNvbnRlbnQtbWlkZGxlIHtcbiAgICA+IC52Y192Y19jb2x1bW4sXG4gICAgPiAudmNfdmNfY29sdW1uX2lubmVyIHtcbiAgICAgID4gLnZjX2NvbHVtbl9jb250YWluZXIge1xuICAgICAgICA+IC52Y19jb2x1bW4taW5uZXIge1xuICAgICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmOm5vdCgudmNfcm93LW8tZXF1YWwtaGVpZ2h0KSB7XG4gICAgICAuY29udGFpbmVyLC5jb250YWluZXItZnVsbCB7XG4gICAgICAucm93X25vX3BhZGRpbmcsIC5yb3d7XG4gICAgICA+IC52Y192Y19jb2x1bW4sXG4gICAgICA+IC52Y192Y19jb2x1bW5faW5uZXIge1xuICAgICAgICA+IC52Y19jb2x1bW5fY29udGFpbmVyIHtcbiAgICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiAvKipcbiAgKi9cbi5ub2JvcmRlcntcbiAgICAucGJyLWNhdGVnb3J5LWZpbHRlcntcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIH1cbn1cbi5wYnItY2F0ZWdvcnktZmlsdGVye1xuICAuY2F0ZWdvcnktZmlsdGVyLWxpbmt7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAmLmNhdGVnb3J5LWZpbHRlci1kZWZhdWx0e1xuICAgIGJhY2tncm91bmQ6ICMwMDAgbm9uZSByZXBlYXQgc2Nyb2xsIDAgMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbWF4LWhlaWdodDogMzYwcHg7XG4gICAgbWF4LXdpZHRoOiA5NjJweDtcbiAgICBtaW4td2lkdGg6IDMyMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHNtYWxse1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgLmltZ3tcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xMik7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zNXMgZWFzZSAwcywgdHJhbnNmb3JtIDAuMzVzIGVhc2UgMHM7XG4gICAgICB9XG4gICAgICBoNHtcbiAgICAgICAgdG9wOiAxMjBweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzVzIGVhc2UgMHM7XG4gICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgICAgZm9udC1zaXplOiA0OHB4O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNlY29uZDsgICAgICAgIFxuICAgICAgICBzcGFue1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmYgbm9uZSByZXBlYXQgc2Nyb2xsIDAgMDtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIG1hcmdpbjowIGF1dG87XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206MDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAxMHB4LCAwcHgpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjM1cyBlYXNlIDBzLCB0cmFuc2Zvcm0gMC4zNXMgZWFzZSAwcztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jYXRlZ29yeS1jYXB0aW9ue1xuICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgcGFkZGluZzogMmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzozZW07XG4gICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjQpO1xuICAgICAgICAgIGJvdHRvbTogMzBweDtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHJpZ2h0OiAzMHB4O1xuICAgICAgICAgIHRvcDogMzBweDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMzVzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjM1cyBlYXNlIDBzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY2F0ZWdvcnktZmlsdGVyLWNvbnRlbnR7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMjAwcHgsIDBweCk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zNXMgZWFzZSAwcywgdHJhbnNmb3JtIDAuMzVzIGVhc2UgMHM7XG4gICAgICB9XG4gICAgICAmOmhvdmVye1xuICAgICAgICBpbWd7XG4gICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgIH1cbiAgICAgICAgaDR7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIC01MHB4LCAwcHgpO1xuICAgICAgICAgIHNwYW57XG4gICAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMTVweCwgMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IFxuICAgICAgICB9XG4gICAgICAgIC5jYXRlZ29yeS1jYXB0aW9ue1xuICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jYXRlZ29yeS1maWx0ZXItY29udGVudHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAxMjBweCwgMHB4KTtcbiAgICAgICAgfVxuICAgICAgICAuY2F0ZWdvcnktZmlsdGVyLWxpc3R7XG4gICAgICAgICAgbGl7XG4gICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIC5jYXRlZ29yeS1maWx0ZXItbGlzdHtcbiAgICAgIGxpe1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5KGFsbCk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZHVyYXRpb24oMC4zNXMpO1xuICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDApO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJvdHRvbTogLTUwcHg7ICAgICAgIFxuICAgICAgICBheyAgXG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGxpOm50aC1jaGlsZCgxKXtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kZWxheSgwLjFzLCAwcyk7XG4gICAgICB9XG4gICAgICBsaTpudGgtY2hpbGQoMil7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZGVsYXkoMC4ycywgMHMpO1xuICAgICAgfVxuICAgICAgbGk6bnRoLWNoaWxkKDMpe1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWRlbGF5KDAuM3MsIDBzKTtcbiAgICAgIH1cbiAgICAgIGxpOm50aC1jaGlsZCg0KXtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kZWxheSgwLjRzLCAwcyk7XG4gICAgICB9XG4gICAgICBsaTpudGgtY2hpbGQoNSl7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZGVsYXkoMC41cywgMHMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmNhdGVnb3J5LWZpbHRlci12MXtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICY6YmVmb3Jle1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRib3JkZXItY29sb3I7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGhlaWdodDogOTVweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDI4JTtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgIH1cbiAgICAgIC5jYXRlZ29yeS1maWx0ZXItY29udGVudHsgICAgICAgICAgICAgIFxuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOjA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UgMHM7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBtaW4taGVpZ2h0OiAyMjhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7ICBcbiAgICAgICAgICB1bHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogODBweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCA0MDBtcyBlYXNlIDBzO1xuICAgICAgICAgIH0gIFxuICAgICAgfVxuICAgICAgLmZpbHRlci1oZWFke1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyAgICAgICAgXG4gICAgICB9XG4gICAgICBoNHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgfVxuICAgICAgLmNhdGVnb3J5LWltYWdle1xuICAgICAgICBtYXJnaW4tdG9wOiAxMDBweDtcbiAgICAgIH1cbiAgICAgIHNtYWxse1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIGJvdHRvbTogLTIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6aG92ZXJ7XG4gICAgICAgIC5jYXRlZ29yeS1maWx0ZXItY29udGVudHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmIG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7ICAgICAgICAgIFxuICAgICAgICAgIGJvcmRlci1jb2xvcjogIzAwMDtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIGF7XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgICAgICAgfVxuICAgICAgICAgIHVse1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRvcDogMTAwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIGg0e1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgfVxufVxuLndwYl9jb2x1bW57XG4gICAgJjpmaXJzdC1jaGlsZHtcbiAgICAgIC5wYnItY2F0ZWdvcnktZmlsdGVyLmNhdGVnb3J5LWZpbHRlci12MXtcbiAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgfVxufVxuICAvKipcbiAgICpcbiAgICovXG4ud2lkZ2V0LXRleHQtaGVhZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDQ1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIC5zdWJ0aXRsZXtcbiAgICAgIGxldHRlci1zcGFjaW5nOiA2cHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHBhZGRpbmc6IDVweCAwIDA7XG4gICAgICBjb2xvcjogIzk5OTtcbiAgfVxuICAud2lkZ2V0LWhlYWRpbmd7XG4gICAgICBmb250LXNpemU6IDYwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC00cHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICBcbiAgIH1cbiAgICAuZGVzY3JpcHRpb257XG4gICAgICAgIG1hcmdpbjogMjBweCAwOyBcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIH1cbiAgICAmLmhlYWRpbmctc3R5bGUxIHtcbiAgICAgICAgLndpZGdldC1oZWFkaW5ne1xuICAgICAgICAgICAgLmhlYWRpbmctdGV4dCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSwgJjphZnRlcntcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMTBweCwxMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDEwcHgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0yMHB4O1xuICAgICAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5oZWFkaW5nLXN0eWxlMiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgLndpZGdldC1oZWFkaW5ne1xuICAgICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0ycHg7XG4gICAgICAgICAgICAuaGVhZGluZy10ZXh0IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoNzBweCwgNzBweCk7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDQwcHgpO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTMwcHg7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBcbiAgICAgICAgLmRlc2NyaXB0aW9ue1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICAmLnRleHQtcmlnaHR7XG4gICAgICAgICAgICAud2lkZ2V0LWhlYWRpbmd7XG4gICAgICAgICAgICAuaGVhZGluZy10ZXh0IHtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0zMHB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLyoqXG4gKiBQcm9kdWN0IFRhYnMgV2lkZ2V0c1xuICovXG4ud2lkZ2V0LXByb2R1Y3RjYXRze1xuICAgIC53aWRnZXQtaGVhZGluZ3tcbiAgICAgICAgaDN7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMCAwO1xuICAgICAgICB9XG4gICAgICAgIC5zdWItY2F0ZWdvcmllc3tcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOjIwcHg7XG4gICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjODg4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogOTUlXG4gICAgICAgICAgICB9IFxuICAgICAgICB9XG4gICAgfVxufVxuXG4ud3BiX2ZsaWNrcl93aWRnZXQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC53cGJfd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gIH1cbiAgLndwYl9mbGlja3JfaGVhZGluZ3tcbiAgICBmb250LXNpemU6IDE4cHg7XG4gIH1cbiAgLmZsaWNrcl9iYWRnZV9pbWFnZSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMjBweCAxMHB4IDA7XG4gICAgQGluY2x1ZGUgc2l6ZSgxMjBweCwxMjBweCk7XG4gIH1cbiAgLmZsaWNrcl9zdHJlYW1fd3JhcCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLnZjX2dyaWQtaXRlbSB7XG4gIC52Y19zZXBhcmF0b3Ige1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnZjX2dyaWQtaXRlbS1taW5pIHtcbiAgICAudmNfZ2l0ZW0tem9uZSB7XG4gICAgICAudmNfZ2l0ZW0tem9uZS1taW5pIHtcbiAgICAgICAgLnZjX2dpdGVtX3JvdyAudmNfZ2l0ZW0tY29sIHtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHggMjBweDtcbiAgICAgICAgICAudmNfY3VzdG9tX2hlYWRpbmcge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGgxLGgyLGgzLGg0LGg1LGg2IHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAudmNfZ2l0ZW0tcG9zdC1kYXRhLXNvdXJjZS1wb3N0X2V4Y2VycHQge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogOTVweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgfVxuICAgICAgICAgIC52Y19idG4zLnZjX2J0bjMtc2l6ZS1tZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKipcbiAqIFN0eWxlcyBmb3IgcHJvZ3Jlc3MgYmFyXG4gKi9cblxuLnZjX3Byb2dyZXNzX2JhcntcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgLnZjX3NpbmdsZV9iYXJ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAudmNfYmFye1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwOyAgICBcbiAgICAgICAgaGVpZ2h0OiAyMHB4OyAgICAgIFxuICAgICAgfVxuICAgIC52Y19sYWJlbHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTI1cHg7ICBcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIC52Y19sYWJlbF91bml0c3tcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNvbG9yOiByZWQ7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB9ICAgIFxuICAgIH1cbiAgfVxufVxuXG4udmNfdHRhLWNvbnRhaW5lcntcbiAgaDJ7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblsjIFRvZ2dsZXNdXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi52Y190b2dnbGVfZGVmYXVsdHtcbiAgJi52Y190b2dnbGVfY29sb3JfZGVmYXVsdHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIC52Y190b2dnbGVfdGl0bGV7XG4gICAgICBwYWRkaW5nOiAxMHB4IDI1cHggIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgLnZjX3RvZ2dsZV90aXRsZXtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7ICAgIFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNGU0ZTQ7XG4gICAgY3Vyc29yOiBwb2ludGVyOyBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICAgIGg0e1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IFxuICAgIH1cbiAgfVxufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbnBici1vdXItdGVhbVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ucGJyLW91ci10ZWFte1xuICB1bC5saXN0LWlubGluZXtcbiAgICAgIGxpe1xuICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgICBhe1xuICAgICAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgIH1cbiAgfVxufVxuXG5cbi8qXG4gKiBTaW5nbGUgSW1hZ2UgXG4gKi9cbi53cGJfc2luZ2xlX2ltYWdle1xuICAgIFxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAud3BiX2hlYWRpbmd7XG4gICAgICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgcGFkZGluZzo0cHggNnB4O1xuICAgICAgICB0b3A6MTAlO1xuICAgICAgICBsZWZ0OjIwcHg7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBmb250LXNpemU6IDkwJTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgfVxuICAgIC5kZXNjcmlwdGlvbntcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6NDAlO1xuICAgICAgICBsZWZ0OjIwcHg7XG4gICAgICAgIG1heC13aWR0aDogOTAlO1xuICAgICAgICBzcGFue1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cbiAgICB9XG59IFxuLy9cbi52Y190dGEudmNfZ2VuZXJhbCB7XG4gIC52Y190dGEtcGFuZWwtdGl0bGV7XG4gICAgZm9udC1zaXplOiAxNHB4IWltcG9ydGFudDtcbiAgICA+IGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgXG4gICAgICAmOmJlZm9yZXtcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSg0MnB4LCAxMDAlKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB9XG5cbiAgICB9IFxuICAgICAmLnZjX3R0YS1jb250cm9scy1pY29uLXBvc2l0aW9uLXJpZ2h0e1xuICAgICAgID4gYSB7XG4gICAgICAgIHBhZGRpbmc6IDE0cHggNDJweCAxNHB4IDIwcHg7XG4gICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgIH1cbiAgICAgICAgIC52Y190dGEtY29udHJvbHMtaWNvbntcbiAgICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgfVxuICAgICAgIH1cbiAgICB9XG4gICAgJi52Y190dGEtY29udHJvbHMtaWNvbi1wb3NpdGlvbi1sZWZ0e1xuICAgICAgPiBhIHtcbiAgICAgICAgcGFkZGluZzogMTRweCAyMHB4MTRweCA0MnB4O1xuICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgIH1cbiAgICAgICAgIC52Y190dGEtY29udHJvbHMtaWNvbntcbiAgICAgICAgICAgbGVmdDogMThweDtcbiAgICAgICAgIH1cbiAgICAgICB9XG4gICAgfVxuICB9XG4gIC52Y190dGEtY29udHJvbHMtaWNvbntcbiAgICBAaW5jbHVkZSBzaXplKDhweCwgOHB4KTtcbiAgICAmOmJlZm9yZSwgJjphZnRlcntcbiAgICAgIGJvcmRlci1jb2xvcjogI2ZmZiFpbXBvcnRhbnQ7IFxuICAgIH1cbiAgfVxuICAudmNfYWN0aXZlIHtcbiAgICAgIC52Y190dGEtcGFuZWwtdGl0bGV7XG4gICAgICA+IGEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy9nb29nbGVtYXBcbi53cGJfZ21hcHNfd2lkZ2V0IC53cGJfd3JhcHBlciB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLy92Y190dGEtcGFuZWxzXG4udmNfZ2VuZXJhbHtcbiAgLnZjX3R0YS1wYW5lbHN7IFxuICAgIC52Y190dGEtcGFuZWx7XG4gICAgICAudmNfdHRhLXBhbmVsLWJvZHkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmIWltcG9ydGFudDtcbiAgICAgICAgLnZjX3RvZ2dsZV90aXRsZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiFpbXBvcnRhbnQ7XG4gICAgICAgICAgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi52Y190dGEtdGFicyB7XG4gICAgLnZjX3R0YS10YWJzLWNvbnRhaW5lciB7XG4gICAgICAudmNfdHRhLXRhYnMtbGlzdHsgXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgLnZjX3R0YS10YWJ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgICR0aGVtZS1jb2xvciAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYudmNfYWN0aXZle1xuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICAkdGhlbWUtY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBDdXN0b20gSGVhZGluZyAqL1xuLnZjX2N1c3RvbV9oZWFkaW5ne1xuICAgIGEge1xuICAgICAgICBsaW5lLWhlaWdodDogNTRweDtcbiAgICAgICAgcGFkZGluZzogIDAgMjBweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbiAgICAmLmxpbmt7XG4gICAgICBhe1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcGFkZGluZzogMjVweCAwIDA7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3IhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogM3B4O1xuICAgICAgICBmb250LXNpemU6IDYwMCFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbn1cblxuXG5cbi8qIGltYWdlX2dyaWQqL1xuLnBici1mb290ZXJ7XG4gICAgLndwYl9pbWFnZV9ncmlkeyBcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAud3BiX2ltYWdlX2dyaWRfdWx7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGxpe1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhib3g7XG4gICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGxlZnQ6MCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzMlIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBpbWFnZV9ncmlkKi9cbi53cGJfaW1hZ2VfZ3JpZCAud3BiX2ltYWdlX2dyaWRfdWx7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgICAgQGluY2x1ZGUgZmxleGJveDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgfVxuICAgIGxpe1xuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgIGxlZnQ6MCAhaW1wb3J0YW50O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAhaW1wb3J0YW50O1xuICAgICAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCUhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAxNXB4IWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBpbWd7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMC44NSk7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGltZ3tcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XHJcbiAgLmNvbC1sZy1jdXMtNSB7XHJcbiAgICB3aWR0aDogMjAlO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLWd1dHRlci13aWR0aCAvIDI7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbGcpIHtcclxuICAuY29sLW1kLWN1cy01IHtcclxuICAgIHdpZHRoOiAyMCU7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHBhZGRpbmctbGVmdDogJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICRncmlkLWd1dHRlci13aWR0aCAvIDI7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XHJcbiAgLmNvbC14cy1jdXMtMTIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLWd1dHRlci13aWR0aCAvIDI7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xyXG4gIH1cclxufVxyXG5cclxuLypcclxuICogT2ZmIENhbnZhc1xyXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gKi9cclxuXHJcbi5zaWRlYmFyLW9mZmNhbnZhcyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICB3aWR0aDogNTAlO1xyXG4gICAgei1pbmRleDogOTk5O1xyXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgNXB4IHJnYmEoMCwgMCwgMCwgMC41KSk7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgbGVmdDogLTUwJTtcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuM3MgZWFzZS1vdXQpO1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5idG4tb2ZmY2FudmFzIHtcclxuICAgICY6aG92ZXJ7XHJcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgIH1cclxufVxyXG5cclxuLm9mZmNhbnZhcy1oZWFkIHtcclxuICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgcGFkZGluZzogMTRweCAyNXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ucm93LW9mZmNhbnZhcyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjI1cyBlYXNlLW91dCk7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgIH1cclxufVxyXG5cclxuLm9mZmNhbnZhcy1zaG93cmlnaHQge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgkdGhlbWUtY29sb3IsMC44KTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuMjVzIGVhc2Utb3V0KTtcclxuICAgIHdpZHRoOiA0MDBweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAtODAwcHg7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwYWRkaW5nOiA1MHB4IDA7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICB9XHJcbiAgICAuc2hvd3JpZ2h0e1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBAaW5jbHVkZSBzaXplKDQwcHgsNDBweCk7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogNTBweDtcclxuICAgICAgICAuZmF7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcbiAgICAucm93LW9mZmNhbnZhcy1yaWdodCB7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICB9XHJcbiAgICAucm93LW9mZmNhbnZhcy1sZWZ0IHtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgfVxyXG4gICAgLnJvdy1vZmZjYW52YXMtcmlnaHRcclxuICAgIC5zaWRlYmFyLW9mZmNhbnZhcyB7XHJcbiAgICAgICAgcmlnaHQ6IC01MCU7XHJcbiAgICB9XHJcbiAgICAucm93LW9mZmNhbnZhcy1yaWdodC5hY3RpdmUge1xyXG4gICAgICAgIHJpZ2h0OiA1MCU7XHJcbiAgICB9XHJcbiAgICAucm93LW9mZmNhbnZhcy1sZWZ0LmFjdGl2ZSB7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgIH1cclxufSBcclxuXHJcbi5uYXZiYXItb2ZmY2FudmFze1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgdWwjbWFpbi1tZW51LW9mZmNhbnZhc3tcclxuICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICA+IGxpe1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgICAgIC5jYXJldHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgXHJcbiAgICAgICAgICAgICAgICByaWdodDogMTBweDtcclxuICAgICAgICAgICAgICAgIHRvcDogMTBweDtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMjVweCwgMjVweCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogOTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmNWY1ZjU7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA5O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHVse1xyXG5cclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweCAxNXB4O1xyXG4gICAgICAgICAgICAgICAgbGkgYXtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNXB4OyAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBsaS5hY3RpdmUgPiBhe1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1waG9uZSkge1xyXG4gICAgLmFjdGl2ZS1tb2JpbGV7XHJcbiAgICAgICAgJi5jYXJ0LXBvcHVwe1xyXG4gICAgICAgICAgICAuYWN0aXZlLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IC0xMDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIlxyXG5ib2R5e1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjBlZDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skaW1hZ2UtdGhlbWUtcGF0aCB9YmctYm9keS5qcGcnKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBub25lO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcclxufVxyXG4jcGFnZSB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1tYXgpe1xyXG4gICAgICAgIG1heC13aWR0aDogMTQwMHB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgIH1cclxuICAgIC5wYnItdG9wYmFyIHtcclxuICAgIFx0YmFja2dyb3VuZC1jb2xvcjogIzQyMjAwYTtcclxuICAgIFx0LmNvbnRhaW5lcntcclxuICAgIFx0XHR3aWR0aDogMTAwJTtcclxuICAgIFx0fVxyXG4gICAgfVxyXG59XHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCl7XHJcbiAgICAjcGJyLW1hc3RoZWFkLmhlYWRlci1hYnNvbHV0ZXtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG4gICAgfVxyXG59XHJcbiNwYnItbWFzdGhlYWQucGJyLWhlYWRlci1kZWZhdWx0IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG59XHJcblxyXG4ubmF2YmFyLW1lZ2EtbGlnaHR7XHJcbiAgICAubmF2YmFyLW1lZ2EgLm5hdmJhci1uYXYgPiBsaSA+IGEsIC5uYXZiYXItbWVnYSAubmF2YmFyLW5hdiA+IGxpID4gYSAuY2FyZXQge1xyXG4gICAgICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbn1cclxuLnBici1mb290ZXJ7XHJcbiAgICBjb2xvcjogI2NjYztcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skaW1hZ2UtdGhlbWUtcGF0aCB9YmctZm9vdGVyLWNvZmVlbWFrZXIuanBnJyk7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm9uZTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XHJcbiAgICAucGJyLWNvcHlyaWdodHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIH1cclxufVxyXG5cclxuLndpZGdldF9yZWNlbnRfZW50cmllc3tcclxuICAgIC53aWRnZXR0aXRsZXtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDBweDtcclxuICAgIH1cclxuICAgIHVsIGxpIHtcclxuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoI2ZmZiwgMC4xKTtcclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgY29sb3I6ICNjY2M7XHJcbiAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICNjY2M7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ud3BiX3dpZGdldGlzZWRfY29sdW1uIHtcclxuICAgIC53cGJfd2lkZ2V0aXNlZF9jb2x1bW5faGVhZGluZ3tcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgIH1cclxuICAgIC53aWRnZXRfbWM0d3BfZm9ybV93aWRnZXQgLmZvcm0tc3R5bGUtMSA+IHAge1xyXG4gICAgICAgIC5idG4tZGVmYXVsdCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNlZGVkZWQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucGJyLWNvcHlyaWdodHtcclxuICAgIGNvbG9yOiAjY2NjO1xyXG4gICAgYXtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBRWRGOzs7O0dBSUc7QUNvRUgsNkNBQTZDO0FnQ3hFN0MsNEVBQTRFO0FBUTVFLEFBQUEsSUFBSSxDQUFDO0VBQ0gsV0FBVyxFQUFFLFVBQVU7RUFDdkIsb0JBQW9CLEVBQUUsSUFBSTtFQUMxQix3QkFBd0IsRUFBRSxJQUFJLEdBQy9COztBQU1ELEFBQUEsSUFBSSxDQUFDO0VBQ0gsTUFBTSxFQUFFLENBQUMsR0FDVjs7QUFZRCxBQUFBLE9BQU87QUFDUCxBQUFBLEtBQUs7QUFDTCxBQUFBLE9BQU87QUFDUCxBQUFBLFVBQVU7QUFDVixBQUFBLE1BQU07QUFDTixBQUFBLE1BQU07QUFDTixBQUFBLE1BQU07QUFDTixBQUFBLE1BQU07QUFDTixBQUFBLElBQUk7QUFDSixBQUFBLElBQUk7QUFDSixBQUFBLEdBQUc7QUFDSCxBQUFBLE9BQU87QUFDUCxBQUFBLE9BQU8sQ0FBQztFQUNOLE9BQU8sRUFBRSxLQUFLLEdBQ2Y7O0FBT0QsQUFBQSxLQUFLO0FBQ0wsQUFBQSxNQUFNO0FBQ04sQUFBQSxRQUFRO0FBQ1IsQUFBQSxLQUFLLENB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VjRCLE9BQU87RVh1VnhDLGdCQUFnQixFV3ZWMEIsV0FBVztFWHdWckQsWUFBWSxFV3hWNEMsT0FBTyxHQUNoRTtFQUZELEFYMlZFLGtCVzNWZ0IsQVgyVmxCLE1BQVMsRVczVlQsQVg0VkUsa0JXNVZnQixBWDRWbEIsTUFBUyxFVzVWVCxBWDZWRSxrQlc3VmdCLEFYNlZsQixPQUFVLEVXN1ZWLEFYOFZFLGtCVzlWZ0IsQVg4VmxCLE9BQVUsQ0FBQztJQUNQLEtBQUssRVc5VjBELE9BQU87SVgrVnRFLGdCQUFnQixFdkVoZFMsT0FBTztJdUVpZDVCLFlBQVksRXZFamRTLE9BQU8sR3VFa2RqQztFQUNELEFBQU0sS0FBRCxDV25XUCxrQkFBa0IsQVhtV1IsZ0JBQW1CLENBQUM7SUFDMUIsS0FBSyxFV25XMEQsT0FBTztJWG9XdEUsZ0JBQWdCLEV2RXJkUyxPQUFPO0l1RXNkNUIsWUFBWSxFdkV0ZFMsT0FBTyxHdUV1ZGpDO0VXdldILEFYd1dFLGtCV3hXZ0IsQVh3V2xCLE9BQVUsRVd4V1YsQVh5V0Usa0JXeldnQixBWHlXbEIsT0FBVSxDQUFDO0lBQ1AsZ0JBQWdCLEVBQUUsSUFBSSxHQUN2QjtFQUNELEFBQU0sS0FBRCxDVzVXUCxrQkFBa0IsQVg0V1IsZ0JBQW1CLENBQUM7SUFDMUIsZ0JBQWdCLEVBQUUsSUFBSSxHQUN2QjtFVzlXSCxBWGtYSSxrQldsWGMsQVgrV2hCLFNBQVUsRVcvV1osQVhtWEksa0JXblhjLEFYK1doQixTQUFVLEFBSWhCLE1BQWUsRVduWFgsQVhvWEksa0JXcFhjLEFYK1doQixTQUFVLEFBS2hCLE1BQWUsRVdwWFgsQVhxWEksa0JXclhjLEFYK1doQixTQUFVLEFBTWhCLE9BQWdCLEVXclhaLEFYc1hJLGtCV3RYYyxBWCtXaEIsU0FBVSxBQU9oQixPQUFnQixFV3RYWixBWGtYSSxrQldsWGMsQ1hnWGhCLEFBQUEsUUFBRSxBQUFBLEdXaFhKLEFYbVhJLGtCV25YYyxDWGdYaEIsQUFBQSxRQUFFLEFBQUEsQ0FHUixNQUFlLEVXblhYLEFYb1hJLGtCV3BYYyxDWGdYaEIsQUFB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 */
