@charset "UTF-8";
/* Table of Content
*
* 01 Reset and dependencies
* 02 Core CSS
* 03 Breadcrumbs
* 04 Pagination
* 05 Pager
* 06 Responsive Embed
* 07 close
* 08 utilities
* 09 responsive-utilities
* 10 Common
* 11 Buttons
* 12 Forms
* 13 Pagination
* 14 Call to Action
* 15 Sidebar
* 16 Footer
* 17 Header
* 18 Sub Header
* 19 Slider
* 20 Home
* 21 Home 3
* 22 Home 4
* 23 Blog
* 24 Single
* 25 About Us
* 26 Services
* 27 Portfolio
* 28 Portfolio Single
* 29 Contact
* 30 404 page
* 31 Short-codes
* 31 Shop
*/
/* Bootstrap v3.3.7 (http://getbootstrap.com) */
/* 01 Reset and dependencies */
/*! 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;
}

/* 02 Core CSS */
* {
  -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: rgba(0, 0, 0, 0);
}

body {
  font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.71429;
  color: #777;
  background-color: #fff;
}

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

a {
  color: #222;
  text-decoration: none;
}

a:hover, a:focus {
  color: #04befc;
  text-decoration: none;
}

a:focus {
  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: 0;
}

.img-thumbnail {
  padding: 4px;
  line-height: 1.71429;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  -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: 23px;
  margin-bottom: 23px;
  border: 0;
  border-top: 1px solid #eeeeee;
}

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

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

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

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: inherit;
  font-weight: 700;
  line-height: 1.1;
  color: #222;
}

h1 small,
h1 .small, h2 small,
h2 .small, h3 small,
h3 .small, h4 small,
h4 .small, h5 small,
h5 .small, h6 small,
h6 .small,
.h1 small,
.h1 .small, .h2 small,
.h2 .small, .h3 small,
.h3 .small, .h4 small,
.h4 .small, .h5 small,
.h5 .small, .h6 small,
.h6 .small {
  font-weight: normal;
  line-height: 1;
  color: #777777;
}

h1, .h1,
h2, .h2,
h3, .h3 {
  margin-top: 23px;
  margin-bottom: 11.5px;
}

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: 11.5px;
  margin-bottom: 11.5px;
}

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 11.5px;
}

.lead {
  margin-bottom: 23px;
  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: #fcf8e3;
  padding: .2em;
}

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

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

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

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

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

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

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

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

.text-muted {
  color: #777777;
}

.text-primary {
  color: #337ab7;
}

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

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

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

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

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

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

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

.text-danger {
  color: #a94442;
}

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

.bg-primary {
  color: #fff;
}

.bg-primary {
  background-color: #337ab7;
}

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

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

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

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

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

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

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

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

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

.page-header {
  padding-bottom: 10.5px;
  margin: 46px 0 23px;
  border-bottom: 1px solid #eeeeee;
}

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

ul ul,
ul ol,
ol ul,
ol ol {
  margin-bottom: 0;
}

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

.list-inline {
  padding-left: 0;
  list-style: none;
  margin-left: -5px;
}

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

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

dt,
dd {
  line-height: 1.71429;
}

dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

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

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

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

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

.initialism {
  font-size: 90%;
}

blockquote {
  padding: 11.5px 23px;
  margin: 0 0 23px;
  font-size: 17.5px;
  border-left: 5px solid #eeeeee;
}

blockquote p:last-child,
blockquote ul:last-child,
blockquote ol:last-child {
  margin-bottom: 0;
}

blockquote footer,
blockquote small,
blockquote .small {
  display: block;
  font-size: 80%;
  line-height: 1.71429;
  color: #777777;
}

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 #eeeeee;
  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: 23px;
  font-style: normal;
  line-height: 1.71429;
}

code,
kbd,
pre,
samp {
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
}

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

kbd {
  padding: 2px 4px;
  font-size: 90%;
  color: #fff;
  background-color: #333;
  border-radius: 0;
  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: 11px;
  margin: 0 0 11.5px;
  font-size: 13px;
  line-height: 1.71429;
  word-break: break-all;
  word-wrap: break-word;
  color: #333333;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 0;
}

pre code {
  padding: 0;
  font-size: inherit;
  color: inherit;
  white-space: pre-wrap;
  background-color: transparent;
  border-radius: 0;
}

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

.container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}

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

.container:after {
  clear: both;
}

@media (min-width: 768px) {
  .container {
    width: 750px;
  }
}

@media (min-width: 992px) {
  .container {
    width: 970px;
  }
}

@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: #777777;
  text-align: left;
}

th {
  text-align: left;
}

.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 23px;
}

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

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

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

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

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

.table-responsive {
  overflow-x: auto;
  min-height: 0.01%;
}

@media screen and (max-width: 767px) {
  .table-responsive {
    width: 100%;
    margin-bottom: 17.25px;
    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: 23px;
  font-size: 21px;
  line-height: inherit;
  color: #333333;
  border: 0;
  border-bottom: 1px solid #e5e5e5;
}

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

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

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

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

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

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

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

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

.form-control {
  display: block;
  width: 100%;
  height: 34px;
  padding: 9px 22px;
  font-size: 14px;
  line-height: 1.71429;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}

.form-control:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
}

.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}

.form-control:-ms-input-placeholder {
  color: #999;
}

.form-control::-webkit-input-placeholder {
  color: #999;
}

.form-control::-ms-expand {
  border: 0;
  background-color: transparent;
}

.form-control[disabled], .form-control[readonly],
fieldset[disabled] .form-control {
  background-color: #eeeeee;
  opacity: 1;
}

.form-control[disabled],
fieldset[disabled] .form-control {
  cursor: not-allowed;
}

textarea.form-control {
  height: auto;
}

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

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

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

.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px;
}

.radio label,
.checkbox label {
  min-height: 23px;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: normal;
  cursor: pointer;
}

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

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

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

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

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

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

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

.form-control-static {
  padding-top: 10px;
  padding-bottom: 10px;
  margin-bottom: 0;
  min-height: 37px;
}

.form-control-static.input-lg, .form-control-static.input-sm {
  padding-left: 0;
  padding-right: 0;
}

.input-sm {
  height: 30px;
  padding: 7px 12px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

select.input-sm {
  height: 30px;
  line-height: 30px;
}

textarea.input-sm,
select[multiple].input-sm {
  height: auto;
}

.form-group-sm .form-control {
  height: 30px;
  padding: 7px 12px;
  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: 35px;
  padding: 8px 12px;
  font-size: 12px;
  line-height: 1.5;
}

.input-lg {
  height: 46px;
  padding: 12px 28px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px;
}

select.input-lg {
  height: 46px;
  line-height: 46px;
}

textarea.input-lg,
select[multiple].input-lg {
  height: auto;
}

.form-group-lg .form-control {
  height: 46px;
  padding: 12px 28px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px;
}

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

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

.form-group-lg .form-control-static {
  height: 46px;
  min-height: 41px;
  padding: 13px 28px;
  font-size: 18px;
  line-height: 1.33333;
}

.has-feedback {
  position: relative;
}

.has-feedback .form-control {
  padding-right: 42.5px;
}

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

.input-lg + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
  width: 46px;
  height: 46px;
  line-height: 46px;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.form-horizontal .form-group {
  margin-left: -15px;
  margin-right: -15px;
}

.form-horizontal .form-group:before, .form-horizontal .form-group:after {
  content: " ";
  display: table;
}

.form-horizontal .form-group:after {
  clear: both;
}

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

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

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

@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 8px;
    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;
  padding: 9px 22px;
  font-size: 14px;
  line-height: 1.71429;
  border-radius: 0;
  -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: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

.btn:hover, .btn:focus, .btn.focus {
  color: #777;
  text-decoration: none;
}

.btn:active, .btn.active {
  outline: 0;
  background-image: none;
  -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.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: #777;
  background-color: #fafafa;
  border-color: #d9d9d9;
}

.btn-default:focus, .btn-default.focus {
  color: #777;
  background-color: #e1e1e1;
  border-color: #999999;
}

.btn-default:hover {
  color: #777;
  background-color: #e1e1e1;
  border-color: #bababa;
}

.btn-default:active, .btn-default.active,
.open > .btn-default.dropdown-toggle {
  color: #777;
  background-color: #e1e1e1;
  border-color: #bababa;
}

.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: #777;
  background-color: #cfcfcf;
  border-color: #999999;
}

.btn-default:active, .btn-default.active,
.open > .btn-default.dropdown-toggle {
  background-image: none;
}

.btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled.focus, .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled].focus,
fieldset[disabled] .btn-default:hover,
fieldset[disabled] .btn-default:focus,
fieldset[disabled] .btn-default.focus {
  background-color: #fafafa;
  border-color: #d9d9d9;
}

.btn-default .badge {
  color: #fafafa;
  background-color: #777;
}

.btn-primary {
  color: #fff;
  background-color: #04befc;
  border-color: #04befc;
}

.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: #0299cb;
  border-color: #02607f;
}

.btn-primary:hover {
  color: #fff;
  background-color: #0299cb;
  border-color: #0291c0;
}

.btn-primary:active, .btn-primary.active,
.open > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #0299cb;
  border-color: #0291c0;
}

.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: #027ea7;
  border-color: #02607f;
}

.btn-primary:active, .btn-primary.active,
.open > .btn-primary.dropdown-toggle {
  background-image: none;
}

.btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus,
fieldset[disabled] .btn-primary:hover,
fieldset[disabled] .btn-primary:focus,
fieldset[disabled] .btn-primary.focus {
  background-color: #04befc;
  border-color: #04befc;
}

.btn-primary .badge {
  color: #04befc;
  background-color: #fff;
}

.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c;
}

.btn-success:focus, .btn-success.focus {
  color: #fff;
  background-color: #449d44;
  border-color: #255625;
}

.btn-success:hover {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}

.btn-success:active, .btn-success.active,
.open > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}

.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: #398439;
  border-color: #255625;
}

.btn-success:active, .btn-success.active,
.open > .btn-success.dropdown-toggle {
  background-image: none;
}

.btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus,
fieldset[disabled] .btn-success:hover,
fieldset[disabled] .btn-success:focus,
fieldset[disabled] .btn-success.focus {
  background-color: #5cb85c;
  border-color: #4cae4c;
}

.btn-success .badge {
  color: #5cb85c;
  background-color: #fff;
}

.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da;
}

.btn-info:focus, .btn-info.focus {
  color: #fff;
  background-color: #31b0d5;
  border-color: #1b6d85;
}

.btn-info:hover {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}

.btn-info:active, .btn-info.active,
.open > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}

.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: #269abc;
  border-color: #1b6d85;
}

.btn-info:active, .btn-info.active,
.open > .btn-info.dropdown-toggle {
  background-image: none;
}

.btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled].focus,
fieldset[disabled] .btn-info:hover,
fieldset[disabled] .btn-info:focus,
fieldset[disabled] .btn-info.focus {
  background-color: #5bc0de;
  border-color: #46b8da;
}

.btn-info .badge {
  color: #5bc0de;
  background-color: #fff;
}

.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236;
}

.btn-warning:focus, .btn-warning.focus {
  color: #fff;
  background-color: #ec971f;
  border-color: #985f0d;
}

.btn-warning:hover {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}

.btn-warning:active, .btn-warning.active,
.open > .btn-warning.dropdown-toggle {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}

.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: #d58512;
  border-color: #985f0d;
}

.btn-warning:active, .btn-warning.active,
.open > .btn-warning.dropdown-toggle {
  background-image: none;
}

.btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled].focus,
fieldset[disabled] .btn-warning:hover,
fieldset[disabled] .btn-warning:focus,
fieldset[disabled] .btn-warning.focus {
  background-color: #f0ad4e;
  border-color: #eea236;
}

.btn-warning .badge {
  color: #f0ad4e;
  background-color: #fff;
}

.btn-danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a;
}

.btn-danger:focus, .btn-danger.focus {
  color: #fff;
  background-color: #c9302c;
  border-color: #761c19;
}

.btn-danger:hover {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}

.btn-danger:active, .btn-danger.active,
.open > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}

.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: #ac2925;
  border-color: #761c19;
}

.btn-danger:active, .btn-danger.active,
.open > .btn-danger.dropdown-toggle {
  background-image: none;
}

.btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled].focus,
fieldset[disabled] .btn-danger:hover,
fieldset[disabled] .btn-danger:focus,
fieldset[disabled] .btn-danger.focus {
  background-color: #d9534f;
  border-color: #d43f3a;
}

.btn-danger .badge {
  color: #d9534f;
  background-color: #fff;
}

.btn-link {
  color: #222;
  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: #04befc;
  text-decoration: none;
  background-color: transparent;
}

.btn-link[disabled]:hover, .btn-link[disabled]:focus,
fieldset[disabled] .btn-link:hover,
fieldset[disabled] .btn-link:focus {
  color: #777777;
  text-decoration: none;
}

.btn-lg {
  padding: 12px 28px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 0;
}

.btn-sm {
  padding: 7px 12px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 0;
}

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

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

/* 03 Breadcrumbs */
.breadcrumb {
  padding: 8px 15px;
  margin-bottom: 23px;
  list-style: none;
  background-color: #f5f5f5;
  border-radius: 0;
}

.breadcrumb > li {
  display: inline-block;
}

.breadcrumb > li + li:before {
  content: "/ ";
  padding: 0 5px;
  color: #ccc;
}

.breadcrumb > .active {
  color: #777777;
}

/* 04 Pagination */
.page-numbers {
  display: inline-block;
  padding-left: 0;
  margin: 23px 0;
  border-radius: 0;
}

.page-numbers > li {
  display: inline;
}

.page-numbers > li > a,
.page-numbers > li > span {
  position: relative;
  float: left;
  padding: 9px 22px;
  line-height: 1.71429;
  text-decoration: none;
  color: #222;
  background-color: #fff;
  border: 1px solid #ebebeb;
  margin-left: -1px;
}

.page-numbers > li:first-child > a,
.page-numbers > li:first-child > span {
  margin-left: 0;
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}

.page-numbers > li:last-child > a,
.page-numbers > li:last-child > span {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}

.page-numbers > li > a:hover, .page-numbers > li > a:focus,
.page-numbers > li > span:hover,
.page-numbers > li > span:focus {
  z-index: 2;
  color: #04befc;
  background-color: #fff;
  border-color: #ebebeb;
}

.page-numbers > .active > a, .page-numbers > .active > a:hover, .page-numbers > .active > a:focus,
.page-numbers > .active > span,
.page-numbers > .active > span:hover,
.page-numbers > .active > span:focus {
  z-index: 3;
  color: #04befc;
  background-color: #fff;
  border-color: #ebebeb;
  cursor: default;
}

.page-numbers > .disabled > span,
.page-numbers > .disabled > span:hover,
.page-numbers > .disabled > span:focus,
.page-numbers > .disabled > a,
.page-numbers > .disabled > a:hover,
.page-numbers > .disabled > a:focus {
  color: #777777;
  background-color: #fff;
  border-color: #ddd;
  cursor: not-allowed;
}

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

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

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

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

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

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

/* 05 Pager */
.pager {
  padding-left: 0;
  margin: 23px 0;
  list-style: none;
  text-align: center;
}

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

.pager:after {
  clear: both;
}

.pager li {
  display: inline;
}

.pager li > a,
.pager li > span {
  display: inline-block;
  padding: 5px 14px;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 0;
}

.pager li > a:hover,
.pager li > a:focus {
  text-decoration: none;
  background-color: #eeeeee;
}

.pager .next > a,
.pager .next > span {
  float: right;
}

.pager .previous > a,
.pager .previous > span {
  float: left;
}

.pager .disabled > a,
.pager .disabled > a:hover,
.pager .disabled > a:focus,
.pager .disabled > span {
  color: #777777;
  background-color: #fff;
  cursor: not-allowed;
}

/* 06 Responsive Embed */
.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%;
}

/* 07 close */
.close {
  float: right;
  font-size: 21px;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.2;
  filter: alpha(opacity=20);
}

.close:hover, .close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
  opacity: 0.5;
  filter: alpha(opacity=50);
}

button.close {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
}

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

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

.hide {
  display: none !important;
}

.show {
  display: block !important;
}

.invisible {
  visibility: hidden;
}

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

.hidden {
  display: none !important;
}

.affix {
  position: fixed;
}

/* 09 responsive-utilities */
@-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;
  }
}

/* 10 Common */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-top: 0;
}

h1,
h2,
h3,
.h1,
.h2,
.h3 {
  margin-bottom: 20px;
}

h4,
h5,
h6,
.h4,
.h5,
.h6 {
  margin-bottom: 15px;
}

p {
  margin-bottom: 20px;
}

a,
input[type="submit"] {
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

input:focus,
textarea:focus,
keygen:focus,
select:focus,
:focus {
  outline: none;
}

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

blockquote a:hover {
  color: #fff;
}

.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption {
  text-align: center;
  margin-bottom: 1.5rem;
}

.wp-caption-text {
  font-style: italic;
  border: 1px solid #d3d5d3;
  border-top: 0;
}

.bypostauthor {
  color: grey;
}

.lead {
  font-family: 'Roboto', sans-serif;
  margin-bottom: 20px;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.7;
  color: #222;
}

.line {
  display: inline-block;
  width: 40px;
  height: 2px;
  background-color: #04befc;
}

.line-two {
  position: relative;
  display: inline-block;
}

.line-two:before, .line-two:after {
  display: inline-block;
  content: "";
  width: 75px;
  height: 1px;
  vertical-align: middle;
  background-color: #04befc;
}

.line-two:before {
  width: 60px;
}

.line-two:after {
  width: 62px;
}

.line-two > span {
  display: inline-block;
  vertical-align: middle;
  margin: 0 10px;
}

.line-two > span:before, .line-two > span:after {
  display: inline-block;
  content: "";
  height: 10px;
  width: 2px;
  margin: 0 2px;
  transform: skew(-35deg);
  background-color: #04befc;
}

.entry-content figure {
  max-width: 100%;
}

.entry-content table {
  width: 100%;
  margin-bottom: 2rem;
}

.entry-content table th, .entry-content table td {
  padding: 1rem;
  text-align: left;
  border: 1px solid #ebebeb;
}

.entry-content dl {
  margin-bottom: 2.2rem;
}

.entry-content dl dt {
  margin-bottom: 0.5rem;
}

.entry-content dl dd {
  margin-bottom: 1.2rem;
}

.entry-content .post-password-form input[type=password] {
  border: 1px solid #ebebeb;
  margin-left: 1rem;
  padding: 5px 10px;
}

.entry-content .post-password-form input[type=password]:focus {
  border-color: #04befc;
  outline: none;
}

.entry-content .post-password-form input[type=submit] {
  padding: 7px 18px 6px;
}

.entry-content .wp-audio-shortcode {
  margin-bottom: 2.2rem;
}

.entry-content .gallery {
  margin-bottom: 1.2rem;
}

.entry-content .gallery-item {
  display: inline-block;
  text-align: left;
  vertical-align: top;
  width: 32%;
  margin-right: 2%;
  margin-bottom: 2rem;
}

.entry-content .gallery-item a img {
  display: block;
  width: 100%;
}

.entry-content .gallery-item a:hover img,
.entry-content .gallery-item a:focus img {
  -webkit-filter: opacity(60%);
  filter: opacity(60%);
}

.entry-content .gallery-item .gallery-caption {
  font-style: italic;
  padding: 0 0.5rem;
  text-align: center;
}

.entry-content .gallery-columns-2 .gallery-item {
  max-width: 50%;
}

.entry-content .gallery-columns-2 .gallery-item:nth-child(2n) {
  margin-right: 0;
}

.entry-content .gallery-columns-3 .gallery-item {
  max-width: 33.33%;
}

.entry-content .gallery-columns-3 .gallery-item:nth-child(3n) {
  margin-right: 0;
}

.entry-content .gallery-columns-4 .gallery-item {
  max-width: 23.5%;
}

.entry-content .gallery-columns-4 .gallery-item:nth-child(4n) {
  margin-right: 0;
}

@media (max-width: 480px) {
  .entry-content .gallery-item {
    width: 49%;
    max-width: 49% !important;
  }
  .entry-content .gallery-item:nth-child(2n) {
    margin-right: 0;
  }
}

/* Text meant only for screen readers. */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

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

.no-padding {
  padding: 0 !important;
}

.no-margin {
  margin: 0 !important;
}

@media (max-width: 480px) {
  .col-full-width {
    width: 100%;
  }
  .col-full-width + .col-full-width {
    margin-top: 30px;
  }
}

.heading-color-white .section-header .section-sub-title,
.heading-color-white .section-header .section-title {
  color: #fff;
}

.heading-color-white .line-two:before, .heading-color-white .line-two:after,
.heading-color-white .line-two > span:before,
.heading-color-white .line-two > span:after {
  background-color: #fff;
}

.main-container {
  padding-top: 60px;
  padding-bottom: 50px;
}

.main-container.fluid-page {
  padding-top: 0;
  padding-bottom: 0;
}

@media (min-width: 992px) {
  .main-container {
    padding-top: 90px;
    padding-bottom: 80px;
  }
}

@media (min-width: 1200px) {
  .main-container {
    padding-top: 120px;
    padding-bottom: 100px;
  }
}

/* 11 Buttons */
.btn {
  font-size: 12px;
  letter-spacing: 1.7px;
  padding-bottom: 7px;
  text-transform: uppercase;
}

.btn-lg {
  font-size: 18px;
  padding-bottom: 10px;
}

.btn-sm {
  padding-bottom: 5px;
}

.btn-xs {
  padding-bottom: 4px;
}

.btn-default:hover {
  color: #fff;
  background-color: #222;
  border-color: #222;
}

.btn-wide {
  padding-left: 50px;
  padding-right: 50px;
}

.btn-icon {
  position: relative;
  padding-right: 98px;
}

.btn-icon .fa {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 48px;
  font-size: 21px;
  text-align: center;
  padding: 7px 5px;
  background-color: #0ba6d8;
  color: #f5fcfd;
}

.btn-outline {
  border-width: 2px;
  background-color: #fff;
  border-color: #04befc;
  color: #04befc;
}

.btn-outline:hover {
  background-color: #04befc;
  border-color: #04befc;
  color: #fff;
}

.btn-black {
  background-color: #333;
  border-color: #333;
  color: #fff;
}

.btn-black:hover {
  background-color: #04befc;
  border-color: #04befc;
  color: #fff;
}

.btn-outline-black {
  border-width: 2px;
  background-color: #fff;
  border-color: #333;
  color: #333;
}

.btn-outline-black:hover {
  background-color: #333;
  border-color: #333;
  color: #fff;
}

.btn-link {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;
  margin-top: 10px;
  display: inline-block;
}

.btn-link .fa {
  font-size: 14px;
  margin-left: 1px;
}

.btn-small {
  padding: 10px 36px 8px;
}

.btn-medium {
  padding: 16px 72px 14px;
}

.btn-large {
  padding: 19px 103px 17px;
}

/* 12 Forms */
input[type="text"],
input[type="search"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="password"],
textarea {
  width: 100%;
  padding: 10px 18px;
  min-height: 40px;
  border: 1px solid #ebebeb;
}

input[type="text"].error,
input[type="search"].error,
input[type="email"].error,
input[type="url"].error,
input[type="tel"].error,
input[type="password"].error,
textarea.error {
  border-color: #ff0000;
}

label.error {
  margin: 0 0 10px;
  display: block;
  color: #ff0000;
}

label.error:last-child {
  margin-bottom: 0;
}

#progress-loader {
  display: none;
}

img#progress-loader {
  margin-left: 15px;
}

button,
input[type="submit"] {
  padding: 10px 18px;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 600;
  border: 1px solid #04befc;
  background-color: #04befc;
  color: #fff;
}

button:hover,
input[type="submit"]:hover {
  background-color: #222;
  border-color: #222;
}

input[type=number] {
  -moz-appearance: textfield;
}

textarea {
  display: block;
  height: 170px;
  resize: none;
}

.status {
  border: 1px solid #ebebeb;
  margin-top: 15px;
  padding: 15px;
  display: none;
}

.status.error {
  color: #ff0000;
}

.status.success {
  color: green;
}

/* 13 Pagination */
.navigation {
  text-align: center;
  margin: 40px 0 0;
}

.navigation.comment-navigation {
  margin: 0 auto 4rem;
}

.navigation .screen-reader-text {
  display: none;
}

.navigation .page-numbers {
  margin: 0;
}

.navigation .page-numbers .fa {
  font-size: 18px;
  position: relative;
  top: 2px;
}

.navigation .page-numbers .label {
  width: 85px;
}

.navigation .page-numbers .label span {
  display: inline-block;
  vertical-align: middle;
}

.navigation .page-numbers .label .fa-angle-left {
  margin-right: 5px;
}

.navigation .page-numbers .label .fa-angle-right {
  margin-left: 5px;
}

.navigation .page-numbers > li > a,
.navigation .page-numbers > li > span {
  padding: 9px 0;
  min-width: 43px;
  text-align: center;
  margin-left: 10px;
  margin-top: 10px;
}

.navigation .page-numbers > li > a:hover, .navigation .page-numbers > li > a.current,
.navigation .page-numbers > li > span:hover,
.navigation .page-numbers > li > span.current {
  background-color: #04befc;
  border-color: #04befc;
  color: #fff;
}

.navigation .page-numbers > li > span {
  background-color: #04befc;
  border-color: #04befc;
  color: #fff;
}

/* 14 Call to Action */
.call-to-action {
  padding: 40px 0;
  text-align: center;
  background-color: #04befc;
  color: #fff;
}

.call-to-action p {
  margin-top: 4px;
  font-size: 20px;
  font-family: 'Roboto Slab', serif;
}

.call-to-action .btn {
  padding-left: 53px;
  padding-right: 53px;
  border: 2px solid #fff;
  color: #fff;
}

.call-to-action .btn:hover {
  background-color: #222;
  border-color: #222;
  color: #fff;
}

@media (min-width: 992px) {
  .call-to-action {
    text-align: left;
  }
  .call-to-action p {
    margin-bottom: 0;
  }
  .call-to-action .btn {
    float: right;
  }
}

/* 15 Sidebar */
.sidebar {
  margin-top: 50px;
}

@media (min-width: 992px) {
  .sidebar {
    margin-top: 0;
  }
}

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

.sidebar .widget-title {
  margin-bottom: 30px;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.sidebar .widget-title:after {
  content: '';
  display: block;
  width: 41px;
  height: 1px;
  margin-top: 27px;
  background-color: #04befc;
}

.widget {
  margin-bottom: 50px;
}

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

.widget select {
  display: block;
  width: 100%;
  height: 35px;
  max-width: 20.5rem;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  background-color: #fff;
  border-color: #d9d9d9;
}

.widget .wp-caption p {
  margin: 0;
}

.widget .wp-caption .wp-caption-text {
  padding: 0.5rem;
}

.widget_rss > ul > li {
  margin-bottom: 1.5rem;
}

.widget_archive li,
.widget_recent_entries li,
.widget_categories li,
.widget_recent_comments li,
.widget_nav_menu li,
.widget_meta li,
.widget_pages li {
  position: relative;
  padding: 4px 0 4px 17px;
  text-transform: uppercase;
}

.widget_archive li:before,
.widget_recent_entries li:before,
.widget_categories li:before,
.widget_recent_comments li:before,
.widget_nav_menu li:before,
.widget_meta li:before,
.widget_pages li:before {
  position: absolute;
  top: 8px;
  left: 0;
  content: "\f105";
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin: 0;
  color: #04befc;
}

.widget_archive li ul,
.widget_recent_entries li ul,
.widget_categories li ul,
.widget_recent_comments li ul,
.widget_nav_menu li ul,
.widget_meta li ul,
.widget_pages li ul {
  margin-top: 5px;
  padding-left: 18px;
}

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

.widget_archive a,
.widget_recent_entries a,
.widget_categories a,
.widget_recent_comments a,
.widget_nav_menu a,
.widget_meta a,
.widget_pages a {
  font-size: 12px;
  letter-spacing: 1px;
}

/* Calendar Widget */
/* calendar widget */
.widget_calendar #wp-calendar {
  width: 100%;
}

.widget_calendar #wp-calendar caption {
  text-align: right;
  font-style: italic;
  color: #aaa;
  font-size: 12px;
  margin: 0;
  padding: 0;
  caption-side: top;
  color: #fff;
  margin-bottom: 1rem;
}

.widget_calendar #wp-calendar thead {
  font-size: 10px;
}

.widget_calendar #wp-calendar thead th {
  padding-bottom: 10px;
}

.widget_calendar #wp-calendar tbody {
  color: #fff;
}

.widget_calendar #wp-calendar tbody td {
  border: 1px solid #ebebeb;
  text-align: center;
  padding: 8px;
  color: #777;
}

.widget_calendar #wp-calendar tbody td:hover {
  background: #fff;
  color: #000;
}

.widget_calendar #wp-calendar tbody td:hover a:hover {
  color: #04befc;
}

.widget_calendar #wp-calendar tbody .pad {
  background: none;
}

.widget_calendar #wp-calendar tfoot #next {
  font-size: 10px;
  text-transform: uppercase;
  text-align: right;
}

.widget_calendar #wp-calendar tfoot #prev {
  font-size: 10px;
  text-transform: uppercase;
  padding-top: 10px;
}

/* Tag cloud widget */
.widget_product_tag_cloud .tagcloud,
.widget_tag_cloud .tagcloud {
  overflow: hidden;
  margin-left: -4px;
  margin-right: -4px;
}

.widget_product_tag_cloud a,
.widget_tag_cloud a {
  float: left;
  margin: 4px;
  padding: 7px 13px;
  font-size: 14px !important;
  border: 1px solid #ebebeb;
  font-weight: 500;
  background-color: #fff;
  color: #777;
}

.widget_product_tag_cloud a:hover,
.widget_tag_cloud a:hover {
  background: #04befc;
  border-color: #04befc;
  color: #fff;
}

/* Search widget */
.widget_search input[type="search"] {
  width: 82%;
}

.widget_search input[type="search"],
.widget_search input[type="submit"] {
  float: left;
  height: 50px;
}

.widget_search input[type="submit"] {
  width: 18%;
  border-left: none;
  background: url("../img/search-lense.png") #fff no-repeat center 17px;
  background-size: 16px;
  border-color: #ebebeb;
}

.widget_search input[type="submit"]:hover {
  background-color: #ebebeb;
}

/* Featured & recent posts widgets */
.pearl_recent_posts_widget h4,
.pearl_featured_posts_widget h4 {
  font-size: 1.4rem;
  font-weight: normal;
}

.pearl_recent_posts_widget li,
.pearl_featured_posts_widget li {
  overflow: hidden;
}

.pearl_recent_posts_widget li:last-child,
.pearl_featured_posts_widget li:last-child {
  margin-bottom: 0;
}

.pearl_recent_posts_widget .post-thumb,
.pearl_featured_posts_widget .post-thumb {
  float: left;
  margin-right: 22px;
  background-color: #04befc;
}

.pearl_recent_posts_widget .post-thumb img,
.pearl_featured_posts_widget .post-thumb img {
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.pearl_recent_posts_widget .post-thumb img:hover,
.pearl_featured_posts_widget .post-thumb img:hover {
  opacity: .15;
}

.pearl_recent_posts_widget .post-content,
.pearl_featured_posts_widget .post-content {
  display: table;
}

.pearl_recent_posts_widget .post-title,
.pearl_featured_posts_widget .post-title {
  font-weight: 600;
  line-height: 1.8;
}

.pearl_recent_posts_widget .post-date,
.pearl_featured_posts_widget .post-date {
  display: block;
  font-size: 12px;
  color: #545454;
}

.pearl_recent_posts_widget li {
  margin-bottom: 30px;
}

.pearl_recent_posts_widget .post-title {
  font-size: 13px;
  margin-top: 3px;
  margin-bottom: 7px;
}

/* Newsletter widget */
.newsletter_widget input[type="text"]:focus,
.newsletter_widget input[type="email"]:focus {
  border-color: #04befc;
}

.newsletter_widget input:not([type="submit"]) {
  padding: 12px 22px;
  margin-bottom: 10px;
}

.newsletter_widget input[type="submit"] {
  width: 100%;
  font-weight: 700;
  padding-top: 15px;
  padding-bottom: 13px;
  margin-top: 10px;
  letter-spacing: 1px;
}

/* Instargam widget */
.pearl_instagram_widget .pearl-instagram-pics {
  margin: 0 -4px;
  overflow: hidden;
}

.pearl-instagram-pics {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.pearl-instagram-pics .pearl-instagram-row {
  display: table-row;
}

.pearl-instagram-pics .pearl-instagram-row:first-child .pearl-instagram-item {
  padding-top: 0px;
}

.pearl-instagram-pics .pearl-instagram-row:last-child .pearl-instagram-item {
  padding-bottom: 0px;
}

.pearl-instagram-pics .pearl-instagram-follow {
  width: 100%;
  text-align: center;
  display: block;
  margin-top: 3px;
}

.pearl-instagram-item {
  display: table-cell;
  padding: 3px;
}

.pearl-instagram-item a {
  display: block;
  position: relative;
}

.pearl-instagram-item img {
  display: block;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.pearl-instagram-item img:hover {
  opacity: .85;
}

.pearl-instagram-item:first-child {
  padding-left: 0px;
}

.pearl-instagram-item:last-child {
  padding-right: 0px;
}

/* Twitter widget */
.pearl_twitter_widget li {
  margin-bottom: 30px;
}

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

.pearl_twitter_widget li .avatar_no {
  margin-left: 25px;
}

.pearl_twitter_widget .avatar_no:before {
  content: "\f099";
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  float: left;
  margin: 5px 12px 0 -25px;
}

.pearl_twitter_widget p {
  display: table;
  line-height: 1.4;
}

.pearl_twitter_widget a {
  color: #04befc;
}

.pearl_twitter_widget a:hover {
  color: #fff;
}

.pearl_twitter_widget .tweet-time {
  display: block;
  margin-top: 5px;
  font-size: 12px;
  color: #545454;
  font-style: normal;
}

/* Ad widget */
.img-wrap {
  display: inline-block;
  background-color: #04befc;
}

.img-wrap img {
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.img-wrap img:hover {
  outline: 1px solid #fff;
  outline-offset: -15px;
  opacity: .15;
}

/* 16 Footer */
.footer {
  background-color: #181819;
}

.footer-widgets {
  padding-top: 50px;
  color: #999;
}

@media (min-width: 768px) {
  .footer-widgets {
    padding-top: 100px;
    padding-bottom: 50px;
  }
}

.footer-widgets .widget-title {
  font-size: 14px;
  letter-spacing: 1px;
  margin-bottom: 30px;
  text-transform: uppercase;
  color: #fff;
}

@media (min-width: 768px) {
  .footer-widgets .widget-title {
    margin-bottom: 48px;
  }
}

.footer-widgets .widget_archive a,
.footer-widgets .widget_recent_entries a,
.footer-widgets .widget_categories a,
.footer-widgets .widget_recent_comments a,
.footer-widgets .widget_nav_menu a,
.footer-widgets .widget_pages a,
.footer-widgets .widget_meta a {
  color: #999;
}

.footer-widgets .widget_archive a:hover,
.footer-widgets .widget_recent_entries a:hover,
.footer-widgets .widget_categories a:hover,
.footer-widgets .widget_recent_comments a:hover,
.footer-widgets .widget_nav_menu a:hover,
.footer-widgets .widget_pages a:hover,
.footer-widgets .widget_meta a:hover {
  color: #fff;
}

.footer-widgets .widget_rss a,
.footer-widgets .widget_calendar a {
  color: #04befc;
}

.footer-widgets .widget_rss a:hover,
.footer-widgets .widget_calendar a:hover {
  color: #fff;
}

.footer-widgets .pearl_recent_posts_widget h4 {
  color: #fff;
}

.footer-widgets .pearl_recent_posts_widget li {
  margin-bottom: 26px;
}

.footer-widgets .pearl_recent_posts_widget .post-title {
  font-size: 12px;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 0;
}

.footer-widgets .pearl_recent_posts_widget a {
  color: #fff;
}

.footer-widgets .pearl_recent_posts_widget a:hover {
  color: #04befc;
}

/* Logo widget */
.footer-logo-widget {
  text-align: center;
}

.footer-logo-widget p {
  margin: 14px 17% 20px;
  font-size: 13px;
  font-weight: 300;
  line-height: 1.6;
}

.sub-footer {
  padding-top: 28px;
  padding-bottom: 28px;
  text-transform: uppercase;
  font-size: 13px;
  background-color: #111;
}

.sub-footer p {
  margin-bottom: 0;
}

.sub-footer a {
  color: #fff;
}

.sub-footer a:hover {
  color: #04befc;
}

#scroll-to-top {
  opacity: 0;
  visibility: hidden;
  position: fixed;
  right: -55px;
  bottom: 15px;
  z-index: 9999;
  width: 40px;
  height: 40px;
  line-height: 38px;
  text-align: center;
  transition: all 0.3s ease;
  background-color: #04befc;
  color: #fff;
}

#scroll-to-top.visible {
  right: 20px;
  opacity: 1;
  visibility: visible;
}

#scroll-to-top:hover {
  background-color: #000;
}

/* 17 Header */
.header {
  position: relative;
}

@media (min-width: 768px) {
  .header {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

@media (max-width: 400px) {
  .header .col-xs-6 {
    width: 100%;
  }
}

.header-full-width,
.header-full-width .container {
  width: 100%;
}

.header-sticky {
  background-color: #333;
}

@media (min-width: 992px) {
  .header-sticky {
    position: absolute;
    left: 0;
    right: 0;
    z-index: 1000;
    background-color: transparent;
  }
}

.header.sticky {
  transition: all 0.3s ease;
}

.header.sticked {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
}

.header-one.sticked, .header-three.sticked, .sticked.header-four, .sticked.header-one {
  padding-top: 8px;
  padding-bottom: 8px;
  background-color: #222;
}

.header-two.sticked {
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
}

.header-four.sticked {
  padding-top: 30px;
  padding-bottom: 0;
  background-color: #fff;
}

.header-four.sticked .header-menu-wrap {
  margin-top: 30px;
}

.header-three, .header-four, .header-one {
  border-top: 5px solid #04befc;
}

@media (min-width: 1200px) {
  .header-three, .header-four, .header-one {
    padding-top: 27px;
    padding-bottom: 27px;
  }
}

.header-three .menu-primary > li > a, .header-four .menu-primary > li > a, .header-one .menu-primary > li > a {
  color: #fff;
}

.header-three .search-form-wrap, .header-four .search-form-wrap, .header-one .search-form-wrap {
  margin-left: 0;
}

@media (min-width: 1200px) {
  .header-three .search-form-wrap, .header-four .search-form-wrap, .header-one .search-form-wrap {
    margin-left: 17px;
  }
}

.header-three .search-toggle, .header-four .search-toggle, .header-one .search-toggle {
  background-color: transparent;
  color: #fff;
}

.header-three .search-toggle:hover, .header-four .search-toggle:hover, .header-one .search-toggle:hover {
  background-color: transparent;
  color: #04befc;
}

.header-three .slicknav_menu .slicknav_icon-bar, .header-four .slicknav_menu .slicknav_icon-bar, .header-one .slicknav_menu .slicknav_icon-bar {
  background-color: #fff;
}

.header-four {
  border-top: none;
  padding-bottom: 0;
}

@media (min-width: 768px) {
  .header-four {
    padding-top: 25px;
  }
}

@media (min-width: 1200px) {
  .header-four {
    padding-top: 60px;
  }
}

@media (min-width: 992px) {
  .header-four .site-branding a,
  .header-four .site-branding img {
    margin: auto;
  }
}

.header-four .follow-us {
  display: block;
  margin-top: 18px;
  text-align: center;
}

@media (min-width: 768px) {
  .header-four .follow-us {
    margin-top: 0;
    text-align: right;
  }
}

.header-four .follow-us a {
  display: inline-block;
  margin-top: 0;
  font-size: 16px;
  color: #2d2d2d;
}

.header-four .follow-us a + a {
  margin-left: 17px;
}

.header-four .follow-us a:hover {
  color: #04befc;
}

.tagline {
  font-family: 'Roboto', sans-serif;
  font-size: 12px;
  margin-top: 5px;
  margin-bottom: 0;
  letter-spacing: .3px;
  color: #a5a5a5;
}

.header-menu-wrap {
  margin-top: 24px;
  background-color: #04befc;
}

@media (min-width: 1200px) {
  .header-menu-wrap {
    margin-top: 60px;
  }
}

.header-menu-wrap .navigation-top {
  padding-top: 14px;
  padding-bottom: 14px;
}

.header-menu-wrap .main-navigation {
  float: left;
}

.header-menu-wrap .menu-primary > li {
  margin-right: 10px;
}

@media (min-width: 1200px) {
  .header-menu-wrap .menu-primary > li {
    margin-right: 34px;
  }
}

.header-menu-wrap .menu-primary > li.current-menu-item > a,
.header-menu-wrap .menu-primary > li:hover > a {
  background-color: #fff;
}

.header-menu-wrap .search-form {
  position: relative;
  padding: 13px 25px;
  height: 72px;
  background-color: #04b2ed;
}

@media (min-width: 992px) {
  .header-menu-wrap .search-form {
    margin-left: 26px;
  }
}

.header-menu-wrap .search-form:hover .fa-search {
  color: #b4ecfe;
}

.header-menu-wrap .search-form input[type="text"] {
  width: 100%;
  padding-left: 0;
  padding-right: 45px;
  border-color: transparent;
  background-color: transparent;
  color: #ffffff;
}

.header-menu-wrap .search-form input[type="text"] ::-moz-placeholder {
  opacity: 1;
}

.header-menu-wrap .search-form input[type="text"]::-webkit-input-placeholder {
  color: #fff;
}

.header-menu-wrap .search-form input[type="text"]::-moz-placeholder {
  color: #fff;
}

.header-menu-wrap .search-form input[type="text"]:-ms-input-placeholder {
  color: #fff;
}

.header-menu-wrap .search-form input[type="text"]:-moz-placeholder {
  color: #fff;
}

.header-menu-wrap .search-form input[type="submit"] {
  padding: 10px 20px;
  border-color: transparent;
  background-color: transparent;
  position: absolute;
  top: 15px;
  right: 16px;
  z-index: 2;
}

.header-menu-wrap .search-form .fa-search {
  position: absolute;
  top: 28px;
  right: 28px;
  z-index: 1;
  color: #fff;
}

.header-two {
  background-color: #fff;
}

.header-one {
  border-top: none;
}

.header-one .menu-primary > li {
  margin-right: 20px;
}

@media (min-width: 1200px) {
  .header-one .menu-primary > li {
    margin-right: 48px;
  }
}

.header-one .menu-primary > li > a {
  padding-left: 1px;
  padding-right: 1px;
}

.header-one .menu-primary > li.current-menu-item > a, .header-one .menu-primary > li:hover > a {
  color: #fff;
}

.header-one .menu-primary > li.current-menu-item:hover > a {
  border-bottom-color: transparent;
}

.header-one .menu-primary > li.current-menu-item > a, .header-one .menu-primary > li:hover:not(.menu-item-has-children) > a {
  border-bottom: 1px solid #fff;
  padding-bottom: 2px;
}

.pearl_header_5 {
  height: 100%;
  min-height: 100%;
  width: 100%;
  position: relative;
  overflow-x: hidden;
}

.logged-in #show-slide-header {
  top: 33px;
}

#show-slide-header {
  position: fixed;
  top: 15px;
  right: 15px;
  z-index: 1050;
  padding: 5px 12px;
  cursor: pointer;
  transition: all .2s ease;
  font-size: 18px;
  background-color: transparent;
  color: #000;
}

#show-slide-header .active, #show-slide-header:hover {
  background-color: #04befc;
  color: #fff;
}

.page-side-header {
  position: fixed;
  top: 0;
  bottom: 0;
  z-index: 1040;
  overflow-y: auto;
  width: 280px;
  padding: 50px 15px 15px;
  text-align: center;
  transform: translate(-100%, 0);
  transition: transform .3s ease;
  border-right: 1px solid #b7b7b7;
  background-color: #fff;
}

.page-side-header.show-slide-header {
  transform: translate(0, 0);
}

@media (min-width: 768px) {
  .page-side-header {
    width: 320px;
  }
}

.page-side-header .site-branding {
  margin-bottom: 20px;
}

.page-side-header .navigation-top {
  margin-bottom: 20px;
}

.page-side-header .site-branding .wrap {
  display: block;
  height: auto;
  vertical-align: middle;
}

.page-side-header .site-branding a,
.page-side-header .site-branding img {
  margin: auto;
}

.page-side-header .main-navigation .menu-primary > li,
.page-side-header .main-navigation .menu-primary > ul > li {
  overflow: visible;
}

.page-side-header .menu-primary > li {
  display: block;
  float: none;
  margin-right: 0;
}

.page-side-header .menu-primary > li > a {
  display: inline-block;
  padding-top: 13px;
  padding-bottom: 12px;
}

.page-side-header .menu-primary a {
  font-weight: 700;
}

.page-side-header .menu-primary .sub-menu,
.page-side-header .menu-primary > ul .sub-menu {
  position: static;
  width: 100%;
  visibility: visible;
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.page-side-header .menu-primary .sub-menu a,
.page-side-header .menu-primary > ul .sub-menu a {
  padding-top: 13px;
  padding-bottom: 12px;
  border-top: none;
}

.page-side-header .main-navigation,
.page-side-header .search-form-wrap {
  float: none;
}

.page-side-header .search-form-wrap {
  margin-left: 0;
}

.page-side-header .search-toggle {
  margin-top: 0;
  background-color: #ffffff;
  display: inline-block;
}

.page-side-header .search-toggle:hover {
  background-color: #222;
  color: #fff;
}

.page-side-header .follow-us {
  margin-top: 24px;
  display: block;
  width: 100%;
}

.page-side-header .follow-us:before {
  content: "";
  display: block;
  height: 1px;
  width: 100px;
  margin: 0 auto 27px;
  background-color: #e5e5e5;
}

.page-side-header .follow-us a {
  display: inline-block;
  width: 26px;
  height: 26px;
  margin-top: 3px;
  line-height: 26px;
  border-radius: 50%;
  text-align: center;
  font-size: 12px;
  background-color: #2d2d2d;
  color: #fff;
}

.page-side-header .follow-us a:hover {
  background-color: #04befc;
}

.page-wrapper {
  transition: transform .3s ease;
}

.page-wrapper.show-slide-header {
  position: relative;
  overflow-x: hidden;
  width: 100%;
  height: 100%;
  min-height: 100%;
}

@media (min-width: 1500px) {
  .page-wrapper.show-slide-header {
    width: calc(100% - 320px);
    transform: translate(320px, 0);
  }
  .page-wrapper.show-slide-header .container.fullwidth-page {
    width: 100% !important;
    padding-left: 0;
    padding-right: 0;
  }
  .page-wrapper.show-slide-header .vc_row[data-vc-full-width] {
    position: static !important;
    left: 0 !important;
    right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
  }
  .page-wrapper.show-slide-header .fullwidth-page > .row,
  .page-wrapper.show-slide-header .vc_row {
    margin-left: 0;
    margin-right: 0;
  }
  .page-wrapper.show-slide-header .our-portfolio-4 {
    margin-left: -30px;
    margin-right: -30px;
  }
  .page-wrapper.show-slide-header .vc_column_container > .vc_column-inner {
    padding-left: 30px;
    padding-right: 30px;
  }
  .page-wrapper.show-slide-header .fullwidth-page > .row > .col-md-12 {
    padding-left: 0;
    padding-right: 0;
  }
}

.overlay-form {
  display: none;
  padding: 10px 15px 15px;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 1000000;
  background-color: rgba(255, 255, 255, 0.95);
}

.overlay-form .search-toggle {
  float: right;
  display: inline-block;
}

.overlay-form .header-overlay-form-wrap {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 70%;
  transform: translate(-50%, -50%);
}

.overlay-form .fa-search {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  font-size: 21px;
  width: 75px;
  text-align: center;
  padding: 26px 0;
  background: rgba(235, 235, 235, 0.4);
  border-right: 1px solid #ebebeb;
  color: #777;
}

.overlay-form .header-overlay-form {
  position: relative;
}

.overlay-form .header-overlay-form input[type="text"] {
  padding: 12px 30px 12px 95px;
  border: 1px solid #ebebeb;
  font-size: 21px;
  height: 73px;
  line-height: 73px;
}

.site-branding {
  padding-top: 18px;
  text-align: center;
}

@media (min-width: 768px) {
  .site-branding {
    padding-top: 0;
  }
  .site-branding .wrap {
    display: table-cell;
    height: 80px;
    vertical-align: middle;
  }
  .site-branding a,
  .site-branding img {
    display: block;
  }
}

.site-branding img {
  max-width: 100%;
}

.site-title {
  margin-bottom: 0;
}

.site-description {
  margin-bottom: 0;
}

.navigation-top {
  position: relative;
  padding: 18px 0;
}

@media screen and (min-width: 992px) {
  .main-navigation {
    float: right;
  }
}

.main-navigation .menu-primary > li,
.main-navigation .menu-primary > ul > li {
  overflow: hidden;
}

.main-navigation:hover .menu-primary > li,
.main-navigation:hover .menu-primary > ul > li {
  overflow: visible;
}

@media screen and (max-width: 991px) {
  .menu-primary:not(.side-menu-primary),
  .menu-primary > ul:not(.side-menu-primary) {
    display: none !important;
  }
}

.menu-primary,
.menu-primary ul,
.menu-primary > ul,
.menu-primary > ul ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.menu-primary > li,
.menu-primary > ul > li {
  float: left;
}

@media (min-width: 1200px) {
  .menu-primary > li,
  .menu-primary > ul > li {
    margin-right: 20px;
  }
  .menu-primary > li:last-child,
  .menu-primary > ul > li:last-child {
    margin-right: 0;
  }
}

.menu-primary > li > a,
.menu-primary > ul > li > a {
  padding: 12px 15px 10px;
}

.menu-primary li,
.menu-primary > ul li {
  position: relative;
}

.menu-primary li.current-menu-item > a, .menu-primary li:hover > a,
.menu-primary > ul li.current-menu-item > a,
.menu-primary > ul li:hover > a {
  color: #04befc;
}

.menu-primary li:hover > .sub-menu,
.menu-primary > ul li:hover > .sub-menu {
  display: block;
  visibility: visible;
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.menu-primary a,
.menu-primary > ul a {
  display: block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.menu-primary .sub-menu,
.menu-primary > ul .sub-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 100;
  width: 180px;
  visibility: hidden;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translate3d(0, 10px, 0);
  transform: translate3d(0, 10px, 0);
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  background-color: #fff;
}

.menu-primary .sub-menu li:first-child a,
.menu-primary > ul .sub-menu li:first-child a {
  border-top: 0;
}

.menu-primary .sub-menu a,
.menu-primary > ul .sub-menu a {
  padding: 10px 15px;
  border-top: 1px solid #f7f7f7;
}

.menu-primary .sub-menu .sub-menu,
.menu-primary > ul .sub-menu .sub-menu {
  top: 0;
  left: 100%;
}

.slicknav_menu {
  font-size: 14px;
  padding: 0;
  background: transparent;
}

@media screen and (min-width: 992px) {
  .slicknav_menu {
    display: none !important;
  }
}

.slicknav_nav {
  font-size: 14px;
  position: absolute;
  top: 100%;
  right: 0;
  width: 100%;
  z-index: 9999;
  background: #fff;
}

.slicknav_nav a,
.slicknav_nav .slicknav_row {
  padding: 8px 20px;
  margin: 0;
}

.slicknav_nav a {
  text-decoration: none;
  color: #222;
}

.slicknav_nav a:hover, .slicknav_nav a:focus {
  outline: none;
}

.slicknav_nav a:hover,
.slicknav_nav a:hover a,
.slicknav_nav .slicknav_row:hover {
  color: #fff;
}

.slicknav_nav a:hover,
.slicknav_nav a:hover,
.slicknav_nav .slicknav_row:hover {
  border-radius: 0;
  background: #04befc;
}

.slicknav_btn {
  margin: 5px 0 0;
  text-decoration: none;
  text-shadow: none;
  border-radius: 0;
  line-height: 1;
  padding: 13px 10px 8px;
  background-color: transparent;
}

@media (max-width: 400px) {
  .slicknav_btn {
    float: left;
  }
}

.slicknav_menu .slicknav_icon:before,
.slicknav_menu .slicknav_icon-bar {
  width: 14px;
  height: 2px;
}

.slicknav_nav li {
  border-bottom: 1px solid #f7f7f7;
}

.slicknav_nav li:last-child {
  border-bottom: none;
}

.slicknav_nav li .sub-menu {
  margin: 0;
}

.slicknav_nav li .sub-menu a {
  padding-left: 40px;
}

.slicknav_menu .slicknav_icon-bar {
  border-radius: 0;
  box-shadow: none;
  background-color: #222;
}

.slicknav_btn .slicknav_icon-bar + .slicknav_icon-bar {
  margin-top: 2px;
}

.slicknav_menu .slicknav_icon {
  width: 14px;
  height: 13px;
  margin: 0;
}

.list-and-cart {
  float: right;
  color: #fff;
}

.list-and-cart .cart-button {
  position: relative;
}

.list-and-cart .cart-button span {
  display: block;
  position: absolute;
  top: 11px;
  right: 0;
  border-radius: 50%;
  min-width: 14px;
  min-height: 14px;
  line-height: 14px;
  text-align: center;
  font-size: 10px;
  background-color: #04befc;
}

.list-and-cart a {
  display: inline-block;
  padding: 12px 10px;
  color: inherit;
}

.search-form-wrap {
  position: relative;
  float: right;
  margin-left: 10px;
}

@media (min-width: 1200px) {
  .search-form-wrap {
    margin-left: 38px;
  }
}

.search-form-wrap form {
  display: none;
  position: absolute;
  top: 50px;
  width: 280px;
  right: -7px;
  z-index: 150;
}

.search-form-wrap form input[type="search"],
.search-form-wrap form input[type="text"] {
  padding-right: 65px;
  height: 46px;
}

.search-form-wrap form input[type="submit"] {
  padding: 12px 14px;
  position: absolute;
  top: 0;
  right: 0;
}

.search-toggle {
  padding: 10px 11px;
  margin-top: 5px;
  cursor: pointer;
  transition: color .2s ease-in-out;
  background-color: #f6f6f6;
}

.search-toggle:hover {
  background-color: #222;
  color: #fff;
}

.search-toggle .fa {
  display: block;
}

/* 18 Sub Header */
.sub-header {
  position: relative;
  padding: 60px 0;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
}

@media (min-width: 991px) {
  .sub-header {
    padding-top: 82px;
    padding-bottom: 82px;
  }
}

@media (min-width: 1200px) {
  .sub-header {
    padding-top: 184px;
    padding-bottom: 184px;
  }
}

.sub-header.small {
  background: #172025;
}

@media (min-width: 1200px) {
  .sub-header.small {
    padding-top: 82px;
    padding-bottom: 82px;
  }
}

@media (min-width: 1366px) {
  .sub-header.large {
    padding-top: 333px;
    padding-bottom: 188px;
  }
}

.sub-header .title {
  font-size: 24px;
  letter-spacing: 7px;
  margin-bottom: 0;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
  color: inherit;
}

@media (min-width: 768px) {
  .sub-header .title {
    font-size: 32px;
    font-weight: 900;
  }
}

@media (min-width: 1200px) {
  .sub-header .title {
    font-size: 72px;
  }
}

.sub-header .description {
  font-size: 16px;
  letter-spacing: 3px;
  margin-top: 10px;
  margin-bottom: 0;
}

@media (min-width: 992px) {
  .sub-header .description {
    font-weight: 700;
  }
}

.sub-header .bg-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  background-color: rgba(23, 32, 37, 0.6);
}

.sub-header .bg-overlay.dark {
  background-color: rgba(23, 32, 37, 0.95);
}

.sub-header .bg-overlay + .container {
  position: relative;
  z-index: 2;
}

/* 19 Slider */
.flex-direction-nav a {
  line-height: 46px;
  font-size: 30px;
  text-align: center;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  margin: -25px 0 0;
  border: 2px solid #fff;
  color: #fff;
}

.flex-direction-nav a:hover {
  border-color: #04befc;
  color: #04befc;
}

/* Drop Animation */
@keyframes drop {
  0% {
    top: 5px;
    opacity: 0;
  }
  30% {
    top: 8px;
    opacity: 1;
  }
  100% {
    top: 13px;
    opacity: 0;
  }
}

.mouse-icon {
  display: none;
  width: 18px;
  height: 30px;
  position: absolute;
  bottom: 35px;
  left: calc(50% - 9px);
  z-index: 10;
  border: 2px solid #fff;
  border-radius: 10px;
  cursor: pointer;
  transition: all 0.3s linear;
}

@media (min-width: 768px) {
  .mouse-icon {
    display: block;
  }
}

.mouse-icon:hover {
  background-color: #fff;
}

.mouse-icon:hover .wheel {
  background-color: #999;
}

.mouse-icon .wheel {
  position: relative;
  top: 4px;
  width: 4px;
  height: 8px;
  margin-left: auto;
  margin-right: auto;
  border-radius: 10px;
  border: 1px solid #fff;
  animation: drop 1s linear infinite;
  animation-play-state: running;
}

.slide-caption-common, .slider-one, .slider-two, .slider-three, .slider-five, .slider-four {
  display: none;
}

@media (min-width: 320px) {
  .slide-caption-common, .slider-one, .slider-two, .slider-three, .slider-five, .slider-four {
    display: block;
  }
}

.slide-caption-common .slide-caption, .slider-one .slide-caption, .slider-two .slide-caption, .slider-three .slide-caption, .slider-five .slide-caption, .slider-four .slide-caption {
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;
  z-index: 50;
  width: 80%;
  max-width: 1170px;
  margin: 0 auto;
  transform: translateY(-50%);
}

@media (min-width: 1199px) {
  .slide-caption-common .slide-caption, .slider-one .slide-caption, .slider-two .slide-caption, .slider-three .slide-caption, .slider-five .slide-caption, .slider-four .slide-caption {
    width: 1170px;
  }
}

.slide-caption-common .slide-text, .slider-one .slide-text, .slider-two .slide-text, .slider-three .slide-text, .slider-five .slide-text, .slider-four .slide-text {
  text-align: center;
  color: #fff;
}

.slide-caption-common .slide-text h2, .slider-one .slide-text h2, .slider-two .slide-text h2, .slider-three .slide-text h2, .slider-five .slide-text h2, .slider-four .slide-text h2 {
  font-size: 24px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 5px;
  line-height: 1.18;
}

@media (min-width: 1200px) {
  .slide-caption-common .slide-text h2, .slider-one .slide-text h2, .slider-two .slide-text h2, .slider-three .slide-text h2, .slider-five .slide-text h2, .slider-four .slide-text h2 {
    font-size: 68px;
  }
}

.slide-caption-common .slide-text p, .slider-one .slide-text p, .slider-two .slide-text p, .slider-three .slide-text p, .slider-five .slide-text p, .slider-four .slide-text p {
  display: none;
}

.slide-caption-common .btn-default, .slider-one .btn-default, .slider-two .btn-default, .slider-three .btn-default, .slider-five .btn-default, .slider-four .btn-default {
  display: none;
  margin-right: 12px;
  color: #fff;
  background-color: transparent;
  border-color: #fff;
}

@media (min-width: 480px) {
  .slide-caption-common .btn-default, .slider-one .btn-default, .slider-two .btn-default, .slider-three .btn-default, .slider-five .btn-default, .slider-four .btn-default {
    display: inline-block;
  }
}

.slide-caption-common .btn-default:hover, .slider-one .btn-default:hover, .slider-two .btn-default:hover, .slider-three .btn-default:hover, .slider-five .btn-default:hover, .slider-four .btn-default:hover {
  color: #fff;
  background-color: #222;
  border-color: #222;
}

.slide-caption-common .btn-primary, .slider-one .btn-primary, .slider-two .btn-primary, .slider-three .btn-primary, .slider-five .btn-primary, .slider-four .btn-primary {
  display: none;
}

@media (min-width: 480px) {
  .slide-caption-common .btn-primary, .slider-one .btn-primary, .slider-two .btn-primary, .slider-three .btn-primary, .slider-five .btn-primary, .slider-four .btn-primary {
    display: inline-block;
  }
}

.slide-caption-common .btn-primary:hover, .slider-one .btn-primary:hover, .slider-two .btn-primary:hover, .slider-three .btn-primary:hover, .slider-five .btn-primary:hover, .slider-four .btn-primary:hover {
  color: #fff;
  background-color: #222;
  border-color: #222;
}

.slide-caption-common .flex-direction-nav, .slider-one .flex-direction-nav, .slider-two .flex-direction-nav, .slider-three .flex-direction-nav, .slider-five .flex-direction-nav, .slider-four .flex-direction-nav {
  display: none;
}

@media (min-width: 480px) {
  .slide-caption-common .flex-direction-nav, .slider-one .flex-direction-nav, .slider-two .flex-direction-nav, .slider-three .flex-direction-nav, .slider-five .flex-direction-nav, .slider-four .flex-direction-nav {
    display: block;
  }
}

@media (min-width: 1200px) {
  .slider-one .slide-caption {
    top: 54%;
  }
}

@media (min-width: 1200px) {
  .slider-one .slide-text {
    float: left;
    width: 43%;
    text-align: left;
  }
}

.slider-one .slide-text span {
  font-family: Georgia, "Times New Roman", Times, serif;
  font-size: 18px;
  font-style: italic;
  margin-bottom: 14px;
  display: block;
}

@media (min-width: 992px) {
  .slider-one .slide-text span {
    font-size: 24px;
  }
}

.slider-one .slide-text h2 {
  margin-bottom: 22px;
  color: #fff;
}

.slider-one .slide-text h2 a {
  color: #fff;
}

.slider-one .slide-text h2 a:hover {
  color: #04befc;
}

.slider-one .slide-text p {
  font-size: 15px;
  line-height: 2;
  margin-bottom: 37px;
}

@media (min-width: 1366px) {
  .slider-one .slide-text p {
    display: block;
  }
}

.slider-two .slide-text span {
  font-family: Georgia, "Times New Roman", Times, serif;
  font-size: 18px;
  font-style: italic;
  margin-bottom: 8px;
  display: block;
}

@media (min-width: 992px) {
  .slider-two .slide-text span {
    font-size: 24px;
  }
}

.slider-two .slide-text h2 {
  color: #fff;
  letter-spacing: 9px;
  margin-bottom: 15px;
}

.slider-two .slide-text h2 a {
  color: #fff;
}

.slider-two .slide-text h2 a:hover {
  color: #04befc;
}

.slider-two .slide-text p {
  margin-bottom: 30px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2.4px;
}

@media (min-width: 1200px) {
  .slider-two .slide-text p {
    display: block;
  }
}

.slider-two .btn-primary {
  color: #222;
  background-color: #fff;
  border-color: #fff;
}

.slider-two .flex-direction-nav a {
  line-height: 76px;
  border-radius: 0;
  height: 76px;
  margin-top: -28px;
  border: none;
  background-color: #1b2224;
  color: #fff;
}

.slider-two .flex-direction-nav a:hover {
  background-color: rgba(255, 255, 255, 0.3);
}

.slider-two:hover .flex-direction-nav .flex-prev {
  left: 0;
}

.slider-two:hover .flex-direction-nav .flex-next {
  right: 0;
}

@media (min-width: 1200px) {
  .slider-three .slide-caption {
    top: 56.2%;
  }
}

.slider-three .slide-text span {
  font-size: 18px;
  text-transform: uppercase;
  margin-bottom: 12px;
  display: inline-block;
  line-height: 1.1;
  letter-spacing: 4px;
  padding-bottom: 2px;
  border-bottom: .5px solid #fff;
}

.slider-three .slide-text h2 {
  color: #fff;
}

@media (min-width: 1200px) {
  .slider-three .slide-text h2 {
    margin-bottom: 28px;
  }
}

.slider-three .slide-text h2 a {
  color: #fff;
}

.slider-three .slide-text h2 a:hover {
  color: #04befc;
}

.slider-three .slide-text p {
  display: none;
  font-size: 18px;
  line-height: 1.5;
  max-width: 560px;
  margin: 0 auto 37px;
}

@media (min-width: 992px) {
  .slider-three .slide-text p {
    display: block;
  }
}

.slider-three .flex-direction-nav a {
  font-size: 78px;
  border-radius: 0;
  border: none;
}

.slider-three .flex-direction-nav a .fa {
  line-height: 0;
}

.slider-four {
  border-bottom: none;
}

.slider-four .slide-caption {
  top: 49%;
}

@media (min-width: 1200px) {
  .slider-four .slide-text {
    max-width: 630px;
  }
}

.slider-four .slide-text h2 {
  letter-spacing: 4px;
  font-weight: 900;
}

@media (min-width: 992px) {
  .slider-four .slide-text h2 {
    font-size: 50px;
  }
}

.slider-four .slide-text span {
  font-size: 18px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
}

.slider-four .slide-text p {
  font-size: 16px;
}

.slider-four .flex-direction-nav a {
  background-color: #d4d8db;
  border-color: #d4d8db;
}

.slider-five, .slider-four {
  border-bottom: 1px solid #e5e5e5;
}

.slider-five .slide-caption, .slider-four .slide-caption {
  top: 55%;
}

@media (min-width: 1200px) {
  .slider-five .slide-text, .slider-four .slide-text {
    max-width: 535px;
    text-align: left;
  }
}

.slider-five .slide-text span, .slider-four .slide-text span {
  font-size: 30px;
  color: #454545;
}

.slider-five .slide-text h2, .slider-four .slide-text h2 {
  font-weight: 700;
  letter-spacing: 1px;
  margin-bottom: 9px;
}

@media (min-width: 992px) {
  .slider-five .slide-text h2, .slider-four .slide-text h2 {
    font-size: 56px;
  }
}

.slider-five .slide-text h3, .slider-four .slide-text h3 {
  font-size: 18px;
  font-weight: 500;
  margin-bottom: 22px;
  color: #454545;
}

@media (min-width: 992px) {
  .slider-five .slide-text h3, .slider-four .slide-text h3 {
    font-size: 30px;
  }
}

.slider-five .slide-text p, .slider-four .slide-text p {
  font-family: 'Roboto', sans-serif;
  color: #555;
  font-size: 14px;
  line-height: 2;
  margin-bottom: 24px;
}

@media (min-width: 1200px) {
  .slider-five .slide-text p, .slider-four .slide-text p {
    display: block;
  }
}

.slider-five .btn-default, .slider-four .btn-default {
  color: #04befc;
  border-color: #04befc;
}

.slider-five .btn-default:hover, .slider-four .btn-default:hover {
  color: #fff;
  border-color: #222;
}

.slider-five:hover .flex-direction-nav .flex-next, .slider-four:hover .flex-direction-nav .flex-next {
  right: 38px;
}

.slider-five:hover .flex-direction-nav .flex-prev, .slider-four:hover .flex-direction-nav .flex-prev {
  left: 38px;
}

.slider-five .flex-direction-nav a, .slider-four .flex-direction-nav a {
  border-radius: 0;
  color: #222;
  background-color: #f3f3f3;
  border-color: #f3f3f3;
}

.slider-five .flex-direction-nav a:hover, .slider-four .flex-direction-nav a:hover {
  background-color: #222;
  border-color: #222;
  color: #fff;
}

.slider-five .mouse-icon, .slider-four .mouse-icon {
  border-color: #222;
}

.slider-five .mouse-icon:hover, .slider-four .mouse-icon:hover {
  background-color: #222;
}

.slider-five .mouse-icon:hover .wheel, .slider-four .mouse-icon:hover .wheel {
  background-color: #fff;
}

.slider-five .mouse-icon .wheel, .slider-four .mouse-icon .wheel {
  border-color: #222;
}

/* 20 Home */
.section .section-background {
  background-color: #f9f9f9;
}

.section .section-padding {
  padding-top: 65px;
  padding-bottom: 65px;
}

@media (min-width: 992px) {
  .section .section-padding {
    padding-top: 110px;
    padding-bottom: 110px;
  }
}

.section .section-padding .section-top {
  padding-top: 65px;
}

@media (min-width: 992px) {
  .section .section-padding .section-top {
    padding-top: 110px;
  }
}

.section .section-padding .section-bottom {
  padding-bottom: 65px;
}

@media (min-width: 992px) {
  .section .section-padding .section-bottom {
    padding-bottom: 110px;
  }
}

.section-header {
  position: relative;
  margin: 0 0 45px;
}

@media (min-width: 992px) {
  .section-header {
    margin-bottom: 70px;
  }
}

.section-header p:first-of-type {
  font-family: 'Roboto Slab', serif;
  font-size: 16px;
  margin-top: 14px;
  line-height: 2;
  color: #999;
}

@media (min-width: 992px) {
  .section-header.text-center p:first-of-type {
    padding-left: 25%;
    padding-right: 25%;
  }
  .section-header.text-center p:not(:first-of-type) {
    padding-left: 13%;
    padding-right: 13%;
  }
}

.section-header .section-title {
  font-size: 24px;
  letter-spacing: 2px;
  margin-bottom: 10px;
  text-transform: uppercase;
}

.section-header .section-title.bold {
  font-size: 36px;
  font-weight: 900;
  letter-spacing: 3px;
  text-transform: capitalize;
}

.section-header .section-sub-title {
  font-size: 12px;
  margin-bottom: 9px;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #04befc;
}

.section-header .section-sub-title.fade-style {
  font-family: Georgia, "Times New Roman", Times, serif;
  font-size: 16px;
  font-style: italic;
  text-transform: capitalize;
  font-weight: 500;
  margin-bottom: 4px;
  color: #777;
}

.about-me-1 {
  padding-top: 62px;
  background-color: #f5fafe;
}

.about-me-1 .feature-box {
  padding-top: 62px;
}

@media (max-width: 992px) and (min-width: 768px) {
  .about-me-1 .feature-box {
    padding-top: 0;
  }
  .about-me-1 .feature-box .title {
    font-size: 18px;
    margin-bottom: 15px;
  }
  .about-me-1 .feature-box p:first-of-type {
    font-size: 14px;
  }
  .about-me-1 .feature-box .btn {
    margin-top: 0;
  }
}

@media (min-width: 1200px) {
  .about-me-1 .img-responsive {
    margin-left: -25px;
  }
}

@media (min-width: 992px) {
  .about-me-2 {
    padding-top: 100px;
  }
}

.about-me-2 p {
  font-family: 'Roboto', sans-serif;
  line-height: 2;
}

.about-me-2 p:first-of-type {
  margin-top: 7px;
}

.about-me-2 .progress-bars {
  margin-bottom: 50px;
}

@media (min-width: 768px) {
  .about-me-2 .progress-bars {
    padding-top: 24px;
    margin-bottom: 0;
  }
}

.who-we-are {
  padding-top: 70px;
}

@media (min-width: 460px) {
  .who-we-are {
    padding-top: 150px;
  }
}

.who-we-are .section-header {
  margin-top: 50px;
}

@media (min-width: 768px) {
  .who-we-are .section-header {
    margin-top: 0;
  }
}

.who-we-are .section-header p:first-of-type,
.who-we-are .section-header p:not(:first-of-type) {
  padding-left: 0;
  padding-right: 0;
  margin-bottom: 14px;
}

.who-we-are .section-header p:not(:first-of-type) {
  font-family: 'Roboto', sans-serif;
  line-height: 2;
  color: #555;
}

.who-we-are .features-items {
  padding-bottom: 74px;
  border-bottom: 1px solid #eeeeee;
}

@media (min-width: 768px) {
  .who-we-are .features-items {
    padding-top: 74px;
  }
}

@media (max-width: 767px) {
  .who-we-are .col-sm-3 {
    margin-bottom: 74px;
  }
  .who-we-are .col-sm-3:last-child {
    margin-bottom: 0;
  }
}

@media (min-width: 460px) {
  .images-container {
    position: relative;
  }
  .images-container .img-one {
    position: relative;
    margin-top: 50px;
    border: 10px solid #fff;
    border-left: none;
    border-bottom: none;
  }
  .images-container .img-one:hover {
    z-index: 20;
    border-color: #fff;
  }
  .images-container .img-two {
    position: absolute;
    top: -58px;
    left: 202px;
    border: 10px solid #fff;
  }
}

.home-2 .our-team {
  background-color: #f5fafe;
}

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

.our-team .col-team-member {
  margin-bottom: 30px;
}

@media (max-width: 500px) {
  .our-team .col-team-member {
    width: 100%;
  }
}

.our-team .team-member img {
  display: block;
  width: 100%;
  height: auto;
}

.our-team .team-member .title {
  font-size: 14px;
  letter-spacing: 1px;
  font-weight: 600;
  text-transform: uppercase;
}

.our-team .team-member p {
  font-family: 'Roboto Slab', serif;
  font-size: 12px;
  line-height: 2;
}

.our-team-1 .team-member {
  position: relative;
  overflow: hidden;
}

.our-team-1 .team-member:hover .overlay {
  transform: translateY(0);
}

.our-team-1 .team-member .title {
  margin-bottom: 10px;
  color: #fff;
}

.our-team-1 .team-member p {
  margin-bottom: 7px;
}

.our-team-1 .overlay {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 22px 15px 15px;
  transform: translateY(100%);
  transition: all 0.4s ease-in-out;
  background-color: #04befc;
  color: #fff;
}

.our-team-1 .overlay a {
  margin: 0 6px;
  color: inherit;
}

.our-team-1 .overlay a:hover {
  color: #000;
}

.our-team-2 .team-member .title {
  margin-bottom: 2px;
}

.our-team-2 .team-member p {
  margin-bottom: 13px;
}

.our-team-2 .overlay {
  padding: 36px 15px;
  transition: all 0.2s ease-in-out;
  background-color: #fff;
  border: 1px solid #e8e8e8;
}

.our-team-2 .overlay a {
  display: inline-block;
  width: 22px;
  height: 22px;
  line-height: 22px;
  border-radius: 50%;
  margin: 0 3px;
  font-size: 12px;
  color: inherit;
}

.our-team-2 .overlay a:hover {
  background-color: #04befc;
  color: #fff;
}

@media (max-width: 550px) {
  .our-portfolio .portfolio-post {
    width: 100%;
  }
}

.our-portfolio-1 {
  background-color: #f5fafe;
}

.our-portfolio-2 {
  background-color: #fff;
}

@media (min-width: 1200px) {
  .our-portfolio-2 {
    padding-top: 118px;
  }
}

.our-portfolio-3 {
  position: relative;
}

.our-portfolio-3 .filtering {
  margin-bottom: 53px;
}

.our-portfolio-3 .filtering li {
  font-weight: 700;
  margin: 1px 15px 0;
  letter-spacing: .5px;
}

.our-portfolio-3 .filtering li a {
  cursor: pointer;
}

.our-portfolio-3 .filtering li a.is-checked, .our-portfolio-3 .filtering li a:hover {
  color: #04befc;
}

.our-portfolio-3 .portfolio-items-container .portfolio-post {
  margin-bottom: 30px;
}

.our-portfolio-3 .portfolio-content-wrapper {
  background-color: rgba(4, 190, 252, 0.8);
}

.our-portfolio-3 .portfolio-content .portfolio-title {
  font-size: 14px;
  letter-spacing: 1px;
  margin-bottom: 8px;
}

.our-portfolio-3 .portfolio-content .portfolio-title a {
  color: #fff;
}

.our-portfolio-3 .portfolio-content .portfolio-title a:hover {
  color: #000;
}

.our-portfolio-4 .portfolio-items-container .portfolio-post-item:hover .portfolio-content {
  top: auto;
}

.our-portfolio-4 .portfolio-content {
  top: auto;
  bottom: 27px;
  left: 30px;
  transform: translate(0, 0);
  text-align: left;
}

.portfolio-nav-wrapper {
  position: absolute;
  top: -130px;
  right: 0;
  font-size: 16px;
}

.portfolio-nav-wrapper .sep {
  display: inline-block;
  margin: 0 29px;
}

.counter {
  padding-top: 50px;
  padding-bottom: 30px;
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
  color: #fff;
}

@media (min-width: 768px) {
  .counter {
    padding-top: 45px;
    padding-bottom: 90px;
  }
}

.counter-digit {
  font-family: 'Roboto', sans-serif;
  font-size: 60px;
  font-weight: 300;
  color: inherit;
}

.counter-desc {
  font-family: 'Roboto Slab', serif;
  font-size: 16px;
  font-weight: 500;
  color: inherit;
  margin-bottom: 0;
}

@media (max-width: 300px) {
  .counter .col-xs-6 {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .counter .counter-content {
    margin-bottom: 30px;
  }
}

.counter-1-digit {
  margin-bottom: 28px;
}

.counter-2 .counter-digit {
  margin-bottom: 18px;
}

@media (min-width: 1200px) {
  .our-features .feature-box {
    padding-top: 40px;
  }
}

.our-features-1 .row + .row {
  margin-top: 70px;
  padding-top: 70px;
  border-top: 1px solid #e8e8e8;
}

@media (min-width: 992px) {
  .our-features-1 .row + .row {
    padding-top: 100px;
  }
}

.our-features-2 {
  padding-top: 96px;
}

.our-features-2 .section-header {
  margin-bottom: 84px;
}

.our-features-2 .features-items {
  font-family: 'Roboto', sans-serif;
  padding-top: 65px;
  background-color: #f5fafe;
}

@media (min-width: 992px) {
  .our-features-2 .features-items {
    padding-top: 120px;
    padding-bottom: 40px;
  }
}

.feature-item-1 {
  margin-bottom: 80px;
}

.feature-item-1:last-child {
  margin-bottom: 0;
}

.feature-item-1 .feature-img {
  float: left;
  width: 72px;
  padding-right: 15px;
  padding-top: 5px;
}

.feature-item-1 .feature-content {
  float: left;
  width: calc(100% - 72px);
}

.feature-item-1 .feature-content:hover .line {
  background-color: #04befc;
}

.feature-item-1 .title {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1px;
  margin-bottom: 0;
  text-transform: uppercase;
}

.feature-item-1 .line {
  background-color: #ddd;
}

.feature-item-1 p {
  margin-top: 9px;
  margin-bottom: 0;
  line-height: 1.9;
}

.feature-item-2 {
  text-align: center;
  margin-bottom: 72px;
}

.feature-item-2 .feature-img {
  position: relative;
  width: 72px;
  height: 72px;
  line-height: 68px;
  margin: 0 auto 68px;
  text-align: center;
  border-radius: 50%;
  border: 2px solid #04befc;
}

.feature-item-2 .feature-img:after {
  display: block;
  content: "";
  width: 1px;
  height: 40px;
  margin: auto;
  background-color: #04befc;
}

.feature-item-2 .feature-img img {
  display: inline-block;
}

@media (min-width: 1200px) {
  .feature-item-2 .feature-content {
    padding-left: 50px;
    padding-right: 50px;
  }
}

.feature-item-2 .title {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 2px;
  margin-bottom: 0;
  text-transform: uppercase;
}

.feature-item-2 p {
  margin-top: 16px;
  margin-bottom: 0;
  line-height: 1.9;
  color: #5e5e5e;
}

.feature-item-3 {
  text-align: center;
}

.feature-item-3 .feature-img {
  min-height: 45px;
  margin-bottom: 15px;
  text-align: center;
}

.feature-item-3 .feature-img img {
  display: inline-block;
}

@media (min-width: 1200px) {
  .feature-item-3 .feature-content {
    padding-left: 22px;
    padding-right: 22px;
  }
}

.feature-item-3 .title {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 2px;
  margin-bottom: 18px;
  text-transform: uppercase;
}

.feature-item-3 p {
  line-height: 1.9;
  margin-bottom: 11px;
  color: #5e5e5e;
}

.feature-item-3 .group span {
  display: inline-block;
  width: 3px;
  height: 3px;
  margin: 0 2.4px;
  background: #04befc;
}

.features-list {
  margin: 40px -15px 0;
}

@media (min-width: 992px) {
  .features-list {
    margin-top: 0;
  }
}

@media (min-width: 1400px) {
  .features-list {
    margin-top: 90px;
    margin-left: -33px;
    margin-right: -33px;
  }
}

.features-list > li {
  padding-left: 15px;
  padding-right: 15px;
}

@media (max-width: 480px) {
  .features-list > li + li {
    margin-top: 80px;
  }
}

@media (min-width: 480px) {
  .features-list > li {
    float: left;
    width: 50%;
  }
}

@media (min-width: 1400px) {
  .features-list > li {
    padding-left: 33px;
    padding-right: 33px;
  }
}

@media (min-width: 1400px) {
  .wide-image {
    margin-left: -37px;
  }
  .wide-image img {
    margin-left: 0;
  }
}

.feature-box {
  margin-bottom: 50px;
}

@media (min-width: 992px) {
  .feature-box {
    margin-bottom: 0;
  }
}

.feature-box.text-center ::after {
  margin-left: auto;
  margin-right: auto;
}

.feature-box .section-sub-title {
  font-size: 12px;
  margin-bottom: 9px;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #04befc;
  font-weight: 700;
  line-height: 1.1;
  display: inline-block;
}

.feature-box .section-sub-title.fade-style {
  font-family: Georgia, "Times New Roman", Times, serif;
  font-size: 16px;
  font-style: italic;
  text-transform: capitalize;
  font-weight: 500;
  margin-bottom: 4px;
  color: #777;
}

.feature-box .title {
  margin-bottom: 30px;
}

.feature-box p {
  line-height: 2;
  color: #555;
}

.feature-box .smart-description {
  font-family: 'Roboto Slab', serif;
  font-size: 16px;
  color: #999;
}

.feature-box .smart-description.dark {
  color: #444;
}

.feature-box .smart-description.italic {
  font-size: 18px;
  font-family: Georgia, "Times New Roman", Times, serif;
  word-spacing: 2px;
  font-style: italic;
}

.feature-box div.dark p {
  font-family: 'Roboto', sans-serif;
  line-height: 2;
}

.feature-box .btn {
  margin-top: 9px;
}

.feature-box .btn:hover {
  color: #fff;
  background-color: #0ba6d8;
  border-color: #0ba6d8;
}

.feature-box.two .title {
  font-size: 36px;
  font-weight: 900;
  margin-bottom: 22px;
  word-spacing: 2px;
  text-transform: inherit;
}

.feature-box.two .title:after {
  width: 32px;
  height: 4px;
}

.feature-box.two p {
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
  margin-bottom: 34px;
}

.feature-box.two .smart-description {
  font-size: 18px;
  font-weight: 300;
}

.feature-box.three {
  color: #fff;
}

.feature-box.three .section-sub-title {
  font-size: 13px;
  margin-bottom: 12px;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  font-weight: 700;
  color: #ccc;
}

.feature-box.three .title {
  font-size: 36px;
  letter-spacing: 2.6px;
  margin-bottom: 18px;
  font-weight: 900;
  text-transform: inherit;
  color: inherit;
}

.feature-box.three .title:after {
  width: 30px;
  height: 4px;
}

.feature-box.three p {
  font-family: 'Roboto', sans-serif;
  margin-top: 13px;
  line-height: 1.9;
  letter-spacing: 1px;
  font-size: 16px;
  color: #d5d5d5;
}

.title-underline {
  letter-spacing: 2px;
  word-spacing: 1px;
}

.title-underline:after {
  display: block;
  content: "";
  width: 40px;
  height: 2px;
  margin-top: 20px;
  background-color: #04befc;
}

.title-underline-black:after {
  background-color: #000;
}

.our-video-1 {
  text-align: center;
}

@media (min-width: 768px) {
  .our-video-1 {
    padding-top: 160px;
    padding-bottom: 153px;
  }
}

.our-video-1 .play-video {
  display: block;
  width: 64px;
  height: 64px;
  margin: 0 auto 52px;
  border-radius: 50%;
  background: url(../img/play-btn.png) no-repeat 25px center;
  border: 2px solid #fff;
}

.our-video-1 .play-video:hover {
  background-color: #222;
  border-color: #222;
}

.our-video-1 .title {
  text-transform: uppercase;
  font-size: 24px;
  margin-bottom: 12px;
  letter-spacing: 2px;
  word-spacing: 2px;
  color: #fff;
}

.our-video-1 .author {
  display: block;
  font-size: 11px;
  margin-top: 16px;
  letter-spacing: 1px;
  color: #fff;
}

.our-video-1 p {
  color: #fff;
  text-transform: uppercase;
  margin-bottom: 0;
}

.our-video-2 {
  text-align: center;
}

.our-video-2 .video-popup {
  margin-top: 40px;
}

@media (min-width: 992px) {
  .our-video-2 .video-popup {
    margin-top: 0;
  }
}

.our-video-2 .video-content {
  margin-top: 10px;
}

.our-video-2 .title {
  font-size: 36px;
  font-weight: 900;
  margin-bottom: 22px;
  word-spacing: 2px;
}

.our-video-2 .title-underline:after {
  width: 32px;
  height: 4px;
  margin: 23px auto 0;
}

.our-video-2 p {
  font-family: 'Roboto', sans-serif;
  color: #555;
}

.our-video-2 p:first-of-type {
  font-size: 18px;
  font-weight: 300;
  margin-bottom: 34px;
}

.our-video-2 p ~ p {
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 38px;
}

.video-popup {
  position: relative;
  display: block;
}

.video-popup img {
  width: 100%;
}

.video-popup .fa-play {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  font-size: 22px;
  display: block;
  width: 64px;
  height: 64px;
  padding: 21px 0 0 5px;
  margin: auto;
  border-radius: 50%;
  background-color: #101e36;
  color: #fff;
}

.video-popup .fa-play:hover {
  background-color: #04befc;
}

.our-blog .img-hover {
  display: block;
}

.our-blog .entry-header {
  padding: 3px 0 0 17px;
  margin-bottom: 20px;
  border-left: 2px solid #04befc;
}

.our-blog .post-title {
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px;
}

.our-blog p {
  line-height: 2;
}

.our-blog .entry-footer {
  padding: 14px 11px 0;
  margin-top: 0;
}

.our-blog .read-more {
  float: right;
}

.our-blog .read-more .fa {
  margin-top: 3px;
  font-size: 18px;
}

.our-blog .post-comments .fa {
  margin-right: 5px;
}

@media (max-width: 400px) {
  .our-blog .col-xs-6 {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .our-blog .col-xs-6 {
    margin-bottom: 30px;
  }
}

.our-blog-1 .post-feature-img {
  margin-bottom: 30px;
}

.our-blog-1 .post-title {
  margin-bottom: 7px;
}

.our-blog-1 .post-meta {
  margin-bottom: 0;
  font-size: 13px;
  font-style: italic;
  word-spacing: 1px;
}

.our-blog-1 p {
  color: #000;
}

.our-blog-1 p:last-child {
  margin-bottom: 14px;
}

.our-blog-1 .entry-footer {
  color: #999;
}

.our-blog-1 .entry-footer a {
  color: inherit;
}

.our-blog-1 .entry-footer a:hover {
  color: #04befc;
}

.our-blog-2 .post-feature-img {
  margin-bottom: 11px;
}

.our-blog-2 .post-date {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  display: inline-block;
  margin-bottom: 18px;
  color: #b7b7b7;
}

.our-blog-2 .post-title {
  margin-bottom: 20px;
}

.our-blog-2 p {
  font-family: 'Roboto', sans-serif;
  margin-bottom: 25px;
  color: #555;
}

@media (max-width: 767px) {
  .our-blog-2 p {
    margin-bottom: 0;
  }
}

.our-blog-2 .entry-footer {
  padding-left: 0;
  padding-right: 0;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 700;
  color: #b7b7b7;
}

.our-blog-2 .entry-footer a {
  display: inline-block;
  margin-right: 30px;
  color: inherit;
  cursor: pointer;
}

.our-blog-2 .entry-footer .fa {
  font-size: 16px;
  margin-right: 12px;
  color: #555;
}

.our-blog-2 .entry-footer a {
  color: inherit;
}

.our-blog-2 .entry-footer a:hover {
  color: #04befc;
}

.our-blog-2 .post-author {
  float: none;
}

.our-blog-3 .post-feature-img {
  margin-bottom: 30px;
}

.our-blog-3 .post-title {
  margin-bottom: 20px;
}

.our-blog-3 p {
  font-family: 'Roboto', sans-serif;
  margin-bottom: 25px;
  color: #555;
}

.subscribe {
  padding-top: 35px;
  padding-bottom: 65px;
  text-align: center;
}

@media (min-width: 992px) {
  .subscribe {
    padding-top: 65px;
    padding-bottom: 95px;
  }
}

@media (min-width: 1200px) {
  .subscribe {
    padding-top: 125px;
    padding-bottom: 160px;
  }
}

.subscribe .title {
  text-transform: uppercase;
  font-size: 24px;
  margin-bottom: 45px;
  letter-spacing: 2px;
  word-spacing: 2px;
  color: #fff;
}

.subscribe .subscribe-form {
  margin: 0 auto 15px;
  max-width: 820px;
}

@media (min-width: 1200px) {
  .subscribe .subscribe-form .col-lg-3 {
    width: 28.5%;
  }
  .subscribe .subscribe-form .col-lg-6 {
    width: 43%;
  }
}

.subscribe p {
  color: #fff;
  margin-bottom: 7px;
}

.subscribe p:last-child {
  margin-bottom: 0;
}

.subscribe .form-group .fa-user,
.subscribe .form-group .fa-envelope-o {
  padding-right: 10px;
  border-right: 2px solid #d3d3d3;
}

.subscribe .form-group input[type="text"],
.subscribe .form-group input[type="email"],
.subscribe .form-group input[type="url"] {
  padding-left: 50px;
  border-color: #fff;
  text-align: left;
}

.form-group {
  position: relative;
  width: 100%;
}

.form-group input[type="text"]:focus + .fa,
.form-group input[type="email"]:focus + .fa,
.form-group textarea:focus + .fa {
  color: #04befc;
}

.form-group:hover .fa-paper-plane-o,
.form-group:hover .fa-circle-o-notch {
  color: #fff;
}

.form-group .fa {
  position: absolute;
}

.form-group .fa-user,
.form-group .fa-envelope-o,
.form-group .fa-comments-o {
  top: 13px;
  left: 15px;
  color: #555;
}

.form-group .fa-paper-plane-o {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 50px;
  font-size: 16px;
  text-align: center;
  padding: 11px 5px;
  background-color: #0ba6d8;
  color: #f5fcfd;
}

.form-group .fa-circle-o-notch {
  right: 10px;
  top: 10px;
  font-size: 21px;
  z-index: 25;
  color: #fff;
}

.form-group .fa-circle-o-notch:hover {
  color: #fff;
}

.form-group input[type="text"],
.form-group input[type="email"],
.form-group input[type="url"],
.form-group textarea {
  padding: 7px 18px;
  padding-left: 50px;
  text-align: left;
}

.form-group input[type="submit"] {
  width: 100%;
  padding: 10px 83px 8px 46px;
  letter-spacing: 1.7px;
}

.form-group input[type="submit"]:hover {
  background-color: #0ba6d8;
  border-color: #0ba6d8;
}

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

@media (min-width: 768px) {
  .our-clients.no-border .row + .row {
    border-top: none;
  }
}

@media (min-width: 768px) {
  .our-clients.no-border [class^="col-"] + [class^="col-"] {
    border-left: none;
  }
}

@media (min-width: 768px) {
  .our-clients .row + .row {
    border-top: 1px solid #f3f3f3;
  }
}

@media (min-width: 768px) {
  .our-clients [class^="col-"] + [class^="col-"] {
    border-left: 1px solid #f3f3f3;
  }
}

@media (max-width: 380px) {
  .our-clients .col-xs-6 {
    width: 100%;
  }
}

.our-clients .single-client {
  padding: 30px 20px 0;
  min-height: 105px;
}

.our-clients-2 {
  background-color: #eaeef2;
}

.our-clients-2 .section-header {
  text-align: left;
}

.our-clients-2 .section-header.text-center {
  text-align: center;
}

.our-clients-2 .row + .row {
  border-color: #dcdcdc;
}

.our-clients-2 [class^="col-"] + [class^="col-"] {
  border-color: #dcdcdc;
}

.our-clients-3 {
  padding-top: 50px;
  padding-bottom: 50px;
  border-bottom: 1px solid #e8e8e8;
}

.our-contact .form-group {
  margin-bottom: 30px;
}

.our-contact .form-group:last-of-type {
  margin-bottom: 0;
}

.our-contact .form-group input[type="text"],
.our-contact .form-group input[type="email"],
.our-contact .form-group input[type="url"],
.our-contact .form-group textarea {
  padding-top: 9px;
  padding-bottom: 9px;
  padding-left: 40px;
}

.our-contact .form-group .fa-user,
.our-contact .form-group .fa-envelope-o,
.our-contact .form-group .fa-comments-o {
  top: 14px;
  left: 20px;
}

.our-contact .submit-btn-group {
  max-width: 224px;
}

.our-contact input[type="submit"] {
  padding: 10px 80px 8px 32px;
}

.our-contact textarea {
  display: block;
  height: 162px;
}

.our-contact-1 {
  background-color: #f6f9fe;
}

.contact-details {
  margin-top: 50px;
  font-family: 'Roboto', sans-serif;
  padding-left: 32px;
}

@media (min-width: 768px) {
  .contact-details {
    margin-top: 0;
  }
}

.contact-details .title {
  letter-spacing: 2px;
  margin-bottom: 33px;
}

.contact-details-list {
  margin-bottom: 28px;
}

.contact-details li {
  position: relative;
  padding-left: 42px;
  margin-bottom: 15px;
}

.contact-details li .title {
  color: #5d5d5d;
}

.contact-details li > .fa {
  position: absolute;
  top: 50%;
  left: 4px;
  width: 40px;
  font-size: 18px;
  transform: translateY(-50%);
  color: #222;
}

.contact-details li p {
  line-height: 1.9;
  margin-bottom: 10px;
}

.contact-details .follow-us a {
  display: inline-block;
  width: 32px;
  height: 32px;
  margin-top: 3px;
  line-height: 32px;
  border-radius: 50%;
  text-align: center;
  font-size: 12px;
  border: 1px solid #e1e2e2;
  color: #999896;
}

.contact-details .follow-us a:hover {
  background-color: #04befc;
  border-color: #04befc;
  color: #fff;
}

.contact-details .follow-us a + a {
  margin-left: 8px;
}

.testimonial {
  background-repeat: repeat-x;
  background-position: center top;
  background-size: cover;
  text-align: center;
}

.testimonial p:last-child {
  margin-bottom: 0;
}

.testimonial-1 {
  padding-top: 54px;
  padding-bottom: 60px;
}

.testimonial-1 blockquote {
  font-family: 'Roboto Slab', serif;
  border: none;
  margin-bottom: 0;
}

.testimonial-1 p {
  font-size: 20px;
  margin-bottom: 12px;
  letter-spacing: 2px;
  word-spacing: 2px;
  color: #fff;
}

.testimonial-1 .author {
  display: block;
  font-size: 11px;
  margin-top: 16px;
  letter-spacing: 1px;
  color: #fff;
}

.testimonial-2 {
  padding-top: 35px;
  padding-bottom: 60px;
  color: #fff;
}

@media (min-width: 1200px) {
  .testimonial-2 .col-md-8 {
    padding: 0;
  }
}

.testimonial-2 .quote-icon {
  display: block;
  width: 55px;
  height: 55px;
  margin: 0 auto 38px;
  border-radius: 50%;
  border: 1px solid #626d80;
  background: url("../img/quote-icon.png") no-repeat center center;
}

.testimonial-2 p {
  font-family: 'Roboto', sans-serif;
  margin-bottom: 12px;
}

.testimonial-2 .description p {
  font-style: italic;
  font-size: 16px;
  line-height: 1.8;
}

.testimonial-2 .author-info {
  margin-top: 45px;
}

.testimonial-2 .author-info h5 {
  color: #fff;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 2px;
}

.testimonial-2 .author-info h5 span {
  color: #04befc;
}

.testimonial-2 .author-info p {
  font-size: 12px;
  margin-top: 3px;
}

.testimonial-2 .author-info img {
  width: 82px !important;
  height: 82px;
  border-radius: 50%;
  margin: 0 auto 20px;
}

.testimonial-2 .owl-theme .owl-nav.disabled + .owl-dots {
  margin-top: 26px;
}

.testimonial-2 .owl-theme .owl-dots .owl-dot span {
  width: 8px;
  height: 8px;
  margin-left: 6px;
  margin-right: 6px;
}

.testimonial-2 .owl-theme .owl-dots .owl-dot.active span,
.testimonial-2 .owl-theme .owl-dots .owl-dot:hover span {
  background: #04befc;
}

.our-services .row:last-child .services-item:last-child {
  margin-bottom: 0;
}

.our-services-carousel {
  text-align: center;
  margin-bottom: 70px;
}

.our-services-carousel .service-item {
  position: relative;
  padding: 47px 34px 25px;
  border: 2px solid transparent;
  border-radius: 10px;
  margin-bottom: 60px;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.our-services-carousel .service-item:hover {
  border-color: #f7f7f7;
}

.our-services-carousel .title {
  font-size: 14px;
  letter-spacing: 2px;
  font-weight: 600;
  text-transform: uppercase;
  margin-bottom: 17px;
}

.our-services-carousel p {
  line-height: 2;
  margin-bottom: 0;
  color: #555;
}

.our-services-carousel .btn {
  border-radius: 30px;
  padding: 7px 15px 5px;
  font-size: 10px;
  margin-bottom: -72px;
  color: #04befc;
  border-color: #04befc;
  background-color: #fff;
}

.our-services-carousel .btn:hover {
  color: #fff;
  background-color: #04befc;
}

.our-services-carousel.owl-carousel .owl-nav.disabled + .owl-dots {
  margin-top: 15px;
}

.our-services-carousel.owl-carousel .owl-dots .owl-dot {
  vertical-align: middle;
}

.our-services-carousel.owl-carousel .owl-dots .owl-dot span {
  width: 8px;
  height: 8px;
  margin-left: 5px;
  margin-right: 5px;
  background: #ddd;
}

.our-services-carousel.owl-carousel .owl-dots .owl-dot.active span,
.our-services-carousel.owl-carousel .owl-dots .owl-dot:hover span {
  background: #fff;
  border: 2px solid #04befc;
}

.our-services-carousel.owl-carousel .owl-dots .owl-dot.active span {
  width: 10px;
  height: 10px;
}

.our-services-2 {
  background: url("../img/home/services-two-bg.jpg") no-repeat center top;
  background-size: cover;
  color: #fff;
}

.our-services-2 .section-header {
  margin-bottom: 120px;
}

.our-services-2 .section-sub-title,
.our-services-2 .section-title,
.our-services-2 .feature-item-1 .title {
  color: inherit;
}

.our-services-2 .line-two > span:before,
.our-services-2 .line-two > span:after,
.our-services-2 .line-two:before,
.our-services-2 .line-two:after {
  background-color: #fff;
}

@media (max-width: 559px) {
  .our-services-2 .right-side {
    margin-bottom: 80px;
  }
  .our-services-2 .col-xs-6 {
    width: 100%;
  }
  .our-services-2 .col-xs-6 .feature-item-1 .feature-content {
    float: right;
  }
}

@media (min-width: 560px) {
  .our-services-2 .right-side {
    text-align: right;
  }
  .our-services-2 .right-side .feature-item-1 .feature-img {
    float: right;
  }
  .our-services-2 .left-side .feature-item .feature-content {
    float: right;
  }
}

@media (min-width: 992px) {
  .our-services-2 .right-side {
    width: 36%;
  }
  .our-services-2 .image-column {
    width: 28%;
  }
  .our-services-2 .left-side {
    width: 36%;
  }
}

.our-services-2 .feature-item {
  margin-bottom: 88px;
}

.our-services-2 .feature-item:last-of-type {
  margin-bottom: 0;
}

.our-services-2 .feature-item-1 .feature-img {
  position: relative;
  width: 72px;
  height: 72px;
  line-height: 68px;
  padding: 0;
  text-align: center;
  border-radius: 50%;
  border: 2px solid #fff;
}

.our-services-2 .feature-item-1 .feature-img img {
  display: inline-block;
}

.our-services-2 .feature-item .feature-content {
  width: calc(100% - 95px);
}

.our-services-2 .feature-item p {
  font-family: 'Roboto', sans-serif;
  margin-top: 20px;
  margin-bottom: 0;
  line-height: 1.9;
  font-size: 13px;
}

.services-item {
  overflow: hidden;
  margin-bottom: 92px;
}

.services-item.services-3 {
  margin-bottom: 64px;
}

.services-item:hover .line {
  background-color: #04befc;
}

.services-item .services-img {
  float: left;
  width: 72px;
  padding-right: 15px;
  padding-top: 5px;
}

.services-item .services-content {
  float: left;
  width: calc(100% - 72px);
}

.services-item .title {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
  margin-bottom: 0;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.services-item .line {
  background-color: #ddd;
}

.services-item p {
  margin-top: 9px;
  margin-bottom: 0;
  line-height: 1.9;
  color: #555;
}

@media (min-width: 1200px) {
  .intro-1 .section-header {
    margin-bottom: 30px;
    margin-top: 24px;
  }
}

.intro-1 .section-header p {
  padding-left: 0;
  padding-right: 0;
  margin-top: 18px;
}

.intro-1 .row + .row {
  margin-top: 65px;
}

@media (min-width: 1200px) {
  .intro-1 .row + .row {
    margin-top: 77px;
    padding-top: 110px;
  }
}

@media (max-width: 767px) {
  .intro-1 .services-item-col {
    margin-bottom: 30px;
  }
  .intro-1 .services-item-col:last-child {
    margin-bottom: 0;
  }
}

.intro-2 {
  background-color: #fff;
}

.intro-2 .row {
  margin-left: 0;
  margin-right: 0;
}

.intro-features-wrap {
  padding: 50px 25px 30px;
}

@media (min-width: 1200px) {
  .intro-features-wrap {
    padding: 60px 70px 0 90px;
    width: 37%;
  }
}

.intro-features {
  margin-bottom: 15px;
}

@media (min-width: 1366px) {
  .intro-features {
    margin-bottom: 50px;
  }
}

.intro-features:last-child {
  margin-bottom: 0;
}

.intro-features .icon-wrap {
  float: left;
  width: 70px;
  height: 70px;
  line-height: 70px;
  text-align: center;
  margin-right: 24px;
  border-radius: 50%;
  font-size: 32px;
  background-color: #04befc;
  color: #fff;
}

.intro-features .content {
  display: table;
  padding: 11px 0;
}

.intro-features .content .title {
  font-size: 14px;
  letter-spacing: 1.4px;
  margin-bottom: 18px;
  text-transform: uppercase;
}

.intro-features .content p {
  font-family: 'Roboto', sans-serif;
  margin-bottom: 0;
  line-height: 1.9;
  letter-spacing: .5px;
  font-size: 16px;
}

.intro-header-wrap {
  padding: 65px 30px;
  background-repeat: repeat-x;
  background-position: center top;
  background-size: cover;
  background-image: url(../images/home/intro-bg-2.jpg);
  color: #fff;
}

@media (min-width: 1200px) {
  .intro-header-wrap {
    padding: 112px 100px 116px 137px;
    width: 63%;
  }
}

.intro-header-wrap .intro-sub-title {
  font-size: 13px;
  margin-bottom: 12px;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  font-weight: 700;
  color: #ccc;
}

.intro-header-wrap .intro-title {
  font-size: 36px;
  letter-spacing: 2.6px;
  margin-bottom: 10px;
  font-weight: 900;
  color: inherit;
}

.intro-header-wrap .line {
  width: 30px;
  height: 4px;
}

.intro-header-wrap p {
  font-family: 'Roboto', sans-serif;
  margin-top: 13px;
  line-height: 1.9;
  letter-spacing: 1px;
  font-size: 16px;
  color: #d5d5d5;
}

.img-hover {
  position: relative;
  display: inline-block;
  background-color: #04befc;
}

.img-hover:before {
  font-family: "FontAwesome";
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f065";
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 36px;
  height: 36px;
  opacity: 0;
  line-height: 36px;
  border-radius: 50%;
  text-align: center;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  transform: rotate(45deg);
  background-color: #fff;
  color: #000;
}

.img-hover img {
  -webkit-transition: all 0.1s ease-in-out;
  -o-transition: all 0.1s ease-in-out;
  transition: all 0.1s ease-in-out;
}

.img-hover:hover:before {
  transform: rotate(0deg);
  opacity: 1;
}

.img-hover:hover img {
  opacity: .15;
}

@media (min-width: 992px) {
  .our-skills {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

.our-skills .feature-box p:not(:first-of-type) {
  font-family: 'Roboto', sans-serif;
  color: #555;
  margin-bottom: 28px;
}

.progress-bars {
  padding-top: 5px;
}

.progress {
  font-family: 'Roboto Slab', serif;
  margin-bottom: 28px;
}

.progress:last-child {
  margin-bottom: 0;
}

.progress .title {
  font-weight: 500;
}

.progress-bar {
  position: relative;
  height: 3px;
  background-color: #e6edf3;
}

.progress-bar > span {
  display: block;
}

.progress .progressed {
  position: absolute;
  left: 0;
  top: -30px;
  transform: translateX(-100%);
  color: #04befc;
}

.progress .completed {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  height: 3px;
  background-color: #04befc;
}

.why-chose-us {
  background-color: #f9f9f9;
}

@media (min-width: 768px) {
  .why-chose-us .accordion {
    margin-bottom: 0;
  }
}

/* 21 Home 3 */
.home-3 .section-title {
  margin-bottom: 12px;
}

.home-3 .section-header p:first-of-type {
  margin-top: 20px;
}

.home-3 .section-header {
  margin-bottom: 60px;
}

/* 22 Home 4 */
.home-4 .section-header {
  margin-bottom: 55px;
}

.home-4 .our-portfolio-3 {
  background-color: #f5f5f5;
}

.home-4 .our-clients [class^="col-"] + [class^="col-"] {
  border-color: transparent;
}

.home-4 .our-services-3 .section-header {
  margin-bottom: 67px;
}

/* 23 Blog */
.post-item {
  padding-bottom: 50px;
  margin-bottom: 50px;
  border-bottom: 1px solid #ebebeb;
}

.post-thumbnail {
  position: relative;
  margin-bottom: 32px;
}

.post-thumbnail img {
  -webkit-backface-visibility: hidden;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

.post-thumbnail a:hover img,
.post-thumbnail a:focus img {
  opacity: 0.95;
}

span.sticky {
  float: left;
  padding: 0px 10px;
  background: #000;
  color: #fff;
  vertical-align: middle;
  margin-top: 8px;
  font-size: 1.8rem;
}

span.sticky i {
  transform: rotate(-26deg);
}

.post-cat {
  float: left;
  padding: 6px 16px 4px;
  margin-top: 8px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  background-color: #04befc;
}

.post-cat > a {
  color: #fff;
}

.post-cat > a:hover {
  color: #222;
}

.post-author {
  float: right;
}

.post-author .author-info-wrap {
  float: left;
}

.post-author .author-title {
  font-size: 14px;
  font-weight: 900;
  margin-top: 7px;
  margin-bottom: 0;
}

.post-author .author-image {
  float: right;
  width: 48px;
  height: 48px;
  margin-left: 15px;
  border-radius: 50%;
}

.posted-on {
  font-size: 13px;
}

.entry-meta {
  margin-bottom: 24px;
}

.entry-title {
  font-size: 24px;
  font-weight: 900;
  letter-spacing: 3px;
  word-spacing: -3px;
}

@media (min-width: 768px) {
  .entry-title {
    font-size: 36px;
    font-weight: 900;
  }
}

.entry-summary {
  line-height: 2.1;
}

.single-post-link {
  margin: 0 17px 15px 0;
}

@media (min-width: 768px) {
  .single-post-link {
    margin-bottom: 0;
  }
}

.single-post-link .fa {
  margin-left: 6px;
}

.share-this-post {
  display: inline-block;
  vertical-align: middle;
  font-size: 16px;
  color: #222;
}

.share-this-post > a {
  margin-left: 15px;
  color: #777;
}

.share-this-post > a:hover {
  color: #04befc;
}

/* Post Formats */
.format-video .post-thumbnail a:before {
  content: "\f04b";
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  width: 70px;
  height: 70px;
  top: 50%;
  left: 50%;
  z-index: 25;
  margin: -35px 0 0 -35px;
  text-align: center;
  border-radius: 50%;
  font-size: 21px;
  padding: 25px 0 0 7px;
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
}

.format-video .post-thumbnail a:hover:before {
  background: #000;
}

.format-quote blockquote {
  position: relative;
  font-size: 16px;
  border: none;
  padding: 30px;
  margin-bottom: 0;
  text-align: center;
  line-height: 1.6;
  background: url("../img/quote.png") #04befc no-repeat 99% 9px;
  color: #fff;
}

@media (min-width: 768px) {
  .format-quote blockquote {
    font-size: 26px;
    padding: 60px 85px 56px;
  }
}

/* 24 Single */
.single-post .post-item {
  padding-bottom: 35px;
}

.single-post .entry-meta {
  margin-bottom: 34px;
}

.entry-content blockquote {
  font-family: Georgia, "Times New Roman", Times, serif;
  padding: 4px 20px 4px 70px;
  font-size: 16px;
  font-style: italic;
  word-spacing: 2px;
  background: url(../img/quote-small.png) no-repeat 27px 7px;
  border-left: none;
  color: #555;
}

@media (min-width: 768px) {
  .entry-content blockquote {
    padding-left: 70px;
    padding-right: 70px;
    font-size: 18px;
  }
}

.single .entry-content {
  line-height: 2.2;
}

.entry-footer {
  padding-top: 30px;
  margin-top: 20px;
  border-top: 1px solid #ebebeb;
}

.entry-footer span {
  color: #222;
}

@media (min-width: 1200px) {
  .entry-tags {
    float: left;
  }
}

.entry-tags span {
  display: inline-block;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 900;
  margin-right: 4px;
}

.entry-tags a {
  display: inline-block;
  padding: 7px 15px;
  margin-top: 5px;
  margin-left: 5px;
  font-size: 14px !important;
  border: 1px solid #ebebeb;
  font-weight: 600;
  background-color: #fff;
  color: #777;
}

.entry-tags a:hover {
  background: #04befc;
  border-color: #04befc;
  color: #fff;
}

.entry-share-this {
  display: block;
  vertical-align: middle;
  margin-top: 15px;
  font-size: 15px;
  color: #222;
}

@media (min-width: 1200px) {
  .entry-share-this {
    float: right;
  }
}

.entry-share-this a {
  margin-left: 17px;
  color: #777;
}

.entry-share-this a:hover {
  color: #04befc;
}

.about-bio-wrap {
  padding-bottom: 50px;
  margin-bottom: 50px;
  border-bottom: 1px solid #ebebeb;
  text-align: center;
}

@media (min-width: 550px) {
  .about-bio-wrap {
    text-align: left;
  }
}

.about-bio-wrap .avatar {
  margin-bottom: 15px;
}

@media (min-width: 550px) {
  .about-bio-wrap .avatar {
    float: left;
    margin-bottom: 0;
    margin-right: 22px;
  }
}

.about-bio-wrap .author-bio {
  display: table;
}

.about-bio-wrap .author-name {
  margin-top: 14px;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

.about-bio-wrap p {
  line-height: 2;
  margin-bottom: 13px;
}

.about-bio-wrap .social-profiles {
  margin-top: 8px;
}

@media (min-width: 550px) {
  .about-bio-wrap .social-profiles {
    float: right;
  }
}

.about-bio-wrap .social-profiles a {
  margin-right: 14px;
}

.about-bio-wrap .social-profiles a:last-child {
  margin-right: 0;
}

.another-post {
  margin-bottom: 24px;
}

.another-post .img-hover {
  display: block;
}

@media (max-width: 500px) {
  .another-post .col-xs-6 {
    width: 100%;
  }
}

.another-post .post-feature-img {
  margin-bottom: 18px;
}

.another-post .post-feature-img img {
  width: 100%;
}

.another-post .post-title {
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 8px;
}

@media (min-width: 1200px) {
  .another-post .post-title {
    text-align: center;
  }
}

.another-post .post-meta {
  font-size: 13px;
  font-style: italic;
  word-spacing: 1px;
  text-align: center;
}

/*--------------------------------------------------------------
/* Comments
--------------------------------------------------------------*/
.comments-title {
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 1.6px;
  text-align: center;
  padding-top: 18px;
  padding-bottom: 18px;
  margin-bottom: 50px;
  border-top: 1px solid #ebebeb;
  border-bottom: 1px solid #ebebeb;
}

.comment-list,
.comment-list .children {
  list-style: none;
  padding: 0;
  margin: 0;
}

.comment-list {
  padding-top: 20px;
}

.comment-list .avatar {
  float: left;
  margin-right: 16px;
  height: 54px;
  width: 54px;
  border-radius: 50%;
}

.comment-list .fn {
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 2px;
  padding-top: 9px;
  padding-bottom: 5px;
  margin-bottom: 0;
}

.comment-list .reply {
  float: right;
  margin-top: 20px;
  font-size: 11px;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 1px;
}

.comment-author {
  float: left;
}

.comment-meta {
  overflow: hidden;
  margin-bottom: 15px;
}

.comment-metadata {
  font-size: 13px;
  color: #a8a8a8;
}

.comment-wrapper {
  display: table;
}

.comment-content {
  line-height: 2;
}

.comment-body {
  border-bottom: 1px solid #ececec;
  padding-bottom: 30px;
  margin-bottom: 33px;
}

@media (min-width: 768px) {
  .comment.depth-2 .comment-body {
    margin-left: 70px;
  }
  .comment.depth-3 .comment-body {
    margin-left: 140px;
  }
  .comment.depth-4 .comment-body {
    margin-left: 210px;
  }
  .comment.depth-5 .comment-body {
    margin-left: 280px;
  }
}

/*--------------------------------------------------------------
/* Comment Respond
--------------------------------------------------------------*/
.comment-form input[type="text"]:focus,
.comment-form input[type="email"]:focus,
.comment-form input[type="url"]:focus,
.comment-form textarea:focus {
  border-color: #04befc;
}

.comment-form input[type="submit"] {
  padding: 14px 55px;
}

.comment-form p {
  padding-bottom: 14px;
}

.comment-reply-title {
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 1.6px;
  padding-top: 18px;
  margin-bottom: 28px;
}

.comment-reply-title a {
  font-size: 1.2rem;
  margin-left: 0.5rem;
}

/* 25 About Us */
.our-features-2 {
  padding-top: 115px;
}

.our-features-2 .section-header {
  margin-bottom: 55px;
}

.our-features-2 .features-items {
  padding-top: 96px;
  padding-bottom: 24px;
}

/* 26 Services */
/* 27 Portfolio */
@media (max-width: 480px) {
  .portfolio-page .col-xs-6 {
    width: 100%;
  }
}

.portfolio-page .filtering {
  padding: 21px 0;
  background-color: #131a1e;
}

.portfolio-page .filtering .filter-group > li {
  margin: 0 20px 0;
  letter-spacing: 2px;
}

.portfolio-page .filtering .filter-group a {
  color: #adbac1;
  cursor: pointer;
}

.portfolio-page .filtering .filter-group a.is-checked, .portfolio-page .filtering .filter-group a:hover {
  color: #fff;
}

.filtering {
  text-align: center;
}

.filtering .filter-group {
  display: inline;
  padding: 0;
  margin: 0;
}

.filtering .filter-group > li {
  display: inline-block;
  font-size: 12px;
  text-transform: uppercase;
}

.portfolio-items-container.no-padding {
  margin-left: 0;
  margin-right: 0;
}

.portfolio-items-container.no-padding .portfolio-post {
  padding-left: 0;
  padding-right: 0;
}

.portfolio-items-container .portfolio-post-item {
  position: relative;
  overflow: hidden;
}

.portfolio-items-container .portfolio-post-item:hover .portfolio-content-wrapper {
  opacity: 1;
}

.portfolio-items-container .portfolio-post-item:hover .portfolio-content {
  opacity: 1;
  top: 50%;
}

.portfolio-items-container img {
  display: block;
  width: 100%;
  height: auto;
}

.portfolio-content-wrapper {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  opacity: 0;
  -webkit-transition: all 0.3s ease-in;
  -o-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
  background-color: rgba(47, 65, 75, 0.8);
}

.portfolio-content {
  position: absolute;
  top: 40%;
  left: 50%;
  opacity: 0;
  width: 100%;
  -webkit-transition: all 0.3s ease-in;
  -o-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
  transform: translate(-50%, -50%);
}

.portfolio-content .portfolio-title {
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin: 0;
}

.portfolio-content .portfolio-title a {
  color: #fff;
}

.portfolio-content .portfolio-title a:hover {
  color: #04befc;
}

.portfolio-content .portfolio-cat {
  font-size: 13px;
  color: #fff;
}

/* 28 Portfolio Single */
.portfolio-single-post .post-thumbnail {
  margin-bottom: 44px;
}

.portfolio-single-post .portfolio-post-title {
  letter-spacing: 4px;
  word-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 24px;
}

@media (min-width: 768px) {
  .portfolio-single-post .portfolio-post-title {
    font-size: 50px;
    font-weight: 900;
  }
}

.portfolio-single-post .entry-content p {
  margin-bottom: 30px;
}

.portfolio-single-post .project-meta {
  padding: 0;
  margin: 4px 0 34px;
  list-style: none;
  text-transform: uppercase;
}

.portfolio-single-post .project-meta .title {
  font-size: 12px;
  margin-bottom: 12px;
  letter-spacing: 2px;
}

.portfolio-single-post .project-meta > li {
  margin-bottom: 11px;
}

.portfolio-single-post .project-meta > li span,
.portfolio-single-post .project-meta > li a {
  font-size: 10px;
  font-weight: 600;
  color: #04befc;
}

.portfolio-single-post .project-meta > li a:hover {
  color: #222;
}

.portfolio-single-post .btn {
  padding: 10px 35px 8px;
}

.project-slider {
  margin-bottom: 40px;
}

.project-slider .flex-direction-nav a {
  border-radius: 0;
  width: 44px;
  color: #222;
  background-color: #fff;
}

.project-slider .flex-direction-nav a:hover {
  background-color: #04befc;
  color: #fff;
}

.post-navigation {
  margin: 50px 0 0;
}

@media (min-width: 1200px) {
  .post-navigation {
    margin-top: 10px;
  }
}

.post-navigation a {
  padding: 7px 16px;
  border: 1px solid #ebebeb;
}

.post-navigation a:hover {
  background-color: #04befc;
  border-color: #04befc;
  color: #fff;
}

.post-navigation .fa {
  font-size: 24px;
}

/* 29 Contact */
.contact-page {
  font-family: 'Roboto', sans-serif;
}

.contact-page .section-title {
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 36px;
}

.contact-page .section-description {
  font-size: 16px;
  line-height: 2;
  font-weight: 300;
  color: #222;
}

.contact-form {
  padding-top: 8px;
}

.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="url"],
.contact-form textarea {
  padding-top: 12px;
  padding-bottom: 12px;
  min-height: 50px;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.contact-form input[type="text"]:focus:not(.error),
.contact-form input[type="email"]:focus:not(.error),
.contact-form input[type="url"]:focus:not(.error),
.contact-form textarea:focus:not(.error) {
  border-color: #04befc;
}

.contact-form input[type="submit"] {
  padding: 15px 34px 13px;
}

.contact-form p {
  margin-bottom: 30px;
}

.contacts {
  margin-top: 28px;
  margin-bottom: 50px;
}

@media (min-width: 992px) {
  .contacts {
    margin-bottom: 0;
  }
}

.contacts li {
  overflow: hidden;
  padding-bottom: 11px;
  margin-bottom: 11px;
  border-bottom: 1px solid #ededed;
}

.contacts li:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: none;
}

.contacts .title {
  display: inline-block;
  float: left;
  margin-top: 6px;
  width: 100%;
}

@media (min-width: 400px) {
  .contacts .title {
    width: 118px;
  }
}

.contacts span {
  color: #222;
}

.contacts .content {
  display: table;
}

.contacts a[href^="mailto"] {
  color: #04befc;
}

.contacts a[href^="mailto"]:hover {
  color: #222;
}

.contacts p,
.contacts address {
  margin-bottom: 0;
  line-height: 2.5;
}

.follow-us a {
  margin-top: 8px;
  display: inline-block;
}

.follow-us a + a {
  margin-left: 12px;
}

#google-map {
  height: 250px;
}

@media (min-width: 768px) {
  #google-map {
    height: 350px;
  }
}

@media (min-width: 1200px) {
  #google-map {
    height: 500px;
  }
}

/* 30 404 Page */
.wrapper-404 {
  text-align: center;
}

.wrapper-404 > h1 {
  margin-bottom: 0;
  font-size: 100px;
  font-weight: 900;
  margin-top: -3rem;
}

.wrapper-404 > h1 span {
  color: #04befc;
}

.wrapper-404 p {
  font-size: 16px;
  margin-bottom: 1rem;
}

.wrapper-404 p + p {
  margin-bottom: 2rem;
}

@media (min-width: 768px) {
  .wrapper-404 > h1 {
    font-size: 230px;
  }
}

/* 31 Shortcodes */
/* Accordion */
.accordion {
  line-height: 1.71429;
}

.accordion .accordion-sections {
  border: 1px solid #e8e8e8;
  background-color: #fff;
  margin-bottom: 10px;
}

.accordion .accordion-sections:last-of-type {
  margin-bottom: 0;
}

.accordion .accordion-sections.opened .fa-caret {
  color: #04befc;
}

.accordion .accordion-sections.opened .fa-caret:before {
  content: "\f0d7";
}

.accordion .accordion-header {
  padding: 16px 18px 14px 30px;
  cursor: pointer;
}

.accordion .accordion-header:hover {
  background-color: #f7f7f7;
}

.accordion .title {
  display: inline-block;
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 0;
}

.accordion .fa + .title {
  margin-left: 27px;
}

.accordion .fa {
  display: inline-block;
  font-size: 18px;
  color: #222;
}

.accordion .fa-caret {
  float: right;
}

.accordion .accordion-content {
  font-family: 'Roboto', sans-serif;
  display: none;
  padding: 12px 30px 20px;
  color: #555;
}

.accordion .accordion-content p:last-child {
  margin-bottom: 0;
}

.accordion-two .accordion-header, .accordion-three .accordion-header {
  padding: 8px 17px 6px 20px;
  background-color: #fafafa;
  color: #999;
}

.accordion-two .accordion-header .title, .accordion-three .accordion-header .title {
  color: inherit;
  letter-spacing: 1.45px;
}

.accordion-two .fa, .accordion-three .fa {
  margin-top: 2px;
}

.accordion-two .fa-caret-up:before, .accordion-three .fa-caret-up:before {
  content: "\f067";
  color: #999;
  font-size: 13px;
}

.accordion-two .accordion-sections.opened .accordion-header, .accordion-three .accordion-sections.opened .accordion-header {
  background-color: #fff;
  color: #222;
}

.accordion-two .accordion-sections.opened .fa-caret:before, .accordion-three .accordion-sections.opened .fa-caret:before {
  content: "\f068";
  color: #222;
}

.accordion-two .accordion-content, .accordion-three .accordion-content {
  color: #555;
  border-top: 1px solid #e8e8e8;
  padding: 16px 20px 20px;
  line-height: 2;
}

.accordion-three .accordion-sections {
  border: none;
  background-color: transparent;
}

.accordion-three .accordion-header {
  position: relative;
  padding: 13px 60px 11px 25px;
  border: 1px solid #e7e7e7;
  background-color: #fff;
}

.accordion-three .fa {
  padding-top: 14px;
  margin-top: 0;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 50px;
  border-left: 1px solid #e7e7e7;
  text-align: center;
}

.accordion-three .accordion-sections.opened .accordion-header {
  color: #04befc;
}

.accordion-three .accordion-sections.opened .fa-caret:before {
  content: "\f00d";
  color: #04befc;
}

.accordion-three .accordion-content {
  border-top: none;
  padding: 10px 5px 20px;
}

/* Tabs */
.tabs-nav-list {
  margin: 0;
  padding: 0;
}

.tabs-nav-list li {
  border-top: 2px solid transparent;
  padding: 13px 0;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  width: 1%;
  display: table-cell;
  text-align: center;
  background-color: #f0f0f0;
}

.tabs-nav-list li.current {
  background-color: #f9f9f9;
  border-top-color: #04befc;
  color: #04befc;
}

.tabs-nav-list li.current + li {
  border-left-color: transparent;
}

.tabs-nav-list li + li {
  border-left: 1px solid #e4e4e4;
}

.tabs-nav-list.not-full li {
  display: block;
  float: left;
  padding-left: 25px;
  padding-right: 25px;
  width: auto;
}

.tabs-content {
  background-color: #f9f9f9;
  color: #555;
}

.tabs-2 .tabs-nav-list li.current {
  background-color: #04befc;
  color: #fff;
}

.tabs-2 .tab-content {
  background-color: #04befc;
  color: #fff;
}

.tabs-3 .tabs-nav-list li {
  background-color: #111;
  color: #fff;
}

.tabs-3 .tabs-nav-list li + li {
  border-left-color: #222;
}

.tabs-3 .tabs-nav-list li.current {
  border-top-color: #222;
  background-color: #222;
  color: #fff;
}

.tabs-3 .tab-content {
  background-color: #222;
  color: #8b8b8b;
}

@media (min-width: 480px) {
  .tabs-4 .tabs-nav {
    float: left;
    width: 168px;
  }
}

.tabs-4 .tabs-content {
  display: table;
}

.tabs-4 .tabs-nav-list li {
  text-align: left;
  display: block;
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
  margin-bottom: 2px;
  border-top: none;
  border-left: 3px solid transparent;
  background-color: #f0f0f0;
  color: #222;
}

.tabs-4 .tabs-nav-list li.current {
  border-left-color: #04befc;
  background-color: #f9f9f9;
  color: #04befc;
}

.tabs-4 .tabs-content {
  background-color: transparent;
}

@media (min-width: 480px) {
  .tabs-4 .tab-content {
    padding: 15px 0 1px 32px;
  }
}

.tab-content {
  display: none;
  padding: 20px 22px 1px;
  line-height: 2;
  font-family: 'Roboto', sans-serif;
}

.tab-content.current {
  display: inherit;
}

/* Pricing Tables */
.pricing-table {
  margin-bottom: 30px;
  text-align: center;
  background-color: #fff;
}

.pricing-table ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.pricing-table .btn {
  padding-left: 29px;
  padding-right: 29px;
}

.pricing-table .currency {
  text-transform: capitalize;
}

.pricing-table-one {
  border: 4px solid #eee;
}

.pricing-table-one .pricing-table-header {
  padding: 31px 0 26px;
}

.pricing-table-one .title {
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
  margin-bottom: 10px;
}

.pricing-table-one .sub-title {
  font-size: 14px;
  font-weight: normal;
  margin-bottom: 0;
  color: #666;
}

.pricing-table-one .price-group {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  line-height: 1;
  padding: 32px 0;
  background-color: #eee;
}

.pricing-table-one .currency {
  display: inline-block;
  margin-right: 10px;
  font-size: 20px;
  vertical-align: 13px;
}

.pricing-table-one .price {
  font-size: 36px;
}

.pricing-table-one .price,
.pricing-table-one .currency,
.pricing-table-one .prefix-text {
  color: #04befc;
}

.pricing-table-one .prefix-text {
  margin-left: 10px;
  font-size: 12px;
  word-spacing: 8px;
  text-transform: uppercase;
}

.pricing-table-one .prefix-text > span {
  margin-right: 13px;
}

.pricing-table-one .prefix-text > span:empty {
  display: none;
}

.pricing-table-one .pricing-table-body {
  padding: 40px 45px 50px;
  line-height: 2.1;
  font-family: 'Roboto', sans-serif;
  border-bottom: 1px solid #eee;
  color: #555;
}

.pricing-table-one .pricing-table-body p:last-of-type {
  margin-bottom: 0;
}

.pricing-table-one.active, .pricing-table-one.current, .pricing-table-one.selected, .pricing-table-one.subscribed, .pricing-table-one.highlight, .pricing-table-one.recommended {
  border-color: #04befc;
}

.pricing-table-one.active .price-group, .pricing-table-one.current .price-group, .pricing-table-one.selected .price-group, .pricing-table-one.subscribed .price-group, .pricing-table-one.highlight .price-group, .pricing-table-one.recommended .price-group {
  background-color: #04befc;
}

.pricing-table-one.active .price,
.pricing-table-one.active .currency,
.pricing-table-one.active .prefix-text, .pricing-table-one.current .price,
.pricing-table-one.current .currency,
.pricing-table-one.current .prefix-text, .pricing-table-one.selected .price,
.pricing-table-one.selected .currency,
.pricing-table-one.selected .prefix-text, .pricing-table-one.subscribed .price,
.pricing-table-one.subscribed .currency,
.pricing-table-one.subscribed .prefix-text, .pricing-table-one.highlight .price,
.pricing-table-one.highlight .currency,
.pricing-table-one.highlight .prefix-text, .pricing-table-one.recommended .price,
.pricing-table-one.recommended .currency,
.pricing-table-one.recommended .prefix-text {
  color: #fff;
}

.pricing-table-two {
  border: 1px solid #eee;
  border-top-width: 4px;
}

.pricing-table-two .pricing-table-header {
  border-bottom: 1px solid #eee;
}

.pricing-table-two .title {
  font-size: 14px;
  text-transform: capitalize;
  padding: 22px 0;
  word-spacing: 1px;
  margin-bottom: 0;
  border-bottom: 1px solid #eee;
}

.pricing-table-two .price-group {
  font-weight: 700;
  line-height: 1;
  padding: 15px 0;
}

.pricing-table-two .currency {
  font-size: 12px;
  margin-right: 4px;
  vertical-align: 18px;
}

.pricing-table-two .price {
  font-size: 36px;
  color: #04befc;
}

.pricing-table-two .currency,
.pricing-table-two .prefix-text {
  color: #222;
}

.pricing-table-two .prefix-text {
  display: block;
  font-size: 10px;
}

.pricing-table-two .prefix-text > span {
  margin-right: 2px;
}

.pricing-table-two .prefix-text > span:empty {
  display: none;
}

.pricing-table-two .pricing-table-body {
  padding: 30px 0;
  border-bottom: 1px solid #eee;
  color: #555;
  font-family: 'Roboto', sans-serif;
}

.pricing-table-two ul > li {
  margin-bottom: 26px;
}

.pricing-table-two ul > li:last-child {
  margin-bottom: 0;
}

.pricing-table-two .pricing-table-footer {
  padding: 28px 0;
}

.pricing-table-two.active .btn, .pricing-table-two.current .btn, .pricing-table-two.selected .btn, .pricing-table-two.subscribed .btn, .pricing-table-two.highlight .btn, .pricing-table-two.recommended .btn {
  background-color: #333;
  border-color: #333;
}

.pricing-table-two.active .btn:hover, .pricing-table-two.current .btn:hover, .pricing-table-two.selected .btn:hover, .pricing-table-two.subscribed .btn:hover, .pricing-table-two.highlight .btn:hover, .pricing-table-two.recommended .btn:hover {
  background-color: #04befc;
  border-color: #04befc;
}

.pricing-table-three {
  border: 1px solid #eee;
}

.pricing-table-three .pricing-table-header {
  position: relative;
  padding: 38px 15px;
  border-bottom: 1px solid #eee;
}

.pricing-table-three .pricing-table-header:after, .pricing-table-three .pricing-table-header:before {
  content: " ";
  position: absolute;
  bottom: -1px;
  left: 50%;
  height: 0;
  width: 0;
  pointer-events: none;
  border: solid transparent;
}

.pricing-table-three .pricing-table-header:after {
  border-bottom-color: #fff;
  border-width: 8px;
  margin-left: -8px;
}

.pricing-table-three .pricing-table-header:before {
  border-bottom-color: #eee;
  border-width: 9px;
  margin-left: -9px;
}

.pricing-table-three .title {
  font-size: 14px;
  text-transform: uppercase;
  margin-bottom: 7px;
}

.pricing-table-three .line {
  height: 1px;
  background-color: #333;
}

.pricing-table-three .price-group {
  margin-top: 12px;
}

.pricing-table-three .currency,
.pricing-table-three .price {
  font-weight: 700;
  color: #04befc;
}

.pricing-table-three .prefix-text {
  margin-left: 4px;
  color: #555;
}

.pricing-table-three .pricing-table-body {
  padding: 39px 30px;
  border-bottom: 1px solid #eee;
}

.pricing-table-three .pricing-table-body h1,
.pricing-table-three .pricing-table-body h2,
.pricing-table-three .pricing-table-body h3,
.pricing-table-three .pricing-table-body h4,
.pricing-table-three .pricing-table-body h5 {
  font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif;
  margin-bottom: 20px;
}

.pricing-table-three .pricing-table-body h1:before,
.pricing-table-three .pricing-table-body h2:before,
.pricing-table-three .pricing-table-body h3:before,
.pricing-table-three .pricing-table-body h4:before,
.pricing-table-three .pricing-table-body h5:before {
  content: "\f00c";
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin-right: 15px;
  color: #04befc;
}

.pricing-table-three ul {
  color: #555;
}

.pricing-table-three ul > li {
  font-family: 'Roboto', sans-serif;
  padding-bottom: 35px;
  margin-bottom: 29px;
  border-bottom: 1px solid #eee;
}

.pricing-table-three ul > li:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: none;
}

.pricing-table-three .pricing-table-footer {
  position: relative;
  padding: 34px 15px;
}

.pricing-table-three .pricing-table-footer:after, .pricing-table-three .pricing-table-footer:before {
  content: " ";
  position: absolute;
  top: -1px;
  left: 50%;
  height: 0;
  width: 0;
  pointer-events: none;
  border: solid transparent;
}

.pricing-table-three .pricing-table-footer:after {
  border-top-color: #fff;
  border-width: 8px;
  margin-left: -8px;
}

.pricing-table-three .pricing-table-footer:before {
  border-top-color: #eee;
  border-width: 9px;
  margin-left: -9px;
}

.pricing-table-three.active, .pricing-table-three.current, .pricing-table-three.selected, .pricing-table-three.subscribed, .pricing-table-three.highlight, .pricing-table-three.recommended {
  border-width: 2px;
  border-bottom-color: #04befc;
  box-shadow: 0 0 7px #eee;
}

.pricing-table-three.active .line, .pricing-table-three.current .line, .pricing-table-three.selected .line, .pricing-table-three.subscribed .line, .pricing-table-three.highlight .line, .pricing-table-three.recommended .line {
  background-color: #dadada;
}

.pricing-table-three.active .btn, .pricing-table-three.current .btn, .pricing-table-three.selected .btn, .pricing-table-three.subscribed .btn, .pricing-table-three.highlight .btn, .pricing-table-three.recommended .btn {
  background-color: #fff;
  border-color: #111;
  color: #111;
}

.pricing-table-three.active .btn:hover, .pricing-table-three.current .btn:hover, .pricing-table-three.selected .btn:hover, .pricing-table-three.subscribed .btn:hover, .pricing-table-three.highlight .btn:hover, .pricing-table-three.recommended .btn:hover {
  background-color: #04befc;
  border-color: #04befc;
  color: #fff;
}

/* 32 Shop Pages */
/********************************************************
* Product
********************************************************/
.woocommerce .main,
.woocommerce-page .main {
  overflow-x: hidden;
}

@media (min-width: 1200px) {
  .pearl-shop-page {
    padding-top: 100px;
  }
}

@media (min-width: 769px) {
  .woocommerce ul.products,
  .woocommerce-page ul.products {
    margin-left: -15px;
    margin-right: -15px;
  }
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product {
    position: relative;
    box-sizing: border-box;
    margin: 0 0 30px;
    padding: 0 15px;
    width: 25%;
  }
}

@media (min-width: 769px) {
  .woocommerce .wc-three-column ul.products,
  .woocommerce-page .wc-three-column ul.products {
    margin-left: -15px;
    margin-right: -15px;
  }
  .woocommerce .wc-three-column ul.products li.product,
  .woocommerce-page .wc-three-column ul.products li.product {
    position: relative;
    box-sizing: border-box;
    margin: 0 0 30px;
    padding: 0 15px;
    width: 33.3333% !important;
  }
}

@media (min-width: 992px) {
  .wc-sidebar-left .col-md-9 {
    float: right;
  }
}

.woocommerce .woocommerce-ordering {
  width: 280px;
  margin-bottom: 45px;
}

@media (max-width: 500px) {
  .woocommerce .woocommerce-ordering {
    width: 100%;
  }
}

.woocommerce .woocommerce-ordering .select2-container--default .select2-selection--single {
  height: 46px;
}

.woocommerce .woocommerce-ordering .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 46px;
}

.woocommerce .woocommerce-ordering .select2-selection .select2-selection__arrow {
  height: 44px;
}

.woocommerce .woocommerce-result-count {
  margin: 13px 0 1em;
  font-weight: 500;
  color: #555;
}

@media (max-width: 500px) {
  .woocommerce .woocommerce-result-count {
    width: 100%;
    text-align: center;
  }
}

.product-thumbnail {
  position: relative;
  overflow: hidden;
}

.product-thumbnail img,
.product-thumbnail a img {
  margin-bottom: 0;
}

.product-thumbnail-overlay {
  position: absolute;
  top: 100%;
  z-index: 5;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: top 0.3s ease 0.1s;
  background-color: rgba(0, 0, 0, 0.5);
}

.on-sale-wrap {
  position: absolute;
  top: 25px;
  left: -44px;
  width: 100px;
  height: 45px;
  text-align: center;
  transform: translateY(-50%) rotate(-60deg);
  background-color: #04befc;
  color: #fff;
}

.on-sale-wrap > .on-sale {
  display: block;
  position: relative;
  top: 18px;
  right: -9px;
  left: initial;
  margin: 0;
  padding: 0;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  border-radius: 0;
  background-color: transparent;
}

.woocommerce .products ul li.product img,
.woocommerce .products ul li.product img,
.woocommerce ul.products li.product img,
.woocommerce ul.products li.product img {
  width: 100%;
  height: auto;
}

@media (max-width: 480px) {
  .woocommerce .products ul li.product,
  .woocommerce .products ul li.product,
  .woocommerce ul.products li.product,
  .woocommerce ul.products li.product {
    width: 100%;
  }
}

.woocommerce .products ul li.product .product-overlay-button-wrap,
.woocommerce .products ul li.product .product-overlay-button-wrap,
.woocommerce ul.products li.product .product-overlay-button-wrap,
.woocommerce ul.products li.product .product-overlay-button-wrap {
  display: table;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 10;
  text-align: center;
  transform: translate(-50%, -50%);
}

.woocommerce .products ul li.product .added_to_cart,
.woocommerce .products ul li.product .product-overlay-button,
.woocommerce .products ul li.product .added_to_cart,
.woocommerce .products ul li.product .product-overlay-button,
.woocommerce ul.products li.product .added_to_cart,
.woocommerce ul.products li.product .product-overlay-button,
.woocommerce ul.products li.product .added_to_cart,
.woocommerce ul.products li.product .product-overlay-button {
  float: left;
  display: inline-block;
  vertical-align: middle;
  line-height: 46px;
  height: 46px;
  padding: 0 16px;
  font-size: 16px;
  margin: 0;
  background-color: #fff;
}

.woocommerce .products ul li.product .added_to_cart.button,
.woocommerce .products ul li.product .product-overlay-button.button,
.woocommerce .products ul li.product .added_to_cart.button,
.woocommerce .products ul li.product .product-overlay-button.button,
.woocommerce ul.products li.product .added_to_cart.button,
.woocommerce ul.products li.product .product-overlay-button.button,
.woocommerce ul.products li.product .added_to_cart.button,
.woocommerce ul.products li.product .product-overlay-button.button {
  border-radius: 0;
}

.woocommerce .products ul li.product .added_to_cart.button.added:after,
.woocommerce .products ul li.product .product-overlay-button.button.added:after,
.woocommerce .products ul li.product .added_to_cart.button.added:after,
.woocommerce .products ul li.product .product-overlay-button.button.added:after,
.woocommerce ul.products li.product .added_to_cart.button.added:after,
.woocommerce ul.products li.product .product-overlay-button.button.added:after,
.woocommerce ul.products li.product .added_to_cart.button.added:after,
.woocommerce ul.products li.product .product-overlay-button.button.added:after {
  margin-left: 0;
}

.woocommerce .products ul li.product .added_to_cart.button.added .fa,
.woocommerce .products ul li.product .product-overlay-button.button.added .fa,
.woocommerce .products ul li.product .added_to_cart.button.added .fa,
.woocommerce .products ul li.product .product-overlay-button.button.added .fa,
.woocommerce ul.products li.product .added_to_cart.button.added .fa,
.woocommerce ul.products li.product .product-overlay-button.button.added .fa,
.woocommerce ul.products li.product .added_to_cart.button.added .fa,
.woocommerce ul.products li.product .product-overlay-button.button.added .fa {
  display: none;
}

.woocommerce .products ul li.product .added_to_cart.loading,
.woocommerce .products ul li.product .product-overlay-button.loading,
.woocommerce .products ul li.product .added_to_cart.loading,
.woocommerce .products ul li.product .product-overlay-button.loading,
.woocommerce ul.products li.product .added_to_cart.loading,
.woocommerce ul.products li.product .product-overlay-button.loading,
.woocommerce ul.products li.product .added_to_cart.loading,
.woocommerce ul.products li.product .product-overlay-button.loading {
  opacity: 1;
  display: inline-block;
  vertical-align: middle;
  line-height: 46px;
  height: 46px;
  width: 48px;
}

.woocommerce .products ul li.product .added_to_cart.loading:after,
.woocommerce .products ul li.product .product-overlay-button.loading:after,
.woocommerce .products ul li.product .added_to_cart.loading:after,
.woocommerce .products ul li.product .product-overlay-button.loading:after,
.woocommerce ul.products li.product .added_to_cart.loading:after,
.woocommerce ul.products li.product .product-overlay-button.loading:after,
.woocommerce ul.products li.product .added_to_cart.loading:after,
.woocommerce ul.products li.product .product-overlay-button.loading:after {
  top: 0;
}

.woocommerce .products ul li.product .added_to_cart.loading .fa,
.woocommerce .products ul li.product .product-overlay-button.loading .fa,
.woocommerce .products ul li.product .added_to_cart.loading .fa,
.woocommerce .products ul li.product .product-overlay-button.loading .fa,
.woocommerce ul.products li.product .added_to_cart.loading .fa,
.woocommerce ul.products li.product .product-overlay-button.loading .fa,
.woocommerce ul.products li.product .added_to_cart.loading .fa,
.woocommerce ul.products li.product .product-overlay-button.loading .fa {
  display: none;
}

.woocommerce .products ul li.product .added_to_cart.loading, .woocommerce .products ul li.product .added_to_cart:hover,
.woocommerce .products ul li.product .product-overlay-button.loading,
.woocommerce .products ul li.product .product-overlay-button:hover,
.woocommerce .products ul li.product .added_to_cart.loading,
.woocommerce .products ul li.product .added_to_cart:hover,
.woocommerce .products ul li.product .product-overlay-button.loading,
.woocommerce .products ul li.product .product-overlay-button:hover,
.woocommerce ul.products li.product .added_to_cart.loading,
.woocommerce ul.products li.product .added_to_cart:hover,
.woocommerce ul.products li.product .product-overlay-button.loading,
.woocommerce ul.products li.product .product-overlay-button:hover,
.woocommerce ul.products li.product .added_to_cart.loading,
.woocommerce ul.products li.product .added_to_cart:hover,
.woocommerce ul.products li.product .product-overlay-button.loading,
.woocommerce ul.products li.product .product-overlay-button:hover {
  background-color: #04befc;
  color: #fff;
}

.woocommerce .products ul li.product .add_to_cart_button,
.woocommerce .products ul li.product .add_to_cart_button,
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce ul.products li.product .add_to_cart_button {
  margin-right: 1px;
}

.woocommerce .products ul li.product .added_to_cart.wc-forward,
.woocommerce .products ul li.product .added_to_cart.wc-forward,
.woocommerce ul.products li.product .added_to_cart.wc-forward,
.woocommerce ul.products li.product .added_to_cart.wc-forward {
  width: 102px;
  padding-left: 0;
  padding-right: 0;
}

.woocommerce .products ul li.product .woocommerce-loop-product__link,
.woocommerce .products ul li.product .woocommerce-loop-product__link,
.woocommerce ul.products li.product .woocommerce-loop-product__link,
.woocommerce ul.products li.product .woocommerce-loop-product__link {
  margin-left: 1px;
}

.woocommerce .products ul li.product .product-content,
.woocommerce .products ul li.product .product-content,
.woocommerce ul.products li.product .product-content,
.woocommerce ul.products li.product .product-content {
  padding: 20px;
  text-align: center;
  transition: all 0.3s ease;
  border: 1px solid #ececec;
}

.woocommerce .products ul li.product:hover .product-thumbnail-overlay,
.woocommerce .products ul li.product:hover .product-thumbnail-overlay,
.woocommerce ul.products li.product:hover .product-thumbnail-overlay,
.woocommerce ul.products li.product:hover .product-thumbnail-overlay {
  top: 0;
}

.woocommerce .products ul li.product:hover .product-content,
.woocommerce .products ul li.product:hover .product-content,
.woocommerce ul.products li.product:hover .product-content,
.woocommerce ul.products li.product:hover .product-content {
  border-color: #04befc;
}

.woocommerce .products ul li.product .price,
.woocommerce .products ul li.product .price,
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .price {
  font-weight: 700;
  margin-bottom: 0;
}

.woocommerce .products ul li.product .price del,
.woocommerce .products ul li.product .price del,
.woocommerce ul.products li.product .price del,
.woocommerce ul.products li.product .price del {
  display: inline-block;
  font-size: 12px;
  padding: 0;
  margin-right: 10px;
  opacity: 1;
  vertical-align: middle;
  text-decoration: line-through;
  color: #999;
}

.woocommerce .products ul li.product .price > .amount,
.woocommerce .products ul li.product .price ins,
.woocommerce .products ul li.product .price ins .amount,
.woocommerce .products ul li.product .price > .amount,
.woocommerce .products ul li.product .price ins,
.woocommerce .products ul li.product .price ins .amount,
.woocommerce ul.products li.product .price > .amount,
.woocommerce ul.products li.product .price ins,
.woocommerce ul.products li.product .price ins .amount,
.woocommerce ul.products li.product .price > .amount,
.woocommerce ul.products li.product .price ins,
.woocommerce ul.products li.product .price ins .amount {
  display: inline-block;
  margin: 0;
  vertical-align: middle;
  font-size: 16px;
  letter-spacing: 2px;
  text-decoration: none;
  color: #04befc;
}

@media all and (-ms-high-contrast: none) {
  .widget_product_search input[type="text"],
  .widget_product_search input[type="search"],
  .widget_product_search input[type="email"],
  .widget_product_search input[type="url"],
  .widget_product_search input[type="submit"] {
    min-height: 53px;
  }
  *::-ms-backdrop input[type="text"],
  *::-ms-backdrop input[type="search"],
  *::-ms-backdrop input[type="email"],
  *::-ms-backdrop input[type="url"],
  *::-ms-backdrop input[type="submit"],
  .widget_product_search input[type="text"],
  .widget_product_search input[type="search"],
  .widget_product_search input[type="email"],
  .widget_product_search input[type="url"],
  .widget_product_search input[type="submit"] {
    min-height: 53px;
  }
}

.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h3 {
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 1px;
  word-spacing: 2px;
  margin-bottom: 8px;
}

.woocommerce .products .star-rating {
  width: 82px;
  letter-spacing: 4px;
  line-height: 13px;
  margin: 0 auto 11px;
}

.star-rating {
  color: #eba62a;
}

.star-rating:hover {
  color: #eba62a;
}

/********************************************************
* Pagination
********************************************************/
.woocommerce nav.woocommerce-pagination ul {
  border: none;
  font-family: 'Montserrat', sans-serif;
}

.woocommerce nav.woocommerce-pagination ul li {
  border: none;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  padding: 15px 20px;
  margin: 0 4px;
  background-color: #ececec;
  border: none;
}

.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
  background: #04befc;
  color: #fff;
}

/********************************************************
* Buttons
********************************************************/
.woocommerce input.button.alt,
.woocommerce-message .button,
.woocommerce-message a.button,
.woocommerce #respond input#submit,
.woocommerce.widget a.button,
.woocommerce button.button,
.woocommerce input.button,
#add_payment_method .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button,
.woocommerce #respond input#submit.alt, .woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
  border-radius: 0;
  background-color: #04befc;
  color: #fff;
}

.woocommerce input.button.alt:hover,
.woocommerce-message .button:hover,
.woocommerce-message a.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce.widget a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
#add_payment_method .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce #respond input#submit.alt:hover, .woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
  background-color: #333;
  color: #fff;
}

.woocommerce #respond input#submit.disabled,
.woocommerce #respond input#submit:disabled,
.woocommerce #respond input#submit:disabled[disabled],
.woocommerce a.button.disabled, .woocommerce a.button:disabled,
.woocommerce a.button:disabled[disabled],
.woocommerce button.button.disabled,
.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce input.button.disabled,
.woocommerce input.button:disabled,
.woocommerce input.button:disabled[disabled],
#add_payment_method table.cart input,
.woocommerce-cart table.cart input,
.woocommerce-checkout table.cart input,
.woocommerce input.button.alt {
  padding: 13px 25px;
}

.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  padding: 12px 15px;
  border-radius: 0;
}

/********************************************************
* Alerts
********************************************************/
.woocommerce-info,
.woocommerce-message {
  border-top-color: #04befc;
}

.woocommerce-info:before,
.woocommerce-message:before {
  color: #04befc;
}

.woocommerce-error {
  border-top-color: #ff0000;
}

.woocommerce-error:before {
  color: #ff0000;
}

.sidebar .shop-widget-title {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 28px;
  padding-left: 19px;
  line-height: 1.3;
  position: relative;
}

.sidebar .shop-widget-title:before {
  position: absolute;
  top: 2px;
  left: 0;
  content: '';
  display: inline-block;
  width: 3px;
  height: 14px;
  background-color: #04befc;
}

.sidebar .shop-widget-title:after {
  display: none;
}

.widget #respond input#submit,
.widget a.button,
.widget button.button,
.widget input.button {
  padding: 10px 15px 9px;
  text-transform: uppercase;
  font-size: 12px;
}

.woocommerce a.remove,
.woocommerce ul.cart_list li a.remove,
.woocommerce ul.product_list_widget li a.remove {
  font-size: 28px;
  height: 21px;
  width: 21px;
  line-height: 18px;
}

.woocommerce .widget_shopping_cart .cart_list li a.remove,
.woocommerce.widget_shopping_cart .cart_list li a.remove {
  top: 2px;
}

.woocommerce a.remove {
  color: #000 !important;
}

.woocommerce a.remove:hover {
  color: red !important;
  background: transparent;
}

.woocommerce ul.cart_list li {
  padding: 15px 0;
}

.woocommerce .widget_shopping_cart .total,
.woocommerce.widget_shopping_cart .total {
  border-top: 2px solid #ebe9eb;
  padding: 10px 0 0;
  margin-top: 14px;
  color: #222;
}

.woocommerce ul.product_list_widget li {
  padding: 0 0 15px;
}

.woocommerce ul.product_list_widget li:last-child {
  padding-bottom: 0;
}

.woocommerce .widget_layered_nav_filters ul li {
  padding-right: 10px;
}

.woocommerce .widget_product_categories ul > li,
.woocommerce .widget_layered_nav ul > li {
  font-size: 12px;
  font-weight: 700;
  padding-bottom: 14px;
  margin-bottom: 15px;
  text-transform: uppercase;
  border-bottom: 1px solid #ececec;
}

.woocommerce .widget_product_categories ul > li:last-child,
.woocommerce .widget_layered_nav ul > li:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: none;
}

.woocommerce .widget_product_categories ul > li:before,
.woocommerce .widget_layered_nav ul > li:before {
  content: "\f105";
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin-right: 9px;
}

.woocommerce ul.cart_list li img,
.woocommerce ul.product_list_widget li img {
  margin-left: 4px;
  width: 48px;
}

.woocommerce .widget_product_categories ul li .children,
.woocommerce .widget_layered_nav ul li .children {
  padding-left: 20px;
  padding-top: 14px;
  margin-top: 15px;
  border-top: 1px solid #ececec;
}

.widget select {
  padding: 0 6px;
}

.widget_product_search input[type="text"],
.widget_product_search input[type="search"],
.widget_product_search input[type="email"],
.widget_product_search input[type="url"] {
  float: left;
  width: 70%;
}

.widget_product_search button,
.widget_product_search input[type="submit"] {
  width: 30%;
  padding: 12px 0;
}

.select2-container--default .select2-selection--multiple {
  border-color: #ececec;
  border-radius: 0;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
  background-color: #04befc;
  border-color: #04befc;
  border-radius: 0;
  color: #fff;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  color: #fff;
  margin-right: 4px;
}

.widget_recent_reviews .star-rating,
.widget_top_rated_products .star-rating {
  display: inline-block;
  margin-top: 7px;
  margin-right: 10px;
}

.widget_recent_reviews .reviewer,
.widget_top_rated_products .reviewer {
  font-weight: 700;
}

.woocommerce .widget_price_filter .price_label {
  font-weight: 700;
  color: #3e3e3e;
}

.woocommerce .widget_price_filter .ui-slider .ui-slider-handle {
  background-color: #ffffff;
  border: 3px solid #3e3e3e;
}

.woocommerce .widget_price_filter .ui-slider .ui-slider-range {
  background-color: #3e3e3e;
}

.woocommerce .widget_price_filter .price_slider_wrapper .ui-widget-content {
  background-color: #ececec;
}

.woocommerce div.product div.images.woocommerce-product-gallery {
  position: relative;
  overflow: hidden;
}

.woocommerce div.product div.images.woocommerce-product-gallery .on-sale-wrap {
  z-index: 250;
}

.woocommerce div.product div.images {
  margin-bottom: 40px;
}

.woocommerce div.product div.images figure {
  max-width: none;
}

.woocommerce div.product div.images .flex-control-thumbs {
  margin-top: 5px;
}

.woocommerce div.product div.images .flex-control-thumbs li {
  padding: 5px;
}

.woocommerce div.product div.images .woocommerce-product-gallery__trigger {
  top: 20px;
}

.woocommerce div.product .product_title {
  font-size: 24px;
  text-transform: uppercase;
}

.woocommerce div.product form.cart .variations td,
.woocommerce div.product form.cart .variations th {
  vertical-align: middle;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
  font-weight: 700;
}

.woocommerce div.product p.price del,
.woocommerce div.product span.price del {
  display: inline-block;
  font-size: 18px;
  padding: 0;
  margin-right: 10px;
  opacity: 1;
  vertical-align: middle;
  text-decoration: line-through;
  color: #cacaca;
}

.woocommerce div.product p.price > .amount,
.woocommerce div.product p.price ins,
.woocommerce div.product p.price ins .amount,
.woocommerce div.product span.price > .amount,
.woocommerce div.product span.price ins,
.woocommerce div.product span.price ins .amount {
  display: inline-block;
  margin: 0;
  vertical-align: middle;
  font-size: 24px;
  letter-spacing: 2px;
  text-decoration: none;
}

.woocommerce div.product p.price,
.woocommerce div.product p.price > .amount,
.woocommerce div.product p.price ins,
.woocommerce div.product p.price ins .amount,
.woocommerce div.product span.price,
.woocommerce div.product span.price > .amount,
.woocommerce div.product span.price ins,
.woocommerce div.product span.price ins .amount {
  color: #04befc;
}

.woocommerce .quantity .qty {
  width: 120px;
  height: 48px;
  padding: 7.5px 10px;
  font-weight: 700;
  text-align: center;
}

.woocommerce div.product form.cart .button {
  padding: 17px 15px;
  width: 135px;
  transition: all 0.2s linear;
  background-color: #333333;
}

.woocommerce div.product form.cart .button:hover {
  background-color: #04befc;
}

.variations .select2-container {
  width: 150px !important;
  margin-right: 15px;
}

@media (min-width: 480px) {
  .variations .select2-container {
    width: 192px !important;
  }
}

.woocommerce div.product .product_meta {
  margin-bottom: 12px;
  font-weight: 600;
}

.woocommerce-tabs {
  margin-top: 60px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
  padding: 0;
  margin: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
  position: relative;
  float: left;
  text-transform: uppercase;
  font-size: 13px;
  padding: 2px 25px;
  letter-spacing: 1.5px;
  border-radius: 0;
  margin: 0;
  z-index: 4;
  border: 2px solid #ececec;
  background-color: #ececec;
  color: #222;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li + li {
  border-left: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li:after, .woocommerce div.product .woocommerce-tabs ul.tabs li:before {
  display: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  border-bottom-color: #04befc;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li:hover {
  background-color: #fff;
}

.woocommerce table.shop_attributes td {
  padding: 5px 10px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before {
  border-bottom: 2px solid #ececec;
}

.woocommerce div.product .woocommerce-tabs .panel {
  padding: 38px 30px 15px;
  border: 2px solid #ececec;
  border-top: none;
}

.woocommerce-Tabs-panel .woocommerce-Reviews-title,
.woocommerce-Tabs-panel h2,
.woocommerce-Tabs-panel--description .woocommerce-Reviews-title,
.woocommerce-Tabs-panel--description h2 {
  margin-bottom: 30px;
  font-size: 16px;
  text-transform: uppercase;
}

.woocommerce-Tabs-panel p.stars a,
.woocommerce-Tabs-panel--description p.stars a {
  color: #eba62a;
}

.woocommerce #reviews #comments ol.commentlist {
  padding-left: 0;
}

.woocommerce #reviews #comments ol.commentlist li .comment-text {
  border-color: #ececec;
  border-radius: 0;
  padding: 1em 1em 0;
}

.woocommerce #respond input#submit {
  padding: 15px 30px;
}

.upsells.products,
.related.products {
  margin-top: 50px;
}

.upsells.products > h2,
.related.products > h2 {
  margin-bottom: 30px;
  font-size: 16px;
  text-transform: uppercase;
}

.upsells.products ul.products,
.related.products ul.products {
  margin-bottom: 0;
}

.woocommerce-cart .entry-content table,
.woocommerce-cart .entry-content table th,
.woocommerce-cart .entry-content table td {
  border: none;
}

.woocommerce form .form-row label,
.woocommerce-checkout-review-order-table,
.woocommerce-cart .cart.woocommerce-cart-form__contents {
  color: #333;
}

.woocommerce-checkout-review-order-table,
.woocommerce table.shop_table th,
.woocommerce-cart .cart.woocommerce-cart-form__contents {
  text-transform: uppercase;
}

.woocommerce-cart .entry-content table td,
.woocommerce-checkout-review-order-table,
.woocommerce table.shop_table th {
  font-weight: 700;
}

.woocommerce-cart .entry-content table td {
  border-bottom: 1px solid #ececec;
}

.woocommerce-cart .entry-content table td a {
  color: inherit;
}

.woocommerce-cart .entry-content table td a:hover {
  color: #04befc;
}

.woocommerce-cart-form .woocommerce-cart-form__contents th {
  background-color: #333;
  color: #fff;
}

.woocommerce-cart-form .woocommerce-cart-form__contents a.remove {
  background: none;
  color: #333 !important;
}

.woocommerce-cart-form .woocommerce-cart-form__contents a.remove:hover {
  color: #ff0000 !important;
}

.woocommerce table.shop_table td {
  padding-top: 20px;
  padding-bottom: 20px;
}

.woocommerce-cart table.cart img {
  width: 110px;
  border: 1px solid #d7d7d7;
}

.woocommerce table.shop_table th {
  padding: 15px 12px;
}

#add_payment_method table.cart td.actions .coupon .input-text,
.woocommerce-cart table.cart td.actions .coupon .input-text,
.woocommerce-checkout table.cart td.actions .coupon .input-text {
  width: 100%;
  margin-bottom: 8px;
  border-color: #eeeeee;
  background-color: #eeeeee;
  color: #555555;
}

#add_payment_method table.cart td.actions .coupon .input-text:focus,
.woocommerce-cart table.cart td.actions .coupon .input-text:focus,
.woocommerce-checkout table.cart td.actions .coupon .input-text:focus {
  border-color: #04befc;
  background-color: #fff;
}

@media (min-width: 767px) {
  #add_payment_method table.cart td.actions .coupon .input-text,
  .woocommerce-cart table.cart td.actions .coupon .input-text,
  .woocommerce-checkout table.cart td.actions .coupon .input-text {
    width: 156px;
    padding: 6px 15px 5px;
  }
}

@media (max-width: 767px) {
  #add_payment_method table.cart td.actions .coupon input.button,
  .woocommerce-cart table.cart td.actions .coupon input.button,
  .woocommerce-checkout table.cart td.actions .coupon input.button {
    width: 100%;
  }
}

.woocommerce-cart .cart-collaterals .cart_totals tr th {
  padding: 0;
  vertical-align: inherit;
}

#add_payment_method .cart-collaterals .cart_totals table,
.woocommerce-cart .cart-collaterals .cart_totals table,
.woocommerce-checkout .cart-collaterals .cart_totals table {
  margin: 0;
}

#add_payment_method .cart-collaterals .cart_totals table th,
.woocommerce-cart .cart-collaterals .cart_totals table th,
.woocommerce-checkout .cart-collaterals .cart_totals table th {
  min-width: 100px;
}

#add_payment_method .wc-proceed-to-checkout,
.woocommerce-cart .wc-proceed-to-checkout,
.woocommerce-checkout .wc-proceed-to-checkout {
  padding: 0;
}

#add_payment_method .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button,
.woocommerce table.shop_table {
  border-radius: 0;
}

#add_payment_method .wc-proceed-to-checkout a.checkout-button .cart-subtotal,
#add_payment_method .wc-proceed-to-checkout a.checkout-button .order-total,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button .cart-subtotal,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button .order-total,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button .cart-subtotal,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button .order-total,
.woocommerce table.shop_table .cart-subtotal,
.woocommerce table.shop_table .order-total {
  letter-spacing: 2px;
}

#add_payment_method .wc-proceed-to-checkout a.checkout-button .cart-discount,
#add_payment_method .wc-proceed-to-checkout a.checkout-button .shipping,
#add_payment_method .wc-proceed-to-checkout a.checkout-button .cart-subtotal,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button .cart-discount,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button .shipping,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button .cart-subtotal,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button .cart-discount,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button .shipping,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button .cart-subtotal,
.woocommerce table.shop_table .cart-discount,
.woocommerce table.shop_table .shipping,
.woocommerce table.shop_table .cart-subtotal {
  font-size: 12px;
  color: #333;
}

#add_payment_method .wc-proceed-to-checkout a.checkout-button .order-total,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button .order-total,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button .order-total,
.woocommerce table.shop_table .order-total {
  font-size: 17px;
  color: #04befc !important;
}

.cart_totals,
.cart_totals.calculated_shipping {
  margin-top: 40px;
}

.cart_totals h2,
.cart_totals.calculated_shipping h2 {
  margin-bottom: 4px;
  font-size: 17px;
  text-transform: uppercase;
  border-bottom: 1px solid #ececec;
  letter-spacing: 2px;
  word-spacing: 2px;
  padding-bottom: 30px;
}

.cross-sells {
  margin-top: 40px;
}

.cross-sells h2 {
  margin-bottom: 4px;
  font-size: 17px;
  text-transform: uppercase;
  border-bottom: 1px solid #ececec;
  letter-spacing: 2px;
  word-spacing: 2px;
  padding-bottom: 30px;
}

.woocommerce-cart .cart-collaterals .cart_totals tr td,
.woocommerce table.shop_table tbody:first-child tr:first-child td,
.woocommerce table.shop_table tbody:first-child tr:first-child th {
  border-bottom: none;
}

.woocommerce form .form-row textarea {
  height: 220px;
  padding: 20px;
}

.woocommerce-billing-fields h3 {
  border-bottom: 1px solid #ececec;
  padding-bottom: 20px;
}

#ship-to-different-address,
.woocommerce-billing-fields h3 {
  margin-bottom: 20px;
  font-size: 17px;
  text-transform: uppercase;
  letter-spacing: 2px;
  word-spacing: 2px;
}

#ship-to-different-address .checkbox input[type="checkbox"] {
  position: static;
  margin-left: 0;
}

.woocommerce form .form-row label.checkbox,
.woocommerce form .form-row input[type="checkbox"],
.woocommerce-page form .form-row label.checkbox {
  position: static;
}

.woocommerce form .form-row .input-checkbox {
  margin: -3px 8px 0 0;
}

#order_review_heading {
  margin: 30px 0 15px;
  font-size: 18px;
}

#add_payment_method #payment ul.payment_methods li,
.woocommerce-cart #payment ul.payment_methods li,
.woocommerce-checkout #payment ul.payment_methods li {
  margin-bottom: 5px;
}

#add_payment_method #payment ul.payment_methods li input:focus,
.woocommerce-cart #payment ul.payment_methods li input:focus,
.woocommerce-checkout #payment ul.payment_methods li input:focus {
  outline: none;
}

#add_payment_method #payment,
.woocommerce-cart #payment,
.woocommerce-checkout #payment {
  background: #f9f9f9;
  border-radius: 0;
}

#add_payment_method #payment label,
.woocommerce-cart #payment label,
.woocommerce-checkout #payment label {
  text-transform: uppercase;
  color: #333;
}

#add_payment_method #payment div.payment_box,
.woocommerce-cart #payment div.payment_box,
.woocommerce-checkout #payment div.payment_box {
  font-size: 13px;
  border-radius: 0;
  background-color: #04befc;
  color: #fff;
}

#add_payment_method #payment div.payment_box::before,
.woocommerce-cart #payment div.payment_box::before,
.woocommerce-checkout #payment div.payment_box::before {
  border-bottom-color: #04befc;
}

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
  border-color: #ebebeb;
  border-radius: 0;
}

.woocommerce-form-login label.inline {
  vertical-align: middle;
}

.woocommerce-form-login input[type="checkbox"] {
  margin: -2px 4px 0 8px;
  vertical-align: middle;
}

.woocommerce-store-notice, p.demo_store {
  background-color: #04befc;
}

.woocommerce ul.order_details {
  padding: 19px;
  border: 1px dashed #ebebeb;
}

.woocommerce ul.order_details li strong {
  color: #333;
  margin-top: 5px;
}

.woocommerce-MyAccount-navigation ul {
  list-style-type: none;
}

.woocommerce-MyAccount-navigation li {
  margin-bottom: 10px;
  font-weight: 700;
}

#add_payment_method #payment ul.payment_methods li input,
.woocommerce-cart #payment ul.payment_methods li input,
.woocommerce-checkout #payment ul.payment_methods li input {
  margin-top: -3px;
  vertical-align: middle;
}

.select2-container--default .select2-selection--single {
  height: 40px;
  border-radius: 0;
  border-color: #ececec;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  padding-left: 14px;
  padding-right: 35px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  word-spacing: 2px;
  line-height: 40px;
  text-transform: uppercase;
}

.select2-container--default .select2-selection .select2-selection__arrow {
  height: 39px;
  width: 35px;
}

.select2-container--default .select2-selection .select2-selection__arrow b {
  border-color: #333 transparent transparent transparent;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
  border-color: #ececec;
  padding-top: 3px;
  padding-bottom: 3px;
  min-height: 32px;
}

.select2-container--default .select2-results > .select2-results__options {
  font-weight: 500;
}

.select2-container--default .select2-results__option {
  padding-left: 15px;
  padding-right: 15px;
}

.select2-container--default .select2-results__option[aria-selected=true], .select2-container--default .select2-results__option--highlighted[aria-selected] {
  transition: all 0.1s linear;
  background-color: #04befc;
  color: #fff;
}

.select2-search--dropdown .select2-search__field {
  padding: 4px 12px;
  width: 100%;
  box-sizing: border-box;
}

.select2-dropdown {
  border-radius: 0;
  border-color: #ececec;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsImJvb3RzdHJhcC9fdmFyaWFibGVzLnNjc3MiLCJfdmFyaWFibGVzLnNjc3MiLCJib290c3RyYXAvX21peGlucy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9faGlkZS10ZXh0LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19vcGFjaXR5LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19pbWFnZS5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fbGFiZWxzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19yZXNldC1maWx0ZXIuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3Jlc2l6ZS5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcmVzcG9uc2l2ZS12aXNpYmlsaXR5LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19zaXplLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL190YWItZm9jdXMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3RleHQtb3ZlcmZsb3cuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3ZlbmRvci1wcmVmaXhlcy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fYWxlcnRzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19idXR0b25zLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19wYW5lbHMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19mb3Jtcy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcHJvZ3Jlc3MtYmFyLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fY2VudGVyLWJsb2NrLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19uYXYtdmVydGljYWwtYWxpZ24uc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19ncmlkLnNjc3MiLCJib290c3RyYXAvX25vcm1hbGl6ZS5zY3NzIiwiYm9vdHN0cmFwL19zY2FmZm9sZGluZy5zY3NzIiwiYm9vdHN0cmFwL190eXBlLnNjc3MiLCJib290c3RyYXAvX2NvZGUuc2NzcyIsImJvb3RzdHJhcC9fZ3JpZC5zY3NzIiwiYm9vdHN0cmFwL190YWJsZXMuc2NzcyIsImJvb3RzdHJhcC9fZm9ybXMuc2NzcyIsImJvb3RzdHJhcC9fYnV0dG9ucy5zY3NzIiwiYm9vdHN0cmFwL19icmVhZGNydW1icy5zY3NzIiwiYm9vdHN0cmFwL19wYWdpbmF0aW9uLnNjc3MiLCJib290c3RyYXAvX3BhZ2VyLnNjc3MiLCJib290c3RyYXAvX3Jlc3BvbnNpdmUtZW1iZWQuc2NzcyIsImJvb3RzdHJhcC9fY2xvc2Uuc2NzcyIsImJvb3RzdHJhcC9fdXRpbGl0aWVzLnNjc3MiLCJib290c3RyYXAvX3Jlc3BvbnNpdmUtdXRpbGl0aWVzLnNjc3MiLCJfY29tbW9uLnNjc3MiLCJfYnV0dG9ucy5zY3NzIiwiX2Zvcm1zLnNjc3MiLCJfcGFnaW5hdGlvbi5zY3NzIiwiX2NhbGwtdG8tYWN0aW9uLnNjc3MiLCJfc2lkZWJhci5zY3NzIiwiX2Zvb3Rlci5zY3NzIiwiX2hlYWRlci5zY3NzIiwiaGVhZGVyL19oZWFkZXItdGhyZWUuc2NzcyIsImhlYWRlci9faGVhZGVyLWZvdXIuc2NzcyIsImhlYWRlci9faGVhZGVyLXR3by5zY3NzIiwiaGVhZGVyL19oZWFkZXItb25lLnNjc3MiLCJoZWFkZXIvX2hlYWRlci1maXZlLnNjc3MiLCJoZWFkZXIvX2xvZ28uc2NzcyIsImhlYWRlci9fbWVudS5zY3NzIiwiaGVhZGVyL19zZWFyY2guc2NzcyIsImhlYWRlci9fc3ViLWhlYWRlci5zY3NzIiwiX3NsaWRlci5zY3NzIiwic2xpZGVyL19zbGlkZXItMS5zY3NzIiwic2xpZGVyL19zbGlkZXItMi5zY3NzIiwic2xpZGVyL19zbGlkZXItMy5zY3NzIiwic2xpZGVyL19zbGlkZXItNC5zY3NzIiwic2xpZGVyL19zbGlkZXItNS5zY3NzIiwicGFnZXMvX2hvbWUuc2NzcyIsInBhZ2VzL2hvbWUvX2Fib3V0LnNjc3MiLCJwYWdlcy9ob21lL190ZWFtLnNjc3MiLCJwYWdlcy9ob21lL19wb3J0Zm9saW8uc2NzcyIsInBhZ2VzL2hvbWUvX2NvdW50ZXIuc2NzcyIsInBhZ2VzL2hvbWUvX2ZlYXR1cmVzLnNjc3MiLCJwYWdlcy9ob21lL192aWRlby5zY3NzIiwicGFnZXMvaG9tZS9fYmxvZy5zY3NzIiwicGFnZXMvaG9tZS9fc3Vic2NyaWJlLnNjc3MiLCJwYWdlcy9ob21lL19jbGllbnRzLnNjc3MiLCJwYWdlcy9ob21lL19jb250YWN0LnNjc3MiLCJwYWdlcy9ob21lL190ZXN0aW1vbmlhbHMuc2NzcyIsInBhZ2VzL2hvbWUvX3NlcnZpY2VzLnNjc3MiLCJwYWdlcy9ob21lL19pbnRyby5zY3NzIiwicGFnZXMvaG9tZS9fc2tpbGxzLnNjc3MiLCJwYWdlcy9ob21lL193aHktY2hvc2UtdXMuc2NzcyIsInBhZ2VzL19ob21lLTMuc2NzcyIsInBhZ2VzL19ob21lLTQuc2NzcyIsInBhZ2VzL19ibG9nLnNjc3MiLCJwYWdlcy9fc2luZ2xlLnNjc3MiLCJwYWdlcy9fYWJvdXQtdXMuc2NzcyIsInBhZ2VzL19zZXJ2aWNlcy5zY3NzIiwicGFnZXMvX3BvcnRmb2xpby5zY3NzIiwicGFnZXMvX3BvcnRmb2xpby1zaW5nbGUuc2NzcyIsInBhZ2VzL19jb250YWN0LnNjc3MiLCJwYWdlcy9fNDA0LnNjc3MiLCJfc2hvcnRjb2Rlcy5zY3NzIiwic2hvcC9fc2hvcC5zY3NzIiwic2hvcC9fd2lkZ2V0cy5zY3NzIiwic2hvcC9fc2luZ2xlLnNjc3MiLCJzaG9wL19jYXJ0LnNjc3MiLCJzaG9wL19jaGVja291dC5zY3NzIiwic2hvcC9fc2VsZWN0Mi5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIFRhYmxlIG9mIENvbnRlbnRcbipcbiogMDEgUmVzZXQgYW5kIGRlcGVuZGVuY2llc1xuKiAwMiBDb3JlIENTU1xuKiAwMyBCcmVhZGNydW1ic1xuKiAwNCBQYWdpbmF0aW9uXG4qIDA1IFBhZ2VyXG4qIDA2IFJlc3BvbnNpdmUgRW1iZWRcbiogMDcgY2xvc2VcbiogMDggdXRpbGl0aWVzXG4qIDA5IHJlc3BvbnNpdmUtdXRpbGl0aWVzXG4qIDEwIENvbW1vblxuKiAxMSBCdXR0b25zXG4qIDEyIEZvcm1zXG4qIDEzIFBhZ2luYXRpb25cbiogMTQgQ2FsbCB0byBBY3Rpb25cbiogMTUgU2lkZWJhclxuKiAxNiBGb290ZXJcbiogMTcgSGVhZGVyXG4qIDE4IFN1YiBIZWFkZXJcbiogMTkgU2xpZGVyXG4qIDIwIEhvbWVcbiogMjEgSG9tZSAzXG4qIDIyIEhvbWUgNFxuKiAyMyBCbG9nXG4qIDI0IFNpbmdsZVxuKiAyNSBBYm91dCBVc1xuKiAyNiBTZXJ2aWNlc1xuKiAyNyBQb3J0Zm9saW9cbiogMjggUG9ydGZvbGlvIFNpbmdsZVxuKiAyOSBDb250YWN0XG4qIDMwIDQwNCBwYWdlXG4qIDMxIFNob3J0LWNvZGVzXG4qIDMxIFNob3BcbiovXG5cbi8vIENvcmUgdmFyaWFibGVzIGFuZCBtaXhpbnNcbkBpbXBvcnQgXCJib290c3RyYXAvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL21peGluc1wiO1xuXG4vKiBCb290c3RyYXAgdjMuMy43IChodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbSkgKi9cbkBpbmNsdWRlIF9fZSgxLCAnUmVzZXQgYW5kIGRlcGVuZGVuY2llcycpO1xuQGltcG9ydCBcImJvb3RzdHJhcC9ub3JtYWxpemVcIjtcblxuQGluY2x1ZGUgX19lKDIsICdDb3JlIENTUycpO1xuQGltcG9ydCBcImJvb3RzdHJhcC9zY2FmZm9sZGluZ1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC90eXBlXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2NvZGVcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvZ3JpZFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC90YWJsZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvZm9ybXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvYnV0dG9uc1wiO1xuXG5AaW5jbHVkZSBfX2UoMywgJ0JyZWFkY3J1bWJzJyk7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2JyZWFkY3J1bWJzXCI7XG5cbkBpbmNsdWRlIF9fZSg0LCAnUGFnaW5hdGlvbicpO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wYWdpbmF0aW9uXCI7XG5cbkBpbmNsdWRlIF9fZSg1LCAnUGFnZXInKTtcbkBpbXBvcnQgXCJib290c3RyYXAvcGFnZXJcIjtcblxuQGluY2x1ZGUgX19lKDYsICdSZXNwb25zaXZlIEVtYmVkJyk7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3Jlc3BvbnNpdmUtZW1iZWRcIjtcblxuQGluY2x1ZGUgX19lKDcsICdjbG9zZScpO1xuQGltcG9ydCBcImJvb3RzdHJhcC9jbG9zZVwiO1xuXG5AaW5jbHVkZSBfX2UoOCwgJ3V0aWxpdGllcycpO1xuQGltcG9ydCBcImJvb3RzdHJhcC91dGlsaXRpZXNcIjtcblxuQGluY2x1ZGUgX19lKDksICdyZXNwb25zaXZlLXV0aWxpdGllcycpO1xuQGltcG9ydCBcImJvb3RzdHJhcC9yZXNwb25zaXZlLXV0aWxpdGllc1wiO1xuXG4vL1xuLy8gQW50YXJjdGljYVxuLy9cbkBpbmNsdWRlIF9fZSgxMCwgJ0NvbW1vbicpO1xuQGltcG9ydCBcImNvbW1vblwiO1xuXG5AaW5jbHVkZSBfX2UoMTEsICdCdXR0b25zJyk7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuXG5AaW5jbHVkZSBfX2UoMTIsICdGb3JtcycpO1xuQGltcG9ydCBcImZvcm1zXCI7XG5cbkBpbmNsdWRlIF9fZSgxMywgJ1BhZ2luYXRpb24nKTtcbkBpbXBvcnQgXCJwYWdpbmF0aW9uXCI7XG5cbkBpbmNsdWRlIF9fZSgxNCwgJ0NhbGwgdG8gQWN0aW9uJyk7XG5AaW1wb3J0IFwiY2FsbC10by1hY3Rpb25cIjtcblxuQGluY2x1ZGUgX19lKDE1LCAnU2lkZWJhcicpO1xuQGltcG9ydCBcInNpZGViYXJcIjtcblxuQGluY2x1ZGUgX19lKDE2LCAnRm9vdGVyJyk7XG5AaW1wb3J0IFwiZm9vdGVyXCI7XG5cbkBpbmNsdWRlIF9fZSgxNywgJ0hlYWRlcicpO1xuQGltcG9ydCBcImhlYWRlclwiO1xuXG5AaW5jbHVkZSBfX2UoMTgsICdTdWIgSGVhZGVyJyk7XG5AaW1wb3J0IFwiaGVhZGVyL3N1Yi1oZWFkZXJcIjtcblxuQGluY2x1ZGUgX19lKDE5LCAnU2xpZGVyJyk7XG5AaW1wb3J0IFwic2xpZGVyXCI7XG5cbkBpbmNsdWRlIF9fZSgyMCwgJ0hvbWUnKTtcbkBpbXBvcnQgXCJwYWdlcy9ob21lXCI7XG5cbkBpbmNsdWRlIF9fZSgyMSwgJ0hvbWUgMycpO1xuQGltcG9ydCBcInBhZ2VzL2hvbWUtM1wiO1xuXG5AaW5jbHVkZSBfX2UoMjIsICdIb21lIDQnKTtcbkBpbXBvcnQgXCJwYWdlcy9ob21lLTRcIjtcblxuQGluY2x1ZGUgX19lKDIzLCAnQmxvZycpO1xuQGltcG9ydCBcInBhZ2VzL2Jsb2dcIjtcblxuQGluY2x1ZGUgX19lKDI0LCAnU2luZ2xlJyk7XG5AaW1wb3J0IFwicGFnZXMvc2luZ2xlXCI7XG5cbkBpbmNsdWRlIF9fZSgyNSwgJ0Fib3V0IFVzJyk7XG5AaW1wb3J0IFwicGFnZXMvYWJvdXQtdXNcIjtcblxuQGluY2x1ZGUgX19lKDI2LCAnU2VydmljZXMnKTtcbkBpbXBvcnQgXCJwYWdlcy9zZXJ2aWNlc1wiO1xuXG5AaW5jbHVkZSBfX2UoMjcsICdQb3J0Zm9saW8nKTtcbkBpbXBvcnQgXCJwYWdlcy9wb3J0Zm9saW9cIjtcblxuQGluY2x1ZGUgX19lKDI4LCAnUG9ydGZvbGlvIFNpbmdsZScpO1xuQGltcG9ydCBcInBhZ2VzL3BvcnRmb2xpby1zaW5nbGVcIjtcblxuQGluY2x1ZGUgX19lKDI5LCAnQ29udGFjdCcpO1xuQGltcG9ydCBcInBhZ2VzL2NvbnRhY3RcIjtcblxuQGluY2x1ZGUgX19lKDMwLCAnNDA0IFBhZ2UnKTtcbkBpbXBvcnQgXCJwYWdlcy80MDRcIjtcblxuQGluY2x1ZGUgX19lKDMxLCAnU2hvcnRjb2RlcycpO1xuQGltcG9ydCBcInNob3J0Y29kZXNcIjtcblxuQGluY2x1ZGUgX19lKDMyLCAnU2hvcCBQYWdlcycpO1xuQGltcG9ydCBcInNob3Avc2hvcFwiO1xuQGltcG9ydCBcInNob3Avd2lkZ2V0c1wiO1xuQGltcG9ydCBcInNob3Avc2luZ2xlXCI7XG5AaW1wb3J0IFwic2hvcC9jYXJ0XCI7XG5AaW1wb3J0IFwic2hvcC9jaGVja291dFwiO1xuQGltcG9ydCBcInNob3Avc2VsZWN0MlwiOyIsIiRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXI6IGZhbHNlICFkZWZhdWx0O1xuLy9cbi8vIFZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLz09IENvbG9yc1xuLy9cbi8vIyMgR3JheSBhbmQgYnJhbmQgY29sb3JzIGZvciB1c2UgYWNyb3NzIEJvb3RzdHJhcC5cblxuJGdyYXktYmFzZTogICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kZ3JheS1kYXJrZXI6ICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAxMy41JSkgIWRlZmF1bHQ7IC8vICMyMjJcbiRncmF5LWRhcms6ICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDIwJSkgIWRlZmF1bHQ7ICAgLy8gIzMzM1xuJGdyYXk6ICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMzMuNSUpICFkZWZhdWx0OyAvLyAjNTU1XG4kZ3JheS1saWdodDogICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA0Ni43JSkgIWRlZmF1bHQ7IC8vICM3NzdcbiRncmF5LWxpZ2h0ZXI6ICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDkzLjUlKSAhZGVmYXVsdDsgLy8gI2VlZVxuXG4kYnJhbmQtcHJpbWFyeTogICAgICAgICBkYXJrZW4oIzQyOGJjYSwgNi41JSkgIWRlZmF1bHQ7IC8vICMzMzdhYjdcbiRicmFuZC1zdWNjZXNzOiAgICAgICAgICM1Y2I4NWMgIWRlZmF1bHQ7XG4kYnJhbmQtaW5mbzogICAgICAgICAgICAjNWJjMGRlICFkZWZhdWx0O1xuJGJyYW5kLXdhcm5pbmc6ICAgICAgICAgI2YwYWQ0ZSAhZGVmYXVsdDtcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgICNkOTUzNGYgIWRlZmF1bHQ7XG5cblxuLy89PSBTY2FmZm9sZGluZ1xuLy9cbi8vIyMgU2V0dGluZ3MgZm9yIHNvbWUgb2YgdGhlIG1vc3QgZ2xvYmFsIHN0eWxlcy5cblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGJvZHk+YC5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCB0ZXh0IGNvbG9yIG9uIGA8Ym9keT5gLlxuJHRleHQtY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgdGV4dHVhbCBsaW5rIGNvbG9yLlxuJGxpbmstY29sb3I6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIExpbmsgaG92ZXIgY29sb3Igc2V0IHZpYSBgZGFya2VuKClgIGZ1bmN0aW9uLlxuJGxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGRlY29yYXRpb24uXG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWRlZmF1bHQ7XG5cblxuLy89PSBUeXBvZ3JhcGh5XG4vL1xuLy8jIyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgIEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCBtb25vc3BhY2UgZm9udHMgZm9yIGA8Y29kZT5gLCBgPGtiZD5gLCBhbmQgYDxwcmU+YC5cbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sYXJnZTogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLXNtYWxsOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcblxuJGZvbnQtc2l6ZS1oMTogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi42KSkgIWRlZmF1bHQ7IC8vIH4zNnB4XG4kZm9udC1zaXplLWgyOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjE1KSkgIWRlZmF1bHQ7IC8vIH4zMHB4XG4kZm9udC1zaXplLWgzOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNykpICFkZWZhdWx0OyAvLyB+MjRweFxuJGZvbnQtc2l6ZS1oNDogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLWg1OiAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDY6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuXG4vLyoqIFVuaXQtbGVzcyBgbGluZS1oZWlnaHRgIGZvciB1c2UgaW4gY29tcG9uZW50cyBsaWtlIGJ1dHRvbnMuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgIDEuNDI4NTcxNDI5ICFkZWZhdWx0OyAvLyAyMC8xNFxuLy8qKiBDb21wdXRlZCBcImxpbmUtaGVpZ2h0XCIgKGBmb250LXNpemVgICogYGxpbmUtaGVpZ2h0YCkgZm9yIHVzZSB3aXRoIGBtYXJnaW5gLCBgcGFkZGluZ2AsIGV0Yy5cbiRsaW5lLWhlaWdodC1jb21wdXRlZDogICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSkgIWRlZmF1bHQ7IC8vIH4yMHB4XG5cbi8vKiogQnkgZGVmYXVsdCwgdGhpcyBpbmhlcml0cyBmcm9tIHRoZSBgPGJvZHk+YC5cbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAxLjEgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cblxuLy89PSBJY29ub2dyYXBoeVxuLy9cbi8vIyMgU3BlY2lmeSBjdXN0b20gbG9jYXRpb24gYW5kIGZpbGVuYW1lIG9mIHRoZSBpbmNsdWRlZCBHbHlwaGljb25zIGljb24gZm9udC4gVXNlZnVsIGZvciB0aG9zZSBpbmNsdWRpbmcgQm9vdHN0cmFwIHZpYSBCb3dlci5cblxuLy8qKiBMb2FkIGZvbnRzIGZyb20gdGhpcyBkaXJlY3RvcnkuXG5cbi8vIFtjb252ZXJ0ZXJdIElmICRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIgaWYgdXNlZCwgcHJvdmlkZSBwYXRoIHJlbGF0aXZlIHRvIHRoZSBhc3NldHMgbG9hZCBwYXRoLlxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBiZWNhdXNlIHNvbWUgYXNzZXQgaGVscGVycywgc3VjaCBhcyBTcHJvY2tldHMsIGRvIG5vdCB3b3JrIHdpdGggZmlsZS1yZWxhdGl2ZSBwYXRocy5cbiRpY29uLWZvbnQtcGF0aDogaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgXCJib290c3RyYXAvXCIsIFwiLi4vZm9udHMvYm9vdHN0cmFwL1wiKSAhZGVmYXVsdDtcblxuLy8qKiBGaWxlIG5hbWUgZm9yIGFsbCBmb250IGZpbGVzLlxuJGljb24tZm9udC1uYW1lOiAgICAgICAgICBcImdseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXJcIiAhZGVmYXVsdDtcbi8vKiogRWxlbWVudCBJRCB3aXRoaW4gU1ZHIGljb24gZmlsZS5cbiRpY29uLWZvbnQtc3ZnLWlkOiAgICAgICAgXCJnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXJcIiAhZGVmYXVsdDtcblxuXG4vLz09IENvbXBvbmVudHNcbi8vXG4vLyMjIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS4gVmFsdWVzIGJhc2VkIG9uIDE0cHggdGV4dCBhbmQgMS40MjggbGluZS1oZWlnaHQgKH4yMHB4IHRvIHN0YXJ0KS5cblxuJHBhZGRpbmctYmFzZS12ZXJ0aWNhbDogICAgIDZweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDogICAxMnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1sYXJnZS12ZXJ0aWNhbDogICAgMTBweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw6ICAxNnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDogICAgNXB4ICFkZWZhdWx0O1xuJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDogIDEwcHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXhzLXZlcnRpY2FsOiAgICAgICAxcHggIWRlZmF1bHQ7XG4kcGFkZGluZy14cy1ob3Jpem9udGFsOiAgICAgNXB4ICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtbGFyZ2U6ICAgICAgICAgMS4zMzMzMzMzICFkZWZhdWx0OyAvLyBleHRyYSBkZWNpbWFscyBmb3IgV2luIDguMSBDaHJvbWVcbiRsaW5lLWhlaWdodC1zbWFsbDogICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICA0cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgNnB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgIDNweCAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8qKiBXaWR0aCBvZiB0aGUgYGJvcmRlcmAgZm9yIGdlbmVyYXRpbmcgY2FyZXRzIHRoYXQgaW5kaWNhdGUgZHJvcGRvd25zLlxuJGNhcmV0LXdpZHRoLWJhc2U6ICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogQ2FyZXRzIGluY3JlYXNlIHNsaWdodGx5IGluIHNpemUgZm9yIGxhcmdlciBjb21wb25lbnRzLlxuJGNhcmV0LXdpZHRoLWxhcmdlOiAgICAgICAgIDVweCAhZGVmYXVsdDtcblxuXG4vLz09IFRhYmxlc1xuLy9cbi8vIyMgQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4vLyoqIFBhZGRpbmcgZm9yIGA8dGg+YHMgYW5kIGA8dGQ+YHMuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAgIDhweCAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBmb3IgY2VsbHMgaW4gYC50YWJsZS1jb25kZW5zZWRgLlxuJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc6ICA1cHggIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGFsbCB0YWJsZXMuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtc3RyaXBlZGAuXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgICNmOWY5ZjkgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1ob3ZlcmAuXG4kdGFibGUtYmctaG92ZXI6ICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlciAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRhYmxlIGFuZCBjZWxsIGJvcmRlcnMuXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBCdXR0b25zXG4vL1xuLy8jIyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XG5cbiRidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tcHJpbWFyeS1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1zdWNjZXNzLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbiRidG4taW5mby1ib3JkZXI6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnRuLWluZm8tYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4td2FybmluZy1iZzogICAgICAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4td2FybmluZy1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkYnRuLWRhbmdlci1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3Jtc1xuLy9cbi8vIyNcblxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dCBkaXNhYmxlZD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgYDxpbnB1dD5gc1xuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcbiRpbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IFJlbmFtZSBgJGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGAkaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4vLyBUaGlzIGhhcyBubyBlZmZlY3Qgb24gYDxzZWxlY3Q+YHMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgaW5wdXRzIG9uIGZvY3VzXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAgICAgICAgICAgICAjNjZhZmU5ICFkZWZhdWx0O1xuXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgICAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgICAoY2VpbCgkZm9udC1zaXplLWxhcmdlICogJGxpbmUtaGVpZ2h0LWxhcmdlKSArICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtc21hbGw6ICAgICAgICAgICAgIChmbG9vcigkZm9udC1zaXplLXNtYWxsICogJGxpbmUtaGVpZ2h0LXNtYWxsKSArICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG5cbi8vKiogYC5mb3JtLWdyb3VwYCBtYXJnaW5cbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRsZWdlbmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kbGVnZW5kLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGN1cnNvciBmb3IgZm9ybSBjb250cm9scyBhbmQgYnV0dG9ucy5cbiRjdXJzb3ItZGlzYWJsZWQ6ICAgICAgICAgICAgICAgIG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG5cbi8vPT0gRHJvcGRvd25zXG4vL1xuLy8jIyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vKiogQmFja2dyb3VuZCBmb3IgdGhlIGRyb3Bkb3duIG1lbnUuXG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgLlxuJGRyb3Bkb3duLWJvcmRlcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMTUpICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgICoqZm9yIElFOCoqLlxuJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbi8vKiogRGl2aWRlciBjb2xvciBmb3IgYmV0d2VlbiBkcm9wZG93biBpdGVtcy5cbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogRHJvcGRvd24gbGluayB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbi8vKiogSG92ZXIgY29sb3IgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRncmF5LWRhcmssIDUlKSAhZGVmYXVsdDtcbi8vKiogSG92ZXIgYmFja2dyb3VuZCBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gdGV4dCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuLy8qKiBEaXNhYmxlZCBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGhlYWRlcnMgd2l0aGluIGRyb3Bkb3duIG1lbnVzLlxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogRGVwcmVjYXRlZCBgJGRyb3Bkb3duLWNhcmV0LWNvbG9yYCBhcyBvZiB2My4xLjBcbiRkcm9wZG93bi1jYXJldC1jb2xvcjogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG5cblxuLy8tLSBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG4vL1xuLy8gTm90ZTogVGhlc2UgdmFyaWFibGVzIGFyZSBub3QgZ2VuZXJhdGVkIGludG8gdGhlIEN1c3RvbWl6ZXIuXG5cbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LW5hdmJhci1maXhlZDogICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kOiAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG5cblxuLy89PSBNZWRpYSBxdWVyaWVzIGJyZWFrcG9pbnRzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIGJyZWFrcG9pbnRzIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLCBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBFeHRyYSBzbWFsbCBzY3JlZW4gLyBwaG9uZVxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4teHM6ICAgICAgICAgICAgICAgICAgNDgwcHggIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHMtbWluYCBhcyBvZiB2My4yLjBcbiRzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi14cyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1waG9uZWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXBob25lOiAgICAgICAgICAgICAgICRzY3JlZW4teHMtbWluICFkZWZhdWx0O1xuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1zbWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXNtOiAgICAgICAgICAgICAgICAgIDc2OHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXNtICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXRhYmxldGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXRhYmxldDogICAgICAgICAgICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLW1kYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbWQ6ICAgICAgICAgICAgICAgICAgOTkycHggIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbWQgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWRlc2t0b3A6ICAgICAgICAgICAgICRzY3JlZW4tbWQtbWluICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZ2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnOiAgICAgICAgICAgICAgICAgIDEyMDBweCAhZGVmYXVsdDtcbiRzY3JlZW4tbGctbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1sZyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZy1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGctZGVza3RvcDogICAgICAgICAgJHNjcmVlbi1sZy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNvIG1lZGlhIHF1ZXJpZXMgZG9uJ3Qgb3ZlcmxhcCB3aGVuIHJlcXVpcmVkLCBwcm92aWRlIGEgbWF4aW11bVxuJHNjcmVlbi14cy1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1zbS1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbWQtbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLWxnLW1pbiAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gR3JpZCBzeXN0ZW1cbi8vXG4vLyMjIERlZmluZSB5b3VyIGN1c3RvbSByZXNwb25zaXZlIGdyaWQuXG5cbi8vKiogTnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYmV0d2VlbiBjb2x1bW5zLiBHZXRzIGRpdmlkZWQgaW4gaGFsZiBmb3IgdGhlIGxlZnQgYW5kIHJpZ2h0LlxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4vLyBOYXZiYXIgY29sbGFwc2Vcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWNvbWVzIHVuY29sbGFwc2VkLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludDogICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlZ2lucyBjb2xsYXBzaW5nLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXg6ICgkZ3JpZC1mbG9hdC1icmVha3BvaW50IC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBDb250YWluZXIgc2l6ZXNcbi8vXG4vLyMjIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuJGNvbnRhaW5lci10YWJsZXQ6ICAgICAgICAgICAgICg3MjBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1zbS1taW5gIGFuZCB1cC5cbiRjb250YWluZXItc206ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXRhYmxldCAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3BcbiRjb250YWluZXItZGVza3RvcDogICAgICAgICAgICAoOTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbWQtbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLW1kOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1kZXNrdG9wICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcbiRjb250YWluZXItbGFyZ2UtZGVza3RvcDogICAgICAoMTE0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLWxnLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1sZzogICAgICAgICAgICAgICAgICRjb250YWluZXItbGFyZ2UtZGVza3RvcCAhZGVmYXVsdDtcblxuXG4vLz09IE5hdmJhclxuLy9cbi8vIyNcblxuLy8gQmFzaWNzIG9mIGEgbmF2YmFyXG4kbmF2YmFyLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICRsaW5lLWhlaWdodC1jb21wdXRlZCAhZGVmYXVsdDtcbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgKCgkbmF2YmFyLWhlaWdodCAtICRsaW5lLWhlaWdodC1jb21wdXRlZCkgLyAyKSAhZGVmYXVsdDtcbiRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDogICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgI2Y4ZjhmOCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBsaW5rc1xuJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciB0b2dnbGVcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICM4ODggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09PSBJbnZlcnRlZCBuYXZiYXJcbi8vIFJlc2V0IGludmVydGVkIG5hdmJhciBiYXNpY3NcbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzIyMiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXG4kbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciB0b2dnbGVcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IE5hdnNcbi8vXG4vLyMjXG5cbi8vPT09IFNoYXJlZCBuYXYgc3R5bGVzXG4kbmF2LWxpbmstcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vPT0gVGFic1xuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG4vLz09IFBpbGxzXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2luYXRpb25cbi8vXG4vLyMjXG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXI6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnZXJcbi8vXG4vLyMjXG5cbiRwYWdlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYm9yZGVyICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuJHBhZ2VyLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24taG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwYWdlci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdlci1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuJHBhZ2VyLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy89PSBKdW1ib3Ryb25cbi8vXG4vLyMjXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1jb2xvcjogICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWZvbnQtc2l6ZTogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjUpKSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1mb250LXNpemU6ICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDQuNSkpICFkZWZhdWx0O1xuXG5cbi8vPT0gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xuLy9cbi8vIyMgRGVmaW5lIGNvbG9ycyBmb3IgZm9ybSBmZWVkYmFjayBzdGF0ZXMgYW5kLCBieSBkZWZhdWx0LCBhbGVydHMuXG5cbiRzdGF0ZS1zdWNjZXNzLXRleHQ6ICAgICAgICAgICAgICMzYzc2M2QgIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAjZGZmMGQ4ICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXN1Y2Nlc3MtYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWluZm8tdGV4dDogICAgICAgICAgICAgICAgIzMxNzA4ZiAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICNkOWVkZjcgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtaW5mby1iZywgLTEwKSwgNyUpICFkZWZhdWx0O1xuXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS13YXJuaW5nLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1kYW5nZXItdGV4dDogICAgICAgICAgICAgICNhOTQ0NDIgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAjZjJkZWRlICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWRhbmdlci1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG5cbi8vPT0gVG9vbHRpcHNcbi8vXG4vLyMjXG5cbi8vKiogVG9vbHRpcCBtYXggd2lkdGhcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIHRleHQgY29sb3JcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgYmFja2dyb3VuZCBjb2xvclxuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuXG4vLyoqIFRvb2x0aXAgYXJyb3cgd2lkdGhcbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgIDVweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBhcnJvdyBjb2xvclxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBQb3BvdmVyc1xuLy9cbi8vIyNcblxuLy8qKiBQb3BvdmVyIGJvZHkgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG1heGltdW0gd2lkdGhcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGZhbGxiYWNrIGJvcmRlciBjb2xvclxuJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgdGl0bGUgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItdGl0bGUtYmc6ICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg6ICAgICAgICAgICAoJHBvcG92ZXItYXJyb3ctd2lkdGggKyAxKSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgICBmYWRlX2luKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgMC4wNSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgZmFsbGJhY2sgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOiAgZGFya2VuKCRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvciwgMjAlKSAhZGVmYXVsdDtcblxuXG4vLz09IExhYmVsc1xuLy9cbi8vIyNcblxuLy8qKiBEZWZhdWx0IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kZWZhdWx0LWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBQcmltYXJ5IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1wcmltYXJ5LWJnOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBJbmZvIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1pbmZvLWJnOiAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC13YXJuaW5nLWJnOiAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRhbmdlci1iZzogICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGxhYmVsIHRleHQgY29sb3JcbiRsYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgdGV4dCBjb2xvciBvZiBhIGxpbmtlZCBsYWJlbFxuJGxhYmVsLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IE1vZGFsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCB0aXRsZVxuJG1vZGFsLXRpdGxlLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgdGl0bGUgbGluZS1oZWlnaHRcbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgY29udGVudCBhcmVhXG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yXG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvciAqKmZvciBJRTgqKlxuJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG4vLyoqIE1vZGFsIGJhY2tkcm9wIGJhY2tncm91bmQgY29sb3JcbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGJhY2tkcm9wIG9wYWNpdHlcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgIC41ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAjZTVlNWU1ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBmb290ZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgOTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICA2MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmc6ICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICBib2xkICFkZWZhdWx0O1xuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLy89PSBQcm9ncmVzcyBiYXJzXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIHdob2xlIHByb2dyZXNzIGNvbXBvbmVudFxuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogUHJvZ3Jlc3MgYmFyIHRleHQgY29sb3JcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFZhcmlhYmxlIGZvciBzZXR0aW5nIHJvdW5kZWQgY29ybmVycyBvbiBwcm9ncmVzcyBiYXIuXG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZzogICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci13YXJuaW5nLWJnOiAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnOiAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4vLyoqIEluZm8gcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWluZm8tYmc6ICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcblxuXG4vLz09IExpc3QgZ3JvdXBcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvbiBgLmxpc3QtZ3JvdXAtaXRlbWBcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYC5saXN0LWdyb3VwLWl0ZW1gIGJvcmRlciBjb2xvclxuJGxpc3QtZ3JvdXAtYm9yZGVyOiAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBMaXN0IGdyb3VwIGJvcmRlciByYWRpdXNcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHNpbmdsZSBsaXN0IGl0ZW1zIG9uIGhvdmVyXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBvZiBhY3RpdmUgbGlzdCBlbGVtZW50c1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjogICAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjogIGxpZ2h0ZW4oJGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCA0MCUpICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWxpbmstY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I6ICAgJGxpc3QtZ3JvdXAtbGluay1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjogIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IFBhbmVsc1xuLy9cbi8vIyNcblxuJHBhbmVsLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1ib2R5LXBhZGRpbmc6ICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtaGVhZGluZy1wYWRkaW5nOiAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLXBhZGRpbmc6ICAgICAgICAkcGFuZWwtaGVhZGluZy1wYWRkaW5nICFkZWZhdWx0O1xuJHBhbmVsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGVsZW1lbnRzIHdpdGhpbiBwYW5lbHNcbiRwYW5lbC1pbm5lci1ib3JkZXI6ICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1wcmltYXJ5LXRleHQ6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1ib3JkZXI6ICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFuZWwtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZzogICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1oZWFkaW5nLWJnOiAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmc6ICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItaGVhZGluZy1iZzogICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBUaHVtYm5haWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgaW1hZ2VcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJhY2tncm91bmQgY29sb3JcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIGNvbG9yXG4kdGh1bWJuYWlsLWJvcmRlcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIHJhZGl1c1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBDdXN0b20gdGV4dCBjb2xvciBmb3IgdGh1bWJuYWlsIGNhcHRpb25zXG4kdGh1bWJuYWlsLWNhcHRpb24tY29sb3I6ICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBjYXB0aW9uXG4kdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZzogICA5cHggIWRlZmF1bHQ7XG5cblxuLy89PSBXZWxsc1xuLy9cbi8vIyNcblxuJHdlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR3ZWxsLWJvcmRlcjogICAgICAgICAgICAgICAgIGRhcmtlbigkd2VsbC1iZywgNyUpICFkZWZhdWx0O1xuXG5cbi8vPT0gQmFkZ2VzXG4vL1xuLy8jI1xuXG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBMaW5rZWQgYmFkZ2UgdGV4dCBjb2xvciBvbiBob3ZlclxuJGJhZGdlLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRiYWRnZS1iZzogICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIEJhZGdlIHRleHQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFkZ2UgYmFja2dyb3VuZCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAxICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgMTBweCAhZGVmYXVsdDtcblxuXG4vLz09IEJyZWFkY3J1bWJzXG4vL1xuLy8jI1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsOiAgIDhweCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmctaG9yaXpvbnRhbDogMTVweCAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiBiYWNrZ3JvdW5kIGNvbG9yXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgdGV4dCBjb2xvclxuJGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIG9mIGN1cnJlbnQgcGFnZSBpbiB0aGUgYnJlYWRjcnVtYlxuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogVGV4dHVhbCBzZXBhcmF0b3IgZm9yIGJldHdlZW4gYnJlYWRjcnVtYiBlbGVtZW50c1xuJGJyZWFkY3J1bWItc2VwYXJhdG9yOiAgICAgICAgICBcIi9cIiAhZGVmYXVsdDtcblxuXG4vLz09IENhcm91c2VsXG4vL1xuLy8jI1xuXG4kY2Fyb3VzZWwtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjYpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDbG9zZVxuLy9cbi8vIyNcblxuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAwIDFweCAwICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDb2RlXG4vL1xuLy8jI1xuXG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAjYzcyNTRlICFkZWZhdWx0O1xuJGNvZGUtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y5ZjJmNCAhZGVmYXVsdDtcblxuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cbiRwcmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHByZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwZVxuLy9cbi8vIyNcblxuLy8qKiBIb3Jpem9udGFsIG9mZnNldCBmb3IgZm9ybXMgYW5kIGxpc3RzLlxuJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbDogMTgwcHggIWRlZmF1bHQ7XG4vLyoqIFRleHQgbXV0ZWQgY29sb3JcbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBBYmJyZXZpYXRpb25zIGFuZCBhY3JvbnltcyBib3JkZXIgY29sb3JcbiRhYmJyLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBIZWFkaW5ncyBzbWFsbCBjb2xvclxuJGhlYWRpbmdzLXNtYWxsLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgc21hbGwgY29sb3JcbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGZvbnQgc2l6ZVxuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGJvcmRlciBjb2xvclxuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogUGFnZSBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kcGFnZS1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBXaWR0aCBvZiBob3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3QgdGl0bGVzXG4kZGwtaG9yaXpvbnRhbC1vZmZzZXQ6ICAgICAgICAkY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCAuZGwtaG9yaXpvbnRhbCBiZWNvbWVzIGhvcml6b250YWxcbiRkbC1ob3Jpem9udGFsLWJyZWFrcG9pbnQ6ICAgICRncmlkLWZsb2F0LWJyZWFrcG9pbnQgIWRlZmF1bHQ7XG4vLyoqIEhvcml6b250YWwgbGluZSBjb2xvci5cbiRoci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4iLCIvLyBWYXJpYWJsZXNcbiRib2R5LWJnOiAjZmZmO1xuJHRleHQtY29sb3I6ICM3Nzc7XG4kbGluay1jb2xvcjogIzIyMjtcbiRsaW5rLWhvdmVyLWNvbG9yOiAjMDRiZWZjO1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogbm9uZTtcblxuXG4vLz09IFR5cG9ncmFwaHlcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiBcIlJhbGV3YXlcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuJGZvbnQtZmFtaWx5LWJhc2U6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuXG4kZm9udC1zaXplLWJhc2U6IDE0cHg7XG4kZm9udC1zaXplLWxhcmdlOiBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSk7XG4vLyB+MThweFxuJGZvbnQtc2l6ZS1zbWFsbDogY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpO1xuLy8gfjEycHhcblxuJGZvbnQtc2l6ZS1oMTogMzZweDtcbiRmb250LXNpemUtaDI6IDMwcHg7XG4kZm9udC1zaXplLWgzOiAyNHB4O1xuJGZvbnQtc2l6ZS1oNDogMThweDtcbiRmb250LXNpemUtaDU6IDE0cHg7XG4kZm9udC1zaXplLWg2OiAxMnB4O1xuXG4kbGluZS1oZWlnaHQtYmFzZTogMS43MTQyODU3MTQ7XG4vLyAyNC8xNFxuJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOiBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UpKTtcbi8vIH4yNHB4XG5cbiRoZWFkaW5ncy1mb250LWZhbWlseTogaW5oZXJpdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogNzAwO1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAxLjE7XG4kaGVhZGluZ3MtY29sb3I6ICMyMjI7XG5cblxuLy89PSBDb21wb25lbnRzXG4kYnRuLWJvcmRlci1yYWRpdXMtYmFzZTogICAgMDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZTogICAwO1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsOiAgIDA7XG5cblxuLy89PSBQYWdlclxuJHBhZ2VyLWJvcmRlci1yYWRpdXM6ICAgICAgIDA7XG5cblxuLy8gQnV0dG9uc1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgIDcwMDtcblxuJGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgJHRleHQtY29sb3I7XG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICAjZmFmYWZhO1xuJGJ0bi1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICAgI2Q5ZDlkOTtcblxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZjtcbiRidG4tcHJpbWFyeS1iZzogICAgICAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yO1xuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3I7XG5cbiRwYWRkaW5nLWJhc2UtdmVydGljYWw6ICAgICA5cHg7XG4kcGFkZGluZy1iYXNlLWhvcml6b250YWw6ICAgMjJweDtcblxuJHBhZGRpbmctbGFyZ2UtdmVydGljYWw6ICAgIDEycHg7XG4kcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOiAgMjhweDtcblxuJHBhZGRpbmctc21hbGwtdmVydGljYWw6ICAgIDdweDtcbiRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw6ICAxMnB4O1xuXG4kcGFkZGluZy14cy12ZXJ0aWNhbDogICAgICAgNXB4O1xuJHBhZGRpbmcteHMtaG9yaXpvbnRhbDogICAgIDEycHg7XG5cbiRib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICAwO1xuJGJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgIDA7XG4kYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAgMDtcblxuXG4vLz09IFBhZ2luYXRpb25cblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3I7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xuJHBhZ2luYXRpb24tYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgI2ViZWJlYjtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3I7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAjZmZmO1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgI2ViZWJlYjtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3I7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAjZmZmO1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjogICAgICAgICAgICAgI2ViZWJlYjtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcbiRjb250YWluZXItbGc6ICAgICAgICAgICAgICAgICAxMjAwcHg7XG5cbi8vIE1peGluXG5AbWl4aW4gX19lKCR2YWx1ZSwgJG5hbWUpe1xuICAkY29udGVudDogJyc7XG4gIEBpZiAkdmFsdWUgPCAxMCB7XG4gICAgJGNvbnRlbnQgOiBcIjAjeyR2YWx1ZX0gI3skbmFtZX1cIjtcbiAgfSBAZWxzZXtcbiAgICAkY29udGVudCA6IFwiI3skdmFsdWV9ICN7JG5hbWV9XCI7XG4gIH1cbi8qICN7JGNvbnRlbnR9ICovXG59IiwiLy8gTWl4aW5zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgXCJtaXhpbnMvaGlkZS10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL29wYWNpdHlcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGFiZWxzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LWZpbHRlclwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzcG9uc2l2ZS12aXNpYmlsaXR5XCI7XG5AaW1wb3J0IFwibWl4aW5zL3NpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFiLWZvY3VzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1lbXBoYXNpc1wiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LW92ZXJmbG93XCI7XG5AaW1wb3J0IFwibWl4aW5zL3ZlbmRvci1wcmVmaXhlc1wiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwibWl4aW5zL2FsZXJ0c1wiO1xuQGltcG9ydCBcIm1peGlucy9idXR0b25zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhbmVsc1wiO1xuQGltcG9ydCBcIm1peGlucy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LWRpdmlkZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZm9ybXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcHJvZ3Jlc3MtYmFyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYmxlLXJvd1wiO1xuXG4vLyBTa2luc1xuQGltcG9ydCBcIm1peGlucy9iYWNrZ3JvdW5kLXZhcmlhbnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmFkaWVudHNcIjtcblxuLy8gTGF5b3V0XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2NlbnRlci1ibG9ja1wiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtdmVydGljYWwtYWxpZ25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZC1mcmFtZXdvcmtcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZFwiO1xuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG4vL1xuLy8gSGVhZHMgdXAhIHYzIGxhdW5jaGVkIHdpdGggb25seSBgLmhpZGUtdGV4dCgpYCwgYnV0IHBlciBvdXIgcGF0dGVybiBmb3Jcbi8vIG1peGlucyBiZWluZyByZXVzZWQgYXMgY2xhc3NlcyB3aXRoIHRoZSBzYW1lIG5hbWUsIHRoaXMgZG9lc24ndCBob2xkIHVwLiBBc1xuLy8gb2YgdjMuMC4xIHdlIGhhdmUgYWRkZWQgYC50ZXh0LWhpZGUoKWAgYW5kIGRlcHJlY2F0ZWQgYC5oaWRlLXRleHQoKWAuXG4vL1xuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9jb21taXQvYWEwMzk2ZWFlNzU3XG5cbi8vIERlcHJlY2F0ZWQgYXMgb2YgdjMuMC4xIChoYXMgYmVlbiByZW1vdmVkIGluIHY0KVxuQG1peGluIGhpZGUtdGV4dCgpIHtcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi8vIE5ldyBtaXhpbiB0byB1c2UgYXMgb2YgdjMuMC4xXG5AbWl4aW4gdGV4dC1oaWRlKCkge1xuICBAaW5jbHVkZSBoaWRlLXRleHQ7XG59XG4iLCIvLyBPcGFjaXR5XG5cbkBtaXhpbiBvcGFjaXR5KCRvcGFjaXR5KSB7XG4gIG9wYWNpdHk6ICRvcGFjaXR5O1xuICAvLyBJRTggZmlsdGVyXG4gICRvcGFjaXR5LWllOiAoJG9wYWNpdHkgKiAxMDApO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9JG9wYWNpdHktaWUpO1xufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5AbWl4aW4gaW1nLXJlc3BvbnNpdmUoJGRpc3BsYXk6IGJsb2NrKSB7XG4gIGRpc3BsYXk6ICRkaXNwbGF5O1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIGhlaWdodDogYXV0bzsgLy8gUGFydCAyOiBTY2FsZSB0aGUgaGVpZ2h0IGFjY29yZGluZyB0byB0aGUgd2lkdGgsIG90aGVyd2lzZSB5b3UgZ2V0IHN0cmV0Y2hpbmdcbn1cblxuXG4vLyBSZXRpbmEgaW1hZ2Vcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuIE5vdGUgdGhhdCB0aGVcbi8vIHNwZWxsaW5nIG9mIGBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW9gIGlzIGludGVudGlvbmFsLlxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMXh9XCIpLCBcIiN7JGZpbGUtMXh9XCIpKTtcblxuICBAbWVkaWFcbiAgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgIG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLzEpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1pbWFnZS1wYXRoKFwiI3skZmlsZS0yeH1cIiksIFwiI3skZmlsZS0yeH1cIikpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbn1cbiIsIi8vIExhYmVsc1xuXG5AbWl4aW4gbGFiZWwtdmFyaWFudCgkY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gICZbaHJlZl0ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUmVzZXQgZmlsdGVycyBmb3IgSUVcbi8vXG4vLyBXaGVuIHlvdSBuZWVkIHRvIHJlbW92ZSBhIGdyYWRpZW50IGJhY2tncm91bmQsIGRvIG5vdCBmb3JnZXQgdG8gdXNlIHRoaXMgdG8gcmVzZXRcbi8vIHRoZSBJRSBmaWx0ZXIgZm9yIElFOSBhbmQgYmVsb3cuXG5cbkBtaXhpbiByZXNldC1maWx0ZXIoKSB7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KGVuYWJsZWQgPSBmYWxzZSk7XG59XG4iLCIvLyBSZXNpemUgYW55dGhpbmdcblxuQG1peGluIHJlc2l6YWJsZSgkZGlyZWN0aW9uKSB7XG4gIHJlc2l6ZTogJGRpcmVjdGlvbjsgLy8gT3B0aW9uczogaG9yaXpvbnRhbCwgdmVydGljYWwsIGJvdGhcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFBlciBDU1MzIFVJLCBgcmVzaXplYCBvbmx5IGFwcGxpZXMgd2hlbiBgb3ZlcmZsb3dgIGlzbid0IGB2aXNpYmxlYFxufVxuIiwiLy8gUmVzcG9uc2l2ZSB1dGlsaXRpZXNcblxuLy9cbi8vIE1vcmUgZWFzaWx5IGluY2x1ZGUgYWxsIHRoZSBzdGF0ZXMgZm9yIHJlc3BvbnNpdmUtdXRpbGl0aWVzLmxlc3MuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiByZXNwb25zaXZlLXZpc2liaWxpdHkoJHBhcmVudCkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIHRhYmxlI3skcGFyZW50fSAgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRyI3skcGFyZW50fSAgICAgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0aCN7JHBhcmVudH0sXG4gIHRkI3skcGFyZW50fSAgICAgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJHBhcmVudCkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIFNpemluZyBzaG9ydGN1dHNcblxuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0KSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbn1cblxuQG1peGluIHNxdWFyZSgkc2l6ZSkge1xuICBAaW5jbHVkZSBzaXplKCRzaXplLCAkc2l6ZSk7XG59XG4iLCIvLyBXZWJLaXQtc3R5bGUgZm9jdXNcblxuQG1peGluIHRhYi1mb2N1cygpIHtcbiAgLy8gV2ViS2l0LXNwZWNpZmljLiBPdGhlciBicm93c2VycyB3aWxsIGtlZXAgdGhlaXIgZGVmYXVsdCBvdXRsaW5lIHN0eWxlLlxuICAvLyAoSW5pdGlhbGx5IHRyaWVkIHRvIGFsc28gZm9yY2UgZGVmYXVsdCB2aWEgYG91dGxpbmU6IGluaXRpYWxgLFxuICAvLyBidXQgdGhhdCBzZWVtcyB0byBlcnJvbmVvdXNseSByZW1vdmUgdGhlIG91dGxpbmUgaW4gRmlyZWZveCBhbHRvZ2V0aGVyLilcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbn1cbiIsIkBtaXhpbiByZXNldC10ZXh0KCkge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuIiwiLy8gVHlwb2dyYXBoeVxuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gVGV4dCBvdmVyZmxvd1xuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC1vdmVyZmxvdygpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBWZW5kb3IgUHJlZml4ZXNcbi8vXG4vLyBBbGwgdmVuZG9yIG1peGlucyBhcmUgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgZHVlIHRvIHRoZSBpbnRyb2R1Y3Rpb24gb2Zcbi8vIEF1dG9wcmVmaXhlciBpbiBvdXIgR3J1bnRmaWxlLiBUaGV5IGhhdmUgYmVlbiByZW1vdmVkIGluIHY0LlxuXG4vLyAtIEFuaW1hdGlvbnNcbi8vIC0gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gLSBCb3ggc2hhZG93XG4vLyAtIEJveCBzaXppbmdcbi8vIC0gQ29udGVudCBjb2x1bW5zXG4vLyAtIEh5cGhlbnNcbi8vIC0gUGxhY2Vob2xkZXIgdGV4dFxuLy8gLSBUcmFuc2Zvcm1hdGlvbnNcbi8vIC0gVHJhbnNpdGlvbnNcbi8vIC0gVXNlciBTZWxlY3RcblxuXG4vLyBBbmltYXRpb25zXG5AbWl4aW4gYW5pbWF0aW9uKCRhbmltYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgLW8tYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tbmFtZSgkbmFtZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogJG5hbWU7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWR1cmF0aW9uKCRkdXJhdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZGVsYXkoJGRlbGF5KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCgkaXRlcmF0aW9uLWNvdW50KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbiAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xufVxuQG1peGluIGFuaW1hdGlvbi1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZmlsbC1tb2RlKCRmaWxsLW1vZGUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG59XG5cbi8vIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIFByZXZlbnQgYnJvd3NlcnMgZnJvbSBmbGlja2VyaW5nIHdoZW4gdXNpbmcgQ1NTIDNEIHRyYW5zZm9ybXMuXG4vLyBEZWZhdWx0IHZhbHVlIGlzIGB2aXNpYmxlYCwgYnV0IGNhbiBiZSBjaGFuZ2VkIHRvIGBoaWRkZW5gXG5cbkBtaXhpbiBiYWNrZmFjZS12aXNpYmlsaXR5KCR2aXNpYmlsaXR5KSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG59XG5cbi8vIERyb3Agc2hhZG93c1xuLy9cbi8vIE5vdGU6IERlcHJlY2F0ZWQgYC5ib3gtc2hhZG93KClgIGFzIG9mIHYzLjEuMCBzaW5jZSBhbGwgb2YgQm9vdHN0cmFwJ3Ncbi8vIHN1cHBvcnRlZCBicm93c2VycyB0aGF0IGhhdmUgYm94IHNoYWRvdyBjYXBhYmlsaXRpZXMgbm93IHN1cHBvcnQgaXQuXG5cbkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkc2hhZG93OyAvLyBpT1MgPDQuMyAmIEFuZHJvaWQgPDQuMVxuICAgICAgICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG59XG5cbi8vIEJveCBzaXppbmdcbkBtaXhpbiBib3gtc2l6aW5nKCRib3htb2RlbCkge1xuICAtd2Via2l0LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgLW1vei1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgICAgICAgYm94LXNpemluZzogJGJveG1vZGVsO1xufVxuXG4vLyBDU1MzIENvbnRlbnQgQ29sdW1uc1xuQG1peGluIGNvbnRlbnQtY29sdW1ucygkY29sdW1uLWNvdW50LCAkY29sdW1uLWdhcDogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC13ZWJraXQtY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAtbW96LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAgICAgICBjb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gIC13ZWJraXQtY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgIC1tb3otY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgICAgICAgY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG59XG5cbi8vIE9wdGlvbmFsIGh5cGhlbmF0aW9uXG5AbWl4aW4gaHlwaGVucygkbW9kZTogYXV0bykge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogJG1vZGU7XG4gICAgIC1tb3otaHlwaGVuczogJG1vZGU7XG4gICAgICAtbXMtaHlwaGVuczogJG1vZGU7IC8vIElFMTArXG4gICAgICAgLW8taHlwaGVuczogJG1vZGU7XG4gICAgICAgICAgaHlwaGVuczogJG1vZGU7XG59XG5cbi8vIFBsYWNlaG9sZGVyIHRleHRcbkBtaXhpbiBwbGFjZWhvbGRlcigkY29sb3I6ICRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcikge1xuICAvLyBGaXJlZm94XG4gICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgb3BhY2l0eTogMTsgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjZcbiAgfVxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvbnNcbkBtaXhpbiBzY2FsZSgkcmF0aW8uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG59XG5cbkBtaXhpbiBzY2FsZVgoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbn1cbkBtaXhpbiBzY2FsZVkoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbn1cbkBtaXhpbiBza2V3KCR4LCAkeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzQ4ODU7IElFOStcbiAgICAgICAtby10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZSgkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG59XG5AbWl4aW4gcm90YXRlKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVgoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVkoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xufVxuQG1peGluIHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xufVxuQG1peGluIHBlcnNwZWN0aXZlLW9yaWdpbigkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjsgLy8gSUU5IG9ubHlcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xufVxuXG5cbi8vIFRyYW5zaXRpb25zXG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkdHJhbnNpdGlvbi1wcm9wZXJ0eS4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xufVxuQG1peGluIHRyYW5zaXRpb24tZGVsYXkoJHRyYW5zaXRpb24tZGVsYXkpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0cmFuc2l0aW9uLWR1cmF0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdHJhbnNmb3JtKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbn1cblxuXG4vLyBVc2VyIHNlbGVjdFxuLy8gRm9yIHNlbGVjdGluZyB0ZXh0IG9uIHRoZSBwYWdlXG5cbkBtaXhpbiB1c2VyLXNlbGVjdCgkc2VsZWN0KSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7IC8vIElFMTArXG4gICAgICAgICAgdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG59XG4iLCIvLyBBbGVydHNcblxuQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICR0ZXh0LWNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkdGV4dC1jb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkY29sb3IsICRiYWNrZ3JvdW5kLCAkYm9yZGVyKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDI1JSk7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDE3JSk7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcbiAgICB9XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xufVxuIiwiLy8gUGFuZWxzXG5cbkBtaXhpbiBwYW5lbC12YXJpYW50KCRib3JkZXIsICRoZWFkaW5nLXRleHQtY29sb3IsICRoZWFkaW5nLWJnLWNvbG9yLCAkaGVhZGluZy1ib3JkZXIpIHtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICYgPiAucGFuZWwtaGVhZGluZyB7XG4gICAgY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkaGVhZGluZy1ib3JkZXI7XG5cbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICAgIC5iYWRnZSB7XG4gICAgICBjb2xvcjogJGhlYWRpbmctYmctY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuICAmID4gLnBhbmVsLWZvb3RlciB7XG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gID4gbGkge1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgfVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgID4gYSxcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gTGlzdCBHcm91cHNcblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAgIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiwgYnV0dG9uJiB0byBhLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0sIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9XG4gIH1cblxuICBhLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0sXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgfVxuICAgICYuYWN0aXZlLFxuICAgICYuYWN0aXZlOmhvdmVyLFxuICAgICYuYWN0aXZlOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICNlNWU1ZTUpIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIDEpIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbn1cbiIsIi8vIEZvcm0gdmFsaWRhdGlvbiBzdGF0ZXNcbi8vXG4vLyBVc2VkIGluIGZvcm1zLmxlc3MgdG8gZ2VuZXJhdGUgdGhlIGZvcm0gdmFsaWRhdGlvbiBDU1MgZm9yIHdhcm5pbmdzLCBlcnJvcnMsXG4vLyBhbmQgc3VjY2Vzc2VzLlxuXG5AbWl4aW4gZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHRleHQtY29sb3I6ICM1NTUsICRib3JkZXItY29sb3I6ICNjY2MsICRiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1KSB7XG4gIC8vIENvbG9yIHRoZSBsYWJlbCBhbmQgaGVscCB0ZXh0XG4gIC5oZWxwLWJsb2NrLFxuICAuY29udHJvbC1sYWJlbCxcbiAgLnJhZGlvLFxuICAuY2hlY2tib3gsXG4gIC5yYWRpby1pbmxpbmUsXG4gIC5jaGVja2JveC1pbmxpbmUsXG4gICYucmFkaW8gbGFiZWwsXG4gICYuY2hlY2tib3ggbGFiZWwsXG4gICYucmFkaW8taW5saW5lIGxhYmVsLFxuICAmLmNoZWNrYm94LWlubGluZSBsYWJlbCAge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxuICAvLyBTZXQgdGhlIGJvcmRlciBhbmQgYm94IHNoYWRvdyBvbiBzcGVjaWZpYyBpbnB1dHMgdG8gbWF0Y2hcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpOyAvLyBSZWRlY2xhcmUgc28gdHJhbnNpdGlvbnMgd29ya1xuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlci1jb2xvciwgMTAlKTtcbiAgICAgICRzaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgNnB4IGxpZ2h0ZW4oJGJvcmRlci1jb2xvciwgMjAlKTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHNoYWRvdyk7XG4gICAgfVxuICB9XG4gIC8vIFNldCB2YWxpZGF0aW9uIHN0YXRlcyBhbHNvIGZvciBhZGRvbnNcbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICB9XG4gIC8vIE9wdGlvbmFsIGZlZWRiYWNrIGljb25cbiAgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWJvcmRlci1mb2N1c2AgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGNvbG9yOiAkaW5wdXQtYm9yZGVyLWZvY3VzKSB7XG4gICRjb2xvci1yZ2JhOiByZ2JhKHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvciksIC42KTtcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgOHB4ICRjb2xvci1yZ2JhKTtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gUmVsYXRpdmUgdGV4dCBzaXplLCBwYWRkaW5nLCBhbmQgYm9yZGVyLXJhZGlpIGNoYW5nZXMgZm9yIGZvcm0gY29udHJvbHMuIEZvclxuLy8gaG9yaXpvbnRhbCBzaXppbmcsIHdyYXAgY29udHJvbHMgaW4gdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLiBgPHNlbGVjdD5gXG4vLyBlbGVtZW50IGdldHMgc3BlY2lhbCBsb3ZlIGJlY2F1c2UgaXQncyBzcGVjaWFsLCBhbmQgdGhhdCdzIGEgZmFjdCFcbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIGlucHV0LXNpemUoJHBhcmVudCwgJGlucHV0LWhlaWdodCwgJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICBzZWxlY3QjeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIH1cblxuICB0ZXh0YXJlYSN7JHBhcmVudH0sXG4gIHNlbGVjdFttdWx0aXBsZV0jeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cbiIsIi8vIFByb2dyZXNzIGJhcnNcblxuQG1peGluIHByb2dyZXNzLWJhci12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgLy8gRGVwcmVjYXRlZCBwYXJlbnQgY2xhc3MgcmVxdWlyZW1lbnQgYXMgb2YgdjMuMi4wXG4gIC5wcm9ncmVzcy1zdHJpcGVkICYge1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQ7XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUgPiB0aGVhZCA+IHRyLFxuICAudGFibGUgPiB0Ym9keSA+IHRyLFxuICAudGFibGUgPiB0Zm9vdCA+IHRyIHtcbiAgICA+IHRkLiN7JHN0YXRlfSxcbiAgICA+IHRoLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfSA+IHRkLFxuICAgICYuI3skc3RhdGV9ID4gdGgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ciB7XG4gICAgPiB0ZC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgPiB0aC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0ZCxcbiAgICAmOmhvdmVyID4gLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfTpob3ZlciA+IHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG4iLCIvLyBHcmFkaWVudHNcblxuXG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd25cbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93blxufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbn1cbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG59XG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTApOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICM1NTUsICRvdXRlci1jb2xvcjogIzMzMykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiLy8gQ2xlYXJmaXhcbi8vXG4vLyBGb3IgbW9kZXJuIGJyb3dzZXJzXG4vLyAxLiBUaGUgc3BhY2UgY29udGVudCBpcyBvbmUgd2F5IHRvIGF2b2lkIGFuIE9wZXJhIGJ1ZyB3aGVuIHRoZVxuLy8gICAgY29udGVudGVkaXRhYmxlIGF0dHJpYnV0ZSBpcyBpbmNsdWRlZCBhbnl3aGVyZSBlbHNlIGluIHRoZSBkb2N1bWVudC5cbi8vICAgIE90aGVyd2lzZSBpdCBjYXVzZXMgc3BhY2UgdG8gYXBwZWFyIGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBlbGVtZW50c1xuLy8gICAgdGhhdCBhcmUgY2xlYXJmaXhlZC5cbi8vIDIuIFRoZSB1c2Ugb2YgYHRhYmxlYCByYXRoZXIgdGhhbiBgYmxvY2tgIGlzIG9ubHkgbmVjZXNzYXJ5IGlmIHVzaW5nXG4vLyAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXG4vL1xuLy8gU291cmNlOiBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay9cblxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7IC8vIDFcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMlxuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG4iLCIvLyBDZW50ZXItYWxpZ24gYSBibG9jayBsZXZlbCBlbGVtZW50XG5cbkBtaXhpbiBjZW50ZXItYmxvY2soKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuIiwiLy8gTmF2YmFyIHZlcnRpY2FsIGFsaWduXG4vL1xuLy8gVmVydGljYWxseSBjZW50ZXIgZWxlbWVudHMgaW4gdGhlIG5hdmJhci5cbi8vIEV4YW1wbGU6IGFuIGVsZW1lbnQgaGFzIGEgaGVpZ2h0IG9mIDMwcHgsIHNvIHdyaXRlIG91dCBgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbigzMHB4KTtgIHRvIGNhbGN1bGF0ZSB0aGUgYXBwcm9wcmlhdGUgdG9wIG1hcmdpbi5cblxuQG1peGluIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkZWxlbWVudC1oZWlnaHQpIHtcbiAgbWFyZ2luLXRvcDogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGk6IDEsICRsaXN0OiBcIi5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIikge1xuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgLy8gSW5uZXIgZ3V0dGVyIHZpYSBwYWRkaW5nXG4gICAgcGFkZGluZy1sZWZ0OiAgY2VpbCgoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cbn1cblxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MsICRpOiAxLCAkbGlzdDogXCIuY29sLSN7JGNsYXNzfS0jeyRpfVwiKSB7XG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wtI3skY2xhc3N9LSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cblxuQG1peGluIGNhbGMtZ3JpZC1jb2x1bW4oJGluZGV4LCAkY2xhc3MsICR0eXBlKSB7XG4gIEBpZiAoJHR5cGUgPT0gd2lkdGgpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LSN7JGluZGV4fSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1c2gtI3skaW5kZXh9IHtcbiAgICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0wIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVsbCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0jeyRpbmRleH0ge1xuICAgICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0wIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IG9mZnNldCkge1xuICAgIC5jb2wtI3skY2xhc3N9LW9mZnNldC0jeyRpbmRleH0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBsb29wLWdyaWQtY29sdW1ucygkY29sdW1ucywgJGNsYXNzLCAkdHlwZSkge1xuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICBAaW5jbHVkZSBjYWxjLWdyaWQtY29sdW1uKCRpLCAkY2xhc3MsICR0eXBlKTtcbiAgfVxufVxuXG5cbi8vIENyZWF0ZSBncmlkIGZvciBzcGVjaWZpYyBjbGFzc1xuQG1peGluIG1ha2UtZ3JpZCgkY2xhc3MpIHtcbiAgQGluY2x1ZGUgZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcyk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgd2lkdGgpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1bGwpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1c2gpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIG9mZnNldCk7XG59XG4iLCIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuLy8gQ2VudGVyZWQgY29udGFpbmVyIGVsZW1lbnRcbkBtaXhpbiBjb250YWluZXItZml4ZWQoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogIGZsb29yKCgkZ3V0dGVyIC8gMikpO1xuICBwYWRkaW5nLXJpZ2h0OiBjZWlsKCgkZ3V0dGVyIC8gMikpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gQ3JlYXRlcyBhIHdyYXBwZXIgZm9yIGEgc2VyaWVzIG9mIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgbWFyZ2luLWxlZnQ6ICBjZWlsKCgkZ3V0dGVyIC8gLTIpKTtcbiAgbWFyZ2luLXJpZ2h0OiBmbG9vcigoJGd1dHRlciAvIC0yKSk7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgZXh0cmEgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2UteHMtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2Utc20tY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuXG4vLyBHZW5lcmF0ZSB0aGUgbWVkaXVtIGNvbHVtbnNcbkBtaXhpbiBtYWtlLW1kLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgdGhlIGxhcmdlIGNvbHVtbnNcbkBtaXhpbiBtYWtlLWxnLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbiIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLy9cbi8vIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4vLyAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxuLy8gICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuLy9cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAxXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuLy9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8gSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuLy8gYW5kIEZpcmVmb3guXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuLy9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuLy8gMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuLy9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gMlxufVxuXG4vL1xuLy8gUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbi8vIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4vL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4vLyBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4vL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gTGlua3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbi8vXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLy9cbi8vIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbi8vIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbi8vXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vL1xuLy8gQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuLy8gY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLy9cbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4vL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vLyBFbWJlZGRlZCBjb250ZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4vL1xuXG5pbWcge1xuICBib3JkZXI6IDA7XG59XG5cbi8vXG4vLyBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbi8vXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gR3JvdXBpbmcgY29udGVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuLy9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbi8vXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbn1cblxuLy9cbi8vIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vXG4vLyBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8vIEZvcm1zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbi8vIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbi8vXG5cbi8vXG4vLyAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4vLyAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbi8vIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4vLyAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbi8vXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAxXG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgbWFyZ2luOiAwOyAvLyAzXG59XG5cbi8vXG4vLyBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbi8vXG5cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuLy8gQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbi8vIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4vLyBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4vL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLy9cbi8vIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4vLyAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbi8vIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbi8vIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4vLyAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4vL1xuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8vIDFcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxuICBjdXJzb3I6IHBvaW50ZXI7IC8vIDNcbn1cblxuLy9cbi8vIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4vL1xuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4vL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbi8vIHRoZSBVQSBzdHlsZXNoZWV0LlxuLy9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vL1xuLy8gSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuLy8gRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbi8vXG4vLyAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuLy8gMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbi8vXG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbi8vIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4vLyBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4vL1xuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy9cbi8vIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy8gMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8yXG59XG5cbi8vXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbi8vIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbi8vIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuLy9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4vLyAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4vL1xuXG5sZWdlbmQge1xuICBib3JkZXI6IDA7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbi8vXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vXG4vLyBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4vLyBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbi8vXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vIFRhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwO1xufVxuIiwiLy9cbi8vIFNjYWZmb2xkaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIFJlc2V0IHRoZSBib3gtc2l6aW5nXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgcmVzZXQgbWF5IGNhdXNlIGNvbmZsaWN0cyB3aXRoIHNvbWUgdGhpcmQtcGFydHkgd2lkZ2V0cy5cbi8vIEZvciByZWNvbW1lbmRhdGlvbnMgb24gcmVzb2x2aW5nIHN1Y2ggY29uZmxpY3RzLCBzZWVcbi8vIGh0dHA6Ly9nZXRib290c3RyYXAuY29tL2dldHRpbmctc3RhcnRlZC8jdGhpcmQtYm94LXNpemluZ1xuKiB7XG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG59XG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xufVxuXG5cbi8vIEJvZHkgcmVzZXRcblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xufVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xufVxuXG4vLyBSZXNldCBmb250cyBmb3IgcmVsZXZhbnQgZWxlbWVudHNcbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuXG4vLyBMaW5rc1xuXG5hIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIHRhYi1mb2N1cztcbiAgfVxufVxuXG5cbi8vIEZpZ3VyZXNcbi8vXG4vLyBXZSByZXNldCB0aGlzIGhlcmUgYmVjYXVzZSBwcmV2aW91c2x5IE5vcm1hbGl6ZSBoYWQgbm8gYGZpZ3VyZWAgbWFyZ2lucy4gVGhpc1xuLy8gZW5zdXJlcyB3ZSBkb24ndCBicmVhayBhbnlvbmUncyB1c2Ugb2YgdGhlIGVsZW1lbnQuXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuXG4vLyBJbWFnZXNcblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4uaW1nLXJlc3BvbnNpdmUge1xuICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcbn1cblxuLy8gUm91bmRlZCBjb3JuZXJzXG4uaW1nLXJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbn1cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLy9cbi8vIEhlYWRzIHVwISBUaGlzIGlzIG1peGluLWVkIGludG8gdGh1bWJuYWlscy5sZXNzIGZvciBgLnRodW1ibmFpbGAuXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMnMgZWFzZS1pbi1vdXQpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZShpbmxpbmUtYmxvY2spO1xufVxuXG4vLyBQZXJmZWN0IGNpcmNsZVxuLmltZy1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7IC8vIHNldCByYWRpdXMgaW4gcGVyY2VudHNcbn1cblxuXG4vLyBIb3Jpem9udGFsIHJ1bGVzXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogICAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRoci1ib3JkZXI7XG59XG5cblxuLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHA6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudFxuXG4uc3Itb25seSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gIH1cbn1cblxuXG4vLyBpT1MgXCJjbGlja2FibGUgZWxlbWVudHNcIiBmaXggZm9yIHJvbGU9XCJidXR0b25cIlxuLy9cbi8vIEZpeGVzIFwiY2xpY2thYmlsaXR5XCIgaXNzdWUgKGFuZCBtb3JlIGdlbmVyYWxseSwgdGhlIGZpcmluZyBvZiBldmVudHMgc3VjaCBhcyBmb2N1cyBhcyB3ZWxsKVxuLy8gZm9yIHRyYWRpdGlvbmFsbHkgbm9uLWZvY3VzYWJsZSBlbGVtZW50cyB3aXRoIHJvbGU9XCJidXR0b25cIlxuLy8gc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuIiwiLy9cbi8vIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSGVhZGluZ3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRoZWFkaW5ncy1zbWFsbC1jb2xvcjtcbiAgfVxufVxuXG5oMSwgLmgxLFxuaDIsIC5oMixcbmgzLCAuaDMge1xuICBtYXJnaW4tdG9wOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcblxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDY1JTtcbiAgfVxufVxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgbWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG5cbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gIH1cbn1cblxuaDEsIC5oMSB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMTsgfVxuaDIsIC5oMiB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMjsgfVxuaDMsIC5oMyB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMzsgfVxuaDQsIC5oNCB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNDsgfVxuaDUsIC5oNSB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNTsgfVxuaDYsIC5oNiB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNjsgfVxuXG5cbi8vIEJvZHkgdGV4dFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5wIHtcbiAgbWFyZ2luOiAwIDAgKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xufVxuXG4ubGVhZCB7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zaXplOiBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMS4xNSkpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIH1cbn1cblxuXG4vLyBFbXBoYXNpcyAmIG1pc2Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRXg6ICgxMnB4IHNtYWxsIGZvbnQgLyAxNHB4IGJhc2UgZm9udCkgKiAxMDAlID0gYWJvdXQgODUlXG5zbWFsbCxcbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogZmxvb3IoKDEwMCUgKiAkZm9udC1zaXplLXNtYWxsIC8gJGZvbnQtc2l6ZS1iYXNlKSk7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzdGF0ZS13YXJuaW5nLWJnO1xuICBwYWRkaW5nOiAuMmVtO1xufVxuXG4vLyBBbGlnbm1lbnRcbi50ZXh0LWxlZnQgICAgICAgICAgIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuLnRleHQtcmlnaHQgICAgICAgICAgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuLnRleHQtY2VudGVyICAgICAgICAgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbi50ZXh0LWp1c3RpZnkgICAgICAgIHsgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuLnRleHQtbm93cmFwICAgICAgICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi8vIFRyYW5zZm9ybWF0aW9uXG4udGV4dC1sb3dlcmNhc2UgICAgICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cbi50ZXh0LXVwcGVyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuLnRleHQtY2FwaXRhbGl6ZSAgICAgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogJHRleHQtbXV0ZWQ7XG59XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtcHJpbWFyeScsICRicmFuZC1wcmltYXJ5KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1zdWNjZXNzJywgJHN0YXRlLXN1Y2Nlc3MtdGV4dCk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtaW5mbycsICRzdGF0ZS1pbmZvLXRleHQpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXdhcm5pbmcnLCAkc3RhdGUtd2FybmluZy10ZXh0KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1kYW5nZXInLCAkc3RhdGUtZGFuZ2VyLXRleHQpO1xuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG4vLyBGb3Igbm93IHdlJ2xsIGxlYXZlIHRoZXNlIGFsb25nc2lkZSB0aGUgdGV4dCBjbGFzc2VzIHVudGlsIHY0IHdoZW4gd2UgY2FuXG4vLyBzYWZlbHkgc2hpZnQgdGhpbmdzIGFyb3VuZCAocGVyIFNlbVZlciBydWxlcykuXG4uYmctcHJpbWFyeSB7XG4gIC8vIEdpdmVuIHRoZSBjb250cmFzdCBoZXJlLCB0aGlzIGlzIHRoZSBvbmx5IGNsYXNzIHRvIGhhdmUgaXRzIGNvbG9yIGludmVydGVkXG4gIC8vIGF1dG9tYXRpY2FsbHkuXG4gIGNvbG9yOiAjZmZmO1xufVxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXByaW1hcnknLCAkYnJhbmQtcHJpbWFyeSk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1zdWNjZXNzJywgJHN0YXRlLXN1Y2Nlc3MtYmcpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctaW5mbycsICRzdGF0ZS1pbmZvLWJnKTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXdhcm5pbmcnLCAkc3RhdGUtd2FybmluZy1iZyk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1kYW5nZXInLCAkc3RhdGUtZGFuZ2VyLWJnKTtcblxuXG4vLyBQYWdlIGhlYWRlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ucGFnZS1oZWFkZXIge1xuICBwYWRkaW5nLWJvdHRvbTogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIDEpO1xuICBtYXJnaW46ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKiAyKSAwICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I7XG59XG5cblxuLy8gTGlzdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gVW5vcmRlcmVkIGFuZCBPcmRlcmVkIGxpc3RzXG51bCxcbm9sIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICB1bCxcbiAgb2wge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8gTGlzdCBvcHRpb25zXG5cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBmcm9tIGAubGlzdC11bnN0eWxlZGAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYXMgYEBtaXhpbiBsaXN0LXVuc3R5bGVkYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG59XG5cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIH1cbn1cblxuLy8gRGVzY3JpcHRpb24gTGlzdHNcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDsgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdFxuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG59XG5kdCxcbmRkIHtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xufVxuZHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbmRkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG59XG5cbi8vIEhvcml6b250YWwgZGVzY3JpcHRpb24gbGlzdHNcbi8vXG4vLyBEZWZhdWx0cyB0byBiZWluZyBzdGFja2VkIHdpdGhvdXQgYW55IG9mIHRoZSBiZWxvdyBzdHlsZXMgYXBwbGllZCwgdW50aWwgdGhlXG4vLyBncmlkIGJyZWFrcG9pbnQgaXMgcmVhY2hlZCAoZGVmYXVsdCBvZiB+NzY4cHgpLlxuXG4uZGwtaG9yaXpvbnRhbCB7XG4gIGRkIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDsgLy8gQ2xlYXIgdGhlIGZsb2F0ZWQgYGR0YCBpZiBhbiBlbXB0eSBgZGRgIGlzIHByZXNlbnRcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZGwtaG9yaXpvbnRhbC1icmVha3BvaW50KSB7XG4gICAgZHQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogKCRkbC1ob3Jpem9udGFsLW9mZnNldCAtIDIwKTtcbiAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBAaW5jbHVkZSB0ZXh0LW92ZXJmbG93O1xuICAgIH1cbiAgICBkZCB7XG4gICAgICBtYXJnaW4tbGVmdDogJGRsLWhvcml6b250YWwtb2Zmc2V0O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE1pc2Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQWJicmV2aWF0aW9ucyBhbmQgYWNyb255bXNcbmFiYnJbdGl0bGVdLFxuLy8gQWRkIGRhdGEtKiBhdHRyaWJ1dGUgdG8gaGVscCBvdXQgb3VyIHRvb2x0aXAgcGx1Z2luLCBwZXIgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy81MjU3XG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHtcbiAgY3Vyc29yOiBoZWxwO1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICRhYmJyLWJvcmRlci1jb2xvcjtcbn1cbi5pbml0aWFsaXNtIHtcbiAgZm9udC1zaXplOiA5MCU7XG4gIEBleHRlbmQgLnRleHQtdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbjogMCAwICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zaXplOiAkYmxvY2txdW90ZS1mb250LXNpemU7XG4gIGJvcmRlci1sZWZ0OiA1cHggc29saWQgJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xuXG4gIHAsXG4gIHVsLFxuICBvbCB7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gTm90ZTogRGVwcmVjYXRlZCBzbWFsbCBhbmQgLnNtYWxsIGFzIG9mIHYzLjEuMFxuICAvLyBDb250ZXh0OiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjYwXG4gIGZvb3RlcixcbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiA4MCU7IC8vIGJhY2sgdG8gZGVmYXVsdCBmb250LXNpemVcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgY29sb3I6ICRibG9ja3F1b3RlLXNtYWxsLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAxNCBcXDAwQTAnOyAvLyBlbSBkYXNoLCBuYnNwXG4gICAgfVxuICB9XG59XG5cbi8vIE9wcG9zaXRlIGFsaWdubWVudCBvZiBibG9ja3F1b3RlXG4vL1xuLy8gSGVhZHMgdXA6IGBibG9ja3F1b3RlLnB1bGwtcmlnaHRgIGhhcyBiZWVuIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMS4wLlxuLmJsb2NrcXVvdGUtcmV2ZXJzZSxcbmJsb2NrcXVvdGUucHVsbC1yaWdodCB7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgYm9yZGVyLXJpZ2h0OiA1cHggc29saWQgJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItbGVmdDogMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgLy8gQWNjb3VudCBmb3IgY2l0YXRpb25cbiAgZm9vdGVyLFxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICAmOmJlZm9yZSB7IGNvbnRlbnQ6ICcnOyB9XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnXFwwMEEwIFxcMjAxNCc7IC8vIG5ic3AsIGVtIGRhc2hcbiAgICB9XG4gIH1cbn1cblxuLy8gQWRkcmVzc2VzXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbn1cbiIsIi8vXG4vLyBDb2RlIChpbmxpbmUgYW5kIGJsb2NrKVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBJbmxpbmUgYW5kIGJsb2NrIGNvZGUgc3R5bGVzXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xufVxuXG4vLyBJbmxpbmUgY29kZVxuY29kZSB7XG4gIHBhZGRpbmc6IDJweCA0cHg7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xufVxuXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxua2JkIHtcbiAgcGFkZGluZzogMnB4IDRweDtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgcmdiYSgwLDAsMCwuMjUpO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuXG4vLyBCbG9ja3Mgb2YgY29kZVxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gMSkgLyAyKTtcbiAgbWFyZ2luOiAwIDAgKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgLSAxKTsgLy8gMTRweCB0byAxM3B4XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJlLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkcHJlLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbiIsIi8vXG4vLyBHcmlkIHN5c3RlbVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG4uY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyLWZpeGVkO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIHdpZHRoOiAkY29udGFpbmVyLXNtO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIHdpZHRoOiAkY29udGFpbmVyLW1kO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIHdpZHRoOiAkY29udGFpbmVyLWxnO1xuICB9XG59XG5cblxuLy8gRmx1aWQgY29udGFpbmVyXG4vL1xuLy8gVXRpbGl6ZXMgdGhlIG1peGluIG1lYW50IGZvciBmaXhlZCB3aWR0aCBjb250YWluZXJzLCBidXQgd2l0aG91dCBhbnkgZGVmaW5lZFxuLy8gd2lkdGggZm9yIGZsdWlkLCBmdWxsIHdpZHRoIGxheW91dHMuXG5cbi5jb250YWluZXItZmx1aWQge1xuICBAaW5jbHVkZSBjb250YWluZXItZml4ZWQ7XG59XG5cblxuLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIGFuZCBjbGVhciB0aGUgZmxvYXRzIG9mIHlvdXIgY29sdW1ucy5cblxuLnJvdyB7XG4gIEBpbmNsdWRlIG1ha2Utcm93O1xufVxuXG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zO1xuXG5cbi8vIEV4dHJhIHNtYWxsIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgZXh0cmEgc21hbGwgZGV2aWNlcyBsaWtlXG4vLyBzbWFydHBob25lcy5cblxuQGluY2x1ZGUgbWFrZS1ncmlkKHhzKTtcblxuXG4vLyBTbWFsbCBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBzbWFsbCBkZXZpY2UgcmFuZ2UsIGZyb20gcGhvbmVzXG4vLyB0byB0YWJsZXRzLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKHNtKTtcbn1cblxuXG4vLyBNZWRpdW0gZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgZGVza3RvcCBkZXZpY2UgcmFuZ2UuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQobWQpO1xufVxuXG5cbi8vIExhcmdlIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIGxhcmdlIGRlc2t0b3AgZGV2aWNlIHJhbmdlLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKGxnKTtcbn1cbiIsIi8vXG4vLyBUYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmc7XG59XG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG50aCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cblxuLy8gQmFzZWxpbmUgc3R5bGVzXG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgLy8gQ2VsbHNcbiAgPiB0aGVhZCxcbiAgPiB0Ym9keSxcbiAgPiB0Zm9vdCB7XG4gICAgPiB0ciB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIEJvdHRvbSBhbGlnbiBmb3IgY29sdW1uIGhlYWRpbmdzXG4gID4gdGhlYWQgPiB0ciA+IHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG4gIC8vIFJlbW92ZSB0b3AgYm9yZGVyIGZyb20gdGhlYWQgYnkgZGVmYXVsdFxuICA+IGNhcHRpb24gKyB0aGVhZCxcbiAgPiBjb2xncm91cCArIHRoZWFkLFxuICA+IHRoZWFkOmZpcnN0LWNoaWxkIHtcbiAgICA+IHRyOmZpcnN0LWNoaWxkIHtcbiAgICAgID4gdGgsXG4gICAgICA+IHRkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gQWNjb3VudCBmb3IgbXVsdGlwbGUgdGJvZHkgaW5zdGFuY2VzXG4gID4gdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAvLyBOZXN0aW5nXG4gIC50YWJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG4gIH1cbn1cblxuXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG5cbi50YWJsZS1jb25kZW5zZWQge1xuICA+IHRoZWFkLFxuICA+IHRib2R5LFxuICA+IHRmb290IHtcbiAgICA+IHRyIHtcbiAgICAgID4gdGgsXG4gICAgICA+IHRkIHtcbiAgICAgICAgcGFkZGluZzogJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gQm9yZGVyZWQgdmVyc2lvblxuLy9cbi8vIEFkZCBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgPiB0aGVhZCxcbiAgPiB0Ym9keSxcbiAgPiB0Zm9vdCB7XG4gICAgPiB0ciB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gdGhlYWQgPiB0ciB7XG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZy1hY2NlbnQ7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gID4gdGJvZHkgPiB0cjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnLWhvdmVyO1xuICB9XG59XG5cblxuLy8gVGFibGUgY2VsbCBzaXppbmdcbi8vXG4vLyBSZXNldCBkZWZhdWx0IHRhYmxlIGJlaGF2aW9yXG5cbnRhYmxlIGNvbFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgcG9zaXRpb246IHN0YXRpYzsgLy8gUHJldmVudCBib3JkZXIgaGlkaW5nIGluIEZpcmVmb3ggYW5kIElFOS0xMSAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2MjMpXG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiB0YWJsZS1jb2x1bW47XG59XG50YWJsZSB7XG4gIHRkLFxuICB0aCB7XG4gICAgJltjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IC8vIFByZXZlbnQgYm9yZGVyIGhpZGluZyBpbiBGaXJlZm94IGFuZCBJRTktMTEgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjIzKVxuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRhYmxlIGJhY2tncm91bmRzXG4vL1xuLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG5cbi8vIEdlbmVyYXRlIHRoZSBjb250ZXh0dWFsIHZhcmlhbnRzXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnYWN0aXZlJywgJHRhYmxlLWJnLWFjdGl2ZSk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnc3VjY2VzcycsICRzdGF0ZS1zdWNjZXNzLWJnKTtcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCdpbmZvJywgJHN0YXRlLWluZm8tYmcpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ3dhcm5pbmcnLCAkc3RhdGUtd2FybmluZy1iZyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnZGFuZ2VyJywgJHN0YXRlLWRhbmdlci1iZyk7XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBXcmFwIHlvdXIgdGFibGVzIGluIGAudGFibGUtcmVzcG9uc2l2ZWAgYW5kIHdlJ2xsIG1ha2UgdGhlbSBtb2JpbGUgZnJpZW5kbHlcbi8vIGJ5IGVuYWJsaW5nIGhvcml6b250YWwgc2Nyb2xsaW5nLiBPbmx5IGFwcGxpZXMgPDc2OHB4LiBFdmVyeXRoaW5nIGFib3ZlIHRoYXRcbi8vIHdpbGwgZGlzcGxheSBub3JtYWxseS5cblxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBtaW4taGVpZ2h0OiAwLjAxJTsgLy8gV29ya2Fyb3VuZCBmb3IgSUU5IGJ1ZyAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTQ4MzcpXG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICogMC43NSk7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG5cbiAgICAvLyBUaWdodGVuIHVwIHNwYWNpbmdcbiAgICA+IC50YWJsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAvLyBFbnN1cmUgdGhlIGNvbnRlbnQgZG9lc24ndCB3cmFwXG4gICAgICA+IHRoZWFkLFxuICAgICAgPiB0Ym9keSxcbiAgICAgID4gdGZvb3Qge1xuICAgICAgICA+IHRyIHtcbiAgICAgICAgICA+IHRoLFxuICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTcGVjaWFsIG92ZXJyaWRlcyBmb3IgdGhlIGJvcmRlcmVkIHRhYmxlc1xuICAgID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIGJvcmRlcjogMDtcblxuICAgICAgLy8gTnVrZSB0aGUgYXBwcm9wcmlhdGUgYm9yZGVycyBzbyB0aGF0IHRoZSBwYXJlbnQgY2FuIGhhbmRsZSB0aGVtXG4gICAgICA+IHRoZWFkLFxuICAgICAgPiB0Ym9keSxcbiAgICAgID4gdGZvb3Qge1xuICAgICAgICA+IHRyIHtcbiAgICAgICAgICA+IHRoOmZpcnN0LWNoaWxkLFxuICAgICAgICAgID4gdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgID4gdGg6bGFzdC1jaGlsZCxcbiAgICAgICAgICA+IHRkOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBPbmx5IG51a2UgdGhlIGxhc3Qgcm93J3MgYm90dG9tLWJvcmRlciBpbiBgdGJvZHlgIGFuZCBgdGZvb3RgIHNpbmNlXG4gICAgICAvLyBjaGFuY2VzIGFyZSB0aGVyZSB3aWxsIGJlIG9ubHkgb25lIGB0cmAgaW4gYSBgdGhlYWRgIGFuZCB0aGF0IHdvdWxkXG4gICAgICAvLyByZW1vdmUgdGhlIGJvcmRlciBhbHRvZ2V0aGVyLlxuICAgICAgPiB0Ym9keSxcbiAgICAgID4gdGZvb3Qge1xuICAgICAgICA+IHRyOmxhc3QtY2hpbGQge1xuICAgICAgICAgID4gdGgsXG4gICAgICAgICAgPiB0ZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gRm9ybXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gTm9ybWFsaXplIG5vbi1jb250cm9sc1xuLy9cbi8vIFJlc3R5bGUgYW5kIGJhc2VsaW5lIG5vbi1jb250cm9sIGZvcm0gZWxlbWVudHMuXG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG4gIC8vIENocm9tZSBhbmQgRmlyZWZveCBzZXQgYSBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gc28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgaXQgYmVoYXZlcyBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OS5cbiAgbWluLXdpZHRoOiAwO1xufVxuXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlICogMS41KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAkbGVnZW5kLWNvbG9yO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGVnZW5kLWJvcmRlci1jb2xvcjtcbn1cblxubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gRm9yY2UgSUU4IHRvIHdyYXAgbG9uZyBjb250ZW50IChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMzE0MSlcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuXG4vLyBOb3JtYWxpemUgZm9ybSBjb250cm9sc1xuLy9cbi8vIFdoaWxlIG1vc3Qgb2Ygb3VyIGZvcm0gc3R5bGVzIHJlcXVpcmUgZXh0cmEgY2xhc3Nlcywgc29tZSBiYXNpYyBub3JtYWxpemF0aW9uXG4vLyBpcyByZXF1aXJlZCB0byBlbnN1cmUgb3B0aW11bSBkaXNwbGF5IHdpdGggb3Igd2l0aG91dCB0aG9zZSBjbGFzc2VzIHRvIGJldHRlclxuLy8gYWRkcmVzcyBicm93c2VyIGluY29uc2lzdGVuY2llcy5cblxuLy8gT3ZlcnJpZGUgY29udGVudC1ib3ggaW4gTm9ybWFsaXplICgqIGlzbid0IHNwZWNpZmljIGVub3VnaClcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xufVxuXG4vLyBQb3NpdGlvbiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgYmV0dGVyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBtYXJnaW46IDRweCAwIDA7XG4gIG1hcmdpbi10b3A6IDFweCBcXDk7IC8vIElFOC05XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbmlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIE1ha2UgcmFuZ2UgaW5wdXRzIGJlaGF2ZSBsaWtlIHRleHR1YWwgZm9ybSBjb250cm9sc1xuaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBNYWtlIG11bHRpcGxlIHNlbGVjdCBlbGVtZW50cyBoZWlnaHQgbm90IGZpeGVkXG5zZWxlY3RbbXVsdGlwbGVdLFxuc2VsZWN0W3NpemVdIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyBGb2N1cyBmb3IgZmlsZSwgcmFkaW8sIGFuZCBjaGVja2JveFxuaW5wdXRbdHlwZT1cImZpbGVcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMge1xuICBAaW5jbHVkZSB0YWItZm9jdXM7XG59XG5cbi8vIEFkanVzdCBvdXRwdXQgZWxlbWVudFxub3V0cHV0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xufVxuXG5cbi8vIENvbW1vbiBmb3JtIGNvbnRyb2xzXG4vL1xuLy8gU2hhcmVkIHNpemUgYW5kIHR5cGUgcmVzZXRzIGZvciBmb3JtIGNvbnRyb2xzLiBBcHBseSBgLmZvcm0tY29udHJvbGAgdG8gYW55XG4vLyBvZiB0aGUgZm9sbG93aW5nIGZvcm0gY29udHJvbHM6XG4vL1xuLy8gc2VsZWN0XG4vLyB0ZXh0YXJlYVxuLy8gaW5wdXRbdHlwZT1cInRleHRcIl1cbi8vIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXVxuLy8gaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl1cbi8vIGlucHV0W3R5cGU9XCJkYXRlXCJdXG4vLyBpbnB1dFt0eXBlPVwibW9udGhcIl1cbi8vIGlucHV0W3R5cGU9XCJ0aW1lXCJdXG4vLyBpbnB1dFt0eXBlPVwid2Vla1wiXVxuLy8gaW5wdXRbdHlwZT1cIm51bWJlclwiXVxuLy8gaW5wdXRbdHlwZT1cImVtYWlsXCJdXG4vLyBpbnB1dFt0eXBlPVwidXJsXCJdXG4vLyBpbnB1dFt0eXBlPVwic2VhcmNoXCJdXG4vLyBpbnB1dFt0eXBlPVwidGVsXCJdXG4vLyBpbnB1dFt0eXBlPVwiY29sb3JcIl1cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7IC8vIE1ha2UgaW5wdXRzIGF0IGxlYXN0IHRoZSBoZWlnaHQgb2YgdGhlaXIgYnV0dG9uIGNvdW50ZXJwYXJ0IChiYXNlIGxpbmUtaGVpZ2h0ICsgcGFkZGluZyArIGJvcmRlcilcbiAgcGFkZGluZzogJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAkcGFkZGluZy1iYXNlLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MvaXNzdWVzLzIxNFxuICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1czsgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgPHNlbGVjdD5zIGluIENTUy5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IC4xNXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgLjE1cyk7XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXM7XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgQGluY2x1ZGUgcGxhY2Vob2xkZXI7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXG4gIC8vXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cbiAgJltkaXNhYmxlZF0sXG4gICZbcmVhZG9ubHldLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnLWRpc2FibGVkO1xuICAgIG9wYWNpdHk6IDE7IC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTVcbiAgfVxuXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIHRleHRhcmVhJiB0byB0ZXh0YXJlYS5mb3JtLWNvbnRyb2xcbn1cblxuLy8gUmVzZXQgaGVpZ2h0IGZvciBgdGV4dGFyZWFgc1xudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8vIFNlYXJjaCBpbnB1dHMgaW4gaU9TXG4vL1xuLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuLy8gYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4vLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5cbi8vIFNwZWNpYWwgc3R5bGVzIGZvciBpT1MgdGVtcG9yYWwgaW5wdXRzXG4vL1xuLy8gSW4gTW9iaWxlIFNhZmFyaSwgc2V0dGluZyBgZGlzcGxheTogYmxvY2tgIG9uIHRlbXBvcmFsIGlucHV0cyBjYXVzZXMgdGhlXG4vLyB0ZXh0IHdpdGhpbiB0aGUgaW5wdXQgdG8gYmVjb21lIHZlcnRpY2FsbHkgbWlzYWxpZ25lZC4gQXMgYSB3b3JrYXJvdW5kLCB3ZVxuLy8gc2V0IGEgcGl4ZWwgbGluZS1oZWlnaHQgdGhhdCBtYXRjaGVzIHRoZSBnaXZlbiBoZWlnaHQgb2YgdGhlIGlucHV0LCBidXQgb25seVxuLy8gZm9yIFNhZmFyaS4gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk4NDhcbi8vXG4vLyBOb3RlIHRoYXQgYXMgb2YgOS4zLCBpT1MgZG9lc24ndCBzdXBwb3J0IGB3ZWVrYC5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMCkge1xuICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4gIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdIHtcbiAgICAmLmZvcm0tY29udHJvbCB7XG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlO1xuICAgIH1cblxuICAgICYuaW5wdXQtc20sXG4gICAgLmlucHV0LWdyb3VwLXNtICYge1xuICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gICAgfVxuXG4gICAgJi5pbnB1dC1sZyxcbiAgICAuaW5wdXQtZ3JvdXAtbGcgJiB7XG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGb3JtIGdyb3Vwc1xuLy9cbi8vIERlc2lnbmVkIHRvIGhlbHAgd2l0aCB0aGUgb3JnYW5pemF0aW9uIGFuZCBzcGFjaW5nIG9mIHZlcnRpY2FsIGZvcm1zLiBGb3Jcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4ucmFkaW8sXG4uY2hlY2tib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gIGxhYmVsIHtcbiAgICBtaW4taGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7IC8vIEVuc3VyZSB0aGUgaW5wdXQgZG9lc24ndCBqdW1wIHdoZW4gdGhlcmUgaXMgbm8gdGV4dFxuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4ucmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuLnJhZGlvLWlubGluZSBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4uY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuLmNoZWNrYm94LWlubGluZSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgbWFyZ2luLXRvcDogNHB4IFxcOTtcbn1cblxuLnJhZGlvICsgLnJhZGlvLFxuLmNoZWNrYm94ICsgLmNoZWNrYm94IHtcbiAgbWFyZ2luLXRvcDogLTVweDsgLy8gTW92ZSB1cCBzaWJsaW5nIHJhZGlvcyBvciBjaGVja2JveGVzIGZvciB0aWdodGVyIHNwYWNpbmdcbn1cblxuLy8gUmFkaW9zIGFuZCBjaGVja2JveGVzIG9uIHNhbWUgbGluZVxuLnJhZGlvLWlubGluZSxcbi5jaGVja2JveC1pbmxpbmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ucmFkaW8taW5saW5lICsgLnJhZGlvLWlubGluZSxcbi5jaGVja2JveC1pbmxpbmUgKyAuY2hlY2tib3gtaW5saW5lIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IC8vIHNwYWNlIG91dCBjb25zZWN1dGl2ZSBpbmxpbmUgY29udHJvbHNcbn1cblxuLy8gQXBwbHkgc2FtZSBkaXNhYmxlZCBjdXJzb3IgdHdlYWsgYXMgZm9yIGlucHV0c1xuLy8gU29tZSBzcGVjaWFsIGNhcmUgaXMgbmVlZGVkIGJlY2F1c2UgPGxhYmVsPnMgZG9uJ3QgaW5oZXJpdCB0aGVpciBwYXJlbnQncyBgY3Vyc29yYC5cbi8vXG4vLyBOb3RlOiBOZWl0aGVyIHJhZGlvcyBub3IgY2hlY2tib3hlcyBjYW4gYmUgcmVhZG9ubHkuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxufVxuLy8gVGhlc2UgY2xhc3NlcyBhcmUgdXNlZCBkaXJlY3RseSBvbiA8bGFiZWw+c1xuLnJhZGlvLWlubGluZSxcbi5jaGVja2JveC1pbmxpbmUge1xuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG59XG4vLyBUaGVzZSBjbGFzc2VzIGFyZSB1c2VkIG9uIGVsZW1lbnRzIHdpdGggPGxhYmVsPiBkZXNjZW5kYW50c1xuLnJhZGlvLFxuLmNoZWNrYm94IHtcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGxhYmVsIHtcbiAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTdGF0aWMgZm9ybSBjb250cm9sIHRleHRcbi8vXG4vLyBBcHBseSBjbGFzcyB0byBhIGBwYCBlbGVtZW50IHRvIG1ha2UgYW55IHN0cmluZyBvZiB0ZXh0IGFsaWduIHdpdGggbGFiZWxzIGluXG4vLyBhIGhvcml6b250YWwgZm9ybSBsYXlvdXQuXG5cbi5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgLy8gU2l6ZSBpdCBhcHByb3ByaWF0ZWx5IG5leHQgdG8gcmVhbCBmb3JtIGNvbnRyb2xzXG4gIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xuICBwYWRkaW5nLWJvdHRvbTogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTtcbiAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIGZyb20gYHBgXG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAkZm9udC1zaXplLWJhc2UpO1xuXG4gICYuaW5wdXQtbGcsXG4gICYuaW5wdXQtc20ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFRoZSBgLmZvcm0tZ3JvdXAtKiBmb3JtLWNvbnRyb2xgIHZhcmlhdGlvbnMgYXJlIHNhZGx5IGR1cGxpY2F0ZWQgdG8gYXZvaWQgdGhlXG4vLyBpc3N1ZSBkb2N1bWVudGVkIGluIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTUwNzQuXG5cbkBpbmNsdWRlIGlucHV0LXNpemUoJy5pbnB1dC1zbScsICRpbnB1dC1oZWlnaHQtc21hbGwsICRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkbGluZS1oZWlnaHQtc21hbGwsICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsKTtcbi5mb3JtLWdyb3VwLXNtIHtcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtc21hbGw7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw7XG4gIH1cbiAgc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICB9XG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbiAgc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAkZm9udC1zaXplLXNtYWxsKTtcbiAgICBwYWRkaW5nOiAoJHBhZGRpbmctc21hbGwtdmVydGljYWwgKyAxKSAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtYWxsO1xuICB9XG59XG5cbkBpbmNsdWRlIGlucHV0LXNpemUoJy5pbnB1dC1sZycsICRpbnB1dC1oZWlnaHQtbGFyZ2UsICRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWxhcmdlLCAkbGluZS1oZWlnaHQtbGFyZ2UsICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlKTtcbi5mb3JtLWdyb3VwLWxnIHtcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtbGFyZ2U7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIH1cbiAgc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICB9XG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbiAgc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICAgIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAkZm9udC1zaXplLWxhcmdlKTtcbiAgICBwYWRkaW5nOiAoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgKyAxKSAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWxhcmdlO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIGZlZWRiYWNrIHN0YXRlc1xuLy9cbi8vIEFwcGx5IGNvbnRleHR1YWwgYW5kIHNlbWFudGljIHN0YXRlcyB0byBpbmRpdmlkdWFsIGZvcm0gY29udHJvbHMuXG5cbi5oYXMtZmVlZGJhY2sge1xuICAvLyBFbmFibGUgYWJzb2x1dGUgcG9zaXRpb25pbmdcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC8vIEVuc3VyZSBpY29ucyBkb24ndCBvdmVybGFwIHRleHRcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgcGFkZGluZy1yaWdodDogKCRpbnB1dC1oZWlnaHQtYmFzZSAqIDEuMjUpO1xuICB9XG59XG4vLyBGZWVkYmFjayBpY29uIChyZXF1aXJlcyAuZ2x5cGhpY29uIGNsYXNzZXMpXG4uZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAyOyAvLyBFbnN1cmUgaWNvbiBpcyBhYm92ZSBpbnB1dCBncm91cHNcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LWJhc2U7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmlucHV0LWxnICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcbi5pbnB1dC1ncm91cC1sZyArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uZm9ybS1ncm91cC1sZyAuZm9ybS1jb250cm9sICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xufVxuLmlucHV0LXNtICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcbi5pbnB1dC1ncm91cC1zbSArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uZm9ybS1ncm91cC1zbSAuZm9ybS1jb250cm9sICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xufVxuXG4vLyBGZWVkYmFjayBzdGF0ZXNcbi5oYXMtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRzdGF0ZS1zdWNjZXNzLXRleHQsICRzdGF0ZS1zdWNjZXNzLXRleHQsICRzdGF0ZS1zdWNjZXNzLWJnKTtcbn1cbi5oYXMtd2FybmluZyB7XG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRzdGF0ZS13YXJuaW5nLXRleHQsICRzdGF0ZS13YXJuaW5nLXRleHQsICRzdGF0ZS13YXJuaW5nLWJnKTtcbn1cbi5oYXMtZXJyb3Ige1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtZGFuZ2VyLXRleHQsICRzdGF0ZS1kYW5nZXItdGV4dCwgJHN0YXRlLWRhbmdlci1iZyk7XG59XG5cbi8vIFJlcG9zaXRpb24gZmVlZGJhY2sgaWNvbiBpZiBpbnB1dCBoYXMgdmlzaWJsZSBsYWJlbCBhYm92ZVxuLmhhcy1mZWVkYmFjayBsYWJlbCB7XG5cbiAgJiB+IC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgIHRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArIDUpOyAvLyBIZWlnaHQgb2YgdGhlIGBsYWJlbGAgYW5kIGl0cyBtYXJnaW5cbiAgfVxuICAmLnNyLW9ubHkgfiAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICB0b3A6IDA7XG4gIH1cbn1cblxuXG4vLyBIZWxwIHRleHRcbi8vXG4vLyBBcHBseSB0byBhbnkgZWxlbWVudCB5b3Ugd2lzaCB0byBjcmVhdGUgbGlnaHQgdGV4dCBmb3IgcGxhY2VtZW50IGltbWVkaWF0ZWx5XG4vLyBiZWxvdyBhIGZvcm0gY29udHJvbC4gVXNlIGZvciBnZW5lcmFsIGhlbHAsIGZvcm1hdHRpbmcsIG9yIGluc3RydWN0aW9uYWwgdGV4dC5cblxuLmhlbHAtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jazsgLy8gYWNjb3VudCBmb3IgYW55IGVsZW1lbnQgdXNpbmcgaGVscC1ibG9ja1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGNvbG9yOiBsaWdodGVuKCR0ZXh0LWNvbG9yLCAyNSUpOyAvLyBsaWdodGVuIHRoZSB0ZXh0IHNvbWUgZm9yIGNvbnRyYXN0XG59XG5cblxuLy8gSW5saW5lIGZvcm1zXG4vL1xuLy8gTWFrZSBmb3JtcyBhcHBlYXIgaW5saW5lKC1ibG9jaykgYnkgYWRkaW5nIHRoZSBgLmZvcm0taW5saW5lYCBjbGFzcy4gSW5saW5lXG4vLyBmb3JtcyBiZWdpbiBzdGFja2VkIG9uIGV4dHJhIHNtYWxsIChtb2JpbGUpIGRldmljZXMgYW5kIHRoZW4gZ28gaW5saW5lIHdoZW5cbi8vIHZpZXdwb3J0cyByZWFjaCA8NzY4cHguXG4vL1xuLy8gUmVxdWlyZXMgd3JhcHBpbmcgaW5wdXRzIGFuZCBsYWJlbHMgd2l0aCBgLmZvcm0tZ3JvdXBgIGZvciBwcm9wZXIgZGlzcGxheSBvZlxuLy8gZGVmYXVsdCBIVE1MIGZvcm0gY29udHJvbHMgYW5kIG91ciBjdXN0b20gZm9ybSBjb250cm9scyAoZS5nLiwgaW5wdXQgZ3JvdXBzKS5cbi8vXG4vLyBIZWFkcyB1cCEgVGhpcyBpcyBtaXhpbi1lZCBpbnRvIGAubmF2YmFyLWZvcm1gIGluIG5hdmJhcnMubGVzcy5cblxuLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGZyb20gYC5mb3JtLWlubGluZWAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuQG1peGluIGZvcm0taW5saW5lIHtcblxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgLy8gSW5saW5lLWJsb2NrIGFsbCB0aGUgdGhpbmdzIGZvciBcImlubGluZVwiXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gSW4gbmF2YmFyLWZvcm0sIGFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bzsgLy8gUHJldmVudCBsYWJlbHMgZnJvbSBzdGFja2luZyBhYm92ZSBpbnB1dHMgaW4gYC5mb3JtLWdyb3VwYFxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBNYWtlIHN0YXRpYyBjb250cm9scyBiZWhhdmUgbGlrZSByZWd1bGFyIG9uZXNcbiAgICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS10YWJsZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgIC5pbnB1dC1ncm91cC1hZGRvbixcbiAgICAgIC5pbnB1dC1ncm91cC1idG4sXG4gICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSW5wdXQgZ3JvdXBzIG5lZWQgdGhhdCAxMDAlIHdpZHRoIHRob3VnaFxuICAgIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIG9uIHJhZGlvcy9jaGVja2JveGVzIHRoYXQgd2VyZSB1c2VkIGZvciBzdGFja2luZywgYW5kXG4gICAgLy8gdGhlbiB1bmRvIHRoZSBmbG9hdGluZyBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgdG8gbWF0Y2guXG4gICAgLnJhZGlvLFxuICAgIC5jaGVja2JveCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAucmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAgIC5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLy8gUmUtb3ZlcnJpZGUgdGhlIGZlZWRiYWNrIGljb24uXG4gICAgLmhhcy1mZWVkYmFjayAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG4gIH1cbn1cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhcyBgQG1peGluIGZvcm0taW5saW5lYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XG4uZm9ybS1pbmxpbmUge1xuICBAaW5jbHVkZSBmb3JtLWlubGluZTtcbn1cblxuXG5cbi8vIEhvcml6b250YWwgZm9ybXNcbi8vXG4vLyBIb3Jpem9udGFsIGZvcm1zIGFyZSBidWlsdCBvbiBncmlkIGNsYXNzZXMgYW5kIGFsbG93IHlvdSB0byBjcmVhdGUgZm9ybXMgd2l0aFxuLy8gbGFiZWxzIG9uIHRoZSBsZWZ0IGFuZCBpbnB1dHMgb24gdGhlIHJpZ2h0LlxuXG4uZm9ybS1ob3Jpem9udGFsIHtcblxuICAvLyBDb25zaXN0ZW50IHZlcnRpY2FsIGFsaWdubWVudCBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXNcbiAgLy9cbiAgLy8gTGFiZWxzIGFsc28gZ2V0IHNvbWUgcmVzZXQgc3R5bGVzLCBidXQgdGhhdCBpcyBzY29wZWQgdG8gYSBtZWRpYSBxdWVyeSBiZWxvdy5cbiAgLnJhZGlvLFxuICAuY2hlY2tib3gsXG4gIC5yYWRpby1pbmxpbmUsXG4gIC5jaGVja2JveC1pbmxpbmUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTsgLy8gRGVmYXVsdCBwYWRkaW5nIHBsdXMgYSBib3JkZXJcbiAgfVxuICAvLyBBY2NvdW50IGZvciBwYWRkaW5nIHdlJ3JlIGFkZGluZyB0byBlbnN1cmUgdGhlIGFsaWdubWVudCBhbmQgb2YgaGVscCB0ZXh0XG4gIC8vIGFuZCBvdGhlciBjb250ZW50IGJlbG93IGl0ZW1zXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94IHtcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKSk7XG4gIH1cblxuICAvLyBNYWtlIGZvcm0gZ3JvdXBzIGJlaGF2ZSBsaWtlIHJvd3NcbiAgLmZvcm0tZ3JvdXAge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93O1xuICB9XG5cbiAgLy8gUmVzZXQgc3BhY2luZyBhbmQgcmlnaHQgYWxpZ24gbGFiZWxzLCBidXQgc2NvcGUgdG8gbWVkaWEgcXVlcmllcyBzbyB0aGF0XG4gIC8vIGxhYmVscyBvbiBuYXJyb3cgdmlld3BvcnRzIHN0YWNrIHRoZSBzYW1lIGFzIGEgZGVmYXVsdCBmb3JtIGV4YW1wbGUuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpOyAvLyBEZWZhdWx0IHBhZGRpbmcgcGx1cyBhIGJvcmRlclxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbGlkYXRpb24gc3RhdGVzXG4gIC8vXG4gIC8vIFJlcG9zaXRpb24gdGhlIGljb24gYmVjYXVzZSBpdCdzIG5vdyB3aXRoaW4gYSBncmlkIGNvbHVtbiBhbmQgY29sdW1ucyBoYXZlXG4gIC8vIGBwb3NpdGlvbjogcmVsYXRpdmU7YCBvbiB0aGVtLiBBbHNvIGFjY291bnRzIGZvciB0aGUgZ3JpZCBndXR0ZXIgcGFkZGluZy5cbiAgLmhhcy1mZWVkYmFjayAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICByaWdodDogZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcbiAgfVxuXG4gIC8vIEZvcm0gZ3JvdXAgc2l6ZXNcbiAgLy9cbiAgLy8gUXVpY2sgdXRpbGl0eSBjbGFzcyBmb3IgYXBwbHlpbmcgYC5pbnB1dC1sZ2AgYW5kIGAuaW5wdXQtc21gIHN0eWxlcyB0byB0aGVcbiAgLy8gaW5wdXRzIGFuZCBsYWJlbHMgd2l0aGluIGEgYC5mb3JtLWdyb3VwYC5cbiAgLmZvcm0tZ3JvdXAtbGcge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICsgMSk7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm0tZ3JvdXAtc20ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICsgMSk7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCdXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2Ugc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBGb3IgaW5wdXQuYnRuXG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLWJhc2UtdmVydGljYWwsICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1iYXNlLCAkbGluZS1oZWlnaHQtYmFzZSwgJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICBAaW5jbHVkZSB1c2VyLXNlbGVjdChub25lKTtcblxuICAmLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBAaW5jbHVkZSB0YWItZm9jdXM7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6ICRidG4tZGVmYXVsdC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgM3B4IDVweCByZ2JhKDAsMCwwLC4xMjUpKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIEBpbmNsdWRlIG9wYWNpdHkoLjY1KTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEuYnRuXG59XG5cbmEuYnRuIHtcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyAvLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tZGVmYXVsdCB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tZGVmYXVsdC1jb2xvciwgJGJ0bi1kZWZhdWx0LWJnLCAkYnRuLWRlZmF1bHQtYm9yZGVyKTtcbn1cbi5idG4tcHJpbWFyeSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tcHJpbWFyeS1jb2xvciwgJGJ0bi1wcmltYXJ5LWJnLCAkYnRuLXByaW1hcnktYm9yZGVyKTtcbn1cbi8vIFN1Y2Nlc3MgYXBwZWFycyBhcyBncmVlblxuLmJ0bi1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1zdWNjZXNzLWNvbG9yLCAkYnRuLXN1Y2Nlc3MtYmcsICRidG4tc3VjY2Vzcy1ib3JkZXIpO1xufVxuLy8gSW5mbyBhcHBlYXJzIGFzIGJsdWUtZ3JlZW5cbi5idG4taW5mbyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4taW5mby1jb2xvciwgJGJ0bi1pbmZvLWJnLCAkYnRuLWluZm8tYm9yZGVyKTtcbn1cbi8vIFdhcm5pbmcgYXBwZWFycyBhcyBvcmFuZ2Vcbi5idG4td2FybmluZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4td2FybmluZy1jb2xvciwgJGJ0bi13YXJuaW5nLWJnLCAkYnRuLXdhcm5pbmctYm9yZGVyKTtcbn1cbi8vIERhbmdlciBhbmQgZXJyb3IgYXBwZWFyIGFzIHJlZFxuLmJ0bi1kYW5nZXIge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWRhbmdlci1jb2xvciwgJGJ0bi1kYW5nZXItYmcsICRidG4tZGFuZ2VyLWJvcmRlcik7XG59XG5cblxuLy8gTGluayBidXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgJixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJ1dHRvbiBTaXplc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1sZyB7XG4gIC8vIGxpbmUtaGVpZ2h0OiBlbnN1cmUgZXZlbi1udW1iZXJlZCBoZWlnaHQgb2YgYnV0dG9uIG5leHQgdG8gbGFyZ2UgaW5wdXRcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRmb250LXNpemUtbGFyZ2UsICRsaW5lLWhlaWdodC1sYXJnZSwgJGJ0bi1ib3JkZXItcmFkaXVzLWxhcmdlKTtcbn1cbi5idG4tc20ge1xuICAvLyBsaW5lLWhlaWdodDogZW5zdXJlIHByb3BlciBoZWlnaHQgb2YgYnV0dG9uIG5leHQgdG8gc21hbGwgaW5wdXRcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsKTtcbn1cbi5idG4teHMge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy14cy12ZXJ0aWNhbCwgJHBhZGRpbmcteHMtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkYnRuLWJvcmRlci1yYWRpdXMtc21hbGwpO1xufVxuXG5cbi8vIEJsb2NrIGJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xuLmJ0bi1ibG9jayArIC5idG4tYmxvY2sge1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbi8vIFNwZWNpZmljaXR5IG92ZXJyaWRlc1xuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAmLmJ0bi1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vXG4vLyBCcmVhZGNydW1ic1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uYnJlYWRjcnVtYiB7XG4gIHBhZGRpbmc6ICRicmVhZGNydW1iLXBhZGRpbmctdmVydGljYWwgJGJyZWFkY3J1bWItcGFkZGluZy1ob3Jpem9udGFsO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmVhZGNydW1iLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICsgbGk6YmVmb3JlIHtcbiAgICAgIC8vIFtjb252ZXJ0ZXJdIFdvcmthcm91bmQgZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL2xpYnNhc3MvaXNzdWVzLzExMTVcbiAgICAgICRuYnNwOiBcIlxcMDBhMFwiO1xuICAgICAgY29udGVudDogXCIjeyRicmVhZGNydW1iLXNlcGFyYXRvcn0jeyRuYnNwfVwiOyAvLyBVbmljb2RlIHNwYWNlIGFkZGVkIHNpbmNlIGlubGluZS1ibG9jayBtZWFucyBub24tY29sbGFwc2luZyB3aGl0ZS1zcGFjZVxuICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgPiAuYWN0aXZlIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yO1xuICB9XG59XG4iLCIvL1xuLy8gUGFnaW5hdGlvbiAobXVsdGlwbGUgcGFnZXMpXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnBhZ2UtbnVtYmVycyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46ICRsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZTsgLy8gUmVtb3ZlIGxpc3Qtc3R5bGUgYW5kIGJsb2NrLWxldmVsIGRlZmF1bHRzXG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gQ29sbGFwc2Ugd2hpdGUtc3BhY2VcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXI7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IGxpID4gYSxcbiAgPiBsaSA+IHNwYW4ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjtcbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUgPiBhLFxuICA+IC5hY3RpdmUgPiBzcGFuIHtcbiAgICAmLFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG4gIH1cblxuICA+IC5kaXNhYmxlZCB7XG4gICAgPiBzcGFuLFxuICAgID4gc3Bhbjpob3ZlcixcbiAgICA+IHNwYW46Zm9jdXMsXG4gICAgPiBhLFxuICAgID4gYTpob3ZlcixcbiAgICA+IGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc7XG4gICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjtcbiAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBMYXJnZVxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRmb250LXNpemUtbGFyZ2UsICRsaW5lLWhlaWdodC1sYXJnZSwgJGJvcmRlci1yYWRpdXMtbGFyZ2UpO1xufVxuXG4vLyBTbWFsbFxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJvcmRlci1yYWRpdXMtc21hbGwpO1xufVxuIiwiLy9cbi8vIFBhZ2VyIHBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLnBhZ2VyIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46ICRsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogNXB4IDE0cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZXItYmc7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcGFnZXItYm9yZGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogJHBhZ2VyLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuXG4gICAgPiBhOmhvdmVyLFxuICAgID4gYTpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZXItaG92ZXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5leHQge1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5wcmV2aW91cyB7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gIH1cblxuICAuZGlzYWJsZWQge1xuICAgID4gYSxcbiAgICA+IGE6aG92ZXIsXG4gICAgPiBhOmZvY3VzLFxuICAgID4gc3BhbiB7XG4gICAgICBjb2xvcjogJHBhZ2VyLWRpc2FibGVkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2VyLWJnO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRW1iZWRzIHJlc3BvbnNpdmVcbi8vXG4vLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSxcbiAgaWZyYW1lLFxuICBlbWJlZCxcbiAgb2JqZWN0LFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi8vIE1vZGlmaWVyIGNsYXNzIGZvciAxNjo5IGFzcGVjdCByYXRpb1xuLmVtYmVkLXJlc3BvbnNpdmUtMTZieTkge1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xufVxuXG4vLyBNb2RpZmllciBjbGFzcyBmb3IgNDozIGFzcGVjdCByYXRpb1xuLmVtYmVkLXJlc3BvbnNpdmUtNGJ5MyB7XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG59XG4iLCIvL1xuLy8gQ2xvc2UgaWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmNsb3NlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgKiAxLjUpO1xuICBmb250LXdlaWdodDogJGNsb3NlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgdGV4dC1zaGFkb3c6ICRjbG9zZS10ZXh0LXNoYWRvdztcbiAgQGluY2x1ZGUgb3BhY2l0eSguMik7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIEBpbmNsdWRlIG9wYWNpdHkoLjUpO1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGJ1dHRvbiYgdG8gYnV0dG9uLmNsb3NlXG59XG5cbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcbmJ1dHRvbi5jbG9zZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuIiwiLy9cbi8vIFV0aWxpdHkgY2xhc3Nlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBGbG9hdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmNsZWFyZml4IHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG4uY2VudGVyLWJsb2NrIHtcbiAgQGluY2x1ZGUgY2VudGVyLWJsb2NrO1xufVxuLnB1bGwtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cbi5wdWxsLWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIFRvZ2dsaW5nIGNvbnRlbnRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gTm90ZTogRGVwcmVjYXRlZCAuaGlkZSBpbiBmYXZvciBvZiAuaGlkZGVuIG9yIC5zci1vbmx5IChhcyBhcHByb3ByaWF0ZSkgaW4gdjMuMC4xXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5zaG93IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlO1xufVxuXG5cbi8vIEhpZGUgZnJvbSBzY3JlZW5yZWFkZXJzIGFuZCBicm93c2Vyc1xuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuXG4vLyBGb3IgQWZmaXggcGx1Z2luXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5hZmZpeCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cbiIsIi8vXG4vLyBSZXNwb25zaXZlOiBVdGlsaXR5IGNsYXNzZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSUUxMCBpbiBXaW5kb3dzIChQaG9uZSkgOFxuLy9cbi8vIFN1cHBvcnQgZm9yIHJlc3BvbnNpdmUgdmlld3MgdmlhIG1lZGlhIHF1ZXJpZXMgaXMga2luZCBvZiBib3JrZWQgaW4gSUUxMCwgZm9yXG4vLyBTdXJmYWNlL2Rlc2t0b3AgaW4gc3BsaXQgdmlldyBhbmQgZm9yIFdpbmRvd3MgUGhvbmUgOC4gVGhpcyBwYXJ0aWN1bGFyIGZpeFxuLy8gbXVzdCBiZSBhY2NvbXBhbmllZCBieSBhIHNuaXBwZXQgb2YgSmF2YVNjcmlwdCB0byBzbmlmZiB0aGUgdXNlciBhZ2VudCBhbmRcbi8vIGFwcGx5IHNvbWUgY29uZGl0aW9uYWwgQ1NTIHRvICpvbmx5KiB0aGUgU3VyZmFjZS9kZXNrdG9wIFdpbmRvd3MgOC4gTG9vayBhdFxuLy8gb3VyIEdldHRpbmcgU3RhcnRlZCBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIG9uIHRoaXMgYnVnLlxuLy9cbi8vIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIGZvbGxvd2luZzpcbi8vXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMDQ5N1xuLy8gRG9jczogaHR0cDovL2dldGJvb3RzdHJhcC5jb20vZ2V0dGluZy1zdGFydGVkLyNzdXBwb3J0LWllMTAtd2lkdGhcbi8vIFNvdXJjZTogaHR0cDovL3RpbWthZGxlYy5jb20vMjAxMy8wMS93aW5kb3dzLXBob25lLTgtYW5kLWRldmljZS13aWR0aC9cbi8vIFNvdXJjZTogaHR0cDovL3RpbWthZGxlYy5jb20vMjAxMi8xMC9pZTEwLXNuYXAtbW9kZS1hbmQtcmVzcG9uc2l2ZS1kZXNpZ24vXG5cbkBhdC1yb290IHtcbiAgQC1tcy12aWV3cG9ydCB7XG4gICAgd2lkdGg6IGRldmljZS13aWR0aDtcbiAgfVxufVxuXG5cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXhzLCAudmlzaWJsZS1zbSwgLnZpc2libGUtbWQsIGFuZCAudmlzaWJsZS1sZyBhcyBvZiB2My4yLjBcblxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXhzJyk7XG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtc20nKTtcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1tZCcpO1xuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLWxnJyk7XG5cbi52aXNpYmxlLXhzLWJsb2NrLFxuLnZpc2libGUteHMtaW5saW5lLFxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtc20tYmxvY2ssXG4udmlzaWJsZS1zbS1pbmxpbmUsXG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1tZC1ibG9jayxcbi52aXNpYmxlLW1kLWlubGluZSxcbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayxcbi52aXNpYmxlLWxnLWJsb2NrLFxuLnZpc2libGUtbGctaW5saW5lLFxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS14cycpO1xufVxuLnZpc2libGUteHMtYmxvY2sge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS14cy1pbmxpbmUge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1zbScpO1xufVxuLnZpc2libGUtc20tYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXNtLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1tZCcpO1xufVxuLnZpc2libGUtbWQtYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLW1kLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcbn1cbi52aXNpYmxlLWxnLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbGctaW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi14cycpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1zbScpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1tZCcpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tbGcnKTtcbn1cblxuXG4vLyBQcmludCB1dGlsaXRpZXNcbi8vXG4vLyBNZWRpYSBxdWVyaWVzIGFyZSBwbGFjZWQgb24gdGhlIGluc2lkZSB0byBiZSBtaXhpbi1mcmllbmRseS5cblxuLy8gTm90ZTogRGVwcmVjYXRlZCAudmlzaWJsZS1wcmludCBhcyBvZiB2My4yLjBcblxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXByaW50Jyk7XG5cbkBtZWRpYSBwcmludCB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtcHJpbnQnKTtcbn1cbi52aXNpYmxlLXByaW50LWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQtaW5saW5lIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXByaW50LWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXByaW50Jyk7XG59XG4iLCJoMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG4uaDEsXG4uaDIsXG4uaDMsXG4uaDQsXG4uaDUsXG4uaDYge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG5oMSxcbmgyLFxuaDMsXG4uaDEsXG4uaDIsXG4uaDMge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG5oNCxcbmg1LFxuaDYsXG4uaDQsXG4uaDUsXG4uaDYge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuYSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuM3MgZWFzZS1pbi1vdXQpO1xufVxuXG5pbnB1dDpmb2N1cyxcbnRleHRhcmVhOmZvY3VzLFxua2V5Z2VuOmZvY3VzLFxuc2VsZWN0OmZvY3VzLFxuOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbmJsb2NrcXVvdGUge1xuICBhIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBbGlnbm1lbnRzXG4uYWxpZ25sZWZ0IHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVlbTtcbn1cblxuLmFsaWducmlnaHQge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDEuNWVtO1xufVxuXG4uYWxpZ25jZW50ZXIge1xuICBjbGVhcjogYm90aDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi53cC1jYXB0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi53cC1jYXB0aW9uLXRleHQge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkM2Q1ZDM7XG4gIGJvcmRlci10b3A6IDA7XG59XG5cbi5ieXBvc3RhdXRob3Ige1xuICBjb2xvcjogZ3JleTtcbn1cblxuLmxlYWQge1xuICBmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNztcbiAgY29sb3I6ICMyMjI7XG59XG5cbi5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuXG4gICYtdHdvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgd2lkdGg6IDc1cHg7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICB3aWR0aDogNjBweDtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIHdpZHRoOiA2MnB4O1xuICAgIH1cblxuICAgID4gc3BhbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbWFyZ2luOiAwIDEwcHg7XG5cbiAgICAgICY6YmVmb3JlLFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICB3aWR0aDogMnB4O1xuICAgICAgICBtYXJnaW46IDAgMnB4O1xuICAgICAgICB0cmFuc2Zvcm06IHNrZXcoLTM1ZGVnKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLmVudHJ5LWNvbnRlbnQge1xuXG4gIGZpZ3VyZSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgdGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICB0aCwgdGQge1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXI7XG4gICAgfVxuICB9XG5cbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206IDIuMnJlbTtcbiAgICBkdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgfVxuICAgIGRkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuMnJlbTtcbiAgICB9XG4gIH1cblxuICAucG9zdC1wYXNzd29yZC1mb3JtIHtcbiAgICBpbnB1dFt0eXBlPXBhc3N3b3JkXSB7XG5cbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlcjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgICBwYWRkaW5nOiA3cHggMThweCA2cHg7XG4gICAgfVxuICB9XG5cbiAgLndwLWF1ZGlvLXNob3J0Y29kZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi4ycmVtO1xuICB9XG5cbiAgLy8gR2FsbGVyeSBDb2x1bW5zXG4gIC5nYWxsZXJ5IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjJyZW07XG4gIH1cblxuICAuZ2FsbGVyeS1pdGVtIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIHdpZHRoOiAzMiU7XG4gICAgbWFyZ2luLXJpZ2h0OiAyJTtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgYSBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBhOmhvdmVyIGltZyxcbiAgICBhOmZvY3VzIGltZyB7XG4gICAgICAtd2Via2l0LWZpbHRlcjogb3BhY2l0eSg2MCUpO1xuICAgICAgZmlsdGVyOiBvcGFjaXR5KDYwJSk7XG4gICAgfVxuXG4gICAgLmdhbGxlcnktY2FwdGlvbiB7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIH1cbiAgfVxuXG4gIC5nYWxsZXJ5LWNvbHVtbnMtMiB7XG4gICAgLmdhbGxlcnktaXRlbSB7XG4gICAgICBtYXgtd2lkdGg6IDUwJTtcblxuICAgICAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nYWxsZXJ5LWNvbHVtbnMtMyB7XG4gICAgLmdhbGxlcnktaXRlbSB7XG4gICAgICBtYXgtd2lkdGg6IDMzLjMzJTtcblxuICAgICAgJjpudGgtY2hpbGQoM24pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nYWxsZXJ5LWNvbHVtbnMtNCB7XG4gICAgLmdhbGxlcnktaXRlbSB7XG4gICAgICBtYXgtd2lkdGg6IDIzLjUlO1xuXG4gICAgICAmOm50aC1jaGlsZCg0bikge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogNDklO1xuICAgICAgbWF4LXdpZHRoOiA0OSUgIWltcG9ydGFudDtcblxuICAgICAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG5cblxuLyogVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVycy4gKi9cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd29yZC13cmFwOiBub3JtYWwgIWltcG9ydGFudDsgLyogTWFueSBzY3JlZW4gcmVhZGVyIGFuZCBicm93c2VyIGNvbWJpbmF0aW9ucyBhbm5vdW5jZSBicm9rZW4gd29yZHMgYXMgdGhleSB3b3VsZCBhcHBlYXIgdmlzdWFsbHkuICovXG59XG5cbi5zY3JlZW4tcmVhZGVyLXRleHQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgY2xpcDogYXV0byAhaW1wb3J0YW50O1xuICBjb2xvcjogIzIxNzU5YjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGhlaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAxNXB4IDIzcHggMTRweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0b3A6IDVweDtcbiAgd2lkdGg6IGF1dG87XG4gIHotaW5kZXg6IDEwMDAwMDsgLyogQWJvdmUgV1AgdG9vbGJhci4gKi9cbn1cblxuLm5vLXBhZGRpbmcge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5uby1tYXJnaW4ge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cblxuLmNvbC1mdWxsLXdpZHRoIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICArIC5jb2wtZnVsbC13aWR0aCB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cbiAgfVxufVxuXG4uaGVhZGluZy1jb2xvci13aGl0ZXtcblxuICAuc2VjdGlvbi1oZWFkZXIgLnNlY3Rpb24tc3ViLXRpdGxlLFxuICAuc2VjdGlvbi1oZWFkZXIgLnNlY3Rpb24tdGl0bGV7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICAubGluZS10d297XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyLFxuICAgID4gc3BhbjpiZWZvcmUsXG4gICAgPiBzcGFuOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG59XG5cbi5tYWluLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctdG9wOiA2MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDtcblxuICAmLmZsdWlkLXBhZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgcGFkZGluZy10b3A6IDkwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xuICB9XG59IiwiLmJ0biB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDEuN3B4O1xuICBwYWRkaW5nLWJvdHRvbTogN3B4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICYtbGcge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgfVxuXG4gICYtc20ge1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gIH1cblxuICAmLXhzIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICB9XG5cbiAgJi1kZWZhdWx0OmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gIH1cbn1cblxuLmJ0bi13aWRlIHtcbiAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xufVxuXG4uYnRuLWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDk4cHg7XG5cbiAgLmZhIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogNDhweDtcbiAgICBmb250LXNpemU6IDIxcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDdweCA1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBiYTZkODtcbiAgICBjb2xvcjogI2Y1ZmNmZDtcbiAgfVxufVxuXG4uYnRuLW91dGxpbmUge1xuICBib3JkZXItd2lkdGg6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbn1cblxuLmJ0bi1ibGFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gIGJvcmRlci1jb2xvcjogIzMzMztcbiAgY29sb3I6ICNmZmY7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxufVxuXG4uYnRuLW91dGxpbmUtYmxhY2sge1xuICBib3JkZXItd2lkdGg6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMzMzO1xuICBjb2xvcjogIzMzMztcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICAgIGJvcmRlci1jb2xvcjogIzMzMztcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxufVxuXG4uYnRuLWxpbmsge1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAuZmEge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBtYXJnaW4tbGVmdDogMXB4O1xuICB9XG59XG5cbi5idG4tc21hbGwge1xuICBwYWRkaW5nOiAxMHB4IDM2cHggOHB4O1xufVxuXG4uYnRuLW1lZGl1bSB7XG4gIHBhZGRpbmc6IDE2cHggNzJweCAxNHB4O1xufVxuXG4uYnRuLWxhcmdlIHtcbiAgcGFkZGluZzogMTlweCAxMDNweCAxN3B4O1xufSIsImlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJ1cmxcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxudGV4dGFyZWEge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMTBweCAxOHB4O1xuICBtaW4taGVpZ2h0OiA0MHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWJlYmViO1xuXG4gICYuZXJyb3Ige1xuICAgIGJvcmRlci1jb2xvcjogI2ZmMDAwMDtcbiAgfVxufVxuXG5sYWJlbC5lcnJvciB7XG4gIG1hcmdpbjogMCAwIDEwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogI2ZmMDAwMDtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuI3Byb2dyZXNzLWxvYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbn1cblxuaW1nI3Byb2dyZXNzLWxvYWRlciB7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xufVxuXG5idXR0b24sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgcGFkZGluZzogMTBweCAxOHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRsaW5rLWhvdmVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgY29sb3I6ICNmZmY7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuICB9XG59XG5cbmlucHV0W3R5cGU9bnVtYmVyXSB7LW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7fVxuXG50ZXh0YXJlYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDE3MHB4O1xuICByZXNpemU6IG5vbmU7XG59XG5cbi5zdGF0dXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWJlYmViO1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBwYWRkaW5nOiAxNXB4O1xuICBkaXNwbGF5OiBub25lO1xuXG4gICYuZXJyb3Ige1xuICAgIGNvbG9yOiAjZmYwMDAwO1xuICB9XG5cbiAgJi5zdWNjZXNzIHtcbiAgICBjb2xvcjogZ3JlZW47XG4gIH1cbn0iLCIubmF2aWdhdGlvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiA0MHB4IDAgMDtcblxuICAmLmNvbW1lbnQtbmF2aWdhdGlvbiB7XG4gICAgbWFyZ2luOiAwIGF1dG8gNHJlbTtcbiAgfVxuXG4gIC5zY3JlZW4tcmVhZGVyLXRleHQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAucGFnZS1udW1iZXJzIHtcbiAgICBtYXJnaW46IDA7XG5cbiAgICAuZmEge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAycHg7XG4gICAgfVxuXG4gICAgLmxhYmVse1xuICAgICAgd2lkdGg6IDg1cHg7XG5cbiAgICAgIHNwYW57XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cblxuICAgICAgLmZhLWFuZ2xlLWxlZnR7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgfVxuXG4gICAgICAuZmEtYW5nbGUtcmlnaHR7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaSB7XG5cbiAgICAgID4gYSxcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgMDtcbiAgICAgICAgbWluLXdpZHRoOiA0M3B4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICYuY3VycmVudCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuIiwiLmNhbGwtdG8tYWN0aW9uIHtcbiAgcGFkZGluZzogNDBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICBjb2xvcjogI2ZmZjtcblxuICBwIHtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvIFNsYWInLCBzZXJpZjtcbiAgfVxuXG4gIC5idG4ge1xuICAgIHBhZGRpbmctbGVmdDogNTNweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1M3B4O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gICAgY29sb3I6ICNmZmY7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuYnRuIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cbn0iLCIuc2lkZWJhciB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIC53aWRnZXQge1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLndpZGdldC10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogNDFweDtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgbWFyZ2luLXRvcDogMjdweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4ud2lkZ2V0IHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcblxuICB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIHNlbGVjdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIG1heC13aWR0aDogMjAuNXJlbTtcblxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMHB4O1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDBweDtcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLWNvbG9yOiAjZDlkOWQ5O1xuICB9XG5cbiAgLndwLWNhcHRpb24ge1xuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC53cC1jYXB0aW9uLXRleHQge1xuICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgIH1cbiAgfVxufVxuXG4ud2lkZ2V0X3JzcyB7XG4gID4gdWwgPiBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICB9XG59XG5cbi53aWRnZXRfYXJjaGl2ZSxcbi53aWRnZXRfcmVjZW50X2VudHJpZXMsXG4ud2lkZ2V0X2NhdGVnb3JpZXMsXG4ud2lkZ2V0X3JlY2VudF9jb21tZW50cyxcbi53aWRnZXRfbmF2X21lbnUsXG4ud2lkZ2V0X21ldGEsXG4ud2lkZ2V0X3BhZ2VzIHtcblxuICBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDRweCAwIDRweCAxN3B4O1xuICAgIC8vcGFkZGluZzogNHB4IDA7XG5cbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA4cHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgY29udGVudDogXCJcXGYxMDVcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDE0cHgvMSBGb250QXdlc29tZTtcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMThweDtcbiAgICB9XG5cbiAgICBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIGEge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICB9XG59XG5cbi8qIENhbGVuZGFyIFdpZGdldCAqL1xuLyogY2FsZW5kYXIgd2lkZ2V0ICovXG4ud2lkZ2V0X2NhbGVuZGFyICN3cC1jYWxlbmRhciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ud2lkZ2V0X2NhbGVuZGFyICN3cC1jYWxlbmRhciBjYXB0aW9uIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICNhYWE7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBjYXB0aW9uLXNpZGU6IHRvcDtcbiAgY29sb3I6ICNmZmY7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi53aWRnZXRfY2FsZW5kYXIgI3dwLWNhbGVuZGFyIHRoZWFkIHtcbiAgZm9udC1zaXplOiAxMHB4O1xufVxuXG4ud2lkZ2V0X2NhbGVuZGFyICN3cC1jYWxlbmRhciB0aGVhZCB0aCB7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xufVxuXG4ud2lkZ2V0X2NhbGVuZGFyICN3cC1jYWxlbmRhciB0Ym9keSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ud2lkZ2V0X2NhbGVuZGFyICN3cC1jYWxlbmRhciB0Ym9keSB0ZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiA4cHg7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbn1cblxuLndpZGdldF9jYWxlbmRhciAjd3AtY2FsZW5kYXIgdGJvZHkgdGQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLndpZGdldF9jYWxlbmRhciAjd3AtY2FsZW5kYXIgdGJvZHkgdGQ6aG92ZXIgYTpob3ZlciB7XG4gIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbn1cblxuLndpZGdldF9jYWxlbmRhciAjd3AtY2FsZW5kYXIgdGJvZHkgLnBhZCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi53aWRnZXRfY2FsZW5kYXIgI3dwLWNhbGVuZGFyIHRmb290ICNuZXh0IHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLndpZGdldF9jYWxlbmRhciAjd3AtY2FsZW5kYXIgdGZvb3QgI3ByZXYge1xuICBmb250LXNpemU6IDEwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xufVxuXG4vKiBUYWcgY2xvdWQgd2lkZ2V0ICovXG4ud2lkZ2V0X3Byb2R1Y3RfdGFnX2Nsb3VkLFxuLndpZGdldF90YWdfY2xvdWQge1xuXG4gIC50YWdjbG91ZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tbGVmdDogLTRweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC00cHg7XG4gIH1cblxuICBhIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDRweDtcbiAgICBwYWRkaW5nOiA3cHggMTNweDtcbiAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWJlYmViO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxufVxuXG4vKiBTZWFyY2ggd2lkZ2V0ICovXG4ud2lkZ2V0X3NlYXJjaCB7XG5cbiAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgd2lkdGg6IDgyJTtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogNTBweDtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIHdpZHRoOiAxOCU7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3NlYXJjaC1sZW5zZS5wbmdcIikgI2ZmZiBuby1yZXBlYXQgY2VudGVyIDE3cHg7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNnB4O1xuICAgIGJvcmRlci1jb2xvcjogI2ViZWJlYjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWJlYjtcbiAgICB9XG4gIH1cbn1cblxuLyogRmVhdHVyZWQgJiByZWNlbnQgcG9zdHMgd2lkZ2V0cyAqL1xuLnBlYXJsX3JlY2VudF9wb3N0c193aWRnZXQsXG4ucGVhcmxfZmVhdHVyZWRfcG9zdHNfd2lkZ2V0IHtcblxuICBoNCB7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxuXG4gIGxpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLnBvc3QtdGh1bWIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMjJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcblxuICAgIGltZyB7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuM3MgZWFzZS1pbi1vdXQpO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogLjE1O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wb3N0LWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG5cbiAgLnBvc3QtdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgfVxuXG4gIC5wb3N0LWRhdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBjb2xvcjogIzU0NTQ1NDtcbiAgfVxufVxuXG4ucGVhcmxfcmVjZW50X3Bvc3RzX3dpZGdldCB7XG5cbiAgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cblxuICAucG9zdC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICBtYXJnaW4tYm90dG9tOiA3cHg7XG4gIH1cbn1cblxuLyogTmV3c2xldHRlciB3aWRnZXQgKi9cbi5uZXdzbGV0dGVyX3dpZGdldCB7XG5cbiAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIGlucHV0W3R5cGU9XCJlbWFpbFwiXXtcblxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICBpbnB1dDpub3QoW3R5cGU9XCJzdWJtaXRcIl0pIHtcbiAgICBwYWRkaW5nOiAxMnB4IDIycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEzcHg7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICB9XG59XG5cbi8qIEluc3RhcmdhbSB3aWRnZXQgKi9cbi5wZWFybF9pbnN0YWdyYW1fd2lkZ2V0IC5wZWFybC1pbnN0YWdyYW0tcGljcyB7XG4gIG1hcmdpbjogMCAtNHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucGVhcmwtaW5zdGFncmFtLXBpY3Mge1xuICBkaXNwbGF5OnRhYmxlO1xuICB3aWR0aDoxMDAlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuXG4gIC5wZWFybC1pbnN0YWdyYW0tcm93e1xuICAgIGRpc3BsYXk6dGFibGUtcm93O1xuXG4gICAgJjpmaXJzdC1jaGlsZCAucGVhcmwtaW5zdGFncmFtLWl0ZW0ge1xuICAgICAgcGFkZGluZy10b3A6IDBweDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQgLnBlYXJsLWluc3RhZ3JhbS1pdGVtIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gICAgfVxuICB9XG5cbiAgLnBlYXJsLWluc3RhZ3JhbS1mb2xsb3cge1xuICAgIHdpZHRoOjEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6M3B4O1xuICB9XG59XG5cbi5wZWFybC1pbnN0YWdyYW0taXRlbSB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHBhZGRpbmc6IDNweDtcblxuICBhe1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgaW1ne1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjNzIGVhc2UtaW4tb3V0KTtcblxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogLjg1O1xuICAgIH1cbiAgfVxuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkICB7XG4gICAgcGFkZGluZy1yaWdodDogMHB4O1xuICB9XG59XG5cblxuLyogVHdpdHRlciB3aWRnZXQgKi9cbi5wZWFybF90d2l0dGVyX3dpZGdldCB7XG5cbiAgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuYXZhdGFyX25vIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgIH1cbiAgfVxuXG4gIC5hdmF0YXJfbm86YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjA5OVwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiA1cHggMTJweCAwIC0yNXB4O1xuICB9XG5cbiAgcCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG5cbiAgLnR3ZWV0LXRpbWUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgY29sb3I6ICM1NDU0NTQ7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB9XG59XG5cbi8qIEFkIHdpZGdldCAqL1xuLmltZy13cmFwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcblxuICBpbWcge1xuIC8vICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjNzIGVhc2UtaW4tb3V0KTtcblxuICAgICY6aG92ZXIge1xuICAgICAgb3V0bGluZTogMXB4IHNvbGlkICNmZmY7XG4gICAgICBvdXRsaW5lLW9mZnNldDogLTE1cHg7XG4gICAgICBvcGFjaXR5OiAuMTU7XG4gICAgfVxuICB9XG59XG4iLCIuZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE4MTgxOTtcbn1cblxuLmZvb3Rlci13aWRnZXRzIHtcbiAgcGFkZGluZy10b3A6IDUwcHg7XG4gIGNvbG9yOiAjOTk5O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgfVxuXG4gIC53aWRnZXQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogI2ZmZjtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDhweDtcbiAgICB9XG4gIH1cblxuICAud2lkZ2V0X2FyY2hpdmUsXG4gIC53aWRnZXRfcmVjZW50X2VudHJpZXMsXG4gIC53aWRnZXRfY2F0ZWdvcmllcyxcbiAgLndpZGdldF9yZWNlbnRfY29tbWVudHMsXG4gIC53aWRnZXRfbmF2X21lbnUsXG4gIC53aWRnZXRfcGFnZXMsXG4gIC53aWRnZXRfbWV0YSB7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjOTk5O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLndpZGdldF9yc3MsXG4gIC53aWRnZXRfY2FsZW5kYXIge1xuICAgIGEge1xuICAgICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHJlY2VudCBwb3N0cyB3aWRnZXRcbiAgLnBlYXJsX3JlY2VudF9wb3N0c193aWRnZXQge1xuXG4gICAgaDQge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuXG5cbiAgICBsaSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNnB4O1xuICAgIH1cblxuICAgIC5wb3N0LXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG5cbi8qIExvZ28gd2lkZ2V0ICovXG4uZm9vdGVyLWxvZ28td2lkZ2V0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwIHtcbiAgICBtYXJnaW46IDE0cHggMTclIDIwcHg7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgfVxufVxuXG4uc3ViLWZvb3RlciB7XG4gIHBhZGRpbmctdG9wOiAyOHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjhweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTExO1xuXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogI2ZmZjtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG5cbiNzY3JvbGwtdG8tdG9we1xuLy8gIGRpc3BsYXk6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogLTU1cHg7XG4gIGJvdHRvbTogMTVweDtcbiAgei1pbmRleDogOTk5OTtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gIGNvbG9yOiAjZmZmO1xuXG4gICYudmlzaWJsZXtcbiAgICByaWdodDogMjBweDtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIH1cbn0iLCIuaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwMHB4KSB7XG4gICAgLmNvbC14cy02IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gICYtZnVsbC13aWR0aCB7XG5cbiAgICAmLFxuICAgIC5jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi5oZWFkZXIge1xuICAmLXN0aWNreSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgei1pbmRleDogMTAwMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gICYuc3RpY2t5IHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICB9XG5cbiAgJi5zdGlja2Vke1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAxMDAwO1xuICB9XG5cbiAgJi1vbmUuc3RpY2tlZCxcbiAgJi10aHJlZS5zdGlja2Vke1xuICAgIHBhZGRpbmctdG9wOiA4cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICB9XG5cbiAgJi10d28uc3RpY2tlZCB7XG4gICAgYm94LXNoYWRvdzogMCAycHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgfVxuXG4gICYtZm91ci5zdGlja2Vke1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cbiAgICAuaGVhZGVyLW1lbnUtd3JhcCB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cbiAgfVxufVxuXG5AaW1wb3J0IFwiaGVhZGVyL2hlYWRlci10aHJlZVwiO1xuQGltcG9ydCBcImhlYWRlci9oZWFkZXItZm91clwiO1xuQGltcG9ydCBcImhlYWRlci9oZWFkZXItdHdvXCI7XG5AaW1wb3J0IFwiaGVhZGVyL2hlYWRlci1vbmVcIjtcbkBpbXBvcnQgXCJoZWFkZXIvaGVhZGVyLWZpdmVcIjtcbkBpbXBvcnQgXCJoZWFkZXIvbG9nb1wiO1xuQGltcG9ydCBcImhlYWRlci9tZW51XCI7XG5cbi5saXN0LWFuZC1jYXJ0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBjb2xvcjogI2ZmZjtcblxuICAuY2FydC1idXR0b24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDExcHg7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIG1pbi13aWR0aDogMTRweDtcbiAgICAgIG1pbi1oZWlnaHQ6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAxMnB4IDEwcHg7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuQGltcG9ydCBcImhlYWRlci9zZWFyY2hcIjsiLCIuaGVhZGVyLXRocmVlIHtcbiAgYm9yZGVyLXRvcDogNXB4IHNvbGlkICRsaW5rLWhvdmVyLWNvbG9yO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIHBhZGRpbmctdG9wOiAyN3B4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyN3B4O1xuICB9XG5cbiAgLm1lbnUtcHJpbWFyeSB7XG5cbiAgICA+IGxpIHtcblxuICAgICAgPiBhIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNlYXJjaC1mb3JtLXdyYXAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMTdweDtcbiAgICB9XG4gIH1cblxuICAuc2VhcmNoLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICNmZmY7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5zbGlja25hdl9tZW51IC5zbGlja25hdl9pY29uLWJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxufSIsIi5oZWFkZXItZm91ciB7XG4gIEBleHRlbmQgLmhlYWRlci10aHJlZTtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcGFkZGluZy10b3A6IDI1cHg7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIC5zaXRlLWJyYW5kaW5nIGEsXG4gICAgLnNpdGUtYnJhbmRpbmcgaW1nIHtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG4gIH1cblxuICAuZm9sbG93LXVzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAxOHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGNvbG9yOiAjMmQyZDJkO1xuXG4gICAgICAmICsgYSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxN3B4O1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udGFnbGluZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxldHRlci1zcGFjaW5nOiAuM3B4O1xuICBjb2xvcjogI2E1YTVhNTtcbn1cblxuLmhlYWRlci1tZW51LXdyYXAge1xuICBtYXJnaW4tdG9wOiAyNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICB9XG5cbiAgLm5hdmlnYXRpb24tdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogMTRweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTRweDtcbiAgfVxuXG4gIC5tYWluLW5hdmlnYXRpb24ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG5cbiAgLm1lbnUtcHJpbWFyeSA+IGxpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMzRweDtcbiAgICB9XG4gIH1cblxuICAubWVudS1wcmltYXJ5ID4gbGkuY3VycmVudC1tZW51LWl0ZW0gPiBhLFxuICAubWVudS1wcmltYXJ5ID4gbGk6aG92ZXIgPiBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG5cbiAgLnNlYXJjaC1mb3JtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMTNweCAyNXB4O1xuICAgIGhlaWdodDogNzJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDRiMmVkO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMjZweDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcblxuICAgICAgLmZhLXNlYXJjaCB7XG4gICAgICAgIGNvbG9yOiBsaWdodGVuKCRsaW5rLWhvdmVyLWNvbG9yLCAzNSUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogNDVweDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuXG4gICAgICA6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuXG4gICAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgfVxuICAgICAgJjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDE1cHg7XG4gICAgICByaWdodDogMTZweDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgLmZhLXNlYXJjaCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDI4cHg7XG4gICAgICByaWdodDogMjhweDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gIH1cbn0iLCIuaGVhZGVyLXR3byB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59IiwiLmhlYWRlci1vbmUge1xuICAgQGV4dGVuZCAuaGVhZGVyLXRocmVlO1xuICAgYm9yZGVyLXRvcDogbm9uZTtcblxuICAgLm1lbnUtcHJpbWFyeSB7XG5cbiAgICAgPiBsaSB7XG4gICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgICAgICBtYXJnaW4tcmlnaHQ6IDQ4cHg7XG4gICAgICAgfVxuXG4gICAgICAgPiBhIHtcbiAgICAgICAgIHBhZGRpbmctbGVmdDogMXB4O1xuICAgICAgICAgcGFkZGluZy1yaWdodDogMXB4O1xuICAgICAgIH1cblxuICAgICAgICYuY3VycmVudC1tZW51LWl0ZW0sXG4gICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgID4gYSB7XG4gICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgfVxuICAgICAgIH1cblxuICAgICAgICYuY3VycmVudC1tZW51LWl0ZW06aG92ZXIge1xuICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICB9XG4gICAgICAgfVxuXG4gICAgICAgJi5jdXJyZW50LW1lbnUtaXRlbSxcbiAgICAgICAmOmhvdmVyOm5vdCgubWVudS1pdGVtLWhhcy1jaGlsZHJlbikge1xuXG4gICAgICAgICA+IGEge1xuICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjtcbiAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDJweDtcbiAgICAgICAgIH1cbiAgICAgICB9XG4gICAgIH1cbiAgIH1cbiB9IiwiLnBlYXJsX2hlYWRlcl81e1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuLmxvZ2dlZC1pbiAjc2hvdy1zbGlkZS1oZWFkZXIge1xuICB0b3A6IDMzcHg7XG59XG5cbiNzaG93LXNsaWRlLWhlYWRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAxNXB4O1xuICByaWdodDogMTVweDtcbiAgei1pbmRleDogMTA1MDtcbiAgcGFkZGluZzogNXB4IDEycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzAwMDtcblxuICAuYWN0aXZlLFxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxufVxuXG4ucGFnZS1zaWRlLWhlYWRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDEwNDA7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHdpZHRoOiAyODBweDtcbiAgcGFkZGluZzogNTBweCAxNXB4IDE1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwMCUsIDApO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2U7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNiN2I3Yjc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cbiAgJi5zaG93LXNsaWRlLWhlYWRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICB3aWR0aDogMzIwcHg7XG4gIH1cblxuICAuc2l0ZS1icmFuZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuXG4gIC5uYXZpZ2F0aW9uLXRvcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuXG4gIC5zaXRlLWJyYW5kaW5nIC53cmFwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuXG4gIC5zaXRlLWJyYW5kaW5nIGEsXG4gIC5zaXRlLWJyYW5kaW5nIGltZyB7XG4gICAgbWFyZ2luOiBhdXRvO1xuICB9XG5cbiAgLm1haW4tbmF2aWdhdGlvbiB7XG4gICAgLm1lbnUtcHJpbWFyeSA+IGxpLFxuICAgIC5tZW51LXByaW1hcnkgPiB1bCA+IGxpIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cbiAgfVxuXG4gIC5tZW51LXByaW1hcnkgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG5cbiAgLm1lbnUtcHJpbWFyeSA+IGxpID4gYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctdG9wOiAxM3B4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICB9XG5cbiAgLm1lbnUtcHJpbWFyeSBhIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG5cbiAgLm1lbnUtcHJpbWFyeSAuc3ViLW1lbnUsXG4gIC5tZW51LXByaW1hcnkgPiB1bCAuc3ViLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cbiAgICBhIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxM3B4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDEycHg7XG4gICAgICBib3JkZXItdG9wOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5tYWluLW5hdmlnYXRpb24sXG4gIC5zZWFyY2gtZm9ybS13cmFwIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuXG4gIC5zZWFyY2gtZm9ybS13cmFwIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5zZWFyY2gtdG9nZ2xlIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG5cbiAgLmZvbGxvdy11cyB7XG4gICAgbWFyZ2luLXRvcDogMjRweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMjdweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNWU1ZTU7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMjZweDtcbiAgICAgIGhlaWdodDogMjZweDtcbiAgICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJkMmQyZDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wYWdlLXdyYXBwZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2U7XG5cbiAgJi5zaG93LXNsaWRlLWhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNTAwcHgpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMjBweCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzMjBweCwgMCk7XG5cbiAgICAgIC5jb250YWluZXIuZnVsbHdpZHRoLXBhZ2Uge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC52Y19yb3dbZGF0YS12Yy1mdWxsLXdpZHRoXSB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgICAgICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICByaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAuZnVsbHdpZHRoLXBhZ2UgPiAucm93LFxuICAgICAgLnZjX3Jvd3tcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cblxuICAgICAgLm91ci1wb3J0Zm9saW8tNHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0zMHB4O1xuICAgICAgfVxuXG4gICAgICAudmNfY29sdW1uX2NvbnRhaW5lcj4udmNfY29sdW1uLWlubmVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgfVxuXG4gICAgICAuZnVsbHdpZHRoLXBhZ2UgPiAucm93ID4gLmNvbC1tZC0xMntcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ub3ZlcmxheS1mb3JtIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMTBweCAxNXB4IDE1cHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxMDAwMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpO1xuXG4gIC5zZWFyY2gtdG9nZ2xlIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgLmhlYWRlci1vdmVybGF5LWZvcm0td3JhcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogNzAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB9XG5cbiAgLmZhLXNlYXJjaCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDIxcHg7XG4gICAgd2lkdGg6IDc1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDI2cHggMDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDIzNSwgMjM1LCAyMzUsIDAuNDApO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlYmViZWI7XG4gICAgY29sb3I6ICM3Nzc7XG4gIH1cblxuICAuaGVhZGVyLW92ZXJsYXktZm9ybSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgcGFkZGluZzogMTJweCAzMHB4IDEycHggOTVweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlYmViZWI7XG4gICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICBoZWlnaHQ6IDczcHg7XG4gICAgICBsaW5lLWhlaWdodDogNzNweDtcbiAgICB9XG4gIH1cbn0iLCIuc2l0ZS1icmFuZGluZyB7XG4gIHBhZGRpbmctdG9wOiAxOHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAud3JhcCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICBhLFxuICAgIGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uc2l0ZS10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5zaXRlLWRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuIiwiLm5hdmlnYXRpb24tdG9wIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxOHB4IDA7XG59XG5cbi5tYWluLW5hdmlnYXRpb24ge1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG5cbiAgLm1lbnUtcHJpbWFyeSA+IGxpLFxuICAubWVudS1wcmltYXJ5ID4gdWwgPiBsaSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIC5tZW51LXByaW1hcnkgPiBsaSxcbiAgICAubWVudS1wcmltYXJ5ID4gdWwgPiBsaSB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG4gIH1cbn1cblxuLm1lbnUtcHJpbWFyeSxcbi5tZW51LXByaW1hcnkgPiB1bCB7XG5cbiAgJjpub3QoLnNpZGUtbWVudS1wcmltYXJ5KSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAmLFxuICB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGEge1xuICAgICAgcGFkZGluZzogMTJweCAxNXB4IDEwcHg7XG4gICAgfVxuICB9XG5cbiAgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYuY3VycmVudC1tZW51LWl0ZW0sXG4gICAgJjpob3ZlciB7XG5cbiAgICAgID4gYSB7XG4gICAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcblxuICAgICAgPiAuc3ViLW1lbnUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG5cbiAgLnN1Yi1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTAwO1xuICAgIHdpZHRoOiAxODBweDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgICBAaW5jbHVkZSBiYWNrZmFjZS12aXNpYmlsaXR5KGhpZGRlbik7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjNzIGVhc2UpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cbiAgICBsaTpmaXJzdC1jaGlsZCBhIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2Y3ZjdmNztcbiAgICB9XG5cbiAgICAuc3ViLW1lbnUge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLnNsaWNrbmF2X21lbnUge1xuICBmb250LXNpemU6IDE0cHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zbGlja25hdl9uYXYge1xuICBmb250LXNpemU6IDE0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDk5OTk7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG5cbiAgYSxcbiAgLnNsaWNrbmF2X3JvdyB7XG4gICAgcGFkZGluZzogOHB4IDIwcHg7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAjMjIyO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgYTpob3ZlcixcbiAgYTpob3ZlciBhLFxuICAuc2xpY2tuYXZfcm93OmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuXG4gIGE6aG92ZXIsXG4gIGE6aG92ZXIsXG4gIC5zbGlja25hdl9yb3c6aG92ZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZDogJGxpbmstaG92ZXItY29sb3I7XG4gIH1cbn1cblxuLnNsaWNrbmF2X2J0biB7XG4gIG1hcmdpbjogNXB4IDAgMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmc6IDEzcHggMTBweCA4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gIEBtZWRpYSAoIG1heC13aWR0aDogNDAwcHgpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG4uc2xpY2tuYXZfbWVudSAuc2xpY2tuYXZfaWNvbjpiZWZvcmUsXG4uc2xpY2tuYXZfbWVudSAuc2xpY2tuYXZfaWNvbi1iYXIge1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAycHg7XG59XG5cbi5zbGlja25hdl9uYXYgbGl7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjdmN2Y3O1xuXG4gICY6bGFzdC1jaGlsZHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG5cbiAgLnN1Yi1tZW51IHtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBhIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcblxuICAgIH1cbiAgfVxufVxuXG4uc2xpY2tuYXZfbWVudSAuc2xpY2tuYXZfaWNvbi1iYXIge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xufVxuXG4uc2xpY2tuYXZfYnRuIC5zbGlja25hdl9pY29uLWJhciArIC5zbGlja25hdl9pY29uLWJhciB7XG4gIG1hcmdpbi10b3A6IDJweDtcbn1cblxuLnNsaWNrbmF2X21lbnUgLnNsaWNrbmF2X2ljb24ge1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxM3B4O1xuICBtYXJnaW46IDA7XG59IiwiLnNlYXJjaC1mb3JtLXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDM4cHg7XG4gIH1cblxuICBmb3JtIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwcHg7XG4gICAgd2lkdGg6IDI4MHB4O1xuICAgIHJpZ2h0OiAtN3B4O1xuICAgIHotaW5kZXg6IDE1MDtcblxuICAgIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgcGFkZGluZy1yaWdodDogNjVweDtcbiAgICAgIGhlaWdodDogNDZweDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIHBhZGRpbmc6IDEycHggMTRweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4uc2VhcmNoLXRvZ2dsZSB7XG4gIHBhZGRpbmc6IDEwcHggMTFweDtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb24gOiBjb2xvciAuMnMgZWFzZS1pbi1vdXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuXG4gIC5mYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn0iLCIuc3ViLWhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogNjBweCAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjZmZmO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIHBhZGRpbmctdG9wOiA4MnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA4MnB4O1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgcGFkZGluZy10b3A6IDE4NHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxODRweDtcbiAgfVxuXG4gICYuc21hbGwge1xuICAgIGJhY2tncm91bmQ6ICMxNzIwMjU7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICAgIHBhZGRpbmctdG9wOiA4MnB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDgycHg7XG4gICAgfVxuICB9XG5cbiAgJi5sYXJnZSB7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTM2NnB4KSB7XG4gICAgICBwYWRkaW5nLXRvcDogMzMzcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTg4cHg7XG4gICAgfVxuICB9XG5cbiAgLnRpdGxlIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDdweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHRleHQtc2hhZG93OiAxcHggMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgICBmb250LXNpemU6IDcycHg7XG4gICAgfVxuICB9XG5cbiAgLmRlc2NyaXB0aW9uIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuICB9XG5cbiAgLmJnLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIzLCAzMiwgMzcsIC42KTtcblxuICAgICYuZGFyayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIzLCAzMiwgMzcsIC45NSk7XG4gICAgfVxuXG4gICAgKyAuY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICB9XG59IiwiLmZsZXgtZGlyZWN0aW9uLW5hdiBhIHtcbiAgbGluZS1oZWlnaHQ6IDQ2cHg7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG1hcmdpbjogLTI1cHggMCAwO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICBjb2xvcjogI2ZmZjtcblxuICAmOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgfVxufVxuXG4vKiBEcm9wIEFuaW1hdGlvbiAqL1xuQGtleWZyYW1lcyBkcm9wIHtcbiAgMCUge1xuICAgIHRvcDogNXB4O1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMzAlIHtcbiAgICB0b3A6IDhweDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIHRvcDogMTNweDtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5tb3VzZS1pY29uIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDE4cHg7XG4gIGhlaWdodDogMzBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDM1cHg7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gOXB4KTtcbiAgei1pbmRleDogMTA7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuICAgIC53aGVlbCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk5O1xuICAgIH1cbiAgfVxuXG4gIC53aGVlbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogNHB4O1xuICAgIHdpZHRoOiA0cHg7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgICBhbmltYXRpb246IGRyb3AgMXMgbGluZWFyIGluZmluaXRlO1xuICAgIGFuaW1hdGlvbi1wbGF5LXN0YXRlOiBydW5uaW5nO1xuICB9XG59XG5cbi5zbGlkZS1jYXB0aW9uLWNvbW1vbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuc2xpZGUtY2FwdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogNTA7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBtYXgtd2lkdGg6IDExNzBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgd2lkdGg6IDExNzBweDtcbiAgICB9XG4gIH1cblxuICAuc2xpZGUtdGV4dCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTg7XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgICAgICBmb250LXNpemU6IDY4cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tZGVmYXVsdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG4gICAgICBib3JkZXItY29sb3I6ICMyMjI7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1wcmltYXJ5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG4gICAgICBib3JkZXItY29sb3I6ICMyMjI7XG4gICAgfVxuICB9XG5cbiAgLmZsZXgtZGlyZWN0aW9uLW5hdiB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzLW1pbikge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbkBpbXBvcnQgXCJzbGlkZXIvc2xpZGVyLTFcIjtcbkBpbXBvcnQgXCJzbGlkZXIvc2xpZGVyLTJcIjtcbkBpbXBvcnQgXCJzbGlkZXIvc2xpZGVyLTNcIjtcbkBpbXBvcnQgXCJzbGlkZXIvc2xpZGVyLTRcIjtcbkBpbXBvcnQgXCJzbGlkZXIvc2xpZGVyLTVcIjtcblxuXG5cblxuXG4iLCIuc2xpZGVyLW9uZSB7XG4gIEBleHRlbmQgLnNsaWRlLWNhcHRpb24tY29tbW9uO1xuXG4gIC5zbGlkZS1jYXB0aW9uIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICAgIHRvcDogNTQlO1xuICAgIH1cbiAgfVxuXG4gIC5zbGlkZS10ZXh0IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDQzJTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICBmb250LWZhbWlseTogR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmO1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTRweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIycHg7XG4gICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzN3B4O1xuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTM2NnB4KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5zbGlkZXItdHdvIHtcbiAgQGV4dGVuZCAuc2xpZGUtY2FwdGlvbi1jb21tb247XG5cbiAgLnNsaWRlLXRleHQge1xuXG4gICAgc3BhbiB7XG4gICAgICBmb250LWZhbWlseTogR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmO1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBsZXR0ZXItc3BhY2luZzogOXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDIuNHB4O1xuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1wcmltYXJ5IHtcbiAgICBjb2xvcjogIzIyMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgfVxuXG4gIC5mbGV4LWRpcmVjdGlvbi1uYXYgYSB7XG4gICAgbGluZS1oZWlnaHQ6IDc2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBoZWlnaHQ6IDc2cHg7XG4gICAgbWFyZ2luLXRvcDogLTI4cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxYjIyMjQ7XG4gICAgY29sb3I6ICNmZmY7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjMpO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIgLmZsZXgtZGlyZWN0aW9uLW5hdiAuZmxleC1wcmV2IHtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgJjpob3ZlciAuZmxleC1kaXJlY3Rpb24tbmF2IC5mbGV4LW5leHQge1xuICAgIHJpZ2h0OiAwO1xuICB9XG59IiwiLnNsaWRlci10aHJlZSB7XG4gIEBleHRlbmQgLnNsaWRlLWNhcHRpb24tY29tbW9uO1xuXG4gIC5zbGlkZS1jYXB0aW9uIHtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgICAgdG9wOiA1Ni4yJTtcbiAgICB9XG4gIH1cblxuICAuc2xpZGUtdGV4dCB7XG5cbiAgICBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiA0cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMnB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogLjVweCBzb2xpZCAjZmZmO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjhweDtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHAge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICBtYXgtd2lkdGg6IDU2MHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMzdweDtcblxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mbGV4LWRpcmVjdGlvbi1uYXYgYSB7XG4gICAgZm9udC1zaXplOiA3OHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuXG4gICAgLmZhIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIH1cbiAgfVxufSIsIi5zbGlkZXItZm91ciB7XG4gIEBleHRlbmQgLnNsaWRlci1maXZlO1xuICBib3JkZXItYm90dG9tOiBub25lO1xuXG4gIC5zbGlkZS1jYXB0aW9uIHtcbiAgICB0b3A6IDQ5JTtcbiAgfVxuXG4gIC5zbGlkZS10ZXh0IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICAgIG1heC13aWR0aDogNjMwcHg7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgICBmb250LXNpemU6IDUwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgfVxuICB9XG5cbiAgLmZsZXgtZGlyZWN0aW9uLW5hdiBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDRkOGRiO1xuICAgIGJvcmRlci1jb2xvcjogI2Q0ZDhkYjtcbiAgfVxufSIsIi5zbGlkZXItZml2ZSB7XG4gIEBleHRlbmQgLnNsaWRlLWNhcHRpb24tY29tbW9uO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTtcblxuICAuc2xpZGUtY2FwdGlvbiB7XG4gICAgdG9wOiA1NSU7XG4gIH1cblxuICAuc2xpZGUtdGV4dCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgICBtYXgtd2lkdGg6IDUzNXB4O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgIGNvbG9yOiAjNDU0NTQ1O1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogOXB4O1xuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgICAgZm9udC1zaXplOiA1NnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMnB4O1xuICAgICAgY29sb3I6ICM0NTQ1NDU7XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG4gICAgICBjb2xvcjogIzU1NTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcblxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5idG4tZGVmYXVsdCB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG5cbiAgICAmOmhvdmVye1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBib3JkZXItY29sb3I6ICMyMjI7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlciB7XG5cbiAgICAuZmxleC1kaXJlY3Rpb24tbmF2IHtcblxuICAgICAgLmZsZXgtbmV4dCB7XG4gICAgICAgIHJpZ2h0OiAzOHB4O1xuICAgICAgfVxuXG4gICAgICAuZmxleC1wcmV2IHtcbiAgICAgICAgbGVmdDogMzhweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZmxleC1kaXJlY3Rpb24tbmF2IGEge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgY29sb3I6ICMyMjI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjNmMztcbiAgICBib3JkZXItY29sb3I6ICNmM2YzZjM7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG4gICAgICBib3JkZXItY29sb3I6ICMyMjI7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gIH1cblxuICAubW91c2UtaWNvbiB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMjIyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuXG4gICAgICAud2hlZWwge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgfVxuICAgIH1cblxuICAgIC53aGVlbCB7XG4gICAgICBib3JkZXItY29sb3I6ICMyMjI7XG4gICAgfVxuICB9XG59IiwiLnNlY3Rpb24ge1xuXG4gIC5zZWN0aW9uLWJhY2tncm91bmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gIH1cblxuICAuc2VjdGlvbi1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogNjVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjVweDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgcGFkZGluZy10b3A6IDExMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDExMHB4O1xuICAgIH1cblxuICAgIC5zZWN0aW9uLXRvcCB7XG4gICAgICBwYWRkaW5nLXRvcDogNjVweDtcblxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMTBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VjdGlvbi1ib3R0b20ge1xuICAgICAgcGFkZGluZy1ib3R0b206IDY1cHg7XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zZWN0aW9uLWhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIDAgNDVweDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuICB9XG5cbiAgcDpmaXJzdC1vZi10eXBlIHtcbiAgICBmb250LWZhbWlseTogJ1JvYm90byBTbGFiJywgc2VyaWY7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIG1hcmdpbi10b3A6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgY29sb3I6ICM5OTk7XG4gIH1cblxuICAmLnRleHQtY2VudGVyIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgIHA6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjUlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNSU7XG4gICAgICB9XG5cbiAgICAgIHA6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTMlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMyU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNlY3Rpb24tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICYuYm9sZCB7XG4gICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIH1cbiAgfVxuXG4gIC5zZWN0aW9uLXN1Yi10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDlweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuXG4gICAgJi5mYWRlLXN0eWxlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWY7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICBjb2xvcjogIzc3NztcbiAgICB9XG4gIH1cbn1cblxuQGltcG9ydCBcImhvbWUvYWJvdXRcIjtcbkBpbXBvcnQgXCJob21lL3RlYW1cIjtcbkBpbXBvcnQgXCJob21lL3BvcnRmb2xpb1wiO1xuQGltcG9ydCBcImhvbWUvY291bnRlclwiO1xuQGltcG9ydCBcImhvbWUvZmVhdHVyZXNcIjtcbkBpbXBvcnQgXCJob21lL3ZpZGVvXCI7XG5AaW1wb3J0IFwiaG9tZS9ibG9nXCI7XG5AaW1wb3J0IFwiaG9tZS9zdWJzY3JpYmVcIjtcbkBpbXBvcnQgXCJob21lL2NsaWVudHNcIjtcbkBpbXBvcnQgXCJob21lL2NvbnRhY3RcIjtcbkBpbXBvcnQgXCJob21lL3Rlc3RpbW9uaWFsc1wiO1xuQGltcG9ydCBcImhvbWUvc2VydmljZXNcIjtcbkBpbXBvcnQgXCJob21lL2ludHJvXCI7XG5AaW1wb3J0IFwiaG9tZS9za2lsbHNcIjtcbkBpbXBvcnQgXCJob21lL3doeS1jaG9zZS11c1wiOyIsIi5hYm91dC1tZS0xIHtcbiAgcGFkZGluZy10b3A6IDYycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWZhZmU7XG5cbiAgLmZlYXR1cmUtYm94IHtcbiAgICBwYWRkaW5nLXRvcDogNjJweDtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICB9XG5cbiAgICAgIHA6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIH1cblxuICAgICAgLmJ0biB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgLmltZy1yZXNwb25zaXZlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMjVweDtcbiAgICB9XG4gIH1cbn1cblxuLmFib3V0LW1lLTIge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gIH1cblxuICBwIHtcbiAgICBmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG4gICAgbGluZS1oZWlnaHQ6IDI7XG5cbiAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLXRvcDogN3B4O1xuICAgIH1cbiAgfVxuXG4gIC5wcm9ncmVzcy1iYXJzIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMjRweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG5cbi53aG8td2UtYXJlIHtcbiAgcGFkZGluZy10b3A6IDcwcHg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ2MHB4KSB7XG4gICAgcGFkZGluZy10b3A6IDE1MHB4O1xuICB9XG5cbiAgLnNlY3Rpb24taGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5zZWN0aW9uLWhlYWRlciBwOmZpcnN0LW9mLXR5cGUsXG4gIC5zZWN0aW9uLWhlYWRlciBwOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gIH1cblxuICAuc2VjdGlvbi1oZWFkZXIgcDpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICBmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG4gICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgY29sb3I6ICM1NTU7XG4gIH1cblxuICAuZmVhdHVyZXMtaXRlbXMge1xuICAgIHBhZGRpbmctYm90dG9tOiA3NHB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlZWVlO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICBwYWRkaW5nLXRvcDogNzRweDtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAuY29sLXNtLTMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNzRweDtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ2MHB4KSB7XG4gIC5pbWFnZXMtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuaW1nLW9uZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkICNmZmY7XG4gICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG5cbiAgICAgICY6aG92ZXJ7XG4gICAgICAgIHotaW5kZXg6IDIwO1xuICAgICAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmltZy10d28ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtNThweDtcbiAgICAgIGxlZnQ6IDIwMnB4O1xuICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkICNmZmY7XG4gICAgfVxuICB9XG59XG4iLCIuaG9tZS0yIC5vdXItdGVhbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWZhZmU7XG59XG5cbi5vdXItdGVhbSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAuY29sLXRlYW0tbWVtYmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDUwMHB4KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvL0BtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIC8vICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIC8vfVxuICB9XG5cbiAgLnRlYW0tbWVtYmVyIHtcblxuICAgIGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC50aXRsZSB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBmb250LWZhbWlseTogJ1JvYm90byBTbGFiJywgc2VyaWY7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBsaW5lLWhlaWdodDogMjtcbiAgICB9XG4gIH1cbn1cblxuLm91ci10ZWFtLTEge1xuXG4gIC50ZWFtLW1lbWJlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIC5vdmVybGF5IHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA3cHg7XG4gICAgfVxuICB9XG5cbiAgLm92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMjJweCAxNXB4IDE1cHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgYSB7XG4gICAgICBtYXJnaW46IDAgNnB4O1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm91ci10ZWFtLTIge1xuXG4gIC50ZWFtLW1lbWJlciB7XG5cbiAgICAudGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgIH1cblxuICAgIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTNweDtcbiAgICB9XG4gIH1cblxuICAub3ZlcmxheSB7XG4gICAgcGFkZGluZzogMzZweCAxNXB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2U4ZThlODtcblxuICAgIGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDIycHg7XG4gICAgICBoZWlnaHQ6IDIycHg7XG4gICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIG1hcmdpbjogMCAzcHg7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIub3VyLXBvcnRmb2xpbyB7XG5cbiAgLnBvcnRmb2xpby1wb3N0IHtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NTBweCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJi0xIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmYWZlO1xuICB9XG5cbiAgJi0yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTE4cHg7XG4gICAgfVxuICB9XG5cbiAgJi0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuZmlsdGVyaW5nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDUzcHg7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbWFyZ2luOiAxcHggMTVweCAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICAgICAgXG4gICAgICAgIGEge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgXG4gICAgICAgICAgJi5pcy1jaGVja2VkLFxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5wb3J0Zm9saW8taXRlbXMtY29udGFpbmVyIC5wb3J0Zm9saW8tcG9zdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cblxuICAgIC5wb3J0Zm9saW8tY29udGVudC13cmFwcGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGxpbmstaG92ZXItY29sb3IsIDAuOCk7XG4gICAgfVxuXG4gICAgLnBvcnRmb2xpby1jb250ZW50IC5wb3J0Zm9saW8tdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi00IHtcbiAgICAucG9ydGZvbGlvLWl0ZW1zLWNvbnRhaW5lciAucG9ydGZvbGlvLXBvc3QtaXRlbSB7XG5cbiAgICAgICY6aG92ZXIgLnBvcnRmb2xpby1jb250ZW50IHtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5wb3J0Zm9saW8tY29udGVudCB7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBib3R0b206IDI3cHg7XG4gICAgICBsZWZ0OiAzMHB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgfVxufVxuXG4ucG9ydGZvbGlvLW5hdi13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0xMzBweDtcbiAgcmlnaHQ6IDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcblxuICAuc2VwIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDI5cHg7XG4gIH1cbn1cbiIsIi5jb3VudGVyIHtcbiAgcGFkZGluZy10b3A6IDUwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBjb2xvcjogI2ZmZjtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBwYWRkaW5nLXRvcDogNDVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogOTBweDtcbiAgfVxuXG4gICYtZGlnaXQge1xuICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDYwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxuXG4gICYtZGVzYyB7XG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG8gU2xhYicsIHNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuY29sLXhzLTYge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzMDBweCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmNvdW50ZXItY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cbiAgfVxufVxuXG4uY291bnRlci0xIHtcblxuICAmLWRpZ2l0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyOHB4O1xuICB9XG59XG5cbi5jb3VudGVyLTIge1xuXG4gIC5jb3VudGVyLWRpZ2l0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICB9XG59IiwiLm91ci1mZWF0dXJlcyB7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgLmZlYXR1cmUtYm94IHtcbiAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgIH1cbiAgfVxufVxuXG4ub3VyLWZlYXR1cmVzLTEge1xuXG4gIC5yb3cgKyAucm93IHtcbiAgICBtYXJnaW4tdG9wOiA3MHB4O1xuICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZThlOGU4O1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gICAgfVxuICB9XG59XG5cbi5vdXItZmVhdHVyZXMtMiB7XG4gIHBhZGRpbmctdG9wOiA5NnB4O1xuXG4gIC5zZWN0aW9uLWhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogODRweDtcbiAgfVxuXG4gIC5mZWF0dXJlcy1pdGVtcyB7XG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuICAgIHBhZGRpbmctdG9wOiA2NXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWZhZmU7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIH1cbiAgfVxufVxuXG4uZmVhdHVyZS1pdGVtLTEge1xuICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5mZWF0dXJlLWltZyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDcycHg7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICBwYWRkaW5nLXRvcDogNXB4O1xuICB9XG5cbiAgLmZlYXR1cmUtY29udGVudCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDcycHgpO1xuXG4gICAgJjpob3ZlciB7XG5cbiAgICAgIC5saW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRpdGxlIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuXG4gIC5saW5lIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luLXRvcDogOXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuOTtcbiAgfVxufVxuXG4uZmVhdHVyZS1pdGVtLTIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDcycHg7XG5cbiAgLmZlYXR1cmUtaW1nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDcycHg7XG4gICAgaGVpZ2h0OiA3MnB4O1xuICAgIGxpbmUtaGVpZ2h0OiA2OHB4O1xuICAgIG1hcmdpbjogMCBhdXRvIDY4cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkbGluay1ob3Zlci1jb2xvcjtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmZlYXR1cmUtY29udGVudCB7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gICAgfVxuICB9XG5cbiAgLnRpdGxlIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBsaW5lLWhlaWdodDogMS45O1xuICAgIGNvbG9yOiAjNWU1ZTVlO1xuICB9XG59XG5cbi5mZWF0dXJlLWl0ZW0tMyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAuZmVhdHVyZS1pbWcge1xuICAgIG1pbi1oZWlnaHQ6IDQ1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBpbWcge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mZWF0dXJlLWNvbnRlbnQge1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIycHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMnB4O1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cblxuICBwIHtcbiAgICBsaW5lLWhlaWdodDogMS45O1xuICAgIG1hcmdpbi1ib3R0b206IDExcHg7XG4gICAgY29sb3I6ICM1ZTVlNWU7XG4gIH1cblxuICAuZ3JvdXAge1xuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICB3aWR0aDogM3B4O1xuICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICBtYXJnaW46IDAgMi40cHg7XG4gICAgICBiYWNrZ3JvdW5kOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmZlYXR1cmVzLWxpc3Qge1xuICBtYXJnaW46IDQwcHggLTE1cHggMDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAgIG1hcmdpbi10b3A6IDkwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0zM3B4O1xuICAgIG1hcmdpbi1yaWdodDogLTMzcHg7XG4gIH1cblxuICA+IGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbikge1xuXG4gICAgICArIGxpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogODBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cy1taW4pIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMzcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzM3B4O1xuICAgIH1cbiAgfVxufVxuXG4ud2lkZS1pbWFnZSB7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAgIG1hcmdpbi1sZWZ0OiAtMzdweDtcblxuICAgIGltZyB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmZlYXR1cmUtYm94IHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJi50ZXh0LWNlbnRlciB7XG5cbiAgICA6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC5zZWN0aW9uLXN1Yi10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDlweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAmLmZhZGUtc3R5bGUge1xuICAgICAgZm9udC1mYW1pbHk6IEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICAgIGNvbG9yOiAjNzc3O1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgIGNvbG9yOiAjNTU1O1xuICB9XG5cbiAgLnNtYXJ0LWRlc2NyaXB0aW9uIHtcbiAgICBmb250LWZhbWlseTogJ1JvYm90byBTbGFiJywgc2VyaWY7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGNvbG9yOiAjOTk5O1xuXG4gICAgJi5kYXJrIHtcbiAgICAgIGNvbG9yOiAjNDQ0O1xuICAgIH1cblxuICAgICYuaXRhbGljIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGZvbnQtZmFtaWx5OiBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWY7XG4gICAgICB3b3JkLXNwYWNpbmc6IDJweDtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB9XG4gIH1cblxuICBkaXYuZGFyayB7XG4gICAgcCB7XG4gICAgICBmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG4gICAgICBsaW5lLWhlaWdodDogMjtcbiAgICB9XG4gIH1cblxuICAuYnRuIHtcbiAgICBtYXJnaW4tdG9wOiA5cHg7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBiYTZkODtcbiAgICAgIGJvcmRlci1jb2xvcjogIzBiYTZkODtcbiAgICB9XG4gIH1cblxuICAmLnR3byB7XG5cbiAgICAudGl0bGUge1xuICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIycHg7XG4gICAgICB3b3JkLXNwYWNpbmc6IDJweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzRweDtcbiAgICB9XG5cbiAgICAuc21hcnQtZGVzY3JpcHRpb24ge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG4gIH1cblxuICAmLnRocmVlIHtcbiAgICBjb2xvcjogI2ZmZjtcblxuICAgIC5zZWN0aW9uLXN1Yi10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuNHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogI2NjYztcbiAgICB9XG5cbiAgICAudGl0bGUge1xuICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDIuNnB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuICAgICAgbWFyZ2luLXRvcDogMTNweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgY29sb3I6ICNkNWQ1ZDU7XG4gICAgfVxuICB9XG59XG5cbi50aXRsZS11bmRlcmxpbmUge1xuICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICB3b3JkLXNwYWNpbmc6IDFweDtcblxuICAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogMnB4O1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gIH1cblxuICAmLWJsYWNrIHtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICB9XG4gIH1cbn0iLCIub3VyLXZpZGVvLTEge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcGFkZGluZy10b3A6IDE2MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxNTNweDtcbiAgfVxuXG4gIC5wbGF5LXZpZGVvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNjRweDtcbiAgICBoZWlnaHQ6IDY0cHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gNTJweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9wbGF5LWJ0bi5wbmcpIG5vLXJlcGVhdCAyNXB4IGNlbnRlcjtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMjIyO1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgIHdvcmQtc3BhY2luZzogMnB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG5cbiAgLmF1dGhvciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuXG4gIHAge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4ub3VyLXZpZGVvLTIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gLy8gYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcblxuICAvL0BtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAvLyAgcGFkZGluZy10b3A6IDEwMHB4O1xuICAvLyAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xuICAvL31cblxuICAudmlkZW8tcG9wdXAge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgLnZpZGVvLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gIH1cblxuICAudGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIG1hcmdpbi1ib3R0b206IDIycHg7XG4gICAgd29yZC1zcGFjaW5nOiAycHg7XG4gIH1cblxuICAudGl0bGUtdW5kZXJsaW5lOmFmdGVyIHtcbiAgICB3aWR0aDogMzJweDtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBtYXJnaW46IDIzcHggYXV0byAwO1xuICB9XG5cbiAgcCB7XG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuICAgIGNvbG9yOiAjNTU1O1xuXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzNHB4O1xuICAgIH1cblxuICAgIH4gcCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS44O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzhweDtcbiAgICB9XG4gIH1cbn1cblxuLnZpZGVvLXBvcHVwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcblxuICBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmZhLXBsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA2NHB4O1xuICAgIGhlaWdodDogNjRweDtcbiAgICBwYWRkaW5nOiAyMXB4IDAgMCA1cHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTAxZTM2O1xuICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuIiwiLm91ci1ibG9nIHtcblxuICAuaW1nLWhvdmVye1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLmVudHJ5LWhlYWRlciB7XG4gICAgcGFkZGluZzogM3B4IDAgMCAxN3B4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAkbGluay1ob3Zlci1jb2xvcjtcbiAgfVxuXG4gIC5wb3N0LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIH1cblxuICBwIHtcbiAgICBsaW5lLWhlaWdodDogMjtcbiAgfVxuXG4gIC5lbnRyeS1mb290ZXIge1xuICAgIHBhZGRpbmc6IDE0cHggMTFweCAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAucmVhZC1tb3JlIHtcbiAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAuZmEge1xuICAgICAgbWFyZ2luLXRvcDogM3B4O1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIH1cbiAgfVxuXG4gIC5wb3N0LWNvbW1lbnRzIHtcblxuICAgIC5mYSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICB9XG4gIH1cblxuICAuY29sLXhzLTYge1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwMHB4KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICB9XG59XG5cbi5vdXItYmxvZy0xIHtcblxuICAucG9zdC1mZWF0dXJlLWltZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIC5wb3N0LXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA3cHg7XG4gIH1cblxuICAucG9zdC1tZXRhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgd29yZC1zcGFjaW5nOiAxcHg7XG4gIH1cblxuICBwIHtcbiAgICBjb2xvcjogIzAwMDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICAgIH1cbiAgfVxuXG4gIC5lbnRyeS1mb290ZXIge1xuICAgIGNvbG9yOiAjOTk5O1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm91ci1ibG9nLTIge1xuXG4gIC5wb3N0LWZlYXR1cmUtaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMXB4O1xuICB9XG5cbiAgLnBvc3QtZGF0ZSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgIGNvbG9yOiAjYjdiN2I3O1xuICB9XG5cbiAgLnBvc3QtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICBwIHtcbiAgICBmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICBjb2xvcjogIzU1NTtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5lbnRyeS1mb290ZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICNiN2I3Yjc7XG5cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIC5mYSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgICBjb2xvcjogIzU1NTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wb3N0LWF1dGhvciB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuLm91ci1ibG9nLTMge1xuXG4gIC5wb3N0LWZlYXR1cmUtaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgLnBvc3QtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICBwIHtcbiAgICBmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICBjb2xvcjogIzU1NTtcbiAgfVxufVxuIiwiLnN1YnNjcmliZSB7XG4gIHBhZGRpbmctdG9wOiAzNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogNjVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgcGFkZGluZy10b3A6IDY1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDk1cHg7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBwYWRkaW5nLXRvcDogMTI1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE2MHB4O1xuICB9XG5cbiAgLnRpdGxlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgd29yZC1zcGFjaW5nOiAycHg7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICAuc3Vic2NyaWJlLWZvcm0ge1xuICAgIG1hcmdpbjogMCBhdXRvIDE1cHg7XG4gICAgbWF4LXdpZHRoOiA4MjBweDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgICAgLmNvbC1sZy0zIHtcbiAgICAgICAgd2lkdGg6IDI4LjUlO1xuICAgICAgfVxuXG4gICAgICAuY29sLWxnLTYge1xuICAgICAgICB3aWR0aDogNDMlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHAge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDdweDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWdyb3VwIHtcblxuICAgIC5mYS11c2VyLFxuICAgIC5mYS1lbnZlbG9wZS1vIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAjZDNkM2QzO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgICBpbnB1dFt0eXBlPVwidXJsXCJdIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcblxuICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICB0ZXh0YXJlYXtcbiAgICAmOmZvY3VzICsgLmZhIHtcbiAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyIHtcblxuICAgIC5mYS1wYXBlci1wbGFuZS1vLFxuICAgIC5mYS1jaXJjbGUtby1ub3RjaCB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gIH1cblxuICAuZmEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gIC5mYS11c2VyLFxuICAuZmEtZW52ZWxvcGUtbyxcbiAgLmZhLWNvbW1lbnRzLW8ge1xuICAgIHRvcDogMTNweDtcbiAgICBsZWZ0OiAxNXB4O1xuICAgIGNvbG9yOiAjNTU1O1xuICB9XG5cbiAgLmZhLXBhcGVyLXBsYW5lLW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMTFweCA1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBiYTZkODtcbiAgICBjb2xvcjogI2Y1ZmNmZDtcbiAgfVxuXG4gIC5mYS1jaXJjbGUtby1ub3RjaCB7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgdG9wOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICB6LWluZGV4OiAyNTtcbiAgICBjb2xvcjogI2ZmZjtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG5cbiAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgaW5wdXRbdHlwZT1cInVybFwiXSxcbiAgdGV4dGFyZWEge1xuICAgIHBhZGRpbmc6IDdweCAxOHB4O1xuICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMTBweCA4M3B4IDhweCA0NnB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjdweDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBiYTZkODtcbiAgICAgIGJvcmRlci1jb2xvcjogIzBiYTZkODtcbiAgICB9XG4gIH1cbn1cbiIsIi5vdXItY2xpZW50cyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmLm5vLWJvcmRlciB7XG5cbiAgICAucm93ICsgLnJvdyB7XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIFtjbGFzc149XCJjb2wtXCJdIHtcblxuICAgICAgKyBbY2xhc3NePVwiY29sLVwiXSB7XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucm93ICsgLnJvdyB7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZjNmM2YzO1xuICAgIH1cbiAgfVxuXG4gIFtjbGFzc149XCJjb2wtXCJdIHtcblxuICAgICsgW2NsYXNzXj1cImNvbC1cIl0ge1xuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZjNmM2YzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jb2wteHMtNiB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDM4MHB4KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuc2luZ2xlLWNsaWVudCB7XG4gICAgcGFkZGluZzogMzBweCAyMHB4IDA7XG4gICAgbWluLWhlaWdodDogMTA1cHg7XG4gIH1cbn1cblxuLm91ci1jbGllbnRzLTIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlZWYyO1xuXG5cblxuICAuc2VjdGlvbi1oZWFkZXIge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAmLnRleHQtY2VudGVye1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gIC5yb3cgKyAucm93IHtcbiAgICBib3JkZXItY29sb3I6ICNkY2RjZGM7XG4gIH1cblxuICBbY2xhc3NePVwiY29sLVwiXSB7XG5cbiAgICArIFtjbGFzc149XCJjb2wtXCJdIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI2RjZGNkYztcbiAgICB9XG4gIH1cbn1cblxuLm91ci1jbGllbnRzLTMge1xuICBwYWRkaW5nLXRvcDogNTBweDtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZThlOGU4O1xufSIsIi5vdXItY29udGFjdCB7XG5cbiAgLmZvcm0tZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgICBpbnB1dFt0eXBlPVwidXJsXCJdLFxuICAgIHRleHRhcmVhIHtcbiAgICAgIHBhZGRpbmctdG9wOiA5cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOXB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgIH1cblxuICAgIC5mYS11c2VyLFxuICAgIC5mYS1lbnZlbG9wZS1vLFxuICAgIC5mYS1jb21tZW50cy1vIHtcbiAgICAgIHRvcDogMTRweDtcbiAgICAgIGxlZnQ6IDIwcHg7XG4gICAgfVxuICB9XG5cbiAgLnN1Ym1pdC1idG4tZ3JvdXB7XG4gICAgbWF4LXdpZHRoOiAyMjRweDtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIHBhZGRpbmc6IDEwcHggODBweCA4cHggMzJweDtcbiAgfVxuXG4gIHRleHRhcmVhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDE2MnB4O1xuICB9XG59XG5cbi5vdXItY29udGFjdC0xIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjlmZTtcbn1cblxuLmNvbnRhY3QtZGV0YWlscyB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcbiAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAudGl0bGUge1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzNweDtcbiAgfVxuXG4gICYtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjhweDtcbiAgfVxuXG4gIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiA0MnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAudGl0bGUge1xuICAgICAgY29sb3I6ICM1ZDVkNWQ7XG4gICAgfVxuXG4gICAgPiAuZmEge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA0cHg7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGNvbG9yOiAjMjIyO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuOTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICB9XG5cbiAgLmZvbGxvdy11cyB7XG5cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgbWFyZ2luLXRvcDogM3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTFlMmUyO1xuICAgICAgY29sb3I6ICM5OTk4OTY7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYSArIGEge1xuICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICB9XG4gIH1cbn0iLCIudGVzdGltb25pYWwge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBwe1xuICAgICY6bGFzdC1jaGlsZHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG5cbi50ZXN0aW1vbmlhbC0xIHtcbiAgcGFkZGluZy10b3A6IDU0cHg7XG4gIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuXG4gIGJsb2NrcXVvdGUge1xuICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvIFNsYWInLCBzZXJpZjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgd29yZC1zcGFjaW5nOiAycHg7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICAuYXV0aG9yIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG59XG5cbi50ZXN0aW1vbmlhbC0yIHtcbiAgcGFkZGluZy10b3A6IDM1cHg7XG4gIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICBjb2xvcjogI2ZmZjtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICAuY29sLW1kLTgge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxuICAucXVvdGUtaWNvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDU1cHg7XG4gICAgaGVpZ2h0OiA1NXB4O1xuICAgIG1hcmdpbjogMCBhdXRvIDM4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM2MjZkODA7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3F1b3RlLWljb24ucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICB9XG5cbiAgcCB7XG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gIH1cblxuICAuZGVzY3JpcHRpb24ge1xuXG4gICAgcCB7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS44O1xuICAgIH1cbiAgfVxuXG4gIC5hdXRob3Ige1xuXG4gICAgJi1pbmZvIHtcbiAgICAgIG1hcmdpbi10b3A6IDQ1cHg7XG5cbiAgICAgIGg1IHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICAgIH1cbiAgXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogODJweCAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IDgycHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAub3dsLXRoZW1lIC5vd2wtbmF2LmRpc2FibGVkKy5vd2wtZG90cyB7XG4gICAgbWFyZ2luLXRvcDogMjZweDtcbiAgfVxuXG4gIC5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90IHNwYW4ge1xuICAgIHdpZHRoOiA4cHg7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDZweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgfVxuXG4gIC5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90LmFjdGl2ZSBzcGFuLFxuICAub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdDpob3ZlciBzcGFuIHtcbiAgICBiYWNrZ3JvdW5kOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgfVxufSIsIi5vdXItc2VydmljZXMge1xuXG4gIC5yb3cge1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcblxuICAgICAgLnNlcnZpY2VzLWl0ZW0ge1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ub3VyLXNlcnZpY2VzLWNhcm91c2VsIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuXG4gIC5zZXJ2aWNlLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiA0N3B4IDM0cHggMjVweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjNzIGVhc2UtaW4tb3V0KTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZjdmN2Y3O1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1ib3R0b206IDE3cHg7XG4gIH1cblxuICBwIHtcbiAgICBsaW5lLWhlaWdodDogMjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGNvbG9yOiAjNTU1O1xuICB9XG5cbiAgLmJ0biB7XG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICBwYWRkaW5nOiA3cHggMTVweCA1cHg7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IC03MnB4O1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgJi5vd2wtY2Fyb3VzZWwgLm93bC1uYXYuZGlzYWJsZWQgKyAub3dsLWRvdHMge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gIH1cblxuICAmLm93bC1jYXJvdXNlbCAub3dsLWRvdHMgLm93bC1kb3Qge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cblxuICAmLm93bC1jYXJvdXNlbCAub3dsLWRvdHMgLm93bC1kb3Qgc3BhbiB7XG4gICAgd2lkdGg6IDhweDtcbiAgICBoZWlnaHQ6IDhweDtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIGJhY2tncm91bmQ6ICNkZGQ7XG4gIH1cblxuICAmLm93bC1jYXJvdXNlbCAub3dsLWRvdHMgLm93bC1kb3QuYWN0aXZlIHNwYW4sXG4gICYub3dsLWNhcm91c2VsIC5vd2wtZG90cyAub3dsLWRvdDpob3ZlciBzcGFuIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRsaW5rLWhvdmVyLWNvbG9yO1xuICB9XG5cbiAgJi5vd2wtY2Fyb3VzZWwgLm93bC1kb3RzIC5vd2wtZG90LmFjdGl2ZSBzcGFuIHtcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gIH1cbn1cblxuLm91ci1zZXJ2aWNlcy0yIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2hvbWUvc2VydmljZXMtdHdvLWJnLmpwZ1wiKSBuby1yZXBlYXQgY2VudGVyIHRvcDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgY29sb3I6ICNmZmY7XG5cbiAgLnNlY3Rpb24taGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMjBweDtcbiAgfVxuXG4gIC5zZWN0aW9uLXN1Yi10aXRsZSxcbiAgLnNlY3Rpb24tdGl0bGUsXG4gIC5mZWF0dXJlLWl0ZW0tMSAudGl0bGUge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG5cbiAgLmxpbmUtdHdvID4gc3BhbjpiZWZvcmUsXG4gIC5saW5lLXR3byA+IHNwYW46YWZ0ZXIsXG4gIC5saW5lLXR3bzpiZWZvcmUsXG4gIC5saW5lLXR3bzphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NTlweCkge1xuICAgIC5yaWdodC1zaWRlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgfVxuICAgIC5jb2wteHMtNiB7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLmZlYXR1cmUtaXRlbS0xIC5mZWF0dXJlLWNvbnRlbnQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDU2MHB4KSB7XG4gICAgLnJpZ2h0LXNpZGUge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAuZmVhdHVyZS1pdGVtLTEgLmZlYXR1cmUtaW1nIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5sZWZ0LXNpZGUge1xuICAgICAgLmZlYXR1cmUtaXRlbSAuZmVhdHVyZS1jb250ZW50IHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIC5yaWdodC1zaWRlIHtcbiAgICAgIHdpZHRoOiAzNiU7XG4gICAgfVxuXG4gICAgLmltYWdlLWNvbHVtbiB7XG4gICAgICB3aWR0aDogMjglO1xuICAgIH1cblxuICAgIC5sZWZ0LXNpZGUge1xuICAgICAgd2lkdGg6IDM2JTtcbiAgICB9XG4gIH1cblxuICAuZmVhdHVyZS1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiA4OHB4O1xuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuZmVhdHVyZS1pdGVtLTEgLmZlYXR1cmUtaW1nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDcycHg7XG4gICAgaGVpZ2h0OiA3MnB4O1xuICAgIGxpbmUtaGVpZ2h0OiA2OHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuXG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gIH1cblxuICAuZmVhdHVyZS1pdGVtIC5mZWF0dXJlLWNvbnRlbnQge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA5NXB4KTtcbiAgfVxuXG4gIC5mZWF0dXJlLWl0ZW0gcCB7XG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBsaW5lLWhlaWdodDogMS45O1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgfVxufVxuXG4uc2VydmljZXMtaXRlbSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1ib3R0b206IDkycHg7XG5cbiAgJi5zZXJ2aWNlcy0zIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2NHB4O1xuICB9XG5cbiAgJjpob3ZlciB7XG5cbiAgICAubGluZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuc2VydmljZXMtaW1nIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNzJweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gIH1cblxuICAuc2VydmljZXMtY29udGVudCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDcycHgpO1xuICB9XG5cbiAgLnRpdGxlIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICB9XG5cbiAgLmxpbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XG4gIH1cblxuICBwIHtcbiAgICBtYXJnaW4tdG9wOiA5cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBsaW5lLWhlaWdodDogMS45O1xuICAgIGNvbG9yOiAjNTU1O1xuICB9XG59IiwiLmludHJvLTEge1xuXG4gIC5zZWN0aW9uLWhlYWRlciB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgbWFyZ2luLXRvcDogMjRweDtcbiAgICB9XG4gIH1cblxuICAuc2VjdGlvbi1oZWFkZXIgcCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogMThweDtcbiAgfVxuXG4gIC5yb3cgKyAucm93IHtcbiAgICBtYXJnaW4tdG9wOiA2NXB4O1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgICBtYXJnaW4tdG9wOiA3N3B4O1xuICAgICAgcGFkZGluZy10b3A6IDExMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5zZXJ2aWNlcy1pdGVtLWNvbCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaW50cm8tMiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cbiAgLnJvd3tcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmludHJvLWZlYXR1cmVzLXdyYXAge1xuICBwYWRkaW5nOiA1MHB4IDI1cHggMzBweDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBwYWRkaW5nOiA2MHB4IDcwcHggMCA5MHB4O1xuICAgIHdpZHRoOiAzNyU7XG4gIH1cbn1cblxuLmludHJvLWZlYXR1cmVzIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogMTM2NnB4KSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5pY29uLXdyYXAge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGhlaWdodDogNzBweDtcbiAgICBsaW5lLWhlaWdodDogNzBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBmb250LXNpemU6IDMycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICAuY29udGVudCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgcGFkZGluZzogMTFweCAwO1xuXG4gICAgLnRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxLjRweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gIH1cbn1cblxuLmludHJvLWhlYWRlci13cmFwIHtcbiAgcGFkZGluZzogNjVweCAzMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaG9tZS9pbnRyby1iZy0yLmpwZyk7XG4gIGNvbG9yOiAjZmZmO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIHBhZGRpbmc6IDExMnB4IDEwMHB4IDExNnB4IDEzN3B4O1xuICAgIHdpZHRoOiA2MyU7XG4gIH1cblxuICAuaW50cm8tc3ViLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMS40cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAjY2NjO1xuICB9XG5cbiAgLmludHJvLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDM2cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDIuNnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxuXG4gIC5saW5lIHtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDRweDtcbiAgfVxuXG4gIHAge1xuICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcbiAgICBtYXJnaW4tdG9wOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgY29sb3I6ICNkNWQ1ZDU7XG4gIH1cbn1cblxuLmltZy1ob3ZlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcblxuICAmOmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjtcbiAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIGNvbnRlbnQ6IFwiXFxmMDY1XCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICB3aWR0aDogMzZweDtcbiAgICBoZWlnaHQ6IDM2cHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4zcyBlYXNlLWluLW91dCk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY29sb3I6ICMwMDA7XG4gIH1cblxuICBpbWcge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4xcyBlYXNlLWluLW91dCk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIG9wYWNpdHk6IC4xNTtcbiAgICB9XG4gIH1cbn0iLCIub3VyLXNraWxscyB7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgcGFkZGluZy10b3A6IDEwMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgfVxuXG4gIC5mZWF0dXJlLWJveCB7XG5cbiAgICBwOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuICAgICAgY29sb3I6ICM1NTU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyOHB4O1xuICAgIH1cbiAgfVxufVxuXG4ucHJvZ3Jlc3MtYmFycyB7XG4gIHBhZGRpbmctdG9wOiA1cHg7XG59XG5cbi5wcm9ncmVzcyB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvIFNsYWInLCBzZXJpZjtcbiAgbWFyZ2luLWJvdHRvbTogMjhweDtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAudGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cblxuICAmLWJhciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogM3B4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmVkZjM7XG5cbiAgICA+IHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLnByb2dyZXNzZWQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogLTMwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gIH1cblxuICAuY29tcGxldGVkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogM3B4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICB9XG59IiwiLndoeS1jaG9zZS11cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgLmFjY29yZGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufSIsIi5ob21lLTN7XG5cbiAgLnNlY3Rpb24tdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gIH1cblxuICAuc2VjdGlvbi1oZWFkZXIgcDpmaXJzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICB9XG5cbiAgLnNlY3Rpb24taGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG59IiwiLmhvbWUtNCB7XG5cbiAgLnNlY3Rpb24taGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1NXB4O1xuICB9XG5cbiAgLm91ci1wb3J0Zm9saW8tMyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgfVxuXG4gIC5vdXItY2xpZW50cyB7XG4gICAgW2NsYXNzXj1cImNvbC1cIl0gKyBbY2xhc3NePVwiY29sLVwiXSB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC5vdXItc2VydmljZXMtMyB7XG5cbiAgICAuc2VjdGlvbi1oZWFkZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjdweDtcbiAgICB9XG4gIH1cbn0iLCIucG9zdC1pdGVtIHtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWJlYmViO1xufVxuXG4ucG9zdC10aHVtYm5haWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7XG5cbiAgaW1nIHtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XG4gIH1cblxuICBhIHtcbiAgICAmOmhvdmVyIGltZyxcbiAgICAmOmZvY3VzIGltZyB7XG4gICAgICBvcGFjaXR5OiAwLjk1O1xuICAgIH1cbiAgfVxufVxuXG5zcGFuLnN0aWNreSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nOiAwcHggMTBweDtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgY29sb3I6ICNmZmY7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgZm9udC1zaXplOiAxLjhyZW07XG5cbiAgaSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTI2ZGVnKTtcbiAgfVxufVxuXG4ucG9zdC1jYXQge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogNnB4IDE2cHggNHB4O1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG5cbiAgPiBhIHtcbiAgICBjb2xvcjogI2ZmZjtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLnBvc3QtYXV0aG9yIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuXG4gIC5hdXRob3ItaW5mby13cmFwIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuXG4gIC5hdXRob3ItdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIG1hcmdpbi10b3A6IDdweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLmF1dGhvci1pbWFnZSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiA0OHB4O1xuICAgIGhlaWdodDogNDhweDtcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIH1cbn1cblxuLnBvc3RlZC1vbiB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbn1cblxuLmVudHJ5LW1ldGEge1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xufVxuXG4uZW50cnktdGl0bGUge1xuICBmb250LXNpemU6IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAzcHg7XG4gIHdvcmQtc3BhY2luZzogLTNweDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBmb250LXNpemU6IDM2cHg7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgfVxufVxuXG4uZW50cnktc3VtbWFyeSB7XG4gIGxpbmUtaGVpZ2h0OiAyLjE7XG59XG5cbi5zaW5nbGUtcG9zdC1saW5rIHtcbiAgbWFyZ2luOiAwIDE3cHggMTVweCAwO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuZmEge1xuICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gIH1cbn1cblxuLnNoYXJlLXRoaXMtcG9zdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuXG4gID4gYSB7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgY29sb3I6ICM3Nzc7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLyogUG9zdCBGb3JtYXRzICovXG4uZm9ybWF0LXZpZGVvIHtcblxuICAucG9zdC10aHVtYm5haWwgYSB7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZjA0YlwiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lO1xuICAgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogNzBweDtcbiAgICAgIGhlaWdodDogNzBweDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgei1pbmRleDogMjU7XG4gICAgICBtYXJnaW46IC0zNXB4IDAgMCAtMzVweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgIHBhZGRpbmc6IDI1cHggMCAwIDdweDtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjcpO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmZvcm1hdC1xdW90ZSBibG9ja3F1b3RlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvcXVvdGUucG5nXCIpICRsaW5rLWhvdmVyLWNvbG9yIG5vLXJlcGVhdCA5OSUgOXB4O1xuICBjb2xvcjogI2ZmZjtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBmb250LXNpemU6IDI2cHg7XG4gICAgcGFkZGluZzogNjBweCA4NXB4IDU2cHg7XG4gIH1cbn0iLCIuc2luZ2xlLXBvc3Qge1xuXG4gIC5wb3N0LWl0ZW0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuICB9XG5cbiAgLmVudHJ5LW1ldGEge1xuICAgIG1hcmdpbi1ib3R0b206IDM0cHg7XG4gIH1cbn1cblxuLmVudHJ5LWNvbnRlbnQge1xuXG4gIGJsb2NrcXVvdGUge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2VyaWY7XG4gICAgcGFkZGluZzogNHB4IDIwcHggNHB4IDcwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB3b3JkLXNwYWNpbmc6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL3F1b3RlLXNtYWxsLnBuZykgbm8tcmVwZWF0IDI3cHggN3B4O1xuICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgIGNvbG9yOiAjNTU1O1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDcwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA3MHB4O1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIH1cbiAgfVxufVxuXG5cbi5zaW5nbGUgLmVudHJ5LWNvbnRlbnQge1xuICBsaW5lLWhlaWdodDogMi4yO1xufVxuXG4uZW50cnktZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWJlYmViO1xuXG4gIHNwYW4ge1xuICAgIGNvbG9yOiAjMjIyO1xuICB9XG59XG5cbi5lbnRyeS10YWdzIHtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuXG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gIH1cblxuICBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogN3B4IDE1cHg7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ViZWJlYjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gIH1cbn1cblxuLmVudHJ5LXNoYXJlLXRoaXMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBjb2xvcjogIzIyMjtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cblxuICBhIHtcbiAgICBtYXJnaW4tbGVmdDogMTdweDtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmFib3V0LWJpby13cmFwIHtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWJlYmViO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDU1MHB4KSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIC5hdmF0YXIge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNTUwcHgpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMjJweDtcbiAgICB9XG4gIH1cblxuICAuYXV0aG9yLWJpbyB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cblxuICAuYXV0aG9yLW5hbWUge1xuICAgIG1hcmdpbi10b3A6IDE0cHg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuNXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cblxuICBwIHtcbiAgICBsaW5lLWhlaWdodDogMjtcbiAgICBtYXJnaW4tYm90dG9tOiAxM3B4O1xuICB9XG5cbiAgLnNvY2lhbC1wcm9maWxlcyB7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU1MHB4KSB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE0cHg7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmFub3RoZXItcG9zdCB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG5cbiAgLmltZy1ob3ZlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogNTAwcHgpIHtcbiAgICAuY29sLXhzLTYge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLnBvc3QtZmVhdHVyZS1pbWcge1xuICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLnBvc3QtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cblxuICAucG9zdC1tZXRhIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHdvcmQtc3BhY2luZzogMXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vKiBDb21tZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNvbW1lbnRzLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogOTAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMS42cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDE4cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxOHB4O1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2ViZWJlYjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlYmViZWI7XG59XG5cbi5jb21tZW50LWxpc3QsXG4uY29tbWVudC1saXN0IC5jaGlsZHJlbiB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuLmNvbW1lbnQtbGlzdCB7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuXG4gIC5hdmF0YXIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgICBoZWlnaHQ6IDU0cHg7XG4gICAgd2lkdGg6IDU0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB9XG5cbiAgLmZuIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgcGFkZGluZy10b3A6IDlweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAucmVwbHkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgfVxufVxuXG4uY29tbWVudC1hdXRob3Ige1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmNvbW1lbnQtbWV0YSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbi5jb21tZW50LW1ldGFkYXRhIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogI2E4YThhODtcbn1cblxuLmNvbW1lbnQtd3JhcHBlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xufVxuXG4uY29tbWVudC1jb250ZW50IHtcbiAgbGluZS1oZWlnaHQ6IDI7XG59XG5cbi5jb21tZW50LWJvZHkge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VjZWNlYztcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDMzcHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAuY29tbWVudC5kZXB0aC0yIC5jb21tZW50LWJvZHkge1xuICAgIG1hcmdpbi1sZWZ0OiA3MHB4O1xuICB9XG5cbiAgLmNvbW1lbnQuZGVwdGgtMyAuY29tbWVudC1ib2R5IHtcbiAgICBtYXJnaW4tbGVmdDogKDcwcHggKiAyKTtcbiAgfVxuXG4gIC5jb21tZW50LmRlcHRoLTQgLmNvbW1lbnQtYm9keSB7XG4gICAgbWFyZ2luLWxlZnQ6ICg3MHB4ICogMyk7XG4gIH1cblxuICAuY29tbWVudC5kZXB0aC01IC5jb21tZW50LWJvZHkge1xuICAgIG1hcmdpbi1sZWZ0OiAoNzBweCAqIDQpO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8qIENvbW1lbnQgUmVzcG9uZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNvbW1lbnQtZm9ybSB7XG5cbiAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgaW5wdXRbdHlwZT1cInVybFwiXSxcbiAgdGV4dGFyZWEge1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIHBhZGRpbmc6IDE0cHggNTVweDtcbiAgfVxuXG4gIHAge1xuICAgIHBhZGRpbmctYm90dG9tOiAxNHB4O1xuICB9XG59XG5cbi5jb21tZW50LXJlcGx5LXRpdGxlIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogOTAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMS42cHg7XG4gIHBhZGRpbmctdG9wOiAxOHB4O1xuICBtYXJnaW4tYm90dG9tOiAyOHB4O1xuXG4gIGEge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIH1cbn0iLCJcblxuICAvLy5mZWF0dXJlLWJveC0yIHtcbiAgLy8gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIC8vXG4gIC8vICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgLy8gICAgbWFyZ2luLXRvcDogMTFweDtcbiAgLy8gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgLy8gIH1cbiAgLy9cbiAgLy99XG5cbiAgLm91ci1mZWF0dXJlcy0yIHtcbiAgICBwYWRkaW5nLXRvcDogMTE1cHg7XG5cbiAgICAuc2VjdGlvbi1oZWFkZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNTVweDtcbiAgICB9XG5cbiAgICAuZmVhdHVyZXMtaXRlbXMge1xuICAgICAgcGFkZGluZy10b3A6IDk2cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjRweDtcbiAgICB9XG4gIH1cbiIsIi8vIHRvZG86IHJlbW92ZSB0aGlzIGNvbW1lbnQgdGV4dCAoY3VycmVudCB2ZXJzaW9uIGlzIDEuMS4wKVxuLy8uZmVhdHVyZS1ib3gtc2VjdGlvbiB7XG4vL1xuLy8gICYuZmVhdHVyZS1ib3h7XG4vLyAgICBtYXJnaW4tdG9wOiA1MHB4O1xuLy8gICAgbWFyZ2luLWJvdHRvbTogMDtcbi8vXG4vLyAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbi8vICAgICAgbWFyZ2luLXRvcDogMDtcbi8vICAgIH1cbi8vXG4vLyAgfVxuLy99IiwiLnBvcnRmb2xpby1wYWdlIHtcblxuICAuY29sLXhzLTYge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbikge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmZpbHRlcmluZyB7XG4gICAgcGFkZGluZzogMjFweCAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxMzFhMWU7XG5cbiAgICAuZmlsdGVyLWdyb3VwIHtcblxuICAgICAgPiBsaSB7XG4gICAgICAgIG1hcmdpbjogMCAyMHB4IDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogI2FkYmFjMTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICYuaXMtY2hlY2tlZCxcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmZpbHRlcmluZyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAuZmlsdGVyLWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG5cbiAgICA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICB9XG59XG5cbi5wb3J0Zm9saW8taXRlbXMtY29udGFpbmVyIHtcblxuICAmLm5vLXBhZGRpbmcge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgIC5wb3J0Zm9saW8tcG9zdCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5wb3J0Zm9saW8tcG9zdC1pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6aG92ZXIge1xuXG4gICAgICAucG9ydGZvbGlvLWNvbnRlbnQtd3JhcHBlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG5cbiAgICAgIC5wb3J0Zm9saW8tY29udGVudCB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5wb3J0Zm9saW8tY29udGVudC13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogMDtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjNzIGVhc2UtaW4pO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMyZjQxNGIsIC44KTtcbn1cblxuLnBvcnRmb2xpby1jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDQwJTtcbiAgbGVmdDogNTAlO1xuICBvcGFjaXR5OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjNzIGVhc2UtaW4pO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcblxuICAucG9ydGZvbGlvLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucG9ydGZvbGlvLWNhdCB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG59IiwiLnBvcnRmb2xpby1zaW5nbGUtcG9zdCB7XG5cbiAgLnBvc3QtdGh1bWJuYWlsIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0NHB4O1xuICB9XG5cbiAgLnBvcnRmb2xpby1wb3N0LXRpdGxlIHtcbiAgICBsZXR0ZXItc3BhY2luZzogNHB4O1xuICAgIHdvcmQtc3BhY2luZzogMnB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICB9XG4gIH1cblxuICAuZW50cnktY29udGVudCB7XG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5wcm9qZWN0LW1ldGEge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiA0cHggMCAzNHB4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgIC50aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDExcHg7XG5cbiAgICAgIHNwYW4sXG4gICAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogIzIyMjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYnRuIHtcbiAgICBwYWRkaW5nOiAxMHB4IDM1cHggOHB4O1xuICB9XG59XG5cbi5wcm9qZWN0LXNsaWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG5cbiAgLmZsZXgtZGlyZWN0aW9uLW5hdiBhIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHdpZHRoOiA0NHB4O1xuICAgIGNvbG9yOiAjMjIyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG59XG5cbi5wb3N0LW5hdmlnYXRpb24ge1xuICBtYXJnaW46IDUwcHggMCAwO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiA3cHggMTZweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWJlYmViO1xuXG4gICAgJjpob3ZlcntcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxuXG4gIC5mYSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG59IiwiLmNvbnRhY3Qge1xuXG4gICYtcGFnZSB7XG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuXG4gICAgLnNlY3Rpb24ge1xuXG4gICAgICAmLXRpdGxlIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzZweDtcbiAgICAgIH1cblxuICAgICAgJi1kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIGNvbG9yOiAjMjIyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtZm9ybSB7XG4gICAgcGFkZGluZy10b3A6IDhweDtcblxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgICBpbnB1dFt0eXBlPVwidXJsXCJdLFxuICAgIHRleHRhcmVhIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMnB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDEycHg7XG4gICAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjNzIGVhc2UtaW4tb3V0KTtcblxuICAgICAgJjpmb2N1czpub3QoLmVycm9yKSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICBwYWRkaW5nOiAxNXB4IDM0cHggMTNweDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICB9XG59XG5cbi5jb250YWN0cyB7XG4gIG1hcmdpbi10b3A6IDI4cHg7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGxpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDExcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZGVkZWQ7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAudGl0bGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDAwcHgpIHtcbiAgICAgIHdpZHRoOiAxMThweDtcbiAgICB9XG4gIH1cblxuICBzcGFuIHtcbiAgICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuICB9XG5cbiAgLmNvbnRlbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG5cbiAgYVtocmVmXj1cIm1haWx0b1wiXSB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuXG4gICAgJjpob3ZlcntcbiAgICAgIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgcCxcbiAgYWRkcmVzcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBsaW5lLWhlaWdodDogMi41O1xuICB9XG59XG5cbi5mb2xsb3ctdXMge1xuXG4gIGEge1xuICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICArIGEge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XG4gICAgfVxuICB9XG59XG5cbiNnb29nbGUtbWFwIHtcbiAgaGVpZ2h0OiAyNTBweDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBoZWlnaHQ6IDM1MHB4O1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgaGVpZ2h0OiA1MDBweDtcbiAgfVxufSIsIi53cmFwcGVyLTQwNCB7XG4gIC8vcGFkZGluZzogNTBweCAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgPiBoMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDEwMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgbWFyZ2luLXRvcDogLTNyZW07XG5cbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICBwIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICYgKyBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgfVxuICB9XG5cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC53cmFwcGVyLTQwNCA+IGgxIHtcbiAgICBmb250LXNpemU6IDIzMHB4O1xuICB9XG59XG4iLCIvKiBBY2NvcmRpb24gKi9cbi5hY2NvcmRpb24ge1xuICBsaW5lLWhlaWdodDogMS43MTQyOTtcblxuICAuYWNjb3JkaW9uLXNlY3Rpb25zIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZThlOGU4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJi5vcGVuZWQge1xuXG4gICAgICAuZmEtY2FyZXQge1xuICAgICAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMGQ3XCI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYWNjb3JkaW9uLWhlYWRlciB7XG4gICAgcGFkZGluZzogMTZweCAxOHB4IDE0cHggMzBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gICAgfVxuICB9XG5cbiAgLnRpdGxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuZmEgKyAudGl0bGUge1xuICAgIG1hcmdpbi1sZWZ0OiAyN3B4O1xuICB9XG5cbiAgLmZhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGNvbG9yOiAjMjIyO1xuICB9XG5cbiAgLmZhLWNhcmV0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cblxuICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmc6IDEycHggMzBweCAyMHB4O1xuICAgIGNvbG9yOiAjNTU1O1xuXG4gICAgcCB7XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtdHdvIHtcblxuICAgIC5hY2NvcmRpb24taGVhZGVyIHtcbiAgICAgIHBhZGRpbmc6IDhweCAxN3B4IDZweCAyMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbiAgICAgIGNvbG9yOiAjOTk5O1xuXG4gICAgICAudGl0bGUge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuNDVweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZmEge1xuICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgIH1cblxuICAgIC5mYS1jYXJldC11cDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGYwNjdcIjtcbiAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgIH1cblxuICAgIC5hY2NvcmRpb24tc2VjdGlvbnMub3BlbmVkIHtcblxuICAgICAgLmFjY29yZGlvbi1oZWFkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBjb2xvcjogIzIyMjtcbiAgICAgIH1cblxuICAgICAgLmZhLWNhcmV0OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDY4XCI7XG4gICAgICAgIGNvbG9yOiAjMjIyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICBjb2xvcjogIzU1NTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZThlOGU4O1xuICAgICAgcGFkZGluZzogMTZweCAyMHB4IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMjtcbiAgICB9XG4gIH1cblxuICAmLXRocmVlIHtcbiAgICBAZXh0ZW5kIC5hY2NvcmRpb24tdHdvO1xuXG4gICAgLmFjY29yZGlvbi1zZWN0aW9ucyB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLWhlYWRlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAxM3B4IDYwcHggMTFweCAyNXB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2U3ZTdlNztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgfVxuXG4gICAgLmZhIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNHB4O1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlN2U3ZTc7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmFjY29yZGlvbi1zZWN0aW9ucy5vcGVuZWQge1xuICAgICAgLmFjY29yZGlvbi1oZWFkZXIge1xuICAgICAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgIC5mYS1jYXJldDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICAgICAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAxMHB4IDVweCAyMHB4O1xuICAgIH1cbiAgfVxufVxuXG4vKiBUYWJzICovXG4udGFicyB7XG5cbiAgJi1uYXYge1xuXG4gICAgJi1saXN0IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBwYWRkaW5nOiAxM3B4IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB3aWR0aDogMSU7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcblxuICAgICAgICAmLmN1cnJlbnQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuXG4gICAgICAgICAgKyBsaSB7XG4gICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgKyBsaSB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZTRlNGU0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYubm90LWZ1bGwge1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtY29udGVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcbiAgICBjb2xvcjogIzU1NTtcbiAgfVxufVxuXG4udGFicyB7XG5cbiAgJi0yIHtcblxuICAgIC50YWJzLW5hdi1saXN0IGxpLmN1cnJlbnQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG5cbiAgICAudGFiLWNvbnRlbnQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gIH1cblxuICAmLTMge1xuXG4gICAgLnRhYnMtbmF2LWxpc3QgbGkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzExMTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICArIGxpIHtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICMyMjI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYnMtbmF2LWxpc3QgbGkuY3VycmVudCB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAjMjIyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cblxuICAgIC50YWItY29udGVudCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICAgICAgY29sb3I6ICM4YjhiOGI7XG4gICAgfVxuICB9XG5cbiAgJi00IHtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzLW1pbikge1xuICAgICAgLnRhYnMtbmF2IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAxNjhweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFicy1jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cblxuICAgIC50YWJzLW5hdi1saXN0IGxpIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcbiAgICAgIGNvbG9yOiAjMjIyO1xuICAgIH1cblxuICAgIC50YWJzLW5hdi1saXN0IGxpLmN1cnJlbnQge1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcbiAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG5cbiAgICAudGFicy1jb250ZW50IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC50YWItY29udGVudCB7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cy1taW4pIHtcbiAgICAgICAgcGFkZGluZzogMTVweCAwIDFweCAzMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udGFiLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAyMHB4IDIycHggMXB4O1xuICBsaW5lLWhlaWdodDogMjtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuXG4gICYuY3VycmVudCB7XG4gICAgZGlzcGxheTogaW5oZXJpdDtcbiAgfVxufVxuXG4vKiBQcmljaW5nIFRhYmxlcyAqL1xuLnByaWNpbmctdGFibGUge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuYnRuIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI5cHg7XG4gICAgcGFkZGluZy1yaWdodDogMjlweDtcbiAgfVxuXG4gIC5jdXJyZW5jeSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIH1cblxuICAmLW9uZSB7XG4gICAgYm9yZGVyOiA0cHggc29saWQgI2VlZTtcblxuICAgIC5wcmljaW5nLXRhYmxlLWhlYWRlciB7XG4gICAgICBwYWRkaW5nOiAzMXB4IDAgMjZweDtcbiAgICB9XG5cbiAgICAudGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cblxuICAgIC5zdWItdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBjb2xvcjogIzY2NjtcbiAgICB9XG5cbiAgICAucHJpY2UtZ3JvdXAge1xuICAgICAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHBhZGRpbmc6IDMycHggMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgfVxuXG4gICAgLmN1cnJlbmN5IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAxM3B4O1xuICAgIH1cblxuICAgIC5wcmljZSB7XG4gICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgfVxuXG4gICAgLnByaWNlLFxuICAgIC5jdXJyZW5jeSxcbiAgICAucHJlZml4LXRleHQge1xuICAgICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cblxuICAgIC5wcmVmaXgtdGV4dCB7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIHdvcmQtc3BhY2luZzogOHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxM3B4O1xuXG4gICAgICAgICY6ZW1wdHkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAucHJpY2luZy10YWJsZS1ib2R5IHtcbiAgICAgIHBhZGRpbmc6IDQwcHggNDVweCA1MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIuMTtcbiAgICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlO1xuICAgICAgY29sb3I6ICM1NTU7XG5cbiAgICAgIHA6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFjdGl2ZSxcbiAgICAmLmN1cnJlbnQsXG4gICAgJi5zZWxlY3RlZCxcbiAgICAmLnN1YnNjcmliZWQsXG4gICAgJi5oaWdobGlnaHQsXG4gICAgJi5yZWNvbW1lbmRlZCB7XG4gICAgICBib3JkZXItY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuXG4gICAgICAucHJpY2UtZ3JvdXAge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgLnByaWNlLFxuICAgICAgLmN1cnJlbmN5LFxuICAgICAgLnByZWZpeC10ZXh0IHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi10d28ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZWU7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogNHB4O1xuXG4gICAgLnByaWNpbmctdGFibGUtaGVhZGVyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlO1xuICAgIH1cblxuICAgIC50aXRsZSB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIHBhZGRpbmc6IDIycHggMDtcbiAgICAgIHdvcmQtc3BhY2luZzogMXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlO1xuICAgIH1cblxuICAgIC5wcmljZS1ncm91cCB7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgfVxuXG4gICAgLmN1cnJlbmN5IHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgICAgdmVydGljYWwtYWxpZ246IDE4cHg7XG4gICAgfVxuXG4gICAgLnByaWNlIHtcbiAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG5cbiAgICAuY3VycmVuY3ksXG4gICAgLnByZWZpeC10ZXh0IHtcbiAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICB9XG5cbiAgICAucHJlZml4LXRleHQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG5cbiAgICAgID4gc3BhbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgICAgICAmOmVtcHR5IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnByaWNpbmctdGFibGUtYm9keSB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZTtcbiAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgID4gbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNnB4O1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5wcmljaW5nLXRhYmxlLWZvb3RlciB7XG4gICAgICBwYWRkaW5nOiAyOHB4IDA7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUsXG4gICAgJi5jdXJyZW50LFxuICAgICYuc2VsZWN0ZWQsXG4gICAgJi5zdWJzY3JpYmVkLFxuICAgICYuaGlnaGxpZ2h0LFxuICAgICYucmVjb21tZW5kZWQge1xuXG4gICAgICAuYnRuIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMzMzO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLXRocmVlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWVlO1xuXG4gICAgLnByaWNpbmctdGFibGUtaGVhZGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmc6IDM4cHggMTVweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlO1xuXG4gICAgICAmOmFmdGVyLFxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IC0xcHg7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICB9XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmZmO1xuICAgICAgICBib3JkZXItd2lkdGg6IDhweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC04cHg7XG4gICAgICB9XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNlZWU7XG4gICAgICAgIGJvcmRlci13aWR0aDogOXB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTlweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDdweDtcbiAgICB9XG5cbiAgICAubGluZSB7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gICAgfVxuXG4gICAgLnByaWNlLWdyb3VwIHtcbiAgICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgfVxuXG4gICAgLmN1cnJlbmN5LFxuICAgIC5wcmljZSB7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cblxuICAgIC5wcmVmaXgtdGV4dCB7XG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgICAgY29sb3I6ICM1NTU7XG4gICAgfVxuXG4gICAgLnByaWNpbmctdGFibGUtYm9keSB7XG4gICAgICBwYWRkaW5nOiAzOXB4IDMwcHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZTtcblxuICAgICAgaDEsXG4gICAgICBoMixcbiAgICAgIGgzLFxuICAgICAgaDQsXG4gICAgICBoNSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlJhbGV3YXlcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjAwY1wiO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG4gICAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIGNvbG9yOiAjNTU1O1xuXG4gICAgICA+IGxpIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjlweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWU7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAucHJpY2luZy10YWJsZS1mb290ZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZzogMzRweCAxNXB4O1xuXG4gICAgICAmOmFmdGVyLFxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICB9XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAjZmZmO1xuICAgICAgICBib3JkZXItd2lkdGg6IDhweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC04cHg7XG4gICAgICB9XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICNlZWU7XG4gICAgICAgIGJvcmRlci13aWR0aDogOXB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTlweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFjdGl2ZSxcbiAgICAmLmN1cnJlbnQsXG4gICAgJi5zZWxlY3RlZCxcbiAgICAmLnN1YnNjcmliZWQsXG4gICAgJi5oaWdobGlnaHQsXG4gICAgJi5yZWNvbW1lbmRlZCB7XG4gICAgICBib3JkZXItd2lkdGg6IDJweDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDdweCAjZWVlO1xuXG4gICAgICAubGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkYWRhZGE7XG4gICAgICB9XG5cbiAgICAgIC5idG4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBib3JkZXItY29sb3I6ICMxMTE7XG4gICAgICAgIGNvbG9yOiAjMTExO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuKiBQcm9kdWN0XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi53b29jb21tZXJjZSxcbi53b29jb21tZXJjZS1wYWdlIHtcbiAgLm1haW4ge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG5cbiAgLnBlYXJsLXNob3AtcGFnZSB7XG4gICAgcGFkZGluZy10b3A6IDEwMHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xuXG4gIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyxcbiAgLndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICB9XG5cbiAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QsXG4gIC53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1hcmdpbjogMCAwIDMwcHg7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlIC53Yy10aHJlZS1jb2x1bW4sXG4ud29vY29tbWVyY2UtcGFnZSAud2MtdGhyZWUtY29sdW1uIHtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcblxuICAgIHVsLnByb2R1Y3RzIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gICAgfVxuXG4gICAgdWwucHJvZHVjdHMgbGkucHJvZHVjdCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgbWFyZ2luOiAwIDAgMzBweDtcbiAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgIHdpZHRoOiAzMy4zMzMzJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4ud2Mtc2lkZWJhci1sZWZ0IHtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAuY29sLW1kLTkge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHtcbiAgd2lkdGg6IDI4MHB4O1xuICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1MDBweCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgICBoZWlnaHQ6IDQ2cHg7XG4gIH1cblxuICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gICAgbGluZS1oZWlnaHQ6IDQ2cHg7XG4gIH1cblxuICAuc2VsZWN0Mi1zZWxlY3Rpb24gLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICB9XG59XG5cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IHtcbiAgbWFyZ2luOiAxM3B4IDAgMWVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogIzU1NTtcblxuICBAbWVkaWEgKG1heC13aWR0aDogNTAwcHgpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLnByb2R1Y3QtdGh1bWJuYWlsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGltZyxcbiAgYSBpbWcge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjNzIGVhc2UgMC4xcztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAsIDAuNSk7XG4gIH1cbn1cblxuLm9uLXNhbGUtd3JhcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAyNXB4O1xuICBsZWZ0OiAtNDRweDtcbiAgd2lkdGg6IDEwMHB4O1xuICBoZWlnaHQ6IDQ1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtNjBkZWcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgY29sb3I6ICNmZmY7XG5cbiAgPiAub24tc2FsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMThweDtcbiAgICByaWdodDogLTlweDtcbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4ud29vY29tbWVyY2UgLnByb2R1Y3RzIHVsLFxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIHtcblxuICBsaS5wcm9kdWN0LFxuICBsaS5wcm9kdWN0IHtcblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5wcm9kdWN0LW92ZXJsYXktYnV0dG9uLXdyYXAge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxuXG4gICAgLmFkZGVkX3RvX2NhcnQsXG4gICAgLnByb2R1Y3Qtb3ZlcmxheS1idXR0b24ge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbGluZS1oZWlnaHQ6IDQ2cHg7XG4gICAgICBoZWlnaHQ6IDQ2cHg7XG4gICAgICBwYWRkaW5nOiAwIDE2cHg7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXG4gICAgICAmLmJ1dHRvbiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICAgJi5hZGRlZCB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZmEge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5sb2FkaW5nIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBsaW5lLWhlaWdodDogNDZweDtcbiAgICAgICAgaGVpZ2h0OiA0NnB4O1xuICAgICAgICB3aWR0aDogNDhweDtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuZmEge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5sb2FkaW5nLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYWRkX3RvX2NhcnRfYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMXB4O1xuICAgIH1cblxuICAgIC5hZGRlZF90b19jYXJ0LndjLWZvcndhcmQge1xuICAgICAgd2lkdGg6IDEwMnB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG5cbiAgICAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X19saW5rIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxcHg7XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlY2VjZWM7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAucHJvZHVjdC10aHVtYm5haWwtb3ZlcmxheSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cblxuICAgICAgLnByb2R1Y3QtY29udGVudCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnByaWNlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICBkZWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICB9XG5cbiAgICAgID4gLmFtb3VudCxcbiAgICAgIGlucyxcbiAgICAgIGlucyAuYW1vdW50IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIElFIDEwIGFuZCAxMSBGaXhcbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuXG4gIC53aWRnZXRfcHJvZHVjdF9zZWFyY2gge1xuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4gICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICBtaW4taGVpZ2h0OiA1M3B4O1xuICAgIH1cbiAgfVxuXG4gICo6Oi1tcy1iYWNrZHJvcCxcbiAgLndpZGdldF9wcm9kdWN0X3NlYXJjaCB7XG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbiAgICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gICAgaW5wdXRbdHlwZT1cInVybFwiXSxcbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDUzcHg7XG4gICAgfVxuICB9XG59XG5cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1sb29wLWNhdGVnb3J5X190aXRsZSxcbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLFxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgaDMge1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIHdvcmQtc3BhY2luZzogMnB4O1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG5cbi53b29jb21tZXJjZSAucHJvZHVjdHMgLnN0YXItcmF0aW5nIHtcbiAgd2lkdGg6IDgycHg7XG4gIGxldHRlci1zcGFjaW5nOiA0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxM3B4O1xuICBtYXJnaW46IDAgYXV0byAxMXB4O1xufVxuXG4uc3Rhci1yYXRpbmcge1xuICBjb2xvcjogI2ViYTYyYTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogI2ViYTYyYTtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiogUGFnaW5hdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwge1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG59XG5cbi53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLndvb2NvbW1lcmNlIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpIGEsXG4ud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgc3BhbiB7XG4gIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgbWFyZ2luOiAwIDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYztcbiAgYm9yZGVyOiBub25lO1xufVxuXG4ud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgYTpmb2N1cyxcbi53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSBhOmhvdmVyLFxuLndvb2NvbW1lcmNlIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpIHNwYW4uY3VycmVudCB7XG4gIGJhY2tncm91bmQ6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4qIEJ1dHRvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQsXG4ud29vY29tbWVyY2UtbWVzc2FnZSAuYnV0dG9uLFxuLndvb2NvbW1lcmNlLW1lc3NhZ2UgYS5idXR0b24sXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LFxuLndvb2NvbW1lcmNlLndpZGdldCBhLmJ1dHRvbixcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbixcbiNhZGRfcGF5bWVudF9tZXRob2QgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgYS5jaGVja291dC1idXR0b24sXG4ud29vY29tbWVyY2UtY2FydCAud2MtcHJvY2VlZC10by1jaGVja291dCBhLmNoZWNrb3V0LWJ1dHRvbixcbi53b29jb21tZXJjZS1jaGVja291dCAud2MtcHJvY2VlZC10by1jaGVja291dCBhLmNoZWNrb3V0LWJ1dHRvbixcbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0LCAud29vY29tbWVyY2UgYS5idXR0b24uYWx0LFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0LFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgY29sb3I6ICNmZmY7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxufVxuXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmRpc2FibGVkLFxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpkaXNhYmxlZCxcbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uLmRpc2FibGVkLCAud29vY29tbWVyY2UgYS5idXR0b246ZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgYS5idXR0b246ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpkaXNhYmxlZCxcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b24uZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjpkaXNhYmxlZFtkaXNhYmxlZF0sXG4jYWRkX3BheW1lbnRfbWV0aG9kIHRhYmxlLmNhcnQgaW5wdXQsXG4ud29vY29tbWVyY2UtY2FydCB0YWJsZS5jYXJ0IGlucHV0LFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IHRhYmxlLmNhcnQgaW5wdXQsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdCB7XG4gIHBhZGRpbmc6IDEzcHggMjVweDtcbn1cblxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdCxcbi53b29jb21tZXJjZSBhLmJ1dHRvbixcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDEycHggMTVweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4qIEFsZXJ0c1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ud29vY29tbWVyY2UtaW5mbyxcbi53b29jb21tZXJjZS1tZXNzYWdlIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgfVxufVxuXG4ud29vY29tbWVyY2UtZXJyb3Ige1xuICBib3JkZXItdG9wLWNvbG9yOiAjZmYwMDAwO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb2xvcjogI2ZmMDAwMDtcbiAgfVxufSIsIi5zaWRlYmFyIC5zaG9wLXdpZGdldC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMjhweDtcbiAgcGFkZGluZy1sZWZ0OiAxOXB4O1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDJweDtcbiAgICBsZWZ0OiAwO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogM3B4O1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLndpZGdldCB7XG5cbiAgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LFxuICBhLmJ1dHRvbixcbiAgYnV0dG9uLmJ1dHRvbixcbiAgaW5wdXQuYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAxMHB4IDE1cHggOXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG59XG5cbi8vIENhcnQgYW5kIFByb2R1Y3QgbGlzdFxuLndvb2NvbW1lcmNlLFxuLndvb2NvbW1lcmNlIHVsLmNhcnRfbGlzdCBsaSxcbi53b29jb21tZXJjZSB1bC5wcm9kdWN0X2xpc3Rfd2lkZ2V0IGxpIHtcblxuICBhLnJlbW92ZSB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGhlaWdodDogMjFweDtcbiAgICB3aWR0aDogMjFweDtcbiAgICBsaW5lLWhlaWdodDogMThweDtcbiAgfVxufVxuXG4ud29vY29tbWVyY2UgLndpZGdldF9zaG9wcGluZ19jYXJ0IC5jYXJ0X2xpc3QgbGkgYS5yZW1vdmUsXG4ud29vY29tbWVyY2Uud2lkZ2V0X3Nob3BwaW5nX2NhcnQgLmNhcnRfbGlzdCBsaSBhLnJlbW92ZSB7XG4gIHRvcDogMnB4O1xufVxuXG4ud29vY29tbWVyY2UgYS5yZW1vdmUge1xuICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiByZWQgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLyBDYXJ0XG4ud29vY29tbWVyY2UgdWwuY2FydF9saXN0IGxpIHtcbiAgcGFkZGluZzogMTVweCAwO1xufVxuXG4ud29vY29tbWVyY2UgLndpZGdldF9zaG9wcGluZ19jYXJ0IC50b3RhbCxcbi53b29jb21tZXJjZS53aWRnZXRfc2hvcHBpbmdfY2FydCAudG90YWwge1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2ViZTllYjtcbiAgcGFkZGluZzogMTBweCAwIDA7XG4gIG1hcmdpbi10b3A6IDE0cHg7XG4gIGNvbG9yOiAjMjIyO1xufVxuXG4vLyBQcm9kdWN0IGxpc3Rcbi53b29jb21tZXJjZSB1bC5wcm9kdWN0X2xpc3Rfd2lkZ2V0IGxpIHtcbiAgcGFkZGluZzogMCAwIDE1cHg7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufVxuXG4ud29vY29tbWVyY2UgLndpZGdldF9sYXllcmVkX25hdl9maWx0ZXJzIHVsIGxpIHtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuLy8gUHJvZHVjdCBDYXRlZ29yaWVzIGFuZCBMYXllcmVkIE5hdlxuLndvb2NvbW1lcmNlIC53aWRnZXRfcHJvZHVjdF9jYXRlZ29yaWVzIHVsID4gbGksXG4ud29vY29tbWVyY2UgLndpZGdldF9sYXllcmVkX25hdiB1bCA+IGxpIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBwYWRkaW5nLWJvdHRvbTogMTRweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlY2VjZWM7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYxMDVcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lO1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIG1hcmdpbi1yaWdodDogOXB4O1xuICB9XG59XG5cbi53b29jb21tZXJjZSB1bC5jYXJ0X2xpc3QgbGkgaW1nLFxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RfbGlzdF93aWRnZXQgbGkgaW1nIHtcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgd2lkdGg6IDQ4cHg7XG59XG5cbi53b29jb21tZXJjZSAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyB1bCBsaSAuY2hpbGRyZW4sXG4ud29vY29tbWVyY2UgLndpZGdldF9sYXllcmVkX25hdiB1bCBsaSAuY2hpbGRyZW4ge1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctdG9wOiAxNHB4O1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2VjZWNlYztcbn1cblxuLndpZGdldCBzZWxlY3Qge1xuICBwYWRkaW5nOiAwIDZweDtcbn1cblxuLy8gU2VhcmNoIFdpZGdldFxuLndpZGdldF9wcm9kdWN0X3NlYXJjaCB7XG5cbiAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4gIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgaW5wdXRbdHlwZT1cInVybFwiXSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDcwJTtcbiAgfVxuXG4gIGJ1dHRvbixcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgd2lkdGg6IDMwJTtcbiAgICBwYWRkaW5nOiAxMnB4IDA7XG4gIH1cbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICBib3JkZXItY29sb3I6ICNlY2VjZWM7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xufVxuXG4vLyBSZWNlbnQgUmV2aWV3cyBhbmQgVG9wIFJhdGVkIFByb2R1Y3RzXG4ud2lkZ2V0X3JlY2VudF9yZXZpZXdzLFxuLndpZGdldF90b3BfcmF0ZWRfcHJvZHVjdHMge1xuXG4gIC5zdGFyLXJhdGluZyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDdweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cblxuICAucmV2aWV3ZXIge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cbn1cblxuLy8gUHJpY2UgRmlsdGVyXG4ud29vY29tbWVyY2UgLndpZGdldF9wcmljZV9maWx0ZXIgLnByaWNlX2xhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMzZTNlM2U7XG59XG5cbi53b29jb21tZXJjZSAud2lkZ2V0X3ByaWNlX2ZpbHRlciAudWktc2xpZGVyIC51aS1zbGlkZXItaGFuZGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyOiAzcHggc29saWQgIzNlM2UzZTtcblxufVxuXG4ud29vY29tbWVyY2UgLndpZGdldF9wcmljZV9maWx0ZXIgLnVpLXNsaWRlciAudWktc2xpZGVyLXJhbmdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNlM2UzZTtcbn1cblxuLndvb2NvbW1lcmNlIC53aWRnZXRfcHJpY2VfZmlsdGVyIC5wcmljZV9zbGlkZXJfd3JhcHBlciAudWktd2lkZ2V0LWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xufSIsIi8vIFdvb2NvbW1lcmNlIFRhYnNcbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuaW1hZ2VzLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAub24tc2FsZS13cmFwIHtcbiAgICB6LWluZGV4OiAyNTA7XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5pbWFnZXMge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gIGZpZ3VyZSB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5cbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuaW1hZ2VzIC5mbGV4LWNvbnRyb2wtdGh1bWJzIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xuXG4gIGxpIHtcbiAgICBwYWRkaW5nOiA1cHg7XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5pbWFnZXMgLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeV9fdHJpZ2dlciB7XG4gIHRvcDogMjBweDtcbn1cblxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IC5wcm9kdWN0X3RpdGxlIHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIHRkLFxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAudmFyaWF0aW9ucyB0aCB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBwLnByaWNlLFxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IHNwYW4ucHJpY2Uge1xuICBmb250LXdlaWdodDogNzAwO1xuXG4gIGRlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgY29sb3I6ICNjYWNhY2E7XG4gIH1cblxuICA+IC5hbW91bnQsXG4gIGlucyxcbiAgaW5zIC5hbW91bnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IHAucHJpY2UsXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgcC5wcmljZSA+IC5hbW91bnQsXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgcC5wcmljZSBpbnMsXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgcC5wcmljZSBpbnMgLmFtb3VudCxcbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBzcGFuLnByaWNlLFxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IHNwYW4ucHJpY2UgPiAuYW1vdW50LFxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IHNwYW4ucHJpY2UgaW5zLFxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IHNwYW4ucHJpY2UgaW5zIC5hbW91bnQge1xuICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG59XG5cbi53b29jb21tZXJjZSAucXVhbnRpdHkgLnF0eSB7XG4gIHdpZHRoOiAxMjBweDtcbiAgaGVpZ2h0OiA0OHB4O1xuICBwYWRkaW5nOiA3LjVweCAxMHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDE3cHggMTVweDtcbiAgd2lkdGg6IDEzNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gIH1cbn1cblxuLnZhcmlhdGlvbnMge1xuICAuc2VsZWN0Mi1jb250YWluZXIge1xuICAgIHdpZHRoOiAxNTBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAgICAgd2lkdGg6IDE5MnB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCAucHJvZHVjdF9tZXRhIHtcbiAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLy8gVGFic1xuLndvb2NvbW1lcmNlLXRhYnMge1xuICBtYXJnaW4tdG9wOiA2MHB4O1xufVxuXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcblxuICBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIHBhZGRpbmc6IDJweCAyNXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjVweDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB6LWluZGV4OiA0O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNlY2VjZWM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYztcbiAgICBjb2xvcjogIzIyMjtcblxuICAgICsgbGkge1xuICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgfVxuXG4gICAgJjphZnRlcixcbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICB9XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0ZCB7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xufVxuXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFiczo6YmVmb3JlIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNlY2VjZWM7XG59XG5cbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyAucGFuZWwge1xuICBwYWRkaW5nOiAzOHB4IDMwcHggMTVweDtcbiAgYm9yZGVyOiAycHggc29saWQgI2VjZWNlYztcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwsXG4ud29vY29tbWVyY2UtVGFicy1wYW5lbC0tZGVzY3JpcHRpb24ge1xuXG4gIC53b29jb21tZXJjZS1SZXZpZXdzLXRpdGxlLFxuICBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuXG4gIHAuc3RhcnMgYXtcbiAgICBjb2xvcjogI2ViYTYyYTtcbiAgfVxufVxuXG4ud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4ud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQge1xuICBib3JkZXItY29sb3I6ICNlY2VjZWM7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IDFlbSAxZW0gMDtcbn1cblxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdCB7XG4gIHBhZGRpbmc6IDE1cHggMzBweDtcbn1cblxuLy8gUmVsYXRlZCBQcm9kdWN0c1xuLnVwc2VsbHMucHJvZHVjdHMsXG4ucmVsYXRlZC5wcm9kdWN0cyB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG5cbiAgPiBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuXG4gIHVsLnByb2R1Y3RzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59IiwiLndvb2NvbW1lcmNlLWNhcnQgLmVudHJ5LWNvbnRlbnQgdGFibGUsXG4ud29vY29tbWVyY2UtY2FydCAuZW50cnktY29udGVudCB0YWJsZSB0aCxcbi53b29jb21tZXJjZS1jYXJ0IC5lbnRyeS1jb250ZW50IHRhYmxlIHRkIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4ud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgbGFiZWwsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyLXRhYmxlLFxuLndvb2NvbW1lcmNlLWNhcnQgLmNhcnQud29vY29tbWVyY2UtY2FydC1mb3JtX19jb250ZW50cyB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4ud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyLXRhYmxlLFxuLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdGgsXG4ud29vY29tbWVyY2UtY2FydCAuY2FydC53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NvbnRlbnRzIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLndvb2NvbW1lcmNlLWNhcnQgLmVudHJ5LWNvbnRlbnQgdGFibGUgdGQsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyLXRhYmxlLFxuLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdGgge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4ud29vY29tbWVyY2UtY2FydCAuZW50cnktY29udGVudCB0YWJsZSB0ZCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWNlY2VjO1xuXG4gIGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi53b29jb21tZXJjZS1jYXJ0LWZvcm0gLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY29udGVudHMge1xuXG4gIHRoIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG5cbiAgYS5yZW1vdmUge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6ICMzMzMgIWltcG9ydGFudDtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICNmZjAwMDAgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdGQge1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG59XG5cbi53b29jb21tZXJjZS1jYXJ0IHRhYmxlLmNhcnQgaW1nIHtcbiAgd2lkdGg6IDExMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDdkN2Q3O1xufVxuXG4ud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0aCB7XG4gIHBhZGRpbmc6IDE1cHggMTJweDtcbn1cblxuI2FkZF9wYXltZW50X21ldGhvZCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dCxcbi53b29jb21tZXJjZS1jYXJ0IHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuY291cG9uIC5pbnB1dC10ZXh0LFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuY291cG9uIC5pbnB1dC10ZXh0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgYm9yZGVyLWNvbG9yOiAjZWVlZWVlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xuICBjb2xvcjogIzU1NTU1NTtcblxuICAmOmZvY3Vze1xuICAgIGJvcmRlci1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjdweCkge1xuICAgIHdpZHRoOiAxNTZweDtcbiAgICBwYWRkaW5nOiA2cHggMTVweCA1cHg7XG4gIH1cbn1cblxuI2FkZF9wYXltZW50X21ldGhvZCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiBpbnB1dC5idXR0b24sXG4ud29vY29tbWVyY2UtY2FydCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiBpbnB1dC5idXR0b24sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5jb3Vwb24gaW5wdXQuYnV0dG9uIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlLWNhcnQgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIHRyIHRoIHtcbiAgcGFkZGluZzogMDtcbiAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XG59XG5cbiNhZGRfcGF5bWVudF9tZXRob2QgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIHRhYmxlLFxuLndvb2NvbW1lcmNlLWNhcnQgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIHRhYmxlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyB0YWJsZSB7XG4gIG1hcmdpbjogMDtcblxuICB0aCB7XG4gICAgbWluLXdpZHRoOiAxMDBweDtcbiAgfVxufVxuXG4jYWRkX3BheW1lbnRfbWV0aG9kIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0LFxuLndvb2NvbW1lcmNlLWNhcnQgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQge1xuICBwYWRkaW5nOiAwO1xufVxuXG4jYWRkX3BheW1lbnRfbWV0aG9kIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IGEuY2hlY2tvdXQtYnV0dG9uLFxuLndvb2NvbW1lcmNlLWNhcnQgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgYS5jaGVja291dC1idXR0b24sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgYS5jaGVja291dC1idXR0b24sXG4ud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgLmNhcnQtc3VidG90YWwsXG4gIC5vcmRlci10b3RhbCB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgfVxuXG4gIC5jYXJ0LWRpc2NvdW50LFxuICAuc2hpcHBpbmcsXG4gIC5jYXJ0LXN1YnRvdGFsIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgY29sb3I6ICMzMzM7XG4gIH1cblxuICAub3JkZXItdG90YWwge1xuICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3IgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uY2FydF90b3RhbHMsXG4uY2FydF90b3RhbHMuY2FsY3VsYXRlZF9zaGlwcGluZyB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG5cbiAgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VjZWNlYztcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgIHdvcmQtc3BhY2luZzogMnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB9XG59XG5cbi5jcm9zcy1zZWxscyB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG5cbiAgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VjZWNlYztcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgIHdvcmQtc3BhY2luZzogMnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB9XG59XG5cbi53b29jb21tZXJjZS1jYXJ0IC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyB0ciB0ZCxcbi53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRib2R5OmZpcnN0LWNoaWxkIHRyOmZpcnN0LWNoaWxkIHRkLFxuLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdGJvZHk6Zmlyc3QtY2hpbGQgdHI6Zmlyc3QtY2hpbGQgdGgge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4vLy5zaGlwcGluZy1jYWxjdWxhdG9yLWZvcm0ge1xuLy8gIC5zZWxlY3QyLWNvbnRhaW5lciB7XG4vLyAgICB3aWR0aDogMjYwcHggIWltcG9ydGFudDtcbi8vICB9XG4vL30iLCIud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgdGV4dGFyZWEge1xuICBoZWlnaHQ6IDIyMHB4O1xuICBwYWRkaW5nOiAyMHB4O1xufVxuXG4ud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgaDMge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VjZWNlYztcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG59XG5cbiNzaGlwLXRvLWRpZmZlcmVudC1hZGRyZXNzLFxuLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzIGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC1zaXplOiAxN3B4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICB3b3JkLXNwYWNpbmc6IDJweDtcbn1cblxuI3NoaXAtdG8tZGlmZmVyZW50LWFkZHJlc3Mge1xuICAuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBsYWJlbC5jaGVja2JveCxcbi53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG4ud29vY29tbWVyY2UtcGFnZSBmb3JtIC5mb3JtLXJvdyBsYWJlbC5jaGVja2JveCB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG59XG5cbi53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyAuaW5wdXQtY2hlY2tib3gge1xuICBtYXJnaW46IC0zcHggOHB4IDAgMDtcbn1cblxuI29yZGVyX3Jldmlld19oZWFkaW5nIHtcbiAgbWFyZ2luOiAzMHB4IDAgMTVweDtcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuXG4jYWRkX3BheW1lbnRfbWV0aG9kICNwYXltZW50IHVsLnBheW1lbnRfbWV0aG9kcyBsaSxcbi53b29jb21tZXJjZS1jYXJ0ICNwYXltZW50IHVsLnBheW1lbnRfbWV0aG9kcyBsaSxcbi53b29jb21tZXJjZS1jaGVja291dCAjcGF5bWVudCB1bC5wYXltZW50X21ldGhvZHMgbGkge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG5cbiAgaW5wdXQge1xuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuI2FkZF9wYXltZW50X21ldGhvZCAjcGF5bWVudCxcbi53b29jb21tZXJjZS1jYXJ0ICNwYXltZW50LFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0ICNwYXltZW50IHtcbiAgYmFja2dyb3VuZDogI2Y5ZjlmOTtcbiAgYm9yZGVyLXJhZGl1czogMDtcblxuICBsYWJlbCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogIzMzMztcbiAgfVxufVxuXG4jYWRkX3BheW1lbnRfbWV0aG9kICNwYXltZW50IGRpdi5wYXltZW50X2JveCxcbi53b29jb21tZXJjZS1jYXJ0ICNwYXltZW50IGRpdi5wYXltZW50X2JveCxcbi53b29jb21tZXJjZS1jaGVja291dCAjcGF5bWVudCBkaXYucGF5bWVudF9ib3gge1xuICBmb250LXNpemU6IDEzcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuI2FkZF9wYXltZW50X21ldGhvZCAjcGF5bWVudCBkaXYucGF5bWVudF9ib3g6OmJlZm9yZSxcbi53b29jb21tZXJjZS1jYXJ0ICNwYXltZW50IGRpdi5wYXltZW50X2JveDo6YmVmb3JlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0ICNwYXltZW50IGRpdi5wYXltZW50X2JveDo6YmVmb3JlIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG59XG5cbi53b29jb21tZXJjZSBmb3JtLmNoZWNrb3V0X2NvdXBvbixcbi53b29jb21tZXJjZSBmb3JtLmxvZ2luLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIge1xuICBib3JkZXItY29sb3I6ICNlYmViZWI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi53b29jb21tZXJjZS1mb3JtLWxvZ2luIHtcblxuICBsYWJlbC5pbmxpbmUge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cblxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbjogLTJweCA0cHggMCA4cHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxufVxuXG4ud29vY29tbWVyY2Utc3RvcmUtbm90aWNlLCBwLmRlbW9fc3RvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbn1cblxuLndvb2NvbW1lcmNlIHVsLm9yZGVyX2RldGFpbHMge1xuICBwYWRkaW5nOiAxOXB4O1xuICBib3JkZXI6IDFweCBkYXNoZWQgI2ViZWJlYjtcbn1cblxuLndvb2NvbW1lcmNlIHVsLm9yZGVyX2RldGFpbHMgbGkgc3Ryb25nIHtcbiAgY29sb3I6ICMzMzM7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHtcblxuICB1bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICB9XG5cbiAgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgfVxufVxuXG4jYWRkX3BheW1lbnRfbWV0aG9kICNwYXltZW50IHVsLnBheW1lbnRfbWV0aG9kcyBsaSBpbnB1dCxcbi53b29jb21tZXJjZS1jYXJ0ICNwYXltZW50IHVsLnBheW1lbnRfbWV0aG9kcyBsaSBpbnB1dCxcbi53b29jb21tZXJjZS1jaGVja291dCAjcGF5bWVudCB1bC5wYXltZW50X21ldGhvZHMgbGkgaW5wdXQge1xuICBtYXJnaW4tdG9wOiAtM3B4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufSIsIi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCB7XG5cbiAgLnNlbGVjdDItc2VsZWN0aW9uIHtcblxuICAgICYtLXNpbmdsZSB7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZWNlY2VjO1xuXG4gICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgIHdvcmQtc3BhY2luZzogMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcbiAgICAgIGhlaWdodDogMzlweDtcbiAgICAgIHdpZHRoOiAzNXB4O1xuXG4gICAgICBiIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMzMzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZWNlY2VjO1xuICAgIHBhZGRpbmctdG9wOiAzcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDNweDtcbiAgICBtaW4taGVpZ2h0OiAzMnB4O1xuICB9XG5cbiAgLnNlbGVjdDItcmVzdWx0cyB7XG5cbiAgICA+IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnMge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG5cbiAgICAmX19vcHRpb24ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcblxuICAgICAgJlthcmlhLXNlbGVjdGVkPXRydWVdLFxuICAgICAgJi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0ge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBsaW5lYXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgcGFkZGluZzogNHB4IDEycHg7XG4gIHdpZHRoOiAxMDAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uc2VsZWN0Mi1kcm9wZG93biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1jb2xvcjogI2VjZWNlYztcbn0iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBa0NFO0FBT0YsZ0RBQWdEO0FFZ0VoRCwrQkFBaUI7QWdDekdqQiw0RUFBNEU7QUFRNUUsQUFBQSxJQUFJLENBQUM7RUFDSCxXQUFXLEVBQUUsVUFBVTtFQUN2QixvQkFBb0IsRUFBRSxJQUFJO0VBQzFCLHdCQUF3QixFQUFFLElBQUk7Q0FDL0I7O0FBTUQsQUFBQSxJQUFJLENBQUM7RUFDSCxNQUFNLEVBQUUsQ0FBQztDQUNWOztBQVlELEFBQUEsT0FBTztBQUNQLEtBQUs7QUFDTCxPQUFPO0FBQ1AsVUFBVTtBQUNWLE1BQU07QUFDTixNQUFNO0FBQ04sTUFBTTtBQUNOLE1BQU07QUFDTixJQUFJO0FBQ0osSUFBSTtBQUNKLEdBQUc7QUFDSCxPQUFPO0FBQ1AsT0FBTyxDQUFDO0VBQ04sT0FBTyxFQUFFLEtBQUs7Q0FDZjs7QUFPRCxBQUFBLEtBQUs7QUFDTCxNQUFNO0FBQ04sUUFBUTtBQUNSLEtBQUssQ0FBQztFQUNKLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLGNBQWMsRUFBRSxRQUFRO0NBQ3pCOztBQU9ELEFBQUEsS0FBSyxBQUFBLElBQUssRUFBQSxBQUFBLFFBQUMsQUFBQSxHQUFXO0VBQ3BCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsTUFBTSxFQUFFLENBQUM7Q0FDVjs7Q0FPRCxBQUFBLEFBQUEsTUFBQyxBQUFBO0FBQ0QsUUFBUSxDQUFDO0VBQ1As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 */
