html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-weight: inherit;
  font-style: inherit;
  font-family: inherit;
  font-size: 100%;
  vertical-align: baseline;
}
body {
  line-height: 1;
  color: #222;
  background: #fff;
}
ol,
ul {
  list-style: none;
}
table {
  border-collapse: separate;
  border-spacing: 0;
  vertical-align: middle;
}
caption,
th,
td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}
a img {
  border: none;
}
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,
main,
menu,
nav,
section,
summary {
  display: block;
}
audio,
canvas,
progress,
video {
  display: inline-block;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
progress {
  vertical-align: baseline;
}
template,
[hidden] {
  display: none;
}
a {
  background-color: transparent;
}
a:active,
a:hover {
  outline-width: 0;
}
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}
b,
strong {
  font-weight: inherit;
}
dfn {
  font-style: italic;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
mark {
  background-color: #ff0;
  color: #000;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
img {
  border-style: none;
}
svg:not(:root) {
  overflow: hidden;
}
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
figure {
  margin: 1em 40px;
}
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible;
}
button,
input,
select,
textarea {
  font: inherit;
}
optgroup {
  font-weight: bold;
}
button,
input,
select {
  overflow: visible;
}
button,
input,
select,
textarea {
  margin: 0;
}
button,
select {
  text-transform: none;
}
button,
[type="button"],
[type="reset"],
[type="submit"] {
  cursor: pointer;
}
[disabled] {
  cursor: default;
}
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
button:-moz-focusring,
input:-moz-focusring {
  outline: 1px dotted ButtonText;
}
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -moz-box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}
textarea {
  overflow: auto;
}
[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  -webkit-appearance: textfield;
}
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
html {
  font-size: 16px;
  font-size: 100%;
}
body {
  font-family: "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
  color: #555;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  font-size-adjust: auto;
}
@media print {
  body {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 14pt;
    line-height: 1.45;
    font-family: Garamond, "Times New Roman", serif;
    color: #000;
    background: none;
  }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    page-break-after: avoid;
    font-family: "Helvetica", Arial, sans-serif;
  }
  h1 {
    font-size: 36pt;
    line-height: 1.25em;
  }
  h2 {
    font-size: 24pt;
    line-height: 1.25em;
  }
  h3 {
    font-size: 18pt;
    line-height: 1.25em;
  }
  h4,
  h5,
  h6 {
    font-size: 14pt;
    line-height: 1.25em;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  code {
    font: 12pt Courier, 'Bitstream Vera Sans Mono', Consolas, Courier, monospace;
  }
  blockquote {
    margin: 1.2em;
    padding: 1em;
    font-size: 24pt;
    line-height: 1.45833333em;
    font-style: italic;
  }
  hr {
    background-color: #ccc;
  }
  img {
    float: left;
    margin: 1em 1.5em 1.5em 0;
    max-width: 100% !important;
  }
  a img {
    border: none;
  }
  a:link,
  a:visited {
    background: transparent;
    font-weight: 700;
    text-decoration: underline;
    color: #333;
  }
  a:link[href^="http://"]:after,
  a[href^="http://"]:visited:after {
    content: " (" attr(href) ") ";
    font-size: 90%;
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  a[href^="http://"] {
    color: #000;
  }
  a[href$=".jpg"]:after,
  a[href$=".jpeg"]:after,
  a[href$=".gif"]:after,
  a[href$=".png"]:after {
    content: " (" attr(href) ") ";
    display: none;
  }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  table {
    margin: 1px;
    text-align: left;
  }
  th {
    border-bottom: 1px solid #333;
    font-weight: bold;
  }
  td {
    border-bottom: 1px solid #333;
  }
  th,
  td {
    padding: 4px 10px 4px 0;
  }
  tfoot {
    font-style: italic;
  }
  caption {
    background: #fff;
    margin-bottom: 2em;
    text-align: left;
  }
  thead {
    display: table-header-group;
  }
  img,
  tr {
    page-break-inside: avoid;
  }
}
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}
b {
  font-weight: bold;
}
i {
  font-style: italic;
}
strong {
  font-weight: bold;
}
em {
  font-style: italic;
}
h1 {
  font-size: 38.4px;
  font-size: 1.8rem;
  text-rendering: optimizelegibility;
  font-weight: bold;
  margin: 0.75em 0;
  line-height: 1em;
}
h2 {
  font-size: 28.8px;
  font-size: 1.8rem;
  text-rendering: optimizelegibility;
  font-weight: bold;
  margin: 0.75em 0;
  line-height: 1.6em;
}
h3 {
  font-size: 24px;
  font-size: 1.5rem;
  text-rendering: optimizelegibility;
  font-weight: bold;
  margin: 0.75em 0;
  line-height: 1.6em;
}
h4 {
  font-size: 20.8px;
  font-size: 1.3rem;
  text-rendering: optimizelegibility;
  font-weight: bold;
  margin: 0.75em 0;
  line-height: 1.6em;
}
h5 {
  font-size: 16px;
  font-size: 1rem;
  text-rendering: optimizelegibility;
  font-weight: bold;
  margin: 0.75em 0;
  line-height: 1.6em;
}
h6 {
  font-size: 14.4px;
  font-size: 0.9rem;
  text-rendering: optimizelegibility;
  font-weight: bold;
  margin: 0.75em 0;
  line-height: 1.6em;
  text-transform: uppercase;
}
ul {
  margin: 5px 15px;
  margin: 0.32rem 0.94rem;
  padding-left: 1rem;
}
ul li {
  list-style-type: disc;
  padding: 2px 0;
  padding: 0.125rem;
}
ol {
  margin: 5px 18px;
  margin: 0.32rem 1.125rem;
  padding-left: 1rem;
}
ol li {
  list-style-type: decimal;
  padding: 2px 0;
  padding: 0.125rem;
}
::-moz-selection {
  background: #0074d9;
  color: #494949;
}
::selection {
  background: #0074d9;
  color: #494949;
}
p {
  font-size: 1rem;
  margin: 0.75em 0;
  line-height: 1.6em;
}
small {
  font-size: 55%;
  opacity: 0.6;
  font-weight: normal;
}
a {
  color: #0074d9;
  text-decoration: none;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  border-bottom: 1px solid transparent;
}
a:hover {
  border-bottom: 1px solid;
}
a:hover {
  color: #0063b8;
}
a:visited {
  opacity: 0.8;
}
blockquote {
  border-left: 4px solid #0074d9;
  margin: 1em 0;
  padding-left: 1.5em;
}
blockquote:after {
  content: "";
  display: block;
  clear: both;
}
blockquote > p {
  font-weight: 300;
  font-size: 127%;
  font-size: 1.27rem;
  line-height: 127%;
  line-height: 1.27rem;
  margin-top: 0;
}
blockquote > cite,
blockquote > footer,
blockquote > figcaption {
  color: #888;
}
blockquote > cite:before,
blockquote > footer:before,
blockquote > figcaption:before {
  content: '\2014';
}
.hyphenation {
  -ms-word-break: break-all;
  word-break: break-all;
  word-break: break-word;
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto;
  -webkit-hyphenate-before: 2;
  -webkit-hyphenate-after: 3;
  hyphenate-lines: 3;
}
img,
video,
iframe {
  max-width: 100%;
  height: auto;
  border: 0;
  -ms-interpolation-mode: bicubic;
  display: block;
}
body {
  background-color: #f2f2f2;
}
.wrapper {
  margin: 0 auto;
  max-width: 1170px;
  margin-left: auto;
  margin-right: auto;
}
.wrapper:before {
  content: '';
  display: table;
}
.wrapper:after {
  content: '';
  display: table;
  clear: both;
}
.wrapper:before {
  content: '';
  display: table;
}
.wrapper:after {
  content: '';
  display: table;
  clear: both;
}
.header {
  background-color: #3d9970;
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(61,153,112,0.8)), to(rgba(0,0,0,0.5))), url("../images/headerbg.jpg");
  background-image: linear-gradient(to bottom, rgba(61,153,112,0.8), rgba(0,0,0,0.5)), url("../images/headerbg.jpg");
  background-position: top left, bottom center;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
}
.logo {
  padding: 3rem 0;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .logo {
    padding: 1rem 0;
  }
}
.logo h1 {
  background: $logo-color-bg;
  border-radius: 6px;
  padding: 0.25rem 0.2rem 0.25rem 0.2rem;
  font-size: 64px;
  font-size: 4rem;
  line-height: 1.2;
  display: inline-block;
  vertical-align: middle;
  font-family: 'Pattaya', sans-serif;
}
@media only screen and (max-width: 768px) {
  .logo h1 {
    padding: 0;
    margin: 0;
    font-size: 48px;
    font-size: 3rem;
  }
}
.logo a {
  border: none;
  text-decoration: none;
  color: initial;
  letter-spacing: 0.3125rem;
  color: #fff;
  display: block;
  text-shadow: 2px 2px 1px #3d9970;
}
.logo a:hover {
  border: none;
  text-decoration: none;
  color: initial;
}
.logo a:visited {
  opacity: 1;
}
.logo a:hover {
  color: #fff;
}
.logo span {
  font-size: 13px;
  font-size: 0.8rem;
  font-family: sans-serif;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 0.4rem 1rem;
  line-height: 1;
  font-weight: 700;
  display: block;
  color: #fff;
}
.main-nav {
  background: #248b8b;
  background: #1e7777 -webkit-gradient(linear, left top, left bottom, from(#248b8b), to(#1e7777)) repeat-x;
  background: #1e7777 linear-gradient(180deg, #248b8b, #1e7777) repeat-x;
  padding: 0.5rem 0;
}
.main-nav__list {
  margin: 0;
  padding: 0;
  text-align: center;
}
.main-nav__item {
  display: inline-block;
}
@media only screen and (max-width: 325px) {
  .main-nav__item {
    display: block;
    text-align: left;
  }
}
@media only screen and (min-width: 768px) {
  .main-nav__item + .main-nav__item {
    border-left: 1px solid rgba(255,255,255,0.15);
  }
}
.main-nav__item.selected {
  position: relative;
}
.main-nav__item.selected a {
  text-decoration: underline;
}
.main-nav__link {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 14px;
  font-size: 0.9rem;
  display: inline-block;
  padding: 0.5rem 0.5rem;
  border: none;
  text-decoration: none;
  color: initial;
  color: #e6e6e6;
}
.main-nav__link:hover {
  border: none;
  text-decoration: none;
  color: initial;
}
.main-nav__link:visited {
  opacity: 1;
}
.main-nav__link:hover {
  color: #fff;
  text-shadow: 0px 0px 3px rgba(34,34,34,0.8);
  text-decoration: underline;
}
.page {
  background: #fff;
  padding: 1rem 2rem;
}
.page:before {
  content: '';
  display: table;
}
.page:after {
  content: '';
  display: table;
  clear: both;
}
@media only screen and (min-width: 1024px) {
  .page__content {
    width: calc(99.9% * 3/4 - (30px - 30px * 3/4));
  }
  .page__content:nth-child(1n) {
    float: left;
    margin-right: 30px;
    clear: none;
  }
  .page__content:last-child {
    margin-right: 0;
  }
  .page__content:nth-child(2n) {
    margin-right: 0;
    float: right;
  }
  .page__content:nth-child(2n + 1) {
    clear: both;
  }
}
.page__content li {
  line-height: 1.4rem;
}
.page__news {
  margin: 2rem 0;
}
@media only screen and (max-width: 425px) {
  .lSSlideOuter {
    display: none;
  }
}
.lightSlider {
  margin: 0;
  padding: 0;
}
.lightSlider li {
  float: none;
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.sidebar:before {
  content: '';
  display: table;
}
.sidebar:after {
  content: '';
  display: table;
  clear: both;
}
@media only screen and (min-width: 1024px) {
  .sidebar {
    width: calc(99.9% * 1/4 - (30px - 30px * 1/4));
  }
  .sidebar:nth-child(1n) {
    float: left;
    margin-right: 30px;
    clear: none;
  }
  .sidebar:last-child {
    margin-right: 0;
  }
  .sidebar:nth-child(2n) {
    margin-right: 0;
    float: right;
  }
  .sidebar:nth-child(2n + 1) {
    clear: both;
  }
}
.sidebar__item {
  width: calc(99.9% * 1/1 - (30px - 30px * 1/1));
  -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.05);
          box-shadow: inset 0 0 6px rgba(0,0,0,0.05);
  background-color: #fafafa;
  padding: 15px;
  border-radius: 4px;
  margin: 20px 0;
}
.sidebar__item:nth-child(1n) {
  float: left;
  margin-right: 30px;
  clear: none;
}
.sidebar__item:last-child {
  margin-right: 0;
}
.sidebar__item:nth-child(1n) {
  margin-right: 0;
  float: right;
}
.sidebar__item:nth-child(1n + 1) {
  clear: both;
}
.sidebar__menu_header {
  text-transform: uppercase;
  font-size: 16px;
  font-size: 1rem;
  border-bottom: 1px solid;
}
.sidebar__menu {
  margin: 0;
  padding: 0;
}
.sidebar__menu li {
  float: none;
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.sidebar__menu li {
  margin-bottom: 0.5rem;
}
.footer {
  background-color: #808080;
  padding: 1rem 2rem;
}
.footer__item {
  color: #e6e6e6;
}
@media only screen and (min-width: 768px) {
  .footer__item {
    width: calc(99.9% * 1/2 - (30px - 30px * 1/2));
  }
  .footer__item:nth-child(1n) {
    float: left;
    margin-right: 30px;
    clear: none;
  }
  .footer__item:last-child {
    margin-right: 0;
  }
  .footer__item:nth-child(2n) {
    margin-right: 0;
    float: right;
  }
  .footer__item:nth-child(2n + 1) {
    clear: both;
  }
}
.footer__item a {
  color: #1a1a1a;
  text-decoration: none;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  border-bottom: 1px solid transparent;
}
.footer__item a:hover {
  border-bottom: 1px solid;
}
.footer__item a:hover {
  color: #161616;
}
.footer__item a:visited {
  opacity: 0.8;
}
.footer__item_header {
  font-size: 19px;
  font-size: 1.2rem;
}
.footer__menu {
  margin: 0;
  padding: 0;
}
.footer__menu li {
  float: none;
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.footer__list {
  font-size: 14px;
  font-size: 0.9rem;
  margin: 0;
  padding: 0;
}
.footer__list_item {
  list-style: none;
  padding: 0;
  margin-bottom: 0.5rem;
}
.form-field {
  clear: both;
  margin-bottom: 5px;
  text-align: right;
  width: 370px;
  margin-bottom: 1rem;
}
@media only screen and (max-width: 425px) {
  .form-field {
    width: 100%;
  }
}
.form-label {
  display: inline-block;
}
@media only screen and (max-width: 425px) {
  .form-label {
    display: block;
  }
}
label {
  line-height: 1.5em;
  display: inline-block;
}
.form-data {
  display: inline-block;
}
.form-data input,
.form-data textarea {
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.1);
          box-shadow: inset 0 1px 1px rgba(0,0,0,0.1);
  -webkit-font-smoothing: antialiased;
  font-size: 16px;
  font-family: "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
  border: solid 1px #bbb;
  border-radius: 0.2em;
  outline: none;
  padding: 0.45em;
  background: #fff;
  color: #555;
  width: 250px;
  text-shadow: 0 0 1px rgba(255,255,255,0.1);
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}
.form-data input:focus,
.form-data textarea:focus {
  -webkit-box-shadow: 0 0 5px rgba(61,153,112,0.7);
          box-shadow: 0 0 5px rgba(61,153,112,0.7);
  border: 1px solid #4d896e;
  outline: none;
}
.buttons {
  clear: both;
  margin-bottom: 5px;
  text-align: right;
  width: 370px;
  text-align: right;
}
@media only screen and (max-width: 425px) {
  .buttons {
    width: 100%;
  }
}
.btn {
  font-size: 13px;
  padding: 10px 22px;
  border-radius: 3px;
  background-color: #3d9970;
  color: #fff;
  cursor: pointer;
  font-weight: bold;
  font-family: "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
  line-height: 1em;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  border: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.btn:hover,
.btn:focus {
  background-color: #3a916a;
  color: #f7f7f7;
  border: none;
}
.btn:active {
  background-color: #378a65;
}
.news_block:before {
  content: '';
  display: table;
}
.news_block:after {
  content: '';
  display: table;
  clear: both;
}
.news__item {
  background: #ebf7f1;
  background: #e0f3ea -webkit-gradient(linear, left top, left bottom, from(#ebf7f1), to(#e0f3ea)) repeat-x;
  background: #e0f3ea linear-gradient(180deg, #ebf7f1, #e0f3ea) repeat-x;
  border-radius: 5px;
  padding: 10px;
  border: 1px solid #c7eada;
  -webkit-box-shadow: 1px 1px 3px rgba(0,0,0,0.05);
          box-shadow: 1px 1px 3px rgba(0,0,0,0.05);
  position: relative;
  width: auto;
  width: calc(99.9% * 1/2 - (30px - 30px * 1/2));
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.2;
  margin-bottom: 1rem;
}
.news__item:nth-child(1n) {
  float: left;
  margin-right: 30px;
  clear: none;
}
.news__item:last-child {
  margin-right: 0;
}
.news__item:nth-child(2n) {
  margin-right: 0;
  float: right;
}
.news__item:nth-child(2n + 1) {
  clear: both;
}
.news__item:after {
  content: "";
  display: block;
  clear: both;
}
@media only screen and (max-width: 425px) {
  .news__item {
    width: calc(99.9% * 1 - (30px - 30px * 1));
    margin-bottom: 1rem;
  }
  .news__item:nth-child(1n) {
    float: left;
    margin-right: 30px;
    clear: none;
  }
  .news__item:last-child {
    margin-right: 0;
  }
  .news__item:nth-child(1n) {
    margin-right: 0;
    float: right;
  }
  .news__item:nth-child(1n + 1) {
    clear: both;
  }
}
.news__item p,
.news__item span,
.news__item div,
.news__item ul,
.news__item ol {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.2;
}
.news__item h1,
.news__item h2,
.news__item h3,
.news__item h4 {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.1;
}
.panel {
  margin-bottom: 1rem;
}
.panel--notify {
  background: #5bbe91;
  background: #50ba8a -webkit-gradient(linear, left top, left bottom, from(#5bbe91), to(#50ba8a)) repeat-x;
  background: #50ba8a linear-gradient(180deg, #5bbe91, #50ba8a) repeat-x;
  border-radius: 5px;
  padding: 10px;
  border: 1px solid #46b181;
  -webkit-box-shadow: 1px 1px 3px rgba(0,0,0,0.05);
          box-shadow: 1px 1px 3px rgba(0,0,0,0.05);
  position: relative;
  width: 100%;
}
.panel--notify:after {
  content: "";
  display: block;
  clear: both;
}
.panel--notify > .panel__header {
  font-weight: bold;
  font-size: 19px;
  font-size: 1.2rem;
  color: #fff;
  text-shadow: 1px 1px 1px #3d9970;
  margin-bottom: 1rem;
}
.panel--notify > .panel__btn {
  font-size: 13px;
  padding: 10px 22px;
  border-radius: 3px;
  background-color: #3d9970;
  color: #fff;
  cursor: pointer;
  font-weight: bold;
  font-family: "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
  line-height: 1em;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  border: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  font-size: 13px;
  font-size: 0.8rem;
  text-transform: uppercase;
}
.panel--notify > .panel__btn:hover,
.panel--notify > .panel__btn:focus {
  background-color: #3a916a;
  color: #f7f7f7;
  border: none;
}
.panel--notify > .panel__btn:active {
  background-color: #378a65;
}
.panel--alert {
  background: #ee8a6f;
  background: #ec7e62 -webkit-gradient(linear, left top, left bottom, from(#ee8a6f), to(#ec7e62)) repeat-x;
  background: #ec7e62 linear-gradient(180deg, #ee8a6f, #ec7e62) repeat-x;
  border-radius: 5px;
  padding: 10px;
  border: 1px solid #e96d4c;
  -webkit-box-shadow: 1px 1px 3px rgba(0,0,0,0.05);
          box-shadow: 1px 1px 3px rgba(0,0,0,0.05);
  position: relative;
  width: 100%;
}
.panel--alert:after {
  content: "";
  display: block;
  clear: both;
}
.panel--alert > .panel__header {
  font-weight: bold;
  font-size: 19px;
  font-size: 1.2rem;
  color: #fff;
  text-shadow: 1px 1px 1px #d13f19;
  margin-bottom: 1rem;
}
.panel--alert > .panel__text {
  margin-bottom: 1rem;
  color: #fff;
}
.panel--alert > .panel__btn {
  font-size: 13px;
  padding: 10px 22px;
  border-radius: 3px;
  background-color: #d13f19;
  color: #fff;
  cursor: pointer;
  font-weight: bold;
  font-family: "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
  line-height: 1em;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  border: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  font-size: 13px;
  font-size: 0.8rem;
  text-transform: uppercase;
}
.panel--alert > .panel__btn:hover,
.panel--alert > .panel__btn:focus {
  background-color: #c73c18;
  color: #f7f7f7;
  border: none;
}
.panel--alert > .panel__btn:active {
  background-color: #bc3917;
}
@media only screen and (max-width: 768px) {
  .panel {
    width: calc(99.9% * 1/2 - (30px - 30px * 1/2));
  }
  .panel:nth-child(1n) {
    float: left;
    margin-right: 30px;
    clear: none;
  }
  .panel:last-child {
    margin-right: 0;
  }
  .panel:nth-child(2n) {
    margin-right: 0;
    float: right;
  }
  .panel:nth-child(2n + 1) {
    clear: both;
  }
}
@media only screen and (max-width: 425px) {
  .panel {
    width: calc(99.9% * 1 - (30px - 30px * 1));
  }
  .panel:nth-child(1n) {
    float: left;
    margin-right: 30px;
    clear: none;
  }
  .panel:last-child {
    margin-right: 0;
  }
  .panel:nth-child(1n) {
    margin-right: 0;
    float: right;
  }
  .panel:nth-child(1n + 1) {
    clear: both;
  }
}
@media only screen and (max-width: 768px) {
  #breadcrumbs {
    height: auto !important;
    line-height: 1.4 !important;
    padding: 1rem 0.5rem !important;
  }
}
@media only screen and (max-width: 768px) {
  #breadcrumbs span {
    padding: 0 0.25rem !important;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL25vZGVfbW9kdWxlcy9heGlzL2F4aXMvcmVzZXQuc3R5bCIsIi4uLy4uL25vZGVfbW9kdWxlcy9heGlzL2F4aXMvdHlwb2dyYXBoeS5zdHlsIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2F4aXMvYXhpcy91dGlsaXRpZXMuc3R5bCIsIi4uLy4uL25vZGVfbW9kdWxlcy9heGlzL2F4aXMvaW50ZXJhY3Rpb24uc3R5bCIsIi4uLy4uL25vZGVfbW9kdWxlcy9heGlzL2F4aXMvbGF5b3V0LnN0eWwiLCJtYWluLnN0eWwiLCIuLi8uLi9ub2RlX21vZHVsZXMvcnVwdHVyZS9ydXB0dXJlL2luZGV4LnN0eWwiLCIuLi8uLi9ub2RlX21vZHVsZXMvYXhpcy9heGlzL2dyYWRpZW50cy5zdHlsIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2F4aXMvYXhpcy91aS5zdHlsIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2F4aXMvYXhpcy9mb3Jtcy5zdHlsIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2F4aXMvYXhpcy9idXR0b25zLnN0eWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBU0U7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQW9DQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBR0EscUJBQUE7RUFDQSxvQkFBQTtFQUNBLHFCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx5QkFBQTs7QUFwQ0E7RUF1Q0EsZUFBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTs7QUF2Q0E7O0VBQ0UsaUJBQUE7O0FBQ0Y7RUF3Q0EsMEJBQUE7RUFDQSxrQkFBQTtFQUNBLHVCQUFBOztBQXhDQTs7O0VBMkNBLGlCQUFBO0VBQ0Esb0JBQUE7RUFDQSx1QkFBQTs7QUEzQ0E7RUFDRSxhQUFBOztBQTZERjtFQUNFLHdCQUFBO0VBQ0EsMkJBQUE7RUFDQSwrQkFBQTs7QUFFRjtFQUNFLFVBQUE7O0FBRUY7Ozs7Ozs7Ozs7OztFQUNFLGVB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bUJBQUE7SUFBQSxZQUFBOztFQ3RITztJRHNIUCxnQkFBQTs7RUN0SE87SURzSFAsZ0JBQUE7SUFBQSxhQUFBOztFQ3RITztJRHNIUCxZQUFBOzs7QUN0SE87RUFBQTtJRHdIUCwyQ0FBQTs7RUN4SE87SUR3SFAsWUFBQTtJQUFBLG1CQUFBO0lBQUEsWUFBQTs7RUN4SE87SUR3SFAsZ0JBQUE7O0VDeEhPO0lEd0hQLGdCQUFBO0lBQUEsYUFBQTs7RUN4SE87SUR3SFAsWUFBQTs7O0FDeEhPO0VBQUE7SUQ0SFAsd0JBQUE7SUFDQSw0QkFBQTtJQUNBLGdDQUFBOzs7QUM5SE87RUFBQTtJRGlJTCw4QkFBQSIsImZpbGUiOiJtYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIC0tLS0tXG4vLyBSZXNldFxuLy8gLS0tLS1cblxuLy8gR2xvYmFsIFJlc2V0XG4vLyBCYXNlZCBvbiBbRXJpYyBNZXllcidzIHJlc2V0XShodHRwOi8vbWV5ZXJ3ZWIuY29tL2VyaWMvdGhvdWdodHMvMjAwNy8wNS8wMS9yZXNldC1yZWxvYWRlZC8pXG4vLyBwb3J0ZWQgZnJvbSBOaWJcblxuZ2xvYmFsLXJlc2V0KClcbiAgaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBhcHBsZXQsIG9iamVjdCwgaWZyYW1lLFxuICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBibG9ja3F1b3RlLCBwcmUsXG4gIGEsIGFiYnIsIGFjcm9ueW0sIGFkZHJlc3MsIGJpZywgY2l0ZSwgY29kZSxcbiAgZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzLCBzYW1wLFxuICBzbWFsbCwgc3RyaWtlLCBzdHJvbmcsIHN1Yiwgc3VwLCB0dCwgdmFyLFxuICBkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLFxuICBmaWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbiAgdGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGRcbiAgICByZXNldC1ib3gtbW9kZWwoKVxuICAgIHJlc2V0LWZvbnQoKVxuICBib2R5XG4gICAgcmVzZXQtYm9keSgpXG4gIG9sLCB1bFxuICAgIGxpc3Qtc3R5bGU6IG5vbmVcbiAgdGFibGVcbiAgICByZXNldC10YWJsZSgpXG4gIGNhcHRpb24sIHRoLCB0ZFxuICAgIHJlc2V0LXRhYmxlLWNlbGwoKVxuICBhIGltZ1xuICAgIGJvcmRlcjogbm9uZVxuXG5uZXN0ZWQtcmVzZXQoKVxuICBkaXYsIHNwYW4sIG9iamVjdCwgaWZyYW1lLCBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLFxuICBwcmUsIGEsIGFiYnIsIGFjcm9ueW0sIGFkZHJlc3MsIGNvZGUsIGRlbCwgZGZuLCBlbSwgaW1nLFxuICBkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLCBmaWVsZHNldCwgZm9ybSwgbGFiZWwsXG4gIGxlZ2VuZCwgY2FwdGlvbiwgdGJvZHksIHRmb290LCB0aGVhZCwgdHJcbiAgICByZXNldC1ib3gtbW9kZWwoKVxuICAgIHJlc2V0LWZvbnQoKVxuICB0YWJsZVxuICAgIHJlc2V0LXRhYmxlKClcbiAgY2FwdGlvbiwgdGgsIHRkXG4gICAgcmVzZXQtdGFibGUtY2VsbCgpXG4gIGEgaW1nXG4gICAgYm9yZGVyOiBub25lXG5cbnJlc2V0LWJveC1tb2RlbCgpXG4gIG1hcmdpbjogMFxuICBwYWRkaW5nOiAwXG4gIGJvcmRlcjogMFxuICBvdXRsaW5lOiAwXG5cbnJlc2V0LWZvbnQoKVxuICBmb250LXdlaWdodDogaW5oZXJpdFxuICBmb250LXN0eWxlOiBpbmhlcml0XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0XG4gIGZvbnQtc2l6ZTogMTAwJVxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmVcblxucmVzZXQtYm9keSgpXG4gIGxpbmUtaGVpZ2h0OiAxXG4gIGNvbG9yOiBibGFja1xuICBiYWNrZ3JvdW5kOiB3aGl0ZVxuXG5yZXNldC10YWJsZSgpXG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGVcbiAgYm9yZGVyLXNwYWNpbmc6IDBcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZVxuXG5yZXNldC10YWJsZS1jZWxsKClcbiAgdGV4dC1hbGlnbjogbGVmdFxuICBmb250LXdlaWdodDogbm9ybWFsXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGVcblxucmVzZXQtaHRtbDUoKVxuICBhcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBmaWdjYXB0aW9uLFxuICBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdixcbiAgc2VjdGlvbiwgc3VtbWFyeSwgbWFpblxuICAgIHJlc2V0LWJveC1tb2RlbCgpXG4gICAgZGlzcGxheTogYmxvY2tcbiAgYXVkaW8sIGNhbnZhcywgdmlkZW9cbiAgICBkaXNwbGF5IGlubGluZS1ibG9ja1xuICAgICpkaXNwbGF5IGlubGluZVxuICAgICp6b29tIDFcbiAgYXVkaW86bm90KFtjb250cm9sc10pLFtoaWRkZW5dXG4gICAgZGlzcGxheSBub25lXG5cbi8vIE1peGluOiBOb3JtYWxpemUgQ1NTXG4vLyBCYXNlZCBvbiB2NC4wLjAgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzc1xuXG5ub3JtYWxpemUtY3NzKClcbiAgaHRtbFxuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmXG4gICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCVcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCVcblxuICBib2R5XG4gICAgbWFyZ2luIDBcblxuICBhcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgbWFpbiwgbWVudSwgbmF2LCBzZWN0aW9uLCBzdW1tYXJ5XG4gICAgZGlzcGxheTogYmxvY2tcblxuICBhdWRpbywgY2FudmFzLCBwcm9ncmVzcywgdmlkZW9cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2tcblxuICBhdWRpbzpub3QoW2NvbnRyb2xzXSlcbiAgICBkaXNwbGF5OiBub25lXG4gICAgaGVpZ2h0OiAwXG5cbiAgcHJvZ3Jlc3NcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmVcblxuICB0ZW1wbGF0ZSwgW2hpZGRlbl1cbiAgICBkaXNwbGF5OiBub25lXG5cbiAgYVxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50XG5cbiAgYTphY3RpdmUsIGE6aG92ZXJcbiAgICBvdXRsaW5lLXdpZHRoOiAwXG5cbiAgYWJiclt0aXRsZV1cbiAgICBib3JkZXItYm90dG9tOiBub25lXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmVcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWRcblxuICBiLCBzdHJvbmdcbiAgICBmb250LXdlaWdodDogaW5oZXJpdFxuXG4gIGRmblxuICAgIGZvbnQtc3R5bGU6IGl0YWxpY1xuXG4gIGgxXG4gICAgZm9udC1zaXplOiAyZW1cbiAgICBtYXJnaW46IDAuNjdlbSAwXG5cbiAgbWFya1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjBcbiAgICBjb2xvcjogIzAwMFxuXG4gIHNtYWxsXG4gICAgZm9udC1zaXplOiA4MCVcblxuICBzdWIsIHN1cFxuICAgIGZvbnQtc2l6ZTogNzUlXG4gICAgbGluZS1oZWlnaHQ6IDBcbiAgICBwb3NpdGlvbjogcmVsYXRpdmVcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmVcblxuICBzdWJcbiAgICBib3R0b206IC0wLjI1ZW1cblxuICBzdXBcbiAgICB0b3A6IC0wLjVlbVxuXG4gIGltZ1xuICAgIGJvcmRlci1zdHlsZTogbm9uZVxuXG4gIHN2Zzpub3QoOnJvb3QpXG4gICAgb3ZlcmZsb3c6IGhpZGRlblxuXG4gIGNvZGUsIGtiZCwgcHJlLCBzYW1wXG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlXG4gICAgZm9udC1zaXplOiAxZW1cblxuICBmaWd1cmVcbiAgICBtYXJnaW46IDFlbSA0MHB4XG5cbiAgaHJcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveFxuICAgIGhlaWdodDogMFxuICAgIG92ZXJmbG93OiB2aXNpYmxlXG5cbiAgYnV0dG9uLCBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYVxuICAgIGZvbnQ6IGluaGVyaXRcblxuICBvcHRncm91cFxuICAgIGZvbnQtd2VpZ2h0OiBib2xkXG5cbiAgYnV0dG9uLCBpbnB1dCwgc2VsZWN0XG4gICAgb3ZlcmZsb3c6IHZpc2libGVcblxuICBidXR0b24sIGlucHV0LCBzZWxlY3QsIHRleHRhcmVhXG4gICAgbWFyZ2luOiAwXG5cbiAgYnV0dG9uLCBzZWxlY3RcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZVxuXG4gIGJ1dHRvbiwgW3R5cGU9XCJidXR0b25cIl0sIFt0eXBlPVwicmVzZXRcIl0sIFt0eXBlPVwic3VibWl0XCJdXG4gICAgY3Vyc29yOiBwb2ludGVyXG5cbiAgW2Rpc2FibGVkXVxuICAgIGN1cnNvcjogZGVmYXVsdFxuXG4gIGJ1dHRvbiwgaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgW3R5cGU9XCJyZXNldFwiXSwgW3R5cGU9XCJzdWJtaXRcIl1cbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvblxuXG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciwgaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXJcbiAgICBib3JkZXI6IDBcbiAgICBwYWRkaW5nOiAwXG5cbiAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLCBpbnB1dDotbW96LWZvY3VzcmluZ1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dFxuXG4gIGZpZWxkc2V0XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMFxuICAgIG1hcmdpbjogMCAycHhcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW1cblxuICBsZWdlbmRcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94XG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94XG4gICAgY29sb3I6IGluaGVyaXRcbiAgICBkaXNwbGF5OiB0YWJsZVxuICAgIG1heC13aWR0aDogMTAwJVxuICAgIHBhZGRpbmc6IDBcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsXG5cbiAgdGV4dGFyZWFcbiAgICBvdmVyZmxvdzogYXV0b1xuXG4gIFt0eXBlPVwiY2hlY2tib3hcIl0sIFt0eXBlPVwicmFkaW9cIl1cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94XG4gICAgcGFkZGluZzogMFxuXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLCBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvblxuICAgIGhlaWdodDogYXV0b1xuXG4gIFt0eXBlPVwic2VhcmNoXCJdXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGRcblxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiwgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb25cbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmVcblxuLy8gTWl4aW46IEZsdWlkIE1lZGlhXG4vLyBNYWtlcyB5b3VyIGltZywgdmlkZW8sIGFuZCBpZnJhbWUgdGFncyByZXNwb25zaXZlIHRvIHRoZWlyIHBhcmVudCBjb250YWluZXIuXG5cbmZsdWlkLW1lZGlhKClcbiAgaW1nLFxuICB2aWRlbyxcbiAgaWZyYW1lXG4gICAgbWF4LXdpZHRoOiAxMDAlXG4gICAgaGVpZ2h0OiBhdXRvXG4gICAgYm9yZGVyOiAwXG4gICAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpY1xuICAgIGRpc3BsYXk6IGJsb2NrXG5cbi8vIE1peGluOiBCb3JkZXIgQm94IEhUTUxcbi8vIEFkZCBib3JkZXIgYm94IHRvIGV2ZXJ5IGVsZW1lbnQgaW4geW91ciBwcm9qZWN0LiBVc2VkIGluIHlvdXIgcHJvamVjdCByb290LlxuLy8gaHR0cDovL3d3dy5wYXVsaXJpc2guY29tLzIwMTIvYm94LXNpemluZy1ib3JkZXItYm94LWZ0dy9cblxuYm9yZGVyLWJveC1odG1sKClcbiAgaHRtbFxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3hcblxuICAqLFxuICAqOmJlZm9yZSxcbiAgKjphZnRlclxuICAgIGJveC1zaXppbmc6IGluaGVyaXRcblxuLy8gTWl4aW46IFByaW50IFN0eWxlc1xuLy8gTmljZSBjbGVhbiBwcmludCBzdHlsZXMgc28geW91IGRvbid0IGhhdmUgdG8gd29ycnkgYWJvdXQgaXQuXG5cbnByaW50LXN0eWxlcygpXG4gIEBtZWRpYSBwcmludFxuICAgIGJvZHlcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnRcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnRcbiAgICAgIGZvbnQtc2l6ZTogMTRwdFxuICAgICAgbGluZS1oZWlnaHQ6IDEuNDVcbiAgICAgIGZvbnQtZmFtaWx5OiBHYXJhbW9uZCwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWZcbiAgICAgIGNvbG9yOiAjMDAwXG4gICAgICBiYWNrZ3JvdW5kOiBub25lXG5cbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNlxuICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWRcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYVwiLCBBcmlhbCwgc2Fucy1zZXJpZlxuXG4gICAgaDFcbiAgICAgIGZvbnQtc2l6ZTogMzZwdFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjVlbVxuXG4gICAgaDJcbiAgICAgIGZvbnQtc2l6ZTogMjRwdFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjVlbVxuXG4gICAgaDNcbiAgICAgIGZvbnQtc2l6ZTogMThwdFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjVlbVxuXG4gICAgaDQsXG4gICAgaDUsXG4gICAgaDZcbiAgICAgIGZvbnQtc2l6ZTogMTRwdFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjVlbVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoM1xuICAgICAgb3JwaGFuczogM1xuICAgICAgd2lkb3dzOiAzXG5cbiAgICBjb2RlXG4gICAgICBmb250OiAxMnB0IENvdXJpZXIsICRtb25vc3BhY2VcblxuICAgIGJsb2NrcXVvdGVcbiAgICAgIG1hcmdpbjogMS4yZW1cbiAgICAgIHBhZGRpbmc6IDFlbVxuICAgICAgZm9udC1zaXplOiAyNHB0XG4gICAgICBsaW5lLWhlaWdodDogMS40NTgzMzMzM2VtXG4gICAgICBmb250LXN0eWxlOiBpdGFsaWNcblxuICAgIGhyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjXG5cbiAgICBpbWdcbiAgICAgIGZsb2F0OiBsZWZ0XG4gICAgICBtYXJnaW46IDFlbSAxLjVlbSAxLjVlbSAwXG4gICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudFxuXG4gICAgYSBpbWdcbiAgICAgICAgYm9yZGVyOiBub25lXG5cbiAgICBhOmxpbmssXG4gICAgYTp2aXNpdGVkXG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudFxuICAgICAgZm9udC13ZWlnaHQ6IDcwMFxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmVcbiAgICAgIGNvbG9yOiAjMzMzXG5cbiAgICBhOmxpbmtbaHJlZl49XCJodHRwOi8vXCJdOmFmdGVyLFxuICAgIGFbaHJlZl49XCJodHRwOi8vXCJdOnZpc2l0ZWQ6YWZ0ZXJcbiAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKSBcIlxuICAgICAgZm9udC1zaXplOiA5MCVcblxuICAgIGFiYnJbdGl0bGVdOmFmdGVyXG4gICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCJcblxuICAgIGFbaHJlZl49XCJodHRwOi8vXCJdXG4gICAgICBjb2xvcjogIzAwMFxuXG4gICAgYVtocmVmJD1cIi5qcGdcIl06YWZ0ZXIsXG4gICAgYVtocmVmJD1cIi5qcGVnXCJdOmFmdGVyLFxuICAgIGFbaHJlZiQ9XCIuZ2lmXCJdOmFmdGVyLFxuICAgIGFbaHJlZiQ9XCIucG5nXCJdOmFmdGVyXG4gICAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIikgXCJcbiAgICAgIGRpc3BsYXk6IG5vbmVcblxuICAgIGFbaHJlZl49XCIjXCJdOmFmdGVyLCBhW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXJcbiAgICAgIGNvbnRlbnQ6IFwiXCJcblxuICAgIHRhYmxlXG4gICAgICBtYXJnaW46IDFweFxuICAgICAgdGV4dC1hbGlnbjogbGVmdFxuXG4gICAgdGhcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMzMzXG4gICAgICBmb250LXdlaWdodDogYm9sZFxuXG4gICAgdGRcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMzMzXG5cbiAgICB0aCxcbiAgICB0ZFxuICAgICAgcGFkZGluZzogNHB4IDEwcHggNHB4IDBcblxuICAgIHRmb290XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWNcblxuICAgIGNhcHRpb25cbiAgICAgIGJhY2tncm91bmQ6ICNmZmZcbiAgICAgIG1hcmdpbi1ib3R0b206IDJlbVxuICAgICAgdGV4dC1hbGlnbjogbGVmdFxuXG4gICAgdGhlYWRcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cFxuXG4gICAgaW1nLFxuICAgIHRyXG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWRcbiIsIi8vIC0tLS0tLS0tLS1cbi8vIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS1cblxuLy8gQWxpYXM6IEJvbGRcbi8vIEl0J3MganVzdCBmYXN0ZXIgdG8gdHlwZSBib2xkKCkgdGhhbiBmb250LXdlaWdodDogYm9sZFxuXG5ib2xkKClcbiAgZm9udC13ZWlnaHQ6IGJvbGRcblxuLy8gQWxpYXM6IEl0YWxpY1xuLy8gSXQncyBqdXN0IGZhc3RlciB0byB0eXBlIGl0YWxpYygpIHRoYW4gZm9udC1zdHlsZTogaXRhbGljXG5cbml0YWxpYygpXG4gIGZvbnQtc3R5bGU6IGl0YWxpY1xuXG4vLyBBbGlhczogTm9ybWFsXG4vLyBQdXQgdGhlIGZvbnQtd2VpZ2h0IGFuZCBzdHlsZSBiYWNrIHRvIG5vcm1hbFxuXG5ub3JtYWwoKVxuICBmb250LXdlaWdodDogbm9ybWFsXG4gIGZvbnQtc3R5bGU6IG5vcm1hbFxuXG4vLyBNaXhpbjogUmFxdW9cbi8vXG4vLyBCZWNhdXNlIHRlY2huaWNhbGx5IHJhcXVvIGlzIG5vdCBzZW1hbnRpYywgaXQncyBiZXR0ZXIgdG8gYWRkIGl0IGxpa2UgdGhpcy5cbi8vXG4vLyBleC4gcmFxdW8oKVxuXG5yYXF1bygpXG4gICY6YWZ0ZXJcbiAgICBjb250ZW50OiBcIiBcXDAwQkJcIlxuXG4vLyBNaXhpbjogRm9udCBGYWNlXG4vL1xuLy8gU3VwZXIgc2ltcGxlIGZvbnQtZmFjZSBkZWNsYXJhdGlvbi4gSnVzdCBnaXZlIHRoZSBuYW1lIGFuZCB0aGUgZm9sZGVyIGl0XG4vLyBsaXZlcyBpbi4gTWFrZSBzdXJlIHRoZSBmb250IG5hbWUgbWF0Y2hlcyB0aGUgbmFtZSBvZiB0aGUgZmlsZXMuIFVzZXMgdGhlXG4vLyBmb250c3ByaW5nIHN5bnRheDpcbi8vIGh0dHA6Ly93d3cuZm9udHNwcmluZy5jb20vYmxvZy90aGUtbmV3LWJ1bGxldHByb29mLWZvbnQtZmFjZS1zeW50YXhcbi8vXG4vLyBleC4gZm9udC1mYWNlKHByb3hpbWEtbm92YSwgJy9mb250cycpXG5cbmZvbnQtZmFjZSgkbmFtZSwgJGZvbGRlciwgJHdlaWdodCA9ICdub3JtYWwnLCAkc3R5bGUgPSAnbm9ybWFsJylcbiAgQGZvbnQtZmFjZVxuICAgIGZvbnQtZmFtaWx5OiAkbmFtZVxuICAgIHNyYzogdXJsKCRmb2xkZXIgdW5xdW90ZSgnLycpICRuYW1lIHVucXVvdGUoJy5lb3QnKSAnPyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgdXJsKCRmb2xkZXIgdW5xdW90ZSgnLycpICRuYW1lIHVucXVvdGUoJy53b2ZmJykpIGZvcm1hdCgnd29mZicpLCB1cmwoJGZvbGRlciB1bnF1b3RlKCcvJykgJG5hbWUgdW5xdW90ZSgnLnR0ZicpKSBmb3JtYXQoJ3RydWV0eXBlJyksIHVybCgkZm9sZGVyIHVucXVvdGUoJy8nKSAkbmFtZSB1bnF1b3RlKCcuZW90JykgdW5xdW90ZSgnIycpICRuYW1lKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiB1bnF1b3RlKCR3ZWlnaHQpXG4gICAgZm9udC1zdHlsZTogdW5xdW90ZSgkc3R5bGUpXG5cblxuLy8gTWl4aW46IEVsbGlwc2lzXG4vLyBUcnVuY2F0ZSB0ZXh0IHRvIHRoZSB3aWR0aCBvZiBpdHMgY29udGFpbmVyLi4uXG4vLyBleDogZWxsaXBzaXMoKVxuLy8gZXg6IGVsbGlwc2lzOiAzMDBweFxuXG5lbGxpcHNpcygkd2lkdGggPSAxMDAlKVxuICB3aGl0ZS1zcGFjZTogbm93cmFwXG4gIGRpc3BsYXk6IGlubGluZS1ibG9ja1xuICBtYXgtd2lkdGg6ICR3aWR0aFxuICBvdmVyZmxvdzogaGlkZGVuXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzXG4gIHdvcmQtd3JhcDogbm9ybWFsXG5cbi8vIEZ1bmN0aW9uOiBMaW5lIEhlaWdodFxuLy9cbi8vIElmIHRoZXJlIGlzIGEgZm9udC1zaXplIHNldCBvbiB0aGUgcGFyZW50IGVsZW1lbnQsIGFkanVzdHMgdGhlIGxpbmUgaGVpZ2h0IHRvXG4vLyBtYXRjaCB0aGF0LiBJZiBub3QsIGl0IHVzZXMgdGhlIGJhc2UgZm9udC1zaXplIHRvIGNhbGN1bGF0ZSB0aGUgbGluZS1oZWlnaHQuXG5cbi1saW5lLWhlaWdodCgpXG4gIGlmIEBmb250LXNpemVcbiAgICBsaW5lLWhlaWdodDogMS42ZW1cbiAgZWxzZVxuICAgIGxpbmUtaGVpZ2h0OiB1bml0KCRmb250LXNpemUqMS42LCAncHgnKVxuICAgIGxpbmUtaGVpZ2h0OiAxLjZyZW1cblxuLy8gTWl4aW46IFRleHQgTWFyZ2luXG4vL1xuLy8gUHV0cyBuaWNlIHZpc3VhbGx5IHBsZWFzaW5nIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMgb24gYSBwYXJhZ3JhcGggb2YgdGV4dC5cbi8vIFB1dCBhIGZvbnQtc2l6ZSBvbiB5b3VyIGVsZW1lbnQgdG8gaGF2ZSBpdCBhZGp1c3QgYWNjb3JkaW5nbHkuXG4vL1xuLy8gZXguIHBcbi8vICAgICAgIGZvbnQtc2l6ZTogMThweFxuLy8gICAgICAgdGV4dC1tYXJnaW4oKVxuXG50ZXh0LW1hcmdpbigkc2l6ZSA9ICRmb250LXNpemUpXG4gIGlmIEBmb250LXNpemVcbiAgICBtYXJnaW46IC43NWVtIDBcbiAgZWxzZVxuICAgIG1hcmdpbjogdW5pdCgkZm9udC1zaXplKi43NSwgJ3B4JykgMFxuXG4vLyBNaXhpbjogUGFyYWdyYXBoXG4vL1xuLy8gU2V0cyBhIG5pY2Ugc2l6ZSwgbGluZS1oZWlnaHQsIGFuZCBtYXJnaW5zIG9uIGEgcGFyYWdyYXBoIG9mIHRleHQuIFBhc3MgYVxuLy8gc2l6ZSBpbiB0byBjdXN0b21pemUuIFRvZ2dsZSBtYXJnaW5zIG9mZiBpZiB5b3UgZG9uJ3Qgd2FudCB0aGVtLlxuLy9cbi8vIGV4LiBwKClcbi8vIGV4LiBwOiAxOHB4XG4vLyBleC4gcDogMTRweCBmYWxzZVxuXG5wKCRzaXplID0gMXJlbSwgJG1hcmdpbnMgPSB0cnVlKVxuICBmb250LXNpemU6ICRzaXplXG4gIHRleHQtbWFyZ2luKCkgaWYgJG1hcmdpbnNcbiAgLWxpbmUtaGVpZ2h0KClcbiAgb3Blbi10eXBlLWxpZ2F0dXJlcygpIGlmICRsaWdhdHVyZXNcblxuLy8gQWxpYXM6IHBhcmFncmFwaFxucGFyYWdyYXBoID0gcFxuXG4vLyBBbGlhczogRm9udCBTaXplXG4vLyBBbiBhbGlhcyBmb3IgJ2ZvbnQtc2l6ZScgd2l0aCBhdXRvLWZhbGxiYWNrIGZvciByZW0uXG4vLyBleC4gZnM6IDE2cHhcbi8vIGV4LiBmczogMS4ycmVtXG5cbmZzKCRzaXplKVxuICBpZiAodW5pdCgkc2l6ZSkgPT0gJ3JlbScpXG4gICAgZm9udC1zaXplOiByb3VuZCh1bml0KCgkZm9udC1zaXplKiRzaXplKSwgJ3B4JykpXG4gICAgZm9udC1zaXplOiAkc2l6ZVxuICBlbHNlXG4gICAgZm9udC1zaXplOiAkc2l6ZVxuXG4vLyBBbGlhczogVXBwZXJjYXNlXG4vLyBBbiBhbGlhcyBmb3IgJ3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UnXG4vLyBleC4gdXBwZXJjYXNlKClcblxudXBwZXJjYXNlKClcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZVxuXG4vLyBBbGlhczogVXBjYXNlXG51cGNhc2UgPSB1cHBlcmNhc2VcblxuLy8gQWxpYXM6IExvd2VyY2FzZVxuLy8gQW4gYWxpYXMgZm9yICd0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlJ1xuLy8gZXguIGxvd2VyY2FzZSgpXG5cbmxvd2VyY2FzZSgpXG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2VcblxuLy8gQWxpYXM6IERvd25jYXNlXG5kb3duY2FzZSA9IGxvd2VyY2FzZVxuXG4vLyBBbGlhczogUmVzZXQgQ2FzZVxuLy8gR2V0cyByaWQgb2YgYW4gdGV4dCB0cmFuc2Zvcm1cbi8vIGV4LiByZXNldC1jYXNlKClcblxucmVzZXQtY2FzZSgpXG4gIHRleHQtdHJhbnNmb3JtOiBub25lXG5cbi8vIE1peGluOiBTbWFsbFxuLy9cbi8vIE1ha2VzIHlvdXIgdGV4dCBzbWFsbGVyIGFuZCBhIGxpdHRsZSBsaWdodGVyLiBHcmVhdCBvbiA8c21hbGwgLz4gdGFncy5cbi8vXG4vLyBleC4gc21hbGwoKVxuXG5zbWFsbCgpXG4gIGZvbnQtc2l6ZTogNTUlXG4gIG9wYWNpdHk6IC42XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWxcblxuLy8gRnVuY3Rpb246IEhlYWRpbmdcbi8vIEZvciBpbnRlcm5hbCB1c2Ugd2l0aGluIGhlYWRpbmdzXG5cbi1oZWFkaW5nKCRtdWx0aXBsaWVyLCAkbWFyZ2lucyA9IHRydWUpXG4gIGZvbnQtc2l6ZTogdW5pdCgoJGZvbnQtc2l6ZSokbXVsdGlwbGllciksICdweCcpXG4gIGZvbnQtc2l6ZTogdW5pdCgkbXVsdGlwbGllciwgJ3JlbScpXG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZWxlZ2liaWxpdHlcbiAgZm9udC13ZWlnaHQ6IGJvbGRcbiAgdGV4dC1tYXJnaW4oKSBpZiAkbWFyZ2luc1xuICAtbGluZS1oZWlnaHQoKVxuICBvcGVuVHlwZUxpZ2F0dXJlcygpIGlmICRsaWdhdHVyZXNcblxuLy8gTWl4aW4gU2V0OiBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2XG4vL1xuLy8gVGhlc2UgcHJvdmlkZSBuaWNlIGRlZmF1bHRzIGZvciBoZWFkaW5ncyBiYXNlZCBvZmYgdGhlIGRlZmF1bHQgZm9udCBzaXplLlxuLy8gVGhlIGNhbiBzY2FsZSBpbmZpbml0ZWx5LCBhbmQgd29yayBiZXN0IHdoZW4gbWF0Y2hlZCB0byB0aGVpciBjb3JyZXNwb25kaW5nXG4vLyBodG1sIGVsZW1lbnRzLiBJZiB5b3UnZCBsaWtlIHRvIGNoYW5nZSB0aGUgYmFzZSBzaXplIG9mIGEgaGVhZGVyLCBqdXN0IHBhc3Ncbi8vIGl0IGFzIGFuIG9wdGlvbi5cbi8vXG4vLyBleC4gaDMoKVxuLy8gZXguIGgzOiAzLjVcblxuaDEoJHNpemU9Mi40KVxuICAtaGVhZGluZygkc2l6ZSlcblxuaDIoJHNpemU9MS44KVxuICAtaGVhZGluZygkc2l6ZSlcblxuaDMoJHNpemU9MS41KVxuICAtaGVhZGluZygkc2l6ZSlcblxuaDQoJHNpemU9MS4zKVxuICAtaGVhZGluZygkc2l6ZSlcblxuaDUoJHNpemU9MS4wKVxuICAtaGVhZGluZygkc2l6ZSlcblxuaDYoJHNpemU9MC45KVxuICAtaGVhZGluZygkc2l6ZSlcbiAgdXBjYXNlKClcblxuLy8gTWl4aW46IExpbmtcbi8vXG4vLyBBIG5pY2UgZGVmYXVsdCBzdHlsZSBmb3IgbGlua3MuIEFjY2VwdHMgYSBjb2xvciBhbmQgYSBzdHlsZS4gQ29sb3IgY2FuIGJlXG4vLyBhbnl0aGluZywgc3R5bGUgY2FuIGJlIHVuZGVybGluZSwgZGFya2VuLCBsaWdodGVuLCBvciBnbG93LCBlYWNoIGdpdmluZyBpdCBhXG4vLyBkaWZmZXJlbnQgc3R5bGUgb2YgaW50ZXJhY3Rpb24gd2hlbiBob3ZlcmVkLiBNb3JlIHN1Z2dlc3Rpb25zIGhlcmUgd2VsY29tZS5cbi8vXG4vLyBleC4gbGluaygpXG4vLyBleC4gbGluazogZ3JlZW5cbi8vIGV4LiBsaW5rOiAjNTc3NzdFICdnbG93J1xuXG5saW5rKCRjb2xvciA9ICRibHVlLCAkc3R5bGUgPSAndW5kZXJsaW5lJylcbiAgY29sb3I6ICRjb2xvclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmVcbiAgdHJhbnNpdGlvbigpXG5cbiAgaWYgJHN0eWxlID09ICd1bmRlcmxpbmUnXG4gICAgaG92ZXItdW5kZXJsaW5lKClcbiAgICAmOmhvdmVyXG4gICAgICBjb2xvcjogZGFya2VuKEBjb2xvciwgMTUlKVxuICBlbHNlIGlmICRzdHlsZSA9PSAnZGFya2VuJ1xuICAgICY6aG92ZXJcbiAgICAgIGNvbG9yOiBkYXJrZW4oQGNvbG9yLCAyMCUpXG4gIGVsc2UgaWYgJHN0eWxlID09ICdsaWdodGVuJ1xuICAgIGhvdmVyLWxpZ2h0ZW4oKVxuICBlbHNlIGlmICRzdHlsZSA9PSAnZ2xvdydcbiAgICAmOmhvdmVyXG4gICAgICB0ZXh0LXNoYWRvdzogMCAwIDdweCByZ2JhKEBjb2xvciwgLjYpXG5cbiAgJjp2aXNpdGVkXG4gICAgb3BhY2l0eTogLjhcblxuLy8gTWl4aW46IFJlc2V0IExpbmtcbi8vXG4vLyBTb21ldGltZXMgbXkgbGluayBtaXhpbiBvZiB0aGUgYnJvd3NlciBkZWZhdWx0cyB3aWxsIGdpdmUgeW91IHF1ZXN0aW9uYWJsZVxuLy8gbGluayBkZWZhdWx0cyB0aGF0IHlvdSBkb24ndCB3YW50IG9uIGNlcnRhaW4gZWxlbWVudHMuIFRoaXMgZ3V5IGdldHMgcmlkIG9mXG4vLyB0aGF0LlxuXG4vLyBleC4gcmVzZXQtbGluaygpXG5cbnJlc2V0LWxpbmsoKVxuICBib3JkZXI6IG5vbmVcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lXG4gIGNvbG9yOiBpbml0aWFsXG5cbiAgJjpob3ZlclxuICAgIGJvcmRlcjogbm9uZVxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZVxuICAgIGNvbG9yOiBpbml0aWFsXG5cbiAgJjp2aXNpdGVkXG4gICAgb3BhY2l0eTogMVxuXG4vLyBNaXhpbjogVGV4dCBTZWxlY3Rpb25cbi8vXG4vLyBUaGlzIGd1eSBzZXRzIHRoZSB0ZXh0IHNlbGVjdCBjb2xvciBpbnRlbGxpZ2VudGx5IGJhc2VkIG9uIHRoZVxuLy8gaGlnaGxpZ2h0LWNvbG9yIHZhcmlhYmxlIGZvdW5kIGluIHRoZSBzZXR0aW5ncyBmaWxlLiBJZiB5b3UgcmVhbGx5IHdhbnQsIHlvdVxuLy8gY2FuIHBhc3MgaXQgYSBjb2xvciBvdmVycmlkZSB0b28uXG5cbi8vIGV4LiB0ZXh0LXNlbGVjdGlvbigpXG5cbnRleHQtc2VsZWN0aW9uKCRjb2xvciA9ICRoaWdobGlnaHQtY29sb3IsICR0ZXh0LWNvbG9yID0gbnVsbClcblxuICAkdGV4dC1jb2xvciA9IChsaWdodCgkY29sb3IpID8gd2hpdGUgOiAjNDk0OTQ5KSB1bmxlc3MgJHRleHQtY29sb3JcblxuICAmOjotbW96LXNlbGVjdGlvblxuICAgIGJhY2tncm91bmQ6ICRjb2xvclxuICAgIGNvbG9yOiAkdGV4dC1jb2xvclxuXG4gICY6OnNlbGVjdGlvblxuICAgIGJhY2tncm91bmQ6ICRjb2xvclxuICAgIGNvbG9yOiAkdGV4dC1jb2xvclxuXG4vLyBNaXhpbjogVWxcbi8vXG4vLyBBIG5pY2UgZGVmYXVsdCBmb3IgbGlzdCBzdHlsZXMuIE1vcmUgb3IgbGVzcyB0aGUgc2FtZSBhcyBicm93c2VyIGRlZmF1bHRzLFxuLy8gc2NhbGVzIG5pY2VseS4gWW91IGNhbiBwYXNzIGl0IGFueSBzdHlsZSB0aGF0IGxpc3Qtc3R5bGUtdHlwZSB3b3VsZCBub3JtYWxseVxuLy8gdGFrZS4gRGVmYXVsdHMgdG8gZGlzYy4gVXNlIHRoaXMgb24gYSB1bCBlbGVtZW50IHBvciBmYXZvci5cbi8vXG4vLyBleC4gdWwoKVxuLy8gZXguIHVsOiAnc3F1YXJlJ1xuXG51bCgkc3R5bGUgPSAnZGlzYycpXG4gIG1hcmdpbjogNXB4IDE1cHhcbiAgbWFyZ2luOiAwLjMycmVtIDAuOTRyZW1cbiAgcGFkZGluZy1sZWZ0OiAxcmVtXG5cbiAgbGlcbiAgICBsaXN0LXN0eWxlLXR5cGU6IHVucXVvdGUoJHN0eWxlKVxuICAgIHBhZGRpbmc6IDJweCAwXG4gICAgcGFkZGluZzogMC4xMjVyZW1cblxuLy8gTWl4aW46IE9sXG4vL1xuLy8gQSBuaWNlIGRlZmF1bHQgZm9yIGxpc3Qgc3R5bGVzLiBNb3JlIG9yIGxlc3MgdGhlIHNhbWUgYXMgYnJvd3NlciBkZWZhdWx0cyxcbi8vIHNjYWxlcyBuaWNlbHkuIFlvdSBjYW4gcGFzcyBpdCBhbnkgc3R5bGUgdGhhdCBsaXN0LXN0eWxlLXR5cGUgd291bGQgbm9ybWFsbHlcbi8vIHRha2UuIERlZmF1bHRzIHRvIGRlY2ltYWwuIFVzZSB0aGlzIG9uIGEgb2wgZWxlbWVudCBwb3IgZmF2b3IuXG4vL1xuLy8gZXguIG9sKClcbi8vIGV4LiBvbDogJ3VwcGVyLXJvbWFuJ1xuXG5vbCgkc3R5bGUgPSAnZGVjaW1hbCcpXG4gIG1hcmdpbjogNXB4IDE4cHhcbiAgbWFyZ2luOiAwLjMycmVtIDEuMTI1cmVtXG4gIHBhZGRpbmctbGVmdDogMXJlbVxuXG4gIGxpXG4gICAgbGlzdC1zdHlsZS10eXBlOiB1bnF1b3RlKCRzdHlsZSlcbiAgICBwYWRkaW5nOiAycHggMFxuICAgIHBhZGRpbmc6IDAuMTI1cmVtXG5cbi8vIE1peGluOiBJbmxpbmUgTGlzdFxuLy9cbi8vIEZvciB3aGVuIHlvdSBuZWVkIHlvdXIgbGlzdCB0byBiZSBob3Jpem9udGFsLiBQYXNzIGl0IHRoZSBzcGFjaW5nIHlvdSB3YW50XG4vLyBiZXR3ZWVuIGxpc3QgZWxlbWVudHMsIHdoYXRldmVyIHVuaXRzIHlvdSdkIGxpa2UuIERlZmF1bHRzIHRvIDIwcHguXG4vL1xuLy8gZXguIGlubGluZS1saXN0KClcbi8vIGV4LiBpbmxpbmUtbGlzdDogMTVweFxuXG5pbmxpbmUtbGlzdCgkc3BhY2luZyA9IDIwcHgpXG4gIGdyb3VwKClcbiAgbWFyZ2luOiAwXG4gIHBhZGRpbmc6IDBcblxuICBsaVxuICAgIGZsb2F0OiBsZWZ0XG4gICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2luZ1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZVxuXG4gIGxpOmxhc3QtY2hpbGRcbiAgICBtYXJnaW4tcmlnaHQ6IDBcblxuLy8gTWl4aW46IFJlc2V0IExpc3Rcbi8vXG4vLyBJZiB5b3UncmUgdGlyZWQgb2YgYWxsIHRoZSBsaXN0IHNoZW5hbmlnYW5zIGFuZCB3YW50IHRvIGdldCByaWQgb2YgdGhlbSBmb3Jcbi8vIHRoaXMgc3BlY2lhbCBsaXN0IHlvdSdyZSB3b3JraW5nIG9uLCB0aGlzIGlzIHlvdXIgZ3V5LiBSZXNldHMgdGhlIG1hcmdpbnMsXG4vLyBwYWRkaW5nLCBhbmQgc3R5bGUuXG4vL1xuLy8gZXguIHJlc2V0LWxpc3QoKVxuXG5yZXNldC1saXN0KClcbiAgbWFyZ2luOiAwXG4gIHBhZGRpbmc6IDBcblxuICBsaVxuICAgIGZsb2F0OiBub25lXG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lXG4gICAgcGFkZGluZzogMFxuICAgIG1hcmdpbjogMFxuXG4vLyBNaXhpbjogQmxvY2txdW90ZVxuLy9cbi8vIE5pY2Ugc3R5bGVzIGZvciBhIGJsb2NrcXVvdGUsIGFuZCBldmVuIHB1dHMgYSBuaWNlIGh5cGhlbiBpbiBiZWZvcmUgeW91clxuLy8gY2l0YXRpb24uIFVzZSB3aXRoIGEgPHA+IGFuZCA8Y2l0ZT4sIDxmb290ZXI+LCBvciA8ZmlnY2FwdGlvbj4gaW5zaWRlIGZvclxuLy8gYmVzdCByZXN1bHRzLiBQYXNzIGEgY29sb3Igb3IgJ25vbmUnIHRvIHNldCB0aGUgbGVmdCBib3JkZXIuXG4vL1xuLy8gZXguIGJsb2NrcXVvdGUoKVxuXG5ibG9ja3F1b3RlKCRjb2xvciA9ICRibHVlKVxuICBib3JkZXItbGVmdDogNHB4IHNvbGlkICRjb2xvclxuICBtYXJnaW46IDFlbSAwXG4gIHBhZGRpbmctbGVmdDogMS41ZW1cbiAgZ3JvdXAoKVxuXG4gID4gcFxuICAgIGZvbnQtd2VpZ2h0OiAzMDBcbiAgICBmb250LXNpemU6IDEyNyVcbiAgICBmb250LXNpemU6IDEuMjdyZW1cbiAgICBsaW5lLWhlaWdodDogMTI3JVxuICAgIGxpbmUtaGVpZ2h0OiAxLjI3cmVtXG4gICAgbWFyZ2luLXRvcDogMFxuXG4gID4gY2l0ZSwgPiBmb290ZXIsID4gZmlnY2FwdGlvblxuICAgIGNvbG9yOiAjODg4ODg4XG4gICAgJjpiZWZvcmVcbiAgICAgIGNvbnRlbnQ6ICdcXDIwMTQnXG5cbi8vIEFsaWFzOiBibG9ja3F1b1xuYmxvY2txdW8gPSBibG9ja3F1b3RlXG5cbi8vIEh5cGhlbmF0aW9uXG4vL1xuLy8gSHlwaGVuYXRpb24gaXMgdGhlIGJldHRlciB3b3JkLWJyZWFrLiBJdOKAmXMgbG9jYWxlIGF3YXJlLCBhbmQgaW5zZXJ0cyB0aGVcbi8vIGh5cGhlbiBjaGFyYWN0ZXIgYXQgdGhlIGNvcnJlY3QgcGxhY2UsIHdoZW4gYnJlYWtpbmcgdGhlIHdvcmRzLiBUaGlzIGlzXG4vLyBlc3BlY2lhbGx5IGltcG9ydGFudCBpbiByZXNwb25zaXZlIGRlc2lnbnMuIEl0IHdpbGwgc2F2ZSB5b3UgZnJvbSBhIGxvdCBvZlxuLy8gcmFnZ2VkIGxpbmVzLiBBbmQsIG5vIG5lZWQgYW55bW9yZSBmb3IgY2x1bmt5ICYgc2xvdyBKYXZhc2NyaXB0IGh5cGhlbmF0aW9uXG4vLyBmYWxsYmFja3MuIFRha2VuIGZyb20gaHR0cDovL3d3dy5uZXduZXQtc29mdC5jb20vYmxvZy9jc3N0eXBvZ3JhcGh5XG4vL1xuLy8gZXguIGh5cGhlbmF0aW9uKClcblxuaHlwaGVuYXRpb24oKVxuICAgIC1tcy13b3JkLWJyZWFrOiBicmVhay1hbGxcbiAgICB3b3JkLWJyZWFrOiAgICAgYnJlYWstYWxsXG4gICAgd29yZC1icmVhazogICAgIGJyZWFrLXdvcmQgLy8gd2Via2l0XG4gICAgaHlwaGVuczogYXV0byAvLyBub25lLCBhdXRvLCA8bnVtYmVyPlxuICAgIC13ZWJraXQtaHlwaGVuYXRlLWJlZm9yZTogMlxuICAgIC13ZWJraXQtaHlwaGVuYXRlLWFmdGVyOiAgM1xuICAgIGh5cGhlbmF0ZS1saW5lczogICAgICAgICAgM1xuXG4vLyBNaXhpbjogU2hhZG93IFN0cm9rZVxuLy9cbi8vIENyZWF0ZXMgYSB0ZXh0IG91dGxpbmUgdXNpbmcgdGV4dC1zaGFkb3cuIFBvcnRlZCBmcm9tIG5pYi5cbi8vIFRha2VzIGEgY29sb3IuXG4vL1xuLy8gZXg6IHNoYWRvdy1zdHJva2UoKVxuLy8gZXg6IHNhaGRvdy1zdHJva2UocmVkKVxuXG5zaGFkb3ctc3Ryb2tlKCRjb2xvciA9ICRibHVlKVxuICB0ZXh0LXNoYWRvdzogLTFweCAtMXB4IDAgJGNvbG9yLCAxcHggLTFweCAwICRjb2xvciwgLTFweCAxcHggMCAkY29sb3IsIDFweCAxcHggMCAkY29sb3JcblxuLy8gQWRkaXRpdmUgTWl4aW46IEJhc2Vcbi8vXG4vLyBXQVJOSU5HOiBDcmVhdGVzIGNsYXNzZXMgaW4geW91ciBjc3MgYW5kIHN0eWxlcyB0aGVtIC0gbm90IHRvIGJlIHVzZWQgaW5zaWRlXG4vLyBhbiBlbGVtZW50LlxuLy9cbi8vIFRoaXMgaXMgYW4gZXNzZW50aWFsIG1peGluLiBZb3Ugd2FudCB0aGlzIG9uIHlvdXIgcGFnZS4gU2V0cyB5b3VyIGZvbnQgc3RhY2ssXG4vLyBzaXplLCBhbmQgY29sb3JzIGJhc2VkIG9uIHRoZSBzZXR0aW5ncyBmaWxlIGFuZCBtYWtlcyBzdXJlIHRoYXQgeW91ciB0ZXh0IGlzXG4vLyBhIGdyZWF0IGxvb2tpbmcgYXMgcG9zc2libGUuIFlvdSBjYW4gb3ZlcnJpZGUgYW55IG9mIHRoZSBwYXJhbXMsIGJ1dCB0aGVyZSBpc1xuLy8gcmVhbGx5IG5vIHJlYXNvbiB0by5cbi8vXG4vLyBleC4gYmFzZSgpXG5cbmJhc2UoJGZvbnRzID0gJGZvbnQtc3RhY2ssICRzaXplID0gJGZvbnQtc2l6ZSwgJGNvbG9yID0gJGZvbnQtY29sb3IpXG4gIGh0bWxcbiAgICBmb250LXNpemU6IHVuaXQoJHNpemUsICdweCcpXG4gICAgZm9udC1zaXplOiB1bml0KCgkc2l6ZS8xNikqMTAwLCBcIiVcIilcblxuICBib2R5XG4gICAgZm9udC1mYW1pbHk6ICRmb250c1xuICAgIGNvbG9yOiAkY29sb3JcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZFxuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJVxuICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlXG4gICAgZm9udC1zaXplLWFkanVzdDogYXV0b1xuXG4vLyBBZGRpdGl2ZSBNaXhpbjogSGVhZGVyc1xuLy9cbi8vIFdBUk5JTkc6IENyZWF0ZXMgY2xhc3NlcyBpbiB5b3VyIGNzcyBhbmQgc3R5bGVzIHRoZW0gLSBub3QgdG8gYmUgdXNlZCBpbnNpZGVcbi8vIGFuIGVsZW1lbnQuXG4vL1xuLy8gQWRkcyByb290cycgd29uZGVyZnVsIHNjYWxpbmcgaGVhZGVyIHN0eWxlcyB0byB5b3VyIDxoeD4gdGFncy5cbi8vXG4vLyBleC4gaGVhZGVycygpXG5cbmhlYWRlcnMoKVxuICBoMVxuICAgIGgxKClcblxuICBoMlxuICAgIGgyKClcblxuICBoM1xuICAgIGgzKClcblxuICBoNFxuICAgIGg0KClcblxuICBoNVxuICAgIGg1KClcblxuICBoNlxuICAgIGg2KClcblxuLy8gQWRkaXRpdmUgTWl4aW46IExpc3RzXG4vL1xuLy8gV0FSTklORzogQ3JlYXRlcyBjbGFzc2VzIGluIHlvdXIgY3NzIGFuZCBzdHlsZXMgdGhlbSAtIG5vdCB0byBiZSB1c2VkIGluc2lkZVxuLy8gYW4gZWxlbWVudC5cbi8vXG4vLyBBZGRzIHJvb3RzJyBzdHlsZXMgdG8gdWwgYW5kIG9scy5cbi8vXG4vLyBleC4gbGlzdHMoKVxuXG5saXN0cygpXG4gIHVsXG4gICAgdWwoKVxuICBvbFxuICAgIG9sKClcblxuLy8gQWRkaXRpdmUgTWl4aW46IEJvbGQtSXRhbGljXG4vL1xuLy8gV0FSTklORzogQ3JlYXRlcyBjbGFzc2VzIGluIHlvdXIgY3NzIGFuZCBzdHlsZXMgdGhlbSAtIG5vdCB0byBiZSB1c2VkIGluc2lkZVxuLy8gYW4gZWxlbWVudC5cbi8vXG4vLyBBZGRzIGJvbGQgYW5kIGl0YWxpYyBzdHlsZXMgdG8gdGhlIHJpZ2h0IHRhZ3MgaWYgeW91IGRpZCBhIGdsb2JhbCByZXNldC5cbi8vXG4vLyBleC4gYm9sZC1pdGFsaWMoKVxuXG5ib2xkLWl0YWxpYygpXG4gIGJcbiAgICBib2xkKClcbiAgaVxuICAgIGl0YWxpYygpXG4gIHN0cm9uZ1xuICAgIGJvbGQoKVxuICBlbVxuICAgIGl0YWxpYygpXG5cbi8vIEFkZGl0aXZlIE1peGluOiBUeXBvZ3JhcGh5XG4vL1xuLy8gV0FSTklORzogQ3JlYXRlcyBjbGFzc2VzIGluIHlvdXIgY3NzIGFuZCBzdHlsZXMgdGhlbSAtIG5vdCB0byBiZSB1c2VkIGluc2lkZVxuLy8gYW4gZWxlbWVudC5cbi8vXG4vLyBBZGRzIHJvb3RzJyBzdHlsZXMgdG8gYm9sZCBhbmQgaXRhbGljIGVsZW1lbnRzLCBoZWFkZXJzLCBwYXJhZ3JhcGdzLCBzbWFsbFxuLy8gdGV4dCwgbGlua3MsIGxpc3RzLCBhbmQgYmxvY2txdW90ZXMuIEdvdCBhbGwgeW91ciBiYXNpYyBlbGVtZW50cyBjb3ZlcmVkLlxuLy9cbi8vIGV4LiB0eXBvZ3JhcGh5KClcblxudHlwb2dyYXBoeSgpXG4gIGJvbGQtaXRhbGljKClcbiAgaGVhZGVycygpXG4gIGxpc3RzKClcbiAgdGV4dC1zZWxlY3Rpb24oKVxuXG4gIHBcbiAgICBwYXJhZ3JhcGgoKVxuXG4gIHNtYWxsXG4gICAgc21hbGwoKVxuXG4gIGFcbiAgICBsaW5rKClcblxuICBibG9ja3F1b3RlXG4gICAgYmxvY2txdW8oKVxuXG4gIC5oeXBoZW5hdGlvblxuICAgIGh5cGhlbmF0aW9uKClcbiIsIi8vIC0tLS0tLS0tLVxuLy8gVXRpbGl0aWVzXG4vLyAtLS0tLS0tLS1cblxuLy8gQWxpYXM6IE5vIFNlbGVjdFxuLy8gWW91IGNhbid0IGhpZ2hsaWdodCB0aGlzLlxuXG5uby1zZWxlY3QoKVxuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmVcbiAgdXNlci1zZWxlY3Q6IG5vbmVcblxuLy8gQWxpYXM6IEJcbi8vIEJvcmRlciwgYnV0IHF1aWNrZXIgYW5kIHdpdGggYW4gaW50ZWxsaWdlbnQgZGVmYXVsdC5cblxuYigpXG4gIGFyZ3VtZW50cyA9IHVucXVvdGUoJzFweCBzb2xpZCcpIHVubGVzcyBhcmd1bWVudHNcbiAgYm9yZGVyOiBhcmd1bWVudHNcblxuLy8gQWxpYXM6IFRyYW5zaXRpb25cbi8vXG4vLyBUcmFuc2l0aW9uIHdpdGggYW4gaW50ZWxsaWdlbnQgZGVmYXVsdC5cbi8vXG4vLyBleC4gdHJhbnNpdGlvbigpXG4vLyBleC4gdHJhbnNpdGlvbjogY29sb3IgMXMgZWFzZVxuLy8gZXguIHRyYW5zaXRpb24oY29sb3IgMXMgZWFzZSwgYmFja2dyb3VuZCAyLjRzIGxpbmVhcilcblxudHJhbnNpdGlvbigpXG4gIGFyZ3VtZW50cyA9IHVucXVvdGUoJ2FsbCAuM3MgZWFzZScpIHVubGVzcyBhcmd1bWVudHNcbiAgdHJhbnNpdGlvbjogYXJndW1lbnRzXG5cbi8vIEFsaWFzOiBCb3JkZXIgQm94XG4vLyBBIHF1aWNrZXIgd2F5IHRvIHNwZWNpZnkgYm9yZGVyLWJveCBzaXppbmcuXG5cbmJvcmRlci1ib3goKVxuICBib3gtc2l6aW5nOiBib3JkZXItYm94XG5cbi8vIEFsaWFzOiBPcGVudHlwZSBsaWdhdHVyZXNcbi8vXG4vLyBUaGUgdmFzdCBtYWpvcml0eSBvZiBmb250cyBjb250YWluIGxvd2VyY2FzZSBhbmQgdXBwZXJjYXNlIGFscGhhYmV0cyxcbi8vIG51bWVyYWxzLCBwdW5jdHVhdGlvbiBhbmQgYWNjZW50cy4gTWFueSBwcm9mZXNzaW9uYWxseS1kZXNpZ25lZCBmb250c1xuLy8gYWxzbyBjb250YWluIGxpZ2F0dXJlcywgYWx0ZXJuYXRpdmUgY2hhcmFjdGVycywgc21hbGxjYXBzLCBkaWZmZXJlbnQga2luZHMgb2Zcbi8vIG51bWJlcnMsIGFuZCBzb21ldGltZXMgbXVjaCBtb3JlIGJlc2lkZXMuIFRoaXMgZW5hYmxlcyBpdC5cbi8vXG4vLyBTb3VyY2U6IGh0dHA6Ly93d3cubmV3bmV0LXNvZnQuY29tL2Jsb2cvY3NzdHlwb2dyYXBoeVxuLy8gQWRkaXRpb25hbDogaHR0cDovL2Jsb2cuZm9udGRlY2suY29tL3Bvc3QvMTU3NzcxNjU3MzQvb3BlbnR5cGUtMVxuXG5vcGVuLXR5cGUtbGlnYXR1cmVzKClcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImxpZ2FcIiwgXCJkbGlnXCJcblxuLy8gQWxpYXM6IE11bHRpLWxpbmUgcGFkZGluZ1xuLy9cbi8vIFlvdSBjYW4gbm90IGFwcGx5IHRoZSBiYWNrZ3JvdW5kIGFuZCBwYWRkaW5nIHRvIGEgPHNwYW4+IG9yIGFuIGlubGluZSBlbGVtZW50LlxuLy8gVGhlIGxlZnQgYW5kIHJpZ2h0IHBhZGRpbmcgd2lsbCBvbmx5IGFwcGx5IHRvIHRoZSB2ZXJ5IGZpcnN0IGFuZCB2ZXJ5IGxhc3QgbGluZS5cbi8vIE9uIGVhY2ggb2YgdGhlIG1pZGRsZSBsaW5lcywgdGhlIGJhY2tncm91bmQgd2lsbCBidXR0IHVwIGltbWVkaWF0ZWx5IG5leHQgdG8gdGhlIHRleHQuXG4vL1xuLy8gVGhlIGF0dHJpYnV0ZSBib3gtZGVjb3JhdGlvbi1icmVhayBzb2x2ZXMgdGhpcyBwcm9ibGVtIGJ1dCBuZWVkcyBwcmVmaXhpbmcuXG4vL1xuLy8gU291cmNlOiBodHRwOi8vY29kZXBlbi5pby9jaHJpc2NveWllci9wZW4vaEl2RmVcblxubXVsdGktbGluZS1wYWRkaW5nKClcbiAgYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuXG4vLyBNaXhpbjogUm91bmRlZFxuLy9cbi8vIFVubGVzcyB5b3UgYXJlIHdvcmtpbmcgd2l0aCBhIHJpZGljdWxvdXNseSBsYXJnZSBlbGVtZW50LCB0aGlzIHdpbGwgcm91bmQgdGhlXG4vLyBjb3JuZXJzIGFzIG11Y2ggYXMgY3NzIHdpbGwgYWxsb3cuIEV2ZW4gaW4gSUUuXG4vL1xuLy8gZXguIHJvdW5kZWQoKVxuXG5yb3VuZGVkKClcbiAgYm9yZGVyLXJhZGl1czogOTk5cHhcblxuLy8gTWl4aW46IFRyaWFuZ2xlXG4vL1xuLy8gT25lIG9mIG15IGZhdm9yaXRlcy4gTWFrZXMgYSBsaXR0bGUgY3NzIHRyaWFuZ2xlIGZvciB5b3UuIFBhc3MgaXQgYSBkaXJlY3Rpb25cbi8vICh1cCwgZG93biwgbGVmdCwgcmlnaHQpLCBzaXplIChpbiBwaXhlbHMpLCBhbmQgYSBjb2xvci5cbi8vXG4vLyBleC4gdHJpYW5nbGUoKVxuLy8gZXguIHRyaWFuZ2xlOiAnZG93bicgMTVweCBibHVlXG5cbnRyaWFuZ2xlKCRkaXJlY3Rpb24gPSAndXAnLCAkc2l6ZSA9IDEwcHgsICRjb2xvciA9ICMwMDApXG4gIHdpZHRoOiAwXG4gIGhlaWdodDogMFxuICBpZiAkZGlyZWN0aW9uID09ICd1cCdcbiAgICBib3JkZXItbGVmdDogJHNpemUgc29saWQgdHJhbnNwYXJlbnRcbiAgICBib3JkZXItcmlnaHQ6ICRzaXplIHNvbGlkIHRyYW5zcGFyZW50XG4gICAgYm9yZGVyLWJvdHRvbTogJHNpemUgc29saWQgJGNvbG9yXG4gIGVsc2UgaWYgJGRpcmVjdGlvbiA9PSAnZG93bidcbiAgICBib3JkZXItbGVmdDogJHNpemUgc29saWQgdHJhbnNwYXJlbnRcbiAgICBib3JkZXItcmlnaHQ6ICRzaXplIHNvbGlkIHRyYW5zcGFyZW50XG4gICAgYm9yZGVyLXRvcDogJHNpemUgc29saWQgJGNvbG9yXG4gIGVsc2UgaWYgJGRpcmVjdGlvbiA9PSAnbGVmdCdcbiAgICBib3JkZXItdG9wOiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudFxuICAgIGJvcmRlci1ib3R0b206ICRzaXplIHNvbGlkIHRyYW5zcGFyZW50XG4gICAgYm9yZGVyLXJpZ2h0OiAkc2l6ZSBzb2xpZCAkY29sb3JcbiAgZWxzZSBpZiAkZGlyZWN0aW9uID09ICdyaWdodCdcbiAgICBib3JkZXItdG9wOiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudFxuICAgIGJvcmRlci1ib3R0b206ICRzaXplIHNvbGlkIHRyYW5zcGFyZW50XG4gICAgYm9yZGVyLWxlZnQ6ICRzaXplIHNvbGlkICRjb2xvclxuXG4vLyBNaXhpbjogRGVidWdcbi8vXG4vLyBEZWJ1Z2dpbmcgdG9vbCAtIGFkZHMgYSBib3JkZXIgdG8gdGhlIGN1cnJlbnQgZWxlbWVudCwgaXRzIGNoaWxkcmVuLFxuLy8gZ3JhbmRjaGlsZHJlbiwgZXRjIHNvIHlvdSBjYW4gc2VlIHdoYXQncyB1cCDigJMgZ3JlYXQgZm9yIHByZWNpc2UgbGF5b3V0XG4vLyB0d2Vha3MuICBJdCB3aWxsIGFsc28gYWRkIGZsYWdzIGlmIHlvdSBtYWRlIG1pc3Rha2VzIGxpa2UgcHV0IGluIGlubGluZVxuLy8gc3R5bGVzLCBmb3Jnb3QgYW4gYWx0IG9uIGFuIGltYWdlLCBsZWZ0IHRoZSBhbHQgYmxhbmssIGV0Yy4gTm90IHRvIGJlIHVzZWRcbi8vIGluIHByb2R1Y3Rpb24sIG9idmlvdXNseS5cbi8vXG4vLyB2aWEgZGJveDogaHR0cDovL2NvZGVwZW4uaW8vZGJveC9wZW4vR0paellvP2VkaXRvcnM9MTEwXG5cbmRlYnVnKClcbiAgYm9yZGVyIDFweCBzb2xpZCBNZWRpdW1QdXJwbGVcbiAgPiAqXG4gICAgYm9yZGVyIDFweCBzb2xpZCBEYXJrS2hha2lcbiAgPiAqID4gKlxuICAgIGJvcmRlciAxcHggc29saWQgTWVkaXVtVHVycXVvaXNlXG4gID4gKiA+ICogPiAqXG4gICAgYm9yZGVyIDFweCBzb2xpZCBMaWdodFNsYXRlR3JheVxuICA+ICogPiAqID4gKiA+ICpcbiAgICBib3JkZXIgMXB4IHNvbGlkIExpZ2h0Qmx1ZVxuICA+ICogPiAqID4gKiA+ICogPiAqXG4gICAgYm9yZGVyIDFweCBzb2xpZCBNZWRpdW1TbGF0ZUJsdWVcbiAgPiAqID4gKiA+ICogPiAqID4gKiA+ICpcbiAgICBib3JkZXIgMXB4IHNvbGlkIERlZXBTa3lCbHVlXG4gID4gKiA+ICogPiAqID4gKiA+ICogPiAqID4gKlxuICAgIGJvcmRlciAxcHggc29saWQgRGFya1NlYUdyZWVuXG5cbiAgaW1nXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YwMFxuICAgIC13ZWJraXQtZmlsdGVyOiBodWUtcm90YXRlKDMzMGRlZykgY29udHJhc3QoLjc1KSBzYXR1cmF0ZSg2KVxuICAgIGZpbHRlcjogaHVlLXJvdGF0ZSgzMzBkZWcpIGNvbnRyYXN0KC43NSkgc2F0dXJhdGUoNilcblxuICBpbWdbYWx0XVxuICAgIGJvcmRlcjogMXB4IHNvbGlkIExpbWVHcmVlblxuICAgIC13ZWJraXQtZmlsdGVyOiBub25lXG4gICAgZmlsdGVyOiBub25lXG5cbiAgaW1nW2FsdD1cIlwiXVxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGdvbGRcbiAgICAtd2Via2l0LWZpbHRlcjogY29udHJhc3QoMSkgc2F0dXJhdGUoMilcbiAgICBmaWx0ZXI6IGNvbnRyYXN0KDEpIHNhdHVyYXRlKDIpXG5cbiAgYVxuICAgIGJhY2tncm91bmQ6IHJnYmEoI2YwMCwgLjEpXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YwMFxuXG4gIGFbdGl0bGVdXG4gICAgYmFja2dyb3VuZDogbm9uZVxuICAgIGJvcmRlci1jb2xvcjogTGltZUdyZWVuXG5cbiAgc3R5bGVcbiAgICBib3JkZXI6IGJsb2NrXG5cbiAgW3N0eWxlXSwgc3R5bGUsIFtjbGFzcz1cIlwiXSwgW2lkPVwiXCJdLCBhW2hyZWY9XCIjXCJdXG4gICAgYmFja2dyb3VuZDogcmdiYSh5ZWxsb3csIC4yKVxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGdvbGRcblxuLy8gQmxvY2sgTWl4aW46IFF1YW50aXR5IFF1ZXJpZXNcbi8vXG4vLyBTZXQgcnVsZXMgZm9yIGEgc2VsZWN0b3IgYmFzZWQgb24gYSBzcGVjaWZpYyBzaWJsaW5nIGNvdW50LlxuLy8gdmlhOiBodHRwczovL2dpdGh1Yi5jb20vcGFzY2FsZHVlei9wb3N0Y3NzLXF1YW50aXR5LXF1ZXJpZXNcbi8vXG4vLyBleC4gK3F1YW50aXR5LWF0LWxlYXN0KDYpXG4vLyBleC4gK3F1YW50aXR5LWF0LW1vc3QoMTIsIGRpdilcbi8vIGV4LiArcXVhbnRpdHktYmV0d2VlbigwLCA4LCBzcGFuKVxuLy8gZXguICtxdWFudGl0eS1leGFjdGx5KDUpXG5cbnF1YW50aXR5LWF0LWxlYXN0KCRjb3VudCA9IDQsICRzZWxlY3RvciA9IGxpKVxuICAmID4geyRzZWxlY3Rvcn06bnRoLWxhc3QtY2hpbGQobit7JGNvdW50fSlcbiAgJiA+IHskc2VsZWN0b3J9Om50aC1sYXN0LWNoaWxkKG4reyRjb3VudH0pIH4geyRzZWxlY3Rvcn1cbiAgICB7YmxvY2t9XG5cbnF1YW50aXR5LWF0LW1vc3QoJGNvdW50ID0gNCwgJHNlbGVjdG9yID0gbGkpXG4gICYgPiB7JHNlbGVjdG9yfTpudGgtbGFzdC1jaGlsZCgtbit7JGNvdW50fSk6Zmlyc3QtY2hpbGRcbiAgJiA+IHskc2VsZWN0b3J9Om50aC1sYXN0LWNoaWxkKC1uK3skY291bnR9KTpmaXJzdC1jaGlsZCB+IHskc2VsZWN0b3J9XG4gICAge2Jsb2NrfVxuXG5xdWFudGl0eS1iZXR3ZWVuKCRzdGFydCA9IDAsICRlbmQgPSAxMCwgJHNlbGVjdG9yID0gbGkpXG4gICYgPiB7JHNlbGVjdG9yfTpudGgtbGFzdC1jaGlsZChuK3skc3RhcnR9KTpudGgtbGFzdC1jaGlsZCgtbit7JGVuZH0pOmZpcnN0LWNoaWxkXG4gICYgPiB7JHNlbGVjdG9yfTpudGgtbGFzdC1jaGlsZChuK3skc3RhcnR9KTpudGgtbGFzdC1jaGlsZCgtbit7JGVuZH0pOmZpcnN0LWNoaWxkIH4geyRzZWxlY3Rvcn1cbiAgICB7YmxvY2t9XG5cbnF1YW50aXR5LWV4YWN0bHkoJGNvdW50ID0gNCwgJHNlbGVjdG9yID0gbGkpXG4gICYgPiB7JHNlbGVjdG9yfTpudGgtbGFzdC1jaGlsZCh7JGNvdW50fSk6Zmlyc3QtY2hpbGRcbiAgJiA+IHskc2VsZWN0b3J9Om50aC1sYXN0LWNoaWxkKHskY291bnR9KTpmaXJzdC1jaGlsZCB+IHskc2VsZWN0b3J9XG4gICAge2Jsb2NrfVxuXG4vLyBGdW5jdGlvbjogUmVtIENhbGN1bGF0b3Jcbi8vXG4vLyBDYWxjdWxhdGVzIGFuZCByZXR1cm5zIHRoZSByZW0gdmFsdWUgYmFzZWQgb24gcHggaW5wdXQuIERlZmF1bHQgYmFzZSBmb250XG4vLyBzaXplIGlzIDE2cHgsIGJ1dCBjYW4gYmUgY2hhbmdlZCB3aXRoIGJhc2UtZm9udC1zaXplLlxuLy9cbi8vIGV4ICAgICAgIDogcmVtKDMwcHgpIG9yIHJlbSgzMClcbi8vIHJldHVybnMgIDogMS44NzVyZW1cblxucmVtKCR2YWx1ZSlcbiAgJGJhc2UtZm9udC1zaXplID89IDE2cHhcbiAgJHR5cGUgPSB1bml0KCR2YWx1ZSlcbiAgaWYgJHR5cGUgPT0gcHhcbiAgICByZXR1cm4gdW5pdCgkdmFsdWUgLyAkYmFzZS1mb250LXNpemUsICdyZW0nKVxuICBlbHNlXG4gICAgcmV0dXJuIHVuaXQoJHZhbHVlLCAkdHlwZSlcblxuLy8gQ3VzdG9tIGFuaW1hdGlvbiB0aW1pbmcgZnVuY3Rpb25zLCBwb3J0ZWQgZnJvbSBib3VyYm9uXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdGhvdWdodGJvdC9ib3VyYm9uL2Jsb2IvbWFzdGVyL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvYWRkb25zL190aW1pbmctZnVuY3Rpb25zLnNjc3NcblxuLy8gZWFzZS1pblxuJGVhc2UtaW4tcXVhZCA9ICAgICAgY3ViaWMtYmV6aWVyKDAuNTUwLCAgMC4wODUsIDAuNjgwLCAwLjUzMClcbiRlYXNlLWluLWN1YmljID0gICAgIGN1YmljLWJlemllcigwLjU1MCwgIDAuMDU1LCAwLjY3NSwgMC4xOTApXG4kZWFzZS1pbi1xdWFydCA9ICAgICBjdWJpYy1iZXppZXIoMC44OTUsICAwLjAzMCwgMC42ODUsIDAuMjIwKVxuJGVhc2UtaW4tcXVpbnQgPSAgICAgY3ViaWMtYmV6aWVyKDAuNzU1LCAgMC4wNTAsIDAuODU1LCAwLjA2MClcbiRlYXNlLWluLXNpbmUgPSAgICAgIGN1YmljLWJlemllcigwLjQ3MCwgIDAuMDAwLCAwLjc0NSwgMC43MTUpXG4kZWFzZS1pbi1leHBvID0gICAgICBjdWJpYy1iZXppZXIoMC45NTAsICAwLjA1MCwgMC43OTUsIDAuMDM1KVxuJGVhc2UtaW4tY2lyYyA9ICAgICAgY3ViaWMtYmV6aWVyKDAuNjAwLCAgMC4wNDAsIDAuOTgwLCAwLjMzNSlcbiRlYXNlLWluLWJhY2sgPSAgICAgIGN1YmljLWJlemllcigwLjYwMCwgLTAuMjgwLCAwLjczNSwgMC4wNDUpXG4kZWFzZS1pbi1zd2lmdCA9ICAgICBjdWJpYy1iZXppZXIoMC45MDAsICAwLjAwMCwgMC40NTAsIDEuMDAwKVxuXG4vLyBlYXNlLW91dFxuJGVhc2Utb3V0LXF1YWQgPSAgICAgY3ViaWMtYmV6aWVyKDAuMjUwLCAgMC40NjAsIDAuNDUwLCAwLjk0MClcbiRlYXNlLW91dC1jdWJpYyA9ICAgIGN1YmljLWJlemllcigwLjIxNSwgIDAuNjEwLCAwLjM1NSwgMS4wMDApXG4kZWFzZS1vdXQtcXVhcnQgPSAgICBjdWJpYy1iZXppZXIoMC4xNjUsICAwLjg0MCwgMC40NDAsIDEuMDAwKVxuJGVhc2Utb3V0LXF1aW50ID0gICAgY3ViaWMtYmV6aWVyKDAuMjMwLCAgMS4wMDAsIDAuMzIwLCAxLjAwMClcbiRlYXNlLW91dC1zaW5lID0gICAgIGN1YmljLWJlemllcigwLjM5MCwgIDAuNTc1LCAwLjU2NSwgMS4wMDApXG4kZWFzZS1vdXQtZXhwbyA9ICAgICBjdWJpYy1iZXppZXIoMC4xOTAsICAxLjAwMCwgMC4yMjAsIDEuMDAwKVxuJGVhc2Utb3V0LWNpcmMgPSAgICAgY3ViaWMtYmV6aWVyKDAuMDc1LCAgMC44MjAsIDAuMTY1LCAxLjAwMClcbiRlYXNlLW91dC1iYWNrID0gICAgIGN1YmljLWJlemllcigwLjE3NSwgIDAuODg1LCAwLjMyMCwgMS4yNzUpXG4kZWFzZS1vdXQtc3dpZnQgPSAgICBjdWJpYy1iZXppZXIoMC41NTAsICAwLjAwMCwgMC4xMDAsIDEuMDAwKVxuXG4vLyBlYXNlLWluLW91dFxuJGVhc2UtaW4tb3V0LXF1YWQgPSAgY3ViaWMtYmV6aWVyKDAuNDU1LCAgMC4wMzAsIDAuNTE1LCAwLjk1NSlcbiRlYXNlLWluLW91dC1jdWJpYyA9IGN1YmljLWJlemllcigwLjY0NSwgIDAuMDQ1LCAwLjM1NSwgMS4wMDApXG4kZWFzZS1pbi1vdXQtcXVhcnQgPSBjdWJpYy1iZXppZXIoMC43NzAsICAwLjAwMCwgMC4xNzUsIDEuMDAwKVxuJGVhc2UtaW4tb3V0LXF1aW50ID0gY3ViaWMtYmV6aWVyKDAuODYwLCAgMC4wMDAsIDAuMDcwLCAxLjAwMClcbiRlYXNlLWluLW91dC1zaW5lID0gIGN1YmljLWJlemllcigwLjQ0NSwgIDAuMDUwLCAwLjU1MCwgMC45NTApXG4kZWFzZS1pbi1vdXQtZXhwbyA9ICBjdWJpYy1iZXppZXIoMS4wMDAsICAwLjAwMCwgMC4wMDAsIDEuMDAwKVxuJGVhc2UtaW4tb3V0LWNpcmMgPSAgY3ViaWMtYmV6aWVyKDAuNzg1LCAgMC4xMzUsIDAuMTUwLCAwLjg2MClcbiRlYXNlLWluLW91dC1iYWNrID0gIGN1YmljLWJlemllcigwLjY4MCwgLTAuNTUwLCAwLjI2NSwgMS41NTApXG4kZWFzZS1pbi1vdXQtc3dpZnQgPSBjdWJpYy1iZXppZXIoMC45MDAsICAwLjAwMCwgMC4xMDAsIDEuMDAwKVxuIiwiLy8gLS0tLS0tLS0tLS1cbi8vIEludGVyYWN0aW9uXG4vLyAtLS0tLS0tLS0tLVxuXG4vLyBUaGVzZSBtaXhpbnMgdHJpZ2dlciBvbiBzb21lIHNvcnQgb2YgaW50ZXJhY3Rpb24gd2l0aCBhbiBlbGVtZW50LCBsaWtlIGFcbi8vIGhvdmVyIG9yIGEgY2xpY2suXG5cbi8vIE1peGluOiBIb3ZlciBEYXJrZW5cbi8vXG4vLyBEYXJrZW5zIHRoZSBjb2xvciBhbmQvb3IgYmFja2dyb3VuZCBjb2xvciBvbiB5b3VyIGVsZW1lbnQgd2hlbiBpdCdzIGhvdmVyZWQuXG4vLyBUYWtlcyBhbiBvcHRpb25hbCBwZXJjZW50YWdlIHRvIGRhcmtlbiBpdC5cbi8vXG4vLyBleC4gaG92ZXItZGFya2VuKClcbi8vIGV4LiBob3Zlci1kYXJrZW46IDMwJVxuXG5ob3Zlci1kYXJrZW4oJHBlcmNlbnQgPSAxNSUsICRmb3JjZS11c2UtY29sb3IgPSBmYWxzZSlcbiAgJjpob3ZlclxuICAgIGlmIEBiYWNrZ3JvdW5kIGFuZCAhJGZvcmNlLXVzZS1jb2xvclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBiYWNrZ3JvdW5kLCAkcGVyY2VudClcbiAgICBlbHNlIGlmIEBiYWNrZ3JvdW5kLWNvbG9yIGFuZCAhJGZvcmNlLXVzZS1jb2xvclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBiYWNrZ3JvdW5kLWNvbG9yLCAkcGVyY2VudClcbiAgICBlbHNlIGlmIEBjb2xvclxuICAgICAgY29sb3I6IGRhcmtlbihAY29sb3IsICRwZXJjZW50KVxuICAgIGVsc2VcbiAgICAgIHdhcm4oJ3lvdSBuZWVkIHRvIHNldCBhIGNvbG9yIG9yIGJhY2tncm91bmQgY29sb3Igb24geW91ciBlbGVtZW50IGZvciB0aGlzIHRvIHdvcmsnKVxuXG4vLyBNaXhpbjogSG92ZXIgTGlnaHRlblxuLy9cbi8vIFdvcmtzIHRoZSBzYW1lIHdheSBhcyBob3Zlci1kYXJrZW4gYnV0IGxpZ2h0ZW5zIHRoZSBjb2xvci5cbi8vXG4vLyBleC4gaG92ZXItbGlnaHRlbigpXG4vLyBleC4gaG92ZXItbGlnaHRlbjogMzAlXG5cbmhvdmVyLWxpZ2h0ZW4oJHBlcmNlbnQgPSAxNSUsICRmb3JjZS11c2UtY29sb3IgPSBmYWxzZSlcbiAgJjpob3ZlclxuICAgIGlmIEBiYWNrZ3JvdW5kIGFuZCAhJGZvcmNlLXVzZS1jb2xvclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbihAYmFja2dyb3VuZCwgJHBlcmNlbnQpXG4gICAgZWxzZSBpZiBAYmFja2dyb3VuZC1jb2xvciBhbmQgISRmb3JjZS11c2UtY29sb3JcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oQGJhY2tncm91bmQtY29sb3IsICRwZXJjZW50KVxuICAgIGVsc2UgaWYgQGNvbG9yXG4gICAgICBjb2xvcjogbGlnaHRlbihAY29sb3IsICRwZXJjZW50KVxuICAgIGVsc2VcbiAgICAgIHdhcm4oJ3lvdSBuZWVkIHRvIHNldCBhIGNvbG9yIG9yIGJhY2tncm91bmQgY29sb3Igb24geW91ciBlbGVtZW50IGZvciB0aGlzIHRvIHdvcmsnKVxuXG4vLyBNaXhpbjogSG92ZXIgVW5kZXJsaW5lXG4vL1xuLy8gVGhpcyBvbmUgaXMgaW50ZXJlc3RpbmcsIGFuZCBtYXkgbmVlZCB0d2Vha2luZyB0byBnZXQgaXQgdG8gd29yayByaWdodCBvbiB0aGVcbi8vIGludGVuZGVkIGVsZW1lbnQuIFdvcmtzIHZlcnkgbmljZWx5IGZvciB0ZXh0IGxpa2UgaW4gYSBzcGFuLCBhbmQgY2FuIGFuaW1hdGUuXG4vL1xuLy8gZXguIGhvdmVyLXVuZGVybGluZSgpXG4vLyBleC4gaG92ZXItdW5kZXJsaW5lOiAycHggJ2RvdHRlZCdcblxuaG92ZXItdW5kZXJsaW5lKCRib3JkZXItc2l6ZSA9IDFweCwgJHR5cGUgPSAnc29saWQnLCAkY29sb3IgPSBudWxsKVxuICBib3JkZXItYm90dG9tOiAkYm9yZGVyLXNpemUgdW5xdW90ZSgkdHlwZSkgdHJhbnNwYXJlbnRcblxuICAmOmhvdmVyXG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlci1zaXplIHVucXVvdGUoJHR5cGUpICRjb2xvclxuXG4vLyBNaXhpbjogSG92ZXIgUG9wXG4vL1xuLy8gT24gaG92ZXIsIHlvdXIgZWxlbWVudCBwb3BzIG91dCBmcm9tIHRoZSBwYWdlLiBGb3Igc2NhbGUsIGl0IHRha2VzIGFuIGludGVnZXJcbi8vIG9yIGZsb2F0LCAxIHJlcHJlc2VudHMgMTAwJSwgMiBpcyAyMDAlLCBldGMuIE9wdGlvbmFsbHkgY2FuIGFsc28gcm90YXRlLFxuLy8gcGFzcyBpdCBhIG51bWJlciBmb2xsb3dlZCBieSBcImRlZ1wiLCBsaWtlIDE4MGRlZy4gSWYgeW91IHBhc3MgdHJ1ZSBmb3Jcbi8vIHNoYWRvdywgaXQgd2lsbCBhbmltYXRlIGluIGEgZHJvcCBzaGFkb3cgdG8gYWRkIHRvIHRoZSBlZmZlY3QuXG4vL1xuLy8gZXguIGhvdmVyLXBvcDogMS41XG4vLyBleC4gaG92ZXItcG9wOiAyLjYgOTBkZWdcbi8vIGV4LiBob3Zlci1wb3A6IDEuMiA0NWRlZyB0cnVlXG5cbmhvdmVyLXBvcCgkc2NhbGUgPSAxLjIsICRyb3RhdGUgPSBudWxsLCAkc2hhZG93ID0gbnVsbClcbiAgaWYgJHNoYWRvd1xuICAgIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnRcblxuICAmOmhvdmVyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlXG4gICAgei1pbmRleDogMTBcbiAgICB0cmFuc2Zvcm06IHNjYWxlKCRzY2FsZSlcbiAgICBpZiAkc2hhZG93XG4gICAgICBib3gtc2hhZG93OiAwIDAgNXB4IHJnYmEoIzAwMCwgLjMpXG4gICAgaWYgJHJvdGF0ZVxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgkc2NhbGUpIHJvdGF0ZSgkcm90YXRlKVxuXG4vLyBNaXhpbjogSG92ZXIgRmFkZVxuLy9cbi8vIE9uIGhvdmVyLCBmYWRlcyB0aGUgZWxlbWVudCdzIG9wYWNpdHkgZG93bi4gVGFrZXMgYW4gYW1vdW50IGFzIGFuIGludGVnZXJcbi8vIGJldHdlZW4gMCBhbmQgMSwgbGlrZSBvcGFjaXR5IG5vcm1hbGx5IGRvZXMuIFJlY29tbWVuZGVkIHRvIGJlIHVzZWQgd2l0aFxuLy8gdHJhbnNpdGlvbi5cblxuLy8gZXguIGhvdmVyLWZhZGU6IC41XG5cbmhvdmVyLWZhZGUoJGFtb3VudCA9IC41KVxuICAmOmhvdmVyXG4gICAgb3BhY2l0eTogJGFtb3VudFxuXG4vLyBNaXhpbjogSG92ZXIgQ29sb3Jcbi8vXG4vLyBXaWxsIHN3YXAgYW4gZWxlbWVudHMgY29sb3Igb3IgYmFja2dyb3VuZCBjb2xvciBvbiBob3Zlci4gVGFrZXMgYSBjb2xvciBpblxuLy8gYW55IGZvcm1hdCBhcyB0aGUgZmlyc3QgYXJndW1lbnQuIFdpbGwgZmlyc3QgbG9vayBmb3IgYSBiYWNrZ3JvdW5kIGNvbG9yIHRvXG4vLyBjaGFuZ2UsIHRoZW4gYSBjb2xvci5cbi8vXG4vLyBleC4gaG92ZXItY29sb3I6ICNENDVEODZcblxuaG92ZXItY29sb3IoJGNvbG9yLCAkZm9yY2UtdXNlLWNvbG9yID0gZmFsc2UpXG4gICY6aG92ZXJcbiAgICBpZiBAYmFja2dyb3VuZCBhbmQgISRmb3JjZS11c2UtY29sb3JcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvclxuICAgIGVsc2UgaWYgQGJhY2tncm91bmQtY29sb3IgYW5kICEkZm9yY2UtdXNlLWNvbG9yXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JcbiAgICBlbHNlIGlmIEBiYWNrZ3JvdW5kLWNvbG9yIGFuZCAhZm9yY2UtdXNlLWNvbG9yXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JcbiAgICBlbHNlIGlmIEBjb2xvclxuICAgICAgY29sb3I6ICRjb2xvclxuICAgIGVsc2VcbiAgICAgIHdhcm4oJ3lvdSBuZWVkIHRvIHNldCBhIGNvbG9yIG9yIGJhY2tncm91bmQgY29sb3Igb24geW91ciBlbGVtZW50IGZvciB0aGlzIHRvIHdvcmsnKVxuXG4vLyBNaXhpbjogSG92ZXIgR2xvd1xuLy9cbi8vIENyZWF0ZXMgYSBnbG93IHdoZW4gaG92ZXJpbmcgYW4gZWxlbWVudC4gVGFrZXMgYSBjb2xvciBhbmQgYSByYWRpdXMgKHNpemUpLlxuLy8gUmVjb21tZW5kZWQgdG8gYmUgdXNlZCB3aXRoIHRyYW5zaXRpb24uXG4vL1xuLy8gZXg6IGhvdmVyLWdsb3coKVxuXG5ob3Zlci1nbG93KCRjb2xvciA9IHJnYmEoYmx1ZSwgLjgpLCAgJHJhZGl1cyA9IDIwcHggKVxuICAmOmhvdmVyXG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAkcmFkaXVzIDJweCAkY29sb3JcblxuLy8gTWl4aW46IEhvdmVyIEZsb2F0XG4vL1xuLy8gR2l2ZXMgYW4gZWxlbWVudCB0aGUgZWZmZWN0IG9mIHJpc2luZyB1cCB2ZXJ0aWNhbGx5IHdpdGggYSBzbWFsbCBzaGFkb3dcbi8vICB1bmRlcm5lYXRoLiBSZWNvbW1lbmRlZCB0byBiZSB1c2Ugd2l0aCB0cmFuc2l0aW9uLlxuLy9cbi8vIEV4OiBob3Zlci1mbG9hdCgpXG5cbmhvdmVyLWZsb2F0KClcbiAgcG9zaXRpb246IHJlbGF0aXZlXG5cbiAgJjpiZWZvcmVcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZVxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZVxuICAgIHotaW5kZXg6IC0xXG4gICAgY29udGVudDogJydcbiAgICB0b3A6IDEwOCVcbiAgICBsZWZ0OiA1JVxuICAgIGhlaWdodDogMTBweFxuICAgIHdpZHRoOiA5MCVcbiAgICBvcGFjaXR5OiAwXG4gICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgYXQgY2VudGVyLCByZ2JhKDAsIDAsIDAsIDAuMjUpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDgwJSlcblxuICAmOmhvdmVyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03cHgpXG4gICAgJjpiZWZvcmVcbiAgICAgIG9wYWNpdHk6IDFcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSlcblxuLy8gTWl4aW46IENsaWNrIERvd25cbi8vXG4vLyBNb3ZlIGFuIGVsZW1lbnQgZG93biB3aGlsZSBjbGlja2VkL3RhcHBlZC4gVGFrZXMgZGlzdGFuY2UuXG4vL1xuLy8gZXg6IGNsaWNrLWRvd24oKVxuXG5jbGljay1kb3duKCRkaXN0YW5jZSA9IDFweClcbiAgJjphY3RpdmVcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJGRpc3RhbmNlKVxuXG4vLyBNaXhpbjogQ2xpY2sgU2hhZG93XG4vL1xuLy8gQ3JlYXRlcyBhIHNoYWRvdyB1bmRlciBlbGVtZW50IHdoaWxlIGNsaWNrZWQvdGFwcGVkLiBUYWtlcyBkaXN0YW5jZSBhbmRcbi8vIHJhZGl1cyAoc2l6ZSkuIFJlY29tbWVuZGVkIHRvIGJlIHVzZSB3aXRoIHRyYW5zaXRpb24uXG4vL1xuLy8gZXg6IGNsaWNrLXNoYWRvdygpXG5cbmNsaWNrLXNoYWRvdygkZGlzdGFuY2UgPSAycHgsICRyYWRpdXMgPSAxMHB4IClcbiAgJjphY3RpdmVcbiAgICBib3gtc2hhZG93OiAwcHggJGRpc3RhbmNlICRyYWRpdXMgMnB4IHJnYmEoMCwgMCwgMCwgMC4yNSlcblxuLy8gTWl4aW46IENsaWNrIEluc2V0XG4vL1xuLy8gQ3JlYXRlcyBhbiBpbnNldCBzaGFkb3cgb24gYW4gZWxtZW50IHdoaWxlIGNsaWNrZWQvdGFwcGVkLiBUYWtlcyByYWRpdXNcbi8vIChpbnNldCBzaGFkb3cgc2l6ZSkuIFJlY29tbWVuZGVkIHRvIGJlIHVzZSB3aXRoIHRyYW5zaXRpb24uXG4vL1xuLy8gZXg6IGNsaWNrLWluc2V0KClcblxuY2xpY2staW5zZXQoJHJhZGl1cyA9IDIwcHgpXG4gICRkaXN0YW5jZSA9ICRyYWRpdXMgLyAyXG4gICY6YWN0aXZlXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMHB4ICRkaXN0YW5jZSAkcmFkaXVzIHJnYmEoMCwgMCwgMCwgMC4zNSk7XG5cbi8vIE1peGluOiBDbGljayBTaHJpbmtcbi8vXG4vLyBTY2FsZSBkb3duIGFuIGVsZW1lbnQgd2hlbiBjbGlja2VkL3RhcHBlZC4gR2l2ZXMgdGhlIGVmZmVjdCBvZiBcInNpbmtpbmdcIlxuLy8gb3IgbG93ZXJpbmcgb24gdGhlIHotYXhpcy5cbi8vXG4vLyBleDogY2xpY2stc2hyaW5rKClcblxuY2xpY2stc2hyaW5rKCRkaXN0YW5jZSA9IC45MilcbiAgJjphY3RpdmVcbiAgICB0cmFuc2Zvcm06IHNjYWxlKCRkaXN0YW5jZSlcbiIsIi8vIE1peGluOiBncm91cFxuLy8gQ2xlYXJmaXggd2l0aCBhIGJldHRlciBuYW1lLiBFeGNlbGxlbnQgZm9yIHdyYW5nbGluZyBmbG9hdHMuIFRha2VuIGZyb21cbi8vIGh0dHA6Ly93d3cuY3NzbW9qby5jb20vbGF0ZXN0X25ld19jbGVhcmZpeF9zb19mYXIvXG4vLyBEb2VzIG5vdCBzdXBwb3J0IElFIDYgYW5kIDcgYmVjYXVzZSB5b3Ugc2hvdWxkIG5vdCBzdXBwb3J0IHRoZW0gZWl0aGVyLlxuXG5ncm91cCgpXG4gICY6YWZ0ZXJcbiAgICBjb250ZW50OiBcIlwiXG4gICAgZGlzcGxheTogYmxvY2tcbiAgICBjbGVhcjogYm90aFxuXG4vLyBBbGlhczogY2xlYXJmaXhcbi8vIEdyb3VwIHdpdGggYSB3b3JzZSBuYW1lLiBJZiB5b3UgbmVlZCByZWFsbHkgY2FuJ3QgYnJlYWsgdGhlIGhhYml0LlxuY2xlYXJmaXgoKVxuICBncm91cCgpXG5cbi8vIEZ1bmN0aW9uOiBwb3Ncbi8vIEJhY2tzIHBvc2l0aW9uIGhlbHBlcnMsIGZvdW5kIGJlbG93XG4tcG9zKHR5cGUsIGFyZ3MpXG4gIGkgPSAwXG4gIHBvc2l0aW9uOiB1bnF1b3RlKHR5cGUpXG4gIGZvciBqIGluICgxLi40KVxuICAgIGlmIGxlbmd0aChhcmdzKSA+IGlcbiAgICAgIHthcmdzW2ldfTogYXJnc1tpICsgMV0gaXMgYSAndW5pdCcgb3IgJ2F1dG8nID8gYXJnc1tpICs9IDFdIDogMFxuICAgIGkgKz0gMVxuXG4vLyBNaXhpbjogUG9zaXRpb25zXG4vLyBTeW50YXggc2hvcnRjdXRzIGZvciBhYnNvbHV0ZSwgcmVsYXRpdmUsIGFuZCBmaXhlZCBwb3NpdGlvbmluZy4gUG9ydGVkXG4vLyBmcm9tIG5pYjogaHR0cHM6Ly9naXRodWIuY29tL3RqL25pYi9ibG9iL21hc3Rlci9saWIvbmliL3Bvc2l0aW9ucy5zdHlsXG5cbmZpeGVkKClcbiAgLXBvcygnZml4ZWQnLCBhcmd1bWVudHMpXG5cbmFic29sdXRlKClcbiAgLXBvcygnYWJzb2x1dGUnLCBhcmd1bWVudHMpXG5cbnJlbGF0aXZlKClcbiAgLXBvcygncmVsYXRpdmUnLCBhcmd1bWVudHMpXG5cbi8vIE1peGluOiBTaXplXG4vLyBTaG9ydGN1dCBmb3Igc2V0dGluZyB3aWR0aCBhbmQgaGVpZ2h0IHF1aWNrbHkuIElmIHBhc3NlZCBvbmUgdmFsdWUsIHNldHMgdGhpc1xuLy8gdmFsdWUgYXMgYm90aCB3aWR0aCBhbmQgaGVpZ2h0LlxuLy9cbi8vIGV4LiBzaXplOiAxMHB4IDMwcHhcbi8vIGV4LiBzaXplOiAxMHB4XG5cbnNpemUoKVxuICBpZiBsZW5ndGgoYXJndW1lbnRzKSA9PSAxXG4gICAgd2lkdGg6IGFyZ3VtZW50c1swXVxuICAgIGhlaWdodDogYXJndW1lbnRzWzBdXG4gIGVsc2VcbiAgICB3aWR0aDogYXJndW1lbnRzWzBdXG4gICAgaGVpZ2h0OiBhcmd1bWVudHNbMV1cblxuLy8gTWl4aW46IENvbHVtbnNcbi8vXG4vLyBGb3IgY3NzMyBjb2x1bW5zLiBUYWtlcyBjb2x1bW4gY291bnQgKGludCksIGNvbHVtbiBnYXAgKHB4LCBlbSksIGNvbHVtbiB3aWR0aFxuLy8gKHB4LCBlbSksIGFuZCBhIGJvcmRlci1saWtlIGRlY2xhcmF0aW9uIGlmIHlvdSB3YW50IGEgY29sdW1uIHJ1bGUuIFRoaXNcbi8vIGZvbGxvd3MgZXhhY3RseSB3aXRoIHRoZSBjc3MzIHNwZWMsIGl0J3MganVzdCBxdWlja2VyLlxuLy9cbi8vIGV4LiBjb2x1bW5zKClcbi8vIGV4LiBjb2x1bW5zOiA1XG4vLyBleC4gY29sdW1ucyg4LCAxNXB4LCAyMDBweCwgJzFweCBzb2xpZCByZWQnKVxuXG5jb2x1bW5zKCRjb3VudCA9IDMsICRnYXAgPSAzMHB4LCAkd2lkdGggPSBudWxsLCAkcnVsZSA9IG51bGwpXG4gIGNvbHVtbi1jb3VudDogJGNvdW50XG4gIGNvbHVtbi1nYXA6ICRnYXBcbiAgY29sdW1uLXdpZHRoOiAkd2lkdGggaWYgJHdpZHRoXG4gIGNvbHVtbi1ydWxlOiB1bnF1b3RlKCRydWxlKSBpZiAkcnVsZVxuXG4vLyBNaXhpbjogQXZvaWQgQ29sdW1uIEJyZWFrXG4vL1xuLy8gSWYgeW91IGhhdmUgYSBsaXN0IHRoYXQgaXMgYnJva2VuIGludG8gY29sdW1ucywgdGhpcyB3aWxsIG1ha2Ugc3VyZSB0aGF0IHRoZVxuLy8gbGlzdCBpdGVtIGlzIG5vdCBzcGxpdCBhY3Jvc3MgY29sdW1ucyBhd2t3YXJkbHkuIFdvcmtzIG9ubHkgaW4gd2Via2l0IGF0IHRoZVxuLy8gbW9tZW50LlxuLy9cbi8vIGV4LiBhdm9pZC1jb2x1bW4tYnJlYWsoKVxuXG5hdm9pZC1jb2x1bW4tYnJlYWsoKVxuICBjb2x1bW4tYnJlYWstaW5zaWRlOiBhdm9pZFxuXG4vLyBNaXhpbjogVmVydGljYWxseSBBbGlnblxuLy8gQ3Jvc3MgYnJvd3NlciB2ZXJ0aWNhbCBhbGlnbi4gV29ya3MgZG93biB0byBJRTkuXG4vL1xuLy8gZXguIHZlcnRpY2FsbHktYWxpZ24oKSBvciByZXNldCBpdCB3aXRoIHZlcnRpY2FsbHktYWxpZ24oZmFsc2UpXG5cbnZlcnRpY2FsbHktYWxpZ24oJHJlc2V0ID0gbnVsbClcbiAgaWYgJHJlc2V0ICE9IGZhbHNlXG4gICAgcG9zaXRpb246IHJlbGF0aXZlXG4gICAgdG9wOiA1MCVcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSlcbiAgZWxzZVxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZVxuICAgIHRvcDogMFxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKVxuXG4vLyBNaXhpbjogTWVkaWFcbi8vXG4vLyBCYXNlZCBvbiBOaWNvbGUgU3VsbGl2YW4ncyBtZWRpYSBjbGFzcywgbWFkZSBmYW1vdXMgYnkgRmFjZWJvb2tcbi8vIGh0dHA6Ly93d3cuc3R1YmJvcm5lbGxhLm9yZy9jb250ZW50LzIwMTAvMDYvMjUvdGhlLW1lZGlhLW9iamVjdC1zYXZlcy1cbi8vIGh1bmRyZWRzLW9mLWxpbmVzLW9mLWNvZGVcbi8vXG4vLyBQdXQgdGhpcyBvbiBhIHBhcmVudCBhbmQgaXQgd2lsbCBzcGxpdCB0aGUgZmlyc3QgdHdvIGNoaWxkcmVuIGxlZnQgYW5kIHJpZ2h0LFxuLy8gbGlrZSB5b3Ugd291bGQgd2l0aCBwZXJoYXBzIGEgY29tbWVudCB3aXRoIGFuIGF2YXRhciB0byB0aGUgbGVmdC4gUGFzcyBpdCBhXG4vLyBtYXJnaW4gYmV0d2VlbiB0aGUgdHdvLiBFeHBsYWluZWQgZnVsbHkgaGVyZTpcbi8vIGh0dHA6Ly9jYXJyb3RibG9nLmNvbS9jc3MtcGF0dGVybnMtZXZvbHZlZC9cbi8vXG4vLyBUaGlzIG1peGluIHdvcmtzIHJpZ2h0IHdoZW4gdGhlIGVsZW1lbnQgeW91IGFwcGx5IGl0IHRvIGhhcyB0d28gb3IgdGhyZWVcbi8vIGRpcmVjdCBjaGlsZHJlbi4gVGhlIGZpcnN0IG9uZSB3aWxsIGZsb2F0IHRvIHRoZSBsZWZ0LCB0aGUgc2Vjb25kIG9uZSB3aWxsIGJlXG4vLyB0byB0aGUgcmlnaHQgb2YgdGhlIGZpcnN0LCBhbmQgdGhpcmQgd2lsbCBnbyBmYXJ0aGVzdCByaWdodC5cbi8vXG4vLyBleC4gbWVkaWEtb2JqZWN0KClcbi8vIGV4LiBtZWRpYS1vYmplY3Q6IDE1cHhcbi8vIGV4LiBtZWRpYS1vYmplY3Q6IDE1cHggMTBweFxuXG5tZWRpYS1vYmplY3QoJG1hcmdpbiA9IDEwcHgpXG5cbiAgJGxlZnQtbWFyZ2luID0gJG1hcmdpblxuICAkcmlnaHQtbWFyZ2luID0gJG1hcmdpblxuXG4gIGlmIGxlbmd0aChhcmd1bWVudHMpID4gMVxuICAgICRsZWZ0LW1hcmdpbiA9IGFyZ3VtZW50c1swXVxuICAgICRyaWdodC1tYXJnaW4gPSBhcmd1bWVudHNbMV1cblxuICBvdmVyZmxvdzogaGlkZGVuXG4gIHpvb206IDFcblxuICAmID4gKlxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9ja1xuICAgIG92ZXJmbG93OiBoaWRkZW5cbiAgJiA+ICo6Zmlyc3QtY2hpbGRcbiAgICBmbG9hdDogbGVmdFxuICAgIG1hcmdpbi1yaWdodDogJHJpZ2h0LW1hcmdpblxuICAmID4gKjpudGgtY2hpbGQoMylcbiAgICBmbG9hdDogcmlnaHRcbiAgICBtYXJnaW4tbGVmdDogJGxlZnQtbWFyZ2luXG5cbi8vIE1peGluOiBSYXRpbyBCb3hcbi8vIFNldCBhIHNwZWNpZmljIHdpZHRoL2hlaWdodCByYXRpby4gVXNlZnVsIG9uIGJhY2tncm91bmQgaW1hZ2VzIGFuZCBpZnJhbWVzLlxuXG5yYXRpby1ib3goJHJhdGlvID0gMS8xKVxuICAkcmF0aW8gPSByZW1vdmUtdW5pdCgkcmF0aW8pXG4gIG92ZXJmbG93OiBoaWRkZW5cbiAgcG9zaXRpb246IHJlbGF0aXZlXG5cbiAgJjpiZWZvcmVcbiAgICBjb250ZW50OiAnJ1xuICAgIGRpc3BsYXk6IGJsb2NrXG4gICAgaGVpZ2h0OiAwXG4gICAgcGFkZGluZy10b3A6ICgxIC8gJHJhdGlvKSAqIDEwMCVcblxuLy8gTWl4aW46IEhvcml6b250YWwgUnVsZVxuLy9cbi8vIENsZWFuIHJlc2V0IGZvciBkaXZpZGVyIGxpbmVzLlxuLy9cbi8vIGV4OiBydWxlKClcbi8vIGV4IHJ1bGUoYmx1ZSlcblxucnVsZSgkY29sb3IgPSByZ2JhKCMwMDAsIC4xNSksICRzcGFjaW5nID0gMS41ZW0pXG4gIGJvcmRlcjogMFxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yXG4gIGhlaWdodDogMFxuICBwYWRkaW5nOiAwXG4gIG1hcmdpbjogJHNwYWNpbmcgMFxuXG4vLyBNaXhpbjogVGFibGUgTGF5b3V0XG4vL1xuLy8gU29tZXRpbWVzIHlvdSBqdXN0IG5lZWQgYSBnb29kIG9sZC1mYXNoaW9uZWQgdGFibGUgbGF5b3V0LlxuLy8gUmVhZCBtb3JlOiBodHRwOi8vY29saW50b2guY29tL2Jsb2cvZGlzcGxheS10YWJsZS1hbnRpLWhlcm9cbi8vXG4vLyBleDogdGwoKVxuLy8gZXg6IHRsKGF1dG8pXG5cbnRsKCRsYXlvdXQtdHlwZSA9IGZpeGVkKVxuICBkaXNwbGF5OiB0YWJsZVxuICB0YWJsZS1sYXlvdXQ6ICRsYXlvdXQtdHlwZSAgLy8gXCJmaXhlZFwiIG9yIFwiYXV0b1wiXG4gIG1hcmdpbjogMFxuICBwYWRkaW5nOiAwXG4gIHdpZHRoOiAxMDAlXG5cbiAgPiAqXG4gICAgZGlzcGxheTogdGFibGUtY2VsbFxuIiwiZ2xvYmFsLXJlc2V0KClcbm5vcm1hbGl6ZS1jc3MoKVxuYmFzZSgpXG5wcmludC1zdHlsZXMoKVxuYm9yZGVyLWJveC1odG1sKClcbnR5cG9ncmFwaHkoKVxuZmx1aWQtbWVkaWEoKVxuXG4vLyBzZXR0aW5nc1xuXG4vLyAkbG9nby1mb250ID0gICdNYXJjayBTY3JpcHQnLCBjdXJzaXZlO1xuLy8gJGxvZ28tZm9udCA9ICAnTG9ic3RlcicsIGN1cnNpdmU7XG4vLyAkbG9nby1mb250ID0gICdQYWNpZmljbycsIGN1cnNpdmU7XG4kbG9nby1mb250ID0gICdQYXR0YXlhJywgc2Fucy1zZXJpZjtcblxuLy8gJGxvZ28tZm9udCA9ICdQYWNpZmljbycsIGN1cnNpdmU7XG4vLyAkbG9nby1jb2xvci1iZyA9IG9saXZlXG4kbG9nby1jb2xvciA9IHdoaXRlXG4kY2xyLWJsdWUgPSBibHVlXG5cbi8vXG5cblxuYm9keVxuICAgIGJhY2tncm91bmQtY29sb3IgZGFya2VuKCNmZmYsNSUpXG4gICAgXG4ud3JhcHBlclxuICAgIG1hcmdpbiAwIGF1dG9cbiAgICBsb3N0LXV0aWxpdHk6IGNsZWFyZml4XG4gICAgbG9zdC1jZW50ZXI6IDExNzBweFxuLmhlYWRlclxuICAgIGJhY2tncm91bmQtY29sb3IgJG9saXZlXG4gICAgYmFja2dyb3VuZC1pbWFnZSBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKCRvbGl2ZSwgLjgpLCByZ2JhKCMwMDAsLjUpKSwgdXJsKC4uL2ltYWdlcy9oZWFkZXJiZy5qcGcpXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbiB0b3AgbGVmdCwgYm90dG9tIGNlbnRlclxuICAgIGJhY2tncm91bmQtcmVwZWF0IHJlcGVhdCwgbm8tcmVwZWF0XG4gICAgYmFja2dyb3VuZC1zaXplIGF1dG8sIGNvdmVyXG5cbi5sb2dvXG4gICAgK2JlbG93KDc2OHB4KVxuICAgICAgcGFkZGluZyAxcmVtIDBcbiAgICBwYWRkaW5nIDNyZW0gMFxuICAgIHRleHQtYWxpZ24gY2VudGVyXG5cbiAgICBoMVxuICAgICAgK2JlbG93KDc2OHB4KVxuICAgICAgICBwYWRkaW5nIDBcbiAgICAgICAgbWFyZ2luIDBcbiAgICAgICAgZnM6IDNyZW1cbiAgICAgIGJhY2tncm91bmQgJGxvZ28tY29sb3ItYmdcbiAgICAgIGJvcmRlci1yYWRpdXMgNnB4XG4gICAgICBwYWRkaW5nIDAuMjVyZW0gMC4ycmVtIDAuMjVyZW0gMC4ycmVtXG4gICAgICBmczogNHJlbVxuICAgICAgbGluZS1oZWlnaHQgMS4yXG4gICAgICBkaXNwbGF5IGlubGluZS1ibG9ja1xuICAgICAgdmVydGljYWwtYWxpZ24gbWlkZGxlXG4gICAgICBmb250LWZhbWlseSAkbG9nby1mb250XG4gICAgYVxuICAgICAgICByZXNldC1saW5rKClcbiAgICAgICAgbGV0dGVyLXNwYWNpbmcgcmVtKDVweClcbiAgICAgICAgY29sb3IgJGxvZ28tY29sb3JcbiAgICAgICAgZGlzcGxheSBibG9ja1xuICAgICAgICB0ZXh0LXNoYWRvdyAycHggMnB4IDFweCByZ2JhKCRvbGl2ZSwxKVxuICAgICAgICAmOmhvdmVyXG4gICAgICAgICAgICBjb2xvciAjZmZmXG5cbiAgICBzcGFuXG4gICAgICAgIGZzOiAuOHJlbVxuICAgICAgICBmb250LWZhbWlseSBzYW5zLXNlcmlmXG4gICAgICAgIHVwY2FzZSgpXG4gICAgICAgIGxldHRlci1zcGFjaW5nIDFweFxuICAgICAgICBwYWRkaW5nIC40cmVtIDFyZW1cbiAgICAgICAgbGluZS1oZWlnaHQgMVxuICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yIHJnYmEoI2ZmZiwxKVxuICAgICAgICAvLyByb3VuZGVkKClcbiAgICAgICAgZm9udC13ZWlnaHQgNzAwXG4gICAgICAgIGRpc3BsYXkgYmxvY2tcbiAgICAgICAgY29sb3IgJHdoaXRlXG4gICAgICAgIC8vIHRleHQtc2hhZG93IDAgMXB4IDRweCByZ2JhKCMwMDAsLjgpXG5cbi5tYWluLW5hdlxuICAgIGdyYWRpZW50OiBkYXJrZW4oJHRlYWwsNDAlKSA1JVxuICAgIHBhZGRpbmcgLjVyZW0gMFxuICAgICZfX2xpc3RcbiAgICAgICAgbWFyZ2luIDBcbiAgICAgICAgcGFkZGluZyAwXG4gICAgICAgIHRleHQtYWxpZ24gY2VudGVyXG4gICAgJl9faXRlbVxuICAgICAgICArYmVsb3coMzI1cHgpXG4gICAgICAgICAgZGlzcGxheTogYmxvY2tcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0XG4gICAgICAgIGRpc3BsYXkgaW5saW5lLWJsb2NrXG4gICAgICAgICYgKyAmXG4gICAgICAgICAgK2Fib3ZlKDc2OHB4KVxuICAgICAgICAgICAgYm9yZGVyLWxlZnQgMXB4IHNvbGlkIHJnYmEoI2ZmZiwuMTUpXG4gICAgICAgICYuc2VsZWN0ZWRcbiAgICAgICAgICAgIHBvc2l0aW9uIHJlbGF0aXZlXG4gICAgICAgICAgICBhXG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uIHVuZGVybGluZVxuICAgICAgICAgICAgLy8gJjpiZWZvcmVcbiAgICAgICAgICAgIC8vICAgICBwb3NpdGlvbiBhYnNvbHV0ZVxuICAgICAgICAgICAgLy8gICAgIGNvbnRlbnQgJydcbiAgICAgICAgICAgIC8vICAgICAvLyB0b3AgLTFyZW1cbiAgICAgICAgICAgIC8vICAgICB3aWR0aCAxMDAlXG4gICAgICAgICAgICAvLyAgICAgaGVpZ2h0IDEwMCVcbiAgICAgICAgICAgIC8vICAgICB0ZXh0LWFsaWduIGNlbnRlclxuICAgICZfX2xpbmtcbiAgICAgICAgdXBjYXNlKClcbiAgICAgICAgZm9udC13ZWlnaHQgNTAwXG4gICAgICAgIGZzOiAuOXJlbVxuICAgICAgICBkaXNwbGF5IGlubGluZS1ibG9ja1xuICAgICAgICBwYWRkaW5nIC41cmVtIC41cmVtXG4gICAgICAgIHJlc2V0LWxpbmsoKVxuICAgICAgICBjb2xvciBkYXJrZW4oJHdoaXRlLDEwJSlcbiAgICAgICAgLy8gYm9sZCgpXG4gICAgICAgICY6aG92ZXJcbiAgICAgICAgICAgIGNvbG9yICNmZmZcbiAgICAgICAgICAgIHRleHQtc2hhZG93IDBweCAwcHggM3B4IHJnYmEoJGJsYWNrLC44KVxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uIHVuZGVybGluZVxuLnBhZ2VcbiAgICBiYWNrZ3JvdW5kICNmZmZcbiAgICBwYWRkaW5nIDFyZW0gMnJlbVxuICAgIC8vIG1pbi1oZWlnaHQgNzB2aFxuICAgIGxvc3QtdXRpbGl0eTogY2xlYXJmaXhcbiAgICAmX19jb250ZW50XG4gICAgICArYWJvdmUoMTAyNHB4KVxuICAgICAgICBsb3N0LWNvbHVtbjogdW5xdW90ZSgnMy80IDInKVxuICAgICAgbGlcbiAgICAgICAgICBsaW5lLWhlaWdodCAxLjRyZW1cbiAgICAmX19uZXdzXG4gICAgICAgIG1hcmdpbiAycmVtIDBcbi5sU1NsaWRlT3V0ZXJcbiAgK2JlbG93KDQyNXB4KVxuICAgIGRpc3BsYXk6IG5vbmVcbi5saWdodFNsaWRlclxuICAgIHJlc2V0LWxpc3QoKVxuXG4ubFNBY3Rpb24gPiBhXG4gICAgcmVzZWwtbGluaygpXG4gICAgICAgIFxuICAgIFxuLnNpZGViYXJcbiAgICArYWJvdmUoMTAyNHB4KVxuICAgICAgbG9zdC1jb2x1bW46IHVucXVvdGUoJzEvNCAyJylcbiAgICBsb3N0LXV0aWxpdHk6IGNsZWFyZml4XG4gICAgXG4gICAgJl9faXRlbVxuICAgICAgICBsb3N0LWNvbHVtbjogdW5xdW90ZSgnMS8xIDEnKVxuICAgICAgICBhcmVhOiBkYXJrZW4oI2ZmZiwyJSlcbiAgICAmX19tZW51X2hlYWRlclxuICAgICAgICB1cGNhc2UoKVxuICAgICAgICBmczogMXJlbVxuICAgICAgICBib3JkZXItYm90dG9tIDFweCBzb2xpZFxuICAgICZfX21lbnVcbiAgICAgICAgcmVzZXQtbGlzdCgpXG4gICAgICAgIGxpIFxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbSAuNXJlbVxuICAgICZfX21lbnVfaXRlbVxuICAgICAgICAvL1xuLmZvb3RlclxuICAgIGJhY2tncm91bmQtY29sb3IgZGFya2VuKCNmZmYsNTAlKVxuICAgIC8vIG1hcmdpbiAwXG4gICAgcGFkZGluZyAxcmVtIDJyZW1cbiAgICAmX19pdGVtXG4gICAgICAgICthYm92ZSg3NjhweClcbiAgICAgICAgICBsb3N0LWNvbHVtbjogdW5xdW90ZSgnMS8yIDInKVxuICAgICAgICBjb2xvciBkYXJrZW4oI2ZmZiwgMTAlKVxuICAgICAgICBhXG4gICAgICAgICAgICBsaW5rOiBkYXJrZW4oI2ZmZiwgOTAlKVxuICAgICZfX2l0ZW1faGVhZGVyXG4gICAgICAgIGZzOiAxLjJyZW1cbiAgICAmX19tZW51XG4gICAgICAgIHJlc2V0LWxpc3QoKVxuICAgICZfX2xpc3RcbiAgICAgICAgZnM6IC45cmVtXG4gICAgICAgIG1hcmdpbiAwXG4gICAgICAgIHBhZGRpbmcgMFxuICAgICAgICAmX2l0ZW1cbiAgICAgICAgICAgIGxpc3Qtc3R5bGUgbm9uZVxuICAgICAgICAgICAgcGFkZGluZyAwXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tIC41cmVtXG4uZm9ybS1maWVsZCBcbiAgICBmaWVsZCgpXG4gICAgbWFyZ2luLWJvdHRvbSAxcmVtXG4gICAgK2JlbG93KDQyNXB4KVxuICAgICAgd2lkdGggMTAwJVxuLmZvcm0tbGFiZWxcbiAgICBkaXNwbGF5IGlubGluZS1ibG9ja1xuICAgICtiZWxvdyg0MjVweClcbiAgICAgIGRpc3BsYXk6IGJsb2NrXG4gIGxhYmVsXG4gICAgICAgIGxhYmVsKClcbi5mb3JtLWRhdGFcbiAgICBkaXNwbGF5IGlubGluZS1ibG9ja1xuICAgIGlucHV0XG4gICAgdGV4dGFyZWFcbiAgICAgICAgaW5wdXQ6ICRvbGl2ZVxuLmJ1dHRvbnNcbiAgICBmaWVsZCgpXG4gICAgdGV4dC1hbGlnbiByaWdodFxuICAgICtiZWxvdyg0MjVweClcbiAgICAgIHdpZHRoIDEwMCVcbi5idG5cbiAgICBidXR0b246ICRvbGl2ZVxuXG4ubmV3c1xuICAgIC8vIGFyZWE6IGxpZ2h0ZW4oI0Q0RUVGOCw5MCUpXG4gICAgJl9ibG9ja1xuICAgICAgICBsb3N0LXV0aWxpdHk6IGNsZWFyZml4XG4gICAgJl9faXRlbVxuICAgICAgICBub3RpY2U6IGF1dG8gbGlnaHRlbigkb2xpdmUsOTAlKVxuICAgICAgICBsb3N0LWNvbHVtbjogdW5xdW90ZSgnMS8yJylcbiAgICAgICAgZnM6IHJlbSgxNHB4KVxuICAgICAgICBsaW5lLWhlaWdodCAxLjJcbiAgICAgICAgK2JlbG93KDQyNXB4KVxuICAgICAgICAgIGxvc3QtY29sdW1uOiB1bnF1b3RlKCcxIDEnKVxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW1cbiAgICAgICAgJiBwXG4gICAgICAgICYgc3BhblxuICAgICAgICAmIGRpdlxuICAgICAgICAmIHVsXG4gICAgICAgICYgb2xcbiAgICAgICAgICAgIGZzOiByZW0oMTRweClcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0IDEuMlxuICAgICAgICAmIGgxXG4gICAgICAgICYgaDJcbiAgICAgICAgJiBoM1xuICAgICAgICAmIGg0XG4gICAgICAgICAgICBmczogMXJlbVxuICAgICAgICAgICAgbGluZS1oZWlnaHQgMS4xXG5cbi5wYW5lbFxuICAvL3RleHQtYWxpZ246IGNlbnRlclxuICBtYXJnaW4tYm90dG9tOiAxcmVtXG4gICYtLW5vdGlmeVxuICAgIG5vdGljZTogMTAwJSBsaWdodGVuKCRvbGl2ZSwyMCUpXG4gICAgJiA+IC5wYW5lbF9faGVhZGVyXG4gICAgICBib2xkKClcbiAgICAgIGZzOiAxLjJyZW1cbiAgICAgIGNvbG9yICNmZmZcbiAgICAgIHRleHQtc2hhZG93OiAxcHggMXB4IDFweCAkb2xpdmVcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW1cbiAgICAmID4gLnBhbmVsX19idG5cbiAgICAgIGJ1dHRvbjogJG9saXZlXG4gICAgICBmczogLjhyZW1cbiAgICAgIHVwY2FzZSgpXG4gICYtLWFsZXJ0XG4gICAgbm90aWNlOiAxMDAlIGxpZ2h0ZW4oJHJlZCw0MCUpXG4gICAgJiA+IC5wYW5lbF9faGVhZGVyXG4gICAgICBib2xkKClcbiAgICAgIGZzOiAxLjJyZW1cbiAgICAgIGNvbG9yICNmZmZcbiAgICAgIHRleHQtc2hhZG93OiAxcHggMXB4IDFweCAkcmVkXG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtXG4gICAgJiA+IC5wYW5lbF9fdGV4dFxuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbVxuICAgICAgY29sb3IgI2ZmZlxuICAgICYgPiAucGFuZWxfX2J0blxuICAgICAgYnV0dG9uOiAkcmVkXG4gICAgICBmczogLjhyZW1cbiAgICAgIHVwY2FzZSgpXG4gICtiZWxvdyg3NjhweClcbiAgICBsb3N0LWNvbHVtbjogdW5xdW90ZSgnMS8yIDInKVxuICArYmVsb3coNDI1cHgpXG4gICAgbG9zdC1jb2x1bW46IHVucXVvdGUoJzEgMScpXG5cbiNicmVhZGNydW1ic1xuICArYmVsb3coNzY4cHgpXG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnRcbiAgICBsaW5lLWhlaWdodDogMS40ICFpbXBvcnRhbnRcbiAgICBwYWRkaW5nOiAxcmVtIC41cmVtICFpbXBvcnRhbnRcbiAgc3BhblxuICAgICtiZWxvdyg3NjhweClcbiAgICAgIHBhZGRpbmcgMCAwLjI1cmVtICFpbXBvcnRhbnQiLCJiYXNlLWZvbnQtc2l6ZSA/PSAxNnB4XG5yYXN0ZXJpc2UtbWVkaWEtcXVlcmllcyA/PSBmYWxzZVxuXG5ydXB0dXJlID0ge1xuICByYXN0ZXJpc2UtbWVkaWEtcXVlcmllczogcmFzdGVyaXNlLW1lZGlhLXF1ZXJpZXNcbiAgbW9iaWxlLWN1dG9mZjogNDAwcHhcbiAgZGVza3RvcC1jdXRvZmY6IDEwNTBweFxuICBoZC1jdXRvZmY6IDE4MDBweFxuICBlbmFibGUtZW0tYnJlYWtwb2ludHM6IGZhbHNlXG4gIGJhc2UtZm9udC1zaXplOiBiYXNlLWZvbnQtc2l6ZVxuICBhbnRpLW92ZXJsYXA6IGZhbHNlXG4gIGRlbnNpdHktcXVlcmllczogJ2RwcHgnICd3ZWJraXQnICdtb3onICdkcGknXG4gIHJldGluYS1kZW5zaXR5OiAxLjVcbiAgdXNlLWRldmljZS13aWR0aDogZmFsc2Vcbn1cbnJ1cHR1cmUuc2NhbGUgPSAwIChydXB0dXJlLm1vYmlsZS1jdXRvZmYpIDYwMHB4IDgwMHB4IChydXB0dXJlLmRlc2t0b3AtY3V0b2ZmKSAocnVwdHVyZS5oZC1jdXRvZmYpXG5ydXB0dXJlLnNjYWxlLW5hbWVzID0gJ3hzJyAncycgJ20nICdsJyAneGwnICdoZCdcblxuLWlzLXN0cmluZyh2YWwpXG4gIGlmIHR5cGVvZih2YWwpIGlzIG5vdCAndW5pdCdcbiAgICBpZiB2YWwgaXMgYSAnc3RyaW5nJyBvciB2YWwgaXMgYSAnaWRlbnQnXG4gICAgICB0cnVlXG4gICAgZWxzZVxuICAgICAgZmFsc2VcbiAgZWxzZVxuICAgIGZhbHNlXG5cbi1nZXQtc2NhbGUtbnVtYmVyKHNjYWxlLW5hbWUpXG4gIGZvciBsaXN0LWl0ZW0sIGkgaW4gcnVwdHVyZS5zY2FsZS1uYW1lc1xuICAgIGlmIGxpc3QtaXRlbSBpcyBzY2FsZS1uYW1lXG4gICAgICByZXR1cm4gaSArIDFcbiAgcmV0dXJuIGZhbHNlXG5cbi1jb252ZXJ0LXRvKHRvLXVuaXQsIHZhbHVlLCBjb250ZXh0ID0gcnVwdHVyZS5iYXNlLWZvbnQtc2l6ZSlcbiAgZnJvbS11bml0ID0gdW5pdCh2YWx1ZSlcbiAgcmV0dXJuIHZhbHVlIGlmIHRvLXVuaXQgaXMgZnJvbS11bml0XG4gIGlmIHRvLXVuaXQgaW4gKCdlbScgJ3JlbScpXG4gICAgcmV0dXJuIHZhbHVlIGlmIGZyb20tdW5pdCBpbiAoJ2VtJyAncmVtJylcbiAgICByZXR1cm4gdW5pdCgodmFsdWUgLyBjb250ZXh0KSwgdG8tdW5pdClcbiAgaWYgdG8tdW5pdCBpcyAncHgnXG4gICAgcmV0dXJuIHVuaXQoKHZhbHVlICogY29udGV4dCksICdweCcpXG5cbi1vbi1zY2FsZShuKVxuICByZXR1cm4gdW5pdChuKSBpcyAnJ1xuXG4tbGFyZ2VyLXRoYW4tc2NhbGUobilcbiAgcmV0dXJuIChuID4gKGxlbmd0aChydXB0dXJlLnNjYWxlKSAtIDEpKSBhbmQgLW9uLXNjYWxlKG4pXG5cbi1pcy16ZXJvKG4pXG4gIHJldHVybiBuIGlzIDBcblxuLW92ZXJsYXAtc2hpZnQoYW50aS1vdmVybGFwLCBuKVxuICBzaGlmdC11bml0ID0gdW5pdChuKVxuICBhbnRpLW92ZXJsYXAgPSAwcHggdW5sZXNzIGFudGktb3ZlcmxhcFxuICBhbnRpLW92ZXJsYXAgPSAxcHggaWYgYW50aS1vdmVybGFwIGlzIHRydWVcbiAgaWYgbGVuZ3RoKGFudGktb3ZlcmxhcCkgaXMgMVxuICAgIHJldHVybiAtY29udmVydC10byhzaGlmdC11bml0LCBhbnRpLW92ZXJsYXApXG4gIGZvciB2YWwgaW4gYW50aS1vdmVybGFwXG4gICAgcmV0dXJuIHZhbCBpZiB1bml0KHZhbCkgaXMgc2hpZnQtdW5pdFxuXG4tYWRqdXN0LW92ZXJsYXAoYW50aS1vdmVybGFwLCBuLCBzaWRlID0gJ21pbicpXG4gIC1zaGlmdCA9IC1vdmVybGFwLXNoaWZ0KGFudGktb3ZlcmxhcCwgbilcbiAgaWYgKHNpZGUgaXMgJ21pbicgYW5kIC1zaGlmdCA+IDApIG9yIChzaWRlIGlzICdtYXgnIGFuZCAtc2hpZnQgPCAwKVxuICAgIG4gPSBuICsgLXNoaWZ0XG4gIHJldHVybiBuXG5cbi1pcy1wb3NpdGl2ZShuKVxuICByZXR1cm4gbiA+PSAwXG5cbi1kZW5zaXR5LXF1ZXJpZXMoZGVuc2l0eSlcbiAgaWYgdHlwZW9mKGRlbnNpdHkpIGlzIG5vdCAndW5pdCdcbiAgICBpZiBub3QgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgICAgZGVuc2l0eSA9ICclcycgJSBkZW5zaXR5XG4gIGRlbnNpdHkgPSBydXB0dXJlLnJldGluYS1kZW5zaXR5IGlmIGRlbnNpdHkgaXMgJ3JldGluYSdcbiAgcXVlcmllcyA9ICgpXG4gIGZvciBxdWVyeSBpbiBydXB0dXJlLmRlbnNpdHktcXVlcmllc1xuICAgIGlmIHF1ZXJ5IGlzICd3ZWJraXQnXG4gICAgICBwdXNoKHF1ZXJpZXMsICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAlcyknICUgKGRlbnNpdHkpKVxuICAgIGVsc2UgaWYgcXVlcnkgaXMgJ21veidcbiAgICAgIHB1c2gocXVlcmllcywgJyhtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86ICVzKScgJSAoZGVuc2l0eSkpXG4gICAgZWxzZSBpZiBxdWVyeSBpcyAnbydcbiAgICAgIHB1c2gocXVlcmllcywgJygtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAlcy8xKScgJSAoZGVuc2l0eSkpXG4gICAgZWxzZSBpZiBxdWVyeSBpcyAncmF0aW8nXG4gICAgICBwdXNoKHF1ZXJpZXMsICcobWluLWRldmljZS1waXhlbC1yYXRpbzogJXMpJyAlIChkZW5zaXR5KSlcbiAgICBlbHNlIGlmIHF1ZXJ5IGlzICdkcGknXG4gICAgICBpZiAtaXMtc3RyaW5nKGRlbnNpdHkpXG4gICAgICAgIGRlbnNpdHk9Y29udmVydChkZW5zaXR5KVxuICAgICAgcHVzaChxdWVyaWVzLCAnKG1pbi1yZXNvbHV0aW9uOiAlc2RwaSknICUgKHJvdW5kKGRlbnNpdHkgKiA5NiwgMSkpKVxuICAgIGVsc2UgaWYgcXVlcnkgaXMgJ2RwcHgnXG4gICAgICBwdXNoKHF1ZXJpZXMsICcobWluLXJlc29sdXRpb246ICVzZHBweCknICUgKGRlbnNpdHkpKVxuICByZXR1cm4gcXVlcmllc1xuXG5jcmVhdGUtZmFsbGJhY2stY2xhc3Moc2VsZWN0ZWQsIGNsYXNzKVxuICAveycnICsgY2xhc3MgKyAnICcgKyBzZWxlY3RlZH1cbiAgICB7YmxvY2t9XG5cbi8vICtiZXR3ZWVuKG1pbiwgbWF4KVxuLy8gdXNhZ2UgKHNjYWxlIGNhbiBiZSBtaXhlZCB3aXRoIGN1c3RvbSB2YWx1ZXMpOlxuLy8gICAtICtiZXR3ZWVuKDEsIDMpIHNjYWxlOnNjYWxlXG4vLyAgIC0gK2JldHdlZW4oMCwgMykgMCB3aWR0aDpzY2FsZVxuLy8gICAtICtiZXR3ZWVuKDIwMHB4LCA1MDBweCkgY3VzdG9tOmN1c3RvbVxuLy8gICAtICtiZXR3ZWVuKDAsIDMwMHB4KSAwIHdpZHRoOmN1c3RvbVxuLy8gICAtICtiZXR3ZWVuKDEsIDMwMHB4KSBzY2FsZTpjdXN0b21cbi8vICAgLSArYmV0d2VlbigyMDBweCwgNCkgY3VzdG9tOnNjYWxlXG5cbmJldHdlZW4obWluLCBtYXgsIGFudGktb3ZlcmxhcCA9IHJ1cHR1cmUuYW50aS1vdmVybGFwLCBkZW5zaXR5ID0gbnVsbCwgb3JpZW50YXRpb24gPSBudWxsLCB1c2UtZGV2aWNlLXdpZHRoID0gcnVwdHVyZS51c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcyA9IG51bGwpXG4gIHNlbGVjdGVkID0gc2VsZWN0b3IoKVxuXG4gIGlmIC1pcy1zdHJpbmcob3JpZW50YXRpb24pXG4gICAgb3JpZW50YXRpb24gPSBjb252ZXJ0KG9yaWVudGF0aW9uKVxuICBpZiAtaXMtc3RyaW5nKGRlbnNpdHkpXG4gICAgZGVuc2l0eSA9IGNvbnZlcnQoZGVuc2l0eSlcbiAgaWYgLWlzLXN0cmluZyhtaW4pXG4gICAgbWluID0gLWdldC1zY2FsZS1udW1iZXIobWluKVxuICBpZiAtaXMtc3RyaW5nKG1heClcbiAgICBtYXggPSAtZ2V0LXNjYWxlLW51bWJlcihtYXgpXG5cbiAgLW1pbiA9IHJ1cHR1cmUuc2NhbGVbbWluIC0gMV0gdW5sZXNzIC1pcy16ZXJvKG1pbikgb3IgKG5vdCAtb24tc2NhbGUobWluKSlcbiAgLW1heCA9IHJ1cHR1cmUuc2NhbGVbbWF4XSB1bmxlc3Mgbm90IC1vbi1zY2FsZShtYXgpXG4gIC1taW4gPz0gbWluXG4gIC1tYXggPz0gbWF4XG5cbiAgaWYgKHJ1cHR1cmUucmFzdGVyaXNlLW1lZGlhLXF1ZXJpZXMpXG4gICAgaWYgbm90IChkZW5zaXR5IG9yIC1tYXggb3Igb3JpZW50YXRpb24pXG4gICAgICB7YmxvY2t9XG4gIGVsc2VcbiAgICBjb25kaXRpb24gPSAnb25seSBzY3JlZW4nXG4gICAgdXNlLWRldmljZS13aWR0aCA9IHVzZS1kZXZpY2Utd2lkdGggPyAnZGV2aWNlLScgOiAnJ1xuICAgIHVubGVzcyAtbWluIGlzIDBcbiAgICAgIC1taW4gPSAtY29udmVydC10bygnZW0nLCAtbWluKSBpZiBydXB0dXJlLmVuYWJsZS1lbS1icmVha3BvaW50c1xuICAgICAgLW1pbiA9IC1hZGp1c3Qtb3ZlcmxhcChhbnRpLW92ZXJsYXAsIC1taW4sIHNpZGU6ICdtaW4nKVxuICAgICAgY29uZGl0aW9uID0gY29uZGl0aW9uICsgJyBhbmQgKG1pbi0nICsgdXNlLWRldmljZS13aWR0aCArICd3aWR0aDogJXMpJyAlICgtbWluKVxuICAgIHVubGVzcyAtbGFyZ2VyLXRoYW4tc2NhbGUobWF4KVxuICAgICAgLW1heCA9IC1jb252ZXJ0LXRvKCdlbScsIC1tYXgpIGlmIHJ1cHR1cmUuZW5hYmxlLWVtLWJyZWFrcG9pbnRzXG4gICAgICAtbWF4ID0gLWFkanVzdC1vdmVybGFwKGFudGktb3ZlcmxhcCwgLW1heCwgc2lkZTogJ21heCcpXG4gICAgICBjb25kaXRpb24gPSBjb25kaXRpb24gKyAnIGFuZCAobWF4LScgKyB1c2UtZGV2aWNlLXdpZHRoICsgJ3dpZHRoOiAlcyknICUgKC1tYXgpXG4gICAgaWYgb3JpZW50YXRpb25cbiAgICAgIGNvbmRpdGlvbiA9IGNvbmRpdGlvbiArICcgYW5kIChvcmllbnRhdGlvbjogJXMpJyAlIChvcmllbnRhdGlvbilcbiAgICBpZiBkZW5zaXR5XG4gICAgICBjb25kaXRpb25zID0gKClcbiAgICAgIGZvciBxdWVyeSBpbiAtZGVuc2l0eS1xdWVyaWVzKGRlbnNpdHkpXG4gICAgICAgIHB1c2goY29uZGl0aW9ucywgY29uZGl0aW9uICsgJyBhbmQgJXMnICUgKHF1ZXJ5KSlcbiAgICAgIGNvbmRpdGlvbiA9IGpvaW4oJywgJywgY29uZGl0aW9ucylcbiAgICBAbWVkaWEgY29uZGl0aW9uXG4gICAgICB7YmxvY2t9XG4gIGlmIGZhbGxiYWNrLWNsYXNzXG4gICAgK2NyZWF0ZS1mYWxsYmFjay1jbGFzcyhzZWxlY3RlZCwgZmFsbGJhY2stY2xhc3MpXG4gICAgICB7YmxvY2t9XG5cbmF0KHNjYWxlLXBvaW50LCBhbnRpLW92ZXJsYXAgPSBydXB0dXJlLmFudGktb3ZlcmxhcCwgZGVuc2l0eSA9IG51bGwsIG9yaWVudGF0aW9uID0gbnVsbCwgdXNlLWRldmljZS13aWR0aCA9IHJ1cHR1cmUudXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBpZiAtaXMtc3RyaW5nKG9yaWVudGF0aW9uKVxuICAgIG9yaWVudGF0aW9uID0gY29udmVydChvcmllbnRhdGlvbilcbiAgaWYgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICtiZXR3ZWVuKHNjYWxlLXBvaW50LCBzY2FsZS1wb2ludCwgYW50aS1vdmVybGFwLCBkZW5zaXR5LCBvcmllbnRhdGlvbiwgdXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MpXG4gICAge2Jsb2NrfVxuXG5mcm9tLXdpZHRoKHNjYWxlLXBvaW50LCBhbnRpLW92ZXJsYXAgPSBydXB0dXJlLmFudGktb3ZlcmxhcCwgZGVuc2l0eSA9IG51bGwsIG9yaWVudGF0aW9uID0gbnVsbCwgdXNlLWRldmljZS13aWR0aCA9IHJ1cHR1cmUudXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBpZiAtaXMtc3RyaW5nKG9yaWVudGF0aW9uKVxuICAgIG9yaWVudGF0aW9uID0gY29udmVydChvcmllbnRhdGlvbilcbiAgaWYgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICtiZXR3ZWVuKHNjYWxlLXBvaW50LCBsZW5ndGgocnVwdHVyZS5zY2FsZSksIGFudGktb3ZlcmxhcCwgZGVuc2l0eSwgb3JpZW50YXRpb24sIHVzZS1kZXZpY2Utd2lkdGgsIGZhbGxiYWNrLWNsYXNzKVxuICAgIHtibG9ja31cblxuYWJvdmUgPSBmcm9tLXdpZHRoXG5cbnRvLXdpZHRoKHNjYWxlLXBvaW50LCBhbnRpLW92ZXJsYXAgPSBydXB0dXJlLmFudGktb3ZlcmxhcCwgZGVuc2l0eSA9IG51bGwsIG9yaWVudGF0aW9uID0gbnVsbCwgdXNlLWRldmljZS13aWR0aCA9IHJ1cHR1cmUudXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBpZiAtaXMtc3RyaW5nKG9yaWVudGF0aW9uKVxuICAgIG9yaWVudGF0aW9uID0gY29udmVydChvcmllbnRhdGlvbilcbiAgaWYgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICtiZXR3ZWVuKDEsIHNjYWxlLXBvaW50LCBhbnRpLW92ZXJsYXAsIGRlbnNpdHksIG9yaWVudGF0aW9uLCB1c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcylcbiAgICB7YmxvY2t9XG5cbmJlbG93ID0gdG8td2lkdGhcblxubW9iaWxlKGFudGktb3ZlcmxhcCA9IHJ1cHR1cmUuYW50aS1vdmVybGFwLCBkZW5zaXR5ID0gbnVsbCwgb3JpZW50YXRpb24gPSBudWxsLCB1c2UtZGV2aWNlLXdpZHRoID0gcnVwdHVyZS51c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcyA9IG51bGwpXG4gIGlmIC1pcy1zdHJpbmcob3JpZW50YXRpb24pXG4gICAgb3JpZW50YXRpb24gPSBjb252ZXJ0KG9yaWVudGF0aW9uKVxuICBpZiAtaXMtc3RyaW5nKGRlbnNpdHkpXG4gICAgZGVuc2l0eSA9IGNvbnZlcnQoZGVuc2l0eSlcbiAgK2JlbG93KHJ1cHR1cmUubW9iaWxlLWN1dG9mZiwgYW50aS1vdmVybGFwLCBkZW5zaXR5LCBvcmllbnRhdGlvbiwgdXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MpXG4gICAge2Jsb2NrfVxuXG50YWJsZXQoYW50aS1vdmVybGFwID0gcnVwdHVyZS5hbnRpLW92ZXJsYXAsIGRlbnNpdHkgPSBudWxsLCBvcmllbnRhdGlvbiA9IG51bGwsIHVzZS1kZXZpY2Utd2lkdGggPSBydXB0dXJlLnVzZS1kZXZpY2Utd2lkdGgsIGZhbGxiYWNrLWNsYXNzID0gbnVsbClcbiAgaWYgLWlzLXN0cmluZyhvcmllbnRhdGlvbilcbiAgICBvcmllbnRhdGlvbiA9IGNvbnZlcnQob3JpZW50YXRpb24pXG4gIGlmIC1pcy1zdHJpbmcoZGVuc2l0eSlcbiAgICBkZW5zaXR5ID0gY29udmVydChkZW5zaXR5KVxuICArYmV0d2VlbihydXB0dXJlLm1vYmlsZS1jdXRvZmYsIHJ1cHR1cmUuZGVza3RvcC1jdXRvZmYsIGFudGktb3ZlcmxhcCwgZGVuc2l0eSwgb3JpZW50YXRpb24sIHVzZS1kZXZpY2Utd2lkdGgsIGZhbGxiYWNrLWNsYXNzKVxuICAgIHtibG9ja31cblxuZGVza3RvcChhbnRpLW92ZXJsYXAgPSBydXB0dXJlLmFudGktb3ZlcmxhcCwgZGVuc2l0eSA9IG51bGwsIG9yaWVudGF0aW9uID0gbnVsbCwgdXNlLWRldmljZS13aWR0aCA9IHJ1cHR1cmUudXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBpZiAtaXMtc3RyaW5nKG9yaWVudGF0aW9uKVxuICAgIG9yaWVudGF0aW9uID0gY29udmVydChvcmllbnRhdGlvbilcbiAgaWYgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICthYm92ZShydXB0dXJlLmRlc2t0b3AtY3V0b2ZmLCBhbnRpLW92ZXJsYXAsIGRlbnNpdHksIG9yaWVudGF0aW9uLCB1c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcylcbiAgICB7YmxvY2t9XG5cbmhkKGFudGktb3ZlcmxhcCA9IHJ1cHR1cmUuYW50aS1vdmVybGFwLCBkZW5zaXR5ID0gbnVsbCwgb3JpZW50YXRpb24gPSBudWxsLCB1c2UtZGV2aWNlLXdpZHRoID0gcnVwdHVyZS51c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcyA9IG51bGwpXG4gIGlmIC1pcy1zdHJpbmcob3JpZW50YXRpb24pXG4gICAgb3JpZW50YXRpb24gPSBjb252ZXJ0KG9yaWVudGF0aW9uKVxuICBpZiAtaXMtc3RyaW5nKGRlbnNpdHkpXG4gICAgZGVuc2l0eSA9IGNvbnZlcnQoZGVuc2l0eSlcbiAgK2Fib3ZlKHJ1cHR1cmUuaGQtY3V0b2ZmLCBhbnRpLW92ZXJsYXAsIGRlbnNpdHksIG9yaWVudGF0aW9uLCB1c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcylcbiAgICB7YmxvY2t9XG5cbmRlbnNpdHkoZGVuc2l0eSwgb3JpZW50YXRpb24gPSBudWxsLCBmYWxsYmFjay1jbGFzcyA9IG51bGwpXG4gIHNlbGVjdGVkID0gc2VsZWN0b3IoKVxuICBpZiBub3QgKHJ1cHR1cmUucmFzdGVyaXNlLW1lZGlhLXF1ZXJpZXMpXG4gICAgY29uZGl0aW9ucyA9ICgpXG4gICAgZm9yIHF1ZXJ5IGluIC1kZW5zaXR5LXF1ZXJpZXMoZGVuc2l0eSlcbiAgICAgIGNvbmRpdGlvbiA9ICdvbmx5IHNjcmVlbiBhbmQgJXMnICUgKHF1ZXJ5KVxuICAgICAgaWYgb3JpZW50YXRpb25cbiAgICAgICAgY29uZGl0aW9uID0gY29uZGl0aW9uICsgJyBhbmQgKG9yaWVudGF0aW9uOiAlcyknICUgKG9yaWVudGF0aW9uKVxuICAgICAgcHVzaChjb25kaXRpb25zLCBjb25kaXRpb24pXG4gICAgY29uZGl0aW9uID0gam9pbignLCAnLCBjb25kaXRpb25zKVxuICAgIEBtZWRpYSBjb25kaXRpb25cbiAgICAgIHtibG9ja31cbiAgICBpZiBmYWxsYmFjay1jbGFzc1xuICAgICAgK2NyZWF0ZS1mYWxsYmFjay1jbGFzcyhzZWxlY3RlZCwgZmFsbGJhY2stY2xhc3MpXG4gICAgICAgIHtibG9ja31cblxucGl4ZWwtcmF0aW8gPSBkZW5zaXR5XG5cbnJldGluYShvcmllbnRhdGlvbiA9IG51bGwsIGZhbGxiYWNrLWNsYXNzID0gbnVsbClcbiAgK2RlbnNpdHkoJ3JldGluYScsIG9yaWVudGF0aW9uLCBmYWxsYmFjay1jbGFzcylcbiAgICB7YmxvY2t9XG5cbmxhbmRzY2FwZShkZW5zaXR5ID0gbnVsbCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBzZWxlY3RlZCA9IHNlbGVjdG9yKClcbiAgaWYgbm90IChydXB0dXJlLnJhc3RlcmlzZS1tZWRpYS1xdWVyaWVzKVxuICAgIGlmIC1pcy1zdHJpbmcoZGVuc2l0eSlcbiAgICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICAgaWYgZGVuc2l0eVxuICAgICAgK3BpeGVsLXJhdGlvKGRlbnNpdHksIG9yaWVudGF0aW9uOiBsYW5kc2NhcGUsIGZhbGxiYWNrLWNsYXNzKVxuICAgICAgICB7YmxvY2t9XG4gICAgZWxzZVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSlcbiAgICAgICAge2Jsb2NrfVxuICAgICAgaWYgZmFsbGJhY2stY2xhc3NcbiAgICAgICAgK2NyZWF0ZS1mYWxsYmFjay1jbGFzcyhzZWxlY3RlZCwgZmFsbGJhY2stY2xhc3MpXG4gICAgICAgICAge2Jsb2NrfVxuXG5wb3J0cmFpdChkZW5zaXR5ID0gbnVsbCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBzZWxlY3RlZCA9IHNlbGVjdG9yKClcbiAgaWYgbm90IChydXB0dXJlLnJhc3RlcmlzZS1tZWRpYS1xdWVyaWVzKVxuICAgIGlmIC1pcy1zdHJpbmcoZGVuc2l0eSlcbiAgICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICAgaWYgZGVuc2l0eVxuICAgICAgK3BpeGVsLXJhdGlvKGRlbnNpdHksIG9yaWVudGF0aW9uOiBwb3J0cmFpdCwgZmFsbGJhY2stY2xhc3MpXG4gICAgICAgIHtibG9ja31cbiAgICBlbHNlXG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpXG4gICAgICAgIHtibG9ja31cbiAgICAgIGlmIGZhbGxiYWNrLWNsYXNzXG4gICAgICAgICtjcmVhdGUtZmFsbGJhY2stY2xhc3Moc2VsZWN0ZWQsIGZhbGxiYWNrLWNsYXNzKVxuICAgICAgICAgIHtibG9ja31cblxucnVwdHVyZS1ob3ZlcihkZW5zaXR5ID0gbnVsbCwgb3JpZW50YXRpb24gPSBudWxsLCBmYWxsYmFjay1jbGFzcyA9IG51bGwpXG4gIGNvbmRpdGlvbiA9IFwib25seSBzY3JlZW4gYW5kIChob3ZlcjogaG92ZXIpXCI7XG4gIEBtZWRpYSAoe2NvbmRpdGlvbn0pXG4gICAge2Jsb2NrfVxuXG5ob3ZlciA9IHJ1cHR1cmUtaG92ZXJcbiIsIi8vIC0tLS0tLS0tLVxuLy8gR3JhZGllbnRzXG4vLyAtLS0tLS0tLS1cblxuLy8gTWl4aW46IEdyYWRpZW50XG4vL1xuLy8gVGFrZXMgb25lIGNvbG9yIGFuZCBvdXRwdXRzIGEgdmVydGljYWwgZ3JhZGllbnQgYmV0d2VlbiB0aGUgb2Zmc2V0IGJ5IDEwJSBpblxuLy8gZWl0aGVyIGRpcmVjdGlvbiwgb2Zmc2V0IHByZWNlbnRhZ2UgY3VzdG9taXphYmxlIHZpYSBgc3RyZW5ndGhgIHBhcmFtLiBPclxuLy8gdGFrZXMgdHdvIGNvbG9ycyBhbmQgb3V0cHV0cyBhIHZlcnRpY2FsIGdyYWRpZW50IHRoYXQgZmFkZXMgYmV0d2VlbiB0aGUgdHdvXG4vLyBjb2xvcnMuXG4vL1xuLy8gZXguIGdyYWRpZW50OiByZWQgYmx1ZVxuLy8gZXguIGdyYWRpZW50OiByZWRcblxuZ3JhZGllbnQoJGNvbG9yMSwgJGNvbG9yMiA9IG51bGwsICRzdHJlbmd0aCA9IDEwJSlcbiAgLy8gc2hpZnQgYXJncyBpZiBvbmUgY29sb3IgbW9kZVxuICBpZiAodHlwZW9mKCRjb2xvcjIpIGlzICd1bml0JylcbiAgICAkc3RyZW5ndGggPSAkY29sb3IyXG4gICAgJGNvbG9yMiA9IG51bGxcblxuICAkc3RhcnQgPSAkY29sb3IyID8gJGNvbG9yMSA6IGxpZ2h0ZW4oJGNvbG9yMSwgJHN0cmVuZ3RoKVxuICAkZW5kID0gJGNvbG9yMiA/ICRjb2xvcjIgOiBkYXJrZW4oJGNvbG9yMSwgJHN0cmVuZ3RoKVxuICBiYWNrZ3JvdW5kOiAkc3RhcnRcbiAgYmFja2dyb3VuZDogJGVuZCBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAkc3RhcnQsICRlbmQpIHJlcGVhdC14XG5cbi8vIE1peGluOiBJbWFnZSBHcmFkaWVudFxuLy9cbi8vIEV4YWN0bHkgdGhlIHNhbWUgYXMgdGhlIGdyYWRpZW50IG1peGluLCBidXQgb3ZlcmxheXMgYW4gaW1hZ2UgdG8gZ2l2ZSBpdFxuLy8gbW9yZSB0ZXh0dXJlLlxuLy9cbi8vIGV4LiBpbWFnZS1ncmFkaWVudDogcmVkIHBhdHRlcm4ucG5nXG4vLyBleC4gaW1hZ2UtZ3JhZGllbnQ6IHJlZCBwYXR0ZXJuLnBuZyAzMCVcbi8vIGV4LiBpbWFnZS1ncmFkaWVudDogcmVkIGJsdWUgcGF0dGVybi5wbmdcblxuaW1hZ2UtZ3JhZGllbnQoJGNvbG9yMSwgJGNvbG9yMiA9IG51bGwsICRpbWFnZS1wYXRoID0gJ25vaXNlLnBuZycsICRzdHJlbmd0aCA9IDEwJSlcbiAgLy8gc2hpZnQgYXJncyBpZiBvbmUgY29sb3IgbW9kZVxuICBpZiAodHlwZW9mKCRjb2xvcjIpID09ICdzdHJpbmcnKVxuICAgICRzdHJlbmd0aCA9ICRpbWFnZS1wYXRoIGlmICh0eXBlb2YoJGltYWdlLXBhdGgpID09ICd1bml0JylcbiAgICAkaW1hZ2UtcGF0aCA9ICRjb2xvcjJcbiAgICAkY29sb3IyID0gbnVsbFxuXG4gICRzdGFydCA9ICRjb2xvcjIgPyAkY29sb3IxIDogbGlnaHRlbigkY29sb3IxLCAkc3RyZW5ndGgpXG4gICRlbmQgPSAkY29sb3IyID8gJGNvbG9yMiA6IGRhcmtlbigkY29sb3IxLCAkc3RyZW5ndGgpXG4gIGJhY2tncm91bmQ6ICRzdGFydFxuICBiYWNrZ3JvdW5kOiB1cmwoJGltZy1wYXRoICRpbWFnZS1wYXRoKSByZXBlYXQsICRlbmQgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgJHN0YXJ0LCAkZW5kKSByZXBlYXQteFxuIiwiLy8gLS1cbi8vIFVJXG4vLyAtLVxuXG4vLyBNaXhpbjogQXJlYVxuLy9cbi8vIEp1c3QgYSBuaWNlIGxpdHRsZSBhcmVhIGZvciB5b3UgdG8gcHV0IGNvbnRlbnQgaW4uIFJvdW5kZWQgY29ybmVycywgYm94IHdpdGhcbi8vIGxpZ2h0IGdyZXkgYmFja2dyb3VuZCBieSBkZWZhdWx0LiBZb3UgY2FuIHBhc3MgaXQgYSBkaWZmZXJlbnQgY29sb3IgaWYgeW91J2Rcbi8vIGxpa2UuXG4vL1xuLy8gZXguIGFyZWEoKVxuLy8gZXguIGFyZWE6IHJlZCAvLyA8LS0gbm90IHJlY29tbWVuZGVkXG5cbmFyZWEoJGNvbG9yID0gI0Y1RjVGNSlcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDZweCByZ2JhKCMwMDAsLjA1KVxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JcbiAgcGFkZGluZzogMTVweFxuICBib3JkZXItcmFkaXVzOiA0cHhcbiAgbWFyZ2luOiAyMHB4IDBcblxuLy8gTWl4aW46IE5vdGljZVxuLy9cbi8vIEEgbm90aWNlIGZvciB5b3UuIEJlc3QgdXNlZCBmb3IgZmxhc2ggYWxlcnRzLCB0aGlzIHdhcyBvcmlnaW5hbGx5IGFuIGludGVybmFsXG4vLyBtaXhpbiwgYnV0IHlvdSBjYW4gdXNlIGl0IGlmIHlvdSdkIGxpa2UuIEdpdmUgaXQgYSBjb2xvciBhbmQgYSB3aWR0aCBhbmQgaXRcbi8vIHdpbGwgb3V0cHV0IGEgbmljZSBsaWdodGx5IGdyYWRpZW50ZWQgYm94IGZvciB5b3VyIG5vdGljZSB0byByZXNpZGUgaW4uXG4vL1xuLy8gZXguIG5vdGljZSgpXG4vLyBleC4gbm90aWNlOiA1MDBweCBibHVlXG5cbm5vdGljZSgkd2lkdGggPSBmYWxzZSwgJGNvbG9yID0gI0VFRUVFRSwgJHBhZGRpbmcgPSAxMHB4KVxuICBncm91cCgpXG4gIGdyYWRpZW50KCRjb2xvciwgMyUpXG4gIGJvcmRlci1yYWRpdXM6IDVweFxuICBwYWRkaW5nOiAkcGFkZGluZ1xuICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZW4oJGNvbG9yLCAxMCUpXG4gIGJveC1zaGFkb3c6IDFweCAxcHggM3B4IHJnYmEoIzAwMCwuMDUpXG4gIHBvc2l0aW9uOiByZWxhdGl2ZVxuICB3aWR0aDogJHdpZHRoIGlmICR3aWR0aFxuXG4vLyBNaXhpbjogRmxhc2hcbi8vXG4vLyBUaGlzIGlzIHJlYWxseSBncmVhdCBmb3IgcmFpbHMgZmxhc2ggbWVzc2FnZXMsIG9yIHJlYWxseSBhbnkgbGl0dGxlXG4vLyBub3RpZmljYXRpb25zIGxpa2UgJ2xvZ2dlZCBpbiEnLCAnbG9nZ2VkIG91dCEnLCBvciAnZXJyYXJycnIhJy4gVGFrZXMgb25lIG9mXG4vLyBmb3VyIHR5cGVzIGFuZCBjb2xvcnMgdGhlbSBuaWNlbHkgZm9yIHlvdSAtIG5vdGljZSwgc3VjY2Vzcywgd2FybmluZywgb3Jcbi8vIGVycm9yLiBEZWZhdWx0cyB0byBub3RpY2UuXG4vL1xuLy8gZXguIGZsYXNoKClcbi8vIGV4LiBmbGFzaDogJ2Vycm9yJ1xuXG5mbGFzaCgkdHlwZSA9ICdub3RpY2UnKVxuICBpZiAkdHlwZSA9PSAnbm90aWNlJ1xuICAgIG5vdGljZSgkY29sb3I6ICM2Q0M1RkEpXG4gICAgY29sb3I6ICNmZmZcbiAgICBmb250LXdlaWdodDogYm9sZFxuICAgIHRleHQtc2hhZG93OiAxcHggMXB4IDFweCByZ2JhKCMwMDAsLjIpXG4gIGlmICR0eXBlID09ICdzdWNjZXNzJ1xuICAgIG5vdGljZSgkY29sb3I6ICM3QkRFQTMpXG4gICAgY29sb3I6ICNmZmZcbiAgICBmb250LXdlaWdodDogYm9sZFxuICAgIHRleHQtc2hhZG93OiAxcHggMXB4IDFweCByZ2JhKCMwMDAsLjIpXG4gIGlmICR0eXBlID09ICd3YXJuaW5nJ1xuICAgIG5vdGljZSgkY29sb3I6ICNGQUU2NzcpXG4gICAgZm9udC13ZWlnaHQ6IGJvbGRcbiAgICB0ZXh0LXNoYWRvdzogMXB4IDFweCAxcHggcmdiYSgjZmZmLC4yKVxuICBpZiAkdHlwZSA9PSAnZXJyb3InXG4gICAgbm90aWNlKCRjb2xvcjogI0U3N0M3MClcbiAgICBjb2xvcjogI2ZmZlxuICAgIGZvbnQtd2VpZ2h0OiBib2xkXG4gICAgdGV4dC1zaGFkb3c6IDFweCAxcHggMXB4IHJnYmEoIzAwMCwuMilcblxuLy8gTWl4aW46IEJyZWFkY3J1bWJcbi8vXG4vLyBMYXkgdGhpcyBvbmUgZG93biBvbiBhIGxpc3QgYW5kIGl0IHdpbGwgdHVybiB0aGUgbGlzdCBpbnRvIGEgYnJlYWRjcnVtYi15XG4vLyB0aGluZy4gQnkgZGVmYXVsdCBzZXBhcmF0ZXMgd2l0aCBhIHNsYXNoLCBidXQgeW91IGNhbiBmZWVkIGl0IGFueSBjaGFyYWN0ZXIuXG4vLyBTZWNvbmQgcGFyYW0gaXMgc3BhY2luZyBiZXR3ZWVuIHRoZSBsaXN0IGl0ZW1zLCBhbmQgdGhlIHRoaXJkIGlzIHRoZSBjb2xvciBvZlxuLy8gdGhlIGRpdmlkZXIuIEFsbCBhcmUgb3B0aW9uYWwuXG4vL1xuLy8gZXguIGJyZWFkY3J1bWIoKVxuLy8gZXguIGJyZWFkY3J1bWI6ICc+J1xuLy8gZXguIGJyZWFkY3J1bWI6IFwiLVwiIDI1cHggcmVkXG4vLyBleC4gYnJlYWRjcnVtYiBcIn5cIiA0MHB4XG5cbmJyZWFkY3J1bWIoJGNoYXJhY3RlciA9IFwiL1wiLCAkc3BhY2luZyA9IDEwcHgsICRkaXZpZGVyLWNvbG9yID0gI0NEQ0RDRClcbiAgaW5saW5lLWxpc3Q6ICRzcGFjaW5nXG5cbiAgbGk6bm90KDpsYXN0LWNoaWxkKTphZnRlclxuICAgIGNvbnRlbnQ6ICRjaGFyYWN0ZXJcbiAgICBtYXJnaW4tbGVmdDogJHNwYWNpbmdcbiAgICBjb2xvcjogJGRpdmlkZXItY29sb3JcblxuLy8gTWl4aW46IEJ1YmJsZVxuLy9cbi8vIElmIHlvdSdyZSBhbnl0aGluZyBsaWtlIG1lLCB5b3UgYWx3YXlzIHNlZW0gdG8gZmluZCB5b3VyIGRlc2lnbmVycyBwdXR0aW5nXG4vLyBsaXR0bGUgYnViYmxlcyBpbiB0aGluZ3MuIFRoaXMgbWl4aW4gdGFrZXMgY2FyZSBvZiB0aGF0IHByb2JsZW0sIGFuZCBtYWtlcyBhXG4vLyBuaWNlIGJ1YmJsZSB3aXRoIDEwMCUgY3NzLiBBbGwgcGFyYW1ldGVycyBvcHRpb25hbCAtIGFjY2VwdHMgd2lkdGgsIHBvaW50ZXJcbi8vIHBvc2l0aW9uIChsZWZ0LCBjZW50ZXIsIG9yIHJpZ2h0KSwgYW5kIGEgY29sb3IuXG4vL1xuLy8gZXguIGJ1YmJsZSgpXG4vLyBleC4gYnViYmxlOiB0b3AgY2VudGVyICM1Nzc3N0Vcbi8vIGV4LiBidWJibGU6IGJvdHRvbSByaWdodCAjNTc0MEExIDUwMHB4XG4vLyBleC4gYnViYmxlOiByaWdodCB0b3AgIzU3NDBBMSA1MDBweFxuXG5idWJibGUoJHBvczAgPSBsZWZ0LCAkcG9zMSA9IGZhbHNlLCAkY29sb3IgPSAjRUVFRUVFLCAkd2lkdGggPSBmYWxzZSwgJHRyaWFuZ2xlLXNpemUgPSAxMHB4LCAkc2lkZS1kaXN0YW5jZSA9IDE1cHgsICRwYWRkaW5nID0gMTBweCwgcG9pbnRlciA9IGZhbHNlLCAkdHJpYW5nbGUtY29sb3IgPSBkYXJrZW4oJGNvbG9yLCAzJSksICR0cmlhbmdsZS1ib3JkZXItY29sb3IgPSBkYXJrZW4oJHRyaWFuZ2xlLWNvbG9yLCAxMCUpKVxuXG4gIC8vIHVzZSBuYW1lZCBhcmd1bWVudCAncG9pbnRlcicgYXMgJHBvczAgYXJnICh0byBwcmVzZXJ2ZSBvbGQgYnViYmxlIGFwaSlcbiAgJGJvcmRlci13aWR0aCA9IDFweFxuICAkc3FydDIgPSAxLjNcbiAgJGRpc3RhbmNlLXktc2hhZG93ID0gKCRzaWRlLWRpc3RhbmNlIC0gJGJvcmRlci13aWR0aClcbiAgJGRpc3RhbmNlLXgtc2hhZG93ID0gKCRzaWRlLWRpc3RhbmNlIC0gJGJvcmRlci13aWR0aClcbiAgJG1hcmdpbi1sZWZ0LXNoYWRvdyA9IGF1dG9cbiAgJG1hcmdpbi1sZWZ0ID0gYXV0b1xuICAkbWFyZ2luLXRvcC1zaGFkb3cgPSBhdXRvXG4gICRtYXJnaW4tdG9wID0gYXV0b1xuICBpZiBwb2ludGVyXG4gICAgJHBvczEgPSBwb2ludGVyXG4gICAgJHBvczAgPSBib3R0b21cbiAgLy8gaWYgbm8gJHBvczEgaXMgZ2l2ZW4sIHNoaWZ0IGFyZ3MgYW5kIGFzc3VtZSAnYm90dG9tICRwb3MwJ1xuICBpZiAkcG9zMSBpcyBmYWxzZVxuICAgICRwb3MxID0gJHBvczBcbiAgICAkcG9zMCA9IGJvdHRvbVxuICBlbHNlIGlmICRwb3MxIGlzIGEgJ2NvbG9yJ1xuICAgICR3aWR0aCA9ICRjb2xvclxuICAgICRjb2xvciA9ICRwb3MxXG4gICAgJHBvczEgPSAkcG9zMFxuICAgICRwb3MwID0gYm90dG9tXG5cbiAgbm90aWNlOiAkd2lkdGggJGNvbG9yICRwYWRkaW5nXG5cbiAgaWYgJHBvczAgaXMgdG9wXG4gICAgJGRpcmVjdGlvbi10cmlhbmdsZSA9IHVwXG4gICAgJHBvc2l0aW9uLXkgPSB0b3BcbiAgICAkZGlzdGFuY2UteSA9IC0oJHRyaWFuZ2xlLXNpemUpXG4gICAgJGRpc3RhbmNlLXktc2hhZG93ID0gLSgkdHJpYW5nbGUtc2l6ZSArICRib3JkZXItd2lkdGggKiAkc3FydDIpXG4gIGVsc2UgaWYgJHBvczAgaXMgYm90dG9tXG4gICAgJGRpcmVjdGlvbi10cmlhbmdsZSA9IGRvd25cbiAgICAkcG9zaXRpb24teSA9IGJvdHRvbVxuICAgICRkaXN0YW5jZS15ID0gLSgkdHJpYW5nbGUtc2l6ZSlcbiAgICAkZGlzdGFuY2UteS1zaGFkb3cgPSAtKCR0cmlhbmdsZS1zaXplICsgJGJvcmRlci13aWR0aCAqICRzcXJ0MilcbiAgZWxzZSBpZiAkcG9zMCBpcyBsZWZ0XG4gICAgJGRpcmVjdGlvbi10cmlhbmdsZSA9IGxlZnRcbiAgICAkcG9zaXRpb24teCA9IGxlZnRcbiAgICAkZGlzdGFuY2UteCA9IC0oJHRyaWFuZ2xlLXNpemUpXG4gICAgJGRpc3RhbmNlLXgtc2hhZG93ID0gLSgkdHJpYW5nbGUtc2l6ZSArICRib3JkZXItd2lkdGggKiAkc3FydDIpXG4gIGVsc2UgaWYgJHBvczAgcmlnaHRcbiAgICAkZGlyZWN0aW9uLXRyaWFuZ2xlID0gcmlnaHRcbiAgICAkcG9zaXRpb24teCA9IHJpZ2h0XG4gICAgJGRpc3RhbmNlLXggPSAtKCR0cmlhbmdsZS1zaXplKVxuICAgICRkaXN0YW5jZS14LXNoYWRvdyA9IC0oJHRyaWFuZ2xlLXNpemUgKyAkYm9yZGVyLXdpZHRoICogJHNxcnQyKVxuXG4gIGlmICRwb3MxIGlzIGxlZnRcbiAgICAkcG9zaXRpb24teCA9IGxlZnRcbiAgICAkZGlzdGFuY2UteCA9ICRzaWRlLWRpc3RhbmNlXG4gIGVsc2UgaWYgJHBvczEgaXMgcmlnaHRcbiAgICAkcG9zaXRpb24teCA9IHJpZ2h0XG4gICAgJGRpc3RhbmNlLXggPSAkc2lkZS1kaXN0YW5jZVxuICBlbHNlIGlmICRwb3MxIGlzIGJvdHRvbVxuICAgICRwb3NpdGlvbi15ID0gYm90dG9tXG4gICAgJGRpc3RhbmNlLXkgPSAkc2lkZS1kaXN0YW5jZVxuICBlbHNlIGlmICRwb3MxIGlzIHRvcFxuICAgICRwb3NpdGlvbi15ID0gdG9wXG4gICAgJGRpc3RhbmNlLXkgPSAkc2lkZS1kaXN0YW5jZVxuICBlbHNlIGlmICRwb3MxIGlzIGNlbnRlclxuICAgIGlmICRwb3MwIGlzIHRvcCBvciAkcG9zMCBpcyBib3R0b20gb3IgJHBvczEgaXMgZmFsc2VcbiAgICAgICRtYXJnaW4tbGVmdCA9IC0oJHRyaWFuZ2xlLXNpemUpXG4gICAgICAkbWFyZ2luLWxlZnQtc2hhZG93ID0gLSgkdHJpYW5nbGUtc2l6ZSArICRib3JkZXItd2lkdGggKiAkc3FydDIgLyAyKVxuICAgICAgJHBvc2l0aW9uLXggPSBsZWZ0XG4gICAgICAkZGlzdGFuY2UteCA9IDUwJVxuICAgICAgJGRpc3RhbmNlLXgtc2hhZG93ID0gNTAlXG4gICAgZWxzZVxuICAgICAgJG1hcmdpbi10b3AgPSAtKCR0cmlhbmdsZS1zaXplLzIpXG4gICAgICAkbWFyZ2luLXRvcC1zaGFkb3cgPSAtKCR0cmlhbmdsZS1zaXplLzIgKyAkYm9yZGVyLXdpZHRoICogJHNxcnQyIC8gMilcbiAgICAgICRwb3NpdGlvbi15ID0gdG9wXG4gICAgICAkZGlzdGFuY2UteSA9IDUwJVxuICAgICAgJGRpc3RhbmNlLXktc2hhZG93ID0gNTAlXG5cbiAgJjpiZWZvcmVcbiAgICBtYXJnaW4tdG9wOiAkbWFyZ2luLXRvcC1zaGFkb3dcbiAgICBtYXJnaW4tbGVmdDogJG1hcmdpbi1sZWZ0LXNoYWRvd1xuICAgIHRyaWFuZ2xlOiAkZGlyZWN0aW9uLXRyaWFuZ2xlICgkdHJpYW5nbGUtc2l6ZSArICRib3JkZXItd2lkdGggKiAkc3FydDIpICR0cmlhbmdsZS1ib3JkZXItY29sb3JcbiAgICBhYnNvbHV0ZTogJHBvc2l0aW9uLXkgJGRpc3RhbmNlLXktc2hhZG93ICRwb3NpdGlvbi14ICRkaXN0YW5jZS14LXNoYWRvd1xuICAgIGRpc3BsYXk6IGJsb2NrXG5cbiAgJjphZnRlclxuICAgIG1hcmdpbi10b3A6ICRtYXJnaW4tdG9wXG4gICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW4tbGVmdFxuICAgIHRyaWFuZ2xlOiAkZGlyZWN0aW9uLXRyaWFuZ2xlICR0cmlhbmdsZS1zaXplICR0cmlhbmdsZS1jb2xvclxuICAgIGFic29sdXRlOiAkcG9zaXRpb24teSAkZGlzdGFuY2UteSAkcG9zaXRpb24teCAkZGlzdGFuY2UteFxuICAgIGRpc3BsYXk6IGJsb2NrXG5cbi8vIE1peGluOiBGaWd1cmVcbi8vXG4vLyBGb3Igd2hlbiB5b3Ugd2FudCB0byAqc2VtYW50aWNhbGx5KiBzaG93IGFuIGltYWdlLiBQdXQgdGhpcyBvbiB5b3VyXG4vLyA8ZmlndXJlIC8+IGVsZW1lbnQgYW5kIGl0IHdpbGwgc3R5bGUgdGhlIG5lc3RlZCBpbWFnZSBhbmQgZmlnY2FwdGlvbiBpbiBhXG4vLyB3b25kZXJmdWxseSBwbGVhc2luZyBtYW5uZXIuIFRha2VzIGEgY29sb3IgKGZvciB0aGUgdGhpbiBvdXRsaW5lKSwgYW5kIGlmXG4vLyB5b3Ugd2FudCwgZGltZW5zaW9ucyBvZiB0aGUgaW1hZ2UgYXMgYSBzcGFjZSBzZXBhcmF0ZWQgbGlzdC5cbi8vXG4vLyBleC4gZmlndXJlKClcbi8vIGV4LiBmaWd1cmU6IGJsdWVcbi8vIGV4LiBmaWd1cmUoZ3JlZW4sIDEwMHB4IDQwMHB4KVxuXG5maWd1cmUoJGNvbG9yID0gJGRlZmF1bHQtY29sb3IsICRkaW1lbnNpb25zID0gZmFsc2UpXG5cbiAgaWYgbGVuZ3RoKCRkaW1lbnNpb25zKSA+IDFcbiAgICBkaXNwbGF5OiBibG9ja1xuICAgIHNpemU6ICRkaW1lbnNpb25zWzBdICRkaW1lbnNpb25zWzFdXG4gIGVsc2UgaWYgJGRpbWVuc2lvbnMgPT0gZmFsc2VcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2tcbiAgZWxzZVxuICAgIHdhcm4oXCJNYWtlIHN1cmUgeW91IHBhc3MgdGhlIGltYWdlJ3MgZGltZW5zaW9ucyBhcyBhIHNwYWNlLXNlcGFyYXRlZCBsaXN0XCIpXG5cbiAgaW1nXG4gICAgZGlzcGxheTogYmxvY2tcbiAgICBwYWRkaW5nOiA0cHhcbiAgICBib3JkZXItcmFkaXVzOiAzcHhcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRjb2xvciwgLjYpXG5cbiAgZmlnY2FwdGlvblxuICAgIHBhZGRpbmc6IDEwcHggMFxuICAgIHRleHQtYWxpZ246IGNlbnRlclxuICAgIGl0YWxpYygpXG5cbi8vIE1peGluOiBpY29uLWFycm93XG4vL1xuLy8gSGVyZSdzIGFuIGFzc2V0IHlvdSd2ZSBwcm9iYWJseSBoYWQgdG8gY3JlYXRlIGEgbG90LiBOb3cgeW91IGRvbid0LlxuLy8gQ3JlYXRlcyBhIG5pY2UgYXJyb3cgaWNvbiBpbiBwdXJlIGNzcy4gVXNlZnVsIGZvciBuYXZpZ2F0aW9uLiBUYWtlcyBzaXplLFxuLy8gY29sb3IsIG9yIHN0cm9rZS5cblxuLy8gZXg6IGNsb3NlKClcbi8vIGV4OiBjbG9zZSgyNXB4LCB5ZWxsb3dncmVlbiwgMnB4KVxuXG5pY29uLWFycm93KCRkaXJlY3Rpb24gPSAncmlnaHQnLCAkc2l6ZSA9IDQwcHgsICRjb2xvciA9ICM4ODgsICRzdHJva2UgPSAxcHgpXG4gIGhlaWdodDogJHNpemVcbiAgd2lkdGg6ICRzaXplXG5cbiAgJjphZnRlclxuICAgIGNvbnRlbnQ6ICcnXG4gICAgYm9yZGVyLXJpZ2h0OiAkc3Ryb2tlIHNvbGlkICRjb2xvclxuICAgIGJvcmRlci10b3A6ICRzdHJva2Ugc29saWQgJGNvbG9yXG4gICAgZGlzcGxheTogYmxvY2tcbiAgICBoZWlnaHQ6IHVuaXQoJHNpemUgKiAwLjYyNSwgJ3B4JylcbiAgICB3aWR0aDogdW5pdCgkc2l6ZSAqIDAuNjI1LCAncHgnKVxuICAgIG1hcmdpbi1sZWZ0OiAxJVxuICAgIGlmICRkaXJlY3Rpb24gPT0gJ3JpZ2h0J1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZVgodW5pdCgkc2l6ZSAqIDAuMSwgJ3B4JykpIHRyYW5zbGF0ZVkodW5pdCgkc2l6ZSAqIDAuMSwgJ3B4JykpXG4gICAgZWxzZSBpZiAkZGlyZWN0aW9uID09ICdsZWZ0J1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZykgdHJhbnNsYXRlWCh1bml0KCRzaXplICogLTAuMywgJ3B4JykgKSB0cmFuc2xhdGVZKHVuaXQoJHNpemUgKiAwLjEsICdweCcpKVxuICAgIGVsc2UgaWYgJGRpcmVjdGlvbiA9PSAnZG93bidcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZykgdHJhbnNsYXRlWCh1bml0KCRzaXplICogLTAuMSwgJ3B4JykpIHRyYW5zbGF0ZVkodW5pdCgkc2l6ZSAqIC0wLjEsICdweCcpKVxuICAgIGVsc2UgaWYgJGRpcmVjdGlvbiA9PSAndXAnXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZVgodW5pdCgkc2l6ZSAqIC0wLjEsICdweCcpKSB0cmFuc2xhdGVZKHVuaXQoJHNpemUgKiAwLjMsICdweCcpKVxuXG4vLyBNaXhpbjogaWNvbi14XG4vL1xuLy8gSGVyZSdzIGFub3RoZXIgbiBhc3NldCB5b3UndmUgcHJvYmFibHkgaGFkIHRvIGNyZWF0ZSBhIGxvdC4gTm93IHlvdSBkb24ndC5cbi8vIENyZWF0ZXMgYSBuaWNlIFwiWFwiIGNsb3NlL2RlbGV0ZSBpY29uLiBUYWtlcyBzaXplLCBjb2xvciwgb3Igc3Ryb2tlXG5cbi8vIGV4OiBjbG9zZSgpXG4vLyBleDogY2xvc2UoMjVweCwgeWVsbG93Z3JlZW4sIDJweClcblxuaWNvbi14KCRzaXplID0gNDBweCwgJGNvbG9yID0gIzg4OCwgJHN0cm9rZSA9IDFweClcbiAgd2lkdGg6ICRzaXplXG4gIGhlaWdodDogJHNpemVcbiAgZGlzcGxheTogYmxvY2tcbiAgcG9zaXRpb246IHJlbGF0aXZlXG5cbiAgJjpiZWZvcmUsICY6YWZ0ZXJcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2VcbiAgICBjb250ZW50OiAnJ1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZVxuICAgIHdpZHRoOiAkc2l6ZVxuICAgIHRvcDogNTAlXG4gICAgaGVpZ2h0OiAkc3Ryb2tlXG4gICAgYmFja2dyb3VuZDogJGNvbG9yXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpXG5cbiAgJjphZnRlclxuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZylcblxuLy8gTWl4aW46IE5hdmlnYXRpb25cbi8vXG4vLyBNYWtlcyBhIGZhbnRhc3RpYyBuYXYgYmFyIGZvciB5b3UgdGhhdCBkb2Vzbid0IGxvb2sgZXhhY3RseSBsaWtlIGJvb3RzdHJhcCdzXG4vLyBhbmQgeW91IGNhbiBjdXN0b21pemUgaXQgYXMgd2VsbC4gUGFyYW1zOiBmaXhlZCAoYm9vbGVhbiksIGNvbG9yIChyZWNvbW1lbmRcbi8vIHNvbWV0aGluZyBkYXJrKSwgbGluayBjb2xvciwgYW5kIHNpemUsIHdoaWNoIGlzIGFuIGludGVnZXIgZnJvbSBvbmUgdXAsIGFuZFxuLy8gc2NhbGVzIGV2ZXJ5IGFzcGVjdCBvZiB0aGUgbmF2IGJhciBmb3IgeW91LiBBbGwgaGF2ZSBkZWZhdWx0cy4gVGhpcyBtaXhpbiBpc1xuLy8gbWVhbnQgdG8gYmUgcGxhY2VkIG9uIGEgPG5hdj4gZWxlbWVudCB0aGF0IGNvbnRhaW5zIGEgdWwuXG4vL1xuLy8gZXguIG5hdigpXG4vLyBleC4gbmF2OiAxICM0NDQgcmVkIHRydWVcblxubmF2aWdhdGlvbigkc2l6ZSA9IDEsICRiZy1jb2xvciA9ICMyMjIsICRsaW5rLWNvbG9yID0gI2ZmZiwgJHBvcy1maXhlZCA9IGZhbHNlKVxuICBncm91cCgpXG4gIGRpc3BsYXk6IGJsb2NrXG4gIHotaW5kZXg6IDEwXG4gIGdyYWRpZW50OiAkYmctY29sb3IgNSVcbiAgYm94LXNoYWRvdzogMCAzcHggM3B4IHJnYmEoMCwwLDAsLjE1KVxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYShkYXJrZW4oJGJnLWNvbG9yLCAxNSUpLC43KVxuICBoZWlnaHQ6ICgkc2l6ZSArIDE0KSAqIDIuODY2cHhcbiAgd2lkdGg6IDEwMCVcbiAgZm9udC1zaXplOiB1bml0KCRzaXplICsgMTQsICdweCcpXG5cbiAgaWYgJHBvcy1maXhlZFxuICAgIHBvc2l0aW9uOiBmaXhlZFxuICBlbHNlXG4gICAgcG9zaXRpb246IHJlbGF0aXZlXG5cbiAgaDFcbiAgICBmbG9hdDogbGVmdFxuICAgIHBhZGRpbmc6ICgkc2l6ZSArIDE0KSAqIC41OHB4XG4gICAgcGFkZGluZy1sZWZ0OiAxN3B4XG4gICAgY29sb3I6ICRsaW5rLWNvbG9yXG4gICAgYm9sZCgpXG4gICAgZm9udC1zaXplOiAoJHNpemUgKyAxNCkgKiAxLjNweFxuXG4gIHVsXG4gICAgZmxvYXQ6IHJpZ2h0XG4gICAgbWFyZ2luOiAwXG4gICAgcGFkZGluZzogKCRzaXplICsgMTQpICogLjhweFxuICAgIGNvbG9yOiAkbGluay1jb2xvclxuXG4gICAgbGlcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZVxuICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4XG4gICAgICBmbG9hdDogbGVmdFxuXG4gICAgICBhXG4gICAgICAgIGNvbG9yOiAkbGluay1jb2xvclxuICAgICAgICBib3JkZXI6IG5vbmVcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyXG5cbiAgICAgICAgJjpob3ZlclxuICAgICAgICAgIGNvbG9yOiBkYXJrZW4oJGxpbmstY29sb3IsIDIwJSlcbiAgICAgICAgICBib3JkZXI6IG5vbmVcblxuLy8gQWxpYXM6IG5hdlxubmF2ID0gbmF2aWdhdGlvblxuXG4vLyBBZGRpdGl2ZSBNaXhpbjogRmxhc2ggTm90aWNlc1xuLy9cbi8vIFdBUk5JTkc6IENyZWF0ZXMgY2xhc3NlcyBpbiB5b3VyIGNzcyBhbmQgc3R5bGVzIHRoZW0gLSBub3QgdG8gYmUgdXNlZCBpbnNpZGVcbi8vIGFuIGVsZW1lbnQuXG4vL1xuLy8gU3VwZXIgY29udmVuaWVudCBmbGFzaCBub3RpY2VzLiBBbnl0aGluZyB3aXRoIC5mbGFzaCBvbiBpdCB3aWxsIGRpc3BsYXkgYXMgYVxuLy8gbm90aWNlLCBhbmQgaWYgeW91IGFkZCB0aGUgYWRkaXRpb25hbCBjbGFzcyAuZXJyb3IsIC53YXJuaW5nLCAubm90aWNlLCBvclxuLy8gLnN1Y2Nlc3MsIGl0IHdpbGwgZGlzcGxheSB0aGUgYXBwcm9wcmlhdGUgY29sb3IgYmFja2dyb3VuZCBmb3IgdGhlIG1lc3NhZ2UuXG4vL1xuLy8gZXguIGZsYXNoLW5vdGljZXMoKVxuXG5mbGFzaC1ub3RpY2VzKClcbiAgLmZsYXNoXG4gICAgJi5lcnJvclxuICAgICAgZmxhc2goZXJyb3IpXG4gICAgJi53YXJuaW5nXG4gICAgICBmbGFzaCh3YXJuaW5nKVxuICAgICYubm90aWNlXG4gICAgICBmbGFzaChub3RpY2UpXG4gICAgJi5zdWNjZXNzXG4gICAgICBmbGFzaChzdWNjZXNzKVxuIiwiLy8gLS0tLS1cbi8vIEZvcm1zXG4vLyAtLS0tLVxuXG4vLyBGdW5jdGlvbjogRm9jdXMgR2xvd1xuLy8gTWFrZXMgeW91ciBpbnB1dHMgZ2xvdyB3aGVuIGZvY3VzZWQuIFBhc3MgYSBjb2xvciwgdGhleSB3aWxsIGdsb3cgdGhhdCBjb2xvci5cblxuLWZvY3VzLWdsb3coJGNvbG9yID0gJGRlZmF1bHQtY29sb3IpXG4gICY6Zm9jdXNcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4IHJnYmEoJGNvbG9yLC43KVxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGRlc2F0dXJhdGUoJGNvbG9yLCAzNSUpXG4gICAgb3V0bGluZTogbm9uZVxuXG4vLyBNaXhpbjogSW5wdXRcbi8vXG4vLyBBIGdlbmVyYWwgcHVycG9zZSBtaXhpbiBmb3IgdGV4dCBpbnB1dHMuIFByb3ZpZGVzIGFuIG5pY2UgYXR0cmFjdGl2ZSBkZWZhdWx0XG4vLyBzdHlsZSB0aGF0J3MgZWFzaWx5IGN1c3RvbWl6YWJsZS4gVGFrZXMgYSBjb2xvciBhcyB0aGUgZmlyc3QgcGFyYW0gYW5kIGFuXG4vLyBvcHRpb25hbCB3aWR0aCBhcyB0aGUgc2Vjb25kLlxuLy9cbi8vIGV4LiBpbnB1dCgpXG4vLyBleC4gaW5wdXQ6IHB1cnBsZVxuLy8gZXguIGlucHV0OiAjRDQ1RDg2IDQwMHB4XG5cbmlucHV0KCRjb2xvciA9ICRhcXVhLCAkd2lkdGggPSAyNTBweClcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoIzAwMCwgMC4xKVxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZFxuICBmb250LXNpemU6IHVuaXQoJGZvbnQtc2l6ZSwgJ3B4JylcbiAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrXG4gIGJvcmRlcjogc29saWQgMXB4ICNiYmJcbiAgYm9yZGVyLXJhZGl1czogLjJlbVxuICBvdXRsaW5lOiBub25lXG4gIHBhZGRpbmc6IC40NWVtXG4gIGJhY2tncm91bmQ6ICNmZmZcbiAgY29sb3I6ICM1NTVcbiAgd2lkdGg6ICR3aWR0aFxuICB0ZXh0LXNoYWRvdzogMCAwIDFweCByZ2JhKCNmZmYsIC4xKVxuICB0cmFuc2l0aW9uKClcbiAgaWYgY29sb3JcbiAgICAtZm9jdXMtZ2xvdygkY29sb3IpXG4gIGVsc2VcbiAgICBib3gtc2hhZG93OiBub25lXG5cbi8vIE1peGluOiBJbnB1dCBTZWFyY2hcbi8vXG4vLyBBIHNlYXJjaCBzdHlsZSBpbnB1dCB3aXRoIHJvdW5kZWQgY29ybmVycyBhbmQgYW4gb3B0aW9uYWwgc2VhcmNoIGljb24gYXQgdGhlXG4vLyBlbmQuIFRha2VzIGFueSBjb2xvci5cbi8vXG4vLyBleC4gaW5wdXQtc2VhcmNoKClcbi8vIGV4LiBpbnB1dC1zZWFyY2g6IHllbGxvd1xuXG5pbnB1dC1zZWFyY2goJGNvbG9yID0gYXF1YSwgJHdpZHRoID0gMjUwcHgpXG4gIGlucHV0OiAkY29sb3IgJHdpZHRoXG4gIHBhZGRpbmctbGVmdDogOXB4XG4gIHJvdW5kZWQoKVxuXG4vLyBNaXhpbjogSW5wdXQgRGlzYWJsZWRcbi8vXG4vLyBNYWtlcyB5b3VyIGlucHV0IGFwcGVhciB0byBiZSBkaXNhYmxlZC4gTm90ZSB0aGF0IHlvdSBhbHNvIG5lZWQgdG8gYWRkXG4vLyAnZGlzYWJsZWQnIHRvIHlvdXIgaHRtbCB0YWcgaW4gb3JkZXIgZm9yIGl0IHRvIGFjdHVhbGx5IGJlIGRpc2FibGVkLlxuLy9cbi8vIGV4LiBpbnB1dC1kaXNhYmxlZCgpXG5cbmlucHV0LWRpc2FibGVkKClcbiAgY3Vyc29yOiBub3QtYWxsb3dlZFxuICBiYWNrZ3JvdW5kOiAjRjVGNUY1XG5cbiAgJjpob3ZlciwgJjpmb2N1c1xuICAgIGJvcmRlci1jb2xvcjogI2JiYlxuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKCMwMDAsIDAuMSlcblxuLy8gTWl4aW46IExhYmVsXG4vL1xuLy8gVmVyeSBiYXNpYyBsYWJlbCBmb3IgeW91ciBmb3JtLiBQYXNzIGl0IGFuIG9wdGlvbmFsIGRpc3BsYXkgdHlwZSB0byBoYXZlIGl0XG4vLyBpbmxpbmUgb3IgYmxvY2suXG4vL1xuLy8gZXguIGxhYmVsKClcbi8vIGV4LiBsYWJlbDogJ2Jsb2NrJ1xuXG5sYWJlbCgkZGlzcGxheSA9ICdpbmxpbmUtYmxvY2snKVxuICBsaW5lLWhlaWdodDogMS41ZW1cbiAgZGlzcGxheTogdW5xdW90ZSgkZGlzcGxheSlcblxuLy8gTWl4aW46IEZpZWxkXG4vL1xuLy8gT2Z0ZW4gdGltZXMgaXQncyBlYXNpZXIgdG8gd3JhcCB5b3VyIGlucHV0IGFuZCBsYWJlbCBpbiBhIGRpdiBjYWxsZWQgXCJmaWVsZFwiXG4vLyBzbyB0aGV5IGNhbiBiZSBmbG9hdGVkLCBwb3NpdGlvbiwgYW5kIG1hbmlwdWxhdGVkIHdpdGhvdXQgc2NyZXdpbmcgdXAgdGhlXG4vLyByZXN0IG9mIHRoZSBmb3JtLiBUaGF0J3Mgd2hhdCB0aGlzIG1peGluIGlzIGZvciAtIHB1dCBpdCBvbiBhIGRpdiB0aGF0XG4vLyBjb250YWlucyBhIGxhYmVsIGFuZCBhbiBpbnB1dC4gVGhlbiBmZWVkIGl0IGEgZGlyZWN0aW9uIHRvIGFsaWduIChkZWZhdWx0IGlzXG4vLyByaWdodCksIGFuZCBhbiBvcHRpb25hbCB3aWR0aC5cbi8vXG4vLyBleC4gZmllbGQoKVxuLy8gZXguIGZpZWxkOiBsZWZ0XG4vLyBleC4gZmllbGQ6IHJpZ2h0IDUwMHB4XG5cbmZpZWxkKCRkaXJlY3Rpb24gPSByaWdodCwgJHdpZHRoID0gMzcwcHgpXG4gIGNsZWFyOiBib3RoXG4gIG1hcmdpbi1ib3R0b206IDVweFxuICB0ZXh0LWFsaWduOiAkZGlyZWN0aW9uXG4gIHdpZHRoOiAkd2lkdGhcblxuLy8gTWl4aW46IElucHV0IEVycm9yXG4vL1xuLy8gV2hlbiBzb21lb25lIEYnZCBpdCB1cCwgeW91IGdvdHRhIHNob3cgdGhlbSBob3cgaXQgaXMuIFB1dCB0aGlzIG9uIGFuIGlucHV0XG4vLyB0byBtYWtlIGl0IGNsZWFyIHRoYXQgc29tZXRoaW5nIGJhZCBpcyBoYXBwZW5pbmcuIEJlc3QgaW1wbGVtZW50ZWQgaW4gYW5cbi8vIC5lcnJvciBjbGFzcyBvciBzb21ldGhpbmcgc2ltaWxhci5cbi8vXG4vLyBleC4gaW5wdXQtZXJyb3IoKVxuLy8gZXguIGlucHV0LWVycm9yOiBibHVlXG5cbmlucHV0LWVycm9yKCRjb2xvciA9ICRyZWQpXG4gIGNvbG9yOiAkY29sb3JcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JcbiAgLWZvY3VzLWdsb3coJGNvbG9yKVxuXG4vLyBNaXhpbjogRmllbGQgRXJyb3Jcbi8vXG4vLyBJZiB5b3UgYXJlIHdyYXBwaW5nIGxhYmVscyBhbmQgaW5wdXRzIGluIGEgZmllbGQgZGl2LCB0aGlzIG1ha2VzIGxpZmUgZXZlblxuLy8gZWFzaWVyLiBNYWtlcyB0aGUgbGFiZWwgdGV4dCBhcyB3ZWxsIGFzIHRoZSBpbnB1dCBmaWVsZCByZWQuXG4vL1xuLy8gZXguIGZpZWxkLWVycm9yKClcbi8vIGV4LiBmaWVsZC1lcnJvcjogYmx1ZVxuXG5maWVsZC1lcnJvcigkY29sb3IgPSAkcmVkKVxuICBjb2xvcjogJGNvbG9yXG5cbiAgaW5wdXRcbiAgICBpbnB1dC1lcnJvcjogJGNvbG9yXG5cbi8vIE1peGluOiBJbnB1dCBXYXJuaW5nXG4vL1xuLy8gT2ssIHNvIG1heWJlIHlvdSBkaWRuJ3QgdG90YWxseSBGIGl0IHVwLCBidXQgYXQgdmVyeSBsZWFzdCB5b3UgZGVzZXJ2ZSBhXG4vLyB3YXJuaW5nLiBCZXN0IGltcGxlbWVudGVkIGluIGEgLndhcm5pbmcgY2xhc3Mgb3Igc29tZXRoaW5nIHNpbWlsYXIuXG4vL1xuLy8gZXguIGlucHV0LXdhcm5pbmcoKVxuLy8gZXguIGlucHV0LXdhcm5pbmc6IGJsdWVcblxuaW5wdXQtd2FybmluZygkY29sb3IgPSAkeWVsbG93KVxuICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTUlKVxuICBib3JkZXItY29sb3I6ICRjb2xvclxuICAtZm9jdXMtZ2xvdygkY29sb3IpXG5cbi8vIE1peGluOiBGaWVsZCBXYXJuaW5nXG4vL1xuLy8gSWYgeW91IGFyZSB3cmFwcGluZyBsYWJlbHMgYW5kIGlucHV0cyBpbiBhIGZpZWxkIGRpdiwgdGhpcyBtYWtlcyBsaWZlIGV2ZW5cbi8vIGVhc2llci4gTWFrZXMgdGhlIGxhYmVsIHRleHQgYXMgd2VsbCBhcyB0aGUgaW5wdXQgZmllbGQgeWVsbG93LlxuLy9cbi8vIGV4LiBmaWVsZC13YXJuaW5nKClcbi8vIGV4LiBmaWVsZC13YXJuaW5nOiBibHVlXG5cbmZpZWxkLXdhcm5pbmcoJGNvbG9yID0gJHllbGxvdylcbiAgY29sb3I6IGRhcmtlbigkY29sb3IsIDE1JSlcblxuICBpbnB1dFxuICAgIGlucHV0LXdhcm5pbmc6ICRjb2xvclxuXG4vLyBNaXhpbjogSW5wdXQgU3VjY2Vzc1xuLy9cbi8vIGh0dHA6Ly9jbC5seS9GNEVtL2dyZWF0LXN1Y2Nlc3MuanBlZyAtIEJlc3QgaW1wbGVtZW50ZWQgaW4gYSAuc3VjY2VzcyBjbGFzc1xuLy8gb3Igc29tZXRoaW5nIHNpbWlsYXIuXG4vL1xuLy8gZXguIGlucHV0LXN1Y2Nlc3MoKVxuLy8gZXguIGlucHV0LXN1Y2Nlc3M6IHJlZFxuXG5pbnB1dC1zdWNjZXNzKCRjb2xvciA9ICRncmVlbilcbiAgY29sb3I6ICRjb2xvclxuICBib3JkZXItY29sb3I6ICRjb2xvclxuICAtZm9jdXMtZ2xvdygkY29sb3IpXG5cbi8vIE1peGluOiBGaWVsZCBTdWNjZXNzXG4vL1xuLy8gWW91J3JlIHByb2JhYmx5IGdldHRpbmcgdGlyZWQgb2YgdGhpcyByb3V0aW5lIGF0IHRoaXMgcG9pbnQuIEknbSBzdXJlIHlvdSBjYW5cbi8vIGltYWdpbmUgd2hhdCB0aGlzIGRvZXMuXG4vL1xuLy8gZXguIGZpZWxkLXN1Y2Nlc3MoKVxuLy8gZXguIGZpZWxkLXN1Y2Nlc3M6IGJsdWVcblxuZmllbGQtc3VjY2VzcygkY29sb3IgPSAkZ3JlZW4pXG4gIGNvbG9yOiAkY29sb3JcbiAgaW5wdXRcbiAgICBpbnB1dC1zdWNjZXNzOiAkY29sb3JcblxuLy8gTWl4aW46IFJhZGlvXG4vL1xuLy8gQSBzaW1wbGUgcmVzZXQgZm9yIHJhZGlvIGJ1dHRvbiBzdHlsaW5nIGFjcm9zcyBicm93c2Vycy4gVGFrZXMgYSBjb2xvci5cbi8vIERlZmF1bHQgY29sb3IgaXMgYmx1ZS4gVXNlIG9uIHRoZSA8bGFiZWw+IHdoaWNoIHdyYXBzIHlvdXIgcmFkaW8gaW5wdXRzLlxuLy9cbi8vIGV4LiByYWRpbygpXG4vLyBleC4gcmFkaW86IGdyYXlcbi8vIGV4LiByYWRpbygjRkYxNDkzKVxuXG5yYWRpbygkY29sb3IgPSAjMDA3NGQ5KVxuICBjdXJzb3I6IHBvaW50ZXJcbiAgZGlzcGxheTogYmxvY2tcbiAgbGluZS1oZWlnaHQ6IDIuNWVtXG5cbiAgLy8gQWNjZXNzaWJsZSBoaWRkZW4gc3R5bGVzXG4gIFt0eXBlPVwicmFkaW9cIl1cbiAgICBib3JkZXI6IDBcbiAgICBjbGlwOiByZWN0KDAgMCAwIDApXG4gICAgaGVpZ2h0OiAxcHhcbiAgICBtYXJnaW46IC0xcHhcbiAgICBvdmVyZmxvdzogaGlkZGVuXG4gICAgcGFkZGluZzogMFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZVxuICAgIHdpZHRoOiAxcHhcblxuICAgICYgKyBzcGFuXG4gICAgICBkaXNwbGF5OiBibG9ja1xuXG4gICAgLy8gVW5jaGVja2VkXG4gICAgJiArIHNwYW46YmVmb3JlXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCMwMDAsLjE1KVxuICAgICAgYm9yZGVyOiAwLjEyNWVtIHNvbGlkICNmZmZcbiAgICAgIGJvcmRlci1yYWRpdXM6IDFlbVxuICAgICAgYm94LXNoYWRvdzogMCAwIDAgLjFlbSByZ2JhKCMwMDAsIC4yNSlcbiAgICAgIGNvbnRlbnQ6ICcnXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2tcbiAgICAgIGhlaWdodDogMWVtXG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNzVlbVxuICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlIGFsbFxuICAgICAgdmVydGljYWwtYWxpZ246IC0wLjMzZW1cbiAgICAgIHdpZHRoOiAxZW1cblxuICAgIC8vIENoZWNrZWRcbiAgICAmOmNoZWNrZWQgKyBzcGFuOmJlZm9yZSwgJjpmb2N1cyArIHNwYW46YmVmb3JlXG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3JcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVlbSByZ2JhKCMwMDAsIC4xNSlcblxuLy8gTWl4aW46IFJhbmdlLWlucHV0XG4vL1xuLy8gQSBjbGVhbiwgY3Jvc3MtYnJvd3NlciBzdHlsaW5nIHJlc2V0IGZvciByYW5nZSBpbnB1dHMuXG4vLyBOb3RlOiByYW5nZSBpbnB1dHMgYXJlIG5vdCBzdXBwb3J0ZWQgaW4gSUU5IGFuZCBiZWxvdy5cbi8vIGh0dHA6Ly9jYW5pdXNlLmNvbS8jZmVhdD1pbnB1dC1yYW5nZVxuLy9cbi8vIGV4LiByYW5nZSgpXG4vLyBleC4gcmFuZ2U6IHRvbWF0byAyMDBweCAxNXB4IDlweCAjMzMzXG5cbnJhbmdlLWlucHV0KCRjb2xvciA9ICMwMDc0ZDksICR0cmFjay13aWR0aCA9IDEwMCUsICR0aHVtYi1zaXplID0gMmVtLCAkdHJhY2staGVpZ2h0ID0gLjVlbSwgJHRyYWNrLWNvbG9yID0gcmdiYSgjMDAwLCAuMSkpXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZVxuICB3aWR0aDogJHRyYWNrLXdpZHRoXG4gIG1hcmdpbjogMFxuICBvdXRsaW5lOiBub25lXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2tcbiAgICBiYWNrZ3JvdW5kOiAkdHJhY2stY29sb3JcbiAgICBib3JkZXI6IG5vbmVcbiAgICBib3JkZXItcmFkaXVzOiAkdHJhY2staGVpZ2h0XG4gICAgaGVpZ2h0OiAkdHJhY2staGVpZ2h0XG4gICAgd2lkdGg6ICR0cmFjay13aWR0aFxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lXG4gICAgYm9yZGVyOiBub25lXG4gICAgaGVpZ2h0OiAkdGh1bWItc2l6ZVxuICAgIHdpZHRoOiAkdGh1bWItc2l6ZVxuICAgIGJvcmRlci1yYWRpdXM6IDUwJVxuICAgIGJhY2tncm91bmQ6ICRjb2xvclxuICAgIG1hcmdpbi10b3A6IFwiY2FsYygtJXMgLyAyICsgJXMgLyAyKVwiICUgKCR0aHVtYi1zaXplICR0cmFjay1oZWlnaHQpXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZVxuXG4gICAgJjpob3ZlclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpXG4gICAgICBjdXJzb3I6IHBvaW50ZXJcblxuICAgICY6YWN0aXZlXG4gICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJGNvbG9yLCAxNSUpXG5cbiAgJjpmb2N1c1xuICAgIG91dGxpbmU6IG5vbmVcblxuICAmOmZvY3VzOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFja1xuICAgIGJhY2tncm91bmQ6ICR0cmFjay1jb2xvclxuXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2tcbiAgICB3aWR0aDogJHRyYWNrLXdpZHRoXG4gICAgaGVpZ2h0OiAkdHJhY2staGVpZ2h0XG4gICAgYmFja2dyb3VuZDogJHRyYWNrLWNvbG9yXG4gICAgYm9yZGVyOiBub25lXG4gICAgYm9yZGVyLXJhZGl1czogJHRyYWNrLWhlaWdodFxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWJcbiAgICBib3JkZXI6IG5vbmVcbiAgICBoZWlnaHQ6ICR0aHVtYi1zaXplXG4gICAgd2lkdGg6ICR0aHVtYi1zaXplXG4gICAgYm9yZGVyLXJhZGl1czogNTAlXG4gICAgYmFja2dyb3VuZDogJGNvbG9yXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZVxuXG4gICAgJjpob3ZlclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpXG5cbiAgICAmOmFjdGl2ZVxuICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRjb2xvciwgMTUlKVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXJcbiAgICBib3JkZXI6IDBcblxuICAmOjotbXMtdHJhY2tcbiAgICBoZWlnaHQ6ICR0cmFjay1oZWlnaHRcbiAgICB3aWR0aDogJHRyYWNrLXdpZHRoXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnRcbiAgICBib3JkZXItd2lkdGg6IFwiY2FsYyglcyAvIDIgKyAlcyAvIDIpXCIgJSAoJHRodW1iLXNpemUgJHRyYWNrLWhlaWdodCkgMFxuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAmOjotbXMtZmlsbC1sb3dlciwgJjo6LW1zLWZpbGwtdXBwZXIsICY6Zm9jdXM6Oi1tcy1maWxsLWxvd2VyLCAmOmZvY3VzOjotbXMtZmlsbC11cHBlclxuICAgIGJhY2tncm91bmQ6ICR0cmFjay1jb2xvclxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHhcblxuICAmOjotbXMtdGh1bWJcbiAgICBib3JkZXI6IG5vbmVcbiAgICBoZWlnaHQ6IDJlbVxuICAgIHdpZHRoOiAyZW1cbiAgICBib3JkZXItcmFkaXVzOiA1MCVcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JcblxuICAgICY6YWN0aXZlXG4gICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJGNvbG9yLCAxNSUpXG5cbiAgJjo6LW1zLXRvb2x0aXBcbiAgICBkaXNwbGF5OiBub25lXG5cblxuLy8gQWRkaXRpdmUgTWl4aW46IEZpZWxkc1xuLy9cbi8vIFdBUk5JTkc6IENyZWF0ZXMgY2xhc3NlcyBpbiB5b3VyIGNzcyBhbmQgc3R5bGVzIHRoZW0gLSBub3QgdG8gYmUgdXNlZCBpbnNpZGVcbi8vIGFuIGVsZW1lbnQuXG4vL1xuLy8gQWRkIHRoZSBmaWVsZCBzdHlsZXMgdG8gLmZpZWxkIGFzIHdlbGwgYXMgc3VjY2Vzcywgd2FybmluZywgYW5kIGZhaWx1cmVcbi8vIHN0YXRlcy4gQWxzbyB0YWtlcyBkaXJlY3Rpb24gYW5kIHdpZHRoLiBIaWdobHkgcmVjb21tZW5kZWQgbWl4aW4uXG5cbmZpZWxkcygkZGlyZWN0aW9uID0gcmlnaHQsICR3aWR0aCA9IDM3MHB4KVxuICAuZmllbGRcbiAgICBmaWVsZCgkZGlyZWN0aW9uLCAkd2lkdGgpXG5cbiAgICAmLnN1Y2Nlc3NcbiAgICAgIGZpZWxkLXN1Y2Nlc3MoKVxuICAgICYud2FybmluZ1xuICAgICAgZmllbGQtd2FybmluZygpXG4gICAgJi5lcnJvclxuICAgICAgZmllbGQtZXJyb3IoKVxuXG4vLyBNaXhpbjogQXV0b2ZpbGxcblxuLy8gV2hlbiBmb3JtcyBhcmUgYXV0by1maWxsZWQsIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgaW5wdXRzIChpZTogcGFsZVxuLy8geWVsbG93KSBjYW4gYmUgdmVyeSBqYXJyaW5nLCBlc3BlY2lhbGx5IGlmIHlvdSBoYXZlIGEgZGFyayBiYWNrZ3JvdW5kLiAgVGhpc1xuLy8gYWxsb3dzIHlvdSB0byBvdmVycmlkZSB0aGF0LiBUYWtlcyBiYWNrZ3JvdW5kIGNvbG9yIGFuZCB0ZXh0IGNvbG9yLlxuXG4vLyBleC4gYXV0b2ZpbGwocmVkLCB5ZWxsb3cpXG5cbmF1dG9maWxsKCRiYWNrZ3JvdW5kID0gIzAwNzREOSwgJGNvbG9yID0gI2ZmZilcbiAgJjotd2Via2l0LWF1dG9maWxsXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93IDAgMCAwcHggMTAwMHB4ICRiYWNrZ3JvdW5kIGluc2V0XG4gICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3IgJGNvbG9yICFpbXBvcnRhbnRcbiAgJjotbW96LWF1dG9maWxsXG4gICAgLW1vei10ZXh0LWZpbGwtY29sb3IgJGNvbG9yICFpbXBvcnRhbnRcbiAgICAtbW96LWJveC1zaGFkb3cgMCAwIDBweCAxMDAwcHggJGJhY2tncm91bmQgaW5zZXRcbiAgJjotby1hdXRvZmlsbFxuICAgIC1vLXRleHQtZmlsbC1jb2xvciBAY29sb3IgIWltcG9ydGFudFxuICAgIC1vLWJveC1zaGFkb3cgMCAwIDBweCAxMDAwcHggJGJhY2tncm91bmQgaW5zZXRcbiAgJjota2h0bWwtYXV0b2ZpbGxcbiAgICAta2h0bWwtdGV4dC1maWxsLWNvbG9yICRjb2xvciAhaW1wb3J0YW50XG4gICAgLWtodG1sLWJveC1zaGFkb3cgMCAwIDBweCAxMDAwcHggJGJhY2tncm91bmQgaW5zZXRcblxuXG4vLyBBZGRpdGl2ZSBNaXhpbjogRm9ybXNcbi8vXG4vLyBXQVJOSU5HOiBDcmVhdGVzIGNsYXNzZXMgaW4geW91ciBjc3MgYW5kIHN0eWxlcyB0aGVtIC0gbm90IHRvIGJlIHVzZWQgaW5zaWRlXG4vLyBhbiBlbGVtZW50LlxuLy9cbi8vIEFkZHMgbmljZXIgbG9va2luZyBzdHlsZXMgdG8gYWxsIHRleHQgaW5wdXRzIGFuZCB0ZXh0YXJlYXMuIE92ZXJyaWRlcyB0aGVcbi8vIGRlZmF1bHRzLlxuXG5mb3JtcygpXG4gICtodG1sNS1pbnB1dHMoKVxuICAgIGlucHV0KClcblxuICAgICYuZGlzYWJsZWRcbiAgICAgIGlucHV0LWRpc2FibGVkKClcbiAgICAmLnN1Y2Nlc3NcbiAgICAgIGlucHV0LXN1Y2Nlc3MoKVxuICAgICYud2FybmluZ1xuICAgICAgaW5wdXQtd2FybmluZygpXG4gICAgJi5lcnJvclxuICAgICAgaW5wdXQtZXJyb3IoKVxuXG4vLyBCbG9jayBNaXhpbjogSHRtbCA1IElucHV0c1xuLy9cbi8vIEEgYmxvY2sgdGhhdCBzZWxlY3RzIGFsbCB0aGUgaHRtbDUgaW5wdXQgdHlwZXMgYW5kIGxldHMgeW91IHN0eWxlIHRoZW0gYXNcbi8vIHlvdSB3aXNoIHdpdGhvdXQgaGF2aW5nIHRvIHR5cGUgb3V0IHRoZSB3aG9sZSBsaXN0LlxuLy9cbi8vIGV4LiAraHRtbDUtaW5wdXRzKClcbi8vICAgICAgIGJvcmRlcjogcmVkXG5cbmh0bWw1LWlucHV0cygpXG4gIGlucHV0W3R5cGU9J2VtYWlsJ11cbiAgaW5wdXRbdHlwZT0nbnVtYmVyJ11cbiAgaW5wdXRbdHlwZT0ncGFzc3dvcmQnXVxuICBpbnB1dFt0eXBlPSdzZWFyY2gnXVxuICBpbnB1dFt0eXBlPSd0ZWwnXVxuICBpbnB1dFt0eXBlPSd0ZXh0J11cbiAgaW5wdXRbdHlwZT0ndXJsJ11cbiAgaW5wdXRbdHlwZT0nY29sb3InXVxuICBpbnB1dFt0eXBlPSdkYXRlJ11cbiAgaW5wdXRbdHlwZT0nZGF0ZXRpbWUnXVxuICBpbnB1dFt0eXBlPSdkYXRldGltZS1sb2NhbCddXG4gIGlucHV0W3R5cGU9J21vbnRoJ11cbiAgaW5wdXRbdHlwZT0ndGltZSddXG4gIGlucHV0W3R5cGU9J3dlZWsnXVxuICB0ZXh0YXJlYVxuICAgIHtibG9ja31cbiIsIi8vIC0tLS0tLS1cbi8vIEJ1dHRvbnNcbi8vIC0tLS0tLS1cblxuLy8gRnVuY3Rpb246IGhpZ2hsaWdodFxuLy9cbi8vIEFkZHMgYSBsaWdodCBicmlnaHRlciBsaW5lIGFjcm9zcyB0aGUgdG9wIG9mIHRoZSBlbGVtZW50IGZvciBhIHBlcnNwZWN0aXZlXG4vLyBlZmZlY3QuIFRha2VzIGFuIG9wdGlvbmFsIGFyZ3VtZW50IGZvciBzdHJlbmd0aCwgd2hpY2ggdGFrZXMgYSB2YWx1ZSBiZXR3ZWVuXG4vLyAwIGFuZCAxLlxuLy9cbi8vIGV4LiBoaWdobGlnaHQoKVxuLy8gZXguIGhpZ2hsaWdodDogLjdcblxuLWhpZ2hsaWdodCgkc3RyZW5ndGggPSAuMylcbiAgYm94LXNoYWRvdzogcyhcImluc2V0IDAgMXB4IDAgJXNcIiwgcmdiYSgyNTUsMjU1LDI1NSwkc3RyZW5ndGgpKVxuXG4vLyBGdW5jdGlvbjogcGFyc2Vcbi8vIFVzZWQgaW50ZXJuYWxseSBmb3Igc2V0dGluZyBidXR0b24gc2l6ZXMuXG5cbi1wYXJzZSgkc2l6ZSlcbiAgaWYgJHNpemUgPT0gXCJzbWFsbFwiXG4gICAgcmV0dXJuIDEwXG4gIGVsc2UgaWYgJHNpemUgPT0gXCJtZWRpdW1cIlxuICAgIHJldHVybiAxM1xuICBlbHNlIGlmICRzaXplID09IFwibGFyZ2VcIlxuICAgIHJldHVybiAxOFxuICBlbHNlXG4gICAgcmV0dXJuICRzaXplXG5cbi8vIE1peGluOiBCdXR0b25cbi8vXG4vLyBDcmVhdGVzIGEgdmVyeSBiYXNpYyBsb29raW5nIGJ1dHRvbiBzdHlsZS4gVGhyZWUgb3B0aW9uYWwgcGFyYW1zOlxuLy8gLSBjb2xvcjogVGFrZXMgYW55IGNvbG9yLCBkZWZhdWx0cyB0byB0aGUgZGVmYXVsdCBnbG9iYWwgY29sb3Jcbi8vIC0gc2l6ZTogVGFrZXMgJ3NtYWxsJywgJ21lZGl1bScsICdsYXJnZScsIG9yIGFuIGludGVnZXIuIFRoZSBudW1iZXJzIHJlZmxlY3Rcbi8vICAgdGhlIGZvbnQgc2l6ZSBmb3IgdGhlIHRleHQgaW5zaWRlIHRoZSBidXR0b24sIGJ1dCBzY2FsZXMgYWxsIG90aGVyIGFzcGVjdHNcbi8vICAgYXMgd2VsbCAoY29ybmVycywgcGFkZGluZywgZXRjKS5cbi8vIC0gJHRleHQtY29sb3I6IFRha2VzIGFueSBjb2xvciBmb3IgdGhlIGJ1dHRvbiB0ZXh0LCBkZWZhdWx0cyB0byB0cnlpbmcgdG9cbi8vICAgZGV0ZWN0IHdoZXRoZXIgdGhlIGJhY2tncm91bmQgaXMgZGFyayBvciBsaWdodCBhbmQgc2V0dGluZyB0aGUgb3Bwb3NpdGUuXG4vL1xuLy8gZXguIGJ1dHRvbigpXG4vLyBleC4gYnV0dG9uOiBibHVlXG4vLyBleC4gYnV0dG9uOiAjRDQ1MTNCXG4vLyBleC4gYnV0dG9uOiBncmVlbiBsYXJnZVxuLy8gZXguIGJ1dHRvbjogIzRDODJENCAyNFxuXG5idXR0b24oJGNvbG9yID0gJGRlZmF1bHQtY29sb3IsICRzaXplID0gXCJtZWRpdW1cIiwgJHRleHQtY29sb3IgPSBudWxsKVxuXG4gIC8vIGNvbG9yIGRldGVjdGlvbiBhbmQgY2hhbmdlc1xuICAkdGV4dC1jb2xvciA9IChsaWdodChkYXJrZW4oJGNvbG9yLCAyMiUpKSA/IHJnYmEoIzAwMCwgLjcpIDogI2ZmZikgdW5sZXNzICR0ZXh0LWNvbG9yXG4gICRwYXJzZWQtc2l6ZSA9IC1wYXJzZSgkc2l6ZSlcblxuICAvLyBub3cgdGhhdCB3ZSd2ZSBnb3QgbnVtYmVycywgbGV0J3Mgd29yayBzb21lIHByb3BvcnRpb25zXG4gICRoZWlnaHQgPSByb3VuZCgoJHBhcnNlZC1zaXplICogMS41M3B4KSAvIDIpXG4gICR3aWR0aCA9IHJvdW5kKCgoJHBhcnNlZC1zaXplICogMS41M3B4KSAqIDIuMikgLyAyKVxuXG4gIC8vIGR5bmFtaWNhbGx5IGNhbGN1bGF0ZWQgc3R5bGVzXG4gIGZvbnQtc2l6ZTogdW5pdCgkcGFyc2VkLXNpemUsICdweCcpXG4gIHBhZGRpbmc6IHVuaXQoJGhlaWdodCwgJ3B4JykgdW5pdCgkd2lkdGgsICdweCcpXG4gIGJvcmRlci1yYWRpdXM6IHJvdW5kKCRwYXJzZWQtc2l6ZSAvIDQuMzMzMzNweClcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yXG4gIGNvbG9yOiAkdGV4dC1jb2xvclxuXG4gIC8vIGNvbnN0YW50IHN0eWxlc1xuICBjdXJzb3I6IHBvaW50ZXJcbiAgZm9udC13ZWlnaHQ6IGJvbGRcbiAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrXG4gIGxpbmUtaGVpZ2h0OiAxZW1cbiAgdGV4dC1hbGlnbjogY2VudGVyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZVxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2tcbiAgYm9yZGVyOiBub25lXG4gIG5vLXNlbGVjdCgpXG5cbiAgJjpob3ZlciwgJjpmb2N1c1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDUlKVxuICAgIGNvbG9yOiBkYXJrZW4oJHRleHQtY29sb3IsIDMlKVxuICAgIGJvcmRlcjogbm9uZVxuXG4gICY6YWN0aXZlXG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKVxuXG4vLyBNaXhpbjogR2xvc3N5IEJ1dHRvblxuLy9cbi8vIENyZWF0ZXMgYSBtb3JlIGZhbmN5IGxvb2tpbmcgYnV0dG9uIHN0eWxlLiBGaXZlIG9wdGlvbmFsIHBhcmFtczpcbi8vIC0gY29sb3I6IFRha2VzIGFueSBjb2xvciwgZGVmYXVsdHMgdG8gdGhlIGRlZmF1bHQgZ2xvYmFsIGNvbG9yXG4vLyAtIHNpemU6IFRha2VzICdzbWFsbCcsICdtZWRpdW0nLCAnbGFyZ2UnLCBvciBhbiBpbnRlZ2VyLiBUaGUgbnVtYmVycyByZWZsZWN0c1xuLy8gICB0aGUgZm9udCBzaXplIGZvciB0aGUgdGV4dCBpbnNpZGUgdGhlIGJ1dHRvbiwgYnV0IHNjYWxlcyBhbGwgb3RoZXIgYXNwZWN0c1xuLy8gICBhcyB3ZWxsLlxuLy8gLSAkdGV4dC1jb2xvcjogVGFrZXMgYW55IGNvbG9yIGZvciB0aGUgYnV0dG9uIHRleHQsIGRlZmF1bHRzIHRvIHRyeWluZyB0b1xuLy8gICBkZXRlY3Qgd2hldGhlciB0aGUgYmFja2dyb3VuZCBpcyBkYXJrIG9yIGxpZ2h0IGFuZCBzZXR0aW5nIHRoZSBvcHBvc2l0ZS5cbi8vIC0gJHNoYWRvdy1jb2xvcjogQ29sb3IgZm9yIHRoZSB0ZXh0IHNoYWRvdywgZGVmYXVsdCBpcyB0aGUgY29udHJhc3QgZGV0ZWN0aW9uXG4vLyAgIGRlc2NyaWJlZCBhYm92ZS5cbi8vIC0gJGhvdmVyLWNvbG9yOiBDb2xvciBvZiB0aGUgdGV4dCBzaGFkb3cgd2hlbiBob3ZlcmVkLiBEZWZhdWx0IGlzIGNvbnRyYXN0XG4vLyAgIGRldGVjdGlvbiBhcyBkZXNjcmliZWQgYWJvdmUuIFlvdSBwcm9iYWJseSBkb24ndCBuZWVkIHRvIHVzZSB0aGlzLlxuLy9cbi8vIGV4LiBnbG9zc3ktYnV0dG9uKClcbi8vIGV4LiBnbG9zc3ktYnV0dG9uOiBibHVlXG4vLyBleC4gZ2xvc3N5LWJ1dHRvbjogI0Q0NTEzQlxuLy8gZXguIGdsb3NzeS1idXR0b246IGdyZWVuIGxhcmdlXG4vLyBleC4gZ2xvc3N5LWJ1dHRvbjogIzRDODJENCAyNFxuXG5nbG9zc3ktYnV0dG9uKCRjb2xvciA9ICRkZWZhdWx0LWNvbG9yLCAkc2l6ZSA9IFwibWVkaXVtXCIsICR0ZXh0LWNvbG9yID0gbnVsbCwgJHNoYWRvdy1jb2xvciA9IG51bGwsICRob3Zlci1jb2xvciA9IG51bGwpXG5cbiAgLy8gY29sb3IgZGV0ZWN0aW9uIGFuZCBjaGFuZ2VzXG4gIGlmICR0ZXh0LWNvbG9yXG4gICAgJGRhcmstdGV4dCA9IGxpZ2h0KCR0ZXh0LWNvbG9yKSA/IHRydWUgOiBmYWxzZVxuICBlbHNlXG4gICAgJGRhcmstdGV4dCA9IGxpZ2h0KGRhcmtlbigkY29sb3IsIDIyJSkpID8gZmFsc2UgOiB0cnVlXG4gICAgJHRleHQtY29sb3IgPSAkZGFyay10ZXh0ID8gd2hpdGUgOiByZ2JhKCMwMDAsIC43KVxuXG4gICRzaGFkb3ctY29sb3IgPSAkZGFyay10ZXh0ID8gcmdiYSgjMDAwLC4xKSA6IHJnYmEoI2ZmZiwuMykgdW5sZXNzICRzaGFkb3ctY29sb3JcbiAgJGhvdmVyLWNvbG9yID0gJGRhcmstdGV4dCA/IHJnYmEoIzAwMCwuMikgOiByZ2JhKCNmZmYsLjUpIHVubGVzcyAkaG92ZXItY29sb3JcbiAgJGRvd24tc2hhZG93ID0gJGRhcmstdGV4dCA/IDAgLTFweCAxcHggcmdiYSgjMDAwLC4yKSA6IDFweCAxcHggMXB4IHJnYmEoI2ZmZiwuNilcblxuICAvLyBwYXJzZSB3b3JkcywgbWFrZSBzdXJlIGl0J3MgYSBudW1iZXJcbiAgJHBhcnNlZC1zaXplID0gLXBhcnNlKCRzaXplKVxuXG4gIC8vIG5vdyB0aGF0IHdlJ3ZlIGdvdCBudW1iZXJzLCBsZXQncyB3b3JrIHNvbWUgcHJvcG9ydGlvbnNcbiAgJGhlaWdodCA9IHJvdW5kKCgkcGFyc2VkLXNpemUqMS41M3B4KS8yKVxuICAkd2lkdGggPSByb3VuZCgoKCRwYXJzZWQtc2l6ZSoxLjUzcHgpKjIuMikvMilcblxuICAvLyBkeW5hbWljYWxseSBjYWxjdWxhdGVkIHN0eWxlc1xuICBmb250LXNpemU6IHVuaXQoJHBhcnNlZC1zaXplLCAncHgnKVxuICBwYWRkaW5nOiB1bml0KCRoZWlnaHQsICdweCcpIHVuaXQoJHdpZHRoLCAncHgnKVxuICBib3JkZXItcmFkaXVzOiByb3VuZCgkcGFyc2VkLXNpemUvNC4zMzMzM3B4KVxuICBncmFkaWVudCgkY29sb3IpXG4gIHRleHQtc2hhZG93OiAxcHggMXB4IDFweCAkc2hhZG93LWNvbG9yXG4gIGJvcmRlcjogcygnMXB4IHNvbGlkICVzJywgZGFya2VuKCRjb2xvciwgMTAlKSlcbiAgY29sb3I6ICR0ZXh0LWNvbG9yXG5cbiAgLy8gY29uc3RhbnQgc3R5bGVzXG4gIC1oaWdobGlnaHQoKVxuICBjdXJzb3I6IHBvaW50ZXJcbiAgZm9udC13ZWlnaHQ6IGJvbGRcbiAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrXG4gIGxpbmUtaGVpZ2h0OiAxZW1cbiAgdGV4dC1hbGlnbjogY2VudGVyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZVxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2tcbiAgbm8tc2VsZWN0KClcblxuICAmOmhvdmVyLCAmOmZvY3VzXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCB1bml0KCRoZWlnaHQgKiAtMSwgJ3B4JylcbiAgICBjb2xvcjogZGFya2VuKCR0ZXh0LWNvbG9yLCAzJSlcbiAgICB0ZXh0LXNoYWRvdzogMXB4IDFweCAxcHggJGhvdmVyLWNvbG9yXG5cbiAgJjphY3RpdmVcbiAgICBib3gtc2hhZG93OiBzKFwiaW5zZXQgMCAxcHggJXMgJXNcIiwgJHBhcnNlZC1zaXplLzIuNnB4LCByZ2JhKGRhcmtlbigkY29sb3IsIDI1JSksLjYpKVxuICAgIHRleHQtc2hhZG93OiAkZG93bi1zaGFkb3dcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkY29sb3IsIDE4JSlcblxuLy8gTWl4aW46IEJ1dHRvbiBEaXNhYmxlZFxuLy9cbi8vIEFkZCB0aGlzIG1peGluIHRvIGEgYnV0dG9uIGFuZCBpdCB3aWxsIG1ha2UgdGhlIGJ1dHRvbiBhcHBlYXIgdG8gYmUgZGlzYWJsZWQuXG4vLyBUcnkgYXR0YWNoaW5nIHRvIGEgY2xhc3MgbGlrZSAuZGlzYWJsZWQgYW5kIGFkZGluZyB0aGF0IGNsYXNzIHRvIHRoZSBidXR0b24uXG4vLyBUYWtlcyBubyBhcmd1bWVudHMuXG4vL1xuLy8gZXguIC5kaXNhYmxlZFxuLy8gICAgICAgYnV0dG9uLWRpc2FibGVkKClcblxuYnV0dG9uLWRpc2FibGVkKClcbiAgYmFja2dyb3VuZDogI2NjY1xuICBib3JkZXItY29sb3I6IGRhcmtlbigjY2NjLCAxMCUpXG4gIG9wYWNpdHk6IC41XG4gIGN1cnNvcjogZGVmYXVsdFxuICBuby1zZWxlY3QoKVxuXG4gICY6aG92ZXJcbiAgICBiYWNrZ3JvdW5kOiAjY2NjXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwXG5cbiAgJjphY3RpdmVcbiAgICBiYWNrZ3JvdW5kOiAjY2NjXG4gICAgYm94LXNoYWRvdzogbm9uZVxuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCNjY2MsIDEwJSlcbiAgICB0ZXh0LXNoYWRvdzogMXB4IDFweCAxcHggcmdiYSgjMDAwLC4xKVxuXG4vLyBBZGRpdGl2ZSBNaXhpbjogQnV0dG9uc1xuLy9cbi8vIFdBUk5JTkc6IENyZWF0ZXMgY2xhc3NlcyBpbiB5b3VyIGNzcyBhbmQgc3R5bGVzIHRoZW0gLSBub3QgdG8gYmUgdXNlZCBpbnNpZGVcbi8vIGFuIGVsZW1lbnQuXG4vL1xuLy8gVGhpcyBtaXhpbiBtYWtlcyBpdCBzdWNoIHRoYXQgeW91IGNhbiB1c2UgY2xhc3NlcyB0byBkZWZpbmUgYnV0dG9ucyBvbiB5b3VyXG4vLyBwYWdlLlxuLy8gLSAuYnRuOiBjcmVhdGVzIGEgc2ltcGxlIGJ1dHRvblxuLy8gLSAuYnRuLWZhbmN5OiBjcmVhdGVzIGEgZmFuY3kgYnV0dG9uXG4vLyAtIC5kaXNhYmxlZDogZGlzYWJsZXMgYW4gZXhpc3RpbmcgYnV0dG9uICh3aWxsIG9ubHkgd29yayBvbiAuYnRuIGFuZFxuLy8gICAuYnRuLXNpbXBsZSlcblxuYnV0dG9ucygpXG4gIC5idG5cbiAgICB0cmFuc2l0aW9uKClcbiAgICBidXR0b24oKVxuICAuYnRuLWZhbmN5XG4gICAgdHJhbnNpdGlvbigpXG4gICAgZ2xvc3N5LWJ1dHRvbigpXG4gIC5idG4uZGlzYWJsZWQsIC5idG4tc2ltcGxlLmRpc2FibGVkXG4gICAgYnV0dG9uLWRpc2FibGVkKClcbiJdfQ== */
