@charset "UTF-8";
/*
Theme Name: jets
Theme URI: https://wpopal.org/themes/jets/
Author: WPOPAL 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: jets

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.
*/
/*------------------------------------------------------------------
[Table of contents]
1. Utilities
2. Base
3. Layout
4. Page
5. Post
6. Form
7. Responsive
8. Widget

-------------------------------------------------------------------*/
/*!
 * 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: #ffffff;
  overflow-x: hidden; }

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

a {
  color: #000000;
  text-decoration: none; }
  a:hover, a:focus {
    color: #f25b22;
    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: 6px; }

.img-thumbnail {
  padding: 4px;
  line-height: 1.62857;
  background-color: #ffffff;
  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 #cccccc; }

.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: "Fjalla One";
  font-weight: 400;
  line-height: 1.1;
  color: #000000;
  text-transform: uppercase; }
  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: #666666; }

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: 36px; }

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

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

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

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: #666666; }

.text-primary {
  color: #f25b22; }

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

.text-success {
  color: #58be50; }

a.text-success:hover,
a.text-success:focus {
  color: #43a03b; }

.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: #f25b22 !important; }

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

.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: #e93434 !important; }

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

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

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; }
    .list-inline > li:last-child {
      padding-right: 0; }

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 #666666; }

.initialism {
  font-size: 90%; }

blockquote {
  padding: 20px 60px;
  margin: 50px 0;
  font-size: 24px;
  border-left: 2px solid #f25b22;
  color: #000;
  line-height: 40px; }
  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: #666666; }
    blockquote footer:before,
    blockquote small:before,
    blockquote .small:before {
      content: '\2014 \00A0'; }

.blockquote-reverse,
blockquote.pull-right {
  padding-right: 15px;
  padding-left: 0;
  border-right: 5px solid #cccccc;
  border-left: 0;
  text-align: right; }
  .blockquote-reverse footer:before,
  .blockquote-reverse small:before,
  .blockquote-reverse .small:before,
  blockquote.pull-right footer:before,
  blockquote.pull-right small:before,
  blockquote.pull-right .small:before {
    content: ''; }
  .blockquote-reverse footer:after,
  .blockquote-reverse small:after,
  .blockquote-reverse .small:after,
  blockquote.pull-right footer:after,
  blockquote.pull-right small:after,
  blockquote.pull-right .small:after {
    content: '\00A0 \2014'; }

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

code,
kbd,
pre,
samp {
  font-family: "Fjalla One", 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: 3px;
  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: #2f2f2f;
  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; }

.row .first-child {
  clear: both; }

.container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px; }
  .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;
  padding-left: 15px;
  padding-right: 15px; }
  .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, .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, .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 {
    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: #666666;
  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: #ffffff; }

.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: #e93434; }

.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: #e71d1d; }

.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: #2f2f2f;
  border: 0;
  border-bottom: 1px solid #e5e5e5; }

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

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: 11px;
  font-size: 14px;
  line-height: 1.62857;
  color: #666666; }

.form-control {
  display: block;
  width: 100%;
  height: 54px;
  padding: 5px 20px;
  font-size: 14px;
  line-height: 1.62857;
  color: #666666;
  background-color: #f9f9f9;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 0px;
  /*   @include box-shadow(inset 0 1px 1px rgba(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: #f25b22;
    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: #cccccc;
    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: 54px; }
  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: 56px; } }

.form-group, .form-row {
  margin-bottom: 15px; }

.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: 11px;
  padding-bottom: 11px;
  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 20px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

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 20px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

.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 20px;
  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: 56px;
  padding: 15px 30px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px; }

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: 56px;
  line-height: 56px; }

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: 56px;
  padding: 15px 30px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px; }

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

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

.form-group-lg .form-control-static {
  height: 56px;
  min-height: 40px;
  padding: 16px 30px;
  font-size: 18px;
  line-height: 1.33333; }

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

.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: 54px;
  height: 54px;
  line-height: 54px;
  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: 56px;
  height: 56px;
  line-height: 56px; }

.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: #58be50; }

.has-success .form-control {
  border-color: #58be50;
  -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: #43a03b;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #9fda9a;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #9fda9a; }

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

.has-success .form-control-feedback {
  color: #58be50; }

.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: #e93434; }

.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, .form-inline .form-row {
    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: 11px; }

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

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

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

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

@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 21.0px;
    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: 700;
  text-align: center;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  text-transform: uppercase;
  padding: 10px 25px;
  font-size: 13px;
  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: #f25b22;
    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: #000;
  border-color: #000; }
  .btn-default:focus, .btn-default.focus {
    color: #fff;
    background-color: black;
    border-color: black; }
  .btn-default:hover {
    color: #fff;
    background-color: black;
    border-color: black; }
  .btn-default:active, .btn-default.active,
  .open > .btn-default.dropdown-toggle {
    color: #fff;
    background-color: black;
    border-color: black; }
    .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: black;
      border-color: black; }
  .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: #000;
    border-color: #000; }
  .btn-default .badge {
    color: #000;
    background-color: #fff; }

.btn-primary {
  color: #fff;
  background-color: #f25b22;
  border-color: #ed4b0e; }
  .btn-primary:focus, .btn-primary.focus {
    color: #fff;
    background-color: #d5430d;
    border-color: #742507; }
  .btn-primary:hover {
    color: #fff;
    background-color: #d5430d;
    border-color: #b3390b; }
  .btn-primary:active, .btn-primary.active,
  .open > .btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #d5430d;
    border-color: #b3390b; }
    .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: #b3390b;
      border-color: #742507; }
  .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: #f25b22;
    border-color: #ed4b0e; }
  .btn-primary .badge {
    color: #f25b22;
    background-color: #fff; }

.btn-success {
  color: #fff;
  background-color: #58be50;
  border-color: #4ab242; }
  .btn-success:focus, .btn-success.focus {
    color: #fff;
    background-color: #43a03b;
    border-color: #245520; }
  .btn-success:hover {
    color: #fff;
    background-color: #43a03b;
    border-color: #388632; }
  .btn-success:active, .btn-success.active,
  .open > .btn-success.dropdown-toggle {
    color: #fff;
    background-color: #43a03b;
    border-color: #388632; }
    .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: #388632;
      border-color: #245520; }
  .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: #58be50;
    border-color: #4ab242; }
  .btn-success .badge {
    color: #58be50;
    background-color: #fff; }

.btn-info {
  color: #fff;
  background-color: #549dde;
  border-color: #3f91da; }
  .btn-info:focus, .btn-info.focus {
    color: #fff;
    background-color: #2985d6;
    border-color: #195080; }
  .btn-info:hover {
    color: #fff;
    background-color: #2985d6;
    border-color: #2372b8; }
  .btn-info:active, .btn-info.active,
  .open > .btn-info.dropdown-toggle {
    color: #fff;
    background-color: #2985d6;
    border-color: #2372b8; }
    .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: #2372b8;
      border-color: #195080; }
  .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: #549dde;
    border-color: #3f91da; }
  .btn-info .badge {
    color: #549dde;
    background-color: #fff; }

.btn-warning {
  color: #fff;
  background-color: #ffca00;
  border-color: #e6b600; }
  .btn-warning:focus, .btn-warning.focus {
    color: #fff;
    background-color: #cca200;
    border-color: #665100; }
  .btn-warning:hover {
    color: #fff;
    background-color: #cca200;
    border-color: #a88500; }
  .btn-warning:active, .btn-warning.active,
  .open > .btn-warning.dropdown-toggle {
    color: #fff;
    background-color: #cca200;
    border-color: #a88500; }
    .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: #a88500;
      border-color: #665100; }
  .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: #ffca00;
    border-color: #e6b600; }
  .btn-warning .badge {
    color: #ffca00;
    background-color: #fff; }

.btn-danger {
  color: #fff;
  background-color: #e56363;
  border-color: #e14d4d; }
  .btn-danger:focus, .btn-danger.focus {
    color: #fff;
    background-color: #de3737;
    border-color: #961919; }
  .btn-danger:hover {
    color: #fff;
    background-color: #de3737;
    border-color: #cf2222; }
  .btn-danger:active, .btn-danger.active,
  .open > .btn-danger.dropdown-toggle {
    color: #fff;
    background-color: #de3737;
    border-color: #cf2222; }
    .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: #cf2222;
      border-color: #961919; }
  .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: #e56363;
    border-color: #e14d4d; }
  .btn-danger .badge {
    color: #e56363;
    background-color: #fff; }

.btn-link {
  color: #000000;
  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: #f25b22;
    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: #666666;
    text-decoration: none; }

.btn-lg, .btn-group-lg > .btn {
  padding: 15px 30px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 0px; }

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

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

.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: 205px;
  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 {
    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: #2f2f2f;
    white-space: nowrap; }

.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
  text-decoration: none;
  color: #222222;
  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: #f25b22; }

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

.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: #666666;
  white-space: nowrap; }

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

.pull-right > .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: 10px 25px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  color: #666666;
  text-align: center;
  background-color: #f25b22;
  border: 1px solid transparent;
  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 20px;
    font-size: 12px;
    border-radius: 3px; }
  .input-group-addon.input-lg,
  .input-group-lg > .input-group-addon,
  .input-group-lg > .input-group-btn > .input-group-addon.btn {
    padding: 15px 30px;
    font-size: 18px;
    border-radius: 6px; }
  .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: #666666; }
      .nav > li.disabled > a:hover, .nav > li.disabled > a:focus {
        color: #666666;
        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: #000000; }
  .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;
      font-weight: 600;
      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: #f25b22;
      background-color: transparent;
      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: #f25b22; }

.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: #ffffff; } }

.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: 0;
  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, .navbar-form .form-row {
      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, .navbar-form .form-row {
      margin-bottom: 5px; }
      .navbar-form .form-group:last-child, .navbar-form .form-row: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: #8c8c8c; }
    .navbar-inverse .navbar-brand:hover, .navbar-inverse .navbar-brand:focus {
      color: #fff;
      background-color: transparent; }
  .navbar-inverse .navbar-text {
    color: #8c8c8c; }
  .navbar-inverse .navbar-nav > li > a {
    color: #8c8c8c; }
    .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: #8c8c8c; }
      .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: #8c8c8c; }
    .navbar-inverse .navbar-link:hover {
      color: #fff; }
  .navbar-inverse .btn-link {
    color: #8c8c8c; }
    .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: 0 0;
  margin-bottom: 22px;
  list-style: none;
  background-color: transparent;
  /* border-radius: $border-radius-base; */ }
  .breadcrumb > li {
    display: inline-block; }
    .breadcrumb > li + li:before {
      content: "> ";
      padding: 0 5px;
      color: #cccccc; }
  .breadcrumb > .active {
    color: #f25b22; }

.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: 10px 25px;
      line-height: 1.62857;
      text-decoration: none;
      color: #000000;
      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: #f25b22;
    background-color: #cccccc;
    border-color: #ddd; }
  .pagination > li > a.current,
  .pagination > li > span.current {
    color: #f25b22; }
  .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: #f25b22;
    border-color: #f25b22;
    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: #666666;
    background-color: #fff;
    border-color: #ddd;
    cursor: not-allowed; }

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

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

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

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

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

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

.label {
  display: inline;
  padding: .2em .6em .3em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  color: white;
  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: #ffca00;
  text-decoration: none;
  cursor: pointer; }

.label-default {
  background-color: #000000; }
  .label-default[href]:hover, .label-default[href]:focus {
    background-color: black; }

.label-primary {
  background-color: #f25b22; }
  .label-primary[href]:hover, .label-primary[href]:focus {
    background-color: #d5430d; }

.label-success {
  background-color: #58be50; }
  .label-success[href]:hover, .label-success[href]:focus {
    background-color: #43a03b; }

.label-info {
  background-color: #549dde; }
  .label-info[href]:hover, .label-info[href]:focus {
    background-color: #2985d6; }

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

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

.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: #666666;
  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: #000000;
    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 {
  padding: 15px;
  margin-bottom: 22px;
  border: 1px solid transparent;
  border-radius: 0px; }
  .alert h4 {
    margin-top: 0;
    color: inherit; }
  .alert .alert-link {
    font-weight: bold; }
  .alert > p,
  .alert > ul {
    margin-bottom: 0; }
  .alert > 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 {
  background-color: #dff0d8;
  border-color: #d6e9c6;
  color: #58be50; }
  .alert-success hr {
    border-top-color: #c9e2b3; }
  .alert-success .alert-link {
    color: #43a03b; }

.alert-info {
  background-color: #d9edf7;
  border-color: #bce8f1;
  color: #31708f; }
  .alert-info hr {
    border-top-color: #a6e1ec; }
  .alert-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 {
  background-color: #e93434;
  border-color: #e71d3f;
  color: #a94442; }
  .alert-danger hr {
    border-top-color: #d31736; }
  .alert-danger .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: #f25b22;
  -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: #58be50; }
  .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: #549dde; }
  .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: #ffca00; }
  .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: #e56363; }
  .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-body {
  width: 10000px; }

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

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

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

.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: #cccccc;
  color: #666666;
  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: #666666; }

.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus {
  z-index: 2;
  color: #fff;
  background-color: #f25b22;
  border-color: #f25b22; }
  .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: #fdeae3; }

.list-group-item-success {
  color: #58be50;
  background-color: #dff0d8; }

a.list-group-item-success,
button.list-group-item-success {
  color: #58be50; }
  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: #58be50;
    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: #58be50;
    border-color: #58be50; }

.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: #e93434; }

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: #e71d1d; }
  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: #2f2f2f;
    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: #2f2f2f; }
  .panel-default > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #ededed; }

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

.panel-success {
  border-color: #d6e9c6; }
  .panel-success > .panel-heading {
    color: #58be50;
    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: #58be50; }
  .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: #e71d3f; }
  .panel-danger > .panel-heading {
    color: #a94442;
    background-color: #e93434;
    border-color: #e71d3f; }
    .panel-danger > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #e71d3f; }
    .panel-danger > .panel-heading .badge {
      color: #e93434;
      background-color: #a94442; }
  .panel-danger > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #e71d3f; }

.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: 0 solid #999;
  border: 0 solid #f25b22;
  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 30px;
  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: 30px; }

.modal-footer {
  padding: 30px;
  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: 768px) {
  .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 (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: 35px;
  height: 35px;
  opacity: 0.5;
  filter: alpha(opacity=50);
  -webkit-box-shadow: 0 0 0 1px #f25b22 inset;
  box-shadow: 0 0 0 1px #f25b22 inset;
  font-size: 11px;
  color: #000;
  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; }
  .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 #f25b22 inset;
    box-shadow: 0 0 0 30px #f25b22 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 #f25b22;
    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 {
  float: right !important;
  margin-left: 0 !important; }

.pull-left {
  float: left !important;
  margin-right: 0 !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 **************/
/* 1. Utilities */
/**
 * Import component variables
 */
/** elements mixins **/
/**
* Transition-timing-function property@mixin 
*/
/*background RGBA
============================================*/
/*inline-block
============================================*/
/****/
/****/
/****/
@keyframes spinAround {
  from {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg); } }

/* Hien thi cho Safari and Chrome */
@-webkit-keyframes spinAround {
  from {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg); } }

/* Hien thi cho Firefox */
@-moz-keyframes spinAround {
  from {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg); } }

/* Hien thi cho Opera */
@-o-keyframes spinAround {
  from {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg); } }

/** elements mixins **/
/**
* Transition-timing-function property@mixin 
*/
/*background RGBA
============================================*/
/*inline-block
============================================*/
/****/
/****/
/* 2. Base */
/*!
 * Bootstrap v3.3.5 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
img {
  max-width: 100%;
  height: auto; }

.sticky {
  border: 1px solid #e4e7ea;
  background-color: #fafafa;
  padding: 20px; }
  .sticky .entry-content {
    border: none !important;
    padding: 0 !important; }

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

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

.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 {
  max-width: 100%;
  margin-bottom: 20px;
  text-align: center;
  padding-top: 20px; }

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

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

.wp-caption.alignnone {
  display: inline-block; }

.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; }

.wp-caption .wp-caption-text,
.entry-caption,
.gallery-caption {
  color: #000000;
  font-size: 18px;
  font-style: italic;
  font-weight: 300;
  margin: 0 0 24px; }

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

.lists li {
  margin-bottom: 5px;
  list-style: none;
  display: flex; }
  .lists li a {
    color: #666; }
    .lists li a:hover {
      color: #58be50;
      text-decoration: none; }
  .lists li i {
    /*       color: $bo-list-color;   */
    margin-right: 10px;
    position: relative;
    top: 2px; }
    .rtl .lists li i {
      margin-left: 10px;
      margin-right: inherit; }

.lists.lists-light li, .lists.lists-light li a, .lists.lists-light li i {
  color: #FFFFFF; }

.lists.lists-light li a:hover {
  color: #58be50; }

.lists.list-style-circle, .lists.list-style-disc {
  list-style: none;
  padding-left: 20px; }
  .lists.list-style-circle li, .lists.list-style-disc li {
    position: relative; }
    .lists.list-style-circle li:before, .lists.list-style-disc li:before {
      color: #666;
      font-family: 'FontAwesome';
      font-size: 10px;
      left: -20px;
      position: absolute;
      top: 4px; }
  .lists.list-style-circle.lists-light li:before, .lists.list-style-disc.lists-light li:before {
    color: #FFFFFF; }

.lists.list-style-circle li:before {
  content: "\f10c"; }

.lists.list-style-disc li:before {
  content: "\f111"; }

.lists.list-style-square {
  list-style: none;
  padding-left: 20px; }
  .lists.list-style-square li {
    position: relative; }
    .lists.list-style-square li:before {
      content: "";
      top: 10px;
      left: -15px;
      position: absolute;
      width: 4px;
      height: 4px;
      background-color: #666; }
  .lists.list-style-square.lists-light li:before {
    background-color: #FFFFFF; }

.lists.list-style-number {
  counter-reset: li;
  list-style: outside none decimal;
  padding-left: 20px; }
  .lists.list-style-number li {
    display: block;
    padding-left: 5px; }
    .lists.list-style-number li:before {
      color: #666;
      content: counter(li, decimal);
      counter-increment: li;
      left: 20px;
      position: absolute; }
  .lists.list-style-number.lists-light li:before {
    color: #FFFFFF; }

/**
 * 4.0 Elements
 */
hr {
  background-color: #eaeaea;
  background-color: rgba(51, 51, 51, 0.1);
  border: 0;
  height: 1px;
  margin-bottom: 1.6em; }

dl {
  margin-bottom: 1.6em; }

dt {
  font-weight: bold; }

dd {
  margin-bottom: 1.6em; }

table,
th,
td {
  border: 1px solid #eaeaea;
  border: 1px solid rgba(51, 51, 51, 0.1); }

table {
  border-collapse: separate;
  border-spacing: 0;
  border-width: 1px 0 0 1px;
  margin: 0 0 1.6em;
  width: 100%; }

caption,
th,
td {
  font-weight: normal;
  text-align: left; }

th {
  border-width: 0 1px 1px 0;
  font-weight: 700; }

td {
  border-width: 0 1px 1px 0; }

th, td {
  padding: 0.4em; }

img {
  -ms-interpolation-mode: bicubic;
  border: 0;
  height: auto;
  max-width: 100%;
  vertical-align: middle; }

figure {
  margin: 0; }

del {
  opacity: 0.8; }

input {
  border: 1px solid #e4e7ea;
  font-size: 14px;
  line-height: 1.714;
  padding: 12px 15px; }
  input[type="radio"], input[type="checkbox"] {
    height: auto; }

.post-password-form input[type="submit"] {
  background-color: #222;
  padding-left: 25px;
  padding-right: 25px;
  color: #fff; }
  .post-password-form input[type="submit"]:hover {
    background-color: #000; }

/* 3. Layout */
body {
  overflow-x: hidden;
  -ms-word-wrap: break-word;
  word-wrap: break-word; }
  body.home .opal-footer, body.page .opal-footer {
    margin-top: 0; }

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

#main .container-fluid {
  padding-left: 0;
  padding-right: 0; }

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

/**
 * Page Style
 */
#page {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden; }
  #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; }
      .rtl #page.page-static-left.active {
        margin-right: 250px;
        margin-left: inherit; }
      #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; }
        .rtl #page.page-static-left.active .sidebar-static-left {
          right: 0;
          left: auto; }
  #page.active .button-action:before {
    content: "\f060"; }

.sidebar-static-left {
  background: #282828;
  color: #CCC;
  position: fixed;
  left: -290px;
  height: 100%;
  position: fixed;
  width: 300px;
  z-index: 99999;
  -webkit-transition: all 0.25s ease-out;
  -o-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out; }
  .rtl .sidebar-static-left {
    right: -290px;
    left: auto; }
  .sidebar-static-left .inner {
    padding: 30px;
    width: 100%;
    position: absolute;
    height: 100%; }
  .sidebar-static-left .button-action {
    background: red;
    position: absolute;
    right: -40px;
    top: 0;
    height: 40px;
    color: #CCC; }
    .sidebar-static-left .button-action:before {
      content: "\f061";
      font-size: 12px;
      height: 38px;
      width: 38px;
      font-family: 'FontAwesome';
      text-align: center;
      display: block;
      line-height: 34px; }

/**
 * Topbar layout styles
 */
.opal-topbar {
  text-transform: none;
  font-size: 12px;
  padding: 12px 0;
  background: #3b3b3b;
  color: #999999; }
  .opal-topbar .list-inline {
    margin: 0;
    padding: 0; }
    .opal-topbar .list-inline li a {
      color: #999999; }
      .opal-topbar .list-inline li a:hover {
        color: #f25b22;
        background: none; }
    .opal-topbar .list-inline li i {
      background: none !important;
      color: white;
      margin: 0 5px; }
      .opal-topbar .list-inline li i:hover {
        color: #f25b22; }
  .opal-topbar .social li span {
    display: none; }

.email-header {
  padding: 0 35px;
  position: relative; }
  .email-header:after {
    content: "";
    position: absolute;
    top: -12px;
    right: 5px;
    width: 1px;
    height: 43px;
    background: #2f2f2f; }
    .rtl .email-header:after {
      left: 5px;
      right: auto; }
  .email-header a {
    color: #999999; }
  .email-header span:before {
    color: white; }

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

.search-category .btn-search input {
  background: transparent;
  border: none;
  outline: none; }

.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: #ed4b0e !important;
    cursor: pointer; }
    .active-mobile:hover .active-content {
      display: block;
      opacity: 1;
      visibility: visible;
      left: 0;
      right: auto; }
      .rtl .active-mobile:hover .active-content {
        right: 0;
        left: auto; }
      .rtl .active-mobile:hover .active-content {
        left: auto;
        right: auto; }
  .active-mobile .active-content {
    position: absolute;
    top: 100%;
    z-index: 99999;
    color: #FFF;
    padding: 20px;
    background-color: #f8f6f0;
    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; }
    .rtl .active-mobile .active-content {
      right: -10000px;
      left: auto; }
    .rtl .active-mobile .active-content {
      left: 0;
      right: auto; }
    .rtl .active-mobile .active-content {
      text-align: right; }
    .active-mobile .active-content p.total {
      color: #555555; }
    .active-mobile .active-content .cart_list {
      color: #666666; }
  .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 */
    height: 42px; }
  .active-mobile .input-group-btn {
    line-height: 32px;
    background: #f25b22; }
  .active-mobile .btn-search {
    padding: 0; }
    .active-mobile .btn-search .fa {
      color: #FFF;
      border: none;
      font-size: 16px;
      background-color: transparent; }
  .active-mobile .widget_shopping_cart_content .btn {
    padding: 8px 15px; }

.search-category {
  border: solid 2px #f25b22; }
  .search-category .search-category-container {
    background: #FFFFFF;
    border: none;
    border-radius: 0px 0px 0px 0px;
    min-width: auto;
    font-weight: normal;
    position: relative;
    font-size: 12px;
    padding: 2px 10px 2px 10px !important; }
    .search-category .search-category-container input {
      background: transparent;
      border-color: #f25b22;
      color: #000; }
    .search-category .search-category-container:after {
      content: " ";
      width: 1px;
      height: 100%;
      position: absolute;
      top: 0;
      right: 0;
      background: #CCC; }
    .search-category .search-category-container 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-category .search-category-input {
    background-color: #fff;
    border: none;
    font-size: 12px; }
  .search-category .btn-search {
    padding: 0; }
    .search-category .btn-search:hover {
      -webkit-box-shadow: none;
      box-shadow: none; }

/**
 * Header Layout styles
 */
#opal-masthead {
  position: relative; }
  #opal-masthead .header-main {
    padding: 30px 0;
    background: #2f2f2f; }
  #opal-masthead .header-right {
    padding-top: 22px;
    display: inline-block; }
  #opal-masthead.header-absolute {
    position: absolute;
    width: 100%;
    z-index: 9999; }
    #opal-masthead.header-absolute .header-main {
      background: transparent;
      padding: 25px 0;
      border-width: 0 0 1px 0;
      border-style: solid;
      border-color: rgba(255, 255, 255, 0.2); }
    #opal-masthead.header-absolute .navbar-mega .navbar-nav > li {
      padding: 15px 30px; }
    #opal-masthead.header-absolute .opal-header-right {
      padding-top: 12px; }
    #opal-masthead.header-absolute .cart-icon i {
      color: white; }
    #opal-masthead.header-absolute .box-user > a {
      color: white; }
      #opal-masthead.header-absolute .box-user > a:hover {
        color: #f25b22; }
    #opal-masthead.header-absolute .has-sticky.keeptop {
      background: #2f2f2f; }
  #opal-masthead.header-v2 .header-main {
    background: white;
    padding: 25px 0; }
  #opal-masthead.header-v2 .navbar-mega .navbar-nav > li {
    padding: 15px 27px; }
    @media (min-width: 992px) and (max-width: 1200px) {
      #opal-masthead.header-v2 .navbar-mega .navbar-nav > li {
        padding: 15px 18px; } }
  #opal-masthead.header-v2 .text-call {
    color: #cccccc;
    font-weight: 600; }
    #opal-masthead.header-v2 .text-call span {
      font-weight: normal;
      color: #999999; }
  #opal-masthead.header-v2 .header-right {
    padding-top: 14px; }
  #opal-masthead.header-v3 .opal-topbar {
    background: #f7f7f7; }
    #opal-masthead.header-v3 .opal-topbar .list-inline li i {
      color: #666666; }
  #opal-masthead.header-v3 .header-main {
    background: white; }
  #opal-masthead.header-v3 .opal-mainmenu {
    background: #2f2f2f; }
  #opal-masthead.header-v3 .box-top .box-service-top {
    border-left: 1px solid #e4e7ea;
    padding-left: 20px;
    padding-right: 20px; }
    #opal-masthead.header-v3 .box-top .box-service-top span {
      color: #666666; }
    #opal-masthead.header-v3 .box-top .box-service-top:last-child {
      padding-left: 0;
      border-left: 0;
      padding-top: 0;
      padding-right: 0; }
    #opal-masthead.header-v3 .box-top .box-service-top:first-child {
      padding-left: 0;
      border-left: 0; }
    #opal-masthead.header-v3 .box-top .box-service-top p {
      font-size: 14px; }
  #opal-masthead.header-v3 .email-header span:before {
    color: #666666; }
  #opal-masthead.header-v3 .email-header:after {
    background: #e3e3e3; }
  #opal-masthead.header-v3 .box-user i, #opal-masthead.header-v3 .search-box-wrapper i {
    color: white; }
  #opal-masthead.header-v3 .cart-icon i {
    color: white; }

/**
 * Search block layout and styles
 */
.box-user span {
  cursor: pointer;
  color: #000; }
  .box-user span:hover {
    color: #f25b22;
    -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; }

.box-user .dropdown-menu {
  left: -15px;
  right: auto;
  top: 180%;
  margin: -1px 0 0;
  border-radius: 0;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: all 300ms ease-in-out 0s;
  -o-transition: all 300ms ease-in-out 0s;
  transition: all 300ms ease-in-out 0s;
  border: medium none;
  display: block;
  margin-top: 0;
  min-width: 150px;
  padding: 10px;
  position: absolute;
  visibility: hidden;
  z-index: 999; }
  .rtl .box-user .dropdown-menu {
    right: -15px;
    left: auto; }
  .rtl .box-user .dropdown-menu {
    left: auto;
    right: auto; }
  .box-user .dropdown-menu img {
    display: none; }
  .box-user .dropdown-menu li {
    padding: 3px 20px; }
    .box-user .dropdown-menu li a {
      padding: 0; }
      .box-user .dropdown-menu li a:hover {
        background: transparent;
        color: #f25b22; }

.box-user:hover .dropdown-menu {
  visibility: visible;
  opacity: 1;
  filter: alpha(opacity=100);
  top: 160%; }

.search-box-wrapper .search-focus {
  padding: 0 10px; }

.search-box-wrapper i {
  font-size: 14px; }

.search-box .input-group-addon {
  background: #FFFFFF;
  border: none;
  border-radius: 0px 0px 0px 0px;
  min-width: auto;
  font-weight: normal;
  position: relative;
  font-size: 12px;
  padding: 2px 10px 2px 10px !important; }
  .search-box .input-group-addon input {
    background: transparent;
    border-color: #f25b22;
    color: #000; }

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

.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 {
  margin-top: 15px;
  background: #f7f7f7;
  border: 1px solid #e4e7ea; }
  .search-box.search-box-simple .input-group-addon {
    background: transparent;
    text-align: right;
    font-size: 14px;
    min-width: 20px; }
    .rtl .search-box.search-box-simple .input-group-addon {
      text-align: left; }
    .search-box.search-box-simple .input-group-addon:after {
      content: none; }
  .search-box.search-box-simple input {
    color: #000000; }

.search-box.search-box-light .input-group {
  border-radius: 6px;
  background: #FFFFFF;
  border: 2px solid #ebebeb; }

.toggle-overlay-container {
  z-index: 10;
  background: #FFFFFF; }
  .toggle-overlay-container .search-box .input-group {
    border: solid 2px #f25b22; }
    .toggle-overlay-container .search-box .input-group .form-control {
      height: 50px; }
  .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
 */
/**
 * Main menu styles
 */
.opal-mainmenu {
  background: transparent;
  position: relative; }

/**
 * Breadscrumb content style
 */
#opal-breadscrumb {
  color: #cccccc;
  position: relative;
  font-weight: 300;
  margin-bottom: 50px;
  background-image: url("../images/bg-breadcrum.jpg");
  background-position: center center;
  background-repeat: no-repeat; }
  @media (min-width: 991px) {
    #opal-breadscrumb {
      padding: 80px 0;
      text-align: right; }
      .rtl #opal-breadscrumb {
        text-align: left; } }
  @media (max-width: 991px) {
    #opal-breadscrumb {
      padding: 40px 0;
      height: auto;
      text-align: center; } }
  #opal-breadscrumb .breadcrumb {
    margin: 0;
    position: relative; }
    #opal-breadscrumb .breadcrumb > * {
      color: #cccccc; }
      #opal-breadscrumb .breadcrumb > *:after {
        padding: 0 10px;
        color: #dadada;
        content: ">";
        font-size: 14px;
        display: inline-block;
        vertical-align: middle; }
      #opal-breadscrumb .breadcrumb > *:last-child {
        /*                 color: white; */ }
        #opal-breadscrumb .breadcrumb > *:last-child:after {
          content: none; }
    #opal-breadscrumb .breadcrumb a {
      color: white; }
    #opal-breadscrumb .breadcrumb > li + li:before {
      content: none; }
    @media (min-width: 992px) {
      #opal-breadscrumb .breadcrumb h2 {
        display: block;
        content: "";
        color: white;
        position: absolute;
        margin: 0;
        top: -15px;
        font-size: 50px; }
        #opal-breadscrumb .breadcrumb h2:after {
          content: none; } }
  #opal-breadscrumb + .container {
    padding-bottom: 100px; }

/**
 * Footer layout styles
 */
.opal-footer {
  color: #999999; }
  .opal-footer .footer-top {
    padding-top: 30px;
    padding-bottom: 15px;
    background: #3b3b3b url("../images/bg-newsletter.jpg") no-repeat top right; }
  .opal-footer .footer-bottom {
    color: #999999;
    background: url("../images/bg-footer.jpg") no-repeat center center;
    background-size: cover;
    padding-top: 100px;
    padding-bottom: 100px; }
  .opal-footer .kc_single_image {
    text-align: center;
    margin-top: 40px; }
  .opal-footer .widget a {
    color: #999999; }
    .opal-footer .widget a:hover {
      color: #f25b22; }

/*------------------------------------*    Copyright
\*------------------------------------*/
.opal-copyright {
  font-size: 14px;
  padding-top: 40px;
  padding-bottom: 40px;
  text-align: center;
  border-color: rgba(255, 255, 255, 0.1);
  border-style: solid;
  border-width: 1px 0 0 0;
  background: #2f2f2f; }
  .opal-copyright .widget .widget-title, .opal-copyright .widget .widgettitle {
    color: #000;
    text-transform: none;
    margin: 0 0 25px;
    /* 3 */
    /* 3 */
    /* 4 */
    /* 6 */
    /* 6 */
    /* 7 */
    font-size: 18px;
    /* 9 */
    font-size: 1.8rem;
    /* 9 */ }
  .opal-copyright a {
    color: #f25b22; }
    .opal-copyright a:hover, .opal-copyright a:focus, .opal-copyright a:active {
      text-decoration: underline; }

.has-sticky {
  position: static;
  top: -50px; }
  .has-sticky.keeptop {
    position: fixed;
    top: 0;
    -webkit-transition: all 0.6s ease 0s;
    -o-transition: all 0.6s ease 0s;
    transition: all 0.6s ease 0s;
    width: 100%;
    background: #FFF;
    z-index: 1050; }

/* block */
.widget {
  margin-bottom: 30px;
  position: relative;
  /* block styles */ }
  .widget .widget-title, .widget .widgettitle {
    font-size: 18px;
    position: relative;
    margin-top: 0;
    padding-left: 15px; }
    .rtl .widget .widget-title, .rtl .widget .widgettitle {
      padding-right: 15px;
      padding-left: inherit; }
    .widget .widget-title:before, .widget .widgettitle:before {
      content: "";
      position: absolute;
      left: 0;
      width: 5px;
      height: 15px;
      background: #f25b22;
      top: 0; }
      .rtl .widget .widget-title:before, .rtl .widget .widgettitle:before {
        right: 0;
        left: auto; }
  .widget.nopadding .widget-content {
    padding: 0;
    margin: 0; }
  .widget.widget_revslider {
    margin: 0; }

/**
 * Styling Css for widgets in Sidebar Left Static
 */
.widget-static .widget-title, .widget-static .widgettitle {
  color: #FFFFFF; }

.widget-static ul li {
  border: none; }

/* 
.sidebar{
    .widget{
        .widget-title,.widgettitle{
        }
        ul.product_list_widget{
            padding: 10px 0;
        }
    }
}
 */
/**
 * Styling Css for widgets in footer layout
 */
.opal-footer {
  font-weight: 300; }
  .opal-footer .widget .widget-title, .opal-footer .widget .widgettitle {
    color: #FFF;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 40px;
    padding-left: 0; }
    .rtl .opal-footer .widget .widget-title, .rtl .opal-footer .widget .widgettitle {
      padding-right: 0;
      padding-left: inherit; }
    .opal-footer .widget .widget-title:before, .opal-footer .widget .widgettitle:before {
      content: none; }
  .opal-footer strong {
    color: #fff;
    font-weight: 300;
    margin-right: 5px; }
    .rtl .opal-footer strong {
      margin-left: 5px;
      margin-right: inherit; }
  .opal-footer ul li {
    border: none !important;
    padding: 3px 0; }
  .opal-footer .widget_recent_entries a {
    color: white; }
    .opal-footer .widget_recent_entries a:hover {
      color: #f25b22; }
  .opal-footer .widget_calendar caption {
    color: white; }
  .opal-footer .opal-footer-profile .widget {
    margin-bottom: 0; }

.service-grid_v2 [class^="col-"], .service-grid_v2 [class*="col-"] {
  padding: 0; }

.service-grid_v2 .opal_service.page {
  margin-bottom: 0;
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 402px; }
  .service-grid_v2 .opal_service.page .service-number {
    display: none; }
  .service-grid_v2 .opal_service.page .service-box-image {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center center;
    position: absolute;
    margin: 0;
    z-index: -1;
    transform: translateZ(0) scale(1.15, 1.15);
    transition: 400ms ease;
    -webkit-backface-visibility: hidden; }
    .service-grid_v2 .opal_service.page .service-box-image img {
      min-height: 100%; }
  .service-grid_v2 .opal_service.page .entry-content {
    margin-bottom: 0;
    position: absolute;
    top: 80%;
    left: 40px;
    right: 40px;
    -webkit-transition-duration: 0.8s;
    transition-duration: 0.8s;
    -webkit-transition-timing-function: cubic-bezier(1, -0.53, 0.405, 1.425);
    transition-timing-function: cubic-bezier(1, -0.53, 0.405, 1.425);
    -webkit-transition-timing-function: ease;
    transition-timing-function: ease;
    color: white; }
    @media screen and (max-width: 992px) {
      .service-grid_v2 .opal_service.page .entry-content {
        top: 70%; } }
    .service-grid_v2 .opal_service.page .entry-content .title {
      font-size: 20px;
      text-transform: uppercase;
      color: white;
      background: transparent;
      text-align: left;
      -webkit-transition-timing-function: ease;
      transition-timing-function: ease; }
      .rtl .service-grid_v2 .opal_service.page .entry-content .title {
        text-align: right; }
    .service-grid_v2 .opal_service.page .entry-content a {
      color: white;
      z-index: 1;
      position: relative; }
    .service-grid_v2 .opal_service.page .entry-content .service-description {
      opacity: 0;
      -webkit-transition-timing-function: ease;
      transition-timing-function: ease;
      margin-bottom: 20px; }
    .service-grid_v2 .opal_service.page .entry-content .service-learnmore {
      background: #f25b22;
      padding: 10px 30px;
      display: inline-block;
      opacity: 0;
      -webkit-transition-timing-function: ease;
      transition-timing-function: ease; }
      .service-grid_v2 .opal_service.page .entry-content .service-learnmore a:hover {
        color: white; }
        .service-grid_v2 .opal_service.page .entry-content .service-learnmore a:hover i {
          color: white; }
      .service-grid_v2 .opal_service.page .entry-content .service-learnmore a i {
        color: white; }
      .service-grid_v2 .opal_service.page .entry-content .service-learnmore:hover {
        background: #ed4b0e; }
  .service-grid_v2 .opal_service.page:before {
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    background: rgba(0, 0, 0, 0.7);
    opacity: 0;
    transition: 400ms ease; }
  .service-grid_v2 .opal_service.page:after {
    width: 100%;
    height: 70%;
    content: "";
    position: absolute;
    bottom: 0;
    background: -moz-linear-gradient(top, transparent, rgba(0, 0, 0, 0.7) 80%);
    background: -webkit-linear-gradient(top, transparent, rgba(0, 0, 0, 0.7) 80%);
    background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.7) 80%); }

.service-grid_v2 .opal_service:hover:before {
  opacity: 1; }

.service-grid_v2 .opal_service:hover .service-box-image {
  transform: translateZ(0) scale(1, 1);
  -webkit-transform: translateZ(0) scale(1, 1); }

.service-grid_v2 .opal_service:hover .entry-content {
  top: 50px;
  z-index: 2; }
  .service-grid_v2 .opal_service:hover .entry-content .title:after {
    content: none; }
  .service-grid_v2 .opal_service:hover .entry-content .service-description {
    opacity: 1; }
    @media screen and (max-width: 992px) {
      .service-grid_v2 .opal_service:hover .entry-content .service-description {
        display: none; } }
  .service-grid_v2 .opal_service:hover .entry-content .service-learnmore {
    opacity: 1; }

.opal_service .service-detail {
  margin: 0 -15px; }

.opal_service .box-heading {
  margin-bottom: 20px;
  border-bottom: 1px solid #e4e7ea;
  padding-bottom: 20px; }

.opal_service .service-description ul {
  margin: 30px 0; }
  .opal_service .service-description ul li {
    font-weight: 400; }

.opal_service .service-categories {
  margin-bottom: 30px; }

.opal_service .service-box-image {
  position: relative;
  overflow: hidden; }
  .opal_service .service-box-image img {
    -webkit-transition: all 0.35s ease 0s;
    -o-transition: all 0.35s ease 0s;
    transition: all 0.35s ease 0s; }

.opal_service.page {
  margin-bottom: 40px; }
  .opal_service.page .service-number {
    display: none; }
  .opal_service.page .service-description {
    font-weight: 300; }
  .opal_service.page .service-box-image img {
    min-width: 100%; }
  .opal_service.page .entry-content .title {
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    position: relative;
    padding-left: 15px;
    margin-top: 20px;
    margin-bottom: 20px;
    font-size: 14px;
    padding-top: 3px; }
    .rtl .opal_service.page .entry-content .title {
      padding-right: 15px;
      padding-left: inherit; }
    .opal_service.page .entry-content .title:before {
      content: "";
      top: 0;
      left: 0;
      background: #f25b22;
      width: 2px;
      height: 20px;
      position: absolute;
      z-index: 1; }
      .rtl .opal_service.page .entry-content .title:before {
        right: 0;
        left: auto; }
  .opal_service.page .entry-content .service-learnmore {
    display: none; }

.entry-content-carousel {
  background: white;
  padding: 30px;
  border: 1px solid #e4e7ea; }
  .entry-content-carousel .title {
    margin-top: 0;
    font-size: 14px;
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    position: relative;
    padding-top: 3px; }
    .entry-content-carousel .title:before {
      content: "";
      top: 0;
      left: -30px;
      background: #f25b22;
      width: 2px;
      height: 20px;
      position: absolute; }
      .rtl .entry-content-carousel .title:before {
        right: -30px;
        left: auto; }
  .entry-content-carousel .service-description-carousel {
    height: 80px;
    overflow: hidden;
    line-height: 25px;
    font-weight: 300; }
  .entry-content-carousel .service-learnmore {
    margin-top: 20px; }
    .entry-content-carousel .service-learnmore a {
      font-size: 12px;
      font-weight: 600;
      position: relative;
      text-transform: uppercase; }
      .entry-content-carousel .service-learnmore a:hover {
        color: #f25b22; }
      .entry-content-carousel .service-learnmore a i {
        padding: 0 8px; }

.widget-service {
  margin-bottom: 0; }

.service-wrapper {
  position: relative;
  overflow: hidden;
  border: 1px solid #e4e7ea;
  margin-bottom: 30px;
  text-align: center;
  background: #fdfdfd; }
  .service-wrapper:before {
    background: rgba(0, 0, 0, 0.4);
    position: absolute;
    width: 0;
    height: 100%;
    left: 0;
    top: 0;
    content: "";
    z-index: 1; }
  .service-wrapper .service-description {
    padding: 30px; }
  .service-wrapper .service-box-icon {
    margin: 40px 0;
    min-width: 50px;
    min-height: 50px;
    line-height: 50px; }
  .service-wrapper h4 {
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    font-size: 14px; }
  .service-wrapper .service-readmore {
    background: #f25b22;
    padding: 15px 0;
    opacity: 0;
    visibility: hidden;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 600; }
    .service-wrapper .service-readmore a {
      color: white; }
      .service-wrapper .service-readmore a:hover {
        color: white; }
    .service-wrapper .service-readmore i {
      color: white !important;
      padding: 0 8px; }
  .service-wrapper .service-box-image {
    background-color: rgba(255, 231, 179, 0.3);
    -webkit-transition: all 0.5s linear;
    -moz-transition: all 0.5s linear;
    -o-transition: all 0.5s linear;
    -ms-transition: all 0.5s linear;
    transition: all 0.5s linear;
    -ms-filter: "progid: DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
    opacity: 0;
    position: absolute;
    overflow: hidden;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .service-wrapper .entry-content {
    -webkit-transition: all 0.7s ease-in-out;
    -moz-transition: all 0.7s ease-in-out;
    -o-transition: all 0.7s ease-in-out;
    -ms-transition: all 0.7s ease-in-out;
    transition: all 0.7s ease-in-out;
    display: block;
    position: relative;
    margin-bottom: 0;
    z-index: 2; }
  .service-wrapper:hover:before {
    width: 100%;
    visibility: visible;
    left: 0; }
  .service-wrapper:hover .entry-content {
    color: white; }
    .service-wrapper:hover .entry-content a {
      color: white; }
  .service-wrapper:hover .service-box-image {
    -ms-filter: "progid: DXImageTransform.Microsoft.Alpha(Opacity=100)";
    filter: alpha(opacity=100);
    opacity: 1; }
  .service-wrapper:hover .service-readmore {
    opacity: 1;
    visibility: visible;
    -webkit-transition: all .25s ease;
    -moz-transition: all .25s ease;
    -ms-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease; }

.requestquote-form .requestquote-header {
  color: white; }
  .requestquote-form .requestquote-header i {
    font-size: 40px;
    vertical-align: text-top; }

.requestquote-form label {
  background: white;
  padding: 0 10px; }

.requestquote-form .requestquote-title h3 {
  margin-top: 0;
  color: white; }

.requestquote-form .requestquote-description {
  font-size: 12px;
  font-weight: 300; }

.requestquote-form .requestquote-content-form .bedroom-filter {
  display: none; }

.requestquote-form .requestquote-content-form .fleft {
  position: relative; }
  .requestquote-form .requestquote-content-form .fleft:after {
    font-family: "FontAwesome";
    top: 15px;
    right: 15px;
    color: white;
    content: "";
    position: absolute; }
    .rtl .requestquote-form .requestquote-content-form .fleft:after {
      left: 15px;
      right: auto; }
  .requestquote-form .requestquote-content-form .fleft.movingfrom:after, .requestquote-form .requestquote-content-form .fleft.movingto:after {
    content: "\f041"; }
  .requestquote-form .requestquote-content-form .fleft.movingon:after {
    content: "\f274"; }
  .requestquote-form .requestquote-content-form .fleft.requestquote_type:after {
    content: "\f107";
    background: #434343;
    width: 25px;
    right: 0; }
    .rtl .requestquote-form .requestquote-content-form .fleft.requestquote_type:after {
      left: 0;
      right: auto; }
  .requestquote-form .requestquote-content-form .fleft button {
    background: #f25b22;
    color: white;
    height: 48px; }
  .requestquote-form .requestquote-content-form .fleft .form-control {
    height: 48px; }
  .requestquote-form .requestquote-content-form .fleft select:last-child {
    margin-top: 10px; }

.requestquote-form .requestquote-content-form input, .requestquote-form .requestquote-content-form .form-control {
  background: #434343;
  border: none;
  font-size: 12px;
  font-weight: 300;
  height: 48px;
  color: #999999; }

.requestquote-form .requestquote-content-form ::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  opacity: 1; }

.requestquote-form .requestquote-content-form ::-moz-placeholder {
  /* Firefox 19+ */
  opacity: 1; }

.requestquote-form .requestquote-content-form :-ms-input-placeholder {
  /* IE 10+ */
  opacity: 1; }

.requestquote-form .requestquote-content-form :-moz-placeholder {
  /* Firefox 18- */
  opacity: 1; }

.requestquote-form.layout1 {
  background: #2f2f2f; }
  .requestquote-form.layout1 .requestquote-header {
    background: #f25b22;
    padding: 37px 30px; }
    .requestquote-form.layout1 .requestquote-header .requestquote-content {
      display: inline-block;
      margin-left: 0;
      margin-top: 10px; }
      .rtl .requestquote-form.layout1 .requestquote-header .requestquote-content {
        margin-right: 0;
        margin-left: inherit; }
      @media (min-width: 1200px) {
        .requestquote-form.layout1 .requestquote-header .requestquote-content {
          margin-left: 20px; }
          .rtl .requestquote-form.layout1 .requestquote-header .requestquote-content {
            margin-right: 20px;
            margin-left: inherit; } }
  .requestquote-form.layout1 .requestquote-content-form {
    padding: 40px;
    color: #999999;
    font-size: 12px;
    font-weight: 300; }
    .requestquote-form.layout1 .requestquote-content-form .fleft {
      width: 100%;
      margin-bottom: 10px; }
      .requestquote-form.layout1 .requestquote-content-form .fleft button {
        height: 60px;
        margin-top: 10px; }
    .requestquote-form.layout1 .requestquote-content-form input, .requestquote-form.layout1 .requestquote-content-form .form-control {
      width: 100%; }

.requestquote-form.layout2 {
  padding: 60px 0 30px 0; }
  .requestquote-form.layout2 .requestquote-content {
    position: relative;
    margin-right: 60px; }
    .rtl .requestquote-form.layout2 .requestquote-content {
      margin-left: 60px;
      margin-right: inherit; }
    .requestquote-form.layout2 .requestquote-content:after {
      content: "";
      height: 48px;
      width: 4px;
      background: #f25b22;
      top: 0;
      right: -30px;
      position: absolute; }
      .rtl .requestquote-form.layout2 .requestquote-content:after {
        left: -30px;
        right: auto; }
  .requestquote-form.layout2 .requestquote-header i {
    margin-right: 20px; }
    .rtl .requestquote-form.layout2 .requestquote-header i {
      margin-left: 20px;
      margin-right: inherit; }
  .requestquote-form.layout2 .requestquote-content-form .fleft {
    width: 100%;
    margin-bottom: 10px; }
    @media (min-width: 992px) and (max-width: 1200px) {
      .requestquote-form.layout2 .requestquote-content-form .fleft {
        width: 160px;
        margin-bottom: 0; } }
    @media (min-width: 1200px) {
      .requestquote-form.layout2 .requestquote-content-form .fleft {
        width: 168px;
        margin-bottom: 0; } }
    .requestquote-form.layout2 .requestquote-content-form .fleft select:last-child {
      margin-top: 0; }
    .requestquote-form.layout2 .requestquote-content-form .fleft:after {
      right: 25px; }
      .rtl .requestquote-form.layout2 .requestquote-content-form .fleft:after {
        left: 25px;
        right: auto; }
      @media (min-width: 768px) and (max-width: 991px) {
        .requestquote-form.layout2 .requestquote-content-form .fleft:after {
          right: 12px; }
          .rtl .requestquote-form.layout2 .requestquote-content-form .fleft:after {
            left: 12px;
            right: auto; } }
    .requestquote-form.layout2 .requestquote-content-form .fleft.requestquote_type:after {
      right: 10px; }
      .rtl .requestquote-form.layout2 .requestquote-content-form .fleft.requestquote_type:after {
        left: 10px;
        right: auto; }
      @media (max-width: 480px) {
        .requestquote-form.layout2 .requestquote-content-form .fleft.requestquote_type:after {
          right: 16px; }
          .rtl .requestquote-form.layout2 .requestquote-content-form .fleft.requestquote_type:after {
            left: 16px;
            right: auto; } }
      @media (min-width: 768px) and (max-width: 991px) {
        .requestquote-form.layout2 .requestquote-content-form .fleft.requestquote_type:after {
          right: 6px; }
          .rtl .requestquote-form.layout2 .requestquote-content-form .fleft.requestquote_type:after {
            left: 6px;
            right: auto; } }
  .requestquote-form.layout2 .requestquote-content-form input, .requestquote-form.layout2 .requestquote-content-form .form-control {
    width: 95%; }
    @media (min-width: 768px) and (max-width: 991px) {
      .requestquote-form.layout2 .requestquote-content-form input, .requestquote-form.layout2 .requestquote-content-form .form-control {
        width: 100%; } }

.requestquote-form.layout3 {
  padding: 60px 30px;
  background: #2f2f2f;
  display: flex; }
  @media (min-width: 992px) and (max-width: 1200px) {
    .requestquote-form.layout3 {
      background: rgba(47, 47, 47, 0.9);
      padding: 60px 25px; } }
  @media (min-width: 1200px) {
    .requestquote-form.layout3 {
      background: rgba(47, 47, 47, 0.9); } }
  .requestquote-form.layout3 .requestquote-content-form .fleft {
    margin-bottom: 10px;
    width: 100%; }
    @media (min-width: 992px) and (max-width: 1200px) {
      .requestquote-form.layout3 .requestquote-content-form .fleft {
        width: 206px;
        margin-right: 10px; }
        .rtl .requestquote-form.layout3 .requestquote-content-form .fleft {
          margin-left: 10px;
          margin-right: inherit; } }
    @media (min-width: 1200px) {
      .requestquote-form.layout3 .requestquote-content-form .fleft {
        width: 214px;
        margin-right: 10px;
        margin-bottom: 0; }
        .rtl .requestquote-form.layout3 .requestquote-content-form .fleft {
          margin-left: 10px;
          margin-right: inherit; } }
    .requestquote-form.layout3 .requestquote-content-form .fleft button {
      width: 100%; }
    .requestquote-form.layout3 .requestquote-content-form .fleft:last-child {
      margin-right: 0; }
      .rtl .requestquote-form.layout3 .requestquote-content-form .fleft:last-child {
        margin-left: 0;
        margin-right: inherit; }
    .requestquote-form.layout3 .requestquote-content-form .fleft select:last-child {
      margin-top: 0; }
  .requestquote-form.layout3 .requestquote-content-form input, .requestquote-form.layout3 .requestquote-content-form .form-control {
    width: 100%; }

.layout4 .requestquote-form.layout1 .requestquote-header {
  background: transparent;
  padding: 0 30px; }

.requestquote_post_form {
  border: 1px solid #e4e7ea; }
  .requestquote_post_form .wizard {
    overflow: visible; }
    .requestquote_post_form .wizard > .content {
      background: transparent;
      overflow: visible; }
      .requestquote_post_form .wizard > .content .row:first-child {
        margin-bottom: 40px; }
      .requestquote_post_form .wizard > .content h3 {
        margin-bottom: 50px; }
      .requestquote_post_form .wizard > .content .boder-right {
        position: relative; }
        .requestquote_post_form .wizard > .content .boder-right:after {
          width: 1px;
          height: 250px;
          position: absolute;
          top: 0;
          right: 0;
          background: #e4e7ea;
          content: ""; }
      .requestquote_post_form .wizard > .content .row > div {
        padding: 0 30px; }
      .requestquote_post_form .wizard > .content .row input {
        margin-bottom: 30px;
        border-color: #e1e1e1;
        height: 48px; }
      .requestquote_post_form .wizard > .content .row .form-control {
        border: 1px solid #e1e1e1;
        height: 48px;
        background: white;
        margin-bottom: 30px; }
      .requestquote_post_form .wizard > .content .row textarea.form-control {
        height: auto; }
      .requestquote_post_form .wizard > .content .row .opal_requestquote_movingon {
        background-position: 96% 8px; }
      .requestquote_post_form .wizard > .content .directions-description {
        margin-top: 30px; }
      .requestquote_post_form .wizard > .content section:last-child {
        text-align: center; }
        .requestquote_post_form .wizard > .content section:last-child i {
          width: 90px;
          height: 90px;
          line-height: 90px;
          background: #f25b22;
          text-align: center;
          border-radius: 100%;
          color: white;
          margin-bottom: 30px;
          font-size: 30px; }
      .requestquote_post_form .wizard > .content .requestquote-message h2 {
        color: #f25b22; }
      .requestquote_post_form .wizard > .content > .body {
        float: none;
        width: 100%;
        height: 100%;
        position: relative; }
    .requestquote_post_form .wizard > .steps {
      border-bottom: 1px solid #e4e7ea; }
      .requestquote_post_form .wizard > .steps .disabled a, .requestquote_post_form .wizard > .steps .current a, .requestquote_post_form .wizard > .steps .done a {
        background: transparent;
        color: #cccccc;
        font-size: 14px;
        font-weight: 600;
        text-transform: uppercase; }
        .requestquote_post_form .wizard > .steps .disabled a:hover, .requestquote_post_form .wizard > .steps .current a:hover, .requestquote_post_form .wizard > .steps .done a:hover {
          background: transparent;
          color: #f25b22; }
      .requestquote_post_form .wizard > .steps .current a {
        background: transparent;
        color: black; }
      .requestquote_post_form .wizard > .steps .current .number {
        background: #f25b22; }
      .requestquote_post_form .wizard > .steps .number {
        width: 30px;
        height: 30px;
        color: white;
        line-height: 30px;
        text-align: center;
        background: #cccccc;
        border-radius: 100%;
        display: inline-block;
        font-size: 16px;
        margin-right: 10px; }
        .rtl .requestquote_post_form .wizard > .steps .number {
          margin-left: 10px;
          margin-right: inherit; }
      @media (min-width: 1200px) {
        .requestquote_post_form .wizard > .steps a {
          position: relative; }
          .requestquote_post_form .wizard > .steps a:after, .requestquote_post_form .wizard > .steps a:before {
            border-width: 32px;
            border-style: solid;
            border-color: transparent transparent transparent #000;
            content: "";
            height: 0;
            right: -35px;
            position: absolute;
            width: 0;
            z-index: 9;
            top: 0; }
          .requestquote_post_form .wizard > .steps a:before {
            border-color: transparent transparent transparent white;
            z-index: 10; } }
      @media (max-width: 480px) {
        .requestquote_post_form .wizard > .steps > ul > li {
          width: 100%; } }
      @media (min-width: 768px) and (max-width: 991px) {
        .requestquote_post_form .wizard > .steps > ul > li {
          width: 33%; }
          .requestquote_post_form .wizard > .steps > ul > li a {
            padding: 12px 5px; } }
      @media (min-width: 992px) and (max-width: 1200px) {
        .requestquote_post_form .wizard > .steps > ul > li {
          width: 33%; } }
    .requestquote_post_form .wizard > .actions {
      padding: 30px; }
      .requestquote_post_form .wizard > .actions a, .requestquote_post_form .wizard > .actions a:hover {
        border-radius: 0;
        background: #f25b22;
        padding: 10px 30px; }
        .requestquote_post_form .wizard > .actions a:hover, .requestquote_post_form .wizard > .actions a:hover:hover {
          background: #ed4b0e;
          color: white; }

.opal-review-item .testimonial_group .testimonial {
  padding: 0 0 15px 0;
  border-bottom: 1px solid #e4e7ea;
  margin-bottom: 30px; }
  .opal-review-item .testimonial_group .testimonial .rr_title {
    font-family: "Poppins", sans-serif;
    text-transform: none;
    font-size: 18px;
    margin: 0;
    color: #f25b22; }
  .opal-review-item .testimonial_group .testimonial .stars {
    margin: 0;
    color: #ffca00; }
  .opal-review-item .testimonial_group .testimonial .rr_date {
    font-size: 12px; }
  .opal-review-item .testimonial_group .testimonial .rr_review_text .drop_cap {
    display: none; }

.opal-review .stars {
  color: #ffca00; }
  .opal-review .stars .txt-total {
    font-size: 14px;
    color: #666666; }

.opal-rich-reviews .total-review .txt-total {
  color: #f25b22;
  font-size: 16px; }

.opal-rich-reviews .form_table tr:last-child input {
  background: #f25b22;
  color: white; }

.total-review {
  background-image: url("../images/background-13.png");
  background-repeat: no-repeat;
  height: 180px;
  padding: 15px 10px;
  background-position: top right;
  text-align: center;
  cursor: pointer; }
  .total-review .description a {
    display: inline-block;
    color: white;
    font-weight: 600;
    font-size: 10px;
    text-transform: uppercase; }
  .total-review .stars {
    margin: 0;
    font-size: 14px;
    color: #f7d412; }
  .total-review .c100 {
    background-color: #f25b22; }
    .total-review .c100 > span {
      color: white;
      font-weight: bold; }
    .total-review .c100 .bar, .total-review .c100 .fill {
      border-color: white !important; }
    .total-review .c100:after {
      background-color: #f25b22; }
    .total-review .c100.orange:hover > span {
      color: white; }
    .total-review .c100:hover > span {
      width: 5em;
      line-height: 5em;
      font-size: 0.2em; }
    .total-review .c100:hover:after {
      top: 0.08em;
      left: 0.08em;
      width: 0.84em;
      height: 0.84em; }
      .rtl .total-review .c100:hover:after {
        right: 0.08em;
        left: auto; }

/* 8. Widget */
.widget[class*="widget_wpopal_"] ul {
  list-style: none;
  padding: 0; }

/* List Style Widgets*/
/* .widget_archive a,
.widget_recent_entries a,
.widget_recent_comments a,
.widget_layered_nav a,
.widget_product_categories a
 { font-weight: 300;} */
.widget_archive a:before,
.widget_recent_entries a:before,
.widget_recent_comments a:first-child:before,
.widget_layered_nav a:before,
.widget_categories a:before {
  margin-right: 10px;
  font-family: "FontAwesome";
  color: #f25b22;
  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_nav_menu li,
.widget_archive li,
.widget_categories li,
.widget_links li,
.widget_meta li,
.widget_pages li,
.widget_recent_comments li,
.widget_recent_entries li,
.opalservice-categories li {
  padding: 10px 0;
  border-top: 1px dotted #e4e7ea; }

.widget_nav_menu li:first-child,
.widget_archive li:first-child,
.widget_categories li:first-child,
.widget_links li:first-child,
.widget_meta li:first-child,
.widget_pages li:first-child,
.widget_recent_comments li:first-child,
.widget_recent_entries li:first-child,
.opalservice-categories li:first-child {
  border-top: 0; }

.widget_nav_menu li ul,
.widget_categories li ul,
.widget_pages li ul {
  margin-top: 10px; }

.widget_categories li ul.children {
  border-top: none; }

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

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

.widget.widget_categories ul li,
.widget.widget_layered_nav ul li,
.widget.widget_layered_nav_filters ul li,
.widget_nav_menu ul li,
.widget.widget_pages ul li,
.opalservice-categories ul li {
  line-height: 30px;
  border-top: 1px solid #e4e7ea; }
  .widget.widget_categories ul li:first-child,
  .widget.widget_layered_nav ul li:first-child,
  .widget.widget_layered_nav_filters ul li:first-child,
  .widget_nav_menu ul li:first-child,
  .widget.widget_pages ul li:first-child,
  .opalservice-categories ul li:first-child {
    border-top: none; }
  .widget.widget_categories ul li a,
  .widget.widget_layered_nav ul li a,
  .widget.widget_layered_nav_filters ul li a,
  .widget_nav_menu ul li a,
  .widget.widget_pages ul li a,
  .opalservice-categories ul li a {
    color: #999999; }
    .widget.widget_categories ul li a:hover,
    .widget.widget_layered_nav ul li a:hover,
    .widget.widget_layered_nav_filters ul li a:hover,
    .widget_nav_menu ul li a:hover,
    .widget.widget_pages ul li a:hover,
    .opalservice-categories ul li a:hover {
      color: #f25b22; }
  .widget.widget_categories ul li ul li,
  .widget.widget_layered_nav ul li ul li,
  .widget.widget_layered_nav_filters ul li ul li,
  .widget_nav_menu ul li ul li,
  .widget.widget_pages ul li ul li,
  .opalservice-categories ul li ul li {
    padding-left: 20px; }
    .rtl .widget.widget_categories ul li ul li, .rtl
    .widget.widget_layered_nav ul li ul li, .rtl
    .widget.widget_layered_nav_filters ul li ul li, .rtl
    .widget_nav_menu ul li ul li, .rtl
    .widget.widget_pages ul li ul li, .rtl
    .opalservice-categories ul li ul li {
      padding-right: 20px;
      padding-left: inherit; }
    .widget.widget_categories ul li ul li:last-child,
    .widget.widget_layered_nav ul li ul li:last-child,
    .widget.widget_layered_nav_filters ul li ul li:last-child,
    .widget_nav_menu ul li ul li:last-child,
    .widget.widget_pages ul li ul li:last-child,
    .opalservice-categories ul li ul li:last-child {
      padding-bottom: 0; }
  .widget.widget_categories ul li ul.sub-menu,
  .widget.widget_layered_nav ul li ul.sub-menu,
  .widget.widget_layered_nav_filters ul li ul.sub-menu,
  .widget_nav_menu ul li ul.sub-menu,
  .widget.widget_pages ul li ul.sub-menu,
  .opalservice-categories ul li ul.sub-menu {
    margin-top: 10px; }

.widget.widget_categories > ul > li,
.opalservice-categories > ul > li {
  position: relative; }
  .widget.widget_categories > ul > li:after,
  .opalservice-categories > ul > li:after {
    background: #f25b22;
    bottom: -1px;
    content: "";
    height: 1px;
    left: 0;
    line-height: 0;
    margin: auto;
    opacity: 0;
    position: absolute;
    -webkit-transition: width 0.5s ease 0s, height 0.5s ease 0s;
    -o-transition: width 0.5s ease 0s, height 0.5s ease 0s;
    transition: width 0.5s ease 0s, height 0.5s ease 0s;
    width: 4px;
    z-index: 9; }
  .widget.widget_categories > ul > li:hover,
  .opalservice-categories > ul > li:hover {
    color: #f25b22;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease; }
    .widget.widget_categories > ul > li:hover:after,
    .opalservice-categories > ul > li:hover:after {
      width: 100%;
      opacity: 1; }
    .widget.widget_categories > ul > li:hover > a,
    .opalservice-categories > ul > li:hover > a {
      color: #f25b22;
      -webkit-transition: all 0.5s ease;
      -o-transition: all 0.5s ease;
      transition: all 0.5s ease; }

/* Widget Flickr */
.flickr_badge_image {
  float: left;
  padding: 5px; }
  .rtl .flickr_badge_image {
    float: right; }

/* Recent Posts Widget */
.widget_recent_entries ul {
  list-style: none;
  padding: 0; }

.widget_recent_entries a {
  color: #000000; }
  .widget_recent_entries a:hover {
    color: #f25b22; }

.widget_recent_entries .post-date {
  display: block;
  margin-top: 5px;
  color: #999999;
  position: relative;
  padding-left: 20px;
  font-weight: 300; }
  .widget_recent_entries .post-date:before {
    left: 0;
    top: 0;
    position: absolute;
    content: "\f017";
    font-family: "FontAwesome"; }

.widget_wpopal_recent_post .post-widget {
  border: none; }

.widget_wpopal_recent_post .item-post.media {
  border-top: 1px solid #e4e7ea;
  padding-top: 20px;
  padding-bottom: 20px;
  margin: 0; }
  .widget_wpopal_recent_post .item-post.media:first-child {
    border-top: none; }
  .widget_wpopal_recent_post .item-post.media a.image {
    width: 100px;
    padding-left: 20px; }
    .rtl .widget_wpopal_recent_post .item-post.media a.image {
      padding-right: 20px;
      padding-left: inherit; }
  .widget_wpopal_recent_post .item-post.media .media-body .entry-title {
    padding-right: 15px; }
    .rtl .widget_wpopal_recent_post .item-post.media .media-body .entry-title {
      padding-left: 15px;
      padding-right: inherit; }
  .widget_wpopal_recent_post .item-post.media .media-body > p {
    display: none; }

.widget_wpopal_recent_post .post-stick-layout .item-post.media.item-big {
  border-top: none; }
  .widget_wpopal_recent_post .post-stick-layout .item-post.media.item-big a.image {
    padding-right: 0;
    width: 100%;
    margin-bottom: 10px; }
    .rtl .widget_wpopal_recent_post .post-stick-layout .item-post.media.item-big a.image {
      padding-left: 0;
      padding-right: inherit; }
  .widget_wpopal_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_wpopal_recent_post .post-stick-layout .item-post.media {
  padding-top: 15px; }
  .widget_wpopal_recent_post .post-stick-layout .item-post.media .media-body .entry-title {
    margin: 0 0 5px; }
  .widget_wpopal_recent_post .post-stick-layout .item-post.media .post-date {
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 700;
    color: #f25b22; }

/* Search Widget */
.opal-search .btn-search {
  border: 1px solid #f25b22;
  background: #f25b22; }
  .opal-search .btn-search input {
    border: none;
    background: transparent;
    color: white;
    padding: 0; }

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

.widget_calendar tbody a {
  background-color: #f25b22;
  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; }

.widget_calendar #today {
  background-color: #f25b22;
  color: #fff; }
  .widget_calendar #today:hover {
    background-color: #ed4b0e; }

/* Newletter in footer */
.widget_mc4wp_form_widget form {
  margin: 0; }

.widget_mc4wp_form_widget .widget-title, .widget_mc4wp_form_widget .widgettitle {
  float: left;
  font-size: 14px;
  font-weight: 600;
  font-family: "Poppins", sans-serif;
  color: white;
  padding-right: 20px;
  margin-top: 20px; }
  .rtl .widget_mc4wp_form_widget .widget-title, .rtl .widget_mc4wp_form_widget .widgettitle {
    float: right; }

.widget_mc4wp_form_widget .input-group {
  display: block; }
  .widget_mc4wp_form_widget .input-group .form-control {
    height: 57px;
    background: white;
    margin-bottom: 15px; }
  .widget_mc4wp_form_widget .input-group .btn {
    height: 57px;
    padding-left: 35px;
    padding-right: 35px; }

.footer-v4 .widget_mc4wp_form_widget .widget-title, .footer-v4 .widget_mc4wp_form_widget .widgettitle {
  display: none; }

.footer-v4 .widget_mc4wp_form_widget .input-group .form-control {
  height: 40px;
  max-width: 235px; }

.footer-v4 .widget_mc4wp_form_widget .input-group .btn {
  height: 40px;
  padding-left: 20px;
  padding-right: 20px; }

/****/
li.product-category {
  list-style: none; }

/* brands */
.brands-collection .owl-item 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: 0.5;
  filter: alpha(opacity=50);
  -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; }

.brands-collection .owl-item: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); }

/* blog-post */
.blog-post .entry-meta {
  border: 0;
  padding: 0;
  margin-bottom: 10px; }

.blog-post .entry-title {
  height: 50px;
  overflow: hidden;
  margin: 0; }

.bloglist-layout .entry-title {
  margin-top: 0;
  margin-bottom: 30px; }

.box-top {
  display: flex; }
  .box-top .box-service-top {
    padding-top: 7px; }
    .box-top .box-service-top .icon {
      font-size: 35px;
      color: #f25b22;
      line-height: 35px; }
    .box-top .box-service-top .title {
      margin: 0 0 5px;
      font-size: 12px;
      text-transform: uppercase;
      font-weight: 300;
      color: #999999;
      font-family: "Poppins", sans-serif; }
    .box-top .box-service-top span {
      color: #cccccc;
      font-weight: 500; }
    .box-top .box-service-top p {
      color: #f25b22;
      font-size: 22px;
      line-height: 22px;
      font-weight: 500;
      margin: 0; }
    .box-top .box-service-top.support {
      border-left: 1px solid #545454;
      text-align: right; }
      .rtl .box-top .box-service-top.support {
        border-right: 1px solid #545454;
        border-left: inherit; }

/*
*  Main Menu
*/
.navbar-mega {
  min-height: inherit;
  margin-right: 25px;
  border: 0px solid transparent;
  border-radius: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0; }
  .rtl .navbar-mega {
    margin-left: 25px;
    margin-right: inherit; }
  .navbar-mega .navbar-toggle {
    border-color: #e4e7ea; }
    .navbar-mega .navbar-toggle .icon-bar {
      background-color: #f25b22; }
  .navbar-mega .navbar-nav {
    float: none;
    padding: 0; }
    .navbar-mega .navbar-nav > .open > a {
      border-color: transparent;
      border-left-color: rgba(0, 0, 0, 0.1);
      color: #f25b22;
      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;
        color: #f25b22; }
        .navbar-mega .navbar-nav li.active > a .caret {
          color: #f25b22; }
    .navbar-mega .navbar-nav li a:hover, .navbar-mega .navbar-nav li a:active, .navbar-mega .navbar-nav li a:focus {
      background: none;
      color: #f25b22; }
    .navbar-mega .navbar-nav li.open > a {
      background: none;
      color: #f25b22; }
    .navbar-mega .navbar-nav > li {
      margin-top: 0;
      padding: 25px 30px;
      border-top: 4px solid transparent;
      -webkit-transition: all 0.3s ease-out 0s;
      -o-transition: all 0.3s ease-out 0s;
      transition: all 0.3s ease-out 0s; }
      .navbar-mega .navbar-nav > li > a {
        font-family: "Poppins", sans-serif;
        position: relative;
        color: #000000;
        padding: 0;
        line-height: 12px;
        margin: 0;
        text-transform: none;
        font-weight: 500;
        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: #cccccc;
          border-width: 3px;
          -webkit-transition: all 0.35s;
          -o-transition: all 0.35s;
          transition: all 0.35s; }
        .navbar-mega .navbar-nav > li > a:hover, .navbar-mega .navbar-nav > li > a:focus {
          color: #f25b22;
          background: transparent; }
          .navbar-mega .navbar-nav > li > a:hover:after, .navbar-mega .navbar-nav > li > a:focus:after {
            opacity: 1;
            filter: alpha(opacity=100);
            width: 100%; }
          .navbar-mega .navbar-nav > li > a:hover .caret, .navbar-mega .navbar-nav > li > a:focus .caret {
            color: #f25b22; }
      .navbar-mega .navbar-nav > li:last-child > a {
        border-right: 0; }
        .rtl .navbar-mega .navbar-nav > li:last-child > a {
          border-left: 0;
          border-right: inherit; }
        .navbar-mega .navbar-nav > li:last-child > a:before {
          content: none; }
      .navbar-mega .navbar-nav > li .dropdown-menu {
        padding: 15px 30px;
        background: #fff;
        min-width: 280px;
        border-radius: 0;
        -webkit-border-radius: 0;
        -moz-border-radius: 0;
        -ms-border-radius: 0;
        -o-border-radius: 0;
        position: absolute;
        opacity: 0;
        filter: alpha(opacity=0);
        display: block;
        right: 0;
        top: 100%;
        -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: 0; }
        .rtl .navbar-mega .navbar-nav > li .dropdown-menu {
          left: 0;
          right: auto; }
        .navbar-mega .navbar-nav > li .dropdown-menu ul.dropdown-menu {
          left: 95%;
          position: absolute;
          opacity: 0;
          filter: alpha(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;
          border: none; }
          .navbar-mega .navbar-nav > li .dropdown-menu li a {
            min-height: inherit;
            display: block;
            font-weight: 300;
            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 */
            font-family: "Poppins", sans-serif;
            font-weight: normal;
            padding: 0; }
            .navbar-mega .navbar-nav > li .dropdown-menu li a:hover {
              color: #f25b22;
              background: transparent; }
          .navbar-mega .navbar-nav > li .dropdown-menu li:hover > ul.dropdown-menu {
            opacity: 1;
            visibility: visible;
            transform: translate(0px, 0px);
            top: 0%; }
          .navbar-mega .navbar-nav > li .dropdown-menu li:last-child {
            padding-bottom: 20px; }
          .navbar-mega .navbar-nav > li .dropdown-menu li .text-label {
            top: 0; }
            .navbar-mega .navbar-nav > li .dropdown-menu li .text-label.text-hot {
              left: 20px;
              right: auto; }
              .rtl .navbar-mega .navbar-nav > li .dropdown-menu li .text-label.text-hot {
                right: 20px;
                left: auto; }
              .rtl .navbar-mega .navbar-nav > li .dropdown-menu li .text-label.text-hot {
                left: auto;
                right: auto; }
            .navbar-mega .navbar-nav > li .dropdown-menu li .text-label.text-new {
              left: 20px;
              right: auto; }
              .rtl .navbar-mega .navbar-nav > li .dropdown-menu li .text-label.text-new {
                right: 20px;
                left: auto; }
              .rtl .navbar-mega .navbar-nav > li .dropdown-menu li .text-label.text-new {
                left: auto;
                right: auto; }
            .navbar-mega .navbar-nav > li .dropdown-menu li .text-label.text-featured {
              left: 20px;
              right: auto; }
              .rtl .navbar-mega .navbar-nav > li .dropdown-menu li .text-label.text-featured {
                right: 20px;
                left: auto; }
              .rtl .navbar-mega .navbar-nav > li .dropdown-menu li .text-label.text-featured {
                left: auto;
                right: auto; }
        .navbar-mega .navbar-nav > li .dropdown-menu .widgettitle, .navbar-mega .navbar-nav > li .dropdown-menu .widget-title {
          padding: 20px 0;
          /* 3 */
          /* 3 */
          /* 4 */
          /* 6 */
          /* 6 */
          /* 7 */
          font-size: 14px;
          /* 9 */
          font-size: 1.4rem;
          /* 9 */
          border-color: #e4e7ea;
          margin-bottom: 0;
          letter-spacing: 0; }
          .navbar-mega .navbar-nav > li .dropdown-menu .widgettitle:before, .navbar-mega .navbar-nav > li .dropdown-menu .widget-title:before {
            content: none; }
        .navbar-mega .navbar-nav > li .dropdown-menu .widget-content {
          border: none; }
        .navbar-mega .navbar-nav > li .dropdown-menu .widget, .navbar-mega .navbar-nav > li .dropdown-menu .products {
          box-shadow: none;
          border: none;
          margin-bottom: 0; }
        .navbar-mega .navbar-nav > li .dropdown-menu .products .row > div {
          padding: 0 20px; }
        .navbar-mega .navbar-nav > li .dropdown-menu .widget-products .widget-title {
          padding: 0 20px; }
        .navbar-mega .navbar-nav > li .dropdown-menu .opal-category-filter {
          margin: 0;
          padding: 30px 0 30px 30px; }
        .navbar-mega .navbar-nav > li .dropdown-menu .category-caption {
          clear: both;
          padding-top: 30px; }
      .navbar-mega .navbar-nav > li .sub-menu {
        position: absolute;
        background: #fff;
        z-index: 9999;
        box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
        text-align: left;
        padding: 30px;
        -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);
        min-width: 245px;
        opacity: 0;
        filter: alpha(opacity=0);
        visibility: hidden; }
        .navbar-mega .navbar-nav > li .sub-menu .sub-menu {
          left: 90%;
          top: 0; }
        .navbar-mega .navbar-nav > li .sub-menu li:hover > .sub-menu {
          opacity: 1;
          visibility: visible;
          transform: translate(0px, 0px); }
      .navbar-mega .navbar-nav > li .mega-dropdown-menu {
        padding: 40px; }
        .navbar-mega .navbar-nav > li .mega-dropdown-menu ul li a {
          padding-left: 0;
          padding-right: 0; }
          .rtl .navbar-mega .navbar-nav > li .mega-dropdown-menu ul li a {
            padding-right: 0;
            padding-left: inherit; }
          .rtl .navbar-mega .navbar-nav > li .mega-dropdown-menu ul li a {
            padding-left: 0;
            padding-right: inherit; }
          .navbar-mega .navbar-nav > li .mega-dropdown-menu ul li a:hover {
            padding-left: 10px;
            padding-right: 10px; }
            .rtl .navbar-mega .navbar-nav > li .mega-dropdown-menu ul li a:hover {
              padding-right: 10px;
              padding-left: inherit; }
            .rtl .navbar-mega .navbar-nav > li .mega-dropdown-menu ul li a:hover {
              padding-left: 10px;
              padding-right: inherit; }
    .navbar-mega .navbar-nav > .active {
      border-top: 4px solid #f25b22; }
      .navbar-mega .navbar-nav > .active > a {
        color: #f25b22; }
        .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: 120% !important; }
    .navbar-mega .navbar-nav > .aligned-right {
      position: static !important; }
      .navbar-mega .navbar-nav > .aligned-right > .dropdown-menu {
        right: 0;
        left: auto; }
        .rtl .navbar-mega .navbar-nav > .aligned-right > .dropdown-menu {
          left: 0;
          right: auto; }
        .rtl .navbar-mega .navbar-nav > .aligned-right > .dropdown-menu {
          right: auto;
          left: auto; }
    .navbar-mega .navbar-nav > .aligned-left {
      position: static !important; }
      .navbar-mega .navbar-nav > .aligned-left > .dropdown-menu {
        left: 0;
        right: auto; }
        .rtl .navbar-mega .navbar-nav > .aligned-left > .dropdown-menu {
          right: 0;
          left: auto; }
        .rtl .navbar-mega .navbar-nav > .aligned-left > .dropdown-menu {
          left: auto;
          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: #e4e7ea;
          position: absolute;
          left: 0;
          top: 0; }
          .rtl .navbar-mega .navbar-nav .container-mega .row > div:after {
            right: 0;
            left: auto; }
        .navbar-mega .navbar-nav .container-mega .row > div:first-child:after {
          content: none; }
  .navbar-mega .text-label {
    position: absolute;
    top: -20px;
    right: 45%;
    padding: 0px 3px;
    font-size: 9px;
    color: #FFFFFF; }
    .navbar-mega .text-label.text-hot {
      background: #e56363; }
      .navbar-mega .text-label.text-hot:after {
        border-top-color: #e56363; }
    .navbar-mega .text-label.text-new {
      background: #549dde; }
      .navbar-mega .text-label.text-new:after {
        border-top-color: #549dde; }
    .navbar-mega .text-label.text-featured {
      background: #f25b22;
      right: 15%; }
      .navbar-mega .text-label.text-featured:after {
        border-top-color: #f25b22; }
    .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, .navbar-mega .navbar-nav > li:hover > .sub-menu {
    opacity: 1;
    filter: alpha(opacity=100);
    left: 0;
    transform: translate(0px, 0px);
    -webkit-transform: translate(0px, 0px);
    -ms-transform: translate(0px, 0px);
    -o-transform: translate(0px, 0px);
    visibility: visible; }
    .rtl .navbar-mega .navbar-nav > li:hover > .dropdown-menu, .rtl .navbar-mega .navbar-nav > li:hover > .sub-menu {
      right: 0;
      left: auto; }
    .navbar-mega .navbar-nav > li:hover > .dropdown-menu li, .navbar-mega .navbar-nav > li:hover > .sub-menu li {
      padding: 8px 0; } }

/**
 * White Styles
 */
.navbar-mega-light {
  /*     .navbar-mega .navbar-nav > li.active > a::before, .navbar-mega .navbar-nav > li:hover > a::before{
        background:#FFFFFF;
    } */ }
  .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: #f25b22; }

.navbar-mega-theme {
  background: #f25b22; }
  .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 .opal-megamenu {
  /* display: inline-block; */ }

/*
* vertical megamenu
*/
.widget_wpopal_menu_vertical .vertical-menu {
  padding: 0;
  background: #FFF;
  box-shadow: 0 0 3px 1px rgba(20, 19, 23, 0.1); }

.widget_wpopal_menu_vertical .widget-title {
  background: #41b5ac;
  color: #FFF;
  margin-bottom: 0; }
  .widget_wpopal_menu_vertical .widget-title > span {
    padding: 20px; }

.widget_wpopal_menu_vertical .navbar-nav {
  position: relative;
  margin: 0; }
  .widget_wpopal_menu_vertical .navbar-nav > li {
    width: 100%;
    height: auto;
    position: static;
    border-bottom: 1px solid #eeeeee; }
    .widget_wpopal_menu_vertical .navbar-nav > li > a {
      display: block;
      color: #000;
      padding: 13px 20px;
      line-height: 24px;
      text-transform: uppercase;
      font-size: 12px;
      font-family: "Fjalla One", monospace;
      font-weight: 600; }
      .widget_wpopal_menu_vertical .navbar-nav > li > a .text-label {
        background: #e35263 none repeat scroll 0 0;
        color: #fff;
        display: inline-block;
        font-size: 9px;
        font-weight: 400;
        line-height: 1;
        margin-left: 8px;
        padding: 3px;
        position: relative; }
        .widget_wpopal_menu_vertical .navbar-nav > li > a .text-label:after {
          -moz-border-bottom-colors: none;
          -moz-border-left-colors: none;
          -moz-border-right-colors: none;
          -moz-border-top-colors: none;
          border-color: transparent #e35263 transparent transparent;
          border-image: none;
          border-style: solid;
          border-width: 3px;
          content: "";
          margin-top: -3px;
          position: absolute;
          right: 100%;
          top: 50%; }
        .widget_wpopal_menu_vertical .navbar-nav > li > a .text-label.text-new {
          background: #03a9f4 none repeat scroll 0 0; }
          .widget_wpopal_menu_vertical .navbar-nav > li > a .text-label.text-new:after {
            border-right: 3px solid #03a9f4; }
        .widget_wpopal_menu_vertical .navbar-nav > li > a .text-label.text-featured {
          background: green none repeat scroll 0 0; }
          .widget_wpopal_menu_vertical .navbar-nav > li > a .text-label.text-featured:after {
            border-right: 3px solid green; }
    .widget_wpopal_menu_vertical .navbar-nav > li:focus > a, .widget_wpopal_menu_vertical .navbar-nav > li:hover > a {
      color: #f25b22; }
      .widget_wpopal_menu_vertical .navbar-nav > li:focus > a .caret:before, .widget_wpopal_menu_vertical .navbar-nav > li:hover > a .caret:before {
        color: #f25b22; }
      .widget_wpopal_menu_vertical .navbar-nav > li:focus > a:before, .widget_wpopal_menu_vertical .navbar-nav > li:hover > a:before {
        color: #f25b22; }
    .widget_wpopal_menu_vertical .navbar-nav > li.open .dropdown-menu {
      display: block !important; }
  .widget_wpopal_menu_vertical .navbar-nav li {
    /*             @media(min-width: $screen-sm-max){*/ }
    .widget_wpopal_menu_vertical .navbar-nav li a {
      -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_wpopal_menu_vertical .navbar-nav li a .caret {
        position: absolute;
        top: 50%;
        margin-top: -10px;
        border: 0 !important; }
        .widget_wpopal_menu_vertical .navbar-nav li a .caret:before {
          content: "\f105";
          font-family: FontAwesome;
          font-size: 13px;
          font-weight: 500;
          color: #ccc; }
      .widget_wpopal_menu_vertical .navbar-nav li a:hover, .widget_wpopal_menu_vertical .navbar-nav li a:focus {
        color: #f25b22; }
    .widget_wpopal_menu_vertical .navbar-nav li .dropdown-menu {
      border: 0;
      top: 0;
      min-width: 700px;
      padding: 20px;
      /*                 @media(min-width: $screen-sm-max){*/
      visibility: hidden;
      opacity: 0;
      filter: alpha(opacity=0);
      display: block; }
      @media (min-width: 768px) and (max-width: 991px) {
        .widget_wpopal_menu_vertical .navbar-nav li .dropdown-menu {
          min-width: 550px; } }
      .widget_wpopal_menu_vertical .navbar-nav li .dropdown-menu .container-mega {
        padding: 0 20px; }
      .widget_wpopal_menu_vertical .navbar-nav li .dropdown-menu .widget-title {
        background: transparent;
        color: #f25b22; }
        .widget_wpopal_menu_vertical .navbar-nav li .dropdown-menu .widget-title span {
          padding: 0 0 20px; }
      .widget_wpopal_menu_vertical .navbar-nav li .dropdown-menu .widget-content {
        padding: 0;
        border: none; }
      .widget_wpopal_menu_vertical .navbar-nav li .dropdown-menu .widget_nav_menu ul {
        background-color: transparent; }
        .widget_wpopal_menu_vertical .navbar-nav li .dropdown-menu .widget_nav_menu ul li {
          border-bottom: 0; }
      .widget_wpopal_menu_vertical .navbar-nav li .dropdown-menu .widget_nav_menu .widgettitle {
        margin-bottom: 20px;
        font-size: 18px; }
      .widget_wpopal_menu_vertical .navbar-nav li .dropdown-menu .products-grid div.product {
        border-bottom: 0; }
      .widget_wpopal_menu_vertical .navbar-nav li .dropdown-menu > li > a {
        padding: 7px 0;
        display: block; }
        .widget_wpopal_menu_vertical .navbar-nav li .dropdown-menu > li > a:hover {
          padding-left: 5px; }
          .rtl .widget_wpopal_menu_vertical .navbar-nav li .dropdown-menu > li > a:hover {
            padding-right: 5px;
            padding-left: inherit; }
    .widget_wpopal_menu_vertical .navbar-nav li:focus > a, .widget_wpopal_menu_vertical .navbar-nav li:hover > a {
      color: #f25b22; }
      .widget_wpopal_menu_vertical .navbar-nav li:focus > a .caret::before, .widget_wpopal_menu_vertical .navbar-nav li:hover > a .caret::before {
        color: #f25b22; }
    .widget_wpopal_menu_vertical .navbar-nav li:focus > .dropdown-menu, .widget_wpopal_menu_vertical .navbar-nav li:hover > .dropdown-menu {
      opacity: 1;
      filter: alpha(opacity=100);
      -webkit-transition: all 0.3s ease-in 0s;
      -o-transition: all 0.3s ease-in 0s;
      transition: all 0.3s ease-in 0s;
      visibility: visible; }
    .widget_wpopal_menu_vertical .navbar-nav li i {
      margin-right: 10px; }
      .rtl .widget_wpopal_menu_vertical .navbar-nav li i {
        margin-left: 10px;
        margin-right: inherit; }

.widget_wpopal_menu_vertical .widget_nav_menu ul li {
  padding: 10px 0; }
  .widget_wpopal_menu_vertical .widget_nav_menu ul li a {
    display: block;
    color: #8a8a8a; }
    .widget_wpopal_menu_vertical .widget_nav_menu ul li a:hover {
      color: #f25b22;
      padding-left: 5px; }
      .rtl .widget_wpopal_menu_vertical .widget_nav_menu ul li a:hover {
        padding-right: 5px;
        padding-left: inherit; }

.widget_wpopal_menu_vertical .menu-left .navbar-nav > li {
  /*  @media(min-width: $screen-sm-max){ */ }
  .widget_wpopal_menu_vertical .menu-left .navbar-nav > li > a:after {
    right: -3px; }
    .rtl .widget_wpopal_menu_vertical .menu-left .navbar-nav > li > a:after {
      left: -3px;
      right: auto; }
  .widget_wpopal_menu_vertical .menu-left .navbar-nav > li:focus > a:after, .widget_wpopal_menu_vertical .menu-left .navbar-nav > li:hover > a:after {
    border-color: #fff;
    z-index: 1001; }

.widget_wpopal_menu_vertical .menu-left .navbar-nav li {
  /* @media(min-width: $screen-sm-max){ */ }
  .widget_wpopal_menu_vertical .menu-left .navbar-nav li .dropdown-menu {
    right: 130%;
    left: auto; }
    .rtl .widget_wpopal_menu_vertical .menu-left .navbar-nav li .dropdown-menu {
      left: 130%;
      right: auto; }
    .rtl .widget_wpopal_menu_vertical .menu-left .navbar-nav li .dropdown-menu {
      right: auto;
      left: auto; }
  .widget_wpopal_menu_vertical .menu-left .navbar-nav li:focus > .dropdown-menu, .widget_wpopal_menu_vertical .menu-left .navbar-nav li:hover > .dropdown-menu {
    right: 100%; }
    .rtl .widget_wpopal_menu_vertical .menu-left .navbar-nav li:focus > .dropdown-menu, .rtl .widget_wpopal_menu_vertical .menu-left .navbar-nav li:hover > .dropdown-menu {
      left: 100%;
      right: auto; }
  .widget_wpopal_menu_vertical .menu-left .navbar-nav li a .caret {
    right: 20px; }
    .rtl .widget_wpopal_menu_vertical .menu-left .navbar-nav li a .caret {
      left: 20px;
      right: auto; }

.widget_wpopal_menu_vertical .menu-right .navbar-nav > li > a:before {
  float: left; }
  .rtl .widget_wpopal_menu_vertical .menu-right .navbar-nav > li > a:before {
    float: right; }

.widget_wpopal_menu_vertical .menu-right .navbar-nav > li > a:after {
  left: -3px; }
  .rtl .widget_wpopal_menu_vertical .menu-right .navbar-nav > li > a:after {
    right: -3px;
    left: auto; }

@media (min-width: 991px) {
  .widget_wpopal_menu_vertical .menu-right .navbar-nav > li > .dropdown-menu {
    margin-right: 2px;
    min-height: 480px; }
    .rtl .widget_wpopal_menu_vertical .menu-right .navbar-nav > li > .dropdown-menu {
      margin-left: 2px;
      margin-right: inherit; } }

.widget_wpopal_menu_vertical .menu-right .navbar-nav > li:focus > a:after, .widget_wpopal_menu_vertical .menu-right .navbar-nav > li:hover > a:after {
  border-color: #fff;
  z-index: 1001; }

@media (min-width: 991px) {
  .widget_wpopal_menu_vertical .menu-right .navbar-nav li .dropdown-menu {
    right: 130%;
    left: auto; }
    .rtl .widget_wpopal_menu_vertical .menu-right .navbar-nav li .dropdown-menu {
      left: 130%;
      right: auto; }
  .widget_wpopal_menu_vertical .menu-right .navbar-nav li:focus > .dropdown-menu, .widget_wpopal_menu_vertical .menu-right .navbar-nav li:hover > .dropdown-menu {
    right: 100%; }
    .rtl .widget_wpopal_menu_vertical .menu-right .navbar-nav li:focus > .dropdown-menu, .rtl .widget_wpopal_menu_vertical .menu-right .navbar-nav li:hover > .dropdown-menu {
      left: 100%;
      right: auto; } }

.widget_wpopal_menu_vertical .menu-right .navbar-nav li a .caret {
  right: 20px; }
  .rtl .widget_wpopal_menu_vertical .menu-right .navbar-nav li a .caret {
    left: 20px;
    right: auto; }

/* 4. Page */
/**
 * 6.10 Contributor Page
 * -----------------------------------------------------------------------------
 */
.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 {
  padding: 200px 0 300px;
  color: #000;
  background: transparent url("../images/bg-notfound.jpg") no-repeat center bottom; }
  @media (min-width: 768px) and (max-width: 991px) {
    .notfound-page {
      padding-left: 30px;
      padding-right: 30px; } }
  @media (max-width: 480px) {
    .notfound-page {
      padding-left: 30px;
      padding-right: 30px; } }
  .notfound-page h1.title {
    font-size: 200px !important;
    line-height: 140px !important;
    color: #f25b22 !important;
    font-weight: 800 !important;
    margin-bottom: 60px !important; }
  .notfound-page .sub {
    font-size: 60px;
    display: block;
    position: relative;
    color: #000;
    letter-spacing: -2.5px; }
  .notfound-page .error-description {
    font-size: 24px;
    line-height: 34px;
    position: relative;
    color: #999; }
    .notfound-page .error-description a {
      color: #f25b22; }
      .notfound-page .error-description a:hover {
        text-decoration: underline; }

/* 5. Post */
/**
 * 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: 20px 0;
  overflow: hidden;
  width: 100%; }

.paging-navigation {
  margin-bottom: 30px; }

.opalservice-categories ul, .widget_categories ul, .widget_pages ul,
.widget_nav_menu ul {
  list-style: none;
  padding: 0;
  margin: 0; }
  .opalservice-categories ul li, .widget_categories ul li, .widget_pages ul li,
  .widget_nav_menu ul li {
    width: 100%; }

.post .post-thumbnail {
  overflow: hidden;
  position: relative;
  text-align: center;
  display: block; }

.widget_categories select,
.widget_archive select,
.widget_text select {
  border: 1px solid #e4e7ea;
  padding: 10px;
  width: 100%;
  margin-top: 10px; }

.widget_archive ul {
  list-style: none;
  margin: 0;
  padding: 0; }
  .widget_archive ul ul {
    padding-left: 15px; }
    .rtl .widget_archive ul ul {
      padding-right: 15px;
      padding-left: inherit; }

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

.widget_text div > ul {
  list-style: none;
  padding: 0; }
  .widget_text div > ul ul {
    padding-left: 25px; }
    .rtl .widget_text div > ul ul {
      padding-right: 25px;
      padding-left: inherit; }

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

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

.widget_calendar table {
  width: 100%; }

.sidebar form select {
  margin: 0; }

.tagcloud a {
  border: 1px solid #e4e4e4;
  padding: 3px 10px;
  margin-bottom: 6px;
  font-size: 14px !important;
  color: #666666;
  display: inline-block;
  position: relative;
  margin-right: 5px; }
  .rtl .tagcloud a {
    margin-left: 5px;
    margin-right: inherit; }
  .tagcloud a:after {
    content: "";
    position: absolute;
    top: 0;
    width: 0;
    z-index: -1;
    height: 100%;
    left: 0;
    background: #f25b22;
    -webkit-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear; }
    .rtl .tagcloud a:after {
      right: 0;
      left: auto; }
  .tagcloud a:hover {
    color: white;
    -webkit-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear;
    border-color: #f25b22; }
    .tagcloud a:hover:after {
      width: 100%; }

.widget_nav_menu .menu-testing-menu-container > ul > li {
  padding: 10px 0; }
  .widget_nav_menu .menu-testing-menu-container > ul > li > a:first-child {
    padding: 0 10px; }

.widget_nav_menu .menu-testing-menu-container ul li {
  line-height: 30px; }

.pagination {
  border-top: 1px solid #e4e7ea;
  display: block;
  padding-top: 30px; }
  .pagination a {
    padding: 7px 15px;
    border: 1px solid #e4e7ea; }
  .pagination span.current {
    padding: 7px 15px;
    color: #f25b22;
    border: 1px solid #e4e7ea; }

/**
 * 6.3 Entry Meta
 * -----------------------------------------------------------------------------
 */
.cat-links {
  /* 	font-weight: 900; */
  text-transform: capitalize; }

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

.cat-links a:hover {
  color: #41a62a; }

.byline {
  display: none; }

.entry-meta {
  clear: both;
  color: #999999;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.3333333333;
  margin-bottom: 10px;
  margin-top: 0;
  width: 100%;
  overflow: hidden; }
  .entry-meta span {
    display: inline-block; }
  .entry-meta .tag-links {
    margin: 0; }

.entry-date a,
.meta-sep a,
.author a,
.entry-category a,
.comments-link a,
.edit-link a {
  color: #999999; }

.entry-date span {
  margin: 0; }

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

.entry-category a {
  color: #f25b22;
  padding: 0 5px; }
  .entry-category a:hover {
    text-decoration: underline !important; }
  .entry-category a:first-child {
    padding-left: 0; }
    .rtl .entry-category a:first-child {
      padding-right: 0;
      padding-left: inherit; }

.meta-sep {
  background-color: #999;
  width: 3px;
  height: 3px;
  margin: 3px 5px;
  display: inline-block; }

.posts-wrapper .post-preview {
  float: left;
  width: 45%;
  position: relative;
  overflow: hidden; }
  .rtl .posts-wrapper .post-preview {
    float: right; }
  @media (max-width: 480px) {
    .posts-wrapper .post-preview {
      width: 100%; } }

.posts-wrapper article.post {
  border: 1px solid #e4e7ea;
  display: inline-block;
  margin-bottom: 25px; }
  .posts-wrapper article.post .entry-content {
    border: none;
    margin-bottom: 0;
    display: table-cell; }

.blog-layout {
  margin: 0 -15px; }

.bloggrid-layout .entry-header {
  margin-top: 30px;
  margin-left: 15px; }
  .rtl .bloggrid-layout .entry-header {
    margin-right: 15px;
    margin-left: inherit; }

.bloggrid-layout article.post {
  border-bottom: 1px solid #e4e7ea;
  padding-bottom: 30px;
  margin-bottom: 20px;
  display: inline-block; }

.bloggrid-layout > div:last-child article.post {
  border-bottom: none; }

/**
 * 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;
  margin-bottom: 20px;
  line-height: 25px; }

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

.entry-content a:hover,
.entry-summary a:hover,
.page-content a:hover,
.comment-content a:hover,
.entry-content a.button,
.entry-summary a.button,
.page-content a.button,
.comment-content a.button {
  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: 700;
  padding: 8px;
  text-transform: uppercase; }

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

.entry-content .edit-link {
  clear: both;
  padding: 0 5px;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.3333333333; }

.entry-content .edit-link a {
  /* 	color: $theme-color; */
  text-decoration: none; }

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

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

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

.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:before {
      content: none; }
    .entry-content-page .edit-link a {
      font-size: 11px;
      color: #FFF !important; }

.opal-social-share {
  margin-bottom: 20px;
  clear: both; }

/* Tag links style */
.tag-links a {
  border: 1px solid #e4e7ea;
  padding: 6px 12px;
  font-size: 14px;
  display: inline-block;
  position: relative;
  margin-right: 5px;
  text-transform: none; }
  .rtl .tag-links a {
    margin-left: 5px;
    margin-right: inherit; }
  .tag-links a:after {
    content: "";
    position: absolute;
    top: 0;
    width: 0;
    z-index: -1;
    height: 100%;
    left: 0;
    background: #f25b22;
    -webkit-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear; }
    .rtl .tag-links a:after {
      right: 0;
      left: auto; }
  .tag-links a:hover {
    color: white;
    -webkit-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear;
    border-color: #f25b22;
    z-index: 1; }
    .tag-links a:hover:after {
      width: 100%; }

/**
 * Navigation links
 */
.nav-links {
  margin-bottom: 30px; }
  .nav-links a {
    display: block;
    float: left;
    width: 50%;
    border-right: 1px solid #e4e7ea; }
    .rtl .nav-links a {
      float: right; }
    .rtl .nav-links a {
      border-left: 1px solid #e4e7ea;
      border-right: inherit; }
    .nav-links a > div {
      font-size: 18px;
      float: none !important; }
      .nav-links a > div.pull-right {
        text-align: right;
        padding-left: 15px; }
        .rtl .nav-links a > div.pull-right {
          text-align: left; }
        .rtl .nav-links a > div.pull-right {
          padding-right: 15px;
          padding-left: inherit; }
        .nav-links a > div.pull-right .meta-nav:after {
          font-family: 'FontAwesome';
          content: "\f105";
          margin-left: 7px;
          font-size: 16px; }
          .rtl .nav-links a > div.pull-right .meta-nav:after {
            margin-right: 7px;
            margin-left: inherit; }
      .nav-links a > div.pull-left {
        padding-right: 15px; }
        .rtl .nav-links a > div.pull-left {
          padding-left: 15px;
          padding-right: inherit; }
        .nav-links a > div.pull-left .meta-nav:before {
          font-family: 'FontAwesome';
          content: "\f104";
          margin-right: 7px;
          font-size: 16px; }
          .rtl .nav-links a > div.pull-left .meta-nav:before {
            margin-left: 7px;
            margin-right: inherit; }
    .nav-links a:last-child {
      border-right: 0; }
      .rtl .nav-links a:last-child {
        border-left: 0;
        border-right: inherit; }
  .nav-links .meta-nav {
    display: block;
    text-transform: uppercase;
    color: #999999;
    font-size: 14px;
    margin-bottom: 7px;
    position: relative; }

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

.gallery-columns-3 .gallery-item:nth-child(3n+1) {
  clear: both; }

.single-post article .entry-meta {
  border-bottom: 1px solid #e4e7ea;
  padding-bottom: 15px; }

h1.archive-title {
  margin: 0; }

article {
  position: relative; }
  article .entry-title {
    font-size: 18px;
    line-height: 25px;
    font-family: "Poppins", sans-serif;
    text-transform: none; }
  article h1.entry-title {
    font-size: 30px !important;
    font-family: "Fjalla One";
    height: auto;
    line-height: 40px;
    margin-top: 0; }
  article .entry-meta {
    margin-bottom: 20px; }
  article .entry-tag {
    padding-bottom: 30px;
    padding-top: 30px;
    border-bottom: 1px solid #e4e7ea; }
  article .list-item h3 {
    font-size: 18px; }
  article.post {
    margin-bottom: 30px; }
    article.post .post-thumbnail img {
      -webkit-transition: opacity 1s ease 0s, transform 1s ease 0s;
      -o-transition: opacity 1s ease 0s, transform 1s ease 0s;
      transition: opacity 1s ease 0s, transform 1s ease 0s; }
    article.post .image-post {
      position: relative;
      overflow: hidden; }
      article.post .image-post img {
        -webkit-transition: opacity 1s ease 0s, transform 1s ease 0s;
        -o-transition: opacity 1s ease 0s, transform 1s ease 0s;
        transition: opacity 1s ease 0s, transform 1s ease 0s; }
    article.post span i {
      padding-right: 10px; }
      .rtl article.post span i {
        padding-left: 10px;
        padding-right: inherit; }
    article.post span a {
      color: #999999;
      font-size: 12px; }
    article.post span span {
      margin-right: 0; }
      .rtl article.post span span {
        margin-left: 0;
        margin-right: inherit; }
    article.post .post-meta {
      position: absolute;
      width: 45px;
      height: 72px;
      right: 0;
      background: #f25b22;
      top: 20px;
      text-align: center;
      line-height: 1.3333333333; }
      .rtl article.post .post-meta {
        left: 0;
        right: auto; }
      article.post .post-meta span {
        display: inline-block;
        text-transform: uppercase; }
        article.post .post-meta span.date-post {
          font-size: 22px;
          background: #f25b22;
          color: white;
          padding: 10px 0; }
        article.post .post-meta span.month-post {
          font-size: 14px;
          padding: 5px 0;
          background: white;
          color: #000000;
          font-weight: 600;
          display: block; }
    article.post .entry-content {
      border: 1px solid #e4e7ea;
      padding: 30px;
      font-size: 13px;
      margin-bottom: 0;
      overflow: hidden; }
      article.post .entry-content .entry-title {
        margin-top: 0; }
      article.post .entry-content .author-post {
        margin-right: 20px; }
        .rtl article.post .entry-content .author-post {
          margin-left: 20px;
          margin-right: inherit; }
    article.post .post-info .entry-content {
      border: none;
      padding: 0;
      font-weight: 300;
      margin-top: 30px; }
    article.post:hover .post-thumbnail img {
      -webkit-transform: scale3d(1.1, 1.1, 1);
      -moz-transform: scale3d(1.1, 1.1, 1);
      -ms-transform: scale3d(1.1, 1.1, 1);
      -o-transform: scale3d(1.1, 1.1, 1);
      transform: scale3d(1.1, 1.1, 1); }
    article.post:hover .image-post img {
      -webkit-transform: scale3d(1.1, 1.1, 1);
      -moz-transform: scale3d(1.1, 1.1, 1);
      -ms-transform: scale3d(1.1, 1.1, 1);
      -o-transform: scale3d(1.1, 1.1, 1);
      transform: scale3d(1.1, 1.1, 1); }
  article .post-format a i {
    display: none; }
  article .post-content span a {
    display: inline-block;
    color: #f25b22;
    margin-top: 10px; }
    article .post-content span a:hover {
      color: #ed4b0e; }
  article.team {
    clear: both; }
    article.team .post-thumbnail {
      float: left;
      width: 30%;
      margin-bottom: 30px; }
    article.team .entry-content, article.team .entry-header {
      float: right;
      width: 67%; }

.related-posts {
  /* 	.entry-meta{
		border: 0;
		margin-bottom: 0;
	} */ }
  .related-posts .widget .widget-title {
    margin-bottom: 25px; }
  .related-posts article.post .post-info .entry-content {
    border: 1px solid #e4e7ea;
    padding: 30px;
    margin: 0; }

/*------------------------------------*    Comment List
\*------------------------------------*/
.comments {
  margin-bottom: 30px;
  border: 1px solid #e4e7ea;
  padding: 30px;
  clear: both;
  margin-top: 30px; }
  .comments .comments-title {
    font-size: 24px;
    margin-bottom: 0;
    padding: 13px 0;
    position: relative;
    color: #000; }
  .comments .the-comment {
    padding-top: 20px;
    padding-bottom: 20px;
    border-bottom: 1px dotted #e4e7ea; }
    .comments .the-comment .avatar {
      float: left;
      margin-right: 5px; }
      .rtl .comments .the-comment .avatar {
        float: right; }
      .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 .comment-text {
    -ms-word-wrap: break-word;
    word-wrap: break-word; }
  .comments input.btn {
    padding: 10px 25px; }
  .comments .comment-box {
    overflow: hidden; }
  .comments .comment-author {
    color: #f25b22; }
  .comments .comment-meta {
    font-size: 12px;
    color: #aaa; }
  .comments a {
    color: #f25b22;
    text-transform: uppercase;
    font-size: 12px; }
  .comments ol, .comments ul {
    margin: 0; }
  .comments .commentlists,
  .comments .children {
    list-style: none; }
    @media (max-width: 480px) {
      .comments .commentlists,
      .comments .children {
        padding-left: 10px; } }
  .comments .commentlists {
    padding-left: 0; }
    .rtl .comments .commentlists {
      padding-right: 0;
      padding-left: inherit; }

.comment-navigation {
  padding: 20px 0; }
  .comment-navigation .previous {
    float: left; }
  .comment-navigation .next {
    float: right; }

/*------------------------------------*\ 
    portfolio
\*------------------------------------*/
.single-portfolio .entry-title {
  margin: 10px 0 25px; }
  .single-portfolio .entry-title .title-post {
    text-transform: uppercase;
    margin: 0 0 15px; }

.single-portfolio .created {
  color: #999999;
  font-size: 10px;
  font-weight: 400;
  text-transform: uppercase; }

.single-portfolio .single-body {
  margin-top: 30px; }

.single-portfolio .gallery-thumb [class^="col-"] {
  margin-bottom: 20px; }

.single-portfolio .format-video .content-video {
  background: #FAFAFA; }

.single-portfolio .format-infomation .single-body {
  margin-top: 0; }
  .single-portfolio .format-infomation .single-body .portfolio-info {
    margin-bottom: 30px; }
    .single-portfolio .format-infomation .single-body .portfolio-info > div {
      padding: 10px 0;
      border-top: 1px solid #F1F1F1; }
      .single-portfolio .format-infomation .single-body .portfolio-info > div:last-child {
        border-bottom: 1px solid #F1F1F1; }
      .single-portfolio .format-infomation .single-body .portfolio-info > div > span {
        font-size: 16px;
        font-weight: 300; }
        .single-portfolio .format-infomation .single-body .portfolio-info > div > span:first-child {
          width: 90px;
          display: inline-block;
          color: #777777; }
        .single-portfolio .format-infomation .single-body .portfolio-info > div > span:last-child {
          color: #000; }
    .single-portfolio .format-infomation .single-body .portfolio-info a:hover {
      color: #f25b22; }

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

.ih-item {
  position: relative;
  margin-bottom: 30px; }
  .ih-item .info {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    text-align: center;
    top: 0; }
    .ih-item .info > * {
      color: #FFF; }
    .ih-item .info h3 {
      text-align: center;
      padding: 10px 25px;
      font-size: 15px;
      -webkit-transition: opacity 1s ease 0s, transform 1s ease 0s;
      -o-transition: opacity 1s ease 0s, transform 1s ease 0s;
      transition: opacity 1s ease 0s, transform 1s ease 0s; }
    .ih-item .info p {
      font-style: italic;
      position: relative;
      color: #bbb;
      padding: 20px 20px 20px;
      text-align: center;
      font-size: 14px; }
  .ih-item:hover .info h3 {
    -webkit-transform: scale3d(1.1, 1.1, 1);
    -moz-transform: scale3d(1.1, 1.1, 1);
    -ms-transform: scale3d(1.1, 1.1, 1);
    -o-transform: scale3d(1.1, 1.1, 1);
    transform: scale3d(1.1, 1.1, 1); }

.ih-item .info {
  opacity: 0;
  filter: alpha(opacity=0);
  background: rgba(0, 0, 0, 0.5);
  -webkit-transition: all 0.35s;
  -o-transition: all 0.35s;
  transition: all 0.35s; }
  .ih-item .info h3 {
    background: none; }
    .ih-item .info h3:hover {
      color: #f25b22; }
  .ih-item .info .description {
    display: none; }
  .ih-item .info .created, .ih-item .info .zoom {
    display: block !important;
    visibility: visible !important;
    padding: 0;
    color: #FFF;
    font-weight: 400; }
  .ih-item .info .info-inner {
    position: absolute;
    top: 50%;
    margin-top: -60px;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 1; }
    .ih-item .info .info-inner h3 {
      margin: 0; }
    .ih-item .info .info-inner .zoom {
      position: relative;
      width: 35px;
      height: 35px;
      top: 5px;
      left: 0;
      right: 0;
      bottom: 0;
      content: "";
      margin: auto;
      opacity: 0;
      filter: alpha(opacity=0);
      -webkit-transform: scale(0);
      -ms-transform: scale(0);
      -o-transform: scale(0);
      transform: scale(0);
      -webkit-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;
      visibility: hidden; }
      .ih-item .info .info-inner .zoom:before {
        content: "+";
        position: absolute;
        font-size: 18px;
        color: #fafafa;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 35px;
        height: 35px;
        line-height: 30px;
        border: 2px solid #fafafa;
        border-radius: 50%;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        -ms-border-radius: 50%;
        -o-border-radius: 50%;
        text-align: center;
        margin: auto; }
      .ih-item .info .info-inner .zoom:hover:before {
        color: #f25b22;
        border-color: #f25b22; }
      .ih-item .info .info-inner .zoom i {
        display: none; }

.ih-item:hover .info {
  opacity: 1;
  filter: alpha(opacity=100); }
  .ih-item:hover .info .zoom {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    visibility: visible; }

.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: #f25b22;
  -webkit-transition: all 0.35s;
  -o-transition: all 0.35s;
  transition: all 0.35s; }
  .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: #f25b22;
  -webkit-transition: all 0.35s;
  -o-transition: all 0.35s;
  transition: all 0.35s; }
  .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: "\f067";
    font-family: "FontAwesome";
    height: 50px;
    width: 50px;
    text-align: center;
    line-height: 48px;
    font-size: 20px;
    display: block;
    font-weight: 400; }

/* team single */
.team-single {
  margin-bottom: 60px;
  overflow: hidden; }
  .team-single .team-wrapper {
    margin-bottom: 60px; }
  .team-single .team-content .team-info {
    width: 300px;
    float: left;
    margin-right: 30px;
    background-color: #fafafa;
    margin-top: 25px;
    position: relative; }
    .rtl .team-single .team-content .team-info {
      float: right; }
    .rtl .team-single .team-content .team-info {
      margin-left: 30px;
      margin-right: inherit; }
    .team-single .team-content .team-info ul.metabox {
      list-style: none;
      padding: 0; }
      .team-single .team-content .team-info ul.metabox li {
        border-top: 1px dotted #e4e7ea;
        padding: 20px  30px;
        font-size: 12px; }
        .team-single .team-content .team-info ul.metabox li span {
          text-transform: uppercase;
          font-weight: 500;
          display: block; }
    .team-single .team-content .team-info .team-job {
      text-transform: uppercase;
      font-weight: 500;
      margin-bottom: 10px;
      margin-top: 15px; }
    .team-single .team-content .team-info .social {
      margin-bottom: 20px; }
      .team-single .team-content .team-info .social a {
        font-size: 20px;
        margin: 0 10px; }
  .team-single .team-content .team-body {
    display: table-cell; }
  .team-single .team-content .opal-social-share {
    margin-top: 30px; }
  .team-single .team-content .post-thumbnail {
    float: none;
    width: 100%; }

/* 6. Form */
/*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; }

.space-padding-left-30 {
  padding-left: 30px !important; }

.hasborder {
  border: 1px solid #e4e7ea !important; }

.noborder {
  border: 1px solid transparent !important; }

.border-top {
  border-top: 1px solid #e4e7ea !important;
  margin-top: 2px; }

.line-height-30 {
  line-height: 30px; }

.bg-none {
  background: transparent !important; }

@media (min-width: 992px) {
  .opal-footer .border-right {
    border-width: 0 1px 0 0;
    border-color: rgba(255, 255, 255, 0.1);
    border-style: solid; } }

@media (min-width: 992px) {
  .opal-footer .border-left {
    border-left: 1px solid #e1e1e1; }
    .rtl .opal-footer .border-left {
      border-right: 1px solid #e1e1e1;
      border-left: inherit; } }

/* 
 * 	Core Owl Carousel CSS File
 *	v1.3.3
 */
.no-space-row .row, .no-space-row .kc_column {
  margin: 0; }

.no-space-row [class^="kc_col-"],
.no-space-row [class*="kc_col-"] {
  padding: 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; }

.bg-primary {
  background: #f25b22; }

.box-shadow {
  -webkit-box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.11);
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.11);
  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: #f25b22;
    border-color: #f25b22; }
  .open .btn-outline-light.dropdown-toggle {
    color: #FFFFFF;
    background-color: #f25b22;
    border-color: #f25b22; }
  .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: #f25b22;
    border-color: #f25b22; }
  .open .btn-outline-dark.dropdown-toggle {
    color: #FFF;
    background-color: #f25b22;
    border-color: #f25b22; }
  .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: #f25b22;
  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: #f25b22; }

.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: #f25b22; }
    .btn-outline.btn-primary:hover {
      color: #FFFFFF; }
  .btn-outline.btn-success {
    color: #f25b22; }
    .btn-outline.btn-success:hover {
      color: #FFFFFF; }
  .btn-outline.btn-info {
    color: #549dde; }
    .btn-outline.btn-info:hover {
      color: #FFFFFF; }
  .btn-outline.btn-danger {
    color: #e56363; }
    .btn-outline.btn-danger:hover {
      color: #FFFFFF; }
  .btn-outline.btn-warning {
    color: #ffca00; }
    .btn-outline.btn-warning:hover {
      color: #FFFFFF; }

.btn-inverse.btn-primary:hover {
  color: #f25b22;
  background: transparent; }

.btn-inverse.btn-success:hover {
  color: #f25b22;
  background: transparent; }

.btn-inverse.btn-info:hover {
  color: #549dde;
  background: transparent; }

.btn-inverse.btn-danger:hover {
  color: #e56363;
  background: transparent; }

.btn-inverse.btn-warning:hover {
  color: #ffca00;
  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;
  background: transparent; }

.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;
  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%; }
  .rtl .owl-controls .owl-buttons .owl-prev {
    right: 10px;
    left: auto; }

.owl-controls .owl-buttons .owl-next {
  right: 10px;
  top: 50%; }
  .rtl .owl-controls .owl-buttons .owl-next {
    left: 10px;
    right: auto; }

/* 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);
  transition: all .3s ease;
  font-size: 40px;
  color: transparent;
  z-index: 99;
  background: transparent; }
  .owl-carousel .owl-buttons div:before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    font-family: FontAwesome;
    color: #999999;
    line-height: 46px;
    text-align: center; }
  .owl-carousel .owl-buttons div.owl-prev:before {
    content: "\f104"; }
  .owl-carousel .owl-buttons div.owl-next:before {
    content: "\f105"; }

.owl-carousel:hover .owl-buttons div {
  opacity: 0.7; }

.owl-carousel .owl-buttons div:hover:before {
  color: #f25b22; }

.owl-carousel .owl-buttons div i {
  font-size: 40px;
  margin: -20px 0 0; }

.owl-carousel .owl-buttons .owl-prev {
  left: -100px; }

.owl-carousel .owl-buttons .owl-next {
  right: -100px; }

.owl-carousel:hover .owl-buttons .owl-prev {
  left: -70px; }

.owl-carousel:hover .owl-buttons .owl-next {
  right: -70px; }

.owl-pagination {
  text-align: center;
  top: 0px;
  position: relative;
  margin-top: 30px; }

.owl-controls .owl-page {
  display: inline-block;
  margin: 0px 6px; }

.owl-controls .owl-page span {
  display: block;
  width: 12px;
  height: 12px;
  background: #ebebeb;
  border-radius: 50%; }

.owl-controls .owl-page.active {
  position: relative; }

.owl-controls .owl-page.active span {
  background: #f25b22;
  opacity: 1; }

.owl-carousel-play {
  position: relative;
  margin-left: -15px;
  margin-right: -15px; }

.owl-carousel-play .carousel-control {
  opacity: 0;
  z-index: 1;
  right: 0;
  top: 12%;
  line-height: 32px;
  position: absolute;
  -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;
  color: #f25b22;
  border: 1px solid #e4e7ea; }
  .rtl .owl-carousel-play .carousel-control {
    left: 0;
    right: auto; }
  .owl-carousel-play .carousel-control.left {
    left: -50px; }
  .owl-carousel-play .carousel-control.right {
    right: -50px;
    left: auto; }
  .owl-carousel-play .carousel-control.carousel-center {
    top: 50%; }

.owl-carousel-play:hover .carousel-control {
  opacity: 1;
  border-color: #f25b22; }
  .owl-carousel-play:hover .carousel-control.left {
    left: -30px; }
    @media screen and (max-width: 992px) {
      .owl-carousel-play:hover .carousel-control.left {
        left: 15px; } }
  .owl-carousel-play:hover .carousel-control.right {
    right: -30px; }
    @media screen and (max-width: 992px) {
      .owl-carousel-play:hover .carousel-control.right {
        right: 15px; } }
  .owl-carousel-play:hover .carousel-control:hover {
    color: white; }

.carousel-md {
  width: 44px;
  height: 44px;
  line-height: 44px; }

.carousel-sm {
  width: 34px;
  height: 34px;
  line-height: 34px;
  font-size: 14px; }

.carousel-xs {
  /* 	@include size($bo-carousel-xs-width, $bo-carousel-xs-height);
	 line-height: $bo-carousel-xs-height;
	 font-size: 14px; */ }

/*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: 16px; }

.text-big-2 {
  font-size: 24px;
  font-weight: 600; }

.text-big-3 {
  font-size: 48px; }

.text-primary {
  color: #f25b22 !important; }

.text-purple {
  color: #6c58bd !important; }

.text-red {
  color: #c32322 !important; }

.text-red-1 {
  color: #ff0000 !important; }

.text-orange {
  color: #f66000 !important; }

.text-hover {
  color: #f25b22 !important; }

.text-yellow {
  color: #e2d951 !important; }

.text-black {
  color: #000 !important; }

.text-white, .text-light {
  color: #FFFFFF !important; }

.text-light a {
  color: white; }
  .text-light a:hover {
    color: #f25b22; }

.text-darker {
  color: #333 !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; }

/**
 * Menu
 */
ul.menu {
  padding: 0;
  margin: 0; }
  ul.menu li {
    list-style: none; }

.theme-dropdown .dropdown-menu {
  position: static;
  display: block;
  margin-bottom: 20px; }

/****/
/*
 * Block Heading
 */
.element-block-heading {
  margin-bottom: 40px;
  margin-top: 30px; }
  @media (min-width: 1200px) {
    .element-block-heading {
      margin-top: 60px; } }
  .element-block-heading .heading {
    position: relative;
    font-size: 36px;
    margin-top: 6px;
    line-height: 36px;
    padding-left: 15px; }
    .rtl .element-block-heading .heading {
      padding-right: 15px;
      padding-left: inherit; }
    .element-block-heading .heading:before {
      content: "";
      position: absolute;
      left: 0;
      width: 5px;
      height: 30px;
      background: #f25b22;
      top: 0; }
      .rtl .element-block-heading .heading:before {
        right: 0;
        left: auto; }
  .element-block-heading .sub-heading {
    font-size: 16px;
    font-weight: 300;
    color: #999999;
    font-family: "Poppins", sans-serif;
    text-transform: none;
    margin-top: 0;
    padding-left: 15px; }
    .rtl .element-block-heading .sub-heading {
      padding-right: 15px;
      padding-left: inherit; }
  .element-block-heading.style-v1 {
    margin-top: 0;
    text-align: right; }
    .rtl .element-block-heading.style-v1 {
      text-align: left; }
    .element-block-heading.style-v1 .heading {
      color: white; }
      .element-block-heading.style-v1 .heading:before {
        content: none; }
  .element-block-heading.style-v3 {
    text-align: center; }
    .element-block-heading.style-v3 .heading:before {
      content: none; }
  .element-block-heading.style-v4 {
    text-align: center; }
    .element-block-heading.style-v4 .heading {
      color: #FFF; }
      .element-block-heading.style-v4 .heading:before {
        content: none; }
  .element-block-heading.style-v5 .sub-heading {
    color: #ccc; }
  .element-block-heading.style-v5 .heading {
    color: #FFF; }

.testimonial-collection .testimonials-avatar {
  margin: 30px 0; }

.testimonial-collection .testimonials-name {
  font-weight: 600;
  font-size: 16px;
  font-family: "Poppins", sans-serif;
  text-transform: none;
  margin-bottom: 0; }

.testimonial-collection .testimonials-description {
  font-size: 14px;
  margin-bottom: 50px;
  position: relative;
  padding-top: 50px;
  line-height: 30px;
  font-weight: 300; }
  .testimonial-collection .testimonials-description:before {
    content: "\f10d";
    font-family: "FontAwesome";
    position: absolute;
    top: 0;
    color: #f25b22;
    left: 0;
    right: 0;
    font-size: 30px; }

.testimonial-collection .testimonials-left .job {
  color: #999999;
  font-weight: 300; }

.testimonial-collection .testimonials-left .testimonials-avatar img {
  width: 60px;
  height: 60px; }

.testimonial-collection .testimonials-left .testimonials-name {
  color: white; }

.testimonial-collection .testimonials-left .testimonials-description {
  color: #cccccc;
  font-size: 18px;
  margin-bottom: 50px;
  line-height: 30px;
  font-weight: 300;
  padding-top: 45px;
  padding-left: 30px;
  padding-right: 30px; }
  @media (min-width: 1200px) {
    .testimonial-collection .testimonials-left .testimonials-description {
      padding-left: 160px;
      padding-right: 160px; } }

.testimonial-collection .testimonials-left strong {
  color: white;
  font-weight: 600;
  line-height: 40px; }

.testimonial-collection .testimonials-v1 {
  border: 1px solid #e4e7ea;
  box-shadow: 0 2px 0 0 #ebebeb inset;
  padding: 40px; }
  .testimonial-collection .testimonials-v1 .testimonials-avatar {
    float: left;
    height: 100px;
    width: 100px;
    position: relative;
    margin-right: 20px;
    margin-top: 0;
    margin-bottom: 0; }
    .rtl .testimonial-collection .testimonials-v1 .testimonials-avatar {
      float: right; }
    .rtl .testimonial-collection .testimonials-v1 .testimonials-avatar {
      margin-left: 20px;
      margin-right: inherit; }
  .testimonial-collection .testimonials-v1 .media-body {
    text-align: left; }
    .rtl .testimonial-collection .testimonials-v1 .media-body {
      text-align: right; }
  .testimonial-collection .testimonials-v1 .testimonials-profile {
    margin-bottom: -20px; }
  .testimonial-collection .testimonials-v1 strong {
    color: #000000;
    font-size: 18px; }

.testimonial-collection .testimonials-v2 {
  text-align: center; }
  .testimonial-collection .testimonials-v2 .testimonials-description {
    color: #999999; }

.testimonial-collection .testimonials-v6 {
  text-align: center;
  padding: 20px 15px; }

.testimonial-collection.testimonial-v1 .owl-pagination {
  margin-top: 0;
  right: 14%;
  top: -15px; }
  .rtl .testimonial-collection.testimonial-v1 .owl-pagination {
    left: 14%;
    right: auto; }

/** SOCIAL ICONS ***/
.bo-social-icons [class^="bo-social-"] {
  color: #FFFFFF;
  display: inline-block;
  margin: 10px 5px;
  overflow: hidden;
  text-decoration: none;
  text-align: center;
  vertical-align: top;
  line-height: 32px;
  width: 32px;
  height: 32px;
  background: #e1e1e1;
  transition: all 0.2s ease-out 0s; }
  .bo-social-icons [class^="bo-social-"]:hover {
    background: #000000;
    color: #FFFFFF;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%; }

.bo-social-icons .bo-social-white {
  background: rgba(255, 255, 255, 0.1);
  margin: 0; }

.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-social-icons.bo-sicolor [class*="bo-social-"] {
  color: #FFFFFF;
  margin-bottom: 10px; }

.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: #f25b22; }
  .dropcap.dropcap-info {
    background: #549dde; }
  .dropcap.dropcap-danger {
    background: #e56363; }
  .dropcap.dropcap-success {
    background: #58be50; }
  .dropcap.dropcap-warning {
    background: #ffca00; }

.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 #cccccc; }
    .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: #549dde; }
  .blockquote.blockquote-danger {
    border-left-color: #e56363; }
  .blockquote.blockquote-success {
    border-left-color: #58be50; }
  .blockquote.blockquote-warning {
    border-left-color: #ffca00; }
  .blockquote.border {
    border: 1px solid #ddd; }

/* --- SCSS For Counters --- */
.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: "Fjalla One", monospace; }
    .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 #e4e7ea;
      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: #f25b22 !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: #f25b22;
      margin: 0 -10px;
      position: relative;
      height: 100px; }
      .pricing.pricing-v2 .plan-price .plan-price-body {
        background: #f25b22;
        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: #f25b22;
      color: #FFF; }
    .pricing.pricing-v2.pricing-highlight .btn-block {
      background: #f25b22;
      border-color: #f25b22; }
      .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: #f25b22; }
  .pricing.pricing-v3 {
    background: #FFFFFF;
    border: 1px solid #e6e8ed; }
    .pricing.pricing-v3:hover {
      background: #f5f6fa;
      -webkit-transition: all 0.3s ease 0s;
      -o-transition: all 0.3s ease 0s;
      transition: all 0.3s ease 0s;
      box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.17); }
      .pricing.pricing-v3:hover .pricing-footer .btn-default {
        background: #000000;
        color: white;
        -webkit-transition: all 0.3s ease 0s;
        -o-transition: all 0.3s ease 0s;
        transition: all 0.3s ease 0s; }
      .pricing.pricing-v3:hover img {
        -webkit-transform: scale3d(1.1, 1.1, 1);
        -moz-transform: scale3d(1.1, 1.1, 1);
        -ms-transform: scale3d(1.1, 1.1, 1);
        -o-transform: scale3d(1.1, 1.1, 1);
        transform: scale3d(1.1, 1.1, 1);
        opacity: 0.8;
        filter: alpha(opacity=80); }
    .pricing.pricing-v3 .featured-image {
      overflow: hidden;
      display: none; }
    .pricing.pricing-v3 img {
      -webkit-transition: opacity 1s ease 0s, transform 1s ease 0s;
      -o-transition: opacity 1s ease 0s, transform 1s ease 0s;
      transition: opacity 1s ease 0s, transform 1s ease 0s; }
    .pricing.pricing-v3 .plan-title {
      font-size: 18px;
      text-transform: uppercase;
      font-weight: 300;
      margin: 0;
      padding: 20px 0;
      border: none; }
    .pricing.pricing-v3 .plan-price {
      padding-top: 15px;
      color: #000000; }
      .pricing.pricing-v3 .plan-price span {
        font-size: 30px; }
    .pricing.pricing-v3 .pricing-body {
      padding: 0 30px 30px; }
    .pricing.pricing-v3 .plan-currency {
      font-size: 30px;
      font-weight: 300; }
    .pricing.pricing-v3 .plain-info p {
      color: #999999; }
    .pricing.pricing-v3 .plain-info div {
      border-bottom: 1px solid #e1e1e1;
      padding: 10px 0;
      margin: 0 15px; }
    .pricing.pricing-v3 .pricing-footer {
      padding: 30px;
      margin-bottom: 30px; }
      .pricing.pricing-v3 .pricing-footer .btn-default {
        background: transparent;
        color: #000000;
        border: 1px solid #000000;
        box-shadow: none;
        padding: 18px 60px;
        display: inline; }
      .pricing.pricing-v3 .pricing-footer br {
        display: none; }
    .pricing.pricing-v3.pricing-highlight .plan-title {
      background: white;
      color: #000000; }
    .pricing.pricing-v3.pricing-highlight .btn-block {
      background: #f25b22;
      border-color: #f25b22; }
      .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: #f25b22; }
  .pricing.pricing-highlight {
    background: #f5f6fa;
    -webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
    box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.17); }
    .pricing.pricing-highlight .pricing-footer .btn-default {
      background: #000000;
      color: white; }

/* our team */
.team-v1 {
  border: 1px solid #e1e1e1;
  text-align: center; }
  .team-v1 .team-header {
    position: relative; }
  .team-v1 .team-body {
    padding: 30px;
    border-top: 1px solid #e1e1e1; }
  .team-v1 .bo-social-icons {
    position: absolute;
    background: rgba(0, 0, 0, 0.6);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 999;
    text-align: center;
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    -o-transform: scale(0);
    transform: scale(0);
    -webkit-transition: all 0.35s;
    -o-transition: all 0.35s;
    transition: all 0.35s; }
    .team-v1 .bo-social-icons [class*="bo-social-"] {
      top: 50%;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      -o-transform: translateY(-50%);
      transform: translateY(-50%);
      margin-top: 0;
      position: relative;
      border-radius: 0 !important;
      border: none; }
      .team-v1 .bo-social-icons [class*="bo-social-"]:hover {
        background: #f25b22;
        color: white; }
  .team-v1 .team-name {
    margin-top: 0;
    font-size: 16px;
    position: relative;
    text-transform: none;
    font-weight: 600;
    font-family: "Poppins", sans-serif; }
  .team-v1 p {
    color: #999999;
    font-weight: 300;
    margin-bottom: 0; }
  .team-v1:hover .bo-social-icons {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    opacity: 1;
    filter: alpha(opacity=100); }

/*blog */
.blog-item.first {
  clear: both; }

.list-post .list-post-title {
  margin-top: 0; }

.blogv1 a {
  color: white; }
  .blogv1 a:hover {
    color: #f25b22; }

.blogv1 .entry-date, .blogv1 .entry-meta .fa {
  color: white; }

.scrollup {
  z-index: 9999;
  display: none;
  position: fixed;
  left: auto;
  right: 20px;
  bottom: 30px;
  margin: 0;
  color: #999999;
  background-color: #000;
  width: 40px;
  height: 40px;
  text-align: center;
  line-height: 40px;
  border-radius: 5px;
  -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; }
  .rtl .scrollup {
    right: auto;
    left: auto; }
  .rtl .scrollup {
    left: 20px;
    right: auto; }
  .scrollup:hover {
    color: #FFF !important;
    box-shadow: 0 0 0 30px #f25b22 inset; }

/* 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;
    pointer-events: none; }
  .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 {
  background-color: #000;
  overflow: hidden;
  border-bottom: 1px solid #e1e1e1;
  position: relative;
  /* style for hover */ }
  .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-v5*/
.effect-v5 {
  background-color: #000;
  overflow: hidden;
  position: relative;
  /* style for hover */ }
  .effect-v5 img {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: opacity 1s ease 0s, transform 1s ease 0s;
    -o-transition: opacity 1s ease 0s, transform 1s ease 0s;
    transition: opacity 1s ease 0s, transform 1s ease 0s; }
  .effect-v5 .action {
    transform: translate3d(-150%, 0px, 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-v5:hover img {
    opacity: 0.5;
    filter: alpha(opacity=50);
    transform: scale3d(1.1, 1.1, 1); }
  .effect-v5:hover .action {
    opacity: 1;
    filter: alpha(opacity=100);
    transform: scale3d(1.1, 1.1, 1);
    transform: translate3d(0px, 0px, 0px); }

/* 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 {
  overflow: hidden;
  position: relative;
  display: block !important; }
  .effect-default:before {
    background: rgba(255, 255, 255, 0.1) none repeat scroll 0 0;
    content: "";
    display: inline-block;
    height: 559px;
    position: absolute;
    right: 755px;
    top: 0;
    -webkit-transform: skew(-45deg);
    -moz-transform: skew(-45deg);
    -ms-transform: skew(-45deg);
    -o-transform: skew(-45deg);
    transform: skew(-45deg);
    -webkit-transition: all 0.6s ease-in-out 0s;
    -o-transition: all 0.6s ease-in-out 0s;
    transition: all 0.6s ease-in-out 0s;
    width: 600px; }
  .effect-default:hover:before {
    right: -900px; }

.feature-box {
  color: #999; }
  .feature-box small {
    font-size: 12px;
    margin-bottom: 10px;
    display: inline-block;
    font-weight: 300; }
  .feature-box h4 {
    margin: 0;
    font-size: 14px;
    font-weight: 600;
    font-family: "Poppins", sans-serif; }
  .feature-box .description {
    font-weight: 300;
    color: #666666; }
  .feature-box .fbox-icon {
    color: #f25b22; }
    .feature-box .fbox-icon i {
      font-size: 40px; }
  .feature-box.feature-box-nostyle h4 {
    margin-bottom: 0; }
  .feature-box.feature-box-nostyle small {
    color: rgba(34, 34, 34, 0.5);
    line-height: 1; }
  .feature-box.feature-box-nostyle .fbox-icon {
    margin-top: 5px; }
  .feature-box:hover h4 {
    color: #f25b22; }

.feature-box-v1 {
  margin-bottom: 30px; }
  .feature-box-v1 .fbox-body {
    position: relative;
    margin-bottom: 10px;
    padding-bottom: 7px; }
  .feature-box-v1 h4 {
    text-transform: uppercase;
    font-size: 16px; }
  .feature-box-v1 .fbox-icon {
    height: 50px; }
    .feature-box-v1 .fbox-icon i {
      font-size: 30px; }
  .feature-box-v1 p {
    height: 70px;
    overflow: hidden; }

.feature-box-v2 {
  margin-bottom: 30px; }
  .feature-box-v2 .fbox-body {
    position: relative;
    margin-bottom: 10px;
    padding-bottom: 7px;
    text-align: right; }
    .rtl .feature-box-v2 .fbox-body {
      text-align: left; }
  .feature-box-v2 h4 {
    text-transform: uppercase;
    font-size: 16px; }
  .feature-box-v2 .fbox-icon {
    height: 50px;
    text-align: right; }
    .rtl .feature-box-v2 .fbox-icon {
      text-align: left; }
    .feature-box-v2 .fbox-icon i {
      font-size: 30px; }
  .feature-box-v2 p {
    height: 70px;
    overflow: hidden;
    text-align: right; }
    .rtl .feature-box-v2 p {
      text-align: left; }

.no-space-row [class*="col-"] .feature-box-v3:last-child {
  border-bottom: 0; }

.no-border .feature-box-v3 {
  border-right: 0; }
  .rtl .no-border .feature-box-v3 {
    border-left: 0;
    border-right: inherit; }

.feature-box-v3 {
  position: relative;
  text-align: center;
  padding: 40px 40px 60px;
  border-bottom: 1px solid #e4e7ea;
  border-right: 1px solid #e4e7ea; }
  .rtl .feature-box-v3 {
    border-left: 1px solid #e4e7ea;
    border-right: inherit; }
  .feature-box-v3 h4 {
    margin-bottom: 30px; }
    .feature-box-v3 h4:hover {
      color: #f25b22; }
    .feature-box-v3 h4 a {
      color: white; }
  .feature-box-v3 .fbox-icon {
    margin-bottom: 30px;
    display: inline-flex;
    color: #f25b22; }
  .feature-box-v3:hover {
    background: white;
    box-shadow: 0 20px 30px 0 rgba(0, 0, 0, 0.05);
    -webkit-transition: all 0.35s ease 0s;
    -o-transition: all 0.35s ease 0s;
    transition: all 0.35s ease 0s;
    border-color: white;
    margin-left: -1px; }
    .rtl .feature-box-v3:hover {
      margin-right: -1px;
      margin-left: inherit; }
    .feature-box-v3:hover h4 a {
      color: #f25b22;
      -webkit-transition: all 0.35s ease 0s;
      -o-transition: all 0.35s ease 0s;
      transition: all 0.35s ease 0s; }

.feature-box-v4 {
  margin-bottom: 35px;
  display: inline-block; }
  .feature-box-v4 h4 {
    margin-bottom: 15px; }
  .feature-box-v4 .fbox-icon {
    float: left;
    margin-right: 20px;
    margin-top: -15px; }
    .rtl .feature-box-v4 .fbox-icon {
      float: right; }
    .rtl .feature-box-v4 .fbox-icon {
      margin-left: 20px;
      margin-right: inherit; }
  .feature-box-v4 .description {
    float: left;
    margin-top: 10px; }
    .rtl .feature-box-v4 .description {
      float: right; }

.kc-feature-boxes.kc-fb-layout-2 {
  box-shadow: none; }

.around-img img:hover {
  animation: spinAround 2s linear infinite;
  -moz-animation: spinAround 2s linear infinite;
  -webkit-animation: spinAround 2s linear infinite;
  -o-animation: spinAround 2s linear infinite; }

/**
 * GoogleMap
 */
.kc-google-maps iframe {
  pointer-events: none; }

.contact .form-control {
  background: #dfe6e8;
  border-radius: 3px;
  height: 50px; }

.contact .btn {
  width: 100%;
  padding: 15px 40px;
  border-radius: 3px; }

.contact textarea.form-control {
  min-height: 290px; }

.highlight .element-timelife {
  border: 1px solid #e4e7ea;
  background: #fdfdfd;
  padding: 30px 30px 0; }
  .highlight .element-timelife .timelife-content {
    color: #666666; }
    .highlight .element-timelife .timelife-content h4 {
      color: #000000;
      border-bottom: 1px solid #e4e7ea;
      padding-bottom: 15px; }
      .highlight .element-timelife .timelife-content h4:after {
        content: none; }
    .highlight .element-timelife .timelife-content .timelife-description {
      color: #000000;
      font-size: 16px;
      font-weight: 300;
      padding: 0; }
      .highlight .element-timelife .timelife-content .timelife-description span {
        font-size: 14px;
        color: #666666; }

.entry-timeline {
  color: white;
  display: inline-block;
  margin-bottom: 30px; }
  .entry-timeline .timelife-head i {
    display: none; }
  .entry-timeline .timelife-head .timelife-date {
    font-size: 30px;
    font-weight: 300;
    color: #f25b22; }
  .entry-timeline .timelife-content h4 {
    color: white;
    text-transform: uppercase;
    font-size: 14px;
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    border-bottom: 1px;
    border-bottom-style: solid;
    border-color: rgba(255, 255, 255, 0.2);
    margin-bottom: 30px;
    padding-bottom: 30px;
    position: relative; }
    .entry-timeline .timelife-content h4:after {
      width: 20px;
      height: 2px;
      content: "";
      left: 0;
      bottom: -1px;
      background: white;
      position: absolute; }
      .rtl .entry-timeline .timelife-content h4:after {
        right: 0;
        left: auto; }
  .entry-timeline .timelife-content .timelife-description {
    color: #cccccc;
    padding-right: 30px;
    font-weight: 300; }
    .rtl .entry-timeline .timelife-content .timelife-description {
      padding-left: 30px;
      padding-right: inherit; }

.contact-us h3 {
  color: white; }

.contact-us i {
  margin-right: 10px; }
  .rtl .contact-us i {
    margin-left: 10px;
    margin-right: inherit; }

.contact-us li {
  margin-bottom: 10px;
  line-height: 20px;
  list-style: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex; }
  .contact-us li i {
    margin-right: 15px;
    line-height: 22px; }

.contact-time p {
  border-bottom: 1px solid #e4e7ea;
  padding-bottom: 10px; }

@media (min-width: 768px) {
  .entry-content-page > .kc_row > .kc-row-container.kc-container {
    max-width: 780px; } }

@media (min-width: 992px) {
  .entry-content-page > .kc_row > .kc-row-container.kc-container {
    max-width: 1000px; } }

@media (min-width: 1200px) {
  .entry-content-page > .kc_row > .kc-row-container.kc-container {
    max-width: 1200px; } }

.kc-wrap-columns {
  width: auto !important; }

.kc_tabs.group {
  border: 1px solid #e4e7ea; }
  .kc_tabs.group .kc_wrapper.ui-tabs {
    display: block; }
  .kc_tabs.group .kc_wrapper .kc_tabs_nav {
    background: white; }
  .kc_tabs.group .kc_wrapper .ui-tabs-nav {
    background: white;
    border-bottom: 1px solid #e4e7ea !important; }
    .kc_tabs.group .kc_wrapper .ui-tabs-nav > li {
      border-right: 1px solid #e4e7ea;
      border-top: 0; }
      .rtl .kc_tabs.group .kc_wrapper .ui-tabs-nav > li {
        border-left: 1px solid #e4e7ea;
        border-right: inherit; }
      .kc_tabs.group .kc_wrapper .ui-tabs-nav > li > a {
        color: #000000;
        font-size: 14px;
        font-weight: 600;
        text-transform: uppercase;
        border-top: 5px solid transparent;
        -webkit-transition: all 0.35s ease 0s;
        -o-transition: all 0.35s ease 0s;
        transition: all 0.35s ease 0s;
        padding: 0 26px; }
        .kc_tabs.group .kc_wrapper .ui-tabs-nav > li > a:hover {
          background: none;
          color: #f25b22; }
      .kc_tabs.group .kc_wrapper .ui-tabs-nav > li.ui-tabs-active a {
        background: white;
        border-top: 5px solid #f25b22; }
      .kc_tabs.group .kc_wrapper .ui-tabs-nav > li:hover {
        background: none; }
  .kc_tabs.group .kc_wrapper .ui-tabs-body-active {
    background: white; }
  .kc_tabs.group .kc_tab .kc_tab_content {
    padding: 30px;
    display: inline-block; }

.list-post-type .list-item:last-child {
  border-bottom: 0; }

.kc-pie-chart-wrapper .pie_chart_text h3 {
  color: #000000;
  font-size: 14px;
  font-weight: 600; }

.kc_text_block p {
  line-height: 30px; }

.kc_text_block.contact-call p {
  line-height: 25px;
  font-weight: 300;
  color: #999999; }

.kc_text_block.contact-call strong {
  color: #f25b22;
  font-size: 22px;
  line-height: 45px; }

.kc-feature-boxes.kc-fb-layout-4 {
  margin-bottom: 10px;
  background: #2e3132;
  padding: 5px 30px; }
  .kc-feature-boxes.kc-fb-layout-4 .content-image {
    width: 10%; }
  .kc-feature-boxes.kc-fb-layout-4 .content-title {
    color: white;
    font-weight: normal;
    text-transform: none;
    font-size: 18px;
    margin-top: 10px;
    margin-bottom: 0; }
  .kc-feature-boxes.kc-fb-layout-4:hover {
    background: #161717;
    -webkit-box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.17);
    box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.17);
    -webkit-transition: all 0.35s ease 0s;
    -o-transition: all 0.35s ease 0s;
    transition: all 0.35s ease 0s; }
    .kc-feature-boxes.kc-fb-layout-4:hover .content-title {
      color: #ffca00; }

/* kc_button */
body .kc_button {
  background: #f25b22;
  font-weight: bold;
  border-radius: 50px;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  -ms-border-radius: 50px;
  -o-border-radius: 50px;
  text-transform: uppercase;
  line-height: 1.62857;
  -webkit-transition: all 0.35s ease 0s;
  -o-transition: all 0.35s ease 0s;
  transition: all 0.35s ease 0s;
  color: #fff;
  font-size: 14px;
  padding: 20px 45px; }
  body .kc_button:hover {
    background: #d5430d;
    -webkit-box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.17);
    box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.17);
    -webkit-transition: all 0.35s ease 0s;
    -o-transition: all 0.35s ease 0s;
    transition: all 0.35s ease 0s; }

/* title style */
.kc-title-wrap {
  font-size: 16px;
  margin-bottom: 40px;
  margin-top: 30px;
  font-weight: 300;
  color: #999999; }
  @media (min-width: 1200px) {
    .kc-title-wrap {
      margin-top: 60px; } }
  .kc-title-wrap.align-center .kc_title:before {
    content: none; }
  .kc-title-wrap.align-right {
    margin-top: 0;
    margin-bottom: 20px; }
    .kc-title-wrap.align-right .kc_title {
      color: white; }
      .kc-title-wrap.align-right .kc_title:before {
        content: none; }

.kc_title {
  position: relative;
  font-size: 36px;
  margin-top: 6px;
  line-height: 36px;
  padding-left: 15px; }
  .rtl .kc_title {
    padding-right: 15px;
    padding-left: inherit; }
  .kc_title:before {
    content: "";
    position: absolute;
    left: 0;
    width: 5px;
    height: 30px;
    background: #f25b22;
    top: 0; }
    .rtl .kc_title:before {
      right: 0;
      left: auto; }
  .kc_title.highlight:before {
    top: 80px; }

h1.kc_title:before {
  content: none; }

h3.kc_title {
  color: white; }

h5.kc_title {
  font-size: 28px;
  letter-spacing: -1px;
  margin-bottom: 20px;
  display: inline-block; }

h6.kc_title {
  font-size: 14px; }
  h6.kc_title:before {
    content: none; }

.kc_box_wrap h3 {
  font-size: 30px;
  color: white;
  margin-top: 10px; }

.kc_box_wrap .sub-title {
  margin: 0;
  font-size: 16px;
  color: #666666;
  text-align: right; }
  .rtl .kc_box_wrap .sub-title {
    text-align: left; }

.kc_box_wrap .title {
  margin-top: 5px;
  text-align: right; }
  .rtl .kc_box_wrap .title {
    text-align: left; }
  .kc_box_wrap .title span {
    color: #f25b22; }

.kc_progress_bars .progress-item span.label {
  padding: 0;
  margin-bottom: 15px !important;
  display: inline-block !important;
  font-weight: 600 !important;
  margin-right: 30px;
  text-transform: uppercase;
  width: 15%;
  text-align: right; }
  .rtl .kc_progress_bars .progress-item span.label {
    margin-left: 30px;
    margin-right: inherit; }
  .rtl .kc_progress_bars .progress-item span.label {
    text-align: left; }

.kc_progress_bars .kc-ui-progress-bar {
  width: 75%; }

.kc_progress_bars .kc-ui-progress span.value {
  padding: 0 10px;
  color: white;
  position: relative;
  top: -15px; }

.no-border .kc_counter_box {
  border: none; }

.kc_counter_box {
  border-color: rgba(255, 255, 255, 0.4);
  border-style: solid;
  border-width: 0 1px 0 0;
  padding: 20px 0; }
  .kc_counter_box span {
    color: #f25b22;
    font-size: 36px;
    font-family: "Fjalla One"; }
  .kc_counter_box h4 {
    color: white;
    font-size: 14px;
    font-weight: 600;
    margin-top: 25px;
    margin-bottom: 0 !important;
    font-family: "Poppins", sans-serif; }

.kc-owl-post-carousel .footer-button {
  display: inline-block;
  margin-top: 20px; }

.kc-owl-post-carousel .in-post-content {
  padding: 0 30px !important;
  text-align: center !important; }

.kc-owl-post-carousel .read-more {
  background: #f25b22;
  color: white;
  border: none !important; }
  .kc-owl-post-carousel .read-more:hover {
    color: white;
    background: #d5430d !important;
    -webkit-box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.17);
    box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.17);
    -webkit-transition: all 0.35s ease 0s;
    -o-transition: all 0.35s ease 0s;
    transition: all 0.35s ease 0s; }

.kc_accordion_wrapper {
  border: 1px solid #e4e7ea;
  box-shadow: 8pxpx 0 0 0 #ebebeb inset; }
  .kc_accordion_wrapper .kc_accordion_section.group {
    padding-bottom: 0; }
  .kc_accordion_wrapper .kc_accordion_section > .kc_accordion_header {
    border-left: 0;
    border-right: 0;
    background: #f1f1f1;
    font-family: "Poppins", sans-serif;
    font-size: 16px;
    text-transform: none; }
    .kc_accordion_wrapper .kc_accordion_section > .kc_accordion_header > a {
      padding: 10px 40px;
      color: #000000; }
      @media (max-width: 480px) {
        .kc_accordion_wrapper .kc_accordion_section > .kc_accordion_header > a {
          padding: 10px; } }
    .kc_accordion_wrapper .kc_accordion_section > .kc_accordion_header span {
      color: #f25b22;
      font-weight: bold;
      pointer-events: none; }
      .kc_accordion_wrapper .kc_accordion_section > .kc_accordion_header span:before {
        content: "\f067";
        font-family: "FontAwesome"; }
  .kc_accordion_wrapper .kc_accordion_section > .ui-state-active {
    border-bottom: 0;
    background: white;
    padding-top: 15px; }
  .kc_accordion_wrapper .kc-section-active .kc_accordion_header.ui-state-active > span.ui-accordion-header-icon:before {
    content: "\f068";
    font-family: "FontAwesome"; }
  .kc_accordion_wrapper .kc_accordion_content {
    border: none;
    background: white; }
    .kc_accordion_wrapper .kc_accordion_content .kc-panel-body {
      padding: 5px 15px 15px; }
    .kc_accordion_wrapper .kc_accordion_content .kc_text_block {
      padding: 0 25px;
      font-weight: 300; }

.kc-call-to-action {
  background: transparent !important; }
  .kc-call-to-action.kc-cta-3 {
    padding: 0; }

/* give report */
.chart {
  position: absolute;
  width: 340px;
  height: 340px;
  top: 0;
  left: 15px;
  bottom: 0;
  margin: auto; }
  @media (max-width: 768px) {
    .chart {
      right: 30px; } }

.doughnutTip {
  position: absolute;
  min-width: 30px;
  max-width: 300px;
  padding: 5px 15px;
  border-radius: 1px;
  background: rgba(0, 0, 0, 0.8);
  color: #ddd;
  font-size: 14px;
  text-shadow: 0 1px 0 #000;
  text-align: center;
  line-height: 1.3;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
  -webkit-transform: all .3s;
  -moz-transform: all .3s;
  -ms-transform: all .3s;
  -o-transform: all .3s;
  transform: all .3s;
  pointer-events: none; }

.doughnutTip:after {
  position: absolute;
  left: 50%;
  bottom: -6px;
  content: "";
  height: 0;
  margin: 0 0 0 -6px;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
  border-top: 6px solid rgba(0, 0, 0, 0.8);
  line-height: 0; }

.doughnutSummary {
  position: absolute;
  top: 50%;
  left: 50%;
  color: #d5d5d5;
  text-align: center;
  text-shadow: 0 -1px 0 #111;
  cursor: default; }

.doughnutSummaryTitle {
  position: absolute;
  top: 50%;
  width: 100%;
  margin-top: -27%;
  font-size: 12px !important; }

.doughnutSummaryNumber {
  position: absolute;
  top: 50%;
  width: 100%;
  margin-top: -15%;
  font-size: 40px; }

g path:hover {
  opacity: .65; }

@media (min-width: 768px) {
  .kc-give-chart-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex; } }

.kc-give-chart-wrapper .chart-wrapper {
  height: 320px;
  position: relative;
  position: relative;
  padding: 0 45px; }
  @media (min-width: 768px) {
    .kc-give-chart-wrapper .chart-wrapper {
      width: 50%; } }

.kc-give-chart-wrapper .list-label-chart {
  padding: 0 15px;
  margin-bottom: 30px; }
  @media (min-width: 768px) {
    .kc-give-chart-wrapper .list-label-chart {
      width: 50%;
      text-align: right; }
      .rtl .kc-give-chart-wrapper .list-label-chart {
        text-align: left; } }
  @media (max-width: 768px) {
    .kc-give-chart-wrapper .list-label-chart {
      text-align: center; } }
  .kc-give-chart-wrapper .list-label-chart ul li span.text {
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    max-width: 200px;
    display: inline-block;
    line-height: 1.2; }
  .kc-give-chart-wrapper .list-label-chart ul li span.number {
    font-size: 40px;
    font-family: "Fjalla One", monospace;
    margin-left: 20px;
    min-width: 85px;
    display: inline-block; }
    .rtl .kc-give-chart-wrapper .list-label-chart ul li span.number {
      margin-right: 20px;
      margin-left: inherit; }

/* give report */
/* 7. Responsive */
@media (min-width: 1200px) {
  .button-action {
    opacity: 0;
    transform: scale(0); }
  .product-block:hover .button-action {
    opacity: 1;
    transform: scale(1); }
  .kc_title > span:before {
    content: ""; } }

@media (min-width: 992px) and (max-width: 1200px) {
  .style-padding .kc-col-container {
    padding: 30px 10px; }
  #opal-masthead .header-main {
    padding: 35px 10px; }
  .button-action {
    opacity: 0;
    transform: scale(0); }
  .product-block:hover .button-action {
    opacity: 1;
    transform: scale(1); }
  .owl-carousel-play:hover .carousel-control.left {
    left: 30px; }
  .owl-carousel-play:hover .carousel-control.right {
    right: 30px; }
  .kc_title {
    font-size: 35px; }
  #opal-masthead.header-v2 .header-main {
    padding: 30px 4px; }
  h3.kc_title.highlight {
    font-size: 25px; }
  .ih-item .info h3 {
    height: 40px;
    overflow: hidden; }
  .requestquote-form.layout3 .requestquote-content-form .fleft {
    width: 173px;
    margin-bottom: 0; }
  .widget_mc4wp_form_widget .input-group .form-control {
    max-width: 375px; }
  .requestquote-form.layout2 .requestquote-content-form .fleft {
    width: 125px; }
  .box-user .dropdown-menu {
    right: 0;
    left: auto; } }

@media (min-width: 768px) and (max-width: 991px) {
  .style-padding .kc-col-container {
    padding: 30px  10px; }
  #opal-masthead.header-absolute {
    position: relative; }
    #opal-masthead.header-absolute .header-main {
      text-align: center; }
      #opal-masthead.header-absolute .header-main .logo-wrapper {
        float: none !important; }
  .opal-breadscrumb {
    padding-top: 50px; }
  .kc_tabs.group .kc_wrapper .ui-tabs-nav > li:last-child {
    border-right: 0; }
  .widget_mc4wp_form_widget .input-group .form-control {
    width: 190px; } }

@media (max-width: 480px) {
  .style-padding .kc-col-container {
    padding: 30px 10px; } }

/*
 * Off Canvas
 * --------------------------------------------------
 */
.sidebar-offcanvas {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 50%;
  z-index: 9999;
  -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; }
  .rtl .sidebar-offcanvas {
    text-align: right; }
  .rtl .sidebar-offcanvas {
    right: -50%;
    left: auto; }
  .sidebar-offcanvas.active {
    left: 0; }
    .rtl .sidebar-offcanvas.active {
      right: 0;
      left: auto; }

.btn-offcanvas:hover {
  color: #f25b22; }

.offcanvas-head {
  background-color: #f25b22;
  padding: 9px; }
  .offcanvas-head button {
    padding: 0;
    margin-right: 10px;
    width: 30px;
    height: 30px; }
    .rtl .offcanvas-head button {
      margin-left: 10px;
      margin-right: inherit; }
  .offcanvas-head span {
    color: #fff;
    text-transform: uppercase;
    font-weight: bold; }

.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; }
    .rtl .row-offcanvas.active {
      right: 0;
      left: auto; }
    .row-offcanvas.active:before {
      background-color: rgba(0, 0, 0, 0.3);
      position: absolute;
      width: 100%;
      height: 100%;
      content: "";
      left: 0;
      top: 0;
      z-index: 100; }

.offcanvas-showright {
  background: rgba(242, 91, 34, 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; }
    .rtl .offcanvas-showright .showright {
      margin-left: 50px;
      margin-right: inherit; }
    .offcanvas-showright .showright .fa {
      color: #f25b22; }

@media screen and (max-width: 992px) {
  .row-offcanvas-right {
    right: 0; }
    .rtl .row-offcanvas-right {
      left: 0;
      right: auto; }
  .row-offcanvas-left {
    left: 0; }
    .rtl .row-offcanvas-left {
      right: 0;
      left: auto; }
  .row-offcanvas-right .sidebar-offcanvas {
    right: -50%; }
    .rtl .row-offcanvas-right .sidebar-offcanvas {
      left: -50%;
      right: auto; }
  .row-offcanvas-right.active {
    right: 50%; }
    .rtl .row-offcanvas-right.active {
      left: 50%;
      right: auto; }
  .row-offcanvas-left.active {
    left: 0; }
    .rtl .row-offcanvas-left.active {
      right: 0;
      left: auto; }
  .zoomContainer {
    display: none; }
  .kc_title::before {
    content: none; }
  #opal-masthead.header-v2 .header-main {
    background: transparent; }
  .service-grid_v2 .opal_service.page .entry-content {
    bottom: 0; } }

@media screen and (max-width: 480px) {
  .sidebar-offcanvas {
    width: 80%;
    left: -85%; }
    .rtl .sidebar-offcanvas {
      right: -85%;
      left: auto; }
  .row-offcanvas-right .sidebar-offcanvas {
    right: -85%; }
    .rtl .row-offcanvas-right .sidebar-offcanvas {
      left: -85%;
      right: auto; }
  .row-offcanvas-right.active {
    right: 85%; }
    .rtl .row-offcanvas-right.active {
      left: 85%;
      right: auto; } }

.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 #e4e7ea;
      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 #e4e7ea;
        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 li a {
        font-size: 13px;
        font-weight: 300;
        padding: 10px 15px; }
    .navbar-offcanvas ul#main-menu-offcanvas li.active > a {
      background: none;
      color: #f25b22; }

@media (max-width: 480px) {
  .kc_counter_box {
    border: none; }
  .bloggrid-layout .entry-title {
    margin-top: 20px; }
  .active-mobile.cart-popup .active-content {
    right: 0;
    left: -100px; }
  .zoomContainer {
    display: none; }
  #opal-masthead.header-absolute {
    position: relative; }
    #opal-masthead.header-absolute .header-main {
      text-align: center; }
      #opal-masthead.header-absolute .header-main .logo-wrapper {
        float: none !important; }
  .opal-breadscrumb {
    padding-top: 50px; }
  .widget-transport-service .opal_service .entry-content {
    bottom: 0; }
  .opal-footer .kc_box_wrap .widget {
    border: none;
    padding-left: 0;
    margin-top: 30px; }
    .rtl .opal-footer .kc_box_wrap .widget {
      padding-right: 0;
      padding-left: inherit; }
  .owl-carousel-play:hover .carousel-control.right {
    right: 0; }
    .rtl .owl-carousel-play:hover .carousel-control.right {
      left: 0;
      right: auto; }
  .owl-carousel-play:hover .carousel-control.left {
    left: 0; }
    .rtl .owl-carousel-play:hover .carousel-control.left {
      right: 0;
      left: auto; }
  .feature-box .fbox-icon {
    float: none;
    margin-bottom: 20px; }
  .kc_title::before {
    content: none; }
  .kc_title {
    font-size: 20px;
    margin-bottom: 15px; }
  .testimonial-collection .testimonials-left .testimonials-profile {
    width: 100%; }
  .service-grid_v2 .opal_service.page .entry-content {
    bottom: 0; }
  .requestquote-form.layout2 .requestquote-content {
    margin-right: 0; }
    .rtl .requestquote-form.layout2 .requestquote-content {
      margin-left: 0;
      margin-right: inherit; } }

@media (min-width: 768px) and (max-width: 991px) {
  #main .container, .opal-footer .container {
    width: 100% !important; }
  .zoomContainer {
    display: none; }
  .opal-social-share {
    margin-left: 20px;
    display: block; }
    .rtl .opal-social-share {
      margin-right: 20px;
      margin-left: inherit; }
  .kc_title::before {
    content: none; }
  .opal-footer .kc_box_wrap .widget {
    border: none;
    padding-left: 0; }
    .rtl .opal-footer .kc_box_wrap .widget {
      padding-right: 0;
      padding-left: inherit; } }

@media (min-width: 768px) {
  .navbar-mega .navbar-nav > li:hover > .dropdown-menu {
    opacity: 1;
    filter: alpha(opacity=100);
    right: 0;
    transform: translate(0px, 0px);
    -webkit-transform: translate(0px, 0px);
    -ms-transform: translate(0px, 0px);
    -o-transform: translate(0px, 0px);
    visibility: visible; }
    .rtl .navbar-mega .navbar-nav > li:hover > .dropdown-menu {
      left: 0;
      right: auto; } }

@media (max-width: 767px) {
  .kc_column {
    width: 100% !important; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiX2Jvb3RzdHJhcC5zY3NzIiwiYm9vdHN0cmFwL192YXJpYWJsZXMuc2NzcyIsImJvb3RzdHJhcC9fbWl4aW5zLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19oaWRlLXRleHQuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX29wYWNpdHkuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2ltYWdlLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19sYWJlbHMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LWZpbHRlci5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcmVzaXplLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19yZXNwb25zaXZlLXZpc2liaWxpdHkuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3NpemUuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3RhYi1mb2N1cy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdGV4dC1vdmVyZmxvdy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdmVuZG9yLXByZWZpeGVzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19hbGVydHMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2J1dHRvbnMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3BhbmVscy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2Zvcm1zLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19wcm9ncmVzcy1iYXIuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19jZW50ZXItYmxvY2suc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX25hdi12ZXJ0aWNhbC1hbGlnbi5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2dyaWQuc2NzcyIsImJvb3RzdHJhcC9fbm9ybWFsaXplLnNjc3MiLCJib290c3RyYXAvX3ByaW50LnNjc3MiLCJib290c3RyYXAvX3NjYWZmb2xkaW5nLnNjc3MiLCJib290c3RyYXAvX3R5cGUuc2NzcyIsImJvb3RzdHJhcC9fY29kZS5zY3NzIiwiYm9vdHN0cmFwL19ncmlkLnNjc3MiLCJib290c3RyYXAvX3RhYmxlcy5zY3NzIiwiYm9vdHN0cmFwL19mb3Jtcy5zY3NzIiwiYm9vdHN0cmFwL19idXR0b25zLnNjc3MiLCJib290c3RyYXAvX2NvbXBvbmVudC1hbmltYXRpb25zLnNjc3MiLCJib290c3RyYXAvX2Ryb3Bkb3ducy5zY3NzIiwiYm9vdHN0cmFwL19idXR0b24tZ3JvdXBzLnNjc3MiLCJib290c3RyYXAvX2lucHV0LWdyb3Vwcy5zY3NzIiwiYm9vdHN0cmFwL19uYXZzLnNjc3MiLCJib290c3RyYXAvX25hdmJhci5zY3NzIiwiYm9vdHN0cmFwL19icmVhZGNydW1icy5zY3NzIiwiYm9vdHN0cmFwL19wYWdpbmF0aW9uLnNjc3MiLCJib290c3RyYXAvX2xhYmVscy5zY3NzIiwiYm9vdHN0cmFwL19iYWRnZXMuc2NzcyIsImJvb3RzdHJhcC9fYWxlcnRzLnNjc3MiLCJib290c3RyYXAvX3Byb2dyZXNzLWJhcnMuc2NzcyIsImJvb3RzdHJhcC9fbWVkaWEuc2NzcyIsImJvb3RzdHJhcC9fbGlzdC1ncm91cC5zY3NzIiwiYm9vdHN0cmFwL19wYW5lbHMuc2NzcyIsImJvb3RzdHJhcC9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwiYm9vdHN0cmFwL19tb2RhbHMuc2NzcyIsImJvb3RzdHJhcC9fY2Fyb3VzZWwuc2NzcyIsImJvb3RzdHJhcC9fdXRpbGl0aWVzLnNjc3MiLCJib290c3RyYXAvX3Jlc3BvbnNpdmUtdXRpbGl0aWVzLnNjc3MiLCJjb21wb25lbnRzL192YXJpYWJsZXMuc2NzcyIsImNvbXBvbmVudHMvdmFycy9fZm9ybS5zY3NzIiwiY29tcG9uZW50cy92YXJzL19uYXYuc2NzcyIsImNvbXBvbmVudHMvdmFycy9fbGF5b3V0LnNjc3MiLCJjb21wb25lbnRzL3ZhcnMvX2VsZW1lbnRzLnNjc3MiLCJjb21wb25lbnRzL3ZhcnMvX3dpZGdldC5zY3NzIiwiY29tcG9uZW50cy9fbWl4aW5zLnNjc3MiLCJjb21wb25lbnRzL21peGlucy9fcnRsLnNjc3MiLCJjb21wb25lbnRzL21peGlucy9fZnVuY3Rpb25zLnNjc3MiLCJjb21wb25lbnRzL21peGlucy9fdGVtcGxhdGUtbWl4aW5zLnNjc3MiLCJjb21wb25lbnRzL19iYXNlLnNjc3MiLCJjb21wb25lbnRzL190ZW1wbGF0ZS1sYXlvdXQuc2NzcyIsImNvbXBvbmVudHMvX3dpZGdldC1sYXlvdXQuc2NzcyIsImNvbXBvbmVudHMvX3NlcnZpY2VzLnNjc3MiLCJjb21wb25lbnRzL19yZXZpZXcuc2NzcyIsImNvbXBvbmVudHMvX3dpZGdldHMuc2NzcyIsImNvbXBvbmVudHMvX25hdi5zY3NzIiwiY29tcG9uZW50cy9fcGFnZS5zY3NzIiwiY29tcG9uZW50cy9fcG9zdC1mb3JtYXRzLnNjc3MiLCJjb21wb25lbnRzL19wb3N0LXNpbmdsZS5zY3NzIiwiY29tcG9uZW50cy9fY3VzdG9tLXBvc3R0eXBlLnNjc3MiLCJjb21wb25lbnRzL19lbGVtZW50cy5zY3NzIiwiY29tcG9uZW50cy9fcGFnZWJ1aWxkZXIuc2NzcyIsImNvbXBvbmVudHMvX3Jlc3BvbnNpdmUuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuVGhlbWUgTmFtZTogamV0c1xuVGhlbWUgVVJJOiBodHRwczovL3dwb3BhbC5vcmcvdGhlbWVzL2pldHMvXG5BdXRob3I6IFdQT1BBTCBUZWFtXG5BdXRob3IgVVJJOiBodHRwczovL3dvcmRwcmVzcy5vcmcvXG5EZXNjcmlwdGlvbjogSW4gMjAxNCwgb3VyIGRlZmF1bHQgdGhlbWUgbGV0cyB5b3UgY3JlYXRlIGEgcmVzcG9uc2l2ZSBtYWdhemluZSB3ZWJzaXRlIHdpdGggYSBzbGVlaywgbW9kZXJuIGRlc2lnbi4gRmVhdHVyZSB5b3VyIGZhdm9yaXRlIGhvbWVwYWdlIGNvbnRlbnQgaW4gZWl0aGVyIGEgZ3JpZCBvciBhIHNsaWRlci4gVXNlIHRoZSB0aHJlZSB3aWRnZXQgYXJlYXMgdG8gY3VzdG9taXplIHlvdXIgd2Vic2l0ZSwgYW5kIGNoYW5nZSB5b3VyIGNvbnRlbnQncyBsYXlvdXQgd2l0aCBhIGZ1bGwtd2lkdGggcGFnZSB0ZW1wbGF0ZSBhbmQgYSBjb250cmlidXRvciBwYWdlIHRvIHNob3cgb2ZmIHlvdXIgYXV0aG9ycy4gQ3JlYXRpbmcgYSBtYWdhemluZSB3ZWJzaXRlIHdpdGggV29yZFByZXNzIGhhcyBuZXZlciBiZWVuIGVhc2llci5cblZlcnNpb246IDEuNVxuTGljZW5zZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjIgb3IgbGF0ZXJcbkxpY2Vuc2UgVVJJOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvZ3BsLTIuMC5odG1sXG5UYWdzOiBibGFjaywgZ3JlZW4sIHdoaXRlLCBsaWdodCwgZGFyaywgdHdvLWNvbHVtbnMsIHRocmVlLWNvbHVtbnMsIGxlZnQtc2lkZWJhciwgcmlnaHQtc2lkZWJhciwgZml4ZWQtbGF5b3V0LCByZXNwb25zaXZlLWxheW91dCwgY3VzdG9tLWJhY2tncm91bmQsIGN1c3RvbS1oZWFkZXIsIGN1c3RvbS1tZW51LCBlZGl0b3Itc3R5bGUsIGZlYXR1cmVkLWltYWdlcywgZmxleGlibGUtaGVhZGVyLCBmdWxsLXdpZHRoLXRlbXBsYXRlLCBtaWNyb2Zvcm1hdHMsIHBvc3QtZm9ybWF0cywgcnRsLWxhbmd1YWdlLXN1cHBvcnQsIHN0aWNreS1wb3N0LCB0aGVtZS1vcHRpb25zLCB0cmFuc2xhdGlvbi1yZWFkeSwgYWNjZXNzaWJpbGl0eS1yZWFkeVxuVGV4dCBEb21haW46IGpldHNcblxuVGhpcyB0aGVtZSwgbGlrZSBXb3JkUHJlc3MsIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBHUEwuXG5Vc2UgaXQgdG8gbWFrZSBzb21ldGhpbmcgY29vbCwgaGF2ZSBmdW4sIGFuZCBzaGFyZSB3aGF0IHlvdSd2ZSBsZWFybmVkIHdpdGggb3RoZXJzLlxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5bVGFibGUgb2YgY29udGVudHNdXG4xLiBVdGlsaXRpZXNcbjIuIEJhc2VcbjMuIExheW91dFxuNC4gUGFnZVxuNS4gUG9zdFxuNi4gRm9ybVxuNy4gUmVzcG9uc2l2ZVxuOC4gV2lkZ2V0XG5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLy9AaW1wb3J0IFwiY29tcGFzc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvdmFyaWFibGVzXCI7XG5cbi8qIDEuIFV0aWxpdGllcyAqL1xuQGltcG9ydCBcImNvbXBvbmVudHMvbWl4aW5zXCI7XG5cbi8qIDIuIEJhc2UgKi9cbkBpbXBvcnQgXCJjb21wb25lbnRzL2Jhc2VcIjtcblxuLyogMy4gTGF5b3V0ICovXG5AaW1wb3J0IFwiY29tcG9uZW50cy90ZW1wbGF0ZS1sYXlvdXRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3dpZGdldC1sYXlvdXRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3NlcnZpY2VzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9yZXZpZXdcIjtcblxuLyogOC4gV2lkZ2V0ICovXG5AaW1wb3J0IFwiY29tcG9uZW50cy93aWRnZXRzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9uYXZcIjtcblxuLyogNC4gUGFnZSAqL1xuQGltcG9ydCBcImNvbXBvbmVudHMvcGFnZVwiO1xuXG4vKiA1LiBQb3N0ICovXG5AaW1wb3J0IFwiY29tcG9uZW50cy9wb3N0LWZvcm1hdHNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3Bvc3Qtc2luZ2xlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9jdXN0b20tcG9zdHR5cGVcIjtcblxuLyogNi4gRm9ybSAqL1xuQGltcG9ydCBcImNvbXBvbmVudHMvZWxlbWVudHNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhZ2VidWlsZGVyXCI7XG5cbi8qIDcuIFJlc3BvbnNpdmUgKi9cbkBpbXBvcnQgXCJjb21wb25lbnRzL3Jlc3BvbnNpdmVcIjsiLCIvKiFcbiAqIEJvb3RzdHJhcCB2My4zLjUgKGh0dHA6Ly9nZXRib290c3RyYXAuY29tKVxuICogQ29weXJpZ2h0IDIwMTEtMjAxNSBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxuICovXG5cbi8vIENvcmUgdmFyaWFibGVzIGFuZCBtaXhpbnNcbkBpbXBvcnQgXCJib290c3RyYXAvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL21peGluc1wiO1xuXG4vLyBSZXNldCBhbmQgZGVwZW5kZW5jaWVzXG5AaW1wb3J0IFwiYm9vdHN0cmFwL25vcm1hbGl6ZVwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wcmludFwiO1xuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL2dseXBoaWNvbnNcIjtcblxuLy8gQ29yZSBDU1NcbkBpbXBvcnQgXCJib290c3RyYXAvc2NhZmZvbGRpbmdcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvdHlwZVwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9jb2RlXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2dyaWRcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvdGFibGVzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2Zvcm1zXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2J1dHRvbnNcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcImJvb3RzdHJhcC9jb21wb25lbnQtYW5pbWF0aW9uc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9kcm9wZG93bnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvYnV0dG9uLWdyb3Vwc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9pbnB1dC1ncm91cHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbmF2c1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9uYXZiYXJcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvYnJlYWRjcnVtYnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcGFnaW5hdGlvblwiO1xuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL3BhZ2VyXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2xhYmVsc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9iYWRnZXNcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvanVtYm90cm9uXCI7XG4vL0BpbXBvcnQgXCJib290c3RyYXAvdGh1bWJuYWlsc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9hbGVydHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcHJvZ3Jlc3MtYmFyc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9tZWRpYVwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3BhbmVsc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9yZXNwb25zaXZlLWVtYmVkXCI7XG4vL0BpbXBvcnQgXCJib290c3RyYXAvd2VsbHNcIjtcbi8vQGltcG9ydCBcImJvb3RzdHJhcC9jbG9zZVwiO1xuXG4vLyBDb21wb25lbnRzIHcvIEphdmFTY3JpcHRcbkBpbXBvcnQgXCJib290c3RyYXAvbW9kYWxzXCI7XG4vL0BpbXBvcnQgXCJib290c3RyYXAvdG9vbHRpcFwiO1xuLy9AaW1wb3J0IFwiYm9vdHN0cmFwL3BvcG92ZXJzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2Nhcm91c2VsXCI7XG5cbi8vIFV0aWxpdHkgY2xhc3Nlc1xuQGltcG9ydCBcImJvb3RzdHJhcC91dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcmVzcG9uc2l2ZS11dGlsaXRpZXNcIjtcbiIsIiRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXI6IGZhbHNlICFkZWZhdWx0O1xuLy9cbi8vIFZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLz09IENvbG9yc1xuLy9cbi8vIyMgR3JheSBhbmQgYnJhbmQgY29sb3JzIGZvciB1c2UgYWNyb3NzIEJvb3RzdHJhcC5cblxuJGxpZ2h0LWdyYXkgICAgICA6IGxpZ2h0ZW4oIzAwMDAwMCwgNjAlKSAhZGVmYXVsdDsgICAgICAgIC8vICM5OTk5OTlcbiR2ZXJ5LWxpZ2h0LWdyYXkgOiAjZTVlNWU1ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAvLyAjZTVlNWU1XG4kdmVyeS1kYXJrLWdyYXkgIDogIzM3MzczNyAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAvLyAjMzczNzM3IFxuJGdyYXktZGFya2VyICAgICA6ICMwMDAwMDAgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgIC8vICMwMDAwMDBcbiRncmF5LWRhcmsgICAgICAgOiAjMmYyZjJmICFkZWZhdWx0OyAgICAgICAgICAgLy8gIzMzMzMzM1xuJGdyYXkgICAgICAgICAgICA6IGxpZ2h0ZW4oIzAwMCwgMzMuNSUpICFkZWZhdWx0OyAgICAgICAgIC8vICM1NTU1NTVcbiRncmF5LWxpZ2h0ICAgICAgOiAjNjY2NjY2ICFkZWZhdWx0OyAgICAgICAgIC8vICM3Nzc3NzdcbiRncmF5LWxpZ2h0ZXIgICAgOiAjY2NjY2NjICFkZWZhdWx0OyAgICAgICAgIC8vICNjY2NjY2NcblxuJGJyYW5kLXByaW1hcnkgICA6ICNmMjViMjIgIWRlZmF1bHQ7XG4kYnJhbmQtc3VjY2VzcyAgIDogIzU4YmU1MCAhZGVmYXVsdDtcbiRicmFuZC1pbmZvICAgICAgOiAjNTQ5ZGRlICFkZWZhdWx0O1xuJGJyYW5kLXdhcm5pbmcgICA6ICNmZmNhMDAgIWRlZmF1bHQ7XG4kYnJhbmQtZGFuZ2VyICAgIDogI2U1NjM2MyAhZGVmYXVsdDtcblxuXG4vLz09IFNjYWZmb2xkaW5nXG4vL1xuLy8jIyBTZXR0aW5ncyBmb3Igc29tZSBvZiB0aGUgbW9zdCBnbG9iYWwgc3R5bGVzLlxuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIGA8Ym9keT5gLlxuJGJvZHktYmc6ICAgICAgICAgICAgICAgI2ZmZmZmZiAhZGVmYXVsdDtcbi8vKiogR2xvYmFsIHRleHQgY29sb3Igb24gYDxib2R5PmAuXG4kdGV4dC1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgdGV4dHVhbCBsaW5rIGNvbG9yLlxuJGxpbmstY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFya2VyICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGNvbG9yIHNldCB2aWEgYGRhcmtlbigpYCBmdW5jdGlvbi5cbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGRlY29yYXRpb24uXG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwb2dyYXBoeVxuLy9cbi8vIyMgRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAnUG9wcGlucycsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgJ1BsYXlmYWlyIERpc3BsYXknLCBzZXJpZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCBtb25vc3BhY2UgZm9udHMgZm9yIGA8Y29kZT5gLCBgPGtiZD5gLCBhbmQgYDxwcmU+YC5cbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgXCJGamFsbGEgT25lXCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgJ1BvcHBpbnMnLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxhcmdlOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcbiRmb250LXNpemUtc21hbGw6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuXG4kZm9udC1zaXplLWgxOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjYpKSAhZGVmYXVsdDsgLy8gfjM2cHhcbiRmb250LXNpemUtaDI6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuMTUpKSAhZGVmYXVsdDsgLy8gfjMwcHhcbiRmb250LXNpemUtaDM6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS43KSkgIWRlZmF1bHQ7IC8vIH4yNHB4XG4kZm9udC1zaXplLWg0OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcbiRmb250LXNpemUtaDU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1oNjogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbiRmb250LXdlaWdodC1iYXNlXHQ6IDQwMCAhZGVmYXVsdDtcbi8vKiogVW5pdC1sZXNzIGBsaW5lLWhlaWdodGAgZm9yIHVzZSBpbiBjb21wb25lbnRzIGxpa2UgYnV0dG9ucy5cbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgMS42Mjg1NzE0MjkgIWRlZmF1bHQ7IC8vIDIwLzE0XG4vLyoqIENvbXB1dGVkIFwibGluZS1oZWlnaHRcIiAoYGZvbnQtc2l6ZWAgKiBgbGluZS1oZWlnaHRgKSBmb3IgdXNlIHdpdGggYG1hcmdpbmAsIGBwYWRkaW5nYCwgZXRjLlxuJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOiAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UpKSAhZGVmYXVsdDsgLy8gfjIwcHhcblxuLy8qKiBCeSBkZWZhdWx0LCB0aGlzIGluaGVyaXRzIGZyb20gdGhlIGA8Ym9keT5gLlxuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICBcIkZqYWxsYSBPbmVcIiAhZGVmYXVsdDtcbi8qICRoZWFkaW5ncy1mb250LXdlaWdodDogICAgNzAwICFkZWZhdWx0OyAqL1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICA0MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgIDEuMSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgJGdyYXktZGFya2VyICFkZWZhdWx0O1xuXG5cbi8vPT0gSWNvbm9ncmFwaHlcbi8vXG4vLyMjIFNwZWNpZnkgY3VzdG9tIGxvY2F0aW9uIGFuZCBmaWxlbmFtZSBvZiB0aGUgaW5jbHVkZWQgR2x5cGhpY29ucyBpY29uIGZvbnQuIFVzZWZ1bCBmb3IgdGhvc2UgaW5jbHVkaW5nIEJvb3RzdHJhcCB2aWEgQm93ZXIuXG5cbi8vKiogTG9hZCBmb250cyBmcm9tIHRoaXMgZGlyZWN0b3J5LlxuXG4vLyBbY29udmVydGVyXSBJZiAkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyIGlmIHVzZWQsIHByb3ZpZGUgcGF0aCByZWxhdGl2ZSB0byB0aGUgYXNzZXRzIGxvYWQgcGF0aC5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgYmVjYXVzZSBzb21lIGFzc2V0IGhlbHBlcnMsIHN1Y2ggYXMgU3Byb2NrZXRzLCBkbyBub3Qgd29yayB3aXRoIGZpbGUtcmVsYXRpdmUgcGF0aHMuXG4kaWNvbi1mb250LXBhdGg6IGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIFwiYm9vdHN0cmFwL1wiLCBcIi4uL2ZvbnRzL2Jvb3RzdHJhcC9cIikgIWRlZmF1bHQ7XG5cbi8vKiogRmlsZSBuYW1lIGZvciBhbGwgZm9udCBmaWxlcy5cbiRpY29uLWZvbnQtbmFtZTogICAgICAgICAgXCJnbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyXCIgIWRlZmF1bHQ7XG4vLyoqIEVsZW1lbnQgSUQgd2l0aGluIFNWRyBpY29uIGZpbGUuXG4kaWNvbi1mb250LXN2Zy1pZDogICAgICAgIFwiZ2x5cGhpY29uc19oYWxmbGluZ3NyZWd1bGFyXCIgIWRlZmF1bHQ7XG5cblxuLy89PSBDb21wb25lbnRzXG4vL1xuLy8jIyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuIFZhbHVlcyBiYXNlZCBvbiAxNHB4IHRleHQgYW5kIDEuNDI4IGxpbmUtaGVpZ2h0ICh+MjBweCB0byBzdGFydCkuXG5cbiRwYWRkaW5nLWJhc2UtdmVydGljYWw6ICAgICAxMHB4ICFkZWZhdWx0O1xuJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsOiAgIDI1cHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOiAgICAxNXB4ICFkZWZhdWx0O1xuJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDogIDMwcHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsOiAgICA1cHggIWRlZmF1bHQ7XG4kcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsOiAgMjBweCAhZGVmYXVsdDtcblxuJHBhZGRpbmcteHMtdmVydGljYWw6ICAgICAgIDFweCAhZGVmYXVsdDtcbiRwYWRkaW5nLXhzLWhvcml6b250YWw6ICAgICA1cHggIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1sYXJnZTogICAgICAgICAxLjMzMzMzMzMgIWRlZmF1bHQ7IC8vIGV4dHJhIGRlY2ltYWxzIGZvciBXaW4gOC4xIENocm9tZVxuJGxpbmUtaGVpZ2h0LXNtYWxsOiAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgIDBweCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICA2cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAgM3B4ICFkZWZhdWx0O1xuXG4vLyoqIEdsb2JhbCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogR2xvYmFsIGJhY2tncm91bmQgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyoqIFdpZHRoIG9mIHRoZSBgYm9yZGVyYCBmb3IgZ2VuZXJhdGluZyBjYXJldHMgdGhhdCBpbmRpY2F0b3IgZHJvcGRvd25zLlxuJGNhcmV0LXdpZHRoLWJhc2U6ICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogQ2FyZXRzIGluY3JlYXNlIHNsaWdodGx5IGluIHNpemUgZm9yIGxhcmdlciBjb21wb25lbnRzLlxuJGNhcmV0LXdpZHRoLWxhcmdlOiAgICAgICAgIDVweCAhZGVmYXVsdDtcblxuXG4vLz09IFRhYmxlc1xuLy9cbi8vIyMgQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4vLyoqIFBhZGRpbmcgZm9yIGA8dGg+YHMgYW5kIGA8dGQ+YHMuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAgIDhweCAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBmb3IgY2VsbHMgaW4gYC50YWJsZS1jb25kZW5zZWRgLlxuJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc6ICA1cHggIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGFsbCB0YWJsZXMuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtc3RyaXBlZGAuXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgICNmOWY5ZjkgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1ob3ZlcmAuXG4kdGFibGUtYmctaG92ZXI6ICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlciAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRhYmxlIGFuZCBjZWxsIGJvcmRlcnMuXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBCdXR0b25zXG4vL1xuLy8jIyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG5cbiRidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcblxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tcHJpbWFyeS1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1zdWNjZXNzLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbiRidG4taW5mby1ib3JkZXI6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnRuLWluZm8tYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4td2FybmluZy1iZzogICAgICAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4td2FybmluZy1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkYnRuLWRhbmdlci1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3Jtc1xuLy9cbi8vIyNcblxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2Y5ZjlmOSAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dCBkaXNhYmxlZD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgYDxpbnB1dD5gc1xuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJHRleHQtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcbiRpbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBSZW5hbWUgYCRpbnB1dC1ib3JkZXItcmFkaXVzYCB0byBgJGlucHV0LWJvcmRlci1yYWRpdXMtYmFzZWAgaW4gdjRcbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuLy8gVGhpcyBoYXMgbm8gZWZmZWN0IG9uIGA8c2VsZWN0PmBzIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGlucHV0cyBvbiBmb2N1c1xuJGlucHV0LWJvcmRlci1mb2N1czogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vKiogUGxhY2Vob2xkZXIgdGV4dCBjb2xvclxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtYmFzZTogICAgICAgICAgICAgICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAqIDMpICsgMikgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtbGFyZ2U6ICAgICAgICAgICAgIChjZWlsKCRmb250LXNpemUtbGFyZ2UgKiAkbGluZS1oZWlnaHQtbGFyZ2UpICsgKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1zbWFsbDogICAgICAgICAgICAgKGZsb29yKCRmb250LXNpemUtc21hbGwgKiAkbGluZS1oZWlnaHQtc21hbGwpICsgKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcblxuLy8qKiBgLmZvcm0tZ3JvdXBgIG1hcmdpblxuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgMTVweCAhZGVmYXVsdDtcblxuJGxlZ2VuZC1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRsZWdlbmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGN1cnNvciBmb3IgZm9ybSBjb250cm9scyBhbmQgYnV0dG9ucy5cbiRjdXJzb3ItZGlzYWJsZWQ6ICAgICAgICAgICAgICAgIG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG5cbi8vPT0gRHJvcGRvd25zXG4vL1xuLy8jIyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vKiogQmFja2dyb3VuZCBmb3IgdGhlIGRyb3Bkb3duIG1lbnUuXG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgLlxuJGRyb3Bkb3duLWJvcmRlcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMTUpICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgICoqZm9yIElFOCoqLlxuJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbi8vKiogRGl2aWRlciBjb2xvciBmb3IgYmV0d2VlbiBkcm9wZG93biBpdGVtcy5cbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogRHJvcGRvd24gbGluayB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbi8vKiogSG92ZXIgY29sb3IgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRncmF5LWRhcmssIDUlKSAhZGVmYXVsdDtcbi8vKiogSG92ZXIgYmFja2dyb3VuZCBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gdGV4dCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuLy8qKiBEaXNhYmxlZCBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGhlYWRlcnMgd2l0aGluIGRyb3Bkb3duIG1lbnVzLlxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogRGVwcmVjYXRlZCBgJGRyb3Bkb3duLWNhcmV0LWNvbG9yYCBhcyBvZiB2My4xLjBcbiRkcm9wZG93bi1jYXJldC1jb2xvcjogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG5cblxuLy8tLSBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG4vL1xuLy8gTm90ZTogVGhlc2UgdmFyaWFibGVzIGFyZSBub3QgZ2VuZXJhdGVkIGludG8gdGhlIEN1c3RvbWl6ZXIuXG5cbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LW5hdmJhci1maXhlZDogICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kOiAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgIDEwNTAwICFkZWZhdWx0O1xuXG5cbi8vPT0gTWVkaWEgcXVlcmllcyBicmVha3BvaW50c1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBicmVha3BvaW50cyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSwgYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gRXh0cmEgc21hbGwgc2NyZWVuIC8gcGhvbmVcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14c2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXhzOiAgICAgICAgICAgICAgICAgIDQ4MHB4ICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzLW1pbmAgYXMgb2YgdjMuMi4wXG4kc2NyZWVuLXhzLW1pbjogICAgICAgICAgICAgICRzY3JlZW4teHMgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tcGhvbmVgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1waG9uZTogICAgICAgICAgICAgICAkc2NyZWVuLXhzLW1pbiAhZGVmYXVsdDtcblxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tc21gIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1zbTogICAgICAgICAgICAgICAgICA3NjhweCAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1zbSAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi10YWJsZXRgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi10YWJsZXQ6ICAgICAgICAgICAgICAkc2NyZWVuLXNtLW1pbiAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1tZGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLW1kOiAgICAgICAgICAgICAgICAgIDk5MnB4ICFkZWZhdWx0O1xuJHNjcmVlbi1tZC1taW46ICAgICAgICAgICAgICAkc2NyZWVuLW1kICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1kZXNrdG9wOiAgICAgICAgICAgICAkc2NyZWVuLW1kLW1pbiAhZGVmYXVsdDtcblxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGdgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1sZzogICAgICAgICAgICAgICAgICAxMjAwcHggIWRlZmF1bHQ7XG4kc2NyZWVuLWxnLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbGcgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGctZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnLWRlc2t0b3A6ICAgICAgICAgICRzY3JlZW4tbGctbWluICFkZWZhdWx0O1xuXG4vLyBTbyBtZWRpYSBxdWVyaWVzIGRvbid0IG92ZXJsYXAgd2hlbiByZXF1aXJlZCwgcHJvdmlkZSBhIG1heGltdW1cbiRzY3JlZW4teHMtbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tc20tbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLW1kLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1tZC1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1sZy1taW4gLSAxKSAhZGVmYXVsdDtcblxuXG4vLz09IEdyaWQgc3lzdGVtXG4vL1xuLy8jIyBEZWZpbmUgeW91ciBjdXN0b20gcmVzcG9uc2l2ZSBncmlkLlxuXG4vLyoqIE51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkLlxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGJldHdlZW4gY29sdW1ucy4gR2V0cyBkaXZpZGVkIGluIGhhbGYgZm9yIHRoZSBsZWZ0IGFuZCByaWdodC5cbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAzMHB4ICFkZWZhdWx0O1xuLy8gTmF2YmFyIGNvbGxhcHNlXG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVjb21lcyB1bmNvbGxhcHNlZC5cbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQ6ICAgICAkc2NyZWVuLXNtLW1pbiAhZGVmYXVsdDtcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWdpbnMgY29sbGFwc2luZy5cbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4OiAoJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29udGFpbmVyIHNpemVzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyMjIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuJGNvbnRhaW5lci10YWJsZXQ6ICAgICAgICAgICAgICgoNzUwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLXNtLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1zbTogICAgICAgICAgICAgICAgICRjb250YWluZXItdGFibGV0ICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuJGNvbnRhaW5lci1kZXNrdG9wOiAgICAgICAgICAgICgoOTcwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLW1kLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1tZDogICAgICAgICAgICAgICAgICRjb250YWluZXItZGVza3RvcCAhZGVmYXVsdDtcblxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4kY29udGFpbmVyLWxhcmdlLWRlc2t0b3A6ICAgICAgKCgxMTcwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1sZy1taW5gIGFuZCB1cC5cbiRjb250YWluZXItbGc6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWxhcmdlLWRlc2t0b3AgIWRlZmF1bHQ7XG5cblxuXG4vLz09IE5hdmJhclxuLy9cbi8vIyNcblxuLy8gQmFzaWNzIG9mIGEgbmF2YmFyXG4kbmF2YmFyLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgIGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSkgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICgoJG5hdmJhci1oZWlnaHQgLSAkbGluZS1oZWlnaHQtY29tcHV0ZWQpIC8gMikgIWRlZmF1bHQ7XG4kbmF2YmFyLWNvbGxhcHNlLW1heC1oZWlnaHQ6ICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICNmOGY4ZjggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgbGlua3NcbiRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAjNzc3ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgYnJhbmQgbGFiZWxcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWJnOiAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgdG9nZ2xlXG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWhvdmVyLWJnOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAjODg4ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PT0gSW52ZXJ0ZWQgbmF2YmFyXG4vLyBSZXNldCBpbnZlcnRlZCBuYXZiYXIgYmFzaWNzXG4kbmF2YmFyLWludmVyc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICMyMjIgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDEwJSkgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBsaW5rc1xuJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWxpZ2h0LCAxNSUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgYnJhbmQgbGFiZWxcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgdG9nZ2xlXG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWhvdmVyLWJnOiAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWljb24tYmFyLWJnOiAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cblxuLy89PSBOYXZzXG4vL1xuLy8jI1xuXG4vLz09PSBTaGFyZWQgbmF2IHN0eWxlc1xuJG5hdi1saW5rLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kbmF2LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4kbmF2LWRpc2FibGVkLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy89PSBUYWJzXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXYtdGFicy1qdXN0aWZpZWQtYWN0aXZlLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG5cbi8vPT0gUGlsbHNcbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnaW5hdGlvblxuLy9cbi8vIyNcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBQYWdlclxuLy9cbi8vIyNcblxuJHBhZ2VyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYmcgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kcGFnZXItaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHBhZ2VyLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG4kcGFnZXItZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IEp1bWJvdHJvblxuLy9cbi8vIyNcblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWNvbG9yOiAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tZm9udC1zaXplOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNSkpICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWZvbnQtc2l6ZTogICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogNC41KSkgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3JtIHN0YXRlcyBhbmQgYWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgY29sb3JzIGZvciBmb3JtIGZlZWRiYWNrIHN0YXRlcyBhbmQsIGJ5IGRlZmF1bHQsIGFsZXJ0cy5cblxuJHN0YXRlLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgICAgIzU4YmU1MCAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICNkZmYwZDggIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtc3VjY2Vzcy1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICAgICAjMzE3MDhmICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgI2Q5ZWRmNyAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1pbmZvLWJnLCAtMTApLCA3JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS13YXJuaW5nLXRleHQ6ICAgICAgICAgICAgICM4YTZkM2IgIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1iZzogICAgICAgICAgICAgICAjZjBjNzNiICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXdhcm5pbmctYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWRhbmdlci10ZXh0OiAgICAgICAgICAgICAgI2E5NDQ0MiAhZGVmYXVsdDtcbiRzdGF0ZS1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICNlOTM0MzQgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtZGFuZ2VyLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cblxuLy89PSBUb29sdGlwc1xuLy9cbi8vIyNcblxuLy8qKiBUb29sdGlwIG1heCB3aWR0aFxuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgdGV4dCBjb2xvclxuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBiYWNrZ3JvdW5kIGNvbG9yXG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG5cbi8vKiogVG9vbHRpcCBhcnJvdyB3aWR0aFxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIGFycm93IGNvbG9yXG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuXG4vLz09IFBvcG92ZXJzXG4vL1xuLy8jI1xuXG4vLyoqIFBvcG92ZXIgYm9keSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgbWF4aW11bSB3aWR0aFxuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBib3JkZXIgY29sb3JcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgZmFsbGJhY2sgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciB0aXRsZSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci10aXRsZS1iZzogICAgICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgYXJyb3cgd2lkdGhcbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDogICAgICAgICAgICgkcG9wb3Zlci1hcnJvdy13aWR0aCArIDEpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICAgIGZhZGVfaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAwLjA1KSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBmYWxsYmFjayBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I6ICBkYXJrZW4oJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuXG5cbi8vPT0gTGFiZWxzXG4vL1xuLy8jI1xuXG4vLyoqIERlZmF1bHQgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRlZmF1bHQtYmc6ICAgICAgICAgICAgJGdyYXktZGFya2VyICFkZWZhdWx0O1xuLy8qKiBQcmltYXJ5IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1wcmltYXJ5LWJnOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBJbmZvIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1pbmZvLWJnOiAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC13YXJuaW5nLWJnOiAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRhbmdlci1iZzogICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGxhYmVsIHRleHQgY29sb3JcbiRsYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgIHdoaXRlICFkZWZhdWx0O1xuLy8qKiBEZWZhdWx0IHRleHQgY29sb3Igb2YgYSBsaW5rZWQgbGFiZWxcbiRsYWJlbC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuXG5cbi8vPT0gTW9kYWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgMzBweCAhZGVmYXVsdDtcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIHRpdGxlXG4kbW9kYWwtdGl0bGUtcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCB0aXRsZSBsaW5lLWhlaWdodFxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBjb250ZW50IGFyZWFcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3JcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yICoqZm9yIElFOCoqXG4kbW9kYWwtY29udGVudC1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogTW9kYWwgYmFja2Ryb3AgYmFja2dyb3VuZCBjb2xvclxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgYmFja2Ryb3Agb3BhY2l0eVxuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgLjUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGhlYWRlciBib3JkZXIgY29sb3JcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICNlNWU1ZTUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGZvb3RlciBib3JkZXIgY29sb3JcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICA5MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgIDYwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBBbGVydHNcbi8vXG4vLyMjIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZzogICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgIGJvbGQgIWRlZmF1bHQ7XG5cbiRhbGVydC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LWluZm8tYmc6ICAgICAgICAgICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XG4kYWxlcnQtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtd2FybmluZy1iZzogICAgICAgICAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1kYW5nZXItYmc6ICAgICAgICAgICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcblxuXG4vLz09IFByb2dyZXNzIGJhcnNcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgd2hvbGUgcHJvZ3Jlc3MgY29tcG9uZW50XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBQcm9ncmVzcyBiYXIgdGV4dCBjb2xvclxuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVmFyaWFibGUgZm9yIHNldHRpbmcgcm91bmRlZCBjb3JuZXJzIG9uIHByb2dyZXNzIGJhci5cbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1zdWNjZXNzLWJnOiAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4vLyoqIFdhcm5pbmcgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXdhcm5pbmctYmc6ICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbi8vKiogRGFuZ2VyIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1kYW5nZXItYmc6ICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbi8vKiogSW5mbyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItaW5mby1iZzogICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuXG5cbi8vPT0gTGlzdCBncm91cFxuLy9cbi8vIyNcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9uIGAubGlzdC1ncm91cC1pdGVtYFxuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBgLmxpc3QtZ3JvdXAtaXRlbWAgYm9yZGVyIGNvbG9yXG4kbGlzdC1ncm91cC1ib3JkZXI6ICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4vLyoqIExpc3QgZ3JvdXAgYm9yZGVyIHJhZGl1c1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2Ygc2luZ2xlIGxpc3QgaXRlbXMgb24gaG92ZXJcbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogQm9yZGVyIGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGVsZW1lbnRzXG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyOiAgICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yOiAgbGlnaHRlbigkbGlzdC1ncm91cC1hY3RpdmUtYmcsIDQwJSkgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtbGluay1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjogICAkbGlzdC1ncm91cC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1oZWFkaW5nLWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFuZWxzXG4vL1xuLy8jI1xuXG4kcGFuZWwtYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhbmVsLWJvZHktcGFkZGluZzogICAgICAgICAgMjBweCAhZGVmYXVsdDtcbiRwYW5lbC1oZWFkaW5nLXBhZGRpbmc6ICAgICAgIDE1cHggMjBweCAhZGVmYXVsdDtcbiRwYW5lbC1mb290ZXItcGFkZGluZzogICAgICAgICRwYW5lbC1oZWFkaW5nLXBhZGRpbmcgIWRlZmF1bHQ7XG4kcGFuZWwtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgZWxlbWVudHMgd2l0aGluIHBhbmVsc1xuJHBhbmVsLWlubmVyLWJvcmRlcjogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgI2VkZWRlZCAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1wcmltYXJ5LXRleHQ6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1ib3JkZXI6ICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFuZWwtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZzogICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1oZWFkaW5nLWJnOiAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmc6ICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItaGVhZGluZy1iZzogICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBUaHVtYm5haWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgaW1hZ2VcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJhY2tncm91bmQgY29sb3JcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIGNvbG9yXG4kdGh1bWJuYWlsLWJvcmRlcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIHJhZGl1c1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBDdXN0b20gdGV4dCBjb2xvciBmb3IgdGh1bWJuYWlsIGNhcHRpb25zXG4kdGh1bWJuYWlsLWNhcHRpb24tY29sb3I6ICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBjYXB0aW9uXG4kdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZzogICA5cHggIWRlZmF1bHQ7XG5cblxuLy89PSBXZWxsc1xuLy9cbi8vIyNcblxuJHdlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR3ZWxsLWJvcmRlcjogICAgICAgICAgICAgICAgIGRhcmtlbigkd2VsbC1iZywgNyUpICFkZWZhdWx0O1xuXG5cbi8vPT0gQmFkZ2VzXG4vL1xuLy8jI1xuXG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBMaW5rZWQgYmFkZ2UgdGV4dCBjb2xvciBvbiBob3ZlclxuJGJhZGdlLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRiYWRnZS1iZzogICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIEJhZGdlIHRleHQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFkZ2UgYmFja2dyb3VuZCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAxICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgMTBweCAhZGVmYXVsdDtcblxuXG4vLz09IEJyZWFkY3J1bWJzXG4vL1xuLy8jI1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsOiAgIDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw6IDAgIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgYmFja2dyb3VuZCBjb2xvclxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiB0ZXh0IGNvbG9yXG4kYnJlYWRjcnVtYi1jb2xvcjogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgY3VycmVudCBwYWdlIGluIHRoZSBicmVhZGNydW1iXG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBUZXh0dWFsIHNlcGFyYXRvciBmb3IgYmV0d2VlbiBicmVhZGNydW1iIGVsZW1lbnRzXG4kYnJlYWRjcnVtYi1zZXBhcmF0b3I6ICAgICAgICAgIFwiPlwiICFkZWZhdWx0O1xuXG5cbi8vPT0gQ2Fyb3VzZWxcbi8vXG4vLyMjXG5cbiRjYXJvdXNlbC10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgwLDAsMCwuNikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDM1cHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgMTFweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gQ2xvc2Vcbi8vXG4vLyMjXG5cbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgMCAxcHggMCAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29kZVxuLy9cbi8vIyNcblxuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgI2M3MjU0ZSAhZGVmYXVsdDtcbiRjb2RlLWJnOiAgICAgICAgICAgICAgICAgICAgICNmOWYyZjQgIWRlZmF1bHQ7XG5cbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuXG4kcHJlLWJnOiAgICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRwcmUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLz09IFR5cGVcbi8vXG4vLyMjXG5cbi8vKiogSG9yaXpvbnRhbCBvZmZzZXQgZm9yIGZvcm1zIGFuZCBsaXN0cy5cbiRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWw6IDE4MHB4ICFkZWZhdWx0O1xuLy8qKiBUZXh0IG11dGVkIGNvbG9yXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQWJicmV2aWF0aW9ucyBhbmQgYWNyb255bXMgYm9yZGVyIGNvbG9yXG4kYWJici1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogSGVhZGluZ3Mgc21hbGwgY29sb3JcbiRoZWFkaW5ncy1zbWFsbC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIHNtYWxsIGNvbG9yXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBmb250IHNpemVcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgIDI0cHggIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgYm9yZGVyIGNvbG9yXG4kYmxvY2txdW90ZS1ib3JkZXItY29sb3I6ICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBQYWdlIGhlYWRlciBib3JkZXIgY29sb3JcbiRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFdpZHRoIG9mIGhvcml6b250YWwgZGVzY3JpcHRpb24gbGlzdCB0aXRsZXNcbiRkbC1ob3Jpem9udGFsLW9mZnNldDogICAgICAgICRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWwgIWRlZmF1bHQ7XG4vLyoqIEhvcml6b250YWwgbGluZSBjb2xvci5cbiRoci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4iLCIvLyBNaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcIm1peGlucy9oaWRlLXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvb3BhY2l0eVwiO1xuQGltcG9ydCBcIm1peGlucy9pbWFnZVwiO1xuQGltcG9ydCBcIm1peGlucy9sYWJlbHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtZmlsdGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNwb25zaXZlLXZpc2liaWxpdHlcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy90YWItZm9jdXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWVtcGhhc2lzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtb3ZlcmZsb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdmVuZG9yLXByZWZpeGVzXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJtaXhpbnMvYWxlcnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFuZWxzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtZGl2aWRlclwiO1xuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xuQGltcG9ydCBcIm1peGlucy9wcm9ncmVzcy1iYXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFibGUtcm93XCI7XG5cbi8vIFNraW5zXG5AaW1wb3J0IFwibWl4aW5zL2JhY2tncm91bmQtdmFyaWFudFwiO1xuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyYWRpZW50c1wiO1xuXG4vLyBMYXlvdXRcbkBpbXBvcnQgXCJtaXhpbnMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2VudGVyLWJsb2NrXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi12ZXJ0aWNhbC1hbGlnblwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkLWZyYW1ld29ya1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbi8vXG4vLyBIZWFkcyB1cCEgdjMgbGF1bmNoZWQgd2l0aCBvbmx5IGAuaGlkZS10ZXh0KClgLCBidXQgcGVyIG91ciBwYXR0ZXJuIGZvclxuLy8gbWl4aW5zIGJlaW5nIHJldXNlZCBhcyBjbGFzc2VzIHdpdGggdGhlIHNhbWUgbmFtZSwgdGhpcyBkb2Vzbid0IGhvbGQgdXAuIEFzXG4vLyBvZiB2My4wLjEgd2UgaGF2ZSBhZGRlZCBgLnRleHQtaGlkZSgpYCBhbmQgZGVwcmVjYXRlZCBgLmhpZGUtdGV4dCgpYC5cbi8vXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2NvbW1pdC9hYTAzOTZlYWU3NTdcblxuLy8gRGVwcmVjYXRlZCBhcyBvZiB2My4wLjEgKHdpbGwgYmUgcmVtb3ZlZCBpbiB2NClcbkBtaXhpbiBoaWRlLXRleHQoKSB7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBOZXcgbWl4aW4gdG8gdXNlIGFzIG9mIHYzLjAuMVxuQG1peGluIHRleHQtaGlkZSgpIHtcbiAgQGluY2x1ZGUgaGlkZS10ZXh0O1xufVxuIiwiLy8gT3BhY2l0eVxuXG5AbWl4aW4gb3BhY2l0eSgkb3BhY2l0eSkge1xuICBvcGFjaXR5OiAkb3BhY2l0eTtcbiAgLy8gSUU4IGZpbHRlclxuICAkb3BhY2l0eS1pZTogKCRvcGFjaXR5ICogMTAwKTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PSRvcGFjaXR5LWllKTtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuQG1peGluIGltZy1yZXNwb25zaXZlKCRkaXNwbGF5OiBibG9jaykge1xuICBkaXNwbGF5OiAkZGlzcGxheTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBoZWlnaHQ6IGF1dG87IC8vIFBhcnQgMjogU2NhbGUgdGhlIGhlaWdodCBhY2NvcmRpbmcgdG8gdGhlIHdpZHRoLCBvdGhlcndpc2UgeW91IGdldCBzdHJldGNoaW5nXG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLiBOb3RlIHRoYXQgdGhlXG4vLyBzcGVsbGluZyBvZiBgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvYCBpcyBpbnRlbnRpb25hbC5cbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWltYWdlLXBhdGgoXCIjeyRmaWxlLTF4fVwiKSwgXCIjeyRmaWxlLTF4fVwiKSk7XG5cbiAgQG1lZGlhXG4gIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggICBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMi8xKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDJkcHB4KSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMnh9XCIpLCBcIiN7JGZpbGUtMnh9XCIpKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xuICB9XG59XG4iLCIvLyBMYWJlbHNcblxuQG1peGluIGxhYmVsLXZhcmlhbnQoJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICAmW2hyZWZdIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJlc2V0IGZpbHRlcnMgZm9yIElFXG4vL1xuLy8gV2hlbiB5b3UgbmVlZCB0byByZW1vdmUgYSBncmFkaWVudCBiYWNrZ3JvdW5kLCBkbyBub3QgZm9yZ2V0IHRvIHVzZSB0aGlzIHRvIHJlc2V0XG4vLyB0aGUgSUUgZmlsdGVyIGZvciBJRTkgYW5kIGJlbG93LlxuXG5AbWl4aW4gcmVzZXQtZmlsdGVyKCkge1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkID0gZmFsc2UpO1xufVxuIiwiLy8gUmVzaXplIGFueXRoaW5nXG5cbkBtaXhpbiByZXNpemFibGUoJGRpcmVjdGlvbikge1xuICByZXNpemU6ICRkaXJlY3Rpb247IC8vIE9wdGlvbnM6IGhvcml6b250YWwsIHZlcnRpY2FsLCBib3RoXG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcbn1cbiIsIi8vIFJlc3BvbnNpdmUgdXRpbGl0aWVzXG5cbi8vXG4vLyBNb3JlIGVhc2lseSBpbmNsdWRlIGFsbCB0aGUgc3RhdGVzIGZvciByZXNwb25zaXZlLXV0aWxpdGllcy5sZXNzLlxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZSN7JHBhcmVudH0gIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0ciN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgjeyRwYXJlbnR9LFxuICB0ZCN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBTaXppbmcgc2hvcnRjdXRzXG5cbkBtaXhpbiBzaXplKCR3aWR0aCwgJGhlaWdodCkge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG59XG5cbkBtaXhpbiBzcXVhcmUoJHNpemUpIHtcbiAgQGluY2x1ZGUgc2l6ZSgkc2l6ZSwgJHNpemUpO1xufVxuIiwiLy8gV2ViS2l0LXN0eWxlIGZvY3VzXG5cbkBtaXhpbiB0YWItZm9jdXMoKSB7XG4gIC8vIERlZmF1bHRcbiAgb3V0bGluZTogbm9uZTtcbiAgLy8gV2ViS2l0XG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCgpIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZS5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cbiIsIi8vIFR5cG9ncmFwaHlcblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG4gIGEjeyRwYXJlbnR9OmhvdmVyLFxuICBhI3skcGFyZW50fTpmb2N1cyB7XG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIFRleHQgb3ZlcmZsb3dcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtb3ZlcmZsb3coKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gVmVuZG9yIFByZWZpeGVzXG4vL1xuLy8gQWxsIHZlbmRvciBtaXhpbnMgYXJlIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGR1ZSB0byB0aGUgaW50cm9kdWN0aW9uIG9mXG4vLyBBdXRvcHJlZml4ZXIgaW4gb3VyIEdydW50ZmlsZS4gVGhleSB3aWxsIGJlIHJlbW92ZWQgaW4gdjQuXG5cbi8vIC0gQW5pbWF0aW9uc1xuLy8gLSBCYWNrZmFjZSB2aXNpYmlsaXR5XG4vLyAtIEJveCBzaGFkb3dcbi8vIC0gQm94IHNpemluZ1xuLy8gLSBDb250ZW50IGNvbHVtbnNcbi8vIC0gSHlwaGVuc1xuLy8gLSBQbGFjZWhvbGRlciB0ZXh0XG4vLyAtIFRyYW5zZm9ybWF0aW9uc1xuLy8gLSBUcmFuc2l0aW9uc1xuLy8gLSBVc2VyIFNlbGVjdFxuXG5cbi8vIEFuaW1hdGlvbnNcbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbiAgICAgICAtby1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1uYW1lKCRuYW1lKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbn1cbkBtaXhpbiBhbmltYXRpb24tZHVyYXRpb24oJGR1cmF0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1kZWxheSgkZGVsYXkpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbiAgICAgICAgICBhbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbn1cbkBtaXhpbiBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50KCRpdGVyYXRpb24tY291bnQpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xuICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1maWxsLW1vZGUoJGZpbGwtbW9kZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG4gICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcbn1cblxuLy8gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gUHJldmVudCBicm93c2VycyBmcm9tIGZsaWNrZXJpbmcgd2hlbiB1c2luZyBDU1MgM0QgdHJhbnNmb3Jtcy5cbi8vIERlZmF1bHQgdmFsdWUgaXMgYHZpc2libGVgLCBidXQgY2FuIGJlIGNoYW5nZWQgdG8gYGhpZGRlbmBcblxuQG1peGluIGJhY2tmYWNlLXZpc2liaWxpdHkoJHZpc2liaWxpdHkpe1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xuICAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xufVxuXG4vLyBEcm9wIHNoYWRvd3Ncbi8vXG4vLyBOb3RlOiBEZXByZWNhdGVkIGAuYm94LXNoYWRvdygpYCBhcyBvZiB2My4xLjAgc2luY2UgYWxsIG9mIEJvb3RzdHJhcCdzXG4vLyBzdXBwb3J0ZWQgYnJvd3NlcnMgdGhhdCBoYXZlIGJveCBzaGFkb3cgY2FwYWJpbGl0aWVzIG5vdyBzdXBwb3J0IGl0LlxuXG5AbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogJHNoYWRvdzsgLy8gaU9TIDw0LjMgJiBBbmRyb2lkIDw0LjFcbiAgICAgICAgICBib3gtc2hhZG93OiAkc2hhZG93O1xufVxuXG4vLyBCb3ggc2l6aW5nXG5AbWl4aW4gYm94LXNpemluZygkYm94bW9kZWwpIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgIC1tb3otYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgICAgICAgIGJveC1zaXppbmc6ICRib3htb2RlbDtcbn1cblxuLy8gQ1NTMyBDb250ZW50IENvbHVtbnNcbkBtaXhpbiBjb250ZW50LWNvbHVtbnMoJGNvbHVtbi1jb3VudCwgJGNvbHVtbi1nYXA6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAtd2Via2l0LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAgLW1vei1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gICAgICAgICAgY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAtd2Via2l0LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xuICAgICAtbW96LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xuICAgICAgICAgIGNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xufVxuXG4vLyBPcHRpb25hbCBoeXBoZW5hdGlvblxuQG1peGluIGh5cGhlbnMoJG1vZGU6IGF1dG8pIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LWh5cGhlbnM6ICRtb2RlO1xuICAgICAtbW96LWh5cGhlbnM6ICRtb2RlO1xuICAgICAgLW1zLWh5cGhlbnM6ICRtb2RlOyAvLyBJRTEwK1xuICAgICAgIC1vLWh5cGhlbnM6ICRtb2RlO1xuICAgICAgICAgIGh5cGhlbnM6ICRtb2RlO1xufVxuXG4vLyBQbGFjZWhvbGRlciB0ZXh0XG5AbWl4aW4gcGxhY2Vob2xkZXIoJGNvbG9yOiAkaW5wdXQtY29sb3ItcGxhY2Vob2xkZXIpIHtcbiAgLy8gRmlyZWZveFxuICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIG9wYWNpdHk6IDE7IC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2XG4gIH1cbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogJGNvbG9yOyB9IC8vIEludGVybmV0IEV4cGxvcmVyIDEwK1xuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyICB7IGNvbG9yOiAkY29sb3I7IH0gLy8gU2FmYXJpIGFuZCBDaHJvbWVcbn1cblxuLy8gVHJhbnNmb3JtYXRpb25zXG5AbWl4aW4gc2NhbGUoJHJhdGlvLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xufVxuXG5AbWl4aW4gc2NhbGVYKCRyYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG59XG5AbWl4aW4gc2NhbGVZKCRyYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG59XG5AbWl4aW4gc2tldygkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy80ODg1OyBJRTkrXG4gICAgICAgLW8tdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbn1cbkBtaXhpbiB0cmFuc2xhdGUoJHgsICR5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbn1cbkBtaXhpbiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xufVxuQG1peGluIHJvdGF0ZSgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiByb3RhdGVYKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiByb3RhdGVZKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgICAtbW96LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiBwZXJzcGVjdGl2ZS1vcmlnaW4oJHBlcnNwZWN0aXZlKSB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG59XG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkb3JpZ2luKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47IC8vIElFOSBvbmx5XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbn1cblxuXG4vLyBUcmFuc2l0aW9uc1xuXG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tcHJvcGVydHkoJHRyYW5zaXRpb24tcHJvcGVydHkuLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCR0cmFuc2l0aW9uLWRlbGF5KSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1kdXJhdGlvbigkdHJhbnNpdGlvbi1kdXJhdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXRyYW5zZm9ybSgkdHJhbnNpdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb247XG59XG5cblxuLy8gVXNlciBzZWxlY3Rcbi8vIEZvciBzZWxlY3RpbmcgdGV4dCBvbiB0aGUgcGFnZVxuXG5AbWl4aW4gdXNlci1zZWxlY3QoJHNlbGVjdCkge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xuICAgICAtbW96LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiAkc2VsZWN0OyAvLyBJRTEwK1xuICAgICAgICAgIHVzZXItc2VsZWN0OiAkc2VsZWN0O1xufVxuIiwiLy8gQWxlcnRzXG5cbkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkdGV4dC1jb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJHRleHQtY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAyNSUpO1xuICB9XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDE3JSk7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcbiAgICB9XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgJixcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG5cbiAgLmJhZGdlIHtcbiAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG59XG4iLCIvLyBQYW5lbHNcblxuQG1peGluIHBhbmVsLXZhcmlhbnQoJGJvcmRlciwgJGhlYWRpbmctdGV4dC1jb2xvciwgJGhlYWRpbmctYmctY29sb3IsICRoZWFkaW5nLWJvcmRlcikge1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJiA+IC5wYW5lbC1oZWFkaW5nIHtcbiAgICBjb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRoZWFkaW5nLWJvcmRlcjtcblxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgfVxuICB9XG4gICYgPiAucGFuZWwtZm9vdGVyIHtcbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG59XG4iLCIvLyBQYWdpbmF0aW9uXG5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgPiBsaSB7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmLCBidXR0b24mIHRvIGEubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSwgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX1cbiAgfVxuXG4gIGEubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICB9XG4gICAgJi5hY3RpdmUsXG4gICAgJi5hY3RpdmU6aG92ZXIsXG4gICAgJi5hY3RpdmU6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogI2U1ZTVlNSkge1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpIC0gMSkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xufVxuIiwiLy8gRm9ybSB2YWxpZGF0aW9uIHN0YXRlc1xuLy9cbi8vIFVzZWQgaW4gZm9ybXMubGVzcyB0byBnZW5lcmF0ZSB0aGUgZm9ybSB2YWxpZGF0aW9uIENTUyBmb3Igd2FybmluZ3MsIGVycm9ycyxcbi8vIGFuZCBzdWNjZXNzZXMuXG5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkdGV4dC1jb2xvcjogIzU1NSwgJGJvcmRlci1jb2xvcjogI2NjYywgJGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjUpIHtcbiAgLy8gQ29sb3IgdGhlIGxhYmVsIGFuZCBoZWxwIHRleHRcbiAgLmhlbHAtYmxvY2ssXG4gIC5jb250cm9sLWxhYmVsLFxuICAucmFkaW8sXG4gIC5jaGVja2JveCxcbiAgLnJhZGlvLWlubGluZSxcbiAgLmNoZWNrYm94LWlubGluZSxcbiAgJi5yYWRpbyBsYWJlbCxcbiAgJi5jaGVja2JveCBsYWJlbCxcbiAgJi5yYWRpby1pbmxpbmUgbGFiZWwsXG4gICYuY2hlY2tib3gtaW5saW5lIGxhYmVsICB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB9XG4gIC8vIFNldCB0aGUgYm9yZGVyIGFuZCBib3ggc2hhZG93IG9uIHNwZWNpZmljIGlucHV0cyB0byBtYXRjaFxuICAuZm9ybS1jb250cm9sIHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSk7IC8vIFJlZGVjbGFyZSBzbyB0cmFuc2l0aW9ucyB3b3JrXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLWNvbG9yLCAxMCUpO1xuICAgICAgJHNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksIDAgMCA2cHggbGlnaHRlbigkYm9yZGVyLWNvbG9yLCAyMCUpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkc2hhZG93KTtcbiAgICB9XG4gIH1cbiAgLy8gU2V0IHZhbGlkYXRpb24gc3RhdGVzIGFsc28gZm9yIGFkZG9uc1xuICAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XG4gIH1cbiAgLy8gT3B0aW9uYWwgZmVlZGJhY2sgaWNvblxuICAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtYm9yZGVyLWZvY3VzYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygkY29sb3I6ICRpbnB1dC1ib3JkZXItZm9jdXMpIHtcbiAgJGNvbG9yLXJnYmE6IHJnYmEocmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKSwgLjYpO1xuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIFJlbGF0aXZlIHRleHQgc2l6ZSwgcGFkZGluZywgYW5kIGJvcmRlci1yYWRpaSBjaGFuZ2VzIGZvciBmb3JtIGNvbnRyb2xzLiBGb3Jcbi8vIGhvcml6b250YWwgc2l6aW5nLCB3cmFwIGNvbnRyb2xzIGluIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy4gYDxzZWxlY3Q+YFxuLy8gZWxlbWVudCBnZXRzIHNwZWNpYWwgbG92ZSBiZWNhdXNlIGl0J3Mgc3BlY2lhbCwgYW5kIHRoYXQncyBhIGZhY3QhXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiBpbnB1dC1zaXplKCRwYXJlbnQsICRpbnB1dC1oZWlnaHQsICRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgc2VsZWN0I3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgdGV4dGFyZWEjeyRwYXJlbnR9LFxuICBzZWxlY3RbbXVsdGlwbGVdI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG4iLCIvLyBQcm9ncmVzcyBiYXJzXG5cbkBtaXhpbiBwcm9ncmVzcy1iYXItdmFyaWFudCgkY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gIC8vIERlcHJlY2F0ZWQgcGFyZW50IGNsYXNzIHJlcXVpcmVtZW50IGFzIG9mIHYzLjIuMFxuICAucHJvZ3Jlc3Mtc3RyaXBlZCAmIHtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkO1xuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlID4gdGhlYWQgPiB0cixcbiAgLnRhYmxlID4gdGJvZHkgPiB0cixcbiAgLnRhYmxlID4gdGZvb3QgPiB0ciB7XG4gICAgPiB0ZC4jeyRzdGF0ZX0sXG4gICAgPiB0aC4jeyRzdGF0ZX0sXG4gICAgJi4jeyRzdGF0ZX0gPiB0ZCxcbiAgICAmLiN7JHN0YXRlfSA+IHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXG4gIC50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIge1xuICAgID4gdGQuI3skc3RhdGV9OmhvdmVyLFxuICAgID4gdGguI3skc3RhdGV9OmhvdmVyLFxuICAgICYuI3skc3RhdGV9OmhvdmVyID4gdGQsXG4gICAgJjpob3ZlciA+IC4jeyRzdGF0ZX0sXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0aCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG4iLCIvLyBHcmFkaWVudHNcblxuXG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd25cbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93blxufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbn1cbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG59XG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTApOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICM1NTUsICRvdXRlci1jb2xvcjogIzMzMykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiLy8gQ2xlYXJmaXhcbi8vXG4vLyBGb3IgbW9kZXJuIGJyb3dzZXJzXG4vLyAxLiBUaGUgc3BhY2UgY29udGVudCBpcyBvbmUgd2F5IHRvIGF2b2lkIGFuIE9wZXJhIGJ1ZyB3aGVuIHRoZVxuLy8gICAgY29udGVudGVkaXRhYmxlIGF0dHJpYnV0ZSBpcyBpbmNsdWRlZCBhbnl3aGVyZSBlbHNlIGluIHRoZSBkb2N1bWVudC5cbi8vICAgIE90aGVyd2lzZSBpdCBjYXVzZXMgc3BhY2UgdG8gYXBwZWFyIGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBlbGVtZW50c1xuLy8gICAgdGhhdCBhcmUgY2xlYXJmaXhlZC5cbi8vIDIuIFRoZSB1c2Ugb2YgYHRhYmxlYCByYXRoZXIgdGhhbiBgYmxvY2tgIGlzIG9ubHkgbmVjZXNzYXJ5IGlmIHVzaW5nXG4vLyAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXG4vL1xuLy8gU291cmNlOiBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay9cblxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7IC8vIDFcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMlxuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG4iLCIvLyBDZW50ZXItYWxpZ24gYSBibG9jayBsZXZlbCBlbGVtZW50XG5cbkBtaXhpbiBjZW50ZXItYmxvY2soKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuIiwiLy8gTmF2YmFyIHZlcnRpY2FsIGFsaWduXG4vL1xuLy8gVmVydGljYWxseSBjZW50ZXIgZWxlbWVudHMgaW4gdGhlIG5hdmJhci5cbi8vIEV4YW1wbGU6IGFuIGVsZW1lbnQgaGFzIGEgaGVpZ2h0IG9mIDMwcHgsIHNvIHdyaXRlIG91dCBgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbigzMHB4KTtgIHRvIGNhbGN1bGF0ZSB0aGUgYXBwcm9wcmlhdGUgdG9wIG1hcmdpbi5cblxuQG1peGluIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkZWxlbWVudC1oZWlnaHQpIHtcbiAgbWFyZ2luLXRvcDogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGk6IDEsICRsaXN0OiBcIi5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIikge1xuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgLy8gSW5uZXIgZ3V0dGVyIHZpYSBwYWRkaW5nXG4gICAgcGFkZGluZy1sZWZ0OiAgY2VpbCgoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cbn1cblxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MsICRpOiAxLCAkbGlzdDogXCIuY29sLSN7JGNsYXNzfS0jeyRpfVwiKSB7XG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wtI3skY2xhc3N9LSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cblxuQG1peGluIGNhbGMtZ3JpZC1jb2x1bW4oJGluZGV4LCAkY2xhc3MsICR0eXBlKSB7XG4gIEBpZiAoJHR5cGUgPT0gd2lkdGgpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LSN7JGluZGV4fSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1c2gtI3skaW5kZXh9IHtcbiAgICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0wIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVsbCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0jeyRpbmRleH0ge1xuICAgICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0wIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IG9mZnNldCkge1xuICAgIC5jb2wtI3skY2xhc3N9LW9mZnNldC0jeyRpbmRleH0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBsb29wLWdyaWQtY29sdW1ucygkY29sdW1ucywgJGNsYXNzLCAkdHlwZSkge1xuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICBAaW5jbHVkZSBjYWxjLWdyaWQtY29sdW1uKCRpLCAkY2xhc3MsICR0eXBlKTtcbiAgfVxufVxuXG5cbi8vIENyZWF0ZSBncmlkIGZvciBzcGVjaWZpYyBjbGFzc1xuQG1peGluIG1ha2UtZ3JpZCgkY2xhc3MpIHtcbiAgQGluY2x1ZGUgZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcyk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgd2lkdGgpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1bGwpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1c2gpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIG9mZnNldCk7XG59XG4iLCIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuLy8gQ2VudGVyZWQgY29udGFpbmVyIGVsZW1lbnRcbkBtaXhpbiBjb250YWluZXItZml4ZWQoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBDcmVhdGVzIGEgd3JhcHBlciBmb3IgYSBzZXJpZXMgb2YgY29sdW1uc1xuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBtYXJnaW4tbGVmdDogIGNlaWwoKCRndXR0ZXIgLyAtMikpO1xuICBtYXJnaW4tcmlnaHQ6IGZsb29yKCgkZ3V0dGVyIC8gLTIpKTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBleHRyYSBzbWFsbCBjb2x1bW5zXG5AbWl4aW4gbWFrZS14cy1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBzbWFsbCBjb2x1bW5zXG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBtZWRpdW0gY29sdW1uc1xuQG1peGluIG1ha2UtbWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuXG4vLyBHZW5lcmF0ZSB0aGUgbGFyZ2UgY29sdW1uc1xuQG1peGluIG1ha2UtbGctY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vL1xuLy8gMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbi8vIDIuIFByZXZlbnQgaU9TIGFuZCBJRSB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIGRldmljZSBvcmllbnRhdGlvbiBjaGFuZ2UsXG4vLyAgICB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb20uXG4vL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDFcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG59XG5cbi8vXG4vLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG4vL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLyBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4vLyBhbmQgRmlyZWZveC5cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4vL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4vLyAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4vL1xuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyAyXG59XG5cbi8vXG4vLyBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuLy8gUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbi8vXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbi8vIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbi8vXG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBMaW5rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuLy9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vL1xuLy8gSW1wcm92ZSByZWFkYWJpbGl0eSBvZiBmb2N1c2VkIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgYWxzbyBpbiBhblxuLy8gYWN0aXZlL2hvdmVyIHN0YXRlLlxuLy9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gVGV4dC1sZXZlbCBzZW1hbnRpY3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4vL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4vLyBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbi8vXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbi8vIEVtYmVkZGVkIGNvbnRlbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbi8vXG5cbmltZyB7XG4gIGJvcmRlcjogMDtcbn1cblxuLy9cbi8vIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuLy9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLyBHcm91cGluZyBjb250ZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4vL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vL1xuLy8gQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuLy9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vL1xuLy8gQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLy9cbi8vIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLy8gRm9ybXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuLy8gc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxuLy9cblxuLy9cbi8vIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbi8vICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuLy8gMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbi8vIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDFcbiAgZm9udDogaW5oZXJpdDsgLy8gMlxuICBtYXJnaW46IDA7IC8vIDNcbn1cblxuLy9cbi8vIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuLy9cblxuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4vLyBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuLy8gQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cbi8vIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbi8vXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2Bcbi8vICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuLy8gMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuLy8gMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbi8vICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbi8vXG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG4gIGN1cnNvcjogcG9pbnRlcjsgLy8gM1xufVxuXG4vL1xuLy8gUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbi8vXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLy9cbi8vIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbi8vXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuLy8gdGhlIFVBIHN0eWxlc2hlZXQuXG4vL1xuXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8vXG4vLyBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4vLyBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxuLy9cbi8vIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4vLyAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuLy9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG59XG5cbi8vXG4vLyBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuLy8gYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbi8vIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbi8vXG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vL1xuLy8gMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4vLyAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLzJcbn1cblxuLy9cbi8vIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuLy8gU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xuLy8gcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuLy9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4vL1xuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbi8vIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbi8vXG5cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG59XG5cbi8vXG4vLyBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxuLy9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLy9cbi8vIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbi8vIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuLy9cblxub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLy8gVGFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuLy9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7XG59XG4iLCIvKiEgU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9ibG9iL21hc3Rlci9zcmMvY3NzL21haW4uY3NzICovXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmludCBzdHlsZXMuXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDogaDVicC5jb20vclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQG1lZGlhIHByaW50IHtcbiAgICAqLFxuICAgICo6YmVmb3JlLFxuICAgICo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgIGFbaHJlZl06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgICB9XG5cbiAgICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgICB9XG5cbiAgICAvLyBEb24ndCBzaG93IGxpbmtzIHRoYXQgYXJlIGZyYWdtZW50IGlkZW50aWZpZXJzLFxuICAgIC8vIG9yIHVzZSB0aGUgYGphdmFzY3JpcHQ6YCBwc2V1ZG8gcHJvdG9jb2xcbiAgICBhW2hyZWZePVwiI1wiXTphZnRlcixcbiAgICBhW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cblxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHRoZWFkIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyAvLyBoNWJwLmNvbS90XG4gICAgfVxuXG4gICAgdHIsXG4gICAgaW1nIHtcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgICBvcnBoYW5zOiAzO1xuICAgICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxuXG4gICAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcbiAgICAubmF2YmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmJ0bixcbiAgICAuZHJvcHVwID4gLmJ0biB7XG4gICAgICAgID4gLmNhcmV0IHtcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubGFiZWwge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuICAgIH1cblxuICAgIC50YWJsZSB7XG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcblxuICAgICAgICB0ZCxcbiAgICAgICAgdGgge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgIHRoLFxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBlbmRcbn1cbiIsIi8vXG4vLyBTY2FmZm9sZGluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBSZXNldCB0aGUgYm94LXNpemluZ1xuLy9cbi8vIEhlYWRzIHVwISBUaGlzIHJlc2V0IG1heSBjYXVzZSBjb25mbGljdHMgd2l0aCBzb21lIHRoaXJkLXBhcnR5IHdpZGdldHMuXG4vLyBGb3IgcmVjb21tZW5kYXRpb25zIG9uIHJlc29sdmluZyBzdWNoIGNvbmZsaWN0cywgc2VlXG4vLyBodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbS9nZXR0aW5nLXN0YXJ0ZWQvI3RoaXJkLWJveC1zaXppbmdcbioge1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xufVxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbn1cblxuXG4vLyBCb2R5IHJlc2V0XG5cbmh0bWwge1xuICBmb250LXNpemU6IDEwcHg7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLDAsMCwwKTtcbn1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbiAgb3ZlcmZsb3cteDogaGlkZGVuOyBcbn1cblxuLy8gUmVzZXQgZm9udHMgZm9yIHJlbGV2YW50IGVsZW1lbnRzXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cblxuLy8gTGlua3NcblxuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSB0YWItZm9jdXM7XG4gIH1cbn1cblxuXG4vLyBGaWd1cmVzXG4vL1xuLy8gV2UgcmVzZXQgdGhpcyBoZXJlIGJlY2F1c2UgcHJldmlvdXNseSBOb3JtYWxpemUgaGFkIG5vIGBmaWd1cmVgIG1hcmdpbnMuIFRoaXNcbi8vIGVuc3VyZXMgd2UgZG9uJ3QgYnJlYWsgYW55b25lJ3MgdXNlIG9mIHRoZSBlbGVtZW50LlxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cblxuLy8gSW1hZ2VzXG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLmltZy1yZXNwb25zaXZlIHtcbiAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmU7XG59XG5cbi8vIFJvdW5kZWQgY29ybmVyc1xuLmltZy1yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG59XG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi8vXG4vLyBIZWFkcyB1cCEgVGhpcyBpcyBtaXhpbi1lZCBpbnRvIHRodW1ibmFpbHMubGVzcyBmb3IgYC50aHVtYm5haWxgLlxuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJHRodW1ibmFpbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UtaW4tb3V0KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmUoaW5saW5lLWJsb2NrKTtcbn1cblxuLy8gUGVyZmVjdCBjaXJjbGVcbi5pbWctY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlOyAvLyBzZXQgcmFkaXVzIGluIHBlcmNlbnRzXG59XG5cblxuLy8gSG9yaXpvbnRhbCBydWxlc1xuXG5ociB7XG4gIG1hcmdpbi10b3A6ICAgICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaHItYm9yZGVyO1xufVxuXG5cbi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzXG4vL1xuLy8gU2VlOiBodHRwOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnQvXG5cbi5zci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsMCwwLDApO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbi5zci1vbmx5LWZvY3VzYWJsZSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bztcbiAgfVxufVxuXG5cbi8vIGlPUyBcImNsaWNrYWJsZSBlbGVtZW50c1wiIGZpeCBmb3Igcm9sZT1cImJ1dHRvblwiXG4vL1xuLy8gRml4ZXMgXCJjbGlja2FiaWxpdHlcIiBpc3N1ZSAoYW5kIG1vcmUgZ2VuZXJhbGx5LCB0aGUgZmlyaW5nIG9mIGV2ZW50cyBzdWNoIGFzIGZvY3VzIGFzIHdlbGwpXG4vLyBmb3IgdHJhZGl0aW9uYWxseSBub24tZm9jdXNhYmxlIGVsZW1lbnRzIHdpdGggcm9sZT1cImJ1dHRvblwiXG4vLyBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4iLCIvL1xuLy8gVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBIZWFkaW5nc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRoZWFkaW5ncy1zbWFsbC1jb2xvcjtcbiAgfVxufVxuXG5oMSwgLmgxLFxuaDIsIC5oMixcbmgzLCAuaDMge1xuICBtYXJnaW4tdG9wOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcblxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDY1JTtcbiAgfVxufVxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgbWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG5cbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gIH1cbn1cblxuaDEsIC5oMSB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMTsgfVxuaDIsIC5oMiB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMjsgfVxuaDMsIC5oMyB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMzsgfVxuaDQsIC5oNCB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNDsgfVxuaDUsIC5oNSB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNTsgfVxuaDYsIC5oNiB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNjsgfVxuXG5cbi8vIEJvZHkgdGV4dFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5wIHtcbiAgbWFyZ2luOiAwIDAgKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xufVxuXG4ubGVhZCB7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zaXplOiBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMS4xNSkpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIH1cbn1cblxuXG4vLyBFbXBoYXNpcyAmIG1pc2Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRXg6ICgxMnB4IHNtYWxsIGZvbnQgLyAxNHB4IGJhc2UgZm9udCkgKiAxMDAlID0gYWJvdXQgODUlXG5zbWFsbCxcbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogZmxvb3IoKDEwMCUgKiAkZm9udC1zaXplLXNtYWxsIC8gJGZvbnQtc2l6ZS1iYXNlKSk7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzdGF0ZS13YXJuaW5nLWJnO1xuICBwYWRkaW5nOiAuMmVtO1xufVxuXG4vLyBBbGlnbm1lbnRcbi50ZXh0LWxlZnQgICAgICAgICAgIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuLnRleHQtcmlnaHQgICAgICAgICAgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuLnRleHQtY2VudGVyICAgICAgICAgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbi50ZXh0LWp1c3RpZnkgICAgICAgIHsgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuLnRleHQtbm93cmFwICAgICAgICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi8vIFRyYW5zZm9ybWF0aW9uXG4udGV4dC1sb3dlcmNhc2UgICAgICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cbi50ZXh0LXVwcGVyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuLnRleHQtY2FwaXRhbGl6ZSAgICAgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogJHRleHQtbXV0ZWQ7XG59XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtcHJpbWFyeScsICRicmFuZC1wcmltYXJ5KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1zdWNjZXNzJywgJHN0YXRlLXN1Y2Nlc3MtdGV4dCk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtaW5mbycsICRzdGF0ZS1pbmZvLXRleHQpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXdhcm5pbmcnLCAkc3RhdGUtd2FybmluZy10ZXh0KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1kYW5nZXInLCAkc3RhdGUtZGFuZ2VyLXRleHQpO1xuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG4vLyBGb3Igbm93IHdlJ2xsIGxlYXZlIHRoZXNlIGFsb25nc2lkZSB0aGUgdGV4dCBjbGFzc2VzIHVudGlsIHY0IHdoZW4gd2UgY2FuXG4vLyBzYWZlbHkgc2hpZnQgdGhpbmdzIGFyb3VuZCAocGVyIFNlbVZlciBydWxlcykuXG4uYmctcHJpbWFyeSB7XG4gIC8vIEdpdmVuIHRoZSBjb250cmFzdCBoZXJlLCB0aGlzIGlzIHRoZSBvbmx5IGNsYXNzIHRvIGhhdmUgaXRzIGNvbG9yIGludmVydGVkXG4gIC8vIGF1dG9tYXRpY2FsbHkuXG4gIGNvbG9yOiAjZmZmO1xufVxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXByaW1hcnknLCAkYnJhbmQtcHJpbWFyeSk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1zdWNjZXNzJywgJHN0YXRlLXN1Y2Nlc3MtYmcpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctaW5mbycsICRzdGF0ZS1pbmZvLWJnKTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXdhcm5pbmcnLCAkc3RhdGUtd2FybmluZy1iZyk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1kYW5nZXInLCAkc3RhdGUtZGFuZ2VyLWJnKTtcblxuXG4vLyBQYWdlIGhlYWRlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ucGFnZS1oZWFkZXIge1xuICBwYWRkaW5nLWJvdHRvbTogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIDEpO1xuICBtYXJnaW46ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKiAwKSAwICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I7XG59XG5cblxuLy8gTGlzdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gVW5vcmRlcmVkIGFuZCBPcmRlcmVkIGxpc3RzXG51bCxcbm9sIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICB1bCxcbiAgb2wge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8gTGlzdCBvcHRpb25zXG5cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBmcm9tIGAubGlzdC11bnN0eWxlZGAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYXMgYEBtaXhpbiBsaXN0LXVuc3R5bGVkYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG59XG5cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgJjpsYXN0LWNoaWxke1xuICAgICAgcGFkZGluZy1yaWdodDowO1xuICAgIH1cbiAgfVxufVxuXG4vLyBEZXNjcmlwdGlvbiBMaXN0c1xuZGwge1xuICBtYXJnaW4tdG9wOiAwOyAvLyBSZW1vdmUgYnJvd3NlciBkZWZhdWx0XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbn1cbmR0LFxuZGQge1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG59XG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuZGQge1xuICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcbn1cblxuLy8gSG9yaXpvbnRhbCBkZXNjcmlwdGlvbiBsaXN0c1xuLy9cbi8vIERlZmF1bHRzIHRvIGJlaW5nIHN0YWNrZWQgd2l0aG91dCBhbnkgb2YgdGhlIGJlbG93IHN0eWxlcyBhcHBsaWVkLCB1bnRpbCB0aGVcbi8vIGdyaWQgYnJlYWtwb2ludCBpcyByZWFjaGVkIChkZWZhdWx0IG9mIH43NjhweCkuXG5cbi5kbC1ob3Jpem9udGFsIHtcbiAgZGQge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4OyAvLyBDbGVhciB0aGUgZmxvYXRlZCBgZHRgIGlmIGFuIGVtcHR5IGBkZGAgaXMgcHJlc2VudFxuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBkdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAoJGRsLWhvcml6b250YWwtb2Zmc2V0IC0gMjApO1xuICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIEBpbmNsdWRlIHRleHQtb3ZlcmZsb3c7XG4gICAgfVxuICAgIGRkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkZGwtaG9yaXpvbnRhbC1vZmZzZXQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTWlzY1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBBYmJyZXZpYXRpb25zIGFuZCBhY3Jvbnltc1xuYWJiclt0aXRsZV0sXG4vLyBBZGQgZGF0YS0qIGF0dHJpYnV0ZSB0byBoZWxwIG91dCBvdXIgdG9vbHRpcCBwbHVnaW4sIHBlciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzUyNTdcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0ge1xuICBjdXJzb3I6IGhlbHA7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgJGFiYnItYm9yZGVyLWNvbG9yO1xufVxuLmluaXRpYWxpc20ge1xuICBmb250LXNpemU6IDkwJTtcbiAgQGV4dGVuZCAudGV4dC11cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG5ibG9ja3F1b3RlIHtcbiAgcGFkZGluZzogMjBweCA2MHB4O1xuICBtYXJnaW46IDUwcHggMDtcbiAgZm9udC1zaXplOiAkYmxvY2txdW90ZS1mb250LXNpemU7XG4gIGJvcmRlci1sZWZ0OiAycHggc29saWQgJGJyYW5kLXByaW1hcnk7XG4gIGNvbG9yOiAjMDAwO1xuICBsaW5lLWhlaWdodDogNDBweDtcbiAgcCxcbiAgdWwsXG4gIG9sIHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBOb3RlOiBEZXByZWNhdGVkIHNtYWxsIGFuZCAuc21hbGwgYXMgb2YgdjMuMS4wXG4gIC8vIENvbnRleHQ6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NjBcbiAgZm9vdGVyLFxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDgwJTsgLy8gYmFjayB0byBkZWZhdWx0IGZvbnQtc2l6ZVxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICBjb2xvcjogJGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDE0IFxcMDBBMCc7IC8vIGVtIGRhc2gsIG5ic3BcbiAgICB9XG4gIH1cbn1cblxuLy8gT3Bwb3NpdGUgYWxpZ25tZW50IG9mIGJsb2NrcXVvdGVcbi8vXG4vLyBIZWFkcyB1cDogYGJsb2NrcXVvdGUucHVsbC1yaWdodGAgaGFzIGJlZW4gZGVwcmVjYXRlZCBhcyBvZiB2My4xLjAuXG4uYmxvY2txdW90ZS1yZXZlcnNlLFxuYmxvY2txdW90ZS5wdWxsLXJpZ2h0IHtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCAkYmxvY2txdW90ZS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAvLyBBY2NvdW50IGZvciBjaXRhdGlvblxuICBmb290ZXIsXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgICY6YmVmb3JlIHsgY29udGVudDogJyc7IH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwQTAgXFwyMDE0JzsgLy8gbmJzcCwgZW0gZGFzaFxuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRyZXNzZXNcbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG59XG4iLCIvL1xuLy8gQ29kZSAoaW5saW5lIGFuZCBibG9jaylcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSW5saW5lIGFuZCBibG9jayBjb2RlIHN0eWxlc1xuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbn1cblxuLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBwYWRkaW5nOiAycHggNHB4O1xuICBmb250LXNpemU6IDkwJTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbn1cblxuLy8gVXNlciBpbnB1dCB0eXBpY2FsbHkgZW50ZXJlZCB2aWEga2V5Ym9hcmRcbmtiZCB7XG4gIHBhZGRpbmc6IDJweCA0cHg7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc21hbGw7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTFweCAwIHJnYmEoMCwwLDAsLjI1KTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtIDEpIC8gMik7XG4gIG1hcmdpbjogMCAwICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcbiAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlIC0gMSk7IC8vIDE0cHggdG8gMTNweFxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBjb2xvcjogJHByZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByZS1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJHByZS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6ICRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG4iLCIvL1xuLy8gR3JpZCBzeXN0ZW1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5yb3cgLmZpcnN0LWNoaWxke1xuICAgY2xlYXI6IGJvdGg7XG59XG5cbi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbi5jb250YWluZXIge1xuICBAaW5jbHVkZSBjb250YWluZXItZml4ZWQ7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItc207XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItbWQ7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItbGc7XG4gIH1cbn1cblxuXG4vLyBGbHVpZCBjb250YWluZXJcbi8vXG4vLyBVdGlsaXplcyB0aGUgbWl4aW4gbWVhbnQgZm9yIGZpeGVkIHdpZHRoIGNvbnRhaW5lcnMsIGJ1dCB3aXRob3V0IGFueSBkZWZpbmVkXG4vLyB3aWR0aCBmb3IgZmx1aWQsIGZ1bGwgd2lkdGggbGF5b3V0cy5cblxuLmNvbnRhaW5lci1mbHVpZCB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lci1maXhlZDtcbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4gYW5kIGNsZWFyIHRoZSBmbG9hdHMgb2YgeW91ciBjb2x1bW5zLlxuXG4ucm93e1xuICBAaW5jbHVkZSBtYWtlLXJvdztcbn1cblxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucztcblxuXG4vLyBFeHRyYSBzbWFsbCBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIGV4dHJhIHNtYWxsIGRldmljZXMgbGlrZVxuLy8gc21hcnRwaG9uZXMuXG5cbkBpbmNsdWRlIG1ha2UtZ3JpZCh4cyk7XG5cblxuLy8gU21hbGwgZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgc21hbGwgZGV2aWNlIHJhbmdlLCBmcm9tIHBob25lc1xuLy8gdG8gdGFibGV0cy5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChzbSk7XG59XG5cblxuLy8gTWVkaXVtIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIGRlc2t0b3AgZGV2aWNlIHJhbmdlLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKG1kKTtcbn1cblxuXG4vLyBMYXJnZSBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBsYXJnZSBkZXNrdG9wIGRldmljZSByYW5nZS5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChsZyk7XG59XG4iLCIvL1xuLy8gVGFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnO1xufVxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxudGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5cbi8vIEJhc2VsaW5lIHN0eWxlc1xuXG4udGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIC8vIENlbGxzXG4gID4gdGhlYWQsXG4gID4gdGJvZHksXG4gID4gdGZvb3Qge1xuICAgID4gdHIge1xuICAgICAgPiB0aCxcbiAgICAgID4gdGQge1xuICAgICAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBCb3R0b20gYWxpZ24gZm9yIGNvbHVtbiBoZWFkaW5nc1xuICA+IHRoZWFkID4gdHIgPiB0aCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuICAvLyBSZW1vdmUgdG9wIGJvcmRlciBmcm9tIHRoZWFkIGJ5IGRlZmF1bHRcbiAgPiBjYXB0aW9uICsgdGhlYWQsXG4gID4gY29sZ3JvdXAgKyB0aGVhZCxcbiAgPiB0aGVhZDpmaXJzdC1jaGlsZCB7XG4gICAgPiB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIEFjY291bnQgZm9yIG11bHRpcGxlIHRib2R5IGluc3RhbmNlc1xuICA+IHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gTmVzdGluZ1xuICAudGFibGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xuICB9XG59XG5cblxuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuXG4udGFibGUtY29uZGVuc2VkIHtcbiAgPiB0aGVhZCxcbiAgPiB0Ym9keSxcbiAgPiB0Zm9vdCB7XG4gICAgPiB0ciB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIHBhZGRpbmc6ICR0YWJsZS1jb25kZW5zZWQtY2VsbC1wYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJvcmRlcmVkIHZlcnNpb25cbi8vXG4vLyBBZGQgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gID4gdGhlYWQsXG4gID4gdGJvZHksXG4gID4gdGZvb3Qge1xuICAgID4gdHIge1xuICAgICAgPiB0aCxcbiAgICAgID4gdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IHRoZWFkID4gdHIge1xuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gWmVicmEtc3RyaXBpbmdcbi8vXG4vLyBEZWZhdWx0IHplYnJhLXN0cmlwZSBzdHlsZXMgKGFsdGVybmF0aW5nIGdyYXkgYW5kIHRyYW5zcGFyZW50IGJhY2tncm91bmRzKVxuXG4udGFibGUtc3RyaXBlZCB7XG4gID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZShvZGQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmctYWNjZW50O1xuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICA+IHRib2R5ID4gdHI6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZy1ob3ZlcjtcbiAgfVxufVxuXG5cbi8vIFRhYmxlIGNlbGwgc2l6aW5nXG4vL1xuLy8gUmVzZXQgZGVmYXVsdCB0YWJsZSBiZWhhdmlvclxuXG50YWJsZSBjb2xbY2xhc3MqPVwiY29sLVwiXSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7IC8vIFByZXZlbnQgYm9yZGVyIGhpZGluZyBpbiBGaXJlZm94IGFuZCBJRTktMTEgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjIzKVxuICBmbG9hdDogbm9uZTtcbiAgZGlzcGxheTogdGFibGUtY29sdW1uO1xufVxudGFibGUge1xuICB0ZCxcbiAgdGgge1xuICAgICZbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljOyAvLyBQcmV2ZW50IGJvcmRlciBoaWRpbmcgaW4gRmlyZWZveCBhbmQgSUU5LTExIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTYyMylcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJsZSBiYWNrZ3JvdW5kc1xuLy9cbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4vLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuXG4vLyBHZW5lcmF0ZSB0aGUgY29udGV4dHVhbCB2YXJpYW50c1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ2FjdGl2ZScsICR0YWJsZS1iZy1hY3RpdmUpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ3N1Y2Nlc3MnLCAkc3RhdGUtc3VjY2Vzcy1iZyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnaW5mbycsICRzdGF0ZS1pbmZvLWJnKTtcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCd3YXJuaW5nJywgJHN0YXRlLXdhcm5pbmctYmcpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ2RhbmdlcicsICRzdGF0ZS1kYW5nZXItYmcpO1xuXG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gV3JhcCB5b3VyIHRhYmxlcyBpbiBgLnRhYmxlLXJlc3BvbnNpdmVgIGFuZCB3ZSdsbCBtYWtlIHRoZW0gbW9iaWxlIGZyaWVuZGx5XG4vLyBieSBlbmFibGluZyBob3Jpem9udGFsIHNjcm9sbGluZy4gT25seSBhcHBsaWVzIDw3NjhweC4gRXZlcnl0aGluZyBhYm92ZSB0aGF0XG4vLyB3aWxsIGRpc3BsYXkgbm9ybWFsbHkuXG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgbWluLWhlaWdodDogMC4wMSU7IC8vIFdvcmthcm91bmQgZm9yIElFOSBidWcgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE0ODM3KVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAqIDAuNzUpO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gICAgLy8gVGlnaHRlbiB1cCBzcGFjaW5nXG4gICAgPiAudGFibGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgLy8gRW5zdXJlIHRoZSBjb250ZW50IGRvZXNuJ3Qgd3JhcFxuICAgICAgPiB0aGVhZCxcbiAgICAgID4gdGJvZHksXG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0ciB7XG4gICAgICAgICAgPiB0aCxcbiAgICAgICAgICA+IHRkIHtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU3BlY2lhbCBvdmVycmlkZXMgZm9yIHRoZSBib3JkZXJlZCB0YWJsZXNcbiAgICA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICBib3JkZXI6IDA7XG5cbiAgICAgIC8vIE51a2UgdGhlIGFwcHJvcHJpYXRlIGJvcmRlcnMgc28gdGhhdCB0aGUgcGFyZW50IGNhbiBoYW5kbGUgdGhlbVxuICAgICAgPiB0aGVhZCxcbiAgICAgID4gdGJvZHksXG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0ciB7XG4gICAgICAgICAgPiB0aDpmaXJzdC1jaGlsZCxcbiAgICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgICAgPiB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gT25seSBudWtlIHRoZSBsYXN0IHJvdydzIGJvdHRvbS1ib3JkZXIgaW4gYHRib2R5YCBhbmQgYHRmb290YCBzaW5jZVxuICAgICAgLy8gY2hhbmNlcyBhcmUgdGhlcmUgd2lsbCBiZSBvbmx5IG9uZSBgdHJgIGluIGEgYHRoZWFkYCBhbmQgdGhhdCB3b3VsZFxuICAgICAgLy8gcmVtb3ZlIHRoZSBib3JkZXIgYWx0b2dldGhlci5cbiAgICAgID4gdGJvZHksXG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICA+IHRoLFxuICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEZvcm1zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIE5vcm1hbGl6ZSBub24tY29udHJvbHNcbi8vXG4vLyBSZXN0eWxlIGFuZCBiYXNlbGluZSBub24tY29udHJvbCBmb3JtIGVsZW1lbnRzLlxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xuICAvLyBDaHJvbWUgYW5kIEZpcmVmb3ggc2V0IGEgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4gIC8vIHNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGl0IGJlaGF2ZXMgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTkuXG4gIG1pbi13aWR0aDogMDtcbn1cblxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogJGxlZ2VuZC1jb2xvcjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxlZ2VuZC1ib3JkZXItY29sb3I7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIEZvcmNlIElFOCB0byB3cmFwIGxvbmcgY29udGVudCAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTMxNDEpXG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuXG4vLyBOb3JtYWxpemUgZm9ybSBjb250cm9sc1xuLy9cbi8vIFdoaWxlIG1vc3Qgb2Ygb3VyIGZvcm0gc3R5bGVzIHJlcXVpcmUgZXh0cmEgY2xhc3Nlcywgc29tZSBiYXNpYyBub3JtYWxpemF0aW9uXG4vLyBpcyByZXF1aXJlZCB0byBlbnN1cmUgb3B0aW11bSBkaXNwbGF5IHdpdGggb3Igd2l0aG91dCB0aG9zZSBjbGFzc2VzIHRvIGJldHRlclxuLy8gYWRkcmVzcyBicm93c2VyIGluY29uc2lzdGVuY2llcy5cblxuLy8gT3ZlcnJpZGUgY29udGVudC1ib3ggaW4gTm9ybWFsaXplICgqIGlzbid0IHNwZWNpZmljIGVub3VnaClcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xufVxuXG4vLyBQb3NpdGlvbiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgYmV0dGVyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBtYXJnaW46IDRweCAwIDA7XG4gIG1hcmdpbi10b3A6IDFweCBcXDk7IC8vIElFOC05XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbmlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIE1ha2UgcmFuZ2UgaW5wdXRzIGJlaGF2ZSBsaWtlIHRleHR1YWwgZm9ybSBjb250cm9sc1xuaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBNYWtlIG11bHRpcGxlIHNlbGVjdCBlbGVtZW50cyBoZWlnaHQgbm90IGZpeGVkXG5zZWxlY3RbbXVsdGlwbGVdLFxuc2VsZWN0W3NpemVdIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyBGb2N1cyBmb3IgZmlsZSwgcmFkaW8sIGFuZCBjaGVja2JveFxuaW5wdXRbdHlwZT1cImZpbGVcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMge1xuICBAaW5jbHVkZSB0YWItZm9jdXM7XG59XG5cbi8vIEFkanVzdCBvdXRwdXQgZWxlbWVudFxub3V0cHV0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xufVxuXG5cbi8vIENvbW1vbiBmb3JtIGNvbnRyb2xzXG4vL1xuLy8gU2hhcmVkIHNpemUgYW5kIHR5cGUgcmVzZXRzIGZvciBmb3JtIGNvbnRyb2xzLiBBcHBseSBgLmZvcm0tY29udHJvbGAgdG8gYW55XG4vLyBvZiB0aGUgZm9sbG93aW5nIGZvcm0gY29udHJvbHM6XG4vL1xuLy8gc2VsZWN0XG4vLyB0ZXh0YXJlYVxuLy8gaW5wdXRbdHlwZT1cInRleHRcIl1cbi8vIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXVxuLy8gaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl1cbi8vIGlucHV0W3R5cGU9XCJkYXRlXCJdXG4vLyBpbnB1dFt0eXBlPVwibW9udGhcIl1cbi8vIGlucHV0W3R5cGU9XCJ0aW1lXCJdXG4vLyBpbnB1dFt0eXBlPVwid2Vla1wiXVxuLy8gaW5wdXRbdHlwZT1cIm51bWJlclwiXVxuLy8gaW5wdXRbdHlwZT1cImVtYWlsXCJdXG4vLyBpbnB1dFt0eXBlPVwidXJsXCJdXG4vLyBpbnB1dFt0eXBlPVwic2VhcmNoXCJdXG4vLyBpbnB1dFt0eXBlPVwidGVsXCJdXG4vLyBpbnB1dFt0eXBlPVwiY29sb3JcIl1cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7IC8vIE1ha2UgaW5wdXRzIGF0IGxlYXN0IHRoZSBoZWlnaHQgb2YgdGhlaXIgYnV0dG9uIGNvdW50ZXJwYXJ0IChiYXNlIGxpbmUtaGVpZ2h0ICsgcGFkZGluZyArIGJvcmRlcilcbiAgcGFkZGluZzogJHBhZGRpbmctc21hbGwtdmVydGljYWwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XG4gIGJvcmRlcjogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzOyAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiA8c2VsZWN0PnMgaW4gQ1NTLlxuLyogICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpKTsgKi9cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgLjE1cywgYm94LXNoYWRvdyBlYXNlLWluLW91dCAuMTVzKTtcblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cztcblxuICAvLyBQbGFjZWhvbGRlclxuICBAaW5jbHVkZSBwbGFjZWhvbGRlcjtcblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICZbZGlzYWJsZWRdLFxuICAmW3JlYWRvbmx5XSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZy1kaXNhYmxlZDtcbiAgICBvcGFjaXR5OiAxOyAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1XG4gIH1cblxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0ZXh0YXJlYSYgdG8gdGV4dGFyZWEuZm9ybS1jb250cm9sXG59XG5cbi8vIFJlc2V0IGhlaWdodCBmb3IgYHRleHRhcmVhYHNcbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vLyBTZWFyY2ggaW5wdXRzIGluIGlPU1xuLy9cbi8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbi8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuXG4vLyBTcGVjaWFsIHN0eWxlcyBmb3IgaU9TIHRlbXBvcmFsIGlucHV0c1xuLy9cbi8vIEluIE1vYmlsZSBTYWZhcmksIHNldHRpbmcgYGRpc3BsYXk6IGJsb2NrYCBvbiB0ZW1wb3JhbCBpbnB1dHMgY2F1c2VzIHRoZVxuLy8gdGV4dCB3aXRoaW4gdGhlIGlucHV0IHRvIGJlY29tZSB2ZXJ0aWNhbGx5IG1pc2FsaWduZWQuIEFzIGEgd29ya2Fyb3VuZCwgd2Vcbi8vIHNldCBhIHBpeGVsIGxpbmUtaGVpZ2h0IHRoYXQgbWF0Y2hlcyB0aGUgZ2l2ZW4gaGVpZ2h0IG9mIHRoZSBpbnB1dCwgYnV0IG9ubHlcbi8vIGZvciBTYWZhcmkuIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5ODQ4XG4vL1xuLy8gTm90ZSB0aGF0IGFzIG9mIDguMywgaU9TIGRvZXNuJ3Qgc3VwcG9ydCBgZGF0ZXRpbWVgIG9yIGB3ZWVrYC5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMCkge1xuICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4gIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdIHtcbiAgICAmLmZvcm0tY29udHJvbCB7XG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlO1xuICAgIH1cblxuICAgICYuaW5wdXQtc20sXG4gICAgLmlucHV0LWdyb3VwLXNtICYge1xuICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gICAgfVxuXG4gICAgJi5pbnB1dC1sZyxcbiAgICAuaW5wdXQtZ3JvdXAtbGcgJiB7XG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGb3JtIGdyb3Vwc1xuLy9cbi8vIERlc2lnbmVkIHRvIGhlbHAgd2l0aCB0aGUgb3JnYW5pemF0aW9uIGFuZCBzcGFjaW5nIG9mIHZlcnRpY2FsIGZvcm1zLiBGb3Jcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4ucmFkaW8sXG4uY2hlY2tib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gIGxhYmVsIHtcbiAgICBtaW4taGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7IC8vIEVuc3VyZSB0aGUgaW5wdXQgZG9lc24ndCBqdW1wIHdoZW4gdGhlcmUgaXMgbm8gdGV4dFxuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4ucmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuLnJhZGlvLWlubGluZSBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4uY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuLmNoZWNrYm94LWlubGluZSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgbWFyZ2luLXRvcDogNHB4IFxcOTtcbn1cblxuLnJhZGlvICsgLnJhZGlvLFxuLmNoZWNrYm94ICsgLmNoZWNrYm94IHtcbiAgbWFyZ2luLXRvcDogLTVweDsgLy8gTW92ZSB1cCBzaWJsaW5nIHJhZGlvcyBvciBjaGVja2JveGVzIGZvciB0aWdodGVyIHNwYWNpbmdcbn1cblxuLy8gUmFkaW9zIGFuZCBjaGVja2JveGVzIG9uIHNhbWUgbGluZVxuLnJhZGlvLWlubGluZSxcbi5jaGVja2JveC1pbmxpbmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ucmFkaW8taW5saW5lICsgLnJhZGlvLWlubGluZSxcbi5jaGVja2JveC1pbmxpbmUgKyAuY2hlY2tib3gtaW5saW5lIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IC8vIHNwYWNlIG91dCBjb25zZWN1dGl2ZSBpbmxpbmUgY29udHJvbHNcbn1cblxuLy8gQXBwbHkgc2FtZSBkaXNhYmxlZCBjdXJzb3IgdHdlYWsgYXMgZm9yIGlucHV0c1xuLy8gU29tZSBzcGVjaWFsIGNhcmUgaXMgbmVlZGVkIGJlY2F1c2UgPGxhYmVsPnMgZG9uJ3QgaW5oZXJpdCB0aGVpciBwYXJlbnQncyBgY3Vyc29yYC5cbi8vXG4vLyBOb3RlOiBOZWl0aGVyIHJhZGlvcyBub3IgY2hlY2tib3hlcyBjYW4gYmUgcmVhZG9ubHkuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxufVxuLy8gVGhlc2UgY2xhc3NlcyBhcmUgdXNlZCBkaXJlY3RseSBvbiA8bGFiZWw+c1xuLnJhZGlvLWlubGluZSxcbi5jaGVja2JveC1pbmxpbmUge1xuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG59XG4vLyBUaGVzZSBjbGFzc2VzIGFyZSB1c2VkIG9uIGVsZW1lbnRzIHdpdGggPGxhYmVsPiBkZXNjZW5kYW50c1xuLnJhZGlvLFxuLmNoZWNrYm94IHtcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGxhYmVsIHtcbiAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTdGF0aWMgZm9ybSBjb250cm9sIHRleHRcbi8vXG4vLyBBcHBseSBjbGFzcyB0byBhIGBwYCBlbGVtZW50IHRvIG1ha2UgYW55IHN0cmluZyBvZiB0ZXh0IGFsaWduIHdpdGggbGFiZWxzIGluXG4vLyBhIGhvcml6b250YWwgZm9ybSBsYXlvdXQuXG5cbi5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgLy8gU2l6ZSBpdCBhcHByb3ByaWF0ZWx5IG5leHQgdG8gcmVhbCBmb3JtIGNvbnRyb2xzXG4gIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xuICBwYWRkaW5nLWJvdHRvbTogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTtcbiAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIGZyb20gYHBgXG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAkZm9udC1zaXplLWJhc2UpO1xuXG4gICYuaW5wdXQtbGcsXG4gICYuaW5wdXQtc20ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFRoZSBgLmZvcm0tZ3JvdXAtKiBmb3JtLWNvbnRyb2xgIHZhcmlhdGlvbnMgYXJlIHNhZGx5IGR1cGxpY2F0ZWQgdG8gYXZvaWQgdGhlXG4vLyBpc3N1ZSBkb2N1bWVudGVkIGluIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTUwNzQuXG5cbkBpbmNsdWRlIGlucHV0LXNpemUoJy5pbnB1dC1zbScsICRpbnB1dC1oZWlnaHQtc21hbGwsICRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkbGluZS1oZWlnaHQtc21hbGwsICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsKTtcbi5mb3JtLWdyb3VwLXNtIHtcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtc21hbGw7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw7XG4gIH1cbiAgc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICB9XG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbiAgc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAkZm9udC1zaXplLXNtYWxsKTtcbiAgICBwYWRkaW5nOiAoJHBhZGRpbmctc21hbGwtdmVydGljYWwgKyAxKSAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtYWxsO1xuICB9XG59XG5cbkBpbmNsdWRlIGlucHV0LXNpemUoJy5pbnB1dC1sZycsICRpbnB1dC1oZWlnaHQtbGFyZ2UsICRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWxhcmdlLCAkbGluZS1oZWlnaHQtbGFyZ2UsICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlKTtcbi5mb3JtLWdyb3VwLWxnIHtcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtbGFyZ2U7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIH1cbiAgc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICB9XG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbiAgc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICAgIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAkZm9udC1zaXplLWxhcmdlKTtcbiAgICBwYWRkaW5nOiAoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgKyAxKSAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWxhcmdlO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIGZlZWRiYWNrIHN0YXRlc1xuLy9cbi8vIEFwcGx5IGNvbnRleHR1YWwgYW5kIHNlbWFudGljIHN0YXRlcyB0byBpbmRpdmlkdWFsIGZvcm0gY29udHJvbHMuXG5cbi5oYXMtZmVlZGJhY2sge1xuICAvLyBFbmFibGUgYWJzb2x1dGUgcG9zaXRpb25pbmdcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC8vIEVuc3VyZSBpY29ucyBkb24ndCBvdmVybGFwIHRleHRcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgcGFkZGluZy1yaWdodDogKCRpbnB1dC1oZWlnaHQtYmFzZSAqIDEuMjUpO1xuICB9XG59XG4vLyBGZWVkYmFjayBpY29uIChyZXF1aXJlcyAuZ2x5cGhpY29uIGNsYXNzZXMpXG4uZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAyOyAvLyBFbnN1cmUgaWNvbiBpcyBhYm92ZSBpbnB1dCBncm91cHNcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LWJhc2U7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmlucHV0LWxnICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcbi5pbnB1dC1ncm91cC1sZyArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uZm9ybS1ncm91cC1sZyAuZm9ybS1jb250cm9sICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xufVxuLmlucHV0LXNtICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcbi5pbnB1dC1ncm91cC1zbSArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uZm9ybS1ncm91cC1zbSAuZm9ybS1jb250cm9sICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xufVxuXG4vLyBGZWVkYmFjayBzdGF0ZXNcbi5oYXMtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRzdGF0ZS1zdWNjZXNzLXRleHQsICRzdGF0ZS1zdWNjZXNzLXRleHQsICRzdGF0ZS1zdWNjZXNzLWJnKTtcbn1cbi5oYXMtd2FybmluZyB7XG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRzdGF0ZS13YXJuaW5nLXRleHQsICRzdGF0ZS13YXJuaW5nLXRleHQsICRzdGF0ZS13YXJuaW5nLWJnKTtcbn1cbi5oYXMtZXJyb3Ige1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtZGFuZ2VyLXRleHQsICRzdGF0ZS1kYW5nZXItdGV4dCwgJHN0YXRlLWRhbmdlci1iZyk7XG59XG5cbi8vIFJlcG9zaXRpb24gZmVlZGJhY2sgaWNvbiBpZiBpbnB1dCBoYXMgdmlzaWJsZSBsYWJlbCBhYm92ZVxuLmhhcy1mZWVkYmFjayBsYWJlbCB7XG5cbiAgJiB+IC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgICB0b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyA1KTsgLy8gSGVpZ2h0IG9mIHRoZSBgbGFiZWxgIGFuZCBpdHMgbWFyZ2luXG4gIH1cbiAgJi5zci1vbmx5IH4gLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgIHRvcDogMDtcbiAgfVxufVxuXG5cbi8vIEhlbHAgdGV4dFxuLy9cbi8vIEFwcGx5IHRvIGFueSBlbGVtZW50IHlvdSB3aXNoIHRvIGNyZWF0ZSBsaWdodCB0ZXh0IGZvciBwbGFjZW1lbnQgaW1tZWRpYXRlbHlcbi8vIGJlbG93IGEgZm9ybSBjb250cm9sLiBVc2UgZm9yIGdlbmVyYWwgaGVscCwgZm9ybWF0dGluZywgb3IgaW5zdHJ1Y3Rpb25hbCB0ZXh0LlxuXG4uaGVscC1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrOyAvLyBhY2NvdW50IGZvciBhbnkgZWxlbWVudCB1c2luZyBoZWxwLWJsb2NrXG4gIG1hcmdpbi10b3A6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgY29sb3I6IGxpZ2h0ZW4oJHRleHQtY29sb3IsIDI1JSk7IC8vIGxpZ2h0ZW4gdGhlIHRleHQgc29tZSBmb3IgY29udHJhc3Rcbn1cblxuXG4vLyBJbmxpbmUgZm9ybXNcbi8vXG4vLyBNYWtlIGZvcm1zIGFwcGVhciBpbmxpbmUoLWJsb2NrKSBieSBhZGRpbmcgdGhlIGAuZm9ybS1pbmxpbmVgIGNsYXNzLiBJbmxpbmVcbi8vIGZvcm1zIGJlZ2luIHN0YWNrZWQgb24gZXh0cmEgc21hbGwgKG1vYmlsZSkgZGV2aWNlcyBhbmQgdGhlbiBnbyBpbmxpbmUgd2hlblxuLy8gdmlld3BvcnRzIHJlYWNoIDw3NjhweC5cbi8vXG4vLyBSZXF1aXJlcyB3cmFwcGluZyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoIGAuZm9ybS1ncm91cGAgZm9yIHByb3BlciBkaXNwbGF5IG9mXG4vLyBkZWZhdWx0IEhUTUwgZm9ybSBjb250cm9scyBhbmQgb3VyIGN1c3RvbSBmb3JtIGNvbnRyb2xzIChlLmcuLCBpbnB1dCBncm91cHMpLlxuLy9cbi8vIEhlYWRzIHVwISBUaGlzIGlzIG1peGluLWVkIGludG8gYC5uYXZiYXItZm9ybWAgaW4gbmF2YmFycy5sZXNzLlxuXG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgZnJvbSBgLmZvcm0taW5saW5lYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XG5AbWl4aW4gZm9ybS1pbmxpbmUge1xuXG4gIC8vIEtpY2sgaW4gdGhlIGlubGluZVxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAvLyBJbmxpbmUtYmxvY2sgYWxsIHRoZSB0aGluZ3MgZm9yIFwiaW5saW5lXCJcbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBJbiBuYXZiYXItZm9ybSwgYWxsb3cgZm9sa3MgdG8gKm5vdCogdXNlIGAuZm9ybS1ncm91cGBcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBhdXRvOyAvLyBQcmV2ZW50IGxhYmVscyBmcm9tIHN0YWNraW5nIGFib3ZlIGlucHV0cyBpbiBgLmZvcm0tZ3JvdXBgXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIE1ha2Ugc3RhdGljIGNvbnRyb2xzIGJlaGF2ZSBsaWtlIHJlZ3VsYXIgb25lc1xuICAgIC5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgZGlzcGxheTogaW5saW5lLXRhYmxlO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgLmlucHV0LWdyb3VwLWFkZG9uLFxuICAgICAgLmlucHV0LWdyb3VwLWJ0bixcbiAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJbnB1dCBncm91cHMgbmVlZCB0aGF0IDEwMCUgd2lkdGggdGhvdWdoXG4gICAgLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuY29udHJvbC1sYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gb24gcmFkaW9zL2NoZWNrYm94ZXMgdGhhdCB3ZXJlIHVzZWQgZm9yIHN0YWNraW5nLCBhbmRcbiAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cbiAgICAucmFkaW8sXG4gICAgLmNoZWNrYm94IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgbGFiZWwge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICAgIC5yYWRpbyBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAvLyBSZS1vdmVycmlkZSB0aGUgZmVlZGJhY2sgaWNvbi5cbiAgICAuaGFzLWZlZWRiYWNrIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgICAgdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGFzIGBAbWl4aW4gZm9ybS1pbmxpbmVgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcbi5mb3JtLWlubGluZSB7XG4gIEBpbmNsdWRlIGZvcm0taW5saW5lO1xufVxuXG5cblxuLy8gSG9yaXpvbnRhbCBmb3Jtc1xuLy9cbi8vIEhvcml6b250YWwgZm9ybXMgYXJlIGJ1aWx0IG9uIGdyaWQgY2xhc3NlcyBhbmQgYWxsb3cgeW91IHRvIGNyZWF0ZSBmb3JtcyB3aXRoXG4vLyBsYWJlbHMgb24gdGhlIGxlZnQgYW5kIGlucHV0cyBvbiB0aGUgcmlnaHQuXG5cbi5mb3JtLWhvcml6b250YWwge1xuXG4gIC8vIENvbnNpc3RlbnQgdmVydGljYWwgYWxpZ25tZW50IG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlc1xuICAvL1xuICAvLyBMYWJlbHMgYWxzbyBnZXQgc29tZSByZXNldCBzdHlsZXMsIGJ1dCB0aGF0IGlzIHNjb3BlZCB0byBhIG1lZGlhIHF1ZXJ5IGJlbG93LlxuICAucmFkaW8sXG4gIC5jaGVja2JveCxcbiAgLnJhZGlvLWlubGluZSxcbiAgLmNoZWNrYm94LWlubGluZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpOyAvLyBEZWZhdWx0IHBhZGRpbmcgcGx1cyBhIGJvcmRlclxuICB9XG4gIC8vIEFjY291bnQgZm9yIHBhZGRpbmcgd2UncmUgYWRkaW5nIHRvIGVuc3VyZSB0aGUgYWxpZ25tZW50IGFuZCBvZiBoZWxwIHRleHRcbiAgLy8gYW5kIG90aGVyIGNvbnRlbnQgYmVsb3cgaXRlbXNcbiAgLnJhZGlvLFxuICAuY2hlY2tib3gge1xuICAgIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpKTtcbiAgfVxuXG4gIC8vIE1ha2UgZm9ybSBncm91cHMgYmVoYXZlIGxpa2Ugcm93c1xuICAuZm9ybS1ncm91cCB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3c7XG4gIH1cblxuICAvLyBSZXNldCBzcGFjaW5nIGFuZCByaWdodCBhbGlnbiBsYWJlbHMsIGJ1dCBzY29wZSB0byBtZWRpYSBxdWVyaWVzIHNvIHRoYXRcbiAgLy8gbGFiZWxzIG9uIG5hcnJvdyB2aWV3cG9ydHMgc3RhY2sgdGhlIHNhbWUgYXMgYSBkZWZhdWx0IGZvcm0gZXhhbXBsZS5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7IC8vIERlZmF1bHQgcGFkZGluZyBwbHVzIGEgYm9yZGVyXG4gICAgfVxuICB9XG5cbiAgLy8gVmFsaWRhdGlvbiBzdGF0ZXNcbiAgLy9cbiAgLy8gUmVwb3NpdGlvbiB0aGUgaWNvbiBiZWNhdXNlIGl0J3Mgbm93IHdpdGhpbiBhIGdyaWQgY29sdW1uIGFuZCBjb2x1bW5zIGhhdmVcbiAgLy8gYHBvc2l0aW9uOiByZWxhdGl2ZTtgIG9uIHRoZW0uIEFsc28gYWNjb3VudHMgZm9yIHRoZSBncmlkIGd1dHRlciBwYWRkaW5nLlxuICAuaGFzLWZlZWRiYWNrIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgIHJpZ2h0OiBmbG9vcigoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xuICB9XG5cbiAgLy8gRm9ybSBncm91cCBzaXplc1xuICAvL1xuICAvLyBRdWljayB1dGlsaXR5IGNsYXNzIGZvciBhcHBseWluZyBgLmlucHV0LWxnYCBhbmQgYC5pbnB1dC1zbWAgc3R5bGVzIHRvIHRoZVxuICAvLyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoaW4gYSBgLmZvcm0tZ3JvdXBgLlxuICAuZm9ybS1ncm91cC1sZyB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICAuY29udHJvbC1sYWJlbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAoKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICogJGxpbmUtaGVpZ2h0LWxhcmdlKSArIDEpO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5mb3JtLWdyb3VwLXNtIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCArIDEpO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gRm9yIGlucHV0LmJ0blxuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy1iYXNlLXZlcnRpY2FsLCAkcGFkZGluZy1iYXNlLWhvcml6b250YWwsICRmb250LXNpemUtYmFzZSAtIDEsICRsaW5lLWhlaWdodC1iYXNlLCAkYnRuLWJvcmRlci1yYWRpdXMtYmFzZSk7XG4gIEBpbmNsdWRlIHVzZXItc2VsZWN0KG5vbmUpO1xuICAmLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBAaW5jbHVkZSB0YWItZm9jdXM7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgb3V0bGluZTogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsMCkpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgQGluY2x1ZGUgb3BhY2l0eSguNjUpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYgdG8gYS5idG5cbn1cblxuYS5idG4ge1xuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IC8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG4gIH1cbn1cblxuXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1kZWZhdWx0IHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1kZWZhdWx0LWNvbG9yLCAkYnRuLWRlZmF1bHQtYmcsICRidG4tZGVmYXVsdC1ib3JkZXIpO1xufVxuLmJ0bi1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1wcmltYXJ5LWNvbG9yLCAkYnRuLXByaW1hcnktYmcsICRidG4tcHJpbWFyeS1ib3JkZXIpO1xufVxuLy8gU3VjY2VzcyBhcHBlYXJzIGFzIGdyZWVuXG4uYnRuLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXN1Y2Nlc3MtY29sb3IsICRidG4tc3VjY2Vzcy1iZywgJGJ0bi1zdWNjZXNzLWJvcmRlcik7XG59XG4vLyBJbmZvIGFwcGVhcnMgYXMgYmx1ZS1ncmVlblxuLmJ0bi1pbmZvIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1pbmZvLWNvbG9yLCAkYnRuLWluZm8tYmcsICRidG4taW5mby1ib3JkZXIpO1xufVxuLy8gV2FybmluZyBhcHBlYXJzIGFzIG9yYW5nZVxuLmJ0bi13YXJuaW5nIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi13YXJuaW5nLWNvbG9yLCAkYnRuLXdhcm5pbmctYmcsICRidG4td2FybmluZy1ib3JkZXIpO1xufVxuLy8gRGFuZ2VyIGFuZCBlcnJvciBhcHBlYXIgYXMgcmVkXG4uYnRuLWRhbmdlciB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tZGFuZ2VyLWNvbG9yLCAkYnRuLWRhbmdlci1iZywgJGJ0bi1kYW5nZXItYm9yZGVyKTtcbn1cblxuXG4vLyBMaW5rIGJ1dHRvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgYm9yZGVyLXJhZGl1czogMDtcblxuICAmLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkYnRuLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQnV0dG9uIFNpemVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWxnIHtcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBldmVuLW51bWJlcmVkIGhlaWdodCBvZiBidXR0b24gbmV4dCB0byBsYXJnZSBpbnB1dFxuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1sYXJnZSwgJGxpbmUtaGVpZ2h0LWxhcmdlLCAkYnRuLWJvcmRlci1yYWRpdXMtYmFzZSk7XG59XG4uYnRuLXNtIHtcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBwcm9wZXIgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIHNtYWxsIGlucHV0XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkbGluZS1oZWlnaHQtc21hbGwsICRidG4tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbn1cbi5idG4teHMge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy14cy12ZXJ0aWNhbCwgJHBhZGRpbmcteHMtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkYnRuLWJvcmRlci1yYWRpdXMtYmFzZSk7XG59XG5cblxuLy8gQmxvY2sgYnV0dG9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBWZXJ0aWNhbGx5IHNwYWNlIG91dCBtdWx0aXBsZSBibG9jayBidXR0b25zXG4uYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLy8gU3BlY2lmaWNpdHkgb3ZlcnJpZGVzXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gICYuYnRuLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy9cbi8vIENvbXBvbmVudCBhbmltYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBIZWFkcyB1cCFcbi8vXG4vLyBXZSBkb24ndCB1c2UgdGhlIGAub3BhY2l0eSgpYCBtaXhpbiBoZXJlIHNpbmNlIGl0IGNhdXNlcyBhIGJ1ZyB3aXRoIHRleHRcbi8vIGZpZWxkcyBpbiBJRTctOC4gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zNTUyLlxuXG4uZmFkZSB7XG4gIG9wYWNpdHk6IDA7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAuMTVzIGxpbmVhcik7XG4gICYuaW4ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmNvbGxhcHNlIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICAmLmluICAgICAgeyBkaXNwbGF5OiBibG9jazsgfVxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgdHImLmluIHRvIHRyLmNvbGxhcHNlLmluXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0Ym9keSYuaW4gdG8gdGJvZHkuY29sbGFwc2UuaW5cbn1cblxudHIuY29sbGFwc2UuaW4gICAgeyBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cblxudGJvZHkuY29sbGFwc2UuaW4geyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7IH1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eShoZWlnaHQsIHZpc2liaWxpdHkpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKC4zNXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbihlYXNlKTtcbn1cbiIsIi8vXG4vLyBEcm9wZG93biBtZW51c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBEcm9wZG93biBhcnJvdy9jYXJldFxuLmNhcmV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItdG9wOiAgICRjYXJldC13aWR0aC1iYXNlIGRhc2hlZDtcbiAgYm9yZGVyLXRvcDogICAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCBcXDk7IC8vIElFOFxuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4vLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoZGl2KVxuLmRyb3B1cCxcbi5kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8gUHJldmVudCB0aGUgZm9jdXMgb24gdGhlIGRyb3Bkb3duIHRvZ2dsZSB3aGVuIGNsb3NpbmcgZHJvcGRvd25zXG4uZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnUgKHVsKVxuLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1kcm9wZG93bjtcbiAgZGlzcGxheTogbm9uZTsgLy8gbm9uZSBieSBkZWZhdWx0LCBidXQgYmxvY2sgb24gXCJvcGVuXCIgb2YgdGhlIG1lbnVcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1pbi13aWR0aDogMjA1cHg7XG4gIHBhZGRpbmc6IDVweCAwO1xuICBtYXJnaW46IDJweCAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOyAvLyBJRTggZmFsbGJhY2tcbiAgYm9yZGVyOiAxcHggc29saWQgJGRyb3Bkb3duLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDZweCAxMnB4IHJnYmEoMCwwLDAsLjE3NSkpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuXG4gIC8vIEFsaWducyB0aGUgZHJvcGRvd24gbWVudSB0byByaWdodFxuICAvL1xuICAvLyBEZXByZWNhdGVkIGFzIG9mIDMuMS4wIGluIGZhdm9yIG9mIGAuZHJvcGRvd24tbWVudS1bZGlyXWBcbiAgJi5wdWxsLXJpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIHRoZSBkcm9wZG93blxuICAuZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgbmF2LWRpdmlkZXIoJGRyb3Bkb3duLWRpdmlkZXItYmcpO1xuICB9XG5cbiAgLy8gTGlua3Mgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4gID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAzcHggMjBweDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIH1cbn1cblxuLy8gSG92ZXIvRm9jdXMgc3RhdGVcbi5kcm9wZG93bi1tZW51ID4gbGkgPiBhIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcbiAgfVxufVxuXG4vLyBBY3RpdmUgc3RhdGVcbi5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+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+IGEge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvciAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZSwgYW5kIGl0cyA6aG92ZXIgdG8gb3ZlcnJpZGUgbm9ybWFsIDpob3ZlclxuICAgICYuYWN0aXZlID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIHB1bGxpbmcgdGhpcyBpbiBtYWlubHkgZm9yIGxlc3Mgc2hvcnRoYW5kXG4gICYubmF2LWp1c3RpZmllZCB7XG4gICAgQGV4dGVuZCAubmF2LWp1c3RpZmllZDtcbiAgICBAZXh0ZW5kIC5uYXYtdGFicy1qdXN0aWZpZWQ7XG4gIH1cbn1cblxuXG4vLyBQaWxsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm5hdi1waWxscyB7XG4gID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgLy8gTGlua3MgcmVuZGVyZWQgYXMgcGlsbHNcbiAgICA+IGEge1xuICAgICAgYm9yZGVyLXJhZGl1czogJG5hdi1waWxscy1ib3JkZXItcmFkaXVzO1xuICAgIH1cbiAgICArIGxpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFN0YWNrZWQgcGlsbHNcbi5uYXYtc3RhY2tlZCB7XG4gID4gbGkge1xuICAgIGZsb2F0OiBub25lO1xuICAgICsgbGkge1xuICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IC8vIG5vIG5lZWQgZm9yIHRoaXMgZ2FwIGJldHdlZW4gbmF2IGl0ZW1zXG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2IHZhcmlhdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEp1c3RpZmllZCBuYXYgbGlua3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm5hdi1qdXN0aWZpZWQge1xuICB3aWR0aDogMTAwJTtcblxuICA+IGxpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICA+IGEge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIH1cbiAgfVxuXG4gID4gLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgID4gbGkge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgID4gYSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE1vdmUgYm9yZGVycyB0byBhbmNob3JzIGluc3RlYWQgb2YgYm90dG9tIG9mIGxpc3Rcbi8vXG4vLyBNaXhpbiBmb3IgYWRkaW5nIG9uIHRvcCB0aGUgc2hhcmVkIGAubmF2LWp1c3RpZmllZGAgc3R5bGVzIGZvciBvdXIgdGFic1xuLm5hdi10YWJzLWp1c3RpZmllZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgPiBsaSA+IGEge1xuICAgIC8vIE92ZXJyaWRlIG1hcmdpbiBmcm9tIC5uYXYtdGFic1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICB9XG5cbiAgPiAuYWN0aXZlID4gYSxcbiAgPiAuYWN0aXZlID4gYTpob3ZlcixcbiAgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlIDAgMDtcbiAgICB9XG4gICAgPiAuYWN0aXZlID4gYSxcbiAgICA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuICAgID4gLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJG5hdi10YWJzLWp1c3RpZmllZC1hY3RpdmUtbGluay1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuXG4vLyBEcm9wZG93bnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gU3BlY2lmaWMgZHJvcGRvd25zXG4ubmF2LXRhYnMgLmRyb3Bkb3duLW1lbnUge1xuICAvLyBtYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG59XG4iLCIvL1xuLy8gTmF2YmFyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBXcmFwcGVyIGFuZCBiYXNlIGNsYXNzXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAkbmF2YmFyLWhlaWdodDsgLy8gRW5zdXJlIGEgbmF2YmFyIGFsd2F5cyBzaG93cyAoZS5nLiwgd2l0aG91dCBhIC5uYXZiYXItYnJhbmQgaW4gY29sbGFwc2VkIG1vZGUpXG4gIG1hcmdpbi1ib3R0b206ICRuYXZiYXItbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgLy8gUHJldmVudCBmbG9hdHMgZnJvbSBicmVha2luZyB0aGUgbmF2YmFyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgYm9yZGVyLXJhZGl1czogJG5hdmJhci1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIGhlYWRpbmdcbi8vXG4vLyBHcm91cHMgYC5uYXZiYXItYnJhbmRgIGFuZCBgLm5hdmJhci10b2dnbGVgIGludG8gYSBzaW5nbGUgY29tcG9uZW50IGZvciBlYXN5XG4vLyBzdHlsaW5nIG9mIHJlc3BvbnNpdmUgYXNwZWN0cy5cblxuLm5hdmJhci1oZWFkZXIge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cblxuLy8gTmF2YmFyIGNvbGxhcHNlIChib2R5KVxuLy9cbi8vIEdyb3VwIHlvdXIgbmF2YmFyIGNvbnRlbnQgaW50byB0aGlzIGZvciBlYXN5IGNvbGxhcHNpbmcgYW5kIGV4cGFuZGluZyBhY3Jvc3Ncbi8vIHZhcmlvdXMgZGV2aWNlIHNpemVzLiBCeSBkZWZhdWx0LCB0aGlzIGNvbnRlbnQgaXMgY29sbGFwc2VkIHdoZW4gPDc2OHB4LCBidXRcbi8vIHdpbGwgZXhwYW5kIHBhc3QgdGhhdCBmb3IgYSBob3Jpem9udGFsIGRpc3BsYXkuXG4vL1xuLy8gVG8gc3RhcnQgKG9uIG1vYmlsZSBkZXZpY2VzKSB0aGUgbmF2YmFyIGxpbmtzLCBmb3JtcywgYW5kIGJ1dHRvbnMgYXJlIHN0YWNrZWRcbi8vIHZlcnRpY2FsbHkgYW5kIGluY2x1ZGUgYSBgbWF4LWhlaWdodGAgdG8gb3ZlcmZsb3cgaW4gY2FzZSB5b3UgaGF2ZSB0b28gbXVjaFxuLy8gY29udGVudCBmb3IgdGhlIHVzZXIncyB2aWV3cG9ydC5cblxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIG92ZXJmbG93LXg6IHZpc2libGU7XG4gIHBhZGRpbmctcmlnaHQ6ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBwYWRkaW5nLWxlZnQ6ICAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjEpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICYuaW4ge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgICYuY29sbGFwc2Uge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgc2V0dGluZ1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLmluIHtcbiAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLy8gVW5kbyB0aGUgY29sbGFwc2Ugc2lkZSBwYWRkaW5nIGZvciBuYXZiYXJzIHdpdGggY29udGFpbmVycyB0byBlbnN1cmVcbiAgICAvLyBhbGlnbm1lbnQgb2YgcmlnaHQtYWxpZ25lZCBjb250ZW50cy5cbiAgICAubmF2YmFyLWZpeGVkLXRvcCAmLFxuICAgIC5uYXZiYXItc3RhdGljLXRvcCAmLFxuICAgIC5uYXZiYXItZml4ZWQtYm90dG9tICYge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gIH1cbn1cblxuLm5hdmJhci1maXhlZC10b3AsXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XG4gIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIG1heC1oZWlnaHQ6ICRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDtcblxuICAgIEBtZWRpYSAobWF4LWRldmljZS13aWR0aDogJHNjcmVlbi14cy1taW4pIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgICAgbWF4LWhlaWdodDogMjAwcHg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQm90aCBuYXZiYXIgaGVhZGVyIGFuZCBjb2xsYXBzZVxuLy9cbi8vIFdoZW4gYSBjb250YWluZXIgaXMgcHJlc2VudCwgY2hhbmdlIHRoZSBiZWhhdmlvciBvZiB0aGUgaGVhZGVyIGFuZCBjb2xsYXBzZS5cblxuLmNvbnRhaW5lcixcbi5jb250YWluZXItZmx1aWQge1xuICA+IC5uYXZiYXItaGVhZGVyLFxuICA+IC5uYXZiYXItY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIG1hcmdpbi1sZWZ0OiAgLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAgMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gTmF2YmFyIGFsaWdubWVudCBvcHRpb25zXG4vL1xuLy8gRGlzcGxheSB0aGUgbmF2YmFyIGFjcm9zcyB0aGUgZW50aXJldHkgb2YgdGhlIHBhZ2Ugb3IgZml4ZWQgaXQgdG8gdGhlIHRvcCBvclxuLy8gYm90dG9tIG9mIHRoZSBwYWdlLlxuXG4vLyBTdGF0aWMgdG9wICh1bmZpeGVkLCBidXQgMTAwJSB3aWRlKSBuYXZiYXJcbi5uYXZiYXItc3RhdGljLXRvcCB7XG4gIHotaW5kZXg6ICR6aW5kZXgtbmF2YmFyO1xuICBib3JkZXItd2lkdGg6IDAgMCAxcHg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG5cbi8vIEZpeCB0aGUgdG9wL2JvdHRvbSBuYXZiYXJzIHdoZW4gc2NyZWVuIHJlYWwgZXN0YXRlIHN1cHBvcnRzIGl0XG4ubmF2YmFyLWZpeGVkLXRvcCxcbi5uYXZiYXItZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1uYXZiYXItZml4ZWQ7XG5cbiAgLy8gVW5kbyB0aGUgcm91bmRlZCBjb3JuZXJzXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuLm5hdmJhci1maXhlZC10b3Age1xuICB0b3A6IDA7XG4gIGJvcmRlci13aWR0aDogMCAwIDFweDtcbn1cbi5uYXZiYXItZml4ZWQtYm90dG9tIHtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBvdmVycmlkZSAubmF2YmFyIGRlZmF1bHRzXG4gIGJvcmRlci13aWR0aDogMXB4IDAgMDtcbn1cblxuXG4vLyBCcmFuZC9wcm9qZWN0IG5hbWVcblxuLm5hdmJhci1icmFuZCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nOiAkbmF2YmFyLXBhZGRpbmctdmVydGljYWwgJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgaGVpZ2h0OiAkbmF2YmFyLWhlaWdodDtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICA+IGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIC5uYXZiYXIgPiAuY29udGFpbmVyICYsXG4gICAgLm5hdmJhciA+IC5jb250YWluZXItZmx1aWQgJiB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0b2dnbGVcbi8vXG4vLyBDdXN0b20gYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgYC5uYXZiYXItY29sbGFwc2VgLCBwb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZVxuLy8gSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi5uYXZiYXItdG9nZ2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIHBhZGRpbmc6IDlweCAxMHB4O1xuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oMzRweCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gIC8vIFdlIHJlbW92ZSB0aGUgYG91dGxpbmVgIGhlcmUsIGJ1dCBsYXRlciBjb21wZW5zYXRlIGJ5IGF0dGFjaGluZyBgOmhvdmVyYFxuICAvLyBzdHlsZXMgdG8gYDpmb2N1c2AuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAvLyBCYXJzXG4gIC5pY29uLWJhciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xuICB9XG4gIC5pY29uLWJhciArIC5pY29uLWJhciB7XG4gICAgbWFyZ2luLXRvcDogNHB4O1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIG5hdiBsaW5rc1xuLy9cbi8vIEJ1aWxkcyBvbiB0b3Agb2YgdGhlIGAubmF2YCBjb21wb25lbnRzIHdpdGggaXRzIG93biBtb2RpZmllciBjbGFzcyB0byBtYWtlXG4vLyB0aGUgbmF2IHRoZSBmdWxsIGhlaWdodCBvZiB0aGUgaG9yaXpvbnRhbCBuYXYgKGFib3ZlIDc2OHB4KS5cblxuLm5hdmJhci1uYXYge1xuICBtYXJnaW46ICgkbmF2YmFyLXBhZGRpbmctdmVydGljYWwgLyAyKSAoLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsKTtcblxuICA+IGxpID4gYSB7XG4gICAgcGFkZGluZy10b3A6ICAgIDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgIC8vIERyb3Bkb3ducyBnZXQgY3VzdG9tIGRpc3BsYXkgd2hlbiBjb2xsYXBzZWRcbiAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICA+IGxpID4gYSxcbiAgICAgIC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiA1cHggMTVweCA1cHggMjVweDtcbiAgICAgIH1cbiAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFVuY29sbGFwc2UgdGhlIG5hdlxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMDtcblxuICAgID4gbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICA+IGEge1xuICAgICAgICBwYWRkaW5nLXRvcDogICAgJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBmb3JtXG4vL1xuLy8gRXh0ZW5zaW9uIG9mIHRoZSBgLmZvcm0taW5saW5lYCB3aXRoIHNvbWUgZXh0cmEgZmxhdm9yIGZvciBvcHRpbXVtIGRpc3BsYXkgaW5cbi8vIG91ciBuYXZiYXJzLlxuXG4ubmF2YmFyLWZvcm0ge1xuICBtYXJnaW4tbGVmdDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBtYXJnaW4tcmlnaHQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgcGFkZGluZzogMTBweCAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICRzaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSksIDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHNoYWRvdyk7XG5cbiAgLy8gTWl4aW4gYmVoYXZpb3IgZm9yIG9wdGltdW0gZGlzcGxheVxuICBAaW5jbHVkZSBmb3JtLWlubGluZTtcblxuICAuZm9ybS1ncm91cCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWxseSBjZW50ZXIgaW4gZXhwYW5kZWQsIGhvcml6b250YWwgbmF2YmFyXG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkaW5wdXQtaGVpZ2h0LWJhc2UpO1xuXG4gIC8vIFVuZG8gMTAwJSB3aWR0aCBmb3IgcHVsbCBjbGFzc2VzXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm9yZGVyOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy8gRHJvcGRvd24gbWVudXNcblxuLy8gTWVudSBwb3NpdGlvbiBhbmQgbWVudSBjYXJldHNcbi5uYXZiYXItbmF2ID4gbGkgPiAuZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xufVxuLy8gTWVudSBwb3NpdGlvbiBhbmQgbWVudSBjYXJldCBzdXBwb3J0IGZvciBkcm9wdXBzIHZpYSBleHRyYSBkcm9wdXAgY2xhc3Ncbi5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXZiYXItbmF2ID4gbGkgPiAuZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXZiYXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xufVxuXG5cbi8vIEJ1dHRvbnMgaW4gbmF2YmFyc1xuLy9cbi8vIFZlcnRpY2FsbHkgY2VudGVyIGEgYnV0dG9uIHdpdGhpbiBhIG5hdmJhciAod2hlbiAqbm90KiBpbiBhIGZvcm0pLlxuXG4ubmF2YmFyLWJ0biB7XG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkaW5wdXQtaGVpZ2h0LWJhc2UpO1xuXG4gICYuYnRuLXNtIHtcbiAgICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGlucHV0LWhlaWdodC1zbWFsbCk7XG4gIH1cbiAgJi5idG4teHMge1xuICAgIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigyMik7XG4gIH1cbn1cblxuXG4vLyBUZXh0IGluIG5hdmJhcnNcbi8vXG4vLyBBZGQgYSBjbGFzcyB0byBtYWtlIGFueSBlbGVtZW50IHByb3Blcmx5IGFsaWduIGl0c2VsZiB2ZXJ0aWNhbGx5IHdpdGhpbiB0aGUgbmF2YmFycy5cblxuLm5hdmJhci10ZXh0IHtcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRsaW5lLWhlaWdodC1jb21wdXRlZCk7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgfVxufVxuXG5cbi8vIENvbXBvbmVudCBhbGlnbm1lbnRcbi8vXG4vLyBSZXB1cnBvc2UgdGhlIHB1bGwgdXRpbGl0aWVzIGFzIHRoZWlyIG93biBuYXZiYXIgdXRpbGl0aWVzIHRvIGF2b2lkIHNwZWNpZmljaXR5XG4vLyBpc3N1ZXMgd2l0aCBwYXJlbnRzIGFuZCBjaGFpbmluZy4gT25seSBkbyB0aGlzIHdoZW4gdGhlIG5hdmJhciBpcyB1bmNvbGxhcHNlZFxuLy8gdGhvdWdoIHNvIHRoYXQgbmF2YmFyIGNvbnRlbnRzIHByb3Blcmx5IHN0YWNrIGFuZCBhbGlnbiBpbiBtb2JpbGUuXG4vL1xuLy8gRGVjbGFyZWQgYWZ0ZXIgdGhlIG5hdmJhciBjb21wb25lbnRzIHRvIGVuc3VyZSBtb3JlIHNwZWNpZmljaXR5IG9uIHRoZSBtYXJnaW5zLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAubmF2YmFyLWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm5hdmJhci1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuXG4gICAgfiAubmF2YmFyLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBBbHRlcm5hdGUgbmF2YmFyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRGVmYXVsdCBuYXZiYXJcbi5uYXZiYXItZGVmYXVsdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1iZztcbiAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYm9yZGVyO1xuXG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGUge1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ib3JkZXItY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc7XG4gICAgfVxuICAgIC5pY29uLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWljb24tYmFyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItY29sbGFwc2UsXG4gIC5uYXZiYXItZm9ybSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYm9yZGVyO1xuICB9XG5cbiAgLy8gRHJvcGRvd24gbWVudSBpdGVtc1xuICAubmF2YmFyLW5hdiB7XG4gICAgLy8gUmVtb3ZlIGJhY2tncm91bmQgY29sb3IgZnJvbSBvcGVuIGRyb3Bkb3duXG4gICAgPiAub3BlbiA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnO1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheSB3aGVuIGNvbGxhcHNlZFxuICAgICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICA+IGxpID4gYSB7XG4gICAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuYWN0aXZlID4gYSB7XG4gICAgICAgICAgJixcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC8vIExpbmtzIGluIG5hdmJhcnNcbiAgLy9cbiAgLy8gQWRkIGEgY2xhc3MgdG8gZW5zdXJlIGxpbmtzIG91dHNpZGUgdGhlIG5hdmJhciBuYXYgYXJlIGNvbG9yZWQgY29ycmVjdGx5LlxuXG4gIC5uYXZiYXItbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICAgICZbZGlzYWJsZWRdLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBJbnZlcnNlIG5hdmJhclxuXG4ubmF2YmFyLWludmVyc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYmc7XG4gIGJvcmRlci1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJvcmRlcjtcblxuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuYWN0aXZlID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc7XG4gICAgICB9XG4gICAgfVxuICAgID4gLmRpc2FibGVkID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIERhcmtlbiB0aGUgcmVzcG9uc2l2ZSBuYXYgdG9nZ2xlXG4gIC5uYXZiYXItdG9nZ2xlIHtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtdG9nZ2xlLWhvdmVyLWJnO1xuICAgIH1cbiAgICAuaWNvbi1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1pY29uLWJhci1iZztcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLWNvbGxhcHNlLFxuICAubmF2YmFyLWZvcm0ge1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgNyUpO1xuICB9XG5cbiAgLy8gRHJvcGRvd25zXG4gIC5uYXZiYXItbmF2IHtcbiAgICA+IC5vcGVuID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgICAvLyBEcm9wZG93bnMgZ2V0IGN1c3RvbSBkaXNwbGF5XG4gICAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgID4gLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYm9yZGVyO1xuICAgICAgICB9XG4gICAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYm9yZGVyO1xuICAgICAgICB9XG4gICAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICAgICZbZGlzYWJsZWRdLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJyZWFkY3J1bWJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5icmVhZGNydW1iIHtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy12ZXJ0aWNhbCAkYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XG4gIC8qIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7ICovXG5cbiAgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgKyBsaTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCIjeyRicmVhZGNydW1iLXNlcGFyYXRvcn1cXDAwYTBcIjsgLy8gVW5pY29kZSBzcGFjZSBhZGRlZCBzaW5jZSBpbmxpbmUtYmxvY2sgbWVhbnMgbm9uLWNvbGxhcHNpbmcgd2hpdGUtc3BhY2VcbiAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgY29sb3I6ICRicmVhZGNydW1iLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gID4gLmFjdGl2ZSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjtcbiAgfVxufVxuIiwiLy9cbi8vIFBhZ2luYXRpb24gKG11bHRpcGxlIHBhZ2VzKVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjowO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZTsgLy8gUmVtb3ZlIGxpc3Qtc3R5bGUgYW5kIGJsb2NrLWxldmVsIGRlZmF1bHRzXG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gQ29sbGFwc2Ugd2hpdGUtc3BhY2VcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXI7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IGxpID4gYSxcbiAgPiBsaSA+IHNwYW4ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjtcbiAgICB9XG4gICAgJi5jdXJyZW50e1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gID4gLmFjdGl2ZSA+IGEsXG4gID4gLmFjdGl2ZSA+IHNwYW4ge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyO1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cbiAgfVxuXG4gID4gLmRpc2FibGVkIHtcbiAgICA+IHNwYW4sXG4gICAgPiBzcGFuOmhvdmVyLFxuICAgID4gc3Bhbjpmb2N1cyxcbiAgICA+IGEsXG4gICAgPiBhOmhvdmVyLFxuICAgID4gYTpmb2N1cyB7XG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIExhcmdlXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1sYXJnZSwgJGxpbmUtaGVpZ2h0LWxhcmdlLCAkYm9yZGVyLXJhZGl1cy1sYXJnZSk7XG59XG5cbi8vIFNtYWxsXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG59XG4iLCIvL1xuLy8gTGFiZWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHBhZGRpbmc6IC4yZW0gLjZlbSAuM2VtO1xuICBmb250LXNpemU6IDc1JTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGxhYmVsLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYm9yZGVyLXJhZGl1czogLjI1ZW07XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEubGFiZWxcblxuICAvLyBFbXB0eSBsYWJlbHMgY29sbGFwc2UgYXV0b21hdGljYWxseSAobm90IGF2YWlsYWJsZSBpbiBJRTgpXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBRdWljayBmaXggZm9yIGxhYmVscyBpbiBidXR0b25zXG4gIC5idG4gJiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTFweDtcbiAgfVxufVxuXG4vLyBBZGQgaG92ZXIgZWZmZWN0cywgYnV0IG9ubHkgZm9yIGxpbmtzXG5hLmxhYmVsIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRsYWJlbC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLy8gQ29sb3JzXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnMgKGxpbmtlZCBsYWJlbHMgZ2V0IGRhcmtlciBvbiA6aG92ZXIpXG5cbi5sYWJlbC1kZWZhdWx0IHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtZGVmYXVsdC1iZyk7XG59XG5cbi5sYWJlbC1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtcHJpbWFyeS1iZyk7XG59XG5cbi5sYWJlbC1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtc3VjY2Vzcy1iZyk7XG59XG5cbi5sYWJlbC1pbmZvIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtaW5mby1iZyk7XG59XG5cbi5sYWJlbC13YXJuaW5nIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtd2FybmluZy1iZyk7XG59XG5cbi5sYWJlbC1kYW5nZXIge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1kYW5nZXItYmcpO1xufVxuIiwiLy9cbi8vIEJhZGdlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogMTBweDtcbiAgcGFkZGluZzogM3B4IDdweDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGJhZGdlLWNvbG9yO1xuICBsaW5lLWhlaWdodDogJGJhZGdlLWxpbmUtaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWRnZS1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJhZGdlLWJvcmRlci1yYWRpdXM7XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHkgKG5vdCBhdmFpbGFibGUgaW4gSUU4KVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuICAuYnRuICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gIH1cblxuICAuYnRuLXhzICYsXG4gIC5idG4tZ3JvdXAteHMgPiAuYnRuICYge1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAxcHggNXB4O1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEuYmFkZ2VcblxuICAvLyBBY2NvdW50IGZvciBiYWRnZXMgaW4gbmF2c1xuICAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSA+ICYsXG4gIC5uYXYtcGlsbHMgPiAuYWN0aXZlID4gYSA+ICYge1xuICAgIGNvbG9yOiAkYmFkZ2UtYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWRnZS1hY3RpdmUtYmc7XG4gIH1cblxuICAubGlzdC1ncm91cC1pdGVtID4gJiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG5cbiAgLmxpc3QtZ3JvdXAtaXRlbSA+ICYgKyAmIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgfVxuXG4gIC5uYXYtcGlsbHMgPiBsaSA+IGEgPiAmIHtcbiAgICBtYXJnaW4tbGVmdDogM3B4O1xuICB9XG59XG5cbi8vIEhvdmVyIHN0YXRlLCBidXQgb25seSBmb3IgbGlua3NcbmEuYmFkZ2Uge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGJhZGdlLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuIiwiLy9cbi8vIEFsZXJ0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYWxlcnQge1xuICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGFsZXJ0LWJvcmRlci1yYWRpdXM7XG5cbiAgLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbiAgaDQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgLy8gU3BlY2lmaWVkIGZvciB0aGUgaDQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuICAuYWxlcnQtbGluayB7XG4gICAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xuICB9XG5cbiAgLy8gSW1wcm92ZSBhbGlnbm1lbnQgYW5kIHNwYWNpbmcgb2YgaW5uZXIgY29udGVudFxuICA+IHAsXG4gID4gdWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICA+IHAgKyBwIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gIH1cbn1cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzYWJsZSwgLy8gVGhlIG1pc3NwZWxsZWQgLmFsZXJ0LWRpc21pc3NhYmxlIHdhcyBkZXByZWNhdGVkIGluIDMuMi4wLlxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogKCRhbGVydC1wYWRkaW5nICsgMjApO1xuXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXG4gIC5jbG9zZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTJweDtcbiAgICByaWdodDogLTIxcHg7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbi5hbGVydC1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtc3VjY2Vzcy1iZywgJGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyLCAkYWxlcnQtc3VjY2Vzcy10ZXh0KTtcbn1cblxuLmFsZXJ0LWluZm8ge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1pbmZvLWJnLCAkYWxlcnQtaW5mby1ib3JkZXIsICRhbGVydC1pbmZvLXRleHQpO1xufVxuXG4uYWxlcnQtd2FybmluZyB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LXdhcm5pbmctYmcsICRhbGVydC13YXJuaW5nLWJvcmRlciwgJGFsZXJ0LXdhcm5pbmctdGV4dCk7XG59XG5cbi5hbGVydC1kYW5nZXIge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1kYW5nZXItYmcsICRhbGVydC1kYW5nZXItYm9yZGVyLCAkYWxlcnQtZGFuZ2VyLXRleHQpO1xufVxuIiwiLy9cbi8vIFByb2dyZXNzIGJhcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFyIGFuaW1hdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gV2ViS2l0XG5ALXdlYmtpdC1rZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tICB7IGJhY2tncm91bmQtcG9zaXRpb246IDQwcHggMDsgfVxuICB0byAgICB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxufVxuXG4vLyBTcGVjIGFuZCBJRTEwK1xuQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gIGZyb20gIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogNDBweCAwOyB9XG4gIHRvICAgIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG59XG5cblxuLy8gQmFyIGl0c2VsZlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBPdXRlciBjb250YWluZXJcbi5wcm9ncmVzcyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcbiAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLWJvcmRlci1yYWRpdXM7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjEpKTtcbn1cblxuLy8gQmFyIG9mIHByb2dyZXNzXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAtMXB4IDAgcmdiYSgwLDAsMCwuMTUpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih3aWR0aCAuNnMgZWFzZSk7XG59XG5cbi8vIFN0cmlwZWQgYmFyc1xuLy9cbi8vIGAucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyYCBpcyBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBpbiBmYXZvciBvZiB0aGVcbi8vIGAucHJvZ3Jlc3MtYmFyLXN0cmlwZWRgIGNsYXNzLCB3aGljaCB5b3UganVzdCBhZGQgdG8gYW4gZXhpc3Rpbmdcbi8vIGAucHJvZ3Jlc3MtYmFyYC5cbi5wcm9ncmVzcy1zdHJpcGVkIC5wcm9ncmVzcy1iYXIsXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkO1xuICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggNDBweDtcbn1cblxuLy8gQ2FsbCBhbmltYXRpb24gZm9yIHRoZSBhY3RpdmUgb25lXG4vL1xuLy8gYC5wcm9ncmVzcy5hY3RpdmUgLnByb2dyZXNzLWJhcmAgaXMgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgaW4gZmF2b3Igb2YgdGhlXG4vLyBgLnByb2dyZXNzLWJhci5hY3RpdmVgIGFwcHJvYWNoLlxuLnByb2dyZXNzLmFjdGl2ZSAucHJvZ3Jlc3MtYmFyLFxuLnByb2dyZXNzLWJhci5hY3RpdmUge1xuICBAaW5jbHVkZSBhbmltYXRpb24ocHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMnMgbGluZWFyIGluZmluaXRlKTtcbn1cblxuXG4vLyBWYXJpYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5wcm9ncmVzcy1iYXItc3VjY2VzcyB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZyk7XG59XG5cbi5wcm9ncmVzcy1iYXItaW5mbyB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItaW5mby1iZyk7XG59XG5cbi5wcm9ncmVzcy1iYXItd2FybmluZyB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItd2FybmluZy1iZyk7XG59XG5cbi5wcm9ncmVzcy1iYXItZGFuZ2VyIHtcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJHByb2dyZXNzLWJhci1kYW5nZXItYmcpO1xufVxuIiwiLm1lZGlhIHtcbiAgLy8gUHJvcGVyIHNwYWNpbmcgYmV0d2VlbiBpbnN0YW5jZXMgb2YgLm1lZGlhXG4gIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4ubWVkaWEsXG4ubWVkaWEtYm9keSB7XG4gIHpvb206IDE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5tZWRpYS1ib2R5IHtcbiAgd2lkdGg6IDEwMDAwcHg7XG59XG5cbi5tZWRpYS1vYmplY3Qge1xuICBkaXNwbGF5OiBibG9jaztcblxuICAvLyBGaXggY29sbGFwc2UgaW4gd2Via2l0IGZyb20gbWF4LXdpZHRoOiAxMDAlIGFuZCBkaXNwbGF5OiB0YWJsZS1jZWxsLlxuICAmLmltZy10aHVtYm5haWwge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxufVxuXG4ubWVkaWEtcmlnaHQsXG4ubWVkaWEgPiAucHVsbC1yaWdodCB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbn1cblxuLm1lZGlhLWxlZnQsXG4ubWVkaWEgPiAucHVsbC1sZWZ0IHtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuLm1lZGlhLWxlZnQsXG4ubWVkaWEtcmlnaHQsXG4ubWVkaWEtYm9keSB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi5tZWRpYS1taWRkbGUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ubWVkaWEtYm90dG9tIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBoZWFkaW5ncyBmb3IgdGlnaHRlciBkZWZhdWx0IHNwYWNpbmdcbi5tZWRpYS1oZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4vLyBNZWRpYSBsaXN0IHZhcmlhdGlvblxuLy9cbi8vIFVuZG8gZGVmYXVsdCB1bC9vbCBzdHlsZXNcbi5tZWRpYS1saXN0IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy9cbi8vIExpc3QgZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxuXG4ubGlzdC1ncm91cCB7XG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyByZXNldCBwYWRkaW5nIGJlY2F1c2UgdWwgYW5kIG9sXG59XG5cblxuLy8gSW5kaXZpZHVhbCBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIG9uIGBsaWBzIG9yIGBkaXZgcyB3aXRoaW4gdGhlIGAubGlzdC1ncm91cGAgcGFyZW50LlxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICAvLyBQbGFjZSB0aGUgYm9yZGVyIG9uIHRoZSBsaXN0IGl0ZW1zIGFuZCBuZWdhdGl2ZSBtYXJnaW4gdXAgZm9yIGJldHRlciBzdHlsaW5nXG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXI7XG5cbiAgLy8gUm91bmQgdGhlIGZpcnN0IGFuZCBsYXN0IGl0ZW1zXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgfVxufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmUgaXRlbXMuXG4vLyBJbmNsdWRlcyBhbiBleHRyYSBgLmFjdGl2ZWAgbW9kaWZpZXIgY2xhc3MgZm9yIHNob3dpbmcgc2VsZWN0ZWQgaXRlbXMuXG5cbmEubGlzdC1ncm91cC1pdGVtLFxuYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWNvbG9yO1xuXG4gIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjtcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1ob3Zlci1iZztcbiAgfVxufVxuXG5idXR0b24ubGlzdC1ncm91cC1pdGVtIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAmLmRpc2FibGVkLFxuICAmLmRpc2FibGVkOmhvdmVyLFxuICAmLmRpc2FibGVkOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1iZztcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuXG4gICAgLy8gRm9yY2UgY29sb3IgdG8gaW5oZXJpdCBmb3IgY3VzdG9tIGNvbnRlbnRcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuICAgIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCB7XG4gICAgICBjb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBBY3RpdmUgY2xhc3Mgb24gaXRlbSBpdHNlbGYsIG5vdCBwYXJlbnRcbiAgJi5hY3RpdmUsXG4gICYuYWN0aXZlOmhvdmVyLFxuICAmLmFjdGl2ZTpmb2N1cyB7XG4gICAgei1pbmRleDogMjsgLy8gUGxhY2UgYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXI7XG5cbiAgICAvLyBGb3JjZSBjb2xvciB0byBpbmhlcml0IGZvciBjdXN0b20gY29udGVudFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyxcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcgPiBzbWFsbCxcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcgPiAuc21hbGwge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuICAgIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCB7XG4gICAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLXRleHQtY29sb3I7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQ29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudChzdWNjZXNzLCAkc3RhdGUtc3VjY2Vzcy1iZywgJHN0YXRlLXN1Y2Nlc3MtdGV4dCk7XG5AaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudChpbmZvLCAkc3RhdGUtaW5mby1iZywgJHN0YXRlLWluZm8tdGV4dCk7XG5AaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCh3YXJuaW5nLCAkc3RhdGUtd2FybmluZy1iZywgJHN0YXRlLXdhcm5pbmctdGV4dCk7XG5AaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudChkYW5nZXIsICRzdGF0ZS1kYW5nZXItYmcsICRzdGF0ZS1kYW5nZXItdGV4dCk7XG5cblxuLy8gQ3VzdG9tIGNvbnRlbnQgb3B0aW9uc1xuLy9cbi8vIEV4dHJhIGNsYXNzZXMgZm9yIGNyZWF0aW5nIHdlbGwtZm9ybWF0dGVkIGNvbnRlbnQgd2l0aGluIGAubGlzdC1ncm91cC1pdGVtYHMuXG5cbi5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tdGV4dCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG4iLCIvL1xuLy8gUGFuZWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi5wYW5lbCB7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhbmVsLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJHBhbmVsLWJvcmRlci1yYWRpdXM7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG59XG5cbi8vIFBhbmVsIGNvbnRlbnRzXG4ucGFuZWwtYm9keSB7XG4gIHBhZGRpbmc6ICRwYW5lbC1ib2R5LXBhZGRpbmc7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBPcHRpb25hbCBoZWFkaW5nXG4ucGFuZWwtaGVhZGluZyB7XG4gIHBhZGRpbmc6ICRwYW5lbC1oZWFkaW5nLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuXG4gID4gLmRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIFdpdGhpbiBoZWFkaW5nLCBzdHJpcCBhbnkgYGgqYCB0YWcgb2YgaXRzIGRlZmF1bHQgbWFyZ2lucyBmb3Igc3BhY2luZy5cbi5wYW5lbC10aXRsZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4xMjUpKTtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgPiBhLFxuICA+IHNtYWxsLFxuICA+IC5zbWFsbCxcbiAgPiBzbWFsbCA+IGEsXG4gID4gLnNtYWxsID4gYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gT3B0aW9uYWwgZm9vdGVyIChzdGF5cyBncmF5IGluIGV2ZXJ5IG1vZGlmaWVyIGNsYXNzKVxuLnBhbmVsLWZvb3RlciB7XG4gIHBhZGRpbmc6ICRwYW5lbC1mb290ZXItcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhbmVsLWZvb3Rlci1iZztcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRwYW5lbC1pbm5lci1ib3JkZXI7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcbn1cblxuXG4vLyBMaXN0IGdyb3VwcyBpbiBwYW5lbHNcbi8vXG4vLyBCeSBkZWZhdWx0LCBzcGFjZSBvdXQgbGlzdCBncm91cCBjb250ZW50IGZyb20gcGFuZWwgaGVhZGluZ3MgdG8gYWNjb3VudCBmb3Jcbi8vIGFueSBraW5kIG9mIGN1c3RvbSBjb250ZW50IGJldHdlZW4gdGhlIHR3by5cblxuLnBhbmVsIHtcbiAgPiAubGlzdC1ncm91cCxcbiAgPiAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuXG4gICAgLy8gQWRkIGJvcmRlciB0b3AgcmFkaXVzIGZvciBmaXJzdCBvbmVcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWRkIGJvcmRlciBib3R0b20gcmFkaXVzIGZvciBsYXN0IG9uZVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gLnBhbmVsLWhlYWRpbmcgKyAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgICB9XG4gIH1cbn1cbi8vIENvbGxhcHNlIHNwYWNlIGJldHdlZW4gd2hlbiB0aGVyZSdzIG5vIGFkZGl0aW9uYWwgY29udGVudC5cbi5wYW5lbC1oZWFkaW5nICsgLmxpc3QtZ3JvdXAge1xuICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICB9XG59XG4ubGlzdC1ncm91cCArIC5wYW5lbC1mb290ZXIge1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xufVxuXG4vLyBUYWJsZXMgaW4gcGFuZWxzXG4vL1xuLy8gUGxhY2UgYSBub24tYm9yZGVyZWQgYC50YWJsZWAgd2l0aGluIGEgcGFuZWwgKG5vdCB3aXRoaW4gYSBgLnBhbmVsLWJvZHlgKSBhbmRcbi8vIHdhdGNoIGl0IGdvIGZ1bGwgd2lkdGguXG5cbi5wYW5lbCB7XG4gID4gLnRhYmxlLFxuICA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLFxuICA+IC5wYW5lbC1jb2xsYXBzZSA+IC50YWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIGNhcHRpb24ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkcGFuZWwtYm9keS1wYWRkaW5nO1xuICAgICAgcGFkZGluZy1yaWdodDogJHBhbmVsLWJvZHktcGFkZGluZztcbiAgICB9XG4gIH1cbiAgLy8gQWRkIGJvcmRlciB0b3AgcmFkaXVzIGZvciBmaXJzdCBvbmVcbiAgPiAudGFibGU6Zmlyc3QtY2hpbGQsXG4gID4gLnRhYmxlLXJlc3BvbnNpdmU6Zmlyc3QtY2hpbGQgPiAudGFibGU6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcblxuICAgID4gdGhlYWQ6Zmlyc3QtY2hpbGQsXG4gICAgPiB0Ym9keTpmaXJzdC1jaGlsZCB7XG4gICAgICA+IHRyOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcblxuICAgICAgICB0ZDpmaXJzdC1jaGlsZCxcbiAgICAgICAgdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICB9XG4gICAgICAgIHRkOmxhc3QtY2hpbGQsXG4gICAgICAgIHRoOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBBZGQgYm9yZGVyIGJvdHRvbSByYWRpdXMgZm9yIGxhc3Qgb25lXG4gID4gLnRhYmxlOmxhc3QtY2hpbGQsXG4gID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG5cbiAgICA+IHRib2R5Omxhc3QtY2hpbGQsXG4gICAgPiB0Zm9vdDpsYXN0LWNoaWxkIHtcbiAgICAgID4gdHI6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG5cbiAgICAgICAgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgICAgIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgfVxuICAgICAgICB0ZDpsYXN0LWNoaWxkLFxuICAgICAgICB0aDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgPiAucGFuZWwtYm9keSArIC50YWJsZSxcbiAgPiAucGFuZWwtYm9keSArIC50YWJsZS1yZXNwb25zaXZlLFxuICA+IC50YWJsZSArIC5wYW5lbC1ib2R5LFxuICA+IC50YWJsZS1yZXNwb25zaXZlICsgLnBhbmVsLWJvZHkge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG4gID4gLnRhYmxlID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0aCxcbiAgPiAudGFibGUgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG4gID4gLnRhYmxlLWJvcmRlcmVkLFxuICA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gICAgPiB0aGVhZCxcbiAgICA+IHRib2R5LFxuICAgID4gdGZvb3Qge1xuICAgICAgPiB0ciB7XG4gICAgICAgID4gdGg6Zmlyc3QtY2hpbGQsXG4gICAgICAgID4gdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgID4gdGg6bGFzdC1jaGlsZCxcbiAgICAgICAgPiB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgPiB0aGVhZCxcbiAgICA+IHRib2R5IHtcbiAgICAgID4gdHI6Zmlyc3QtY2hpbGQge1xuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gdGJvZHksXG4gICAgPiB0Zm9vdCB7XG4gICAgICA+IHRyOmxhc3QtY2hpbGQge1xuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gLnRhYmxlLXJlc3BvbnNpdmUge1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cblxuLy8gQ29sbGFwc2FibGUgcGFuZWxzIChha2EsIGFjY29yZGlvbilcbi8vXG4vLyBXcmFwIGEgc2VyaWVzIG9mIHBhbmVscyBpbiBgLnBhbmVsLWdyb3VwYCB0byB0dXJuIHRoZW0gaW50byBhbiBhY2NvcmRpb24gd2l0aFxuLy8gdGhlIGhlbHAgb2Ygb3VyIGNvbGxhcHNlIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4ucGFuZWwtZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG5cbiAgLy8gVGlnaHRlbiB1cCBtYXJnaW4gc28gaXQncyBvbmx5IGJldHdlZW4gcGFuZWxzXG4gIC5wYW5lbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkcGFuZWwtYm9yZGVyLXJhZGl1cztcblxuICAgICsgLnBhbmVsIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICB9XG4gIH1cblxuICAucGFuZWwtaGVhZGluZyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHksXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHBhbmVsLWlubmVyLWJvcmRlcjtcbiAgICB9XG4gIH1cblxuICAucGFuZWwtZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgICsgLnBhbmVsLWNvbGxhcHNlIC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcGFuZWwtaW5uZXItYm9yZGVyO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWF0aW9uc1xuLnBhbmVsLWRlZmF1bHQge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1kZWZhdWx0LWJvcmRlciwgJHBhbmVsLWRlZmF1bHQtdGV4dCwgJHBhbmVsLWRlZmF1bHQtaGVhZGluZy1iZywgJHBhbmVsLWRlZmF1bHQtYm9yZGVyKTtcbn1cbi5wYW5lbC1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtcHJpbWFyeS1ib3JkZXIsICRwYW5lbC1wcmltYXJ5LXRleHQsICRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmcsICRwYW5lbC1wcmltYXJ5LWJvcmRlcik7XG59XG4ucGFuZWwtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyLCAkcGFuZWwtc3VjY2Vzcy10ZXh0LCAkcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnLCAkcGFuZWwtc3VjY2Vzcy1ib3JkZXIpO1xufVxuLnBhbmVsLWluZm8ge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1pbmZvLWJvcmRlciwgJHBhbmVsLWluZm8tdGV4dCwgJHBhbmVsLWluZm8taGVhZGluZy1iZywgJHBhbmVsLWluZm8tYm9yZGVyKTtcbn1cbi5wYW5lbC13YXJuaW5nIHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtd2FybmluZy1ib3JkZXIsICRwYW5lbC13YXJuaW5nLXRleHQsICRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmcsICRwYW5lbC13YXJuaW5nLWJvcmRlcik7XG59XG4ucGFuZWwtZGFuZ2VyIHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtZGFuZ2VyLWJvcmRlciwgJHBhbmVsLWRhbmdlci10ZXh0LCAkcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmcsICRwYW5lbC1kYW5nZXItYm9yZGVyKTtcbn1cbiIsIi8vIEVtYmVkcyByZXNwb25zaXZlXG4vL1xuLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLyBNb2RpZmllciBjbGFzcyBmb3IgMTY6OSBhc3BlY3QgcmF0aW9cbi5lbWJlZC1yZXNwb25zaXZlLTE2Ynk5IHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbn1cblxuLy8gTW9kaWZpZXIgY2xhc3MgZm9yIDQ6MyBhc3BlY3QgcmF0aW9cbi5lbWJlZC1yZXNwb25zaXZlLTRieTMge1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xufVxuIiwiLy9cbi8vIE1vZGFsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHNoaXRcblxuLy8gS2lsbCB0aGUgc2Nyb2xsIG9uIHRoZSBib2R5XG4ubW9kYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAvLyBQcmV2ZW50IENocm9tZSBvbiBXaW5kb3dzIGZyb20gYWRkaW5nIGEgZm9jdXMgb3V0bGluZS4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDk1MS5cbiAgb3V0bGluZTogMDtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAmLmZhZGUgLm1vZGFsLWRpYWxvZyB7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlKDAsIC0yNSUpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tdHJhbnNmb3JtKDAuM3MgZWFzZS1vdXQpO1xuICB9XG4gICYuaW4gLm1vZGFsLWRpYWxvZyB7IEBpbmNsdWRlIHRyYW5zbGF0ZSgwLCAwKSB9XG59XG4ubW9kYWwtb3BlbiAubW9kYWwge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMTBweDtcbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJvcmRlcjogMCBzb2xpZCAkbW9kYWwtY29udGVudC1mYWxsYmFjay1ib3JkZXItY29sb3I7IC8vb2xkIGJyb3dzZXJzIGZhbGxiYWNrIChpZTggZXRjKVxuICBib3JkZXI6IDAgc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgM3B4IDlweCByZ2JhKDAsMCwwLC41KSk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tncm91bmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1iYWNrZHJvcC1iZztcbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgQGluY2x1ZGUgb3BhY2l0eSgwKTsgfVxuICAmLmluIHsgQGluY2x1ZGUgb3BhY2l0eSgkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eSk7IH1cbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBwYWRkaW5nOiRtb2RhbC10aXRsZS1wYWRkaW5nICRtb2RhbC1pbm5lci1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XG4gIG1pbi1oZWlnaHQ6ICgkbW9kYWwtdGl0bGUtcGFkZGluZyArICRtb2RhbC10aXRsZS1saW5lLWhlaWdodCk7XG59XG4vLyBDbG9zZSBpY29uXG4ubW9kYWwtaGVhZGVyIC5jbG9zZSB7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyAvLyByaWdodCBhbGlnbiBidXR0b25zXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7IC8vIGNsZWFyIGl0IGluIGNhc2UgZm9sa3MgdXNlIC5wdWxsLSogY2xhc3NlcyBvbiBidXR0b25zXG5cbiAgLy8gUHJvcGVybHkgc3BhY2Ugb3V0IGJ1dHRvbnNcbiAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gYWNjb3VudCBmb3IgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB3aGljaCBnZXRzIHRoZSBib3R0b20gbWFyZ2luIGxpa2UgYWxsIG90aGVyIGlucHV0c1xuICB9XG4gIC8vIGJ1dCBvdmVycmlkZSB0aGF0IGZvciBidXR0b24gZ3JvdXBzXG4gIC5idG4tZ3JvdXAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG4gIC8vIGFuZCBvdmVycmlkZSBpdCBmb3IgYmxvY2sgYnV0dG9ucyBhcyB3ZWxsXG4gIC5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIHdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAxMCUgYXV0bztcbiAgfVxuICAubW9kYWwtY29udGVudCB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDVweCAxNXB4IHJnYmEoMCwwLDAsLjUpKTtcbiAgfVxuXG4gIC8vIE1vZGFsIHNpemVzXG4gIC5tb2RhbC1zbSB7IHdpZHRoOiAkbW9kYWwtc207IH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gIC5tb2RhbC1sZyB7IHdpZHRoOiAkbW9kYWwtbGc7IH1cbn1cbiIsIi8vXG4vLyBDYXJvdXNlbFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBXcmFwcGVyIGZvciB0aGUgc2xpZGUgY29udGFpbmVyIGFuZCBpbmRpY2F0b3JzXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAuaXRlbSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbiguNnMgZWFzZS1pbi1vdXQgbGVmdCk7XG5cbiAgICAvLyBBY2NvdW50IGZvciBqYW5raXR1ZGUgb24gaW1hZ2VzXG4gICAgPiBpbWcsXG4gICAgPiBhID4gaW1nIHtcbiAgICAgIEBpbmNsdWRlIGltZy1yZXNwb25zaXZlO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgLy8gV2ViS2l0IENTUzMgdHJhbnNmb3JtcyBmb3Igc3VwcG9ydGVkIGRldmljZXNcbiAgICBAbWVkaWEgYWxsIGFuZCAodHJhbnNmb3JtLTNkKSwgKC13ZWJraXQtdHJhbnNmb3JtLTNkKSB7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXRyYW5zZm9ybSgwLjZzIGVhc2UtaW4tb3V0KTtcbiAgICAgIEBpbmNsdWRlIGJhY2tmYWNlLXZpc2liaWxpdHkoaGlkZGVuKTtcbiAgICAgIEBpbmNsdWRlIHBlcnNwZWN0aXZlKDEwMDBweCk7XG5cbiAgICAgICYubmV4dCxcbiAgICAgICYuYWN0aXZlLnJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgICAmLnByZXYsXG4gICAgICAmLmFjdGl2ZS5sZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgICAgJi5uZXh0LmxlZnQsXG4gICAgICAmLnByZXYucmlnaHQsXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gID4gLmFjdGl2ZSxcbiAgPiAubmV4dCxcbiAgPiAucHJldiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICA+IC5hY3RpdmUge1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICA+IC5uZXh0LFxuICA+IC5wcmV2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAubmV4dCB7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuICA+IC5wcmV2IHtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgfVxuICA+IC5uZXh0LmxlZnQsXG4gID4gLnByZXYucmlnaHQge1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICA+IC5hY3RpdmUubGVmdCB7XG4gICAgbGVmdDogLTEwMCU7XG4gIH1cbiAgPiAuYWN0aXZlLnJpZ2h0IHtcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG5cbn1cblxuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmNhcm91c2VsLWNvbnRyb2wge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIEBpbmNsdWRlIG9wYWNpdHkoJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDAgMXB4ICRjYXJvdXNlbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yIGluc2V0KTtcbiAgZm9udC1zaXplOiAkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjVzIGVhc2UtaW4tb3V0IDBzKTtcblxuICAvLyBXZSBjYW4ndCBoYXZlIHRoaXMgdHJhbnNpdGlvbiBoZXJlIGJlY2F1c2UgV2ViS2l0IGNhbmNlbHMgdGhlIGNhcm91c2VsXG4gIC8vIGFuaW1hdGlvbiBpZiB5b3UgdHJpcCB0aGlzIHdoaWxlIGluIHRoZSBtaWRkbGUgb2YgYW5vdGhlciBhbmltYXRpb24uXG5cbiAgLy8gU2V0IGdyYWRpZW50cyBmb3IgYmFja2dyb3VuZHNcbiAgJi5sZWZ0IHtcbi8qICAgICBAaW5jbHVkZSBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogcmdiYSgwLDAsMCwuNSksICRlbmQtY29sb3I6IHJnYmEoMCwwLDAsLjAwMDEpKTsgKi9cbiAgfVxuICAmLnJpZ2h0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuLyogICAgIEBpbmNsdWRlIGdyYWRpZW50LWhvcml6b250YWwoJHN0YXJ0LWNvbG9yOiByZ2JhKDAsMCwwLC4wMDAxKSwgJGVuZC1jb2xvcjogcmdiYSgwLDAsMCwuNSkpOyAqL1xuICB9XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBjb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIG9wYWNpdHkoLjkpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDAgMzBweCAkYnJhbmQtcHJpbWFyeSBpbnNldCk7XG4gIH1cblxuICAvLyBUb2dnbGVzXG4gIC5pY29uLXByZXYsXG4gIC5pY29uLW5leHQsXG4gIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LFxuICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAuaWNvbi1wcmV2LFxuICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCB7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgfVxuICAuaWNvbi1uZXh0LFxuICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQge1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgfVxuICAuaWNvbi1wcmV2LFxuICAuaWNvbi1uZXh0IHtcbiAgICB3aWR0aDogIDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtZmFtaWx5OiBzZXJpZjtcbiAgfVxuXG5cbiAgLmljb24tcHJldiB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAzOSc7Ly8gU0lOR0xFIExFRlQtUE9JTlRJTkcgQU5HTEUgUVVPVEFUSU9OIE1BUksgKFUrMjAzOSlcbiAgICB9XG4gIH1cbiAgLmljb24tbmV4dCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAzYSc7Ly8gU0lOR0xFIFJJR0hULVBPSU5USU5HIEFOR0xFIFFVT1RBVElPTiBNQVJLIChVKzIwM0EpXG4gICAgfVxuICB9XG59XG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzXG4vL1xuLy8gQWRkIGFuIHVub3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxMHB4O1xuICBsZWZ0OiA1MCU7XG4gIHotaW5kZXg6IDE1O1xuICB3aWR0aDogNjAlO1xuICBtYXJnaW4tbGVmdDogLTMwJTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogIDEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIG1hcmdpbjogMXB4O1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNhcm91c2VsLWluZGljYXRvci1ib3JkZXItY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAvLyBJRTgtOSBoYWNrIGZvciBldmVudCBoYW5kbGluZ1xuICAgIC8vXG4gICAgLy8gSW50ZXJuZXQgRXhwbG9yZXIgOC05IGRvZXMgbm90IHN1cHBvcnQgY2xpY2tzIG9uIGVsZW1lbnRzIHdpdGhvdXQgYSBzZXRcbiAgICAvLyBgYmFja2dyb3VuZC1jb2xvcmAuIFdlIGNhbm5vdCB1c2UgYGZpbHRlcmAgc2luY2UgdGhhdCdzIG5vdCB2aWV3ZWQgYXMgYVxuICAgIC8vIGJhY2tncm91bmQgY29sb3IgYnkgdGhlIGJyb3dzZXIuIFRodXMsIGEgaGFjayBpcyBuZWVkZWQuXG4gICAgLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNJbnRlcm5ldF9FeHBsb3JlclxuICAgIC8vXG4gICAgLy8gRm9yIElFOCwgd2Ugc2V0IHNvbGlkIGJsYWNrIGFzIGl0IGRvZXNuJ3Qgc3VwcG9ydCBgcmdiYSgpYC4gRm9yIElFOSwgd2VcbiAgICAvLyBzZXQgYWxwaGEgdHJhbnNwYXJlbmN5IGZvciB0aGUgYmVzdCByZXN1bHRzIHBvc3NpYmxlLlxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAgXFw5OyAvLyBJRThcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDApOyAvLyBJRTlcbiAgfVxuICAuYWN0aXZlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6ICAxMnB4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgfVxufVxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhpZGRlbiBieSBkZWZhdWx0IGZvciBzbWFsbGVyIHZpZXdwb3J0c1xuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDE1JTtcbiAgcmlnaHQ6IDE1JTtcbiAgYm90dG9tOiAyMHB4O1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1zaGFkb3c6ICRjYXJvdXNlbC10ZXh0LXNoYWRvdztcbiAgJiAuYnRuIHtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTsgLy8gTm8gc2hhZG93IGZvciBidXR0b24gZWxlbWVudHMgaW4gY2Fyb3VzZWwtY2FwdGlvblxuICB9XG59XG5cblxuLy8gU2NhbGUgdXAgY29udHJvbHMgZm9yIHRhYmxldHMgYW5kIHVwXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuXG4gIC8vIFNjYWxlIHVwIHRoZSBjb250cm9scyBhIHNtaWRnZVxuICAuY2Fyb3VzZWwtY29udHJvbCB7XG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxuICAgIC5pY29uLXByZXYsXG4gICAgLmljb24tbmV4dCB7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIG1hcmdpbi10b3A6IC0xNXB4O1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgIH1cbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCxcbiAgICAuaWNvbi1wcmV2IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICB9XG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxuICAgIC5pY29uLW5leHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgICB9XG4gIH1cblxuICAvLyBTaG93IGFuZCBsZWZ0IGFsaWduIHRoZSBjYXB0aW9uc1xuICAuY2Fyb3VzZWwtY2FwdGlvbiB7XG4gICAgbGVmdDogMjAlO1xuICAgIHJpZ2h0OiAyMCU7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIH1cblxuICAvLyBNb3ZlIHVwIHRoZSBpbmRpY2F0b3JzXG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgICBib3R0b206IDIwcHg7XG4gIH1cbn1cbiIsIi8vXG4vLyBVdGlsaXR5IGNsYXNzZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gRmxvYXRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5jbGVhcmZpeCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuLmNlbnRlci1ibG9jayB7XG4gIEBpbmNsdWRlIGNlbnRlci1ibG9jaztcbn1cbi5wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG4ucHVsbC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gVG9nZ2xpbmcgY29udGVudFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBOb3RlOiBEZXByZWNhdGVkIC5oaWRlIGluIGZhdm9yIG9mIC5oaWRkZW4gb3IgLnNyLW9ubHkgKGFzIGFwcHJvcHJpYXRlKSBpbiB2My4wLjFcbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLnNob3cge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi50ZXh0LWhpZGUge1xuICBAaW5jbHVkZSB0ZXh0LWhpZGU7XG59XG5cblxuLy8gSGlkZSBmcm9tIHNjcmVlbnJlYWRlcnMgYW5kIGJyb3dzZXJzXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5cbi8vIEZvciBBZmZpeCBwbHVnaW5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmFmZml4IHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuIiwiLy9cbi8vIFJlc3BvbnNpdmU6IFV0aWxpdHkgY2xhc3Nlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBJRTEwIGluIFdpbmRvd3MgKFBob25lKSA4XG4vL1xuLy8gU3VwcG9ydCBmb3IgcmVzcG9uc2l2ZSB2aWV3cyB2aWEgbWVkaWEgcXVlcmllcyBpcyBraW5kIG9mIGJvcmtlZCBpbiBJRTEwLCBmb3Jcbi8vIFN1cmZhY2UvZGVza3RvcCBpbiBzcGxpdCB2aWV3IGFuZCBmb3IgV2luZG93cyBQaG9uZSA4LiBUaGlzIHBhcnRpY3VsYXIgZml4XG4vLyBtdXN0IGJlIGFjY29tcGFuaWVkIGJ5IGEgc25pcHBldCBvZiBKYXZhU2NyaXB0IHRvIHNuaWZmIHRoZSB1c2VyIGFnZW50IGFuZFxuLy8gYXBwbHkgc29tZSBjb25kaXRpb25hbCBDU1MgdG8gKm9ubHkqIHRoZSBTdXJmYWNlL2Rlc2t0b3AgV2luZG93cyA4LiBMb29rIGF0XG4vLyBvdXIgR2V0dGluZyBTdGFydGVkIHBhZ2UgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhpcyBidWcuXG4vL1xuLy8gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgZm9sbG93aW5nOlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwNDk3XG4vLyBEb2NzOiBodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbS9nZXR0aW5nLXN0YXJ0ZWQvI3N1cHBvcnQtaWUxMC13aWR0aFxuLy8gU291cmNlOiBodHRwOi8vdGlta2FkbGVjLmNvbS8yMDEzLzAxL3dpbmRvd3MtcGhvbmUtOC1hbmQtZGV2aWNlLXdpZHRoL1xuLy8gU291cmNlOiBodHRwOi8vdGlta2FkbGVjLmNvbS8yMDEyLzEwL2llMTAtc25hcC1tb2RlLWFuZC1yZXNwb25zaXZlLWRlc2lnbi9cblxuQGF0LXJvb3Qge1xuICBALW1zLXZpZXdwb3J0IHtcbiAgICB3aWR0aDogZGV2aWNlLXdpZHRoO1xuICB9XG59XG5cblxuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vIE5vdGU6IERlcHJlY2F0ZWQgLnZpc2libGUteHMsIC52aXNpYmxlLXNtLCAudmlzaWJsZS1tZCwgYW5kIC52aXNpYmxlLWxnIGFzIG9mIHYzLjIuMFxuXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUteHMnKTtcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1zbScpO1xuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLW1kJyk7XG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcblxuLnZpc2libGUteHMtYmxvY2ssXG4udmlzaWJsZS14cy1pbmxpbmUsXG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1zbS1ibG9jayxcbi52aXNpYmxlLXNtLWlubGluZSxcbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayxcbi52aXNpYmxlLW1kLWJsb2NrLFxuLnZpc2libGUtbWQtaW5saW5lLFxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtbGctYmxvY2ssXG4udmlzaWJsZS1sZy1pbmxpbmUsXG4udmlzaWJsZS1sZy1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXhzJyk7XG59XG4udmlzaWJsZS14cy1ibG9jayB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXhzLWlubGluZSB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2sge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXNtJyk7XG59XG4udmlzaWJsZS1zbS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtc20taW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtc20taW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLW1kJyk7XG59XG4udmlzaWJsZS1tZC1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbWQtaW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1sZycpO1xufVxuLnZpc2libGUtbGctYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1sZy1pbmxpbmUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXhzJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXNtJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLW1kJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1sZycpO1xufVxuXG5cbi8vIFByaW50IHV0aWxpdGllc1xuLy9cbi8vIE1lZGlhIHF1ZXJpZXMgYXJlIHBsYWNlZCBvbiB0aGUgaW5zaWRlIHRvIGJlIG1peGluLWZyaWVuZGx5LlxuXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXByaW50IGFzIG9mIHYzLjIuMFxuXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtcHJpbnQnKTtcblxuQG1lZGlhIHByaW50IHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1wcmludCcpO1xufVxuLnZpc2libGUtcHJpbnQtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1wcmludC1pbmxpbmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQtaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50IHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tcHJpbnQnKTtcbn1cbiIsIi8qXG4gKiBHbG9iYWwgdmFyaWFibGVzXG4gKi9cbiRpbWFnZS10aGVtZS1wYXRoICAgICAgICAgICAgICAgIDogJy4uL2ltYWdlcy8nICFkZWZhdWx0O1xuJGltYWdlLXRoZW1lLXNraW4gICAgICAgICAgICAgICAgOiAnLi4vaW1hZ2VzLycgIWRlZmF1bHQ7XG4vLyBzdGFuZGFyZCBjb2xvcnNcbiR3aGl0ZVx0XHQgICAgOiAjRkZGICFkZWZhdWx0O1xuJGJsYWNrXHRcdFx0OiAjMDAwICFkZWZhdWx0O1xuJG5vY29sb3JcdFx0OiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRsaWdodC1ncmF5XHQ6ICNDQ0MgIWRlZmF1bHQ7IFxuJHR1cnF1b2lzZTogICAjNDczOTQxICFkZWZhdWx0O1xuXG5cbi8vIGNvbG9yIGZvciBkZWZhdWx0IHRoZW1lXG4kdGhlbWUtY29sb3IgICAgOiAjZjI1YjIyICFkZWZhdWx0OyAvKiBtYWluIGNvbG9yIHdoaWNoIHdpbGwgYmUgdXNlZCBmb3IgYWxsIG1haW4gYmxvY2sgc3R5bGVzLi4uICovXG4kYm9yZGVyLWNvbG9yXHQ6ICNlNGU3ZWEgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yLWJhc2U6I2UxZTFlMSAhZGVmYXVsdDsgXG5cbiR0aGVtZS1jb2xvci1zZWNvbmQgIFx0XHRcdCA6ICM0N2I4ZTAgIWRlZmF1bHQ7XG4kdGhlbWUtY29sb3ItZGVmYXVsdCAgICAgICAgICAgICA6ICNmZmNhMDAgIWRlZmF1bHQ7XG4kdGhlbWUtY29sb3ItaG92ZXIgICAgICAgICAgICAgICA6ICNmMjViMjIgIWRlZmF1bHQ7XG4kdGhlbWUtY29sb3Itc2Vjb25kYXJ5ICAgICAgICAgICA6ICMyNjJhMmUgIWRlZmF1bHQ7XG5cblxuLy8gVGhlbWUgTWFyZ2luLCBQYWRkaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kdGhlbWUtbWFyZ2luICAgIDogMzBweCAhZGVmYXVsdDtcbiR0aGVtZS1wYWRkaW5nICAgOiAzMHB4ICFkZWZhdWx0O1xuLy8gZm9udHNcbiRmb250LWZhbWlseS1zZWNvbmQgOiAgJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDsgXG4vKipcbiAqIEltcG9ydCBjb21wb25lbnQgdmFyaWFibGVzXG4gKi9cbkBpbXBvcnQgXCJ2YXJzL2Zvcm1cIjtcbkBpbXBvcnQgXCJ2YXJzL25hdlwiO1xuQGltcG9ydCBcInZhcnMvbGF5b3V0XCI7XG5AaW1wb3J0IFwidmFycy9lbGVtZW50c1wiO1xuQGltcG9ydCBcInZhcnMvd2lkZ2V0XCI7XG4iLCIvLyBTZWxlY3Rcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRzZWxlY3Qtc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IDMycHggIWRlZmF1bHQ7XG4kc2VsZWN0LWJvcmRlci1jb2xvciAgICAgICAgICAgICAgICAgICAgOiAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJHNlbGVjdC1wYWRkaW5nICAgICAgICAgICAgICAgICAgICAgICAgIDogNHB4IDZweCAhZGVmYXVsdDtcblxuLy8gSW5wdXRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRpbnB1dC1wYWRkaW5nICAgICAgICAgICAgICAgICAgICAgICAgICA6IDVweCA2cHggIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplICAgICAgICAgICAgICAgICAgICAgICAgOiAkZm9udC1zaXplLWJhc2UgLSAxO1xuXG4kaW5wdXQtZ3JvdXAtZm9ybS1iZyAgICAgICAgICAgICAgICAgICAgOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1mb3JtLW1hcmdpbiAgICAgICAgICAgICAgICA6IDAgMCA1cHggMCFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLXBhZGRpbmcgICAgICAgICAgICAgICAgICAgIDogNnB4IDExcHggIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtZm9udC1zaXplICAgICAgICAgICAgICAgICAgOiAxMnB4ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yICAgICAgICAgICAgICAgIDogI2ZmZiAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1oZWlnaHQgICAgICAgICAgICAgICAgICAgICA6IDQycHggIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb3JtLWJnICAgICAgICAgICAgICAgICAgICAgICAgICA6ICRncmF5LWRhcmtlciAhZGVmYXVsdDtcblxuLy8gQnV0dG9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kYnRuLXRyYW5zZm9ybSAgICAgICAgICAgICAgICAgICAgICAgICAgOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmctdmVydGljYWwgICAgICAgICAgICAgICAgICAgOiA1cHggIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmctaG9yaXpvbnRhbCAgICAgICAgICAgICAgICAgOiAyMHB4ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUgICAgICAgICAgICAgICAgICAgICAgICAgIDogMTJweCAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQgICAgICAgICAgICAgICAgICAgICAgICA6IDMwcHggIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMgICAgICAgICAgICAgICAgICAgICAgOiA0cHggIWRlZmF1bHQ7XG5cbiRidG4tbGctcGFkZGluZy12ZXJ0aWNhbCAgICAgICAgICAgICAgICA6IDE1cHggIWRlZmF1bHQ7XG4kYnRuLWxnLXBhZGRpbmctaG9yaXpvbnRhbCAgICAgICAgICAgICAgOiAzMHB4ICFkZWZhdWx0O1xuJGJ0bi1sZy1mb250LXNpemUgICAgICAgICAgICAgICAgICAgICAgIDogMThweCAhZGVmYXVsdDtcbiRidG4tbGctbGluZS1oZWlnaHQgICAgICAgICAgICAgICAgICAgICA6ICRsaW5lLWhlaWdodC1sYXJnZSAhZGVmYXVsdDtcbiRidG4tbGctYm9yZGVyLXJhZGl1cyAgICAgICAgICAgICAgICAgICA6IDVweCAhZGVmYXVsdDtcblxuJGJ0bi1zbS1wYWRkaW5nLXZlcnRpY2FsICAgICAgICAgICAgICAgIDogN3B4ICFkZWZhdWx0O1xuJGJ0bi1zbS1wYWRkaW5nLWhvcml6b250YWwgICAgICAgICAgICAgIDogMTJweCAhZGVmYXVsdDtcbiRidG4tc20tZm9udC1zaXplICAgICAgICAgICAgICAgICAgICAgICA6IDEwcHggIWRlZmF1bHQ7XG4kYnRuLXNtLWxpbmUtaGVpZ2h0ICAgICAgICAgICAgICAgICAgICAgOiAkbGluZS1oZWlnaHQtc21hbGwgIWRlZmF1bHQ7XG4kYnRuLXNtLWJvcmRlci1yYWRpdXMgICAgICAgICAgICAgICAgICAgOiAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuJGJ0bi14cy1wYWRkaW5nLXZlcnRpY2FsICAgICAgICAgICAgICAgIDogNHB4ICFkZWZhdWx0O1xuJGJ0bi14cy1wYWRkaW5nLWhvcml6b250YWwgICAgICAgICAgICAgIDogMTBweCAhZGVmYXVsdDtcbiRidG4teHMtZm9udC1zaXplICAgICAgICAgICAgICAgICAgICAgICA6IDEwcHggIWRlZmF1bHQ7XG4kYnRuLXhzLWxpbmUtaGVpZ2h0ICAgICAgICAgICAgICAgICAgICAgOiAkbGluZS1oZWlnaHQtc21hbGwgIWRlZmF1bHQ7XG4kYnRuLXhzLWJvcmRlci1yYWRpdXMgICAgICAgICAgICAgICAgICAgOiAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuJGJ0bi1vdXRsaW5lLWNvbG9yICAgICAgICAgICAgICAgICAgICAgIDogJHdoaXRlICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWhvdmVyLWNvbG9yICAgICAgICAgICAgICAgIDogJHdoaXRlICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWhlaWdodCAgICAgICAgICAgICAgICAgICAgIDogMzZweCAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1wYWRkaW5nIFx0XHRcdDogM3B4IDE1cHggIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtYmcgICAgICAgICAgICAgICAgICAgICAgICAgOiAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtaG92ZXItYmcgICAgICAgICAgICAgICAgICAgOiR0aGVtZS1jb2xvci1zZWNvbmQgIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtYm9yZGVyICAgICAgICAgICAgICAgICAgICAgOiAwICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWJvcmRlci1ob3ZlciAgICAgICAgICAgICAgIDogMCAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1mb250LXNpemUgICAgICAgICAgICAgICAgICA6IDEycHggIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtbGluZS1oZWlnaHQgICAgICAgICAgICAgICAgOiAyOHB4ICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWJvcmRlci1yYWRpdXMgICAgICAgICAgICAgIDogMCAhZGVmYXVsdDtcblxuJGJ0bi1vdXRsaW5lLXNtLXBhZGRpbmctdmVydGljYWwgICAgICAgIDogOHB4ICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLXNtLXBhZGRpbmctaG9yaXpvbnRhbCAgICAgIDogMThweCAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1zbS1mb250LXNpemUgICAgICAgICAgICAgICA6IDExcHggIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtc20tbGluZS1oZWlnaHQgICAgICAgICAgICAgOiAxLjMgIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtc20tYm9yZGVyLXJhZGl1cyAgICAgICAgICAgOiAzcHggIWRlZmF1bHQ7XG5cbiRidG4tb3V0bGluZS14cy1wYWRkaW5nLXZlcnRpY2FsICAgICAgICA6IDVweCAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS14cy1wYWRkaW5nLWhvcml6b250YWwgICAgICA6IDE1cHggIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUteHMtZm9udC1zaXplICAgICAgICAgICAgICAgOiAxMXB4ICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLXhzLWxpbmUtaGVpZ2h0ICAgICAgICAgICAgIDogMS4yICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLXhzLWJvcmRlci1yYWRpdXMgICAgICAgICAgIDogM3B4ICFkZWZhdWx0O1xuXG4kYnRuLW91dGxpbmUtbGctcGFkZGluZy12ZXJ0aWNhbCAgICAgICAgOiAyMXB4ICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWxnLXBhZGRpbmctaG9yaXpvbnRhbCAgICAgIDogNDhweCAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1sZy1mb250LXNpemUgICAgICAgICAgICAgICA6IDE0cHggIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtbGctbGluZS1oZWlnaHQgICAgICAgICAgICAgOiAzICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWxnLWJvcmRlci1yYWRpdXMgICAgICAgICAgIDogNHB4ICFkZWZhdWx0O1xuXG4kYnRuLWludmVyc2UtY29sb3IgICAgICAgICAgICAgICAgICAgICAgOiAkYmxhY2sgIWRlZmF1bHQ7XG4kYnRuLWludmVyc2UtaG92ZXItY29sb3IgICAgICAgICAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kYnRuLWludmVyc2UtYmcgICAgICAgICAgICAgICAgICAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kYnRuLWludmVyc2UtaG92ZXItYmcgICAgICAgICAgICAgICAgICAgOiAkYmxhY2sgIWRlZmF1bHQ7XG4kYnRuLWludmVyc2UtYm9yZGVyLWNvbG9yICAgICAgICAgICAgICAgOiAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGJ0bi1pbnZlcnNlLWJvcmRlci1ob3Zlci1jb2xvciAgICAgICAgIDogJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRidG4taW52ZXJzZS1mb250LXNpemUgICAgICAgICAgICAgICAgICA6IDEycHggIWRlZmF1bHQ7XG4kYnRuLWludmVyc2UtcGFkZGluZyAgICAgICAgICAgICAgICAgICAgOiAxMHB4IDE1cHggIWRlZmF1bHQ7XG5cbiRidG4tb3V0bGluZS1pbnZlcnNlLWNvbG9yICAgICAgICAgICAgICA6ICR0aGVtZS1jb2xvci1zZWNvbmQgIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtaW52ZXJzZS1iZyAgICAgICAgICAgICAgICAgOiAkYmxhY2sgIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtaW52ZXJzZS1ib3JkZXItY29sb3IgICAgICAgOiAxcHggc29saWQgJGJ0bi1vdXRsaW5lLWludmVyc2UtYmcgIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtaW52ZXJzZS1ob3Zlci1iZyAgICAgICAgICAgOiAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtaW52ZXJzZS1ob3Zlci1jb2xvciAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtaW52ZXJzZS1ib3JkZXItaG92ZXItY29sb3IgOiAxcHggc29saWQgJHRoZW1lLWNvbG9yLXNlY29uZCAhZGVmYXVsdDtcblxuLy8gU2VhcmNoXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kc2VhcmNoLWJnICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kc2VhcmNoLWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgOiAxMnB4ICFkZWZhdWx0O1xuJHNlYXJjaC1wYWRkaW5nICAgICAgICAgICAgICAgICAgICAgICAgIDogMTVweCAhZGVmYXVsdDtcbiRzZWFyY2gtd2lkdGggICAgICAgICAgICAgICAgICAgICAgICAgICA6IGF1dG8gIWRlZmF1bHQ7XG4kc2VhcmNoLWJ1dHRvbi1iZyAgICAgICAgICAgICAgICAgICAgICAgOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRzZWFyY2gtbWFpbi1idXR0b24tYmcgICAgICAgICAgICAgICAgICA6ICR3aGl0ZSAhZGVmYXVsdDtcbiRzZWFyY2gtbWFpbi1idXR0b24tYm9yZGVyICAgICAgICAgICAgICA6ICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kc2VhcmNoLW1haW4tYnV0dG9uLWNvbG9yICAgICAgICAgICAgICAgOiAkZ3JheS1kYXJrZXIgIWRlZmF1bHQ7XG4kc2VhcmNoLWJ1dHRvbi1ib3JkZXIgICAgICAgICAgICAgICAgICAgOiAwcHggIWRlZmF1bHQ7XG4kc2VhcmNoLWJ1dHRvbi1ob3Zlci1iZyAgICAgICAgICAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kc2VhcmNoLWJ1dHRvbi1jb2xvciAgICAgICAgICAgICAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kc2VhcmNoLWJ1dHRvbi1zaXplICAgICAgICAgICAgICAgICAgICAgOiAzNnB4ICFkZWZhdWx0O1xuJHNlYXJjaC1idXR0b24taG92ZXItY29sb3IgICAgICAgICAgICAgIDogJGdyYXktZGFya2VyICFkZWZhdWx0O1xuJHNlYXJjaC1yYWRpdXMgICAgICAgICAgICAgICAgICAgICAgICAgIDogM3B4ICFkZWZhdWx0O1xuJHNlYXJjaC1oZWlnaHQgICAgICAgICAgICAgICAgICAgICAgICAgIDogNTBweCAhZGVmYXVsdDtcbiRzZWFyY2gtYm9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICA6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHNlYXJjaC1ob3Zlci1ib3JkZXIgICAgICAgICAgICAgICAgICAgIDogJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRzZWFyY2gtYm9yZGVyLXJhZGl1cyAgICAgICAgICAgICAgICAgICA6IDRweCAhZGVmYXVsdDtcbiRzZWFyY2gtY2F0ZWdvcmllcy1ib3JkZXItcmFkaXVzICAgICAgICA6IDRweCAhaW1wb3J0YW50O1xuIiwiLy8gTWFpbiBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kbWVnYW1lbnUtYmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLW1lZ2EtYm9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItbWVnYS1saW5lLWhlaWdodCAgICAgICAgICAgICAgICAgICA6IDc1cHggIWRlZmF1bHQ7XG5cbiRuYXZiYXItbWVnYS1za2luMi1iZyAgICAgICAgICAgICAgICAgICAgICA6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1tZWdhLXNraW4yLWJvcmRlciAgICAgICAgICAgICAgICAgIDogJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbWVnYS1za2luMi1saW5lLWhlaWdodCAgICAgICAgICAgICA6IDMwcHggIWRlZmF1bHQ7IFxuXG4kbmF2YmFyLXRleHQtdHJhbnNmb3JtICAgICAgICAgICAgICAgICAgICAgOiBub25lICFkZWZhdWx0O1xuXG4kbmF2YmFyLWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgICAgOiAxNHB4ICFkZWZhdWx0O1xuJG5hdmJhci1mb250LXdlaWdodCAgICAgICAgICAgICAgICAgICAgICAgIDogNTAwICFkZWZhdWx0O1xuJG5hdmJhci1mb250LWZhbWlseSAgICAgICAgICAgICAgICAgICAgICAgIDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRuYXZiYXItbGluay1tYXJnaW4gICAgICAgICAgICAgICAgICAgICAgICA6IDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmstcGFkZGluZyAgICAgICAgICAgICAgICAgICAgICAgOiAwIDE1cHggIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmstY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgOiAkZ3JheS1kYXJrZXIgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmstaG92ZXItY29sb3IgICAgICAgICAgICAgICAgICAgOiAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmstaG92ZXItYmcgICAgICAgICAgICAgICAgICAgICAgOiAkbm9jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1hY3RpdmUtY29sb3IgICAgICAgICAgICAgICAgICA6ICR0aGVtZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1hY3RpdmUtYmcgICAgICAgICAgICAgICAgICAgICA6ICRub2NvbG9yICFkZWZhdWx0O1xuXG4kbmF2YmFyLXdpZGdldC10aXRsZS1jb2xvciAgICAgICAgICAgICAgICAgOiAkYmxhY2sgIWRlZmF1bHQ7XG4kbmF2YmFyLXdpZGdldC10aXRsZS1tYXJnaW4gICAgICAgICAgICAgICAgOiAwIDAgMTBweCAwICFkZWZhdWx0O1xuJG5hdmJhci13aWRnZXQtdGl0bGUtZm9udC1zaXplICAgICAgICAgICAgIDogMTRweCAhZGVmYXVsdDtcbiRuYXZiYXItd2lkZ2V0LXRpdGxlLWZvbnQtd2VpZ2h0XHRcdCAgICAgICA6IDkwMCAhZGVmYXVsdDtcblxuJG5hdmJhci1kcm9wZG93bi1wYWRkaW5nICAgICAgICAgICAgICAgICAgIDogMTBweCAyMHB4IDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLWJnICAgICAgICAgICAgICAgICAgICAgICAgOiAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1zaXplICAgICAgICAgICAgICAgICAgICAgIDogMjgwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLWxpbmstY29sb3IgICAgICAgICAgICAgICAgOiAjMDAwICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yICAgICAgICAgIDogJHRoZW1lLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1saW5rLWhvdmVyLWJnICAgICAgICAgICAgIDogJG5vY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLWxpbmstdHJhbnNmb3JtICAgICAgICAgICAgOiBub25lICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1saW5rLWZvbnQtc2l6ZSAgICAgICAgICAgIDogMTRweCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbGluay1mb250LXdlaWdodCAgICAgICAgICA6IDMwMCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbGluay1ib3JkZXItY29sb3IgICAgICAgICA6ICRub2NvbG9yICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpbmstc21hbGwtcGFkZGluZyAgICAgICAgICAgICAgICAgOiAxOHB4IDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmstbGFyZ2UtcGFkZGluZyAgICAgICAgICAgICAgICAgOiA0NnB4IDAgNDZweCAhZGVmYXVsdDsgIFxuXG4vLyBWZXJ0aWNhbCBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kbmF2YmFyLXZlcnRpY2FsbWVudS1jb2xvcjogICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbmF2YmFyLXZlcnRpY2FsbWVudS1saW5rLXBhZGRpbmc6IFx0XHRcdDEzcHggMjBweCFkZWZhdWx0O1xuJG5hdmJhci12ZXJ0aWNhbG1lbnUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICNlZWVlZWUgIWRlZmF1bHQ7XG4vLyBUb3AgTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJG5hdmJhci1tZW51dG9wLWZvbnQtd2VpZ2h0XHRcdFx0XHQgICAgOiA4MDAgIWRlZmF1bHQ7XG4kbmF2YmFyLW1lbnV0b3AtZm9udC1zaXplXHRcdFx0XHQgICAgICAgOiAxMnB4ICFkZWZhdWx0O1xuJG5hdmJhci1tZW51dG9wLXBhZGRpbmctdG9wXHRcdFx0XHQgICAgOiAyMnB4ICFkZWZhdWx0O1xuJG5hdmJhci1tZW51dG9wLXBhZGRpbmctYm90dG9tXHRcdFx0ICAgIDogMThweCAhZGVmYXVsdDtcbiRuYXZiYXItbWVudXRvcC1jb2xvclx0XHRcdFx0XHQgICAgICAgOiAjODI4MjgyICFkZWZhdWx0O1xuJG5hdmJhci1tZW51dG9wLW1hcmdpblx0XHRcdFx0XHQgICAgICAgOiAwIDEwcHggIWRlZmF1bHQ7XG5cbi8vIE9mZi1DYW52YXMgTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJG5hdmJhci1vZmZjYW52YXMtd2lkdGggICAgICAgICAgICAgICAgICAgIDogNjklICFkZWZhdWx0O1xuJG5hdmJhci1vZmZjYW52YXMtYmctY2xvc2UgICAgICAgICAgICAgICAgIDogJG5vY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1jb2xvciAgICAgICAgICAgICAgICAgICAgOiAkYmxhY2sgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1iZyAgICAgICAgICAgICAgICAgICAgICAgOiAjZjVmNWY1ICAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLWJvcmRlciAgICAgICAgICAgICAgICAgICA6IHJnYmEoMCwgMCwgMCwgMC4xKSAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kbmF2YmFyLW9mZmNhbnZhcy1saW5rLWNvbG9yICAgICAgICAgICAgICAgOiAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLWxpbmstaG92ZXItY29sb3IgICAgICAgICA6ICMwMjgxQUIgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1saW5rLWhvdmVyLWJnICAgICAgICAgICAgOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLWxpbmstYWN0aXZlLWNvbG9yICAgICAgICA6ICRuYXZiYXItb2ZmY2FudmFzLWxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1saW5rLWFjdGl2ZS1iZyAgICAgICAgICAgOiBkYXJrZW4oJG5hdmJhci1vZmZjYW52YXMtYmcsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1saW5rLWRpc2FibGVkLWNvbG9yICAgICAgOiAjNDQ0ICFkZWZhdWx0O1xuJG5hdmJhci1vZmZjYW52YXMtbGluay1kaXNhYmxlZC1iZyAgICAgICAgIDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1saW5rLWZvbnQtc2l6ZSAgICAgICAgICAgOiAxNHB4ICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgYnJhbmQgbGFiZWxcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRuYXZiYXItb2ZmY2FudmFzLWJyYW5kLWNvbG9yICAgICAgICAgICAgICA6ICRuYXZiYXItb2ZmY2FudmFzLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1icmFuZC1ob3Zlci1jb2xvciAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1icmFuZC1ob3Zlci1iZyAgICAgICAgICAgOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIHNlYXJjaFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJG5hdmJhci1vZmZjYW52YXMtc2VhcmNoLWJnICAgICAgICAgICAgICAgIDogbGlnaHRlbigkbmF2YmFyLW9mZmNhbnZhcy1iZywgMjUlKSAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLXNlYXJjaC1iZy1mb2N1cyAgICAgICAgICA6ICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLXNlYXJjaC1ib3JkZXIgICAgICAgICAgICA6ICRuYXZiYXItb2ZmY2FudmFzLWJnICFkZWZhdWx0O1xuJG5hdmJhci1vZmZjYW52YXMtc2VhcmNoLXBsYWNlaG9sZGVyLWNvbG9yIDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1zZWFyY2gtaW5wdXQtYmcgICAgICAgICAgOiB0cmFuc3BhcmVudGl6ZSgkYmxhY2ssIC4xMCkgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciB0b2dnbGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRuYXZiYXItb2ZmY2FudmFzLXRvZ2dsZS1ob3Zlci1iZyAgICAgICAgICA6ICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy10b2dnbGUtaWNvbi1iYXItYmcgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy10b2dnbGUtYm9yZGVyLWNvbG9yICAgICAgOiAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG4kbmF2YmFyLW9mZmNhbnZhcy1idXR0b24tcG9zaXRpb24gICAgICAgICAgOiAtMTcycHggIWRlZmF1bHQ7IiwiXG4vLyBUb3BiYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiR0b3BiYXItYmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogIzNiM2IzYiAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG4kdG9wYmFyLWxpbmstaG92ZXItY29sb3IgICAgICAgICAgICAgICAgICAgICAgICA6ICR0aGVtZS1jb2xvciAhZGVmYXVsdDtcbiR0b3BiYXItY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG4kdG9wYmFyLWJvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IDAgIWRlZmF1bHQ7XG4kdG9wYmFyLWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IDEycHggIWRlZmF1bHQ7XG4kdG9wYmFyLWljb24tY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICR0aGVtZS1jb2xvci1kZWZhdWx0ICFkZWZhdWx0O1xuJHRvcGJhci1pY29uLWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgICAgOiAxMHB4ICFkZWZhdWx0O1xuJHRvcGJhci10ZXh0LXRyYW5zZm9ybSAgICAgICAgICAgICAgICAgICAgICAgICAgOiBub25lICFkZWZhdWx0O1xuJHRvcGJhci1wYWRkaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgIFx0XHQ6IDEycHggMCAhZGVmYXVsdDtcblxuLy8vLyBIZWFkZXJcblxuJGhlYWRlci1tYWluLXBhZGRpbmcgOiAxNXB4IDAgIWRlZmF1bHQ7IFxuXG5cblxuJG1hc3Nib3R0b20taGVhZC1iZ1x0XHQgOiAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG4kbWFzc2JvdHRvbS1oZWFkLXBhZGRpbmcgOiA2cHggOXB4ICFkZWZhdWx0O1xuJG1hc3Nib3R0b20taGVhZC1jb2xvciAgIDogJHRoZW1lLWNvbG9yICFkZWZhdWx0O1xuJG1hc3Nib3R0b20taGVhZC1ib3JkZXItY29sb3I6IGRhcmtlbigkbWFzc2JvdHRvbS1oZWFkLWJnLDQlKSFkZWZhdWx0OyBcblxuLyoqXG4gKlxuICovXG5cbiAkbWFpbm1lbnUtYmc6ICMyMjIyMjIgIWRlZmF1bHQ7XG5cblxuXG5cbi8vIEZvb3RlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAgXG4kZm9vdGVyLWJnICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICRncmF5LWRhcmtlciAhZGVmYXVsdDtcbiRmb290ZXItY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG4kZm9vdGVyLXRyYW5zZm9ybSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IG5vbmUgIWRlZmF1bHQ7XG4kZm9vdGVyLWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IDE0cHggIWRlZmF1bHQ7IFxuJGZvb3Rlci1ib3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBub25lICFkZWZhdWx0O1xuJGZvb3Rlci1wYWRkaW5nLXRvcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiA1MHB4ICFkZWZhdWx0O1xuJGZvb3Rlci1wYWRkaW5nLWJvdHRvbSAgICAgICAgICAgICAgICAgICAgICAgICAgOiA1MHB4ICFkZWZhdWx0O1xuJGZvb3Rlci10ZXh0LWhpZ2h0bGlnaHQgICAgICAgICAgICAgICAgICAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kZm9vdGVyLWxpbmstZm9udC1zaXplXHRcdFx0XHRcdFx0XHQ6IDE0cHggIWRlZmF1bHQ7XG4kZm9vdGVyLWNvbHVtbi1tYXJnaW4gICAgICAgICAgICAgICAgICAgICAgICAgICA6IDAgMCAyNXB4IDAgIWRlZmF1bHQ7XG4kZm9vdGVyLWxpbmstY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICM5OTk5OTkgIWRlZmF1bHQ7XG4kZm9vdGVyLWxpbmstaG92ZXItY29sb3IgICAgICAgICAgICAgICAgICAgICAgICA6ICR0aGVtZS1jb2xvciAhZGVmYXVsdDtcbiRmb290ZXItaWNvbi1jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogZGFya2VuKCR3aGl0ZSwgMjAlKSAhZGVmYXVsdDtcbiRmb290ZXItaWNvbi1mb250LXNpemUgICAgICAgICAgICAgICAgICAgICAgICAgIDogMTNweCAhZGVmYXVsdDtcbiRmb290ZXItaGVhZGluZy1mb250LXNpemUgICAgICAgICAgICAgICAgICAgICAgIDogMThweCAhZGVmYXVsdDtcbiRmb290ZXItaGVhZGluZy1jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJGJsYWNrICFkZWZhdWx0O1xuJGZvb3Rlci1oZWFkaW5nLW1hcmdpbiAgICAgICAgICAgICAgICAgICAgICAgICAgOiAwIDAgMjVweCAhZGVmYXVsdDtcbiRmb290ZXItaGVhZGluZy1wYWRkaW5nICAgICAgICAgICAgICAgICAgICAgICAgIDogMCAwIDIwcHggIWRlZmF1bHQ7XG4kZm9vdGVyLWhlYWRpbmctZGlzcGxheSAgICAgICAgICAgICAgICAgICAgICAgICA6IG5vbmUgIWRlZmF1bHQ7XG4kZm9vdGVyLWhlYWRpbmctdHJhbnNmb3JtICAgICAgICAgICAgICAgICAgICAgICA6IG5vbmUgIWRlZmF1bHQ7XG4kZm9vdGVyLWxpc3QtdHJhbnNmb3JtICAgICAgICAgICAgICAgICAgICAgICAgICA6IG5vbmUgIWRlZmF1bHQ7XG4kZm9vdGVyLWxpc3QtZm9udC1zaXplICAgICAgICAgICAgICAgICAgICAgICAgICA6IDE0cHggIWRlZmF1bHQ7IFxuJGZvb3Rlci1saXN0LW1hcmdpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAwIDAgMTBweCAhZGVmYXVsdDtcbiRmb290ZXItbGlzdC1saWdodC1oZWlnaHQgICAgICAgICAgICAgICAgICAgICAgIDogMi41ICFkZWZhdWx0OyAgXG4kZm9vdGVyLWhlYWRpbmctZndlaWdodCAgICAgICAgICAgICAgICAgICAgICAgICA6IDQwMCAhZGVmYXVsdDtcbiRmb290ZXItaGVhZGluZy1mZmFtaWx5ICAgICAgICAgICAgICAgICAgICAgICAgIDogJGZvbnQtZmFtaWx5LXNlY29uZCAhZGVmYXVsdDtcblxuJGZvb3Rlci1uZXdzbGV0dGVyLXBhZGRpbmcgICAgICAgICAgICAgICAgICAgICAgOiAyNXB4ICFkZWZhdWx0O1xuJGZvb3Rlci1uZXdzbGV0dGVyLWJnICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG4kZm9vdGVyLW5ld3NsZXR0ZXItY29sb3IgICAgICAgICAgICAgICAgICAgICAgICA6ICM0ODQ4NDggIWRlZmF1bHQ7XG4kZm9vdGVyLW5ld3NsZXR0ZXItaGVhZGluZy1mb250LXNpemUgICAgICAgICAgICA6IDE4cHggIWRlZmF1bHQ7XG5cbiRmb290ZXItdG9wLWJnIFx0XHRcdFx0XHRcdFx0XHRcdDogJHdoaXRlICFkZWZhdWx0O1xuJGZvb3Rlci10b3AtY29sb3IgIFx0XHRcdFx0XHRcdFx0XHQ6ICM5OTk5OTkgIWRlZmF1bHQ7XG4kZm9vdGVyLXRvcC1wYWRkaW5nLXRvcFx0XHRcdFx0XHRcdFx0OiAxMnB4ICFkZWZhdWx0OyBcbiRmb290ZXItdG9wLXBhZGRpbmctYm90dG9tXHRcdFx0XHRcdFx0OiAxMnB4ICFkZWZhdWx0O1xuJGZvb3Rlci10b3AtZm9udC1zaXplXHRcdFx0XHRcdFx0XHQ6IDEycHggIWRlZmF1bHQ7XG4kZm9vdGVyLXRvcC1sZXR0ZXItc3BhY2luZ1x0XHRcdFx0XHRcdDogMnB4ICFkZWZhdWx0O1xuJGZvb3Rlci10b3AtYm9yZGVyLWNvbG9yIFx0XHRcdFx0XHRcdDogcmdiYSgwLCAwLCAwLCAwLjEpO1xuLy8gQ29weXJpZ2h0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAvLyBDb3B5cmlnaHRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRjb3B5cmlnaHQtYmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogIzA5MTcyOSAhZGVmYXVsdDtcbiRjb3B5cmlnaHQtY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogIzk5OSAhZGVmYXVsdDtcbiRjb3B5cmlnaHQtbGluay1jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJHRoZW1lLWNvbG9yICFkZWZhdWx0O1xuJGNvcHlyaWdodC1wYWRkaW5nLXRvcCAgICAgICAgICAgICAgICAgICAgICAgICAgOiA0MHB4ICFkZWZhdWx0O1xuJGNvcHlyaWdodC1wYWRkaW5nLWJvdHRvbSAgICAgICAgICAgICAgICAgICAgICAgOiA0MHB4ICFkZWZhdWx0O1xuJGNvcHlyaWdodC1mb250LXNpemVcdFx0XHRcdFx0XHRcdCAgICAgICAgIDogMTRweCAhZGVmYXVsdDsgXG4kY29weXJpZ2h0LWZvbnQtd2VpZ2h0XHRcdFx0XHRcdFx0XHQgICAgICA6IDQwMCAhZGVmYXVsdDtcblxuJGRlbC1mb250LXNpemVcdFx0XHRcdFx0XHRcdFx0XHQgICAgICAgICA6IDEycHggIWRlZmF1bHQ7XG4kZGVsLWNvbG9yXHRcdFx0XHRcdFx0XHRcdFx0XHQgICAgICAgICA6ICM5OTk5OTk7IiwiJGJvLXBhcmFsbGF4LWJlZm9yZS1iYWNrZ3JvdW5kIDogdXJsKFwiaHR0cDovL3ZlbnVzZGVtby5jb20vd3BvcGFsL21peC9tb2JpbGUvd3AtY29udGVudC91cGxvYWRzLzIwMTQvMTEvYmctZm9vdGVyLWNkLmpwZ1wiKSFkZWZhdWx0O1xuXG4kZWxlbWVudC1jb2xvci1wcmltYXJ5ICAgICAgICA6ICR0aGVtZS1jb2xvciAhZGVmYXVsdDtcbiRibHVlOiAgICAgICAgICAgICAgICAgIFx0XHQjODlkMzA5ICFkZWZhdWx0O1xuJHJlZDogICAgICAgICAgICAgICAgICBcdFx0ICAgICNmODQxNDMgIWRlZmF1bHQ7ICAvLyBTa2luIHNreVxuIC8qIC0tLSBTQ1NTIEZvciBBY2NvcmRpb24gLS0tICovXG4kYm8tYWNjb3JkaW9uLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7IFxuJGJvLWFjY29yZGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuXG4kYm8tYWNjb3JkaW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2VlZSAhZGVmYXVsdDtcblxuIC8qIC0tLSBTQ1NTIEZvciBCcmVhZGNydW1iIC0tLSAqL1xuXG4gLyogLS0tIFNDU1MgRm9yIEJ1dHRvbnMgLS0tICovXG5cbiAvKiAtLS0gU0NTUyBGb3IgQ2FsbC10by1hY3Rpb24gLS0tICovJHdoaXRlIDogI0ZGRkZGRiAhZGVmYXVsdDtcblxuIC8qIC0tLSBTQ1NTIEZvciBDb250ZW50LXNsaWRlciAtLS0gKi8vKiAgKi9cblxuJGJvLWNhcm91c2VsLW1kLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNDRweCAhZGVmYXVsdDtcbiRiby1jYXJvdXNlbC1tZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQ0cHggIWRlZmF1bHQ7XG5cbiRiby1jYXJvdXNlbC1zbS13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDM0cHggIWRlZmF1bHQ7XG4kYm8tY2Fyb3VzZWwtc20taGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAzNHB4ICFkZWZhdWx0O1xuXG4kYm8tY2Fyb3VzZWwteHMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyOHB4ICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLXhzLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgMjhweCAhZGVmYXVsdDtcbiBcbi8qIGNhcm91c2VsLWNvbnRyb2xzLXYxICovXG4kYm8tY2Fyb3VzZWwtY29udHJvbHMtdjEtY29sb3I6ICAgICAgICAgICAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLWNvbnRyb2xzLXYxLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgZGFya2VuKCRiby1jYXJvdXNlbC1jb250cm9scy12MS1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbiRiby1jYXJvdXNlbC1jb250cm9scy12MS1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgMC41KSAhZGVmYXVsdDtcblxuLyogY2Fyb3VzZWwtY29udHJvbHMtdjIgKi9cbiRiby1jYXJvdXNlbC1jb250cm9scy12Mi1jb2xvcjogICAgICAgICAgICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG4kYm8tY2Fyb3VzZWwtY29udHJvbHMtdjItaG92ZXItY29sb3I6ICAgICAgICAgICAgICBkYXJrZW4oJGJvLWNhcm91c2VsLWNvbnRyb2xzLXYyLWNvbG9yLCAyNSUpICFkZWZhdWx0O1xuXG4vKiBjYXJvdXNlbC1jb250cm9scy12MyAqL1xuJGJvLWNhcm91c2VsLWNvbnRyb2xzLXYzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLWNvbnRyb2xzLXYzLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRiby1jYXJvdXNlbC1jb250cm9scy12My1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAgIWRlZmF1bHQ7XG4kYm8tY2Fyb3VzZWwtY29udHJvbHMtdjMtaG92ZXItYmc6ICAgICAgICAgICAgICAgICAkZWxlbWVudC1jb2xvci1wcmltYXJ5ICFkZWZhdWx0O1xuXG5cblxuLyogTmF2aWdhdGlvbiBTdHlsZXMgKi9cblxuLyogY2Fyb3VzZWwtaW5kaWNhdG9ycy12MSAqL1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjEtYmc6ICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRiby1jYXJvdXNlbC1pbmRpY2F0b3JzLXYxLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuXG4vKiBjYXJvdXNlbC1pbmRpY2F0b3JzLXYyICovXG4kYm8tY2Fyb3VzZWwtaW5kaWNhdG9ycy12Mi1iZzogICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjItaG92ZXItYmc6ICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG5cbi8qIGNhcm91c2VsLWluZGljYXRvcnMtdjMgKi9cbiRiby1jYXJvdXNlbC1pbmRpY2F0b3JzLXYzLWJnOiAgICAgICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjMtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG5cbi8qIGNhcm91c2VsLWluZGljYXRvcnMtdjQgKi9cbiRiby1jYXJvdXNlbC1pbmRpY2F0b3JzLXY0LWJnOiAgICAgICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjQtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG5cblxuLyogY2Fyb3VzZWwtaW5kaWNhdG9ycy12NSAqL1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjUtYmc6ICAgICAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYm8tY2Fyb3VzZWwtaW5kaWNhdG9ycy12NS1ob3Zlci1iZzogICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcblxuLyogY2Fyb3VzZWwtaW5kaWNhdG9ycy12NiAqL1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjYtYmc6ICAgICAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYm8tY2Fyb3VzZWwtaW5kaWNhdG9ycy12Ni1ob3Zlci1iZzogICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcblxuIC8qIC0tLSBTQ1NTIEZvciBDb3VudGVycyAtLS0gKi8kYm8tY291bnRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnk7XG4kYm8tY291bnRlci1mb250LXdlaWdodDogICAgICAgICAgICAgODAwO1xuJGJvLWNvdW50ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgIDM2cHg7XG5cbiRiby1jb3VudGVyLWljb24tZm9udC1zaXplOiAgICAgICAgICA0NnB4O1xuJGJvLWNvdW50ZXItaGVhZGluZy1mb250LXdlaWdodDogICAgIDcwMDtcblxuIC8qIC0tLSBTQ1NTIEZvciBIZWFkaW5nIC0tLSAqLyRiby1oZWFkaW5nLWNvbG9yOiAgICAgICAgICAgICRicmFuZC1zdWNjZXNzO1xuXG4gLyogLS0tIFNDU1MgRm9yIEljb24tYm94IC0tLSAqL1xuXG4gLyogLS0tIFNDU1MgRm9yIEludGVyYWN0aXZlLWJhbm5lciAtLS0gKi9cblxuIC8qIC0tLSBTQ1NTIEZvciBMYXRlc3QtcG9zdHMgLS0tICovLyogbGF0ZXN0IHBvc3RzICovXG4kYm8tbGF0ZXN0LXBvc3RzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAjNjk2OTY5O1xuJGJvLWxhdGVzdC1wb3N0cy1hLWNvbG9yOiAgICAgICAgICAgICAgICAgIzAwMDtcbiRiby1sYXRlc3QtcG9zdHMtYS1ob3Zlci1jb2xvcjogICAgICAgICAgIHJlZDtcbiRiby1sYXRlc3QtcG9zdHMtZm9udC1zaXplOiAgICAgICAgICAgICAgIDE0cHg7XG4kYm8tbGF0ZXN0LXBvc3RzLXRpdGxlLWZvbnQtc2l6ZTogICAgICAgICAxOHB4O1xuXG4kYm8tbGF0ZXN0LXBvc3RzLXByb2ZpbGUtZm9udC1zaXplOiAgICAgICAxM3B4O1xuJGJvLWxhdGVzdC1wb3N0cy1wcm9maWxlLWNvbG9yOiAgICAgICAgICAgIzY5Njk2OTtcblxuIC8qIC0tLSBTQ1NTIEZvciBMaXN0IC0tLSAqLy8qIHZhcmlhYmxlcyBmb3IgbGlzdCAqL1xuJGJvLWxpc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIzY2NiAhZGVmYXVsdDsgXG4kYm8tbGlzdC1hLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkYm8tbGlzdC1jb2xvciAhZGVmYXVsdDsgXG4kYm8tbGlzdC1hLWNvbG9yLWhvdmVyOiAgICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAgIWRlZmF1bHQ7XG5cbi8qIHZhcmlhYmxlcyBmb3IgbGlzdCBsaWdodCAqL1xuXG4kYm8tbGlzdC1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjRkZGRkZGICFkZWZhdWx0OyBcbiRiby1saXN0LWxpZ2h0LWEtY29sb3I6ICAgICAgICAgICAgICAgICAgICRiby1saXN0LWxpZ2h0LWNvbG9yICFkZWZhdWx0OyBcbiRiby1saXN0LWxpZ2h0LWEtY29sb3ItaG92ZXI6ICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICAhZGVmYXVsdDtcblxuXG4gLyogLS0tIFNDU1MgRm9yIE1lc3NhZ2UgLS0tICovXG5cbiAvKiAtLS0gU0NTUyBGb3IgTmV3c2xldHRlciAtLS0gKi8kbmV3c2xldHRlci12Mi1iZyAgICAgICAgICAgIDogbGlnaHRlbigkZ3JheS1saWdodCwgNTAlKSAhZGVmYXVsdDtcbiRuZXdzbGV0dGVyLXYzLWJnICAgICAgICAgICAgOiAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG5cbiAvKiAtLS0gU0NTUyBGb3IgUGllY2hhcnQgLS0tICovXG5cbiAvKiAtLS0gU0NTUyBGb3IgUHJpY2luZyAtLS0gKi9cblxuIC8qIC0tLSBTQ1NTIEZvciBQcm9jZXNzLXN0ZXBzIC0tLSAqLy8qIHByb2Nlc3Mtc3RlcHMgKi9cbiRiby1wcm9jZXNzLXN0ZXBzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjMDAwO1xuJGJvLXByb2Nlc3Mtc3RlcHMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICMwMDA7XG5cbiRiby1wcm9jZXNzLXN0ZXBzLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcztcbiRiby1wcm9jZXNzLXN0ZXBzLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcztcblxuIC8qIC0tLSBTQ1NTIEZvciBTZXJ2aWNlIC0tLSAqLy8qIHZhcmlhYmxlcyBmb3IgdGFiIHN0eWxlMSB1c2luZyBhcyBiYXNlIG9mIHRhYiAqL1xuXG5cbiAvKiAtLS0gU0NTUyBGb3IgU3R5bGUtaWNvbiAtLS0gKi8vKiBWYXJpYWJsZXMgaWNvbnMgZGVmYXVsdCAqL1xuJGJvLXN0eWxlLWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiFkZWZhdWx0O1xuJGJvLXN0eWxlLWljb24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiFkZWZhdWx0O1xuJGJvLXN0eWxlLWljb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MhZGVmYXVsdDtcbiRiby1zdHlsZS1pY29uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkYm8tc3R5bGUtaWNvbi1iZywgNSUpIWRlZmF1bHQ7XG5cbi8qIFZhcmlhYmxlcyBpY29ucyBib2RlcmVkICovXG4kYm8tc3R5bGUtaWNvbi1ib2RlcmVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyFkZWZhdWx0O1xuJGJvLXN0eWxlLWljb24tYm9kZXJlZC1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgZGFya2VuKCRiby1zdHlsZS1pY29uLWJvZGVyZWQtY29sb3IsIDEwJSkhZGVmYXVsdDtcblxuLyogVmFyaWFibGVzIGljb25zIGRhcmtlciAqL1xuJGJvLXN0eWxlLWljb24tZGFya2VyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICNmZmYhZGVmYXVsdDtcbiRiby1zdHlsZS1pY29uLWRhcmtlci1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAjZmZmIWRlZmF1bHQ7XG4kYm8tc3R5bGUtaWNvbi1kYXJrZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIzAwMCFkZWZhdWx0O1xuJGJvLXN0eWxlLWljb24tZGFya2VyLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGJvLXN0eWxlLWljb24tZGFya2VyLWJnLCAzNSUpIWRlZmF1bHQ7XG5cbi8qIFZhcmlhYmxlcyBpY29ucyBsaWdodCAqL1xuJGJvLXN0eWxlLWljb24tbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIzAwMCFkZWZhdWx0O1xuJGJvLXN0eWxlLWljb24tbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgI2ZmZiFkZWZhdWx0O1xuJGJvLXN0eWxlLWljb24tbGlnaHQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgI2YwZjBmMCFkZWZhdWx0O1xuJGJvLXN0eWxlLWljb24tbGlnaHQtaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRiby1zdHlsZS1pY29uLWxpZ2h0LWJnLCAxMCUpIWRlZmF1bHQ7XG5cbi8qIFZhcmlhYmxlcyBpY29ucyBwbGFpbiAqL1xuJGJvLXN0eWxlLWljb24tcGxhaW4tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MhZGVmYXVsdDtcbiRiby1zdHlsZS1pY29uLXBsYWluLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICMwMDAhZGVmYXVsdDtcbiRiby1zdHlsZS1pY29uLXBsYWluLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50IWRlZmF1bHQ7XG4kYm8tc3R5bGUtaWNvbi1wbGFpbi1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCFkZWZhdWx0O1xuXG4vKiBWYXJpYWJsZXMgaWNvbnMgZm9yIGxpZ2h0IHN0eWxlICovXG4kYm8tbGlnaHQtc3R5bGUtaWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyFkZWZhdWx0O1xuJGJvLWxpZ2h0LXN0eWxlLWljb24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MhZGVmYXVsdDtcbiRiby1saWdodC1zdHlsZS1pY29uLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50IWRlZmF1bHQ7XG4kYm8tbGlnaHQtc3R5bGUtaWNvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICBkYXJrZW4oI2ZmZiwgNSUpIWRlZmF1bHQ7XG5cbiRiby1saWdodC1zdHlsZS1pY29uLWJvZGVyZWQtY29sb3I6ICAgICAgICAgICAgICAgICNmZmYhZGVmYXVsdDtcbiRiby1saWdodC1zdHlsZS1pY29uLWJvZGVyZWQtaG92ZXItY29sb3I6ICAgICAgICAgIGRhcmtlbigjZmZmLCA1JSkhZGVmYXVsdDtcbiRiby1saWdodC1zdHlsZS1pY29uLWJvZGVyZWQtYmc6ICAgICAgICAgICAgICAgICAgICNmZmYhZGVmYXVsdDtcbiRiby1saWdodC1zdHlsZS1pY29uLWJvZGVyZWQtaG92ZXItYmc6ICAgICAgICAgICAgIGRhcmtlbigjZmZmLCA1JSkhZGVmYXVsdDtcblxuLyogVmFyaWFibGVzIGljb25zIG91dGxpbmUgKi9cblxuJGljb25zLW91dGxpbmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2QxZDY0NiFkZWZhdWx0O1xuJGljb25zLW91dGxpbmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQhZGVmYXVsdDtcbiRpY29ucy1vdXRsaW5lLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRpY29ucy1vdXRsaW5lLWNvbG9yIWRlZmF1bHQ7XG4kaWNvbnMtb3V0bGluZS1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAjZmZmIWRlZmF1bHQ7XHRcdFxuJGljb25zLW91dGxpbmUtaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGljb25zLW91dGxpbmUtY29sb3IhZGVmYXVsdDtcbiRpY29ucy1vdXRsaW5lLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkaWNvbnMtb3V0bGluZS1ob3Zlci1iZywgNSUpIWRlZmF1bHQ7XG5cbi8qIFZhcmlhYmxlcyBpY29ucyBpbnZlcnNlICovXG5cbiRpY29ucy1pbnZlcnNlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYhZGVmYXVsdDtcbiRpY29ucy1pbnZlcnNlLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNkMWQ2NDYhZGVmYXVsdDtcbiRpY29ucy1pbnZlcnNlLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkaWNvbnMtaW52ZXJzZS1iZywgNSUpIWRlZmF1bHQ7XG4kaWNvbnMtaW52ZXJzZS1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAjZDFkNjQ2IWRlZmF1bHQ7XHRcbiRpY29ucy1pbnZlcnNlLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCFkZWZhdWx0O1xuJGljb25zLWludmVyc2UtaG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgJGljb25zLWludmVyc2UtYmchZGVmYXVsdDtcblxuXG4gLyogLS0tIFNDU1MgRm9yIFRhYmxlIC0tLSAqL1xuXG4gLyogLS0tIFNDU1MgRm9yIFRhYnMgLS0tICovXG4vKiB2YXJpYWJsZXMgZm9yIHRhYiBzdHlsZTEgdXNpbmcgYXMgYmFzZSBvZiB0YWIgKi9cbiRiby10YWJzLWEtY29sb3I6JGxpZ2h0LWdyYXkgIWRlZmF1bHQ7IFxuJGJvLXRhYnMtYS1jb2xvci1hY3RpdmU6JGdyYXktZGFya2VyICFkZWZhdWx0O1xuXG4kYm8tdGFicy1wYWRkaW5nOiAxMHB4IDIwcHggIWRlZmF1bHQ7IFxuJGJvLXRhYnMtYmFja2dyb3VuZDogIzVkNGU1NyAhZGVmYXVsdDtcbiRiby10YWJzLWJhY2tncm91bmQtaG92ZXI6ICNmNmY2ZjYgIWRlZmF1bHQ7XG4kYm8tdGFicy1jb250ZW50LWJhY2tncm91bmQ6I2Y2ZjZmNiAhZGVmYXVsdDtcblxuJGJvLXRhYnMtYm9yZGVyLWNvbG9yIDogJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRiby10YWJzLWNvbnRlbnQtYm9yZGVyOiAgMnB4IHNvbGlkICRiby10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRiby10YWJzLWNvbnRlbnQtcGFkZGluZzogMTVweCAyMHB4IWRlZmF1bHQ7XG5cblxuLyogdGFiIHN0eWxlIHZlcnNpb24gNSAqL1xuJGJvLXRhYnMtcHJpbWFyeS1iYWNrZ3JvdW5kLWhvdmVyOiMwMDAwMDAhZGVmYXVsdDtcbiRiby10YWJzLXByaW1hcnktYmFja2dyb3VuZDojRkZGRkZGICFkZWZhdWx0O1xuXG4vKiB0YWIgc3R5bGUgdmVyc2lvbiA2ICovXG4kYm8tdGFicy12Ni1oZWFkaW5nLWJhY2tncm91bmQ6ICNGRkZGRkYgIWRlZmF1bHQ7IFxuXG4kYm8tdGFicy12Ni1hLWNvbG9yIDogIzAwMDAwMCAhZGVmYXVsdDtcbiRiby10YWJzLXY2LWEtY29sb3ItYWN0aXZlOnJlZCAhZGVmYXVsdDtcbiRiby10YWJzLXY2LWhlYWRpbmctcGFkZGluZzogMTBweCAyMHB4O1xuJGJvLXRhYnMtdjYtaGVhZGluZy1ib3JkZXItdG9wLWNvbG9yOiMwMDAwMDAgIWRlZmF1bHQ7IFxuXG4kYm8tdGFicy12Ni1oZWFkaW5nLWJvcmRlci1jb2xvcjojZWVlICFkZWZhdWx0OyAgXG4kYm8tdGFicy12Ni1jb250ZW50LWJvcmRlci1jb2xvcjoxcHggc29saWQgJGJvLXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4gLyogLS0tIFNDU1MgRm9yIFRlc3RpbW9uaWFscyAtLS0gKi8vKiB0ZXN0aW1vbmlhbHMgZGVmYXVsdCAqL1xuJGJvLXRlc3RpbW9uaWFscy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNjk2OTY5O1xuJGJvLXRlc3RpbW9uaWFscy1hLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNjk2OTY5O1xuJGJvLXRlc3RpbW9uaWFscy1oZWFkaW5nLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjNjk2OTY5O1x0XHRcdFx0XHRcdFx0XG5cblxuLyogdGVzdGltb25pYWxzLXYxICovXG4kYm8tdGVzdGltb25pYWxzLXYxLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICM2OTY5Njk7XG4kYm8tdGVzdGltb25pYWxzLXYxLWEtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICM2OTY5Njk7XG4kYm8tdGVzdGltb25pYWxzLXYxLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICNmM2YzZjM7XG4kYm8tdGVzdGltb25pYWxzLXYxLWxpZ2h0LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICNmM2YzZjM7XG4kYm8tdGVzdGltb25pYWxzLXYxLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICM1NTU7XG5cbi8qIHRlc3RpbW9uaWFscyBsaWdodCAqL1xuJGJvLXRlc3RpbW9uaWFscy1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xuJGJvLXRlc3RpbW9uaWFscy1saWdodC1hLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xuJGJvLXRlc3RpbW9uaWFscy1saWdodC1oZWFkaW5nLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xuXG5cblxuIC8qIC0tLSBTQ1NTIEZvciBUeXBvZ3JhcGh5IC0tLSAqL1xuJGJvLWJsb2NrcXVvdGUtaWNvbi1iYWNrZ3JvdW5kICA6ICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGJvLWJsb2NrcXVvdGUtaWNvbi1jb2xvciAgICAgICA6ICNGRkZGRkYgIWRlZmF1bHQ7XG4kYm8tYmxvY2txdW90ZS1pY29uLWZvbnQtc2l6ZSAgIDogMTdweCAhZGVmYXVsdDtcbiRiby1ibG9ja3F1b3RlLWljb24tbGluZS1oZWlnaHQgOiAyMnB4ICFkZWZhdWx0O1xuXG4kYm8tYmxvY2txdW90ZS1jb2xvciAgICAgICAgICAgIDogIzAwMDAwMCAhZGVmYXVsdDtcbiIsIi8qKlxuICogICBCbG9ja3MgTGF5b3V0IFNlbGVjdG9yc1xuICovXG4kYmxvY2stcHJlZml4ICAgICAgICAgICAgICAgICAgICA6ICd3aWRnZXQnICFkZWZhdWx0O1xuJGJsb2NrLXNlbGVjdG9yICAgICAgICAgICAgICAgICAgOiAnd2lkZ2V0ICcgIWRlZmF1bHQ7XG4kYmxvY2staGVhZGluZy1zZWxlY3RvciAgICAgICAgICA6ICd3aWRnZXQtdGl0bGUsIC53aWRnZXR0aXRsZScgIWRlZmF1bHQ7XG4kYmxvY2stY29udGVudC1zZWxlY3RvciAgICAgICAgICA6ICd3aWRnZXQtY29udGVudCcgIWRlZmF1bHQ7XG4kYmxvY2staGVhZGluZy1yZXZlcnNlZC1zZWxlY3RvciA6ICd3aWRnZXQtdGl0bGUtcmV2ZXJzZWQnICFkZWZhdWx0O1xuJGNvbnRhaW5lci1wcmVmaXggICAgICAgICAgICAgICAgOiAnd3BiLWNvbnRhaW5lcicgIWRlZmF1bHQ7XG5cblxuXG4vLyBCb3ggTW9kdWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGJsb2NrLW1vZHVsZS1tYXJnaW4tYm90dG9tICAgICAgICAgICAgICAgICAgICAgOiAzMHB4ICFkZWZhdWx0O1xuJGJsb2NrLW1vZHVsZS1wYWRkaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAwcHggIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWJvcmRlci1jb2xvciAgICAgICAgICAgICAgICAgICAgICA6ICRib3JkZXItY29sb3ItYmFzZSAhZGVmYXVsdDtcbiRibG9jay1tb2R1bGUtYmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogI2ZmZiAhZGVmYXVsdDtcblxuJGJsb2NrLW1vZHVsZS1oZWFkaW5nLWNvbG9yXHRcdFx0XHRcdFx0OiAjMDAwMDAwICFkZWZhdWx0O1xuJGJsb2NrLW1vZHVsZS1oZWFkaW5nLWJvcmRlciAgICAgICAgICAgICAgICAgICAgOiAwcHggIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhlYWRpbmctdHJhbnNmb3JtICAgICAgICAgICAgICAgICA6IG5vbmUgIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhlYWRpbmctbGluZS1oZWlnaHQgICAgICAgICAgICAgICA6IG5vcm1hbCAhZGVmYXVsdDtcbiRibG9jay1tb2R1bGUtaGVhZGluZy1iZyAgICAgICAgICAgICAgICAgICAgICAgIDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhlYWRpbmctcGFkZGluZyAgICAgICAgICAgICAgICAgICA6IDIwcHggMCAhZGVmYXVsdDtcbiRibG9jay1tb2R1bGUtaGVhZGluZy1tYXJnaW4gICAgICAgICAgICAgICAgICAgIDogMCAwIDEwcHggIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhlYWRpbmctZm9udC1zaXplICAgICAgICAgICAgICAgICA6IDE2cHggIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhlYWRpbmctZm9udC13ZWlnaHQgICAgICAgICAgICAgICA6IDcwMCAhZGVmYXVsdDtcbiRibG9jay1tb2R1bGUtaGVhZGluZy1mb250LWZhbWlseSAgICAgICAgICAgICAgIDogJGZvbnQtZmFtaWx5LWJhc2UgIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhlYWRpbmctc2hvdy1zZXBhcmF0b3IgICAgICAgICAgICA6IG5vbmUgIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhlYWRpbmctaW1hZ2UtcG9zaXRpb24gICAgICAgICAgICA6IDAgMCAhZGVmYXVsdDtcblxuJGJsb2NrLW1vZHVsZS1jb250ZW50LWJnICAgICAgICAgICAgICAgICAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWNvbnRlbnQtYm9yZGVyICAgICAgICAgICAgICAgICAgICA6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGJsb2NrLW1vZHVsZS1jb250ZW50LXBhZGRpbmcgICAgICAgICAgICAgICAgICAgOiAyMHB4ICFkZWZhdWx0O1xuJGJsb2NrLW1vZHVsZS1jb250ZW50LW1hcmdpbiAgICAgICAgICAgICAgICAgICAgOiAxcHggIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWNvbnRlbnQtcmFkaXVzICAgICAgICAgICAgICAgICAgICA6IDBweCAhZGVmYXVsdDtcblxuJGJsb2NrLW1vZHVsZS1oaWdobGlnaHRlZC1iZyAgICAgICAgICAgICAgICAgICAgOiAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhpZ2hsaWdodGVkLWJvcmRlciAgICAgICAgICAgICAgICA6IHNvbGlkIDJweCAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG5cbiRibG9jay1tb2R1bGUtZm9vdGVyLWhlYWRpbmctY29sb3IgICAgICAgICAgICAgIDogJHdoaXRlICFkZWZhdWx0O1xuXG4kYmxvY2stcHJvZHVjdC1wYWRkaW5nICAgICAgICAgICAgICAgICAgICAgICAgICA6IDAgIWRlZmF1bHQ7XG4kYmxvY2staGVhZGluZy1sZXR0ZXItc3BhY2luZyAgICAgICAgICAgICAgICAgICA6IDAgIWRlZmF1bHQ7XG5cbi8vIFNpZGViYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRibG9jay1zaWRlYmFyLW1vZHVsZS1ib3JkZXIgICAgICAgICAgICAgICAgICAgIDogbm9uZSAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWJveC1wYWRkaW5nICAgICAgICAgICAgICAgICAgICAgIDogMCAhZGVmYXVsdDsgXG4kYmxvY2stc2lkZWJhci1ib3gtbWFyZ2luICAgICAgICAgICAgICAgICAgICAgICA6IDAgMCAzMHB4ICFkZWZhdWx0O1xuXG4kYmxvY2stc2lkZWJhci1saXN0LXBhZGRpbmctdmVydGljYWwgICAgICAgICAgICA6IDEzcHggMHB4IDEzcHggMTNweCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWxpc3QtYm9yZGVyLWNvbG9yICAgICAgICAgICAgICAgIDogJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGJsb2NrLXNpZGViYXItaGlnaHRsaWdodC1tYXJnaW4gXHRcdFx0XHQ6IDAgMCAyMHB4ICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGVhZGluZy1tYXJnaW4gICAgICAgICAgICBcdFx0OiAwICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGVhZGluZy1oaWdodGxpZ2h0LWJnICAgICAgICAgICAgOiAkbm9jb2xvciAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhlYWRpbmctaGlnaHRsaWdodC1wYWRkaW5nICAgICAgIDogMCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhlYWRpbmctaGlnaHRsaWdodC1tYXJnaW4gICAgXHQ6IDAgIWRlZmF1bHQ7XG4kYmxvY2stc2lkZWJhci1oZWFkaW5nLWhpZ2h0bGlnaHQtY29sb3IgICAgICAgICA6ICRibGFjayAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhlYWRpbmctaGlnaHRsaWdodC1tYXJnaW4tYm90dG9tIDogMHB4ICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGVhZGluZy1oaWdodGxpZ2h0LWZvbnQtc2l6ZSAgICAgOiAxNHB4ICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGVhZGluZy1oaWdodGxpZ2h0LWZvbnQtd2VpZ2h0ICAgOiA5MDAgIWRlZmF1bHQ7XG4kYmxvY2stc2lkZWJhci1oaWdodGxpZ2h0LWNvbnRlbnQtYmdcdFx0XHQ6ICRub2NvbG9yICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGlnaHRsaWdodC1jb250ZW50LWNvbG9yXHRcdFx0OiAjNjY2NjY2ICFkZWZhdWx0OyBcbiRibG9jay1zaWRlYmFyLWhpZ2h0bGlnaHQtY29udGVudC1wYWRkaW5nXHRcdDogMCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhpZ2h0bGlnaHQtYm9yZGVyICAgXHRcdFx0XHQ6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSkgIWRlZmF1bHQ7XG4kYmxvY2stc2lkZWJhci1oaWdodGxpZ2h0LWZvbnQtc2l6ZSBcdFx0XHQ6IDEycHggIWRlZmF1bHQ7XHRcbiRibG9jay1zaWRlYmFyLWhpZ2h0bGlnaHQtdHJhbnNmb3JtIFx0XHRcdDogdXBwZXJjYXNlICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGlnaHRsaWdodC1mb250LXdlaWdodFx0XHRcdDogMzAwICFkZWZhdWx0O1x0XHRcdFx0XHRcdFxuJGJsb2NrLXNpZGViYXItbGluay1oaWdodGxpZ2h0LWNvbG9yICAgICAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kYmxvY2stc2lkZWJhci1saW5rLWhpZ2h0bGlnaHQtaG92ZXItY29sb3IgICAgICA6ICR0aGVtZS1jb2xvciAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWxpc3QtaGlnaHRsaWdodC1ib3JkZXItY29sb3IgICAgIDogIzM5MzkzOSAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWxpc3QtaGlnaHRsaWdodC1mb250LXNpemUgICAgICAgIDogMTBweCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWxpc3QtaGlnaHRsaWdodC1wYWRkaW5nICAgICAgICAgIDogMTdweCAxNXB4ICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItbGlzdC1oaWdodGxpZ2h0LWltYWdlICAgICAgICAgICAgOiB1cmwoJyN7JGltYWdlLXRoZW1lLXBhdGh9ZG90LmpwZycpIDAgMjJweCBuby1yZXBlYXQgIWRlZmF1bHQ7XG4kYmxvY2stc2lkZWJhci1saXN0LWltYWdlICAgICAgICAgICAgICAgICAgICAgICA6IHVybCgnI3skaW1hZ2UtdGhlbWUtcGF0aH1kb3QuanBnJykgMCAyMnB4IG5vLXJlcGVhdCAhZGVmYXVsdDtcblxuJGJsb2NrLXNpZGViYXItaGVhZGluZy1wYWRkaW5nICAgICAgICAgICAgICAgICAgOiAwIDAgMzBweCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhlYWRpbmctbWFyZ2luICAgICAgICAgICAgICAgICAgIDogMCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhlYWRpbmctZm9udC1zaXplICAgICAgICAgICAgICAgIDogMTRweCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhlYWRpbmctY29sb3IgICAgICAgICAgICAgICAgICAgIDogJGJsYWNrICFkZWZhdWx0OyBcbiRibG9jay1zaWRlYmFyLWhlYWRpbmctbGluZS1oZWlnaHQgICAgICAgICAgICAgIDogMjBweCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhlYWRpbmctZm9udC13ZWlnaHRcdFx0XHRcdDogOTAwICFkZWZhdWx0O1xuXG4kYmxvY2stc2lkZWJhci13aWRnZXQtYm9yZGVyICAgICAgICAgICAgICAgICAgICA6IDFweCBzb2xpZCBsaWdodGVuKCRib3JkZXItY29sb3IsIDMlKSAhZGVmYXVsdDtcblxuLyoqKioqKioqKiBMQVlPVVQgKioqKioqKioqKioqKiovIiwiLyoqXG4gKiBJbXBvcnQgY29tcG9uZW50IHZhcmlhYmxlc1xuICovXG5AaW1wb3J0ICdtaXhpbnMvcnRsJzsgXG5AaW1wb3J0ICdtaXhpbnMvZnVuY3Rpb25zJztcbkBpbXBvcnQgJ21peGlucy90ZW1wbGF0ZS1taXhpbnMnOyIsIi8vIFN1cHBvcnQgZm9yIFJUTCAoUmlnaHQgdG8gTGVmdCkgJiBub24tbGF0aW4gZm9udHNcclxuXHJcbiRydGwtbGVmdCA6IGxlZnQ7XHJcbiRydGwtcmlnaHQgOiByaWdodDtcclxuJHJ0bC1jZW50ZXI6IGNlbnRlcjtcclxuXHJcbi8vIEJBU0lDIENPTlZFUlRFUiAoaWdub3JlIHRoZXNlKVxyXG5cclxuQG1peGluIHJ0bC1iYXNlLXNpbXBsZSAoJHByb3BlcnR5LCAkZGlyZWN0aW9uKSB7XHJcbiAgI3skcHJvcGVydHl9OiRkaXJlY3Rpb247XHJcbiAgLnJ0bCAmIHtcclxuICAgIEBpZiAkZGlyZWN0aW9uID09ICRydGwtcmlnaHQge1xyXG4gICAgICAjeyRwcm9wZXJ0eX06JHJ0bC1sZWZ0O1xyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAjeyRwcm9wZXJ0eX06JHJ0bC1yaWdodDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1peGluIHJ0bC1iYXNlLWluaGVyaXQgKCRwcm9wZXJ0eSwgJGRpcmVjdGlvbiwgJHZhbHVlLCAkaW5oZXJpdCA6IGluaGVyaXQpIHtcclxuICAjeyRwcm9wZXJ0eX0tI3skZGlyZWN0aW9ufTogJHZhbHVlO1xyXG4gIC5ydGwgJiB7XHJcbiAgICBAaWYgJGRpcmVjdGlvbiA9PSAkcnRsLXJpZ2h0IHtcclxuICAgICAgI3skcHJvcGVydHl9LSN7JHJ0bC1sZWZ0fTogJHZhbHVlO1xyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAjeyRwcm9wZXJ0eX0tI3skcnRsLXJpZ2h0fTogJHZhbHVlO1xyXG4gICAgfVxyXG4gICAgI3skcHJvcGVydHl9LSN7JGRpcmVjdGlvbn06ICRpbmhlcml0O1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHJ0bC1iYXNlLXRvcHJpZ2h0Ym90dG9tbGVmdCAoJHByb3BlcnR5LCAkdCwgJHIsICRiLCAkbCkge1xyXG4gICN7JHByb3BlcnR5fTogJHQgJHIgJGIgJGw7XHJcbiAgLnJ0bCAmIHtcclxuICAgICN7JHByb3BlcnR5fTogJHQgJGwgJGIgJHI7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBCT0RZIFNUWUxFU1xyXG5cclxuQG1peGluIHJ0bC1kaXJlY3Rpb24gKCRmb3JCb2R5IDogdHJ1ZSkge1xyXG4gIGRpcmVjdGlvbjogbHRyO1xyXG4gIEBpZiAkZm9yQm9keSB7XHJcbiAgICAmLnJ0bCB7XHJcbiAgICAgIGRpcmVjdGlvbjogcnRsO1xyXG4gICAgfVxyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICAucnRsICYge1xyXG4gICAgICBkaXJlY3Rpb246IHJ0bDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBydGwtZm9udC1mYW1pbHkgKCRsdHIsICRydGwsICRmb3JCb2R5IDogZmFsc2UpIHtcclxuICBmb250LWZhbWlseTogJGx0cjtcclxuICBAaWYgJGZvckJvZHkge1xyXG4gICAgJi5ydGwsICYubm9uLWxhdGluIHtcclxuICAgICAgZm9udC1mYW1pbHk6JHJ0bDtcclxuICAgIH1cclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgLnJ0bCAmLCAubm9uLWxhdGluICYge1xyXG4gICAgICBmb250LWZhbWlseTokcnRsO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIE1BUkdJTlxyXG5cclxuQG1peGluIHJ0bC1tYXJnaW4gKCR0LCAkciwgJGIsICRsKSB7XHJcbiAgQGluY2x1ZGUgcnRsLWJhc2UtdG9wcmlnaHRib3R0b21sZWZ0KG1hcmdpbiwkdCwgJHIsICRiLCAkbCk7XHJcbn1cclxuQG1peGluIHJ0bC1tYXJnaW4tbGVmdCAoJHZhbHVlKSB7XHJcbiAgQGluY2x1ZGUgcnRsLWJhc2UtaW5oZXJpdChtYXJnaW4sJHJ0bC1sZWZ0LCR2YWx1ZSk7XHJcbn1cclxuQG1peGluIHJ0bC1tYXJnaW4tcmlnaHQgKCR2YWx1ZSkge1xyXG4gIEBpbmNsdWRlIHJ0bC1iYXNlLWluaGVyaXQobWFyZ2luLCRydGwtcmlnaHQsJHZhbHVlKTtcclxufVxyXG5cclxuLy8gUEFERElOR1xyXG5cclxuQG1peGluIHJ0bC1wYWRkaW5nICgkdCwgJHIsICRiLCAkbCkge1xyXG4gIEBpbmNsdWRlIHJ0bC1iYXNlLXRvcHJpZ2h0Ym90dG9tbGVmdChwYWRkaW5nLCR0LCAkciwgJGIsICRsKTtcclxufVxyXG5AbWl4aW4gcnRsLXBhZGRpbmctbGVmdCAoJHZhbHVlKSB7XHJcbiAgQGluY2x1ZGUgcnRsLWJhc2UtaW5oZXJpdChwYWRkaW5nLCRydGwtbGVmdCwkdmFsdWUpO1xyXG59XHJcbkBtaXhpbiBydGwtcGFkZGluZy1yaWdodCAoJHZhbHVlKSB7XHJcbiAgQGluY2x1ZGUgcnRsLWJhc2UtaW5oZXJpdChwYWRkaW5nLCRydGwtcmlnaHQsJHZhbHVlKTtcclxufVxyXG5cclxuLy8gQk9SREVSXHJcblxyXG5AbWl4aW4gcnRsLWJvcmRlci1sZWZ0ICgkdmFsdWUpIHtcclxuICBAaW5jbHVkZSBydGwtYmFzZS1pbmhlcml0KGJvcmRlciwkcnRsLWxlZnQsJHZhbHVlKTtcclxufVxyXG5AbWl4aW4gcnRsLWJvcmRlci1yaWdodCAoJHZhbHVlKSB7XHJcbiAgQGluY2x1ZGUgcnRsLWJhc2UtaW5oZXJpdChib3JkZXIsJHJ0bC1yaWdodCwkdmFsdWUpO1xyXG59XHJcblxyXG4vLyBQT1NJVElPTlxyXG5cclxuQG1peGluIHJ0bC1sZWZ0ICgkdmFsdWUpIHtcclxuICAjeyRydGwtbGVmdH06ICR2YWx1ZTtcclxuICAucnRsICYge1xyXG4gICAgI3skcnRsLXJpZ2h0fTogJHZhbHVlO1xyXG4gICAgI3skcnRsLWxlZnR9OiBhdXRvO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gcnRsLXJpZ2h0ICgkdmFsdWUpIHtcclxuICAjeyRydGwtcmlnaHR9OiAkdmFsdWU7XHJcbiAgLnJ0bCAmIHtcclxuICAgICN7JHJ0bC1sZWZ0fTogJHZhbHVlO1xyXG4gICAgI3skcnRsLXJpZ2h0fTogYXV0bztcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBDTEVBUlxyXG5cclxuQG1peGluIHJ0bC1jbGVhci1sZWZ0ICgpIHtcclxuICBAaW5jbHVkZSBydGwtYmFzZS1zaW1wbGUoY2xlYXIsICRydGwtbGVmdCk7XHJcbn1cclxuQG1peGluIHJ0bC1jbGVhci1yaWdodCAoKSB7XHJcbiAgQGluY2x1ZGUgcnRsLWJhc2Utc2ltcGxlKGNsZWFyLCAkcnRsLXJpZ2h0KTtcclxufVxyXG5cclxuLy8gVEVYVC1BTElHTlxyXG5cclxuQG1peGluIHJ0bC10ZXh0LWFsaWduLWxlZnQgKCkge1xyXG4gIEBpbmNsdWRlIHJ0bC1iYXNlLXNpbXBsZSh0ZXh0LWFsaWduLCAkcnRsLWxlZnQpO1xyXG59XHJcbkBtaXhpbiBydGwtdGV4dC1hbGlnbi1yaWdodCAoKSB7XHJcbiAgQGluY2x1ZGUgcnRsLWJhc2Utc2ltcGxlKHRleHQtYWxpZ24sICRydGwtcmlnaHQpO1xyXG59XHJcbkBtaXhpbiBydGwtdGV4dC1hbGlnbi1jZW50ZXIgKCkge1xyXG4gIEBpbmNsdWRlIHJ0bC1iYXNlLXNpbXBsZSh0ZXh0LWFsaWduLCAkcnRsLWNlbnRlcik7XHJcbn1cclxuXHJcbi8vIEZMT0FUXHJcblxyXG5AbWl4aW4gcnRsLWZsb2F0LWxlZnQgKCkge1xyXG4gIEBpbmNsdWRlIHJ0bC1iYXNlLXNpbXBsZShmbG9hdCwgJHJ0bC1sZWZ0KTtcclxufVxyXG5AbWl4aW4gcnRsLWZsb2F0LXJpZ2h0ICgpIHtcclxuICBAaW5jbHVkZSBydGwtYmFzZS1zaW1wbGUoZmxvYXQsICRydGwtcmlnaHQpO1xyXG59XHJcblxyXG4vLyBCQUNLR1JPVU5ELVBPU0lUSU9OXHJcblxyXG5AbWl4aW4gcnRsLWJhY2tncm91bmQtcG9zaXRpb24tbGVmdCAoJHZlcnRpY2FsKSB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjokcnRsLWxlZnQgJHZlcnRpY2FsO1xyXG4gIC5ydGwgJiB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiRydGwtcmlnaHQgJHZlcnRpY2FsO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gcnRsLWJhY2tncm91bmQtcG9zaXRpb24tcmlnaHQgKCR2ZXJ0aWNhbCkge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246JHJ0bC1yaWdodCAkdmVydGljYWw7XHJcbiAgLnJ0bCAmIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246JHJ0bC1sZWZ0ICR2ZXJ0aWNhbDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBydGwtYmFja2dyb3VuZC1wb3NpdGlvbi1wZXJjZW50ICgkdmVydGljYWwsICRob3JQZXJjZW50KSB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjokaG9yUGVyY2VudCAkdmVydGljYWw7XHJcbiAgLnJ0bCAmIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246MTAwJSAtICRob3JQZXJjZW50ICR2ZXJ0aWNhbDtcclxuICB9XHJcbn1cclxuXHJcbi8vIFRFWFQtU0hBRE9XICYgQk9YLVNIQURPV1xyXG5cclxuQG1peGluIHJ0bC10ZXh0LXNoYWRvdyAoJHgsICRyZXN0KSB7XHJcbiAgdGV4dC1zaGFkb3c6ICR4ICRyZXN0O1xyXG4gIC5ydGwgJiB7XHJcbiAgICB0ZXh0LXNoYWRvdzogLTEgKiAkeCAkcmVzdDtcclxuICB9XHJcbn1cclxuQG1peGluIHJ0bC1ib3gtc2hhZG93ICgkeCwgJHJlc3QpIHtcclxuICAtbW96LWJveC1zaGFkb3c6ICR4ICRyZXN0O1xyXG4gIC13ZWJraXQtYm94LXNoYWRvdzogJHggJHJlc3Q7XHJcbiAgYm94LXNoYWRvdzogJHggJHJlc3Q7XHJcbiAgLnJ0bCAmIHtcclxuICAgIC1tb3otYm94LXNoYWRvdzogLTEgKiAkeCAkcmVzdDtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogLTEgKiAkeCAkcmVzdDtcclxuICAgIGJveC1zaGFkb3c6IC0xICogJHggJHJlc3Q7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBCT1JERVItUkFESVVTXHJcblxyXG5AbWl4aW4gcnRsLWJvcmRlci1yYWRpdXMtdG9wcmlnaHQgKCR0bCwgJHRyLCAkYnIsICRibCkge1xyXG4gIC1tb3otYm9yZGVyLXJhZGl1czogJHRsLCAkdHIsICRiciwgJGJsO1xyXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogJHRsLCAkdHIsICRiciwgJGJsO1xyXG4gIGJvcmRlci10b3AtcmFkaXVzOiAkdGwsICR0ciwgJGJyLCAkYmw7XHJcbiAgLnJ0bCAmIHtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogJHRyLCAkdGwsICRibCwgJGJyO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAkdHIsICR0bCwgJGJsLCAkYnI7XHJcbiAgICBib3JkZXItdG9wLXJhZGl1czogJHRyLCAkdGwsICRibCwgJGJyO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHJ0bC1ib3JkZXItcmFkaXVzLXRvcHJpZ2h0ICgkdmFsdWUpIHtcclxuICAtbW96LWJvcmRlci1yYWRpdXMtdG9wI3skcnRsLXJpZ2h0fTogJHZhbHVlO1xyXG4gIC13ZWJraXQtYm9yZGVyLXRvcC0jeyRydGwtcmlnaHR9LXJhZGl1czogJHZhbHVlO1xyXG4gIGJvcmRlci10b3AtI3skcnRsLXJpZ2h0fS1yYWRpdXM6ICR2YWx1ZTtcclxuICAucnRsICYge1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzLXRvcCN7JHJ0bC1sZWZ0fTogJHZhbHVlO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItdG9wLSN7JHJ0bC1sZWZ0fS1yYWRpdXM6ICR2YWx1ZTtcclxuICAgIGJvcmRlci10b3AtI3skcnRsLWxlZnR9LXJhZGl1czogJHZhbHVlO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzLXRvcCN7JHJ0bC1yaWdodH06IGluaGVyaXQ7XHJcbiAgICAtd2Via2l0LWJvcmRlci10b3AtI3skcnRsLXJpZ2h0fS1yYWRpdXM6IGluaGVyaXQ7XHJcbiAgICBib3JkZXItdG9wLSN7JHJ0bC1yaWdodH0tcmFkaXVzOiBpbmhlcml0O1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHJ0bC1ib3JkZXItcmFkaXVzLWJvdHRvbXJpZ2h0ICgkdmFsdWUpIHtcclxuICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tI3skcnRsLXJpZ2h0fTogJHZhbHVlO1xyXG4gIC13ZWJraXQtYm9yZGVyLWJvdHRvbS0jeyRydGwtcmlnaHR9LXJhZGl1czogJHZhbHVlO1xyXG4gIGJvcmRlci1ib3R0b20tI3skcnRsLXJpZ2h0fS1yYWRpdXM6ICR2YWx1ZTtcclxuICAucnRsICYge1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbSN7JHJ0bC1sZWZ0fTogJHZhbHVlO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLSN7JHJ0bC1sZWZ0fS1yYWRpdXM6ICR2YWx1ZTtcclxuICAgIGJvcmRlci1ib3R0b20tI3skcnRsLWxlZnR9LXJhZGl1czogJHZhbHVlO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbSN7JHJ0bC1yaWdodH06IGluaGVyaXQ7XHJcbiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tI3skcnRsLXJpZ2h0fS1yYWRpdXM6IGluaGVyaXQ7XHJcbiAgICBib3JkZXItYm90dG9tLSN7JHJ0bC1yaWdodH0tcmFkaXVzOiBpbmhlcml0O1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHJ0bC1ib3JkZXItcmFkaXVzLXRvcGxlZnQgKCR2YWx1ZSkge1xyXG4gIC1tb3otYm9yZGVyLXJhZGl1cy10b3AjeyRydGwtbGVmdH06ICR2YWx1ZTtcclxuICAtd2Via2l0LWJvcmRlci10b3AtI3skcnRsLWxlZnR9LXJhZGl1czogJHZhbHVlO1xyXG4gIGJvcmRlci10b3AtI3skcnRsLWxlZnR9LXJhZGl1czogJHZhbHVlO1xyXG4gIC5ydGwgJiB7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXMtdG9wI3skcnRsLXJpZ2h0fTogJHZhbHVlO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItdG9wLSN7JHJ0bC1yaWdodH0tcmFkaXVzOiAkdmFsdWU7XHJcbiAgICBib3JkZXItdG9wLSN7JHJ0bC1yaWdodH0tcmFkaXVzOiAkdmFsdWU7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXMtdG9wI3skcnRsLWxlZnR9OiBpbmhlcml0O1xyXG4gICAgLXdlYmtpdC1ib3JkZXItdG9wLSN7JHJ0bC1sZWZ0fS1yYWRpdXM6IGluaGVyaXQ7XHJcbiAgICBib3JkZXItdG9wLSN7JHJ0bC1sZWZ0fS1yYWRpdXM6IGluaGVyaXQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gcnRsLWJvcmRlci1yYWRpdXMtYm90dG9tbGVmdCAoJHZhbHVlKSB7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbSN7JHJ0bC1sZWZ0fTogJHZhbHVlO1xyXG4gIC13ZWJraXQtYm9yZGVyLWJvdHRvbS0jeyRydGwtbGVmdH0tcmFkaXVzOiAkdmFsdWU7XHJcbiAgYm9yZGVyLWJvdHRvbS0jeyRydGwtbGVmdH0tcmFkaXVzOiAkdmFsdWU7XHJcbiAgLnJ0bCAmIHtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b20jeyRydGwtcmlnaHR9OiAkdmFsdWU7XHJcbiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tI3skcnRsLXJpZ2h0fS1yYWRpdXM6ICR2YWx1ZTtcclxuICAgIGJvcmRlci1ib3R0b20tI3skcnRsLXJpZ2h0fS1yYWRpdXM6ICR2YWx1ZTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b20jeyRydGwtbGVmdH06IGluaGVyaXQ7XHJcbiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tI3skcnRsLWxlZnR9LXJhZGl1czogaW5oZXJpdDtcclxuICAgIGJvcmRlci1ib3R0b20tI3skcnRsLWxlZnR9LXJhZGl1czogaW5oZXJpdDtcclxuICB9XHJcbn1cclxuIiwiLy8gRnVuY3Rpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBQb3NpdGlvbiBtaXhpblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEBwYXJhbSBbc3RyaW5nXSAkcG9zaXRpb246IHBvc2l0aW9uIHR5cGVcbi8vIEBwYXJhbSBbbGlzdF0gJGFyZ3M6IGxpc3Qgb2Ygb2Zmc2V0cyBhbmQgdmFsdWVzXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuQG1peGluIHBvc2l0aW9uKCRwb3NpdGlvbiwgJGFyZ3MpIHtcbiAgICBAZWFjaCAkbyBpbiB0b3AgcmlnaHQgYm90dG9tIGxlZnQge1xuICAgICAgICAkaTogaW5kZXgoJGFyZ3MsICRvKTtcbiAgICAgICAgQGlmICRpXG4gICAgICAgICAgICBhbmQgJGkgKyAxIDw9IGxlbmd0aCgkYXJncylcbiAgICAgICAgICAgIGFuZCB0eXBlLW9mKCBudGgoJGFyZ3MsICRpICsgMSkgKSA9PSBudW1iZXIge1xuICAgICAgICAgICAgI3skb306IG50aCgkYXJncywgJGkgKyAxKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwb3NpdGlvbjogJHBvc2l0aW9uO1xufVxuXG5cbi8vIEFic29sdXRlIHBvc2l0aW9uaW5nIG1peGluXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQHBhcmFtIFtsaXN0XSAkYXJnczogbGlzdCBvZiBvZmZzZXRzIGFuZCB2YWx1ZXNcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AbWl4aW4gYWJzb2x1dGUoJGFyZ3MpIHtcbiAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgJGFyZ3MpO1xufVxuXG4vLyBBcnJvdyBtaXhpblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEBwYXJhbSBbc3RyaW5nXSAkZGlyZWN0aW9uOiBhcnJvdyBkaXJlY3Rpb25cbi8vIEBwYXJhbSBbbGlzdF0gJHBvc2l0aW9uOiBsaXN0IG9mIG9mZnNldHMgYW5kIHZhbHVlc1xuLy8gQHBhcmFtIFtjb2xvcl0gJGNvbG9yIChpbmhlcml0KTogYXJyb3cgY29sb3Jcbi8vIEBwYXJhbSBbbnVtYmVyXSAkc2l6ZSAoMWVtKTogYXJyb3cgc2l6ZVxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBtaXhpbiB0cmlhbmdsZSgkZGlyZWN0aW9uLCAkcG9zaXRpb24sICRjb2xvcjogY3VycmVudENvbG9yLCAkc2l6ZTogMWVtKSB7XG4gICAgLy8gTWFrZSBzdXJlIHRoZSBkaXJlY3Rpb24gaXMgdmFsaWRcbiAgICBAaWYgbm90IGluZGV4KHRvcCByaWdodCBib3R0b20gbGVmdCwgJGRpcmVjdGlvbikge1xuICAgICAgICBAd2FybiBcIkRpcmVjdGlvbiBtdXN0IGJlIG9uZSBvZiB0b3AsIHJpZ2h0LCBib3R0b20gb3IgbGVmdC5cIjtcbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGFic29sdXRlKCRwb3NpdGlvbik7IC8vIFBvc2l0aW9uXG4gICAgICAgIEBpbmNsdWRlIHNxdWFyZSgwKTsgLy8gU2l6ZVxuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgei1pbmRleDogMjtcblxuICAgICAgICBib3JkZXItI3tvcHBvc2l0ZS1wb3NpdGlvbigkZGlyZWN0aW9uKX06ICRzaXplICogMS41IHNvbGlkICRjb2xvcjtcbiAgICAgICAgJHBlcnBlbmRpY3VsYXItYm9yZGVyczogJHNpemUgc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgQGlmICRkaXJlY3Rpb24gPT0gdG9wIG9yICRkaXJlY3Rpb24gPT0gYm90dG9tIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAgICRwZXJwZW5kaWN1bGFyLWJvcmRlcnM7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6ICAkcGVycGVuZGljdWxhci1ib3JkZXJzO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCBvciAkZGlyZWN0aW9uID09IGxlZnQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogJHBlcnBlbmRpY3VsYXItYm9yZGVycztcbiAgICAgICAgICAgIGJvcmRlci10b3A6ICAgICRwZXJwZW5kaWN1bGFyLWJvcmRlcnM7XG4gICAgICAgIH1cbiAgICB9XG59XG4gXG4vLyBGb250IHNpemUgLSByZW1cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBmdW5jdGlvbiBwYXJzZUludCgkbikgeyAvKiAyICovXG4gIEByZXR1cm4gJG4gLyAoJG4gKiAwICsgMSk7XG59XG5cbkBtaXhpbiBmb250LXNpemUoJHByb3BlcnR5LCAkdmFsdWVzKSB7XG4gICRweCA6ICgpOyAvKiAzICovXG4gICRyZW06ICgpOyAvKiAzICovXG5cbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMgeyAvKiA0ICovXG5cbiAgICBAaWYgJHZhbHVlID09IDAgb3IgJHZhbHVlID09IGF1dG8geyAvKiA1ICovXG4gICAgICAkcHggOiBhcHBlbmQoJHB4ICwgJHZhbHVlKTtcbiAgICAgICRyZW06IGFwcGVuZCgkcmVtLCAkdmFsdWUpO1xuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgICR1bml0OiB1bml0KCR2YWx1ZSk7ICAgIC8qIDYgKi9cbiAgICAgICR2YWw6IHBhcnNlSW50KCR2YWx1ZSk7IC8qIDYgKi9cblxuICAgICAgQGlmICR1bml0ID09IFwicHhcIiB7ICAvKiA3ICovXG4gICAgICAgICRweCA6IGFwcGVuZCgkcHgsICAkdmFsdWUpO1xuICAgICAgICAkcmVtOiBhcHBlbmQoJHJlbSwgKCR2YWwgLyAxMCArIHJlbSkpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHVuaXQgPT0gXCJyZW1cIiB7IC8qIDcgKi9cbiAgICAgICAgJHB4IDogYXBwZW5kKCRweCwgICgkdmFsICogMTAgKyBweCkpO1xuICAgICAgICAkcmVtOiBhcHBlbmQoJHJlbSwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJHB4ID09ICRyZW0geyAgICAgLyogOCAqL1xuICAgICN7JHByb3BlcnR5fTogJHB4OyAgLyogOSAqL1xuICB9IEBlbHNlIHtcbiAgICAjeyRwcm9wZXJ0eX06ICRweDsgIC8qIDkgKi9cbiAgICAjeyRwcm9wZXJ0eX06ICRyZW07IC8qIDkgKi9cbiAgfVxufVxuXG5cbi8vPT0gQm9yZGVyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuQG1peGluIGJvcmRlciggJGNvb3JkaW5hdGVzOiAwIDAgMCAwLCAkY29sb3VyOiAkYm9yZGVyLWNvbG9yLCAkc3R5bGU6IHNvbGlkICkge1xuICAgICR0b3A6IG50aCgkY29vcmRpbmF0ZXMsIDEpO1xuICAgICRyaWdodDogbnRoKCRjb29yZGluYXRlcywgMik7XG4gICAgJGJvdHRvbTogbnRoKCRjb29yZGluYXRlcywgMyk7XG4gICAgJGxlZnQ6IG50aCgkY29vcmRpbmF0ZXMsIDQpO1xuICAgIEBpZiBub3QodW5pdGxlc3MoJHRvcCkpIHtcbiAgICAgICAgYm9yZGVyLXRvcDogJHRvcCAkc3R5bGUgJGNvbG91cjtcbiAgICB9XG4gICAgQGlmIG5vdCh1bml0bGVzcygkcmlnaHQpKSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogJHJpZ2h0ICRzdHlsZSAkY29sb3VyO1xuICAgIH1cbiAgICBAaWYgbm90KHVuaXRsZXNzKCRib3R0b20pKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICRib3R0b20gJHN0eWxlICRjb2xvdXI7XG4gICAgfVxuICAgIEBpZiBub3QodW5pdGxlc3MoJGxlZnQpKSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAkbGVmdCAkc3R5bGUgJGNvbG91cjtcbiAgICB9XG59XG5cbi8vIFN0YXRlIGFuZCBob3ZlclxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBtaXhpbiBzdGF0ZS1ob3Zlci1kZWZhdWx0KCR0aW1lLCAkYmFja2dyb3VuZCwgJGJvcmRlci1jb2xvcil7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgJHRpbWUpO1xuICAgICY6aG92ZXJ7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICB9XG59XG5cbkBtaXhpbiBzdGF0ZS1ob3ZlcigkdGltZSwkaGVpZ2h0LCRjb2xvcil7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDAgMCAwICRjb2xvcik7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgJHRpbWUgY3ViaWMtYmV6aWVyKDAuOCwwLDAsMSkpO1xuICAgICY6aG92ZXJ7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsICR0aW1lIGN1YmljLWJlemllcigwLjgsMCwwLDEpKTtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwICgtJGhlaWdodCkgMCAwICRjb2xvcik7XG4gICAgfVxufVxuXG5AbWl4aW4gc3RhdGUtaG92ZXItMigkYmFja2dyb3VuZCl7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDEwO1xuICAgICY6YWZ0ZXJ7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB6LWluZGV4OiAtNTA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIEBpbmNsdWRlIHNjYWxlKDApO1xuICAgICAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXIoMTAwJSwxMDAlKTtcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kZWxheSgwLjNzLDBzKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gMHMgY3ViaWMtYmV6aWVyKDAuMTksMSwwLjIyLDEpIDAuM3Msb3BhY2l0eSAwLjNzIGN1YmljLWJlemllcigwLjE5LDEsMC4yMiwxKSk7XG4gICAgfVxuICAgICY6aG92ZXJ7XG4gICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgQGluY2x1ZGUgc2NhbGUoMSk7XG4gICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gMC42cyBjdWJpYy1iZXppZXIoMC4xOSwxLDAuMjIsMSksb3BhY2l0eSAwLjVzIGN1YmljLWJlemllcigwLjE5LDEsMC4yMiwxKSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuXG4vLz09IEZsZXhpYmxlIExheW91dFxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQG1peGluIGZsZXhib3gge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiAtbW96LWZsZXg7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogZmxleDtcbn1cblxuJWZsZXhib3gge1xuICAgIEBpbmNsdWRlIGZsZXhib3g7XG59XG5cbkBtaXhpbiBpbmxpbmUtZmxleCB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWZsZXg7XG4gICAgZGlzcGxheTogLW1vei1pbmxpbmUtZmxleDtcbiAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG59XG5cbiVpbmxpbmUtZmxleCB7XG4gICAgQGluY2x1ZGUgaW5saW5lLWZsZXg7XG59XG5cblxuXG4vLyBSZXRpbmEgU3ByaXRlIE1peGluc1xuXG5AbWl4aW4gcmV0aW5hLXNwcml0ZS1iYWNrZ3JvdW5kKCR1cmwsJHBvc2l0aW9uLCR3aWR0aCwkaGVpZ2h0KXtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkdXJsKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkcG9zaXRpb247XG4gICAgd2lkdGg6JHdpZHRoO1xuICAgIGhlaWdodDokaGVpZ2h0O1xufVxuXG4vKiogZWxlbWVudHMgbWl4aW5zICoqL1xuXG5AbWl4aW4gYm9yZGVyLWV4Y2x1ZGUtdG9wKCRib3JkZXItZGVlcCwgJGJvcmRlci10eXBlICwgJGJvcmRlci1jb2xvciApe1xuICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlci1kZWVwICRib3JkZXItdHlwZSAkYm9yZGVyLWNvbG9yIDtcbiAgIGJvcmRlci1sZWZ0OiAkYm9yZGVyLWRlZXAgJGJvcmRlci10eXBlICRib3JkZXItY29sb3IgO1xuICAgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyLWRlZXAgJGJvcmRlci10eXBlICRib3JkZXItY29sb3IgO1xufVxuXG5AbWl4aW4gYm9yZGVyLWV4Y2x1ZGUtYm90dG9tKCRib3JkZXItZGVlcCwgJGJvcmRlci10eXBlICwgJGJvcmRlci1jb2xvciApe1xuICAgYm9yZGVyLXRvcDogJGJvcmRlci1kZWVwICRib3JkZXItdHlwZSAkYm9yZGVyLWNvbG9yIDtcbiAgIGJvcmRlci1sZWZ0OiAkYm9yZGVyLWRlZXAgJGJvcmRlci10eXBlICRib3JkZXItY29sb3IgO1xuICAgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyLWRlZXAgJGJvcmRlci10eXBlICRib3JkZXItY29sb3IgO1xufVxuXG5AbWl4aW4gYm9yZGVyLWV4Y2x1ZGUtbGVmdCgkYm9yZGVyLWRlZXAsICRib3JkZXItdHlwZSAsICRib3JkZXItY29sb3IgKXtcbiAgIGJvcmRlci10b3A6ICRib3JkZXItZGVlcCAkYm9yZGVyLXR5cGUgJGJvcmRlci1jb2xvciA7XG4gICBib3JkZXItYm90dG9tOiAkYm9yZGVyLWRlZXAgJGJvcmRlci10eXBlICRib3JkZXItY29sb3IgO1xuICAgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyLWRlZXAgJGJvcmRlci10eXBlICRib3JkZXItY29sb3IgO1xufVxuXG5AbWl4aW4gYm9yZGVyLWV4Y2x1ZGUtcmlnaHQoJGJvcmRlci1kZWVwLCAkYm9yZGVyLXR5cGUgLCAkYm9yZGVyLWNvbG9yICl7XG4gICBib3JkZXItdG9wOiAkYm9yZGVyLWRlZXAgJGJvcmRlci10eXBlICRib3JkZXItY29sb3IgO1xuICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlci1kZWVwICRib3JkZXItdHlwZSAkYm9yZGVyLWNvbG9yIDtcbiAgIGJvcmRlci1sZWZ0OiAkYm9yZGVyLWRlZXAgJGJvcmRlci10eXBlICRib3JkZXItY29sb3IgO1xufVxuXG5AbWl4aW4gcm91bmRlZC1jb3JuZXJzICgkcmFkaXVzKSB7XG4gICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAtbW96LWJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAtbXMtYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgIC1vLWJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xufVxuXG5AbWl4aW4gY2xlYXJib3hzdHlsZSgpe1xuICAgYmFja2dyb3VuZDogbm9uZTtcbiAgIGJvcmRlcjpub25lO1xufVxuXG5AbWl4aW4gY2xlYXJmbG9hdCgpe1xuICAgZmxvYXQ6IG5vbmU7XG4gICB3aWR0aDogMTAwJTtcbn1cbiBcblxuQG1peGluIHRyYW5zZm9ybS1zdHlsZSgkdHJhbnNmb3JtLXN0eWxlKXtcbiAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiAkdHJhbnNmb3JtLXN0eWxlOyAgICAgICAgICAgICAgICAgICAgXG4gICAtbW96LXRyYW5zZm9ybS1zdHlsZTogJHRyYW5zZm9ybS1zdHlsZTsgICAgICAgICAgICAgICAgICAgIFxuICAgLW1zLXRyYW5zZm9ybS1zdHlsZTogJHRyYW5zZm9ybS1zdHlsZTsgICAgICAgICAgICAgICAgICAgIFxuICAgLW8tdHJhbnNmb3JtLXN0eWxlOiAkdHJhbnNmb3JtLXN0eWxlOyAgICAgICAgICAgICAgICAgICAgXG4gICB0cmFuc2Zvcm0tc3R5bGU6ICR0cmFuc2Zvcm0tc3R5bGU7XG59XG5cbkBtaXhpbiBiYWNrZmFjZS12aXNpYmlsaXR5KCRiYWNrZmFjZS12aXNpYmlsaXR5KXtcbiAgIGJhY2tmYWNlLXZpc2liaWxpdHk6ICRiYWNrZmFjZS12aXNpYmlsaXR5OyAgLyogVzNDICovXG4gICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6ICRiYWNrZmFjZS12aXNpYmlsaXR5OyAvKiBTYWZhcmkgJiBDaHJvbWUgKi9cbiAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogJGJhY2tmYWNlLXZpc2liaWxpdHk7IC8qIEZpcmVmb3ggKi9cbiAgIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiAkYmFja2ZhY2UtdmlzaWJpbGl0eTsgLyogSW50ZXJuZXQgRXhwbG9yZXIgKi9cbiAgIC1vLWJhY2tmYWNlLXZpc2liaWxpdHk6ICRiYWNrZmFjZS12aXNpYmlsaXR5OyAvKiBPcGVyYSAqL1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLXRoZW1lKCRhbmltYXRpb24tZHVyYXRpb24sICRhbmltYXRpb24tZmlsbC1tb2RlLCAkYW5pbWF0aW9uLW5hbWUpe1xuICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246ICRhbmltYXRpb24tZHVyYXRpb247IFxuICAgLW1vei1hbmltYXRpb24tZHVyYXRpb246ICRhbmltYXRpb24tZHVyYXRpb247IFxuICAgLW1zLWFuaW1hdGlvbi1kdXJhdGlvbjogJGFuaW1hdGlvbi1kdXJhdGlvbjsgXG4gICAtby1hbmltYXRpb24tZHVyYXRpb246ICRhbmltYXRpb24tZHVyYXRpb247IFxuICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkYW5pbWF0aW9uLWR1cmF0aW9uOyBcblxuICAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiAkYW5pbWF0aW9uLWZpbGwtbW9kZTtcbiAgIC1tb3otYW5pbWF0aW9uLWZpbGwtbW9kZTogJGFuaW1hdGlvbi1maWxsLW1vZGU7XG4gICAtbXMtYW5pbWF0aW9uLWZpbGwtbW9kZTogJGFuaW1hdGlvbi1maWxsLW1vZGU7XG4gICAtby1hbmltYXRpb24tZmlsbC1tb2RlOiAkYW5pbWF0aW9uLWZpbGwtbW9kZTtcbiAgIGFuaW1hdGlvbi1maWxsLW1vZGU6ICRhbmltYXRpb24tZmlsbC1tb2RlO1xuXG4gICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiAkYW5pbWF0aW9uLW5hbWU7XG4gICAtbW96LWFuaW1hdGlvbi1uYW1lOiAkYW5pbWF0aW9uLW5hbWU7IFxuICAgLW1zLWFuaW1hdGlvbi1uYW1lOiAkYW5pbWF0aW9uLW5hbWU7IFxuICAgLW8tYW5pbWF0aW9uLW5hbWU6ICRhbmltYXRpb24tbmFtZTsgXG4gICBhbmltYXRpb24tbmFtZTogJGFuaW1hdGlvbi1uYW1lOyBcbn1cblxuQG1peGluIHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSl7XG4gICAtd2Via2l0LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAtbXMtcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgIC1tb3otcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgIC1vLXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICBwZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlOyAgICBcbn1cblxuLyoqXG4qIFRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uIHByb3BlcnR5QG1peGluIFxuKi9cbkBtaXhpbiB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gICAtbW96LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgLW8tdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG59XG4gXG5cbkBtaXhpbiBhcHBlYXJhbmNlKCRhcHBlYXJhbmNlKXtcbiAgIGFwcGVhcmFuY2U6ICRhcmd1bWVudHM7XG4gICAtbW96LWFwcGVhcmFuY2U6ICRhcmd1bWVudHM7XG4gICAtbXMtYXBwZWFyYW5jZTogJGFyZ3VtZW50cztcbiAgIC1vLWFwcGVhcmFuY2U6ICRhcmd1bWVudHM7XG4gICAtd2Via2l0LWFwcGVhcmFuY2U6ICRhcmd1bWVudHM7IFxufVxuXG5cbi8qYmFja2dyb3VuZCBSR0JBXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5AbWl4aW4gcmdiYSgkY29sb3VyLCAkYWxwaGEpXG57XG4gICAkYWxwaGFDb2xvdXI6IGhzbGEoaHVlKCRjb2xvdXIpLCBzYXR1cmF0aW9uKCRjb2xvdXIpLCBsaWdodG5lc3MoJGNvbG91ciksICRhbHBoYSk7XG4gICAkaWVBbHBoYUNvbG91cjogYXJnYigkYWxwaGFDb2xvdXIpOyAgIFxuICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG91cjsgXG4gICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWxwaGFDb2xvdXI7ICAgICAgIFxuICAgem9vbTogMTsgXG4gICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudFxcOTsgICBcbiAgIFxuICAgXG59XG5cblxuQG1peGluIGJvcmRlci1yZ2JhKCRjb2xvdXIsICRhbHBoYSlcbntcbiAgICRhbHBoYUNvbG91cjogaHNsYShodWUoJGNvbG91ciksIHNhdHVyYXRpb24oJGNvbG91ciksIGxpZ2h0bmVzcygkY29sb3VyKSwgJGFscGhhKTtcbiAgICRpZUFscGhhQ29sb3VyOiBhcmdiKCRhbHBoYUNvbG91cik7ICAgXG4gICBib3JkZXItY29sb3I6ICRjb2xvdXI7IFxuICAgYm9yZGVyLWNvbG9yOiAkYWxwaGFDb2xvdXI7ICAgICAgIFxuICAgem9vbTogMTsgXG4gICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50XFw5O1xuICBcbn1cblxuLy9jb3B5cmlnaHRcblxuLy9zdWIgaGVhZGluZyAoaDIsaDMpIGRlZmluZVxuQG1peGluIHN1Yi1oZWFkaW5nIHtcbiAgQGluY2x1ZGUgcnRsLWZsb2F0LWxlZnQoKTtcbiAgY29sb3I6ICRibG9jay1oZWFkaW5nLWNvbG9yO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250OiA2MDAgMTRweC8yMHB4ICRmb250LWN1c3RvbTtcbiAgcGFkZGluZzogOHB4IDE1cHg7XG4gIG1hcmdpbjogMCAwIDIwcHg7XG4gIG1pbi13aWR0aDogMTIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogJHRoZW1lLWJnLWRlZmF1bHQ7XG59XG5AbWl4aW4gc3ViLWhlYWRpbmctYmVmb3JlIHtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgQGluY2x1ZGUgcnRsLXJpZ2h0KDQ1JSk7XG4gIHRvcDogMTAwJTtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXI6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogJHRoZW1lLWJnLWRlZmF1bHQ7XG59XG5cbi8vYmFja2dyb3VuZFxuQG1peGluIGJhY2tncm91bmQtaG92ZXIge1xuICBjb2xvcjogJGJhc2UtdGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZDogcmdiYSgyMjgsIDUwLCA0MCwgMC4zKTtcbn1cblxuLyppbmxpbmUtYmxvY2tcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuQG1peGluIGlubGluZS1ibG9jaygpIHtcbiAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICpkaXNwbGF5OiBpbmxpbmU7XG4gICB6b29tOiAxOyAgIFxufVxuXG4vLyBTaXppbmcgc2hvcnRjdXRzXG5AbWl4aW4gc2l6ZSgkd2lkdGgsICRoZWlnaHQpIHtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xufVxuXG5cblxuLy8gUGFuZWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AbWl4aW4gYm94LXZhcmlhbnQoJGJvcmRlciwgJGhlYWRpbmctdGV4dC1jb2xvciwgJGhlYWRpbmctYmctY29sb3IsICRoZWFkaW5nLWJvcmRlcikge1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJiA+IC5ib3gtaGVhZGluZyB7XG4gICAgY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkaGVhZGluZy1ib3JkZXI7XG5cbiAgICArICAuYm94LWNvbnRlbnQge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gIH1cbiAgJiA+IC5ib3gtY29udGVudHtcbiAgICAgIGJvcmRlci1jb2xvcjokYm9yZGVyO1xuICB9XG4gICYgPiAuYm94LWZvb3RlciB7XG4gICAgKyAuYm94LWNvbGxhcHNlIC5ib3gtYm9keSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxufVxuQG1peGluIGJ1dHRvbi0zZCgkc3VmZml4Y2xhc3MsICRoZWlnaHQzZCAsJGNvbG9yM2Qpe1xuICBib3JkZXI6IDA7XG4gIEBpZiAoJHN1ZmZpeGNsYXNzID09IFwiZW1wdHlcIikge1xuICAgICAgYm94LXNoYWRvdzogMCAkaGVpZ2h0M2QgJGNvbG9yM2QgaW5zZXQ7XG4gICAgICAtby1ib3gtc2hhZG93OiAwICRoZWlnaHQzZCAkY29sb3IzZCBpbnNldDtcbiAgICAgIC1tb3otYm94LXNoYWRvdzogMCAkaGVpZ2h0M2QgJGNvbG9yM2QgaW5zZXQ7XG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgJGhlaWdodDNkICRjb2xvcjNkIGluc2V0O1xuICAgICAgLW1zLWJveC1zaGFkb3c6IDAgJGhlaWdodDNkICRjb2xvcjNkIGluc2V0O1xuICB9XG4gIEBlbHNlIHtcbiAgJi5idG4tI3skc3VmZml4Y2xhc3N9e1xuICAgICBib3gtc2hhZG93OiAwICRoZWlnaHQzZCAkY29sb3IzZCBpbnNldDtcbiAgICAgIC1vLWJveC1zaGFkb3c6IDAgJGhlaWdodDNkICRjb2xvcjNkIGluc2V0O1xuICAgICAgLW1vei1ib3gtc2hhZG93OiAwICRoZWlnaHQzZCAkY29sb3IzZCBpbnNldDtcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAkaGVpZ2h0M2QgJGNvbG9yM2QgaW5zZXQ7XG4gICAgICAtbXMtYm94LXNoYWRvdzogMCAkaGVpZ2h0M2QgJGNvbG9yM2QgaW5zZXQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24taW52ZXJzZSggJHN1ZmZpeGNsYXNzLCAgJGNvbG9yICwkYmFja2dyb3VuZCApe1xuIFxuICAmLmJ0bi0jeyRzdWZmaXhjbGFzc317XG4gICAgICAmOmhvdmVyeyBcbiAgICAgICAgY29sb3I6JGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xuICAgICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24tb3V0bGluZSggJHN1ZmZpeGNsYXNzLCAkY29sb3IsICRob3ZlcmNvbG9yICl7XG4gIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICYuYnRuLSN7JHN1ZmZpeGNsYXNzfXtcbiAgICAgIGNvbG9yOiRjb2xvcjtcbiAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgY29sb3I6JGhvdmVyY29sb3I7XG4gICAgICB9XG4gIH1cbn1cbi8vLyBidXR0b24gdmFyaWFudCBvdXRsaW5lXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQtb3V0bGluZSgkY29sb3IsICRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkY29sb3Job3ZlciwgJGJnaG92ZXIsICRib3JkZXJob3ZlciApIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIGNvbG9yOiAkY29sb3Job3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmdob3ZlcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyaG92ZXIgO1xuICB9XG4gIC5vcGVuICYgeyAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6ICRjb2xvcmhvdmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZ2hvdmVyO1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXJob3ZlciA7XG4gIH0gfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbiAgLm9wZW4gJiB7ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9IH1cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAmLFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG5cbiAgLmJhZGdlIHtcbiAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG4vLyBpY29uIHZhcmlhbnQgaW52ZXJzZVxuXG5AbWl4aW4gaWNvbnMtaW52ZXJzZSggJHN1ZmZpeGNsYXNzLCAgJGNvbG9yICwkYmFja2dyb3VuZCApe1xuIFxuICAmLmljb25zLSN7JHN1ZmZpeGNsYXNzfXtcbiAgICAgICY6aG92ZXJ7IFxuICAgICAgICBjb2xvcjokY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gIH1cbn1cbi8vIGljb24gdmFyaWFudCBvdXRsaW5lXG5cbkBtaXhpbiBpY29ucy1vdXRsaW5lKCAkc3VmZml4Y2xhc3MsICRjb2xvciwgJGhvdmVyY29sb3IgKXtcbiAgJi5pY29ucy0jeyRzdWZmaXhjbGFzc317XG4gIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjokY29sb3I7XG4gICAgICAmOmhvdmVye1xuICAgICAgICAgIGNvbG9yOiRob3ZlcmNvbG9yO1xuICAgICAgfVxuICB9XG59XG5cbi8vIEJsb2NrXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AbWl4aW4gYmxvY2stdmFyaWFudCgkYm9yZGVyLCAkaGVhZGluZy10ZXh0LWNvbG9yLCAkaGVhZGluZy1iZy1jb2xvciwgJGhlYWRpbmctYm9yZGVyKSB7XG4gICYgPiAuI3skYmxvY2stcHJlZml4fS1mb290ZXIge1xuICAgICsgLiN7JGJsb2NrLXByZWZpeH0tY29sbGFwc2UgLiN7JGJsb2NrLXByZWZpeH0tYm9keSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxufVxuXG4vKioqKi9cbi8qKioqL1xuQG1peGluIGNvbnRhaW5lci1sYXlvdXQtdmFyaWFudCgkY29sb3IsICRiYWNrZ3JvdW5kLCAkbGlua2NvbG9yICl7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBhe1xuICAgICAgY29sb3I6JGxpbmtjb2xvcjsgXG4gICAgICAmOmhvdmVye1xuICAgICAgICBjb2xvcjokbGluay1ob3Zlci1jb2xvcjsgXG4gICAgICB9ICBcbiAgICB9ICAgICAgICAgXG59XG5cbkBtaXhpbiB3aWRnZXQtc3BlY2ljYWwtc3R5bGUoKXtcbiAgLndpZGdldC1oZWFkaW5ne1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBzcGFue1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICBzcGFuLmRlc2NyaXB0aW9ue1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIH0gIFxuICAgfSBcbn0iLCIvLyBCb3ggU2l6ZVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbkBtaXhpbiBib3gtc2l6ZSgkYmFja2dyb3VuZCwgJHBhZGRpbmctdG9wLCRwYWRkaW5nLWJvdHRvbSl7XHJcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcclxuICAgIHBhZGRpbmctdG9wOiAkcGFkZGluZy10b3A7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmctYm90dG9tO1xyXG59XHJcblxyXG4vLyBCdXR0b25cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlciwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvci1ob3ZlciwgJGJvcmRlci1ob3ZlciwgJGJvcmRlci1yYWRpdXMpIHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcclxuICAgIGJvcmRlcjogJGJvcmRlcjtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMsXHJcbiAgICAmOmFjdGl2ZSxcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xyXG4gICAgICAgIGJvcmRlcjogJGJvcmRlci1ob3ZlcjtcclxuICAgIH1cclxuICAgIC5mYSwuaWNvbntcclxuICAgICAgICBmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZS1iYXNlO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxufVxyXG5cclxuLy8gQmxvY2tcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5AbWl4aW4gYmxvY2stdmFyaWFudCgkYm9yZGVyLCAkaGVhZGluZy10ZXh0LWNvbG9yLCAkaGVhZGluZy1iZy1jb2xvciwgJGhlYWRpbmctYm9yZGVyKSB7XHJcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcbiAgICBiYWNrZ3JvdW5kOiAkaGVhZGluZy1iZy1jb2xvcjtcclxuICAgICYgLiN7JGJsb2NrLWhlYWRpbmctc2VsZWN0b3J9IHtcclxuICAgICAgICAmIHNwYW46YmVmb3JlLCAmIHNwYW46YWZ0ZXJ7IGJhY2tncm91bmQ6JHdoaXRlOyB9XHJcbiAgICAgICAgY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctYmctY29sb3I7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkaGVhZGluZy1ib3JkZXI7XHJcbiAgICAgICAgKyAuI3skYmxvY2stcHJlZml4fS1jb2xsYXBzZSAuI3skYmxvY2stY29udGVudC1zZWxlY3Rvcn0ge1xyXG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYm9yZGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYgPiAuI3skYmxvY2stcHJlZml4fS1mb290ZXIge1xyXG4gICAgICAgICsgLiN7JGJsb2NrLXByZWZpeH0tY29sbGFwc2UgLiN7JGJsb2NrLXByZWZpeH0tYm9keSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gYmxvY2stZWxlbWVudHMtc3R5bGVzKCRib3JkZXIsICRoZWFkaW5nLXRleHQtY29sb3IsICRoZWFkaW5nLWJnLWNvbG9yLCAkaGVhZGluZy1ib3JkZXIsICR0ZXh0LWNvbG9yLCAkdGV4dC1jb2xvci1wcmltYXJ5KXtcclxuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcclxuICAgIGJhY2tncm91bmQ6ICRoZWFkaW5nLWJnLWNvbG9yO1xyXG4gICAgJiAuI3skYmxvY2staGVhZGluZy1zZWxlY3Rvcn0ge1xyXG4gICAgICAgIGNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLWJnLWNvbG9yO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGhlYWRpbmctYm9yZGVyO1xyXG4gICAgICAgICsgLiN7JGJsb2NrLXByZWZpeH0tY29sbGFwc2UgLiN7JGJsb2NrLWNvbnRlbnQtc2VsZWN0b3J9IHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJvcmRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmID4gLiN7JGJsb2NrLXByZWZpeH0tZm9vdGVyIHtcclxuICAgICAgICArIC4jeyRibG9jay1wcmVmaXh9LWNvbGxhcHNlIC4jeyRibG9jay1wcmVmaXh9LWJvZHkge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYm9yZGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyoqKiovXHJcbkBtaXhpbiBjb250YWluZXItbGF5b3V0LXZhcmlhbnQoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGxpbmtjb2xvciwgICR0b3BiYXItbGluay1jb2xvci1ob3ZlciApe1xyXG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgYXtcclxuICAgICAgICBjb2xvcjokbGlua2NvbG9yO1xyXG4gICAgfVxyXG4gICAgYTpob3ZlcntcclxuICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yLWhvdmVyO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLz09IElubGluZSBibG9ja1xyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gaW5saW5lLWJsb2NrICgkaGFzbGF5b3V0IDogdHJ1ZSl7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgQGlmICRoYXNsYXlvdXQgPT0gdHJ1ZSB7XHJcbiAgICAgICAgLmx0LWllOCAmIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAgICAgICB6b29tOiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy89PSB2ZXJ0aWNhbCBibG9ja1xyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gdmVydGljYWwtY2VudGVyKCAkd2lkdGg6IDEwMHB4LCAkaGVpZ2h0OiAxMDBweCkge1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgd2lkdGg6ICR3aWR0aDtcclxuICAgIGhlaWdodDogJGhlaWdodDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxufVxyXG5cclxuLy89PSBUcmFuc2xhdGUgWCAtIFkgLSBaXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiB0cmFuc2xhdGVYKCR4KSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgkeCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCR4KTsgLy8gSUU5IG9ubHlcclxuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgkeCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHgpO1xyXG59XHJcblxyXG5AbWl4aW4gdHJhbnNsYXRlWSgkeSkge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHkpO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgkeSk7IC8vIElFOSBvbmx5XHJcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHkpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCR5KTtcclxufVxyXG5cclxuQG1peGluIHRyYW5zbGF0ZVooJHopIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKCR6KTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVooJHopOyAvLyBJRTkgb25seVxyXG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVaKCR6KTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigkeik7XHJcbn1cclxuXHJcbi8vPT0gVHJhbnNmb3JtXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiB0cmFuc2Zvcm0oJGFyZ3VtZW50KXtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiAoJGFyZ3VtZW50KTtcclxuICAgIC1tb3otdHJhbnNmb3JtOiAoJGFyZ3VtZW50KTtcclxuICAgIC1tcy10cmFuc2Zvcm06ICgkYXJndW1lbnQpO1xyXG4gICAgLW8tdHJhbnNmb3JtOiAoJGFyZ3VtZW50KTtcclxuICAgIHRyYW5zZm9ybTogKCRhcmd1bWVudCk7XHJcbn1cclxuXHJcbi8vPT0gVHJhbnNmb3JtXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCR0aW1lMSwkdGltZTIpe1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAoJHRpbWUxLCR0aW1lMik7XHJcbiAgICAtbW96LXRyYW5zaXRpb24tZGVsYXk6ICgkdGltZTEsJHRpbWUyKTtcclxuICAgIC1tcy10cmFuc2l0aW9uLWRlbGF5OiAoJHRpbWUxLCR0aW1lMik7XHJcbiAgICAtby10cmFuc2l0aW9uLWRlbGF5OiAoJHRpbWUxLCR0aW1lMik7XHJcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAoJHRpbWUxLCR0aW1lMik7XHJcbn1cclxuXHJcbi8vPT0gQmFja2dyb3VuZCBTaXplXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiBiYWNrZ3JvdW5kLXNpemUoJHNpemUxLCRzaXplMikge1xyXG4gICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6ICgkc2l6ZTEsJHNpemUyKTtcclxuICAgIC1tb3otYmFja2dyb3VuZC1zaXplOiAoJHNpemUxLCRzaXplMik7XHJcbiAgICAtbXMtYmFja2dyb3VuZC1zaXplOiAoJHNpemUxLCRzaXplMik7XHJcbiAgICAtby1iYWNrZ3JvdW5kLXNpemU6ICgkc2l6ZTEsJHNpemUyKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogKCRzaXplMSwkc2l6ZTIpO1xyXG59XHJcblxyXG4vLz09IEJhY2tncm91bmQgb3JpZ2luXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiBiYWNrZ3JvdW5kLW9yaWdpbigkdmFsdWUxLCR2YWx1ZTIpe1xyXG4gICAgLXdlYmtpdC1iYWNrZ3JvdW5kLW9yaWdpbjogKCR2YWx1ZTEsJHZhbHVlMik7XHJcbiAgICAtbW96LWJhY2tncm91bmQtb3JpZ2luOiAoJHZhbHVlMSwkdmFsdWUyKTtcclxuICAgIC1tcy1iYWNrZ3JvdW5kLW9yaWdpbjogKCR2YWx1ZTEsJHZhbHVlMik7XHJcbiAgICAtby1iYWNrZ3JvdW5kLW9yaWdpbjogKCR2YWx1ZTEsJHZhbHVlMik7XHJcbiAgICBiYWNrZ3JvdW5kLW9yaWdpbjogKCR2YWx1ZTEsJHZhbHVlMik7XHJcbn1cclxuXHJcbi8vPT0gQm9yZGVyIHJhZGl1c1xyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzKSB7XHJcbiAgICBib3JkZXItcmFkaXVzICAgICAgICAgOiAkcmFkaXVzO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzIDogJHJhZGl1cztcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1cyAgICA6ICRyYWRpdXM7XHJcbiAgICAtbXMtYm9yZGVyLXJhZGl1cyAgICAgOiAkcmFkaXVzO1xyXG4gICAgLW8tYm9yZGVyLXJhZGl1cyAgICAgIDogJHJhZGl1cztcclxufVxyXG5cclxuLy89PSBUZXh0IFNoYWRvd1xyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gdGV4dC1zaGFkb3coJHNoYWRvdykge1xyXG4gICAgdGV4dC1zaGFkb3cgICAgICAgICA6ICRzaGFkb3c7XHJcbiAgICAtd2Via2l0LXRleHQtc2hhZG93IDogJHNoYWRvdztcclxuICAgIC1tb3otdGV4dC1zaGFkb3cgICAgOiAkc2hhZG93O1xyXG4gICAgLW1zLXRleHQtc2hhZG93ICAgICA6ICRzaGFkb3c7XHJcbiAgICAtby10ZXh0LXNoYWRvdyAgICAgIDogJHNoYWRvdztcclxufVxyXG5cclxuLy89PSBUcmFuc2Zvcm0gT3JpZ2luXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW5YLCRvcmlnaW5ZKSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW4gOiAkb3JpZ2luWCAkb3JpZ2luWTtcclxuICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbiAgICA6ICRvcmlnaW5YICRvcmlnaW5ZO1xyXG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW4gICAgIDogJG9yaWdpblggJG9yaWdpblk7IC8vIElFOSBvbmx5XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luICAgICAgICAgOiAkb3JpZ2luWCAkb3JpZ2luWTtcclxufVxyXG5cclxuLy89PSBhcHBlYXJhbmNlXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiBhcHBlYXJhbmNlKCkge1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlIDogbm9uZTtcclxuICAgIC1tb3otYXBwZWFyYW5jZSAgICA6IG5vbmU7XHJcbiAgICAtby1hcHBlYXJhbmNlICAgICAgOiBub25lO1xyXG4gICAgLW1zLWFwcGVhcmFuY2UgICAgIDogbm9uZTtcclxuICAgIGFwcGVhcmFuY2UgICAgICAgICA6IG5vbmU7XHJcbn1cclxuXHJcbi8vPT0gc2VsZWN0aW9uXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiRwcmVmaXhlczogKFwiLW1vei1cIiwgXCJcIik7XHJcbkBtaXhpbiBzZWxlY3Rpb24oJGNvbG9yLCAkYmFja2dyb3VuZCkge1xyXG4gICAgQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXMge1xyXG4gICAgICAgIDo6I3skcHJlZml4fXNlbGVjdGlvbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy89PSBhbmltYXRpb24gZmlsbCBtb2RlXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiBhbmltYXRpb24tZmlsbC1tb2RlKCRmaWxsKSB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsO1xyXG4gICAgLW1vei1hbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbDtcclxuICAgIC1vLWFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsO1xyXG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGw7XHJcbn1cclxuXHJcbi8vPT0gZmlsdGVyXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiBmaWx0ZXIoJGFyZ3VtZW50KXtcclxuICAgIGZpbHRlciAgICAgICAgIDogJGFyZ3VtZW50O1xyXG4gICAgLXdlYmtpdC1maWx0ZXIgOiAkYXJndW1lbnQ7XHJcbiAgICAtbW96LWZpbHRlciAgICA6ICRhcmd1bWVudDtcclxuICAgIC1vLWZpbHRlciAgICAgIDogJGFyZ3VtZW50O1xyXG4gICAgLW1zLWZpbHRlciAgICAgOiAkYXJndW1lbnQ7XHJcbn1cclxuXHJcbi8vIENsZWFyIExpc3RzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuQG1peGluIGNsZWFyLWxpc3QoKXtcclxuICAgIHBhZGRpbmcgICAgOiAwO1xyXG4gICAgbWFyZ2luICAgICA6IDA7XHJcbiAgICBsaXN0LXN0eWxlIDogbm9uZTtcclxufVxyXG5cclxuLy8gRm9ybWFydCBsaXN0cyB3aWRnZXRcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5AbWl4aW4gbGlzdHMtc3R5bGUoKSB7XHJcbiAgICB1bCxvbHtcclxuICAgICAgICBAaW5jbHVkZSBjbGVhci1saXN0KCk7XHJcbiAgICAgICAgbGl7XHJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGR7XHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuY2hpbGRyZW57XHJcbiAgICAgICAgICAgICAgICA+IGxpe1xyXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHVse1xyXG4gICAgICAgICAgICBsaTpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAyNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNwaW5Bcm91bmR7XHJcbiAgICBmcm9tIHstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMGRlZyk7XHJcbi1tb3otdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTtcclxuLW1zLXRyYW5zZm9ybTpyb3RhdGUoMGRlZyk7XHJcbi1vLXRyYW5zZm9ybTpyb3RhdGUoMGRlZyk7XHJcbnRyYW5zZm9ybTpyb3RhdGUoMGRlZyk7fVxyXG4gICAgdG8gey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpO1xyXG4tbW96LXRyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKTtcclxuLW1zLXRyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKTtcclxuLW8tdHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpO1xyXG50cmFuc2Zvcm06cm90YXRlKDM2MGRlZyk7fVxyXG59XHJcbi8qIEhpZW4gdGhpIGNobyBTYWZhcmkgYW5kIENocm9tZSAqL1xyXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3BpbkFyb3VuZCB7XHJcbiAgICBmcm9tIHstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMGRlZyk7XHJcbi1tb3otdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTtcclxuLW1zLXRyYW5zZm9ybTpyb3RhdGUoMGRlZyk7XHJcbi1vLXRyYW5zZm9ybTpyb3RhdGUoMGRlZyk7XHJcbnRyYW5zZm9ybTpyb3RhdGUoMGRlZyk7fVxyXG4gICAgdG8gey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpO1xyXG4tbW96LXRyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKTtcclxuLW1zLXRyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKTtcclxuLW8tdHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpO1xyXG50cmFuc2Zvcm06cm90YXRlKDM2MGRlZyk7fVxyXG59XHJcbi8qIEhpZW4gdGhpIGNobyBGaXJlZm94ICovXHJcbkAtbW96LWtleWZyYW1lcyBzcGluQXJvdW5ke1xyXG4gICAgZnJvbSB7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDBkZWcpO1xyXG4tbW96LXRyYW5zZm9ybTpyb3RhdGUoMGRlZyk7XHJcbi1tcy10cmFuc2Zvcm06cm90YXRlKDBkZWcpO1xyXG4tby10cmFuc2Zvcm06cm90YXRlKDBkZWcpO1xyXG50cmFuc2Zvcm06cm90YXRlKDBkZWcpO31cclxuICAgIHRvIHstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKTtcclxuLW1vei10cmFuc2Zvcm06cm90YXRlKDM2MGRlZyk7XHJcbi1tcy10cmFuc2Zvcm06cm90YXRlKDM2MGRlZyk7XHJcbi1vLXRyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKTtcclxudHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpO31cclxufVxyXG5cclxuLyogSGllbiB0aGkgY2hvIE9wZXJhICovXHJcbkAtby1rZXlmcmFtZXMgc3BpbkFyb3VuZHtcclxuICAgIGZyb20gey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTtcclxuLW1vei10cmFuc2Zvcm06cm90YXRlKDBkZWcpO1xyXG4tbXMtdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTtcclxuLW8tdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTtcclxudHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTt9XHJcbiAgICB0byB7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDM2MGRlZyk7XHJcbi1tb3otdHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpO1xyXG4tbXMtdHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpO1xyXG4tby10cmFuc2Zvcm06cm90YXRlKDM2MGRlZyk7XHJcbnRyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKTt9XHJcbn1cclxuQGltcG9ydCBcImZ1bmN0aW9uc1wiO1xyXG5cclxuIiwiLyohXG4gKiBCb290c3RyYXAgdjMuMy41IChodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbSlcbiAqIENvcHlyaWdodCAyMDExLTIwMTUgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqL1xuIGltZ3tcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OmF1dG87XG4gfVxuIFxuIC5zdGlja3l7XG4gICAgYm9yZGVyOjFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICAuZW50cnktY29udGVudHtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cbiB9XG4vKiBJbWFnZXMgKi9cbi5hbGlnbmNlbnRlcixcbmRpdi5hbGlnbmNlbnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiA1cHggYXV0byA1cHggYXV0bztcbn1cblxuLmFsaWducmlnaHQge1xuICAgIGZsb2F0OnJpZ2h0O1xuICAgIG1hcmdpbjogNXB4IDAgMjBweCAyMHB4O1xufVxuXG4uYWxpZ25sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDtcbn1cblxuYSBpbWcuYWxpZ25yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogNXB4IDAgMjBweCAyMHB4O1xufVxuXG5hIGltZy5hbGlnbm5vbmUge1xuICAgIG1hcmdpbjogNXB4IDIwcHggMjBweCAwO1xufVxuXG5hIGltZy5hbGlnbmxlZnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogNXB4IDIwcHggMjBweCAwO1xufVxuXG5hIGltZy5hbGlnbmNlbnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvXG59XG5cbi53cC1jYXB0aW9uIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbToyMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbn1cbi53cC1jYXB0aW9uLmFsaWdubGVmdCB7XG4gICAgbWFyZ2luOiA1cHggMjBweCAyMHB4IDA7XG59XG5cbi53cC1jYXB0aW9uLmFsaWducmlnaHQge1xuICAgIG1hcmdpbjogNXB4IDAgMjBweCAyMHB4O1xufVxuLndwLWNhcHRpb24uYWxpZ25ub25le1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi53cC1jYXB0aW9uIGltZyB7XG4gICAgYm9yZGVyOiAwIG5vbmU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXgtd2lkdGg6IDk4LjUlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IGF1dG87XG59XG5cbi53cC1jYXB0aW9uIHAud3AtY2FwdGlvbi10ZXh0IHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgNHB4IDVweDtcbn1cbi53cC1jYXB0aW9uIC53cC1jYXB0aW9uLXRleHQsXG4uZW50cnktY2FwdGlvbixcbi5nYWxsZXJ5LWNhcHRpb24ge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogMzAwO1xuICBtYXJnaW46IDAgMCAyNHB4O1xufVxuLyogVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVycy4gKi9cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMjE3NTliO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsZWZ0OiA1cHg7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRvcDogNXB4O1xuICB3aWR0aDogYXV0bztcbiAgei1pbmRleDogMTAwMDAwOyAvKiBBYm92ZSBXUCB0b29sYmFyLiAqL1xufVxuXG4ubm9wYWRkaW5ne1xuICAgcGFkZGluZzowIWltcG9ydGFudDtcbiAgIG1hcmdpbjowIWltcG9ydGFudDtcbn1cblxuLnZpZGVvLXJlc3BvbnNpdmUge1xuICAgIGhlaWdodDogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICAgIG1hcmdpbi1ib3R0b20gOiAxMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICBlbWJlZCxpZnJhbWUsb2JqZWN0LHZpZGVve1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgQGluY2x1ZGUgc3F1YXJlKHBlcmNlbnRhZ2UoMSkpO1xuICB9XG59XG4gXG4uYXVkaW8tcmVzcG9uc2l2ZXtcbiAgaWZyYW1le1xuICAgIEBpbmNsdWRlIHNpemUocGVyY2VudGFnZSgxKSwgMTI2cHgpO1xuICB9XG59XG4ubGlzdHN7XG4gIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAgNXB4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhe1xuICAgICAgY29sb3I6ICRiby1saXN0LWEtY29sb3I7XG4gICAgICAmOmhvdmVye1xuICAgICAgICBjb2xvcjogJGJvLWxpc3QtYS1jb2xvci1ob3ZlcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICBpeyAgXG4vKiAgICAgICBjb2xvcjogJGJvLWxpc3QtY29sb3I7ICAgKi8gIFxuICAgICAgQGluY2x1ZGUgcnRsLW1hcmdpbi1yaWdodCgxMHB4KTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMnB4O1xuICAgIH1cbiAgfVxuICAmLmxpc3RzLWxpZ2h0IHtcbiAgICBsaSB7XG4gICAgICAmLCBhLCBpIHtcbiAgICAgICAgY29sb3I6ICRiby1saXN0LWxpZ2h0LWEtY29sb3I7XG4gICAgICB9XG4gICAgICBhe1xuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgIGNvbG9yOiAkYm8tbGlzdC1saWdodC1hLWNvbG9yLWhvdmVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYubGlzdC1zdHlsZS1jaXJjbGUsXG4gICYubGlzdC1zdHlsZS1kaXNjIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBsaXtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICY6YmVmb3Jle1xuICAgICAgICBjb2xvcjogJGJvLWxpc3QtY29sb3I7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnOyBcbiAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgbGVmdDogLTIwcHg7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmLmxpc3RzLWxpZ2h0IHtcbiAgICAgIGxpIHtcbiAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgY29sb3I6ICRiby1saXN0LWxpZ2h0LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYubGlzdC1zdHlsZS1jaXJjbGV7XG4gICAgbGl7XG4gICAgICAmOmJlZm9yZXtcbiAgICAgICAgY29udGVudDogXCJcXGYxMGNcIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5saXN0LXN0eWxlLWRpc2N7XG4gICAgbGl7XG4gICAgICAmOmJlZm9yZXtcbiAgICAgICAgY29udGVudDogXCJcXGYxMTFcIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5saXN0LXN0eWxlLXNxdWFyZSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgbGl7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAmOmJlZm9yZXtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgdG9wOiAxMHB4OyAgICAgICAgXG4gICAgICAgICAgbGVmdDogLTE1cHg7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIEBpbmNsdWRlIHNpemUoNHB4LDRweCk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJvLWxpc3QtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICAgICYubGlzdHMtbGlnaHQge1xuICAgICAgbGkge1xuICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm8tbGlzdC1saWdodC1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYubGlzdC1zdHlsZS1udW1iZXIge1xuICAgICAgY291bnRlci1yZXNldDogbGk7XG4gICAgICBsaXN0LXN0eWxlOiBvdXRzaWRlIG5vbmUgZGVjaW1hbDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29sb3I6ICRiby1saXN0LWNvbG9yOztcbiAgICAgICAgICBjb250ZW50OiBjb3VudGVyKGxpLCBkZWNpbWFsKTtcbiAgICAgICAgICBjb3VudGVyLWluY3JlbWVudDogbGk7XG4gICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB9XG5cbiAgICB9XG4gICAgJi5saXN0cy1saWdodCB7XG4gICAgICBsaSB7XG4gICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgIGNvbG9yOiAkYm8tbGlzdC1saWdodC1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1yb3cge1xuICAgIEBleHRlbmQgLmZvcm0tZ3JvdXA7XG59XG4vKipcbiAqIDQuMCBFbGVtZW50c1xuICovXG5cbmhyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAwLjEpO1xuICBib3JkZXI6IDA7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW4tYm90dG9tOiAxLjZlbTtcbn1cblxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxLjZlbTtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAxLjZlbTtcbn1cblxudGFibGUsXG50aCxcbnRkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VhZWFlYTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg1MSwgNTEsIDUxLCAwLjEpO1xufVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBib3JkZXItd2lkdGg6IDFweCAwIDAgMXB4O1xuICBtYXJnaW46IDAgMCAxLjZlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbmNhcHRpb24sXG50aCxcbnRkIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxudGgge1xuICBib3JkZXItd2lkdGg6IDAgMXB4IDFweCAwO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG50ZCB7XG4gIGJvcmRlci13aWR0aDogMCAxcHggMXB4IDA7XG59XG5cbnRoLCB0ZCB7XG4gIHBhZGRpbmc6IDAuNGVtO1xufVxuXG5pbWcge1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICBib3JkZXI6IDA7XG4gIGhlaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbmRlbCB7XG4gIG9wYWNpdHk6IDAuODtcbn1cbmlucHV0e1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjcxNDtcbiAgcGFkZGluZzogMTJweCAxNXB4O1xuICAmW3R5cGU9XCJyYWRpb1wiXSwgJlt0eXBlPVwiY2hlY2tib3hcIl17XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIFxufVxuLnBvc3QtcGFzc3dvcmQtZm9ybXtcbiAgaW5wdXRbIHR5cGU9XCJzdWJtaXRcIl17XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbiAgICBwYWRkaW5nLWxlZnQ6ICAyNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgJjpob3ZlcntcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgfVxuICB9XG59IiwiLy8vLy8vLy8vLy8gVEVNUExBVEVTIExBWU9VVCAvLy8vLy8vLy8vL1xuXG4kYXBwLXByZWZpeCAgICAgICAgICAgICAgICAgICAgICA6IG9wYWwgIWRlZmF1bHQ7XG4kdmMtcHJlZml4ICAgICAgICAgICAgICAgICAgICAgICA6IHdwb3BhbF8gIWRlZmF1bHQ7XG5cbmJvZHl7XG4gICAgb3ZlcmZsb3cteDpoaWRkZW47XG4gICAgLW1zLXdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgJi5ob21lLCYucGFnZXtcbiAgICAgICAgLm9wYWwtZm9vdGVye1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI21haW4ge1xuICAgIC5jb250YWluZXJ7IFxuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTsgXG4gICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG59XG4jc2l0ZS1oZWFkZXJ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmhvbWUtYmFja2dyb3VuZHtcbn1cbi8qKlxuICogUGFnZSBTdHlsZVxuICovXG4jcGFnZXtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWxlZnQ6YXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAmLnBhZ2Utc3RhdGljLWxlZnR7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuMjVzIGVhc2Utb3V0KTtcbiAgICAgICAgJi5hY3RpdmV7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjI1cyBlYXNlLW91dCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBydGwtbWFyZ2luLWxlZnQoMjUwcHgpO1xuICAgICAgICAgICAgLnNpZGViYXItc3RhdGljLWxlZnR7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4yNXMgZWFzZS1vdXQpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1sZWZ0KCAwICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5hY3RpdmUgLmJ1dHRvbi1hY3Rpb246YmVmb3Jle1xuICAgICAgICBjb250ZW50OiBcIlxcZjA2MFwiXG4gICAgfVxufVxuXG4uc2lkZWJhci1zdGF0aWMtbGVmdHtcbiAgICBiYWNrZ3JvdW5kOiMyODI4Mjg7XG4gICAgY29sb3I6ICNDQ0M7XG4gICAgcG9zaXRpb246Zml4ZWQ7XG4gICAgQGluY2x1ZGUgcnRsLWxlZnQoIC0yOTBweCApO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDMwMHB4O1xuICAgIHotaW5kZXg6IDk5OTk5O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuMjVzIGVhc2Utb3V0KTtcbiAgICAuaW5uZXJ7XG4gICAgICAgIHBhZGRpbmc6MzBweDsgXG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICBcbiAgICB9XG5cbiAgICAuYnV0dG9uLWFjdGlvbntcbiAgICAgICAgYmFja2dyb3VuZDpyZWQ7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICByaWdodDogLTQwcHg7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBjb2xvcjogI0NDQztcbiAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZjA2MVwiO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzOHB4O1xuICAgICAgICAgICAgd2lkdGg6IDM4cHg7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4vKipcbiAqIFRvcGJhciBsYXlvdXQgc3R5bGVzXG4gKi9cbi4jeyRhcHAtcHJlZml4fS10b3BiYXJ7ICAgIFxuICAgIHRleHQtdHJhbnNmb3JtIDogJHRvcGJhci10ZXh0LXRyYW5zZm9ybTtcbiAgICBmb250LXNpemUgICAgICA6ICR0b3BiYXItZm9udC1zaXplIDtcbiAgICBwYWRkaW5nICAgICAgICA6ICR0b3BiYXItcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWJnO1xuICAgIGNvbG9yOiAkdG9wYmFyLWNvbG9yO1xuICAgXHQubGlzdC1pbmxpbmV7XG4gICBcdFx0bWFyZ2luOiAwOyBwYWRkaW5nOjA7XG4gICAgICAgIGxpe1xuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRvcGJhci1jb2xvcjtcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGl7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICBcdH1cbiAgICAuc29jaWFse1xuICAgICAgICBsaXtcbiAgICAgICAgICAgIHNwYW57XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxufVxuLmVtYWlsLWhlYWRlcntcbiAgICBwYWRkaW5nOiAwIDM1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6YWZ0ZXJ7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtMTJweDtcbiAgICAgICAgQGluY2x1ZGUgcnRsLXJpZ2h0KDVweCk7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGhlaWdodDogNDNweDtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyYXktZGFyaztcbiAgICB9XG4gICAgYXtcbiAgICAgICAgY29sb3I6ICR0b3BiYXItY29sb3I7XG4gICAgfVxuICAgIHNwYW46YmVmb3Jle1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgfVxufVxuLnRvcGJhci1tb2JpbGV7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogJHRoZW1lLWNvbG9yO1xuICAgIGRpc3BsYXk6IHRhYmxlOyBcbiAgICAuYnRuLW9mZmNhbnZhc3tcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICB9XG4gICAgLmZhe1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxufVxuLnNlYXJjaC1jYXRlZ29yeXtcbiAgICAuYnRuLXNlYXJjaHtcbiAgICAgICAgaW5wdXR7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4uYWN0aXZlLW1vYmlsZXtcbiAgICBsaW5lLWhlaWdodDo0OHB4O1xuICAgIEBpbmNsdWRlIHNpemUoNDhweCw0OHB4KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuM3MgZWFzZSAwcyk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICY6aG92ZXJ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkdGhlbWUtY29sb3IsIDUlKSAhaW1wb3J0YW50O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIC5hY3RpdmUtY29udGVudHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBAaW5jbHVkZSBydGwtbGVmdCgwKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1yaWdodChhdXRvKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYWN0aXZlLWNvbnRlbnR7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiA5OTk5OTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogJHRoZW1lLW1hcmdpbiAtIDEwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmNmYwO1xuICAgICAgICBAaW5jbHVkZSBydGwtbGVmdCgtMTAwMDBweCk7XG4gICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbWluLXdpZHRoOiAyNzBweDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBAaW5jbHVkZSBydGwtcmlnaHQoMCk7XG4gICAgICAgIEBpbmNsdWRlIHJ0bC10ZXh0LWFsaWduLWxlZnQoKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDAuM3MgZWFzZSAwcyk7XG4gICAgICAgIHAudG90YWx7XG4gICAgICAgICAgICBjb2xvcjogJGdyYXk7XG4gICAgICAgIH1cbiAgICAgICAgLmNhcnRfbGlzdCB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdWx7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpe1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnNlYXJjaC1jYXRlZ29yeS1jb250YWluZXJ7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5zZWFyY2gtY2F0ZWdvcnktaW5wdXR7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShmb250LXNpemUsMTVweCk7XG4gICAgICAgIGhlaWdodDogNDJweDtcbiAgICB9XG4gICAgLmlucHV0LWdyb3VwLWJ0bntcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICAgIGJhY2tncm91bmQ6JHRoZW1lLWNvbG9yO1xuICAgIH1cbiAgICAuYnRuLXNlYXJjaHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgLmZhe1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIC53aWRnZXRfc2hvcHBpbmdfY2FydF9jb250ZW50e1xuICAgICAgICAuYnRue1xuICAgICAgICAgICAgcGFkZGluZzogOHB4IDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4uc2VhcmNoLWNhdGVnb3J5e1xuICAgIGJvcmRlcjpzb2xpZCAycHggJHRoZW1lLWNvbG9yO1xuICAgIC5zZWFyY2gtY2F0ZWdvcnktY29udGFpbmVyeyAgICAgIFxuICAgICAgICBiYWNrZ3JvdW5kOiNGRkZGRkY7XG4gICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICBpbnB1dHsgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IGJvcmRlci1jb2xvcjokdGhlbWUtY29sb3IgOyBjb2xvcjokYmxhY2s7IH1cbiAgICAgICAgYm9yZGVyLXJhZGl1czowcHggJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlIDBweDtcbiAgICAgICAgbWluLXdpZHRoOiBhdXRvO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgcGFkZGluZzoycHggMTBweCAycHggMTBweCAhaW1wb3J0YW50O1xuICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6I0NDQztcbiAgICAgICAgfVxuICAgICAgICBzZWxlY3R7IFxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czowIDAgMCFpbXBvcnRhbnQ7ICBcbiAgICAgICAgICAgIGJvcmRlcjpub25lICFpbXBvcnRhbnQ7IFxuICAgICAgICAgICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudCFpbXBvcnRhbnQ7ICBcbiAgICAgICAgICAgIGJveC1zaGFkb3c6MCAwIDAhaW1wb3J0YW50OyBcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0Om5vcm1hbDsgbWFyZ2luLXJpZ2h0OjJweDsgIFxuICAgICAgICB9XG4gICAgfVxuICAgIC5zZWFyY2gtY2F0ZWdvcnktaW5wdXR7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgIH1cbiAgICAuYnRuLXNlYXJjaHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG5cbiAgICAgICAgfVxuICAgIH1cbn1cbiMjeyRhcHAtcHJlZml4fS1sb2dve1xuICAgICYubG9nby10aGVtZXtcbiAgICB9XG4gICAgJi5sb2dvLWltYWdle1xuXG4gICAgfVxufVxuLyoqXG4gKiBIZWFkZXIgTGF5b3V0IHN0eWxlc1xuICovXG4jI3skYXBwLXByZWZpeH0tbWFzdGhlYWR7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC5oZWFkZXItbWFpbntcbiAgICAgICAgcGFkZGluZzogMzBweCAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JheS1kYXJrO1xuICAgIH1cbiAgICAuaGVhZGVyLXJpZ2h0e1xuICAgICAgICBwYWRkaW5nLXRvcDogMjJweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICAmLmhlYWRlci1hYnNvbHV0ZXtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogOTk5OTtcbiAgICAgICAgLmhlYWRlci1tYWlue1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDA7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDAgMCAxcHggMDtcbiAgICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC4yKTtcbiAgICAgICAgfVxuICAgICAgICAubmF2YmFyLW1lZ2EgLm5hdmJhci1uYXYgPiBsaXtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgICAgICAgfVxuICAgICAgICAub3BhbC1oZWFkZXItcmlnaHR7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICAgICAgfVxuICAgICAgICAuY2FydC1pY29uIGl7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICAgICAgLmJveC11c2VyID4gYXtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaGFzLXN0aWNreS5rZWVwdG9we1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyYXktZGFyaztcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmhlYWRlci12MntcbiAgICAgICAgLm9wYWwtdG9wYmFye1xuICAgICAgICB9XG4gICAgICAgIC5oZWFkZXItbWFpbntcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogMjVweCAwO1xuICAgICAgICB9XG4gICAgICAgIC5uYXZiYXItbWVnYSAubmF2YmFyLW5hdiA+IGxpe1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAyN3B4O1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLWxnKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAxOHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50ZXh0LWNhbGx7XG4gICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHRlcjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBzcGFue1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5oZWFkZXItcmlnaHR7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTRweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmhlYWRlci12M3tcbiAgICAgICAgLm9wYWwtdG9wYmFye1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgICAgICAgICAgIC5saXN0LWlubGluZSBsaSBpe1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheS1saWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaGVhZGVyLW1haW57XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAub3BhbC1tYWlubWVudXtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRncmF5LWRhcms7XG4gICAgICAgIH1cbiAgICAgICAgLmJveC10b3AgLmJveC1zZXJ2aWNlLXRvcHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBzcGFue1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6MDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6MDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5lbWFpbC1oZWFkZXJ7XG4gICAgICAgICAgICBzcGFuOmJlZm9yZXtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlM2UzZTM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJveC11c2VyIGksLnNlYXJjaC1ib3gtd3JhcHBlciBpe1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG4gICAgICAgIC5jYXJ0LWljb24gaXtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi8qKlxuICogU2VhcmNoIGJsb2NrIGxheW91dCBhbmQgc3R5bGVzXG4gKi9cbi5ib3gtdXNlcntcbiAgICBzcGFuIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24gKGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIEBpbmNsdWRlIHJ0bC1sZWZ0KC0xNXB4KTtcbiAgICAgICAgQGluY2x1ZGUgcnRsLXJpZ2h0KGF1dG8pOyBcbiAgICAgICAgdG9wOiAxODAlO1xuICAgICAgICBtYXJnaW46IC0xcHggMCAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDApOyAgXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDMwMG1zIGVhc2UtaW4tb3V0IDBzKTtcbiAgICAgICAgYm9yZGVyOiBtZWRpdW0gbm9uZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1pbi13aWR0aDoxNTBweDtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIHotaW5kZXg6IDk5OSA7XG4gICAgICAgIGltZ3tcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgbGl7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcHggMjBweDtcbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAgIC5kcm9wZG93bi1tZW51e1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7IFxuICAgICAgICAgICAgdG9wOjE2MCUgO1xuICAgICAgICB9XG4gICAgfVxufVxuLnNlYXJjaC1ib3gtd3JhcHBlcntcbiAgICAuc2VhcmNoLWZvY3Vze1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgfVxuICAgIGl7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG59XG5cbi5zZWFyY2gtYm94e1xuICAgIC5pbnB1dC1ncm91cC1hZGRvbntcbiAgICAgICAgYmFja2dyb3VuZDojRkZGRkZGO1xuICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgaW5wdXR7IGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyBib3JkZXItY29sb3I6JHRoZW1lLWNvbG9yIDsgY29sb3I6JGJsYWNrOyB9XG4gICAgICAgIGJvcmRlci1yYWRpdXM6MHB4ICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAwcHg7XG4gICAgICAgIG1pbi13aWR0aDogYXV0bztcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIHBhZGRpbmc6MnB4IDEwcHggMnB4IDEwcHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgaW5wdXQsIHNlbGVjdHsgYm9yZGVyOm5vbmUgOyBib3JkZXItcmFkaXVzOiRib3JkZXItcmFkaXVzLWJhc2U7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3gtc2hhZG93Om5vbmU7ICB9XG4gICAgc2VsZWN0eyBib3JkZXItcmFkaXVzOjAgMCAwIWltcG9ydGFudDsgIGJvcmRlcjpub25lICFpbXBvcnRhbnQ7IGJhY2tncm91bmQ6dHJhbnNwYXJlbnQhaW1wb3J0YW50OyAgYm94LXNoYWRvdzowIDAgMCFpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgbWFyZ2luLXJpZ2h0OjJweDsgIH1cbiAgICAmLnNlYXJjaC1ib3gtc2ltcGxle1xuICAgICAgICBtYXJnaW4tdG9wOjE1cHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgIC5pbnB1dC1ncm91cHsgXG4gICAgICAgICAgICBcbiAgICAgICAgfVxuICAgICAgICAuaW5wdXQtZ3JvdXAtYWRkb257IFxuICAgICAgICAgICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC10ZXh0LWFsaWduLXJpZ2h0KCk7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICB9IFxuICAgICAgICB9ICBcbiAgICAgICAgaW5wdXR7IGNvbG9yOiMwMDAwMDAgfSBcbiAgICB9XG4gICAgJi5zZWFyY2gtYm94LWxpZ2h0e1xuICAgICAgICAuaW5wdXQtZ3JvdXB7IFxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czokYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gICAgICAgICAgICBib3JkZXI6MnB4IHNvbGlkICNlYmViZWI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50b2dnbGUtb3ZlcmxheS1jb250YWluZXJ7IFxuICAgIC5zZWFyY2gtYm94IHtcbiAgICAgICAgLmlucHV0LWdyb3Vwe1xuICAgICAgICAgICAgYm9yZGVyOnNvbGlkIDJweCAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAuZm9ybS1jb250cm9seyBoZWlnaHQ6IDUwcHggfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5kcm9wZG93bi10b2dnbGUtYnV0dG9ue1xuICAgICAgICB3aWR0aDogODZweDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZsb2F0OnJpZ2h0O1xuICAgICAgICBiYWNrZ3JvdW5kOiNGMmYyZjI7XG4gICAgICAgIGN1cnNvcjogaGFuZDtjdXJzb3I6cG9pbnRlcjtcbiAgICB9XG4gICAgei1pbmRleDogMTA7XG4gICAgYmFja2dyb3VuZDojRkZGRkZGO1xuICAgICYuYWN0aXZle1xuICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgdmlzaWJpbGl0eTp2aXNpYmxlO1xuICAgIH1cbn1cblxuLyoqXG4gKiBNYXNzIEJvdHRvbSBIZWFkZXIgU3R5bGVzXG4gKi9cblxuLyoqXG4gKiBNYWluIG1lbnUgc3R5bGVzXG4gKi9cbi4jeyRhcHAtcHJlZml4fS1tYWlubWVudXtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4vKipcbiAqIEJyZWFkc2NydW1iIGNvbnRlbnQgc3R5bGVcbiAqL1xuIyN7JGFwcC1wcmVmaXh9LWJyZWFkc2NydW1ie1xuICAgIGNvbG9yOiAkZ3JheS1saWdodGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRpbWFnZS10aGVtZS1za2lufWJnLWJyZWFkY3J1bS5qcGcnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWF4KXsgIFxuICAgICAgICBwYWRkaW5nOiA4MHB4IDA7XG4gICAgICAgIEBpbmNsdWRlIHJ0bC10ZXh0LWFsaWduLXJpZ2h0KCk7XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCl7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIC5icmVhZGNydW1iIHtcbiAgICAgICAgbWFyZ2luOiAwOyBcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyAgICAgICAgICBcbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1jb2xvcjtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2RhZGFkYTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAkYnJlYWRjcnVtYi1zZXBhcmF0b3I7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgfSAgXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuLyogICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTsgKi9cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9ICAgICAgICBcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICA+IGxpICsgbGk6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpe1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyAgXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB0b3A6IC0xNXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgICAgICB9ICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICArIC5jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gICAgfVxufVxuXG4vKipcbiAqIEZvb3RlciBsYXlvdXQgc3R5bGVzXG4gKi9cbi4jeyRhcHAtcHJlZml4fS1mb290ZXJ7IFxuICAgIGNvbG9yOiAkbGlnaHQtZ3JheTsgICAgICAgXG4gICAgLmZvb3Rlci10b3B7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgYmFja2dyb3VuZDojM2IzYjNiIHVybCgnI3skaW1hZ2UtdGhlbWUtcGF0aH1iZy1uZXdzbGV0dGVyLmpwZycpIG5vLXJlcGVhdCB0b3AgcmlnaHQ7XG4gICAgfVxuICAgIC5mb290ZXItY2VudGVyeyB9XG4gICAgLmZvb3Rlci1ib3R0b217XG4gICAgICAgIGNvbG9yOiRmb290ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQ6ICB1cmwoJyN7JGltYWdlLXRoZW1lLXBhdGh9YmctZm9vdGVyLmpwZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4OyAgICAgXG4gICAgIH1cbiAgICAua2Nfc2luZ2xlX2ltYWdle1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgfVxuICAgIC53aWRnZXR7XG4gICAgICAgIGF7XG4gICAgICAgICAgICBjb2xvcjokZm9vdGVyLWNvbG9yO1xuICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSAgIFxufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICBDb3B5cmlnaHRcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uI3skYXBwLXByZWZpeH0tY29weXJpZ2h0e1xuICAgIGZvbnQtc2l6ZTogJGNvcHlyaWdodC1mb250LXNpemU7XG4gICAgcGFkZGluZy10b3A6ICRjb3B5cmlnaHQtcGFkZGluZy10b3A7XG4gICAgcGFkZGluZy1ib3R0b206ICRjb3B5cmlnaHQtcGFkZGluZy1ib3R0b207XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjEpO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHggMCAwIDA7XG4gICAgYmFja2dyb3VuZDogIzJmMmYyZjtcbiAgICAuI3skYmxvY2stc2VsZWN0b3J9IHtcbiAgICAgICAgLiN7JGJsb2NrLWhlYWRpbmctc2VsZWN0b3J9e1xuICAgICAgICAgICAgY29sb3I6ICRmb290ZXItaGVhZGluZy1jb2xvcjtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiAkZm9vdGVyLWhlYWRpbmctdHJhbnNmb3JtO1xuICAgICAgICAgICAgbWFyZ2luOiAkZm9vdGVyLWhlYWRpbmctbWFyZ2luO1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKGZvbnQtc2l6ZSwkZm9vdGVyLWhlYWRpbmctZm9udC1zaXplKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBhe1xuICAgICAgICBjb2xvcjogJGNvcHlyaWdodC1saW5rLWNvbG9yO1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZXtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxufVxuLmhhcy1zdGlja3kge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgdG9wOiAtNTBweDtcbiAgICAmLmtlZXB0b3B7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uICggYWxsIDAuNnMgZWFzZSAwcyk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiR3aGl0ZTtcbiAgICAgICAgei1pbmRleDogMTA1MDtcbiAgICB9XG59IiwiLyogYmxvY2sgKi9cblxuLiN7JGJsb2NrLXNlbGVjdG9yfSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGJsb2NrLW1vZHVsZS1tYXJnaW4tYm90dG9tO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAuI3skYmxvY2staGVhZGluZy1zZWxlY3Rvcn17XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBAaW5jbHVkZSBydGwtcGFkZGluZy1sZWZ0KDE1cHgpO1xuICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBAaW5jbHVkZSBydGwtbGVmdCgwKTtcbiAgICAgICAgICAgIHdpZHRoOiA1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH0gXG4gICAgfVxuICAgIC4jeyRibG9jay1jb250ZW50LXNlbGVjdG9yfSB7XG4gICAgfVxuICAgIC8qIGJsb2NrIHN0eWxlcyAqL1xuICAgICYubm9wYWRkaW5ne1xuICAgICAgICAuI3skYmxvY2stY29udGVudC1zZWxlY3Rvcn17XG4gICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi53aWRnZXRfcmV2c2xpZGVye1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG4vKipcbiAqIFN0eWxpbmcgQ3NzIGZvciB3aWRnZXRzIGluIFNpZGViYXIgTGVmdCBTdGF0aWNcbiAqL1xuLiN7JGJsb2NrLXByZWZpeH0tc3RhdGlje1xuICAgIC4jeyRibG9jay1oZWFkaW5nLXNlbGVjdG9yfXtcbiAgICAgICAgY29sb3I6I0ZGRkZGRjtcbiAgICB9XG4gICAgdWwgbGkgeyBib3JkZXI6bm9uZSB9XG59XG4vKiBcbi5zaWRlYmFye1xuICAgIC53aWRnZXR7XG4gICAgICAgIC53aWRnZXQtdGl0bGUsLndpZGdldHRpdGxle1xuICAgICAgICB9XG4gICAgICAgIHVsLnByb2R1Y3RfbGlzdF93aWRnZXR7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4gKi9cbi8qKlxuICogU3R5bGluZyBDc3MgZm9yIHdpZGdldHMgaW4gZm9vdGVyIGxheW91dFxuICovXG4ub3BhbC1mb290ZXJ7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAuI3skYmxvY2stc2VsZWN0b3J9IHsgXG4gICAgICAgIC4jeyRibG9jay1oZWFkaW5nLXNlbGVjdG9yfXtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1wYWRkaW5nLWxlZnQoMCk7XG4gICAgICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSBcbiAgICBzdHJvbmd7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBAaW5jbHVkZSBydGwtbWFyZ2luLXJpZ2h0KDVweCk7XG4gICAgfSBcbiAgICB1bCB7XG4gICAgICAgIGxpe1xuICAgICAgICAgICAgYm9yZGVyOiBub25lIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDNweCAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIC53aWRnZXRfcmVjZW50X2VudHJpZXN7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC53aWRnZXRfY2FsZW5kYXIgY2FwdGlvbntcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgIH1cbiAgICAub3BhbC1mb290ZXItcHJvZmlsZXtcbiAgICAgICAgLndpZGdldHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gc2VydmljZS1kZWZhdWx0XHJcbi5zZXJ2aWNlLWdyaWRfdjF7XHJcbn1cclxuLnNlcnZpY2UtZ3JpZF92MntcclxuICAgIFtjbGFzc149XCJjb2wtXCJdLFtjbGFzcyo9XCJjb2wtXCJde1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcbiAgICAub3BhbF9zZXJ2aWNle1xyXG4gICAgICAgICYucGFnZXtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0MDJweDtcclxuICAgICAgICAgICAgLnNlcnZpY2UtbnVtYmVye1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc2VydmljZS1ib3gtaW1hZ2V7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCkgc2NhbGUoMS4xNSwxLjE1KTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDQwMG1zIGVhc2U7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgIGltZ3tcclxuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5lbnRyeS1jb250ZW50e1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogODAlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNDBweDtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjhzO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC44cztcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigxLjAwMCwgLTAuNTMwLCAwLjQwNSwgMS40MjUpO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigxLjAwMCwgLTAuNTMwLCAwLjQwNSwgMS40MjUpO1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDcwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC50aXRsZXtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLXRleHQtYWxpZ24tbGVmdCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBhe1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zZXJ2aWNlLWRlc2NyaXB0aW9ue1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnNlcnZpY2UtbGVhcm5tb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcclxuICAgICAgICAgICAgICAgICAgICBhOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgYXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJHRoZW1lLWNvbG9yLCA1JSlcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjcpO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDQwMG1zIGVhc2U7XHJcbiAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNzAlO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDAsMCwwLDApLHJnYmEoMCwwLDAsMC43KSA4MCUpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLHJnYmEoMCwwLDAsMCkscmdiYSgwLDAsMCwwLjcpIDgwJSk7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLHJnYmEoMCwwLDAsMCkscmdiYSgwLDAsMCwwLjcpIDgwJSk7XHJcbiAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc2VydmljZS1ib3gtaW1hZ2V7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWigwKSBzY2FsZSgxLDEpO1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCkgc2NhbGUoMSwxKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZW50cnktY29udGVudHtcclxuICAgICAgICAgICAgICAgIHRvcDogNTBweDtcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgICAgICAgICAudGl0bGV7XHJcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuc2VydmljZS1kZXNjcmlwdGlvbntcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnNlcnZpY2UtbGVhcm5tb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLm9wYWxfc2VydmljZXtcclxuICAgIC5zZXJ2aWNlLWRldGFpbHtcclxuICAgICAgICBtYXJnaW46IDAgLTE1cHg7XHJcbiAgICB9XHJcbiAgICAuYm94LWhlYWRpbmd7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuICAgIC5zZXJ2aWNlLWRlc2NyaXB0aW9ue1xyXG4gICAgICAgIHVse1xyXG4gICAgICAgICAgICBtYXJnaW46IDMwcHggMDtcclxuICAgICAgICAgICAgbGl7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNlcnZpY2UtY2F0ZWdvcmllc3tcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXItd2lkdGg7XHJcbiAgICB9XHJcbiAgICAuYm94LWhlYWRpbmd7XHJcbiAgICB9XHJcbiAgICAuc2VydmljZS1ib3gtaW1hZ2V7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjM1cyBlYXNlIDBzKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLnBhZ2V7ICAgICAgICBcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgIC5zZXJ2aWNlLW51bWJlcntcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnNlcnZpY2UtZGVzY3JpcHRpb257XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zZXJ2aWNlLWJveC1pbWFnZXtcclxuICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5lbnRyeS1jb250ZW50e1xyXG4gICAgICAgICAgICAudGl0bGV7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLXBhZGRpbmctbGVmdCgxNXB4KTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDNweDtcclxuICAgICAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1sZWZ0KDApO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKDJweCwyMHB4KTtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc2VydmljZS1sZWFybm1vcmV7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfSAgICAgXHJcbn1cclxuLmVudHJ5LWNvbnRlbnQtY2Fyb3VzZWx7XHJcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICAgIHBhZGRpbmc6IDMwcHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG4gICAgLnRpdGxle1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogM3B4O1xyXG4gICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1sZWZ0KC0zMHB4KTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDJweCwyMHB4KTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zZXJ2aWNlLWRlc2NyaXB0aW9uLWNhcm91c2Vse1xyXG4gICAgICAgIGhlaWdodDogODBweDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICB9XHJcbiAgICAuc2VydmljZS1sZWFybm1vcmV7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogJGdyaWQtZ3V0dGVyLXdpZHRoIC0gMTA7XHJcbiAgICAgICAgYXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGl7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjAgOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi53aWRnZXQtc2VydmljZXtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuLnNlcnZpY2Utd3JhcHBlcntcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yOyAgICBcclxuICAgIG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlci13aWR0aDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQ6ICNmZGZkZmQ7XHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuNCk7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICB9XHJcbiAgICAuc2VydmljZS1kZXNjcmlwdGlvbntcclxuICAgICAgICBwYWRkaW5nOjMwcHg7XHJcbiAgICB9XHJcbiAgICAuc2VydmljZS1ib3gtaWNvbntcclxuICAgICAgICBtYXJnaW46IDQwcHggMDtcclxuICAgICAgICBtaW4td2lkdGg6IDUwcHg7XHJcbiAgICAgICAgbWluLWhlaWdodDogNTBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcclxuICAgIH1cclxuICAgIGg0e1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIH1cclxuICAgIC5zZXJ2aWNlLXJlYWRtb3Jle1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBhe1xyXG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaXtcclxuICAgICAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgOHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zZXJ2aWNlLWJveC1pbWFnZXtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjMxLCAxNzksIDAuMyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBsaW5lYXI7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC41cyBsaW5lYXI7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyO1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC41cyBsaW5lYXI7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyO1xyXG4gICAgICAgIC1tcy1maWx0ZXI6IFwicHJvZ2lkOiBEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTApXCI7XHJcbiAgICAgICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG4gICAgLmVudHJ5LWNvbnRlbnR7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC43cyBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjdzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjdzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC43cyBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC43cyBlYXNlLWluLW91dDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgfVxyXG4gICAgJjpob3ZlcntcclxuICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5lbnRyeS1jb250ZW50e1xyXG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnNlcnZpY2UtYm94LWltYWdle1xyXG4gICAgICAgICAgICAtbXMtZmlsdGVyOiBcInByb2dpZDogRFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0xMDApXCI7XHJcbiAgICAgICAgICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuc2VydmljZS1yZWFkbW9yZXtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjI1cyBlYXNlO1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAuMjVzIGVhc2U7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgLjI1cyBlYXNlO1xyXG4gICAgICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgLjI1cyBlYXNlO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjI1cyBlYXNlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnJlcXVlc3RxdW90ZS1mb3Jte1xyXG4gICAgLnJlcXVlc3RxdW90ZS1oZWFkZXJ7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIGl7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGxhYmVse1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgIH1cclxuICAgIC5yZXF1ZXN0cXVvdGUtdGl0bGUgaDN7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICB9XHJcbiAgICAucmVxdWVzdHF1b3RlLWRlc2NyaXB0aW9ue1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgfVxyXG4gICAgLnJlcXVlc3RxdW90ZS1jb250ZW50LWZvcm17XHJcbiAgICAgICAgLmJlZHJvb20tZmlsdGVye1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZmxlZnR7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgJjphZnRlcnsgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLXJpZ2h0KDE1cHgpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLm1vdmluZ2Zyb20sJi5tb3Zpbmd0b3tcclxuICAgICAgICAgICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNDFcIjsgXHJcbiAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYubW92aW5nb257XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMjc0XCI7XHJcbiAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYucmVxdWVzdHF1b3RlX3R5cGV7XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzQzNDM0MztcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtcmlnaHQoMCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgYnV0dG9ue1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0OHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2x7ICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc2VsZWN0Omxhc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlucHV0LC5mb3JtLWNvbnRyb2x7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM0MzQzNDM7XHJcbiAgICAgICAgICAgIGJvcmRlcjpub25lO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDhweDsgXHJcbiAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheTsgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBDaHJvbWUvT3BlcmEvU2FmYXJpICovXHJcbiAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICA6Oi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE5KyAqL1xyXG4gICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIElFIDEwKyAqL1xyXG4gICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgOi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE4LSAqL1xyXG4gICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9ICAgICAgXHJcbiAgICB9XHJcbiAgICAmLmxheW91dDF7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGdyYXktZGFyaztcclxuICAgICAgICAucmVxdWVzdHF1b3RlLWhlYWRlcntcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzN3B4IDMwcHg7XHJcbiAgICAgICAgICAgIC5yZXF1ZXN0cXVvdGUtY29udGVudHsgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1tYXJnaW4tbGVmdCgwKTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZykge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1tYXJnaW4tbGVmdCgyMHB4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAucmVxdWVzdHF1b3RlLWNvbnRlbnQtZm9ybXtcclxuICAgICAgICAgICAgcGFkZGluZzogNDBweDtcclxuICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAgICAgICAgIC5mbGVmdHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgICAgIGJ1dHRvbntcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpbnB1dCwuZm9ybS1jb250cm9se1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYubGF5b3V0MntcclxuICAgICAgICBwYWRkaW5nOiA2MHB4IDAgMzBweCAwO1xyXG4gICAgICAgIC5yZXF1ZXN0cXVvdGUtY29udGVudHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwtbWFyZ2luLXJpZ2h0KDYwcHgpO1xyXG4gICAgICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNDhweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0cHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtcmlnaHQoLTMwcHgpO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSAgICAgICAgXHJcbiAgICAgICAgLnJlcXVlc3RxdW90ZS1oZWFkZXJ7XHJcbiAgICAgICAgICAgIGl7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtbWFyZ2luLXJpZ2h0KDIwcHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5yZXF1ZXN0cXVvdGUtY29udGVudC1mb3Jte1xyXG4gICAgICAgICAgICAuZmxlZnR7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7ICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQpIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLWxnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE2MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZykge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNjhweDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgc2VsZWN0Omxhc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLXJpZ2h0KDI1cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtcmlnaHQoMTJweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSAgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLnJlcXVlc3RxdW90ZV90eXBle1xyXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1yaWdodCgxMHB4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tcGhvbmUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1yaWdodCgxNnB4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1yaWdodCg2cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9ICBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaW5wdXQsLmZvcm0tY29udHJvbHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA5NSU7ICBcclxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpe1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmxheW91dDN7XHJcbiAgICAgICAgcGFkZGluZzogNjBweCAzMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICMyZjJmMmY7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbGcpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSg0Nyw0Nyw0NywwLjkpO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA2MHB4IDI1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoNDcsNDcsNDcsMC45KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnJlcXVlc3RxdW90ZS1jb250ZW50LWZvcm17XHJcbiAgICAgICAgICAgIC5mbGVmdHsgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbGcpIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjA2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLW1hcmdpbi1yaWdodCgxMHB4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIxNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1tYXJnaW4tcmlnaHQoMTBweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGJ1dHRvbntcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtbWFyZ2luLXJpZ2h0KDApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgc2VsZWN0Omxhc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpbnB1dCwuZm9ybS1jb250cm9se1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmxheW91dDR7XHJcbiAgICAucmVxdWVzdHF1b3RlLWZvcm17XHJcbiAgICAgICAgJi5sYXlvdXQxe1xyXG4gICAgICAgICAgICAucmVxdWVzdHF1b3RlLWhlYWRlcntcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAzMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5yZXF1ZXN0cXVvdGVfcG9zdF9mb3Jte1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcclxuICAgIC53aXphcmR7XHJcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICAgICAgPiAuY29udGVudHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICAucm93OmZpcnN0LWNoaWxke1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBoM3tcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlci13aWR0aCArIDIwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5ib2Rlci1yaWdodHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRib3JkZXItY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuXHJcbiAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5yb3d7IFxyXG4gICAgICAgICAgICAgICAgPiBkaXZ7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAzMHB4O1xyXG4gICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBpbnB1dHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXItd2lkdGg7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZTFlMWUxO1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDhweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5mb3JtLWNvbnRyb2x7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2UxZTFlMTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGdyaWQtZ3V0dGVyLXdpZHRoO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgdGV4dGFyZWEuZm9ybS1jb250cm9se1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5vcGFsX3JlcXVlc3RxdW90ZV9tb3ZpbmdvbntcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5NiUgOHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5kaXJlY3Rpb25zLWRlc2NyaXB0aW9ue1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogJGdyaWQtZ3V0dGVyLXdpZHRoO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHNlY3Rpb246bGFzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGl7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSg5MHB4LDkwcHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA5MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGdyaWQtZ3V0dGVyLXdpZHRoO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAucmVxdWVzdHF1b3RlLW1lc3NhZ2V7XHJcbiAgICAgICAgICAgICAgICBoMntcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gLmJvZHl7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gLnN0ZXBze1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcclxuICAgICAgICAgICAgLmRpc2FibGVkLC5jdXJyZW50LC5kb25le1xyXG4gICAgICAgICAgICAgICAgYXtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHRlcjtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuY3VycmVudHtcclxuICAgICAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGJsYWNrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLm51bWJlcntcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLm51bWJlcntcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMzBweCwzMHB4KTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyYXktbGlnaHRlcjtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtbWFyZ2luLXJpZ2h0KDEwcHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XHJcbiAgICAgICAgICAgICAgICBhe1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyLCY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IDMycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLTM1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA+IHVse1xyXG4gICAgICAgICAgICAgICAgPiBsaXtcclxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1waG9uZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMyU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjEycHggNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1sZykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzMlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICA+IC5hY3Rpb25ze1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAkZ3JpZC1ndXR0ZXItd2lkdGg7XHJcbiAgICAgICAgICAgIGEsYTpob3ZlcntcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkdGhlbWUtY29sb3IsIDUlKTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9ICAgIFxyXG59XHJcbiIsIi5vcGFsLXJldmlldy1pdGVte1xyXG5cdC50ZXN0aW1vbmlhbF9ncm91cHtcclxuXHRcdC50ZXN0aW1vbmlhbHtcclxuXHRcdFx0cGFkZGluZzogMCAwIDE1cHggMDtcclxuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRcdC5ycl90aXRsZSB7XHJcblx0XHRcdFx0Zm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xyXG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMThweDtcclxuXHRcdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdFx0Y29sb3I6ICR0aGVtZS1jb2xvcjtcclxuXHRcdFx0fVxyXG5cdFx0XHQuc3RhcnN7XHJcblx0XHRcdFx0bWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC13YXJuaW5nO1xyXG5cdFx0XHR9XHJcblx0XHRcdC5ycl9kYXRle1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcclxuXHRcdFx0fVxyXG5cdFx0XHQucnJfcmV2aWV3X3RleHR7XHJcblx0XHRcdFx0LmRyb3BfY2Fwe1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHRcclxufVxyXG4ub3BhbC1yZXZpZXd7XHJcbiAgICAuc3RhcnN7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC13YXJuaW5nO1xyXG4gICAgICAgIC50eHQtdG90YWx7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ub3BhbC1yaWNoLXJldmlld3N7XHJcblx0LnRvdGFsLXJldmlld3tcclxuXHRcdC50eHQtdG90YWx7XHJcblx0XHRcdGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcblx0XHRcdGZvbnQtc2l6ZTogMTZweDtcclxuXHRcdH1cclxuXHR9XHJcblx0LmZvcm1fdGFibGV7XHJcblx0XHR0cjpsYXN0LWNoaWxke1xyXG5cdFx0XHRpbnB1dHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkdGhlbWUtY29sb3I7XHJcblx0XHRcdFx0Y29sb3I6IHdoaXRlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbi50b3RhbC1yZXZpZXd7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRpbWFnZS10aGVtZS1za2lufWJhY2tncm91bmQtMTMucG5nJyk7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgaGVpZ2h0OiAxODBweDtcclxuICAgIHBhZGRpbmc6IDE1cHggMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCByaWdodDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIC5kZXNjcmlwdGlvbiBhe1xyXG4gICAgXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBcdGNvbG9yOiB3aGl0ZTtcclxuICAgIFx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIFx0Zm9udC1zaXplOiAxMHB4O1xyXG4gICAgXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgfVxyXG4gICAgLnN0YXJze1xyXG4gICAgXHRtYXJnaW46IDA7XHJcbiAgICBcdGZvbnQtc2l6ZTogMTRweDtcclxuICAgIFx0Y29sb3I6ICNmN2Q0MTI7XHJcbiAgICB9XHJcbiAgICAuYzEwMHtcclxuICAgIFx0YmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgXHQ+IHNwYW57XHJcbiAgICBcdFx0Y29sb3I6IHdoaXRlO1xyXG4gICAgXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgXHR9XHJcbiAgICBcdC5iYXIsLmZpbGx7XHJcbiAgICBcdFx0Ym9yZGVyLWNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgXHR9XHJcbiAgICBcdCY6YWZ0ZXJ7XHJcbiAgICBcdFx0YmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgXHR9XHJcbiAgICBcdCYub3Jhbmdle1xyXG4gICAgXHRcdCY6aG92ZXJ7XHJcbiAgICBcdFx0XHQ+IHNwYW57XHJcbiAgICBcdFx0XHRcdGNvbG9yOiB3aGl0ZTsgICAgXHRcdFx0XHRcclxuICAgIFx0XHRcdH1cclxuICAgIFx0XHR9XHJcbiAgICBcdH1cclxuICAgIFx0Jjpob3ZlcntcclxuICAgIFx0XHQ+IHNwYW57XHJcbiAgICBcdFx0XHR3aWR0aDogNWVtO1xyXG5cdFx0XHQgICAgbGluZS1oZWlnaHQ6IDVlbTtcclxuXHRcdFx0ICAgIGZvbnQtc2l6ZTogMC4yZW07XHJcbiAgICBcdFx0fVxyXG4gICAgXHRcdCY6YWZ0ZXJ7XHJcbiAgICBcdFx0XHR0b3A6IDAuMDhlbTtcclxuXHRcdFx0ICAgIEBpbmNsdWRlIHJ0bC1sZWZ0KDAuMDhlbSk7XHJcblx0XHRcdCAgICB3aWR0aDogMC44NGVtO1xyXG5cdFx0XHQgICAgaGVpZ2h0OiAwLjg0ZW07XHJcbiAgICBcdFx0fVxyXG4gICAgXHR9XHJcbiAgICB9XHJcbn0iLCIud2lkZ2V0W2NsYXNzKj1cIndpZGdldF93cG9wYWxfXCJde1xyXG4gICAgdWx7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuLyogTGlzdCBTdHlsZSBXaWRnZXRzKi9cclxuLyogLndpZGdldF9hcmNoaXZlIGEsXHJcbi53aWRnZXRfcmVjZW50X2VudHJpZXMgYSxcclxuLndpZGdldF9yZWNlbnRfY29tbWVudHMgYSxcclxuLndpZGdldF9sYXllcmVkX25hdiBhLFxyXG4ud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyBhXHJcbiB7IGZvbnQtd2VpZ2h0OiAzMDA7fSAqL1xyXG4ud2lkZ2V0X2FyY2hpdmUgYTpiZWZvcmUsXHJcbi53aWRnZXRfcmVjZW50X2VudHJpZXMgYTpiZWZvcmUsXHJcbi53aWRnZXRfcmVjZW50X2NvbW1lbnRzIGE6Zmlyc3QtY2hpbGQ6YmVmb3JlLFxyXG4ud2lkZ2V0X2xheWVyZWRfbmF2IGE6YmVmb3JlLFxyXG4ud2lkZ2V0X2NhdGVnb3JpZXMgYTpiZWZvcmUgeyBtYXJnaW4tcmlnaHQ6IDEwcHg7IGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7IGNvbG9yOiAkdGhlbWUtY29sb3I7IGRpc3BsYXk6IGlubGluZS1ibG9jaztmb250LXNpemU6MTFweDsgbGluZS1oZWlnaHQ6MjJweH1cclxuLndpZGdldF9hcmNoaXZlIGE6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMTZcIiB9XHJcbi53aWRnZXRfcmVjZW50X2VudHJpZXMgYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmNlwiIH1cclxuLndpZGdldF9yZWNlbnRfY29tbWVudHMgYTpmaXJzdC1jaGlsZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBlNVwiIH1cclxuLndpZGdldF9sYXllcmVkX25hdiBhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGRhXCIgfVxyXG4ud2lkZ2V0X2NhdGVnb3JpZXMgYTpiZWZvcmUgeyAvKiBjb250ZW50OiBcIlxcZjExNFwiICovIH1cclxuXHJcbi53aWRnZXRfbmF2X21lbnUgbGksXHJcbi53aWRnZXRfYXJjaGl2ZSBsaSxcclxuLndpZGdldF9jYXRlZ29yaWVzIGxpLFxyXG4ud2lkZ2V0X2xpbmtzIGxpLFxyXG4ud2lkZ2V0X21ldGEgbGksXHJcbi53aWRnZXRfcGFnZXMgbGksXHJcbi53aWRnZXRfcmVjZW50X2NvbW1lbnRzIGxpLFxyXG4ud2lkZ2V0X3JlY2VudF9lbnRyaWVzIGxpLFxyXG4ub3BhbHNlcnZpY2UtY2F0ZWdvcmllcyBsaSB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICBib3JkZXItdG9wOiAxcHggZG90dGVkICRib3JkZXItY29sb3I7XHJcbn1cclxuXHJcbi53aWRnZXRfbmF2X21lbnUgbGk6Zmlyc3QtY2hpbGQsXHJcbi53aWRnZXRfYXJjaGl2ZSBsaTpmaXJzdC1jaGlsZCxcclxuLndpZGdldF9jYXRlZ29yaWVzIGxpOmZpcnN0LWNoaWxkLFxyXG4ud2lkZ2V0X2xpbmtzIGxpOmZpcnN0LWNoaWxkLFxyXG4ud2lkZ2V0X21ldGEgbGk6Zmlyc3QtY2hpbGQsXHJcbi53aWRnZXRfcGFnZXMgbGk6Zmlyc3QtY2hpbGQsXHJcbi53aWRnZXRfcmVjZW50X2NvbW1lbnRzIGxpOmZpcnN0LWNoaWxkLFxyXG4ud2lkZ2V0X3JlY2VudF9lbnRyaWVzIGxpOmZpcnN0LWNoaWxkLFxyXG4ub3BhbHNlcnZpY2UtY2F0ZWdvcmllcyBsaTpmaXJzdC1jaGlsZCB7XHJcbiAgICBib3JkZXItdG9wOiAwO1xyXG59XHJcblxyXG4ud2lkZ2V0X25hdl9tZW51IGxpIHVsLFxyXG4ud2lkZ2V0X2NhdGVnb3JpZXMgbGkgdWwsXHJcbi53aWRnZXRfcGFnZXMgbGkgdWwge1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxufVxyXG4ud2lkZ2V0X2NhdGVnb3JpZXMgbGkgdWwuY2hpbGRyZW57XHJcbiAgICBib3JkZXItdG9wOiBub25lO1xyXG59XHJcbi53aWRnZXRfbmF2X21lbnUgbGkgbGk6bGFzdC1jaGlsZCxcclxuLndpZGdldF9jYXRlZ29yaWVzIGxpIGxpOmxhc3QtY2hpbGQsXHJcbi53aWRnZXRfcGFnZXMgbGkgbGk6bGFzdC1jaGlsZCB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxufVxyXG5cclxuLndpZGdldF9yZWNlbnRfY29tbWVudHN7XHJcbiAgICAuY29tbWVudC1hdXRob3ItbGlua3tcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XHJcbiAgICB9XHJcbn1cclxuLndpZGdldC53aWRnZXRfY2F0ZWdvcmllcyB1bCwgXHJcbi53aWRnZXQud2lkZ2V0X2xheWVyZWRfbmF2IHVsLCBcclxuLndpZGdldC53aWRnZXRfbGF5ZXJlZF9uYXZfZmlsdGVycyB1bCxcclxuLndpZGdldF9uYXZfbWVudSB1bCxcclxuLndpZGdldC53aWRnZXRfcGFnZXMgdWwsXHJcbi5vcGFsc2VydmljZS1jYXRlZ29yaWVzIHVse1xyXG4gICAgbGkge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG4gICAgICAgICY6Zmlyc3QtY2hpbGR7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGF7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheTtcclxuICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdWx7XHJcbiAgICAgICAgICAgIGxpeyAgICAgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtcGFkZGluZy1sZWZ0KDIwcHgpOyAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHVsLnN1Yi1tZW51e1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLndpZGdldC53aWRnZXRfY2F0ZWdvcmllcyA+IHVsLCBcclxuLm9wYWxzZXJ2aWNlLWNhdGVnb3JpZXMgPiB1bHtcclxuICAgID4gbGkge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgIGJvdHRvbTogLTFweDtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCAwLjVzIGVhc2UgMHMsIGhlaWdodCAwLjVzIGVhc2UgMHM7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IHdpZHRoIDAuNXMgZWFzZSAwcywgaGVpZ2h0IDAuNXMgZWFzZSAwcztcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMC41cyBlYXNlIDBzLCBoZWlnaHQgMC41cyBlYXNlIDBzO1xyXG4gICAgICAgICAgICB3aWR0aDogNHB4O1xyXG4gICAgICAgICAgICB6LWluZGV4OiA5O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjVzIGVhc2UpO1xyXG4gICAgICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gYXtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjVzIGVhc2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiBXaWRnZXQgRmxpY2tyICovXHJcbi5mbGlja3JfYmFkZ2VfaW1hZ2Uge1xyXG4gICAgQGluY2x1ZGUgcnRsLWZsb2F0LWxlZnQoKTtcclxuICAgIHBhZGRpbmc6IDVweDtcclxufVxyXG5cclxuLyogUmVjZW50IFBvc3RzIFdpZGdldCAqL1xyXG4ud2lkZ2V0X3JlY2VudF9lbnRyaWVze1xyXG4gICAgdWx7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG4gICAgYXtcclxuICAgICAgICBjb2xvcjogJGxpbmstY29sb3I7XHJcbiAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucG9zdC1kYXRlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDE3XCI7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCJcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLndpZGdldF93cG9wYWxfcmVjZW50X3Bvc3Qge1xyXG4gICAgLnBvc3Qtd2lkZ2V0e1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgIH1cclxuICAgIC5pdGVtLXBvc3QubWVkaWEge1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYS5pbWFnZSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsLXBhZGRpbmctbGVmdCgyMHB4KTsgICBcclxuICAgICAgICB9XHJcbiAgICAgICAgLm1lZGlhLWJvZHkge1xyXG4gICAgICAgICAgICAuZW50cnktdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLXBhZGRpbmctcmlnaHQoMTVweCk7ICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiBwIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucG9zdC1zdGljay1sYXlvdXQge1xyXG4gICAgICAgIC5pdGVtLXBvc3QubWVkaWEuaXRlbS1iaWcge1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgICAgICAgICBhLmltYWdlIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1wYWRkaW5nLXJpZ2h0KDApO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5lbnRyeS10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pdGVtLXBvc3QubWVkaWEge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcclxuICAgICAgICAgICAgLm1lZGlhLWJvZHkge1xyXG4gICAgICAgICAgICAgICAgLmVudHJ5LXRpdGxlIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCA1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnBvc3QtZGF0ZSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFNlYXJjaCBXaWRnZXQgKi9cclxuLm9wYWwtc2VhcmNoe1xyXG4gICAgLmJ0bi1zZWFyY2h7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICBpbnB1dHtcclxuICAgICAgICAgICAgYm9yZGVyOm5vbmU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi8qIFJTUyBXaWRnZXQgKi9cclxuXHJcbi5yc3N3aWRnZXQgaW1nIHtcclxuICAgIG1hcmdpbi10b3A6IC00cHg7XHJcbn1cclxuXHJcbi5yc3NTdW1tYXJ5IHtcclxuICAgIG1hcmdpbjogOXB4IDA7XHJcbn1cclxuXHJcbi5yc3MtZGF0ZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLndpZGdldF9yc3MgbGkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMThweDtcclxufVxyXG5cclxuLndpZGdldF9yc3MgbGk6bGFzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcblxyXG4vKiBUZXh0IFdpZGdldCAqL1xyXG5cclxuLndpZGdldF90ZXh0ID4gZGl2ID4gOmxhc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG5cclxuLyogQ2FsZW5kYXIgV2lkZ2V0Ki9cclxuLndpZGdldF9jYWxlbmRhciB7XHJcbiAgICB0YWJsZSB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgY2FwdGlvbiB7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjcxNDI4NTcxNDI7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB9XHJcbiAgICB0aGVhZCB0aCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcclxuICAgIH1cclxuICAgIHRib2R5IHRkLCB0aGVhZCB0aCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgdGJvZHkgYSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQxYTYyYTtcclxuICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICNwcmV2IHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICAgIH1cclxuICAgICNuZXh0IHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICB9XHJcbiAgICAjdG9kYXl7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkdGhlbWUtY29sb3IsIDUlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLyogTmV3bGV0dGVyIGluIGZvb3RlciAqL1xyXG4ud2lkZ2V0X21jNHdwX2Zvcm1fd2lkZ2V0e1xyXG4gICAgZm9ybXtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC53aWRnZXQtdGl0bGUsLndpZGdldHRpdGxle1xyXG4gICAgICAgIEBpbmNsdWRlIHJ0bC1mbG9hdC1sZWZ0KCk7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xyXG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICB9XHJcbiAgICAuaW5wdXQtZ3JvdXB7IFxyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIC5mb3JtLWNvbnRyb2x7XHJcbiAgICAgICAgICAgIGhlaWdodDogNTdweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgfSAgICAgICAgXHJcbiAgICAgICAgLmJ0bnsgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgaGVpZ2h0OiA1N3B4OyAgICBcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4OyAgICAgICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmZvb3Rlci12NHtcclxuICAgIC53aWRnZXRfbWM0d3BfZm9ybV93aWRnZXR7XHJcbiAgICAgICAgLndpZGdldC10aXRsZSwud2lkZ2V0dGl0bGV7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pbnB1dC1ncm91cHtcclxuICAgICAgICAgICAgLmZvcm0tY29udHJvbHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjM1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmJ0bntcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IFxyXG4gICAgfVxyXG59XHJcbi8qKioqL1xyXG5saS5wcm9kdWN0LWNhdGVnb3J5e1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG4vKiBicmFuZHMgKi9cclxuLmJyYW5kcy1jb2xsZWN0aW9ue1xyXG4gICAgLm93bC1pdGVte1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgZmlsdGVyOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PGZpbHRlciBpZD0nZ3JheXNjYWxlJz48ZmVDb2xvck1hdHJpeCB0eXBlPSdtYXRyaXgnIHZhbHVlcz0nMC4zMzMzIDAuMzMzMyAwLjMzMzMgMCAwIDAuMzMzMyAwLjMzMzMgMC4zMzMzIDAgMCAwLjMzMzMgMC4zMzMzIDAuMzMzMyAwIDAgMCAwIDAgMSAwJy8+PC9maWx0ZXI+PC9zdmc+I2dyYXlzY2FsZVwiKTtcclxuICAgICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xyXG4gICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTsgXHJcbiAgICAgICAgICAtbW96LWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xyXG4gICAgICAgICAgLW1zLWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpOyBcclxuICAgICAgICAgIC1vLWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xyXG4gICAgICAgICAgZmlsdGVyOiBncmF5O1xyXG4gICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwLjUpO1xyXG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4ycyBlYXNlLWluLW91dCAwcyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDAlKTtcclxuICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGdyYXlzY2FsZSgwJSk7IFxyXG4gICAgICAgICAgICAgICAtbW96LWZpbHRlcjogZ3JheXNjYWxlKDAlKTtcclxuICAgICAgICAgICAgICAgLW1zLWZpbHRlcjogZ3JheXNjYWxlKDAlKTsgXHJcbiAgICAgICAgICAgICAgIC1vLWZpbHRlcjogZ3JheXNjYWxlKDAlKTtcclxuICAgICAgICAgICAgICAgZmlsdGVyOiBub25lOyBcclxuICAgICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIGJsb2ctcG9zdCAqL1xyXG4uYmxvZy1wb3N0e1xyXG4gICAgLmVudHJ5LW1ldGF7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuICAgIC5lbnRyeS10aXRsZXtcclxuICAgICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbn1cclxuLmJsb2dsaXN0LWxheW91dHtcclxuICAgIC5lbnRyeS10aXRsZXtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICB9XHJcbn1cclxuLy8gQm94IHNlcnZpY2UgaGVhZGVyXHJcbi5ib3gtdG9we1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIC5ib3gtc2VydmljZS10b3B7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDdweDtcclxuICAgICAgICAuaWNvbntcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzNXB4O1xyXG4gICAgICAgICAgICBjb2xvcjokdGhlbWUtY29sb3I7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAudGl0bGV7XHJcbiAgICAgICAgICAgIG1hcmdpbjowIDAgNXB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheTtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICBjb2xvcjogI2NjY2NjYztcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgcHtcclxuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLnN1cHBvcnR7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1ib3JkZXItbGVmdCggMXB4IHNvbGlkICM1NDU0NTQgKTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxufSIsIi8qXG4qICBNYWluIE1lbnVcbiovXG4ubmF2YmFyLW1lZ2F7XG4gICAgbWluLWhlaWdodDogaW5oZXJpdDtcbiAgICBAaW5jbHVkZSBydGwtbWFyZ2luLXJpZ2h0KDI1cHgpO1xuICAgIGJvcmRlcjogMHB4IHNvbGlkICRuYXZiYXItbWVnYS1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAubmF2YmFyLXRvZ2dsZXtcbiAgICAgICAgLmljb24tYmFye1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokdGhlbWUtY29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgYm9yZGVyLWNvbG9yOiRib3JkZXItY29sb3I7XG4gICAgfVxuICAgIC5uYXZiYXItbmF2e1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgPiAub3BlbntcbiAgICAgICAgICAgID4gYXtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRub2NvbG9yO1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbmF2YmFyLWxpbmstaG92ZXItYmc7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHVse1xuICAgICAgICAgICAgQGluY2x1ZGUgY2xlYXItbGlzdCgpO1xuICAgICAgICAgICAgbGl7XG4gICAgICAgICAgICAgICAgJi5wYXJlbnR7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5kcm9wZG93bi1zdWJtZW51e1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51e1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGxpe1xuICAgICAgICAgICAgJi5hY3RpdmV7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICA+IGF7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItaG92ZXI7XG4gICAgICAgICAgICAgICAgICAgIC5jYXJldHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItaG92ZXI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgICY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3Vze1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gICAgXG4gICAgICAgICAgICAmLm9wZW4gPiBhe1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IGxpeyAgICAgICAgICAgIFxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6MjVweCAzMHB4O1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggYWxsIDAuM3MgZWFzZS1vdXQgMHMpIDtcbiAgICAgICAgICAgID4gYXtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpbmstY29sb3I7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTJweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46ICRuYXZiYXItbGluay1tYXJnaW47XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06ICRuYXZiYXItdGV4dC10cmFuc2Zvcm07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRuYXZiYXItZm9udC13ZWlnaHQ7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoZm9udC1zaXplLCAkbmF2YmFyLWZvbnQtc2l6ZSk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zNXMpO1xuICAgICAgICAgICAgICAgIC5jYXJldHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNjY2NjY2M7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci13aWR0aDogM3B4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjM1cyk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1c3tcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci1ob3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJG5hdmJhci1saW5rLWhvdmVyLWJnO1xuICAgICAgICAgICAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5jYXJldHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItaG92ZXI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGR7XG4gICAgICAgICAgICAgICAgPiBhe1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtYm9yZGVyLXJpZ2h0KDApO1xuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzoxNXB4IDMwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJG5hdmJhci1kcm9wZG93bi1iZztcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6ICRuYXZiYXItZHJvcGRvd24tc2l6ZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDApO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1yaWdodCgwKTtcbiAgICAgICAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggYWxsIDAuM3MgZWFzZS1vdXQgMHMpIDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlKDBweCwgMjBweCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC40cyBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCkgMHMpO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgICAgICAgICAgYm9yZGVyOjA7XG4gICAgICAgICAgICAgICAgdWwuZHJvcGRvd24tbWVudXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogOTUlO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggYWxsIDAuM3MgZWFzZS1vdXQgMHMpIDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOnRyYW5zbGF0ZSgwcHgsIDIwcHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAucm93e1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbGl7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkbmF2YmFyLWRyb3Bkb3duLWxpbmstZm9udC13ZWlnaHQ7ICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJG5hdmJhci1kcm9wZG93bi1saW5rLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06ICRuYXZiYXItZHJvcGRvd24tbGluay10cmFuc2Zvcm07XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMnMgbGluZWFyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShmb250LXNpemUsJG5hdmJhci1kcm9wZG93bi1saW5rLWZvbnQtc2l6ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbmF2YmFyLWRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICAgICAgICAgID4gdWwuZHJvcGRvd24tbWVudXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOnRyYW5zbGF0ZSgwcHgsIDBweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGR7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbToyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC50ZXh0LWxhYmVse1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgJi50ZXh0LWhvdHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtbGVmdCgyMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtcmlnaHQoYXV0byk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAmLnRleHQtbmV3e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1sZWZ0KDIwcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1yaWdodChhdXRvKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICYudGV4dC1mZWF0dXJlZHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtbGVmdCgyMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtcmlnaHQoYXV0byk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLndpZGdldHRpdGxlLC53aWRnZXQtdGl0bGV7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MjBweCAwO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoZm9udC1zaXplLCAkbmF2YmFyLXdpZGdldC10aXRsZS1mb250LXNpemUpO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6JGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAud2lkZ2V0LWNvbnRlbnR7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAud2lkZ2V0LC5wcm9kdWN0c3tcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzpub25lO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnByb2R1Y3Rze1xuICAgICAgICAgICAgICAgICAgICAucm93e1xuICAgICAgICAgICAgICAgICAgICAgICAgPiBkaXZ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzowIDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLndpZGdldC1wcm9kdWN0c3tcbiAgICAgICAgICAgICAgICAgICAgLndpZGdldC10aXRsZXtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MCAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5vcGFsLWNhdGVnb3J5LWZpbHRlcntcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiRncmlkLWd1dHRlci13aWR0aCAwICRncmlkLWd1dHRlci13aWR0aCAkZ3JpZC1ndXR0ZXItd2lkdGg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1jYXB0aW9ue1xuICAgICAgICAgICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6MzBweDtcbiAgICAgICAgICAgICAgICB9ICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnN1Yi1tZW51IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTk5O1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNnB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjE3NSk7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oIGFsbCAwLjNzIGVhc2Utb3V0IDBzKSA7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAyMHB4KTtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDI0NXB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICAgIC5zdWItbWVudSB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDkwJTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsaTpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgID4gLnN1Yi1tZW51e1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlKDBweCwgMHB4KTsgICBcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5tZWdhLWRyb3Bkb3duLW1lbnV7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogJHRoZW1lLXBhZGRpbmcgKyAxMDtcbiAgICAgICAgICAgICAgICB1bHtcbiAgICAgICAgICAgICAgICAgICAgbGl7XG4gICAgICAgICAgICAgICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1wYWRkaW5nLWxlZnQoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLXBhZGRpbmctcmlnaHQoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLXBhZGRpbmctbGVmdCgxMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLXBhZGRpbmctcmlnaHQoMTBweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gLmFjdGl2ZXtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgID4gIGF7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gLmFsaWduZWQtZnVsbHdpZHRoe1xuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50OyAgICAgICAgICAgICBcbiAgICAgICAgICAgID4gLmRyb3Bkb3duLW1lbnV7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEyMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBcbiAgICAgICAgPiAuYWxpZ25lZC1yaWdodHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDsgXG4gICAgICAgICAgICA+IC5kcm9wZG93bi1tZW51e1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1yaWdodCgwKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtbGVmdChhdXRvKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5hbGlnbmVkLWxlZnQge1xuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50OyBcbiAgICAgICAgICAgID4gLmRyb3Bkb3duLW1lbnUgIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtbGVmdCgwKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtcmlnaHQoYXV0byk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLndwYi1jb250YWluZXItbWVnYXtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgICAuY29udGFpbmVyLW1lZ2F7XG4gICAgICAgICAgICAucm93IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICA+IGRpdntcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxcHgsIDEwMDBweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLWxlZnQoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZDphZnRlcntcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9ICAgXG4gICAgLnRleHQtbGFiZWx7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtMjBweDtcbiAgICAgICAgcmlnaHQ6IDQ1JTtcbiAgICAgICAgcGFkZGluZzowcHggM3B4OyBcbiAgICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICAmLnRleHQtaG90e1xuICAgICAgICAgICAgYmFja2dyb3VuZDokYnJhbmQtZGFuZ2VyO1xuICAgICAgICAgICAgJjphZnRlciB7ICBib3JkZXItdG9wLWNvbG9yOiAkYnJhbmQtZGFuZ2VyIDsgfSBcbiAgICAgICAgfVxuICAgICAgICAmLnRleHQtbmV3e1xuICAgICAgICAgICAgYmFja2dyb3VuZDokYnJhbmQtaW5mbztcbiAgICAgICAgICAgICY6YWZ0ZXIgeyAgYm9yZGVyLXRvcC1jb2xvcjogJGJyYW5kLWluZm8gOyB9IFxuICAgICAgICB9XG4gICAgICAgICYudGV4dC1mZWF0dXJlZHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6JGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICAmOmFmdGVyIHsgIGJvcmRlci10b3AtY29sb3I6ICRicmFuZC1wcmltYXJ5IDsgfVxuICAgICAgICAgICAgcmlnaHQ6IDE1JTtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0zcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5uYXZiYXItbWVnYSAgLm5hdmJhci1uYXYgPiBsaSB7XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICA+IC5kcm9wZG93bi1tZW51LCA+IC5zdWItbWVudXtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1sZWZ0KDApO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUoMHB4LCAwcHgpO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAwcHgpO1xuICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDBweCk7IFxuICAgICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KTsgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgbGl7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0gXG59XG4vKipcbiAqIFdoaXRlIFN0eWxlc1xuICovXG4ubmF2YmFyLW1lZ2EtbGlnaHR7XG4gICAgLm5hdmJhci1tZWdhIC5uYXZiYXItbmF2ID4gbGkgPiBhLCAubmF2YmFyLW1lZ2EgLm5hdmJhci1uYXYgPiBsaSA+IGEgLmNhcmV0IHtcbiAgICAgICAgY29sb3I6I0ZGRkZGRjtcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItaG92ZXI7XG4gICAgICAgIH1cbiAgICB9XG4vKiAgICAgLm5hdmJhci1tZWdhIC5uYXZiYXItbmF2ID4gbGkuYWN0aXZlID4gYTo6YmVmb3JlLCAubmF2YmFyLW1lZ2EgLm5hdmJhci1uYXYgPiBsaTpob3ZlciA+IGE6OmJlZm9yZXtcbiAgICAgICAgYmFja2dyb3VuZDojRkZGRkZGO1xuICAgIH0gKi9cbn1cblxuLm5hdmJhci1tZWdhLXRoZW1le1xuICAgIGJhY2tncm91bmQ6JHRoZW1lLWNvbG9yO1xuICAgIC5uYXZiYXItbWVnYSAubmF2YmFyLW5hdiA+IGxpID4gYSwgLm5hdmJhci1tZWdhIC5uYXZiYXItbmF2ID4gbGkgPiBhIC5jYXJldCB7XG4gICAgICAgIGNvbG9yOiNGRkZGRkY7XG4gICAgfVxuICAgIFxufVxuXG5cbi8qKlxuICogU2ltcGxlIFN0eWxlc1xuICovXG4ubmF2YmFyLW1lZ2Etc2ltcGxle1xuICAgLm9wYWwtbWVnYW1lbnV7XG4gICAgICAgIC8qIGRpc3BsYXk6IGlubGluZS1ibG9jazsgKi9cbiAgIH1cbn1cblxuLypcbiogdmVydGljYWwgbWVnYW1lbnVcbiovXG4ud2lkZ2V0X3dwb3BhbF9tZW51X3ZlcnRpY2FsIHtcbiAgICAudmVydGljYWwtbWVudSB7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgM3B4IDFweCByZ2JhKDIwLCAxOSwgMjMsIDAuMSk7XG4gICAgfVxuICAgIC53aWRnZXQtdGl0bGV7XG4gICAgICAgIGJhY2tncm91bmQ6ICM0MWI1YWM7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgID4gc3BhbntcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm5hdmJhci1uYXYge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDEwMCUsYXV0byk7XG4gICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRuYXZiYXItdmVydGljYWxtZW51LWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItdmVydGljYWxtZW51LWNvbG9yO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6ICRuYXZiYXItdmVydGljYWxtZW51LWxpbmstcGFkZGluZztcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJG5hdmJhci1tZW51dG9wLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIC50ZXh0LWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2UzNTI2MyBub25lIHJlcGVhdCBzY3JvbGwgMCAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDlweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNweDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC1tb3otYm9yZGVyLWJvdHRvbS1jb2xvcnM6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAtbW96LWJvcmRlci1sZWZ0LWNvbG9yczogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC1tb3otYm9yZGVyLXJpZ2h0LWNvbG9yczogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC1tb3otYm9yZGVyLXRvcC1jb2xvcnM6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICNlMzUyNjMgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItaW1hZ2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJi50ZXh0LW5ldyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDNhOWY0IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDNweCBzb2xpZCAjMDNhOWY0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgJi50ZXh0LWZlYXR1cmVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGdyZWVuIG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDNweCBzb2xpZCBncmVlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gSG92ZXIgRWZmZWN0XG4gICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLWhvdmVyO1xuICAgICAgICAgICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gICAgICAgICAgICAgICAgICAgIC5jYXJldHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHsgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci1ob3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgbGkgeyAgICAgXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzKTtcbiAgICAgICAgICAgICAgICAuY2FyZXQge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6XCJcXGYxMDVcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2NjYztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogNzAwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzoyMHB4O1xuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpe1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDU1MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuY29udGFpbmVyLW1lZ2Ege1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwICRncmlkLWd1dHRlci13aWR0aCAtIDEwO1xuICAgICAgICAgICAgICAgIH1cbi8qICAgICAgICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1heCl7Ki9cbiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5ICgwKTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAud2lkZ2V0LXRpdGxle1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgc3BhbntcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MCAwIDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLndpZGdldC1jb250ZW50e1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAud2lkZ2V0X25hdl9tZW51e1xuICAgICAgICAgICAgICAgICAgICB1bHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGl7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAud2lkZ2V0dGl0bGV7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgICAgICAucHJvZHVjdHMtZ3JpZCBkaXYucHJvZHVjdHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA3cHggMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLXBhZGRpbmctbGVmdCg1cHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuLyogICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbS1tYXgpeyovXG4gICAgICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgPiBhIHsgXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgLmNhcmV0OjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zcyBlYXNlLWluIDBzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgIFxuICAgICAgICAgICAgaXtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtbWFyZ2luLXJpZ2h0KDEwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG4gICAgLndpZGdldF9uYXZfbWVudSB7XG4gICAgICAgIHVsIGxpe1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM4YThhOGE7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1wYWRkaW5nLWxlZnQoNXB4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm1lbnUtbGVmdCB7XG4gICAgICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLXJpZ2h0KC0zcHgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgLyogIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tc20tbWF4KXsgKi9cbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwMDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH0gICAgICAgXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgLyogQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbS1tYXgpeyAqL1xuICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtcmlnaHQoMTMwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtbGVmdChhdXRvKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgID4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1yaWdodCgxMDAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgLmNhcmV0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1yaWdodCgyMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAubWVudS1yaWdodCB7XG4gICAgICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1mbG9hdC1sZWZ0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLWxlZnQoLTNweCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbS1tYXgpe1xuICAgICAgICAgICAgICAgICAgICA+IC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1tYXJnaW4tcmlnaHQoMnB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ4MHB4OyAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwMDE7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbS1tYXgpe1xuICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtcmlnaHQoMTMwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLXJpZ2h0KDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAuY2FyZXQge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLXJpZ2h0KDIwcHgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyoqXG4gKiA2LjEwIENvbnRyaWJ1dG9yIFBhZ2VcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cbi5jb250cmlidXRvciB7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG5cdC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcblx0LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRib3gtc2l6aW5nOiAgICAgIGJvcmRlci1ib3g7XG5cdHBhZGRpbmc6IDQ4cHggMTBweDtcbn1cblxuLmNvbnRyaWJ1dG9yOmZpcnN0LW9mLXR5cGUge1xuXHRwYWRkaW5nLXRvcDogMjRweDtcbn1cblxuLmNvbnRyaWJ1dG9yLWluZm8ge1xuXHRtYXJnaW46IDAgYXV0bztcblx0bWF4LXdpZHRoOiA0NzRweDtcbn1cblxuLmNvbnRyaWJ1dG9yLWF2YXRhciB7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcblx0ZmxvYXQ6IGxlZnQ7XG5cdG1hcmdpbjogMCAzMHB4IDIwcHggMDtcblx0cGFkZGluZzogMnB4O1xufVxuXG4uY29udHJpYnV0b3ItbmFtZSB7XG5cdGZvbnQtc2l6ZTogMTZweDtcblx0Zm9udC13ZWlnaHQ6IDkwMDtcblx0bGluZS1oZWlnaHQ6IDEuNTtcblx0bWFyZ2luOiAwO1xufVxuXG4uY29udHJpYnV0b3ItYmlvIGEge1xuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmNvbnRyaWJ1dG9yLWJpbyBhOmhvdmVyIHtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uY29udHJpYnV0b3ItcG9zdHMtbGluayB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0bGluZS1oZWlnaHQ6IG5vcm1hbDtcblx0cGFkZGluZzogMTBweCAzMHB4O1xufVxuXG4uY29udHJpYnV0b3ItcG9zdHMtbGluazpiZWZvcmUge1xuXHRjb250ZW50OiBcIlxcZjQ0M1wiO1xufVxuXG5cbi8qKlxuICogNi4xMSA0MDQgUGFnZVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuLm5vdGZvdW5kLXBhZ2V7XG4gICBwYWRkaW5nOiAyMDBweCAwIDMwMHB4O1xuICAgY29sb3I6ICRibGFjaztcbiAgICBiYWNrZ3JvdW5kOnJnYmEoMCwgMCwgMCwgMCkgdXJsKCcjeyRpbWFnZS10aGVtZS1za2lufWJnLW5vdGZvdW5kLmpwZycpIG5vLXJlcGVhdCBjZW50ZXIgYm90dG9tO1xuICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCl7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgfVxuICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tcGhvbmUpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICB9XG4gICBoMS50aXRsZXtcbiAgICAgIGZvbnQtc2l6ZTogMjAwcHghaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDE0MHB4IWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3IhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDgwMCFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4ICFpbXBvcnRhbnQ7XG4gICB9XG4gICAuc3Vie1xuICAgICAgZm9udC1zaXplOiA2MHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMi41cHg7XG4gICB9XG4gICAuZXJyb3ItZGVzY3JpcHRpb257XG4gICAgICBmb250LXNpemU6IDI0cHg7ICBcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgY29sb3I6ICM5OTk7XG4gICAgICBhe1xuICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgIH1cbiAgICAgIH1cbiAgIH1cbn0gICAgIiwiXG4vKipcbiAqIDguMCBHYWxsZXJ5XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbi5nYWxsZXJ5IC5nYWxsZXJ5LWl0ZW0ge1xuXHRmbG9hdDogbGVmdDtcblx0bWFyZ2luOiAwIDRweCA0cHggMDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cGFkZGluZzogMDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTEgLmdhbGxlcnktaXRlbSB7XG5cdG1heC13aWR0aDogMTAwJTtcblx0d2lkdGg6IGF1dG87XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtMiAuZ2FsbGVyeS1pdGVtIHtcblx0bWF4LXdpZHRoOiA0OCU7XG5cdG1heC13aWR0aDogLXdlYmtpdC1jYWxjKDUwJSAtIDE0cHgpO1xuXHRtYXgtd2lkdGg6ICAgICAgICAgY2FsYyg1MCUgLSAxNHB4KTtcblx0d2lkdGg6IGF1dG87XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtMyAuZ2FsbGVyeS1pdGVtIHtcblx0bWF4LXdpZHRoOiAzMiU7XG5cdG1heC13aWR0aDogLXdlYmtpdC1jYWxjKDMzLjMlIC0gMTFweCk7XG5cdG1heC13aWR0aDogICAgICAgICBjYWxjKDMzLjMlIC0gMTFweCk7XG5cdHdpZHRoOiBhdXRvO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTQgLmdhbGxlcnktaXRlbSB7XG5cdG1heC13aWR0aDogMjMlO1xuXHRtYXgtd2lkdGg6IC13ZWJraXQtY2FsYygyNSUgLSA5cHgpO1xuXHRtYXgtd2lkdGg6ICAgICAgICAgY2FsYygyNSUgLSA5cHgpO1xuXHR3aWR0aDogYXV0bztcbn1cblxuLmdhbGxlcnktY29sdW1ucy01IC5nYWxsZXJ5LWl0ZW0ge1xuXHRtYXgtd2lkdGg6IDE5JTtcblx0bWF4LXdpZHRoOiAtd2Via2l0LWNhbGMoMjAlIC0gOHB4KTtcblx0bWF4LXdpZHRoOiAgICAgICAgIGNhbGMoMjAlIC0gOHB4KTtcblx0d2lkdGg6IGF1dG87XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtNiAuZ2FsbGVyeS1pdGVtIHtcblx0bWF4LXdpZHRoOiAxNSU7XG5cdG1heC13aWR0aDogLXdlYmtpdC1jYWxjKDE2LjclIC0gN3B4KTtcblx0bWF4LXdpZHRoOiAgICAgICAgIGNhbGMoMTYuNyUgLSA3cHgpO1xuXHR3aWR0aDogYXV0bztcbn1cbi5nYWxsZXJ5LWNvbHVtbnMtNyAuZ2FsbGVyeS1pdGVtIHtcblx0bWF4LXdpZHRoOiAxMyU7XG5cdG1heC13aWR0aDogLXdlYmtpdC1jYWxjKDE0LjI4JSAtIDdweCk7XG5cdG1heC13aWR0aDogICAgICAgICBjYWxjKDE0LjI4JSAtIDdweCk7XG5cdHdpZHRoOiBhdXRvO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTggLmdhbGxlcnktaXRlbSB7XG5cdG1heC13aWR0aDogMTElO1xuXHRtYXgtd2lkdGg6IC13ZWJraXQtY2FsYygxMi41JSAtIDZweCk7XG5cdG1heC13aWR0aDogICAgICAgICBjYWxjKDEyLjUlIC0gNnB4KTtcblx0d2lkdGg6IGF1dG87XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtOSAuZ2FsbGVyeS1pdGVtIHtcblx0bWF4LXdpZHRoOiA5JTtcblx0bWF4LXdpZHRoOiAtd2Via2l0LWNhbGMoMTEuMSUgLSA2cHgpO1xuXHRtYXgtd2lkdGg6ICAgICAgICAgY2FsYygxMS4xJSAtIDZweCk7XG5cdHdpZHRoOiBhdXRvO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTEgLmdhbGxlcnktaXRlbTpudGgtb2YtdHlwZSgxbiksXG4uZ2FsbGVyeS1jb2x1bW5zLTIgLmdhbGxlcnktaXRlbTpudGgtb2YtdHlwZSgybiksXG4uZ2FsbGVyeS1jb2x1bW5zLTMgLmdhbGxlcnktaXRlbTpudGgtb2YtdHlwZSgzbiksXG4uZ2FsbGVyeS1jb2x1bW5zLTQgLmdhbGxlcnktaXRlbTpudGgtb2YtdHlwZSg0biksXG4uZ2FsbGVyeS1jb2x1bW5zLTUgLmdhbGxlcnktaXRlbTpudGgtb2YtdHlwZSg1biksXG4uZ2FsbGVyeS1jb2x1bW5zLTYgLmdhbGxlcnktaXRlbTpudGgtb2YtdHlwZSg2biksXG4uZ2FsbGVyeS1jb2x1bW5zLTcgLmdhbGxlcnktaXRlbTpudGgtb2YtdHlwZSg3biksXG4uZ2FsbGVyeS1jb2x1bW5zLTggLmdhbGxlcnktaXRlbTpudGgtb2YtdHlwZSg4biksXG4uZ2FsbGVyeS1jb2x1bW5zLTkgLmdhbGxlcnktaXRlbTpudGgtb2YtdHlwZSg5bikge1xuXHRtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5nYWxsZXJ5IC5nYWxsZXJ5LWNhcHRpb24ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG5cdC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcblx0LW1vei1ib3gtc2l6aW5nOiAgICBib3JkZXItYm94O1xuXHRib3gtc2l6aW5nOiAgICAgICAgIGJvcmRlci1ib3g7XG5cdGNvbG9yOiAjZmZmO1xuXHRmb250LXNpemU6IDEycHg7XG5cdGxpbmUtaGVpZ2h0OiAxLjU7XG5cdG1hcmdpbjogMDtcblx0bWF4LWhlaWdodDogNTAlO1xuXHRvcGFjaXR5OiAwO1xuXHRwYWRkaW5nOiA2cHggOHB4O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJvdHRvbTogMDtcblx0bGVmdDogMDtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0d2lkdGg6IDEwMCU7XG59XG5cbi5nYWxsZXJ5IC5nYWxsZXJ5LWNhcHRpb246YmVmb3JlIHtcblx0Y29udGVudDogXCJcIjtcblx0aGVpZ2h0OiAxMDAlO1xuXHRtaW4taGVpZ2h0OiA0OXB4O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMCU7XG59XG5cbi5nYWxsZXJ5LWl0ZW06aG92ZXIgLmdhbGxlcnktY2FwdGlvbiB7XG5cdG9wYWNpdHk6IDE7XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtNyAuZ2FsbGVyeS1jYXB0aW9uLFxuLmdhbGxlcnktY29sdW1ucy04IC5nYWxsZXJ5LWNhcHRpb24sXG4uZ2FsbGVyeS1jb2x1bW5zLTkgLmdhbGxlcnktY2FwdGlvbiB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cblxuLyoqXG4gKiA5LjAgQXVkaW8vVmlkZW9cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG4ubWVqcy1tZWRpYWVsZW1lbnQsXG4ubWVqcy1jb250YWluZXIgLm1lanMtY29udHJvbHMge1xuXHRiYWNrZ3JvdW5kOiAjMDAwO1xufVxuXG4ubWVqcy1jb250cm9scyAubWVqcy10aW1lLXJhaWwgLm1lanMtdGltZS1sb2FkZWQsXG4ubWVqcy1jb250cm9scyAubWVqcy1ob3Jpem9udGFsLXZvbHVtZS1zbGlkZXIgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtY3VycmVudCB7XG5cdGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5tZWpzLWNvbnRyb2xzIC5tZWpzLXRpbWUtcmFpbCAubWVqcy10aW1lLWN1cnJlbnQge1xuXHRiYWNrZ3JvdW5kOiAjMjQ4OTBkO1xufVxuXG4ubWVqcy1jb250cm9scyAubWVqcy10aW1lLXJhaWwgLm1lanMtdGltZS10b3RhbCxcbi5tZWpzLWNvbnRyb2xzIC5tZWpzLWhvcml6b250YWwtdm9sdW1lLXNsaWRlciAubWVqcy1ob3Jpem9udGFsLXZvbHVtZS10b3RhbCB7XG5cdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjMzKTtcbn1cblxuLm1lanMtY29udHJvbHMgLm1lanMtdGltZS1yYWlsIHNwYW4sXG4ubWVqcy1jb250cm9scyAubWVqcy1ob3Jpem9udGFsLXZvbHVtZS1zbGlkZXIgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtdG90YWwsXG4ubWVqcy1jb250cm9scyAubWVqcy1ob3Jpem9udGFsLXZvbHVtZS1zbGlkZXIgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtY3VycmVudCB7XG5cdGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5tZWpzLW92ZXJsYXktbG9hZGluZyB7XG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4ubWVqcy1vdmVybGF5LWJ1dHRvbiB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cdGJvcmRlci1yYWRpdXM6IDJweDtcblx0Ym94LXNoYWRvdzogMXB4IDFweCAxcHggcmdiYSgwLDAsMCwuOCk7XG5cdGNvbG9yOiAjMDAwO1xuXHRoZWlnaHQ6IDM2cHg7XG5cdG1hcmdpbi1sZWZ0OiAtMjRweDtcblx0d2lkdGg6IDQ4cHg7XG59XG5cbi5tZWpzLW92ZXJsYXktYnV0dG9uOmJlZm9yZSB7XG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHRjb250ZW50OiAnXFxmNDUyJztcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRmb250OiBub3JtYWwgMzJweC8xLjEyNSBHZW5lcmljb25zO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMXB4O1xuXHRsZWZ0OiAxMHB4O1xufVxuXG4ubWVqcy1jb250cm9scyAubWVqcy1idXR0b24gYnV0dG9uOmZvY3VzIHtcblx0b3V0bGluZTogbm9uZTtcbn1cblxuLm1lanMtY29udHJvbHMgLm1lanMtYnV0dG9uIGJ1dHRvbiB7XG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRjb2xvcjogI2ZmZjtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRmb250OiBub3JtYWwgMTZweC8xIEdlbmVyaWNvbnM7XG59XG5cbi5tZWpzLXBsYXlwYXVzZS1idXR0b24ubWVqcy1wbGF5IGJ1dHRvbjpiZWZvcmUge1xuXHRjb250ZW50OiAnXFxmNDUyJztcbn1cblxuLm1lanMtcGxheXBhdXNlLWJ1dHRvbi5tZWpzLXBhdXNlIGJ1dHRvbjpiZWZvcmUge1xuXHRjb250ZW50OiAnXFxmNDQ4Jztcbn1cblxuLm1lanMtdm9sdW1lLWJ1dHRvbi5tZWpzLW11dGUgYnV0dG9uOmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGYxMDknO1xuXHRmb250LXNpemU6IDIwcHg7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAtMnB4O1xuXHRsZWZ0OiAwO1xufVxuXG4ubWVqcy12b2x1bWUtYnV0dG9uLm1lanMtdW5tdXRlIGJ1dHRvbjpiZWZvcmUge1xuXHRjb250ZW50OiAnXFxmMTA5Jztcblx0bGVmdDogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG59XG5cbi5tZWpzLWZ1bGxzY3JlZW4tYnV0dG9uIGJ1dHRvbjpiZWZvcmUge1xuXHRjb250ZW50OiAnXFxmNDc0Jztcbn1cblxuLm1lanMtZnVsbHNjcmVlbi1idXR0b24ubWVqcy11bmZ1bGxzY3JlZW4gYnV0dG9uOmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGY0MDYnO1xufVxuXG4ubWVqcy1vdmVybGF5OmhvdmVyIC5tZWpzLW92ZXJsYXktYnV0dG9uIHtcblx0YmFja2dyb3VuZC1jb2xvcjogIzI0ODkwZDtcblx0Y29sb3I6ICNmZmY7XG59XG5cbi5tZWpzLWNvbnRyb2xzIC5tZWpzLWJ1dHRvbiBidXR0b246aG92ZXIge1xuXHRjb2xvcjogIzQxYTYyYTtcbn1cbmRpdi5wYWdlLWxpbmtzLFxuZm9vdGVyLmVudHJ5LW1ldGF7XG5cdG1hcmdpbjoyMHB4IDA7XG5cdG92ZXJmbG93OmhpZGRlbjtcblx0d2lkdGg6MTAwJTtcbn1cbi5wYWdpbmctbmF2aWdhdGlvbntcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbi8vIHdpZGdldF9yZWNlbnRfZW50cmllc1xuLm9wYWxzZXJ2aWNlLWNhdGVnb3JpZXMsLndpZGdldF9jYXRlZ29yaWVzLC53aWRnZXRfcGFnZXMsXG4ud2lkZ2V0X25hdl9tZW51e1xuXHR1bHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdHBhZGRpbmc6MDtcblx0XHRtYXJnaW46MDtcblx0XHRsaXtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cblx0fVxufVxuLnBvc3R7XG5cdC5wb3N0LXRodW1ibmFpbHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cbi53aWRnZXRfY2F0ZWdvcmllcyxcbi53aWRnZXRfYXJjaGl2ZSxcbi53aWRnZXRfdGV4dHtcblx0c2VsZWN0e1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cdFx0cGFkZGluZzogMTBweDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHR9XG59XG4vLyB3aWR0ZXQgZGVmYXVsdFxuLndpZGdldF9hcmNoaXZle1xuXHR1bHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdG1hcmdpbjowO1xuXHRcdHBhZGRpbmc6MDtcblx0XHRsaXtcblx0XHR9XG5cdFx0dWx7XG5cdFx0XHRAaW5jbHVkZSBydGwtcGFkZGluZy1sZWZ0KCR0aGVtZS1tYXJnaW4gLyAyKTtcblx0XHR9XG5cdH1cblxufVxuLndpZGdldF9yc3MsXG4ud2lkZ2V0X3JlY2VudF9jb21tZW50cyxcbi53aWRnZXRfbWV0YSxcbi53aWRnZXRfcGFnZXN7XG5cdD51bHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdHBhZGRpbmc6MDtcblx0fVxufVxuLndpZGdldF90ZXh0e1xuXHRkaXZ7XG5cdFx0PiB1bHtcblx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0XHRwYWRkaW5nOjA7XG5cdFx0XHR1bHtcblx0XHRcdFx0QGluY2x1ZGUgcnRsLXBhZGRpbmctbGVmdCgyNXB4KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbi53aWRnZXRfdGV4dHtcblx0aW1ne1xuXHRcdG1hcmdpbi1ib3R0b206MTBweDtcblx0fVxuXHRzZWxlY3R7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHR9XG59XG4ud2lkZ2V0X2NhbGVuZGFye1xuXHR0YWJsZXtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxufVxuLnNpZGViYXJ7XG5cdC50YWdjbG91ZCwuY2FsZW5kYXJfd3JhcCwud2lkZ2V0X3JzcyA+IHVsLC5vcGFsLXNlYXJjaCwudGV4dHdpZGdldHtcblx0fVxuXHRzZWxlY3R7XG5cdH1cblx0Zm9ybXtcblx0XHRzZWxlY3R7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0fVxuXHR9XG59XG4udGFnY2xvdWR7XG5cdGF7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgI2U0ZTRlNDtcblx0XHRwYWRkaW5nOiAzcHggMTBweDtcblx0XHRtYXJnaW4tYm90dG9tOiA2cHg7XG5cdFx0Zm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG5cdFx0Y29sb3I6ICR0ZXh0LWNvbG9yO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0QGluY2x1ZGUgcnRsLW1hcmdpbi1yaWdodCg1cHgpO1xuXHRcdCY6YWZ0ZXJ7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1sZWZ0KDApO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGxpbmVhcik7XG4gICAgICAgIH1cblx0XHQmOmhvdmVye1xuXHRcdFx0Y29sb3I6IHdoaXRlO1x0XHRcdFxuXHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGxpbmVhcik7XG5cdFx0XHRib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvcjtcblx0XHRcdCY6YWZ0ZXJ7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuLndpZGdldF9uYXZfbWVudSAubWVudS10ZXN0aW5nLW1lbnUtY29udGFpbmVye1xuXHQ+IHVse1xuXHRcdD4gbGl7XG5cdFx0XHRwYWRkaW5nOjEwcHggMDtcblx0XHRcdD4gYTpmaXJzdC1jaGlsZHtcblx0XHRcdFx0cGFkZGluZzowIDEwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdHVsIGxpe1xuXHRcdGxpbmUtaGVpZ2h0OiAzMHB4O1xuXHR9XG59XG4ucGFnaW5hdGlvbntcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwYWRkaW5nLXRvcDogMzBweDtcblx0YXtcblx0XHRwYWRkaW5nOiA3cHggMTVweDtcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuXHR9XG5cdHNwYW4uY3VycmVudHtcblx0XHRwYWRkaW5nOiA3cHggMTVweDtcblx0XHRjb2xvcjogJHRoZW1lLWNvbG9yO1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cdH1cbn0iLCJcbi8qKlxuICogNi4zIEVudHJ5IE1ldGFcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cbi5jYXQtbGlua3Mge1xuLyogXHRmb250LXdlaWdodDogOTAwOyAqL1xuXHR0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cblxuLmNhdC1saW5rcyBhIHtcblx0Y29sb3I6ICMyYjJiMmI7XG59XG5cbi5jYXQtbGlua3MgYTpob3ZlciB7XG5cdGNvbG9yOiAjNDFhNjJhO1xufVxuXG4uYnlsaW5lIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cbi5lbnRyeS1tZXRhIHtcblx0Y2xlYXI6IGJvdGg7XG5cdGNvbG9yOiAkbGlnaHQtZ3JheTtcblx0Zm9udC1zaXplOiAxMnB4O1xuXHRmb250LXdlaWdodDogNDAwO1xuXHRsaW5lLWhlaWdodDogMS4zMzMzMzMzMzMzO1xuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRtYXJnaW4tdG9wOjA7XG5cdHdpZHRoOjEwMCU7XG5cdG92ZXJmbG93OmhpZGRlbjtcblx0c3Bhbntcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdH0gXHRcblx0LnRhZy1saW5rc3tcblx0XHRtYXJnaW46IDA7XG5cdH1cbn1cbi5lbnRyeS1kYXRlLFxuLm1ldGEtc2VwLFxuLmF1dGhvcixcdFxuLmVudHJ5LWNhdGVnb3J5LFxuLmNvbW1lbnRzLWxpbmssXG4uZWRpdC1saW5rIHtcblx0YSB7XG5cdFx0Y29sb3I6ICRsaWdodC1ncmF5O1x0XHRcblx0fVxufVxuLmVudHJ5LWRhdGV7XG5cdHNwYW57XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG59XG4uZW50cnktY2F0ZWdvcnkge1xuXHR1bCB7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRwYWRkaW5nOjA7XG5cdFx0bGkge1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0fVxuXHR9XG5cdGF7XG5cdFx0Y29sb3I6ICR0aGVtZS1jb2xvcjtcblx0XHRwYWRkaW5nOiAwIDVweDtcblx0XHQmOmhvdmVye1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUhaW1wb3J0YW50O1xuXHRcdH1cblx0XHQmOmZpcnN0LWNoaWxke1xuXHRcdFx0QGluY2x1ZGUgcnRsLXBhZGRpbmctbGVmdCgwKTtcblx0XHR9XG5cdH1cbn1cbi5tZXRhLXNlcHtcblx0YmFja2dyb3VuZC1jb2xvcjogIzk5OTtcblx0QGluY2x1ZGUgc2l6ZSgzcHggLCAzcHgpO1xuXHRtYXJnaW46IDNweCA1cHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5wb3N0cy13cmFwcGVye1xuXHQucG9zdC1wcmV2aWV3e1xuXHRcdEBpbmNsdWRlIHJ0bC1mbG9hdC1sZWZ0KCk7XG5cdFx0d2lkdGg6IDQ1JTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1waG9uZSkge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXHR9XG5cdGFydGljbGUucG9zdHtcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRtYXJnaW4tYm90dG9tOiAyNXB4O1xuXHRcdC5lbnRyeS1jb250ZW50e1xuXHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cdFx0fVxuXHR9XG5cdFxufVxuLmJsb2ctbGF5b3V0e1xuXHRtYXJnaW46IDAgLTE1cHg7XG59XG4uYmxvZ2dyaWQtbGF5b3V0e1xuXHQuZW50cnktaGVhZGVye1xuXHRcdG1hcmdpbi10b3A6IDMwcHg7XG5cdFx0QGluY2x1ZGUgcnRsLW1hcmdpbi1sZWZ0KDE1cHgpO1xuXHR9XG5cdGFydGljbGUucG9zdHtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcblx0XHRwYWRkaW5nLWJvdHRvbTogMzBweDtcblx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0fVxuXHQ+IGRpdjpsYXN0LWNoaWxke1xuXHRcdGFydGljbGUucG9zdHtcblx0XHRcdGJvcmRlci1ib3R0b206IG5vbmU7XG5cdFx0fVxuXHR9XG59XG4vKipcbiAqIDYuNCBFbnRyeSBDb250ZW50XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbi5lbnRyeS1jb250ZW50LFxuLmVudHJ5LXN1bW1hcnksXG4ucGFnZS1jb250ZW50IHtcblx0LXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuXHQtbW96LWh5cGhlbnM6ICAgIGF1dG87XG5cdC1tcy1oeXBoZW5zOiAgICAgYXV0bztcblx0aHlwaGVuczogICAgICAgICBhdXRvO1xuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdGxpbmUtaGVpZ2h0OiAyNXB4O1xufVxuXG5cblxuLmVudHJ5LWNvbnRlbnQgYSxcbi5lbnRyeS1zdW1tYXJ5IGEsXG4ucGFnZS1jb250ZW50IGEsXG4uY29tbWVudC1jb250ZW50IGEge1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5lbnRyeS1jb250ZW50IGE6aG92ZXIsXG4uZW50cnktc3VtbWFyeSBhOmhvdmVyLFxuLnBhZ2UtY29udGVudCBhOmhvdmVyLFxuLmNvbW1lbnQtY29udGVudCBhOmhvdmVyLFxuLmVudHJ5LWNvbnRlbnQgYS5idXR0b24sXG4uZW50cnktc3VtbWFyeSBhLmJ1dHRvbixcbi5wYWdlLWNvbnRlbnQgYS5idXR0b24sXG4uY29tbWVudC1jb250ZW50IGEuYnV0dG9uIHtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uZW50cnktY29udGVudCB0YWJsZSxcbi5jb21tZW50LWNvbnRlbnQgdGFibGUge1xuXHRmb250LXNpemU6IDE0cHg7XG5cdGxpbmUtaGVpZ2h0OiAxLjI4NTcxNDI4NTc7XG5cdG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG5cbi5lbnRyeS1jb250ZW50IHRoLFxuLmNvbW1lbnQtY29udGVudCB0aCB7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdHBhZGRpbmc6IDhweDtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmVudHJ5LWNvbnRlbnQgdGQsXG4uY29tbWVudC1jb250ZW50IHRkIHtcblx0cGFkZGluZzogOHB4O1xufVxuXG4uZW50cnktY29udGVudCAuZWRpdC1saW5rIHtcblx0Y2xlYXI6IGJvdGg7XG5cdHBhZGRpbmc6IDAgNXB4O1xuXHRmb250LXNpemU6IDEycHg7XG5cdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdGxpbmUtaGVpZ2h0OiAxLjMzMzMzMzMzMzM7XG59XG5cblxuLmVudHJ5LWNvbnRlbnQgLmVkaXQtbGluayBhIHtcbi8qIFx0Y29sb3I6ICR0aGVtZS1jb2xvcjsgKi9cblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uZW50cnktY29udGVudCAuZWRpdC1saW5rIGE6aG92ZXIge1xuXHRjb2xvcjogIzQxYTYyYTtcbn1cblxuLmVudHJ5LWNvbnRlbnQgLm1vcmUtbGluayB7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdGNvbG9yOiAkdGhlbWUtY29sb3I7XG59XG4ucmF0aW5ncyBhe1xuXHR0ZXh0LWluZGVudDotOTk5OWVtICFpbXBvcnRhbnQ7XG59XG5cblxuLmVudHJ5LWNvbnRlbnQtcGFnZXsgXG4gICAgLmVkaXQtbGlua3tcbiAgICAgICAgYmFja2dyb3VuZDojMDAwO1xuICAgICAgIFxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmc6NXB4IDZweDtcbiAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgIFx0Y29udGVudDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBhe1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgIGNvbG9yOiAjRkZGIWltcG9ydGFudDtcbiAgICAgICAgfSAgXG4gICAgICAgIHotaW5kZXg6IDEwMDAwO1xuICAgIH1cbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbn1cbi5vcGFsLXNvY2lhbC1zaGFyZXtcblx0bWFyZ2luLWJvdHRvbToyMHB4O1xuXHRjbGVhcjogYm90aDtcbn1cbi8qIFRhZyBsaW5rcyBzdHlsZSAqL1xuLnRhZy1saW5rc3tcblx0YXtcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuXHRcdHBhZGRpbmc6IDZweCAxMnB4O1xuXHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdEBpbmNsdWRlIHJ0bC1tYXJnaW4tcmlnaHQoNXB4KTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0XHQmOmFmdGVye1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBAaW5jbHVkZSBydGwtbGVmdCgwKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4ycyBsaW5lYXIpO1xuICAgICAgICB9XG5cdFx0Jjpob3Zlcntcblx0XHRcdGNvbG9yOiB3aGl0ZTtcdFx0XHRcblx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4ycyBsaW5lYXIpO1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiAkdGhlbWUtY29sb3I7XG5cdFx0XHR6LWluZGV4OiAxO1xuXHRcdFx0JjphZnRlcntcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cdFxuLyoqXG4gKiBOYXZpZ2F0aW9uIGxpbmtzXG4gKi9cbi5uYXYtbGlua3N7XG5cdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdGEge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdEBpbmNsdWRlIHJ0bC1mbG9hdC1sZWZ0KCk7XG5cdFx0d2lkdGg6IDUwJTtcblx0XHRAaW5jbHVkZSBydGwtYm9yZGVyLXJpZ2h0KDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yKTtcblx0XHQ+IGRpdiB7XG5cdFx0XHRmb250LXNpemU6IDE4cHg7XG5cdFx0XHRmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0Ji5wdWxsLXJpZ2h0IHtcblx0XHRcdFx0QGluY2x1ZGUgcnRsLXRleHQtYWxpZ24tcmlnaHQoKTtcblx0XHRcdFx0QGluY2x1ZGUgcnRsLXBhZGRpbmctbGVmdCgxNXB4KTtcblx0XHRcdFx0Lm1ldGEtbmF2IHtcblx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuXHRcdFx0XHRcdFx0Y29udGVudDogXCJcXGYxMDVcIjtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIHJ0bC1tYXJnaW4tbGVmdCg3cHgpO1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQmLnB1bGwtbGVmdCB7XG5cdFx0XHRcdEBpbmNsdWRlIHJ0bC1wYWRkaW5nLXJpZ2h0KDE1cHgpO1xuXHRcdFx0XHQubWV0YS1uYXYge1xuXHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuXHRcdFx0XHRcdFx0Y29udGVudDogXCJcXGYxMDRcIjtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIHJ0bC1tYXJnaW4tcmlnaHQoN3B4KTtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdH1cblx0XHQmOmxhc3QtY2hpbGR7XG5cdFx0XHRAaW5jbHVkZSBydGwtYm9yZGVyLXJpZ2h0KDApO1xuXHRcdH1cblx0fVxuXHQubWV0YS1uYXZ7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRjb2xvcjogJGxpZ2h0LWdyYXk7XG5cdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdG1hcmdpbi1ib3R0b206IDdweDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdH1cbn1cblxuLyogTWVkaWFlbGVtZW50cyAqL1xuXG4uaGVudHJ5IC5tZWpzLWNvbnRhaW5lciB7XG5cdG1hcmdpbjogMTJweCAwIDE4cHg7XG59XG5cbi5oZW50cnkgLm1lanMtbWVkaWFlbGVtZW50LFxuLmhlbnRyeSAubWVqcy1jb250YWluZXIgLm1lanMtY29udHJvbHMge1xuXHRiYWNrZ3JvdW5kOiAjMDAwO1xufVxuXG4uaGVudHJ5IC5tZWpzLWNvbnRyb2xzIC5tZWpzLXRpbWUtcmFpbCAubWVqcy10aW1lLWxvYWRlZCxcbi5oZW50cnkgLm1lanMtY29udHJvbHMgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtc2xpZGVyIC5tZWpzLWhvcml6b250YWwtdm9sdW1lLWN1cnJlbnQge1xuXHRiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4uaGVudHJ5IC5tZWpzLWNvbnRyb2xzIC5tZWpzLXRpbWUtcmFpbCAubWVqcy10aW1lLWN1cnJlbnQge1xuXHRiYWNrZ3JvdW5kOiAjMjQ4OTBkO1xufVxuXG4uaGVudHJ5IC5tZWpzLWNvbnRyb2xzIC5tZWpzLXRpbWUtcmFpbCAubWVqcy10aW1lLXRvdGFsLFxuLmhlbnRyeSAubWVqcy1jb250cm9scyAubWVqcy1ob3Jpem9udGFsLXZvbHVtZS1zbGlkZXIgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtdG90YWwge1xuXHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4zMyk7XG59XG5cbi5oZW50cnkgLm1lanMtY29udGFpbmVyIC5tZWpzLWNvbnRyb2xzIC5tZWpzLXRpbWUge1xuXHRwYWRkaW5nLXRvcDogOXB4O1xufVxuXG4uaGVudHJ5IC5tZWpzLWNvbnRyb2xzIC5tZWpzLXRpbWUtcmFpbCBzcGFuLFxuLmhlbnRyeSAubWVqcy1jb250cm9scyAubWVqcy1ob3Jpem9udGFsLXZvbHVtZS1zbGlkZXIgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtdG90YWwsXG4uaGVudHJ5IC5tZWpzLWNvbnRyb2xzIC5tZWpzLWhvcml6b250YWwtdm9sdW1lLXNsaWRlciAubWVqcy1ob3Jpem9udGFsLXZvbHVtZS1jdXJyZW50IHtcblx0Ym9yZGVyLXJhZGl1czogMDtcbn1cblxuLmhlbnRyeSAubWVqcy1vdmVybGF5LWxvYWRpbmcge1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLmhlbnRyeSAubWVqcy1vdmVybGF5LWJ1dHRvbiB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cdGJvcmRlci1yYWRpdXM6IDJweDtcblx0Ym94LXNoYWRvdzogMXB4IDFweCAxcHggcmdiYSgwLDAsMCwuOCk7XG5cdGNvbG9yOiAjMDAwO1xuXHRoZWlnaHQ6IDM2cHg7XG5cdG1hcmdpbi1sZWZ0OiAtMjRweDtcblx0d2lkdGg6IDQ4cHg7XG59XG5cbi5oZW50cnkgLm1lanMtb3ZlcmxheS1idXR0b246YmVmb3JlIHtcblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdGNvbnRlbnQ6ICdcXGY0NTInO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGZvbnQ6IG5vcm1hbCAzMnB4LzEuMTI1IEdlbmVyaWNvbnM7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAxcHg7XG5cdGxlZnQ6IDEwcHg7XG59XG5cbi5oZW50cnkgLm1lanMtY29udHJvbHMgLm1lanMtYnV0dG9uIGJ1dHRvbjpmb2N1cyB7XG5cdG91dGxpbmU6IG5vbmU7XG59XG5cbi5oZW50cnkgLm1lanMtY29udHJvbHMgLm1lanMtYnV0dG9uIGJ1dHRvbiB7XG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRjb2xvcjogI2ZmZjtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRmb250OiBub3JtYWwgMTZweC8xIEdlbmVyaWNvbnM7XG59XG5cbi5oZW50cnkgLm1lanMtcGxheXBhdXNlLWJ1dHRvbi5tZWpzLXBsYXkgYnV0dG9uOmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGY0NTInO1xufVxuXG4uaGVudHJ5IC5tZWpzLXBsYXlwYXVzZS1idXR0b24ubWVqcy1wYXVzZSBidXR0b246YmVmb3JlIHtcblx0Y29udGVudDogJ1xcZjQ0OCc7XG59XG5cbi5oZW50cnkgLm1lanMtdm9sdW1lLWJ1dHRvbi5tZWpzLW11dGUgYnV0dG9uOmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGYxMDknO1xuXHRmb250LXNpemU6IDIwcHg7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAtMnB4O1xuXHRsZWZ0OiAwO1xufVxuXG4uaGVudHJ5IC5tZWpzLXZvbHVtZS1idXR0b24ubWVqcy11bm11dGUgYnV0dG9uOmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGYxMDknO1xuXHRsZWZ0OiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcbn1cblxuLmhlbnRyeSAubWVqcy1mdWxsc2NyZWVuLWJ1dHRvbiBidXR0b246YmVmb3JlIHtcblx0Y29udGVudDogJ1xcZjQ3NCc7XG59XG5cbi5oZW50cnkgLm1lanMtZnVsbHNjcmVlbi1idXR0b24ubWVqcy11bmZ1bGxzY3JlZW4gYnV0dG9uOmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGY0MDYnO1xufVxuXG4uaGVudHJ5IC5tZWpzLW92ZXJsYXk6aG92ZXIgLm1lanMtb3ZlcmxheS1idXR0b24ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjMjQ4OTBkO1xuXHRjb2xvcjogI2ZmZjtcbn1cblxuLmhlbnRyeSAubWVqcy1jb250cm9scyAubWVqcy1idXR0b24gYnV0dG9uOmhvdmVyIHtcblx0Y29sb3I6ICM0MWE2MmE7XG59XG4uZ2FsbGVyeS1jb2x1bW5zLTMgLmdhbGxlcnktaXRlbXtcblx0JjpudGgtY2hpbGQoM24rMSl7XG5cdFx0Y2xlYXI6Ym90aDtcblx0fVxufVxuLnNpbmdsZS1wb3N0e1xuXHRhcnRpY2xle1xuXHRcdC5lbnRyeS1tZXRhe1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMTVweDtcblx0XHR9XG5cdH1cbn1cbmgxLmFyY2hpdmUtdGl0bGV7XG5cdG1hcmdpbjogMDtcbn1cbmFydGljbGV7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0LmVudHJ5LXRpdGxle1xuXHRcdGZvbnQtc2l6ZTogMThweDtcblx0XHRsaW5lLWhlaWdodDogMjVweDtcblx0XHRmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG5cdFx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cdH1cblx0aDEuZW50cnktdGl0bGV7XG5cdFx0Zm9udC1zaXplOiAzMHB4ICFpbXBvcnRhbnQ7XG5cdFx0Zm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0bGluZS1oZWlnaHQ6IDQwcHg7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0fVxuXHQuZW50cnktbWV0YXtcbiAgICBcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdH1cblx0LmVudHJ5LXRhZ3tcblx0XHRwYWRkaW5nLWJvdHRvbTogMzBweDtcblx0XHRwYWRkaW5nLXRvcDogMzBweDtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcblx0fVxuXHQubGlzdC1pdGVte1xuXHRcdGgze1xuXHRcdFx0Zm9udC1zaXplOiAxOHB4O1xuXHRcdH1cblx0fVxuXHQmLnBvc3Qge1xuXHRcdG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlci13aWR0aDtcdFxuXHRcdC5wb3N0LXRodW1ibmFpbHtcblx0XHRcdGltZ3tcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDFzIGVhc2UgMHMsIHRyYW5zZm9ybSAxcyBlYXNlIDBzKTtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmltYWdlLXBvc3R7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1x0XG5cdFx0XHRpbWd7XG5cdFx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAxcyBlYXNlIDBzLCB0cmFuc2Zvcm0gMXMgZWFzZSAwcyk7XG5cdFx0XHR9XHRcdFxuXHRcdH1cblx0XHRzcGFue1xuXHRcdFx0aXtcblx0XHRcdFx0QGluY2x1ZGUgcnRsLXBhZGRpbmctcmlnaHQoMTBweCk7XG5cdFx0XHR9XG5cdFx0XHRhe1xuXHRcdFx0XHRjb2xvcjogJGxpZ2h0LWdyYXk7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRcdH1cblx0XHRcdHNwYW57XG5cdFx0XHRcdEBpbmNsdWRlIHJ0bC1tYXJnaW4tcmlnaHQoMCk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5wb3N0LW1ldGF7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRAaW5jbHVkZSBzaXplKDQ1cHgsNzJweCk7XG5cdFx0XHRAaW5jbHVkZSBydGwtcmlnaHQoMCk7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkdGhlbWUtY29sb3I7XG5cdFx0XHR0b3A6IDIwcHg7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRsaW5lLWhlaWdodDogMS4zMzMzMzMzMzMzO1xuXHRcdFx0c3Bhbntcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1x0XHRcdFx0XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdCYuZGF0ZS1wb3N0e1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMjJweDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkdGhlbWUtY29sb3I7XG5cdFx0XHRcdFx0Y29sb3I6IHdoaXRlO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDEwcHggMDtcblx0XHRcdFx0fVxuXHRcdFx0XHQmLm1vbnRoLXBvc3R7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdFx0XHRcdHBhZGRpbmc6IDVweCAwO1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IHdoaXRlO1xuXHRcdFx0XHRcdGNvbG9yOiAkbGluay1jb2xvcjtcblx0XHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LmVudHJ5LWNvbnRlbnR7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuXHRcdFx0cGFkZGluZzogJGdyaWQtZ3V0dGVyLXdpZHRoO1xuXHRcdFx0Zm9udC1zaXplOiAxM3B4O1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHQuZW50cnktdGl0bGV7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHR9XG5cdFx0XHQuYXV0aG9yLXBvc3R7XG5cdFx0XHRcdEBpbmNsdWRlIHJ0bC1tYXJnaW4tcmlnaHQoMjBweCk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5wb3N0LWluZm97XG5cdFx0XHQuZW50cnktY29udGVudHtcblx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRmb250LXdlaWdodDogMzAwO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRcdFx0fVx0XG5cdFx0fVxuXHRcdCY6aG92ZXJ7XG5cdFx0XHQucG9zdC10aHVtYm5haWx7XG5cdFx0XHRcdGltZ3tcblx0XHRcdFx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUzZCgxLjEsIDEuMSwgMSkpO1xuXHRcdFx0XHR9XHRcblx0XHRcdH1cblx0XHRcdC5pbWFnZS1wb3N0e1xuXHRcdFx0XHRpbWd7XG5cdFx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlM2QoMS4xLCAxLjEsIDEpKTtcblx0XHRcdFx0fVx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdH1cdFx0XG5cdH1cblx0Ji5wYWdle1xuXHR9XG5cdC5wb3N0LWZvcm1hdCBhe1xuXHRcdGl7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXHR9XHRcblx0LnBvc3QtY29udGVudHtcblx0XHRzcGFue1xuXHRcdFx0YXtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRjb2xvcjogJHRoZW1lLWNvbG9yO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRcdFx0XHQmOmhvdmVye1xuXHRcdFx0XHRcdGNvbG9yOiBkYXJrZW4oJHRoZW1lLWNvbG9yLDUlKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQmLnRlYW17XG5cdFx0Y2xlYXI6IGJvdGg7XG5cdFx0LnBvc3QtdGh1bWJuYWlse1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR3aWR0aDogMzAlO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcblx0XHR9XG5cdFx0LmVudHJ5LWNvbnRlbnQsLmVudHJ5LWhlYWRlcntcblx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdHdpZHRoOiA2NyU7XG5cdFx0fVxuXHR9XG59XG4ucmVsYXRlZC1wb3N0c3tcblx0LndpZGdldHtcblx0XHQud2lkZ2V0LXRpdGxle1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjVweDtcblx0XHR9XG5cdH1cbi8qIFx0LmVudHJ5LW1ldGF7XG5cdFx0Ym9yZGVyOiAwO1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH0gKi9cblx0YXJ0aWNsZS5wb3N0e1xuXHRcdC5wb3N0LWluZm97XG5cdFx0XHQuZW50cnktY29udGVudHtcblx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcblx0XHRcdFx0cGFkZGluZzogMzBweDtcblx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICBDb21tZW50IExpc3RcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5jb21tZW50c3tcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcblx0Ym9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcblx0cGFkZGluZzogMzBweDtcblx0Y2xlYXI6IGJvdGg7XG5cdG1hcmdpbi10b3A6IDMwcHg7XG5cdC5jb21tZW50cy10aXRsZSB7XG5cdFx0Zm9udC1zaXplOiAyNHB4O1xuXHQgICAgbWFyZ2luLWJvdHRvbTogMDtcblx0ICAgIHBhZGRpbmc6IDEzcHggMDtcblx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICAgIC50aGUtY29tbWVudHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICRib3JkZXItY29sb3I7XG4gICAgLmF2YXRhcntcbiAgICAgICAgQGluY2x1ZGUgcnRsLWZsb2F0LWxlZnQoKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OjVweDtcbiAgICAgICAgaW1ne1xuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSg1MHB4LCA1MHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNvbW1lbnQtdGV4dHtcbiAgICBcdC1tcy13b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cdFx0d29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIH1cblx0XG4gICAgaW5wdXQuYnRue1xuICAgIFx0cGFkZGluZzogMTBweCAyNXB4O1xuICAgIH1cbiAgICAuY29tbWVudC1ib3gge1xuICAgIFx0b3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gICAgLmNvbW1lbnQtYXV0aG9ye1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgIH1cbiAgICAuY29tbWVudC1tZXRhIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgLSAyO1xuICAgICAgICBjb2xvcjogI2FhYTtcbiAgICB9XG4gICAgYXtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgIH1cbiAgICBvbCwgdWwgeyBcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIFxuICAgIH1cbiAgICAuY29tbWVudGxpc3RzLFxuICAgIC5jaGlsZHJlbiB7XG5cdCAgbGlzdC1zdHlsZTogbm9uZTtcblx0ICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1waG9uZSkge1xuXHQgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG5cdCAgfVxuXHQgfVxuICAgIC5jb21tZW50bGlzdHN7XG4gICAgXHRAaW5jbHVkZSBydGwtcGFkZGluZy1sZWZ0KDApO1xuICAgIH1cbn1cbi5jb21tZW50LW5hdmlnYXRpb257XG5cdHBhZGRpbmc6IDIwcHggMDtcblx0LnByZXZpb3Vze2Zsb2F0OiBsZWZ0O30gXG5cdC5uZXh0e2Zsb2F0OiByaWdodDt9XG59IiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFwgXG4gICAgcG9ydGZvbGlvXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnNpbmdsZS1wb3J0Zm9saW8ge1xuICAgLmVudHJ5LXRpdGxle1xuICAgICAgbWFyZ2luOiAxMHB4IDAgMjVweDtcbiAgICAgIC50aXRsZS1wb3N0e1xuICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgICB9XG4gICB9XG4gICAuY3JlYXRlZHtcbiAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgfVxuICAgLnNpbmdsZS1ib2R5e1xuICAgICAgbWFyZ2luLXRvcDogJGdyaWQtZ3V0dGVyLXdpZHRoO1xuICAgfVxuICAgLmdhbGxlcnktdGh1bWJ7XG4gICAgICBbY2xhc3NePVwiY29sLVwiXXtcbiAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICB9XG4gICB9XG4gICAuZm9ybWF0LXZpZGVvIC5jb250ZW50LXZpZGVve1xuICAgICAgYmFja2dyb3VuZDogI0ZBRkFGQTtcbiAgIH1cbiAgIC5mb3JtYXQtaW5mb21hdGlvbiAuc2luZ2xlLWJvZHl7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgLnBvcnRmb2xpby1pbmZve1xuICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgID4gZGl2e1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNGMUYxRjE7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGR7XG4gICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0YxRjFGMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4gc3BhbntcbiAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxke1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogIzc3Nzc3NztcbiAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICB9XG4gICAgICAgICBhOmhvdmVye1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgIH1cbiAgICAgIH1cbiAgIH1cbn1cblxuXG4ucG9ydGZvbGlvLW1hc29ucnktZW50cnl7XG5cdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdCYubm9wYWRkaW5ne1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cbn0gIFxuLy9FZmZlY3QgcG9ydGZvbGlvXG4uaWgtaXRlbXtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdyaWQtZ3V0dGVyLXdpZHRoO1xuICAgIC5pbmZve1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICA+ICp7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICAgIGgze1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKyAxO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDFzIGVhc2UgMHMsIHRyYW5zZm9ybSAxcyBlYXNlIDBzKTtcbiAgICAgICAgfVxuICAgICAgICBwe1xuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgY29sb3I6ICNiYmI7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDIwcHggMjBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgICB9XG4gICAgfVxuICAgICY6aG92ZXJ7XG4gICAgICAgIC5pbmZve1xuICAgICAgICAgICAgaDN7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlM2QoMS4xLCAxLjEsIDEpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0gICBcblxuLmloLWl0ZW17XG4gICAgLmluZm97XG4gICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zNXMpO1xuICAgICAgICBoM3tcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmRlc2NyaXB0aW9ue1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAuY3JlYXRlZCwgLnpvb217XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgfVxuICAgICAgICAuaW5mby1pbm5lcntcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTYwcHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlLCBhdXRvKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBoM3tcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuem9vbXtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgzNXB4LDM1cHgpO1xuICAgICAgICAgICAgICAgIHRvcDogNXB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2NhbGUoMCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zcyk7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIitcIjtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmFmYWZhO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMzVweCwzNXB4KTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmYWZhZmE7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGl7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICY6aG92ZXJ7XG4gICAgICAgIC5pbmZve1xuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgICAgIC56b29teyAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2NhbGUoMSk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zcyk7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSAgICBcbiAgICB9XG59XG4uaWgtaXRlbS5zcXVhcmV7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC5pbmZve1xuICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICMzMzMzMzM7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgID4gKntcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgICAgaDN7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgICAgICAgIG1hcmdpbjogMzBweCAwIDAgMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlICsgMTtcbiAgICAgICAgfVxuICAgICAgICBwe1xuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgY29sb3I6ICNiYmI7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDIwcHggMjBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgICB9XG4gICAgfVxufVxuLmloLWl0ZW0uc3F1YXJlLmVmZmVjdDIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgJi5jb2xvcmVkIHtcbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzMzMzMzMztcbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMTExMTExO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5pbWcge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCAgYWxsIC41cyBlYXNlLWluLW91dCApO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHJvdGF0ZSgwZGVnKSBzY2FsZSgxKSApO1xuICAgIH1cblxuICAgIC5pbmZvIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzMzMzMzMztcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCAgYWxsIC4zNXMgLjNzIGVhc2UtaW4tb3V0ICk7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWSgtMjAwcHgpICk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCAgYWxsIC4zNXMgLjZzIGVhc2UtaW4tb3V0ICk7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWSgtMjAwcHgpICk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCAgYWxsIC4zNXMgLjVzIGxpbmVhciApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYTpob3ZlciB7XG4gICAgICAgIC5pbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCByb3RhdGUoNzIwZGVnKSBzY2FsZSgwKSApO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG5cbiAgICAgICAgICAgIGgzLFxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVZKDApICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5paC1pdGVtLnNxdWFyZXtcbiAgICAmLmVmZmVjdDMuYm90dG9tX3RvX3RvcCB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVkoMTAwJSkgKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuMzVzKTtcbiAgICAgICAgfVxuICAgICAgICAuaW1ne1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zNXMpO1xuICAgICAgICB9XG4gICAgICAgIGE6aG92ZXIge1xuICAgICAgICAgICAgLmltZyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVZKC01MHB4KSApO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWSgwKSApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uaWgtaXRlbS5zcXVhcmUuZWZmZWN0NSB7XG4gICAgLmltZyB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oICBhbGwgLjM1cyBlYXNlLWluLW91dCApO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHNjYWxlKDEpICk7XG4gICAgfVxuXG4gICAgLmluZm8ge1xuICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oIGFsbCAuMzVzIGVhc2UtaW4tb3V0ICk7XG4gICAgfVxuXG4gICAgYTpob3ZlciB7XG4gICAgICAgIC5pbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSgwKSApO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kZWxheSgwLCAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSgxKSByb3RhdGUoMGRlZykgKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZGVsYXkoMC4zcywgMC4zcyk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5paC1pdGVtLnNxdWFyZS5lZmZlY3Q1LmxlZnRfdG9fcmlnaHQge1xuICAgIC5pbmZvIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSgwKSByb3RhdGUoLTE4MGRlZykgKTtcbiAgICB9XG59XG5cbi5paC1pdGVtLnNxdWFyZS5lZmZlY3Q2IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIFxuICAgIC5pbWcge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCAgYWxsIC4zNXMgZWFzZS1pbi1vdXQgKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSgxKSApO1xuICAgIH1cblxuICAgIC5pbmZvIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCAgYWxsIC4zNXMgZWFzZS1pbi1vdXQgKTtcbiAgICAgICAgaDMge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuMzVzIGVhc2UtaW4tb3V0ICk7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCAgYWxsIC4zNXMgLjFzIGxpbmVhciApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYTpob3ZlciB7XG4gICAgICAgIC5pbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSgxLjIpICk7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmloLWl0ZW0uc3F1YXJlLmVmZmVjdDYuYm90dG9tX3RvX3RvcCB7XG4gICAgLmluZm8ge1xuICAgICAgICBoMyB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVkoMTAwJSkgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVZKDEwMCUpICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhOmhvdmVyIHtcbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgaDMsXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVkoMCkgKTtcbiAgICAgICAgICAgIH0gICAgICAgICAgICBcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmloLWl0ZW0uc3F1YXJlLmVmZmVjdDcge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLmltZyB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oICBhbGwgLjM1cyBlYXNlLWluLW91dCApO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHNjYWxlKDEpICk7XG4gICAgfVxuXG4gICAgLmluZm8ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oICBhbGwgLjM1cyBlYXNlLWluLW91dCApO1xuICAgICAgICBoMyB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHNjYWxlKDQpICk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCAgYWxsIC4zNXMgLjFzIGVhc2UtaW4tb3V0ICk7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHNjYWxlKDUpICk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCAgYWxsIC4zNXMgLjNzIGxpbmVhciApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYTpob3ZlciB7XG4gICAgICAgIC5pbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSgxLjIpICk7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgaDMsXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHNjYWxlKDEpICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5paC1pdGVtLnNxdWFyZS5lZmZlY3Q4IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC5pbWcge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCAgYWxsIC4zNXMgZWFzZS1pbi1vdXQgKTtcbiAgICB9XG5cbiAgICAuaW5mbyB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuMzVzIGVhc2UtaW4tb3V0ICk7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuMzVzIC4xcyBlYXNlLWluLW91dCApO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCAgYWxsIC4zNXMgLjE1cyBsaW5lYXIgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICAuaW1nIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgaDMsXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmloLWl0ZW0uc3F1YXJlLmVmZmVjdDguc2NhbGVfdXAge1xuICAgIC5pbWcge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHNjYWxlKDEpICk7XG4gICAgfVxuXG4gICAgLmluZm8ge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHNjYWxlKDApICk7XG5cbiAgICAgICAgaDMsXG4gICAgICAgIHAge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSgwKSApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYTpob3ZlciB7XG4gICAgICAgIC5pbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSg1KSApO1xuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSgxKSApO1xuXG4gICAgICAgICAgICBoMyxcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggc2NhbGUoMSkgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmloLWl0ZW0uc3F1YXJlLmVmZmVjdDEwIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC5pbWcge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCAgYWxsIC4zNXMgZWFzZS1pbi1vdXQgKTtcbiAgICB9XG5cbiAgICAuaW5mbyB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuMzVzIGVhc2UtaW4tb3V0ICk7XG4gICAgfVxuXG4gICAgYTpob3ZlciB7XG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaWgtaXRlbS5zcXVhcmUuZWZmZWN0MTAubGVmdF90b19yaWdodCB7XG4gICAgLmltZyB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWCgwKSApO1xuICAgIH1cblxuICAgIC5pbmZvIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVYKC0xMDAlKSApO1xuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICAuaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWCgxMDAlKSApO1xuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVYKDApICk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5paC1pdGVtLnNxdWFyZS5lZmZlY3QxMiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAuaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggYWxsIC4zNXMgZWFzZS1pbiApO1xuICAgIH1cblxuICAgIC5pbmZvIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCBhbGwgLjM1cyBlYXNlLWluICk7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oIGFsbCAuMzVzIGVhc2UtaW4gKTtcbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oIGFsbCAuMzVzIGVhc2UtaW4gKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZGVsYXkoIDAuMnMsIDAuMnMgKTtcblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZGVsYXkoIDAuM3MsIDAuM3MgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kZWxheSggMC4yNXMsIDAuMjVzICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4gXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaWgtaXRlbS5zcXVhcmUuZWZmZWN0MTIubGVmdF90b19yaWdodCB7XG4gICAgLmluZm8ge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZSgtNDYwcHgsIC0xMDBweCkgcm90YXRlKC0xODBkZWcpICk7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVZKC0xMDBweCkgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVYKC0zMDBweCkgcm90YXRlKC05MGRlZykgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZSgwcHgsIDBweCkgKTtcblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWSgwcHgpICk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWCgwcHgpIHJvdGF0ZSgwZGVnKSApO1xuICAgICAgICAgICAgfSAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgfVxufVxuIFxuLmloLWl0ZW0uc3F1YXJlLmVmZmVjdDE0IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC5pbWcge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCAgYWxsIC4zNXMgZWFzZS1pbi1vdXQgKTtcbiAgICB9XG5cbiAgICAuaW5mbyB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggc2NhbGUoLjUpICk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oIGFsbCAuMzVzIGVhc2UgLjJzKTtcbiAgICB9XG5cbiAgICBhOmhvdmVyIHtcbiAgICAgICAgLmltZyB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHNjYWxlKC41KSApO1xuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHNjYWxlKDEpICk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5paC1pdGVtLnNxdWFyZS5lZmZlY3QxNC5sZWZ0X3RvX3JpZ2h0IHtcbiAgICAuaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVYKDApIHJvdGF0ZSgwKSApO1xuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICAuaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWCgxMDAlKSByb3RhdGUoMTgwZGVnKSApO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaWgtaXRlbS5zcXVhcmUuZWZmZWN0MTUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgQGluY2x1ZGUgcGVyc3BlY3RpdmUoOTAwcHgpO1xuICAgIC5pbWcge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCAgYWxsIC40cyBlYXNlLWluLW91dCApO1xuICAgIH1cblxuICAgIC5pbmZvIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggIGFsbCAuMzVzIGVhc2UtaW4tb3V0IC4zcyk7XG4gICAgfVxuXG4gICAgYTpob3ZlciB7XG4gICAgICAgIC5pbWcge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaWgtaXRlbS5zcXVhcmUuZWZmZWN0MTUubGVmdF90b19yaWdodCB7XG4gICAgLmltZyB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggcm90YXRlWSgwKSApO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0tb3JpZ2luKCAxMDAlLCA1MCUgKTtcbiAgICB9XG5cbiAgICAuaW5mbyB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggcm90YXRlWSg5MGRlZykgKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtLW9yaWdpbiggMCUsIDUwJSApO1xuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICAuaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggcm90YXRlWSgtOTBkZWcpICk7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHJvdGF0ZVkoMCkgKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5paC1pdGVtLnNxdWFyZS5lZmZlY3QxNntcbiAgICAuaW5mb3tcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgICAgICAgYmFja2dyb3VuZDogJHRoZW1lLWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjM1cyk7XG4gICAgICAgIGgze1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2shaW1wb3J0YW50O1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjM1cyk7XG4gICAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZGVzY3JpcHRpb257XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5jcmVhdGVkLCAuem9vbXtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrIWltcG9ydGFudDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG4gICAgICAgIC56b29tIGl7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuaW5mby1pbm5lcntcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTYwcHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlLCBhdXRvKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBoM3tcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlcntcbiAgICAgICAgLmluZm97XG4gICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICB9ICAgICBcbiAgICB9XG59XG5cbi5paC1pdGVtLnNxdWFyZS5lZmZlY3QxNntcbiAgICAuaW5mb3tcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgICAgICAgYmFja2dyb3VuZDogJHRoZW1lLWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjM1cyk7XG4gICAgICAgIGgze1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2shaW1wb3J0YW50O1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjM1cyk7XG4gICAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZGVzY3JpcHRpb257XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5jcmVhdGVkLCAuem9vbXtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrIWltcG9ydGFudDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG4gICAgICAgIC56b29tIGl7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuaW5mby1pbm5lcntcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTYwcHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlLCBhdXRvKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBoM3tcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlcntcbiAgICAgICAgLmluZm97XG4gICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICB9ICAgICBcbiAgICB9XG59XG4vL2pxem9vbVxuXG4uem9vbUxlbnMge1xuICAgIHdpZHRoOiA1MHB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0IDogNTBweCAhaW1wb3J0YW50O1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGYwNjdcIjtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBsaW5lLWhlaWdodDogNDhweDtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG59XG4vKiB0ZWFtIHNpbmdsZSAqL1xuXG4udGVhbS1zaW5nbGV7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC50ZWFtLXdyYXBwZXJ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuICAgIC50ZWFtLWNvbnRlbnR7XG4gICAgICAgIC50ZWFtLWluZm97XG4gICAgICAgICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLWZsb2F0LWxlZnQoKTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLW1hcmdpbi1yaWdodCgzMHB4KTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICB1bC5tZXRhYm94e1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggZG90dGVkICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4ICAzMHB4O1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgc3BhbntcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC50ZWFtLWpvYntcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC5zb2NpYWx7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICB9IFxuICAgICAgICAudGVhbS1ib2R5e1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIH0gXG4gICAgICAgIC5vcGFsLXNvY2lhbC1zaGFyZXtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnBvc3QtdGh1bWJuYWlse1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qU3BhY2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKk1hcmdpbiBUb3AqL1xuLnNwYWNlLXRvcC01ICB7bWFyZ2luLXRvcDogNXB4ICFpbXBvcnRhbnQ7fVxuLnNwYWNlLXRvcC0xMCB7bWFyZ2luLXRvcDogMTBweCAhaW1wb3J0YW50O30gXG4uc3BhY2UtdG9wLTE1IHttYXJnaW4tdG9wOiAxNXB4ICFpbXBvcnRhbnQ7fVxuLnNwYWNlLXRvcC0yMCB7bWFyZ2luLXRvcDogMjBweCAhaW1wb3J0YW50O31cbi5zcGFjZS10b3AtMjUge21hcmdpbi10b3A6IDI1cHggIWltcG9ydGFudDt9XG4uc3BhY2UtdG9wLTMwIHttYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7fVxuLnNwYWNlLXRvcC0zNSB7bWFyZ2luLXRvcDogMzVweCAhaW1wb3J0YW50O31cbi5zcGFjZS10b3AtNDAge21hcmdpbi10b3A6IDQwcHggIWltcG9ydGFudDt9XG4uc3BhY2UtdG9wLTQ1IHttYXJnaW4tdG9wOiA0NXB4ICFpbXBvcnRhbnQ7fVxuLnNwYWNlLXRvcC01MCB7bWFyZ2luLXRvcDogNTBweCAhaW1wb3J0YW50O31cblxuLypNYXJnaW4gQm90dG9tKi9cbi5zcGFjZS01ICB7bWFyZ2luLWJvdHRvbTogNXB4ICFpbXBvcnRhbnQ7fVxuLnNwYWNlLTEwIHttYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7fSBcbi5zcGFjZS0xNSB7bWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50O31cbi5zcGFjZS0yMCB7bWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50O31cbi5zcGFjZS0yNSB7bWFyZ2luLWJvdHRvbTogMjVweCAhaW1wb3J0YW50O31cbi5zcGFjZS0zMCB7bWFyZ2luLWJvdHRvbTogMzBweCAhaW1wb3J0YW50O31cbi5zcGFjZS0zNSB7bWFyZ2luLWJvdHRvbTogMzVweCAhaW1wb3J0YW50O31cbi5zcGFjZS00MCB7bWFyZ2luLWJvdHRvbTogNDBweCAhaW1wb3J0YW50O31cbi5zcGFjZS00NSB7bWFyZ2luLWJvdHRvbTogNDVweCAhaW1wb3J0YW50O31cbi5zcGFjZS01MCB7bWFyZ2luLWJvdHRvbTogNTBweCAhaW1wb3J0YW50O31cbi5uby1tYXJnaW4tYm90dG9te1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4vKlBhZGRpbmcgQXJvdW5kIHRoZSBCbG9jayovXG4uc3BhY2UtcGFkZGluZy0we1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cbi5zcGFjZS1wYWRkaW5nLTEwIHtcbiAgICBwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG4uc3BhY2UtcGFkZGluZy0yMCB7XG4gICAgcGFkZGluZzogMjBweCAhaW1wb3J0YW50O1xufVxuLnNwYWNlLXBhZGRpbmctMzAge1xuICAgIHBhZGRpbmc6IDMwcHggIWltcG9ydGFudDtcbn1cbi5zcGFjZS1wYWRkaW5nLTQwIHtcbiAgICBwYWRkaW5nOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG4uc3BhY2UtcGFkZGluZy01MCB7XG4gICAgcGFkZGluZzogNTBweCAhaW1wb3J0YW50O1xufVxuLnNwYWNlLXBhZGRpbmctbGVmdC0zMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7XG59XG4uaGFzYm9yZGVye1xuICAgIGJvcmRlcjoxcHggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50O1xufVxuLm5vYm9yZGVye1xuICAgIGJvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbi5ib3JkZXItdG9we1xuICAgIGJvcmRlci10b3A6MXB4IHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tdG9wOiAycHg7XG59XG4ubGluZS1oZWlnaHQtMzAge1xuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xufVxuLmJnLW5vbmV7XG4gICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuLm9wYWwtZm9vdGVyIHtcbiAgICAuYm9yZGVyLXJpZ2h0e1xuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLW1kKXtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAxcHggMCAwO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuMSk7XG4gICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICB9ICAgIFxuICAgIH1cbiAgICAuYm9yZGVyLWxlZnR7XG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tbWQpe1xuICAgICAgICAgICAgQGluY2x1ZGUgcnRsLWJvcmRlci1sZWZ0KDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yLWJhc2UpO1xuICAgICAgICB9ICAgIFxuICAgIH1cbn1cbi8qIFxuICogXHRDb3JlIE93bCBDYXJvdXNlbCBDU1MgRmlsZVxuICpcdHYxLjMuM1xuICovXG4gLm5vLXNwYWNlLXJvdyB7XG5cdC5yb3csLmtjX2NvbHVtbntcblx0XHRtYXJnaW46IDA7XG5cdH1cbn1cbi5uby1zcGFjZS1yb3cgW2NsYXNzXj1cImtjX2NvbC1cIl0sXG4ubm8tc3BhY2Utcm93IFtjbGFzcyo9XCJrY19jb2wtXCJdIHtcblx0cGFkZGluZzogMDtcbn1cbi5uby1zcGFjZS1yb3cgW2NsYXNzXj1cImNvbC1cIl0sXG4ubm8tc3BhY2Utcm93IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nOiAwO1xufVxuLm5vLXBhZGRpbmd7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzowICFpbXBvcnRhbnQ7XG59XG4uYmctd2hpdGV7XG5cdGJhY2tncm91bmQ6I0ZGRjtcbn1cbi5iZy1wcmltYXJ5e1xuICAgIGJhY2tncm91bmQ6JGJyYW5kLXByaW1hcnk7XG59XG4uYm94LXNoYWRvd3sgICAgXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgNHB4IDAgcmdiYSgwLDAsMCwuMTEpKTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmOyAgIFxufVxuXG4uYnRuLW91dGxpbmUtbGlnaHR7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50LW91dGxpbmUoICNGRkZGRkYsIHRyYW5zcGFyZW50LCAgI0ZGRkZGRiwgI0ZGRkZGRiwgJGVsZW1lbnQtY29sb3ItcHJpbWFyeSwgJGVsZW1lbnQtY29sb3ItcHJpbWFyeSk7XG59IFxuXG4uYnRuLW91dGxpbmUtZGFya3tcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQtb3V0bGluZSggIzAwMCwgdHJhbnNwYXJlbnQsICAjMDAwLCAkd2hpdGUsICRlbGVtZW50LWNvbG9yLXByaW1hcnksICRlbGVtZW50LWNvbG9yLXByaW1hcnkpO1xufSBcblxuLmJ0bi1pbnZlcnNlLWxpZ2h0e1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudC1vdXRsaW5lKCAkYnJhbmQtcHJpbWFyeSwgI0ZGRkZGRiwgI0ZGRiwgI0ZGRkZGRiwgdHJhbnNwYXJlbnQsICAjRkZGRkZGICk7XG59IFxuXG4uYnRuLW91dGxpbmV7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUoZGVmYXVsdCwgIzAwMCwgI0ZGRkZGRiApO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lKHByaW1hcnksICRicmFuZC1wcmltYXJ5LCAjRkZGRkZGICk7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUoc3VjY2VzcywgJGVsZW1lbnQtY29sb3ItcHJpbWFyeSwgI0ZGRkZGRiApO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lKGluZm8sICRicmFuZC1pbmZvLCAjRkZGRkZGICk7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUoZGFuZ2VyLCAkYnJhbmQtZGFuZ2VyLCAjRkZGRkZGICk7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUod2FybmluZywgJGJyYW5kLXdhcm5pbmcsICNGRkZGRkYgKTtcbn1cbi5idG4taW52ZXJzZXtcbiAgICBAaW5jbHVkZSBidXR0b24taW52ZXJzZShwcmltYXJ5LCAkYnJhbmQtcHJpbWFyeSwgI0ZGRkZGRiApO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1pbnZlcnNlKHN1Y2Nlc3MsICRlbGVtZW50LWNvbG9yLXByaW1hcnksICNGRkZGRkYgKTtcbiAgICBAaW5jbHVkZSBidXR0b24taW52ZXJzZShpbmZvLCAkYnJhbmQtaW5mbywgI0ZGRkZGRiApO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1pbnZlcnNlKGRhbmdlciwgJGJyYW5kLWRhbmdlciwgI0ZGRkZGRiApO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1pbnZlcnNlKHdhcm5pbmcsICRicmFuZC13YXJuaW5nLCAjRkZGRkZGICk7XG59XG4uYnRuLTNkeyAgICBcbiAgICBib3JkZXI6IDAgbm9uZTtcbiAgICBib3gtc2hhZG93OiAwIC01cHggMCAwIHJnYmEoMCwgMCwgMCwgMC4xNSkgaW5zZXQ7XG59XG4vKiBjbGVhcmZpeCAqL1xuLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXI6YWZ0ZXIge1xuXHRjb250ZW50OiBcIi5cIjtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGNsZWFyOiBib3RoO1xuXHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdGxpbmUtaGVpZ2h0OiAwO1xuXHRoZWlnaHQ6IDA7XG59XG4vKiBkaXNwbGF5IG5vbmUgdW50aWwgaW5pdCAqL1xuLm93bC1jYXJvdXNlbHtcblx0ZGlzcGxheTogbm9uZTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogMTAwJTtcblx0LW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtd3JhcHBlcntcblx0ZGlzcGxheTogbm9uZTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtd3JhcHBlci1vdXRlcntcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBkaXJlY3Rpb246IGx0ciAhaW1wb3J0YW50O1xufVxuLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXItb3V0ZXIuYXV0b0hlaWdodHtcblx0LXdlYmtpdC10cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG5cdC1tb3otdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0O1xuXHQtbXMtdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0O1xuXHQtby10cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG5cdHRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDtcbn1cblx0XG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbXtcblx0ZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZzogMCAxNXB4O1xufVxuLm93bC1jb250cm9scyAub3dsLXBhZ2UsXG4ub3dsLWNvbnRyb2xzIC5vd2wtYnV0dG9ucyBkaXZ7XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cbi5vd2wtY29udHJvbHMgLm93bC1idXR0b25zIGRpdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbiBcbi5vd2wtY29udHJvbHMgLm93bC1idXR0b25zIC5vd2wtcHJldntcbiAgQGluY2x1ZGUgcnRsLWxlZnQoMTBweCk7XG4gIHRvcDogNTAlOyBcbn1cblxuLm93bC1jb250cm9scyAub3dsLWJ1dHRvbnMgLm93bC1uZXh0e1xuICBAaW5jbHVkZSBydGwtcmlnaHQoMTBweCk7XG4gIHRvcDogNTAlO1xufVxuLyogbW91c2UgZ3JhYiBpY29uICovXG4uZ3JhYmJpbmcgeyBcbiAgICBcbn1cblxuLyogZml4ICovXG4ub3dsLWNhcm91c2VsICAub3dsLXdyYXBwZXIsXG4ub3dsLWNhcm91c2VsICAub3dsLWl0ZW17XG5cdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHQtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6ICAgIGhpZGRlbjtcblx0LW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6ICAgICBoaWRkZW47XG59XG5cbi8qIE9wZW5DYXJ0IENvZGUgKi9cbi5vd2wtY2Fyb3VzZWwge1xuXHRtYXJnaW46IDAgMHB4OyBcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1idXR0b25zIGRpdiB7XG5cdG9wYWNpdHk6IDA7IFxuXHRjb2xvcjogcmdiYSgwLDAsMCwwLjgpO1xuXHR0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB6LWluZGV4OiA5OTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAmOmJlZm9yZXtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgICBjb2xvcjogJGxpZ2h0LWdyYXk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0NnB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgICYub3dsLXByZXYgIHtcbiAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZjEwNFwiO1xuICAgICAgICB9XG4gICAgfVxuICAgICYub3dsLW5leHQge1xuICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMTA1XCI7XG4gICAgICAgIH0gXG4gICAgfVxufVxuLm93bC1jYXJvdXNlbDpob3ZlciAub3dsLWJ1dHRvbnMgZGl2IHtcblx0b3BhY2l0eTogMC43O1xufVxuLm93bC1jYXJvdXNlbCAub3dsLWJ1dHRvbnMgZGl2OmhvdmVye1xuICAgICY6YmVmb3Jle1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgIH1cbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1idXR0b25zIGRpdiBpIHtcblx0Zm9udC1zaXplOiA0MHB4O1xuXHRtYXJnaW46IC0yMHB4IDAgMDtcbn1cblxuLm93bC1jYXJvdXNlbCAub3dsLWJ1dHRvbnMgLm93bC1wcmV2IHtcblx0bGVmdDogLTEwMHB4OyAgXG59XG4ub3dsLWNhcm91c2VsIC5vd2wtYnV0dG9ucyAub3dsLW5leHQge1xuXHRyaWdodDogLTEwMHB4OyBcbn1cbi5vd2wtY2Fyb3VzZWw6aG92ZXIgLm93bC1idXR0b25zIC5vd2wtcHJldiB7XG5cdGxlZnQ6IC03MHB4OyBcbn1cbi5vd2wtY2Fyb3VzZWw6aG92ZXIgLm93bC1idXR0b25zIC5vd2wtbmV4dCB7XG5cdHJpZ2h0OiAtNzBweDsgXG59XG4ub3dsLXBhZ2luYXRpb24ge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHRvcDogMHB4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbn1cbi5vd2wtY29udHJvbHMgLm93bC1wYWdlIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRtYXJnaW46IDBweCA2cHg7XG59XG4ub3dsLWNvbnRyb2xzIC5vd2wtcGFnZSBzcGFuIHtcblx0ZGlzcGxheTogYmxvY2s7XG4gICAgQGluY2x1ZGUgc2l6ZSgxMnB4LDEycHgpO1xuXHRiYWNrZ3JvdW5kOiNlYmViZWI7XG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cbi5vd2wtY29udHJvbHMgLm93bC1wYWdlLmFjdGl2ZXtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ub3dsLWNvbnRyb2xzIC5vd2wtcGFnZS5hY3RpdmUgc3BhbiB7XG5cdGJhY2tncm91bmQ6JHRoZW1lLWNvbG9yO1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi5vd2wtY2Fyb3VzZWwtcGxheXtcblx0cG9zaXRpb246cmVsYXRpdmU7XG4gICAgbWFyZ2luLWxlZnQ6IC0kZ3JpZC1ndXR0ZXItd2lkdGgvMjtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kZ3JpZC1ndXR0ZXItd2lkdGgvMjtcblx0Lm93bC1pdGVte1xuXHR9XG59XG4ub3dsLWNhcm91c2VsLXBsYXkge1xuICAgIC5jYXJvdXNlbC1jb250cm9sIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgQGluY2x1ZGUgcnRsLXJpZ2h0KDApO1xuICAgICAgICB0b3A6IDEyJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC41cyBlYXNlLWluLW91dCAwcyk7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgICYubGVmdCB7XG4gICAgICAgICAgICBsZWZ0Oi01MHB4O1xuICAgICAgICB9XG4gICAgICAgICYucmlnaHQge1xuICAgICAgICAgICAgcmlnaHQ6IC01MHB4O1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgfVxuICAgICAgICAmLmNhcm91c2VsLWNlbnRlcntcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICB9XG4gICAgfVxuICAgICY6aG92ZXJ7XG4gICAgICAgIC5jYXJvdXNlbC1jb250cm9sIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICYubGVmdCB7XG4gICAgICAgICAgICAgICAgbGVmdDogLTMwcHg7XG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYucmlnaHQge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMzBweDtcbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSAgICAgICAgXG4gICAgfVxufVxuXG4uY2Fyb3VzZWwtbWQge1xuXHRAaW5jbHVkZSBzaXplKCRiby1jYXJvdXNlbC1tZC13aWR0aCwgJGJvLWNhcm91c2VsLW1kLWhlaWdodCk7XG5cdCBsaW5lLWhlaWdodDogJGJvLWNhcm91c2VsLW1kLWhlaWdodDtcbn1cbi5jYXJvdXNlbC1zbSB7XG5cdEBpbmNsdWRlIHNpemUoJGJvLWNhcm91c2VsLXNtLXdpZHRoLCAkYm8tY2Fyb3VzZWwtc20taGVpZ2h0KTtcblx0IGxpbmUtaGVpZ2h0OiAkYm8tY2Fyb3VzZWwtc20taGVpZ2h0O1xuXHQgZm9udC1zaXplOiAxNHB4O1xufVxuLmNhcm91c2VsLXhzIHtcbi8qIFx0QGluY2x1ZGUgc2l6ZSgkYm8tY2Fyb3VzZWwteHMtd2lkdGgsICRiby1jYXJvdXNlbC14cy1oZWlnaHQpO1xuXHQgbGluZS1oZWlnaHQ6ICRiby1jYXJvdXNlbC14cy1oZWlnaHQ7XG5cdCBmb250LXNpemU6IDE0cHg7ICovXG59XG5cbi8qRm9udCBXZWlnaHQqL1xuLmZ3ZWlnaHQtMTAwIHtmb250LXdlaWdodDogMTAwICFpbXBvcnRhbnQ7fVxuLmZ3ZWlnaHQtMjAwIHtmb250LXdlaWdodDogMjAwICFpbXBvcnRhbnQ7fVxuLmZ3ZWlnaHQtMzAwIHtmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7fVxuLmZ3ZWlnaHQtNDAwIHtmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7fVxuLmZ3ZWlnaHQtNTAwIHtmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7fVxuLmZ3ZWlnaHQtNjAwIHtmb250LXdlaWdodDogNjAwICFpbXBvcnRhbnQ7fVxuLmZ3ZWlnaHQtNzAwIHtmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7fVxuLmZ3ZWlnaHQtODAwIHtmb250LXdlaWdodDogODAwICFpbXBvcnRhbnQ7fVxuLnRleHQtYmlnLTF7XG4gICAgZm9udC1zaXplOiAxNnB4O1xufVxuLnRleHQtYmlnLTJ7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi50ZXh0LWJpZy0ze1xuICAgIGZvbnQtc2l6ZTogNDhweDtcbn1cblxuLnRleHQtcHJpbWFyeXtcbiAgICBjb2xvcjogJHRoZW1lLWNvbG9yICFpbXBvcnRhbnQ7XG59XG4udGV4dC1wdXJwbGUge1xuXHRjb2xvcjogIzZjNThiZCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1yZWQge1xuXHRjb2xvcjogI2MzMjMyMiAhaW1wb3J0YW50O1xufVxuLnRleHQtcmVkLTF7XG4gIGNvbG9yOiAjZmYwMDAwIWltcG9ydGFudDtcbn1cbi50ZXh0LW9yYW5nZSB7XG5cdGNvbG9yOiAjZjY2MDAwICFpbXBvcnRhbnQ7XG59XG4udGV4dC1ob3ZlcntcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3IgIWltcG9ydGFudDtcbn1cbi50ZXh0LXllbGxvdyB7XG5cdGNvbG9yOiAjZTJkOTUxICFpbXBvcnRhbnQ7XG59XG4udGV4dC1ibGFjayB7XG4gIGNvbG9yOiMwMDAhaW1wb3J0YW50O1xufVxuLnRleHQtd2hpdGUsIC50ZXh0LWxpZ2h0e1xuXHRjb2xvcjojRkZGRkZGIWltcG9ydGFudDtcbn1cbi50ZXh0LWxpZ2h0e1xuICAgIGF7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG4udGV4dC1kYXJrZXIge1xuXHRjb2xvcjojMzMzIWltcG9ydGFudDtcbn1cbiAudGV4dC11cHBlcmNhc2V7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiB9XG5cbi8qUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnJhZGl1cy0wIHtcblx0Ym9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuXG4ucmFkaXVzLXgge1xuXHRib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJhZGl1cy0xeCB7XG5cdGJvcmRlci1yYWRpdXM6IDEwcHggIWltcG9ydGFudDtcbn1cblxuLnJhZGl1cy0yeCB7XG5cdGJvcmRlci1yYWRpdXM6IDIwcHggIWltcG9ydGFudDtcbn1cblxuLnJhZGl1cy0zeCB7XG5cdGJvcmRlci1yYWRpdXM6IDMwcHggIWltcG9ydGFudDtcbn1cblxuLnJhZGl1cy00eCB7XG5cdGJvcmRlci1yYWRpdXM6IDQwcHggIWltcG9ydGFudDtcbn1cblxuLnJhZGl1cy01eCB7XG5cdGJvcmRlci1yYWRpdXM6IDVweCAhaW1wb3J0YW50O1xufVxuXG4ucmFkaXVzLTZ4IHtcblx0Ym9yZGVyLXJhZGl1czogM3B4ICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICogTWVudVxuICovXG4gdWwubWVudSB7XHRcbiBcdHBhZGRpbmc6MDtcbiBcdG1hcmdpbjowO1xuIFx0bGl7XG4gXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG4gXHR9XHRcdFxuIH1cbi50aGVtZS1kcm9wZG93biAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLyoqKiovXG5cbi8qXG4gKiBCbG9jayBIZWFkaW5nXG4gKi9cbi5lbGVtZW50LWJsb2NrLWhlYWRpbmd7IFxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZykge1xuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIH0gICBcbiAgICAuaGVhZGluZ3tcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gICAgICAgIEBpbmNsdWRlIHJ0bC1wYWRkaW5nLWxlZnQoMTVweCk7XG4gICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1sZWZ0KDApO1xuICAgICAgICAgICAgd2lkdGg6IDVweDtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc3ViLWhlYWRpbmd7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBAaW5jbHVkZSBydGwtcGFkZGluZy1sZWZ0KDE1cHgpO1xuICAgIH1cbiAgICAmLnN0eWxlLXYxIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgQGluY2x1ZGUgcnRsLXRleHQtYWxpZ24tcmlnaHQoKTtcbiAgICAgICAgLmhlYWRpbmd7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAmOmJlZm9yZSB7ICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lOyAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnN0eWxlLXYyIHtcbiAgICB9XG4gICAgJi5zdHlsZS12MyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLmhlYWRpbmd7XG4gICAgICAgICAgICAmOmJlZm9yZSB7ICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lOyAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9ICAgXG4gICAgfVxuICAgICYuc3R5bGUtdjQge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7ICBcbiAgICAgICAgLmhlYWRpbmd7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgJjpiZWZvcmUgeyAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgY29udGVudDogbm9uZTsgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSAgICAgIFxuICAgIH1cbiAgICAmLnN0eWxlLXY1IHsgIFxuICAgICAgICAuc3ViLWhlYWRpbmd7XG4gICAgICAgICAgICBjb2xvcjogI2NjYztcbiAgICAgICAgfVxuICAgICAgICAuaGVhZGluZ3tcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH0gICAgICAgXG4gICAgfVxufVxuXG5cbi50ZXN0aW1vbmlhbC1jb2xsZWN0aW9ue1xuICAgIC50ZXN0aW1vbmlhbHMtYXZhdGFye1xuICAgICAgICBtYXJnaW46IDMwcHggMDtcbiAgICB9XG4gICAgLnRlc3RpbW9uaWFscy1uYW1le1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIC50ZXN0aW1vbmlhbHMtZGVzY3JpcHRpb257XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYxMGRcIjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC50ZXN0aW1vbmlhbHMtbGVmdHtcbiAgICAgICAgLmpvYntcbiAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIH1cbiAgICAgICAgLnRlc3RpbW9uaWFscy1hdmF0YXIgaW1ne1xuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSg2MHB4LDYwcHgpO1xuICAgICAgICB9XG4gICAgICAgIC50ZXN0aW1vbmlhbHMtbmFtZXtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAudGVzdGltb25pYWxzLWRlc2NyaXB0aW9ue1xuICAgICAgICAgICAgY29sb3I6ICRncmF5LWxpZ2h0ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDQ1cHg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGcpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE2MHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE2MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHN0cm9uZ3tcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICB9XG4gICAgLnRlc3RpbW9uaWFscy12MXtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzowIDJweCAwIDAgI2ViZWJlYiBpbnNldDtcbiAgICAgICAgcGFkZGluZzogNDBweDtcbiAgICAgICAgLnRlc3RpbW9uaWFscy1hdmF0YXJ7IFxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsLWZsb2F0LWxlZnQoKTsgXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgQGluY2x1ZGUgcnRsLW1hcmdpbi1yaWdodCgyMHB4KTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5tZWRpYS1ib2R5e1xuICAgICAgICAgICAgQGluY2x1ZGUgcnRsLXRleHQtYWxpZ24tbGVmdCgpO1xuICAgICAgICB9XG4gICAgICAgIC50ZXN0aW1vbmlhbHMtcHJvZmlsZXtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0yMHB4O1xuICAgICAgICB9XG4gICAgICAgIHN0cm9uZ3tcbiAgICAgICAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgfVxuXG4gICAgfVxuICAgIC50ZXN0aW1vbmlhbHMtdjIge1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjsgIFxuICAgICAgICAudGVzdGltb25pYWxzLWRlc2NyaXB0aW9ue1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5O1xuICAgICAgICB9ICAgICAgICAgICAgXG4gICAgfVxuICAgIFxuICAgIC50ZXN0aW1vbmlhbHMtdjYge1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjsgICAgICBcbiAgICAgICAgcGFkZGluZzoyMHB4IDE1cHg7ICAgICAgXG4gICAgfVxuICAgICYudGVzdGltb25pYWwtdjF7XG4gICAgICAgIC5vd2wtcGFnaW5hdGlvbntcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBydGwtcmlnaHQoMTQlKTtcbiAgICAgICAgICAgIHRvcDogLTE1cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4vKiogU09DSUFMIElDT05TICoqKi9cbi5iby1zb2NpYWwtaWNvbnN7ICAgIFxuICAgIFtjbGFzc149XCJiby1zb2NpYWwtXCJdeyAgICAgICAgICAgICBcbiAgICAgICAgY29sb3I6I0ZGRkZGRjsgICAgICAgICAgICAgICBcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7ICAgICAgICAgICAgICAgIFxuICAgICAgICBtYXJnaW46IDEwcHggNXB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IFxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7ICAgICAgIFxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBsaW5lLWhlaWdodDogMzJweDsgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgc3F1YXJlKDMycHgpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYm9yZGVyLWNvbG9yLWJhc2U7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0IDBzO1xuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgYmFja2dyb3VuZDojMDAwMDAwO1xuICAgICAgICAgICAgY29sb3I6I0ZGRkZGRjtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgfVxuICAgIH0gXG4gICAgLmJvLXNvY2lhbC13aGl0ZXtcbiAgICAgICAgYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMSk7XG4gICAgICAgIG1hcmdpbjogMDsgICAgICAgIFxuICAgIH0gICBcbiAgICAuYm8tc29jaWFsLW91dGxpbmV7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgICB9ICAgXG4gICAgLmJvLXNvY2lhbC1vdXRsaW5lLWxpZ2h0e1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNGRkZGRkY7XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGO1xuICAgICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICMwMDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZHtcbiAgICAgICAgW2NsYXNzKj1cImJvLXNvY2lhbC1cIl17XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZHtcbiAgICAgICAgW2NsYXNzKj1cImJvLXNvY2lhbC1cIl17XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuYm8tc2ljb2xvcntcbiAgICAgICAgW2NsYXNzKj1cImJvLXNvY2lhbC1cIl17XG4gICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206MTBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5iby1zaWNvbG9yeyBcbiAgICAgICAgXG4gICAgLmJvLXNvY2lhbC10d2l0dGVye2JhY2tncm91bmQ6ICMwMGJkZWM7fSAuYm8tc29jaWFsLXR3aXR0ZXI6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1kcmliYmJsZXtiYWNrZ3JvdW5kOiAjZWY1YjkyO30gLmJvLXNvY2lhbC1kcmliYmJsZTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWZhY2Vib29re2JhY2tncm91bmQ6ICMzYjU5OTg7fSAuYm8tc29jaWFsLWZhY2Vib29rOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtZHVja2R1Y2tnb3tiYWNrZ3JvdW5kOiAjZGUzMTAwO30gLmJvLXNvY2lhbC1kdWNrZHVja2dvOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtYWlte2JhY2tncm91bmQ6ICMxNTg3OTk7fSAuYm8tc29jaWFsLWFpbTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWRlbGljaW91c3tiYWNrZ3JvdW5kOiAjMTgzODY0O30gLmJvLXNvY2lhbC1kZWxpY2lvdXM6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1wYXlwYWx7YmFja2dyb3VuZDogIzMyNjg5YTt9IC5iby1zb2NpYWwtcGF5cGFsOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtYW5kcm9pZHtiYWNrZ3JvdW5kOiAjOGFiNzMzO30gLmJvLXNvY2lhbC1hbmRyb2lkOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtZ3BsdXN7YmFja2dyb3VuZDogI2Q5NGEzOTt9IC5iby1zb2NpYWwtZ3BsdXM6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1sYW55cmR7YmFja2dyb3VuZDogIzM4NzliYTt9IC5iby1zb2NpYWwtbGFueXJkOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtc3R1bWJsZXVwb257YmFja2dyb3VuZDogI2VhNGIyNDt9IC5iby1zb2NpYWwtc3R1bWJsZXVwb246aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1maXZlaHVuZHJlZHB4e2JhY2tncm91bmQ6ICMwMGE2ZTE7fSAuYm8tc29jaWFsLWZpdmVodW5kcmVkcHg6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1waW50ZXJlc3R7YmFja2dyb3VuZDogI2I4MjQyYTt9IC5iby1zb2NpYWwtcGludGVyZXN0OmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtYml0Y29pbntiYWNrZ3JvdW5kOiAjZjc5MzFhO30gLmJvLXNvY2lhbC1iaXRjb2luOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtdzNje2JhY2tncm91bmQ6ICMwMDVhOWM7fSAuYm8tc29jaWFsLXczYzpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWZvdXJzcXVhcmV7YmFja2dyb3VuZDogIzNiYjdlODt9IC5iby1zb2NpYWwtZm91cnNxdWFyZTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWh0bWw1e2JhY2tncm91bmQ6ICNlNDRlMjY7fSAuYm8tc29jaWFsLWh0bWw1OmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtaWV7YmFja2dyb3VuZDogIzAwY2NmZjt9IC5iby1zb2NpYWwtaWU6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1ncm9vdmVzaGFya3tiYWNrZ3JvdW5kOiAjZjY2ZjAwO30gLmJvLXNvY2lhbC1ncm9vdmVzaGFyazpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLW5pbmV0eW5pbmVkZXNpZ25ze2JhY2tncm91bmQ6ICNmZjU1MDE7fSAuYm8tc29jaWFsLW5pbmV0eW5pbmVkZXNpZ25zOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtZm9ycnN0e2JhY2tncm91bmQ6ICMyMjNmMTc7fSAuYm8tc29jaWFsLWZvcnJzdDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXNwb3RpZnl7YmFja2dyb3VuZDogIzhmYmQwNTt9IC5iby1zb2NpYWwtc3BvdGlmeTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXJlZGRpdHtiYWNrZ3JvdW5kOiAjZmY0NTAwO30gLmJvLXNvY2lhbC1yZWRkaXQ6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1nb3dhbGxhe2JhY2tncm91bmQ6ICNmNjkxMWQ7fSAuYm8tc29jaWFsLWdvd2FsbGE6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1hcHBsZXtiYWNrZ3JvdW5kOiAjNWY1ZjVmO30gLmJvLXNvY2lhbC1hcHBsZTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWJsb2dnZXJ7YmFja2dyb3VuZDogI2ZiOTI0MTt9IC5iby1zb2NpYWwtYmxvZ2dlcjpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWNje2JhY2tncm91bmQ6ICM1ZTdjMDA7fSAuYm8tc29jaWFsLWNjOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtZXZlcm5vdGV7YmFja2dyb3VuZDogIzYxYjIzOTt9IC5iby1zb2NpYWwtZXZlcm5vdGU6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1mbGlja3J7YmFja2dyb3VuZDogI2ZmMDA4NDt9IC5iby1zb2NpYWwtZmxpY2tyOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtZ29vZ2xle2JhY2tncm91bmQ6ICNkOTRhMzk7fSAuYm8tc29jaWFsLWdvb2dsZTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXZpYWRlb3tiYWNrZ3JvdW5kOiAjZjVhNDMzO30gLmJvLXNvY2lhbC12aWFkZW86aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1pbnN0YXBhcGVye2JhY2tncm91bmQ6ICNlYWVjMDg7fSAuYm8tc29jaWFsLWluc3RhcGFwZXI6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1rbG91dHtiYWNrZ3JvdW5kOiAjZTM0NjAwO30gLmJvLXNvY2lhbC1rbG91dDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWxpbmtlZGlue2JhY2tncm91bmQ6ICMxYjkyYmQ7fSAuYm8tc29jaWFsLWxpbmtlZGluOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtbWVldHVwe2JhY2tncm91bmQ6ICNlNTE5Mzg7fSAuYm8tc29jaWFsLW1lZXR1cDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXZre2JhY2tncm91bmQ6ICM1ODdkYTQ7fSAuYm8tc29jaWFsLXZrOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtZGlzcXVze2JhY2tncm91bmQ6ICMyZTlmZmY7fSAuYm8tc29jaWFsLWRpc3F1czpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXJzc3tiYWNrZ3JvdW5kOiAjZmY3ZjAwO30gLmJvLXNvY2lhbC1yc3M6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1za3lwZXtiYWNrZ3JvdW5kOiAjMThiN2YxO30gLmJvLXNvY2lhbC1za3lwZTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXlvdXR1YmV7YmFja2dyb3VuZDogI2M0MzAyYjt9IC5iby1zb2NpYWwteW91dHViZTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXZpbWVve2JhY2tncm91bmQ6ICMwMTU1N2E7fSAuYm8tc29jaWFsLXZpbWVvOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtd2luZG93c3tiYWNrZ3JvdW5kOiAjMDBjY2ZmO30gLmJvLXNvY2lhbC13aW5kb3dzOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwteGluZ3tiYWNrZ3JvdW5kOiAjMDM2NTY3O30gLmJvLXNvY2lhbC14aW5nOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwteWFob297YmFja2dyb3VuZDogIzYxMzk5ZDt9IC5iby1zb2NpYWwteWFob286aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1jaHJvbWV7YmFja2dyb3VuZDogIzU4Yjk0Nzt9IC5iby1zb2NpYWwtY2hyb21lOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtbWFjc3RvcmV7YmFja2dyb3VuZDogIzZlNmU2ZTt9IC5iby1zb2NpYWwtbWFjc3RvcmU6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1hbWF6b257YmFja2dyb3VuZDogI2ZmOTkwMDt9IC5iby1zb2NpYWwtYW1hem9uOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtc3RlYW17YmFja2dyb3VuZDogI2E1YTRhMTt9IC5iby1zb2NpYWwtc3RlYW06aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1kcm9wYm94e2JhY2tncm91bmQ6ICM3YWI2ZWM7fSAuYm8tc29jaWFsLWRyb3Bib3g6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1jbG91ZGFwcHtiYWNrZ3JvdW5kOiAjNDg5ZGRlO30gLmJvLXNvY2lhbC1jbG91ZGFwcDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWViYXl7YmFja2dyb3VuZDogIzg2YjgxNzt9IC5iby1zb2NpYWwtZWJheTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWdpdGh1YntiYWNrZ3JvdW5kOiAjNjY3RjhFO30gLmJvLXNvY2lhbC1naXRodWI6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1nb29nbGVwbGF5e2JhY2tncm91bmQ6ICM1YmVmZDA7fSAuYm8tc29jaWFsLWdvb2dsZXBsYXk6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1pdHVuZXN7YmFja2dyb3VuZDogIzE3N2FjODt9IC5iby1zb2NpYWwtaXR1bmVzOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtcGx1cmt7YmFja2dyb3VuZDogI2E3M2QwNzt9IC5iby1zb2NpYWwtcGx1cms6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1zb25na2lja3tiYWNrZ3JvdW5kOiAjZjgwMDQ2O30gLmJvLXNvY2lhbC1zb25na2ljazpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWxhc3RmbXtiYWNrZ3JvdW5kOiAjYzYwZTE2O30gLmJvLXNvY2lhbC1sYXN0Zm06aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1nbWFpbHtiYWNrZ3JvdW5kOiAjZTA0YTNmO30gLmJvLXNvY2lhbC1nbWFpbDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXBpbmJvYXJke2JhY2tncm91bmQ6ICMyMjRjZjQ7fSAuYm8tc29jaWFsLXBpbmJvYXJkOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtb3Blbmlke2JhY2tncm91bmQ6ICNiZTY2MWI7fSAuYm8tc29jaWFsLW9wZW5pZDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXF1b3Jhe2JhY2tncm91bmQ6ICNjNDFhMDA7fSAuYm8tc29jaWFsLXF1b3JhOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtc291bmRjbG91ZHtiYWNrZ3JvdW5kOiAjZmY1YzAwO30gLmJvLXNvY2lhbC1zb3VuZGNsb3VkOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtdHVtYmxye2JhY2tncm91bmQ6ICMzOTU4NzQ7fSAuYm8tc29jaWFsLXR1bWJscjpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWV2ZW50YXNhdXJ1c3tiYWNrZ3JvdW5kOiAjYjlmMTVlO30gLmJvLXNvY2lhbC1ldmVudGFzYXVydXM6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC13b3JkcHJlc3N7YmFja2dyb3VuZDogIzQ2NDY0Njt9IC5iby1zb2NpYWwtd29yZHByZXNzOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwteWVscHtiYWNrZ3JvdW5kOiAjYzQxMjAwO30gLmJvLXNvY2lhbC15ZWxwOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtaW50ZW5zZWRlYmF0ZXtiYWNrZ3JvdW5kOiAjMDBhZWVmO30gLmJvLXNvY2lhbC1pbnRlbnNlZGViYXRlOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtZXZlbnRicml0ZXtiYWNrZ3JvdW5kOiAjZmY2YzAwO30gLmJvLXNvY2lhbC1ldmVudGJyaXRlOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtc2NyaWJke2JhY2tncm91bmQ6ICMwMDI5Mzk7fSAuYm8tc29jaWFsLXNjcmliZDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXBvc3Rlcm91c3tiYWNrZ3JvdW5kOiAjZjhkNjY3O30gLmJvLXNvY2lhbC1wb3N0ZXJvdXM6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1zdHJpcGV7YmFja2dyb3VuZDogIzYxN2VlODt9IC5iby1zb2NpYWwtc3RyaXBlOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtb3BlbnRhYmxle2JhY2tncm91bmQ6ICM5OTAwMDA7fSAuYm8tc29jaWFsLW9wZW50YWJsZTpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWluc3RhZ3JhbXtiYWNrZ3JvdW5kOiAjNGM3OTlmO30gLmJvLXNvY2lhbC1pbnN0YWdyYW06aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1kd29sbGF7YmFja2dyb3VuZDogI2ZmNzQwNDt9IC5iby1zb2NpYWwtZHdvbGxhOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtYXBwbmV0e2JhY2tncm91bmQ6ICMxZTBjMjk7fSAuYm8tc29jaWFsLWFwcG5ldDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXN0YXR1c25ldHtiYWNrZ3JvdW5kOiAjZmI2MTA0O30gLmJvLXNvY2lhbC1zdGF0dXNuZXQ6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1hY3JvYmF0e2JhY2tncm91bmQ6ICNmZjAwMDA7fSAuYm8tc29jaWFsLWFjcm9iYXQ6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1kcnVwYWx7YmFja2dyb3VuZDogIzAwN2RjMzt9IC5iby1zb2NpYWwtZHJ1cGFsOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtcG9ja2V0e2JhY2tncm91bmQ6ICNlZTQwNTY7fSAuYm8tc29jaWFsLXBvY2tldDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWJpdGJ1Y2tldHtiYWNrZ3JvdW5kOiAjMjA1MDgxO30gLmJvLXNvY2lhbC1iaXRidWNrZXQ6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1mbGF0dHJ7YmFja2dyb3VuZDogI2ZiYmMyMzt9IC5iby1zb2NpYWwtZmxhdHRyOmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtZXZlbnRmdWx7YmFja2dyb3VuZDogIzAwNjZjYzt9IC5iby1zb2NpYWwtZXZlbnRmdWw6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1zbWFzaG1hZ3tiYWNrZ3JvdW5kOiAjZDYyMzFjO30gLmJvLXNvY2lhbC1zbWFzaG1hZzpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLXdvcmRwcmVzc3tiYWNrZ3JvdW5kOiAjMWU4Y2JlO30gLmJvLXNvY2lhbC13b3JkcHJlc3M6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1jYWxlbmRhcntiYWNrZ3JvdW5kOiAjZmYwMDAwO30gLmJvLXNvY2lhbC1jYWxlbmRhcjpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWNhbGx7YmFja2dyb3VuZDogIzA0YmUzZDt9IC5iby1zb2NpYWwtY2FsbDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWd1ZXN0e2JhY2tncm91bmQ6ICMwM2E5ZDI7fSAuYm8tc29jaWFsLWd1ZXN0OmhvdmVye2JhY2tncm91bmQ6ICMwMDAwMDA7fVxuICAgIC5iby1zb2NpYWwtd2VpYm97YmFja2dyb3VuZDogI2ZkMDAwMDt9IC5iby1zb2NpYWwtd2VpYm86aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1wbGFuY2FzdHtiYWNrZ3JvdW5kOiAjZTRiODJjO30gLmJvLXNvY2lhbC1wbGFuY2FzdDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWVtYWlse2JhY2tncm91bmQ6IGJsdWV9IC5iby1zb2NpYWwtZW1haWw6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1teXNwYWNle2JhY2tncm91bmQ6ICMyMDY4YjA7fSAuYm8tc29jaWFsLW15c3BhY2U6aG92ZXJ7YmFja2dyb3VuZDogIzAwMDAwMDt9XG4gICAgLmJvLXNvY2lhbC1wb2RjYXN0e2JhY2tncm91bmQ6ICNmMzhiMzZ9IC5iby1zb2NpYWwtcG9kY2FzdDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbiAgICAuYm8tc29jaWFsLWNhcnR7YmFja2dyb3VuZDogIzAwYTIwNDt9IC5iby1zb2NpYWwtY2FydDpob3ZlcntiYWNrZ3JvdW5kOiAjMDAwMDAwO31cbn1cbiAvKiAtLS0gU0NTUyBGb3IgVHlwb2dyYXBoeSAtLS0gKi8vLyBDb3JlIHZhcmlhYmxlcyBhbmQgbWl4aW5zXG4uZHJvcGNhcCB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgZmxvYXQ6IGxlZnQ7ICAgIFxuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgbGluZS1oZWlnaHQ6IDQ4cHg7ICAgICAgICBcbiAgICBAaW5jbHVkZSBzcXVhcmUoNjBweCk7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIHBhZGRpbmc6IDNweCAxMHB4IDJweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgJi5kcm9wY2FwLXYye1xuICAgICAgICBjb2xvcjogI2ZmZjsgICAgICAgICAgICAgICAgXG4gICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5OyAgICAgICAgXG4gICAgfVxuICAgICYuZHJvcGNhcC1pbmZve1xuICAgICAgICBiYWNrZ3JvdW5kOiRicmFuZC1pbmZvO1xuICAgIH1cbiAgICAmLmRyb3BjYXAtZGFuZ2Vye1xuICAgICAgICBiYWNrZ3JvdW5kOiRicmFuZC1kYW5nZXI7XG4gICAgfVxuICAgICYuZHJvcGNhcC1zdWNjZXNze1xuICAgICAgICBiYWNrZ3JvdW5kOiRicmFuZC1zdWNjZXNzO1xuICAgIH1cbiAgICAmLmRyb3BjYXAtd2FybmluZ3tcbiAgICAgICAgYmFja2dyb3VuZDokYnJhbmQtd2FybmluZztcbiAgICB9XG59XG5cbi5ibG9ja3F1b3RlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgJi5ibG9ja3F1b3RlLWxlZnQge1xuICAgICAgICBpIHtcbiAgICAgICAgICAgIGxlZnQ6IDE3cHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIH0gICAgICAgIFxuICAgIH1cbiAgICAmLmJsb2NrcXVvdGUtcmlnaHQge1xuICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgaSB7XG4gICAgICAgICAgcmlnaHQ6IDE3cHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICB9XG4gICAgICAuYmxvY2txdW90ZS1pbiB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0NXB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmLmJsb2NrcXVvdGUtYnJkIHtcbiAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xuICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYm8tYmxvY2txdW90ZS1jb2xvcjtcbiAgICAgICAgICAgIHRvcDogMzBweDtcbiAgICAgICAgICAgIGxlZnQ6IDI1cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIH1cbiAgICAgICAgLmJsb2NrcXVvdGUtaW4ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDQ1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5ibG9ja3F1b3RlLWluZm97XG4gICAgICAgYm9yZGVyLWxlZnQtY29sb3I6JGJyYW5kLWluZm87XG4gICAgfVxuICAgICYuYmxvY2txdW90ZS1kYW5nZXJ7XG4gICAgICAgYm9yZGVyLWxlZnQtY29sb3I6JGJyYW5kLWRhbmdlcjtcbiAgICB9XG4gICAgJi5ibG9ja3F1b3RlLXN1Y2Nlc3N7XG4gICAgICAgYm9yZGVyLWxlZnQtY29sb3I6JGJyYW5kLXN1Y2Nlc3M7XG4gICAgfVxuICAgICYuYmxvY2txdW90ZS13YXJuaW5ne1xuICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiRicmFuZC13YXJuaW5nO1xuICAgIH1cbiAgICAmLmJvcmRlcntcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gICAgfVxufVxuIFxuIC8qIC0tLSBTQ1NTIEZvciBDb3VudGVycyAtLS0gKi8vLyBDb3JlIHZhcmlhYmxlcyBhbmQgbWl4aW5zXG4gXG4gXG5cbi5wcmljaW5ne1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB1bHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OjA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6MDsgXG4gICAgICAgIGxpe1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnByaWNpbmctdjF7XG4gICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7IFxuICAgICBib3JkZXI6IDNweCBzb2xpZCAjMzEzMTMxO1xuICAgICAucHJpY2luZy1oZWFkZXIgPiAqe1xuICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zZWNvbmQ7XG4gICAgIH1cbiAgICAgLnBsYW4tdGl0bGV7IFxuICAgICAgICAgZm9udC1zaXplOiAyNHB4OyBcbiAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IFxuICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgXG4gICAgICAgICBtYXJnaW46IDA7IFxuICAgICAgICAgcGFkZGluZzogMzBweCAwO1xuICAgICAgICAgYmFja2dyb3VuZDogIzMxMzEzMTsgIFxuICAgICAgICAgY29sb3I6ICR3aGl0ZTsgIFxuICAgICB9XG4gICAgIC5wbGFuLWZpZ3VyZXtcbiAgICAgICAgIGZvbnQtc2l6ZTogNDhweDsgXG4gICAgICAgICBmb250LXdlaWdodDogNzAwOyBcbiAgICAgICAgIGNvbG9yOiAjMDAwOyBcbiAgICAgfVxuICAgICAucGxhbi1wcmljZXtcbiAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICBwYWRkaW5nOiAyNXB4IDA7XG4gICAgICAgICBwe1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgfVxuICAgICB9XG4gICAgIC5wbGFuLWN1cnJlbmN5e1xuICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgIFxuICAgICAgICAgY29sb3I6ICRibGFjazsgIFxuICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgdG9wOiAtMTVweDsgXG4gICAgIH1cbiAgICAgLnBsYWluLWluZm97XG4gICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgbGl7XG4gICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OyBcbiAgICAgICAgICAgICBjb2xvcjogIzU1NTU1NTtcbiAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwOyAgICBcbiAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7IFxuICAgICAgICAgfSAgICBcbiAgICAgfVxuICAgICAucHJpY2luZy1mb290ZXJ7XG4gICAgICAgICBwYWRkaW5nOiAwcHggMjBweCA0MHB4IDIwcHg7XG4gICAgIH0gIFxuICAgICAmLnByaWNpbmctaGlnaGxpZ2h0e1xuICAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGhlbWUtY29sb3IhaW1wb3J0YW50O1xuICAgICAgfSAgICAgIFxuICAgfVxuICAgICYucHJpY2luZy12MntcbiAgICAgICAgYmFja2dyb3VuZDogI0ZGRkZGRjsgXG4gICAgICAgIC5wbGFuLXRpdGxle1xuICAgICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgXG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDA7ICBcbiAgICAgICAgfVxuICAgICAgICAucGxhbi1wcmljZXtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgbWFyZ2luOiAwIC0xMHB4OyAgICBcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwcHg7IFxuICAgICAgICAgICAgLnBsYW4tcHJpY2UtYm9keXtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IC0xNXB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwOyAgICAgICAgICBcbiAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjsgICAgICAgXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3F1YXJlKDEzMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wbGFuLWZpZ3VyZXtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucGxhbi1jdXJyZW5jeXtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMwcHg7ICAgXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5wbGFpbi1pbmZve1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDsgXG4gICAgICAgICAgICBsaXtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDsgXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDYycHg7IFxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgI0M4QzhDODsgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnByaWNpbmctZm9vdGVye1xuICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4IDQwcHggMjBweDsgXG4gICAgICAgIH0gICAgICBcbiAgICAgICAgJi5wcmljaW5nLWhpZ2hsaWdodHtcbiAgICAgICAgICAucGxhbi10aXRsZXtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5wbGFuLXByaWNlLWJvZHl7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZWxlbWVudC1jb2xvci1wcmltYXJ5O1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmJ0bi1ibG9ja3tcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRlbGVtZW50LWNvbG9yLXByaW1hcnk7IFxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZWxlbWVudC1jb2xvci1wcmltYXJ5O1xuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmV7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9ICAgICBcbiAgICB9XG4gICAgJi5wcmljaW5nLXYze1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGOyBcbiAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAjZTZlOGVkO1xuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y1ZjZmYTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuM3MgZWFzZSAwcyk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDhweCA4cHggMCByZ2JhKDAsIDAsIDAsIDAuMTcpO1xuICAgICAgICAgICAgLnByaWNpbmctZm9vdGVye1xuICAgICAgICAgICAgICAgIC5idG4tZGVmYXVsdHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpbmstY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zcyBlYXNlIDBzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlM2QoMS4xLCAxLjEsIDEpKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDAuOCk7XG4gICAgICAgICAgICB9ICBcbiAgICAgICAgfVxuICAgICAgICAuZmVhdHVyZWQtaW1hZ2V7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgICAgICAgICAgICBcbiAgICAgICAgfVxuICAgICAgICBpbWd7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMXMgZWFzZSAwcywgdHJhbnNmb3JtIDFzIGVhc2UgMHMpO1xuICAgICAgICB9XG4gICAgICAgIC5wbGFuLXRpdGxle1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4OyBcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwOyBcbiAgICAgICAgICAgIG1hcmdpbjogMDsgXG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7ICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIC5wbGFuLXByaWNleyAgICAgICAgICAgIFxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgICAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gICAgICAgICAgICBzcGFue1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucHJpY2luZy1ib2R5e1xuICAgICAgICAgICAgcGFkZGluZzowICRncmlkLWd1dHRlci13aWR0aCAkZ3JpZC1ndXR0ZXItd2lkdGg7XG4gICAgICAgIH1cbiAgICAgICAgLnBsYW4tY3VycmVuY3l7XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwOyAgICAgXG4gICAgICAgIH1cbiAgICAgICAgLnBsYWluLWluZm97XG4gICAgICAgICAgICBwe1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRpdntcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvci1iYXNlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucHJpY2luZy1mb290ZXJ7XG4gICAgICAgICAgICBwYWRkaW5nOiAkZ3JpZC1ndXR0ZXItd2lkdGg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXItd2lkdGg7XG4gICAgICAgICAgICAuYnRuLWRlZmF1bHR7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaW5rLWNvbG9yO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMThweCA2MHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJye1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gIFxuICAgICAgICAmLnByaWNpbmctaGlnaGxpZ2h0e1xuICAgICAgICAgIC5wbGFuLXRpdGxleyBcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuYnRuLWJsb2Nre1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGVsZW1lbnQtY29sb3ItcHJpbWFyeTsgXG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRlbGVtZW50LWNvbG9yLXByaW1hcnk7XG4gICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZXtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0gIFxuICAgIH1cbiAgICAmLnByaWNpbmctaGlnaGxpZ2h0e1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjVmNmZhO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjNzIGVhc2UgMHMpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDhweCA4cHggMCByZ2JhKDAsIDAsIDAsIDAuMTcpO1xuICAgICAgICAucHJpY2luZy1mb290ZXJ7XG4gICAgICAgICAgICAuYnRuLWRlZmF1bHR7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpbmstY29sb3I7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9ICBcbiAgICB9XG59XG5cblxuQG1peGluIHRyYW5zbGF0ZVkoJHkpIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgkeSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgkeSk7IC8vIElFOSBcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHkpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkeSk7XG59XG5cbi8qIG91ciB0ZWFtICovXG4udGVhbS12MXtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yLWJhc2U7IFxuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgIFxuICAgIC50ZWFtLWhlYWRlcntcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICAudGVhbS1ib2R5e1xuICAgICAgICBwYWRkaW5nOiAkZ3JpZC1ndXR0ZXItd2lkdGg7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yLWJhc2U7XG4gICAgfVxuICAgIC5iby1zb2NpYWwtaWNvbnN7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIEBpbmNsdWRlIHNpemUoMTAwJSwgMTAwJSk7XG4gICAgICAgIHotaW5kZXg6IDk5OTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDApO1xuICAgICAgICBAaW5jbHVkZSBzY2FsZSgwKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zNXMpO1xuICAgICAgICBbY2xhc3MqPVwiYm8tc29jaWFsLVwiXXtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnRlYW0tbmFtZXtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gICAgfVxuICAgIHB7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgJjpob3ZlcntcbiAgICAgICAgLmJvLXNvY2lhbC1pY29uc3tcbiAgICAgICAgICAgIEBpbmNsdWRlIHNjYWxlKDEpO1xuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi8qYmxvZyAqL1xuLmJsb2ctaXRlbXtcbiAgICAmLmZpcnN0e1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG59XG4ubGlzdC1wb3N0e1xuICAgIC5saXN0LXBvc3QtdGl0bGV7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxufVxuLmJsb2d2MXtcbiAgICBhe1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5lbnRyeS1kYXRlLC5lbnRyeS1tZXRhIC5mYXtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgIH1cbn1cbi5zY3JvbGx1cCB7XG4gICAgei1pbmRleDogOTk5OTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBAaW5jbHVkZSBydGwtbGVmdChhdXRvKTtcbiAgICBAaW5jbHVkZSBydGwtcmlnaHQoMjBweCk7XG4gICAgYm90dG9tOiAzMHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogJGxpZ2h0LWdyYXk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICBAaW5jbHVkZSBzaXplKDQwcHgsNDBweCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjVzIGVhc2UtaW4tb3V0IDBzKTtcbiAgICAmOmhvdmVye1xuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6MCAwIDAgMzBweCAkdGhlbWUtY29sb3IgaW5zZXQ7XG4gICAgfVxufVxuIFxuIC8qIGVmZmVjdC12MSAqL1xuLmVmZmVjdC12MXtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmZmZmO1xuICAgICAgICAgICAgYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICAgIHRvcDogMjBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNjYWxlICgxLjEpO1xuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSAoMCk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCBvcGFjaXR5IDAuMzVzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjM1cyBlYXNlIDBzKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czpub25lO1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBzY2FsZSAoMS4xMik7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCBvcGFjaXR5IDAuMzVzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjM1cyBlYXNlIDBzKTtcbiAgICAgICAgfVxuICAgICAgICAuYWN0aW9ue1xuICAgICAgICAgICAgQGluY2x1ZGUgc2NhbGUgKDEuMTIpO1xuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oIG9wYWNpdHkgMC4zNXMgZWFzZSAwcywgdHJhbnNmb3JtIDAuMzVzIGVhc2UgMHMpO1xuICAgICAgICB9XG5cbiAgICAgICAgLyogc3R5bGUgZm9yIGhvdmVyICovXG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAmOmJlZm9yZSB7ICBcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNjYWxlICgxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwLjUpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNjYWxlICgxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5hY3Rpb257XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2NhbGUgKDEpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbn1cblxuXG4vKiBlZmZlY3QtdjIqL1xuLmVmZmVjdC12MntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZmZmZjtcbiAgICAgICAgYm90dG9tOiAyMHB4O1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkICgtMjBweCwgMHB4LCAwcHgpO1xuICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDApO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCBvcGFjaXR5IDAuMzVzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjM1cyBlYXNlIDBzKTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgc2NhbGUgKDEsIDEpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCBvcGFjaXR5IDAuMzVzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjM1cyBlYXNlIDBzKTtcbiAgICB9XG4gICAgLmFjdGlvbntcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoLTEwcHgsIDBweCwgMHB4KTtcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggb3BhY2l0eSAwLjM1cyBlYXNlIDBzLCB0cmFuc2Zvcm0gMC4zNXMgZWFzZSAwcyk7XG4gICAgfVxuICAgIC8qIHN0eWxlIGZvciBob3ZlciAqL1xuICAgICY6aG92ZXJ7XG4gICAgICAgICY6YmVmb3JlIHsgIFxuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAwcHgpO1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDAuNyk7XG4gICAgICAgICAgICBAaW5jbHVkZSBzY2FsZSAoMS4yLCAxKTtcbiAgICAgICAgfVxuICAgICAgICAuYWN0aW9ue1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qIGVmZmVjdC12MyovXG4uZWZmZWN0LXYzeyBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI2UxZTFlMTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjpiZWZvcmUsJjphZnRlciB7XG4gICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCBvcGFjaXR5IDAuMzVzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjM1cyBlYXNlIDBzKTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZmZmZjtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmZmZmY7XG4gICAgICAgIEBpbmNsdWRlIHNjYWxlKDAsIDEpO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZmZmZmZmO1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZmZmZmZmO1xuICAgICAgICBAaW5jbHVkZSBzY2FsZSgxLCAwKTtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiAob3BhY2l0eSAwLjM1cyBlYXNlIDBzKTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5iYW5uZXItdGl0bGV7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDBweCwgLTIwcHgsIDBweCk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24gKHRyYW5zZm9ybSAwLjM1cyBlYXNlIDBzKTtcbiAgICB9XG4gICAgLmFjdGlvbntcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMHB4LCA0MHB4LCAwcHgpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCBvcGFjaXR5IDAuMzVzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjM1cyBlYXNlIDBzKTtcbiAgICB9XG4gICAgXG4gICAgLyogc3R5bGUgZm9yIGhvdmVyICovXG4gICAgJjpob3ZlcntcbiAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICY6YWZ0ZXIgeyAgIFxuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNjYWxlKDEpO1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDAuNSk7XG4gICAgICAgIH1cbiAgICAgICAgLmJhbm5lci10aXRsZSwuYWN0aW9ue1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAwcHgpO1xuICAgICAgICAgICAgfVxuICAgIH1cbn1cblxuLyogZWZmZWN0LXY0Ki9cbi5lZmZlY3QtdjR7IFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmZmZmO1xuICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDAgMzBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMikpO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgIEBpbmNsdWRlIHNjYWxlKDEuNCk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oIG9wYWNpdHkgMC4zNXMgZWFzZSAwcywgdHJhbnNmb3JtIDAuMzVzIGVhc2UgMHMpO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uIChvcGFjaXR5IDAuMzVzIGVhc2UgMHMpO1xuICAgIH1cbiAgICAuYmFubmVyLXRpdGxle1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNjYWxlKDEpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24gKHRyYW5zZm9ybSAwLjM1cyBlYXNlIDBzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5hY3Rpb257XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzY2FsZSgxLjIpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oIG9wYWNpdHkgMC4zNXMgZWFzZSAwcywgdHJhbnNmb3JtIDAuMzVzIGVhc2UgMHMpO1xuICAgICAgICAgICAgfVxuICAgIFxuICAgIC8qIHN0eWxlIGZvciBob3ZlciAqL1xuICAgICY6aG92ZXJ7XG4gICAgICAgICY6YmVmb3JlIHsgIFxuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNjYWxlKDEpO1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDAuNSk7XG4gICAgICAgIH1cbiAgICAgICAgLmJhbm5lci10aXRsZXsgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNjYWxlKDAuOTUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmFjdGlvbntcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNjYWxlKDEpO1xuICAgICAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vKiBlZmZlY3QtdjUqL1xuLmVmZmVjdC12NXsgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXG4gICAgaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiAob3BhY2l0eSAxcyBlYXNlIDBzLCB0cmFuc2Zvcm0gMXMgZWFzZSAwcyk7XG4gICAgfVxuICAgIC5hY3Rpb24ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNTAlLCAwcHgsIDBweCk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24gKG9wYWNpdHkgMC4zNXMgZWFzZSAwcywgdHJhbnNmb3JtIDAuMzVzIGVhc2UgMHMpO1xuICAgIH1cbiAgICBcbiAgICAvKiBzdHlsZSBmb3IgaG92ZXIgKi9cbiAgICAmOmhvdmVye1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwLjUpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxKTtcbiAgICAgICAgfVxuICAgICAgICAuYWN0aW9uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbiAgICAgICAgfVxuXG4gICAgfVxufVxuLyogZWZmZWN0LXY2Ki9cbi5lZmZlY3QtdjZ7IFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IFxuICAgIFxuICAgIGltZyB7XG4gICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24gKG9wYWNpdHkgMC4zNXMgZWFzZSAwcyk7XG4gICAgfVxuICAgIC5hY3Rpb24ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTEwMHB4LCAwcHgpO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMzVzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjM1cyBlYXNlIDBzO1xuICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgfVxuICAgIFxuICAgIC8qIHN0eWxlIGZvciBob3ZlciAqL1xuICAgICY6aG92ZXJ7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDAuNSk7XG4gICAgICAgIH1cbiAgICAgICAgLmFjdGlvbiB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbiAgICAgICAgfVxuXG4gICAgfVxufVxuXG4vKiBlZmZlY3QtdjcqL1xuLmVmZmVjdC12N3sgXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC40cyBjdWJpYy1iZXppZXIoMC45NCwgMC44NSwgMC4xLCAwLjYyKSAwcyk7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGJvcmRlcjogMjAwcHggZG91YmxlIHJnYmEoMCwgMCwgMCwgMCk7XG4gICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuICAgIFxuICAgIC8qIHN0eWxlIGZvciBob3ZlciAqL1xuICAgICY6aG92ZXJ7XG4gICAgICAgICY6YmVmb3JlIHsgIFxuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgICAgICAgICAgIGJvcmRlcjogMCBkb3VibGUgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBlZmZlY3QtdjgqL1xuLmVmZmVjdC12OHsgXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjpiZWZvcmUge1xuICAgICAgIGJvcmRlci1ib3R0b206IDUwcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xuICAgICAgICBib3JkZXItdG9wOiA1MHB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDApO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZykgc2NhbGUzZCgxLCAwLCAxKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZykgc2NhbGUzZCgxLCAwLCAxKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKSBzY2FsZTNkKDEsIDAsIDEpO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpIHNjYWxlM2QoMSwgMCwgMSk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKSBzY2FsZTNkKDEsIDAsIDEpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uIChvcGFjaXR5IDAuMzVzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjM1cyBlYXNlIDBzKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJSAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgIH1cbiAgICBcbiAgICAvKiBzdHlsZSBmb3IgaG92ZXIgKi9cbiAgICAmOmhvdmVye1xuICAgICAgICAmOmJlZm9yZSB7ICBcbiAgICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpIHNjYWxlM2QoMSwgNCwgMSk7XG4gICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZykgc2NhbGUzZCgxLCA0LCAxKTtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZykgc2NhbGUzZCgxLCA0LCAxKTtcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZykgc2NhbGUzZCgxLCA0LCAxKTtcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKSBzY2FsZTNkKDEsIDQsIDEpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBlZmZlY3QtdjkqL1xuLmVmZmVjdC12OXsgXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBib3JkZXI6IDUwcHggc29saWQgcmdiYSgwLCAwLCAwLCAwKTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMgKDUwcHgpO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyAoNTBweCk7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBvcGFjaXR5ICgxKTtcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMDBweCwgMTAwcHgpO1xuICAgICAgICBAaW5jbHVkZSBzY2FsZSg3KTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiAoYWxsIDAuM3MgZWFzZS1pbi1vdXQgMHMpO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICBcbiAgICAvKiBzdHlsZSBmb3IgaG92ZXIgKi9cbiAgICAmOmhvdmVye1xuICAgICAgICAmOmJlZm9yZSB7ICBcbiAgICAgICAgICAgIGJvcmRlcjogMCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5ICgwKTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogZWZmZWN0LXYxMCovXG4uZWZmZWN0LXYxMHsgICAgXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjpiZWZvcmUgeyAgICAgIFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBAaW5jbHVkZSBzaXplKDEwMCUsIDEwMCUpO1xuICAgICAgICBsZWZ0OiAtMTAwJTtcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSAoMCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uIChhbGwgMC4zcyBlYXNlIDBzKTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgXG4gICAgLyogc3R5bGUgZm9yIGhvdmVyICovXG4gICAgJjpob3ZlcntcbiAgICAgICAgJjpiZWZvcmUgeyAgXG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5ICgxKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogZWZmZWN0LXYxMSovXG4uZWZmZWN0LWRlZmF1bHR7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSkgbm9uZSByZXBlYXQgc2Nyb2xsIDAgMDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDU1OXB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiA3NTVweDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtNDVkZWcpO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2tldygtNDVkZWcpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiBza2V3KC00NWRlZyk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogc2tldygtNDVkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHNrZXcoLTQ1ZGVnKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC42cyBlYXNlLWluLW91dCAwcyk7XG4gICAgICAgIHdpZHRoOiA2MDBweDtcbiAgICAgIH1cblxuICAgICAgLy8gc3R5bGUgZm9yIGhvdmVyICovXG4gICAgICAmOmhvdmVye1xuICAgICAgICAmOmJlZm9yZSB7ICBcbiAgICAgICAgICAgIHJpZ2h0OiAtOTAwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4uZmVhdHVyZS1ib3h7XG4gICAgY29sb3I6ICM5OTk7XG4gICAgXG4gICAgc21hbGx7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG4gICAgaDR7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gICAgfVxuICAgIC5kZXNjcmlwdGlvbntcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIH1cbiAgICAuZmJveC1pY29ue1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICBpe1xuICAgICAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICYuZmVhdHVyZS1ib3gtbm9zdHlsZXtcbiAgICAgICAgaDR7XG4gICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgc21hbGx7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgzNCwgMzQsIDM0LCAwLjUpIDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB9XG4gICAgICAgIC5mYm94LWljb257XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgIFxuICAgICAgICB9XG4gICAgfVxuICAgICY6aG92ZXJ7XG4gICAgICAgIGg0e1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZlYXR1cmUtYm94LXYxe1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgLmZib3gtYm9keXtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogN3B4OyAgICAgIFxuICAgIH1cbiAgICBoNHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgICAuZmJveC1pY29ue1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIGl7XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgIH1cbiAgIH1cbiAgIHB7XG4gICAgICAgIGhlaWdodDogNzBweCA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICB9XG59XG4uZmVhdHVyZS1ib3gtdjJ7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAuZmJveC1ib2R5e1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA3cHg7ICAgIFxuICAgICAgICBAaW5jbHVkZSBydGwtdGV4dC1hbGlnbi1yaWdodCgpOyAgXG4gICAgfVxuICAgIGg0e1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgfVxuICAgIC5mYm94LWljb257XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgQGluY2x1ZGUgcnRsLXRleHQtYWxpZ24tcmlnaHQoKTtcbiAgICAgICAgaXtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgfVxuICAgfVxuICAgcHtcbiAgICAgICAgaGVpZ2h0OiA3MHB4IDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgQGluY2x1ZGUgcnRsLXRleHQtYWxpZ24tcmlnaHQoKTtcbiAgIH1cbn1cbi5uby1zcGFjZS1yb3cgW2NsYXNzKj1cImNvbC1cIl17XG4gICAgLmZlYXR1cmUtYm94LXYze1xuICAgICAgICAmOmxhc3QtY2hpbGR7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuLm5vLWJvcmRlcntcbiAgICAuZmVhdHVyZS1ib3gtdjN7XG4gICAgICAgIEBpbmNsdWRlIHJ0bC1ib3JkZXItcmlnaHQoMCk7XG4gICAgfVxufVxuLmZlYXR1cmUtYm94LXYze1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogNDBweCA0MHB4IDYwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgcnRsLWJvcmRlci1yaWdodCgxcHggc29saWQgJGJvcmRlci1jb2xvcik7XG4gICAgaDR7ICAgICAgICBcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgYXtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgIC5mYm94LWljb257XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgfVxuICAgJjpob3ZlcntcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMjBweCAzMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zNXMgZWFzZSAwcyk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogd2hpdGU7XG4gICAgICAgIEBpbmNsdWRlIHJ0bC1tYXJnaW4tbGVmdCgtMXB4KTtcbiAgICAgICAgaDR7XG4gICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjM1cyBlYXNlIDBzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgfVxufVxuLmZlYXR1cmUtYm94LXY0e1xuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGg0e1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIH1cbiAgIC5mYm94LWljb257XG4gICAgICBAaW5jbHVkZSBydGwtZmxvYXQtbGVmdCgpO1xuICAgICAgQGluY2x1ZGUgcnRsLW1hcmdpbi1yaWdodCgyMHB4KTtcbiAgICAgIG1hcmdpbi10b3A6IC0xNXB4O1xuICAgfVxuICAgLmRlc2NyaXB0aW9ue1xuICAgICAgICBAaW5jbHVkZSBydGwtZmxvYXQtbGVmdCgpO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgfSAgIFxufVxuLmtjLWZlYXR1cmUtYm94ZXN7XG4gICAgJi5rYy1mYi1sYXlvdXQtMntcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG59XG4uYXJvdW5kLWltZ3tcbiAgICBpbWc6aG92ZXJ7XG4gICAgICAgIGFuaW1hdGlvbjogc3BpbkFyb3VuZCAycyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgIC1tb3otYW5pbWF0aW9uOiBzcGluQXJvdW5kIDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IHNwaW5Bcm91bmQgMnMgbGluZWFyIGluZmluaXRlO1xuICAgICAgICAtby1hbmltYXRpb246IHNwaW5Bcm91bmQgMnMgbGluZWFyIGluZmluaXRlO1xuICAgIH1cbn1cblxuLyoqXG4gKiBHb29nbGVNYXBcbiAqL1xuLmtjLWdvb2dsZS1tYXBzIGlmcmFtZXtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5jb250YWN0e1xuICAgIC5mb3JtLWNvbnRyb2x7XG4gICAgICAgIGJhY2tncm91bmQ6ICNkZmU2ZTg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6M3B4O1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgfVxuICAgIC5idG57XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDQwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6M3B4O1xuICAgIH1cbiAgICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2x7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI5MHB4O1xuICAgIH1cbn1cbi5oaWdobGlnaHR7XG4gICAgLmVsZW1lbnQtdGltZWxpZmV7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZGZkZmQ7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMzBweCAwO1xuICAgICAgICAudGltZWxpZmUtY29udGVudHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgICAgIGg0e1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50aW1lbGlmZS1kZXNjcmlwdGlvbntcbiAgICAgICAgICAgICAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgICAgICAgIHNwYW57XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgIH1cbn1cbi8vdGltZWxpZmVcbi5lbnRyeS10aW1lbGluZXtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlci13aWR0aDtcbiAgICAudGltZWxpZmUtaGVhZHtcbiAgICAgICAgaXtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLnRpbWVsaWZlLWRhdGV7XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudGltZWxpZmUtY29udGVudHtcbiAgICAgICAgaDR7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuMik7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMjBweCwycHgpO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLWxlZnQoMCk7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGltZWxpZmUtZGVzY3JpcHRpb257XG4gICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHRlcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bC1wYWRkaW5nLXJpZ2h0KDMwcHgpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5jb250YWN0LXVze1xuICAgIGgze1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgfVxuICAgIGl7XG4gICAgICAgIEBpbmNsdWRlIHJ0bC1tYXJnaW4tcmlnaHQoMTBweCk7XG4gICAgfVxuICAgIGxpe1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgZmxleGJveDtcbiAgICAgICAgaXtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICB9XG5cbiAgICB9XG4gICAgXG59XG4uY29udGFjdC10aW1le1xuICAgIHB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICB9XG59IiwiLmVudHJ5LWNvbnRlbnQtcGFnZSA+IC5rY19yb3cgPiAua2Mtcm93LWNvbnRhaW5lci5rYy1jb250YWluZXIge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLXNtO1xyXG4gICB9XHJcbiAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xyXG4gICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tZDtcclxuICAgfVxyXG4gICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbGc7XHJcbiAgIH1cclxufVxyXG4ua2Mtd3JhcC1jb2x1bW5ze3dpZHRoOiBhdXRvIWltcG9ydGFudDt9XHJcbi5rY190YWJze1xyXG5cdCYuZ3JvdXB7XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG5cdFx0LmtjX3dyYXBwZXJ7XHJcblx0XHRcdCYudWktdGFic3tcclxuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0fVxyXG5cdFx0XHQua2NfdGFic19uYXZ7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogd2hpdGU7XHJcblx0XHRcdH1cclxuXHRcdFx0LnVpLXRhYnMtbmF2e1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6IHdoaXRlO1xyXG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0PiBsaSB7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBydGwtYm9yZGVyLXJpZ2h0KDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yKTtcdFx0XHRcclxuXHRcdFx0XHRcdGJvcmRlci10b3A6IDA7XHRcdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdD4gYXtcclxuXHRcdFx0XHRcdFx0Y29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0XHRcdFx0XHRib3JkZXItdG9wOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuMzVzIGVhc2UgMHMpO1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAwIDI2cHg7XHJcblx0XHRcdFx0XHRcdCY6aG92ZXJ7XHJcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRcdFx0XHRcdFx0XHRjb2xvcjogJHRoZW1lLWNvbG9yO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQmLnVpLXRhYnMtYWN0aXZle1x0XHRcdFx0XHRcclxuXHRcdFx0XHRcdFx0YXtcclxuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuXHRcdFx0XHRcdFx0XHRib3JkZXItdG9wOiA1cHggc29saWQgJHRoZW1lLWNvbG9yO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQmOmhvdmVye1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQudWktdGFicy1ib2R5LWFjdGl2ZXtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LmtjX3RhYntcclxuXHRcdFx0LmtjX3RhYl9jb250ZW50e1xyXG5cdFx0XHRcdHBhZGRpbmc6MzBweDtcclxuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdFxyXG5cdH1cclxufVxyXG4ubGlzdC1wb3N0LXR5cGUgLmxpc3QtaXRlbTpsYXN0LWNoaWxke1xyXG5cdGJvcmRlci1ib3R0b206IDA7XHJcbn1cclxuLmtjLXBpZS1jaGFydC13cmFwcGVyIHtcclxuXHQucGllX2NoYXJ0X3RleHR7XHJcblx0XHRoM3tcclxuXHRcdFx0Y29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcclxuXHRcdFx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4ua2NfdGV4dF9ibG9ja3tcclxuXHRwe1xyXG5cdFx0bGluZS1oZWlnaHQ6IDMwcHg7XHJcblx0fVxyXG5cdCYuY29udGFjdC1jYWxse1xyXG5cdCAgICBwe1xyXG5cdCAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XHJcblx0ICAgICAgICBmb250LXdlaWdodDogMzAwO1xyXG5cdCAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5O1xyXG5cdCAgICB9XHJcblx0ICAgIHN0cm9uZ3tcclxuXHQgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XHJcblx0ICAgICAgICBmb250LXNpemU6IDIycHg7XHJcblx0ICAgICAgICBsaW5lLWhlaWdodDogNDVweDtcclxuXHQgICAgfVxyXG5cdH1cclxufVxyXG4ua2MtZmVhdHVyZS1ib3hlc3tcclxuXHQmLmtjLWZiLWxheW91dC00e1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHRcdGJhY2tncm91bmQ6ICMyZTMxMzI7XHJcblx0XHRwYWRkaW5nOiA1cHggMzBweDtcclxuXHRcdC5jb250ZW50LWltYWdle1xyXG5cdFx0XHR3aWR0aDogMTAlO1xyXG5cdFx0fVxyXG5cdFx0LmNvbnRlbnQtdGl0bGV7XHJcblx0XHRcdGNvbG9yOiB3aGl0ZTtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHRcdFx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcblx0XHRcdGZvbnQtc2l6ZTogMThweDtcclxuXHRcdFx0bWFyZ2luLXRvcDogMTBweDtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdH1cclxuXHRcdCY6aG92ZXJ7XHJcblx0ICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oIzJlMzEzMiwgMTAlKTtcclxuXHQgICAgXHRAaW5jbHVkZSBib3gtc2hhZG93KDAgOHB4IDhweCAwIHJnYmEoMCwgMCwgMCwgMC4xNykpO1xyXG5cdCAgICBcdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuMzVzIGVhc2UgMHMpO1xyXG5cdCAgICBcdC5jb250ZW50LXRpdGxle1xyXG5cdCAgICBcdFx0Y29sb3I6ICR0aGVtZS1jb2xvci1kZWZhdWx0O1xyXG5cdCAgICBcdH1cclxuXHQgICAgfVxyXG5cdH1cclxufVxyXG4udG90YWxfY29zdHtcclxuXHJcblx0XHJcbn1cclxuLnRvdGFsX3Yye1xyXG5cclxufVxyXG4udG90YWxfY29zdHtcclxuXHJcblxyXG59XHJcblxyXG4vKiBrY19idXR0b24gKi9cclxuYm9keSAua2NfYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kOiR0aGVtZS1jb2xvcjtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MHB4KTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjM1cyBlYXNlIDBzKTtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgcGFkZGluZzogMjBweCA0NXB4O1xyXG4gICAgJjpob3ZlcntcclxuICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJHRoZW1lLWNvbG9yLCAxMCUpO1xyXG4gICAgXHRAaW5jbHVkZSBib3gtc2hhZG93KDAgOHB4IDhweCAwIHJnYmEoMCwgMCwgMCwgMC4xNykpO1xyXG4gICAgXHRAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjM1cyBlYXNlIDBzKTtcclxuICAgIH1cclxufVxyXG4vKiB0aXRsZSBzdHlsZSAqL1xyXG4ua2MtdGl0bGUtd3JhcHtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcblx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHRtYXJnaW4tdG9wOiAzMHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiAzMDA7XHJcblx0Y29sb3I6ICRsaWdodC1ncmF5O1xyXG5cdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnKSB7XHJcblx0XHRtYXJnaW4tdG9wOiA2MHB4O1xyXG5cdH1cclxuXHQmLmFsaWduLWNlbnRlcntcclxuXHRcdC5rY190aXRsZXtcclxuXHRcdFx0JjpiZWZvcmV7XHJcblx0XHRcdFx0Y29udGVudDogbm9uZTtcclxuXHRcdFx0fVx0XHRcdFx0XHJcblx0XHR9XHJcblx0fVxyXG5cdCYuYWxpZ24tcmlnaHR7XHJcblx0XHRtYXJnaW4tdG9wOjA7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdFx0LmtjX3RpdGxle1xyXG5cdFx0XHRjb2xvcjogd2hpdGU7XHJcblx0XHRcdCY6YmVmb3Jle1xyXG5cdFx0XHRcdGNvbnRlbnQ6IG5vbmU7XHJcblx0XHRcdH1cdFx0XHRcdFxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4ua2NfdGl0bGUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZm9udC1zaXplOiAzNnB4O1xyXG4gICAgbWFyZ2luLXRvcDogNnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDM2cHg7XHJcbiAgICBAaW5jbHVkZSBydGwtcGFkZGluZy1sZWZ0KDE1cHgpO1xyXG4gICAgJjpiZWZvcmV7XHJcbiAgICBcdGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIFx0QGluY2x1ZGUgcnRsLWxlZnQoMCk7XHJcbiAgICBcdHdpZHRoOiA1cHg7XHJcbiAgICBcdGhlaWdodDogMzBweDtcclxuICAgIFx0YmFja2dyb3VuZDogJHRoZW1lLWNvbG9yO1xyXG4gICAgXHR0b3A6IDA7XHJcbiAgICB9XHJcbiAgICAmLmhpZ2hsaWdodHtcclxuXHRcdCY6YmVmb3Jle1xyXG5cdFx0XHR0b3A6IDgwcHg7XHJcblx0XHR9XHJcbiAgICB9IFxyXG59XHJcbmgxLmtjX3RpdGxle1xyXG5cdCY6YmVmb3Jle1xyXG5cdFx0Y29udGVudDogbm9uZTtcclxuXHR9XHJcbn1cclxuaDIua2NfdGl0bGUge1x0IFxyXG59XHJcbmgzLmtjX3RpdGxlIHtcclxuXHRjb2xvcjogd2hpdGU7XHJcbn1cclxuaDUua2NfdGl0bGV7XHJcblx0Zm9udC1zaXplOiAyOHB4O1x0XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLTFweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuaDYua2NfdGl0bGV7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdCY6YmVmb3Jle1xyXG5cdFx0Y29udGVudDogbm9uZTtcclxuXHR9XHJcbn1cclxuLmtjX2JveF93cmFwIHtcclxuXHRoM3tcclxuXHRcdGZvbnQtc2l6ZTogMzBweDtcclxuXHRcdGNvbG9yOiB3aGl0ZTtcclxuXHRcdG1hcmdpbi10b3A6IDEwcHg7XHJcblx0fVxyXG5cdC5zdWItdGl0bGV7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0XHRmb250LXNpemU6IDE2cHg7XHJcblx0XHRjb2xvcjogJGdyYXktbGlnaHQ7XHJcblx0XHRAaW5jbHVkZSBydGwtdGV4dC1hbGlnbi1yaWdodCgpO1xyXG5cdH1cclxuXHQudGl0bGV7XHJcblx0XHRtYXJnaW4tdG9wOiA1cHg7XHJcblx0XHRAaW5jbHVkZSBydGwtdGV4dC1hbGlnbi1yaWdodCgpO1xyXG5cdFx0c3BhbntcclxuXHRcdFx0Y29sb3I6ICR0aGVtZS1jb2xvcjtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuLmtjX3Byb2dyZXNzX2JhcnN7XHJcblx0LnByb2dyZXNzLWl0ZW17XHJcblx0XHRzcGFuLmxhYmVse1xyXG5cdFx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7XHJcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG5cdFx0XHRmb250LXdlaWdodDogNjAwICFpbXBvcnRhbnQ7XHJcblx0XHRcdEBpbmNsdWRlIHJ0bC1tYXJnaW4tcmlnaHQoMzBweCk7XHJcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRcdHdpZHRoOiAxNSU7XHJcblx0XHRcdEBpbmNsdWRlIHJ0bC10ZXh0LWFsaWduLXJpZ2h0KCk7XHJcblx0XHR9XHJcblx0fVxyXG5cdC5rYy11aS1wcm9ncmVzcy1iYXJ7XHJcblx0XHR3aWR0aDogNzUlO1xyXG5cdH1cclxuXHQua2MtdWktcHJvZ3Jlc3N7XHJcblx0XHRzcGFuLnZhbHVle1xyXG5cdFx0XHRwYWRkaW5nOiAwIDEwcHg7XHJcblxyXG5cdFx0XHRjb2xvcjogd2hpdGU7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0dG9wOiAtMTVweDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuLm5vLWJvcmRlcntcclxuXHQua2NfY291bnRlcl9ib3h7XHJcblx0XHRib3JkZXI6IG5vbmU7XHJcblx0fVxyXG59XHJcbi5rY19jb3VudGVyX2JveHtcclxuXHRib3JkZXItY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC40KTtcclxuXHRib3JkZXItc3R5bGU6IHNvbGlkO1xyXG5cdGJvcmRlci13aWR0aDogMCAxcHggMCAwO1xyXG5cdHBhZGRpbmc6IDIwcHggMDtcclxuXHRzcGFue1xyXG5cdFx0Y29sb3I6ICR0aGVtZS1jb2xvcjtcclxuXHRcdGZvbnQtc2l6ZTogMzZweDtcclxuXHRcdGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XHJcblx0XHRcclxuXHR9XHJcblx0aDR7XHJcblx0XHRjb2xvcjogd2hpdGU7XHJcblx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdFx0bWFyZ2luLXRvcDogMjVweDtcclxuXHRcdG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcclxuXHRcdGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcclxuXHR9XHJcbn1cclxuLy9cclxuLmtjLW93bC1wb3N0LWNhcm91c2Vse1xyXG5cdC5mb290ZXItYnV0dG9ue1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0bWFyZ2luLXRvcDogMjBweDtcclxuXHR9XHJcblx0LmluLXBvc3QtY29udGVudHtcclxuXHRcdHBhZGRpbmc6IDAgMzBweCAhaW1wb3J0YW50O1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XHJcblx0fVxyXG5cdC5yZWFkLW1vcmV7XHJcblx0XHRiYWNrZ3JvdW5kOiAkdGhlbWUtY29sb3I7XHJcblx0XHRjb2xvcjogd2hpdGU7XHJcblx0XHRib3JkZXI6bm9uZSAhaW1wb3J0YW50O1xyXG5cdFx0Jjpob3ZlcntcclxuXHRcdFx0Y29sb3I6IHdoaXRlO1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiBkYXJrZW4oJHRoZW1lLWNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XHJcblx0ICAgIFx0QGluY2x1ZGUgYm94LXNoYWRvdygwIDhweCA4cHggMCByZ2JhKDAsIDAsIDAsIDAuMTcpKTtcclxuXHQgICAgXHRAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjM1cyBlYXNlIDBzKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuLy8tLS0tLS0tLS0tLVxyXG4ua2NfYWNjb3JkaW9uX3dyYXBwZXJ7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcclxuXHRib3gtc2hhZG93OjhweHB4IDAgMCAwICNlYmViZWIgaW5zZXQ7XHJcblx0LmtjX2FjY29yZGlvbl9zZWN0aW9ue1xyXG5cdFx0Ji5ncm91cHtcclxuXHRcdFx0cGFkZGluZy1ib3R0b206IDA7XHJcblx0XHR9XHJcblx0XHQ+IC5rY19hY2NvcmRpb25faGVhZGVye1xyXG5cdFx0XHRib3JkZXItbGVmdDogMDtcclxuXHRcdFx0Ym9yZGVyLXJpZ2h0OiAwO1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAjZjFmMWYxO1xyXG5cdFx0XHRmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XHJcblx0XHRcdGZvbnQtc2l6ZTogMTZweDtcclxuXHRcdFx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcblx0XHRcdD4gYXtcclxuXHRcdFx0XHRwYWRkaW5nOjEwcHggNDBweDtcclxuXHRcdFx0XHRjb2xvcjogJGxpbmstY29sb3I7XHJcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tcGhvbmUpIHtcclxuXHRcdFx0XHRcdHBhZGRpbmc6MTBweFxyXG5cdFx0XHRcdH1cdFx0XHRcdFxyXG5cdFx0XHR9XHJcblx0XHRcdHNwYW57XHJcblx0XHRcdFx0Y29sb3I6ICR0aGVtZS1jb2xvcjtcclxuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdFx0XHRwb2ludGVyLWV2ZW50czpub25lO1xyXG5cdFx0XHRcdCY6YmVmb3Jle1xyXG5cdFx0XHRcdFx0Y29udGVudDogXCJcXGYwNjdcIjtcclxuICAgICAgICAgICAgXHRcdGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0fVxyXG5cdFx0PiAudWktc3RhdGUtYWN0aXZle1xyXG5cdFx0XHRib3JkZXItYm90dG9tOiAwO1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuXHRcdFx0cGFkZGluZy10b3A6IDE1cHg7XHJcblx0XHR9XHRcdFxyXG5cdH1cclxuXHQua2Mtc2VjdGlvbi1hY3RpdmV7XHJcblx0XHQua2NfYWNjb3JkaW9uX2hlYWRlcntcclxuXHRcdFx0Ji51aS1zdGF0ZS1hY3RpdmV7XHJcblx0XHRcdFx0PiBzcGFuLnVpLWFjY29yZGlvbi1oZWFkZXItaWNvbntcclxuXHRcdFx0XHRcdCY6YmVmb3Jle1xyXG5cdFx0XHRcdFx0XHRjb250ZW50OiBcIlxcZjA2OFwiO1xyXG5cdCAgICAgICAgICAgIFx0XHRmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cdFxyXG5cdC5rY19hY2NvcmRpb25fY29udGVudHtcclxuXHRcdGJvcmRlcjogbm9uZTtcclxuXHRcdGJhY2tncm91bmQ6IHdoaXRlO1xyXG5cdFx0LmtjLXBhbmVsLWJvZHl7XHJcblx0XHRcdHBhZGRpbmc6IDVweCAxNXB4IDE1cHg7XHJcblx0XHR9XHJcblx0XHQua2NfdGV4dF9ibG9ja3tcclxuXHRcdFx0cGFkZGluZzogMCAyNXB4O1xyXG5cdFx0XHRmb250LXdlaWdodDogMzAwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4vLy0tLS1jYWxsIHRvIGFjdGlvblxyXG4ua2MtY2FsbC10by1hY3Rpb257XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHQmLmtjLWN0YS0ze1xyXG5cdFx0cGFkZGluZzogMDtcclxuXHR9XHJcbn1cclxuXHJcbi8qIGdpdmUgcmVwb3J0ICovXHJcbi5jaGFydCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAzNDBweDtcclxuICBoZWlnaHQ6IDM0MHB4O1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAxNXB4O1xyXG4gIGJvdHRvbTogMDtcclxuICBtYXJnaW46IGF1dG87XHJcbiAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4tc20pe1xyXG4gICAgcmlnaHQ6IDMwcHg7XHJcbiAgIH1cclxufVxyXG4uZG91Z2hudXRUaXAge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBtaW4td2lkdGg6IDMwcHg7XHJcbiAgbWF4LXdpZHRoOiAzMDBweDtcclxuICBwYWRkaW5nOiA1cHggMTVweDtcclxuICBib3JkZXItcmFkaXVzOiAxcHg7XHJcbiAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuOCk7XHJcbiAgY29sb3I6ICNkZGQ7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIHRleHQtc2hhZG93OiAwIDFweCAwICMwMDA7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwwLDAsMC41KTtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogYWxsIC4zcztcclxuICAgICAtbW96LXRyYW5zZm9ybTogYWxsIC4zcztcclxuICAgICAgLW1zLXRyYW5zZm9ybTogYWxsIC4zcztcclxuICAgICAgIC1vLXRyYW5zZm9ybTogYWxsIC4zcztcclxuICAgICAgICAgIHRyYW5zZm9ybTogYWxsIC4zcztcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG4uZG91Z2hudXRUaXA6YWZ0ZXIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiA1MCU7XHJcbiAgYm90dG9tOiAtNnB4O1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIG1hcmdpbjogMCAwIDAgLTZweDtcclxuICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItbGVmdDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci10b3A6IDZweCBzb2xpZCByZ2JhKDAsMCwwLC44KTtcclxuICBsaW5lLWhlaWdodDogMDtcclxufVxyXG4uZG91Z2hudXRTdW1tYXJ5IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiA1MCU7XHJcbiAgbGVmdDogNTAlO1xyXG4gIGNvbG9yOiAjZDVkNWQ1O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB0ZXh0LXNoYWRvdzogMCAtMXB4IDAgIzExMTtcclxuICBjdXJzb3I6IGRlZmF1bHQ7XHJcbn1cclxuLmRvdWdobnV0U3VtbWFyeVRpdGxlIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiA1MCU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWFyZ2luLXRvcDogLTI3JTtcclxuICBmb250LXNpemU6IDEycHghaW1wb3J0YW50O1xyXG59XHJcbi5kb3VnaG51dFN1bW1hcnlOdW1iZXIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDUwJTtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXJnaW4tdG9wOiAtMTUlO1xyXG4gIGZvbnQtc2l6ZTogNDBweDtcclxufVxyXG5nIHBhdGg6aG92ZXIgeyBvcGFjaXR5OiAuNjU7IH1cclxuLmtjLWdpdmUtY2hhcnQtd3JhcHBlciB7XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtKXtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XHJcbiAgICB9XHJcbiAgICAuY2hhcnQtd3JhcHBlcntcclxuICAgICAgICAgaGVpZ2h0OiAzMjBweDsgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbSl7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBwYWRkaW5nOiAwIDQ1cHg7XHJcbiAgICB9XHJcbiAgICAubGlzdC1sYWJlbC1jaGFydHtcclxuICAgICAgIEBtZWRpYShtaW4td2lkdGg6ICRzY3JlZW4tc20pe1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwtdGV4dC1hbGlnbi1yaWdodCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXNtKXtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICB1bCBsaSB7XHJcbiAgICAgICAgICAgIHNwYW4udGV4dHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjAwcHg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHNwYW4ubnVtYmVyIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Vjb25kO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsLW1hcmdpbi1sZWZ0KDIwcHgpO1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiA4NXB4O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLyogZ2l2ZSByZXBvcnQgKi8iLCJAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZykge1xyXG4gIC5idXR0b24tYWN0aW9ue1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgfVxyXG4gIC5wcm9kdWN0LWJsb2NrOmhvdmVyIC5idXR0b24tYWN0aW9ue1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgfVxyXG4gICAgLmtjX3RpdGxlIHtcclxuICAgICAgICA+IHNwYW57XHJcbiAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZCkgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbGcpIHtcclxuICAuc3R5bGUtcGFkZGluZ3tcclxuICAgIC5rYy1jb2wtY29udGFpbmVye1xyXG4gICAgICAgIHBhZGRpbmc6MzBweCAxMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAjb3BhbC1tYXN0aGVhZCAuaGVhZGVyLW1haW57XHJcbiAgICBwYWRkaW5nOiAzNXB4IDEwcHg7XHJcbiAgfVxyXG4gIC5idXR0b24tYWN0aW9ue1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgfVxyXG4gIC5wcm9kdWN0LWJsb2NrOmhvdmVyIC5idXR0b24tYWN0aW9ue1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgfSAgICBcclxuICAub3dsLWNhcm91c2VsLXBsYXk6aG92ZXIgLmNhcm91c2VsLWNvbnRyb2wubGVmdHtcclxuICAgIGxlZnQ6IDMwcHg7XHJcbiAgfVxyXG4gIC5vd2wtY2Fyb3VzZWwtcGxheTpob3ZlciAuY2Fyb3VzZWwtY29udHJvbC5yaWdodHtcclxuICAgIHJpZ2h0OiAzMHB4O1xyXG4gIH1cclxuICAua2NfdGl0bGV7XHJcbiAgICBmb250LXNpemU6IDM1cHg7XHJcbiAgfVxyXG4gICNvcGFsLW1hc3RoZWFkLmhlYWRlci12MiAuaGVhZGVyLW1haW57XHJcbiAgICBwYWRkaW5nOiAzMHB4IDRweDtcclxuICB9XHJcbiAgaDMua2NfdGl0bGUuaGlnaGxpZ2h0e1xyXG4gICAgZm9udC1zaXplOiAyNXB4O1xyXG4gIH1cclxuICAuaWgtaXRlbSAuaW5mbyBoM3tcclxuICAgIGhlaWdodDogNDBweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG4gIC5yZXF1ZXN0cXVvdGUtZm9ybS5sYXlvdXQzIC5yZXF1ZXN0cXVvdGUtY29udGVudC1mb3JtIC5mbGVmdHtcclxuICAgIHdpZHRoOiAxNzNweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgfVxyXG4gIC53aWRnZXRfbWM0d3BfZm9ybV93aWRnZXQgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2x7XHJcbiAgICBtYXgtd2lkdGg6IDM3NXB4O1xyXG4gIH1cclxuICAucmVxdWVzdHF1b3RlLWZvcm0ubGF5b3V0MiAucmVxdWVzdHF1b3RlLWNvbnRlbnQtZm9ybSAuZmxlZnR7XHJcbiAgICB3aWR0aDogMTI1cHg7XHJcbiAgfVxyXG4gIC5ib3gtdXNlciAuZHJvcGRvd24tbWVudXtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbGVmdDogYXV0bztcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCl7XHJcbiAgICAuc3R5bGUtcGFkZGluZ3tcclxuICAgICAgICAua2MtY29sLWNvbnRhaW5lcntcclxuICAgICAgICAgICAgcGFkZGluZzozMHB4ICAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH0gIFxyXG4gICAgI29wYWwtbWFzdGhlYWQuaGVhZGVyLWFic29sdXRle1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAuaGVhZGVyLW1haW57XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgLmxvZ28td3JhcHBlcntcclxuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAub3BhbC1icmVhZHNjcnVtYntcclxuICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcclxuICAgIH1cclxuICAgIC5rY190YWJzLmdyb3VwIC5rY193cmFwcGVyIC51aS10YWJzLW5hdiA+IGxpOmxhc3QtY2hpbGR7XHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xyXG4gICAgfVxyXG4gICAgLndpZGdldF9tYzR3cF9mb3JtX3dpZGdldCAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbHtcclxuICAgICAgICB3aWR0aDogMTkwcHg7XHJcbiAgICB9XHJcblxyXG59XHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XHJcbiAgLnN0eWxlLXBhZGRpbmd7XHJcbiAgICAua2MtY29sLWNvbnRhaW5lcntcclxuICAgICAgICBwYWRkaW5nOjMwcHggMTBweDtcclxuICAgIH1cclxuICB9ICBcclxufVxyXG5cclxuLypcclxuICogT2ZmIENhbnZhc1xyXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gKi9cclxuXHJcbi5zaWRlYmFyLW9mZmNhbnZhcyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICB3aWR0aDogNTAlO1xyXG4gICAgei1pbmRleDogOTk5OTtcclxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDVweCByZ2JhKDAsIDAsIDAsIDAuNSkpO1xyXG4gICAgQGluY2x1ZGUgcnRsLXRleHQtYWxpZ24tbGVmdCgpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgQGluY2x1ZGUgcnRsLWxlZnQoLTUwJSk7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjNzIGVhc2Utb3V0KTtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBydGwtbGVmdCgwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmJ0bi1vZmZjYW52YXMge1xyXG4gICAgJjpob3ZlcntcclxuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgfVxyXG59XHJcblxyXG4ub2ZmY2FudmFzLWhlYWQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgcGFkZGluZzogOXB4O1xyXG4gICAgYnV0dG9uIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIEBpbmNsdWRlIHJ0bC1tYXJnaW4tcmlnaHQoMTBweCk7XHJcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSgzMHB4LCAzMHB4KTtcclxuICAgIH1cclxuICAgIHNwYW57XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIH1cclxufVxyXG5cclxuLnJvdy1vZmZjYW52YXMge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4yNXMgZWFzZS1vdXQpO1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIHJ0bC1sZWZ0KDApO1xyXG4gICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xyXG4gICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlLCAxMDAlKTtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgIHotaW5kZXg6IDEwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5vZmZjYW52YXMtc2hvd3JpZ2h0IHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoJHRoZW1lLWNvbG9yLDAuOCk7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjI1cyBlYXNlLW91dCk7XHJcbiAgICB3aWR0aDogNDAwcHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogLTgwMHB4O1xyXG4gICAgdG9wOiAwO1xyXG4gICAgei1pbmRleDogMTAwMDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZzogNTBweCAwO1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgfVxyXG4gICAgLnNob3dyaWdodHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSg0MHB4LDQwcHgpO1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBAaW5jbHVkZSBydGwtbWFyZ2luLXJpZ2h0KDUwcHgpO1xyXG4gICAgICAgIC5mYXtcclxuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcclxuICAgIFxyXG4gICAgLnJvdy1vZmZjYW52YXMtcmlnaHQge1xyXG4gICAgICAgIEBpbmNsdWRlIHJ0bC1yaWdodCgwKTtcclxuICAgIH1cclxuICAgIC5yb3ctb2ZmY2FudmFzLWxlZnQge1xyXG4gICAgICAgIEBpbmNsdWRlIHJ0bC1sZWZ0KDApO1xyXG4gICAgfVxyXG4gICAgLnJvdy1vZmZjYW52YXMtcmlnaHRcclxuICAgIC5zaWRlYmFyLW9mZmNhbnZhcyB7XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsLXJpZ2h0KC01MCUpO1xyXG4gICAgfVxyXG4gICAgLnJvdy1vZmZjYW52YXMtcmlnaHQuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBydGwtcmlnaHQoNTAlKTtcclxuICAgIH1cclxuICAgIC5yb3ctb2ZmY2FudmFzLWxlZnQuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBydGwtbGVmdCgwKTtcclxuICAgIH1cclxuICAgIC56b29tQ29udGFpbmVye1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAua2NfdGl0bGU6OmJlZm9yZXtcclxuICAgICAgICBjb250ZW50Om5vbmU7XHJcbiAgICB9XHJcbiAgICAjb3BhbC1tYXN0aGVhZC5oZWFkZXItdjIgLmhlYWRlci1tYWlue1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG4gICAgLnNlcnZpY2UtZ3JpZF92MiAub3BhbF9zZXJ2aWNlLnBhZ2UgLmVudHJ5LWNvbnRlbnR7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgfVxyXG59IFxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XHJcbiAgIC5zaWRlYmFyLW9mZmNhbnZhcyB7XHJcbiAgICAgICAgd2lkdGg6IDgwJTtcclxuICAgICAgICBAaW5jbHVkZSBydGwtbGVmdCgtODUlKTtcclxuICAgIH1cclxuICAgIC5yb3ctb2ZmY2FudmFzLXJpZ2h0XHJcbiAgICAuc2lkZWJhci1vZmZjYW52YXMge1xyXG4gICAgICAgIEBpbmNsdWRlIHJ0bC1yaWdodCgtODUlKTtcclxuICAgIH1cclxuICAgIC5yb3ctb2ZmY2FudmFzLXJpZ2h0LmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsLXJpZ2h0KDg1JSk7XHJcbiAgICB9XHJcbiAgIFxyXG59XHJcbi5uYXZiYXItb2ZmY2FudmFze1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgdWwjbWFpbi1tZW51LW9mZmNhbnZhc3tcclxuICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICA+IGxpe1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgICAgIC5jYXJldHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgXHJcbiAgICAgICAgICAgICAgICByaWdodDogMTBweDtcclxuICAgICAgICAgICAgICAgIHRvcDogMTBweDtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMjVweCwgMjVweCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogOTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmNWY1ZjU7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA5O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHVse1xyXG4gICAgICAgICAgICAgICAgbGkgYXtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjEwcHggMTVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBsaS5hY3RpdmUgPiBhe1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1waG9uZSkge1xyXG4gICAgLmtjX2NvdW50ZXJfYm94e1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgIH1cclxuICAgIC5ibG9nZ3JpZC1sYXlvdXR7XHJcbiAgICAgICAgLmVudHJ5LXRpdGxle1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5hY3RpdmUtbW9iaWxle1xyXG4gICAgICAgICYuY2FydC1wb3B1cHtcclxuICAgICAgICAgICAgLmFjdGl2ZS1jb250ZW50e1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMTAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuem9vbUNvbnRhaW5lcntcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgI29wYWwtbWFzdGhlYWQuaGVhZGVyLWFic29sdXRle1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAuaGVhZGVyLW1haW57XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgLmxvZ28td3JhcHBlcntcclxuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAub3BhbC1icmVhZHNjcnVtYntcclxuICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcclxuICAgIH1cclxuICAgIC53aWRnZXQtdHJhbnNwb3J0LXNlcnZpY2UgLm9wYWxfc2VydmljZSAuZW50cnktY29udGVudHtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICB9XHJcbiAgICAub3BhbC1mb290ZXIgLmtjX2JveF93cmFwIC53aWRnZXR7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIEBpbmNsdWRlIHJ0bC1wYWRkaW5nLWxlZnQoMCk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgIH1cclxuICAgIC5vd2wtY2Fyb3VzZWwtcGxheTpob3ZlciAuY2Fyb3VzZWwtY29udHJvbC5yaWdodHtcclxuICAgICAgICBAaW5jbHVkZSBydGwtcmlnaHQoMCk7XHJcbiAgICB9XHJcbiAgICAub3dsLWNhcm91c2VsLXBsYXk6aG92ZXIgLmNhcm91c2VsLWNvbnRyb2wubGVmdHtcclxuICAgICAgICBAaW5jbHVkZSBydGwtbGVmdCgwKTtcclxuICAgIH1cclxuICAgIC5mZWF0dXJlLWJveCAuZmJveC1pY29ue1xyXG4gICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcbiAgICAua2NfdGl0bGU6OmJlZm9yZXtcclxuICAgICAgICBjb250ZW50Om5vbmU7XHJcbiAgICB9XHJcbiAgICAua2NfdGl0bGV7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICB9XHJcbiAgICAudGVzdGltb25pYWwtY29sbGVjdGlvbiAudGVzdGltb25pYWxzLWxlZnQgLnRlc3RpbW9uaWFscy1wcm9maWxle1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5zZXJ2aWNlLWdyaWRfdjIgLm9wYWxfc2VydmljZS5wYWdlIC5lbnRyeS1jb250ZW50e1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgIH1cclxuICAgIC5yZXF1ZXN0cXVvdGUtZm9ybS5sYXlvdXQyIC5yZXF1ZXN0cXVvdGUtY29udGVudHtcclxuICAgICAgICBAaW5jbHVkZSBydGwtbWFyZ2luLXJpZ2h0KDApO1xyXG4gICAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpe1xyXG4gICAgI21haW4sLm9wYWwtZm9vdGVyIHtcclxuICAgICAgICAuY29udGFpbmVyIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuem9vbUNvbnRhaW5lcntcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgLm9wYWwtc29jaWFsLXNoYXJle1xyXG4gICAgICAgIEBpbmNsdWRlIHJ0bC1tYXJnaW4tbGVmdCgyMHB4KTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICAgIC5rY190aXRsZTo6YmVmb3Jle1xyXG4gICAgICAgIGNvbnRlbnQ6bm9uZTtcclxuICAgIH1cclxuICAgIC5vcGFsLWZvb3RlciAua2NfYm94X3dyYXAgLndpZGdldHtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsLXBhZGRpbmctbGVmdCgwKTtcclxuICAgIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAgIC5uYXZiYXItbWVnYSAgLm5hdmJhci1uYXYgPiBsaSB7XHJcbiAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgPiAuZHJvcGRvd24tbWVudXtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwtcmlnaHQoMCk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlKDBweCwgMHB4KTtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAwcHgpO1xyXG4gICAgICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KTsgXHJcbiAgICAgICAgICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDBweCk7ICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfSBcclxuXHJcbn1cclxuQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpe1xyXG4gICAgLmtjX2NvbHVtbnt3aWR0aDogMTAwJSFpbXBvcnRhbnQ7fVxyXG59XHJcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFDRjs7Ozs7Ozs7Ozs7cUVBV3FFO0FDMUJyRTs7OztHQUlHO0FDb0VILDZDQUE2QztBZ0N4RTdDLDRFQUE0RTtBQVE1RSxBQUFBLElBQUksQ0FBQztFQUNILFdBQVcsRUFBRSxVQUFVO0VBQ3ZCLG9CQUFvQixFQUFFLElBQUk7RUFDMUIsd0JBQXdCLEVBQUUsSUFBSSxHQUMvQjs7QUFNRCxBQUFBLElBQUksQ0FBQztFQUNILE1BQU0sRUFBRSxDQUFDLEdBQ1Y7O0FBWUQsQUFBQSxPQUFPO0FBQ1AsQUFBQSxLQUFLO0FBQ0wsQUFBQSxPQUFPO0FBQ1AsQUFBQSxVQUFVO0FBQ1YsQUFBQSxNQUFNO0FBQ04sQUFBQSxNQUFNO0FBQ04sQUFBQSxNQUFNO0FBQ04sQUFBQSxNQUFNO0FBQ04sQUFBQSxJQUFJO0FBQ0osQUFBQSxJQUFJO0FBQ0osQUFBQSxHQUFHO0FBQ0gsQUFBQSxPQUFPO0FBQ1AsQUFBQSxPQUFPLENBQUM7RUFDTixPQUFPLEVBQUUsS0FBSyxHQUNmOztBQU9ELEFBQUEsS0FBSztBQUNMLEFBQUEsTUFBTTtBQUNOLEFBQUEsUUFBUTtBQUNSLEFBQUEsS0FBSyxDQUFDO0VBQ0osT0FBTyxFQUFFLFlBQVk7RUFDckIsY0FBYyxFQUFFLFFBQVEsR0FDekI7O0FBT0QsQUFBQSxLQUFLLEFBQUEsSUFBSyxFQUFBLEFBQUEsQUFBQSxRQUFDLEFBQUEsR0FBVztFQUNwQixPQUFPLEVBQUUsSUFBSTtFQUNiLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7O0NBT0QsQUFBQSxBQUFBLE1BQUMsQUFBQTtBQUNELEFBQUEsUUFBUSxDQUFDO0VBQ1AsT0FBTyxFQUFFLElBQUksR0FDZDs7QUFTRCxBQUFBLENBQUMsQ0FBQztFQUNBLGdCQUFnQixFQUFFLFdBQVcsR0FDOUI7O0FBT0QsQUFBQSxDQUFDLEFB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N0MsQUFBQSxhQUFhLENBQUM7RUFBQyxVQUFVLEVBQUUsZUFBZSxHQUFJOztBQUM5QyxBQUFBLGFBQWEsQ0FBQztFQUFDLFVBQVUsRUFBRSxlQUFlLEdBQUk7O0FBQzlDLEFBQUEsYUFBYSxDQUFDO0VBQUMsVUFBVSxFQUFFLGVBQWUsR0FBSTs7QUFDOUMsQUFBQSxhQUFhLENBQUM7RUFBQyxVQUFVLEVBQUUsZUFBZSxHQUFJOztBQUM5QyxBQUFBLGFBQWEsQ0FBQztFQUFDLFVBQVUsRUFBRSxlQUFlLEdBQUk7O0FBQzlDLEFBQUEsYUFBYSxDQUFDO0VBQUMsVUFBVSxFQUFFLGVBQWUsR0FBSTs7QUFDOUMsQUFBQSxhQUFhLENBQUM7RUFBQyxVQUFVLEVBQUUsZUFBZSxHQUFJOztBQUM5QyxBQUFBLGFBQWEsQ0FBQztFQUFDLFVBQVUsRUFBRSxlQUFlLEdBQUk7O0FBQzlDLEFBQUEsYUFBYSxDQUFDO0VBQUMsVUFBVSxFQUFFLGVBQWUsR0FBSTs7QUFFOUMsaUJBQWlCO0FBQ2pCLEFBQUEsUUFBUSxDQUFFO0VBQUMsYUFBYSxFQUFFLGNBQWMsR0FBSTs7QUFDNUMsQUFBQSxTQUFTLENBQUM7RUFBQyxhQUFhLEVBQUUsZUFBZSxHQUFJOztBQUM3QyxBQUFBLFNBQVMsQ0FBQztFQUFDLGFBQWEsRUFBRSxlQUFlLEdBQUk7O0FBQzdDLEFBQUEsU0FBUyxDQUFDO0VBQUMsYUFBYSxFQUFFLGVBQWUsR0FBSTs7QUFDN0MsQUFBQSxTQUFTLENBQUM7RUFBQyxhQUFhLEVBQUUsZUFBZSxHQUFJOztBQUM3QyxBQUFBLFNBQVMsQ0FBQztFQUFDLGFBQWEsRUFBRSxlQUFlLEdBQUk7O0FBQzdDLEFBQUEsU0FBUyxDQUFDO0VBQUMsYUFBYSxFQUFFLGVBQWUsR0FBSTs7QUFDN0MsQUFBQSxTQUFTLENBQUM7RUFBQyxhQUFhLEVBQUUsZUFBZSxHQUFJOztBQUM3QyxBQUFBLFNBQVMsQ0FBQztFQUFDLGFBQWEsRUFBRSxlQUFlLEdBQUk7O0FBQzdDLEFBQUEsU0FBUyxDQUFDO0VBQUMsYUFBYSxFQUFFLGVBQWUsR0FB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QUEsa0JBQWtCLENBQUE7RWIyVmhCLEtBQUssRWExVjRCLE9BQU87RWIyVnhDLGdCQUFnQixFYTNWMEIsV0FBVztFYjRWckQsWUFBWSxFYTVWNEMsT0FBTyxHQUNoRTtFQUZELEFiK1ZFLGtCYS9WZ0IsQWIrVmxCLE1BQVMsRWEvVlQsQWJnV0Usa0JhaFdnQixBYmdXbEIsTUFBUyxFYWhXVCxBYmlXRSxrQmFqV2dCLEFiaVdsQixPQUFVLEVhaldWLEFia1dFLGtCYWxXZ0IsQWJrV2xCLE9BQVUsQ0FBQztJQUNQLEtBQUssRWFsVzBELE9BQU87SWJtV3RFLGdCQUFnQixFUnRjRixPQUFPO0lRdWNqQixZQUFZLEVSdmNGLE9BQU8sR1F3Y3RCO0VBQ0QsQUFBTSxLQUFELENhdldQLGtCQUFrQixBYnVXUixnQkFBbUIsQ0FBQztJQUMxQixLQUFLLEVhdlcwRCxPQUFPO0lid1d0RSxnQkFBZ0IsRVIzY0YsT0FBTztJUTRjakIsWUFBWSxFUjVjRixPQUFPLEdRNmN0QjtFYTNXSCxBYjRXRSxrQmE1V2dCLEFiNFdsQixPQUFVLEVhNVdWLEFiNldFLGtCYTdXZ0IsQWI2V2xCLE9BQVUsQ0FBQztJQUNQLGdCQUFnQixFQUFFLElBQUksR0FDdkI7RUFDRCxBQUFNLEtBQUQsQ2FoWFAsa0JBQWtCLEFiZ1hSLGdCQUFtQixDQUFDO0lBQzFCLGdCQUFnQixFQUFFLElBQUksR0FDdkI7RWFsWEgsQWJzWEksa0JhdFhjLEFibVhoQixTQUFVLEVhblhaLEFidVhJLGtCYXZYYyxBYm1YaEIsU0FBVSxBQUloQixNQUFlLEVhdlhYLEFid1hJLGtCYXhYYyxBYm1YaEIsU0FBVSxBQUtoQixNQUFlLEVheFhYLEFieVhJLGtCYXpYYyxBYm1YaEIsU0FBVSxBQU1oQixPQUFnQixFYXpYWixBYjBYSSxrQmExWGMsQWJtWGhCLFNBQVUsQUFPaEIsT0FBZ0IsRWExWFosQWJzWEksa0JhdFhjLENib1hoQixBQUFBLFFBQUUsQUFBQSxHYXBYSixBYnVYSSxrQmF2WGMsQ2JvWGhCLEFBQUEsUUFBRSxBQUFBLENBR1IsTUFBZSxFYXZYWCxB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 */
