@charset "UTF-8";
/*!
 * Bootstrap v3.3.6 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! 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 {
  -webkit-box-sizing: content-box;
          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"] {
  -webkit-box-sizing: border-box;
          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;
  -webkit-box-sizing: content-box;
          box-sizing: content-box; }

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

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

legend {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

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

td,
th {
  padding: 0; }

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

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

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

html {
  font-size: 10px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

body {
  font-size: 14px;
  color: #333333; }

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

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

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

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

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

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

@font-face {
  font-family: 'Avenir Next';
  src: url("../fonts/Avenir/AvenirNext-Bold.eot");
  src: url("../fonts/Avenir/AvenirNext-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/Avenir/AvenirNext-Bold.woff2") format("woff2"), url("../fonts/Avenir/AvenirNext-Bold.woff") format("woff"), url("../fonts/Avenir/AvenirNext-Bold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal; }

@font-face {
  font-family: 'Avenir Next';
  src: url("../fonts/Avenir/AvenirNext-Regular.eot");
  src: url("../fonts/Avenir/AvenirNext-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/Avenir/AvenirNext-Regular.woff2") format("woff2"), url("../fonts/Avenir/AvenirNext-Regular.woff") format("woff"), url("../fonts/Avenir/AvenirNext-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal; }

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

.centered {
  display: table;
  width: 100%;
  height: 100%; }
  .centered > * {
    display: table-cell;
    text-align: center;
    vertical-align: middle; }

body {
  color: #000;
  font-family: "Avenir Next", "Times New Roman", serif;
  font-size: 16px;
  font-weight: normal;
  line-height: 24px;
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    body {
      font-size: 13px; } }

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
  font-weight: normal;
  line-height: normal; }

.page-title {
  font-size: 50px;
  line-height: 1.2em;
  margin: 0 auto;
  padding: 10px 0;
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    .page-title {
      font-size: 35px; } }

h2 {
  font-size: 24px;
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    h2 {
      font-size: 18px; } }

h3 {
  font-size: 24px;
  line-height: 24px; }

h4 {
  font-size: 18px;
  padding: 0 0 9px;
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    h4 {
      font-size: 15px; } }

h5 {
  font-size: 14px;
  line-height: 16px; }

h6 {
  font-size: 12px;
  line-height: 14px; }

p {
  padding: 0;
  margin: 0;
  line-height: inherit;
  font-family: inherit;
  font-size: inherit; }

hr {
  overflow: hidden;
  height: 1px;
  background: #e9e9e9;
  border: 0;
  margin: 32px 0; }

q,
blockquote {
  text-align: center;
  display: block;
  font-style: italic; }

strong,
b {
  font-weight: 600; }

a:not([class*="btn"]) {
  color: #000;
  -webkit-transition: all .15s ease-in-out;
  transition: all .15s ease-in-out;
  text-decoration: none;
  border-bottom: 0; }
  a:not([class*="btn"]):hover {
    text-decoration: none;
    color: #6138c2;
    border-bottom-color: transparent; }

ol {
  list-style-type: decimal;
  list-style-position: inside;
  counter-reset: item;
  margin: 24px 0;
  padding: 0; }
  ol li {
    display: block;
    position: relative;
    line-height: inherit;
    font-size: inherit;
    padding: 0 0 8px 0; }
    ol li:before {
      content: counters(item, ".") ". ";
      counter-increment: item;
      display: inline;
      vertical-align: top;
      font-weight: 800;
      color: #000;
      position: relative; }
    ol li:last-child {
      padding-bottom: 0; }

.table-wrapper {
  overflow-x: auto;
  overflow-y: hidden; }

table {
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
  border: 0;
  table-layout: auto;
  margin: 0 auto; }
  table td, table th {
    font-size: inherit;
    line-height: inherit;
    border: 0;
    text-align: center;
    white-space: nowrap; }
  table th {
    font-weight: 400;
    font-family: "Avenir Next", "Times New Roman", serif;
    border-bottom: 1px solid #bdbdbd;
    font-size: 24px;
    color: #000;
    vertical-align: top;
    padding: 0 16px 16px;
    white-space: nowrap;
    /* ----------- Non-Retina Screens ----------- */
    /* ----------- Retina Screens ----------- */ }
    table th:first-child {
      border-right: 1px solid #bdbdbd;
      border-bottom: 0;
      vertical-align: middle;
      padding: 25px 16px 16px;
      text-align: right; }
    tr:first-child th:first-child {
      border-bottom: 1px solid #bdbdbd;
      vertical-align: top;
      padding: 0 16px 16px; }
    @media screen and (max-device-width: 1600px), (max-width: 1600px) {
      table th {
        padding: 0 8px 8px;
        font-size: 18px; }
        table th:first-child {
          padding: 12px 8px 8px; }
        tr:first-child th:first-child {
          padding: 0 8px 8px; } }
  table td {
    color: #444;
    vertical-align: middle;
    padding: 25px 16px 16px;
    font-size: 14px;
    /* ----------- Non-Retina Screens ----------- */
    /* ----------- Retina Screens ----------- */ }
    @media screen and (max-device-width: 1600px), (max-width: 1600px) {
      table td {
        padding: 12px 8px 8px; } }
  table tr:last-child td, table tr:last-child th {
    padding-bottom: 0; }
    @media (max-width: 1023px) {
      table tr:last-child td, table tr:last-child th {
        padding-bottom: 8px; } }

.upper {
  text-transform: uppercase; }

.lower {
  text-transform: lowercase; }

.c-dark, .c-black {
  color: default; }

.c-white, .c-light {
  color: white; }

.center {
  text-align: center; }

img {
  display: block;
  max-width: 100%; }

label.error {
  display: none !important; }

input.error {
  border-color: #BD1421;
  -webkit-box-shadow: 0 0 6px 1px #BD1421;
          box-shadow: 0 0 6px 1px #BD1421; }

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

html {
  overflow-x: hidden; }

body {
  position: relative;
  min-width: 320px;
  overflow-x: hidden;
  background: #fff; }

.noscroll {
  overflow: hidden !important;
  height: 100%;
  position: relative; }

.page {
  width: 100%; }

.container {
  padding: 0 30px;
  width: 1170px;
  max-width: 100%;
  margin: 0 auto;
  position: relative;
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    .container {
      padding: 0 30px; } }
  @media (max-width: 1023px) {
    .container {
      padding: 0 20px; } }
  @media (max-width: 767px) {
    .container {
      padding: 0 15px; } }

.hidden {
  display: none !important; }

.visible {
  display: block !important; }

.desktop-hidden {
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    .desktop-hidden {
      display: none !important; } }

.desktop-visible {
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    .desktop-visible {
      display: block !important; } }

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

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

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

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

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

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

.j-pp-mockup {
  position: absolute;
  top: 0;
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%); }

button,
.btn,
button--primary,
.btn--primary {
  text-decoration: none;
  -webkit-transition: all .15s ease-in-out;
  transition: all .15s ease-in-out;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: 0;
  border: 0; }
  button:hover,
  .btn:hover,
  button--primary:hover,
  .btn--primary:hover {
    text-decoration: none; }
  button:hover, button:focus,
  .btn:hover,
  button--primary:hover,
  .btn--primary:hover,
  .btn:focus,
  button--primary:focus,
  .btn--primary:focus {
    text-decoration: none; }
  button--primary,
  .btn--primary {
    text-transform: uppercase;
    background-color: #a0c63f;
    color: #fff;
    padding: 10px 22px;
    font-size: 18px;
    border-radius: 5px;
    font-weight: bold; }
    button--primary:hover,
    .btn--primary:hover {
      background-color: #f9f9fa;
      -webkit-box-shadow: 0 0 10px 0 rgba(37, 37, 37, 0.05);
              box-shadow: 0 0 10px 0 rgba(37, 37, 37, 0.05);
      color: #a0c63f; }

.dropdown {
  position: relative; }

.js-dropdown {
  position: relative; }
  .js-dropdown:after {
    display: block;
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-top: 6px solid #000;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    right: -15px;
    top: 50%;
    margin-top: -1px; }
  .js-dropdown.dropped:after {
    margin-top: -1px;
    border-bottom: 6px solid #000;
    border-top: 0; }

.js-dropdown-cont {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 9999; }

.info-block {
  background: #fff;
  padding: 35px 90px; }
  @media (max-width: 767px) {
    .info-block {
      padding: 25px 15px; } }
  .info-block__heading {
    text-align: center;
    font-size: 24px;
    padding: 0 0 24px;
    margin: 0 0 20px;
    position: relative;
    /* ----------- Non-Retina Screens ----------- */
    /* ----------- Retina Screens ----------- */ }
    @media screen and (max-device-width: 1600px), (max-width: 1600px) {
      .info-block__heading {
        font-size: 22px;
        padding: 0 0 15px;
        margin: 0 0 15px; } }
    .info-block__heading.l {
      font-size: 50px;
      /* ----------- Non-Retina Screens ----------- */
      /* ----------- Retina Screens ----------- */ }
      @media screen and (max-device-width: 1600px), (max-width: 1600px) {
        .info-block__heading.l {
          font-size: 35px; } }
    .info-block__heading:before {
      content: "";
      position: absolute;
      width: 90px;
      display: block;
      height: 1px;
      background: #000;
      left: 50%;
      bottom: 1px;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%); }
    .info-block__heading.no-line:before {
      display: none; }
  .info-block__content {
    font-size: 24px;
    /* ----------- Non-Retina Screens ----------- */
    /* ----------- Retina Screens ----------- */ }
    @media screen and (max-device-width: 1600px), (max-width: 1600px) {
      .info-block__content {
        font-size: 18px; } }
  .info-block__action {
    margin: 30px 0 0; }

.popup {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  min-width: 60%;
  max-width: 95%;
  max-height: 95%;
  display: none;
  background: #fff;
  padding: 40px 50px 50px;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  .popup > * {
    -webkit-transform: translateZ(0px); }
  .popup.gutter {
    padding: 40px 195px 50px; }
  .popup.narrow {
    min-width: 0;
    width: 555px;
    /* ----------- Non-Retina Screens ----------- */
    /* ----------- Retina Screens ----------- */ }
    @media screen and (max-device-width: 1600px), (max-width: 1600px) {
      .popup.narrow {
        width: 400px; } }
  .popup .main__form__container {
    padding: 0;
    margin: 0 auto; }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    .popup {
      padding: 25px 15px 25px; }
      .popup.gutter {
        padding: 25px 15px 25px; } }
  .popup-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(20, 18, 35, 0.81);
    z-index: 9999; }
  .popup__heading {
    text-align: center;
    font-size: 50px;
    padding: 0 0 24px;
    margin: 0 0 20px;
    position: relative;
    /* ----------- Non-Retina Screens ----------- */
    /* ----------- Retina Screens ----------- */ }
    @media screen and (max-device-width: 1600px), (max-width: 1600px) {
      .popup__heading {
        font-size: 28px; } }
    @media (max-width: 1023px) {
      .popup__heading {
        font-size: 36px;
        padding: 0 0 15px;
        margin: 0 0 15px; } }
    .popup__heading:before {
      content: "";
      position: absolute;
      width: 90px;
      display: block;
      height: 1px;
      background: #000;
      left: 50%;
      bottom: 1px;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%); }
    .popup__heading--no-line:before {
      display: none; }
  .popup__content {
    font-size: 19px; }
  .popup__action {
    margin: 30px 0 0; }

.popup-wrapper > .btn--close {
  position: absolute;
  top: 12px;
  right: 20px; }

.popup > .btn--close {
  position: absolute;
  top: 12px;
  right: 20px; }

input[type="radio"], input[type="checkbox"] {
  position: absolute;
  left: -9999px; }
  input[type="radio"] + label, input[type="checkbox"] + label {
    text-align: left;
    font-size: 16px;
    line-height: normal;
    font-family: "Avenir Next", "Times New Roman", serif;
    font-weight: 300;
    color: #444444;
    -webkit-transition: all .15s ease-in-out;
    transition: all .15s ease-in-out;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0;
    margin: 0;
    position: relative;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    cursor: pointer;
    /* ----------- Non-Retina Screens ----------- */
    /* ----------- Retina Screens ----------- */ }
    @media screen and (max-device-width: 1600px), (max-width: 1600px) {
      input[type="radio"] + label, input[type="checkbox"] + label {
        font-size: 15px; } }
    input[type="radio"] + label:before, input[type="checkbox"] + label:before {
      content: "";
      display: block;
      width: 16px;
      height: 16px;
      border-radius: 5px;
      -webkit-box-shadow: 0 0 10px 0 rgba(37, 37, 37, 0.05);
              box-shadow: 0 0 10px 0 rgba(37, 37, 37, 0.05);
      border: solid 1px #959595;
      background-color: white;
      background-position: center;
      background-repeat: no-repeat;
      background-size: 18px 15px;
      -webkit-transition: all .15s ease-in-out;
      transition: all .15s ease-in-out;
      margin-right: 11px;
      z-index: 1;
      position: relative;
      /* ----------- Non-Retina Screens ----------- */
      /* ----------- Retina Screens ----------- */ }
      @media screen and (max-device-width: 1600px), (max-width: 1600px) {
        input[type="radio"] + label:before, input[type="checkbox"] + label:before {
          width: 16px;
          height: 16px;
          margin-right: 10px;
          background-size: 12.8px 11.6px; } }
    input[type="radio"] + label:hover:before, input[type="checkbox"] + label:hover:before {
      -webkit-box-shadow: 0 0 0 1px #a0c63f;
              box-shadow: 0 0 0 1px #a0c63f; }
  input[type="radio"]:checked + label:before, input[type="checkbox"]:checked + label:before {
    border-color: #a0c63f; }
  input[type="radio"]:checked + label:after, input[type="checkbox"]:checked + label:after {
    content: "";
    width: 9px;
    height: 7px;
    display: block;
    position: absolute;
    top: 5px;
    left: 3px;
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    border: 3px solid #a0c63f;
    border-width: 0 0 3px 3px;
    z-index: 2; }
  input[type="radio"]:focus + label:before, input[type="checkbox"]:focus + label:before {
    -webkit-box-shadow: 0 0 5px 3px #a0c63f;
            box-shadow: 0 0 5px 3px #a0c63f; }
  .validate input[type="radio"]:invalid + label, .validate input[type="checkbox"]:invalid + label {
    color: #e40000; }
    .validate input[type="radio"]:invalid + label:before, .validate input[type="checkbox"]:invalid + label:before {
      background-color: #f0c1c6;
      border-color: transparent;
      -webkit-box-shadow: 0 0 0 1px #e40000;
              box-shadow: 0 0 0 1px #e40000; }
  input[type="radio"].color, input[type="checkbox"].color {
    -webkit-appearance: none;
    background: transparent;
    background-size: calc(100% - 20px);
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 50%;
    display: block;
    width: 110px;
    height: 110px;
    -webkit-transition: all .15s ease-in-out;
    transition: all .15s ease-in-out;
    left: 0;
    position: relative;
    font-size: 0;
    line-height: 0;
    -webkit-transform: scale(0.9);
        -ms-transform: scale(0.9);
            transform: scale(0.9);
    /* ----------- Non-Retina Screens ----------- */
    /* ----------- Retina Screens ----------- */ }
    @media screen and (max-device-width: 1600px), (max-width: 1600px) {
      input[type="radio"].color, input[type="checkbox"].color {
        width: 75px;
        height: 75px; } }
    input[type="radio"].color::-ms-check, input[type="checkbox"].color::-ms-check {
      background-color: transparent;
      color: transparent;
      border: 0; }
    input[type="radio"].color + .checked, input[type="checkbox"].color + .checked {
      display: block;
      position: absolute;
      top: 55px;
      left: 50%;
      width: 30px;
      height: 30px;
      border-radius: 50%;
      background-color: #786fce;
      background-image: url(../img/misc/check.png);
      background-repeat: no-repeat;
      background-position: center;
      background-size: 50%;
      -webkit-transform: translate(-15px, -15px);
          -ms-transform: translate(-15px, -15px);
              transform: translate(-15px, -15px);
      opacity: 0;
      -webkit-transition: all .15s ease-in-out;
      transition: all .15s ease-in-out;
      /* ----------- Non-Retina Screens ----------- */
      /* ----------- Retina Screens ----------- */ }
      @media screen and (max-device-width: 1600px), (max-width: 1600px) {
        input[type="radio"].color + .checked, input[type="checkbox"].color + .checked {
          -webkit-transform: translate(-10px, -25px);
              -ms-transform: translate(-10px, -25px);
                  transform: translate(-10px, -25px);
          width: 16px;
          height: 16px; } }
    input[type="radio"].color:checked, input[type="radio"].color:focus, input[type="radio"].color:hover, input[type="checkbox"].color:checked, input[type="checkbox"].color:focus, input[type="checkbox"].color:hover {
      -webkit-box-shadow: 0 0 0 2px #786fce !important;
              box-shadow: 0 0 0 2px #786fce !important;
      background-size: 100%;
      -webkit-transform: scale(1);
          -ms-transform: scale(1);
              transform: scale(1); }
    input[type="radio"].color:checked + .checked, input[type="checkbox"].color:checked + .checked {
      opacity: 1; }
    input[type="radio"].color ~ .color-label, input[type="checkbox"].color ~ .color-label {
      padding: 10px 0 0;
      font-size: 19px;
      font-family: "Avenir Next", "Times New Roman", serif;
      font-weight: 300;
      color: #444;
      display: inline-block;
      line-height: normal; }

.color-box {
  display: inline-block;
  font-size: 0;
  line-height: 0;
  margin: 0;
  position: relative; }
  .color-box,
  .color-box * {
    cursor: pointer; }
  .color-box:hover .color {
    -webkit-box-shadow: 0 0 0 2px #786fce !important;
            box-shadow: 0 0 0 2px #786fce !important;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1); }

.radio-box--image input + label, .radio-box--photo input + label, .check-box--image input + label, .check-box--photo input + label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  position: relative;
  padding: 0; }
  .radio-box--image input + label:before, .radio-box--photo input + label:before, .check-box--image input + label:before, .check-box--photo input + label:before {
    position: relative;
    top: 0;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    margin-right: 0; }
  .radio-box--image input + label img, .radio-box--photo input + label img, .check-box--image input + label img, .check-box--photo input + label img {
    display: block;
    height: 200px;
    max-width: calc(100% - 40px);
    margin-left: 35px;
    position: relative; }

.radio-box--photo input + label img, .check-box--photo input + label img {
  margin-left: 1px; }

.radio-box--photo--s input + label img, .check-box--photo--s input + label img {
  max-height: 150px; }

.separator {
  display: block;
  position: relative;
  width: 100%;
  margin: 35px auto !important; }
  .separator:after {
    display: block;
    content: "";
    position: relative;
    margin: 0 auto; }
  .separator--vertical:after {
    width: 4px;
    height: 78px; }
  .separator--horizontal:after {
    height: 5px;
    width: 82px; }
  .separator--black:after {
    background: #1e1513; }
  .separator--white:after {
    background: #fff; }
  .separator--green:after {
    background: green; }

video, iframe {
  width: 100%;
  height: auto;
  display: block; }

figure {
  margin: 1em auto;
  width: 820px;
  max-width: 100%; }

.video-wrapper {
  position: relative; }

.video-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 9;
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
  cursor: pointer; }
  .video-overlay:hover .video-play-btn {
    background: rgba(0, 0, 0, 0.5); }
  .video-overlay:active .video-play-btn {
    -webkit-box-shadow: 0 0 50px 15px #fff;
            box-shadow: 0 0 50px 15px #fff; }
  .video-overlay--hidden {
    opacity: 0;
    visibility: hidden; }

.video-play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  border-radius: 50%;
  width: 132px;
  height: 132px;
  background: rgba(0, 0, 0, 0.2);
  border: 7px solid #fff;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  .video-play-btn:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: 6px;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    border-style: solid;
    border-width: 36px 0 36px 54px;
    border-color: transparent transparent transparent #fff;
    width: 0;
    height: 0;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out; }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    .video-play-btn {
      width: 107px;
      height: 107px; }
      .video-play-btn:before {
        border-width: 29px 0 29px 43px; } }
  @media (max-width: 767px) {
    .video-play-btn {
      width: 39px;
      height: 39px;
      border-width: 3px; }
      .video-play-btn:before {
        border-width: 10px 0 10px 16px;
        margin-left: 2px; } }

.about__info__block {
  width: 457px;
  height: 341px;
  background: #fff;
  padding-left: 30px;
  padding-top: 35px;
  padding-right: 50px;
  margin-top: 75px;
  margin-left: 100px;
  border-radius: 5px; }
  @media (max-width: 767px) {
    .about__info__block {
      width: auto;
      height: auto;
      margin-top: 15px;
      margin-left: 0;
      padding-left: 15px;
      padding-top: 25px;
      padding-right: 15px;
      padding-bottom: 15px; } }

.board {
  width: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  padding: 100px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    .board {
      padding: 75px 0; } }
  .board:first-child {
    min-height: calc(100% - 135px); }
  .board.auto {
    min-height: 0; }
  .board__content {
    padding: 45px 0 65px;
    background: rgba(0, 0, 0, 0.21);
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    max-width: 100%; }
  .board__title {
    text-align: center;
    padding: 0 0 45px;
    margin: 0;
    font-size: 70px;
    line-height: 1em;
    color: #fff;
    /* ----------- Non-Retina Screens ----------- */
    /* ----------- Retina Screens ----------- */ }
    @media screen and (max-device-width: 1600px), (max-width: 1600px) {
      .board__title {
        font-size: 50px;
        padding: 0 0 15px; } }
    @media (max-width: 767px) {
      .board__title {
        font-size: 40px; } }
  .board__actions {
    text-align: center; }
    .board__actions [class*="btn"] {
      display: inline-block;
      vertical-align: middle;
      margin-right: 30px;
      min-width: 194px;
      max-width: 290px;
      width: auto; }
      @media (max-width: 767px) {
        .board__actions [class*="btn"] {
          display: block;
          margin: 0 auto 30px !important; } }
      .board__actions [class*="btn"]:last-of-type {
        margin: 0; }
    .board__actions .social-btn {
      padding: 8px 10px;
      white-space: nowrap; }
      .board__actions .social-btn i {
        margin-right: 8px;
        padding-right: 8px; }

#contactForm {
  border-radius: 3px; }
  #contactForm:after {
    display: block;
    position: relative;
    padding: 15px 0; }
  #contactForm.fail:after {
    color: red;
    content: "Sorry. The form wasn't sent. Please try again later"; }
  #contactForm.sent:after {
    color: green;
    content: "Thank you. The form was sent."; }

.contacts__section {
  text-align: center;
  padding-top: 20px;
  padding-bottom: 70px; }

.contacts__header {
  text-transform: uppercase;
  margin-top: 40px;
  margin-bottom: 40px;
  text-align: center;
  font-size: 24px; }

.contactus__address__section {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-bottom: 40px; }
  @media (max-width: 767px) {
    .contactus__address__section {
      -ms-flex-pack: distribute;
          justify-content: space-around; } }

.contacts__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap; }
  .contacts__row .contacts__col-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    padding: 0 15px; }
  @media (max-width: 1023px) {
    .contacts__row {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .contacts__row .contacts__col-2 {
        -webkit-box-flex: 1;
            -ms-flex: 1 1 100%;
                flex: 1 1 100%;
        padding: 0; } }

.contactus__img__wrap {
  border-radius: 5px;
  background-color: #ffffff;
  -webkit-box-shadow: 0 0 10px 0 rgba(37, 37, 37, 0.05);
          box-shadow: 0 0 10px 0 rgba(37, 37, 37, 0.05); }

.contactus__img__wrap > img {
  width: 100%; }
  @media (max-width: 1023px) {
    .contactus__img__wrap > img {
      display: inline-block;
      width: 45%;
      vertical-align: middle; } }

.contactus__logo {
  padding: 30px; }
  @media (max-width: 1023px) {
    .contactus__logo {
      display: inline-block;
      width: 45%;
      vertical-align: middle; } }

.address__section {
  padding-top: 20px;
  padding-left: 30px;
  padding-right: 20px;
  padding-bottom: 43px;
  text-align: left;
  position: relative; }
  .address__section [class*="fa"] {
    font-size: 18px;
    margin-right: 18px;
    color: #a0c63f;
    vertical-align: middle; }
  @media (max-width: 767px) {
    .address__section {
      font-size: 20px;
      padding-left: 20px;
      padding-right: 20px; } }
  .address__section .location {
    font-size: 1.5em;
    font-weight: bold;
    display: block;
    /* ----------- Non-Retina Screens ----------- */
    /* ----------- Retina Screens ----------- */ }
    @media screen and (max-device-width: 1600px), (max-width: 1600px) {
      .address__section .location {
        font-size: 22px; } }
    @media (max-width: 767px) {
      .address__section .location {
        font-size: 20px; } }
  .address__section p a:hover {
    color: #a0c63f; }
  .address__section .city {
    padding-top: 38px;
    color: #a0c63f;
    font-size: 24px;
    text-transform: uppercase; }
  .address__section .index {
    padding-top: 37px;
    padding-left: 32px;
    font-size: 24px; }
  .address__section .address {
    padding-top: 24px;
    font-size: 24px; }
  .address__section .phone {
    padding-top: 39px;
    font-size: 24px; }
  .address__section .email {
    padding-top: 35px;
    font-size: 24px;
    word-break: break-all; }

.social-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 20px 30px 30px;
  margin: 0 auto; }
  .social-links a {
    color: #a0c63f;
    font-size: 52px;
    text-align: center; }
    .social-links a:hover {
      color: #000; }

.form-group {
  padding-bottom: 25px;
  text-align: left; }
  .form-group label {
    color: #a0c63f;
    font-weight: bold;
    font-size: 14px; }
  .form-group input {
    width: 100%;
    font-size: 16px;
    color: rgba(51, 51, 51, 0.5);
    border-radius: 5px;
    -webkit-box-shadow: 0 0 10px 0 rgba(37, 37, 37, 0.05);
            box-shadow: 0 0 10px 0 rgba(37, 37, 37, 0.05);
    border: solid 1px #959595;
    padding-left: 9px;
    padding-top: 9px;
    padding-bottom: 5px; }
  .form-group select {
    width: 100%;
    font-size: 16px;
    color: rgba(51, 51, 51, 0.5);
    border-radius: 5px;
    -webkit-box-shadow: 0 0 10px 0 rgba(37, 37, 37, 0.05);
            box-shadow: 0 0 10px 0 rgba(37, 37, 37, 0.05);
    border: solid 1px #959595;
    padding-left: 9px;
    padding-top: 9px;
    padding-bottom: 5px; }
  .form-group textarea {
    font-size: 16px;
    width: 100%;
    color: rgba(51, 51, 51, 0.5);
    border-radius: 5px;
    -webkit-box-shadow: 0 0 10px 0 rgba(37, 37, 37, 0.05);
            box-shadow: 0 0 10px 0 rgba(37, 37, 37, 0.05);
    border: solid 1px #959595;
    padding-left: 9px;
    padding-top: 9px;
    padding-bottom: 5px;
    resize: none; }

.form-group.required label::after {
  content: "*"; }

.license__text {
  text-align: left;
  margin-bottom: 38px; }

.license__link__btn {
  color: #a0c63f; }

.submit__btn {
  color: #fff;
  width: 213px;
  height: 35px;
  background-color: #a0c63f;
  text-transform: uppercase;
  border: none;
  border-radius: 5px;
  font-size: 18px;
  font-weight: bold; }

.customers__section {
  text-align: center;
  background-color: #fff;
  padding-top: 20px;
  padding-bottom: 70px; }
  @media (max-width: 767px) {
    .customers__section {
      padding-bottom: 100px; } }

.customers__header {
  text-transform: uppercase;
  margin-top: 60px;
  margin-bottom: 60px;
  text-align: center;
  font-size: 24px; }

.customers__separator {
  border-bottom: 1px solid #a0c63f;
  line-height: 0.1em;
  margin-top: 40px;
  margin-bottom: 40px;
  display: block; }

.customers__text {
  position: relative;
  padding-left: 35px;
  padding-right: 35px;
  text-align: left;
  margin-bottom: 40px; }
  .customers__text p {
    line-height: 1.3;
    font-size: 16px;
    font-style: italic; }
    .customers__text p {
      padding: 6px 0 6px; }
  .customers__text .quote-icon {
    position: absolute;
    font-size: 27px;
    color: #a0c63f; }
  .customers__text .quote-icon:first-child {
    top: -10px;
    left: 0px;
    margin-right: 10px; }
  .customers__text .quote-icon:last-child {
    bottom: -10px;
    right: 0px; }

.visit__link__btn {
  text-decoration: none;
  color: #a0c63f;
  font-size: 18px;
  font-weight: bold;
  float: left;
  -webkit-transition: all .15s ease-in-out;
  transition: all .15s ease-in-out; }
  .visit__link__btn:hover {
    color: black; }
  @media (max-width: 767px) {
    .visit__link__btn {
      position: absolute;
      left: 15px;
      margin-top: 2em; } }

.visit__link__btn::after {
  content: '→';
  margin-left: 10px; }

.support__link__btn {
  float: right;
  text-decoration: none;
  color: #a0c63f;
  font-size: 18px;
  font-weight: normal; }

.customers__slider {
  height: 40px;
  position: relative;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.prev__btn {
  opacity: 0.3;
  color: #333;
  font-size: 32px;
  background: transparent;
  border: none;
  position: absolute;
  left: 0px; }

.next__btn {
  opacity: 0.3;
  color: #333;
  font-size: 32px;
  background: transparent;
  border: none;
  position: absolute;
  right: 0px; }

.expertise__section__wrapper {
  background-color: #f9f9fa; }

.expertise__section {
  text-align: center;
  padding-top: 20px;
  padding-bottom: 70px; }
  @media (max-width: 767px) {
    .expertise__section {
      padding-bottom: 30px; } }

.expertise__separator {
  border-bottom: 1px solid #a0c63f;
  line-height: 0.1em;
  margin-top: 40px;
  margin-bottom: 40px;
  display: block; }

.expertise__header {
  text-transform: uppercase;
  margin-top: 40px;
  margin-bottom: 40px;
  text-align: center;
  font-size: 24px; }
  @media (max-width: 767px) {
    .expertise__header {
      margin: 40px 0 10px; } }

.footer {
  position: relative;
  height: 85px;
  background: #363636;
  padding: 31px 0 41px; }
  @media (max-width: 767px) {
    .footer {
      height: auto;
      text-align: center; } }
  .footer small {
    font-size: 12px;
    color: #fff; }
  .footer__nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .footer__nav-col {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
      .footer__nav-col--wide {
        -ms-flex-preferred-size: 240px;
            flex-basis: 240px;
        width: 240px; }
    @media (max-width: 767px) {
      .footer__nav {
        display: block; }
        .footer__nav-col {
          -webkit-box-flex: 1;
              -ms-flex: 1 0 100%;
                  flex: 1 0 100%;
          width: 100%;
          text-align: center; }
          .footer__nav-col + .footer__nav-col {
            margin-top: 15px; } }
    .footer__nav ul {
      list-style-type: none;
      text-align: center;
      margin: 0;
      padding: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      .footer__nav ul li {
        padding: 0;
        margin: 0;
        margin-right: 33px; }
        .footer__nav ul li:last-of-type {
          margin-right: 0; }
        .footer__nav ul li:before {
          display: none; }
        .footer__nav ul li a {
          color: #fff;
          font-size: 16px;
          /* ----------- Non-Retina Screens ----------- */
          /* ----------- Retina Screens ----------- */ }
          @media screen and (max-device-width: 1600px), (max-width: 1600px) {
            .footer__nav ul li a {
              font-size: 15px; } }
          .footer__nav ul li a:hover {
            color: #a0c63f; }
      @media (max-width: 767px) {
        .footer__nav ul {
          -webkit-box-pack: center;
              -ms-flex-pack: center;
                  justify-content: center; }
          .footer__nav ul li {
            margin-right: 15px; } }

.header {
  position: relative;
  padding: 17px 0; }
  .header__logo {
    display: block;
    text-align: center;
    position: relative;
    width: 260px;
    max-width: 100%;
    margin: 0 auto 0 0; }
    @media (max-width: 767px) {
      .header__logo {
        margin: 0 auto 15px; } }
    .header__logo a {
      display: block;
      -webkit-transition: opacity .3s ease-in-out;
      transition: opacity .3s ease-in-out;
      text-decoration: none;
      font-size: 0;
      line-height: 0;
      border: 0; }
      .header__logo a:hover {
        opacity: .8; }
    .header__logo img {
      display: block;
      max-width: 100%; }
  .header__nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    position: relative; }
    @media (max-width: 767px) {
      .header__nav {
        display: block; } }
    .header__nav ul {
      margin: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: stretch;
          -ms-flex-pack: stretch;
              justify-content: stretch;
      list-style-type: none; }
      @media (max-width: 767px) {
        .header__nav ul {
          margin: 0 auto;
          padding: 0;
          text-align: center;
          -ms-flex-pack: distribute;
              justify-content: space-around; } }
      .header__nav ul .js-dropdown-cont {
        -webkit-box-shadow: -15px 0 0 0 #fff, 15px 0 0 0 #fff;
                box-shadow: -15px 0 0 0 #fff, 15px 0 0 0 #fff;
        background: #fff; }
      .header__nav ul li {
        padding: 0;
        margin: 0 30px;
        white-space: nowrap; }
        .header__nav ul li:before {
          display: none; }
        .header__nav ul li:last-child {
          margin-right: 0; }
        .header__nav ul li:first-child {
          margin-left: 0; }
        @media (max-width: 767px) {
          .header__nav ul li {
            margin: 0; } }
        @media (max-width: 479px) {
          .header__nav ul li {
            text-align: center; } }
        .header__nav ul li a {
          font-size: 17px;
          line-height: 24px;
          font-weight: 400;
          border: 0;
          display: inline-block;
          position: relative; }
          .header__nav ul li a:hover {
            color: #a0c63f; }
          .header__nav ul li a.active {
            color: #a0c63f; }

.history__section__wrapper {
  background-color: #fff; }

.history__section {
  text-align: center;
  padding-top: 20px;
  padding-bottom: 70px; }
  @media (max-width: 1023px) {
    .history__section {
      padding: 20px 0 0; } }

.history__separator {
  border-bottom: 1px solid #a0c63f;
  line-height: 0.1em;
  margin-top: 40px;
  margin-bottom: 40px;
  display: block; }

.history__header {
  text-transform: uppercase;
  margin-top: 40px;
  margin-bottom: 40px;
  text-align: center;
  font-size: 24px; }

.home__links__wrapper {
  background-color: #fff; }

.home__links__section {
  text-align: center;
  padding-top: 65px;
  padding-bottom: 45px; }
  @media (max-width: 767px) {
    .home__links__section {
      padding-top: 30px;
      padding-bottom: 30px; } }

.home__links__features {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media (max-width: 1150px) {
    .home__links__features {
      -ms-flex-pack: distribute;
          justify-content: space-around; } }

.home__links__img__wrap {
  padding: 10px;
  width: 166px;
  height: 156px;
  margin-top: 10px;
  margin-left: 15px;
  margin-right: 15px;
  border-radius: 5px;
  background-color: #ffffff;
  -webkit-box-shadow: 0 0 10px 0 rgba(37, 37, 37, 0.05);
          box-shadow: 0 0 10px 0 rgba(37, 37, 37, 0.05);
  line-height: normal; }
  @media (max-width: 479px) {
    .home__links__img__wrap {
      margin-left: auto;
      margin-right: auto; } }

.home__links__img__description {
  margin-top: 12px;
  text-align: center;
  position: relative; }

.home__links__img__description .title {
  font-size: 1.5em;
  font-size: 16px;
  font-weight: bold;
  display: block;
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    .home__links__img__description .title {
      font-size: 22px; } }
  @media (max-width: 767px) {
    .home__links__img__description .title {
      text-align: center;
      display: block; }
      .home__links__img__description .title:after {
        margin: 10px auto; } }

.home__icon {
  width: 55px;
  height: 60px;
  margin-left: 30%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: block;
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    .home__icon {
      margin-left: 40%; } }
  @media (max-width: 1023px) {
    .home__icon {
      margin-left: 40%; } }
  @media (max-width: 767px) {
    .home__icon {
      margin-left: 40%; } }
  @media (max-width: 479px) {
    .home__icon {
      margin-left: 40%; } }

.start__icon {
  background-image: url("../img/home/start_icon.png"); }

.implementation__icon {
  background-image: url("../img/home/implementation_icon.png"); }

.years__icon {
  background-image: url("../img/home/years_icon.png"); }

.support__icon {
  background-image: url("../img/home/support_icon.png"); }

.offshore__icon {
  background-image: url("../img/home/offshore_icon.png"); }

.home__services__wrapper {
  background-image: url("../img/home/services.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover; }

.home__services__section {
  text-align: center;
  padding-top: 20px;
  padding-bottom: 70px; }

.home__services__header {
  text-transform: uppercase;
  margin-top: 40px;
  margin-bottom: 40px;
  text-align: center;
  font-size: 24px; }

.home__services__features {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 40px; }
  @media (max-width: 1150px) {
    .home__services__features {
      -ms-flex-pack: distribute;
          justify-content: space-around; } }

.home__services__block {
  width: 262px;
  min-height: 452px;
  margin: 15px 40px;
  border-radius: 5px;
  background-color: #ffffff;
  -webkit-box-shadow: 0 0 5px 0 rgba(37, 37, 37, 0.03);
          box-shadow: 0 0 5px 0 rgba(37, 37, 37, 0.03); }
  @media (max-width: 1100px) {
    .home__services__block {
      min-height: 0;
      padding: 0 0 15px;
      margin: 15px; } }
  @media (max-width: 479px) {
    .home__services__block {
      margin: 15px auto; } }

.home__services__img__description {
  padding-top: 20px;
  padding-left: 30px;
  padding-right: 40px;
  padding-bottom: 30px;
  text-align: left;
  position: relative; }
  @media (max-width: 1023px) {
    .home__services__img__description {
      padding: 15px !important; } }

.home__services__img__description .title {
  font-size: 1.5em;
  padding-bottom: 13px;
  font-weight: bold;
  display: block;
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    .home__services__img__description .title {
      font-size: 22px; } }
  @media (max-width: 767px) {
    .home__services__img__description .title {
      text-align: center;
      display: block; }
      .home__services__img__description .title:after {
        margin: 10px auto; } }

.read__more__btn {
  margin-top: 20px;
  text-decoration: none;
  color: #a0c63f;
  font-size: 18px;
  font-weight: bold;
  float: left;
  -webkit-transition: all .15s ease-in-out;
  transition: all .15s ease-in-out; }
  .read__more__btn:hover {
    color: black; }

.read__more__btn::after {
  content: '→';
  margin-left: 10px; }

.home__services__img__wrap {
  position: relative;
  display: block; }
  .home__services__img__wrap .home__services__img__wrap-content,
  .home__services__img__wrap .overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0; }
    .home__services__img__wrap .home__services__img__wrap-content img,
    .home__services__img__wrap .overlay img {
      display: none; }
  .home__services__img__wrap:hover .home__services__img__wrap-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .home__services__img__wrap:hover .home__services__img__wrap-content .overlay {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      opacity: .5;
      background-color: #a0c63f;
      border-radius: 5px 5px 0 0; }
    .home__services__img__wrap:hover .home__services__img__wrap-content img {
      z-index: 2;
      display: block; }

.home__board-carousel {
  position: relative; }
  .home__board-carousel .slick-arrow {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    z-index: 999;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.3);
    cursor: pointer;
    -webkit-transition: all .15s ease-in-out;
    transition: all .15s ease-in-out; }
    .home__board-carousel .slick-arrow:hover {
      background: rgba(255, 255, 255, 0.5); }
    .home__board-carousel .slick-arrow:before {
      content: "";
      display: block;
      position: absolute;
      top: 12px;
      border-color: #333;
      border-style: solid;
      width: 16px;
      height: 16px; }
    .home__board-carousel .slick-arrow.slick-prev {
      left: 45px; }
      .home__board-carousel .slick-arrow.slick-prev:before {
        -webkit-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
                transform: rotate(45deg);
        border-width: 0 0 3px 3px;
        left: 15px; }
    .home__board-carousel .slick-arrow.slick-next {
      right: 45px; }
      .home__board-carousel .slick-arrow.slick-next:before {
        -webkit-transform: rotate(-45deg);
            -ms-transform: rotate(-45deg);
                transform: rotate(-45deg);
        border-width: 0 3px 3px 0;
        left: 10px; }
  .home__board-carousel .slick-dots {
    position: absolute;
    bottom: 40px;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    padding: 0;
    margin: 0;
    z-index: 999; }
    @media (max-width: 479px) {
      .home__board-carousel .slick-dots {
        bottom: 5px; } }
    .home__board-carousel .slick-dots li {
      list-style: none;
      font-size: 0;
      line-height: 0;
      display: inline-block;
      margin: 0 2px; }
      .home__board-carousel .slick-dots li button {
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none;
        outline: 0;
        background-color: transparent;
        border: solid 5px rgba(255, 255, 255, 0.3);
        border-radius: 50%;
        width: 20px;
        height: 20px;
        cursor: pointer; }
        .home__board-carousel .slick-dots li button:hover {
          background: rgba(255, 255, 255, 0.5); }
      .home__board-carousel .slick-dots li.slick-active button {
        background: rgba(255, 255, 255, 0.5); }

.home__info__block {
  width: 457px;
  height: 341px;
  background: #fff;
  padding-left: 30px;
  padding-top: 65px;
  padding-right: 50px;
  margin-top: 75px;
  margin-left: 100px;
  border-radius: 5px; }
  @media (max-width: 767px) {
    .home__info__block {
      width: auto;
      height: auto;
      margin-top: 15px;
      margin-left: 0;
      padding-left: 15px;
      padding-top: 25px;
      padding-right: 15px;
      padding-bottom: 15px; } }

.home__title {
  text-align: left;
  font-size: 24px;
  line-height: normal;
  color: #000;
  text-transform: uppercase;
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    .home__title {
      font-size: 24px; } }

.home__separator {
  border-bottom: 1px solid #a0c63f;
  line-height: 0.1em;
  margin-top: 40px;
  margin-bottom: 40px;
  display: block; }

.home__sub__title {
  text-align: left;
  font-size: 16px;
  line-height: normal;
  color: #000;
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    .home__sub__title {
      font-size: 16px; } }

.home__header {
  margin-top: 40px;
  margin-bottom: 40px;
  text-align: center;
  font-size: 24px;
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    .home__header {
      font-size: 33px;
      margin-top: 25px;
      margin-bottom: 17px; } }

.leadership__wrapper {
  background-color: #f9f9fa; }

.leadership__section {
  text-align: center;
  padding-bottom: 60px; }
  @media (max-width: 1023px) {
    .leadership__section {
      padding-bottom: 10px; } }

.leadership__header {
  text-transform: uppercase;
  margin-top: 60px;
  margin-bottom: 40px;
  text-align: center;
  font-size: 24px; }

.leadership__features {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 -15px; }
  @media (max-width: 1150px) {
    .leadership__features {
      -ms-flex-pack: distribute;
          justify-content: space-around; } }

.leadership__img__wrap {
  width: 458px;
  margin-top: 20px;
  margin-left: 15px;
  margin-right: 15px;
  border-radius: 5px;
  background-color: #ffffff;
  -webkit-box-shadow: 0 0 20px 0 rgba(37, 37, 37, 0.2);
          box-shadow: 0 0 20px 0 rgba(37, 37, 37, 0.2); }

.leadership__img__description {
  padding: 22px;
  text-align: left;
  position: relative; }

.leadership__img__description .title {
  font-size: 1.5em;
  display: block;
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    .leadership__img__description .title {
      font-size: 22px; } }
  @media (max-width: 767px) {
    .leadership__img__description .title {
      text-align: center;
      display: block; }
      .leadership__img__description .title:after {
        margin: 10px auto; } }

.reviews__section {
  text-align: center;
  background-color: #fff;
  padding-top: 60px;
  padding-bottom: 60px; }

.reviews__header {
  text-transform: uppercase;
  margin-top: 40px;
  margin-bottom: 40px;
  text-align: center;
  font-size: 24px; }

.reviews__separator {
  border-bottom: 1px solid #a0c63f;
  line-height: 0.1em;
  margin-top: 40px;
  margin-bottom: 40px;
  display: block; }

.reviews__text {
  position: relative;
  padding-left: 35px;
  padding-right: 35px;
  text-align: left;
  margin-bottom: 40px; }
  .reviews__text p {
    line-height: 1.3;
    font-size: 16px;
    font-style: italic; }
    .reviews__text p {
      padding: 6px 0 6px; }
  .reviews__text .quote-icon {
    position: absolute;
    font-size: 27px;
    color: #a0c63f; }
  .reviews__text .quote-icon:first-child {
    top: -10px;
    left: 0px;
    margin-right: 10px; }
  .reviews__text .quote-icon:last-child {
    bottom: -10px;
    right: 0px; }

.reviews__features {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.reviews__img__wrap {
  padding: 10px;
  margin: 0 70px; }
  @media (max-width: 1023px) {
    .reviews__img__wrap {
      margin: 0 15px; } }
  @media (max-width: 767px) {
    .reviews__img__wrap {
      width: 100%; }
      .reviews__img__wrap img {
        margin: 0 auto; } }

.services__wrapper {
  background: #fff; }

.services__section {
  text-align: center;
  padding-top: 20px;
  padding-bottom: 70px; }
  @media (max-width: 767px) {
    .services__section {
      padding-bottom: 0; } }

.services__header {
  text-transform: uppercase;
  padding-top: 40px;
  text-align: center;
  font-size: 24px; }

.services__features {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-top: 40px;
  padding-bottom: 40px; }
  @media (max-width: 1150px) {
    .services__features {
      -ms-flex-pack: distribute;
          justify-content: space-around; } }
  @media (max-width: 767px) {
    .services__features {
      padding: 20px 0 0; } }

.service__block {
  width: 945px;
  border-radius: 5px;
  background-color: #ffffff;
  -webkit-box-shadow: 0 0 10px 0 rgba(37, 37, 37, 0.05);
          box-shadow: 0 0 10px 0 rgba(37, 37, 37, 0.05); }

.services__img__wrap {
  position: relative; }
  .services__img__wrap div {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }

.services__features:nth-child(even) {
  background-color: #ffffff; }

.services__features:nth-child(odd) {
  background-color: #f9f9fa; }

.services__img__description {
  padding-top: 20px;
  padding-left: 30px;
  padding-right: 40px;
  padding-bottom: 30px;
  text-align: left;
  position: relative; }

.services__img__description .title {
  font-size: 1.5em;
  padding-bottom: 13px;
  font-weight: bold;
  display: block;
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    .services__img__description .title {
      font-size: 22px; } }
  @media (max-width: 767px) {
    .services__img__description .title {
      text-align: center;
      display: block; }
      .services__img__description .title:after {
        margin: 10px auto; } }

.services__list {
  list-style-type: none;
  padding-left: 9px; }
  .services__list li .check-icon {
    margin-right: 10px;
    color: #a0c63f; }

.home__board {
  padding: 150px 0;
  /* ----------- Non-Retina Screens ----------- */
  /* ----------- Retina Screens ----------- */ }
  @media screen and (max-device-width: 1600px), (max-width: 1600px) {
    .home__board {
      padding: 110px 0; } }
  @media (max-width: 479px) {
    .home__board {
      padding: 35px 0; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1ncmlkL3Nhc3MvYm9vdHN0cmFwLXNhc3MtZ3JpZC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1ncmlkL3Nhc3MvYm9vdHN0cmFwL19ub3JtYWxpemUuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MtZ3JpZC9zYXNzL2Jvb3RzdHJhcC9fcHJpbnQuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MtZ3JpZC9zYXNzL2Jvb3RzdHJhcC9fc2NhZmZvbGRpbmcuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MtZ3JpZC9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX3ZlbmRvci1wcmVmaXhlcy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1ncmlkL3Nhc3MvYm9vdHN0cmFwL192YXJpYWJsZXMuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MtZ3JpZC9zYXNzL2Jvb3RzdHJhcC9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1ncmlkL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1ncmlkL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fY2xlYXJmaXguc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MtZ3JpZC9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLWdyaWQvc2Fzcy9ib290c3RyYXAvX3V0aWxpdGllcy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1ncmlkL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fY2VudGVyLWJsb2NrLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLWdyaWQvc2Fzcy9ib290c3RyYXAvbWl4aW5zL19oaWRlLXRleHQuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MtZ3JpZC9zYXNzL2Jvb3RzdHJhcC9fcmVzcG9uc2l2ZS11dGlsaXRpZXMuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MtZ3JpZC9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc3BvbnNpdmUtdmlzaWJpbGl0eS5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9zbGljay1jYXJvdXNlbC9zbGljay9zbGljay5zY3NzIiwiX2ZvbnRzLnNjc3MiLCJfbWl4aW5zJmluY2x1ZGVzLnNjc3MiLCJfdHlwb2dyYXBoeS5zY3NzIiwiX3ZhcmlhYmxlcy5zY3NzIiwicGx1Z2lucy92YWxpZGF0aW9uLnNjc3MiLCJfbGF5b3V0LnNjc3MiLCJjb21wb25lbnRzL19idXR0b24uc2NzcyIsImNvbXBvbmVudHMvX2Ryb3Bkb3ducy5zY3NzIiwiY29tcG9uZW50cy9faW5mby1ibG9jay5zY3NzIiwiY29tcG9uZW50cy9fcG9wdXAuc2NzcyIsImNvbXBvbmVudHMvX3JhZGlvLnNjc3MiLCJjb21wb25lbnRzL19zZXBhcmF0b3Iuc2NzcyIsImNvbXBvbmVudHMvX3ZpZGVvLnNjc3MiLCIuLi8uLi9tb2R1bGVzL2Fib3V0L2Fib3V0LnNjc3MiLCIuLi8uLi9tb2R1bGVzL2JvYXJkL2JvYXJkLnNjc3MiLCIuLi8uLi9tb2R1bGVzL2NvbnRhY3RzLXNlY3Rpb24vY29udGFjdHMtc2VjdGlvbi5zY3NzIiwiLi4vLi4vbW9kdWxlcy9jdXN0b21lcnMtc2VjdGlvbi9jdXN0b21lcnMtc2VjdGlvbi5zY3NzIiwiLi4vLi4vbW9kdWxlcy9leHBlcnRpc2Utc2VjdGlvbi9leHBlcnRpc2Utc2VjdGlvbi5zY3NzIiwiLi4vLi4vbW9kdWxlcy9mb290ZXIvZm9vdGVyLnNjc3MiLCIuLi8uLi9tb2R1bGVzL2hlYWRlci9oZWFkZXIuc2NzcyIsIi4uLy4uL21vZHVsZXMvaGlzdG9yeS9oaXN0b3J5LnNjc3MiLCIuLi8uLi9tb2R1bGVzL2hvbWUtbGlua3Mtc2VjdGlvbi9ob21lLWxpbmtzLXNlY3Rpb24uc2NzcyIsIi4uLy4uL21vZHVsZXMvaG9tZS1zZXJ2aWNlcy1zZWN0aW9uL2hvbWUtc2VydmljZXMtc2VjdGlvbi5zY3NzIiwiLi4vLi4vbW9kdWxlcy9ob21lL2hvbWUuc2NzcyIsIi4uLy4uL21vZHVsZXMvbGVhZGVyc2hpcC1zZWN0aW9uL2xlYWRlcnNoaXAtc2VjdGlvbi5zY3NzIiwiLi4vLi4vbW9kdWxlcy9yZXZpZXdzLXNlY3Rpb24vcmV2aWV3cy1zZWN0aW9uLnNjc3MiLCIuLi8uLi9tb2R1bGVzL3NlcnZpY2VzLXNlY3Rpb24vc2VydmljZXMtc2VjdGlvbi5zY3NzIiwicGFnZXMvX3N0YXRpYy1wYWdlcy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQ0FqQjs7OztHQUlHO0FDSkgsNEVBQTRFO0FBUTVFO0VBQ0Usd0JBQXVCO0VBQ3ZCLDJCQUEwQjtFQUMxQiwrQkFBOEIsRUFDL0I7O0FBTUQ7RUFDRSxVQUFTLEVBQ1Y7O0FBWUQ7Ozs7Ozs7Ozs7Ozs7RUFhRSxlQUFjLEVBQ2Y7O0FBT0Q7Ozs7RUFJRSxzQkFBcUI7RUFDckIseUJBQXdCLEVBQ3pCOztBQU9EO0VBQ0UsY0FBYTtFQUNiLFVBQVMsRUFDVjs7QUY1QkQ7O0VFcUNFLGNBQWEsRUFDZDs7QUFTRDtFQUNFLDhCQUE2QixFQUM5Qjs7QUFPRDs7RUFFRSxXQUFVLEVBQ1g7O0FBU0Q7RUFDRSwwQkFBeUIsRUFDMUI7O0FBTUQ7O0VBRUUsa0JBQWlCLEVB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aUJBQTJDLEVBQzVDOztBQUZEO0VBQ0UsV0FBMkMsRUFDNUM7O0FBRkQ7RUFDRSxpQkFBMkMsRUFDNUM7O0FBRkQ7RUFDRSxpQkFBMkMsRUFDNUM7O0FBRkQ7RUFDRSxXQUEyQyxFQUM1Qzs7QUFGRDtFQUNFLGlCQUEyQyxFQUM1Qzs7QUFGRDtFQUNFLGlCQUEyQyxFQUM1Qzs7QUFGRDtFQUNFLFlBQTJDLEVBQzVDOztBQVBEO0VBQ0UsV0FBVSxFQUNYOztBQVBEO0VBQ0UsZUFBMEMsRUFDM0M7O0FBRkQ7RUFDRSxnQkFBMEMsRUFDM0M7O0FBRkQ7RUFDRSxVQUEwQyxFQUMzQzs7QUFGRDtFQUNFLGdCQUEwQyxFQUMzQzs7QUFGRDtFQUNFLGdCQUEwQyxFQUMzQzs7QUFGRDtFQUNFLFVBQTBDLEVBQzNDOztBQUZEO0VBQ0UsZ0JBQTBDLEVBQzNDOztBQUZEO0VBQ0UsZ0JBQTBDLEVBQzNDOztBQUZEO0VBQ0UsVUFBMEMsRUFDM0M7O0FBRkQ7RUFDRSxnQkFBMEMsRUFDM0M7O0FBRkQ7RUFDRSxnQkFBMEMsRUFDM0M7O0FBRkQ7RUFDRSxXQUEwQyxFQUMzQzs7QUFrQkQ7RUFDRSxnQkFBaUQsRUFDbEQ7O0FBRkQ7RUFDRSxzQkFBaUQsRUFDbEQ7O0FBRkQ7RUFDRSx1QkFBaUQsRUFDbEQ7O0FBRkQ7RUFDRSxpQkFBaUQsRUFDbEQ7O0FBRkQ7RUFDRSx1QkFBaUQsRUFDbEQ7O0FBRkQ7RUFDRSx1QkFBaUQsRUFDbEQ7O0FBRkQ7RUFDRSxpQkFBaUQsRUFDbEQ7O0FBRkQ7RUFDRSx1QkFBaUQsRUFDbEQ7O0FBRkQ7RUFDRSx1QkFBaUQsRUFDbEQ7O0FBRkQ7RUFDRSxpQkFBaUQsRUFDbEQ7O0FBRkQ7RUFDRSx1QkFBaUQsRUFDbEQ7O0FBRkQ7RUFDRSx1QkFBaUQsRUFDbEQ7O0FBRkQ7RUFDRSxrQkFBaUQsRUFDbEQ7O0FIRUw7RUdyQ0U7SUFDRSxZQUFXLEVBQ1o7RUFNQztJQUNFLGdCQUEyQyxFQUM1QztFQUZEO0lBQ0UsaUJBQTJDLEVBQzVDO0VBRkQ7SUFDRSxXQUEyQyxFQUM1QztFQUZEO0lBQ0Us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dCBcIlVURi04XCI7XG4vKiFcbiAqIEJvb3RzdHJhcCB2My4zLjYgKGh0dHA6Ly9nZXRib290c3RyYXAuY29tKVxuICogQ29weXJpZ2h0IDIwMTEtMjAxNSBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxuICovXG4vKiEgbm9ybWFsaXplLmNzcyB2My4wLjMgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IH1cblxuYm9keSB7XG4gIG1hcmdpbjogMDsgfVxuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7IH1cblxuW2hpZGRlbl0sXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7IH1cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkOyB9XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDsgfVxuXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTsgfVxuXG5pbWcge1xuICBib3JkZXI6IDA7IH1cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7IH1cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwOyB9XG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udDogaW5oZXJpdDtcbiAgbWFyZ2luOiAwOyB9XG5cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7IH1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMDsgfVxuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyB9XG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtOyB9XG5cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDsgfVxuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDsgfVxuXG4vKiEgU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9ibG9iL21hc3Rlci9zcmMvY3NzL21haW4uY3NzICovXG5AbWVkaWEgcHJpbnQge1xuICAqLFxuICAqOmJlZm9yZSxcbiAgKjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4gIGEsXG4gIGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgYVtocmVmXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7IH1cbiAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjsgfVxuICBhW2hyZWZePVwiI1wiXTphZnRlcixcbiAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiOyB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzOyB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cbiAgLm5hdmJhciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuYnRuID4gLmNhcmV0LCBidXR0b24tLXByaW1hcnkgPiAuY2FyZXQsIC5idG4tLXByaW1hcnkgPiAuY2FyZXQsXG4gIC5kcm9wdXAgPiAuYnRuID4gLmNhcmV0LFxuICAuZHJvcHVwID4gYnV0dG9uLS1wcmltYXJ5ID4gLmNhcmV0LFxuICAuZHJvcHVwID4gLmJ0bi0tcHJpbWFyeSA+IC5jYXJldCB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzAwMCAhaW1wb3J0YW50OyB9XG4gIC5sYWJlbCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDsgfVxuICAudGFibGUge1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDsgfVxuICAgIC50YWJsZSB0ZCxcbiAgICAudGFibGUgdGgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50OyB9XG4gIC50YWJsZS1ib3JkZXJlZCB0aCxcbiAgLnRhYmxlLWJvcmRlcmVkIHRkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkICFpbXBvcnRhbnQ7IH0gfVxuXG4qIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOyB9XG5cbmJvZHkge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiAjMzMzMzMzOyB9XG5cbi5zci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7IH1cblxuLnNyLW9ubHktZm9jdXNhYmxlOmFjdGl2ZSwgLnNyLW9ubHktZm9jdXNhYmxlOmZvY3VzIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bzsgfVxuXG5bcm9sZT1cImJ1dHRvblwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uY29udGFpbmVyIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9XG4gIC5jb250YWluZXI6YmVmb3JlLCAuY29udGFpbmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAuY29udGFpbmVyOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiA3NTBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5jb250YWluZXIge1xuICAgICAgd2lkdGg6IDk3MHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC5jb250YWluZXIge1xuICAgICAgd2lkdGg6IDExNzBweDsgfSB9XG5cbi5jb250YWluZXItZmx1aWQge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH1cbiAgLmNvbnRhaW5lci1mbHVpZDpiZWZvcmUsIC5jb250YWluZXItZmx1aWQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5jb250YWluZXItZmx1aWQ6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5yb3cge1xuICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gIG1hcmdpbi1yaWdodDogLTE1cHg7IH1cbiAgLnJvdzpiZWZvcmUsIC5yb3c6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5yb3c6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5jb2wteHMtMSwgLmNvbC1zbS0xLCAuY29sLW1kLTEsIC5jb2wtbGctMSwgLmNvbC14cy0yLCAuY29sLXNtLTIsIC5jb2wtbWQtMiwgLmNvbC1sZy0yLCAuY29sLXhzLTMsIC5jb2wtc20tMywgLmNvbC1tZC0zLCAuY29sLWxnLTMsIC5jb2wteHMtNCwgLmNvbC1zbS00LCAuY29sLW1kLTQsIC5jb2wtbGctNCwgLmNvbC14cy01LCAuY29sLXNtLTUsIC5jb2wtbWQtNSwgLmNvbC1sZy01LCAuY29sLXhzLTYsIC5jb2wtc20tNiwgLmNvbC1tZC02LCAuY29sLWxnLTYsIC5jb2wteHMtNywgLmNvbC1zbS03LCAuY29sLW1kLTcsIC5jb2wtbGctNywgLmNvbC14cy04LCAuY29sLXNtLTgsIC5jb2wtbWQtOCwgLmNvbC1sZy04LCAuY29sLXhzLTksIC5jb2wtc20tOSwgLmNvbC1tZC05LCAuY29sLWxnLTksIC5jb2wteHMtMTAsIC5jb2wtc20tMTAsIC5jb2wtbWQtMTAsIC5jb2wtbGctMTAsIC5jb2wteHMtMTEsIC5jb2wtc20tMTEsIC5jb2wtbWQtMTEsIC5jb2wtbGctMTEsIC5jb2wteHMtMTIsIC5jb2wtc20tMTIsIC5jb2wtbWQtMTIsIC5jb2wtbGctMTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9XG5cbi5jb2wteHMtMSwgLmNvbC14cy0yLCAuY29sLXhzLTMsIC5jb2wteHMtNCwgLmNvbC14cy01LCAuY29sLXhzLTYsIC5jb2wteHMtNywgLmNvbC14cy04LCAuY29sLXhzLTksIC5jb2wteHMtMTAsIC5jb2wteHMtMTEsIC5jb2wteHMtMTIge1xuICBmbG9hdDogbGVmdDsgfVxuXG4uY29sLXhzLTEge1xuICB3aWR0aDogOC4zMzMzMyU7IH1cblxuLmNvbC14cy0yIHtcbiAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4uY29sLXhzLTMge1xuICB3aWR0aDogMjUlOyB9XG5cbi5jb2wteHMtNCB7XG4gIHdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLmNvbC14cy01IHtcbiAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuXG4uY29sLXhzLTYge1xuICB3aWR0aDogNTAlOyB9XG5cbi5jb2wteHMtNyB7XG4gIHdpZHRoOiA1OC4zMzMzMyU7IH1cblxuLmNvbC14cy04IHtcbiAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuXG4uY29sLXhzLTkge1xuICB3aWR0aDogNzUlOyB9XG5cbi5jb2wteHMtMTAge1xuICB3aWR0aDogODMuMzMzMzMlOyB9XG5cbi5jb2wteHMtMTEge1xuICB3aWR0aDogOTEuNjY2NjclOyB9XG5cbi5jb2wteHMtMTIge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY29sLXhzLXB1bGwtMCB7XG4gIHJpZ2h0OiBhdXRvOyB9XG5cbi5jb2wteHMtcHVsbC0xIHtcbiAgcmlnaHQ6IDguMzMzMzMlOyB9XG5cbi5jb2wteHMtcHVsbC0yIHtcbiAgcmlnaHQ6IDE2LjY2NjY3JTsgfVxuXG4uY29sLXhzLXB1bGwtMyB7XG4gIHJpZ2h0OiAyNSU7IH1cblxuLmNvbC14cy1wdWxsLTQge1xuICByaWdodDogMzMuMzMzMzMlOyB9XG5cbi5jb2wteHMtcHVsbC01IHtcbiAgcmlnaHQ6IDQxLjY2NjY3JTsgfVxuXG4uY29sLXhzLXB1bGwtNiB7XG4gIHJpZ2h0OiA1MCU7IH1cblxuLmNvbC14cy1wdWxsLTcge1xuICByaWdodDogNTguMzMzMzMlOyB9XG5cbi5jb2wteHMtcHVsbC04IHtcbiAgcmlnaHQ6IDY2LjY2NjY3JTsgfVxuXG4uY29sLXhzLXB1bGwtOSB7XG4gIHJpZ2h0OiA3NSU7IH1cblxuLmNvbC14cy1wdWxsLTEwIHtcbiAgcmlnaHQ6IDgzLjMzMzMzJTsgfVxuXG4uY29sLXhzLXB1bGwtMTEge1xuICByaWdodDogOTEuNjY2NjclOyB9XG5cbi5jb2wteHMtcHVsbC0xMiB7XG4gIHJpZ2h0OiAxMDAlOyB9XG5cbi5jb2wteHMtcHVzaC0wIHtcbiAgbGVmdDogYXV0bzsgfVxuXG4uY29sLXhzLXB1c2gtMSB7XG4gIGxlZnQ6IDguMzMzMzMlOyB9XG5cbi5jb2wteHMtcHVzaC0yIHtcbiAgbGVmdDogMTYuNjY2NjclOyB9XG5cbi5jb2wteHMtcHVzaC0zIHtcbiAgbGVmdDogMjUlOyB9XG5cbi5jb2wteHMtcHVzaC00IHtcbiAgbGVmdDogMzMuMzMzMzMlOyB9XG5cbi5jb2wteHMtcHVzaC01IHtcbiAgbGVmdDogNDEuNjY2NjclOyB9XG5cbi5jb2wteHMtcHVzaC02IHtcbiAgbGVmdDogNTAlOyB9XG5cbi5jb2wteHMtcHVzaC03IHtcbiAgbGVmdDogNTguMzMzMzMlOyB9XG5cbi5jb2wteHMtcHVzaC04IHtcbiAgbGVmdDogNjYuNjY2NjclOyB9XG5cbi5jb2wteHMtcHVzaC05IHtcbiAgbGVmdDogNzUlOyB9XG5cbi5jb2wteHMtcHVzaC0xMCB7XG4gIGxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4uY29sLXhzLXB1c2gtMTEge1xuICBsZWZ0OiA5MS42NjY2NyU7IH1cblxuLmNvbC14cy1wdXNoLTEyIHtcbiAgbGVmdDogMTAwJTsgfVxuXG4uY29sLXhzLW9mZnNldC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAlOyB9XG5cbi5jb2wteHMtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cblxuLmNvbC14cy1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cblxuLmNvbC14cy1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7IH1cblxuLmNvbC14cy1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cblxuLmNvbC14cy1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cblxuLmNvbC14cy1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7IH1cblxuLmNvbC14cy1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cblxuLmNvbC14cy1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cblxuLmNvbC14cy1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7IH1cblxuLmNvbC14cy1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG5cbi5jb2wteHMtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4uY29sLXhzLW9mZnNldC0xMiB7XG4gIG1hcmdpbi1sZWZ0OiAxMDAlOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29sLXNtLTEsIC5jb2wtc20tMiwgLmNvbC1zbS0zLCAuY29sLXNtLTQsIC5jb2wtc20tNSwgLmNvbC1zbS02LCAuY29sLXNtLTcsIC5jb2wtc20tOCwgLmNvbC1zbS05LCAuY29sLXNtLTEwLCAuY29sLXNtLTExLCAuY29sLXNtLTEyIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAuY29sLXNtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuY29sLXNtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmNvbC1zbS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5jb2wtc20tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuY29sLXNtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmNvbC1zbS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5jb2wtc20tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuY29sLXNtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmNvbC1zbS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5jb2wtc20tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmNvbC1zbS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuY29sLXNtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuY29sLXNtLXB1bGwtMCB7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLmNvbC1zbS1wdWxsLTEge1xuICAgIHJpZ2h0OiA4LjMzMzMzJTsgfVxuICAuY29sLXNtLXB1bGwtMiB7XG4gICAgcmlnaHQ6IDE2LjY2NjY3JTsgfVxuICAuY29sLXNtLXB1bGwtMyB7XG4gICAgcmlnaHQ6IDI1JTsgfVxuICAuY29sLXNtLXB1bGwtNCB7XG4gICAgcmlnaHQ6IDMzLjMzMzMzJTsgfVxuICAuY29sLXNtLXB1bGwtNSB7XG4gICAgcmlnaHQ6IDQxLjY2NjY3JTsgfVxuICAuY29sLXNtLXB1bGwtNiB7XG4gICAgcmlnaHQ6IDUwJTsgfVxuICAuY29sLXNtLXB1bGwtNyB7XG4gICAgcmlnaHQ6IDU4LjMzMzMzJTsgfVxuICAuY29sLXNtLXB1bGwtOCB7XG4gICAgcmlnaHQ6IDY2LjY2NjY3JTsgfVxuICAuY29sLXNtLXB1bGwtOSB7XG4gICAgcmlnaHQ6IDc1JTsgfVxuICAuY29sLXNtLXB1bGwtMTAge1xuICAgIHJpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLmNvbC1zbS1wdWxsLTExIHtcbiAgICByaWdodDogOTEuNjY2NjclOyB9XG4gIC5jb2wtc20tcHVsbC0xMiB7XG4gICAgcmlnaHQ6IDEwMCU7IH1cbiAgLmNvbC1zbS1wdXNoLTAge1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmNvbC1zbS1wdXNoLTEge1xuICAgIGxlZnQ6IDguMzMzMzMlOyB9XG4gIC5jb2wtc20tcHVzaC0yIHtcbiAgICBsZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmNvbC1zbS1wdXNoLTMge1xuICAgIGxlZnQ6IDI1JTsgfVxuICAuY29sLXNtLXB1c2gtNCB7XG4gICAgbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5jb2wtc20tcHVzaC01IHtcbiAgICBsZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmNvbC1zbS1wdXNoLTYge1xuICAgIGxlZnQ6IDUwJTsgfVxuICAuY29sLXNtLXB1c2gtNyB7XG4gICAgbGVmdDogNTguMzMzMzMlOyB9XG4gIC5jb2wtc20tcHVzaC04IHtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmNvbC1zbS1wdXNoLTkge1xuICAgIGxlZnQ6IDc1JTsgfVxuICAuY29sLXNtLXB1c2gtMTAge1xuICAgIGxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuY29sLXNtLXB1c2gtMTEge1xuICAgIGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAuY29sLXNtLXB1c2gtMTIge1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLmNvbC1zbS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5jb2wtc20tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuY29sLXNtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5jb2wtc20tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmNvbC1zbS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuY29sLXNtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5jb2wtc20tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmNvbC1zbS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuY29sLXNtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5jb2wtc20tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmNvbC1zbS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmNvbC1zbS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmNvbC1zbS1vZmZzZXQtMTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxMDAlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jb2wtbWQtMSwgLmNvbC1tZC0yLCAuY29sLW1kLTMsIC5jb2wtbWQtNCwgLmNvbC1tZC01LCAuY29sLW1kLTYsIC5jb2wtbWQtNywgLmNvbC1tZC04LCAuY29sLW1kLTksIC5jb2wtbWQtMTAsIC5jb2wtbWQtMTEsIC5jb2wtbWQtMTIge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5jb2wtbWQtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5jb2wtbWQtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuY29sLW1kLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmNvbC1tZC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5jb2wtbWQtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuY29sLW1kLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmNvbC1tZC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5jb2wtbWQtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuY29sLW1kLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmNvbC1tZC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuY29sLW1kLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5jb2wtbWQtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5jb2wtbWQtcHVsbC0wIHtcbiAgICByaWdodDogYXV0bzsgfVxuICAuY29sLW1kLXB1bGwtMSB7XG4gICAgcmlnaHQ6IDguMzMzMzMlOyB9XG4gIC5jb2wtbWQtcHVsbC0yIHtcbiAgICByaWdodDogMTYuNjY2NjclOyB9XG4gIC5jb2wtbWQtcHVsbC0zIHtcbiAgICByaWdodDogMjUlOyB9XG4gIC5jb2wtbWQtcHVsbC00IHtcbiAgICByaWdodDogMzMuMzMzMzMlOyB9XG4gIC5jb2wtbWQtcHVsbC01IHtcbiAgICByaWdodDogNDEuNjY2NjclOyB9XG4gIC5jb2wtbWQtcHVsbC02IHtcbiAgICByaWdodDogNTAlOyB9XG4gIC5jb2wtbWQtcHVsbC03IHtcbiAgICByaWdodDogNTguMzMzMzMlOyB9XG4gIC5jb2wtbWQtcHVsbC04IHtcbiAgICByaWdodDogNjYuNjY2NjclOyB9XG4gIC5jb2wtbWQtcHVsbC05IHtcbiAgICByaWdodDogNzUlOyB9XG4gIC5jb2wtbWQtcHVsbC0xMCB7XG4gICAgcmlnaHQ6IDgzLjMzMzMzJTsgfVxuICAuY29sLW1kLXB1bGwtMTEge1xuICAgIHJpZ2h0OiA5MS42NjY2NyU7IH1cbiAgLmNvbC1tZC1wdWxsLTEyIHtcbiAgICByaWdodDogMTAwJTsgfVxuICAuY29sLW1kLXB1c2gtMCB7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuY29sLW1kLXB1c2gtMSB7XG4gICAgbGVmdDogOC4zMzMzMyU7IH1cbiAgLmNvbC1tZC1wdXNoLTIge1xuICAgIGxlZnQ6IDE2LjY2NjY3JTsgfVxuICAuY29sLW1kLXB1c2gtMyB7XG4gICAgbGVmdDogMjUlOyB9XG4gIC5jb2wtbWQtcHVzaC00IHtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmNvbC1tZC1wdXNoLTUge1xuICAgIGxlZnQ6IDQxLjY2NjY3JTsgfVxuICAuY29sLW1kLXB1c2gtNiB7XG4gICAgbGVmdDogNTAlOyB9XG4gIC5jb2wtbWQtcHVzaC03IHtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmNvbC1tZC1wdXNoLTgge1xuICAgIGxlZnQ6IDY2LjY2NjY3JTsgfVxuICAuY29sLW1kLXB1c2gtOSB7XG4gICAgbGVmdDogNzUlOyB9XG4gIC5jb2wtbWQtcHVzaC0xMCB7XG4gICAgbGVmdDogODMuMzMzMzMlOyB9XG4gIC5jb2wtbWQtcHVzaC0xMSB7XG4gICAgbGVmdDogOTEuNjY2NjclOyB9XG4gIC5jb2wtbWQtcHVzaC0xMiB7XG4gICAgbGVmdDogMTAwJTsgfVxuICAuY29sLW1kLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmNvbC1tZC1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5jb2wtbWQtb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmNvbC1tZC1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuY29sLW1kLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5jb2wtbWQtb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmNvbC1tZC1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuY29sLW1kLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5jb2wtbWQtb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmNvbC1tZC1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuY29sLW1kLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuY29sLW1kLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAuY29sLW1kLW9mZnNldC0xMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb2wtbGctMSwgLmNvbC1sZy0yLCAuY29sLWxnLTMsIC5jb2wtbGctNCwgLmNvbC1sZy01LCAuY29sLWxnLTYsIC5jb2wtbGctNywgLmNvbC1sZy04LCAuY29sLWxnLTksIC5jb2wtbGctMTAsIC5jb2wtbGctMTEsIC5jb2wtbGctMTIge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5jb2wtbGctMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5jb2wtbGctMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuY29sLWxnLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmNvbC1sZy00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5jb2wtbGctNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuY29sLWxnLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmNvbC1sZy03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5jb2wtbGctOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuY29sLWxnLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmNvbC1sZy0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuY29sLWxnLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5jb2wtbGctMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5jb2wtbGctcHVsbC0wIHtcbiAgICByaWdodDogYXV0bzsgfVxuICAuY29sLWxnLXB1bGwtMSB7XG4gICAgcmlnaHQ6IDguMzMzMzMlOyB9XG4gIC5jb2wtbGctcHVsbC0yIHtcbiAgICByaWdodDogMTYuNjY2NjclOyB9XG4gIC5jb2wtbGctcHVsbC0zIHtcbiAgICByaWdodDogMjUlOyB9XG4gIC5jb2wtbGctcHVsbC00IHtcbiAgICByaWdodDogMzMuMzMzMzMlOyB9XG4gIC5jb2wtbGctcHVsbC01IHtcbiAgICByaWdodDogNDEuNjY2NjclOyB9XG4gIC5jb2wtbGctcHVsbC02IHtcbiAgICByaWdodDogNTAlOyB9XG4gIC5jb2wtbGctcHVsbC03IHtcbiAgICByaWdodDogNTguMzMzMzMlOyB9XG4gIC5jb2wtbGctcHVsbC04IHtcbiAgICByaWdodDogNjYuNjY2NjclOyB9XG4gIC5jb2wtbGctcHVsbC05IHtcbiAgICByaWdodDogNzUlOyB9XG4gIC5jb2wtbGctcHVsbC0xMCB7XG4gICAgcmlnaHQ6IDgzLjMzMzMzJTsgfVxuICAuY29sLWxnLXB1bGwtMTEge1xuICAgIHJpZ2h0OiA5MS42NjY2NyU7IH1cbiAgLmNvbC1sZy1wdWxsLTEyIHtcbiAgICByaWdodDogMTAwJTsgfVxuICAuY29sLWxnLXB1c2gtMCB7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuY29sLWxnLXB1c2gtMSB7XG4gICAgbGVmdDogOC4zMzMzMyU7IH1cbiAgLmNvbC1sZy1wdXNoLTIge1xuICAgIGxlZnQ6IDE2LjY2NjY3JTsgfVxuICAuY29sLWxnLXB1c2gtMyB7XG4gICAgbGVmdDogMjUlOyB9XG4gIC5jb2wtbGctcHVzaC00IHtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmNvbC1sZy1wdXNoLTUge1xuICAgIGxlZnQ6IDQxLjY2NjY3JTsgfVxuICAuY29sLWxnLXB1c2gtNiB7XG4gICAgbGVmdDogNTAlOyB9XG4gIC5jb2wtbGctcHVzaC03IHtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmNvbC1sZy1wdXNoLTgge1xuICAgIGxlZnQ6IDY2LjY2NjY3JTsgfVxuICAuY29sLWxnLXB1c2gtOSB7XG4gICAgbGVmdDogNzUlOyB9XG4gIC5jb2wtbGctcHVzaC0xMCB7XG4gICAgbGVmdDogODMuMzMzMzMlOyB9XG4gIC5jb2wtbGctcHVzaC0xMSB7XG4gICAgbGVmdDogOTEuNjY2NjclOyB9XG4gIC5jb2wtbGctcHVzaC0xMiB7XG4gICAgbGVmdDogMTAwJTsgfVxuICAuY29sLWxnLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmNvbC1sZy1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5jb2wtbGctb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmNvbC1sZy1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuY29sLWxnLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5jb2wtbGctb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmNvbC1sZy1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuY29sLWxnLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5jb2wtbGctb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmNvbC1sZy1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuY29sLWxnLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuY29sLWxnLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAuY29sLWxnLW9mZnNldC0xMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwMCU7IH0gfVxuXG4uY2xlYXJmaXg6YmVmb3JlLCAuY2xlYXJmaXg6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogdGFibGU7IH1cblxuLmNsZWFyZml4OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmNlbnRlci1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi5wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cblxuLnB1bGwtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnNob3cge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnRleHQtaGlkZSB7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwOyB9XG5cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmFmZml4IHtcbiAgcG9zaXRpb246IGZpeGVkOyB9XG5cbkAtbXMtdmlld3BvcnQge1xuICB3aWR0aDogZGV2aWNlLXdpZHRoOyB9XG5cbi52aXNpYmxlLXhzIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi52aXNpYmxlLXNtIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi52aXNpYmxlLW1kIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi52aXNpYmxlLWxnIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi52aXNpYmxlLXhzLWJsb2NrLFxuLnZpc2libGUteHMtaW5saW5lLFxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtc20tYmxvY2ssXG4udmlzaWJsZS1zbS1pbmxpbmUsXG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1tZC1ibG9jayxcbi52aXNpYmxlLW1kLWlubGluZSxcbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayxcbi52aXNpYmxlLWxnLWJsb2NrLFxuLnZpc2libGUtbGctaW5saW5lLFxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudmlzaWJsZS14cyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICB0YWJsZS52aXNpYmxlLXhzIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRyLnZpc2libGUteHMge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRoLnZpc2libGUteHMsXG4gIHRkLnZpc2libGUteHMge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudmlzaWJsZS14cy1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudmlzaWJsZS14cy1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC52aXNpYmxlLXhzLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAudmlzaWJsZS1zbSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICB0YWJsZS52aXNpYmxlLXNtIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRyLnZpc2libGUtc20ge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRoLnZpc2libGUtc20sXG4gIHRkLnZpc2libGUtc20ge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC52aXNpYmxlLXNtLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnZpc2libGUtc20taW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC52aXNpYmxlLXNtLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLnZpc2libGUtbWQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgdGFibGUudmlzaWJsZS1tZCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0ci52aXNpYmxlLW1kIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0aC52aXNpYmxlLW1kLFxuICB0ZC52aXNpYmxlLW1kIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLnZpc2libGUtbWQtYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLnZpc2libGUtbWQtaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAudmlzaWJsZS1tZC1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudmlzaWJsZS1sZyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICB0YWJsZS52aXNpYmxlLWxnIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRyLnZpc2libGUtbGcge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRoLnZpc2libGUtbGcsXG4gIHRkLnZpc2libGUtbGcge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnZpc2libGUtbGctYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC52aXNpYmxlLWxnLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi14cyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmhpZGRlbi1zbSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhpZGRlbi1sZyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnZpc2libGUtcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50IHtcbiAgLnZpc2libGUtcHJpbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgdGFibGUudmlzaWJsZS1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0ci52aXNpYmxlLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0aC52aXNpYmxlLXByaW50LFxuICB0ZC52aXNpYmxlLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH0gfVxuXG4udmlzaWJsZS1wcmludC1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgcHJpbnQge1xuICAgIC52aXNpYmxlLXByaW50LWJsb2NrIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG4udmlzaWJsZS1wcmludC1pbmxpbmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHByaW50IHtcbiAgICAudmlzaWJsZS1wcmludC1pbmxpbmUge1xuICAgICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH0gfVxuXG4udmlzaWJsZS1wcmludC1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHByaW50IHtcbiAgICAudmlzaWJsZS1wcmludC1pbmxpbmUtYmxvY2sge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQge1xuICAuaGlkZGVuLXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWxpc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnNsaWNrLWxpc3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLnNsaWNrLWxpc3QuZHJhZ2dpbmcge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IGhhbmQ7IH1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5zbGljay10cmFjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAuc2xpY2stdHJhY2s6YmVmb3JlLCAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpY2stc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuc2xpY2stc2xpZGUgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0F2ZW5pciBOZXh0JztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9BdmVuaXIvQXZlbmlyTmV4dC1Cb2xkLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9BdmVuaXIvQXZlbmlyTmV4dC1Cb2xkLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL0F2ZW5pci9BdmVuaXJOZXh0LUJvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL0F2ZW5pci9BdmVuaXJOZXh0LUJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9BdmVuaXIvQXZlbmlyTmV4dC1Cb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBdmVuaXIgTmV4dCc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQXZlbmlyL0F2ZW5pck5leHQtUmVndWxhci5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQXZlbmlyL0F2ZW5pck5leHQtUmVndWxhci5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9BdmVuaXIvQXZlbmlyTmV4dC1SZWd1bGFyLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9BdmVuaXIvQXZlbmlyTmV4dC1SZWd1bGFyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvQXZlbmlyL0F2ZW5pck5leHQtUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG4uY2xlYXJmaXg6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBjbGVhcjogYm90aDsgfVxuXG4uY2VudGVyZWQge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTsgfVxuICAuY2VudGVyZWQgPiAqIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbmJvZHkge1xuICBjb2xvcjogIzAwMDtcbiAgZm9udC1mYW1pbHk6IFwiQXZlbmlyIE5leHRcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIC8qIC0tLS0tLS0tLS0tIE5vbi1SZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLSBSZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqLyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxNjAwcHgpLCAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgICBib2R5IHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7IH1cblxuLnBhZ2UtdGl0bGUge1xuICBmb250LXNpemU6IDUwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgLyogLS0tLS0tLS0tLS0gTm9uLVJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tIFJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDE2MDBweCksIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAgIC5wYWdlLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMzVweDsgfSB9XG5cbmgyIHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICAvKiAtLS0tLS0tLS0tLSBOb24tUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0gUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi8gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWRldmljZS13aWR0aDogMTYwMHB4KSwgKG1heC13aWR0aDogMTYwMHB4KSB7XG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiAxOHB4OyB9IH1cblxuaDMge1xuICBmb250LXNpemU6IDI0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4OyB9XG5cbmg0IHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBwYWRkaW5nOiAwIDAgOXB4O1xuICAvKiAtLS0tLS0tLS0tLSBOb24tUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0gUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi8gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWRldmljZS13aWR0aDogMTYwMHB4KSwgKG1heC13aWR0aDogMTYwMHB4KSB7XG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cblxuaDUge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4OyB9XG5cbmg2IHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTRweDsgfVxuXG5wIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgfVxuXG5ociB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kOiAjZTllOWU5O1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMzJweCAwOyB9XG5cbnEsXG5ibG9ja3F1b3RlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbmE6bm90KFtjbGFzcyo9XCJidG5cIl0pIHtcbiAgY29sb3I6ICMwMDA7XG4gIHRyYW5zaXRpb246IGFsbCAuMTVzIGVhc2UtaW4tb3V0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDA7IH1cbiAgYTpub3QoW2NsYXNzKj1cImJ0blwiXSk6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogIzYxMzhjMjtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5vbCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGVjaW1hbDtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xuICBjb3VudGVyLXJlc2V0OiBpdGVtO1xuICBtYXJnaW46IDI0cHggMDtcbiAgcGFkZGluZzogMDsgfVxuICBvbCBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBwYWRkaW5nOiAwIDAgOHB4IDA7IH1cbiAgICBvbCBsaTpiZWZvcmUge1xuICAgICAgY29udGVudDogY291bnRlcnMoaXRlbSwgXCIuXCIpIFwiLiBcIjtcbiAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBpdGVtO1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIG9sIGxpOmxhc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLnRhYmxlLXdyYXBwZXIge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBvdmVyZmxvdy15OiBoaWRkZW47IH1cblxudGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXI6IDA7XG4gIHRhYmxlLWxheW91dDogYXV0bztcbiAgbWFyZ2luOiAwIGF1dG87IH1cbiAgdGFibGUgdGQsIHRhYmxlIHRoIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIHRhYmxlIHRoIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBOZXh0XCIsIFwiVGltZXMgTmV3IFJvbWFuXCIsIHNlcmlmO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYmRiZGJkO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBjb2xvcjogIzAwMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIHBhZGRpbmc6IDAgMTZweCAxNnB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgLyogLS0tLS0tLS0tLS0gTm9uLVJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovXG4gICAgLyogLS0tLS0tLS0tLS0gUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi8gfVxuICAgIHRhYmxlIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNiZGJkYmQ7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIHBhZGRpbmc6IDI1cHggMTZweCAxNnB4O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICB0cjpmaXJzdC1jaGlsZCB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2JkYmRiZDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBwYWRkaW5nOiAwIDE2cHggMTZweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxNjAwcHgpLCAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgICAgIHRhYmxlIHRoIHtcbiAgICAgICAgcGFkZGluZzogMCA4cHggOHB4O1xuICAgICAgICBmb250LXNpemU6IDE4cHg7IH1cbiAgICAgICAgdGFibGUgdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmc6IDEycHggOHB4IDhweDsgfVxuICAgICAgICB0cjpmaXJzdC1jaGlsZCB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZzogMCA4cHggOHB4OyB9IH1cbiAgdGFibGUgdGQge1xuICAgIGNvbG9yOiAjNDQ0O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgcGFkZGluZzogMjVweCAxNnB4IDE2cHg7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIC8qIC0tLS0tLS0tLS0tIE5vbi1SZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqL1xuICAgIC8qIC0tLS0tLS0tLS0tIFJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWRldmljZS13aWR0aDogMTYwMHB4KSwgKG1heC13aWR0aDogMTYwMHB4KSB7XG4gICAgICB0YWJsZSB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDEycHggOHB4IDhweDsgfSB9XG4gIHRhYmxlIHRyOmxhc3QtY2hpbGQgdGQsIHRhYmxlIHRyOmxhc3QtY2hpbGQgdGgge1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgICAgdGFibGUgdHI6bGFzdC1jaGlsZCB0ZCwgdGFibGUgdHI6bGFzdC1jaGlsZCB0aCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA4cHg7IH0gfVxuXG4udXBwZXIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi5sb3dlciB7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cblxuLmMtZGFyaywgLmMtYmxhY2sge1xuICBjb2xvcjogZGVmYXVsdDsgfVxuXG4uYy13aGl0ZSwgLmMtbGlnaHQge1xuICBjb2xvcjogd2hpdGU7IH1cblxuLmNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbmxhYmVsLmVycm9yIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmlucHV0LmVycm9yIHtcbiAgYm9yZGVyLWNvbG9yOiAjQkQxNDIxO1xuICBib3gtc2hhZG93OiAwIDAgNnB4IDFweCAjQkQxNDIxOyB9XG5cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBvdXRsaW5lOiAwOyB9XG5cbmh0bWwge1xuICBvdmVyZmxvdy14OiBoaWRkZW47IH1cblxuYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLXdpZHRoOiAzMjBweDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbi5ub3Njcm9sbCB7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnBhZ2Uge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY29udGFpbmVyIHtcbiAgcGFkZGluZzogMCAzMHB4O1xuICB3aWR0aDogMTE3MHB4O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8qIC0tLS0tLS0tLS0tIE5vbi1SZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLSBSZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqLyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxNjAwcHgpLCAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgICAuY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDAgMzBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAuY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMCAxNXB4OyB9IH1cblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLmRlc2t0b3AtaGlkZGVuIHtcbiAgLyogLS0tLS0tLS0tLS0gTm9uLVJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tIFJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDE2MDBweCksIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAgIC5kZXNrdG9wLWhpZGRlbiB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uZGVza3RvcC12aXNpYmxlIHtcbiAgLyogLS0tLS0tLS0tLS0gTm9uLVJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tIFJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDE2MDBweCksIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAgIC5kZXNrdG9wLXZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLnRhYmxldC1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLnRhYmxldC12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5tb2JpbGUtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLm1vYmlsZS12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG4gIC5taW4taGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDc5cHgpIHtcbiAgLm1pbi12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuLmotcHAtbW9ja3VwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuXG5idXR0b24sXG4uYnRuLFxuYnV0dG9uLS1wcmltYXJ5LFxuLmJ0bi0tcHJpbWFyeSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1pbi1vdXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIG91dGxpbmU6IDA7XG4gIGJvcmRlcjogMDsgfVxuICBidXR0b246aG92ZXIsXG4gIC5idG46aG92ZXIsXG4gIGJ1dHRvbi0tcHJpbWFyeTpob3ZlcixcbiAgLmJ0bi0tcHJpbWFyeTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIGJ1dHRvbjpob3ZlciwgYnV0dG9uOmZvY3VzLFxuICAuYnRuOmhvdmVyLFxuICBidXR0b24tLXByaW1hcnk6aG92ZXIsXG4gIC5idG4tLXByaW1hcnk6aG92ZXIsXG4gIC5idG46Zm9jdXMsXG4gIGJ1dHRvbi0tcHJpbWFyeTpmb2N1cyxcbiAgLmJ0bi0tcHJpbWFyeTpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIGJ1dHRvbi0tcHJpbWFyeSxcbiAgLmJ0bi0tcHJpbWFyeSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTBjNjNmO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDEwcHggMjJweDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgYnV0dG9uLS1wcmltYXJ5OmhvdmVyLFxuICAgIC5idG4tLXByaW1hcnk6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmYTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgcmdiYSgzNywgMzcsIDM3LCAwLjA1KTtcbiAgICAgIGNvbG9yOiAjYTBjNjNmOyB9XG5cbi5kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uanMtZHJvcGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmpzLWRyb3Bkb3duOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXRvcDogNnB4IHNvbGlkICMwMDA7XG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogLTE1cHg7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTFweDsgfVxuICAuanMtZHJvcGRvd24uZHJvcHBlZDphZnRlciB7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICBib3JkZXItYm90dG9tOiA2cHggc29saWQgIzAwMDtcbiAgICBib3JkZXItdG9wOiAwOyB9XG5cbi5qcy1kcm9wZG93bi1jb250IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDk5OTk7IH1cblxuLmluZm8tYmxvY2sge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwYWRkaW5nOiAzNXB4IDkwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmluZm8tYmxvY2sge1xuICAgICAgcGFkZGluZzogMjVweCAxNXB4OyB9IH1cbiAgLmluZm8tYmxvY2tfX2hlYWRpbmcge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgcGFkZGluZzogMCAwIDI0cHg7XG4gICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLyogLS0tLS0tLS0tLS0gTm9uLVJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovXG4gICAgLyogLS0tLS0tLS0tLS0gUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi8gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxNjAwcHgpLCAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgICAgIC5pbmZvLWJsb2NrX19oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICBwYWRkaW5nOiAwIDAgMTVweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTVweDsgfSB9XG4gICAgLmluZm8tYmxvY2tfX2hlYWRpbmcubCB7XG4gICAgICBmb250LXNpemU6IDUwcHg7XG4gICAgICAvKiAtLS0tLS0tLS0tLSBOb24tUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi9cbiAgICAgIC8qIC0tLS0tLS0tLS0tIFJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxNjAwcHgpLCAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgICAgICAgLmluZm8tYmxvY2tfX2hlYWRpbmcubCB7XG4gICAgICAgICAgZm9udC1zaXplOiAzNXB4OyB9IH1cbiAgICAuaW5mby1ibG9ja19faGVhZGluZzpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBib3R0b206IDFweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuICAgIC5pbmZvLWJsb2NrX19oZWFkaW5nLm5vLWxpbmU6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmluZm8tYmxvY2tfX2NvbnRlbnQge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAvKiAtLS0tLS0tLS0tLSBOb24tUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi9cbiAgICAvKiAtLS0tLS0tLS0tLSBSZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqLyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDE2MDBweCksIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAgICAgLmluZm8tYmxvY2tfX2NvbnRlbnQge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7IH0gfVxuICAuaW5mby1ibG9ja19fYWN0aW9uIHtcbiAgICBtYXJnaW46IDMwcHggMCAwOyB9XG5cbi5wb3B1cCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIG1pbi13aWR0aDogNjAlO1xuICBtYXgtd2lkdGg6IDk1JTtcbiAgbWF4LWhlaWdodDogOTUlO1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwYWRkaW5nOiA0MHB4IDUwcHggNTBweDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC8qIC0tLS0tLS0tLS0tIE5vbi1SZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLSBSZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqLyB9XG4gIC5wb3B1cCA+ICoge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDBweCk7IH1cbiAgLnBvcHVwLmd1dHRlciB7XG4gICAgcGFkZGluZzogNDBweCAxOTVweCA1MHB4OyB9XG4gIC5wb3B1cC5uYXJyb3cge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICB3aWR0aDogNTU1cHg7XG4gICAgLyogLS0tLS0tLS0tLS0gTm9uLVJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovXG4gICAgLyogLS0tLS0tLS0tLS0gUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi8gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxNjAwcHgpLCAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgICAgIC5wb3B1cC5uYXJyb3cge1xuICAgICAgICB3aWR0aDogNDAwcHg7IH0gfVxuICAucG9wdXAgLm1haW5fX2Zvcm1fX2NvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWRldmljZS13aWR0aDogMTYwMHB4KSwgKG1heC13aWR0aDogMTYwMHB4KSB7XG4gICAgLnBvcHVwIHtcbiAgICAgIHBhZGRpbmc6IDI1cHggMTVweCAyNXB4OyB9XG4gICAgICAucG9wdXAuZ3V0dGVyIHtcbiAgICAgICAgcGFkZGluZzogMjVweCAxNXB4IDI1cHg7IH0gfVxuICAucG9wdXAtd3JhcHBlciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDIwLCAxOCwgMzUsIDAuODEpO1xuICAgIHotaW5kZXg6IDk5OTk7IH1cbiAgLnBvcHVwX19oZWFkaW5nIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiA1MHB4O1xuICAgIHBhZGRpbmc6IDAgMCAyNHB4O1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8qIC0tLS0tLS0tLS0tIE5vbi1SZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqL1xuICAgIC8qIC0tLS0tLS0tLS0tIFJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWRldmljZS13aWR0aDogMTYwMHB4KSwgKG1heC13aWR0aDogMTYwMHB4KSB7XG4gICAgICAucG9wdXBfX2hlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAgIC5wb3B1cF9faGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgcGFkZGluZzogMCAwIDE1cHg7XG4gICAgICAgIG1hcmdpbjogMCAwIDE1cHg7IH0gfVxuICAgIC5wb3B1cF9faGVhZGluZzpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBib3R0b206IDFweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuICAgIC5wb3B1cF9faGVhZGluZy0tbm8tbGluZTpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAucG9wdXBfX2NvbnRlbnQge1xuICAgIGZvbnQtc2l6ZTogMTlweDsgfVxuICAucG9wdXBfX2FjdGlvbiB7XG4gICAgbWFyZ2luOiAzMHB4IDAgMDsgfVxuXG4ucG9wdXAtd3JhcHBlciA+IC5idG4tLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEycHg7XG4gIHJpZ2h0OiAyMHB4OyB9XG5cbi5wb3B1cCA+IC5idG4tLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEycHg7XG4gIHJpZ2h0OiAyMHB4OyB9XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSwgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtOTk5OXB4OyB9XG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LWZhbWlseTogXCJBdmVuaXIgTmV4dFwiLCBcIlRpbWVzIE5ldyBSb21hblwiLCBzZXJpZjtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiAjNDQ0NDQ0O1xuICAgIHRyYW5zaXRpb246IGFsbCAuMTVzIGVhc2UtaW4tb3V0O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgLyogLS0tLS0tLS0tLS0gTm9uLVJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovXG4gICAgLyogLS0tLS0tLS0tLS0gUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi8gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxNjAwcHgpLCAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6YmVmb3JlLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMTBweCAwIHJnYmEoMzcsIDM3LCAzNywgMC4wNSk7XG4gICAgICBib3JkZXI6IHNvbGlkIDFweCAjOTU5NTk1O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxOHB4IDE1cHg7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjE1cyBlYXNlLWluLW91dDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTFweDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAvKiAtLS0tLS0tLS0tLSBOb24tUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi9cbiAgICAgIC8qIC0tLS0tLS0tLS0tIFJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxNjAwcHgpLCAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6YmVmb3JlLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpiZWZvcmUge1xuICAgICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMi44cHggMTEuNnB4OyB9IH1cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDpob3ZlcjpiZWZvcmUsIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOmhvdmVyOmJlZm9yZSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2EwYzYzZjsgfVxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSwgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogI2EwYzYzZjsgfVxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHdpZHRoOiA5cHg7XG4gICAgaGVpZ2h0OiA3cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNXB4O1xuICAgIGxlZnQ6IDNweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIGJvcmRlcjogM3B4IHNvbGlkICNhMGM2M2Y7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgM3B4IDNweDtcbiAgICB6LWluZGV4OiAyOyB9XG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpmb2N1cyArIGxhYmVsOmJlZm9yZSwgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzICsgbGFiZWw6YmVmb3JlIHtcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4IDNweCAjYTBjNjNmOyB9XG4gIC52YWxpZGF0ZSBpbnB1dFt0eXBlPVwicmFkaW9cIl06aW52YWxpZCArIGxhYmVsLCAudmFsaWRhdGUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmludmFsaWQgKyBsYWJlbCB7XG4gICAgY29sb3I6ICNlNDAwMDA7IH1cbiAgICAudmFsaWRhdGUgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmludmFsaWQgKyBsYWJlbDpiZWZvcmUsIC52YWxpZGF0ZSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06aW52YWxpZCArIGxhYmVsOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBjMWM2O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZTQwMDAwOyB9XG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXS5jb2xvciwgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLmNvbG9yIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDExMHB4O1xuICAgIGhlaWdodDogMTEwcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgICAvKiAtLS0tLS0tLS0tLSBOb24tUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi9cbiAgICAvKiAtLS0tLS0tLS0tLSBSZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqLyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDE2MDBweCksIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLmNvbG9yLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0uY29sb3Ige1xuICAgICAgICB3aWR0aDogNzVweDtcbiAgICAgICAgaGVpZ2h0OiA3NXB4OyB9IH1cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0uY29sb3I6Oi1tcy1jaGVjaywgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLmNvbG9yOjotbXMtY2hlY2sge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDA7IH1cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0uY29sb3IgKyAuY2hlY2tlZCwgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLmNvbG9yICsgLmNoZWNrZWQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDU1cHg7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3ODZmY2U7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL21pc2MvY2hlY2sucG5nKTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xNXB4LCAtMTVweCk7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAvKiAtLS0tLS0tLS0tLSBOb24tUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi9cbiAgICAgIC8qIC0tLS0tLS0tLS0tIFJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxNjAwcHgpLCAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLmNvbG9yICsgLmNoZWNrZWQsIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXS5jb2xvciArIC5jaGVja2VkIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTBweCwgLTI1cHgpO1xuICAgICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICAgIGhlaWdodDogMTZweDsgfSB9XG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLmNvbG9yOmNoZWNrZWQsIGlucHV0W3R5cGU9XCJyYWRpb1wiXS5jb2xvcjpmb2N1cywgaW5wdXRbdHlwZT1cInJhZGlvXCJdLmNvbG9yOmhvdmVyLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0uY29sb3I6Y2hlY2tlZCwgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLmNvbG9yOmZvY3VzLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0uY29sb3I6aG92ZXIge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICM3ODZmY2UgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0uY29sb3I6Y2hlY2tlZCArIC5jaGVja2VkLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0uY29sb3I6Y2hlY2tlZCArIC5jaGVja2VkIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0uY29sb3IgfiAuY29sb3ItbGFiZWwsIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXS5jb2xvciB+IC5jb2xvci1sYWJlbCB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDAgMDtcbiAgICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBOZXh0XCIsIFwiVGltZXMgTmV3IFJvbWFuXCIsIHNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNDQ0O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgfVxuXG4uY29sb3ItYm94IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDA7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuY29sb3ItYm94LFxuICAuY29sb3ItYm94ICoge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuY29sb3ItYm94OmhvdmVyIC5jb2xvciB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICM3ODZmY2UgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG5cbi5yYWRpby1ib3gtLWltYWdlIGlucHV0ICsgbGFiZWwsIC5yYWRpby1ib3gtLXBob3RvIGlucHV0ICsgbGFiZWwsIC5jaGVjay1ib3gtLWltYWdlIGlucHV0ICsgbGFiZWwsIC5jaGVjay1ib3gtLXBob3RvIGlucHV0ICsgbGFiZWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnJhZGlvLWJveC0taW1hZ2UgaW5wdXQgKyBsYWJlbDpiZWZvcmUsIC5yYWRpby1ib3gtLXBob3RvIGlucHV0ICsgbGFiZWw6YmVmb3JlLCAuY2hlY2stYm94LS1pbWFnZSBpbnB1dCArIGxhYmVsOmJlZm9yZSwgLmNoZWNrLWJveC0tcGhvdG8gaW5wdXQgKyBsYWJlbDpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAucmFkaW8tYm94LS1pbWFnZSBpbnB1dCArIGxhYmVsIGltZywgLnJhZGlvLWJveC0tcGhvdG8gaW5wdXQgKyBsYWJlbCBpbWcsIC5jaGVjay1ib3gtLWltYWdlIGlucHV0ICsgbGFiZWwgaW1nLCAuY2hlY2stYm94LS1waG90byBpbnB1dCArIGxhYmVsIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgIG1hcmdpbi1sZWZ0OiAzNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ucmFkaW8tYm94LS1waG90byBpbnB1dCArIGxhYmVsIGltZywgLmNoZWNrLWJveC0tcGhvdG8gaW5wdXQgKyBsYWJlbCBpbWcge1xuICBtYXJnaW4tbGVmdDogMXB4OyB9XG5cbi5yYWRpby1ib3gtLXBob3RvLS1zIGlucHV0ICsgbGFiZWwgaW1nLCAuY2hlY2stYm94LS1waG90by0tcyBpbnB1dCArIGxhYmVsIGltZyB7XG4gIG1heC1oZWlnaHQ6IDE1MHB4OyB9XG5cbi5zZXBhcmF0b3Ige1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAzNXB4IGF1dG8gIWltcG9ydGFudDsgfVxuICAuc2VwYXJhdG9yOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAuc2VwYXJhdG9yLS12ZXJ0aWNhbDphZnRlciB7XG4gICAgd2lkdGg6IDRweDtcbiAgICBoZWlnaHQ6IDc4cHg7IH1cbiAgLnNlcGFyYXRvci0taG9yaXpvbnRhbDphZnRlciB7XG4gICAgaGVpZ2h0OiA1cHg7XG4gICAgd2lkdGg6IDgycHg7IH1cbiAgLnNlcGFyYXRvci0tYmxhY2s6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICMxZTE1MTM7IH1cbiAgLnNlcGFyYXRvci0td2hpdGU6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgLnNlcGFyYXRvci0tZ3JlZW46YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IGdyZWVuOyB9XG5cbnZpZGVvLCBpZnJhbWUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSBhdXRvO1xuICB3aWR0aDogODIwcHg7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4udmlkZW8td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4udmlkZW8tb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgei1pbmRleDogOTtcbiAgdHJhbnNpdGlvbjogYWxsIDFzIGVhc2U7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAudmlkZW8tb3ZlcmxheTpob3ZlciAudmlkZW8tcGxheS1idG4ge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuICAudmlkZW8tb3ZlcmxheTphY3RpdmUgLnZpZGVvLXBsYXktYnRuIHtcbiAgICBib3gtc2hhZG93OiAwIDAgNTBweCAxNXB4ICNmZmY7IH1cbiAgLnZpZGVvLW92ZXJsYXktLWhpZGRlbiB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnZpZGVvLXBsYXktYnRuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB3aWR0aDogMTMycHg7XG4gIGhlaWdodDogMTMycHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm9yZGVyOiA3cHggc29saWQgI2ZmZjtcbiAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgLyogLS0tLS0tLS0tLS0gTm9uLVJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tIFJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovIH1cbiAgLnZpZGVvLXBsYXktYnRuOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDM2cHggMCAzNnB4IDU0cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZmZmO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxNjAwcHgpLCAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgICAudmlkZW8tcGxheS1idG4ge1xuICAgICAgd2lkdGg6IDEwN3B4O1xuICAgICAgaGVpZ2h0OiAxMDdweDsgfVxuICAgICAgLnZpZGVvLXBsYXktYnRuOmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci13aWR0aDogMjlweCAwIDI5cHggNDNweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC52aWRlby1wbGF5LWJ0biB7XG4gICAgICB3aWR0aDogMzlweDtcbiAgICAgIGhlaWdodDogMzlweDtcbiAgICAgIGJvcmRlci13aWR0aDogM3B4OyB9XG4gICAgICAudmlkZW8tcGxheS1idG46YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxMHB4IDAgMTBweCAxNnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMnB4OyB9IH1cblxuLmFib3V0X19pbmZvX19ibG9jayB7XG4gIHdpZHRoOiA0NTdweDtcbiAgaGVpZ2h0OiAzNDFweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICBwYWRkaW5nLXRvcDogMzVweDtcbiAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgbWFyZ2luLXRvcDogNzVweDtcbiAgbWFyZ2luLWxlZnQ6IDEwMHB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmFib3V0X19pbmZvX19ibG9jayB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4OyB9IH1cblxuLmJvYXJkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIHBhZGRpbmc6IDEwMHB4IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC8qIC0tLS0tLS0tLS0tIE5vbi1SZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLSBSZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqLyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxNjAwcHgpLCAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgICAuYm9hcmQge1xuICAgICAgcGFkZGluZzogNzVweCAwOyB9IH1cbiAgLmJvYXJkOmZpcnN0LWNoaWxkIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAxMzVweCk7IH1cbiAgLmJvYXJkLmF1dG8ge1xuICAgIG1pbi1oZWlnaHQ6IDA7IH1cbiAgLmJvYXJkX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiA0NXB4IDAgNjVweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjEpO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAuYm9hcmRfX3RpdGxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMCAwIDQ1cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogNzBweDtcbiAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIC8qIC0tLS0tLS0tLS0tIE5vbi1SZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqL1xuICAgIC8qIC0tLS0tLS0tLS0tIFJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWRldmljZS13aWR0aDogMTYwMHB4KSwgKG1heC13aWR0aDogMTYwMHB4KSB7XG4gICAgICAuYm9hcmRfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDAgMTVweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuYm9hcmRfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiA0MHB4OyB9IH1cbiAgLmJvYXJkX19hY3Rpb25zIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAuYm9hcmRfX2FjdGlvbnMgW2NsYXNzKj1cImJ0blwiXSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgbWluLXdpZHRoOiAxOTRweDtcbiAgICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5ib2FyZF9fYWN0aW9ucyBbY2xhc3MqPVwiYnRuXCJdIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAgYXV0byAzMHB4ICFpbXBvcnRhbnQ7IH0gfVxuICAgICAgLmJvYXJkX19hY3Rpb25zIFtjbGFzcyo9XCJidG5cIl06bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgLmJvYXJkX19hY3Rpb25zIC5zb2NpYWwtYnRuIHtcbiAgICAgIHBhZGRpbmc6IDhweCAxMHB4O1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgICAgLmJvYXJkX19hY3Rpb25zIC5zb2NpYWwtYnRuIGkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogOHB4OyB9XG5cbiNjb250YWN0Rm9ybSB7XG4gIGJvcmRlci1yYWRpdXM6IDNweDsgfVxuICAjY29udGFjdEZvcm06YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAxNXB4IDA7IH1cbiAgI2NvbnRhY3RGb3JtLmZhaWw6YWZ0ZXIge1xuICAgIGNvbG9yOiByZWQ7XG4gICAgY29udGVudDogXCJTb3JyeS4gVGhlIGZvcm0gd2Fzbid0IHNlbnQuIFBsZWFzZSB0cnkgYWdhaW4gbGF0ZXJcIjsgfVxuICAjY29udGFjdEZvcm0uc2VudDphZnRlciB7XG4gICAgY29sb3I6IGdyZWVuO1xuICAgIGNvbnRlbnQ6IFwiVGhhbmsgeW91LiBUaGUgZm9ybSB3YXMgc2VudC5cIjsgfVxuXG4uY29udGFjdHNfX3NlY3Rpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNzBweDsgfVxuXG4uY29udGFjdHNfX2hlYWRlciB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAyNHB4OyB9XG5cbi5jb250YWN0dXNfX2FkZHJlc3NfX3NlY3Rpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5jb250YWN0dXNfX2FkZHJlc3NfX3NlY3Rpb24ge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH0gfVxuXG4uY29udGFjdHNfX3JvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDsgfVxuICAuY29udGFjdHNfX3JvdyAuY29udGFjdHNfX2NvbC0yIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIHBhZGRpbmc6IDAgMTVweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgLmNvbnRhY3RzX19yb3cge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAuY29udGFjdHNfX3JvdyAuY29udGFjdHNfX2NvbC0yIHtcbiAgICAgICAgZmxleDogMSAxIDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDA7IH0gfVxuXG4uY29udGFjdHVzX19pbWdfX3dyYXAge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgcmdiYSgzNywgMzcsIDM3LCAwLjA1KTsgfVxuXG4uY29udGFjdHVzX19pbWdfX3dyYXAgPiBpbWcge1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgLmNvbnRhY3R1c19faW1nX193cmFwID4gaW1nIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiA0NSU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9IH1cblxuLmNvbnRhY3R1c19fbG9nbyB7XG4gIHBhZGRpbmc6IDMwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgIC5jb250YWN0dXNfX2xvZ28ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH0gfVxuXG4uYWRkcmVzc19fc2VjdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA0M3B4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmFkZHJlc3NfX3NlY3Rpb24gW2NsYXNzKj1cImZhXCJdIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxOHB4O1xuICAgIGNvbG9yOiAjYTBjNjNmO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmFkZHJlc3NfX3NlY3Rpb24ge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfSB9XG4gIC5hZGRyZXNzX19zZWN0aW9uIC5sb2NhdGlvbiB7XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAvKiAtLS0tLS0tLS0tLSBOb24tUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi9cbiAgICAvKiAtLS0tLS0tLS0tLSBSZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqLyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDE2MDBweCksIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAgICAgLmFkZHJlc3NfX3NlY3Rpb24gLmxvY2F0aW9uIHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5hZGRyZXNzX19zZWN0aW9uIC5sb2NhdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gIC5hZGRyZXNzX19zZWN0aW9uIHAgYTpob3ZlciB7XG4gICAgY29sb3I6ICNhMGM2M2Y7IH1cbiAgLmFkZHJlc3NfX3NlY3Rpb24gLmNpdHkge1xuICAgIHBhZGRpbmctdG9wOiAzOHB4O1xuICAgIGNvbG9yOiAjYTBjNjNmO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5hZGRyZXNzX19zZWN0aW9uIC5pbmRleCB7XG4gICAgcGFkZGluZy10b3A6IDM3cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICAgIGZvbnQtc2l6ZTogMjRweDsgfVxuICAuYWRkcmVzc19fc2VjdGlvbiAuYWRkcmVzcyB7XG4gICAgcGFkZGluZy10b3A6IDI0cHg7XG4gICAgZm9udC1zaXplOiAyNHB4OyB9XG4gIC5hZGRyZXNzX19zZWN0aW9uIC5waG9uZSB7XG4gICAgcGFkZGluZy10b3A6IDM5cHg7XG4gICAgZm9udC1zaXplOiAyNHB4OyB9XG4gIC5hZGRyZXNzX19zZWN0aW9uIC5lbWFpbCB7XG4gICAgcGFkZGluZy10b3A6IDM1cHg7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDsgfVxuXG4uc29jaWFsLWxpbmtzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwIDIwcHggMzBweCAzMHB4O1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICAuc29jaWFsLWxpbmtzIGEge1xuICAgIGNvbG9yOiAjYTBjNjNmO1xuICAgIGZvbnQtc2l6ZTogNTJweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAuc29jaWFsLWxpbmtzIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMwMDA7IH1cblxuLmZvcm0tZ3JvdXAge1xuICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAuZm9ybS1ncm91cCBsYWJlbCB7XG4gICAgY29sb3I6ICNhMGM2M2Y7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG4gIC5mb3JtLWdyb3VwIGlucHV0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgY29sb3I6IHJnYmEoNTEsIDUxLCA1MSwgMC41KTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggMCByZ2JhKDM3LCAzNywgMzcsIDAuMDUpO1xuICAgIGJvcmRlcjogc29saWQgMXB4ICM5NTk1OTU7XG4gICAgcGFkZGluZy1sZWZ0OiA5cHg7XG4gICAgcGFkZGluZy10b3A6IDlweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4OyB9XG4gIC5mb3JtLWdyb3VwIHNlbGVjdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIDAuNSk7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgcmdiYSgzNywgMzcsIDM3LCAwLjA1KTtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjOTU5NTk1O1xuICAgIHBhZGRpbmctbGVmdDogOXB4O1xuICAgIHBhZGRpbmctdG9wOiA5cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDsgfVxuICAuZm9ybS1ncm91cCB0ZXh0YXJlYSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIDAuNSk7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgcmdiYSgzNywgMzcsIDM3LCAwLjA1KTtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjOTU5NTk1O1xuICAgIHBhZGRpbmctbGVmdDogOXB4O1xuICAgIHBhZGRpbmctdG9wOiA5cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICByZXNpemU6IG5vbmU7IH1cblxuLmZvcm0tZ3JvdXAucmVxdWlyZWQgbGFiZWw6OmFmdGVyIHtcbiAgY29udGVudDogXCIqXCI7IH1cblxuLmxpY2Vuc2VfX3RleHQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiAzOHB4OyB9XG5cbi5saWNlbnNlX19saW5rX19idG4ge1xuICBjb2xvcjogI2EwYzYzZjsgfVxuXG4uc3VibWl0X19idG4ge1xuICBjb2xvcjogI2ZmZjtcbiAgd2lkdGg6IDIxM3B4O1xuICBoZWlnaHQ6IDM1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhMGM2M2Y7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5jdXN0b21lcnNfX3NlY3Rpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNzBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuY3VzdG9tZXJzX19zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDsgfSB9XG5cbi5jdXN0b21lcnNfX2hlYWRlciB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi10b3A6IDYwcHg7XG4gIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAyNHB4OyB9XG5cbi5jdXN0b21lcnNfX3NlcGFyYXRvciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYTBjNjNmO1xuICBsaW5lLWhlaWdodDogMC4xZW07XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5jdXN0b21lcnNfX3RleHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMzVweDtcbiAgcGFkZGluZy1yaWdodDogMzVweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuICAuY3VzdG9tZXJzX190ZXh0IHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuICAgIC5jdXN0b21lcnNfX3RleHQgcCB7XG4gICAgICBwYWRkaW5nOiA2cHggMCA2cHg7IH1cbiAgLmN1c3RvbWVyc19fdGV4dCAucXVvdGUtaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGZvbnQtc2l6ZTogMjdweDtcbiAgICBjb2xvcjogI2EwYzYzZjsgfVxuICAuY3VzdG9tZXJzX190ZXh0IC5xdW90ZS1pY29uOmZpcnN0LWNoaWxkIHtcbiAgICB0b3A6IC0xMHB4O1xuICAgIGxlZnQ6IDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgLmN1c3RvbWVyc19fdGV4dCAucXVvdGUtaWNvbjpsYXN0LWNoaWxkIHtcbiAgICBib3R0b206IC0xMHB4O1xuICAgIHJpZ2h0OiAwcHg7IH1cblxuLnZpc2l0X19saW5rX19idG4ge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjYTBjNjNmO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmbG9hdDogbGVmdDtcbiAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1pbi1vdXQ7IH1cbiAgLnZpc2l0X19saW5rX19idG46aG92ZXIge1xuICAgIGNvbG9yOiBibGFjazsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAudmlzaXRfX2xpbmtfX2J0biB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAxNXB4O1xuICAgICAgbWFyZ2luLXRvcDogMmVtOyB9IH1cblxuLnZpc2l0X19saW5rX19idG46OmFmdGVyIHtcbiAgY29udGVudDogJ+KGkic7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG5cbi5zdXBwb3J0X19saW5rX19idG4ge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICNhMGM2M2Y7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG4uY3VzdG9tZXJzX19zbGlkZXIge1xuICBoZWlnaHQ6IDQwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLnByZXZfX2J0biB7XG4gIG9wYWNpdHk6IDAuMztcbiAgY29sb3I6ICMzMzM7XG4gIGZvbnQtc2l6ZTogMzJweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwcHg7IH1cblxuLm5leHRfX2J0biB7XG4gIG9wYWNpdHk6IDAuMztcbiAgY29sb3I6ICMzMzM7XG4gIGZvbnQtc2l6ZTogMzJweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMHB4OyB9XG5cbi5leHBlcnRpc2VfX3NlY3Rpb25fX3dyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWZhOyB9XG5cbi5leHBlcnRpc2VfX3NlY3Rpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNzBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuZXhwZXJ0aXNlX19zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4OyB9IH1cblxuLmV4cGVydGlzZV9fc2VwYXJhdG9yIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNhMGM2M2Y7XG4gIGxpbmUtaGVpZ2h0OiAwLjFlbTtcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmV4cGVydGlzZV9faGVhZGVyIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDI0cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmV4cGVydGlzZV9faGVhZGVyIHtcbiAgICAgIG1hcmdpbjogNDBweCAwIDEwcHg7IH0gfVxuXG4uZm9vdGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDg1cHg7XG4gIGJhY2tncm91bmQ6ICMzNjM2MzY7XG4gIHBhZGRpbmc6IDMxcHggMCA0MXB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5mb290ZXIge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgLmZvb3RlciBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5mb290ZXJfX25hdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgLmZvb3Rlcl9fbmF2LWNvbCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgICAgLmZvb3Rlcl9fbmF2LWNvbC0td2lkZSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDI0MHB4O1xuICAgICAgICB3aWR0aDogMjQwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5mb290ZXJfX25hdiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgIC5mb290ZXJfX25hdi1jb2wge1xuICAgICAgICAgIGZsZXg6IDEgMCAxMDAlO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgICAgIC5mb290ZXJfX25hdi1jb2wgKyAuZm9vdGVyX19uYXYtY29sIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH0gfVxuICAgIC5mb290ZXJfX25hdiB1bCB7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgICAgLmZvb3Rlcl9fbmF2IHVsIGxpIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDMzcHg7IH1cbiAgICAgICAgLmZvb3Rlcl9fbmF2IHVsIGxpOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAgIC5mb290ZXJfX25hdiB1bCBsaTpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgLmZvb3Rlcl9fbmF2IHVsIGxpIGEge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAvKiAtLS0tLS0tLS0tLSBOb24tUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi9cbiAgICAgICAgICAvKiAtLS0tLS0tLS0tLSBSZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqLyB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDE2MDBweCksIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAgICAgICAgICAgLmZvb3Rlcl9fbmF2IHVsIGxpIGEge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICAgICAgICAgIC5mb290ZXJfX25hdiB1bCBsaSBhOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjYTBjNjNmOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmZvb3Rlcl9fbmF2IHVsIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgICAgICAgIC5mb290ZXJfX25hdiB1bCBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IH0gfVxuXG4uaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxN3B4IDA7IH1cbiAgLmhlYWRlcl9fbG9nbyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMjYwcHg7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvIDAgMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmhlYWRlcl9fbG9nbyB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDE1cHg7IH0gfVxuICAgIC5oZWFkZXJfX2xvZ28gYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBib3JkZXI6IDA7IH1cbiAgICAgIC5oZWFkZXJfX2xvZ28gYTpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC44OyB9XG4gICAgLmhlYWRlcl9fbG9nbyBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmhlYWRlcl9fbmF2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5oZWFkZXJfX25hdiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAuaGVhZGVyX19uYXYgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0cmV0Y2g7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuaGVhZGVyX19uYXYgdWwge1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9IH1cbiAgICAgIC5oZWFkZXJfX25hdiB1bCAuanMtZHJvcGRvd24tY29udCB7XG4gICAgICAgIGJveC1zaGFkb3c6IC0xNXB4IDAgMCAwICNmZmYsIDE1cHggMCAwIDAgI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICAgICAgLmhlYWRlcl9fbmF2IHVsIGxpIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwIDMwcHg7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICAgICAgLmhlYWRlcl9fbmF2IHVsIGxpOmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAuaGVhZGVyX19uYXYgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAgIC5oZWFkZXJfX25hdiB1bCBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgLmhlYWRlcl9fbmF2IHVsIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDsgfSB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0NzlweCkge1xuICAgICAgICAgIC5oZWFkZXJfX25hdiB1bCBsaSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAgICAgICAuaGVhZGVyX19uYXYgdWwgbGkgYSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgICAuaGVhZGVyX19uYXYgdWwgbGkgYTpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogI2EwYzYzZjsgfVxuICAgICAgICAgIC5oZWFkZXJfX25hdiB1bCBsaSBhLmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogI2EwYzYzZjsgfVxuXG4uaGlzdG9yeV9fc2VjdGlvbl9fd3JhcHBlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuLmhpc3RvcnlfX3NlY3Rpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNzBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgLmhpc3RvcnlfX3NlY3Rpb24ge1xuICAgICAgcGFkZGluZzogMjBweCAwIDA7IH0gfVxuXG4uaGlzdG9yeV9fc2VwYXJhdG9yIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNhMGM2M2Y7XG4gIGxpbmUtaGVpZ2h0OiAwLjFlbTtcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmhpc3RvcnlfX2hlYWRlciB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAyNHB4OyB9XG5cbi5ob21lX19saW5rc19fd3JhcHBlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuLmhvbWVfX2xpbmtzX19zZWN0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLXRvcDogNjVweDtcbiAgcGFkZGluZy1ib3R0b206IDQ1cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmhvbWVfX2xpbmtzX19zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7IH0gfVxuXG4uaG9tZV9fbGlua3NfX2ZlYXR1cmVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTUwcHgpIHtcbiAgICAuaG9tZV9fbGlua3NfX2ZlYXR1cmVzIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9IH1cblxuLmhvbWVfX2xpbmtzX19pbWdfX3dyYXAge1xuICBwYWRkaW5nOiAxMHB4O1xuICB3aWR0aDogMTY2cHg7XG4gIGhlaWdodDogMTU2cHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggMCByZ2JhKDM3LCAzNywgMzcsIDAuMDUpO1xuICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0NzlweCkge1xuICAgIC5ob21lX19saW5rc19faW1nX193cmFwIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9IH1cblxuLmhvbWVfX2xpbmtzX19pbWdfX2Rlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMTJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmhvbWVfX2xpbmtzX19pbWdfX2Rlc2NyaXB0aW9uIC50aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAvKiAtLS0tLS0tLS0tLSBOb24tUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0gUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi8gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWRldmljZS13aWR0aDogMTYwMHB4KSwgKG1heC13aWR0aDogMTYwMHB4KSB7XG4gICAgLmhvbWVfX2xpbmtzX19pbWdfX2Rlc2NyaXB0aW9uIC50aXRsZSB7XG4gICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuaG9tZV9fbGlua3NfX2ltZ19fZGVzY3JpcHRpb24gLnRpdGxlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuaG9tZV9fbGlua3NfX2ltZ19fZGVzY3JpcHRpb24gLnRpdGxlOmFmdGVyIHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG87IH0gfVxuXG4uaG9tZV9faWNvbiB7XG4gIHdpZHRoOiA1NXB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIG1hcmdpbi1sZWZ0OiAzMCU7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC8qIC0tLS0tLS0tLS0tIE5vbi1SZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLSBSZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqLyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxNjAwcHgpLCAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgICAuaG9tZV9faWNvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogNDAlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgIC5ob21lX19pY29uIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA0MCU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuaG9tZV9faWNvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogNDAlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG4gICAgLmhvbWVfX2ljb24ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDQwJTsgfSB9XG5cbi5zdGFydF9faWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9ob21lL3N0YXJ0X2ljb24ucG5nXCIpOyB9XG5cbi5pbXBsZW1lbnRhdGlvbl9faWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9ob21lL2ltcGxlbWVudGF0aW9uX2ljb24ucG5nXCIpOyB9XG5cbi55ZWFyc19faWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9ob21lL3llYXJzX2ljb24ucG5nXCIpOyB9XG5cbi5zdXBwb3J0X19pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2hvbWUvc3VwcG9ydF9pY29uLnBuZ1wiKTsgfVxuXG4ub2Zmc2hvcmVfX2ljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaG9tZS9vZmZzaG9yZV9pY29uLnBuZ1wiKTsgfVxuXG4uaG9tZV9fc2VydmljZXNfX3dyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaG9tZS9zZXJ2aWNlcy5wbmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuXG4uaG9tZV9fc2VydmljZXNfX3NlY3Rpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNzBweDsgfVxuXG4uaG9tZV9fc2VydmljZXNfX2hlYWRlciB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAyNHB4OyB9XG5cbi5ob21lX19zZXJ2aWNlc19fZmVhdHVyZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExNTBweCkge1xuICAgIC5ob21lX19zZXJ2aWNlc19fZmVhdHVyZXMge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH0gfVxuXG4uaG9tZV9fc2VydmljZXNfX2Jsb2NrIHtcbiAgd2lkdGg6IDI2MnB4O1xuICBtaW4taGVpZ2h0OiA0NTJweDtcbiAgbWFyZ2luOiAxNXB4IDQwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm94LXNoYWRvdzogMCAwIDVweCAwIHJnYmEoMzcsIDM3LCAzNywgMC4wMyk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExMDBweCkge1xuICAgIC5ob21lX19zZXJ2aWNlc19fYmxvY2sge1xuICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgIHBhZGRpbmc6IDAgMCAxNXB4O1xuICAgICAgbWFyZ2luOiAxNXB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG4gICAgLmhvbWVfX3NlcnZpY2VzX19ibG9jayB7XG4gICAgICBtYXJnaW46IDE1cHggYXV0bzsgfSB9XG5cbi5ob21lX19zZXJ2aWNlc19faW1nX19kZXNjcmlwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgIC5ob21lX19zZXJ2aWNlc19faW1nX19kZXNjcmlwdGlvbiB7XG4gICAgICBwYWRkaW5nOiAxNXB4ICFpbXBvcnRhbnQ7IH0gfVxuXG4uaG9tZV9fc2VydmljZXNfX2ltZ19fZGVzY3JpcHRpb24gLnRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgcGFkZGluZy1ib3R0b206IDEzcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBkaXNwbGF5OiBibG9jaztcbiAgLyogLS0tLS0tLS0tLS0gTm9uLVJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tIFJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDE2MDBweCksIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAgIC5ob21lX19zZXJ2aWNlc19faW1nX19kZXNjcmlwdGlvbiAudGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyMnB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmhvbWVfX3NlcnZpY2VzX19pbWdfX2Rlc2NyaXB0aW9uIC50aXRsZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLmhvbWVfX3NlcnZpY2VzX19pbWdfX2Rlc2NyaXB0aW9uIC50aXRsZTphZnRlciB7XG4gICAgICAgIG1hcmdpbjogMTBweCBhdXRvOyB9IH1cblxuLnJlYWRfX21vcmVfX2J0biB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICNhMGM2M2Y7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZsb2F0OiBsZWZ0O1xuICB0cmFuc2l0aW9uOiBhbGwgLjE1cyBlYXNlLWluLW91dDsgfVxuICAucmVhZF9fbW9yZV9fYnRuOmhvdmVyIHtcbiAgICBjb2xvcjogYmxhY2s7IH1cblxuLnJlYWRfX21vcmVfX2J0bjo6YWZ0ZXIge1xuICBjb250ZW50OiAn4oaSJztcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cblxuLmhvbWVfX3NlcnZpY2VzX19pbWdfX3dyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5ob21lX19zZXJ2aWNlc19faW1nX193cmFwIC5ob21lX19zZXJ2aWNlc19faW1nX193cmFwLWNvbnRlbnQsXG4gIC5ob21lX19zZXJ2aWNlc19faW1nX193cmFwIC5vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDsgfVxuICAgIC5ob21lX19zZXJ2aWNlc19faW1nX193cmFwIC5ob21lX19zZXJ2aWNlc19faW1nX193cmFwLWNvbnRlbnQgaW1nLFxuICAgIC5ob21lX19zZXJ2aWNlc19faW1nX193cmFwIC5vdmVybGF5IGltZyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5ob21lX19zZXJ2aWNlc19faW1nX193cmFwOmhvdmVyIC5ob21lX19zZXJ2aWNlc19faW1nX193cmFwLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5ob21lX19zZXJ2aWNlc19faW1nX193cmFwOmhvdmVyIC5ob21lX19zZXJ2aWNlc19faW1nX193cmFwLWNvbnRlbnQgLm92ZXJsYXkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG9wYWNpdHk6IC41O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2EwYzYzZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwOyB9XG4gICAgLmhvbWVfX3NlcnZpY2VzX19pbWdfX3dyYXA6aG92ZXIgLmhvbWVfX3NlcnZpY2VzX19pbWdfX3dyYXAtY29udGVudCBpbWcge1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5ob21lX19ib2FyZC1jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaG9tZV9fYm9hcmQtY2Fyb3VzZWwgLnNsaWNrLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAuaG9tZV9fYm9hcmQtY2Fyb3VzZWwgLnNsaWNrLWFycm93OmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgIC5ob21lX19ib2FyZC1jYXJvdXNlbCAuc2xpY2stYXJyb3c6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTJweDtcbiAgICAgIGJvcmRlci1jb2xvcjogIzMzMztcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICAgIGhlaWdodDogMTZweDsgfVxuICAgIC5ob21lX19ib2FyZC1jYXJvdXNlbCAuc2xpY2stYXJyb3cuc2xpY2stcHJldiB7XG4gICAgICBsZWZ0OiA0NXB4OyB9XG4gICAgICAuaG9tZV9fYm9hcmQtY2Fyb3VzZWwgLnNsaWNrLWFycm93LnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICBib3JkZXItd2lkdGg6IDAgMCAzcHggM3B4O1xuICAgICAgICBsZWZ0OiAxNXB4OyB9XG4gICAgLmhvbWVfX2JvYXJkLWNhcm91c2VsIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0OiA0NXB4OyB9XG4gICAgICAuaG9tZV9fYm9hcmQtY2Fyb3VzZWwgLnNsaWNrLWFycm93LnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDNweCAzcHggMDtcbiAgICAgICAgbGVmdDogMTBweDsgfVxuICAuaG9tZV9fYm9hcmQtY2Fyb3VzZWwgLnNsaWNrLWRvdHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDQwcHg7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB6LWluZGV4OiA5OTk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDc5cHgpIHtcbiAgICAgIC5ob21lX19ib2FyZC1jYXJvdXNlbCAuc2xpY2stZG90cyB7XG4gICAgICAgIGJvdHRvbTogNXB4OyB9IH1cbiAgICAuaG9tZV9fYm9hcmQtY2Fyb3VzZWwgLnNsaWNrLWRvdHMgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luOiAwIDJweDsgfVxuICAgICAgLmhvbWVfX2JvYXJkLWNhcm91c2VsIC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IHNvbGlkIDVweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAgIC5ob21lX19ib2FyZC1jYXJvdXNlbCAuc2xpY2stZG90cyBsaSBidXR0b246aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgICAgLmhvbWVfX2JvYXJkLWNhcm91c2VsIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cblxuLmhvbWVfX2luZm9fX2Jsb2NrIHtcbiAgd2lkdGg6IDQ1N3B4O1xuICBoZWlnaHQ6IDM0MXB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHBhZGRpbmctdG9wOiA2NXB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICBtYXJnaW4tdG9wOiA3NXB4O1xuICBtYXJnaW4tbGVmdDogMTAwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuaG9tZV9faW5mb19fYmxvY2sge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDsgfSB9XG5cbi5ob21lX190aXRsZSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwMDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIC8qIC0tLS0tLS0tLS0tIE5vbi1SZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLSBSZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqLyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxNjAwcHgpLCAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgICAuaG9tZV9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuLmhvbWVfX3NlcGFyYXRvciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYTBjNjNmO1xuICBsaW5lLWhlaWdodDogMC4xZW07XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5ob21lX19zdWJfX3RpdGxlIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzAwMDtcbiAgLyogLS0tLS0tLS0tLS0gTm9uLVJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tIFJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDE2MDBweCksIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAgIC5ob21lX19zdWJfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbi5ob21lX19oZWFkZXIge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgLyogLS0tLS0tLS0tLS0gTm9uLVJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tIFJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDE2MDBweCksIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAgIC5ob21lX19oZWFkZXIge1xuICAgICAgZm9udC1zaXplOiAzM3B4O1xuICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE3cHg7IH0gfVxuXG4ubGVhZGVyc2hpcF9fd3JhcHBlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5ZmE7IH1cblxuLmxlYWRlcnNoaXBfX3NlY3Rpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctYm90dG9tOiA2MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAubGVhZGVyc2hpcF9fc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDsgfSB9XG5cbi5sZWFkZXJzaGlwX19oZWFkZXIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW4tdG9wOiA2MHB4O1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMjRweDsgfVxuXG4ubGVhZGVyc2hpcF9fZmVhdHVyZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbjogMCAtMTVweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE1MHB4KSB7XG4gICAgLmxlYWRlcnNoaXBfX2ZlYXR1cmVzIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9IH1cblxuLmxlYWRlcnNoaXBfX2ltZ19fd3JhcCB7XG4gIHdpZHRoOiA0NThweDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gIG1hcmdpbi1yaWdodDogMTVweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiAwIDAgMjBweCAwIHJnYmEoMzcsIDM3LCAzNywgMC4yKTsgfVxuXG4ubGVhZGVyc2hpcF9faW1nX19kZXNjcmlwdGlvbiB7XG4gIHBhZGRpbmc6IDIycHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubGVhZGVyc2hpcF9faW1nX19kZXNjcmlwdGlvbiAudGl0bGUge1xuICBmb250LXNpemU6IDEuNWVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgLyogLS0tLS0tLS0tLS0gTm9uLVJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tIFJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDE2MDBweCksIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAgIC5sZWFkZXJzaGlwX19pbWdfX2Rlc2NyaXB0aW9uIC50aXRsZSB7XG4gICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubGVhZGVyc2hpcF9faW1nX19kZXNjcmlwdGlvbiAudGl0bGUge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5sZWFkZXJzaGlwX19pbWdfX2Rlc2NyaXB0aW9uIC50aXRsZTphZnRlciB7XG4gICAgICAgIG1hcmdpbjogMTBweCBhdXRvOyB9IH1cblxuLnJldmlld3NfX3NlY3Rpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHBhZGRpbmctdG9wOiA2MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNjBweDsgfVxuXG4ucmV2aWV3c19faGVhZGVyIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDI0cHg7IH1cblxuLnJldmlld3NfX3NlcGFyYXRvciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYTBjNjNmO1xuICBsaW5lLWhlaWdodDogMC4xZW07XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yZXZpZXdzX190ZXh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDM1cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgLnJldmlld3NfX3RleHQgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC1zdHlsZTogaXRhbGljOyB9XG4gICAgLnJldmlld3NfX3RleHQgcCB7XG4gICAgICBwYWRkaW5nOiA2cHggMCA2cHg7IH1cbiAgLnJldmlld3NfX3RleHQgLnF1b3RlLWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBmb250LXNpemU6IDI3cHg7XG4gICAgY29sb3I6ICNhMGM2M2Y7IH1cbiAgLnJldmlld3NfX3RleHQgLnF1b3RlLWljb246Zmlyc3QtY2hpbGQge1xuICAgIHRvcDogLTEwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAucmV2aWV3c19fdGV4dCAucXVvdGUtaWNvbjpsYXN0LWNoaWxkIHtcbiAgICBib3R0b206IC0xMHB4O1xuICAgIHJpZ2h0OiAwcHg7IH1cblxuLnJldmlld3NfX2ZlYXR1cmVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLnJldmlld3NfX2ltZ19fd3JhcCB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIG1hcmdpbjogMCA3MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAucmV2aWV3c19faW1nX193cmFwIHtcbiAgICAgIG1hcmdpbjogMCAxNXB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnJldmlld3NfX2ltZ19fd3JhcCB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLnJldmlld3NfX2ltZ19fd3JhcCBpbWcge1xuICAgICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG5cbi5zZXJ2aWNlc19fd3JhcHBlciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLnNlcnZpY2VzX19zZWN0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDcwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnNlcnZpY2VzX19zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9IH1cblxuLnNlcnZpY2VzX19oZWFkZXIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nLXRvcDogNDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDI0cHg7IH1cblxuLnNlcnZpY2VzX19mZWF0dXJlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTUwcHgpIHtcbiAgICAuc2VydmljZXNfX2ZlYXR1cmVzIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnNlcnZpY2VzX19mZWF0dXJlcyB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDAgMDsgfSB9XG5cbi5zZXJ2aWNlX19ibG9jayB7XG4gIHdpZHRoOiA5NDVweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiAwIDAgMTBweCAwIHJnYmEoMzcsIDM3LCAzNywgMC4wNSk7IH1cblxuLnNlcnZpY2VzX19pbWdfX3dyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNlcnZpY2VzX19pbWdfX3dyYXAgZGl2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLnNlcnZpY2VzX19mZWF0dXJlczpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG5cbi5zZXJ2aWNlc19fZmVhdHVyZXM6bnRoLWNoaWxkKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWZhOyB9XG5cbi5zZXJ2aWNlc19faW1nX19kZXNjcmlwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnNlcnZpY2VzX19pbWdfX2Rlc2NyaXB0aW9uIC50aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIHBhZGRpbmctYm90dG9tOiAxM3B4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC8qIC0tLS0tLS0tLS0tIE5vbi1SZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLSBSZXRpbmEgU2NyZWVucyAtLS0tLS0tLS0tLSAqLyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxNjAwcHgpLCAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgICAuc2VydmljZXNfX2ltZ19fZGVzY3JpcHRpb24gLnRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5zZXJ2aWNlc19faW1nX19kZXNjcmlwdGlvbiAudGl0bGUge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5zZXJ2aWNlc19faW1nX19kZXNjcmlwdGlvbiAudGl0bGU6YWZ0ZXIge1xuICAgICAgICBtYXJnaW46IDEwcHggYXV0bzsgfSB9XG5cbi5zZXJ2aWNlc19fbGlzdCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiA5cHg7IH1cbiAgLnNlcnZpY2VzX19saXN0IGxpIC5jaGVjay1pY29uIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgY29sb3I6ICNhMGM2M2Y7IH1cblxuLmhvbWVfX2JvYXJkIHtcbiAgcGFkZGluZzogMTUwcHggMDtcbiAgLyogLS0tLS0tLS0tLS0gTm9uLVJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tIFJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDE2MDBweCksIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAgIC5ob21lX19ib2FyZCB7XG4gICAgICBwYWRkaW5nOiAxMTBweCAwOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG4gICAgLmhvbWVfX2JvYXJkIHtcbiAgICAgIHBhZGRpbmc6IDM1cHggMDsgfSB9XG4iLCIvKiFcbiAqIEJvb3RzdHJhcCB2My4zLjYgKGh0dHA6Ly9nZXRib290c3RyYXAuY29tKVxuICogQ29weXJpZ2h0IDIwMTEtMjAxNSBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxuICovXG5cbi8vIENvcmUgdmFyaWFibGVzIGFuZCBtaXhpbnNcblxuQGltcG9ydCBcImJvb3RzdHJhcC92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbWl4aW5zXCI7XG5cbi8vIFJlc2V0IGFuZCBkZXBlbmRlbmNpZXNcbkBpbXBvcnQgXCJib290c3RyYXAvbm9ybWFsaXplXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3ByaW50XCI7XG5cbi8vIENvcmUgQ1NTXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3NjYWZmb2xkaW5nXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2dyaWRcIjtcblxuLy8gQ29tcG9uZW50c1xuXG4vLyBDb21wb25lbnRzIHcvIEphdmFTY3JpcHRcblxuLy8gVXRpbGl0eSBjbGFzc2VzXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3V0aWxpdGllc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9yZXNwb25zaXZlLXV0aWxpdGllc1wiO1xuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vL1xuLy8gMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbi8vIDIuIFByZXZlbnQgaU9TIGFuZCBJRSB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIGRldmljZSBvcmllbnRhdGlvbiBjaGFuZ2UsXG4vLyAgICB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb20uXG4vL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDFcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG59XG5cbi8vXG4vLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG4vL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLyBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4vLyBhbmQgRmlyZWZveC5cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4vL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4vLyAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4vL1xuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyAyXG59XG5cbi8vXG4vLyBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuLy8gUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbi8vXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbi8vIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbi8vXG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBMaW5rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuLy9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vL1xuLy8gSW1wcm92ZSByZWFkYWJpbGl0eSBvZiBmb2N1c2VkIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgYWxzbyBpbiBhblxuLy8gYWN0aXZlL2hvdmVyIHN0YXRlLlxuLy9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gVGV4dC1sZXZlbCBzZW1hbnRpY3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4vL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4vLyBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbi8vXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbi8vIEVtYmVkZGVkIGNvbnRlbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbi8vXG5cbmltZyB7XG4gIGJvcmRlcjogMDtcbn1cblxuLy9cbi8vIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuLy9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLyBHcm91cGluZyBjb250ZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4vL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vL1xuLy8gQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuLy9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vL1xuLy8gQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLy9cbi8vIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLy8gRm9ybXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuLy8gc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxuLy9cblxuLy9cbi8vIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbi8vICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuLy8gMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbi8vIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDFcbiAgZm9udDogaW5oZXJpdDsgLy8gMlxuICBtYXJnaW46IDA7IC8vIDNcbn1cblxuLy9cbi8vIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuLy9cblxuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4vLyBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuLy8gQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cbi8vIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbi8vXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2Bcbi8vICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuLy8gMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuLy8gMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbi8vICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbi8vXG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG4gIGN1cnNvcjogcG9pbnRlcjsgLy8gM1xufVxuXG4vL1xuLy8gUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbi8vXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLy9cbi8vIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbi8vXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuLy8gdGhlIFVBIHN0eWxlc2hlZXQuXG4vL1xuXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8vXG4vLyBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4vLyBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxuLy9cbi8vIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4vLyAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuLy9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG59XG5cbi8vXG4vLyBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuLy8gYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbi8vIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbi8vXG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vL1xuLy8gMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4vLyAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLzJcbn1cblxuLy9cbi8vIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuLy8gU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xuLy8gcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuLy9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4vL1xuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbi8vIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbi8vXG5cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG59XG5cbi8vXG4vLyBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxuLy9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLy9cbi8vIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbi8vIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuLy9cblxub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLy8gVGFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuLy9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7XG59XG4iLCIvKiEgU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9ibG9iL21hc3Rlci9zcmMvY3NzL21haW4uY3NzICovXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmludCBzdHlsZXMuXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDogaDVicC5jb20vclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQG1lZGlhIHByaW50IHtcbiAgKixcbiAgKjpiZWZvcmUsXG4gICo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuXG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICB9XG5cbiAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgfVxuXG4gIC8vIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXG4gIC8vIG9yIHVzZSB0aGUgYGphdmFzY3JpcHQ6YCBwc2V1ZG8gcHJvdG9jb2xcbiAgYVtocmVmXj1cIiNcIl06YWZ0ZXIsXG4gIGFbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyAvLyBoNWJwLmNvbS90XG4gIH1cblxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cblxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgcCxcbiAgaDIsXG4gIGgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMztcbiAgfVxuXG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gIH1cblxuICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxuXG4gIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gIC5uYXZiYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmJ0bixcbiAgLmRyb3B1cCA+IC5idG4ge1xuICAgID4gLmNhcmV0IHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgLmxhYmVsIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuICB9XG5cbiAgLnRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICB0ZCxcbiAgICB0aCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC50YWJsZS1ib3JkZXJlZCB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIGVuZFxufVxuIiwiLy9cbi8vIFNjYWZmb2xkaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIFJlc2V0IHRoZSBib3gtc2l6aW5nXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgcmVzZXQgbWF5IGNhdXNlIGNvbmZsaWN0cyB3aXRoIHNvbWUgdGhpcmQtcGFydHkgd2lkZ2V0cy5cbi8vIEZvciByZWNvbW1lbmRhdGlvbnMgb24gcmVzb2x2aW5nIHN1Y2ggY29uZmxpY3RzLCBzZWVcbi8vIGh0dHA6Ly9nZXRib290c3RyYXAuY29tL2dldHRpbmctc3RhcnRlZC8jdGhpcmQtYm94LXNpemluZ1xuKiB7XG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG59XG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xufVxuXG5cbi8vIEJvZHkgcmVzZXRcblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xufVxuXG5ib2R5IHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbn1cblxuLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHA6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cblxuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuLnNyLW9ubHktZm9jdXNhYmxlIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICB9XG59XG5cblxuLy8gaU9TIFwiY2xpY2thYmxlIGVsZW1lbnRzXCIgZml4IGZvciByb2xlPVwiYnV0dG9uXCJcbi8vXG4vLyBGaXhlcyBcImNsaWNrYWJpbGl0eVwiIGlzc3VlIChhbmQgbW9yZSBnZW5lcmFsbHksIHRoZSBmaXJpbmcgb2YgZXZlbnRzIHN1Y2ggYXMgZm9jdXMgYXMgd2VsbClcbi8vIGZvciB0cmFkaXRpb25hbGx5IG5vbi1mb2N1c2FibGUgZWxlbWVudHMgd2l0aCByb2xlPVwiYnV0dG9uXCJcbi8vIHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG5bcm9sZT1cImJ1dHRvblwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiIsIi8vIEJveCBzaXppbmdcbkBtaXhpbiBib3gtc2l6aW5nKCRib3htb2RlbCkge1xuICAtd2Via2l0LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgLW1vei1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgICAgICAgYm94LXNpemluZzogJGJveG1vZGVsO1xufVxuIiwiJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlcjogZmFsc2UgIWRlZmF1bHQ7XG4vL1xuLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vPT0gQ29sb3JzXG4vL1xuLy8jIyBHcmF5IGFuZCBicmFuZCBjb2xvcnMgZm9yIHVzZSBhY3Jvc3MgQm9vdHN0cmFwLlxuXG4kZ3JheS1iYXNlOiAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRncmF5LWRhcms6ICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDIwJSkgIWRlZmF1bHQ7ICAgLy8gIzMzM1xuXG5cbi8vPT0gU2NhZmZvbGRpbmdcbi8vXG4vLyMjIFNldHRpbmdzIGZvciBzb21lIG9mIHRoZSBtb3N0IGdsb2JhbCBzdHlsZXMuXG5cbi8vKiogR2xvYmFsIHRleHQgY29sb3Igb24gYDxib2R5PmAuXG4kdGV4dC1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwb2dyYXBoeVxuLy9cbi8vIyMgRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgMTRweCAhZGVmYXVsdDtcblxuXG4vLz09IE1lZGlhIHF1ZXJpZXMgYnJlYWtwb2ludHNcbi8vXG4vLyMjIERlZmluZSB0aGUgYnJlYWtwb2ludHMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIEV4dHJhIHNtYWxsIHNjcmVlbiAvIHBob25lXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHNgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi14czogICAgICAgICAgICAgICAgICA0ODBweCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14cy1taW5gIGFzIG9mIHYzLjIuMFxuJHNjcmVlbi14cy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXhzICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXBob25lYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tcGhvbmU6ICAgICAgICAgICAgICAgJHNjcmVlbi14cy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXNtYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tc206ICAgICAgICAgICAgICAgICAgNzY4cHggIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tc20gIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tdGFibGV0YCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tdGFibGV0OiAgICAgICAgICAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG5cbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbWRgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1tZDogICAgICAgICAgICAgICAgICA5OTJweCAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1tZCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tZGVza3RvcDogICAgICAgICAgICAgJHNjcmVlbi1tZC1taW4gIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGc6ICAgICAgICAgICAgICAgICAgMTIwMHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1sZy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLWxnICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1sZy1kZXNrdG9wOiAgICAgICAgICAkc2NyZWVuLWxnLW1pbiAhZGVmYXVsdDtcblxuLy8gU28gbWVkaWEgcXVlcmllcyBkb24ndCBvdmVybGFwIHdoZW4gcmVxdWlyZWQsIHByb3ZpZGUgYSBtYXhpbXVtXG4kc2NyZWVuLXhzLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLXNtLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1tZC1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbGctbWluIC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBHcmlkIHN5c3RlbVxuLy9cbi8vIyMgRGVmaW5lIHlvdXIgY3VzdG9tIHJlc3BvbnNpdmUgZ3JpZC5cblxuLy8qKiBOdW1iZXIgb2YgY29sdW1ucyBpbiB0aGUgZ3JpZC5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBiZXR3ZWVuIGNvbHVtbnMuIEdldHMgZGl2aWRlZCBpbiBoYWxmIGZvciB0aGUgbGVmdCBhbmQgcmlnaHQuXG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgMzBweCAhZGVmYXVsdDtcbi8vIE5hdmJhciBjb2xsYXBzZVxuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlY29tZXMgdW5jb2xsYXBzZWQuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50OiAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVnaW5zIGNvbGxhcHNpbmcuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heDogKCRncmlkLWZsb2F0LWJyZWFrcG9pbnQgLSAxKSAhZGVmYXVsdDtcblxuXG4vLz09IENvbnRhaW5lciBzaXplc1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XG4kY29udGFpbmVyLXRhYmxldDogICAgICAgICAgICAgKDcyMHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLXNtLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1zbTogICAgICAgICAgICAgICAgICRjb250YWluZXItdGFibGV0ICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuJGNvbnRhaW5lci1kZXNrdG9wOiAgICAgICAgICAgICg5NDBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1tZC1taW5gIGFuZCB1cC5cbiRjb250YWluZXItbWQ6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWRlc2t0b3AgIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wOiAgICAgICgxMTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbGctbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLWxnOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wICFkZWZhdWx0O1xuIiwiLy9cbi8vIEdyaWQgc3lzdGVtXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbi5jb250YWluZXIge1xuICBAaW5jbHVkZSBjb250YWluZXItZml4ZWQ7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItc207XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItbWQ7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItbGc7XG4gIH1cbn1cblxuXG4vLyBGbHVpZCBjb250YWluZXJcbi8vXG4vLyBVdGlsaXplcyB0aGUgbWl4aW4gbWVhbnQgZm9yIGZpeGVkIHdpZHRoIGNvbnRhaW5lcnMsIGJ1dCB3aXRob3V0IGFueSBkZWZpbmVkXG4vLyB3aWR0aCBmb3IgZmx1aWQsIGZ1bGwgd2lkdGggbGF5b3V0cy5cblxuLmNvbnRhaW5lci1mbHVpZCB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lci1maXhlZDtcbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4gYW5kIGNsZWFyIHRoZSBmbG9hdHMgb2YgeW91ciBjb2x1bW5zLlxuXG4ucm93IHtcbiAgQGluY2x1ZGUgbWFrZS1yb3c7XG59XG5cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnM7XG5cblxuLy8gRXh0cmEgc21hbGwgZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciBleHRyYSBzbWFsbCBkZXZpY2VzIGxpa2Vcbi8vIHNtYXJ0cGhvbmVzLlxuXG5AaW5jbHVkZSBtYWtlLWdyaWQoeHMpO1xuXG5cbi8vIFNtYWxsIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIHNtYWxsIGRldmljZSByYW5nZSwgZnJvbSBwaG9uZXNcbi8vIHRvIHRhYmxldHMuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQoc20pO1xufVxuXG5cbi8vIE1lZGl1bSBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBkZXNrdG9wIGRldmljZSByYW5nZS5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChtZCk7XG59XG5cblxuLy8gTGFyZ2UgZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgbGFyZ2UgZGVza3RvcCBkZXZpY2UgcmFuZ2UuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQobGcpO1xufVxuIiwiLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbi8vIENlbnRlcmVkIGNvbnRhaW5lciBlbGVtZW50XG5AbWl4aW4gY29udGFpbmVyLWZpeGVkKCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6ICBmbG9vcigoJGd1dHRlciAvIDIpKTtcbiAgcGFkZGluZy1yaWdodDogY2VpbCgoJGd1dHRlciAvIDIpKTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi8vIENyZWF0ZXMgYSB3cmFwcGVyIGZvciBhIHNlcmllcyBvZiBjb2x1bW5zXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIG1hcmdpbi1sZWZ0OiAgY2VpbCgoJGd1dHRlciAvIC0yKSk7XG4gIG1hcmdpbi1yaWdodDogZmxvb3IoKCRndXR0ZXIgLyAtMikpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gR2VuZXJhdGUgdGhlIGV4dHJhIHNtYWxsIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXhzLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbn1cblxuLy8gR2VuZXJhdGUgdGhlIHNtYWxsIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXNtLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgdGhlIG1lZGl1bSBjb2x1bW5zXG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBsYXJnZSBjb2x1bW5zXG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG4iLCIvLyBDbGVhcmZpeFxuLy9cbi8vIEZvciBtb2Rlcm4gYnJvd3NlcnNcbi8vIDEuIFRoZSBzcGFjZSBjb250ZW50IGlzIG9uZSB3YXkgdG8gYXZvaWQgYW4gT3BlcmEgYnVnIHdoZW4gdGhlXG4vLyAgICBjb250ZW50ZWRpdGFibGUgYXR0cmlidXRlIGlzIGluY2x1ZGVkIGFueXdoZXJlIGVsc2UgaW4gdGhlIGRvY3VtZW50LlxuLy8gICAgT3RoZXJ3aXNlIGl0IGNhdXNlcyBzcGFjZSB0byBhcHBlYXIgYXQgdGhlIHRvcCBhbmQgYm90dG9tIG9mIGVsZW1lbnRzXG4vLyAgICB0aGF0IGFyZSBjbGVhcmZpeGVkLlxuLy8gMi4gVGhlIHVzZSBvZiBgdGFibGVgIHJhdGhlciB0aGFuIGBibG9ja2AgaXMgb25seSBuZWNlc3NhcnkgaWYgdXNpbmdcbi8vICAgIGA6YmVmb3JlYCB0byBjb250YWluIHRoZSB0b3AtbWFyZ2lucyBvZiBjaGlsZCBlbGVtZW50cy5cbi8vXG4vLyBTb3VyY2U6IGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrL1xuXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjsgLy8gMVxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAyXG4gIH1cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGk6IDEsICRsaXN0OiBcIi5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIikge1xuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgLy8gSW5uZXIgZ3V0dGVyIHZpYSBwYWRkaW5nXG4gICAgcGFkZGluZy1sZWZ0OiAgY2VpbCgoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cbn1cblxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MsICRpOiAxLCAkbGlzdDogXCIuY29sLSN7JGNsYXNzfS0jeyRpfVwiKSB7XG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wtI3skY2xhc3N9LSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cblxuQG1peGluIGNhbGMtZ3JpZC1jb2x1bW4oJGluZGV4LCAkY2xhc3MsICR0eXBlKSB7XG4gIEBpZiAoJHR5cGUgPT0gd2lkdGgpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LSN7JGluZGV4fSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1c2gtI3skaW5kZXh9IHtcbiAgICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0wIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVsbCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0jeyRpbmRleH0ge1xuICAgICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0wIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IG9mZnNldCkge1xuICAgIC5jb2wtI3skY2xhc3N9LW9mZnNldC0jeyRpbmRleH0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBsb29wLWdyaWQtY29sdW1ucygkY29sdW1ucywgJGNsYXNzLCAkdHlwZSkge1xuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICBAaW5jbHVkZSBjYWxjLWdyaWQtY29sdW1uKCRpLCAkY2xhc3MsICR0eXBlKTtcbiAgfVxufVxuXG5cbi8vIENyZWF0ZSBncmlkIGZvciBzcGVjaWZpYyBjbGFzc1xuQG1peGluIG1ha2UtZ3JpZCgkY2xhc3MpIHtcbiAgQGluY2x1ZGUgZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcyk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgd2lkdGgpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1bGwpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1c2gpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIG9mZnNldCk7XG59XG4iLCIvL1xuLy8gVXRpbGl0eSBjbGFzc2VzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEZsb2F0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uY2xlYXJmaXgge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cbi5jZW50ZXItYmxvY2sge1xuICBAaW5jbHVkZSBjZW50ZXItYmxvY2s7XG59XG4ucHVsbC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuLnB1bGwtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gVG9nZ2xpbmcgY29udGVudFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBOb3RlOiBEZXByZWNhdGVkIC5oaWRlIGluIGZhdm9yIG9mIC5oaWRkZW4gb3IgLnNyLW9ubHkgKGFzIGFwcHJvcHJpYXRlKSBpbiB2My4wLjFcbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLnNob3cge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi50ZXh0LWhpZGUge1xuICBAaW5jbHVkZSB0ZXh0LWhpZGU7XG59XG5cblxuLy8gSGlkZSBmcm9tIHNjcmVlbnJlYWRlcnMgYW5kIGJyb3dzZXJzXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5cbi8vIEZvciBBZmZpeCBwbHVnaW5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmFmZml4IHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuIiwiLy8gQ2VudGVyLWFsaWduIGEgYmxvY2sgbGV2ZWwgZWxlbWVudFxuXG5AbWl4aW4gY2VudGVyLWJsb2NrKCkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuLy9cbi8vIEhlYWRzIHVwISB2MyBsYXVuY2hlZCB3aXRoIG9ubHkgYC5oaWRlLXRleHQoKWAsIGJ1dCBwZXIgb3VyIHBhdHRlcm4gZm9yXG4vLyBtaXhpbnMgYmVpbmcgcmV1c2VkIGFzIGNsYXNzZXMgd2l0aCB0aGUgc2FtZSBuYW1lLCB0aGlzIGRvZXNuJ3QgaG9sZCB1cC4gQXNcbi8vIG9mIHYzLjAuMSB3ZSBoYXZlIGFkZGVkIGAudGV4dC1oaWRlKClgIGFuZCBkZXByZWNhdGVkIGAuaGlkZS10ZXh0KClgLlxuLy9cbi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvY29tbWl0L2FhMDM5NmVhZTc1N1xuXG4vLyBEZXByZWNhdGVkIGFzIG9mIHYzLjAuMSAoaGFzIGJlZW4gcmVtb3ZlZCBpbiB2NClcbkBtaXhpbiBoaWRlLXRleHQoKSB7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBOZXcgbWl4aW4gdG8gdXNlIGFzIG9mIHYzLjAuMVxuQG1peGluIHRleHQtaGlkZSgpIHtcbiAgQGluY2x1ZGUgaGlkZS10ZXh0O1xufVxuIiwiLy9cbi8vIFJlc3BvbnNpdmU6IFV0aWxpdHkgY2xhc3Nlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBJRTEwIGluIFdpbmRvd3MgKFBob25lKSA4XG4vL1xuLy8gU3VwcG9ydCBmb3IgcmVzcG9uc2l2ZSB2aWV3cyB2aWEgbWVkaWEgcXVlcmllcyBpcyBraW5kIG9mIGJvcmtlZCBpbiBJRTEwLCBmb3Jcbi8vIFN1cmZhY2UvZGVza3RvcCBpbiBzcGxpdCB2aWV3IGFuZCBmb3IgV2luZG93cyBQaG9uZSA4LiBUaGlzIHBhcnRpY3VsYXIgZml4XG4vLyBtdXN0IGJlIGFjY29tcGFuaWVkIGJ5IGEgc25pcHBldCBvZiBKYXZhU2NyaXB0IHRvIHNuaWZmIHRoZSB1c2VyIGFnZW50IGFuZFxuLy8gYXBwbHkgc29tZSBjb25kaXRpb25hbCBDU1MgdG8gKm9ubHkqIHRoZSBTdXJmYWNlL2Rlc2t0b3AgV2luZG93cyA4LiBMb29rIGF0XG4vLyBvdXIgR2V0dGluZyBTdGFydGVkIHBhZ2UgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhpcyBidWcuXG4vL1xuLy8gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgZm9sbG93aW5nOlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwNDk3XG4vLyBEb2NzOiBodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbS9nZXR0aW5nLXN0YXJ0ZWQvI3N1cHBvcnQtaWUxMC13aWR0aFxuLy8gU291cmNlOiBodHRwOi8vdGlta2FkbGVjLmNvbS8yMDEzLzAxL3dpbmRvd3MtcGhvbmUtOC1hbmQtZGV2aWNlLXdpZHRoL1xuLy8gU291cmNlOiBodHRwOi8vdGlta2FkbGVjLmNvbS8yMDEyLzEwL2llMTAtc25hcC1tb2RlLWFuZC1yZXNwb25zaXZlLWRlc2lnbi9cblxuQGF0LXJvb3Qge1xuICBALW1zLXZpZXdwb3J0IHtcbiAgICB3aWR0aDogZGV2aWNlLXdpZHRoO1xuICB9XG59XG5cblxuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vIE5vdGU6IERlcHJlY2F0ZWQgLnZpc2libGUteHMsIC52aXNpYmxlLXNtLCAudmlzaWJsZS1tZCwgYW5kIC52aXNpYmxlLWxnIGFzIG9mIHYzLjIuMFxuXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUteHMnKTtcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1zbScpO1xuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLW1kJyk7XG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcblxuLnZpc2libGUteHMtYmxvY2ssXG4udmlzaWJsZS14cy1pbmxpbmUsXG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1zbS1ibG9jayxcbi52aXNpYmxlLXNtLWlubGluZSxcbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayxcbi52aXNpYmxlLW1kLWJsb2NrLFxuLnZpc2libGUtbWQtaW5saW5lLFxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtbGctYmxvY2ssXG4udmlzaWJsZS1sZy1pbmxpbmUsXG4udmlzaWJsZS1sZy1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXhzJyk7XG59XG4udmlzaWJsZS14cy1ibG9jayB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXhzLWlubGluZSB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2sge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXNtJyk7XG59XG4udmlzaWJsZS1zbS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtc20taW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtc20taW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLW1kJyk7XG59XG4udmlzaWJsZS1tZC1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbWQtaW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1sZycpO1xufVxuLnZpc2libGUtbGctYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1sZy1pbmxpbmUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXhzJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXNtJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLW1kJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1sZycpO1xufVxuXG5cbi8vIFByaW50IHV0aWxpdGllc1xuLy9cbi8vIE1lZGlhIHF1ZXJpZXMgYXJlIHBsYWNlZCBvbiB0aGUgaW5zaWRlIHRvIGJlIG1peGluLWZyaWVuZGx5LlxuXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXByaW50IGFzIG9mIHYzLjIuMFxuXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtcHJpbnQnKTtcblxuQG1lZGlhIHByaW50IHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1wcmludCcpO1xufVxuLnZpc2libGUtcHJpbnQtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1wcmludC1pbmxpbmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQtaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50IHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tcHJpbnQnKTtcbn1cbiIsIi8vIFJlc3BvbnNpdmUgdXRpbGl0aWVzXG5cbi8vXG4vLyBNb3JlIGVhc2lseSBpbmNsdWRlIGFsbCB0aGUgc3RhdGVzIGZvciByZXNwb25zaXZlLXV0aWxpdGllcy5sZXNzLlxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZSN7JHBhcmVudH0gIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0ciN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgjeyRwYXJlbnR9LFxuICB0ZCN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYuZHJhZ2dpbmcge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGN1cnNvcjogaGFuZDtcbiAgICB9XG59XG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmLmRyYWdnaW5nIGltZyB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJcclxuXHJcblxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6ICdBdmVuaXIgTmV4dCc7XHJcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL0F2ZW5pci9BdmVuaXJOZXh0LUJvbGQuZW90Jyk7XHJcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL0F2ZW5pci9BdmVuaXJOZXh0LUJvbGQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuICAgICAgdXJsKCcuLi9mb250cy9BdmVuaXIvQXZlbmlyTmV4dC1Cb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICB1cmwoJy4uL2ZvbnRzL0F2ZW5pci9BdmVuaXJOZXh0LUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG4gICAgICB1cmwoJy4uL2ZvbnRzL0F2ZW5pci9BdmVuaXJOZXh0LUJvbGQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6ICdBdmVuaXIgTmV4dCc7XHJcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL0F2ZW5pci9BdmVuaXJOZXh0LVJlZ3VsYXIuZW90Jyk7XHJcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL0F2ZW5pci9BdmVuaXJOZXh0LVJlZ3VsYXIuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuICAgICAgdXJsKCcuLi9mb250cy9BdmVuaXIvQXZlbmlyTmV4dC1SZWd1bGFyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICB1cmwoJy4uL2ZvbnRzL0F2ZW5pci9BdmVuaXJOZXh0LVJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG4gICAgICB1cmwoJy4uL2ZvbnRzL0F2ZW5pci9BdmVuaXJOZXh0LVJlZ3VsYXIudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXHJcbi8vIE1peGlucyAmIEluY2x1ZGVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXHJcbkBtaXhpbiBub3RleHQge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xyXG59XHJcblxyXG4uY2xlYXJmaXg6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGNsZWFyOiBib3RoO1xyXG59XHJcblxyXG4uY2VudGVyZWQge1xyXG4gICAgZGlzcGxheTogdGFibGU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgID4qIHtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBQTEFDRUhPTERFUiBNSVhJTlxyXG5AbWl4aW4gcGxhY2Vob2xkZXIoJGlucHV0LXRleHQtY29sb3IsICRpbnB1dC1mb250LXdlaWdodDo0MDAsICRpbnB1dC1mb250LWZhbWlseTokbWFpbkZvbnQpIHtcclxuICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgICAgIGNvbG9yOiAkaW5wdXQtdGV4dC1jb2xvcjtcclxuICAgICAgICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcbiAgICAmOi1tb3otcGxhY2Vob2xkZXIge1xyXG4gICAgICAgIGNvbG9yOiAkaW5wdXQtdGV4dC1jb2xvcjtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjE1cyBlYXNlLWluLW91dDtcclxuICAgIH1cclxuICAgICY6Oi1tb3otcGxhY2Vob2xkZXIge1xyXG4gICAgICAgIGNvbG9yOiAkaW5wdXQtdGV4dC1jb2xvcjtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjE1cyBlYXNlLWluLW91dDtcclxuICAgIH1cclxuICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcclxuICAgICAgICBjb2xvcjogJGlucHV0LXRleHQtY29sb3I7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcclxuICAgICAgICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMTVzIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG4gICAgJjpmb2N1czotbW96LXBsYWNlaG9sZGVyIHtcclxuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgICY6Zm9jdXM6Oi1tb3otcGxhY2Vob2xkZXIge1xyXG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgJjpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG4gICAgJjpmb2N1czotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIH1cclxuICAgICY6Zm9jdXM6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBidXR0b24oJGNvbG9yKSB7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMCA1cHggJGNvbG9yIGluc2V0O1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuICAgICY6YmVmb3JlLFxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgYm94LXNpemluZzogaW5oZXJpdDtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm9yZGVyOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgfVxyXG4gICAgJi5idG4tLXNtYWxsZXIge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCAkY29sb3IgaW5zZXQ7XHJcbiAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgfVxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIH1cclxuICAgICY6aG92ZXI6OmJlZm9yZSxcclxuICAgICY6aG92ZXI6OmFmdGVyIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyOjpiZWZvcmUge1xyXG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjsgLy8gTWFrZSBib3JkZXJzIHZpc2libGVcclxuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRjb2xvcjtcclxuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjI1cyBlYXNlLW91dCwgLy8gV2lkdGggZXhwYW5kcyBmaXJzdFxyXG4gICAgICAgIGhlaWdodCAwLjI1cyBlYXNlLW91dCAwLjI1czsgLy8gQW5kIHRoZW4gaGVpZ2h0XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyOjphZnRlciB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yOyAvLyBNYWtlIGJvcmRlcnMgdmlzaWJsZVxyXG4gICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkY29sb3I7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDBzIGVhc2Utb3V0IDAuNXMsIC8vIFdhaXQgZm9yIDo6YmVmb3JlIHRvIGZpbmlzaCBiZWZvcmUgc2hvd2luZyBib3JkZXJcclxuICAgICAgICB3aWR0aCAwLjI1cyBlYXNlLW91dCAwLjVzLCAvLyBBbmQgdGhlbiBleGFuZGluZyB3aWR0aFxyXG4gICAgICAgIGhlaWdodCAwLjI1cyBlYXNlLW91dCAwLjc1czsgLy8gQW5kIGZpbmFsbHkgaGVpZ2h0XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBjbGVhcmZpeCB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuICAgIH1cclxufVxyXG5cclxuLy8gQ2xlYXIgc2VsZWN0IHdpdGhvdXQgZGVmYXVsdCBidXR0b25cclxuQG1peGluIGNsZWFyU2VsZWN0IHtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG59XHJcblxyXG4vL2VsZW1lbnRzIGdldCBhcHBlbmRlZCB3aXRoIFwiX19cIiBhbmQgdGhlICRuYW1lXHJcbkBtaXhpbiBlKCRuYW1lKSB7XHJcbiAgICBAYXQtcm9vdCAjeyZ9X18jeyRuYW1lfSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vbW9kaWZpZXJzIGdldCBhcHBlbmRlZCB3aXRoIFwiLS1cIiBhbmQgdGhlICRuYW1lXHJcbkBtaXhpbiBtKCRuYW1lKSB7XHJcbiAgICBAYXQtcm9vdCAjeyZ9LS0jeyRuYW1lfSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBiKCRwb2ludCkge1xyXG4gICAgQGlmICRwb2ludD09ZGVza3RvcCB7XHJcbiAgICAgICAgLyogLS0tLS0tLS0tLS0gTm9uLVJldGluYSBTY3JlZW5zIC0tLS0tLS0tLS0tICovXHJcbiAgICAgICAgQG1lZGlhIHNjcmVlbiAgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxNjAwcHgpLCAgKG1heC13aWR0aDogMTYwMHB4KSB7XHJcbiAgICAgICAgICAgIEBjb250ZW50IDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLyogLS0tLS0tLS0tLS0gUmV0aW5hIFNjcmVlbnMgLS0tLS0tLS0tLS0gKi9cclxuICAgICAgICAvLyBAbWVkaWEgc2NyZWVuICBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDE2MDBweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSkge1xyXG4gICAgICAgIC8vICAgICBAY29udGVudCA7XHJcbiAgICAgICAgLy8gfVxyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJHBvaW50PT10YWJsZXQge1xyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcclxuICAgICAgICAgICAgQGNvbnRlbnQgO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRwb2ludD09cGhhYmxldCB7XHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDM3LjVlbSkge1xyXG4gICAgICAgICAgICBAY29udGVudCA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJHBvaW50PT1tb2JpbGUge1xyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICBAY29udGVudCA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJHBvaW50PT1taW4ge1xyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0NzlweCkge1xyXG4gICAgICAgICAgICBAY29udGVudCA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJHBvaW50PT1tb2JpbGUzeCB7XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzKSwgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogM2RwcHgpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAzNTBkcGkpIHtcclxuICAgICAgICAgICAgQGNvbnRlbnQgO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHBvaW50ICsgJ3B4Jykge1xyXG4gICAgICAgICAgICBAY29udGVudCA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gYmVmb3JlLWltZygkd2lkdGgsICRoZWlnaHQpIHtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogJHdpZHRoO1xyXG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xyXG4vLyBSRU0gRk9OVF9TSVpFIFdJVEggRkFMTEJBQ0sgXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0Ly9cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cclxuLy8gVVNBR0U6XHJcbi8vIHAge1xyXG4vLyAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNHB4KVxyXG4vLyB9XHJcbkBmdW5jdGlvbiBjYWxjdWxhdGVSZW0oJHNpemUpIHtcclxuICAgICRyZW1TaXplOiAkc2l6ZSAvIDE2cHg7XHJcbiAgICBAcmV0dXJuICRyZW1TaXplICogMXJlbTtcclxufVxyXG5cclxuQG1peGluIGZvbnQtc2l6ZSgkc2l6ZSkge1xyXG4gICAgZm9udC1zaXplOiAkc2l6ZTtcclxuICAgIGZvbnQtc2l6ZTogY2FsY3VsYXRlUmVtKCRzaXplKTtcclxufSIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXHJcbi8vIFRZUE9HUkFQSFkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXHJcbmJvZHkge1xyXG5cdGNvbG9yOiAkbWFpbkZvbnRDb2xvcjtcclxuXHRmb250LWZhbWlseTogJG1haW5Gb250O1xyXG5cdGZvbnQtc2l6ZTogJG1haW5Gb250U2l6ZTtcclxuXHRmb250LXdlaWdodDogJG1haW5Gb250V2VpZ2h0O1xyXG5cdGxpbmUtaGVpZ2h0OiAkbWFpbkZvbnRIZWlnaHQ7XHJcblx0QGluY2x1ZGUgYihkZXNrdG9wKXtcclxuXHRcdGZvbnQtc2l6ZToxM3B4OyAgICBcclxuXHR9XHJcbn1cclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0Zm9udC13ZWlnaHQ6bm9ybWFsO1xyXG5cdGxpbmUtaGVpZ2h0Om5vcm1hbDtcclxufVxyXG5oMSB7XHJcbn1cclxuLnBhZ2UtdGl0bGUge1xyXG5mb250LXNpemU6IDUwcHg7XHJcbmxpbmUtaGVpZ2h0OiAxLjJlbTtcclxubWFyZ2luOjAgYXV0bztcclxucGFkZGluZzoxMHB4IDA7XHJcbkBpbmNsdWRlIGIoZGVza3RvcCl7XHJcblx0Zm9udC1zaXplOjM1cHg7XHJcbn1cclxufVxyXG5oMiB7XHJcblx0Zm9udC1zaXplOiAyNHB4O1xyXG5cdEBpbmNsdWRlIGIoZGVza3RvcCl7XHJcblx0XHRmb250LXNpemU6MThweDtcclxuXHR9XHJcbn1cclxuaDMge1xyXG5cdGZvbnQtc2l6ZTogMjRweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xyXG59XHJcbmg0IHtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIHBhZGRpbmc6IDAgMCA5cHg7XHJcblx0QGluY2x1ZGUgYihkZXNrdG9wKXtcclxuXHRcdGZvbnQtc2l6ZToxNXB4O1xyXG5cdH1cclxufVxyXG5oNSB7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XHJcbn1cclxuaDYge1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDE0cHg7XHJcbn1cclxucCB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcclxuICAgIGZvbnQtc2l6ZTppbmhlcml0O1xyXG4gICAgLy8gJiArICYge1xyXG4gICAgLy8gXHRwYWRkaW5nOjZweCAwIDA7XHJcbiAgICAvLyB9XHJcbn1cclxuXHJcbmhyIHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGhlaWdodDogMXB4O1xyXG5cdGJhY2tncm91bmQ6ICNlOWU5ZTk7XHJcblx0Ym9yZGVyOiAwO1xyXG5cdG1hcmdpbjogMzJweCAwO1xyXG59XHJcblxyXG5xLFxyXG5ibG9ja3F1b3RlIHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG5zdHJvbmcsXHJcbmIge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbmE6bm90KFtjbGFzcyo9XCJidG5cIl0pIHtcdFxyXG5cdGNvbG9yOiAjMDAwO1xyXG5cdHRyYW5zaXRpb246IGFsbCAuMTVzIGVhc2UtaW4tb3V0O1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRib3JkZXItYm90dG9tOjA7XHJcblx0Jjpob3ZlciB7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7IFxyXG5cdFx0Y29sb3I6IzYxMzhjMjtcclxuXHRcdGJvcmRlci1ib3R0b20tY29sb3I6dHJhbnNwYXJlbnQ7XHJcblx0fVxyXG59XHJcbmE6YWN0aXZlIHt9XHJcbmE6dmlzaXRlZCB7fVxyXG5cclxuJXVsIHtcclxuXHRsaXN0LXN0eWxlOm5vbmU7XHJcblx0bWFyZ2luOjA7XHJcblx0cGFkZGluZzowO1xyXG5cdGxpIHtcclxuXHRcdGxpbmUtaGVpZ2h0Om5vcm1hbDtcclxuXHRcdGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuXHRcdGxpbmUtaGVpZ2h0OmluaGVyaXQ7XHJcblx0XHRkaXNwbGF5OmJsb2NrO1xyXG5cdFx0cGFkZGluZzogMCAwIDAgMTZweDtcclxuXHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRjb250ZW50OiAnJztcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xyXG5cdFx0XHR3aWR0aDogOHB4O1xyXG5cdFx0XHRoZWlnaHQ6IDhweDtcclxuXHRcdFx0dG9wOiA1MCU7XHJcblx0XHRcdHRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO1xyXG5cdFx0XHRsZWZ0OjA7XHJcblx0XHRcdGJhY2tncm91bmQ6ICMwMDA7XHJcblx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRcdFx0QGluY2x1ZGUgYihkZXNrdG9wKXtcclxuXHRcdFx0XHR3aWR0aDogNXB4O1xyXG5cdFx0XHRcdGhlaWdodDogNXB4O1xyXG5cdFx0ICB9XHJcblx0XHR9XHJcblx0XHQmOmxhc3QtY2hpbGQge1xyXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi8vIHVsIHtcclxuLy8gXHRAZXh0ZW5kICV1bDtcclxuLy8gXHQmLm5hdGl2ZS1idWxsZXRzIHtcdFx0XHJcbi8vIFx0XHRsaSB7XHJcbi8vIFx0XHRcdCY6YmVmb3JlIHtcclxuLy8gXHRcdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuLy8gXHRcdFx0XHRsZWZ0OmF1dG87XHJcbi8vIFx0XHRcdFx0dG9wOmF1dG87XHJcbi8vIFx0XHRcdFx0dHJhbnNmb3JtOm5vbmU7XHJcbi8vIFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4vLyBcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbi8vIFx0XHRcdFx0bWFyZ2luLXJpZ2h0OjhweDtcclxuLy8gXHRcdFx0fVxyXG4vLyBcdFx0fVxyXG4vLyBcdH1cclxuLy8gfVxyXG5cclxuXHJcbiVvbCB7XHJcblx0bGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsO1xyXG5cdGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcclxuXHRjb3VudGVyLXJlc2V0OiBpdGVtO1xyXG5cdG1hcmdpbjoyNHB4IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRsaSB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdGxpbmUtaGVpZ2h0OmluaGVyaXQ7XHJcblx0XHRmb250LXNpemU6IGluaGVyaXQ7XHJcblx0XHRwYWRkaW5nOjAgMCA4cHggMDtcclxuXHRcdCY6YmVmb3JlIHsgXHJcblx0XHRcdGNvbnRlbnQ6IGNvdW50ZXJzKGl0ZW0sIFwiLlwiKSBcIi4gXCI7XHJcblx0XHRcdGNvdW50ZXItaW5jcmVtZW50OiBpdGVtO1xyXG5cdFx0XHRkaXNwbGF5OiBpbmxpbmU7XHJcblx0XHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiA4MDA7XHJcblx0XHRcdGNvbG9yOiAjMDAwO1xyXG5cdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHRcdH1cclxuXHRcdCY6bGFzdC1jaGlsZCB7XHJcblx0XHRcdHBhZGRpbmctYm90dG9tOiAwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxub2wge1xyXG5cdEBleHRlbmQgJW9sO1xyXG59XHJcbi50YWJsZS13cmFwcGVyIHtcclxuXHRvdmVyZmxvdy14OmF1dG87XHJcblx0b3ZlcmZsb3cteTpoaWRkZW47XHJcbn1cclxudGFibGUge1xyXG5cdHdpZHRoOjEwMCU7XHJcblx0bWF4LXdpZHRoOjEwMCU7XHJcblx0Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO1xyXG5cdGJvcmRlcjowO1xyXG5cdHRhYmxlLWxheW91dDphdXRvO1xyXG5cdG1hcmdpbjogMCBhdXRvO1xyXG5cdHRkLCB0aCB7XHJcblx0XHRmb250LXNpemU6aW5oZXJpdDtcclxuXHRcdGxpbmUtaGVpZ2h0OmluaGVyaXQ7XHJcblx0XHRib3JkZXI6MDtcclxuXHRcdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdFx0d2hpdGUtc3BhY2U6bm93cmFwO1xyXG5cdH1cclxuXHR0aCB7XHJcblx0XHRmb250LXdlaWdodDo0MDA7XHJcblx0XHRmb250LWZhbWlseTokbWFpbkZvbnQ7XHRcdFxyXG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiZGJkYmQ7XHJcblx0XHRmb250LXNpemU6MjRweDtcclxuXHRcdGNvbG9yOiMwMDA7XHJcblx0XHR2ZXJ0aWNhbC1hbGlnbjp0b3A7XHJcblx0XHRwYWRkaW5nOjAgMTZweCAxNnB4O1xyXG5cdFx0d2hpdGUtc3BhY2U6bm93cmFwO1xyXG5cdFx0JjpmaXJzdC1jaGlsZCB7XHJcblx0XHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNiZGJkYmQ7XHJcblx0XHRcdGJvcmRlci1ib3R0b206MDtcclxuXHRcdFx0dmVydGljYWwtYWxpZ246bWlkZGxlO1xyXG5cdFx0XHRwYWRkaW5nOjI1cHggMTZweCAxNnB4O1xyXG5cdFx0XHR0ZXh0LWFsaWduOnJpZ2h0O1xyXG5cdFx0fVxyXG5cdFx0QGF0LXJvb3QgdHI6Zmlyc3QtY2hpbGQgdGg6Zmlyc3QtY2hpbGQge1xyXG5cdFx0XHRib3JkZXItYm90dG9tOjFweCBzb2xpZCAjYmRiZGJkO1xyXG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjp0b3A7XHJcblx0XHRcdHBhZGRpbmc6MCAxNnB4IDE2cHg7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBiKGRlc2t0b3Ape1xyXG5cdFx0XHRwYWRkaW5nOjAgOHB4IDhweDtcclxuXHRcdFx0Zm9udC1zaXplOjE4cHg7XHJcblx0XHRcdCY6Zmlyc3QtY2hpbGQge1xyXG5cdFx0XHRcdHBhZGRpbmc6MTJweCA4cHggOHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAYXQtcm9vdCB0cjpmaXJzdC1jaGlsZCB0aDpmaXJzdC1jaGlsZCB7XHJcblx0XHRcdFx0cGFkZGluZzowIDhweCA4cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0dGQge1xyXG5cdFx0Y29sb3I6IzQ0NDtcclxuXHRcdHZlcnRpY2FsLWFsaWduOm1pZGRsZTtcclxuXHRcdHBhZGRpbmc6MjVweCAxNnB4IDE2cHg7XHJcblx0XHRmb250LXNpemU6MTRweDtcclxuXHRcdEBpbmNsdWRlIGIoZGVza3RvcCl7XHJcblx0XHRcdHBhZGRpbmc6MTJweCA4cHggOHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHR0cjpsYXN0LWNoaWxkIHtcclxuXHRcdHRkLCB0aCB7XHJcblx0XHRcdHBhZGRpbmctYm90dG9tOjA7XHJcblx0XHRcdEBpbmNsdWRlIGIodGFibGV0KXtcclxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTo4cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcblxyXG4udXBwZXIge1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi5sb3dlciB7XHJcblx0dGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcclxufVxyXG5cclxuLmMtZGFyaywgLmMtYmxhY2sge1xyXG5cdGNvbG9yOiBkZWZhdWx0O1xyXG59XHJcbi5jLXdoaXRlLCAuYy1saWdodCB7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG5cclxuLmNlbnRlciB7XHJcblx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcbn1cclxuXHJcblxyXG5cclxuaW1nIHtcclxuXHRkaXNwbGF5OmJsb2NrO1xyXG5cdG1heC13aWR0aDoxMDAlO1xyXG59IiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cclxuLy8gVmFyaWFibGVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cclxuJG1haW5Gb250Olx0XHRcdCdBdmVuaXIgTmV4dCcsJ1RpbWVzIE5ldyBSb21hbicsIHNlcmlmOyBcclxuJG1haW5Gb250U2l6ZTpcdFx0MTZweDtcclxuJG1haW5Gb250SGVpZ2h0Olx0MjRweDtcclxuJG1haW5Gb250V2VpZ2h0Olx0bm9ybWFsO1xyXG4kbWFpbkZvbnRDb2xvcjpcdFx0IzAwMDtcclxuXHJcbi8vIFZhcmlhYmxlcyA9PiBDb2xvcnNcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cclxuJGRlZmF1bHQ6JG1haW5Gb250Q29sb3I7XHJcbiR0aGVtZUNvbG9yOiAjNWYyNGU4O1xyXG4iLCJsYWJlbC5lcnJvciB7XHJcblx0ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuaW5wdXQuZXJyb3Ige1xyXG5cdGJvcmRlci1jb2xvcjojQkQxNDIxO1xyXG5cdGJveC1zaGFkb3c6MCAwIDZweCAxcHggI0JEMTQyMTtcclxufSIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXHJcbi8vIExBWU9VVCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXHJcbiosXHJcbio6YmVmb3JlLFxyXG4qOmFmdGVyIHtcclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdG91dGxpbmU6MDtcclxufVxyXG5odG1sIHtcclxuXHRvdmVyZmxvdy14OmhpZGRlbjtcclxufVxyXG5ib2R5IHtcclxuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHRtaW4td2lkdGg6IDMyMHB4O1xyXG5cdG92ZXJmbG93LXg6aGlkZGVuO1xyXG5cdGJhY2tncm91bmQ6I2ZmZjtcclxufVxyXG4ubm9zY3JvbGwge1xyXG5cdG92ZXJmbG93OmhpZGRlbiAhaW1wb3J0YW50O1xyXG5cdGhlaWdodDoxMDAlO1xyXG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG59XHJcbi5wYWdlIHtcclxuXHR3aWR0aDoxMDAlO1xyXG59XHJcbi5jb250YWluZXIge1xyXG5cdHBhZGRpbmc6IDAgMzBweDtcclxuXHR3aWR0aDogMTE3MHB4O1xyXG5cdG1heC13aWR0aDoxMDAlO1xyXG5cdG1hcmdpbjogMCBhdXRvOyBcclxuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHRAaW5jbHVkZSBiKGRlc2t0b3Ape1xyXG5cdFx0cGFkZGluZzogMCAzMHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBiKHRhYmxldCl7XHJcblx0XHRwYWRkaW5nOiAwIDIwcHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIGIobW9iaWxlKXtcclxuXHRcdHBhZGRpbmc6IDAgMTVweDtcclxuXHR9XHJcbn1cclxuXHJcblxyXG4uaGlkZGVuIHtcclxuXHRkaXNwbGF5Om5vbmUgIWltcG9ydGFudDtcclxufVxyXG4udmlzaWJsZSB7XHJcblx0ZGlzcGxheTpibG9jayAhaW1wb3J0YW50O1xyXG59XHJcbi5kZXNrdG9wLWhpZGRlbiB7XHJcblx0QGluY2x1ZGUgYihkZXNrdG9wKSB7XHJcblx0XHRkaXNwbGF5Om5vbmUgIWltcG9ydGFudDtcclxuXHR9XHJcbn1cclxuLmRlc2t0b3AtdmlzaWJsZSB7XHJcblx0QGluY2x1ZGUgYihkZXNrdG9wKSB7XHJcblx0XHRkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnQ7XHJcblx0fVxyXG59XHJcbi50YWJsZXQtaGlkZGVuIHtcclxuXHRAaW5jbHVkZSBiKHRhYmxldCkge1xyXG5cdFx0ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7XHJcblx0fVxyXG59XHJcbi50YWJsZXQtdmlzaWJsZSB7XHJcblx0QGluY2x1ZGUgYih0YWJsZXQpIHtcclxuXHRcdGRpc3BsYXk6YmxvY2sgIWltcG9ydGFudDtcclxuXHR9XHJcbn1cclxuLm1vYmlsZS1oaWRkZW4ge1xyXG5cdEBpbmNsdWRlIGIobW9iaWxlKSB7XHJcblx0XHRkaXNwbGF5Om5vbmUgIWltcG9ydGFudDtcclxuXHR9XHJcbn1cclxuLm1vYmlsZS12aXNpYmxlIHtcclxuXHRAaW5jbHVkZSBiKG1vYmlsZSkge1xyXG5cdFx0ZGlzcGxheTpibG9jayAhaW1wb3J0YW50O1xyXG5cdH1cclxufVxyXG4ubWluLWhpZGRlbiB7XHJcblx0QGluY2x1ZGUgYihtaW4pIHtcclxuXHRcdGRpc3BsYXk6bm9uZSAhaW1wb3J0YW50O1xyXG5cdH1cclxufVxyXG4ubWluLXZpc2libGUge1xyXG5cdEBpbmNsdWRlIGIobWluKSB7XHJcblx0XHRkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnQ7XHJcblx0fVxyXG59XHJcblxyXG4uai1wcC1tb2NrdXAge1xyXG5cdHBvc2l0aW9uOmFic29sdXRlO1xyXG5cdHRvcDowO1xyXG5cdG1hcmdpbi1sZWZ0OjUwJTtcclxuXHR0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTtcclxufSIsImJ1dHRvbixcclxuLmJ0biB7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdHRyYW5zaXRpb246YWxsIC4xNXMgZWFzZS1pbi1vdXQ7XHJcblx0YXBwZWFyYW5jZTpub25lO1xyXG5cdG91dGxpbmU6MDtcclxuXHRib3JkZXI6MDtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH1cclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcbiAgICAmLS1wcmltYXJ5IHtcclxuICAgICAgICBAZXh0ZW5kIC5idG47XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTBjNjNmO1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjJweDtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWZhO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMTBweCAwIHJnYmEoMzcsIDM3LCAzNywgMC4wNSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjYTBjNjNmO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi5kcm9wZG93biB7XHJcblx0cG9zaXRpb246cmVsYXRpdmU7XHJcbn1cclxuLmpzLWRyb3Bkb3duIHtcclxuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHQmOmFmdGVyIHtcclxuXHRcdGRpc3BsYXk6YmxvY2s7XHJcblx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcclxuXHRcdGNvbnRlbnQ6XCJcIjtcclxuXHRcdHdpZHRoOjA7XHJcblx0XHRoZWlnaHQ6MDtcclxuXHRcdGJvcmRlci10b3A6IDZweCBzb2xpZCAjMDAwO1xyXG5cdFx0Ym9yZGVyLWxlZnQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHRcdGJvcmRlci1yaWdodDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdFx0cmlnaHQ6IC0xNXB4O1xyXG5cdFx0dG9wOjUwJTtcclxuXHRcdG1hcmdpbi10b3A6LTFweDtcclxuXHR9XHJcblx0Ji5kcm9wcGVkIHtcclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRtYXJnaW4tdG9wOi0xcHg7XHJcblx0XHRcdGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAjMDAwO1xyXG5cdFx0XHRib3JkZXItdG9wOiAwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4uanMtZHJvcGRvd24tY29udCB7XHJcblx0ZGlzcGxheTpub25lO1xyXG5cdHBvc2l0aW9uOmFic29sdXRlO1xyXG5cdHRvcDoxMDAlO1xyXG5cdGxlZnQ6MDtcclxuXHR6LWluZGV4Ojk5OTk7XHJcbn0iLCIuaW5mby1ibG9jayB7XHJcbiAgICBiYWNrZ3JvdW5kOiNmZmY7XHJcbiAgICBwYWRkaW5nOiAzNXB4IDkwcHg7XHJcbiAgICBAaW5jbHVkZSBiKG1vYmlsZSl7XHJcbiAgICAgICAgcGFkZGluZzogMjVweCAxNXB4O1xyXG4gICAgfVxyXG4gICAgJl9faGVhZGluZyB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgIHBhZGRpbmc6MCAwIDI0cHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IFxyXG4gICAgICAgIEBpbmNsdWRlIGIoZGVza3RvcCl7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZToyMnB4OyAgIFxyXG4gICAgICAgICAgICBwYWRkaW5nOjAgMCAxNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4OyBcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5se1xyXG4gICAgICAgICAgICBmb250LXNpemU6NTBweDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYihkZXNrdG9wKXtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTozNXB4OyAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgd2lkdGg6OTBweDtcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgaGVpZ2h0OjFweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcclxuICAgICAgICAgICAgbGVmdDo1MCU7XHJcbiAgICAgICAgICAgIGJvdHRvbToxcHg7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLm5vLWxpbmV7XHJcbiAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fY29udGVudHsgICAgICAgIFxyXG4gICAgICAgIGZvbnQtc2l6ZToyNHB4OyAgICBcclxuICAgICAgICBAaW5jbHVkZSBiKGRlc2t0b3Ape1xyXG4gICAgICAgICAgICBmb250LXNpemU6MThweDsgICAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fYWN0aW9ue1xyXG4gICAgICAgIG1hcmdpbjogMzBweCAwIDA7XHJcbiAgICB9XHJcbn0iLCIucG9wdXAge1xyXG5cdHBvc2l0aW9uOmFic29sdXRlO1xyXG5cdHRvcDo1MCU7XHJcblx0bGVmdDo1MCU7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0bWluLXdpZHRoOjYwJTtcclxuXHRtYXgtd2lkdGg6OTUlO1xyXG5cdG1heC1oZWlnaHQ6OTUlO1xyXG5cdGRpc3BsYXk6bm9uZTtcclxuXHRiYWNrZ3JvdW5kOiNmZmY7XHJcblx0cGFkZGluZzogNDBweCA1MHB4IDUwcHg7XHJcblx0b3ZlcmZsb3cteDpoaWRkZW47XHJcblx0b3ZlcmZsb3cteTphdXRvO1xyXG5cdC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuXHQmPip7XHRcdFxyXG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMHB4KTtcclxuXHR9XHJcblx0Ji5ndXR0ZXIge1xyXG5cdFx0cGFkZGluZzogNDBweCAxOTVweCA1MHB4O1xyXG5cdH1cclxuXHQmLm5hcnJvdyB7XHJcblx0XHRtaW4td2lkdGg6MDtcclxuXHRcdHdpZHRoOjU1NXB4O1xyXG5cdFx0QGluY2x1ZGUgYihkZXNrdG9wKXtcclxuXHRcdFx0d2lkdGg6NDAwcHg7XHJcblx0XHR9XHJcblx0fVxyXG5cdC5tYWluX19mb3JtX19jb250YWluZXIge1xyXG5cdFx0cGFkZGluZzowO1xyXG5cdFx0bWFyZ2luOjAgYXV0bztcclxuXHR9XHJcblx0QGluY2x1ZGUgYihkZXNrdG9wKXtcclxuXHRcdHBhZGRpbmc6MjVweCAxNXB4IDI1cHg7XHJcblx0XHQmLmd1dHRlciB7XHJcblx0XHRcdHBhZGRpbmc6MjVweCAxNXB4IDI1cHg7XHJcblx0XHR9XHJcblx0fVxyXG5cdCYtd3JhcHBlciB7XHJcblx0XHRwb3NpdGlvbjpmaXhlZDtcclxuXHRcdHRvcDowO1xyXG5cdFx0bGVmdDowO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKCMxNDEyMjMsLjgxKTtcclxuXHRcdHotaW5kZXg6OTk5OTtcclxuXHR9XHJcblx0XHJcbiAgICAmX19oZWFkaW5nIHtcclxuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgICAgICBmb250LXNpemU6IDUwcHg7XHJcbiAgICAgICAgcGFkZGluZzowIDAgMjRweDtcclxuICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdEBpbmNsdWRlIGIoZGVza3RvcCl7XHJcblx0XHRcdGZvbnQtc2l6ZToyOHB4OyAgICBcclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIGIodGFibGV0KXtcclxuXHRcdFx0Zm9udC1zaXplOiAzNnB4O1xyXG5cdFx0XHRwYWRkaW5nOjAgMCAxNXB4O1xyXG5cdFx0XHRtYXJnaW46IDAgMCAxNXB4O1xyXG5cdFx0fVxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgd2lkdGg6OTBweDtcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgaGVpZ2h0OjFweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcclxuICAgICAgICAgICAgbGVmdDo1MCU7XHJcbiAgICAgICAgICAgIGJvdHRvbToxcHg7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO1xyXG5cdFx0fVxyXG5cdFx0Ji0tbm8tbGluZSB7XHJcblx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRkaXNwbGF5Om5vbmU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuICAgIH1cclxuICAgICZfX2NvbnRlbnR7XHJcbiAgICAgICAgZm9udC1zaXplOjE5cHg7XHJcbiAgICB9XHJcbiAgICAmX19hY3Rpb257XHJcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMDtcclxuICAgIH1cclxufVxyXG4ucG9wdXAtd3JhcHBlciA+IC5idG4tLWNsb3NlIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAxMnB4O1xyXG5cdHJpZ2h0OjIwcHg7XHJcbn1cclxuLnBvcHVwID4gLmJ0bi0tY2xvc2Uge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDEycHg7XHJcblx0cmlnaHQ6MjBweDtcclxufSIsImlucHV0W3R5cGU9XCJyYWRpb1wiXSxpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogLTk5OTlweDtcclxuICAgICYrbGFiZWwge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRtYWluRm9udDtcclxuICAgICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgICAgIGNvbG9yOiAjNDQ0NDQ0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMTVzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZmxleC1mbG93OnJvdyBub3dyYXA7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBAaW5jbHVkZSBiKGRlc2t0b3Ape1xyXG4gICAgICAgICAgICBmb250LXNpemU6MTVweDsgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIC8vZmxleDogMCAwIDQwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggMCByZ2JhKDM3LCAzNywgMzcsIDAuMDUpO1xyXG4gICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAjOTU5NTk1O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE4cHggMTVweDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDoxMXB4O1xyXG4gICAgICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBiKGRlc2t0b3Ape1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6MTBweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTIuOHB4IDExLjZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNhMGM2M2Y7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmNoZWNrZWQrbGFiZWw6YmVmb3JlIHtcclxuICAgICAgICBib3JkZXItY29sb3I6I2EwYzYzZjtcclxuICAgIH1cclxuICAgICY6Y2hlY2tlZCtsYWJlbDphZnRlciB7XHJcblx0XHRjb250ZW50OlwiXCI7XHJcblx0XHR3aWR0aDo5cHg7XHJcblx0XHRoZWlnaHQ6N3B4O1xyXG5cdFx0ZGlzcGxheTpibG9jaztcclxuXHRcdHBvc2l0aW9uOmFic29sdXRlO1xyXG5cdFx0dG9wOjVweDtcclxuXHRcdGxlZnQ6M3B4O1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuXHRcdGJvcmRlcjogM3B4IHNvbGlkICNhMGM2M2Y7XHJcblx0XHRib3JkZXItd2lkdGg6IDAgMCAzcHggM3B4O1xyXG5cdFx0ei1pbmRleDoyO1xyXG4gICAgfVxyXG4gICAgJjpmb2N1cytsYWJlbDpiZWZvcmUge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCA1cHggM3B4ICNhMGM2M2Y7XHJcbiAgICB9XHJcbiAgICBAYXQtcm9vdCAudmFsaWRhdGUgJjppbnZhbGlkIHtcclxuICAgICAgICAmK2xhYmVsIHtcclxuICAgICAgICAgICAgY29sb3I6ICNlNDAwMDA7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGMxYzY7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNlNDAwMDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmNvbG9yIHtcclxuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDEwMCUgLSAyMHB4KTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDExMHB4O1xyXG4gICAgICAgIGhlaWdodDogMTEwcHg7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjkpO1xyXG4gICAgICAgIEBpbmNsdWRlIGIoZGVza3RvcCkge1xyXG4gICAgICAgICAgICB3aWR0aDogNzVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA3NXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOjotbXMtY2hlY2sge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYrLmNoZWNrZWQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDU1cHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzg2ZmNlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL21pc2MvY2hlY2sucG5nKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDUwJTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTE1cHgsIC0xNXB4KTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGIoZGVza3RvcCkge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwcHgsIC0yNXB4KTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6Y2hlY2tlZCxcclxuICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAycHggIzc4NmZjZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6Y2hlY2tlZCsuY2hlY2tlZCB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZ+LmNvbG9yLWxhYmVsIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwIDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxOXB4O1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTokbWFpbkZvbnQ7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjMwMDtcclxuICAgICAgICAgICAgY29sb3I6IzQ0NDtcclxuICAgICAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0Om5vcm1hbDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jb2xvci1ib3gge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgZm9udC1zaXplOiAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAmLFxyXG4gICAgJiAqIHtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICAuY29sb3Ige1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAycHggIzc4NmZjZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnJhZGlvLWJveCwuY2hlY2stYm94IHtcclxuICAgICYtLWltYWdlLCYtLXBob3RvIHtcclxuICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgICYrbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjA7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OjA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpbWcgeyAgICBcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDM1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi0tcGhvdG8ge1xyXG4gICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgJitsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjFweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLS1zIHtcclxuICAgICAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICAgICAgJitsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDoxNTBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vICRjb2xvcnM6ICggXHJcbi8vICAgICA1ZDMyMWQ6ICM1ZDMyMWQsIFxyXG4vLyAgICAgOTQ2MTQ5OiAjOTQ2MTQ5LCBcclxuLy8gICAgIGQwYTI4YzogI2QwYTI4YyxcclxuLy8gICAgIGU1YzM5ZTogI2U1YzM5ZSxcclxuLy8gICAgIGZmZjBlMDogI2ZmZjBlMCxcclxuLy8gICAgIGE2OTBjZTogI2E2OTBjZSxcclxuLy8gICAgIGRkYmViZTogI2RkYmViZSxcclxuLy8gICAgIDIwMGQwNTogIzIwMGQwNSxcclxuLy8gICAgIDViNDQyYjogIzViNDQyYixcclxuLy8gICAgIDQ5MTM2NTogIzQ5MTM2NSxcclxuLy8gICAgIDhjNDAxYjogIzhjNDAxYixcclxuLy8gICAgIDYzNTU0ZTogIzYzNTU0ZSxcclxuLy8gICAgIDg1MjUyNTogIzg1MjUyNSxcclxuLy8gICAgIGUyOGYzNTogI2UyOGYzNSxcclxuLy8gICAgIDkyOTI5MjogIzkyOTI5MixcclxuLy8gICAgIDZiNTc2ZjogIzZiNTc2ZixcclxuLy8gICAgIDdmNTQyNzogIzdmNTQyN1xyXG4vLyApO1xyXG4vLyBAbWl4aW4gY29sb3JSYWRpbygkY29sb3IpIHtcclxuLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICN7JGNvbG9yfSFpbXBvcnRhbnQ7XHJcbi8vIH1cclxuLy8gQGVhY2ggJGNvbG9yIGluICRjb2xvcnMge1xyXG4vLyAgICAgLmNvbG9yLS0je250aCgkY29sb3IsIDEpfSB7XHJcbi8vICAgICAgICAgQGluY2x1ZGUgY29sb3JSYWRpbygje250aCgkY29sb3IsIDIpfSk7XHJcbi8vICAgICB9XHJcbi8vIH0iLCIuc2VwYXJhdG9yIHtcclxuXHRkaXNwbGF5OmJsb2NrO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDoxMDAlO1xyXG5cdG1hcmdpbjozNXB4IGF1dG8gIWltcG9ydGFudDtcclxuXHQmOmFmdGVyIHtcclxuXHRcdGRpc3BsYXk6YmxvY2s7XHJcblx0XHRjb250ZW50OlwiXCI7XHJcblx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHRcdG1hcmdpbjowIGF1dG87XHJcblx0fVxyXG5cdCYtLXZlcnRpY2FsIHtcclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHR3aWR0aDogNHB4O1xyXG5cdFx0XHRoZWlnaHQ6NzhweDtcclxuXHRcdH1cclxuXHR9XHJcblx0Ji0taG9yaXpvbnRhbCB7XHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0aGVpZ2h0OiA1cHg7XHJcblx0XHRcdHdpZHRoOjgycHg7XHJcblx0XHR9XHJcblx0fVxyXG5cdCYtLWJsYWNrIHtcclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAjMWUxNTEzO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQmLS13aGl0ZSB7XHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdH1cclxuXHR9XHJcblx0Ji0tZ3JlZW4ge1xyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdGJhY2tncm91bmQ6IGdyZWVuO1xyXG5cdFx0fVxyXG5cdH1cclxufSIsIlxyXG52aWRlbyxpZnJhbWV7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG4gIGRpc3BsYXk6YmxvY2s7XHJcbn1cclxuZmlndXJlIHtcclxuXHRtYXJnaW46IDFlbSBhdXRvO1xyXG5cdHdpZHRoOjgyMHB4O1xyXG5cdG1heC13aWR0aDoxMDAlO1xyXG59XHJcblxyXG4udmlkZW97XHJcblx0Ji13cmFwcGVye1xyXG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0fVxyXG5cdCYtb3ZlcmxheXtcclxuXHRcdHBvc2l0aW9uOmFic29sdXRlO1xyXG5cdFx0dG9wOjA7XHJcblx0XHRsZWZ0OjA7XHJcblx0XHR3aWR0aDoxMDAlO1xyXG5cdFx0aGVpZ2h0OjEwMCU7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjUpO1xyXG5cdFx0YmFja2dyb3VuZC1zaXplOmNvdmVyO1xyXG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xyXG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXI7XHJcblx0XHR6LWluZGV4Ojk7XHJcblx0XHR0cmFuc2l0aW9uOmFsbCAxcyBlYXNlO1xyXG5cdFx0Y3Vyc29yOnBvaW50ZXI7XHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0LnZpZGVvLXBsYXktYnRue1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6cmdiYSgwLDAsMCwuNSk7XHJcblx0XHRcdH1cclxuXHRcdH1cdFx0XHJcblx0XHQmOmFjdGl2ZXtcclxuXHRcdFx0LnZpZGVvLXBsYXktYnRue1x0XHRcdFx0XHJcblx0XHRcdFx0Ym94LXNoYWRvdzowIDAgNTBweCAxNXB4ICNmZmY7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCYtLWhpZGRlbiB7XHJcblx0XHRcdG9wYWNpdHk6MDtcclxuXHRcdFx0dmlzaWJpbGl0eTpoaWRkZW47XHJcblx0XHR9XHJcblx0fVxyXG5cdCYtcGxheS1idG57XHJcblx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHQgICAgdG9wOiA1MCU7XHJcblx0ICAgIGxlZnQ6IDUwJTtcclxuXHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0ICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHQgICAgd2lkdGg6IDEzMnB4O1xyXG5cdCAgICBoZWlnaHQ6IDEzMnB4O1xyXG5cdCAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMik7XHJcblx0ICAgIGJvcmRlcjogN3B4IHNvbGlkICNmZmY7XHJcblx0ICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHQgICAgY29udGVudDogXCJcIjtcclxuXHRcdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHQgICAgdG9wOiA1MCU7XHJcblx0XHQgICAgbGVmdDogNTAlO1xyXG5cdFx0ICAgIG1hcmdpbi1sZWZ0OiA2cHg7XHJcblx0XHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0XHQgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuXHRcdCAgICBib3JkZXItd2lkdGg6IDM2cHggMCAzNnB4IDU0cHg7XHJcblx0XHQgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZmZmO1xyXG5cdFx0ICAgIHdpZHRoOiAwO1xyXG5cdFx0ICAgIGhlaWdodDogMDtcclxuXHRcdCAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgYihkZXNrdG9wKXtcclxuXHRcdFx0d2lkdGg6MTA3cHg7XHJcblx0XHRcdGhlaWdodDoxMDdweDtcclxuXHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0ICAgIFx0Ym9yZGVyLXdpZHRoOiAyOXB4IDAgMjlweCA0M3B4O1x0XHRcdFx0XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIGIoNzY3KXtcclxuXHRcdFx0d2lkdGg6MzlweDtcclxuXHRcdFx0aGVpZ2h0OjM5cHg7XHJcblx0XHRcdGJvcmRlci13aWR0aDozcHg7XHJcblx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdCAgICBcdGJvcmRlci13aWR0aDogMTBweCAwIDEwcHggMTZweDtcdFx0XHJcblx0XHQgICAgXHRtYXJnaW4tbGVmdDoycHg7XHRcdFxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLmFib3V0X19pbmZvX19ibG9ja3tcclxuICAgIHdpZHRoOjQ1N3B4O1xyXG4gICAgaGVpZ2h0OjM0MXB4O1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgIHBhZGRpbmctbGVmdDozMHB4O1xyXG4gICAgcGFkZGluZy10b3A6MzVweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6NTBweDtcclxuICAgIG1hcmdpbi10b3A6NzVweDtcclxuICAgIG1hcmdpbi1sZWZ0OjEwMHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHRAaW5jbHVkZSBiKG1vYmlsZSl7XHRcdFxyXG5cdFx0d2lkdGg6YXV0bztcclxuXHRcdGhlaWdodDphdXRvO1xyXG5cdFx0bWFyZ2luLXRvcDoxNXB4O1xyXG5cdFx0bWFyZ2luLWxlZnQ6MDtcclxuXHRcdHBhZGRpbmctbGVmdDoxNXB4O1xyXG5cdFx0cGFkZGluZy10b3A6MjVweDtcclxuXHRcdHBhZGRpbmctcmlnaHQ6MTVweDtcclxuXHRcdHBhZGRpbmctYm90dG9tOjE1cHg7XHJcblx0fVxyXG4gIH0iLCIuYm9hcmQge1xyXG5cdHdpZHRoOjEwMCU7XHJcblx0YmFja2dyb3VuZC1zaXplOmNvdmVyO1xyXG5cdGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcclxuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlciBjZW50ZXI7XHJcblx0cGFkZGluZzogMTAwcHggMDtcclxuXHRkaXNwbGF5OmZsZXg7XHJcblx0ZmxleC1mbG93OmNvbHVtbiBub3dyYXA7XHJcblx0anVzdGlmeS1jb250ZW50OmNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczpjZW50ZXI7XHJcblx0QGluY2x1ZGUgYihkZXNrdG9wKXtcclxuXHRcdHBhZGRpbmc6NzVweCAwO1xyXG5cdH1cclxuXHQmOmZpcnN0LWNoaWxkIHtcdFx0XHJcblx0XHRtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAxMzVweCk7XHJcblx0fVxyXG5cdCYuYXV0b3tcclxuXHRcdG1pbi1oZWlnaHQ6IDA7XHJcblx0fVxyXG5cdCZfX2NvbnRlbnQge1xyXG5cdFx0cGFkZGluZzogNDVweCAwIDY1cHg7XHJcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjEpOyBcclxuXHRcdGZsZXg6IDEgMSBhdXRvO1xyXG5cdFx0bWF4LXdpZHRoOjEwMCU7XHJcblx0fVxyXG5cdCZfX3RpdGxlIHtcclxuXHRcdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdFx0cGFkZGluZzowIDAgNDVweDtcclxuXHRcdG1hcmdpbjowO1xyXG5cdFx0Zm9udC1zaXplOjcwcHg7XHJcblx0XHRsaW5lLWhlaWdodDoxZW07XHJcblx0XHRjb2xvcjojZmZmO1xyXG5cdFx0QGluY2x1ZGUgYihkZXNrdG9wKXtcclxuXHRcdFx0Zm9udC1zaXplOjUwcHg7ICAgIFxyXG5cdFx0XHRwYWRkaW5nOjAgMCAxNXB4ICAgXHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBiKG1vYmlsZSl7XHJcblx0XHRcdGZvbnQtc2l6ZTogNDBweDtcclxuXHRcdH1cclxuXHR9XHJcblx0Jl9fYWN0aW9ucyB7XHJcblx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcclxuXHRcdFtjbGFzcyo9XCJidG5cIl17XHJcblx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7XHJcblx0XHRcdG1hcmdpbi1yaWdodDozMHB4O1xyXG5cdFx0XHRtaW4td2lkdGg6MTk0cHg7XHJcblx0XHRcdG1heC13aWR0aDoyOTBweDtcclxuXHRcdFx0d2lkdGg6YXV0bztcclxuXHRcdFx0QGluY2x1ZGUgYihtb2JpbGUpe1xyXG5cdFx0XHRcdGRpc3BsYXk6YmxvY2s7XHJcblx0XHRcdFx0bWFyZ2luOjAgYXV0byAzMHB4ICFpbXBvcnRhbnQ7XHJcblx0XHRcdH1cclxuXHRcdFx0JjpsYXN0LW9mLXR5cGV7XHJcblx0XHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQuc29jaWFsLWJ0bntcclxuXHRcdFx0cGFkZGluZzo4cHggMTBweDtcclxuXHRcdFx0d2hpdGUtc3BhY2U6bm93cmFwO1xyXG5cdFx0XHRpIHtcclxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDhweDtcclxuICAgIFx0XHRcdHBhZGRpbmctcmlnaHQ6IDhweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufSIsIiNjb250YWN0Rm9ybSB7XHJcblx0Ym9yZGVyLXJhZGl1czozcHg7XHJcblx0JjphZnRlcntcdFx0XHJcblx0XHRkaXNwbGF5OmJsb2NrO1xyXG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0XHRwYWRkaW5nOiAxNXB4IDA7XHJcblx0fVxyXG5cdCYuZmFpbCB7XHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0Y29sb3I6cmVkO1xyXG5cdFx0XHRjb250ZW50OlwiU29ycnkuIFRoZSBmb3JtIHdhc24ndCBzZW50LiBQbGVhc2UgdHJ5IGFnYWluIGxhdGVyXCJcclxuXHRcdH1cclxuXHR9XHJcblx0Ji5zZW50IHtcclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRjb2xvcjpncmVlbjtcclxuXHRcdFx0Y29udGVudDpcIlRoYW5rIHlvdS4gVGhlIGZvcm0gd2FzIHNlbnQuXCJcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuLmNvbnRhY3RzX19zZWN0aW9uIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDcwcHg7IH1cclxuXHJcbi5jb250YWN0c19faGVhZGVyIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMjRweDsgfVxyXG5cclxuLmNvbnRhY3R1c19fYWRkcmVzc19fc2VjdGlvbiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcclxuICAgIEBpbmNsdWRlIGIobW9iaWxlKSB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbiAgICB9XHJcbn1cclxuXHRcclxuLmNvbnRhY3RzX19yb3cge1xyXG5cdGRpc3BsYXk6ZmxleDtcclxuXHRmbGV4LWZsb3c6cm93IG5vd3JhcDtcclxuXHQuY29udGFjdHNfX2NvbC0yIHtcclxuXHRcdGZsZXg6IDAgMCA1MCU7XHJcblx0XHRwYWRkaW5nOjAgMTVweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgYih0YWJsZXQpe1xyXG5cdFx0ZmxleC13cmFwOndyYXA7XHJcblx0XHQuY29udGFjdHNfX2NvbC0yIHtcclxuXHRcdFx0ZmxleDogMSAxIDEwMCU7XHJcblx0XHRcdHBhZGRpbmc6MDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuLmNvbnRhY3R1c19faW1nX193cmFwIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XHJcblx0Ym94LXNoYWRvdzogMCAwIDEwcHggMCByZ2JhKDM3LCAzNywgMzcsIDAuMDUpO1xyXG59XHJcblxyXG4uY29udGFjdHVzX19pbWdfX3dyYXAgPiBpbWd7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG5cdEBpbmNsdWRlIGIodGFibGV0KXtcclxuXHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG5cdFx0d2lkdGg6NDUlO1xyXG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHR9XHJcbn1cclxuXHJcbi5jb250YWN0dXNfX2xvZ297XHJcbiAgICBwYWRkaW5nOjMwcHg7XHJcblx0QGluY2x1ZGUgYih0YWJsZXQpe1xyXG5cdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcblx0XHR3aWR0aDo0NSU7XHJcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdH1cclxufVxyXG5cclxuLmFkZHJlc3NfX3NlY3Rpb24ge1xyXG4gICAgcGFkZGluZy10b3A6MjBweDtcclxuICAgIHBhZGRpbmctbGVmdDozMHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDoyMHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206NDNweDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFtjbGFzcyo9XCJmYVwiXXtcclxuXHRcdGZvbnQtc2l6ZToxOHB4O1xyXG5cdFx0bWFyZ2luLXJpZ2h0OjE4cHg7XHJcblx0XHRjb2xvcjojYTBjNjNmO1xyXG5cdFx0dmVydGljYWwtYWxpZ246bWlkZGxlO1xyXG5cdH1cclxuICAgIEBpbmNsdWRlIGIobW9iaWxlKXtcclxuICAgICAgICBmb250LXNpemU6MjBweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6MjBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OjIwcHg7XHJcbiAgICB9XHJcbiAgICAubG9jYXRpb257XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBAaW5jbHVkZSBiKGRlc2t0b3Ape1xyXG4gICAgICAgICAgICBmb250LXNpemU6MjJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYihtb2JpbGUpe1xyXG4gICAgICAgICAgICBmb250LXNpemU6MjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblx0cCBhIHtcclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRjb2xvcjogI2EwYzYzZlxyXG5cdFx0fVxyXG5cdH1cclxuICAgIC5jaXR5e1xyXG4gICAgICAgIHBhZGRpbmctdG9wOjM4cHg7XHJcbiAgICAgICAgY29sb3I6I2EwYzYzZjtcclxuICAgICAgICBmb250LXNpemU6MjRweDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgfVxyXG4gICAgLmluZGV4e1xyXG4gICAgICAgIHBhZGRpbmctdG9wOjM3cHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OjMycHg7XHJcbiAgICAgICAgZm9udC1zaXplOjI0cHg7XHJcbiAgICB9XHJcbiAgICAuYWRkcmVzc3tcclxuICAgICAgICBwYWRkaW5nLXRvcDoyNHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZToyNHB4O1xyXG4gICAgfVxyXG4gICAgLnBob25le1xyXG4gICAgICAgIHBhZGRpbmctdG9wOjM5cHg7XHJcbiAgICAgICAgZm9udC1zaXplOjI0cHg7XHJcbiAgICB9XHJcbiAgICAuZW1haWx7XHJcbiAgICAgICAgcGFkZGluZy10b3A6MzVweDtcclxuICAgICAgICBmb250LXNpemU6MjRweDtcclxuICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zb2NpYWwtbGlua3N7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRwYWRkaW5nOjAgMjBweCAzMHB4IDMwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIGF7XHJcbiAgICAgICAgY29sb3I6ICNhMGM2M2Y7XHJcbiAgICAgICAgZm9udC1zaXplOjUycHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICY6aG92ZXJ7XHJcblx0XHRcdGNvbG9yOiAjMDAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmZvcm0tZ3JvdXB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbToyNXB4O1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuXHJcbiAgICBsYWJlbHtcclxuICAgICAgICBjb2xvcjojYTBjNjNmO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0e1xyXG4gICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgZm9udC1zaXplOjE2cHg7XHJcbiAgICAgICAgY29sb3I6IHJnYmEoNTEsIDUxLCA1MSwgMC41KTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggMCByZ2JhKDM3LCAzNywgMzcsIDAuMDUpO1xyXG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICM5NTk1OTU7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OjlweDtcclxuICAgICAgICBwYWRkaW5nLXRvcDo5cHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206NXB4O1xyXG4gICAgfVxyXG5cclxuICAgIHNlbGVjdHtcclxuICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNnB4O1xyXG4gICAgICAgIGNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIDAuNSk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgcmdiYSgzNywgMzcsIDM3LCAwLjA1KTtcclxuICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAjOTU5NTk1O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDo5cHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6OXB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOjVweDtcclxuICAgIH1cclxuXHJcbiAgICB0ZXh0YXJlYXtcclxuICAgICAgICBmb250LXNpemU6MTZweDtcclxuICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgIGNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIDAuNSk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgcmdiYSgzNywgMzcsIDM3LCAwLjA1KTtcclxuICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAjOTU5NTk1O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDo5cHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6OXB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOjVweDtcclxuICAgICAgICByZXNpemU6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mb3JtLWdyb3VwLnJlcXVpcmVke1xyXG4gICAgbGFiZWw6OmFmdGVye1xyXG4gICAgICAgIGNvbnRlbnQ6XCIqXCI7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5saWNlbnNlX190ZXh0e1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIG1hcmdpbi1ib3R0b206MzhweDtcclxufVxyXG5cclxuLmxpY2Vuc2VfX2xpbmtfX2J0biB7XHJcbiAgICBjb2xvcjojYTBjNjNmO1xyXG59XHJcblxyXG4uc3VibWl0X19idG57XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIHdpZHRoOiAyMTNweDtcclxuICAgIGhlaWdodDogMzVweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNhMGM2M2Y7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgZm9udC1zaXplOjE4cHg7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxufSIsIi5jdXN0b21lcnNfX3NlY3Rpb257XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgcGFkZGluZy10b3A6IDIwcHg7XHJcblx0cGFkZGluZy1ib3R0b206IDcwcHg7XHJcblx0QGluY2x1ZGUgYihtb2JpbGUpe1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDEwMHB4XHJcblx0fVxyXG4gIH1cclxuXHJcbi5jdXN0b21lcnNfX2hlYWRlcntcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIG1hcmdpbi10b3A6IDYwcHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgZm9udC1zaXplOiAyNHB4O1xyXG59XHJcblxyXG4uY3VzdG9tZXJzX19zZXBhcmF0b3J7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNhMGM2M2Y7IFxyXG4gIGxpbmUtaGVpZ2h0OjAuMWVtOyBcclxuICBtYXJnaW4tdG9wOjQwcHg7XHJcbiAgbWFyZ2luLWJvdHRvbTo0MHB4O1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4uY3VzdG9tZXJzX190ZXh0e1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBwYWRkaW5nLWxlZnQ6IDM1cHg7XHJcbiAgcGFkZGluZy1yaWdodDogMzVweDtcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIG1hcmdpbi1ib3R0b206NDBweDtcclxuICBwe1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMztcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgICYge1xyXG4gICAgXHRwYWRkaW5nOjZweCAwIDZweDtcclxuICAgIH1cclxuICB9XHJcbiAgLnF1b3RlLWljb257XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBmb250LXNpemU6IDI3cHg7XHJcbiAgICBjb2xvcjojYTBjNjNmO1xyXG4gIH1cclxuICBcclxuICAucXVvdGUtaWNvbjpmaXJzdC1jaGlsZHtcclxuICAgIHRvcDotMTBweDtcclxuICAgIGxlZnQ6MHB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgXHJcbiAgfVxyXG4gIC5xdW90ZS1pY29uOmxhc3QtY2hpbGR7XHJcbiAgICBib3R0b206LTEwcHg7XHJcbiAgICByaWdodDowcHg7XHJcbiAgfVxyXG59XHJcblxyXG4udmlzaXRfX2xpbmtfX2J0bntcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgY29sb3I6I2EwYzYzZjtcclxuICBmb250LXNpemU6MThweDtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBmbG9hdDogbGVmdDtcclxuICB0cmFuc2l0aW9uOmFsbCAuMTVzIGVhc2UtaW4tb3V0O1xyXG4gICY6aG92ZXIge1xyXG5cdCAgY29sb3I6YmxhY2s7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGIobW9iaWxlKXtcclxuXHQgIHBvc2l0aW9uOmFic29sdXRlO1xyXG5cdGxlZnQ6MTVweDtcclxuXHRtYXJnaW4tdG9wOjJlbVxyXG4gIH1cclxufVxyXG5cclxuLnZpc2l0X19saW5rX19idG46OmFmdGVye1xyXG4gIGNvbnRlbnQ6ICfihpInO1xyXG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG59XHJcblxyXG4uc3VwcG9ydF9fbGlua19fYnRue1xyXG4gIGZsb2F0OiByaWdodDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgY29sb3I6I2EwYzYzZjtcclxuICBmb250LXNpemU6MThweDtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG4uY3VzdG9tZXJzX19zbGlkZXJ7XHJcbiAgaGVpZ2h0OjQwcHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgZGlzcGxheTogZmxleDtcclxufVxyXG5cclxuLnByZXZfX2J0bntcclxuICBvcGFjaXR5OiAwLjM7XHJcbiAgY29sb3I6IzMzMztcclxuICBmb250LXNpemU6IDMycHg7XHJcbiAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IG5vbmU7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGxlZnQ6MHB4O1xyXG59XHJcblxyXG4ubmV4dF9fYnRue1xyXG4gIG9wYWNpdHk6IDAuMztcclxuICBjb2xvcjojMzMzO1xyXG4gIGZvbnQtc2l6ZTogMzJweDtcclxuICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6MHB4O1xyXG59IiwiLmV4cGVydGlzZV9fc2VjdGlvbl9fd3JhcHBlcntcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWZhO1xyXG59XHJcblxyXG4uZXhwZXJ0aXNlX19zZWN0aW9ue1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcGFkZGluZy10b3A6IDIwcHg7XHJcblx0cGFkZGluZy1ib3R0b206IDcwcHg7XHJcblx0QGluY2x1ZGUgYihtb2JpbGUpe1xyXG5cdFx0XHJcblx0cGFkZGluZy1ib3R0b206IDMwcHg7XHJcblx0fVxyXG4gIH1cclxuXHJcbiAgLmV4cGVydGlzZV9fc2VwYXJhdG9ye1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNhMGM2M2Y7IFxyXG4gICAgbGluZS1oZWlnaHQ6MC4xZW07IFxyXG4gICAgbWFyZ2luLXRvcDo0MHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTo0MHB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAuZXhwZXJ0aXNlX19oZWFkZXJ7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0Zm9udC1zaXplOiAyNHB4O1xyXG5cdEBpbmNsdWRlIGIobW9iaWxlKXtcclxuXHRcdG1hcmdpbjogNDBweCAwIDEwcHhcclxuXHR9XHJcbiAgfSIsIi5mb290ZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgaGVpZ2h0OiA4NXB4O1xyXG4gICAgYmFja2dyb3VuZDojMzYzNjM2O1xyXG4gICAgcGFkZGluZzogMzFweCAwIDQxcHg7XHJcblx0QGluY2x1ZGUgYihtb2JpbGUpe1xyXG5cdFx0aGVpZ2h0OmF1dG87XHJcblx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcclxuXHR9XHJcbiAgICBzbWFsbCB7XHJcbiAgICAgICAgZm9udC1zaXplOjEycHg7XHJcbiAgICAgICAgY29sb3I6I2ZmZjtcclxuICAgIH1cclxuICAgICZfX25hdiB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICYtY29sIHtcclxuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgICYtLXdpZGUge1xyXG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogMjQwcHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDoyNDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBiKG1vYmlsZSl7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgICYtY29sIHtcclxuICAgICAgICAgICAgICAgIGZsZXg6MSAwIDEwMCU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAmICsgJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoxNXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblx0XHR9XHJcblx0XHR1bCB7XHJcblx0XHRcdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdGRpc3BsYXk6ZmxleDtcclxuXHRcdFx0bGkge1xyXG5cdFx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMzNweDtcclxuXHRcdFx0XHQmOmxhc3Qtb2YtdHlwZXtcclxuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0YSB7XHJcblx0XHRcdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZToxNnB4O1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgYihkZXNrdG9wKXtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOjE1cHg7ICAgIFxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiAjYTBjNjNmO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRAaW5jbHVkZSBiKG1vYmlsZSl7XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdFx0bGkge1xyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG4gICAgfVxyXG4gICAgXHJcbn0iLCIuaGVhZGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6IDE3cHggMDtcclxuICAgICZfX2xvZ28ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR3aWR0aDogMjYwcHg7XHJcblx0XHRtYXgtd2lkdGg6MTAwJTtcclxuICAgICAgICBtYXJnaW46IDAgYXV0byAwIDA7XHJcbiAgICAgICAgQGluY2x1ZGUgYihtb2JpbGUpIHtcclxuXHRcdFx0bWFyZ2luOiAwIGF1dG8gMTVweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDA7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19uYXYge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBAaW5jbHVkZSBiKG1vYmlsZSkge1xyXG5cdFx0XHRkaXNwbGF5OmJsb2NrXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0cmV0Y2g7XHJcbiAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYihtb2JpbGUpIHtcclxuXHRcdFx0XHRtYXJnaW46IDAgYXV0bztcclxuXHRcdFx0XHRwYWRkaW5nOjA7XHJcblx0XHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmRcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuanMtZHJvcGRvd24tY29udCB7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6LTE1cHggMCAwIDAgI2ZmZiwgMTVweCAwIDAgMCAjZmZmO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMzBweDtcclxuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0JjpsYXN0LWNoaWxkIHtcclxuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDowO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQmOmZpcnN0LWNoaWxkIHtcclxuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OjA7XHJcblx0XHRcdFx0fVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYihtb2JpbGUpIHtcclxuXHRcdFx0XHRcdG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGIobWluKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjYTBjNjNmO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6I2EwYzYzZjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIC5oZWFkZXJfX25hdiAjbWVudSB7XHJcbi8vICAgICBAaW5jbHVkZSBiKDk2MCkge1xyXG4vLyAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbi8vICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuLy8gICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbi8vICAgICAgICAgd2lkdGg6IDE5MHB4O1xyXG4vLyAgICAgICAgIGhlaWdodDogMTAwdmg7XHJcbi8vICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbi8vICAgICAgICAgcmlnaHQ6IDA7XHJcbi8vICAgICAgICAgdG9wOiAwO1xyXG4vLyAgICAgICAgIHotaW5kZXg6IDk5OTk4O1xyXG4vLyAgICAgICAgIHBhZGRpbmc6IDZweCAwIDA7XHJcbi8vICAgICAgICAgYm94LXNoYWRvdzogMCAwIDJweCAxcHggIzdkOTM5YjtcclxuLy8gICAgICAgICAmOmJlZm9yZSB7XHJcbi8vICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbi8vICAgICAgICAgfVxyXG4vLyAgICAgICAgICY6YWZ0ZXIge1xyXG4vLyAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuLy8gICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuLy8gICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwdncgLSAxOTBweCk7XHJcbi8vICAgICAgICAgICAgIGhlaWdodDogMTAwdmg7XHJcbi8vICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuLy8gICAgICAgICAgICAgdG9wOiAwO1xyXG4vLyAgICAgICAgICAgICByaWdodDogMTkwcHg7XHJcbi8vICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEod2hpdGUsIC42KTtcclxuLy8gICAgICAgICAgICAgei1pbmRleDogOTk5OTtcclxuLy8gICAgICAgICB9XHJcbi8vICAgICAgICAgJi5hY3RpdmUge1xyXG4vLyAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4vLyAgICAgICAgIH1cclxuLy8gICAgICAgICBsaSB7XHJcbi8vICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4vLyAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4vLyAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbi8vICAgICAgICAgICAgIGEge1xyXG4vLyAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4vLyAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE5cHg7XHJcbi8vICAgICAgICAgICAgICAgICBjb2xvcjogIzdkOTM5YjtcclxuLy8gICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcclxuLy8gICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4vLyAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuLy8gICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMCAxMnB4IDE2cHg7XHJcbi8vICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuLy8gICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzdkOTM5YjtcclxuLy8gICAgICAgICAgICAgICAgIH1cclxuLy8gICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcclxuLy8gICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL21pc2MvYm90dG9tLnN2ZykgbGVmdCBib3R0b20gcmVwZWF0LXgsIHVybCguLi9pbWcvbWlzYy90b3Auc3ZnKSBsZWZ0IHRvcCByZXBlYXQteCwgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB0cmFuc3BhcmVudCAwJSwgIzdkOTM5YiAwJSwgIzdkOTM5YiAxMDAlKSAwIDFweCBuby1yZXBlYXQ7XHJcbi8vICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEwcHgsIGF1dG8gMTBweCwgMTAwJSBjYWxjKDEwMCUgLSAycHgpO1xyXG4vLyAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4vLyAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4vLyAgICAgICAgICAgICAgICAgICAgIH1cclxuLy8gICAgICAgICAgICAgICAgIH1cclxuLy8gICAgICAgICAgICAgfVxyXG4vLyAgICAgICAgIH1cclxuLy8gICAgIH1cclxuLy8gfVxyXG4vLyAubWVudS1idG4ge1xyXG4vLyAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4vLyAgICAgbWFyZ2luOiAwO1xyXG4vLyAgICAgd2lkdGg6IDIzcHg7XHJcbi8vICAgICBoZWlnaHQ6IDE2cHg7XHJcbi8vICAgICBkaXNwbGF5OiBub25lO1xyXG4vLyAgICAgYm9yZGVyOiAwO1xyXG4vLyAgICAgdG9wOiAyMHB4O1xyXG4vLyAgICAgcmlnaHQ6IDIwcHg7XHJcbi8vICAgICB6LWluZGV4OiA5OTk5OTtcclxuLy8gICAgIEBpbmNsdWRlIGIoOTYwKSB7XHJcbi8vICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4vLyAgICAgfVxyXG4vLyAgICAgLmxpbmUge1xyXG4vLyAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4vLyAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4vLyAgICAgICAgIGhlaWdodDogMnB4O1xyXG4vLyAgICAgICAgIGJhY2tncm91bmQ6ICM3ZDkzOWI7XHJcbi8vICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4vLyAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XHJcbi8vICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcclxuLy8gICAgICAgICB6LWluZGV4OiAtOTk5OXB4O1xyXG4vLyAgICAgICAgIGZvbnQtc2l6ZTogMDtcclxuLy8gICAgICAgICBsaW5lLWhlaWdodDogMDtcclxuLy8gICAgICAgICBib3gtc2hhZG93OiAwIDAgNHB4IDJweCAjZmZmO1xyXG4vLyAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XHJcbi8vICAgICAgICAgICAgIHRvcDogMDtcclxuLy8gICAgICAgICB9XHJcbi8vICAgICAgICAgJjpudGgtb2YtdHlwZSgyKSB7XHJcbi8vICAgICAgICAgICAgIHRvcDogN3B4O1xyXG4vLyAgICAgICAgIH1cclxuLy8gICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XHJcbi8vICAgICAgICAgICAgIHRvcDogMTRweDtcclxuLy8gICAgICAgICB9XHJcbi8vICAgICB9XHJcbi8vICAgICAmLmFjdGl2ZSB7XHJcbi8vICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4vLyAgICAgICAgIC5saW5lIHtcclxuLy8gICAgICAgICAgICAgdG9wOiA1MCU7XHJcbi8vICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbi8vICAgICAgICAgfVxyXG4vLyAgICAgICAgIC5saW5lOmZpcnN0LW9mLXR5cGUge1xyXG4vLyAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbi8vICAgICAgICAgfVxyXG4vLyAgICAgICAgIC5saW5lOmxhc3Qtb2YtdHlwZSB7XHJcbi8vICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcbi8vICAgICAgICAgfVxyXG4vLyAgICAgICAgIC5saW5lOm50aC1vZi10eXBlKDIpIHtcclxuLy8gICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuLy8gICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4vLyAgICAgICAgIH1cclxuLy8gICAgIH1cclxuLy8gICAgICY6aG92ZXIge1xyXG4vLyAgICAgICAgIG9wYWNpdHk6IC44O1xyXG4vLyAgICAgfVxyXG4vLyB9IiwiLmhpc3RvcnlfX3NlY3Rpb25fX3dyYXBwZXJ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLmhpc3RvcnlfX3NlY3Rpb257XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuXHRwYWRkaW5nLWJvdHRvbTogNzBweDtcclxuXHRAaW5jbHVkZSBiKHRhYmxldCl7XHJcblx0XHRwYWRkaW5nOiAyMHB4IDAgMDtcclxuXHR9XHJcbiAgfVxyXG5cclxuICAuaGlzdG9yeV9fc2VwYXJhdG9ye1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNhMGM2M2Y7IFxyXG4gICAgbGluZS1oZWlnaHQ6MC4xZW07IFxyXG4gICAgbWFyZ2luLXRvcDo0MHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTo0MHB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAuaGlzdG9yeV9faGVhZGVye1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG4gIH0iLCIuaG9tZV9fbGlua3NfX3dyYXBwZXJ7XHJcbiAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5ob21lX19saW5rc19fc2VjdGlvbntcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmctdG9wOiA2NXB4O1xyXG5cdHBhZGRpbmctYm90dG9tOiA0NXB4O1xyXG5cdEBpbmNsdWRlIGIobW9iaWxlKXtcclxuXHRcdHBhZGRpbmctdG9wOiAzMHB4O1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDMwcHg7XHJcblxyXG5cdH1cclxuICB9XHJcblxyXG4gIC5ob21lX19saW5rc19fZmVhdHVyZXMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgQGluY2x1ZGUgYigxMTUwKSB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ob21lX19saW5rc19faW1nX193cmFwIHtcclxuICAgIHBhZGRpbmc6MTBweDtcclxuICAgIHdpZHRoOiAxNjZweDtcclxuICAgIGhlaWdodDoxNTZweDtcclxuICAgIG1hcmdpbi10b3A6MTBweDtcclxuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgcmdiYSgzNywgMzcsIDM3LCAwLjA1KTtcclxuXHRsaW5lLWhlaWdodDogbm9ybWFsO1xyXG5cdEBpbmNsdWRlIGIobWluKSB7XHJcblx0XHRtYXJnaW4tbGVmdDogYXV0bztcclxuXHRcdG1hcmdpbi1yaWdodDogYXV0bztcclxuXHR9XHJcbn1cclxuXHJcblxyXG5cclxuLmhvbWVfX2xpbmtzX19pbWdfX2Rlc2NyaXB0aW9uIHtcclxuICAgIG1hcmdpbi10b3A6IDEycHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5ob21lX19saW5rc19faW1nX19kZXNjcmlwdGlvbiAudGl0bGUge1xyXG4gICAgZm9udC1zaXplOiAxLjVlbTtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBAaW5jbHVkZSBiKGRlc2t0b3Ape1xyXG4gICAgICAgIGZvbnQtc2l6ZToyMnB4XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBiKG1vYmlsZSl7XHJcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgbWFyZ2luOjEwcHggYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ob21lX19pY29ue1xyXG4gICAgd2lkdGg6NTVweDtcclxuICAgIGhlaWdodDo2MHB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6MzAlO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIEBpbmNsdWRlIGIoZGVza3RvcCl7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6NDAlO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYih0YWJsZXQpe1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OjQwJTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGIobW9iaWxlKXtcclxuICAgICAgICBtYXJnaW4tbGVmdDo0MCU7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBiKG1pbil7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6NDAlO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc3RhcnRfX2ljb257XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9ob21lL3N0YXJ0X2ljb24ucG5nJyk7XHJcbn1cclxuXHJcbi5pbXBsZW1lbnRhdGlvbl9faWNvbntcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2hvbWUvaW1wbGVtZW50YXRpb25faWNvbi5wbmcnKTtcclxufVxyXG5cclxuLnllYXJzX19pY29ue1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaG9tZS95ZWFyc19pY29uLnBuZycpO1xyXG59XHJcblxyXG4uc3VwcG9ydF9faWNvbntcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2hvbWUvc3VwcG9ydF9pY29uLnBuZycpO1xyXG59XHJcblxyXG4ub2Zmc2hvcmVfX2ljb257XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9ob21lL29mZnNob3JlX2ljb24ucG5nJyk7XHJcbn1cclxuXHJcbi8vIC5ob21lX19saW5rc19faW1nX193cmFwOmhvdmVye1xyXG4vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogI2EwYzYzZjtcclxuLy8gICAgIGNvbG9yOiNmZmY7XHJcbi8vIH1cclxuXHJcbi8vIC5ob21lX19saW5rc19faW1nX193cmFwOmhvdmVyIC5zdGFydF9faWNvbntcclxuLy8gICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2hvbWUvc3RhcnRfaG92ZXJfaWNvbi5wbmcnKTtcclxuLy8gfVxyXG5cclxuLy8gLmhvbWVfX2xpbmtzX19pbWdfX3dyYXA6aG92ZXIgLmltcGxlbWVudGF0aW9uX19pY29ue1xyXG4vLyAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaG9tZS9pbXBsZW1lbnRhdGlvbl9ob3Zlcl9pY29uLnBuZycpO1xyXG4vLyB9XHJcblxyXG4vLyAuaG9tZV9fbGlua3NfX2ltZ19fd3JhcDpob3ZlciAueWVhcnNfX2ljb257XHJcbi8vICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9ob21lL3llYXJzX2hvdmVyX2ljb24ucG5nJyk7XHJcbi8vIH1cclxuXHJcbi8vIC5ob21lX19saW5rc19faW1nX193cmFwOmhvdmVyIC5zdXBwb3J0X19pY29ue1xyXG4vLyAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaG9tZS9zdXBwb3J0X2hvdmVyX2ljb24ucG5nJyk7XHJcbi8vIH1cclxuXHJcbi8vIC5ob21lX19saW5rc19faW1nX193cmFwOmhvdmVyIC5vZmZzaG9yZV9faWNvbntcclxuLy8gICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2hvbWUvb2Zmc2hvcmVfaG92ZXJfaWNvbi5wbmcnKTtcclxuLy8gfSIsIi5ob21lX19zZXJ2aWNlc19fd3JhcHBlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaG9tZS9zZXJ2aWNlcy5wbmdcIik7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxufVxyXG5cclxuLmhvbWVfX3NlcnZpY2VzX19zZWN0aW9uIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDcwcHg7XHJcbn1cclxuXHJcbi5ob21lX19zZXJ2aWNlc19faGVhZGVyIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMjRweDtcclxufVxyXG5cclxuLmhvbWVfX3NlcnZpY2VzX19mZWF0dXJlcyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgQGluY2x1ZGUgYigxMTUwKSB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ob21lX19zZXJ2aWNlc19fYmxvY2sge1xyXG4gICAgd2lkdGg6IDI2MnB4O1xyXG4gICAgbWluLWhlaWdodDogNDUycHg7XHJcbiAgICBtYXJnaW46IDE1cHggNDBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4IDAgcmdiYSgzNywgMzcsIDM3LCAwLjAzKTtcclxuICAgIEBpbmNsdWRlIGIoMTEwMCkge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XHJcblx0XHRwYWRkaW5nOiAwIDAgMTVweDtcclxuXHRcdG1hcmdpbjoxNXB4O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYihtaW4pIHtcclxuICAgICAgICBtYXJnaW46IDE1cHggYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuLmhvbWVfX3NlcnZpY2VzX19pbWdfX2Rlc2NyaXB0aW9uIHtcclxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIEBpbmNsdWRlIGIodGFibGV0KSB7XHJcbiAgICAgICAgcGFkZGluZzogMTVweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4uaG9tZV9fc2VydmljZXNfX2ltZ19fZGVzY3JpcHRpb24gLnRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMS41ZW07XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTNweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBAaW5jbHVkZSBiKGRlc2t0b3ApIHtcclxuICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBiKG1vYmlsZSkge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucmVhZF9fbW9yZV9fYnRuIHtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjb2xvcjogI2EwYzYzZjtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdGZsb2F0OiBsZWZ0O1xyXG5cdHRyYW5zaXRpb246YWxsIC4xNXMgZWFzZS1pbi1vdXQ7XHJcblx0Jjpob3ZlciB7XHJcblx0XHRjb2xvcjpibGFja1xyXG5cdH1cclxufVxyXG5cclxuLnJlYWRfX21vcmVfX2J0bjo6YWZ0ZXIge1xyXG4gICAgY29udGVudDogJ+KGkic7XHJcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcclxufVxyXG5cclxuXHJcbi5ob21lX19zZXJ2aWNlc19faW1nX193cmFwIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgLmhvbWVfX3NlcnZpY2VzX19pbWdfX3dyYXAtY29udGVudCxcclxuICAgIC5vdmVybGF5IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIC5ob21lX19zZXJ2aWNlc19faW1nX193cmFwLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgLm92ZXJsYXkge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC41O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2EwYzYzZjtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIuaG9tZV9fYm9hcmQtY2Fyb3VzZWwge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLnNsaWNrLWFycm93IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG5cdFx0ei1pbmRleDogOTk5O1xyXG5cdFx0d2lkdGg6IDQwcHg7XHJcblx0XHRoZWlnaHQ6IDQwcHg7XHJcblx0XHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKCNmZmYsLjMpO1xyXG5cdFx0Y3Vyc29yOnBvaW50ZXI7XHJcblx0XHR0cmFuc2l0aW9uOmFsbCAuMTVzIGVhc2UtaW4tb3V0O1xyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoI2ZmZiwgLjUpO1xyXG5cdFx0fVxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRjb250ZW50OlwiXCI7XHJcblx0XHRcdGRpc3BsYXk6YmxvY2s7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0dG9wOjEycHg7XHJcblx0XHRcdGJvcmRlci1jb2xvcjojMzMzO1xyXG5cdFx0XHRib3JkZXItc3R5bGU6c29saWQ7XHJcblx0XHRcdHdpZHRoOiAxNnB4O1xyXG5cdFx0XHRoZWlnaHQ6IDE2cHg7XHJcblx0XHR9XHRcclxuICAgICAgICAmLnNsaWNrLXByZXYge1xyXG4gICAgICAgICAgICBsZWZ0OiA0NXB4O1xyXG5cdFx0XHQmOmJlZm9yZXtcclxuXHRcdFx0XHR0cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKTtcclxuXHRcdFx0XHRib3JkZXItd2lkdGg6IDAgMCAzcHggM3B4O1xyXG5cdFx0XHRcdGxlZnQ6MTVweDtcclxuXHRcdFx0fVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLnNsaWNrLW5leHQge1xyXG4gICAgICAgICAgICByaWdodDogNDVweDtcclxuXHRcdFx0JjpiZWZvcmV7XHJcblx0XHRcdFx0dHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpO1xyXG5cdFx0XHRcdGJvcmRlci13aWR0aDogMCAzcHggM3B4IDA7XHJcblx0XHRcdFx0bGVmdDoxMHB4O1xyXG5cdFx0XHR9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNsaWNrLWRvdHMge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBib3R0b206IDQwcHg7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG5cdFx0bWFyZ2luOiAwO1xyXG5cdFx0ei1pbmRleDo5OTk7XHJcblx0XHRAaW5jbHVkZSBiKG1pbil7XHJcblx0XHRcdGJvdHRvbTo1cHg7XHJcblx0XHR9XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDA7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAycHg7XHJcbiAgICAgICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZTogMDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCA1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcblx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0XHRcdCY6aG92ZXIge1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZDpyZ2JhKCNmZmYsIC41KVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQmLnNsaWNrLWFjdGl2ZSBidXR0b24ge1x0XHRcdFx0XHJcblx0XHRcdFx0YmFja2dyb3VuZDpyZ2JhKCNmZmYsIC41KVxyXG5cdFx0XHR9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaG9tZV9faW5mb19fYmxvY2sge1xyXG4gICAgd2lkdGg6IDQ1N3B4O1xyXG4gICAgaGVpZ2h0OiAzNDFweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogNjVweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XHJcbiAgICBtYXJnaW4tdG9wOiA3NXB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDEwMHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgQGluY2x1ZGUgYihtb2JpbGUpIHtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDI1cHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcclxuICAgIH1cclxufVxyXG5cclxuLmhvbWVfX3RpdGxlIHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gICAgY29sb3I6ICMwMDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgQGluY2x1ZGUgYihkZXNrdG9wKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uaG9tZV9fc2VwYXJhdG9yIHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYTBjNjNmO1xyXG4gICAgbGluZS1oZWlnaHQ6IDAuMWVtO1xyXG4gICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLmhvbWVfX3N1Yl9fdGl0bGUge1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICBjb2xvcjogIzAwMDtcclxuICAgIEBpbmNsdWRlIGIoZGVza3RvcCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIH1cclxufVxyXG5cclxuLmhvbWVfX2hlYWRlciB7XHJcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgIEBpbmNsdWRlIGIoZGVza3RvcCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzNweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE3cHg7XHJcbiAgICB9XHJcbn0iLCIubGVhZGVyc2hpcF9fd3JhcHBlcntcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5ZmE7XHJcbn1cclxuXHJcbi5sZWFkZXJzaGlwX19zZWN0aW9ue1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHBhZGRpbmctYm90dG9tOiA2MHB4O1xyXG5cdEBpbmNsdWRlIGIodGFibGV0KXtcclxuXHRcdHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG5cdH1cclxufVxyXG5cclxuLmxlYWRlcnNoaXBfX2hlYWRlcntcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMjRweDtcclxufVxyXG5cclxuLmxlYWRlcnNoaXBfX2ZlYXR1cmVzIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xyXG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIG1hcmdpbjogMCAtMTVweDtcclxuICAgIEBpbmNsdWRlIGIoMTE1MCkge1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubGVhZGVyc2hpcF9faW1nX193cmFwIHtcclxuICAgIHdpZHRoOiA0NThweDtcclxuICAgIG1hcmdpbi10b3A6MjBweDtcclxuICAgIG1hcmdpbi1sZWZ0OjE1cHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6MTVweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMjBweCAwIHJnYmEoMzcsIDM3LCAzNywgMC4yKTtcclxufVxyXG5cclxuXHJcbi5sZWFkZXJzaGlwX19pbWdfX2Rlc2NyaXB0aW9uIHtcclxuICAgIHBhZGRpbmc6MjJweDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5sZWFkZXJzaGlwX19pbWdfX2Rlc2NyaXB0aW9uIC50aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDEuNWVtO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBAaW5jbHVkZSBiKGRlc2t0b3Ape1xyXG4gICAgICAgIGZvbnQtc2l6ZToyMnB4XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBiKG1vYmlsZSl7XHJcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgbWFyZ2luOjEwcHggYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLnJldmlld3NfX3NlY3Rpb257XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgcGFkZGluZy10b3A6IDYwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcclxuICB9XHJcblxyXG4ucmV2aWV3c19faGVhZGVye1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgbWFyZ2luLXRvcDogNDBweDtcclxuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBmb250LXNpemU6IDI0cHg7XHJcbn1cclxuXHJcbi5yZXZpZXdzX19zZXBhcmF0b3J7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNhMGM2M2Y7IFxyXG4gIGxpbmUtaGVpZ2h0OjAuMWVtOyBcclxuICBtYXJnaW4tdG9wOjQwcHg7XHJcbiAgbWFyZ2luLWJvdHRvbTo0MHB4O1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4ucmV2aWV3c19fdGV4dHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgcGFkZGluZy1sZWZ0OiAzNXB4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDM1cHg7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICBtYXJnaW4tYm90dG9tOjQwcHg7XHJcbiAgcHtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICAmIHtcclxuICAgIFx0cGFkZGluZzo2cHggMCA2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5xdW90ZS1pY29ue1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgZm9udC1zaXplOiAyN3B4O1xyXG4gICAgY29sb3I6I2EwYzYzZjtcclxuICB9XHJcbiAgXHJcbiAgLnF1b3RlLWljb246Zmlyc3QtY2hpbGR7XHJcbiAgICB0b3A6LTEwcHg7XHJcbiAgICBsZWZ0OjBweDtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgIFxyXG4gIH1cclxuICAucXVvdGUtaWNvbjpsYXN0LWNoaWxke1xyXG4gICAgYm90dG9tOi0xMHB4O1xyXG4gICAgcmlnaHQ6MHB4O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi5yZXZpZXdzX19mZWF0dXJlcyB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5yZXZpZXdzX19pbWdfX3dyYXAge1xyXG4gIHBhZGRpbmc6IDEwcHg7XHJcbiAgbWFyZ2luOjAgNzBweDtcclxuICBAaW5jbHVkZSBiKHRhYmxldCl7XHJcblx0ICBtYXJnaW46IDAgMTVweFxyXG4gIH1cclxuICBAaW5jbHVkZSBiKG1vYmlsZSl7XHJcblx0ICB3aWR0aDoxMDAlO1xyXG5cdCAgaW1nIHtcclxuXHRcdG1hcmdpbjogMCBhdXRvXHJcblx0ICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuIiwiLnNlcnZpY2VzX193cmFwcGVye1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZjtcclxufVxyXG5cclxuLnNlcnZpY2VzX19zZWN0aW9ue1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcGFkZGluZy10b3A6IDIwcHg7XHJcblx0cGFkZGluZy1ib3R0b206IDcwcHg7XHJcblx0QGluY2x1ZGUgYihtb2JpbGUpe1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDA7XHJcblx0fVxyXG4gIH1cclxuXHJcbiAgLnNlcnZpY2VzX19oZWFkZXJ7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6IDI0cHg7XHJcbn1cclxuXHJcbi5zZXJ2aWNlc19fZmVhdHVyZXMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcclxuICAgIEBpbmNsdWRlIGIoMTE1MCkge1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG5cdH1cclxuICAgIEBpbmNsdWRlIGIobW9iaWxlKSB7XHJcbiAgICAgICAgcGFkZGluZzogMjBweCAwIDBcclxuXHR9XHJcblx0XHJcbn1cclxuXHJcbi5zZXJ2aWNlX19ibG9jayB7XHJcbiAgICB3aWR0aDogOTQ1cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggMCByZ2JhKDM3LCAzNywgMzcsIDAuMDUpO1xyXG59XHJcblxyXG4uc2VydmljZXNfX2ltZ19fd3JhcHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpdntcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uc2VydmljZXNfX2ZlYXR1cmVzOm50aC1jaGlsZChldmVuKSB7YmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjt9XHJcbi5zZXJ2aWNlc19fZmVhdHVyZXM6bnRoLWNoaWxkKG9kZCkge2JhY2tncm91bmQtY29sb3I6ICNmOWY5ZmE7fVxyXG5cclxuLnNlcnZpY2VzX19pbWdfX2Rlc2NyaXB0aW9uIHtcclxuICAgIHBhZGRpbmctdG9wOjIwcHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6MzBweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6NDBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOjMwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uc2VydmljZXNfX2ltZ19fZGVzY3JpcHRpb24gLnRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMS41ZW07XHJcbiAgICBwYWRkaW5nLWJvdHRvbToxM3B4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIEBpbmNsdWRlIGIoZGVza3RvcCl7XHJcbiAgICAgICAgZm9udC1zaXplOjIycHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBiKG1vYmlsZSl7XHJcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgbWFyZ2luOjEwcHggYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zZXJ2aWNlc19fbGlzdHtcclxuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICAgIHBhZGRpbmctbGVmdDo5cHg7XHJcbiAgICBsaXtcclxuICAgICAgICAuY2hlY2staWNvbntcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OjEwcHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiNhMGM2M2Y7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbn0iLCIuaG9tZV9fYm9hcmQge1xyXG4gICAgcGFkZGluZzogMTUwcHggMDtcclxuICAgIEBpbmNsdWRlIGIoZGVza3RvcCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDExMHB4IDA7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBiKG1pbil7XHJcbiAgICAgICAgcGFkZGluZzozNXB4IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuIl19 */
