/*!
 * Bootstrap v3.3.5 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

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

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

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

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

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

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

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

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

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

small {
  font-size: 80%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

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

figure {
  margin: 1em 40px;
}

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

pre {
  overflow: auto;
}

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

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

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

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

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

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

input {
  line-height: normal;
}

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

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

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

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

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

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

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

td,
th {
  padding: 0;
}

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

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

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

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

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

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

a {
  color: #337ab7;
  text-decoration: none;
}

a:hover, a:focus {
  color: #23527c;
  text-decoration: underline;
}

a:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

figure {
  margin: 0;
}

img {
  vertical-align: middle;
}

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

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

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

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

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

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

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

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

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

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

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

h1 small,
h1 .small, .h1 small,
.h1 .small,
h2 small,
h2 .small, .h2 small,
.h2 .small,
h3 small,
h3 .small, .h3 small,
.h3 .small {
  font-size: 65%;
}

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

h4 small,
h4 .small, .h4 small,
.h4 .small,
h5 small,
h5 .small, .h5 small,
.h5 .small,
h6 small,
h6 .small, .h6 small,
.h6 .small {
  font-size: 75%;
}

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

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

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

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

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

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

p {
  margin: 0 0 10px;
}

.lead {
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.4;
}

@media (min-width: 768px) {
  .lead {
    font-size: 21px;
  }
}

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

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

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

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

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

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

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

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

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

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

.text-muted {
  color: #777777;
}

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

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

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

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

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

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

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

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

.text-danger {
  color: #a94442;
}

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

.bg-primary {
  color: #fff;
}

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

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

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

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

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

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

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

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

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

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

.page-header {
  padding-bottom: 9px;
  margin: 40px 0 20px;
  border-bottom: 1px solid #eeeeee;
}

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

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

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

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

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

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

dt,
dd {
  line-height: 1.42857;
}

dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

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

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

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

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

.initialism {
  font-size: 90%;
}

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

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

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

blockquote footer:before,
blockquote small:before,
blockquote .small:before {
  content: '\2014 \00A0';
}

.blockquote-reverse,
blockquote.pull-right {
  padding-right: 15px;
  padding-left: 0;
  border-right: 5px solid #eeeeee;
  border-left: 0;
  text-align: right;
}

.blockquote-reverse footer:before,
.blockquote-reverse small:before,
.blockquote-reverse .small:before,
blockquote.pull-right footer:before,
blockquote.pull-right small:before,
blockquote.pull-right .small:before {
  content: '';
}

.blockquote-reverse footer:after,
.blockquote-reverse small:after,
.blockquote-reverse .small:after,
blockquote.pull-right footer:after,
blockquote.pull-right small:after,
blockquote.pull-right .small:after {
  content: '\00A0 \2014';
}

address {
  margin-bottom: 20px;
  font-style: normal;
  line-height: 1.42857;
}

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

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

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

kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: bold;
  box-shadow: none;
}

pre {
  display: block;
  padding: 9.5px;
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.42857;
  word-break: break-all;
  word-wrap: break-word;
  color: #333333;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 4px;
}

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

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

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

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

.container:after {
  clear: both;
}

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

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

@media (min-width: 1200px) {
  .container {
    width: 1170px;
  }
}

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

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

.container-fluid:after {
  clear: both;
}

.row {
  margin-left: -15px;
  margin-right: -15px;
}

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

.row:after {
  clear: both;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

table {
  background-color: transparent;
}

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

th {
  text-align: left;
}

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

.table > thead > tr > th,
.table > thead > tr > td,
.table > tbody > tr > th,
.table > tbody > tr > td,
.table > tfoot > tr > th,
.table > tfoot > tr > td {
  padding: 8px;
  line-height: 1.42857;
  vertical-align: top;
  border-top: 1px solid #ddd;
}

.table > thead > tr > th {
  vertical-align: bottom;
  border-bottom: 2px solid #ddd;
}

.table > caption + thead > tr:first-child > th,
.table > caption + thead > tr:first-child > td,
.table > colgroup + thead > tr:first-child > th,
.table > colgroup + thead > tr:first-child > td,
.table > thead:first-child > tr:first-child > th,
.table > thead:first-child > tr:first-child > td {
  border-top: 0;
}

.table > tbody + tbody {
  border-top: 2px solid #ddd;
}

.table .table {
  background-color: #fff;
}

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

.table-bordered {
  border: 1px solid #ddd;
}

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

.table-bordered > thead > tr > th,
.table-bordered > thead > tr > td {
  border-bottom-width: 2px;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

textarea.form-control {
  height: auto;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.input-lg, .input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px;
}

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

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

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

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

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

.form-group-lg .form-control-static {
  height: 46px;
  min-height: 38px;
  padding: 11px 16px;
  font-size: 18px;
  line-height: 1.33333;
}

.has-feedback {
  position: relative;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.btn:focus, .btn.focus, .btn:active:focus, .btn:active.focus, .btn.active:focus, .btn.active.focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

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

.btn:active, .btn.active {
  outline: 0;
  background-image: none;
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn.disabled, .btn[disabled],
fieldset[disabled] .btn {
  cursor: not-allowed;
  opacity: 0.65;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
  box-shadow: none;
}

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

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

.btn-default:focus, .btn-default.focus {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}

.btn-default:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}

.btn-default:active, .btn-default.active,
.open > .btn-default.dropdown-toggle {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}

.btn-default:active:hover, .btn-default:active:focus, .btn-default:active.focus, .btn-default.active:hover, .btn-default.active:focus, .btn-default.active.focus,
.open > .btn-default.dropdown-toggle:hover,
.open > .btn-default.dropdown-toggle:focus,
.open > .btn-default.dropdown-toggle.focus {
  color: #333;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}

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

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

.btn-default .badge {
  color: #fff;
  background-color: #333;
}

.btn-primary {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
}

.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: #286090;
  border-color: #122b40;
}

.btn-primary:hover {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}

.btn-primary:active, .btn-primary.active,
.open > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}

.btn-primary:active:hover, .btn-primary:active:focus, .btn-primary:active.focus, .btn-primary.active:hover, .btn-primary.active:focus, .btn-primary.active.focus,
.open > .btn-primary.dropdown-toggle:hover,
.open > .btn-primary.dropdown-toggle:focus,
.open > .btn-primary.dropdown-toggle.focus {
  color: #fff;
  background-color: #204d74;
  border-color: #122b40;
}

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

.btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus,
fieldset[disabled] .btn-primary:hover,
fieldset[disabled] .btn-primary:focus,
fieldset[disabled] .btn-primary.focus {
  background-color: #337ab7;
  border-color: #2e6da4;
}

.btn-primary .badge {
  color: #337ab7;
  background-color: #fff;
}

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

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

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

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

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

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

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

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

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

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

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

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

.btn-info:active:hover, .btn-info:active:focus, .btn-info:active.focus, .btn-info.active:hover, .btn-info.active:focus, .btn-info.active.focus,
.open > .btn-info.dropdown-toggle:hover,
.open > .btn-info.dropdown-toggle:focus,
.open > .btn-info.dropdown-toggle.focus {
  color: #fff;
  background-color: #269abc;
  border-color: #1b6d85;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.btn-link {
  color: #337ab7;
  font-weight: normal;
  border-radius: 0;
}

.btn-link, .btn-link:active, .btn-link.active, .btn-link[disabled],
fieldset[disabled] .btn-link {
  background-color: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.btn-link, .btn-link:hover, .btn-link:focus, .btn-link:active {
  border-color: transparent;
}

.btn-link:hover, .btn-link:focus {
  color: #23527c;
  text-decoration: underline;
  background-color: transparent;
}

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

.btn-lg, .btn-group-lg > .btn {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px;
}

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

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

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

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

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

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

.fade.in {
  opacity: 1;
}

.collapse {
  display: none;
}

.collapse.in {
  display: block;
}

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

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

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

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

.dropup,
.dropdown {
  position: relative;
}

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

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  list-style: none;
  font-size: 14px;
  text-align: left;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background-clip: padding-box;
}

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

.dropdown-menu .divider {
  height: 1px;
  margin: 9px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}

.dropdown-menu > li > a {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 1.42857;
  color: #333333;
  white-space: nowrap;
}

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

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

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

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

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

.open > a {
  outline: 0;
}

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

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

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

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

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

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

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

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

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-block;
  vertical-align: middle;
}

.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  float: left;
}

.btn-group > .btn:hover, .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:hover,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 2;
}

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

.btn-toolbar {
  margin-left: -5px;
}

.btn-toolbar:before, .btn-toolbar:after {
  content: " ";
  display: table;
}

.btn-toolbar:after {
  clear: both;
}

.btn-toolbar .btn,
.btn-toolbar .btn-group,
.btn-toolbar .input-group {
  float: left;
}

.btn-toolbar > .btn,
.btn-toolbar > .btn-group,
.btn-toolbar > .input-group {
  margin-left: 5px;
}

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

.btn-group > .btn:first-child {
  margin-left: 0;
}

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

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

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

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

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

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

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

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

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

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

.btn-group.open .dropdown-toggle.btn-link {
  -webkit-box-shadow: none;
  box-shadow: none;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
}

.btn-group-justified > .btn,
.btn-group-justified > .btn-group {
  float: none;
  display: table-cell;
  width: 1%;
}

.btn-group-justified > .btn-group .btn {
  width: 100%;
}

.btn-group-justified > .btn-group .dropdown-menu {
  left: auto;
}

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

.input-group {
  position: relative;
  display: table;
  border-collapse: separate;
}

.input-group[class*="col-"] {
  float: none;
  padding-left: 0;
  padding-right: 0;
}

.input-group .form-control {
  position: relative;
  z-index: 2;
  float: left;
  width: 100%;
  margin-bottom: 0;
}

.input-group .form-control:focus {
  z-index: 3;
}

.input-group-addon,
.input-group-btn,
.input-group .form-control {
  display: table-cell;
}

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

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

.input-group-addon {
  padding: 6px 12px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  color: #555555;
  text-align: center;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  border-radius: 4px;
}

.input-group-addon.input-sm,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .input-group-addon.btn {
  padding: 5px 10px;
  font-size: 12px;
  border-radius: 3px;
}

.input-group-addon.input-lg,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .input-group-addon.btn {
  padding: 10px 16px;
  font-size: 18px;
  border-radius: 6px;
}

.input-group-addon input[type="radio"],
.input-group-addon input[type="checkbox"] {
  margin-top: 0;
}

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

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

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

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

.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap;
}

.input-group-btn > .btn {
  position: relative;
}

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

.input-group-btn > .btn:hover, .input-group-btn > .btn:focus, .input-group-btn > .btn:active {
  z-index: 2;
}

.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group {
  margin-right: -1px;
}

.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group {
  z-index: 2;
  margin-left: -1px;
}

.nav {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}

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

.nav:after {
  clear: both;
}

.nav > li {
  position: relative;
  display: block;
}

.nav > li > a {
  position: relative;
  display: block;
  padding: 10px 15px;
}

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

.nav > li.disabled > a {
  color: #777777;
}

.nav > li.disabled > a:hover, .nav > li.disabled > a:focus {
  color: #777777;
  text-decoration: none;
  background-color: transparent;
  cursor: not-allowed;
}

.nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
  background-color: #eeeeee;
  border-color: #337ab7;
}

.nav .nav-divider {
  height: 1px;
  margin: 9px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}

.nav > li > a > img {
  max-width: none;
}

.nav-tabs {
  border-bottom: 1px solid #ddd;
}

.nav-tabs > li {
  float: left;
  margin-bottom: -1px;
}

.nav-tabs > li > a {
  margin-right: 2px;
  line-height: 1.42857;
  border: 1px solid transparent;
  border-radius: 4px 4px 0 0;
}

.nav-tabs > li > a:hover {
  border-color: #eeeeee #eeeeee #ddd;
}

.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
  color: #555555;
  background-color: #fff;
  border: 1px solid #ddd;
  border-bottom-color: transparent;
  cursor: default;
}

.nav-pills > li {
  float: left;
}

.nav-pills > li > a {
  border-radius: 4px;
}

.nav-pills > li + li {
  margin-left: 2px;
}

.nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
  color: #fff;
  background-color: #337ab7;
}

.nav-stacked > li {
  float: none;
}

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

.nav-justified, .nav-tabs.nav-justified {
  width: 100%;
}

.nav-justified > li, .nav-tabs.nav-justified > li {
  float: none;
}

.nav-justified > li > a, .nav-tabs.nav-justified > li > a {
  text-align: center;
  margin-bottom: 5px;
}

.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}

@media (min-width: 768px) {
  .nav-justified > li, .nav-tabs.nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
    margin-bottom: 0;
  }
}

.nav-tabs-justified, .nav-tabs.nav-justified {
  border-bottom: 0;
}

.nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
  margin-right: 0;
  border-radius: 4px;
}

.nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
.nav-tabs-justified > .active > a:hover, .nav-tabs.nav-justified > .active > a:hover,
.nav-tabs-justified > .active > a:focus, .nav-tabs.nav-justified > .active > a:focus {
  border: 1px solid #ddd;
}

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

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

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

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

.navbar {
  position: relative;
  min-height: 50px;
  margin-bottom: 20px;
  border: 1px solid transparent;
}

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

.navbar:after {
  clear: both;
}

@media (min-width: 768px) {
  .navbar {
    border-radius: 4px;
  }
}

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

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

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

.navbar-collapse {
  overflow-x: visible;
  padding-right: 15px;
  padding-left: 15px;
  border-top: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
  -webkit-overflow-scrolling: touch;
}

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

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

.navbar-collapse.in {
  overflow-y: auto;
}

@media (min-width: 768px) {
  .navbar-collapse {
    width: auto;
    border-top: 0;
    box-shadow: none;
  }
  .navbar-collapse.collapse {
    display: block !important;
    height: auto !important;
    padding-bottom: 0;
    overflow: visible !important;
  }
  .navbar-collapse.in {
    overflow-y: visible;
  }
  .navbar-fixed-top .navbar-collapse,
  .navbar-static-top .navbar-collapse,
  .navbar-fixed-bottom .navbar-collapse {
    padding-left: 0;
    padding-right: 0;
  }
}

.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
  max-height: 340px;
}

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

.container > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-header,
.container-fluid > .navbar-collapse {
  margin-right: -15px;
  margin-left: -15px;
}

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

.navbar-static-top {
  z-index: 1000;
  border-width: 0 0 1px;
}

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

.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030;
}

@media (min-width: 768px) {
  .navbar-fixed-top,
  .navbar-fixed-bottom {
    border-radius: 0;
  }
}

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

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

.navbar-brand {
  float: left;
  padding: 15px 15px;
  font-size: 18px;
  line-height: 20px;
  height: 50px;
}

.navbar-brand:hover, .navbar-brand:focus {
  text-decoration: none;
}

.navbar-brand > img {
  display: block;
}

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

.navbar-toggle {
  position: relative;
  float: right;
  margin-right: 15px;
  padding: 9px 10px;
  margin-top: 8px;
  margin-bottom: 8px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px;
}

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

.navbar-toggle .icon-bar {
  display: block;
  width: 22px;
  height: 2px;
  border-radius: 1px;
}

.navbar-toggle .icon-bar + .icon-bar {
  margin-top: 4px;
}

@media (min-width: 768px) {
  .navbar-toggle {
    display: none;
  }
}

.navbar-nav {
  margin: 7.5px -15px;
}

.navbar-nav > li > a {
  padding-top: 10px;
  padding-bottom: 10px;
  line-height: 20px;
}

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

@media (min-width: 768px) {
  .navbar-nav {
    float: left;
    margin: 0;
  }
  .navbar-nav > li {
    float: left;
  }
  .navbar-nav > li > a {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}

.navbar-form {
  margin-left: -15px;
  margin-right: -15px;
  padding: 10px 15px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  margin-top: 8px;
  margin-bottom: 8px;
}

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

@media (max-width: 767px) {
  .navbar-form .form-group {
    margin-bottom: 5px;
  }
  .navbar-form .form-group:last-child {
    margin-bottom: 0;
  }
}

@media (min-width: 768px) {
  .navbar-form {
    width: auto;
    border: 0;
    margin-left: 0;
    margin-right: 0;
    padding-top: 0;
    padding-bottom: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
}

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

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

.navbar-btn {
  margin-top: 8px;
  margin-bottom: 8px;
}

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

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

.navbar-text {
  margin-top: 15px;
  margin-bottom: 15px;
}

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

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

.navbar-default {
  background-color: #f8f8f8;
  border-color: #e7e7e7;
}

.navbar-default .navbar-brand {
  color: #777;
}

.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {
  color: #5e5e5e;
  background-color: transparent;
}

.navbar-default .navbar-text {
  color: #777;
}

.navbar-default .navbar-nav > li > a {
  color: #777;
}

.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
  color: #333;
  background-color: transparent;
}

.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus {
  color: #555;
  background-color: #e7e7e7;
}

.navbar-default .navbar-nav > .disabled > a, .navbar-default .navbar-nav > .disabled > a:hover, .navbar-default .navbar-nav > .disabled > a:focus {
  color: #ccc;
  background-color: transparent;
}

.navbar-default .navbar-toggle {
  border-color: #ddd;
}

.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
  background-color: #ddd;
}

.navbar-default .navbar-toggle .icon-bar {
  background-color: #888;
}

.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
  border-color: #e7e7e7;
}

.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
  background-color: #e7e7e7;
  color: #555;
}

@media (max-width: 767px) {
  .navbar-default .navbar-nav .open .dropdown-menu > li > a {
    color: #777;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #333;
    background-color: transparent;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #555;
    background-color: #e7e7e7;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #ccc;
    background-color: transparent;
  }
}

.navbar-default .navbar-link {
  color: #777;
}

.navbar-default .navbar-link:hover {
  color: #333;
}

.navbar-default .btn-link {
  color: #777;
}

.navbar-default .btn-link:hover, .navbar-default .btn-link:focus {
  color: #333;
}

.navbar-default .btn-link[disabled]:hover, .navbar-default .btn-link[disabled]:focus,
fieldset[disabled] .navbar-default .btn-link:hover,
fieldset[disabled] .navbar-default .btn-link:focus {
  color: #ccc;
}

.navbar-inverse {
  background-color: #222;
  border-color: #090909;
}

.navbar-inverse .navbar-brand {
  color: #9d9d9d;
}

.navbar-inverse .navbar-brand:hover, .navbar-inverse .navbar-brand:focus {
  color: #fff;
  background-color: transparent;
}

.navbar-inverse .navbar-text {
  color: #9d9d9d;
}

.navbar-inverse .navbar-nav > li > a {
  color: #9d9d9d;
}

.navbar-inverse .navbar-nav > li > a:hover, .navbar-inverse .navbar-nav > li > a:focus {
  color: #fff;
  background-color: transparent;
}

.navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus {
  color: #fff;
  background-color: #090909;
}

.navbar-inverse .navbar-nav > .disabled > a, .navbar-inverse .navbar-nav > .disabled > a:hover, .navbar-inverse .navbar-nav > .disabled > a:focus {
  color: #444;
  background-color: transparent;
}

.navbar-inverse .navbar-toggle {
  border-color: #333;
}

.navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus {
  background-color: #333;
}

.navbar-inverse .navbar-toggle .icon-bar {
  background-color: #fff;
}

.navbar-inverse .navbar-collapse,
.navbar-inverse .navbar-form {
  border-color: #101010;
}

.navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus {
  background-color: #090909;
  color: #fff;
}

@media (max-width: 767px) {
  .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
    border-color: #090909;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
    background-color: #090909;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
    color: #9d9d9d;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #fff;
    background-color: transparent;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #fff;
    background-color: #090909;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #444;
    background-color: transparent;
  }
}

.navbar-inverse .navbar-link {
  color: #9d9d9d;
}

.navbar-inverse .navbar-link:hover {
  color: #fff;
}

.navbar-inverse .btn-link {
  color: #9d9d9d;
}

.navbar-inverse .btn-link:hover, .navbar-inverse .btn-link:focus {
  color: #fff;
}

.navbar-inverse .btn-link[disabled]:hover, .navbar-inverse .btn-link[disabled]:focus,
fieldset[disabled] .navbar-inverse .btn-link:hover,
fieldset[disabled] .navbar-inverse .btn-link:focus {
  color: #444;
}

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

.label:empty {
  display: none;
}

.btn .label {
  position: relative;
  top: -1px;
}

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

.label-default {
  background-color: #777777;
}

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

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

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

.label-success {
  background-color: #5cb85c;
}

.label-success[href]:hover, .label-success[href]:focus {
  background-color: #449d44;
}

.label-info {
  background-color: #5bc0de;
}

.label-info[href]:hover, .label-info[href]:focus {
  background-color: #31b0d5;
}

.label-warning {
  background-color: #f0ad4e;
}

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

.label-danger {
  background-color: #d9534f;
}

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

.jumbotron {
  padding-top: 30px;
  padding-bottom: 30px;
  margin-bottom: 30px;
  color: inherit;
  background-color: #eeeeee;
}

.jumbotron h1,
.jumbotron .h1 {
  color: inherit;
}

.jumbotron p {
  margin-bottom: 15px;
  font-size: 21px;
  font-weight: 200;
}

.jumbotron > hr {
  border-top-color: #d5d5d5;
}

.container .jumbotron,
.container-fluid .jumbotron {
  border-radius: 6px;
  padding-left: 15px;
  padding-right: 15px;
}

.jumbotron .container {
  max-width: 100%;
}

@media screen and (min-width: 768px) {
  .jumbotron {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .container .jumbotron,
  .container-fluid .jumbotron {
    padding-left: 60px;
    padding-right: 60px;
  }
  .jumbotron h1,
  .jumbotron .h1 {
    font-size: 63px;
  }
}

.alert {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid transparent;
  border-radius: 4px;
}

.alert h4 {
  margin-top: 0;
  color: inherit;
}

.alert .alert-link {
  font-weight: bold;
}

.alert > p,
.alert > ul {
  margin-bottom: 0;
}

.alert > p + p {
  margin-top: 5px;
}

.alert-dismissable,
.alert-dismissible {
  padding-right: 35px;
}

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

.alert-success {
  background-color: #dff0d8;
  border-color: #d6e9c6;
  color: #3c763d;
}

.alert-success hr {
  border-top-color: #c9e2b3;
}

.alert-success .alert-link {
  color: #2b542c;
}

.alert-info {
  background-color: #d9edf7;
  border-color: #bce8f1;
  color: #31708f;
}

.alert-info hr {
  border-top-color: #a6e1ec;
}

.alert-info .alert-link {
  color: #245269;
}

.alert-warning {
  background-color: #fcf8e3;
  border-color: #faebcc;
  color: #8a6d3b;
}

.alert-warning hr {
  border-top-color: #f7e1b5;
}

.alert-warning .alert-link {
  color: #66512c;
}

.alert-danger {
  background-color: #f2dede;
  border-color: #ebccd1;
  color: #a94442;
}

.alert-danger hr {
  border-top-color: #e4b9c0;
}

.alert-danger .alert-link {
  color: #843534;
}

.media {
  margin-top: 15px;
}

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

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

.media-body {
  width: 10000px;
}

.media-object {
  display: block;
}

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

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

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

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

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

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

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

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

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

.list-group-item {
  position: relative;
  display: block;
  padding: 10px 15px;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid #ddd;
}

.list-group-item:first-child {
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
}

.list-group-item:last-child {
  margin-bottom: 0;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
}

a.list-group-item,
button.list-group-item {
  color: #555;
}

a.list-group-item .list-group-item-heading,
button.list-group-item .list-group-item-heading {
  color: #333;
}

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

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

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

.list-group-item.disabled .list-group-item-heading, .list-group-item.disabled:hover .list-group-item-heading, .list-group-item.disabled:focus .list-group-item-heading {
  color: inherit;
}

.list-group-item.disabled .list-group-item-text, .list-group-item.disabled:hover .list-group-item-text, .list-group-item.disabled:focus .list-group-item-text {
  color: #777777;
}

.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus {
  z-index: 2;
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}

.list-group-item.active .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small, .list-group-item.active:hover .list-group-item-heading,
.list-group-item.active:hover .list-group-item-heading > small,
.list-group-item.active:hover .list-group-item-heading > .small, .list-group-item.active:focus .list-group-item-heading,
.list-group-item.active:focus .list-group-item-heading > small,
.list-group-item.active:focus .list-group-item-heading > .small {
  color: inherit;
}

.list-group-item.active .list-group-item-text, .list-group-item.active:hover .list-group-item-text, .list-group-item.active:focus .list-group-item-text {
  color: #c7ddef;
}

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

a.list-group-item-success,
button.list-group-item-success {
  color: #3c763d;
}

a.list-group-item-success .list-group-item-heading,
button.list-group-item-success .list-group-item-heading {
  color: inherit;
}

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

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

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

a.list-group-item-info,
button.list-group-item-info {
  color: #31708f;
}

a.list-group-item-info .list-group-item-heading,
button.list-group-item-info .list-group-item-heading {
  color: inherit;
}

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

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

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

a.list-group-item-warning,
button.list-group-item-warning {
  color: #8a6d3b;
}

a.list-group-item-warning .list-group-item-heading,
button.list-group-item-warning .list-group-item-heading {
  color: inherit;
}

a.list-group-item-warning:hover, a.list-group-item-warning:focus,
button.list-group-item-warning:hover,
button.list-group-item-warning:focus {
  color: #8a6d3b;
  background-color: #faf2cc;
}

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

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

a.list-group-item-danger,
button.list-group-item-danger {
  color: #a94442;
}

a.list-group-item-danger .list-group-item-heading,
button.list-group-item-danger .list-group-item-heading {
  color: inherit;
}

a.list-group-item-danger:hover, a.list-group-item-danger:focus,
button.list-group-item-danger:hover,
button.list-group-item-danger:focus {
  color: #a94442;
  background-color: #ebcccc;
}

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

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

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

.panel {
  margin-bottom: 20px;
  background-color: #fff;
  border: 1px solid transparent;
  border-radius: 4px;
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

.panel-body {
  padding: 15px;
}

.panel-body:before, .panel-body:after {
  content: " ";
  display: table;
}

.panel-body:after {
  clear: both;
}

.panel-heading {
  padding: 10px 15px;
  border-bottom: 1px solid transparent;
  border-top-right-radius: 3px;
  border-top-left-radius: 3px;
}

.panel-heading > .dropdown .dropdown-toggle {
  color: inherit;
}

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

.panel-title > a,
.panel-title > small,
.panel-title > .small,
.panel-title > small > a,
.panel-title > .small > a {
  color: inherit;
}

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

.panel > .list-group,
.panel > .panel-collapse > .list-group {
  margin-bottom: 0;
}

.panel > .list-group .list-group-item,
.panel > .panel-collapse > .list-group .list-group-item {
  border-width: 1px 0;
  border-radius: 0;
}

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

.panel > .list-group:last-child .list-group-item:last-child,
.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
  border-bottom: 0;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}

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

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

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

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

.panel > .table caption,
.panel > .table-responsive > .table caption,
.panel > .panel-collapse > .table caption {
  padding-left: 15px;
  padding-right: 15px;
}

.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
  border-top-right-radius: 3px;
  border-top-left-radius: 3px;
}

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

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

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

.panel > .table:last-child,
.panel > .table-responsive:last-child > .table:last-child {
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}

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

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

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

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

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

.panel > .table-bordered,
.panel > .table-responsive > .table-bordered {
  border: 0;
}

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

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

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

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

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

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

.panel-group .panel {
  margin-bottom: 0;
  border-radius: 4px;
}

.panel-group .panel + .panel {
  margin-top: 5px;
}

.panel-group .panel-heading {
  border-bottom: 0;
}

.panel-group .panel-heading + .panel-collapse > .panel-body,
.panel-group .panel-heading + .panel-collapse > .list-group {
  border-top: 1px solid #ddd;
}

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

.panel-group .panel-footer + .panel-collapse .panel-body {
  border-bottom: 1px solid #ddd;
}

.panel-default {
  border-color: #ddd;
}

.panel-default > .panel-heading {
  color: #333333;
  background-color: #f5f5f5;
  border-color: #ddd;
}

.panel-default > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ddd;
}

.panel-default > .panel-heading .badge {
  color: #f5f5f5;
  background-color: #333333;
}

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

.panel-primary {
  border-color: #337ab7;
}

.panel-primary > .panel-heading {
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}

.panel-primary > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #337ab7;
}

.panel-primary > .panel-heading .badge {
  color: #337ab7;
  background-color: #fff;
}

.panel-primary > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #337ab7;
}

.panel-success {
  border-color: #d6e9c6;
}

.panel-success > .panel-heading {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6;
}

.panel-success > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #d6e9c6;
}

.panel-success > .panel-heading .badge {
  color: #dff0d8;
  background-color: #3c763d;
}

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

.panel-info {
  border-color: #bce8f1;
}

.panel-info > .panel-heading {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1;
}

.panel-info > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #bce8f1;
}

.panel-info > .panel-heading .badge {
  color: #d9edf7;
  background-color: #31708f;
}

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

.panel-warning {
  border-color: #faebcc;
}

.panel-warning > .panel-heading {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc;
}

.panel-warning > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #faebcc;
}

.panel-warning > .panel-heading .badge {
  color: #fcf8e3;
  background-color: #8a6d3b;
}

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

.panel-danger {
  border-color: #ebccd1;
}

.panel-danger > .panel-heading {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}

.panel-danger > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ebccd1;
}

.panel-danger > .panel-heading .badge {
  color: #f2dede;
  background-color: #a94442;
}

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

.embed-responsive {
  position: relative;
  display: block;
  height: 0;
  padding: 0;
  overflow: hidden;
}

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

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

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

.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
}

.well blockquote {
  border-color: #ddd;
  border-color: rgba(0, 0, 0, 0.15);
}

.well-lg {
  padding: 24px;
  border-radius: 6px;
}

.well-sm {
  padding: 9px;
  border-radius: 3px;
}

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

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

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

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

.clearfix:after {
  clear: both;
}

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

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

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

.hide {
  display: none !important;
}

.show {
  display: block !important;
}

.invisible {
  visibility: hidden;
}

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

.hidden {
  display: none !important;
}

.affix {
  position: fixed;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.autocomplete-suggestions {
  border: 1px solid #999;
  background: #FFF;
  overflow: auto;
}

.autocomplete-suggestion {
  padding: 2px 5px;
  white-space: nowrap;
  overflow: hidden;
}

.autocomplete-selected {
  background: #F0F0F0;
}

.autocomplete-suggestions strong {
  font-weight: normal;
  color: #3399FF;
}

.autocomplete-group {
  padding: 2px 5px;
}

.autocomplete-group strong {
  display: block;
  border-bottom: 1px solid #000;
}

.date-picker {
  width: 170px;
  height: 25px;
  padding: 0;
  border: 0;
  line-height: 25px;
  padding-left: 10px;
  font-size: 12px;
  font-weight: bold;
  cursor: pointer;
  position: relative;
  z-index: 2;
}

.date-picker-wrapper {
  position: absolute;
  z-index: 1;
  font-size: 12px;
  line-height: 20px;
  font-family: Arial,sans-serif;
  box-sizing: initial;
}

.date-picker-wrapper.inline-wrapper {
  position: relative;
  box-shadow: none;
  display: inline-block;
}

.date-picker-wrapper.single-date {
  width: auto;
}

.date-picker-wrapper.no-shortcuts {
  padding-bottom: 12px;
}

.date-picker-wrapper.no-topbar {
  padding-top: 12px;
}

.date-picker-wrapper .footer {
  font-size: 11px;
  padding-top: 3px;
}

.date-picker-wrapper b {
  color: #666;
  font-weight: 700;
}

.date-picker-wrapper a {
  color: #6bb4d6;
  text-decoration: underline;
}

.date-picker-wrapper .month-name {
  text-transform: uppercase;
}

.date-picker-wrapper .month-wrapper {
  border: 1px solid #bfbfbf;
  border-radius: 3px;
  background-color: #fff;
  cursor: default;
  position: relative;
  _overflow: hidden;
}

.date-picker-wrapper .month-wrapper table {
  width: 190px;
  float: left;
}

.date-picker-wrapper .month-wrapper table.month2 {
  width: 190px;
  float: left;
}

.date-picker-wrapper .month-wrapper table th,
.date-picker-wrapper .month-wrapper table td {
  vertical-align: middle;
  text-align: center;
  line-height: 14px;
  margin: 0px;
  padding: 0px;
}

.date-picker-wrapper .month-wrapper table .day {
  padding: 5px 0;
  line-height: 1;
  font-size: 10px;
  color: #ccc;
  cursor: default;
}

.date-picker-wrapper .month-wrapper table .day:hover {
  background-color: #f2f2f2;
  color: #00405b;
}

.date-picker-wrapper .month-wrapper table div.day.lastMonth,
.date-picker-wrapper .month-wrapper table div.day.nextMonth {
  color: #999;
  cursor: default;
}

.date-picker-wrapper .month-wrapper table .day.checked {
  background-color: #9cdbf7;
}

.date-picker-wrapper .month-wrapper table .week-name {
  height: 20px;
  line-height: 20px;
  font-weight: 100;
  text-transform: uppercase;
}

.date-picker-wrapper .month-wrapper table .day.has-tooltip {
  cursor: help !important;
}

.date-picker-wrapper .time label {
  white-space: nowrap;
}

.date-picker-wrapper .month-wrapper table .day.toMonth.valid {
  color: #333;
  cursor: pointer;
}

.date-picker-wrapper .month-wrapper table .day.toMonth.hovering {
  background-color: #cdecfa;
}

.date-picker-wrapper .month-wrapper table .day.nextMonth,
.date-picker-wrapper .month-wrapper table .day.lastMonth {
  display: none;
}

.date-picker-wrapper .month-wrapper table .day.real-today {
  background-color: #ffe684;
}

.date-picker-wrapper .month-wrapper table .day.real-today.checked,
.date-picker-wrapper .month-wrapper table .day.real-today.hovering {
  background-color: #70ccd5;
}

.date-picker-wrapper table .caption {
  height: 40px;
}

.date-picker-wrapper table .caption .next,
.date-picker-wrapper table .caption .prev {
  padding: 0 5px;
  cursor: pointer;
}

.date-picker-wrapper table .caption .next:hover,
.date-picker-wrapper table .caption .prev:hover {
  background-color: #ccc;
  color: white;
}

.date-picker-wrapper .gap {
  position: relative;
  z-index: 1;
  width: 15px;
  height: 100%;
  background-color: red;
  font-size: 0;
  line-height: 0;
  float: left;
  top: -5px;
  margin: 0 10px -10px;
  visibility: hidden;
  height: 0;
}

.date-picker-wrapper .gap .gap-lines {
  height: 100%;
  overflow: hidden;
}

.date-picker-wrapper .gap .gap-line {
  height: 15px;
  width: 15px;
  position: relative;
}

.date-picker-wrapper .gap .gap-line .gap-1 {
  z-index: 1;
  height: 0;
  border-left: 8px solid white;
  border-top: 8px solid #eee;
  border-bottom: 8px solid #eee;
}

.date-picker-wrapper .gap .gap-line .gap-2 {
  position: absolute;
  right: 0;
  top: 0px;
  z-index: 2;
  height: 0;
  border-left: 8px solid transparent;
  border-top: 8px solid white;
}

.date-picker-wrapper .gap .gap-line .gap-3 {
  position: absolute;
  right: 0;
  top: 8px;
  z-index: 2;
  height: 0;
  border-left: 8px solid transparent;
  border-bottom: 8px solid white;
}

.date-picker-wrapper .gap .gap-top-mask {
  width: 6px;
  height: 1px;
  position: absolute;
  top: -1px;
  left: 1px;
  background-color: #eee;
  z-index: 3;
}

.date-picker-wrapper .gap .gap-bottom-mask {
  width: 6px;
  height: 1px;
  position: absolute;
  bottom: -1px;
  left: 7px;
  background-color: #eee;
  z-index: 3;
}

.date-picker-wrapper .selected-days {
  display: none;
}

.date-picker-wrapper .drp_top-bar {
  line-height: 1.4;
  position: relative;
  padding: 0 0 10px 0;
}

.date-picker-wrapper .drp_top-bar .error-top {
  display: none;
}

.date-picker-wrapper .drp_top-bar .normal-top {
  display: none;
}

.date-picker-wrapper .drp_top-bar .default-top {
  display: block;
}

.date-picker-wrapper .drp_top-bar.error .default-top {
  display: none;
}

.date-picker-wrapper .drp_top-bar.error .error-top {
  display: block;
  color: red;
}

.date-picker-wrapper .drp_top-bar.normal .default-top {
  display: none;
}

.date-picker-wrapper .drp_top-bar.normal .normal-top {
  display: block;
}

.date-picker-wrapper .drp_top-bar .apply-btn {
  position: absolute;
  right: 0px;
  top: 6px;
  padding: 3px 5px;
  margin: 0;
  font-size: 12px;
  border-radius: 4px;
  cursor: pointer;
  color: #d9eef7;
  border: solid 1px #0076a3;
  background: #0095cd;
  background: -webkit-gradient(linear, left top, left bottom, from(#00adee), to(#0078a5));
  background: -moz-linear-gradient(top, #00adee, #0078a5);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00adee', endColorstr='#0078a5');
  color: white;
  line-height: initial;
}

.date-picker-wrapper .drp_top-bar .apply-btn.disabled {
  cursor: pointer;
  color: #606060;
  border: solid 1px #b7b7b7;
  background: #fff;
  background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#ededed));
  background: -moz-linear-gradient(top, #fff, #ededed);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#ededed');
}

/*time styling*/
.date-picker-wrapper .time {
  position: relative;
}

.date-picker-wrapper.single-month .time {
  display: block;
}

.date-picker-wrapper .time input[type=range] {
  vertical-align: middle;
  width: 129px;
  padding: 0;
  margin: 0;
  height: 20px;
}

.date-picker-wrapper .time1, .time2 {
  width: 180px;
  padding: 0 5px;
  text-align: center;
}

.date-picker-wrapper .time1 {
  float: left;
}

.date-picker-wrapper .time2 {
  float: right;
}

.date-picker-wrapper .hour, .minute {
  text-align: right;
}

.date-picker-wrapper .hide {
  display: none;
}

.date-picker-wrapper .first-date-selected {
  background-color: #49e !important;
  color: white !important;
}

.date-picker-wrapper .last-date-selected {
  background-color: #49e !important;
  color: white !important;
}

.date-picker-wrapper .date-range-length-tip {
  position: absolute;
  margin-top: -4px;
  margin-left: -8px;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
  display: none;
  background-color: yellow;
  padding: 0 6px;
  border-radius: 2px;
  font-size: 12px;
  line-height: 16px;
  -webkit-filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.3));
  -moz-filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.3));
  -ms-filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.3));
  -o-filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.3));
  filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.3));
}

.date-picker-wrapper .date-range-length-tip:after {
  content: '';
  position: absolute;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid yellow;
  left: 50%;
  margin-left: -4px;
  bottom: -4px;
}

.date-picker-wrapper.two-months.no-gap .month1 .next,
.date-picker-wrapper.two-months.no-gap .month2 .prev {
  display: none;
}

.date-picker-wrapper .week-number {
  padding: 5px 0;
  line-height: 1;
  font-size: 12px;
  margin-bottom: 1px;
  color: #999;
  cursor: pointer;
}

.date-picker-wrapper .week-number.week-number-selected {
  color: #4499EE;
  font-weight: bold;
}

/*!
Chosen, a Select Box Enhancer for jQuery and Prototype
by Patrick Filler for Harvest, http://getharvest.com

Version 1.6.1
Full source at https://github.com/harvesthq/chosen
Copyright (c) 2011-2016 Harvest http://getharvest.com

MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md
This file is generated by `grunt build`, do not edit it by hand.
*/
/* @group Base */
.chosen-container {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  font-size: 13px;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.chosen-container * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.chosen-container .chosen-drop {
  position: absolute;
  top: 100%;
  left: -9999px;
  z-index: 1010;
  width: 100%;
  border: 1px solid #aaa;
  border-top: 0;
  background: #fff;
  box-shadow: 0 4px 5px rgba(0, 0, 0, 0.15);
}

.chosen-container.chosen-with-drop .chosen-drop {
  left: 0;
}

.chosen-container a {
  cursor: pointer;
}

.chosen-container .search-choice .group-name, .chosen-container .chosen-single .group-name {
  margin-right: 4px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-weight: normal;
  color: #999999;
}

.chosen-container .search-choice .group-name:after, .chosen-container .chosen-single .group-name:after {
  content: ":";
  padding-left: 2px;
  vertical-align: top;
}

/* @end */
/* @group Single Chosen */
.chosen-container-single .chosen-single {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 0 0 0 8px;
  height: 25px;
  border: 1px solid #aaa;
  border-radius: 5px;
  background-color: #fff;
  background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #ffffff), color-stop(50%, #f6f6f6), color-stop(52%, #eeeeee), color-stop(100%, #f4f4f4));
  background: -webkit-linear-gradient(#ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
  background: -moz-linear-gradient(#ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
  background: -o-linear-gradient(#ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
  background: linear-gradient(#ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
  background-clip: padding-box;
  box-shadow: 0 0 3px white inset, 0 1px 1px rgba(0, 0, 0, 0.1);
  color: #444;
  text-decoration: none;
  white-space: nowrap;
  line-height: 24px;
}

.chosen-container-single .chosen-default {
  color: #999;
}

.chosen-container-single .chosen-single span {
  display: block;
  overflow: hidden;
  margin-right: 26px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.chosen-container-single .chosen-single-with-deselect span {
  margin-right: 38px;
}

.chosen-container-single .chosen-single abbr {
  position: absolute;
  top: 6px;
  right: 26px;
  display: block;
  width: 12px;
  height: 12px;
  background: url("/assets/images/chosen-sprite.png") -42px 1px no-repeat;
  font-size: 1px;
}

.chosen-container-single .chosen-single abbr:hover {
  background-position: -42px -10px;
}

.chosen-container-single.chosen-disabled .chosen-single abbr:hover {
  background-position: -42px -10px;
}

.chosen-container-single .chosen-single div {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 18px;
  height: 100%;
}

.chosen-container-single .chosen-single div b {
  display: block;
  width: 100%;
  height: 100%;
  background: url("/assets/images/chosen-sprite.png") no-repeat 0px 2px;
}

.chosen-container-single .chosen-search {
  position: relative;
  z-index: 1010;
  margin: 0;
  padding: 3px 4px;
  white-space: nowrap;
}

.chosen-container-single .chosen-search input[type="text"] {
  margin: 1px 0;
  padding: 4px 20px 4px 5px;
  width: 100%;
  height: auto;
  outline: 0;
  border: 1px solid #aaa;
  background: white url("/assets/images/chosen-sprite.png") no-repeat 100% -20px;
  background: url("/assets/images/chosen-sprite.png") no-repeat 100% -20px;
  font-size: 1em;
  font-family: sans-serif;
  line-height: normal;
  border-radius: 0;
}

.chosen-container-single .chosen-drop {
  margin-top: -1px;
  border-radius: 0 0 4px 4px;
  background-clip: padding-box;
}

.chosen-container-single.chosen-container-single-nosearch .chosen-search {
  position: absolute;
  left: -9999px;
}

/* @end */
/* @group Results */
.chosen-container .chosen-results {
  color: #444;
  position: relative;
  overflow-x: hidden;
  overflow-y: auto;
  margin: 0 4px 4px 0;
  padding: 0 0 0 4px;
  max-height: 240px;
  -webkit-overflow-scrolling: touch;
}

.chosen-container .chosen-results li {
  display: none;
  margin: 0;
  padding: 5px 6px;
  list-style: none;
  line-height: 15px;
  word-wrap: break-word;
  -webkit-touch-callout: none;
}

.chosen-container .chosen-results li.active-result {
  display: list-item;
  cursor: pointer;
}

.chosen-container .chosen-results li.disabled-result {
  display: list-item;
  color: #ccc;
  cursor: default;
}

.chosen-container .chosen-results li.highlighted {
  background-color: #3875d7;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #3875d7), color-stop(90%, #2a62bc));
  background-image: -webkit-linear-gradient(#3875d7 20%, #2a62bc 90%);
  background-image: -moz-linear-gradient(#3875d7 20%, #2a62bc 90%);
  background-image: -o-linear-gradient(#3875d7 20%, #2a62bc 90%);
  background-image: linear-gradient(#3875d7 20%, #2a62bc 90%);
  color: #fff;
}

.chosen-container .chosen-results li.no-results {
  color: #777;
  display: list-item;
  background: #f4f4f4;
}

.chosen-container .chosen-results li.group-result {
  display: list-item;
  font-weight: bold;
  cursor: default;
}

.chosen-container .chosen-results li.group-option {
  padding-left: 15px;
}

.chosen-container .chosen-results li em {
  font-style: normal;
  text-decoration: underline;
}

/* @end */
/* @group Multi Chosen */
.chosen-container-multi .chosen-choices {
  position: relative;
  overflow: hidden;
  margin: 0;
  width: 100%;
  height: auto;
  background-color: #f2f2f2;
  color: #00405b;
  border: 1px solid #e6e6e6;
  font-size: 18px;
  padding: 6px 10px;
  border-radius: 0;
  cursor: text;
}

.chosen-container-multi .chosen-choices li {
  float: left;
  list-style: none;
}

.chosen-container-multi .chosen-choices li.search-field {
  margin: 0;
  padding: 0;
  white-space: nowrap;
}

.chosen-container-multi .chosen-choices li.search-field input[type="text"] {
  margin: 1px 0;
  padding: 0;
  height: 25px;
  outline: 0;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none;
  color: #999;
  font-size: 100%;
  font-family: sans-serif;
  line-height: normal;
  border-radius: 0;
}

.chosen-container-multi .chosen-choices li.search-choice {
  position: relative;
  margin: 3px 5px 3px 0;
  padding: 3px 20px 3px 5px;
  border: 1px solid #aaa;
  max-width: 100%;
  border-radius: 3px;
  background-color: #eeeeee;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
  background-image: -webkit-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
  background-image: -moz-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
  background-image: -o-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
  background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
  background-size: 100% 19px;
  background-repeat: repeat-x;
  background-clip: padding-box;
  box-shadow: 0 0 2px white inset, 0 1px 0 rgba(0, 0, 0, 0.05);
  color: #333;
  line-height: 13px;
  cursor: default;
}

.chosen-container-multi .chosen-choices li.search-choice span {
  word-wrap: break-word;
}

.chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
  position: absolute;
  top: 4px;
  right: 3px;
  display: block;
  width: 12px;
  height: 12px;
  background: url("/assets/images/chosen-sprite.png") -42px 1px no-repeat;
  font-size: 1px;
}

.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover {
  background-position: -42px -10px;
}

.chosen-container-multi .chosen-choices li.search-choice-disabled {
  padding-right: 5px;
  border: 1px solid #ccc;
  background-color: #e4e4e4;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
  background-image: -webkit-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
  background-image: -moz-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
  background-image: -o-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
  background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
  color: #666;
}

.chosen-container-multi .chosen-choices li.search-choice-focus {
  background: #d4d4d4;
}

.chosen-container-multi .chosen-choices li.search-choice-focus .search-choice-close {
  background-position: -42px -10px;
}

.chosen-container-multi .chosen-results {
  margin: 0;
  padding: 0;
}

.chosen-container-multi .chosen-drop .result-selected {
  display: list-item;
  color: #ccc;
  cursor: default;
}

/* @end */
/* @group Active  */
.chosen-container-active .chosen-single {
  border: 1px solid #5897fb;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}

.chosen-container-active.chosen-with-drop .chosen-single {
  border: 1px solid #aaa;
  -moz-border-radius-bottomright: 0;
  border-bottom-right-radius: 0;
  -moz-border-radius-bottomleft: 0;
  border-bottom-left-radius: 0;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #eeeeee), color-stop(80%, #ffffff));
  background-image: -webkit-linear-gradient(#eeeeee 20%, #ffffff 80%);
  background-image: -moz-linear-gradient(#eeeeee 20%, #ffffff 80%);
  background-image: -o-linear-gradient(#eeeeee 20%, #ffffff 80%);
  background-image: linear-gradient(#eeeeee 20%, #ffffff 80%);
  box-shadow: 0 1px 0 #fff inset;
}

.chosen-container-active.chosen-with-drop .chosen-single div {
  border-left: none;
  background: transparent;
}

.chosen-container-active.chosen-with-drop .chosen-single div b {
  background-position: -18px 2px;
}

.chosen-container-active .chosen-choices {
  border: 1px solid #5897fb;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}

.chosen-container-active .chosen-choices li.search-field input[type="text"] {
  color: #222 !important;
}

/* @end */
/* @group Disabled Support */
.chosen-disabled {
  opacity: 0.5 !important;
  cursor: default;
}

.chosen-disabled .chosen-single {
  cursor: default;
}

.chosen-disabled .chosen-choices .search-choice .search-choice-close {
  cursor: default;
}

/* @end */
/* @group Right to Left */
.chosen-rtl {
  text-align: right;
}

.chosen-rtl .chosen-single {
  overflow: visible;
  padding: 0 8px 0 0;
}

.chosen-rtl .chosen-single span {
  margin-right: 0;
  margin-left: 26px;
  direction: rtl;
}

.chosen-rtl .chosen-single-with-deselect span {
  margin-left: 38px;
}

.chosen-rtl .chosen-single div {
  right: auto;
  left: 3px;
}

.chosen-rtl .chosen-single abbr {
  right: auto;
  left: 26px;
}

.chosen-rtl .chosen-choices li {
  float: right;
}

.chosen-rtl .chosen-choices li.search-field input[type="text"] {
  direction: rtl;
}

.chosen-rtl .chosen-choices li.search-choice {
  margin: 3px 5px 3px 0;
  padding: 3px 5px 3px 19px;
}

.chosen-rtl .chosen-choices li.search-choice .search-choice-close {
  right: auto;
  left: 4px;
}

.chosen-rtl.chosen-container-single-nosearch .chosen-search,
.chosen-rtl .chosen-drop {
  left: 9999px;
}

.chosen-rtl.chosen-container-single .chosen-results {
  margin: 0 0 4px 4px;
  padding: 0 4px 0 0;
}

.chosen-rtl .chosen-results li.group-option {
  padding-right: 15px;
  padding-left: 0;
}

.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div {
  border-right: none;
}

.chosen-rtl .chosen-search input[type="text"] {
  padding: 4px 5px 4px 20px;
  background: white url("/assets/images/chosen-sprite.png") no-repeat -30px -20px;
  background: url("/assets/images/chosen-sprite.png") no-repeat -30px -20px;
  direction: rtl;
}

.chosen-rtl.chosen-container-single .chosen-single div b {
  background-position: 6px 2px;
}

.chosen-rtl.chosen-container-single.chosen-with-drop .chosen-single div b {
  background-position: -12px 2px;
}

/* @end */
/* @group Retina compatibility */
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 144dpi), only screen and (min-resolution: 1.5dppx) {
  .chosen-rtl .chosen-search input[type="text"],
  .chosen-container-single .chosen-single abbr,
  .chosen-container-single .chosen-single div b,
  .chosen-container-single .chosen-search input[type="text"],
  .chosen-container-multi .chosen-choices .search-choice .search-choice-close,
  .chosen-container .chosen-results-scroll-down span,
  .chosen-container .chosen-results-scroll-up span {
    background-image: url("chosen-sprite@2x.png") !important;
    background-size: 52px 37px !important;
    background-repeat: no-repeat !important;
  }
}

/* @end */
select.form-control + .chosen-container.chosen-container-single .chosen-single {
  display: block;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.428571429;
  color: #555;
  vertical-align: middle;
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
  background-image: none;
}

select.form-control + .chosen-container.chosen-container-single .chosen-single div {
  top: 4px;
  color: #000;
}

select.form-control + .chosen-container .chosen-drop {
  background-color: #FFF;
  border: 1px solid #CCC;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background-clip: padding-box;
  margin: 2px 0 0;
}

select.form-control + .chosen-container .chosen-search input[type=text] {
  display: block;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.428571429;
  color: #555;
  vertical-align: middle;
  background-color: #FFF;
  border: 1px solid #CCC;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  background-image: none;
}

select.form-control + .chosen-container .chosen-results {
  margin: 2px 0 0;
  padding: 5px 0;
  font-size: 14px;
  list-style: none;
  background-color: #fff;
  margin-bottom: 5px;
}

select.form-control + .chosen-container .chosen-results li,
select.form-control + .chosen-container .chosen-results li.active-result {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 1.428571429;
  color: #333;
  white-space: nowrap;
  background-image: none;
}

select.form-control + .chosen-container .chosen-results li:hover,
select.form-control + .chosen-container .chosen-results li.active-result:hover,
select.form-control + .chosen-container .chosen-results li.highlighted {
  color: #FFF;
  text-decoration: none;
  background-color: #428BCA;
  background-image: none;
}

select.form-control + .chosen-container-multi .chosen-choices {
  display: block;
  width: 100%;
  min-height: 34px;
  padding: 6px;
  font-size: 14px;
  line-height: 1.428571429;
  color: #555;
  vertical-align: middle;
  background-color: #FFF;
  border: 1px solid #CCC;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  background-image: none;
}

select.form-control + .chosen-container-multi .chosen-choices li.search-field input[type="text"] {
  height: auto;
  padding: 5px 0;
}

select.form-control + .chosen-container-multi .chosen-choices li.search-choice {
  background-image: none;
  padding: 3px 24px 3px 5px;
  margin: 0 6px 0 0;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.428571429;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  border: 1px solid #ccc;
  border-radius: 4px;
  color: #333;
  background-color: #FFF;
  border-color: #CCC;
}

select.form-control + .chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
  top: 8px;
  right: 6px;
}

select.form-control + .chosen-container-multi.chosen-container-active .chosen-choices,
select.form-control + .chosen-container.chosen-container-single.chosen-container-active .chosen-single,
select.form-control + .chosen-container .chosen-search input[type=text]:focus {
  border-color: #66AFE9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
}

select.form-control + .chosen-container-multi .chosen-results li.result-selected {
  display: list-item;
  color: #ccc;
  cursor: default;
  background-color: white;
}

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,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

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

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

q, blockquote {
  quotes: none;
}

q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

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

@font-face {
  font-family: 'Volkswagen Head';
  font-style: normal;
  font-weight: 100;
  src: url("fonts/VWHeadWeb-Light.eot");
  src: url("fonts/VWHeadWeb-Light.eot?#iefix") format("embedded-opentype"), url("fonts/VWHeadWeb-Light.woff") format("woff"), url("fonts/VWHeadWeb-Light.ttf") format("truetype"), url("fonts/VWHeadWeb-Light.svg Head") format("svg");
}

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

@font-face {
  font-family: 'Volkswagen Head';
  font-style: italic;
  font-weight: normal;
  src: url("fonts/VWHeadWeb-RegularItalic.eot");
  src: url("fonts/VWHeadWeb-RegularItalic.eot?#iefix") format("embedded-opentype"), url("fonts/VWHeadWeb-RegularItalic.woff") format("woff"), url("fonts/VWHeadWeb-RegularItalic.ttf") format("truetype"), url("fonts/VWHeadWeb-RegularItalic.svg Head") format("svg");
}

@font-face {
  font-family: 'Volkswagen Head';
  font-style: normal;
  font-weight: 700;
  src: url("fonts/VWHeadWeb-Bold.eot");
  src: url("fonts/VWHeadWeb-Bold.eot?#iefix") format("embedded-opentype"), url("fonts/VWHeadWeb-Bold.woff") format("woff"), url("fonts/VWHeadWeb-Bold.ttf") format("truetype"), url("fonts/VWHeadWeb-Bold.svg Head") format("svg");
}

@font-face {
  font-family: 'Volkswagen Head';
  font-style: italic;
  font-weight: 700;
  src: url("fonts/VWHeadWeb-BoldItalic.eot");
  src: url("fonts/VWHeadWeb-BoldItalic.eot?#iefix") format("embedded-opentype"), url("fonts/VWHeadWeb-BoldItalic.woff") format("woff"), url("fonts/VWHeadWeb-BoldItalic.ttf") format("truetype"), url("fonts/VWHeadWeb-BoldItalic.svg Head") format("svg");
}

@font-face {
  font-family: 'Volkswagen Head';
  font-style: normal;
  font-weight: 900;
  src: url("fonts/VWHeadWeb-ExtraBold.eot");
  src: url("fonts/VWHeadWeb-ExtraBold.eot?#iefix") format("embedded-opentype"), url("fonts/VWHeadWeb-ExtraBold.woff") format("woff"), url("fonts/VWHeadWeb-ExtraBold.ttf") format("truetype"), url("fonts/VWHeadWeb-ExtraBold.svg Head") format("svg");
}

@font-face {
  font-family: 'Volkswagen Text';
  font-style: normal;
  font-weight: 100;
  src: url("fonts/VWTextWeb-Light.eot");
  src: url("fonts/VWTextWeb-Light.eot?#iefix") format("embedded-opentype"), url("fonts/VWTextWeb-Light.woff") format("woff"), url("fonts/VWTextWeb-Light.ttf") format("truetype"), url("fonts/VWTextWeb-Light.svg") format("svg");
}

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

@font-face {
  font-family: 'Volkswagen Text';
  font-style: italic;
  font-weight: normal;
  src: url("fonts/VWTextWeb-RegularItalic.eot");
  src: url("fonts/VWTextWeb-RegularItalic.eot?#iefix") format("embedded-opentype"), url("fonts/VWTextWeb-RegularItalic.woff") format("woff"), url("fonts/VWTextWeb-RegularItalic.ttf") format("truetype"), url("fonts/VWTextWeb-RegularItalic.svg") format("svg");
}

@font-face {
  font-family: 'Volkswagen Text';
  font-style: normal;
  font-weight: 700;
  src: url("fonts/VWTextWeb-Bold.eot");
  src: url("fonts/VWTextWeb-Bold.eot?#iefix") format("embedded-opentype"), url("fonts/VWTextWeb-Bold.woff") format("woff"), url("fonts/VWTextWeb-Bold.ttf") format("truetype"), url("fonts/VWTextWeb-Bold.svg") format("svg");
}

@font-face {
  font-family: 'Volkswagen Text';
  font-style: italic;
  font-weight: 700;
  src: url("fonts/VWTextWeb-BoldItalic.eot");
  src: url("fonts/VWTextWeb-BoldItalic.eot?#iefix") format("embedded-opentype"), url("fonts/VWTextWeb-BoldItalic.woff") format("woff"), url("fonts/VWTextWeb-BoldItalic.ttf") format("truetype"), url("fonts/VWTextWeb-BoldItalic.svg") format("svg");
}

* {
  user-select: text;
  -webkit-user-select: text;
  -moz-user-select: text;
  -o-user-select: text;
}

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

body, html {
  width: 100%;
  height: 100%;
  font-family: "Volkswagen Head", Arial, sans-serif;
  font-weight: normal;
  letter-spacing: -0.25px;
  background-color: #ebf0f2;
}

html {
  -webkit-overflow-scrolling: touch;
}

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
}

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
}

strong, b {
  font-weight: bold;
}

i, em {
  font-style: italic;
}

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

.valign {
  display: inline-block;
  vertical-align: middle;
  height: 100%;
  width: 1px;
}

.inner,
.container {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

.vw-cookie-alert {
  color: #757575;
  font-size: 16px;
  line-height: 1.5;
  position: fixed;
  width: 100%;
  min-height: 70px;
  padding: 20px 60px 20px 20px;
  bottom: 0;
  font-weight: lighter;
  background-color: #e5e5e5;
  border-top: 1px solid #ccc;
  z-index: 500;
}

.vw-cookie-alert a {
  color: #87173d;
}

.vw-cookie-alert button {
  position: absolute;
  right: 20px;
  top: 20px;
  height: 30px;
  width: 30px;
  padding: 0;
  border: 0;
  line-height: 30px;
  font-family: "Volkswagen Text", Arial, sans-serif;
  text-align: center;
  border-radius: 4px;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
}

.g-recaptcha {
  background-color: #fff;
  padding: 10px;
  margin: 10px 0;
}

.g-recaptcha div {
  margin: 0 auto;
}

section.form .error_form {
  display: none;
}

.marques {
  width: 400px;
  text-align: right;
  letter-spacing: normal;
}

footer {
  margin-top: 60px;
}

footer table {
  vertical-align: middle;
}

/*
.n_vert {
  text-align: center;
  padding: 20px 0 0;
  background-color: #fff;

  span {
    display: inline-block;
    vertical-align: middle;
    font-size: 12px;
    color: #646464;
    margin-right: 20px;
  }

  strong {
    a {
      padding: 0 10px;
    }
  }

  @media only screen and (max-width: 1200px) {
    padding: 20px 10px;
  }
}
*/
.bottom_footer {
  padding: 20px 0;
  background-color: #00405b;
}

.bottom_footer a {
  font-size: 12px;
  color: #fff;
  margin-left: 40px;
}

.bottom_footer a:first-child {
  margin-left: 0;
}

.bottom_footer .footer_right {
  float: right;
}

@media only screen and (max-width: 1200px) {
  .bottom_footer {
    padding: 20px 10px;
  }
}

@media only screen and (max-width: 640px) {
  .bottom_footer .footer_right {
    float: none;
  }
  .bottom_footer a {
    display: block;
    text-align: center;
    font-size: 14px;
    margin: 20px 0;
  }
}

header {
  background-color: #fff;
  border-bottom: 2px solid #e6e6e6;
}

@media only screen and (max-width: 640px) {
  header {
    text-align: center;
  }
}

.top_head {
  background-color: #00405b;
  text-align: right;
  padding: 7px 0;
}

.top_head a {
  font-size: 12px;
  color: #fff;
}

@media only screen and (max-width: 640px) {
  .top_head {
    text-align: center;
  }
}

@media only screen and (max-width: 1200px) {
  .top_head {
    padding: 15px 10px;
  }
}

.marques {
  display: inline-block;
  vertical-align: middle;
  float: right;
  margin-top: 15px;
  letter-spacing: normal;
}

@media only screen and (max-width: 640px) {
  .marques {
    float: none;
    margin: 15px 0;
    letter-spacing: normal;
  }
}

.marque {
  margin: 0 10px;
}

.intro {
  margin: 60px auto;
  font-weight: 100;
  font-size: 25px;
  line-height: 28px;
  color: #00405b;
}

@media only screen and (max-width: 640px) {
  .intro {
    margin: 60px auto;
    text-align: center;
    font-size: 18px;
    padding: 0 20px;
  }
}

@media only screen and (max-width: 960px) {
  .intro {
    margin: 60px auto;
    text-align: center;
  }
}

@media only screen and (max-width: 1200px) {
  .intro {
    padding: 0 20px;
  }
}

h1 {
  font-family: "Volkswagen Head", Arial, sans-serif;
  font-weight: 700;
  font-size: 50px;
  margin: 10px 0;
  line-height: 49px;
}

@media only screen and (max-width: 640px) {
  h1 {
    font-size: 30px;
    line-height: inherit;
  }
}

section.com {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  margin-right: 1%;
}

@media only screen and (max-width: 960px) {
  section.com {
    width: 100%;
    margin: 0;
    padding: 0 20px;
  }
}

@media only screen and (max-width: 1200px) {
  section.com {
    padding: 0 20px;
  }
}

h2 {
  font-family: "Volkswagen Head", Arial, sans-serif;
  font-weight: 100;
  font-size: 24px;
  color: #00405b;
}

@media only screen and (max-width: 640px) {
  h2 {
    text-align: center;
  }
}

hr {
  margin: 15px 0 30px 0;
  height: 4px;
  color: #87173d;
  background-color: #87173d;
  border: 0;
}

hr.red {
  margin: 10px 0;
}

hr.full {
  margin: 60px 0;
  height: 1px;
  color: #d9d9d9;
  background-color: #d9d9d9;
}

.block-white hr.full.no-margin {
  margin: 20px -20px;
}

.block-white {
  background-color: #fff;
  border: 1px solid #e6e6e6;
  padding: 20px;
}

/* line 331, ../sass/home.scss */
section.faq {
  text-align: center;
}

@media only screen and (max-width: 640px) {
  /* line 335, ../sass/home.scss */
  section.faq {
    padding: 0 20px;
  }
}

/* line 335, ../sass/home.scss */
section.faq ul.questions {
  margin-top: 40px;
  -moz-column-count: 2;
  -webkit-column-count: 2;
  column-count: 2;
  -moz-column-gap: 20px;
  -webkit-column-gap: 20px;
  column-gap: 20px;
}

@media only screen and (max-width: 640px) {
  /* line 335, ../sass/home.scss */
  section.faq ul.questions {
    margin: 0;
    -moz-column-count: initial;
    -webkit-column-count: initial;
    column-count: initial;
    -moz-column-gap: initial;
    -webkit-column-gap: initial;
    column-gap: initial;
  }
}

/* line 349, ../sass/home.scss */
section.faq li.question {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  margin-bottom: 20px;
  padding: 20px;
  text-align: left;
  background-color: #fff;
  border: 1px solid #e6e6e6;
}

@media only screen and (max-width: 640px) {
  /* line 349, ../sass/home.scss */
  section.faq li.question {
    display: block;
    width: 100%;
    margin: 20px auto;
  }
}

/* line 366, ../sass/home.scss */
section.faq li.question h3 {
  margin-bottom: 10px;
  font-family: "Volkswagen Head";
  font-size: 14px;
  line-height: 18px;
  color: #04435e;
  text-align: left;
}

@media only screen and (max-width: 640px) {
  /* line 366, ../sass/home.scss */
  section.faq li.question h3 {
    /* text-align: center; */
  }
}

/* line 379, ../sass/home.scss */
section.faq li.question p {
  font-weight: 100;
  font-size: 12px;
  line-height: 16px;
  color: #04435e;
}

@media only screen and (max-width: 640px) {
  /* line 379, ../sass/home.scss */
  section.faq li.question p {
    /* text-align: center; */
  }
}

/* line 390, ../sass/home.scss */
section.faq .btn_faq {
  display: inline-block;
  margin: 30px 0 60px 0;
  padding: 10px 20px;
  text-align: center;
  font-size: 14px;
  text-transform: uppercase;
  color: #fff;
  background-color: #87173d;
  -moz-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
}

@media only screen and (max-width: 640px) {
  /* line 390, ../sass/home.scss */
  section.faq .btn_faq {
    display: block;
    padding: 30px 0;
  }
}

/* line 408, ../sass/home.scss */
section.faq .btn_faq:hover,
section.faq .btn_faq:focus {
  background-color: #61102b;
}

/* line 413, ../sass/home.scss */
section.faq .btn_faq img {
  margin-right: 10px;
  margin-top: -3px;
}

li.article h3 {
  margin-bottom: 20px;
}

section.faq button {
  position: absolute;
  top: 20px;
  right: 20px;
  display: inline-block;
  background-color: #ebf0f2;
  border: none;
  color: #646464;
  outline: none;
  width: 25px;
  height: 25px;
}

section.faq h3 {
  width: calc(100% - 25px);
  vertical-align: middle;
}

section.faq p {
  padding-right: 45px;
}

section.faq ul.questions li {
  position: relative;
}

.form-submit input[type="submit"] {
  color: #fff;
  background-color: #87173d;
  border: 0;
  width: 100%;
  padding: 19px 20px;
  font-size: 18px;
  font-weight: lighter;
  cursor: pointer;
  text-transform: uppercase;
}

.btn-download {
  color: #fff;
  background-color: #87173d;
  border: 0;
  padding: 11px 20px;
  cursor: pointer;
  display: block;
  width: 100%;
  text-align: left;
}

.btn-download span {
  display: block;
  font-size: 14px;
  background: url(/assets/images/i_download.png) no-repeat right center;
  color: #fff;
  font-weight: lighter;
  min-height: 25px;
  padding: 10px 0;
}

.btn-download:hover {
  text-decoration: none;
  color: #fff;
}

.nvert_block {
  background-color: #fff;
  padding: 30px;
  font-size: 0;
  margin-bottom: 40px;
}

.nvert_block.nvertfooter {
  margin-bottom: 0;
}

.tel_nvert,
.chat_nvert {
  width: 50%;
  height: 120px;
  display: block;
  vertical-align: middle;
  margin: 0 auto;
  border: 1px solid #e6e6e6;
}

@media only screen and (max-width: 1200px) {
  .tel_nvert,
  .chat_nvert {
    width: 100%;
    display: block;
    margin: 20px auto;
  }
}

@media only screen and (max-width: 520px) {
  .tel_nvert,
  .chat_nvert {
    height: 150px;
  }
}

@media only screen and (max-width: 360px) {
  .tel_nvert,
  .chat_nvert {
    height: auto;
    text-align: center;
  }
}

.icon_telnvert,
.icon_chatnvert {
  width: 25%;
  display: inline-block;
  vertical-align: middle;
  height: 100%;
  border-right: 1px solid #e6e6e6;
  text-align: center;
}

@media only screen and (max-width: 360px) {
  .icon_telnvert,
  .icon_chatnvert {
    width: 100%;
    height: auto;
    display: block;
    border-right: none;
    border-bottom: 1px solid #e6e6e6;
  }
}

.icon_telnvert img {
  margin-top: 30px;
}

.icon_chatnvert img {
  margin-top: 40px;
}

@media only screen and (max-width: 360px) {
  .icon_telnvert,
  .icon_chatnvert {
    padding: 10px 0;
    margin: 0 auto;
  }
  .icon_telnvert img,
  .icon_chatnvert img {
    margin: 0;
  }
}

.icon_telnvert span,
.icon_chatnvert span {
  display: block;
  font-weight: normal;
  font-size: 12px;
  margin-top: 10px;
}

.txt_telnvert,
.txt_chatnvert {
  width: 75%;
  padding: 0 10px;
  display: inline-block;
  vertical-align: middle;
  font-weight: normal;
  font-size: 12px;
  color: #00405b;
}

.txt_telnvert strong,
.txt_chatnvert strong {
  font-weight: bold;
}

@media only screen and (max-width: 360px) {
  .txt_telnvert,
  .txt_chatnvert {
    padding: 10px 0;
  }
}

.nvert {
  margin-top: 10px;
  border: 1px solid #e6e6e6;
}

.nvert .num_nvert {
  width: 60%;
  display: inline-block;
  vertical-align: middle;
  background-color: #fff;
  color: #669933;
  font-size: 18px;
  padding-left: 5px;
}

.nvert .txt_nvert {
  padding: 7px;
  width: 40%;
  display: inline-block;
  vertical-align: middle;
  background-color: #669933;
  color: #fff;
  font-size: 12px;
}

@media only screen and (max-width: 1200px) {
  .nvert .num_nvert {
    font-size: 22px;
    padding-left: 10px;
  }
  .nvert .txt_nvert {
    padding: 15px;
  }
}

@media only screen and (max-width: 520px) {
  .nvert .num_nvert {
    display: block;
    width: 100%;
    padding: 5px;
  }
  .nvert .txt_nvert {
    display: block;
    width: 100%;
    padding: 7px;
  }
}

.n_vert {
  text-align: center;
  padding: 20px 0 0;
  background-color: #fff;
}

.n_vert h3 {
  text-align: center;
  color: #00405b;
  font-size: 24px;
  font-family: 'Volkswagen Head';
  font-weight: 100;
  padding-bottom: 20px;
}

.page-index section.com h2 {
  font-size: 28px;
}

.page-index section.com p.intro_com {
  font-size: 16px;
}

.page-index section.form label.opttext {
  font-size: 16px;
}

.page-index section.form label.opttext .radio-wrapper {
  margin-left: 20%;
}

.page-index section.form label.opttext .radio-txt {
  width: calc(80% - 30px);
}

.page-index section.form p {
  font-size: 16px;
}

/**
 * Page Groups: Login
 */
.page-groups--login {
  padding: 26px 20px 0 20px;
}

.page-groups--login .intro {
  margin: 20px 0;
  padding: 0;
}

.page-groups--login .intro h1 {
  font-size: 30px;
  margin: 0;
}

.page-groups--login .form-groups-login h2 {
  font-size: 18px;
  margin-bottom: 20px;
}

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

.page-groups--login .form-groups-login .form-group label {
  font-size: 18px;
  margin-bottom: 8px;
  display: block;
  font-family: "Volkswagen Head", Arial, sans-serif;
}

.page-groups--login .form-groups-login .form-group .control-form {
  display: block;
  width: 100%;
  background-color: #f2f2f2;
  border: 1px solid #e6e6e6;
  font-size: 18px;
  padding: 10px;
}

.page-groups--login .form-groups-login .form-submit input {
  color: #fff;
  text-transform: uppercase;
  background-color: #87173d;
  border: 0;
  width: 100%;
  padding: 10px;
  font-size: 18px;
  font-weight: lighter;
}

/**
 * Page Groups: Dashboard
 */
.page-groups--dashboard {
  color: #00405b;
}

.page-groups--dashboard .text-helper {
  color: #595959;
  font-style: italic;
}

.page-groups--dashboard select.form-control + .chosen-container-multi .chosen-choices {
  background-color: #f2f2f2;
  color: #00405b;
  border: 1px solid #e6e6e6;
  font-size: 18px;
  padding: 4px 10px;
}

.page-groups--dashboard .chosen-container-multi .chosen-choices li.search-field input[type="text"] {
  color: #00405b;
  font-family: "Volkswagen Head", Arial, sans-serif;
  margin: 0;
  padding: 0;
}

.page-groups--dashboard select.form-control + .chosen-container-multi .chosen-choices li.search-field input[type="text"] {
  margin: 0;
  padding: 0;
}

.page-groups--dashboard select.form-control + .chosen-container .chosen-results li.group-result {
  font-weight: bold;
  padding: 3px 15px;
}

.page-groups--dashboard select.form-control + .chosen-container .chosen-results li.group-result:hover {
  background-color: #fff;
  color: #000;
}

.page-groups--dashboard .groups-infos {
  font-size: 14px;
  line-height: 18px;
  letter-spacing: -0.025em;
  color: #00405b;
}

.page-groups--dashboard .block-white {
  margin-bottom: 10px;
}

@media (min-width: 768px) {
  .page-groups--dashboard .block-white {
    margin-bottom: 20px;
  }
}

.page-groups--dashboard .block-white h2 {
  text-align: left;
}

.page-groups--dashboard .block-download select[name="brand"],
.page-groups--dashboard .block-download button[name="download-selection"] {
  margin-bottom: 10px;
}

.page-groups--dashboard .block-download select[name="engine"] {
  margin-top: 10px;
}

.page-groups--dashboard .filtered-vehicles-counter {
  font-size: 13px;
  font-weight: bold;
  margin-top: 10px;
}

.page-groups--dashboard .groups-infos--brand {
  margin: 10px 0;
  width: 50%;
  float: left;
  position: relative;
  min-height: 1px;
}

@media (min-width: 768px) {
  .page-groups--dashboard .groups-infos--brand {
    width: 20%;
  }
}

.page-groups--dashboard .groups-infos--brand p {
  margin-bottom: 8px;
}

.page-groups--dashboard .news .news-news {
  border: 1px solid #e6e6e6;
  margin-top: 10px;
}

.page-groups--dashboard .news .news-news:first-child {
  margin-top: 0;
}

.page-groups--dashboard .news .news-news .news-news--header-news {
  background: #f7f9fa url(/assets/images/i_calendar.png) no-repeat 13px center;
  border-bottom: 1px solid #e6e6e6;
  vertical-align: middle;
  font-weight: 100;
  font-size: 14px;
  text-transform: uppercase;
  color: #757575;
  padding: 8px 20px 8px 40px;
  cursor: pointer;
  position: relative;
}

.page-groups--dashboard .news .news-news .news-news--header-news .news-news--header-collapsed-btn {
  position: absolute;
  top: 3px;
  right: 8px;
  display: none;
  background-color: #ebf0f2;
  border: none;
  color: #646464;
  outline: none;
  width: 25px;
  height: 25px;
}

.page-groups--dashboard .news .news-news .news-news--header-news .news-news--header-expanded-btn {
  display: inline-block;
  position: absolute;
  top: 3px;
  right: 8px;
  background-color: #ebf0f2;
  border: none;
  color: #646464;
  outline: none;
  width: 25px;
  height: 25px;
}

.page-groups--dashboard .news .news-news .news-news--header-news.collapsed .news-news--header-expanded-btn {
  display: none;
}

.page-groups--dashboard .news .news-news .news-news--header-news.collapsed .news-news--header-collapsed-btn {
  display: inline-block;
}

.page-groups--dashboard .news .news-news .news-news--header-news.collapsed.collapsed-no-icon a {
  background: #fff url(/assets/images/i_download.png) no-repeat 9px center;
}

.page-groups--dashboard .news .news-news .news-news--header-docs {
  background: #fff url(/assets/images/i_download.png) no-repeat 9px center;
  border-bottom: 1px solid #e6e6e6;
  vertical-align: middle;
  font-weight: 100;
  font-size: 14px;
  text-transform: uppercase;
  color: #757575;
  padding: 8px 40px 8px 40px;
  cursor: pointer;
  position: relative;
}

.page-groups--dashboard .news .news-news .news-news--header-docs.collapsed-no-icon {
  background: #fff;
}

.page-groups--dashboard .news .news-news .news-news--header-docs .news-news--header-collapsed-btn {
  position: absolute;
  top: 9%;
  right: 8px;
  display: none;
  background-color: #ebf0f2;
  border: none;
  color: #646464;
  outline: none;
  width: 25px;
  height: 25px;
}

.page-groups--dashboard .news .news-news .news-news--header-docs .news-news--header-expanded-btn {
  display: inline-block;
  position: absolute;
  top: 9%;
  right: 8px;
  background-color: #ebf0f2;
  border: none;
  color: #646464;
  outline: none;
  width: 25px;
  height: 25px;
}

.page-groups--dashboard .news .news-news .news-news--header-docs.collapsed .news-news--header-expanded-btn {
  display: none;
}

.page-groups--dashboard .news .news-news .news-news--header-docs.collapsed .news-news--header-collapsed-btn {
  display: inline-block;
}

.page-groups--dashboard .news .news-news .news-news--header-docs.collapsed.collapsed-no-icon {
  background: #fff url(/assets/images/i_download.png) no-repeat 9px center;
}

.page-groups--dashboard .news .news-news .news-news--content {
  color: #00405b;
  font-size: 18px;
  font-weight: bold;
  padding: 10px;
}

.page-groups--dashboard .news .news-news .news-news--text {
  color: #00405b;
  font-size: inherit;
  font-weight: normal;
  padding: 10px 10px;
}

.page-groups--dashboard .news .news-news .news-news--text .news-news--download-link a, .page-groups--dashboard .news .news-news .news-news--text .news-news--download-link a:link, .page-groups--dashboard .news .news-news .news-news--text .news-news--download-link a:visited {
  display: block;
  width: 95%;
  padding: 10px 0px;
  margin: auto;
  font-style: italic;
  font-weight: 100;
  color: #00405b;
}

.page-groups--dashboard .news .news-news .news-news--text.icon-link .news-news--download-link a {
  background: #fff url(/assets/images/i_download.png) no-repeat 0px center;
  padding-left: 30px;
}

.page-groups--dashboard .news .news-news .news-news--description {
  color: #00405b;
  font-size: 14px;
  font-weight: normal;
  padding: 10px;
  line-height: 18px;
}

.page-groups--dashboard .news .news-news .news-news--link {
  font-size: 12px;
  padding: 0 10px 10px;
}

.page-groups--dashboard .news .news-news .news-news--link a {
  color: #87173d;
}

.page-groups--dashboard label.label-mini {
  margin-bottom: 8px;
  font-size: 12px;
}

.page-groups--dashboard .groups-dashboard--form-vin label {
  margin-bottom: 8px;
  font-size: 12px;
}

.page-groups--dashboard .groups-dashboard--form-vin .autocomplete-vin-results {
  display: none;
}

.page-groups--dashboard .groups-dashboard--form-vin .autocomplete-vin-results table {
  min-width: 1600px;
}

.page-groups--dashboard .groups-dashboard--form-vin .autocomplete-vin-results thead td {
  font-size: 15px;
  color: #00405b;
}

.page-groups--dashboard .groups-dashboard--form-vin .autocomplete-vin-results tbody td {
  color: #757575;
  font-size: 14px;
  min-width: 100px;
}

.page-groups--dashboard .help-text {
  font-size: 11px;
  margin: 10px 0;
  background: url(/assets/images/i_info_blue.png) no-repeat 0 0;
  padding-left: 46px;
  display: block;
  min-height: 25px;
}

.page-groups--dashboard .form-control {
  width: 100%;
  background-color: #f2f2f2;
  color: #00405b;
  border: 1px solid #e6e6e6;
  font-size: 18px;
  padding: 6px 10px;
  border-radius: 0;
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLmNzcyIsInNvdXJjZXMiOlsic3R5bGVzLnNjc3MiLCJ2ZW5kb3IvX2Jvb3RzdHJhcC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL192YXJpYWJsZXMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbWl4aW5zLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19oaWRlLXRleHQuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX29wYWNpdHkuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2ltYWdlLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19sYWJlbHMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LWZpbHRlci5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcmVzaXplLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19yZXNwb25zaXZlLXZpc2liaWxpdHkuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3NpemUuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3RhYi1mb2N1cy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGV4dC1vdmVyZmxvdy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdmVuZG9yLXByZWZpeGVzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19hbGVydHMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3BhbmVscy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2Zvcm1zLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19wcm9ncmVzcy1iYXIuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19jZW50ZXItYmxvY2suc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX25hdi12ZXJ0aWNhbC1hbGlnbi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbm9ybWFsaXplLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3ByaW50LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3NjYWZmb2xkaW5nLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3R5cGUuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fY29kZS5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19ncmlkLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3RhYmxlcy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19mb3Jtcy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19idXR0b25zLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2NvbXBvbmVudC1hbmltYXRpb25zLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2Ryb3Bkb3ducy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19idXR0b24tZ3JvdXBzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2lucHV0LWdyb3Vwcy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19uYXZzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX25hdmJhci5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19sYWJlbHMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fanVtYm90cm9uLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2FsZXJ0cy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19tZWRpYS5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19saXN0LWdyb3VwLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3BhbmVscy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3dlbGxzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2Nsb3NlLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3V0aWxpdGllcy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19yZXNwb25zaXZlLXV0aWxpdGllcy5zY3NzIiwidmVuZG9yL19hdXRvY29tcGxldGUuc2NzcyIsInZlbmRvci9fanF1ZXJ5LWRhdGVyYW5nZXBpY2tlci5zY3NzIiwidmVuZG9yL19jaG9zZW4uc2NzcyIsInV0aWxzL19yZXNldC5zY3NzIiwidXRpbHMvX2ZvbnRzLnNjc3MiLCJfY29tbW9uLnNjc3MiLCJfZmFxLnNjc3MiLCJ1dGlscy9fZm9ybXMuc2NzcyIsInV0aWxzL19uLXZlcnQuc2NzcyIsInBhZ2VzL19pbmRleC5zY3NzIiwicGFnZXMvX2dyb3Vwcy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIiRwYXRoLWZvbnRzOiAnZm9udHMvJztcbiRmb250LXZ3LWhlYWQ6ICdWb2xrc3dhZ2VuIEhlYWQnLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRmb250LXZ3LXRleHQ6ICdWb2xrc3dhZ2VuIFRleHQnLCBBcmlhbCwgc2Fucy1zZXJpZjtcblxuJGNvbG9yLXZ3LWJsdWU6ICAgICAjMDA0MDViO1xuJGNvbG9yLXZ3LWJ1cmd1bmR5OiAjODcxNzNkO1xuJGNvbG9yLWJvcmRlci1ncmV5OiAjZTZlNmU2O1xuXG5AaW1wb3J0IFwidmVuZG9yL2Jvb3RzdHJhcFwiO1xuQGltcG9ydCBcInZlbmRvci9hdXRvY29tcGxldGVcIjtcbkBpbXBvcnQgXCJ2ZW5kb3IvanF1ZXJ5LWRhdGVyYW5nZXBpY2tlclwiO1xuQGltcG9ydCBcInZlbmRvci9jaG9zZW5cIjtcbkBpbXBvcnQgXCJ1dGlscy9yZXNldFwiO1xuQGltcG9ydCBcInV0aWxzL2ZvbnRzXCI7XG5AaW1wb3J0IFwiY29tbW9uXCI7XG5AaW1wb3J0IFwiZmFxXCI7XG5AaW1wb3J0IFwidXRpbHMvZm9ybXNcIjtcbkBpbXBvcnQgXCJ1dGlscy9uLXZlcnRcIjtcbkBpbXBvcnQgXCJwYWdlcy9pbmRleFwiO1xuQGltcG9ydCBcInBhZ2VzL2dyb3Vwc1wiO1xuIiwiLyohXG4gKiBCb290c3RyYXAgdjMuMy41IChodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbSlcbiAqIENvcHlyaWdodCAyMDExLTIwMTUgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqL1xuXG4vLyBDb3JlIHZhcmlhYmxlcyBhbmQgbWl4aW5zXG5AaW1wb3J0IFwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnNcIjtcblxuLy8gUmVzZXQgYW5kIGRlcGVuZGVuY2llc1xuQGltcG9ydCBcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9ub3JtYWxpemVcIjtcbkBpbXBvcnQgXCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvcHJpbnRcIjtcbi8vIEBpbXBvcnQgXCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvZ2x5cGhpY29uc1wiO1xuXG4vLyBDb3JlIENTU1xuQGltcG9ydCBcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9zY2FmZm9sZGluZ1wiO1xuQGltcG9ydCBcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC90eXBlXCI7XG5AaW1wb3J0IFwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2NvZGVcIjtcbkBpbXBvcnQgXCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvZ3JpZFwiO1xuQGltcG9ydCBcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC90YWJsZXNcIjtcbkBpbXBvcnQgXCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvZm9ybXNcIjtcbkBpbXBvcnQgXCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvYnV0dG9uc1wiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2NvbXBvbmVudC1hbmltYXRpb25zXCI7XG5AaW1wb3J0IFwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2Ryb3Bkb3duc1wiO1xuQGltcG9ydCBcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9idXR0b24tZ3JvdXBzXCI7XG5AaW1wb3J0IFwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2lucHV0LWdyb3Vwc1wiO1xuQGltcG9ydCBcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9uYXZzXCI7XG5AaW1wb3J0IFwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL25hdmJhclwiO1xuLy8gQGltcG9ydCBcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9icmVhZGNydW1ic1wiO1xuLy8gQGltcG9ydCBcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9wYWdpbmF0aW9uXCI7XG4vLyBAaW1wb3J0IFwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL3BhZ2VyXCI7XG5AaW1wb3J0IFwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2xhYmVsc1wiO1xuLy8gQGltcG9ydCBcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9iYWRnZXNcIjtcbkBpbXBvcnQgXCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvanVtYm90cm9uXCI7XG4vLyBAaW1wb3J0IFwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL3RodW1ibmFpbHNcIjtcbkBpbXBvcnQgXCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvYWxlcnRzXCI7XG4vLyBAaW1wb3J0IFwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL3Byb2dyZXNzLWJhcnNcIjtcbkBpbXBvcnQgXCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWVkaWFcIjtcbkBpbXBvcnQgXCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9wYW5lbHNcIjtcbkBpbXBvcnQgXCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvcmVzcG9uc2l2ZS1lbWJlZFwiO1xuQGltcG9ydCBcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC93ZWxsc1wiO1xuQGltcG9ydCBcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9jbG9zZVwiO1xuXG4vLyBDb21wb25lbnRzIHcvIEphdmFTY3JpcHRcbi8vIEBpbXBvcnQgXCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbW9kYWxzXCI7XG4vLyBAaW1wb3J0IFwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL3Rvb2x0aXBcIjtcbi8vIEBpbXBvcnQgXCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvcG9wb3ZlcnNcIjtcbi8vIEBpbXBvcnQgXCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvY2Fyb3VzZWxcIjtcblxuLy8gVXRpbGl0eSBjbGFzc2VzXG5AaW1wb3J0IFwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL3V0aWxpdGllc1wiO1xuQGltcG9ydCBcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9yZXNwb25zaXZlLXV0aWxpdGllc1wiO1xuIiwiJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlcjogZmFsc2UgIWRlZmF1bHQ7XG4vL1xuLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vPT0gQ29sb3JzXG4vL1xuLy8jIyBHcmF5IGFuZCBicmFuZCBjb2xvcnMgZm9yIHVzZSBhY3Jvc3MgQm9vdHN0cmFwLlxuXG4kZ3JheS1iYXNlOiAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRncmF5LWRhcmtlcjogICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDEzLjUlKSAhZGVmYXVsdDsgLy8gIzIyMlxuJGdyYXktZGFyazogICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMjAlKSAhZGVmYXVsdDsgICAvLyAjMzMzXG4kZ3JheTogICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAzMy41JSkgIWRlZmF1bHQ7IC8vICM1NTVcbiRncmF5LWxpZ2h0OiAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDQ2LjclKSAhZGVmYXVsdDsgLy8gIzc3N1xuJGdyYXktbGlnaHRlcjogICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgOTMuNSUpICFkZWZhdWx0OyAvLyAjZWVlXG5cbiRicmFuZC1wcmltYXJ5OiAgICAgICAgIGRhcmtlbigjNDI4YmNhLCA2LjUlKSAhZGVmYXVsdDsgLy8gIzMzN2FiN1xuJGJyYW5kLXN1Y2Nlc3M6ICAgICAgICAgIzVjYjg1YyAhZGVmYXVsdDtcbiRicmFuZC1pbmZvOiAgICAgICAgICAgICM1YmMwZGUgIWRlZmF1bHQ7XG4kYnJhbmQtd2FybmluZzogICAgICAgICAjZjBhZDRlICFkZWZhdWx0O1xuJGJyYW5kLWRhbmdlcjogICAgICAgICAgI2Q5NTM0ZiAhZGVmYXVsdDtcblxuXG4vLz09IFNjYWZmb2xkaW5nXG4vL1xuLy8jIyBTZXR0aW5ncyBmb3Igc29tZSBvZiB0aGUgbW9zdCBnbG9iYWwgc3R5bGVzLlxuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIGA8Ym9keT5gLlxuJGJvZHktYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogR2xvYmFsIHRleHQgY29sb3Igb24gYDxib2R5PmAuXG4kdGV4dC1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG4vLyoqIEdsb2JhbCB0ZXh0dWFsIGxpbmsgY29sb3IuXG4kbGluay1jb2xvcjogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogTGluayBob3ZlciBjb2xvciBzZXQgdmlhIGBkYXJrZW4oKWAgZnVuY3Rpb24uXG4kbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4vLyoqIExpbmsgaG92ZXIgZGVjb3JhdGlvbi5cbiRsaW5rLWhvdmVyLWRlY29yYXRpb246IHVuZGVybGluZSAhZGVmYXVsdDtcblxuXG4vLz09IFR5cG9ncmFwaHlcbi8vXG4vLyMjIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1zZXJpZjogICAgICAgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmICFkZWZhdWx0O1xuLy8qKiBEZWZhdWx0IG1vbm9zcGFjZSBmb250cyBmb3IgYDxjb2RlPmAsIGA8a2JkPmAsIGFuZCBgPHByZT5gLlxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxhcmdlOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcbiRmb250LXNpemUtc21hbGw6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuXG4kZm9udC1zaXplLWgxOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjYpKSAhZGVmYXVsdDsgLy8gfjM2cHhcbiRmb250LXNpemUtaDI6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuMTUpKSAhZGVmYXVsdDsgLy8gfjMwcHhcbiRmb250LXNpemUtaDM6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS43KSkgIWRlZmF1bHQ7IC8vIH4yNHB4XG4kZm9udC1zaXplLWg0OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcbiRmb250LXNpemUtaDU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1oNjogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbi8vKiogVW5pdC1sZXNzIGBsaW5lLWhlaWdodGAgZm9yIHVzZSBpbiBjb21wb25lbnRzIGxpa2UgYnV0dG9ucy5cbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgMS40Mjg1NzE0MjkgIWRlZmF1bHQ7IC8vIDIwLzE0XG4vLyoqIENvbXB1dGVkIFwibGluZS1oZWlnaHRcIiAoYGZvbnQtc2l6ZWAgKiBgbGluZS1oZWlnaHRgKSBmb3IgdXNlIHdpdGggYG1hcmdpbmAsIGBwYWRkaW5nYCwgZXRjLlxuJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOiAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UpKSAhZGVmYXVsdDsgLy8gfjIwcHhcblxuLy8qKiBCeSBkZWZhdWx0LCB0aGlzIGluaGVyaXRzIGZyb20gdGhlIGA8Ym9keT5gLlxuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgIDEuMSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcblxuXG4vLz09IEljb25vZ3JhcGh5XG4vL1xuLy8jIyBTcGVjaWZ5IGN1c3RvbSBsb2NhdGlvbiBhbmQgZmlsZW5hbWUgb2YgdGhlIGluY2x1ZGVkIEdseXBoaWNvbnMgaWNvbiBmb250LiBVc2VmdWwgZm9yIHRob3NlIGluY2x1ZGluZyBCb290c3RyYXAgdmlhIEJvd2VyLlxuXG4vLyoqIExvYWQgZm9udHMgZnJvbSB0aGlzIGRpcmVjdG9yeS5cblxuLy8gW2NvbnZlcnRlcl0gSWYgJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciBpZiB1c2VkLCBwcm92aWRlIHBhdGggcmVsYXRpdmUgdG8gdGhlIGFzc2V0cyBsb2FkIHBhdGguXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGJlY2F1c2Ugc29tZSBhc3NldCBoZWxwZXJzLCBzdWNoIGFzIFNwcm9ja2V0cywgZG8gbm90IHdvcmsgd2l0aCBmaWxlLXJlbGF0aXZlIHBhdGhzLlxuJGljb24tZm9udC1wYXRoOiBpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCBcImJvb3RzdHJhcC9cIiwgXCIuLi9mb250cy9ib290c3RyYXAvXCIpICFkZWZhdWx0O1xuXG4vLyoqIEZpbGUgbmFtZSBmb3IgYWxsIGZvbnQgZmlsZXMuXG4kaWNvbi1mb250LW5hbWU6ICAgICAgICAgIFwiZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhclwiICFkZWZhdWx0O1xuLy8qKiBFbGVtZW50IElEIHdpdGhpbiBTVkcgaWNvbiBmaWxlLlxuJGljb24tZm9udC1zdmctaWQ6ICAgICAgICBcImdseXBoaWNvbnNfaGFsZmxpbmdzcmVndWxhclwiICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29tcG9uZW50c1xuLy9cbi8vIyMgRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLiBWYWx1ZXMgYmFzZWQgb24gMTRweCB0ZXh0IGFuZCAxLjQyOCBsaW5lLWhlaWdodCAofjIwcHggdG8gc3RhcnQpLlxuXG4kcGFkZGluZy1iYXNlLXZlcnRpY2FsOiAgICAgNnB4ICFkZWZhdWx0O1xuJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsOiAgIDEycHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOiAgICAxMHB4ICFkZWZhdWx0O1xuJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDogIDE2cHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsOiAgICA1cHggIWRlZmF1bHQ7XG4kcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsOiAgMTBweCAhZGVmYXVsdDtcblxuJHBhZGRpbmcteHMtdmVydGljYWw6ICAgICAgIDFweCAhZGVmYXVsdDtcbiRwYWRkaW5nLXhzLWhvcml6b250YWw6ICAgICA1cHggIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1sYXJnZTogICAgICAgICAxLjMzMzMzMzMgIWRlZmF1bHQ7IC8vIGV4dHJhIGRlY2ltYWxzIGZvciBXaW4gOC4xIENocm9tZVxuJGxpbmUtaGVpZ2h0LXNtYWxsOiAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgIDRweCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICA2cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAgM3B4ICFkZWZhdWx0O1xuXG4vLyoqIEdsb2JhbCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogR2xvYmFsIGJhY2tncm91bmQgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyoqIFdpZHRoIG9mIHRoZSBgYm9yZGVyYCBmb3IgZ2VuZXJhdGluZyBjYXJldHMgdGhhdCBpbmRpY2F0b3IgZHJvcGRvd25zLlxuJGNhcmV0LXdpZHRoLWJhc2U6ICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogQ2FyZXRzIGluY3JlYXNlIHNsaWdodGx5IGluIHNpemUgZm9yIGxhcmdlciBjb21wb25lbnRzLlxuJGNhcmV0LXdpZHRoLWxhcmdlOiAgICAgICAgIDVweCAhZGVmYXVsdDtcblxuXG4vLz09IFRhYmxlc1xuLy9cbi8vIyMgQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4vLyoqIFBhZGRpbmcgZm9yIGA8dGg+YHMgYW5kIGA8dGQ+YHMuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAgIDhweCAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBmb3IgY2VsbHMgaW4gYC50YWJsZS1jb25kZW5zZWRgLlxuJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc6ICA1cHggIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGFsbCB0YWJsZXMuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtc3RyaXBlZGAuXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgICNmOWY5ZjkgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1ob3ZlcmAuXG4kdGFibGUtYmctaG92ZXI6ICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlciAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRhYmxlIGFuZCBjZWxsIGJvcmRlcnMuXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBCdXR0b25zXG4vL1xuLy8jIyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XG5cbiRidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tcHJpbWFyeS1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1zdWNjZXNzLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbiRidG4taW5mby1ib3JkZXI6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnRuLWluZm8tYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4td2FybmluZy1iZzogICAgICAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4td2FybmluZy1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkYnRuLWRhbmdlci1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3Jtc1xuLy9cbi8vIyNcblxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dCBkaXNhYmxlZD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgYDxpbnB1dD5gc1xuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcbiRpbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IFJlbmFtZSBgJGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGAkaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4vLyBUaGlzIGhhcyBubyBlZmZlY3Qgb24gYDxzZWxlY3Q+YHMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgaW5wdXRzIG9uIGZvY3VzXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAgICAgICAgICAgICAjNjZhZmU5ICFkZWZhdWx0O1xuXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgICAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgICAoY2VpbCgkZm9udC1zaXplLWxhcmdlICogJGxpbmUtaGVpZ2h0LWxhcmdlKSArICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtc21hbGw6ICAgICAgICAgICAgIChmbG9vcigkZm9udC1zaXplLXNtYWxsICogJGxpbmUtaGVpZ2h0LXNtYWxsKSArICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG5cbi8vKiogYC5mb3JtLWdyb3VwYCBtYXJnaW5cbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRsZWdlbmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kbGVnZW5kLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGN1cnNvciBmb3IgZm9ybSBjb250cm9scyBhbmQgYnV0dG9ucy5cbiRjdXJzb3ItZGlzYWJsZWQ6ICAgICAgICAgICAgICAgIG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG5cbi8vPT0gRHJvcGRvd25zXG4vL1xuLy8jIyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vKiogQmFja2dyb3VuZCBmb3IgdGhlIGRyb3Bkb3duIG1lbnUuXG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgLlxuJGRyb3Bkb3duLWJvcmRlcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMTUpICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgICoqZm9yIElFOCoqLlxuJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbi8vKiogRGl2aWRlciBjb2xvciBmb3IgYmV0d2VlbiBkcm9wZG93biBpdGVtcy5cbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogRHJvcGRvd24gbGluayB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbi8vKiogSG92ZXIgY29sb3IgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRncmF5LWRhcmssIDUlKSAhZGVmYXVsdDtcbi8vKiogSG92ZXIgYmFja2dyb3VuZCBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gdGV4dCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuLy8qKiBEaXNhYmxlZCBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGhlYWRlcnMgd2l0aGluIGRyb3Bkb3duIG1lbnVzLlxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogRGVwcmVjYXRlZCBgJGRyb3Bkb3duLWNhcmV0LWNvbG9yYCBhcyBvZiB2My4xLjBcbiRkcm9wZG93bi1jYXJldC1jb2xvcjogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG5cblxuLy8tLSBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG4vL1xuLy8gTm90ZTogVGhlc2UgdmFyaWFibGVzIGFyZSBub3QgZ2VuZXJhdGVkIGludG8gdGhlIEN1c3RvbWl6ZXIuXG5cbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LW5hdmJhci1maXhlZDogICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kOiAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG5cblxuLy89PSBNZWRpYSBxdWVyaWVzIGJyZWFrcG9pbnRzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIGJyZWFrcG9pbnRzIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLCBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBFeHRyYSBzbWFsbCBzY3JlZW4gLyBwaG9uZVxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4teHM6ICAgICAgICAgICAgICAgICAgNDgwcHggIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHMtbWluYCBhcyBvZiB2My4yLjBcbiRzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi14cyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1waG9uZWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXBob25lOiAgICAgICAgICAgICAgICRzY3JlZW4teHMtbWluICFkZWZhdWx0O1xuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1zbWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXNtOiAgICAgICAgICAgICAgICAgIDc2OHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXNtICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXRhYmxldGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXRhYmxldDogICAgICAgICAgICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLW1kYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbWQ6ICAgICAgICAgICAgICAgICAgOTkycHggIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbWQgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWRlc2t0b3A6ICAgICAgICAgICAgICRzY3JlZW4tbWQtbWluICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZ2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnOiAgICAgICAgICAgICAgICAgIDEyMDBweCAhZGVmYXVsdDtcbiRzY3JlZW4tbGctbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1sZyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZy1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGctZGVza3RvcDogICAgICAgICAgJHNjcmVlbi1sZy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNvIG1lZGlhIHF1ZXJpZXMgZG9uJ3Qgb3ZlcmxhcCB3aGVuIHJlcXVpcmVkLCBwcm92aWRlIGEgbWF4aW11bVxuJHNjcmVlbi14cy1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1zbS1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbWQtbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLWxnLW1pbiAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gR3JpZCBzeXN0ZW1cbi8vXG4vLyMjIERlZmluZSB5b3VyIGN1c3RvbSByZXNwb25zaXZlIGdyaWQuXG5cbi8vKiogTnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYmV0d2VlbiBjb2x1bW5zLiBHZXRzIGRpdmlkZWQgaW4gaGFsZiBmb3IgdGhlIGxlZnQgYW5kIHJpZ2h0LlxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4vLyBOYXZiYXIgY29sbGFwc2Vcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWNvbWVzIHVuY29sbGFwc2VkLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludDogICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlZ2lucyBjb2xsYXBzaW5nLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXg6ICgkZ3JpZC1mbG9hdC1icmVha3BvaW50IC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBDb250YWluZXIgc2l6ZXNcbi8vXG4vLyMjIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuJGNvbnRhaW5lci10YWJsZXQ6ICAgICAgICAgICAgICg3MjBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1zbS1taW5gIGFuZCB1cC5cbiRjb250YWluZXItc206ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXRhYmxldCAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3BcbiRjb250YWluZXItZGVza3RvcDogICAgICAgICAgICAoOTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbWQtbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLW1kOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1kZXNrdG9wICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcbiRjb250YWluZXItbGFyZ2UtZGVza3RvcDogICAgICAoMTE0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLWxnLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1sZzogICAgICAgICAgICAgICAgICRjb250YWluZXItbGFyZ2UtZGVza3RvcCAhZGVmYXVsdDtcblxuXG4vLz09IE5hdmJhclxuLy9cbi8vIyNcblxuLy8gQmFzaWNzIG9mIGEgbmF2YmFyXG4kbmF2YmFyLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICRsaW5lLWhlaWdodC1jb21wdXRlZCAhZGVmYXVsdDtcbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgKCgkbmF2YmFyLWhlaWdodCAtICRsaW5lLWhlaWdodC1jb21wdXRlZCkgLyAyKSAhZGVmYXVsdDtcbiRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDogICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgI2Y4ZjhmOCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBsaW5rc1xuJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciB0b2dnbGVcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICM4ODggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09PSBJbnZlcnRlZCBuYXZiYXJcbi8vIFJlc2V0IGludmVydGVkIG5hdmJhciBiYXNpY3NcbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzIyMiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXG4kbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciB0b2dnbGVcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IE5hdnNcbi8vXG4vLyMjXG5cbi8vPT09IFNoYXJlZCBuYXYgc3R5bGVzXG4kbmF2LWxpbmstcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vPT0gVGFic1xuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG4vLz09IFBpbGxzXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2luYXRpb25cbi8vXG4vLyMjXG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXI6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnZXJcbi8vXG4vLyMjXG5cbiRwYWdlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYm9yZGVyICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuJHBhZ2VyLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24taG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwYWdlci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdlci1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuJHBhZ2VyLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy89PSBKdW1ib3Ryb25cbi8vXG4vLyMjXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1jb2xvcjogICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWZvbnQtc2l6ZTogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjUpKSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1mb250LXNpemU6ICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDQuNSkpICFkZWZhdWx0O1xuXG5cbi8vPT0gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xuLy9cbi8vIyMgRGVmaW5lIGNvbG9ycyBmb3IgZm9ybSBmZWVkYmFjayBzdGF0ZXMgYW5kLCBieSBkZWZhdWx0LCBhbGVydHMuXG5cbiRzdGF0ZS1zdWNjZXNzLXRleHQ6ICAgICAgICAgICAgICMzYzc2M2QgIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAjZGZmMGQ4ICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXN1Y2Nlc3MtYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWluZm8tdGV4dDogICAgICAgICAgICAgICAgIzMxNzA4ZiAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICNkOWVkZjcgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtaW5mby1iZywgLTEwKSwgNyUpICFkZWZhdWx0O1xuXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS13YXJuaW5nLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1kYW5nZXItdGV4dDogICAgICAgICAgICAgICNhOTQ0NDIgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAjZjJkZWRlICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWRhbmdlci1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG5cbi8vPT0gVG9vbHRpcHNcbi8vXG4vLyMjXG5cbi8vKiogVG9vbHRpcCBtYXggd2lkdGhcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIHRleHQgY29sb3JcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgYmFja2dyb3VuZCBjb2xvclxuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuXG4vLyoqIFRvb2x0aXAgYXJyb3cgd2lkdGhcbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgIDVweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBhcnJvdyBjb2xvclxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBQb3BvdmVyc1xuLy9cbi8vIyNcblxuLy8qKiBQb3BvdmVyIGJvZHkgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG1heGltdW0gd2lkdGhcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGZhbGxiYWNrIGJvcmRlciBjb2xvclxuJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgdGl0bGUgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItdGl0bGUtYmc6ICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg6ICAgICAgICAgICAoJHBvcG92ZXItYXJyb3ctd2lkdGggKyAxKSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgICBmYWRlX2luKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgMC4wNSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgZmFsbGJhY2sgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOiAgZGFya2VuKCRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvciwgMjAlKSAhZGVmYXVsdDtcblxuXG4vLz09IExhYmVsc1xuLy9cbi8vIyNcblxuLy8qKiBEZWZhdWx0IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kZWZhdWx0LWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBQcmltYXJ5IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1wcmltYXJ5LWJnOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBJbmZvIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1pbmZvLWJnOiAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC13YXJuaW5nLWJnOiAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRhbmdlci1iZzogICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGxhYmVsIHRleHQgY29sb3JcbiRsYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgdGV4dCBjb2xvciBvZiBhIGxpbmtlZCBsYWJlbFxuJGxhYmVsLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IE1vZGFsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCB0aXRsZVxuJG1vZGFsLXRpdGxlLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgdGl0bGUgbGluZS1oZWlnaHRcbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgY29udGVudCBhcmVhXG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yXG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvciAqKmZvciBJRTgqKlxuJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG4vLyoqIE1vZGFsIGJhY2tkcm9wIGJhY2tncm91bmQgY29sb3JcbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGJhY2tkcm9wIG9wYWNpdHlcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgIC41ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAjZTVlNWU1ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBmb290ZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgOTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICA2MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmc6ICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICBib2xkICFkZWZhdWx0O1xuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLy89PSBQcm9ncmVzcyBiYXJzXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIHdob2xlIHByb2dyZXNzIGNvbXBvbmVudFxuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogUHJvZ3Jlc3MgYmFyIHRleHQgY29sb3JcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFZhcmlhYmxlIGZvciBzZXR0aW5nIHJvdW5kZWQgY29ybmVycyBvbiBwcm9ncmVzcyBiYXIuXG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZzogICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci13YXJuaW5nLWJnOiAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnOiAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4vLyoqIEluZm8gcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWluZm8tYmc6ICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcblxuXG4vLz09IExpc3QgZ3JvdXBcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvbiBgLmxpc3QtZ3JvdXAtaXRlbWBcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYC5saXN0LWdyb3VwLWl0ZW1gIGJvcmRlciBjb2xvclxuJGxpc3QtZ3JvdXAtYm9yZGVyOiAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBMaXN0IGdyb3VwIGJvcmRlciByYWRpdXNcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHNpbmdsZSBsaXN0IGl0ZW1zIG9uIGhvdmVyXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBvZiBhY3RpdmUgbGlzdCBlbGVtZW50c1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjogICAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjogIGxpZ2h0ZW4oJGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCA0MCUpICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWxpbmstY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I6ICAgJGxpc3QtZ3JvdXAtbGluay1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjogIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IFBhbmVsc1xuLy9cbi8vIyNcblxuJHBhbmVsLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1ib2R5LXBhZGRpbmc6ICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtaGVhZGluZy1wYWRkaW5nOiAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLXBhZGRpbmc6ICAgICAgICAkcGFuZWwtaGVhZGluZy1wYWRkaW5nICFkZWZhdWx0O1xuJHBhbmVsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGVsZW1lbnRzIHdpdGhpbiBwYW5lbHNcbiRwYW5lbC1pbm5lci1ib3JkZXI6ICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1wcmltYXJ5LXRleHQ6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1ib3JkZXI6ICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFuZWwtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZzogICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1oZWFkaW5nLWJnOiAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmc6ICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItaGVhZGluZy1iZzogICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBUaHVtYm5haWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgaW1hZ2VcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJhY2tncm91bmQgY29sb3JcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIGNvbG9yXG4kdGh1bWJuYWlsLWJvcmRlcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIHJhZGl1c1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBDdXN0b20gdGV4dCBjb2xvciBmb3IgdGh1bWJuYWlsIGNhcHRpb25zXG4kdGh1bWJuYWlsLWNhcHRpb24tY29sb3I6ICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBjYXB0aW9uXG4kdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZzogICA5cHggIWRlZmF1bHQ7XG5cblxuLy89PSBXZWxsc1xuLy9cbi8vIyNcblxuJHdlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR3ZWxsLWJvcmRlcjogICAgICAgICAgICAgICAgIGRhcmtlbigkd2VsbC1iZywgNyUpICFkZWZhdWx0O1xuXG5cbi8vPT0gQmFkZ2VzXG4vL1xuLy8jI1xuXG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBMaW5rZWQgYmFkZ2UgdGV4dCBjb2xvciBvbiBob3ZlclxuJGJhZGdlLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRiYWRnZS1iZzogICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIEJhZGdlIHRleHQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFkZ2UgYmFja2dyb3VuZCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAxICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgMTBweCAhZGVmYXVsdDtcblxuXG4vLz09IEJyZWFkY3J1bWJzXG4vL1xuLy8jI1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsOiAgIDhweCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmctaG9yaXpvbnRhbDogMTVweCAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiBiYWNrZ3JvdW5kIGNvbG9yXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgdGV4dCBjb2xvclxuJGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIG9mIGN1cnJlbnQgcGFnZSBpbiB0aGUgYnJlYWRjcnVtYlxuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogVGV4dHVhbCBzZXBhcmF0b3IgZm9yIGJldHdlZW4gYnJlYWRjcnVtYiBlbGVtZW50c1xuJGJyZWFkY3J1bWItc2VwYXJhdG9yOiAgICAgICAgICBcIi9cIiAhZGVmYXVsdDtcblxuXG4vLz09IENhcm91c2VsXG4vL1xuLy8jI1xuXG4kY2Fyb3VzZWwtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjYpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDbG9zZVxuLy9cbi8vIyNcblxuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAwIDFweCAwICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDb2RlXG4vL1xuLy8jI1xuXG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAjYzcyNTRlICFkZWZhdWx0O1xuJGNvZGUtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y5ZjJmNCAhZGVmYXVsdDtcblxuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cbiRwcmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHByZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwZVxuLy9cbi8vIyNcblxuLy8qKiBIb3Jpem9udGFsIG9mZnNldCBmb3IgZm9ybXMgYW5kIGxpc3RzLlxuJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbDogMTgwcHggIWRlZmF1bHQ7XG4vLyoqIFRleHQgbXV0ZWQgY29sb3JcbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBBYmJyZXZpYXRpb25zIGFuZCBhY3JvbnltcyBib3JkZXIgY29sb3JcbiRhYmJyLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBIZWFkaW5ncyBzbWFsbCBjb2xvclxuJGhlYWRpbmdzLXNtYWxsLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgc21hbGwgY29sb3JcbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGZvbnQgc2l6ZVxuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGJvcmRlciBjb2xvclxuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogUGFnZSBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kcGFnZS1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBXaWR0aCBvZiBob3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3QgdGl0bGVzXG4kZGwtaG9yaXpvbnRhbC1vZmZzZXQ6ICAgICAgICAkY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCAuZGwtaG9yaXpvbnRhbCBiZWNvbWVzIGhvcml6b250YWxcbiRkbC1ob3Jpem9udGFsLWJyZWFrcG9pbnQ6ICAgICRncmlkLWZsb2F0LWJyZWFrcG9pbnQgIWRlZmF1bHQ7XG4vLyoqIEhvcml6b250YWwgbGluZSBjb2xvci5cbiRoci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4iLCIvLyBNaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcIm1peGlucy9oaWRlLXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvb3BhY2l0eVwiO1xuQGltcG9ydCBcIm1peGlucy9pbWFnZVwiO1xuQGltcG9ydCBcIm1peGlucy9sYWJlbHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtZmlsdGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNwb25zaXZlLXZpc2liaWxpdHlcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy90YWItZm9jdXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWVtcGhhc2lzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtb3ZlcmZsb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdmVuZG9yLXByZWZpeGVzXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJtaXhpbnMvYWxlcnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFuZWxzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtZGl2aWRlclwiO1xuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xuQGltcG9ydCBcIm1peGlucy9wcm9ncmVzcy1iYXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFibGUtcm93XCI7XG5cbi8vIFNraW5zXG5AaW1wb3J0IFwibWl4aW5zL2JhY2tncm91bmQtdmFyaWFudFwiO1xuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyYWRpZW50c1wiO1xuXG4vLyBMYXlvdXRcbkBpbXBvcnQgXCJtaXhpbnMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2VudGVyLWJsb2NrXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi12ZXJ0aWNhbC1hbGlnblwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkLWZyYW1ld29ya1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbi8vXG4vLyBIZWFkcyB1cCEgdjMgbGF1bmNoZWQgd2l0aCBvbmx5IGAuaGlkZS10ZXh0KClgLCBidXQgcGVyIG91ciBwYXR0ZXJuIGZvclxuLy8gbWl4aW5zIGJlaW5nIHJldXNlZCBhcyBjbGFzc2VzIHdpdGggdGhlIHNhbWUgbmFtZSwgdGhpcyBkb2Vzbid0IGhvbGQgdXAuIEFzXG4vLyBvZiB2My4wLjEgd2UgaGF2ZSBhZGRlZCBgLnRleHQtaGlkZSgpYCBhbmQgZGVwcmVjYXRlZCBgLmhpZGUtdGV4dCgpYC5cbi8vXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2NvbW1pdC9hYTAzOTZlYWU3NTdcblxuLy8gRGVwcmVjYXRlZCBhcyBvZiB2My4wLjEgKGhhcyBiZWVuIHJlbW92ZWQgaW4gdjQpXG5AbWl4aW4gaGlkZS10ZXh0KCkge1xuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gTmV3IG1peGluIHRvIHVzZSBhcyBvZiB2My4wLjFcbkBtaXhpbiB0ZXh0LWhpZGUoKSB7XG4gIEBpbmNsdWRlIGhpZGUtdGV4dDtcbn1cbiIsIi8vIE9wYWNpdHlcblxuQG1peGluIG9wYWNpdHkoJG9wYWNpdHkpIHtcbiAgb3BhY2l0eTogJG9wYWNpdHk7XG4gIC8vIElFOCBmaWx0ZXJcbiAgJG9wYWNpdHktaWU6ICgkb3BhY2l0eSAqIDEwMCk7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0kb3BhY2l0eS1pZSk7XG59XG4iLCIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cbkBtaXhpbiBpbWctcmVzcG9uc2l2ZSgkZGlzcGxheTogYmxvY2spIHtcbiAgZGlzcGxheTogJGRpc3BsYXk7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgaGVpZ2h0OiBhdXRvOyAvLyBQYXJ0IDI6IFNjYWxlIHRoZSBoZWlnaHQgYWNjb3JkaW5nIHRvIHRoZSB3aWR0aCwgb3RoZXJ3aXNlIHlvdSBnZXQgc3RyZXRjaGluZ1xufVxuXG5cbi8vIFJldGluYSBpbWFnZVxuLy9cbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS4gTm90ZSB0aGF0IHRoZVxuLy8gc3BlbGxpbmcgb2YgYG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpb2AgaXMgaW50ZW50aW9uYWwuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1pbWFnZS1wYXRoKFwiI3skZmlsZS0xeH1cIiksIFwiI3skZmlsZS0xeH1cIikpO1xuXG4gIEBtZWRpYVxuICBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIvMSksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDE5MmRwaSksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAyZHBweCkge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWltYWdlLXBhdGgoXCIjeyRmaWxlLTJ4fVwiKSwgXCIjeyRmaWxlLTJ4fVwiKSk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxufVxuIiwiLy8gTGFiZWxzXG5cbkBtaXhpbiBsYWJlbC12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgJltocmVmXSB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSZXNldCBmaWx0ZXJzIGZvciBJRVxuLy9cbi8vIFdoZW4geW91IG5lZWQgdG8gcmVtb3ZlIGEgZ3JhZGllbnQgYmFja2dyb3VuZCwgZG8gbm90IGZvcmdldCB0byB1c2UgdGhpcyB0byByZXNldFxuLy8gdGhlIElFIGZpbHRlciBmb3IgSUU5IGFuZCBiZWxvdy5cblxuQG1peGluIHJlc2V0LWZpbHRlcigpIHtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTtcbn1cbiIsIi8vIFJlc2l6ZSBhbnl0aGluZ1xuXG5AbWl4aW4gcmVzaXphYmxlKCRkaXJlY3Rpb24pIHtcbiAgcmVzaXplOiAkZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxuICBvdmVyZmxvdzogYXV0bzsgLy8gUGVyIENTUzMgVUksIGByZXNpemVgIG9ubHkgYXBwbGllcyB3aGVuIGBvdmVyZmxvd2AgaXNuJ3QgYHZpc2libGVgXG59XG4iLCIvLyBSZXNwb25zaXZlIHV0aWxpdGllc1xuXG4vL1xuLy8gTW9yZSBlYXNpbHkgaW5jbHVkZSBhbGwgdGhlIHN0YXRlcyBmb3IgcmVzcG9uc2l2ZS11dGlsaXRpZXMubGVzcy5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgkcGFyZW50KSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGFibGUjeyRwYXJlbnR9ICB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdHIjeyRwYXJlbnR9ICAgICB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRoI3skcGFyZW50fSxcbiAgdGQjeyRwYXJlbnR9ICAgICB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxufVxuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiByZXNwb25zaXZlLWludmlzaWJpbGl0eSgkcGFyZW50KSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gU2l6aW5nIHNob3J0Y3V0c1xuXG5AbWl4aW4gc2l6ZSgkd2lkdGgsICRoZWlnaHQpIHtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xufVxuXG5AbWl4aW4gc3F1YXJlKCRzaXplKSB7XG4gIEBpbmNsdWRlIHNpemUoJHNpemUsICRzaXplKTtcbn1cbiIsIi8vIFdlYktpdC1zdHlsZSBmb2N1c1xuXG5AbWl4aW4gdGFiLWZvY3VzKCkge1xuICAvLyBEZWZhdWx0XG4gIG91dGxpbmU6IHRoaW4gZG90dGVkO1xuICAvLyBXZWJLaXRcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbn1cbiIsIkBtaXhpbiByZXNldC10ZXh0KCkge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuIiwiLy8gVHlwb2dyYXBoeVxuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gVGV4dCBvdmVyZmxvd1xuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC1vdmVyZmxvdygpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBWZW5kb3IgUHJlZml4ZXNcbi8vXG4vLyBBbGwgdmVuZG9yIG1peGlucyBhcmUgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgZHVlIHRvIHRoZSBpbnRyb2R1Y3Rpb24gb2Zcbi8vIEF1dG9wcmVmaXhlciBpbiBvdXIgR3J1bnRmaWxlLiBUaGV5IGhhdmUgYmVlbiByZW1vdmVkIGluIHY0LlxuXG4vLyAtIEFuaW1hdGlvbnNcbi8vIC0gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gLSBCb3ggc2hhZG93XG4vLyAtIEJveCBzaXppbmdcbi8vIC0gQ29udGVudCBjb2x1bW5zXG4vLyAtIEh5cGhlbnNcbi8vIC0gUGxhY2Vob2xkZXIgdGV4dFxuLy8gLSBUcmFuc2Zvcm1hdGlvbnNcbi8vIC0gVHJhbnNpdGlvbnNcbi8vIC0gVXNlciBTZWxlY3RcblxuXG4vLyBBbmltYXRpb25zXG5AbWl4aW4gYW5pbWF0aW9uKCRhbmltYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgLW8tYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tbmFtZSgkbmFtZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogJG5hbWU7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWR1cmF0aW9uKCRkdXJhdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZGVsYXkoJGRlbGF5KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCgkaXRlcmF0aW9uLWNvdW50KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbiAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xufVxuQG1peGluIGFuaW1hdGlvbi1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZmlsbC1tb2RlKCRmaWxsLW1vZGUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG59XG5cbi8vIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIFByZXZlbnQgYnJvd3NlcnMgZnJvbSBmbGlja2VyaW5nIHdoZW4gdXNpbmcgQ1NTIDNEIHRyYW5zZm9ybXMuXG4vLyBEZWZhdWx0IHZhbHVlIGlzIGB2aXNpYmxlYCwgYnV0IGNhbiBiZSBjaGFuZ2VkIHRvIGBoaWRkZW5gXG5cbkBtaXhpbiBiYWNrZmFjZS12aXNpYmlsaXR5KCR2aXNpYmlsaXR5KSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG59XG5cbi8vIERyb3Agc2hhZG93c1xuLy9cbi8vIE5vdGU6IERlcHJlY2F0ZWQgYC5ib3gtc2hhZG93KClgIGFzIG9mIHYzLjEuMCBzaW5jZSBhbGwgb2YgQm9vdHN0cmFwJ3Ncbi8vIHN1cHBvcnRlZCBicm93c2VycyB0aGF0IGhhdmUgYm94IHNoYWRvdyBjYXBhYmlsaXRpZXMgbm93IHN1cHBvcnQgaXQuXG5cbkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkc2hhZG93OyAvLyBpT1MgPDQuMyAmIEFuZHJvaWQgPDQuMVxuICAgICAgICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG59XG5cbi8vIEJveCBzaXppbmdcbkBtaXhpbiBib3gtc2l6aW5nKCRib3htb2RlbCkge1xuICAtd2Via2l0LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgLW1vei1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgICAgICAgYm94LXNpemluZzogJGJveG1vZGVsO1xufVxuXG4vLyBDU1MzIENvbnRlbnQgQ29sdW1uc1xuQG1peGluIGNvbnRlbnQtY29sdW1ucygkY29sdW1uLWNvdW50LCAkY29sdW1uLWdhcDogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC13ZWJraXQtY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAtbW96LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAgICAgICBjb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gIC13ZWJraXQtY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgIC1tb3otY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgICAgICAgY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG59XG5cbi8vIE9wdGlvbmFsIGh5cGhlbmF0aW9uXG5AbWl4aW4gaHlwaGVucygkbW9kZTogYXV0bykge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogJG1vZGU7XG4gICAgIC1tb3otaHlwaGVuczogJG1vZGU7XG4gICAgICAtbXMtaHlwaGVuczogJG1vZGU7IC8vIElFMTArXG4gICAgICAgLW8taHlwaGVuczogJG1vZGU7XG4gICAgICAgICAgaHlwaGVuczogJG1vZGU7XG59XG5cbi8vIFBsYWNlaG9sZGVyIHRleHRcbkBtaXhpbiBwbGFjZWhvbGRlcigkY29sb3I6ICRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcikge1xuICAvLyBGaXJlZm94XG4gICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgb3BhY2l0eTogMTsgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjZcbiAgfVxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvbnNcbkBtaXhpbiBzY2FsZSgkcmF0aW8uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG59XG5cbkBtaXhpbiBzY2FsZVgoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbn1cbkBtaXhpbiBzY2FsZVkoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbn1cbkBtaXhpbiBza2V3KCR4LCAkeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzQ4ODU7IElFOStcbiAgICAgICAtby10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZSgkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG59XG5AbWl4aW4gcm90YXRlKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVgoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVkoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xufVxuQG1peGluIHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xufVxuQG1peGluIHBlcnNwZWN0aXZlLW9yaWdpbigkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjsgLy8gSUU5IG9ubHlcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xufVxuXG5cbi8vIFRyYW5zaXRpb25zXG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkdHJhbnNpdGlvbi1wcm9wZXJ0eS4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xufVxuQG1peGluIHRyYW5zaXRpb24tZGVsYXkoJHRyYW5zaXRpb24tZGVsYXkpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0cmFuc2l0aW9uLWR1cmF0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdHJhbnNmb3JtKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbn1cblxuXG4vLyBVc2VyIHNlbGVjdFxuLy8gRm9yIHNlbGVjdGluZyB0ZXh0IG9uIHRoZSBwYWdlXG5cbkBtaXhpbiB1c2VyLXNlbGVjdCgkc2VsZWN0KSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7IC8vIElFMTArXG4gICAgICAgICAgdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG59XG4iLCIvLyBBbGVydHNcblxuQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICR0ZXh0LWNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkdGV4dC1jb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkY29sb3IsICRiYWNrZ3JvdW5kLCAkYm9yZGVyKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDI1JSk7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDE3JSk7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcbiAgICB9XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xufVxuIiwiLy8gUGFuZWxzXG5cbkBtaXhpbiBwYW5lbC12YXJpYW50KCRib3JkZXIsICRoZWFkaW5nLXRleHQtY29sb3IsICRoZWFkaW5nLWJnLWNvbG9yLCAkaGVhZGluZy1ib3JkZXIpIHtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICYgPiAucGFuZWwtaGVhZGluZyB7XG4gICAgY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkaGVhZGluZy1ib3JkZXI7XG5cbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICAgIC5iYWRnZSB7XG4gICAgICBjb2xvcjogJGhlYWRpbmctYmctY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuICAmID4gLnBhbmVsLWZvb3RlciB7XG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gID4gbGkge1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgfVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgID4gYSxcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gTGlzdCBHcm91cHNcblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAgIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiwgYnV0dG9uJiB0byBhLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0sIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9XG4gIH1cblxuICBhLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0sXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgfVxuICAgICYuYWN0aXZlLFxuICAgICYuYWN0aXZlOmhvdmVyLFxuICAgICYuYWN0aXZlOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICNlNWU1ZTUpIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIDEpIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbn1cbiIsIi8vIEZvcm0gdmFsaWRhdGlvbiBzdGF0ZXNcbi8vXG4vLyBVc2VkIGluIGZvcm1zLmxlc3MgdG8gZ2VuZXJhdGUgdGhlIGZvcm0gdmFsaWRhdGlvbiBDU1MgZm9yIHdhcm5pbmdzLCBlcnJvcnMsXG4vLyBhbmQgc3VjY2Vzc2VzLlxuXG5AbWl4aW4gZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHRleHQtY29sb3I6ICM1NTUsICRib3JkZXItY29sb3I6ICNjY2MsICRiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1KSB7XG4gIC8vIENvbG9yIHRoZSBsYWJlbCBhbmQgaGVscCB0ZXh0XG4gIC5oZWxwLWJsb2NrLFxuICAuY29udHJvbC1sYWJlbCxcbiAgLnJhZGlvLFxuICAuY2hlY2tib3gsXG4gIC5yYWRpby1pbmxpbmUsXG4gIC5jaGVja2JveC1pbmxpbmUsXG4gICYucmFkaW8gbGFiZWwsXG4gICYuY2hlY2tib3ggbGFiZWwsXG4gICYucmFkaW8taW5saW5lIGxhYmVsLFxuICAmLmNoZWNrYm94LWlubGluZSBsYWJlbCAge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxuICAvLyBTZXQgdGhlIGJvcmRlciBhbmQgYm94IHNoYWRvdyBvbiBzcGVjaWZpYyBpbnB1dHMgdG8gbWF0Y2hcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpOyAvLyBSZWRlY2xhcmUgc28gdHJhbnNpdGlvbnMgd29ya1xuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlci1jb2xvciwgMTAlKTtcbiAgICAgICRzaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgNnB4IGxpZ2h0ZW4oJGJvcmRlci1jb2xvciwgMjAlKTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHNoYWRvdyk7XG4gICAgfVxuICB9XG4gIC8vIFNldCB2YWxpZGF0aW9uIHN0YXRlcyBhbHNvIGZvciBhZGRvbnNcbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICB9XG4gIC8vIE9wdGlvbmFsIGZlZWRiYWNrIGljb25cbiAgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWJvcmRlci1mb2N1c2AgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGNvbG9yOiAkaW5wdXQtYm9yZGVyLWZvY3VzKSB7XG4gICRjb2xvci1yZ2JhOiByZ2JhKHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvciksIC42KTtcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgOHB4ICRjb2xvci1yZ2JhKTtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gUmVsYXRpdmUgdGV4dCBzaXplLCBwYWRkaW5nLCBhbmQgYm9yZGVyLXJhZGlpIGNoYW5nZXMgZm9yIGZvcm0gY29udHJvbHMuIEZvclxuLy8gaG9yaXpvbnRhbCBzaXppbmcsIHdyYXAgY29udHJvbHMgaW4gdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLiBgPHNlbGVjdD5gXG4vLyBlbGVtZW50IGdldHMgc3BlY2lhbCBsb3ZlIGJlY2F1c2UgaXQncyBzcGVjaWFsLCBhbmQgdGhhdCdzIGEgZmFjdCFcbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIGlucHV0LXNpemUoJHBhcmVudCwgJGlucHV0LWhlaWdodCwgJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICBzZWxlY3QjeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIH1cblxuICB0ZXh0YXJlYSN7JHBhcmVudH0sXG4gIHNlbGVjdFttdWx0aXBsZV0jeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cbiIsIi8vIFByb2dyZXNzIGJhcnNcblxuQG1peGluIHByb2dyZXNzLWJhci12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgLy8gRGVwcmVjYXRlZCBwYXJlbnQgY2xhc3MgcmVxdWlyZW1lbnQgYXMgb2YgdjMuMi4wXG4gIC5wcm9ncmVzcy1zdHJpcGVkICYge1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQ7XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUgPiB0aGVhZCA+IHRyLFxuICAudGFibGUgPiB0Ym9keSA+IHRyLFxuICAudGFibGUgPiB0Zm9vdCA+IHRyIHtcbiAgICA+IHRkLiN7JHN0YXRlfSxcbiAgICA+IHRoLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfSA+IHRkLFxuICAgICYuI3skc3RhdGV9ID4gdGgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ciB7XG4gICAgPiB0ZC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgPiB0aC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0ZCxcbiAgICAmOmhvdmVyID4gLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfTpob3ZlciA+IHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG4iLCIvLyBHcmFkaWVudHNcblxuXG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd25cbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93blxufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbn1cbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG59XG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTApOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICM1NTUsICRvdXRlci1jb2xvcjogIzMzMykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiLy8gQ2xlYXJmaXhcbi8vXG4vLyBGb3IgbW9kZXJuIGJyb3dzZXJzXG4vLyAxLiBUaGUgc3BhY2UgY29udGVudCBpcyBvbmUgd2F5IHRvIGF2b2lkIGFuIE9wZXJhIGJ1ZyB3aGVuIHRoZVxuLy8gICAgY29udGVudGVkaXRhYmxlIGF0dHJpYnV0ZSBpcyBpbmNsdWRlZCBhbnl3aGVyZSBlbHNlIGluIHRoZSBkb2N1bWVudC5cbi8vICAgIE90aGVyd2lzZSBpdCBjYXVzZXMgc3BhY2UgdG8gYXBwZWFyIGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBlbGVtZW50c1xuLy8gICAgdGhhdCBhcmUgY2xlYXJmaXhlZC5cbi8vIDIuIFRoZSB1c2Ugb2YgYHRhYmxlYCByYXRoZXIgdGhhbiBgYmxvY2tgIGlzIG9ubHkgbmVjZXNzYXJ5IGlmIHVzaW5nXG4vLyAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXG4vL1xuLy8gU291cmNlOiBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay9cblxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7IC8vIDFcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMlxuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG4iLCIvLyBDZW50ZXItYWxpZ24gYSBibG9jayBsZXZlbCBlbGVtZW50XG5cbkBtaXhpbiBjZW50ZXItYmxvY2soKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuIiwiLy8gTmF2YmFyIHZlcnRpY2FsIGFsaWduXG4vL1xuLy8gVmVydGljYWxseSBjZW50ZXIgZWxlbWVudHMgaW4gdGhlIG5hdmJhci5cbi8vIEV4YW1wbGU6IGFuIGVsZW1lbnQgaGFzIGEgaGVpZ2h0IG9mIDMwcHgsIHNvIHdyaXRlIG91dCBgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbigzMHB4KTtgIHRvIGNhbGN1bGF0ZSB0aGUgYXBwcm9wcmlhdGUgdG9wIG1hcmdpbi5cblxuQG1peGluIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkZWxlbWVudC1oZWlnaHQpIHtcbiAgbWFyZ2luLXRvcDogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGk6IDEsICRsaXN0OiBcIi5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIikge1xuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgLy8gSW5uZXIgZ3V0dGVyIHZpYSBwYWRkaW5nXG4gICAgcGFkZGluZy1sZWZ0OiAgY2VpbCgoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cbn1cblxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MsICRpOiAxLCAkbGlzdDogXCIuY29sLSN7JGNsYXNzfS0jeyRpfVwiKSB7XG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wtI3skY2xhc3N9LSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cblxuQG1peGluIGNhbGMtZ3JpZC1jb2x1bW4oJGluZGV4LCAkY2xhc3MsICR0eXBlKSB7XG4gIEBpZiAoJHR5cGUgPT0gd2lkdGgpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LSN7JGluZGV4fSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1c2gtI3skaW5kZXh9IHtcbiAgICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0wIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVsbCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0jeyRpbmRleH0ge1xuICAgICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0wIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IG9mZnNldCkge1xuICAgIC5jb2wtI3skY2xhc3N9LW9mZnNldC0jeyRpbmRleH0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBsb29wLWdyaWQtY29sdW1ucygkY29sdW1ucywgJGNsYXNzLCAkdHlwZSkge1xuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICBAaW5jbHVkZSBjYWxjLWdyaWQtY29sdW1uKCRpLCAkY2xhc3MsICR0eXBlKTtcbiAgfVxufVxuXG5cbi8vIENyZWF0ZSBncmlkIGZvciBzcGVjaWZpYyBjbGFzc1xuQG1peGluIG1ha2UtZ3JpZCgkY2xhc3MpIHtcbiAgQGluY2x1ZGUgZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcyk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgd2lkdGgpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1bGwpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1c2gpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIG9mZnNldCk7XG59XG4iLCIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuLy8gQ2VudGVyZWQgY29udGFpbmVyIGVsZW1lbnRcbkBtaXhpbiBjb250YWluZXItZml4ZWQoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogIGZsb29yKCgkZ3V0dGVyIC8gMikpO1xuICBwYWRkaW5nLXJpZ2h0OiBjZWlsKCgkZ3V0dGVyIC8gMikpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gQ3JlYXRlcyBhIHdyYXBwZXIgZm9yIGEgc2VyaWVzIG9mIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgbWFyZ2luLWxlZnQ6ICBjZWlsKCgkZ3V0dGVyIC8gLTIpKTtcbiAgbWFyZ2luLXJpZ2h0OiBmbG9vcigoJGd1dHRlciAvIC0yKSk7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgZXh0cmEgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2UteHMtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2Utc20tY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuXG4vLyBHZW5lcmF0ZSB0aGUgbWVkaXVtIGNvbHVtbnNcbkBtaXhpbiBtYWtlLW1kLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgdGhlIGxhcmdlIGNvbHVtbnNcbkBtaXhpbiBtYWtlLWxnLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbiIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLy9cbi8vIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4vLyAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxuLy8gICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuLy9cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAxXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuLy9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8gSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuLy8gYW5kIEZpcmVmb3guXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuLy9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuLy8gMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuLy9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gMlxufVxuXG4vL1xuLy8gUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbi8vIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4vL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4vLyBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4vL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gTGlua3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbi8vXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLy9cbi8vIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbi8vIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbi8vXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vL1xuLy8gQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuLy8gY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLy9cbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4vL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vLyBFbWJlZGRlZCBjb250ZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4vL1xuXG5pbWcge1xuICBib3JkZXI6IDA7XG59XG5cbi8vXG4vLyBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbi8vXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gR3JvdXBpbmcgY29udGVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuLy9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbi8vXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbn1cblxuLy9cbi8vIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vXG4vLyBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8vIEZvcm1zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbi8vIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbi8vXG5cbi8vXG4vLyAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4vLyAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbi8vIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4vLyAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbi8vXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAxXG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgbWFyZ2luOiAwOyAvLyAzXG59XG5cbi8vXG4vLyBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbi8vXG5cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuLy8gQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbi8vIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4vLyBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4vL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLy9cbi8vIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4vLyAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbi8vIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbi8vIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4vLyAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4vL1xuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8vIDFcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxuICBjdXJzb3I6IHBvaW50ZXI7IC8vIDNcbn1cblxuLy9cbi8vIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4vL1xuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4vL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbi8vIHRoZSBVQSBzdHlsZXNoZWV0LlxuLy9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vL1xuLy8gSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuLy8gRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbi8vXG4vLyAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuLy8gMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbi8vXG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbi8vIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4vLyBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4vL1xuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy9cbi8vIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy8gMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8yXG59XG5cbi8vXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbi8vIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbi8vIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuLy9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4vLyAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4vL1xuXG5sZWdlbmQge1xuICBib3JkZXI6IDA7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbi8vXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vXG4vLyBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4vLyBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbi8vXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vIFRhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwO1xufVxuIiwiLyohIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzcyAqL1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUHJpbnQgc3R5bGVzLlxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6IGg1YnAuY29tL3Jcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBtZWRpYSBwcmludCB7XG4gICAgKixcbiAgICAqOmJlZm9yZSxcbiAgICAqOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYSxcbiAgICBhOnZpc2l0ZWQge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICBhW2hyZWZdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgfVxuXG4gICAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gICAgfVxuXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgYVtocmVmXj1cIiNcIl06YWZ0ZXIsXG4gICAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG5cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICB0aGVhZCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgLy8gaDVicC5jb20vdFxuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgb3JwaGFuczogMztcbiAgICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5idG4sXG4gICAgLmRyb3B1cCA+IC5idG4ge1xuICAgICAgICA+IC5jYXJldCB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxhYmVsIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgdGQsXG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICB0aCxcbiAgICAgICAgdGQge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG59XG4iLCIvL1xuLy8gU2NhZmZvbGRpbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gUmVzZXQgdGhlIGJveC1zaXppbmdcbi8vXG4vLyBIZWFkcyB1cCEgVGhpcyByZXNldCBtYXkgY2F1c2UgY29uZmxpY3RzIHdpdGggc29tZSB0aGlyZC1wYXJ0eSB3aWRnZXRzLlxuLy8gRm9yIHJlY29tbWVuZGF0aW9ucyBvbiByZXNvbHZpbmcgc3VjaCBjb25mbGljdHMsIHNlZVxuLy8gaHR0cDovL2dldGJvb3RzdHJhcC5jb20vZ2V0dGluZy1zdGFydGVkLyN0aGlyZC1ib3gtc2l6aW5nXG4qIHtcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbn1cbio6YmVmb3JlLFxuKjphZnRlciB7XG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG59XG5cblxuLy8gQm9keSByZXNldFxuXG5odG1sIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XG59XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG59XG5cbi8vIFJlc2V0IGZvbnRzIGZvciByZWxldmFudCBlbGVtZW50c1xuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5cbi8vIExpbmtzXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgdGFiLWZvY3VzO1xuICB9XG59XG5cblxuLy8gRmlndXJlc1xuLy9cbi8vIFdlIHJlc2V0IHRoaXMgaGVyZSBiZWNhdXNlIHByZXZpb3VzbHkgTm9ybWFsaXplIGhhZCBubyBgZmlndXJlYCBtYXJnaW5zLiBUaGlzXG4vLyBlbnN1cmVzIHdlIGRvbid0IGJyZWFrIGFueW9uZSdzIHVzZSBvZiB0aGUgZWxlbWVudC5cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5cbi8vIEltYWdlc1xuXG5pbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi5pbWctcmVzcG9uc2l2ZSB7XG4gIEBpbmNsdWRlIGltZy1yZXNwb25zaXZlO1xufVxuXG4vLyBSb3VuZGVkIGNvcm5lcnNcbi5pbWctcm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlO1xufVxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgaXMgbWl4aW4tZWQgaW50byB0aHVtYm5haWxzLmxlc3MgZm9yIGAudGh1bWJuYWlsYC5cbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR0aHVtYm5haWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4ycyBlYXNlLWluLW91dCk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1yZXNwb25zaXZlKGlubGluZS1ibG9jayk7XG59XG5cbi8vIFBlcmZlY3QgY2lyY2xlXG4uaW1nLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTsgLy8gc2V0IHJhZGl1cyBpbiBwZXJjZW50c1xufVxuXG5cbi8vIEhvcml6b250YWwgcnVsZXNcblxuaHIge1xuICBtYXJnaW4tdG9wOiAgICAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGhyLWJvcmRlcjtcbn1cblxuXG4vLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xuLy9cbi8vIFNlZTogaHR0cDovL2ExMXlwcm9qZWN0LmNvbS9wb3N0cy9ob3ctdG8taGlkZS1jb250ZW50L1xuXG4uc3Itb25seSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gIH1cbn1cblxuXG4vLyBpT1MgXCJjbGlja2FibGUgZWxlbWVudHNcIiBmaXggZm9yIHJvbGU9XCJidXR0b25cIlxuLy9cbi8vIEZpeGVzIFwiY2xpY2thYmlsaXR5XCIgaXNzdWUgKGFuZCBtb3JlIGdlbmVyYWxseSwgdGhlIGZpcmluZyBvZiBldmVudHMgc3VjaCBhcyBmb2N1cyBhcyB3ZWxsKVxuLy8gZm9yIHRyYWRpdGlvbmFsbHkgbm9uLWZvY3VzYWJsZSBlbGVtZW50cyB3aXRoIHJvbGU9XCJidXR0b25cIlxuLy8gc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuIiwiLy9cbi8vIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSGVhZGluZ3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRoZWFkaW5ncy1zbWFsbC1jb2xvcjtcbiAgfVxufVxuXG5oMSwgLmgxLFxuaDIsIC5oMixcbmgzLCAuaDMge1xuICBtYXJnaW4tdG9wOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcblxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDY1JTtcbiAgfVxufVxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgbWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG5cbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gIH1cbn1cblxuaDEsIC5oMSB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMTsgfVxuaDIsIC5oMiB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMjsgfVxuaDMsIC5oMyB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMzsgfVxuaDQsIC5oNCB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNDsgfVxuaDUsIC5oNSB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNTsgfVxuaDYsIC5oNiB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNjsgfVxuXG5cbi8vIEJvZHkgdGV4dFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5wIHtcbiAgbWFyZ2luOiAwIDAgKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xufVxuXG4ubGVhZCB7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zaXplOiBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMS4xNSkpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIH1cbn1cblxuXG4vLyBFbXBoYXNpcyAmIG1pc2Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRXg6ICgxMnB4IHNtYWxsIGZvbnQgLyAxNHB4IGJhc2UgZm9udCkgKiAxMDAlID0gYWJvdXQgODUlXG5zbWFsbCxcbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogZmxvb3IoKDEwMCUgKiAkZm9udC1zaXplLXNtYWxsIC8gJGZvbnQtc2l6ZS1iYXNlKSk7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzdGF0ZS13YXJuaW5nLWJnO1xuICBwYWRkaW5nOiAuMmVtO1xufVxuXG4vLyBBbGlnbm1lbnRcbi50ZXh0LWxlZnQgICAgICAgICAgIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuLnRleHQtcmlnaHQgICAgICAgICAgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuLnRleHQtY2VudGVyICAgICAgICAgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbi50ZXh0LWp1c3RpZnkgICAgICAgIHsgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuLnRleHQtbm93cmFwICAgICAgICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi8vIFRyYW5zZm9ybWF0aW9uXG4udGV4dC1sb3dlcmNhc2UgICAgICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cbi50ZXh0LXVwcGVyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuLnRleHQtY2FwaXRhbGl6ZSAgICAgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogJHRleHQtbXV0ZWQ7XG59XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtcHJpbWFyeScsICRicmFuZC1wcmltYXJ5KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1zdWNjZXNzJywgJHN0YXRlLXN1Y2Nlc3MtdGV4dCk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtaW5mbycsICRzdGF0ZS1pbmZvLXRleHQpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXdhcm5pbmcnLCAkc3RhdGUtd2FybmluZy10ZXh0KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1kYW5nZXInLCAkc3RhdGUtZGFuZ2VyLXRleHQpO1xuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG4vLyBGb3Igbm93IHdlJ2xsIGxlYXZlIHRoZXNlIGFsb25nc2lkZSB0aGUgdGV4dCBjbGFzc2VzIHVudGlsIHY0IHdoZW4gd2UgY2FuXG4vLyBzYWZlbHkgc2hpZnQgdGhpbmdzIGFyb3VuZCAocGVyIFNlbVZlciBydWxlcykuXG4uYmctcHJpbWFyeSB7XG4gIC8vIEdpdmVuIHRoZSBjb250cmFzdCBoZXJlLCB0aGlzIGlzIHRoZSBvbmx5IGNsYXNzIHRvIGhhdmUgaXRzIGNvbG9yIGludmVydGVkXG4gIC8vIGF1dG9tYXRpY2FsbHkuXG4gIGNvbG9yOiAjZmZmO1xufVxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXByaW1hcnknLCAkYnJhbmQtcHJpbWFyeSk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1zdWNjZXNzJywgJHN0YXRlLXN1Y2Nlc3MtYmcpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctaW5mbycsICRzdGF0ZS1pbmZvLWJnKTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXdhcm5pbmcnLCAkc3RhdGUtd2FybmluZy1iZyk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1kYW5nZXInLCAkc3RhdGUtZGFuZ2VyLWJnKTtcblxuXG4vLyBQYWdlIGhlYWRlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ucGFnZS1oZWFkZXIge1xuICBwYWRkaW5nLWJvdHRvbTogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIDEpO1xuICBtYXJnaW46ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKiAyKSAwICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I7XG59XG5cblxuLy8gTGlzdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gVW5vcmRlcmVkIGFuZCBPcmRlcmVkIGxpc3RzXG51bCxcbm9sIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICB1bCxcbiAgb2wge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8gTGlzdCBvcHRpb25zXG5cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBmcm9tIGAubGlzdC11bnN0eWxlZGAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYXMgYEBtaXhpbiBsaXN0LXVuc3R5bGVkYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG59XG5cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIH1cbn1cblxuLy8gRGVzY3JpcHRpb24gTGlzdHNcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDsgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdFxuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG59XG5kdCxcbmRkIHtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xufVxuZHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbmRkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG59XG5cbi8vIEhvcml6b250YWwgZGVzY3JpcHRpb24gbGlzdHNcbi8vXG4vLyBEZWZhdWx0cyB0byBiZWluZyBzdGFja2VkIHdpdGhvdXQgYW55IG9mIHRoZSBiZWxvdyBzdHlsZXMgYXBwbGllZCwgdW50aWwgdGhlXG4vLyBncmlkIGJyZWFrcG9pbnQgaXMgcmVhY2hlZCAoZGVmYXVsdCBvZiB+NzY4cHgpLlxuXG4uZGwtaG9yaXpvbnRhbCB7XG4gIGRkIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDsgLy8gQ2xlYXIgdGhlIGZsb2F0ZWQgYGR0YCBpZiBhbiBlbXB0eSBgZGRgIGlzIHByZXNlbnRcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZGwtaG9yaXpvbnRhbC1icmVha3BvaW50KSB7XG4gICAgZHQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogKCRkbC1ob3Jpem9udGFsLW9mZnNldCAtIDIwKTtcbiAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBAaW5jbHVkZSB0ZXh0LW92ZXJmbG93O1xuICAgIH1cbiAgICBkZCB7XG4gICAgICBtYXJnaW4tbGVmdDogJGRsLWhvcml6b250YWwtb2Zmc2V0O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE1pc2Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQWJicmV2aWF0aW9ucyBhbmQgYWNyb255bXNcbmFiYnJbdGl0bGVdLFxuLy8gQWRkIGRhdGEtKiBhdHRyaWJ1dGUgdG8gaGVscCBvdXQgb3VyIHRvb2x0aXAgcGx1Z2luLCBwZXIgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy81MjU3XG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHtcbiAgY3Vyc29yOiBoZWxwO1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICRhYmJyLWJvcmRlci1jb2xvcjtcbn1cbi5pbml0aWFsaXNtIHtcbiAgZm9udC1zaXplOiA5MCU7XG4gIEBleHRlbmQgLnRleHQtdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbjogMCAwICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zaXplOiAkYmxvY2txdW90ZS1mb250LXNpemU7XG4gIGJvcmRlci1sZWZ0OiA1cHggc29saWQgJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xuXG4gIHAsXG4gIHVsLFxuICBvbCB7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gTm90ZTogRGVwcmVjYXRlZCBzbWFsbCBhbmQgLnNtYWxsIGFzIG9mIHYzLjEuMFxuICAvLyBDb250ZXh0OiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjYwXG4gIGZvb3RlcixcbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiA4MCU7IC8vIGJhY2sgdG8gZGVmYXVsdCBmb250LXNpemVcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgY29sb3I6ICRibG9ja3F1b3RlLXNtYWxsLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAxNCBcXDAwQTAnOyAvLyBlbSBkYXNoLCBuYnNwXG4gICAgfVxuICB9XG59XG5cbi8vIE9wcG9zaXRlIGFsaWdubWVudCBvZiBibG9ja3F1b3RlXG4vL1xuLy8gSGVhZHMgdXA6IGBibG9ja3F1b3RlLnB1bGwtcmlnaHRgIGhhcyBiZWVuIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMS4wLlxuLmJsb2NrcXVvdGUtcmV2ZXJzZSxcbmJsb2NrcXVvdGUucHVsbC1yaWdodCB7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgYm9yZGVyLXJpZ2h0OiA1cHggc29saWQgJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItbGVmdDogMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgLy8gQWNjb3VudCBmb3IgY2l0YXRpb25cbiAgZm9vdGVyLFxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICAmOmJlZm9yZSB7IGNvbnRlbnQ6ICcnOyB9XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnXFwwMEEwIFxcMjAxNCc7IC8vIG5ic3AsIGVtIGRhc2hcbiAgICB9XG4gIH1cbn1cblxuLy8gQWRkcmVzc2VzXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbn1cbiIsIi8vXG4vLyBDb2RlIChpbmxpbmUgYW5kIGJsb2NrKVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBJbmxpbmUgYW5kIGJsb2NrIGNvZGUgc3R5bGVzXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xufVxuXG4vLyBJbmxpbmUgY29kZVxuY29kZSB7XG4gIHBhZGRpbmc6IDJweCA0cHg7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xufVxuXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxua2JkIHtcbiAgcGFkZGluZzogMnB4IDRweDtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgcmdiYSgwLDAsMCwuMjUpO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuXG4vLyBCbG9ja3Mgb2YgY29kZVxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gMSkgLyAyKTtcbiAgbWFyZ2luOiAwIDAgKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgLSAxKTsgLy8gMTRweCB0byAxM3B4XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJlLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkcHJlLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbiIsIi8vXG4vLyBHcmlkIHN5c3RlbVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG4uY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyLWZpeGVkO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIHdpZHRoOiAkY29udGFpbmVyLXNtO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIHdpZHRoOiAkY29udGFpbmVyLW1kO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIHdpZHRoOiAkY29udGFpbmVyLWxnO1xuICB9XG59XG5cblxuLy8gRmx1aWQgY29udGFpbmVyXG4vL1xuLy8gVXRpbGl6ZXMgdGhlIG1peGluIG1lYW50IGZvciBmaXhlZCB3aWR0aCBjb250YWluZXJzLCBidXQgd2l0aG91dCBhbnkgZGVmaW5lZFxuLy8gd2lkdGggZm9yIGZsdWlkLCBmdWxsIHdpZHRoIGxheW91dHMuXG5cbi5jb250YWluZXItZmx1aWQge1xuICBAaW5jbHVkZSBjb250YWluZXItZml4ZWQ7XG59XG5cblxuLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIGFuZCBjbGVhciB0aGUgZmxvYXRzIG9mIHlvdXIgY29sdW1ucy5cblxuLnJvdyB7XG4gIEBpbmNsdWRlIG1ha2Utcm93O1xufVxuXG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zO1xuXG5cbi8vIEV4dHJhIHNtYWxsIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgZXh0cmEgc21hbGwgZGV2aWNlcyBsaWtlXG4vLyBzbWFydHBob25lcy5cblxuQGluY2x1ZGUgbWFrZS1ncmlkKHhzKTtcblxuXG4vLyBTbWFsbCBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBzbWFsbCBkZXZpY2UgcmFuZ2UsIGZyb20gcGhvbmVzXG4vLyB0byB0YWJsZXRzLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKHNtKTtcbn1cblxuXG4vLyBNZWRpdW0gZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgZGVza3RvcCBkZXZpY2UgcmFuZ2UuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQobWQpO1xufVxuXG5cbi8vIExhcmdlIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIGxhcmdlIGRlc2t0b3AgZGV2aWNlIHJhbmdlLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKGxnKTtcbn1cbiIsIi8vXG4vLyBUYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmc7XG59XG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG50aCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cblxuLy8gQmFzZWxpbmUgc3R5bGVzXG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgLy8gQ2VsbHNcbiAgPiB0aGVhZCxcbiAgPiB0Ym9keSxcbiAgPiB0Zm9vdCB7XG4gICAgPiB0ciB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIEJvdHRvbSBhbGlnbiBmb3IgY29sdW1uIGhlYWRpbmdzXG4gID4gdGhlYWQgPiB0ciA+IHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG4gIC8vIFJlbW92ZSB0b3AgYm9yZGVyIGZyb20gdGhlYWQgYnkgZGVmYXVsdFxuICA+IGNhcHRpb24gKyB0aGVhZCxcbiAgPiBjb2xncm91cCArIHRoZWFkLFxuICA+IHRoZWFkOmZpcnN0LWNoaWxkIHtcbiAgICA+IHRyOmZpcnN0LWNoaWxkIHtcbiAgICAgID4gdGgsXG4gICAgICA+IHRkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gQWNjb3VudCBmb3IgbXVsdGlwbGUgdGJvZHkgaW5zdGFuY2VzXG4gID4gdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAvLyBOZXN0aW5nXG4gIC50YWJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG4gIH1cbn1cblxuXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG5cbi50YWJsZS1jb25kZW5zZWQge1xuICA+IHRoZWFkLFxuICA+IHRib2R5LFxuICA+IHRmb290IHtcbiAgICA+IHRyIHtcbiAgICAgID4gdGgsXG4gICAgICA+IHRkIHtcbiAgICAgICAgcGFkZGluZzogJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gQm9yZGVyZWQgdmVyc2lvblxuLy9cbi8vIEFkZCBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgPiB0aGVhZCxcbiAgPiB0Ym9keSxcbiAgPiB0Zm9vdCB7XG4gICAgPiB0ciB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gdGhlYWQgPiB0ciB7XG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZy1hY2NlbnQ7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gID4gdGJvZHkgPiB0cjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnLWhvdmVyO1xuICB9XG59XG5cblxuLy8gVGFibGUgY2VsbCBzaXppbmdcbi8vXG4vLyBSZXNldCBkZWZhdWx0IHRhYmxlIGJlaGF2aW9yXG5cbnRhYmxlIGNvbFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgcG9zaXRpb246IHN0YXRpYzsgLy8gUHJldmVudCBib3JkZXIgaGlkaW5nIGluIEZpcmVmb3ggYW5kIElFOS0xMSAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2MjMpXG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiB0YWJsZS1jb2x1bW47XG59XG50YWJsZSB7XG4gIHRkLFxuICB0aCB7XG4gICAgJltjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IC8vIFByZXZlbnQgYm9yZGVyIGhpZGluZyBpbiBGaXJlZm94IGFuZCBJRTktMTEgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjIzKVxuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRhYmxlIGJhY2tncm91bmRzXG4vL1xuLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG5cbi8vIEdlbmVyYXRlIHRoZSBjb250ZXh0dWFsIHZhcmlhbnRzXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnYWN0aXZlJywgJHRhYmxlLWJnLWFjdGl2ZSk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnc3VjY2VzcycsICRzdGF0ZS1zdWNjZXNzLWJnKTtcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCdpbmZvJywgJHN0YXRlLWluZm8tYmcpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ3dhcm5pbmcnLCAkc3RhdGUtd2FybmluZy1iZyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnZGFuZ2VyJywgJHN0YXRlLWRhbmdlci1iZyk7XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBXcmFwIHlvdXIgdGFibGVzIGluIGAudGFibGUtcmVzcG9uc2l2ZWAgYW5kIHdlJ2xsIG1ha2UgdGhlbSBtb2JpbGUgZnJpZW5kbHlcbi8vIGJ5IGVuYWJsaW5nIGhvcml6b250YWwgc2Nyb2xsaW5nLiBPbmx5IGFwcGxpZXMgPDc2OHB4LiBFdmVyeXRoaW5nIGFib3ZlIHRoYXRcbi8vIHdpbGwgZGlzcGxheSBub3JtYWxseS5cblxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBtaW4taGVpZ2h0OiAwLjAxJTsgLy8gV29ya2Fyb3VuZCBmb3IgSUU5IGJ1ZyAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTQ4MzcpXG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICogMC43NSk7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG5cbiAgICAvLyBUaWdodGVuIHVwIHNwYWNpbmdcbiAgICA+IC50YWJsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAvLyBFbnN1cmUgdGhlIGNvbnRlbnQgZG9lc24ndCB3cmFwXG4gICAgICA+IHRoZWFkLFxuICAgICAgPiB0Ym9keSxcbiAgICAgID4gdGZvb3Qge1xuICAgICAgICA+IHRyIHtcbiAgICAgICAgICA+IHRoLFxuICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTcGVjaWFsIG92ZXJyaWRlcyBmb3IgdGhlIGJvcmRlcmVkIHRhYmxlc1xuICAgID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIGJvcmRlcjogMDtcblxuICAgICAgLy8gTnVrZSB0aGUgYXBwcm9wcmlhdGUgYm9yZGVycyBzbyB0aGF0IHRoZSBwYXJlbnQgY2FuIGhhbmRsZSB0aGVtXG4gICAgICA+IHRoZWFkLFxuICAgICAgPiB0Ym9keSxcbiAgICAgID4gdGZvb3Qge1xuICAgICAgICA+IHRyIHtcbiAgICAgICAgICA+IHRoOmZpcnN0LWNoaWxkLFxuICAgICAgICAgID4gdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgID4gdGg6bGFzdC1jaGlsZCxcbiAgICAgICAgICA+IHRkOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBPbmx5IG51a2UgdGhlIGxhc3Qgcm93J3MgYm90dG9tLWJvcmRlciBpbiBgdGJvZHlgIGFuZCBgdGZvb3RgIHNpbmNlXG4gICAgICAvLyBjaGFuY2VzIGFyZSB0aGVyZSB3aWxsIGJlIG9ubHkgb25lIGB0cmAgaW4gYSBgdGhlYWRgIGFuZCB0aGF0IHdvdWxkXG4gICAgICAvLyByZW1vdmUgdGhlIGJvcmRlciBhbHRvZ2V0aGVyLlxuICAgICAgPiB0Ym9keSxcbiAgICAgID4gdGZvb3Qge1xuICAgICAgICA+IHRyOmxhc3QtY2hpbGQge1xuICAgICAgICAgID4gdGgsXG4gICAgICAgICAgPiB0ZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gRm9ybXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gTm9ybWFsaXplIG5vbi1jb250cm9sc1xuLy9cbi8vIFJlc3R5bGUgYW5kIGJhc2VsaW5lIG5vbi1jb250cm9sIGZvcm0gZWxlbWVudHMuXG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG4gIC8vIENocm9tZSBhbmQgRmlyZWZveCBzZXQgYSBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gc28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgaXQgYmVoYXZlcyBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OS5cbiAgbWluLXdpZHRoOiAwO1xufVxuXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlICogMS41KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAkbGVnZW5kLWNvbG9yO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGVnZW5kLWJvcmRlci1jb2xvcjtcbn1cblxubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gRm9yY2UgSUU4IHRvIHdyYXAgbG9uZyBjb250ZW50IChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMzE0MSlcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuXG4vLyBOb3JtYWxpemUgZm9ybSBjb250cm9sc1xuLy9cbi8vIFdoaWxlIG1vc3Qgb2Ygb3VyIGZvcm0gc3R5bGVzIHJlcXVpcmUgZXh0cmEgY2xhc3Nlcywgc29tZSBiYXNpYyBub3JtYWxpemF0aW9uXG4vLyBpcyByZXF1aXJlZCB0byBlbnN1cmUgb3B0aW11bSBkaXNwbGF5IHdpdGggb3Igd2l0aG91dCB0aG9zZSBjbGFzc2VzIHRvIGJldHRlclxuLy8gYWRkcmVzcyBicm93c2VyIGluY29uc2lzdGVuY2llcy5cblxuLy8gT3ZlcnJpZGUgY29udGVudC1ib3ggaW4gTm9ybWFsaXplICgqIGlzbid0IHNwZWNpZmljIGVub3VnaClcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xufVxuXG4vLyBQb3NpdGlvbiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgYmV0dGVyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBtYXJnaW46IDRweCAwIDA7XG4gIG1hcmdpbi10b3A6IDFweCBcXDk7IC8vIElFOC05XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbmlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIE1ha2UgcmFuZ2UgaW5wdXRzIGJlaGF2ZSBsaWtlIHRleHR1YWwgZm9ybSBjb250cm9sc1xuaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBNYWtlIG11bHRpcGxlIHNlbGVjdCBlbGVtZW50cyBoZWlnaHQgbm90IGZpeGVkXG5zZWxlY3RbbXVsdGlwbGVdLFxuc2VsZWN0W3NpemVdIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyBGb2N1cyBmb3IgZmlsZSwgcmFkaW8sIGFuZCBjaGVja2JveFxuaW5wdXRbdHlwZT1cImZpbGVcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMge1xuICBAaW5jbHVkZSB0YWItZm9jdXM7XG59XG5cbi8vIEFkanVzdCBvdXRwdXQgZWxlbWVudFxub3V0cHV0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xufVxuXG5cbi8vIENvbW1vbiBmb3JtIGNvbnRyb2xzXG4vL1xuLy8gU2hhcmVkIHNpemUgYW5kIHR5cGUgcmVzZXRzIGZvciBmb3JtIGNvbnRyb2xzLiBBcHBseSBgLmZvcm0tY29udHJvbGAgdG8gYW55XG4vLyBvZiB0aGUgZm9sbG93aW5nIGZvcm0gY29udHJvbHM6XG4vL1xuLy8gc2VsZWN0XG4vLyB0ZXh0YXJlYVxuLy8gaW5wdXRbdHlwZT1cInRleHRcIl1cbi8vIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXVxuLy8gaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl1cbi8vIGlucHV0W3R5cGU9XCJkYXRlXCJdXG4vLyBpbnB1dFt0eXBlPVwibW9udGhcIl1cbi8vIGlucHV0W3R5cGU9XCJ0aW1lXCJdXG4vLyBpbnB1dFt0eXBlPVwid2Vla1wiXVxuLy8gaW5wdXRbdHlwZT1cIm51bWJlclwiXVxuLy8gaW5wdXRbdHlwZT1cImVtYWlsXCJdXG4vLyBpbnB1dFt0eXBlPVwidXJsXCJdXG4vLyBpbnB1dFt0eXBlPVwic2VhcmNoXCJdXG4vLyBpbnB1dFt0eXBlPVwidGVsXCJdXG4vLyBpbnB1dFt0eXBlPVwiY29sb3JcIl1cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7IC8vIE1ha2UgaW5wdXRzIGF0IGxlYXN0IHRoZSBoZWlnaHQgb2YgdGhlaXIgYnV0dG9uIGNvdW50ZXJwYXJ0IChiYXNlIGxpbmUtaGVpZ2h0ICsgcGFkZGluZyArIGJvcmRlcilcbiAgcGFkZGluZzogJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAkcGFkZGluZy1iYXNlLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MvaXNzdWVzLzIxNFxuICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1czsgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgPHNlbGVjdD5zIGluIENTUy5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IC4xNXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgLjE1cyk7XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXM7XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgQGluY2x1ZGUgcGxhY2Vob2xkZXI7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXG4gIC8vXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cbiAgJltkaXNhYmxlZF0sXG4gICZbcmVhZG9ubHldLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnLWRpc2FibGVkO1xuICAgIG9wYWNpdHk6IDE7IC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTVcbiAgfVxuXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIHRleHRhcmVhJiB0byB0ZXh0YXJlYS5mb3JtLWNvbnRyb2xcbn1cblxuLy8gUmVzZXQgaGVpZ2h0IGZvciBgdGV4dGFyZWFgc1xudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8vIFNlYXJjaCBpbnB1dHMgaW4gaU9TXG4vL1xuLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuLy8gYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4vLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5cbi8vIFNwZWNpYWwgc3R5bGVzIGZvciBpT1MgdGVtcG9yYWwgaW5wdXRzXG4vL1xuLy8gSW4gTW9iaWxlIFNhZmFyaSwgc2V0dGluZyBgZGlzcGxheTogYmxvY2tgIG9uIHRlbXBvcmFsIGlucHV0cyBjYXVzZXMgdGhlXG4vLyB0ZXh0IHdpdGhpbiB0aGUgaW5wdXQgdG8gYmVjb21lIHZlcnRpY2FsbHkgbWlzYWxpZ25lZC4gQXMgYSB3b3JrYXJvdW5kLCB3ZVxuLy8gc2V0IGEgcGl4ZWwgbGluZS1oZWlnaHQgdGhhdCBtYXRjaGVzIHRoZSBnaXZlbiBoZWlnaHQgb2YgdGhlIGlucHV0LCBidXQgb25seVxuLy8gZm9yIFNhZmFyaS4gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk4NDhcbi8vXG4vLyBOb3RlIHRoYXQgYXMgb2YgOC4zLCBpT1MgZG9lc24ndCBzdXBwb3J0IGBkYXRldGltZWAgb3IgYHdlZWtgLlxuXG5AbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAwKSB7XG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICBpbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAgICYuZm9ybS1jb250cm9sIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7XG4gICAgfVxuXG4gICAgJi5pbnB1dC1zbSxcbiAgICAuaW5wdXQtZ3JvdXAtc20gJiB7XG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICB9XG5cbiAgICAmLmlucHV0LWxnLFxuICAgIC5pbnB1dC1ncm91cC1sZyAmIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xufVxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXG5cbi5yYWRpbyxcbi5jaGVja2JveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgbGFiZWwge1xuICAgIG1pbi1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDsgLy8gRW5zdXJlIHRoZSBpbnB1dCBkb2Vzbid0IGp1bXAgd2hlbiB0aGVyZSBpcyBubyB0ZXh0XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbi5yYWRpbyBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4ucmFkaW8taW5saW5lIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbi5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG4uY2hlY2tib3gtaW5saW5lIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICBtYXJnaW4tdG9wOiA0cHggXFw5O1xufVxuXG4ucmFkaW8gKyAucmFkaW8sXG4uY2hlY2tib3ggKyAuY2hlY2tib3gge1xuICBtYXJnaW4tdG9wOiAtNXB4OyAvLyBNb3ZlIHVwIHNpYmxpbmcgcmFkaW9zIG9yIGNoZWNrYm94ZXMgZm9yIHRpZ2h0ZXIgc3BhY2luZ1xufVxuXG4vLyBSYWRpb3MgYW5kIGNoZWNrYm94ZXMgb24gc2FtZSBsaW5lXG4ucmFkaW8taW5saW5lLFxuLmNoZWNrYm94LWlubGluZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5yYWRpby1pbmxpbmUgKyAucmFkaW8taW5saW5lLFxuLmNoZWNrYm94LWlubGluZSArIC5jaGVja2JveC1pbmxpbmUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tbGVmdDogMTBweDsgLy8gc3BhY2Ugb3V0IGNvbnNlY3V0aXZlIGlubGluZSBjb250cm9sc1xufVxuXG4vLyBBcHBseSBzYW1lIGRpc2FibGVkIGN1cnNvciB0d2VhayBhcyBmb3IgaW5wdXRzXG4vLyBTb21lIHNwZWNpYWwgY2FyZSBpcyBuZWVkZWQgYmVjYXVzZSA8bGFiZWw+cyBkb24ndCBpbmhlcml0IHRoZWlyIHBhcmVudCdzIGBjdXJzb3JgLlxuLy9cbi8vIE5vdGU6IE5laXRoZXIgcmFkaW9zIG5vciBjaGVja2JveGVzIGNhbiBiZSByZWFkb25seS5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG59XG4vLyBUaGVzZSBjbGFzc2VzIGFyZSB1c2VkIGRpcmVjdGx5IG9uIDxsYWJlbD5zXG4ucmFkaW8taW5saW5lLFxuLmNoZWNrYm94LWlubGluZSB7XG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cbn1cbi8vIFRoZXNlIGNsYXNzZXMgYXJlIHVzZWQgb24gZWxlbWVudHMgd2l0aCA8bGFiZWw+IGRlc2NlbmRhbnRzXG4ucmFkaW8sXG4uY2hlY2tib3gge1xuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgbGFiZWwge1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFN0YXRpYyBmb3JtIGNvbnRyb2wgdGV4dFxuLy9cbi8vIEFwcGx5IGNsYXNzIHRvIGEgYHBgIGVsZW1lbnQgdG8gbWFrZSBhbnkgc3RyaW5nIG9mIHRleHQgYWxpZ24gd2l0aCBsYWJlbHMgaW5cbi8vIGEgaG9yaXpvbnRhbCBmb3JtIGxheW91dC5cblxuLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAvLyBTaXplIGl0IGFwcHJvcHJpYXRlbHkgbmV4dCB0byByZWFsIGZvcm0gY29udHJvbHNcbiAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XG4gIHBhZGRpbmctYm90dG9tOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xuICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gZnJvbSBgcGBcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICRmb250LXNpemUtYmFzZSk7XG5cbiAgJi5pbnB1dC1sZyxcbiAgJi5pbnB1dC1zbSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gVGhlIGAuZm9ybS1ncm91cC0qIGZvcm0tY29udHJvbGAgdmFyaWF0aW9ucyBhcmUgc2FkbHkgZHVwbGljYXRlZCB0byBhdm9pZCB0aGVcbi8vIGlzc3VlIGRvY3VtZW50ZWQgaW4gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNTA3NC5cblxuQGluY2x1ZGUgaW5wdXQtc2l6ZSgnLmlucHV0LXNtJywgJGlucHV0LWhlaWdodC1zbWFsbCwgJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGwpO1xuLmZvcm0tZ3JvdXAtc20ge1xuICAuZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gICAgcGFkZGluZzogJHBhZGRpbmctc21hbGwtdmVydGljYWwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zbWFsbDtcbiAgICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbDtcbiAgfVxuICBzZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gIH1cbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sLFxuICBzZWxlY3RbbXVsdGlwbGVdLmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gICAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICRmb250LXNpemUtc21hbGwpO1xuICAgIHBhZGRpbmc6ICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCArIDEpICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtc21hbGw7XG4gIH1cbn1cblxuQGluY2x1ZGUgaW5wdXQtc2l6ZSgnLmlucHV0LWxnJywgJGlucHV0LWhlaWdodC1sYXJnZSwgJHBhZGRpbmctbGFyZ2UtdmVydGljYWwsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRmb250LXNpemUtbGFyZ2UsICRsaW5lLWhlaWdodC1sYXJnZSwgJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2UpO1xuLmZvcm0tZ3JvdXAtbGcge1xuICAuZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gICAgcGFkZGluZzogJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sYXJnZTtcbiAgICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgfVxuICBzZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gIH1cbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sLFxuICBzZWxlY3RbbXVsdGlwbGVdLmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gICAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICRmb250LXNpemUtbGFyZ2UpO1xuICAgIHBhZGRpbmc6ICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCArIDEpICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtbGFyZ2U7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgZmVlZGJhY2sgc3RhdGVzXG4vL1xuLy8gQXBwbHkgY29udGV4dHVhbCBhbmQgc2VtYW50aWMgc3RhdGVzIHRvIGluZGl2aWR1YWwgZm9ybSBjb250cm9scy5cblxuLmhhcy1mZWVkYmFjayB7XG4gIC8vIEVuYWJsZSBhYnNvbHV0ZSBwb3NpdGlvbmluZ1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLy8gRW5zdXJlIGljb25zIGRvbid0IG92ZXJsYXAgdGV4dFxuICAuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAoJGlucHV0LWhlaWdodC1iYXNlICogMS4yNSk7XG4gIH1cbn1cbi8vIEZlZWRiYWNrIGljb24gKHJlcXVpcmVzIC5nbHlwaGljb24gY2xhc3Nlcylcbi5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDI7IC8vIEVuc3VyZSBpY29uIGlzIGFib3ZlIGlucHV0IGdyb3Vwc1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uaW5wdXQtbGcgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmlucHV0LWdyb3VwLWxnICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcbi5mb3JtLWdyb3VwLWxnIC5mb3JtLWNvbnRyb2wgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgd2lkdGg6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG59XG4uaW5wdXQtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmlucHV0LWdyb3VwLXNtICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcbi5mb3JtLWdyb3VwLXNtIC5mb3JtLWNvbnRyb2wgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgd2lkdGg6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG59XG5cbi8vIEZlZWRiYWNrIHN0YXRlc1xuLmhhcy1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHN0YXRlLXN1Y2Nlc3MtdGV4dCwgJHN0YXRlLXN1Y2Nlc3MtdGV4dCwgJHN0YXRlLXN1Y2Nlc3MtYmcpO1xufVxuLmhhcy13YXJuaW5nIHtcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHN0YXRlLXdhcm5pbmctdGV4dCwgJHN0YXRlLXdhcm5pbmctdGV4dCwgJHN0YXRlLXdhcm5pbmctYmcpO1xufVxuLmhhcy1lcnJvciB7XG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRzdGF0ZS1kYW5nZXItdGV4dCwgJHN0YXRlLWRhbmdlci10ZXh0LCAkc3RhdGUtZGFuZ2VyLWJnKTtcbn1cblxuLy8gUmVwb3NpdGlvbiBmZWVkYmFjayBpY29uIGlmIGlucHV0IGhhcyB2aXNpYmxlIGxhYmVsIGFib3ZlXG4uaGFzLWZlZWRiYWNrIGxhYmVsIHtcblxuICAmIH4gLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgdG9wOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgNSk7IC8vIEhlaWdodCBvZiB0aGUgYGxhYmVsYCBhbmQgaXRzIG1hcmdpblxuICB9XG4gICYuc3Itb25seSB+IC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgIHRvcDogMDtcbiAgfVxufVxuXG5cbi8vIEhlbHAgdGV4dFxuLy9cbi8vIEFwcGx5IHRvIGFueSBlbGVtZW50IHlvdSB3aXNoIHRvIGNyZWF0ZSBsaWdodCB0ZXh0IGZvciBwbGFjZW1lbnQgaW1tZWRpYXRlbHlcbi8vIGJlbG93IGEgZm9ybSBjb250cm9sLiBVc2UgZm9yIGdlbmVyYWwgaGVscCwgZm9ybWF0dGluZywgb3IgaW5zdHJ1Y3Rpb25hbCB0ZXh0LlxuXG4uaGVscC1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrOyAvLyBhY2NvdW50IGZvciBhbnkgZWxlbWVudCB1c2luZyBoZWxwLWJsb2NrXG4gIG1hcmdpbi10b3A6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgY29sb3I6IGxpZ2h0ZW4oJHRleHQtY29sb3IsIDI1JSk7IC8vIGxpZ2h0ZW4gdGhlIHRleHQgc29tZSBmb3IgY29udHJhc3Rcbn1cblxuXG4vLyBJbmxpbmUgZm9ybXNcbi8vXG4vLyBNYWtlIGZvcm1zIGFwcGVhciBpbmxpbmUoLWJsb2NrKSBieSBhZGRpbmcgdGhlIGAuZm9ybS1pbmxpbmVgIGNsYXNzLiBJbmxpbmVcbi8vIGZvcm1zIGJlZ2luIHN0YWNrZWQgb24gZXh0cmEgc21hbGwgKG1vYmlsZSkgZGV2aWNlcyBhbmQgdGhlbiBnbyBpbmxpbmUgd2hlblxuLy8gdmlld3BvcnRzIHJlYWNoIDw3NjhweC5cbi8vXG4vLyBSZXF1aXJlcyB3cmFwcGluZyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoIGAuZm9ybS1ncm91cGAgZm9yIHByb3BlciBkaXNwbGF5IG9mXG4vLyBkZWZhdWx0IEhUTUwgZm9ybSBjb250cm9scyBhbmQgb3VyIGN1c3RvbSBmb3JtIGNvbnRyb2xzIChlLmcuLCBpbnB1dCBncm91cHMpLlxuLy9cbi8vIEhlYWRzIHVwISBUaGlzIGlzIG1peGluLWVkIGludG8gYC5uYXZiYXItZm9ybWAgaW4gbmF2YmFycy5sZXNzLlxuXG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgZnJvbSBgLmZvcm0taW5saW5lYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XG5AbWl4aW4gZm9ybS1pbmxpbmUge1xuXG4gIC8vIEtpY2sgaW4gdGhlIGlubGluZVxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAvLyBJbmxpbmUtYmxvY2sgYWxsIHRoZSB0aGluZ3MgZm9yIFwiaW5saW5lXCJcbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBJbiBuYXZiYXItZm9ybSwgYWxsb3cgZm9sa3MgdG8gKm5vdCogdXNlIGAuZm9ybS1ncm91cGBcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBhdXRvOyAvLyBQcmV2ZW50IGxhYmVscyBmcm9tIHN0YWNraW5nIGFib3ZlIGlucHV0cyBpbiBgLmZvcm0tZ3JvdXBgXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIE1ha2Ugc3RhdGljIGNvbnRyb2xzIGJlaGF2ZSBsaWtlIHJlZ3VsYXIgb25lc1xuICAgIC5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgZGlzcGxheTogaW5saW5lLXRhYmxlO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgLmlucHV0LWdyb3VwLWFkZG9uLFxuICAgICAgLmlucHV0LWdyb3VwLWJ0bixcbiAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJbnB1dCBncm91cHMgbmVlZCB0aGF0IDEwMCUgd2lkdGggdGhvdWdoXG4gICAgLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuY29udHJvbC1sYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gb24gcmFkaW9zL2NoZWNrYm94ZXMgdGhhdCB3ZXJlIHVzZWQgZm9yIHN0YWNraW5nLCBhbmRcbiAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cbiAgICAucmFkaW8sXG4gICAgLmNoZWNrYm94IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgbGFiZWwge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICAgIC5yYWRpbyBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAvLyBSZS1vdmVycmlkZSB0aGUgZmVlZGJhY2sgaWNvbi5cbiAgICAuaGFzLWZlZWRiYWNrIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgICAgdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGFzIGBAbWl4aW4gZm9ybS1pbmxpbmVgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcbi5mb3JtLWlubGluZSB7XG4gIEBpbmNsdWRlIGZvcm0taW5saW5lO1xufVxuXG5cblxuLy8gSG9yaXpvbnRhbCBmb3Jtc1xuLy9cbi8vIEhvcml6b250YWwgZm9ybXMgYXJlIGJ1aWx0IG9uIGdyaWQgY2xhc3NlcyBhbmQgYWxsb3cgeW91IHRvIGNyZWF0ZSBmb3JtcyB3aXRoXG4vLyBsYWJlbHMgb24gdGhlIGxlZnQgYW5kIGlucHV0cyBvbiB0aGUgcmlnaHQuXG5cbi5mb3JtLWhvcml6b250YWwge1xuXG4gIC8vIENvbnNpc3RlbnQgdmVydGljYWwgYWxpZ25tZW50IG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlc1xuICAvL1xuICAvLyBMYWJlbHMgYWxzbyBnZXQgc29tZSByZXNldCBzdHlsZXMsIGJ1dCB0aGF0IGlzIHNjb3BlZCB0byBhIG1lZGlhIHF1ZXJ5IGJlbG93LlxuICAucmFkaW8sXG4gIC5jaGVja2JveCxcbiAgLnJhZGlvLWlubGluZSxcbiAgLmNoZWNrYm94LWlubGluZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpOyAvLyBEZWZhdWx0IHBhZGRpbmcgcGx1cyBhIGJvcmRlclxuICB9XG4gIC8vIEFjY291bnQgZm9yIHBhZGRpbmcgd2UncmUgYWRkaW5nIHRvIGVuc3VyZSB0aGUgYWxpZ25tZW50IGFuZCBvZiBoZWxwIHRleHRcbiAgLy8gYW5kIG90aGVyIGNvbnRlbnQgYmVsb3cgaXRlbXNcbiAgLnJhZGlvLFxuICAuY2hlY2tib3gge1xuICAgIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpKTtcbiAgfVxuXG4gIC8vIE1ha2UgZm9ybSBncm91cHMgYmVoYXZlIGxpa2Ugcm93c1xuICAuZm9ybS1ncm91cCB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3c7XG4gIH1cblxuICAvLyBSZXNldCBzcGFjaW5nIGFuZCByaWdodCBhbGlnbiBsYWJlbHMsIGJ1dCBzY29wZSB0byBtZWRpYSBxdWVyaWVzIHNvIHRoYXRcbiAgLy8gbGFiZWxzIG9uIG5hcnJvdyB2aWV3cG9ydHMgc3RhY2sgdGhlIHNhbWUgYXMgYSBkZWZhdWx0IGZvcm0gZXhhbXBsZS5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7IC8vIERlZmF1bHQgcGFkZGluZyBwbHVzIGEgYm9yZGVyXG4gICAgfVxuICB9XG5cbiAgLy8gVmFsaWRhdGlvbiBzdGF0ZXNcbiAgLy9cbiAgLy8gUmVwb3NpdGlvbiB0aGUgaWNvbiBiZWNhdXNlIGl0J3Mgbm93IHdpdGhpbiBhIGdyaWQgY29sdW1uIGFuZCBjb2x1bW5zIGhhdmVcbiAgLy8gYHBvc2l0aW9uOiByZWxhdGl2ZTtgIG9uIHRoZW0uIEFsc28gYWNjb3VudHMgZm9yIHRoZSBncmlkIGd1dHRlciBwYWRkaW5nLlxuICAuaGFzLWZlZWRiYWNrIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgIHJpZ2h0OiBmbG9vcigoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xuICB9XG5cbiAgLy8gRm9ybSBncm91cCBzaXplc1xuICAvL1xuICAvLyBRdWljayB1dGlsaXR5IGNsYXNzIGZvciBhcHBseWluZyBgLmlucHV0LWxnYCBhbmQgYC5pbnB1dC1zbWAgc3R5bGVzIHRvIHRoZVxuICAvLyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoaW4gYSBgLmZvcm0tZ3JvdXBgLlxuICAuZm9ybS1ncm91cC1sZyB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICAuY29udHJvbC1sYWJlbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgKyAxKTtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9ybS1ncm91cC1zbSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICAuY29udHJvbC1sYWJlbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctc21hbGwtdmVydGljYWwgKyAxKTtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJ1dHRvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBzdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIEZvciBpbnB1dC5idG5cbiAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MvaXNzdWVzLzIxNFxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWJhc2UsICRsaW5lLWhlaWdodC1iYXNlLCAkYnRuLWJvcmRlci1yYWRpdXMtYmFzZSk7XG4gIEBpbmNsdWRlIHVzZXItc2VsZWN0KG5vbmUpO1xuXG4gICYsXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIHRhYi1mb2N1cztcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogJGJ0bi1kZWZhdWx0LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgb3V0bGluZTogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgQGluY2x1ZGUgb3BhY2l0eSguNjUpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYgdG8gYS5idG5cbn1cblxuYS5idG4ge1xuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IC8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG4gIH1cbn1cblxuXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1kZWZhdWx0IHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1kZWZhdWx0LWNvbG9yLCAkYnRuLWRlZmF1bHQtYmcsICRidG4tZGVmYXVsdC1ib3JkZXIpO1xufVxuLmJ0bi1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1wcmltYXJ5LWNvbG9yLCAkYnRuLXByaW1hcnktYmcsICRidG4tcHJpbWFyeS1ib3JkZXIpO1xufVxuLy8gU3VjY2VzcyBhcHBlYXJzIGFzIGdyZWVuXG4uYnRuLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXN1Y2Nlc3MtY29sb3IsICRidG4tc3VjY2Vzcy1iZywgJGJ0bi1zdWNjZXNzLWJvcmRlcik7XG59XG4vLyBJbmZvIGFwcGVhcnMgYXMgYmx1ZS1ncmVlblxuLmJ0bi1pbmZvIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1pbmZvLWNvbG9yLCAkYnRuLWluZm8tYmcsICRidG4taW5mby1ib3JkZXIpO1xufVxuLy8gV2FybmluZyBhcHBlYXJzIGFzIG9yYW5nZVxuLmJ0bi13YXJuaW5nIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi13YXJuaW5nLWNvbG9yLCAkYnRuLXdhcm5pbmctYmcsICRidG4td2FybmluZy1ib3JkZXIpO1xufVxuLy8gRGFuZ2VyIGFuZCBlcnJvciBhcHBlYXIgYXMgcmVkXG4uYnRuLWRhbmdlciB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tZGFuZ2VyLWNvbG9yLCAkYnRuLWRhbmdlci1iZywgJGJ0bi1kYW5nZXItYm9yZGVyKTtcbn1cblxuXG4vLyBMaW5rIGJ1dHRvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgYm9yZGVyLXJhZGl1czogMDtcblxuICAmLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkYnRuLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQnV0dG9uIFNpemVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWxnIHtcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBldmVuLW51bWJlcmVkIGhlaWdodCBvZiBidXR0b24gbmV4dCB0byBsYXJnZSBpbnB1dFxuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1sYXJnZSwgJGxpbmUtaGVpZ2h0LWxhcmdlLCAkYnRuLWJvcmRlci1yYWRpdXMtbGFyZ2UpO1xufVxuLmJ0bi1zbSB7XG4gIC8vIGxpbmUtaGVpZ2h0OiBlbnN1cmUgcHJvcGVyIGhlaWdodCBvZiBidXR0b24gbmV4dCB0byBzbWFsbCBpbnB1dFxuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkYnRuLWJvcmRlci1yYWRpdXMtc21hbGwpO1xufVxuLmJ0bi14cyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXhzLXZlcnRpY2FsLCAkcGFkZGluZy14cy1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkbGluZS1oZWlnaHQtc21hbGwsICRidG4tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG59XG5cblxuLy8gQmxvY2sgYnV0dG9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBWZXJ0aWNhbGx5IHNwYWNlIG91dCBtdWx0aXBsZSBibG9jayBidXR0b25zXG4uYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLy8gU3BlY2lmaWNpdHkgb3ZlcnJpZGVzXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gICYuYnRuLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy9cbi8vIENvbXBvbmVudCBhbmltYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBIZWFkcyB1cCFcbi8vXG4vLyBXZSBkb24ndCB1c2UgdGhlIGAub3BhY2l0eSgpYCBtaXhpbiBoZXJlIHNpbmNlIGl0IGNhdXNlcyBhIGJ1ZyB3aXRoIHRleHRcbi8vIGZpZWxkcyBpbiBJRTctOC4gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zNTUyLlxuXG4uZmFkZSB7XG4gIG9wYWNpdHk6IDA7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAuMTVzIGxpbmVhcik7XG4gICYuaW4ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmNvbGxhcHNlIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICAmLmluICAgICAgeyBkaXNwbGF5OiBibG9jazsgfVxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgdHImLmluIHRvIHRyLmNvbGxhcHNlLmluXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0Ym9keSYuaW4gdG8gdGJvZHkuY29sbGFwc2UuaW5cbn1cblxudHIuY29sbGFwc2UuaW4gICAgeyBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cblxudGJvZHkuY29sbGFwc2UuaW4geyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7IH1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eShoZWlnaHQsIHZpc2liaWxpdHkpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKC4zNXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbihlYXNlKTtcbn1cbiIsIi8vXG4vLyBEcm9wZG93biBtZW51c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBEcm9wZG93biBhcnJvdy9jYXJldFxuLmNhcmV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItdG9wOiAgICRjYXJldC13aWR0aC1iYXNlIGRhc2hlZDtcbiAgYm9yZGVyLXRvcDogICAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCBcXDk7IC8vIElFOFxuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4vLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoZGl2KVxuLmRyb3B1cCxcbi5kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8gUHJldmVudCB0aGUgZm9jdXMgb24gdGhlIGRyb3Bkb3duIHRvZ2dsZSB3aGVuIGNsb3NpbmcgZHJvcGRvd25zXG4uZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnUgKHVsKVxuLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1kcm9wZG93bjtcbiAgZGlzcGxheTogbm9uZTsgLy8gbm9uZSBieSBkZWZhdWx0LCBidXQgYmxvY2sgb24gXCJvcGVuXCIgb2YgdGhlIG1lbnVcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1pbi13aWR0aDogMTYwcHg7XG4gIHBhZGRpbmc6IDVweCAwO1xuICBtYXJnaW46IDJweCAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOyAvLyBJRTggZmFsbGJhY2tcbiAgYm9yZGVyOiAxcHggc29saWQgJGRyb3Bkb3duLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDZweCAxMnB4IHJnYmEoMCwwLDAsLjE3NSkpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuXG4gIC8vIEFsaWducyB0aGUgZHJvcGRvd24gbWVudSB0byByaWdodFxuICAvL1xuICAvLyBEZXByZWNhdGVkIGFzIG9mIDMuMS4wIGluIGZhdm9yIG9mIGAuZHJvcGRvd24tbWVudS1bZGlyXWBcbiAgJi5wdWxsLXJpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIHRoZSBkcm9wZG93blxuICAuZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgbmF2LWRpdmlkZXIoJGRyb3Bkb3duLWRpdmlkZXItYmcpO1xuICB9XG5cbiAgLy8gTGlua3Mgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4gID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAzcHggMjBweDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIH1cbn1cblxuLy8gSG92ZXIvRm9jdXMgc3RhdGVcbi5kcm9wZG93bi1tZW51ID4gbGkgPiBhIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcbiAgfVxufVxuXG4vLyBBY3RpdmUgc3RhdGVcbi5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+IGEge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZztcbiAgfVxufVxuXG4vLyBEaXNhYmxlZCBzdGF0ZVxuLy9cbi8vIEdyYXkgb3V0IHRleHQgYW5kIGVuc3VyZSB0aGUgaG92ZXIvZm9jdXMgc3RhdGUgcmVtYWlucyBncmF5XG5cbi5kcm9wZG93bi1tZW51ID4gLmRpc2FibGVkID4gYSB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgfVxuXG4gIC8vIE51a2UgaG92ZXIvZm9jdXMgZWZmZWN0c1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIENTUyBncmFkaWVudFxuICAgIEBpbmNsdWRlIHJlc2V0LWZpbHRlcjtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cbn1cblxuLy8gT3BlbiBzdGF0ZSBmb3IgdGhlIGRyb3Bkb3duXG4ub3BlbiB7XG4gIC8vIFNob3cgdGhlIG1lbnVcbiAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIG91dGxpbmUgd2hlbiA6Zm9jdXMgaXMgdHJpZ2dlcmVkXG4gID4gYSB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLyBNZW51IHBvc2l0aW9uaW5nXG4vL1xuLy8gQWRkIGV4dHJhIGNsYXNzIHRvIGAuZHJvcGRvd24tbWVudWAgdG8gZmxpcCB0aGUgYWxpZ25tZW50IG9mIHRoZSBkcm9wZG93blxuLy8gbWVudSB3aXRoIHRoZSBwYXJlbnQuXG4uZHJvcGRvd24tbWVudS1yaWdodCB7XG4gIGxlZnQ6IGF1dG87IC8vIFJlc2V0IHRoZSBkZWZhdWx0IGZyb20gYC5kcm9wZG93bi1tZW51YFxuICByaWdodDogMDtcbn1cbi8vIFdpdGggdjMsIHdlIGVuYWJsZWQgYXV0by1mbGlwcGluZyBpZiB5b3UgaGF2ZSBhIGRyb3Bkb3duIHdpdGhpbiBhIHJpZ2h0XG4vLyBhbGlnbmVkIG5hdiBjb21wb25lbnQuIFRvIGVuYWJsZSB0aGUgdW5kb2luZyBvZiB0aGF0LCB3ZSBwcm92aWRlIGFuIG92ZXJyaWRlXG4vLyB0byByZXN0b3JlIHRoZSBkZWZhdWx0IGRyb3Bkb3duIG1lbnUgYWxpZ25tZW50LlxuLy9cbi8vIFRoaXMgaXMgb25seSBmb3IgbGVmdC1hbGlnbmluZyBhIGRyb3Bkb3duIG1lbnUgd2l0aGluIGEgYC5uYXZiYXItcmlnaHRgIG9yXG4vLyBgLnB1bGwtcmlnaHRgIG5hdiBjb21wb25lbnQuXG4uZHJvcGRvd24tbWVudS1sZWZ0IHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAzcHggMjBweDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIEJhY2tkcm9wIHRvIGNhdGNoIGJvZHkgY2xpY2tzIG9uIG1vYmlsZSwgZXRjLlxuLmRyb3Bkb3duLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6ICgkemluZGV4LWRyb3Bkb3duIC0gMTApO1xufVxuXG4vLyBSaWdodCBhbGlnbmVkIGRyb3Bkb3duc1xuLnB1bGwtcmlnaHQgPiAuZHJvcGRvd24tbWVudSB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vXG4vLyBKdXN0IGFkZCAuZHJvcHVwIGFmdGVyIHRoZSBzdGFuZGFyZCAuZHJvcGRvd24gY2xhc3MgYW5kIHlvdSdyZSBzZXQsIGJyby5cbi8vIFRPRE86IGFic3RyYWN0IHRoaXMgc28gdGhhdCB0aGUgbmF2YmFyIGZpeGVkIHN0eWxlcyBhcmUgbm90IHBsYWNlZCBoZXJlP1xuXG4uZHJvcHVwLFxuLm5hdmJhci1maXhlZC1ib3R0b20gLmRyb3Bkb3duIHtcbiAgLy8gUmV2ZXJzZSB0aGUgY2FyZXRcbiAgLmNhcmV0IHtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aC1iYXNlIGRhc2hlZDtcbiAgICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCBcXDk7IC8vIElFOFxuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbiAgLy8gRGlmZmVyZW50IHBvc2l0aW9uaW5nIGZvciBib3R0b20gdXAgbWVudVxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gIH1cbn1cblxuXG4vLyBDb21wb25lbnQgYWxpZ25tZW50XG4vL1xuLy8gUmVpdGVyYXRlIHBlciBuYXZiYXIubGVzcyBhbmQgdGhlIG1vZGlmaWVkIGNvbXBvbmVudCBhbGlnbm1lbnQgdGhlcmUuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gIC5uYXZiYXItcmlnaHQge1xuICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIHJpZ2h0OiAwOyBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgICAvLyBOZWNlc3NhcnkgZm9yIG92ZXJyaWRlcyBvZiB0aGUgZGVmYXVsdCByaWdodCBhbGlnbmVkIG1lbnUuXG4gICAgLy8gV2lsbCByZW1vdmUgY29tZSB2NCBpbiBhbGwgbGlrZWxpaG9vZC5cbiAgICAuZHJvcGRvd24tbWVudS1sZWZ0IHtcbiAgICAgIGxlZnQ6IDA7IHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgYnV0dG9uIHRvIHRoZSBmcm9udFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4uYnRuLWdyb3VwIHtcbiAgLmJ0biArIC5idG4sXG4gIC5idG4gKyAuYnRuLWdyb3VwLFxuICAuYnRuLWdyb3VwICsgLmJ0bixcbiAgLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4OyAvLyBPZmZzZXQgdGhlIGZpcnN0IGNoaWxkJ3MgbWFyZ2luXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gIC5idG4sXG4gIC5idG4tZ3JvdXAsXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAsXG4gID4gLmlucHV0LWdyb3VwIHtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICB9XG59XG5cbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gU2V0IGNvcm5lcnMgaW5kaXZpZHVhbCBiZWNhdXNlIHNvbWV0aW1lcyBhIHNpbmdsZSBidXR0b24gY2FuIGJlIGluIGEgLmJ0bi1ncm91cCBhbmQgd2UgbmVlZCA6Zmlyc3QtY2hpbGQgYW5kIDpsYXN0LWNoaWxkIHRvIGJvdGggbWF0Y2hcbi5idG4tZ3JvdXAgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gICY6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSkge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cbn1cbi8vIE5lZWQgLmRyb3Bkb3duLXRvZ2dsZSBzaW5jZSA6bGFzdC1jaGlsZCBkb2Vzbid0IGFwcGx5IGdpdmVuIGEgLmRyb3Bkb3duLW1lbnUgaW1tZWRpYXRlbHkgYWZ0ZXIgaXRcbi5idG4tZ3JvdXAgPiAuYnRuOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwID4gLmRyb3Bkb3duLXRvZ2dsZTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cblxuLy8gQ3VzdG9tIGVkaXRzIGZvciBpbmNsdWRpbmcgYnRuLWdyb3VwcyB3aXRoaW4gYnRuLWdyb3VwcyAodXNlZnVsIGZvciBpbmNsdWRpbmcgZHJvcGRvd24gYnV0dG9ucyB3aXRoaW4gYSBidG4tZ3JvdXApXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gID4gLmJ0bjpsYXN0LWNoaWxkLFxuICA+IC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuXG4vLyBPbiBhY3RpdmUgYW5kIG9wZW4sIGRvbid0IHNob3cgb3V0bGluZVxuLmJ0bi1ncm91cCAuZHJvcGRvd24tdG9nZ2xlOmFjdGl2ZSxcbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgb3V0bGluZTogMDtcbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC14cyA+IC5idG4geyBAZXh0ZW5kIC5idG4teHM7IH1cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gR2l2ZSB0aGUgbGluZSBiZXR3ZWVuIGJ1dHRvbnMgc29tZSBkZXB0aFxuLmJ0bi1ncm91cCA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBhZGRpbmctbGVmdDogMTJweDtcbiAgcGFkZGluZy1yaWdodDogMTJweDtcbn1cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBSZW1vdmUgdGhlIGdyYWRpZW50IGFuZCBzZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vIFJlcG9zaXRpb24gdGhlIGNhcmV0XG4uYnRuIC5jYXJldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLy8gQ2FyZXRzIGluIG90aGVyIGJ1dHRvbiBzaXplc1xuLmJ0bi1sZyAuY2FyZXQge1xuICBib3JkZXItd2lkdGg6ICRjYXJldC13aWR0aC1sYXJnZSAkY2FyZXQtd2lkdGgtbGFyZ2UgMDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbn1cbi8vIFVwc2lkZSBkb3duIGNhcmV0cyBmb3IgLmRyb3B1cFxuLmRyb3B1cCAuYnRuLWxnIC5jYXJldCB7XG4gIGJvcmRlci13aWR0aDogMCAkY2FyZXQtd2lkdGgtbGFyZ2UgJGNhcmV0LXdpZHRoLWxhcmdlO1xufVxuXG5cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBDbGVhciBmbG9hdHMgc28gZHJvcGRvd24gbWVudXMgY2FuIGJlIHByb3Blcmx5IHBsYWNlZFxuICA+IC5idG4tZ3JvdXAge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgID4gLmJ0biB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG4gIH1cblxuICA+IC5idG4gKyAuYnRuLFxuICA+IC5idG4gKyAuYnRuLWdyb3VwLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIHtcbiAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gICY6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG4gICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICB9XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgPiAuYnRuOmxhc3QtY2hpbGQsXG4gID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG59XG5cblxuLy8gSnVzdGlmaWVkIGJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ncm91cC1qdXN0aWZpZWQge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHdpZHRoOiAxJTtcbiAgfVxuICA+IC5idG4tZ3JvdXAgLmJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG4tZ3JvdXAgLmRyb3Bkb3duLW1lbnUge1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xuLy9cbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2Vcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxuXG5bZGF0YS10b2dnbGU9XCJidXR0b25zXCJdIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBJbnB1dCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEJhc2Ugc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBkcm9wZG93bnNcbiAgZGlzcGxheTogdGFibGU7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7IC8vIHByZXZlbnQgaW5wdXQgZ3JvdXBzIGZyb20gaW5oZXJpdGluZyBib3JkZXIgc3R5bGVzIGZyb20gdGFibGUgY2VsbHMgd2hlbiBwbGFjZWQgd2l0aGluIGEgdGFibGVcblxuICAvLyBVbmRvIHBhZGRpbmcgYW5kIGZsb2F0IG9mIGdyaWQgY2xhc3Nlc1xuICAmW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgLy8gRW5zdXJlIHRoYXQgdGhlIGlucHV0IGlzIGFsd2F5cyBhYm92ZSB0aGUgKmFwcGVuZGVkKiBhZGRvbiBidXR0b24gZm9yXG4gICAgLy8gcHJvcGVyIGJvcmRlciBjb2xvcnMuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAvLyBJRTkgZnViYXJzIHRoZSBwbGFjZWhvbGRlciBhdHRyaWJ1dGUgaW4gdGV4dCBpbnB1dHMgYW5kIHRoZSBhcnJvd3Mgb25cbiAgICAvLyBzZWxlY3QgZWxlbWVudHMgaW4gaW5wdXQgZ3JvdXBzLiBUbyBmaXggaXQsIHdlIGZsb2F0IHRoZSBpbnB1dC4gRGV0YWlsczpcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTYxI2lzc3VlY29tbWVudC0yODkzNjg1NVxuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBcbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuICB9XG59XG5cbi8vIFNpemluZyBvcHRpb25zXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xuICBAZXh0ZW5kIC5pbnB1dC1sZztcbn1cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XG4gIEBleHRlbmQgLmlucHV0LXNtO1xufVxuXG5cbi8vIERpc3BsYXkgYXMgdGFibGUtY2VsbFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWJ0bixcbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcblxuICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cbi8vIEFkZG9uIGFuZCBhZGRvbiB3cmFwcGVyIGZvciBidXR0b25zXG4uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtYnRuIHtcbiAgd2lkdGg6IDElO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBNYXRjaCB0aGUgaW5wdXRzXG59XG5cbi8vIFRleHQgaW5wdXQgZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAtYWRkb24ge1xuICBwYWRkaW5nOiAkcGFkZGluZy1iYXNlLXZlcnRpY2FsICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXM7XG5cbiAgLy8gU2l6aW5nXG4gICYuaW5wdXQtc20ge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsO1xuICB9XG4gICYuaW5wdXQtbGcge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlO1xuICB9XG5cbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4vLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOmZpcnN0LWNoaWxkLFxuLmlucHV0LWdyb3VwLWFkZG9uOmZpcnN0LWNoaWxkLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bi1ncm91cCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmRyb3Bkb3duLXRvZ2dsZSxcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbn1cbi5pbnB1dC1ncm91cC1hZGRvbjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yaWdodDogMDtcbn1cbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOmxhc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYWRkb246bGFzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuLWdyb3VwID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5kcm9wZG93bi10b2dnbGUsXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cbi5pbnB1dC1ncm91cC1hZGRvbjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbi8vIEJ1dHRvbiBpbnB1dCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5pbnB1dC1ncm91cC1idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEphbmtpbHkgcHJldmVudCBpbnB1dCBidXR0b24gZ3JvdXBzIGZyb20gd3JhcHBpbmcgd2l0aCBgd2hpdGUtc3BhY2VgIGFuZFxuICAvLyBgZm9udC1zaXplYCBpbiBjb21iaW5hdGlvbiB3aXRoIGBpbmxpbmUtYmxvY2tgIG9uIGJ1dHRvbnMuXG4gIGZvbnQtc2l6ZTogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIHNwYWNpbmcsIHBvc2l0aW9uIGZvciBicmluZ2luZyBob3ZlcmVkL2ZvY3VzZWQvYWN0aXZlZFxuICAvLyBlbGVtZW50IGFib3ZlIHRoZSBzaWJsaW5ncy5cbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgKyAuYnRuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgIH1cbiAgICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBidXR0b24gdG8gdGhlIGZyb250XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICB9XG5cbiAgLy8gTmVnYXRpdmUgbWFyZ2luIHRvIG9ubHkgaGF2ZSBhIDFweCBib3JkZXIgYmV0d2VlbiB0aGUgdHdvXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgID4gLmJ0bixcbiAgICA+IC5idG4tZ3JvdXAge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xuICAgIH1cbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgID4gLmJ0bixcbiAgICA+IC5idG4tZ3JvdXAge1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIE5hdnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm5hdiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCB1bC9vbFxuICBsaXN0LXN0eWxlOiBub25lO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICA+IGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICA+IGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAkbmF2LWxpbmstcGFkZGluZztcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LWxpbmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3RhdGUgc2V0cyB0ZXh0IHRvIGdyYXkgYW5kIG51a2VzIGhvdmVyL3RhYiBlZmZlY3RzXG4gICAgJi5kaXNhYmxlZCA+IGEge1xuICAgICAgY29sb3I6ICRuYXYtZGlzYWJsZWQtbGluay1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gT3BlbiBkcm9wZG93bnNcbiAgLm9wZW4gPiBhIHtcbiAgICAmLFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LWxpbmstaG92ZXItYmc7XG4gICAgICBib3JkZXItY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIE5hdiBkaXZpZGVycyAoZGVwcmVjYXRlZCB3aXRoIHYzLjAuMSlcbiAgLy9cbiAgLy8gVGhpcyBzaG91bGQgaGF2ZSBiZWVuIHJlbW92ZWQgaW4gdjMgd2l0aCB0aGUgZHJvcHBpbmcgb2YgYC5uYXYtbGlzdGAsIGJ1dFxuICAvLyB3ZSBtaXNzZWQgaXQuIFdlIGRvbid0IGN1cnJlbnRseSBzdXBwb3J0IHRoaXMgYW55d2hlcmUsIGJ1dCBpbiB0aGUgaW50ZXJlc3RcbiAgLy8gb2YgbWFpbnRhaW5pbmcgYmFja3dhcmQgY29tcGF0aWJpbGl0eSBpbiBjYXNlIHlvdSB1c2UgaXQsIGl0J3MgZGVwcmVjYXRlZC5cbiAgLm5hdi1kaXZpZGVyIHtcbiAgICBAaW5jbHVkZSBuYXYtZGl2aWRlcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgSUU4IGZyb20gbWlzcGxhY2luZyBpbWdzXG4gIC8vXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9pc3N1ZXMvOTg0I2lzc3VlY29tbWVudC0zOTg1OTg5XG4gID4gbGkgPiBhID4gaW1nIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBUYWJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEdpdmUgdGhlIHRhYnMgc29tZXRoaW5nIHRvIHNpdCBvblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIC8vIE1ha2UgdGhlIGxpc3QtaXRlbXMgb3ZlcmxheSB0aGUgYm90dG9tIGJvcmRlclxuICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XG5cbiAgICAvLyBBY3R1YWwgdGFicyAoYXMgbGlua3MpXG4gICAgPiBhIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvciAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZSwgYW5kIGl0cyA6aG92ZXIgdG8gb3ZlcnJpZGUgbm9ybWFsIDpob3ZlclxuICAgICYuYWN0aXZlID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIHB1bGxpbmcgdGhpcyBpbiBtYWlubHkgZm9yIGxlc3Mgc2hvcnRoYW5kXG4gICYubmF2LWp1c3RpZmllZCB7XG4gICAgQGV4dGVuZCAubmF2LWp1c3RpZmllZDtcbiAgICBAZXh0ZW5kIC5uYXYtdGFicy1qdXN0aWZpZWQ7XG4gIH1cbn1cblxuXG4vLyBQaWxsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm5hdi1waWxscyB7XG4gID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgLy8gTGlua3MgcmVuZGVyZWQgYXMgcGlsbHNcbiAgICA+IGEge1xuICAgICAgYm9yZGVyLXJhZGl1czogJG5hdi1waWxscy1ib3JkZXItcmFkaXVzO1xuICAgIH1cbiAgICArIGxpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFN0YWNrZWQgcGlsbHNcbi5uYXYtc3RhY2tlZCB7XG4gID4gbGkge1xuICAgIGZsb2F0OiBub25lO1xuICAgICsgbGkge1xuICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IC8vIG5vIG5lZWQgZm9yIHRoaXMgZ2FwIGJldHdlZW4gbmF2IGl0ZW1zXG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2IHZhcmlhdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEp1c3RpZmllZCBuYXYgbGlua3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm5hdi1qdXN0aWZpZWQge1xuICB3aWR0aDogMTAwJTtcblxuICA+IGxpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICA+IGEge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIH1cbiAgfVxuXG4gID4gLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgID4gbGkge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgID4gYSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE1vdmUgYm9yZGVycyB0byBhbmNob3JzIGluc3RlYWQgb2YgYm90dG9tIG9mIGxpc3Rcbi8vXG4vLyBNaXhpbiBmb3IgYWRkaW5nIG9uIHRvcCB0aGUgc2hhcmVkIGAubmF2LWp1c3RpZmllZGAgc3R5bGVzIGZvciBvdXIgdGFic1xuLm5hdi10YWJzLWp1c3RpZmllZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgPiBsaSA+IGEge1xuICAgIC8vIE92ZXJyaWRlIG1hcmdpbiBmcm9tIC5uYXYtdGFic1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICB9XG5cbiAgPiAuYWN0aXZlID4gYSxcbiAgPiAuYWN0aXZlID4gYTpob3ZlcixcbiAgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlIDAgMDtcbiAgICB9XG4gICAgPiAuYWN0aXZlID4gYSxcbiAgICA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuICAgID4gLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJG5hdi10YWJzLWp1c3RpZmllZC1hY3RpdmUtbGluay1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuXG4vLyBEcm9wZG93bnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gU3BlY2lmaWMgZHJvcGRvd25zXG4ubmF2LXRhYnMgLmRyb3Bkb3duLW1lbnUge1xuICAvLyBtYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG59XG4iLCIvL1xuLy8gTmF2YmFyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBXcmFwcGVyIGFuZCBiYXNlIGNsYXNzXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAkbmF2YmFyLWhlaWdodDsgLy8gRW5zdXJlIGEgbmF2YmFyIGFsd2F5cyBzaG93cyAoZS5nLiwgd2l0aG91dCBhIC5uYXZiYXItYnJhbmQgaW4gY29sbGFwc2VkIG1vZGUpXG4gIG1hcmdpbi1ib3R0b206ICRuYXZiYXItbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgLy8gUHJldmVudCBmbG9hdHMgZnJvbSBicmVha2luZyB0aGUgbmF2YmFyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgYm9yZGVyLXJhZGl1czogJG5hdmJhci1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIGhlYWRpbmdcbi8vXG4vLyBHcm91cHMgYC5uYXZiYXItYnJhbmRgIGFuZCBgLm5hdmJhci10b2dnbGVgIGludG8gYSBzaW5nbGUgY29tcG9uZW50IGZvciBlYXN5XG4vLyBzdHlsaW5nIG9mIHJlc3BvbnNpdmUgYXNwZWN0cy5cblxuLm5hdmJhci1oZWFkZXIge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cblxuLy8gTmF2YmFyIGNvbGxhcHNlIChib2R5KVxuLy9cbi8vIEdyb3VwIHlvdXIgbmF2YmFyIGNvbnRlbnQgaW50byB0aGlzIGZvciBlYXN5IGNvbGxhcHNpbmcgYW5kIGV4cGFuZGluZyBhY3Jvc3Ncbi8vIHZhcmlvdXMgZGV2aWNlIHNpemVzLiBCeSBkZWZhdWx0LCB0aGlzIGNvbnRlbnQgaXMgY29sbGFwc2VkIHdoZW4gPDc2OHB4LCBidXRcbi8vIHdpbGwgZXhwYW5kIHBhc3QgdGhhdCBmb3IgYSBob3Jpem9udGFsIGRpc3BsYXkuXG4vL1xuLy8gVG8gc3RhcnQgKG9uIG1vYmlsZSBkZXZpY2VzKSB0aGUgbmF2YmFyIGxpbmtzLCBmb3JtcywgYW5kIGJ1dHRvbnMgYXJlIHN0YWNrZWRcbi8vIHZlcnRpY2FsbHkgYW5kIGluY2x1ZGUgYSBgbWF4LWhlaWdodGAgdG8gb3ZlcmZsb3cgaW4gY2FzZSB5b3UgaGF2ZSB0b28gbXVjaFxuLy8gY29udGVudCBmb3IgdGhlIHVzZXIncyB2aWV3cG9ydC5cblxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIG92ZXJmbG93LXg6IHZpc2libGU7XG4gIHBhZGRpbmctcmlnaHQ6ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBwYWRkaW5nLWxlZnQ6ICAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjEpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICYuaW4ge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgICYuY29sbGFwc2Uge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgc2V0dGluZ1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLmluIHtcbiAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLy8gVW5kbyB0aGUgY29sbGFwc2Ugc2lkZSBwYWRkaW5nIGZvciBuYXZiYXJzIHdpdGggY29udGFpbmVycyB0byBlbnN1cmVcbiAgICAvLyBhbGlnbm1lbnQgb2YgcmlnaHQtYWxpZ25lZCBjb250ZW50cy5cbiAgICAubmF2YmFyLWZpeGVkLXRvcCAmLFxuICAgIC5uYXZiYXItc3RhdGljLXRvcCAmLFxuICAgIC5uYXZiYXItZml4ZWQtYm90dG9tICYge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gIH1cbn1cblxuLm5hdmJhci1maXhlZC10b3AsXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XG4gIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIG1heC1oZWlnaHQ6ICRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDtcblxuICAgIEBtZWRpYSAobWF4LWRldmljZS13aWR0aDogJHNjcmVlbi14cy1taW4pIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgICAgbWF4LWhlaWdodDogMjAwcHg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQm90aCBuYXZiYXIgaGVhZGVyIGFuZCBjb2xsYXBzZVxuLy9cbi8vIFdoZW4gYSBjb250YWluZXIgaXMgcHJlc2VudCwgY2hhbmdlIHRoZSBiZWhhdmlvciBvZiB0aGUgaGVhZGVyIGFuZCBjb2xsYXBzZS5cblxuLmNvbnRhaW5lcixcbi5jb250YWluZXItZmx1aWQge1xuICA+IC5uYXZiYXItaGVhZGVyLFxuICA+IC5uYXZiYXItY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIG1hcmdpbi1sZWZ0OiAgLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAgMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gTmF2YmFyIGFsaWdubWVudCBvcHRpb25zXG4vL1xuLy8gRGlzcGxheSB0aGUgbmF2YmFyIGFjcm9zcyB0aGUgZW50aXJldHkgb2YgdGhlIHBhZ2Ugb3IgZml4ZWQgaXQgdG8gdGhlIHRvcCBvclxuLy8gYm90dG9tIG9mIHRoZSBwYWdlLlxuXG4vLyBTdGF0aWMgdG9wICh1bmZpeGVkLCBidXQgMTAwJSB3aWRlKSBuYXZiYXJcbi5uYXZiYXItc3RhdGljLXRvcCB7XG4gIHotaW5kZXg6ICR6aW5kZXgtbmF2YmFyO1xuICBib3JkZXItd2lkdGg6IDAgMCAxcHg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG5cbi8vIEZpeCB0aGUgdG9wL2JvdHRvbSBuYXZiYXJzIHdoZW4gc2NyZWVuIHJlYWwgZXN0YXRlIHN1cHBvcnRzIGl0XG4ubmF2YmFyLWZpeGVkLXRvcCxcbi5uYXZiYXItZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1uYXZiYXItZml4ZWQ7XG5cbiAgLy8gVW5kbyB0aGUgcm91bmRlZCBjb3JuZXJzXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuLm5hdmJhci1maXhlZC10b3Age1xuICB0b3A6IDA7XG4gIGJvcmRlci13aWR0aDogMCAwIDFweDtcbn1cbi5uYXZiYXItZml4ZWQtYm90dG9tIHtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBvdmVycmlkZSAubmF2YmFyIGRlZmF1bHRzXG4gIGJvcmRlci13aWR0aDogMXB4IDAgMDtcbn1cblxuXG4vLyBCcmFuZC9wcm9qZWN0IG5hbWVcblxuLm5hdmJhci1icmFuZCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nOiAkbmF2YmFyLXBhZGRpbmctdmVydGljYWwgJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgaGVpZ2h0OiAkbmF2YmFyLWhlaWdodDtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICA+IGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIC5uYXZiYXIgPiAuY29udGFpbmVyICYsXG4gICAgLm5hdmJhciA+IC5jb250YWluZXItZmx1aWQgJiB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0b2dnbGVcbi8vXG4vLyBDdXN0b20gYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgYC5uYXZiYXItY29sbGFwc2VgLCBwb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZVxuLy8gSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi5uYXZiYXItdG9nZ2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIHBhZGRpbmc6IDlweCAxMHB4O1xuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oMzRweCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gIC8vIFdlIHJlbW92ZSB0aGUgYG91dGxpbmVgIGhlcmUsIGJ1dCBsYXRlciBjb21wZW5zYXRlIGJ5IGF0dGFjaGluZyBgOmhvdmVyYFxuICAvLyBzdHlsZXMgdG8gYDpmb2N1c2AuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAvLyBCYXJzXG4gIC5pY29uLWJhciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xuICB9XG4gIC5pY29uLWJhciArIC5pY29uLWJhciB7XG4gICAgbWFyZ2luLXRvcDogNHB4O1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIG5hdiBsaW5rc1xuLy9cbi8vIEJ1aWxkcyBvbiB0b3Agb2YgdGhlIGAubmF2YCBjb21wb25lbnRzIHdpdGggaXRzIG93biBtb2RpZmllciBjbGFzcyB0byBtYWtlXG4vLyB0aGUgbmF2IHRoZSBmdWxsIGhlaWdodCBvZiB0aGUgaG9yaXpvbnRhbCBuYXYgKGFib3ZlIDc2OHB4KS5cblxuLm5hdmJhci1uYXYge1xuICBtYXJnaW46ICgkbmF2YmFyLXBhZGRpbmctdmVydGljYWwgLyAyKSAoLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsKTtcblxuICA+IGxpID4gYSB7XG4gICAgcGFkZGluZy10b3A6ICAgIDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgIC8vIERyb3Bkb3ducyBnZXQgY3VzdG9tIGRpc3BsYXkgd2hlbiBjb2xsYXBzZWRcbiAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICA+IGxpID4gYSxcbiAgICAgIC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiA1cHggMTVweCA1cHggMjVweDtcbiAgICAgIH1cbiAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFVuY29sbGFwc2UgdGhlIG5hdlxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMDtcblxuICAgID4gbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICA+IGEge1xuICAgICAgICBwYWRkaW5nLXRvcDogICAgJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBmb3JtXG4vL1xuLy8gRXh0ZW5zaW9uIG9mIHRoZSBgLmZvcm0taW5saW5lYCB3aXRoIHNvbWUgZXh0cmEgZmxhdm9yIGZvciBvcHRpbXVtIGRpc3BsYXkgaW5cbi8vIG91ciBuYXZiYXJzLlxuXG4ubmF2YmFyLWZvcm0ge1xuICBtYXJnaW4tbGVmdDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBtYXJnaW4tcmlnaHQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgcGFkZGluZzogMTBweCAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICRzaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSksIDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHNoYWRvdyk7XG5cbiAgLy8gTWl4aW4gYmVoYXZpb3IgZm9yIG9wdGltdW0gZGlzcGxheVxuICBAaW5jbHVkZSBmb3JtLWlubGluZTtcblxuICAuZm9ybS1ncm91cCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWxseSBjZW50ZXIgaW4gZXhwYW5kZWQsIGhvcml6b250YWwgbmF2YmFyXG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkaW5wdXQtaGVpZ2h0LWJhc2UpO1xuXG4gIC8vIFVuZG8gMTAwJSB3aWR0aCBmb3IgcHVsbCBjbGFzc2VzXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm9yZGVyOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy8gRHJvcGRvd24gbWVudXNcblxuLy8gTWVudSBwb3NpdGlvbiBhbmQgbWVudSBjYXJldHNcbi5uYXZiYXItbmF2ID4gbGkgPiAuZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xufVxuLy8gTWVudSBwb3NpdGlvbiBhbmQgbWVudSBjYXJldCBzdXBwb3J0IGZvciBkcm9wdXBzIHZpYSBleHRyYSBkcm9wdXAgY2xhc3Ncbi5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXZiYXItbmF2ID4gbGkgPiAuZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXZiYXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xufVxuXG5cbi8vIEJ1dHRvbnMgaW4gbmF2YmFyc1xuLy9cbi8vIFZlcnRpY2FsbHkgY2VudGVyIGEgYnV0dG9uIHdpdGhpbiBhIG5hdmJhciAod2hlbiAqbm90KiBpbiBhIGZvcm0pLlxuXG4ubmF2YmFyLWJ0biB7XG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkaW5wdXQtaGVpZ2h0LWJhc2UpO1xuXG4gICYuYnRuLXNtIHtcbiAgICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGlucHV0LWhlaWdodC1zbWFsbCk7XG4gIH1cbiAgJi5idG4teHMge1xuICAgIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigyMik7XG4gIH1cbn1cblxuXG4vLyBUZXh0IGluIG5hdmJhcnNcbi8vXG4vLyBBZGQgYSBjbGFzcyB0byBtYWtlIGFueSBlbGVtZW50IHByb3Blcmx5IGFsaWduIGl0c2VsZiB2ZXJ0aWNhbGx5IHdpdGhpbiB0aGUgbmF2YmFycy5cblxuLm5hdmJhci10ZXh0IHtcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRsaW5lLWhlaWdodC1jb21wdXRlZCk7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgfVxufVxuXG5cbi8vIENvbXBvbmVudCBhbGlnbm1lbnRcbi8vXG4vLyBSZXB1cnBvc2UgdGhlIHB1bGwgdXRpbGl0aWVzIGFzIHRoZWlyIG93biBuYXZiYXIgdXRpbGl0aWVzIHRvIGF2b2lkIHNwZWNpZmljaXR5XG4vLyBpc3N1ZXMgd2l0aCBwYXJlbnRzIGFuZCBjaGFpbmluZy4gT25seSBkbyB0aGlzIHdoZW4gdGhlIG5hdmJhciBpcyB1bmNvbGxhcHNlZFxuLy8gdGhvdWdoIHNvIHRoYXQgbmF2YmFyIGNvbnRlbnRzIHByb3Blcmx5IHN0YWNrIGFuZCBhbGlnbiBpbiBtb2JpbGUuXG4vL1xuLy8gRGVjbGFyZWQgYWZ0ZXIgdGhlIG5hdmJhciBjb21wb25lbnRzIHRvIGVuc3VyZSBtb3JlIHNwZWNpZmljaXR5IG9uIHRoZSBtYXJnaW5zLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAubmF2YmFyLWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm5hdmJhci1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuXG4gICAgfiAubmF2YmFyLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBBbHRlcm5hdGUgbmF2YmFyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRGVmYXVsdCBuYXZiYXJcbi5uYXZiYXItZGVmYXVsdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1iZztcbiAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYm9yZGVyO1xuXG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGUge1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ib3JkZXItY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc7XG4gICAgfVxuICAgIC5pY29uLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWljb24tYmFyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItY29sbGFwc2UsXG4gIC5uYXZiYXItZm9ybSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYm9yZGVyO1xuICB9XG5cbiAgLy8gRHJvcGRvd24gbWVudSBpdGVtc1xuICAubmF2YmFyLW5hdiB7XG4gICAgLy8gUmVtb3ZlIGJhY2tncm91bmQgY29sb3IgZnJvbSBvcGVuIGRyb3Bkb3duXG4gICAgPiAub3BlbiA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnO1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheSB3aGVuIGNvbGxhcHNlZFxuICAgICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICA+IGxpID4gYSB7XG4gICAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuYWN0aXZlID4gYSB7XG4gICAgICAgICAgJixcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC8vIExpbmtzIGluIG5hdmJhcnNcbiAgLy9cbiAgLy8gQWRkIGEgY2xhc3MgdG8gZW5zdXJlIGxpbmtzIG91dHNpZGUgdGhlIG5hdmJhciBuYXYgYXJlIGNvbG9yZWQgY29ycmVjdGx5LlxuXG4gIC5uYXZiYXItbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICAgICZbZGlzYWJsZWRdLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBJbnZlcnNlIG5hdmJhclxuXG4ubmF2YmFyLWludmVyc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYmc7XG4gIGJvcmRlci1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJvcmRlcjtcblxuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuYWN0aXZlID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc7XG4gICAgICB9XG4gICAgfVxuICAgID4gLmRpc2FibGVkID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIERhcmtlbiB0aGUgcmVzcG9uc2l2ZSBuYXYgdG9nZ2xlXG4gIC5uYXZiYXItdG9nZ2xlIHtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtdG9nZ2xlLWhvdmVyLWJnO1xuICAgIH1cbiAgICAuaWNvbi1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1pY29uLWJhci1iZztcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLWNvbGxhcHNlLFxuICAubmF2YmFyLWZvcm0ge1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgNyUpO1xuICB9XG5cbiAgLy8gRHJvcGRvd25zXG4gIC5uYXZiYXItbmF2IHtcbiAgICA+IC5vcGVuID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgICAvLyBEcm9wZG93bnMgZ2V0IGN1c3RvbSBkaXNwbGF5XG4gICAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgID4gLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYm9yZGVyO1xuICAgICAgICB9XG4gICAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYm9yZGVyO1xuICAgICAgICB9XG4gICAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICAgICZbZGlzYWJsZWRdLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIExhYmVsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBwYWRkaW5nOiAuMmVtIC42ZW0gLjNlbTtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRsYWJlbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJvcmRlci1yYWRpdXM6IC4yNWVtO1xuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiB0byBhLmxhYmVsXG5cbiAgLy8gRW1wdHkgbGFiZWxzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHkgKG5vdCBhdmFpbGFibGUgaW4gSUU4KVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gUXVpY2sgZml4IGZvciBsYWJlbHMgaW4gYnV0dG9uc1xuICAuYnRuICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gIH1cbn1cblxuLy8gQWRkIGhvdmVyIGVmZmVjdHMsIGJ1dCBvbmx5IGZvciBsaW5rc1xuYS5sYWJlbCB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGFiZWwtbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi8vIENvbG9yc1xuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgbGFiZWxzIGdldCBkYXJrZXIgb24gOmhvdmVyKVxuXG4ubGFiZWwtZGVmYXVsdCB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLWRlZmF1bHQtYmcpO1xufVxuXG4ubGFiZWwtcHJpbWFyeSB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLXByaW1hcnktYmcpO1xufVxuXG4ubGFiZWwtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLXN1Y2Nlc3MtYmcpO1xufVxuXG4ubGFiZWwtaW5mbyB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLWluZm8tYmcpO1xufVxuXG4ubGFiZWwtd2FybmluZyB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLXdhcm5pbmctYmcpO1xufVxuXG4ubGFiZWwtZGFuZ2VyIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtZGFuZ2VyLWJnKTtcbn1cbiIsIi8vXG4vLyBKdW1ib3Ryb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmp1bWJvdHJvbiB7XG4gIHBhZGRpbmctdG9wOiAgICAkanVtYm90cm9uLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkanVtYm90cm9uLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgY29sb3I6ICRqdW1ib3Ryb24tY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRqdW1ib3Ryb24tYmc7XG5cbiAgaDEsXG4gIC5oMSB7XG4gICAgY29sb3I6ICRqdW1ib3Ryb24taGVhZGluZy1jb2xvcjtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206ICgkanVtYm90cm9uLXBhZGRpbmcgLyAyKTtcbiAgICBmb250LXNpemU6ICRqdW1ib3Ryb24tZm9udC1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIH1cblxuICA+IGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGp1bWJvdHJvbi1iZywgMTAlKTtcbiAgfVxuXG4gIC5jb250YWluZXIgJixcbiAgLmNvbnRhaW5lci1mbHVpZCAmIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTsgLy8gT25seSByb3VuZCBjb3JuZXJzIGF0IGhpZ2hlciByZXNvbHV0aW9ucyBpZiBjb250YWluZWQgaW4gYSBjb250YWluZXJcbiAgICBwYWRkaW5nLWxlZnQ6ICAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XG4gICAgcGFkZGluZy1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICB9XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBwYWRkaW5nLXRvcDogICAgKCRqdW1ib3Ryb24tcGFkZGluZyAqIDEuNik7XG4gICAgcGFkZGluZy1ib3R0b206ICgkanVtYm90cm9uLXBhZGRpbmcgKiAxLjYpO1xuXG4gICAgLmNvbnRhaW5lciAmLFxuICAgIC5jb250YWluZXItZmx1aWQgJiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICAoJGp1bWJvdHJvbi1wYWRkaW5nICogMik7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMik7XG4gICAgfVxuXG4gICAgaDEsXG4gICAgLmgxIHtcbiAgICAgIGZvbnQtc2l6ZTogJGp1bWJvdHJvbi1oZWFkaW5nLWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBBbGVydHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBzdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmFsZXJ0IHtcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRhbGVydC1ib3JkZXItcmFkaXVzO1xuXG4gIC8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4gIGg0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIC8vIFNwZWNpZmllZCBmb3IgdGhlIGg0IHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbiAgLmFsZXJ0LWxpbmsge1xuICAgIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbiAgfVxuXG4gIC8vIEltcHJvdmUgYWxpZ25tZW50IGFuZCBzcGFjaW5nIG9mIGlubmVyIGNvbnRlbnRcbiAgPiBwLFxuICA+IHVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgPiBwICsgcCB7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICB9XG59XG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLy9cbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxuXG4uYWxlcnQtZGlzbWlzc2FibGUsIC8vIFRoZSBtaXNzcGVsbGVkIC5hbGVydC1kaXNtaXNzYWJsZSB3YXMgZGVwcmVjYXRlZCBpbiAzLjIuMC5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICgkYWxlcnQtcGFkZGluZyArIDIwKTtcblxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxuICAuY2xvc2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0ycHg7XG4gICAgcmlnaHQ6IC0yMXB4O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIEFsdGVybmF0ZSBzdHlsZXNcbi8vXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxuXG4uYWxlcnQtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LXN1Y2Nlc3MtYmcsICRhbGVydC1zdWNjZXNzLWJvcmRlciwgJGFsZXJ0LXN1Y2Nlc3MtdGV4dCk7XG59XG5cbi5hbGVydC1pbmZvIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtaW5mby1iZywgJGFsZXJ0LWluZm8tYm9yZGVyLCAkYWxlcnQtaW5mby10ZXh0KTtcbn1cblxuLmFsZXJ0LXdhcm5pbmcge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC13YXJuaW5nLWJnLCAkYWxlcnQtd2FybmluZy1ib3JkZXIsICRhbGVydC13YXJuaW5nLXRleHQpO1xufVxuXG4uYWxlcnQtZGFuZ2VyIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtZGFuZ2VyLWJnLCAkYWxlcnQtZGFuZ2VyLWJvcmRlciwgJGFsZXJ0LWRhbmdlci10ZXh0KTtcbn1cbiIsIi5tZWRpYSB7XG4gIC8vIFByb3BlciBzcGFjaW5nIGJldHdlZW4gaW5zdGFuY2VzIG9mIC5tZWRpYVxuICBtYXJnaW4tdG9wOiAxNXB4O1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLm1lZGlhLFxuLm1lZGlhLWJvZHkge1xuICB6b29tOiAxO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubWVkaWEtYm9keSB7XG4gIHdpZHRoOiAxMDAwMHB4O1xufVxuXG4ubWVkaWEtb2JqZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgLy8gRml4IGNvbGxhcHNlIGluIHdlYmtpdCBmcm9tIG1heC13aWR0aDogMTAwJSBhbmQgZGlzcGxheTogdGFibGUtY2VsbC5cbiAgJi5pbWctdGh1bWJuYWlsIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cblxuLm1lZGlhLXJpZ2h0LFxuLm1lZGlhID4gLnB1bGwtcmlnaHQge1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG59XG5cbi5tZWRpYS1sZWZ0LFxuLm1lZGlhID4gLnB1bGwtbGVmdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi5tZWRpYS1sZWZ0LFxuLm1lZGlhLXJpZ2h0LFxuLm1lZGlhLWJvZHkge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4ubWVkaWEtbWlkZGxlIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLm1lZGlhLWJvdHRvbSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gaGVhZGluZ3MgZm9yIHRpZ2h0ZXIgZGVmYXVsdCBzcGFjaW5nXG4ubWVkaWEtaGVhZGluZyB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLy8gTWVkaWEgbGlzdCB2YXJpYXRpb25cbi8vXG4vLyBVbmRvIGRlZmF1bHQgdWwvb2wgc3R5bGVzXG4ubWVkaWEtbGlzdCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vXG4vLyBMaXN0IGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4vL1xuLy8gRWFzaWx5IHVzYWJsZSBvbiA8dWw+LCA8b2w+LCBvciA8ZGl2Pi5cblxuLmxpc3QtZ3JvdXAge1xuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxufVxuXG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgLy8gUGxhY2UgdGhlIGJvcmRlciBvbiB0aGUgbGlzdCBpdGVtcyBhbmQgbmVnYXRpdmUgbWFyZ2luIHVwIGZvciBiZXR0ZXIgc3R5bGluZ1xuICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJGxpc3QtZ3JvdXAtYm9yZGVyO1xuXG4gIC8vIFJvdW5kIHRoZSBmaXJzdCBhbmQgbGFzdCBpdGVtc1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlIGl0ZW1zLlxuLy8gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzaG93aW5nIHNlbGVjdGVkIGl0ZW1zLlxuXG5hLmxpc3QtZ3JvdXAtaXRlbSxcbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBjb2xvcjogJGxpc3QtZ3JvdXAtbGluay1jb2xvcjtcblxuICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtaG92ZXItYmc7XG4gIH1cbn1cblxuYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJi5kaXNhYmxlZCxcbiAgJi5kaXNhYmxlZDpob3ZlcixcbiAgJi5kaXNhYmxlZDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcblxuICAgIC8vIEZvcmNlIGNvbG9yIHRvIGluaGVyaXQgZm9yIGN1c3RvbSBjb250ZW50XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgICAubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICAgICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLXRleHQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gQWN0aXZlIGNsYXNzIG9uIGl0ZW0gaXRzZWxmLCBub3QgcGFyZW50XG4gICYuYWN0aXZlLFxuICAmLmFjdGl2ZTpob3ZlcixcbiAgJi5hY3RpdmU6Zm9jdXMge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyO1xuXG4gICAgLy8gRm9yY2UgY29sb3IgdG8gaW5oZXJpdCBmb3IgY3VzdG9tIGNvbnRlbnRcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nID4gc21hbGwsXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nID4gLnNtYWxsIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgICAubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICAgICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWFudHNcbi8vXG4vLyBBZGQgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxuLy8gT3JnYW5pemF0aW9uYWxseSwgdGhpcyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIGA6aG92ZXJgIHN0YXRlcy5cblxuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoc3VjY2VzcywgJHN0YXRlLXN1Y2Nlc3MtYmcsICRzdGF0ZS1zdWNjZXNzLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoaW5mbywgJHN0YXRlLWluZm8tYmcsICRzdGF0ZS1pbmZvLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQod2FybmluZywgJHN0YXRlLXdhcm5pbmctYmcsICRzdGF0ZS13YXJuaW5nLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoZGFuZ2VyLCAkc3RhdGUtZGFuZ2VyLWJnLCAkc3RhdGUtZGFuZ2VyLXRleHQpO1xuXG5cbi8vIEN1c3RvbSBjb250ZW50IG9wdGlvbnNcbi8vXG4vLyBFeHRyYSBjbGFzc2VzIGZvciBjcmVhdGluZyB3ZWxsLWZvcm1hdHRlZCBjb250ZW50IHdpdGhpbiBgLmxpc3QtZ3JvdXAtaXRlbWBzLlxuXG4ubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG4ubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xufVxuIiwiLy9cbi8vIFBhbmVsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4ucGFuZWwge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRwYW5lbC1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNSkpO1xufVxuXG4vLyBQYW5lbCBjb250ZW50c1xuLnBhbmVsLWJvZHkge1xuICBwYWRkaW5nOiAkcGFuZWwtYm9keS1wYWRkaW5nO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gT3B0aW9uYWwgaGVhZGluZ1xuLnBhbmVsLWhlYWRpbmcge1xuICBwYWRkaW5nOiAkcGFuZWwtaGVhZGluZy1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcblxuICA+IC5kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBXaXRoaW4gaGVhZGluZywgc3RyaXAgYW55IGBoKmAgdGFnIG9mIGl0cyBkZWZhdWx0IG1hcmdpbnMgZm9yIHNwYWNpbmcuXG4ucGFuZWwtdGl0bGUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMTI1KSk7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gID4gYSxcbiAgPiBzbWFsbCxcbiAgPiAuc21hbGwsXG4gID4gc21hbGwgPiBhLFxuICA+IC5zbWFsbCA+IGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIE9wdGlvbmFsIGZvb3RlciAoc3RheXMgZ3JheSBpbiBldmVyeSBtb2RpZmllciBjbGFzcylcbi5wYW5lbC1mb290ZXIge1xuICBwYWRkaW5nOiAkcGFuZWwtZm9vdGVyLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1mb290ZXItYmc7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkcGFuZWwtaW5uZXItYm9yZGVyO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG59XG5cblxuLy8gTGlzdCBncm91cHMgaW4gcGFuZWxzXG4vL1xuLy8gQnkgZGVmYXVsdCwgc3BhY2Ugb3V0IGxpc3QgZ3JvdXAgY29udGVudCBmcm9tIHBhbmVsIGhlYWRpbmdzIHRvIGFjY291bnQgZm9yXG4vLyBhbnkga2luZCBvZiBjdXN0b20gY29udGVudCBiZXR3ZWVuIHRoZSB0d28uXG5cbi5wYW5lbCB7XG4gID4gLmxpc3QtZ3JvdXAsXG4gID4gLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFkZCBib3JkZXIgYm90dG9tIHJhZGl1cyBmb3IgbGFzdCBvbmVcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IC5wYW5lbC1oZWFkaW5nICsgLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG59XG4vLyBDb2xsYXBzZSBzcGFjZSBiZXR3ZWVuIHdoZW4gdGhlcmUncyBubyBhZGRpdGlvbmFsIGNvbnRlbnQuXG4ucGFuZWwtaGVhZGluZyArIC5saXN0LWdyb3VwIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxufVxuLmxpc3QtZ3JvdXAgKyAucGFuZWwtZm9vdGVyIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbn1cblxuLy8gVGFibGVzIGluIHBhbmVsc1xuLy9cbi8vIFBsYWNlIGEgbm9uLWJvcmRlcmVkIGAudGFibGVgIHdpdGhpbiBhIHBhbmVsIChub3Qgd2l0aGluIGEgYC5wYW5lbC1ib2R5YCkgYW5kXG4vLyB3YXRjaCBpdCBnbyBmdWxsIHdpZHRoLlxuXG4ucGFuZWwge1xuICA+IC50YWJsZSxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSxcbiAgPiAucGFuZWwtY29sbGFwc2UgPiAudGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBjYXB0aW9uIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJHBhbmVsLWJvZHktcGFkZGluZztcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYW5lbC1ib2R5LXBhZGRpbmc7XG4gICAgfVxuICB9XG4gIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXG4gID4gLnRhYmxlOmZpcnN0LWNoaWxkLFxuICA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG5cbiAgICA+IHRoZWFkOmZpcnN0LWNoaWxkLFxuICAgID4gdGJvZHk6Zmlyc3QtY2hpbGQge1xuICAgICAgPiB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG5cbiAgICAgICAgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgICAgIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgfVxuICAgICAgICB0ZDpsYXN0LWNoaWxkLFxuICAgICAgICB0aDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gQWRkIGJvcmRlciBib3R0b20gcmFkaXVzIGZvciBsYXN0IG9uZVxuICA+IC50YWJsZTpsYXN0LWNoaWxkLFxuICA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuXG4gICAgPiB0Ym9keTpsYXN0LWNoaWxkLFxuICAgID4gdGZvb3Q6bGFzdC1jaGlsZCB7XG4gICAgICA+IHRyOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuXG4gICAgICAgIHRkOmZpcnN0LWNoaWxkLFxuICAgICAgICB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgICAgdGQ6bGFzdC1jaGlsZCxcbiAgICAgICAgdGg6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gLnBhbmVsLWJvZHkgKyAudGFibGUsXG4gID4gLnBhbmVsLWJvZHkgKyAudGFibGUtcmVzcG9uc2l2ZSxcbiAgPiAudGFibGUgKyAucGFuZWwtYm9keSxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSArIC5wYW5lbC1ib2R5IHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuICA+IC50YWJsZSA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGgsXG4gID4gLnRhYmxlID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxuICA+IC50YWJsZS1ib3JkZXJlZCxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICAgID4gdGhlYWQsXG4gICAgPiB0Ym9keSxcbiAgICA+IHRmb290IHtcbiAgICAgID4gdHIge1xuICAgICAgICA+IHRoOmZpcnN0LWNoaWxkLFxuICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgICA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgID4gdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gdGhlYWQsXG4gICAgPiB0Ym9keSB7XG4gICAgICA+IHRyOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICA+IHRib2R5LFxuICAgID4gdGZvb3Qge1xuICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5cbi8vIENvbGxhcHNhYmxlIHBhbmVscyAoYWthLCBhY2NvcmRpb24pXG4vL1xuLy8gV3JhcCBhIHNlcmllcyBvZiBwYW5lbHMgaW4gYC5wYW5lbC1ncm91cGAgdG8gdHVybiB0aGVtIGludG8gYW4gYWNjb3JkaW9uIHdpdGhcbi8vIHRoZSBoZWxwIG9mIG91ciBjb2xsYXBzZSBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLnBhbmVsLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuXG4gIC8vIFRpZ2h0ZW4gdXAgbWFyZ2luIHNvIGl0J3Mgb25seSBiZXR3ZWVuIHBhbmVsc1xuICAucGFuZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJHBhbmVsLWJvcmRlci1yYWRpdXM7XG5cbiAgICArIC5wYW5lbCB7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgfVxuICB9XG5cbiAgLnBhbmVsLWhlYWRpbmcge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG5cbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5LFxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRwYW5lbC1pbm5lci1ib3JkZXI7XG4gICAgfVxuICB9XG5cbiAgLnBhbmVsLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICArIC5wYW5lbC1jb2xsYXBzZSAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHBhbmVsLWlubmVyLWJvcmRlcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnNcbi5wYW5lbC1kZWZhdWx0IHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtZGVmYXVsdC1ib3JkZXIsICRwYW5lbC1kZWZhdWx0LXRleHQsICRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmcsICRwYW5lbC1kZWZhdWx0LWJvcmRlcik7XG59XG4ucGFuZWwtcHJpbWFyeSB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXByaW1hcnktYm9yZGVyLCAkcGFuZWwtcHJpbWFyeS10ZXh0LCAkcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnLCAkcGFuZWwtcHJpbWFyeS1ib3JkZXIpO1xufVxuLnBhbmVsLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1zdWNjZXNzLWJvcmRlciwgJHBhbmVsLXN1Y2Nlc3MtdGV4dCwgJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZywgJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyKTtcbn1cbi5wYW5lbC1pbmZvIHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtaW5mby1ib3JkZXIsICRwYW5lbC1pbmZvLXRleHQsICRwYW5lbC1pbmZvLWhlYWRpbmctYmcsICRwYW5lbC1pbmZvLWJvcmRlcik7XG59XG4ucGFuZWwtd2FybmluZyB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXdhcm5pbmctYm9yZGVyLCAkcGFuZWwtd2FybmluZy10ZXh0LCAkcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnLCAkcGFuZWwtd2FybmluZy1ib3JkZXIpO1xufVxuLnBhbmVsLWRhbmdlciB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLWRhbmdlci1ib3JkZXIsICRwYW5lbC1kYW5nZXItdGV4dCwgJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnLCAkcGFuZWwtZGFuZ2VyLWJvcmRlcik7XG59XG4iLCIvLyBFbWJlZHMgcmVzcG9uc2l2ZVxuLy9cbi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3QsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLy8gTW9kaWZpZXIgY2xhc3MgZm9yIDE2OjkgYXNwZWN0IHJhdGlvXG4uZW1iZWQtcmVzcG9uc2l2ZS0xNmJ5OSB7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi8vIE1vZGlmaWVyIGNsYXNzIGZvciA0OjMgYXNwZWN0IHJhdGlvXG4uZW1iZWQtcmVzcG9uc2l2ZS00YnkzIHtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbn1cbiIsIi8vXG4vLyBXZWxsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4ud2VsbCB7XG4gIG1pbi1oZWlnaHQ6IDIwcHg7XG4gIHBhZGRpbmc6IDE5cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3ZWxsLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkd2VsbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA1KSk7XG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlci1jb2xvcjogI2RkZDtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsLjE1KTtcbiAgfVxufVxuXG4vLyBTaXplc1xuLndlbGwtbGcge1xuICBwYWRkaW5nOiAyNHB4O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbn1cbi53ZWxsLXNtIHtcbiAgcGFkZGluZzogOXB4O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcbn1cbiIsIi8vXG4vLyBDbG9zZSBpY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIGZvbnQtd2VpZ2h0OiAkY2xvc2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICB0ZXh0LXNoYWRvdzogJGNsb3NlLXRleHQtc2hhZG93O1xuICBAaW5jbHVkZSBvcGFjaXR5KC4yKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgQGluY2x1ZGUgb3BhY2l0eSguNSk7XG4gIH1cblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYnV0dG9uJiB0byBidXR0b24uY2xvc2Vcbn1cblxuLy8gQWRkaXRpb25hbCBwcm9wZXJ0aWVzIGZvciBidXR0b24gdmVyc2lvblxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG4iLCIvL1xuLy8gVXRpbGl0eSBjbGFzc2VzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEZsb2F0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uY2xlYXJmaXgge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cbi5jZW50ZXItYmxvY2sge1xuICBAaW5jbHVkZSBjZW50ZXItYmxvY2s7XG59XG4ucHVsbC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuLnB1bGwtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gVG9nZ2xpbmcgY29udGVudFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBOb3RlOiBEZXByZWNhdGVkIC5oaWRlIGluIGZhdm9yIG9mIC5oaWRkZW4gb3IgLnNyLW9ubHkgKGFzIGFwcHJvcHJpYXRlKSBpbiB2My4wLjFcbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLnNob3cge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi50ZXh0LWhpZGUge1xuICBAaW5jbHVkZSB0ZXh0LWhpZGU7XG59XG5cblxuLy8gSGlkZSBmcm9tIHNjcmVlbnJlYWRlcnMgYW5kIGJyb3dzZXJzXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5cbi8vIEZvciBBZmZpeCBwbHVnaW5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmFmZml4IHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuIiwiLy9cbi8vIFJlc3BvbnNpdmU6IFV0aWxpdHkgY2xhc3Nlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBJRTEwIGluIFdpbmRvd3MgKFBob25lKSA4XG4vL1xuLy8gU3VwcG9ydCBmb3IgcmVzcG9uc2l2ZSB2aWV3cyB2aWEgbWVkaWEgcXVlcmllcyBpcyBraW5kIG9mIGJvcmtlZCBpbiBJRTEwLCBmb3Jcbi8vIFN1cmZhY2UvZGVza3RvcCBpbiBzcGxpdCB2aWV3IGFuZCBmb3IgV2luZG93cyBQaG9uZSA4LiBUaGlzIHBhcnRpY3VsYXIgZml4XG4vLyBtdXN0IGJlIGFjY29tcGFuaWVkIGJ5IGEgc25pcHBldCBvZiBKYXZhU2NyaXB0IHRvIHNuaWZmIHRoZSB1c2VyIGFnZW50IGFuZFxuLy8gYXBwbHkgc29tZSBjb25kaXRpb25hbCBDU1MgdG8gKm9ubHkqIHRoZSBTdXJmYWNlL2Rlc2t0b3AgV2luZG93cyA4LiBMb29rIGF0XG4vLyBvdXIgR2V0dGluZyBTdGFydGVkIHBhZ2UgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhpcyBidWcuXG4vL1xuLy8gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgZm9sbG93aW5nOlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwNDk3XG4vLyBEb2NzOiBodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbS9nZXR0aW5nLXN0YXJ0ZWQvI3N1cHBvcnQtaWUxMC13aWR0aFxuLy8gU291cmNlOiBodHRwOi8vdGlta2FkbGVjLmNvbS8yMDEzLzAxL3dpbmRvd3MtcGhvbmUtOC1hbmQtZGV2aWNlLXdpZHRoL1xuLy8gU291cmNlOiBodHRwOi8vdGlta2FkbGVjLmNvbS8yMDEyLzEwL2llMTAtc25hcC1tb2RlLWFuZC1yZXNwb25zaXZlLWRlc2lnbi9cblxuQGF0LXJvb3Qge1xuICBALW1zLXZpZXdwb3J0IHtcbiAgICB3aWR0aDogZGV2aWNlLXdpZHRoO1xuICB9XG59XG5cblxuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vIE5vdGU6IERlcHJlY2F0ZWQgLnZpc2libGUteHMsIC52aXNpYmxlLXNtLCAudmlzaWJsZS1tZCwgYW5kIC52aXNpYmxlLWxnIGFzIG9mIHYzLjIuMFxuXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUteHMnKTtcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1zbScpO1xuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLW1kJyk7XG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcblxuLnZpc2libGUteHMtYmxvY2ssXG4udmlzaWJsZS14cy1pbmxpbmUsXG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1zbS1ibG9jayxcbi52aXNpYmxlLXNtLWlubGluZSxcbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayxcbi52aXNpYmxlLW1kLWJsb2NrLFxuLnZpc2libGUtbWQtaW5saW5lLFxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtbGctYmxvY2ssXG4udmlzaWJsZS1sZy1pbmxpbmUsXG4udmlzaWJsZS1sZy1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXhzJyk7XG59XG4udmlzaWJsZS14cy1ibG9jayB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXhzLWlubGluZSB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2sge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXNtJyk7XG59XG4udmlzaWJsZS1zbS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtc20taW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtc20taW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLW1kJyk7XG59XG4udmlzaWJsZS1tZC1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbWQtaW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1sZycpO1xufVxuLnZpc2libGUtbGctYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1sZy1pbmxpbmUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXhzJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXNtJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLW1kJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1sZycpO1xufVxuXG5cbi8vIFByaW50IHV0aWxpdGllc1xuLy9cbi8vIE1lZGlhIHF1ZXJpZXMgYXJlIHBsYWNlZCBvbiB0aGUgaW5zaWRlIHRvIGJlIG1peGluLWZyaWVuZGx5LlxuXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXByaW50IGFzIG9mIHYzLjIuMFxuXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtcHJpbnQnKTtcblxuQG1lZGlhIHByaW50IHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1wcmludCcpO1xufVxuLnZpc2libGUtcHJpbnQtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1wcmludC1pbmxpbmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQtaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50IHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tcHJpbnQnKTtcbn1cbiIsIi5hdXRvY29tcGxldGUtc3VnZ2VzdGlvbnMgeyBib3JkZXI6IDFweCBzb2xpZCAjOTk5OyBiYWNrZ3JvdW5kOiAjRkZGOyBvdmVyZmxvdzogYXV0bzsgfVxuLmF1dG9jb21wbGV0ZS1zdWdnZXN0aW9uIHsgcGFkZGluZzogMnB4IDVweDsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuLmF1dG9jb21wbGV0ZS1zZWxlY3RlZCB7IGJhY2tncm91bmQ6ICNGMEYwRjA7IH1cbi5hdXRvY29tcGxldGUtc3VnZ2VzdGlvbnMgc3Ryb25nIHsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgY29sb3I6ICMzMzk5RkY7IH1cbi5hdXRvY29tcGxldGUtZ3JvdXAgeyBwYWRkaW5nOiAycHggNXB4OyB9XG4uYXV0b2NvbXBsZXRlLWdyb3VwIHN0cm9uZyB7IGRpc3BsYXk6IGJsb2NrOyBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMDsgfVxuIiwiLmRhdGUtcGlja2VyXG57XG4gIHdpZHRoOjE3MHB4O1xuICBoZWlnaHQ6MjVweDtcbiAgcGFkZGluZzowO1xuICBib3JkZXI6MDtcbiAgbGluZS1oZWlnaHQ6MjVweDtcbiAgcGFkZGluZy1sZWZ0OjEwcHg7XG4gIGZvbnQtc2l6ZToxMnB4O1xuICAvLyBmb250LWZhbWlseTpBcmlhbCxzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDpib2xkO1xuICBjdXJzb3I6cG9pbnRlcjtcbiAgLy8gY29sb3I6IzMwMzAzMDtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIHotaW5kZXg6Mjtcbn1cbi5kYXRlLXBpY2tlci13cmFwcGVyXG57XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICB6LWluZGV4OjE7XG4gIC8vIGJvcmRlcjogMCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8vIHBhZGRpbmc6IDVweCAxMnB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OjIwcHg7XG4gIC8vIGNvbG9yOiNhYWE7XG4gIGZvbnQtZmFtaWx5OkFyaWFsLHNhbnMtc2VyaWY7XG4gIC8vIGJveC1zaGFkb3c6M3B4IDNweCAxMHB4IHJnYmEoMCwwLDAsMC41KTtcbiAgYm94LXNpemluZzogaW5pdGlhbDtcbn1cbi5kYXRlLXBpY2tlci13cmFwcGVyLmlubGluZS13cmFwcGVyIHsgcG9zaXRpb246IHJlbGF0aXZlOyBib3gtc2hhZG93OiBub25lOyBkaXNwbGF5OmlubGluZS1ibG9jazt9XG4uZGF0ZS1waWNrZXItd3JhcHBlci5zaW5nbGUtZGF0ZSB7XG4gIHdpZHRoOmF1dG87XG59XG4uZGF0ZS1waWNrZXItd3JhcHBlci5uby1zaG9ydGN1dHMgeyBwYWRkaW5nLWJvdHRvbToxMnB4O31cbi5kYXRlLXBpY2tlci13cmFwcGVyLm5vLXRvcGJhciB7IHBhZGRpbmctdG9wOjEycHg7fVxuLmRhdGUtcGlja2VyLXdyYXBwZXIgLmZvb3Rlclxue1xuICBmb250LXNpemU6MTFweDtcbiAgcGFkZGluZy10b3A6IDNweDtcbn1cbi5kYXRlLXBpY2tlci13cmFwcGVyIGJcbntcbiAgY29sb3I6IzY2NjtcbiAgZm9udC13ZWlnaHQ6NzAwO1xufVxuLmRhdGUtcGlja2VyLXdyYXBwZXIgYVxue1xuICBjb2xvcjogcmdiKDEwNywgMTgwLCAyMTQpO1xuICB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xufVxuLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLW5hbWVcbntcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5tb250aC13cmFwcGVyXG57XG4gIGJvcmRlcjoxcHggc29saWQgI2JmYmZiZjtcbiAgYm9yZGVyLXJhZGl1czozcHg7XG4gIGJhY2tncm91bmQtY29sb3I6I2ZmZjtcbiAgLy8gcGFkZGluZzo1cHg7XG4gIGN1cnNvcjpkZWZhdWx0O1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgX292ZXJmbG93OmhpZGRlbjtcbn1cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5tb250aC13cmFwcGVyIHRhYmxlXG57XG4gIHdpZHRoOjE5MHB4O1xuICBmbG9hdDpsZWZ0O1xufVxuLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUubW9udGgyXG57XG4gIHdpZHRoOjE5MHB4O1xuICBmbG9hdDogbGVmdDtcbn1cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5tb250aC13cmFwcGVyIHRhYmxlIHRoLFxuLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUgdGRcbntcbiAgdmVydGljYWwtYWxpZ246bWlkZGxlO1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6MTRweDtcbiAgbWFyZ2luIDogMHB4O1xuICBwYWRkaW5nIDogMHB4O1xufVxuLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUgLmRheVxue1xuICBwYWRkaW5nOjVweCAwO1xuICBsaW5lLWhlaWdodDoxO1xuICAvLyBmb250LXNpemU6MTJweDtcbiAgZm9udC1zaXplOjEwcHg7XG4gIC8vIG1hcmdpbi1ib3R0b206MXB4O1xuICBjb2xvcjogI2NjYztcbiAgY3Vyc29yOmRlZmF1bHQ7XG59XG4uZGF0ZS1waWNrZXItd3JhcHBlciAubW9udGgtd3JhcHBlciB0YWJsZSAuZGF5OmhvdmVyXG57XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XG4gIGNvbG9yOiAjMDA0MDViO1xufVxuLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUgZGl2LmRheS5sYXN0TW9udGgsXG4uZGF0ZS1waWNrZXItd3JhcHBlciAubW9udGgtd3JhcHBlciB0YWJsZSBkaXYuZGF5Lm5leHRNb250aFxue1xuICBjb2xvcjojOTk5O1xuICBjdXJzb3I6ZGVmYXVsdDtcbn1cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5tb250aC13cmFwcGVyIHRhYmxlIC5kYXkuY2hlY2tlZFxue1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTU2LCAyMTksIDI0Nyk7XG59XG4uZGF0ZS1waWNrZXItd3JhcHBlciAubW9udGgtd3JhcHBlciB0YWJsZSAud2Vlay1uYW1lXG57XG4gIGhlaWdodDoyMHB4O1xuICBsaW5lLWhlaWdodDoyMHB4O1xuICBmb250LXdlaWdodDoxMDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5tb250aC13cmFwcGVyIHRhYmxlIC5kYXkuaGFzLXRvb2x0aXAgeyBjdXJzb3I6aGVscCAhaW1wb3J0YW50O31cbi5kYXRlLXBpY2tlci13cmFwcGVyIC50aW1lIGxhYmVsIHsgd2hpdGUtc3BhY2U6bm93cmFwOyB9XG4uZGF0ZS1waWNrZXItd3JhcHBlciAubW9udGgtd3JhcHBlciB0YWJsZSAuZGF5LnRvTW9udGgudmFsaWRcbntcbiAgY29sb3I6IzMzMztcbiAgY3Vyc29yOnBvaW50ZXI7XG59XG5cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5tb250aC13cmFwcGVyIHRhYmxlIC5kYXkudG9Nb250aC5ob3ZlcmluZ1xue1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2RlY2ZhO1xufVxuXG4uZGF0ZS1waWNrZXItd3JhcHBlciAubW9udGgtd3JhcHBlciB0YWJsZSAuZGF5Lm5leHRNb250aCxcbi5kYXRlLXBpY2tlci13cmFwcGVyIC5tb250aC13cmFwcGVyIHRhYmxlIC5kYXkubGFzdE1vbnRoIHsgZGlzcGxheTpub25lOyB9XG5cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5tb250aC13cmFwcGVyIHRhYmxlIC5kYXkucmVhbC10b2RheSB7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDIzMCwgMTMyKTsgfVxuLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUgLmRheS5yZWFsLXRvZGF5LmNoZWNrZWQsXG4uZGF0ZS1waWNrZXItd3JhcHBlciAubW9udGgtd3JhcHBlciB0YWJsZSAuZGF5LnJlYWwtdG9kYXkuaG92ZXJpbmcgeyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTEyLCAyMDQsIDIxMyk7IH1cblxuXG4uZGF0ZS1waWNrZXItd3JhcHBlciB0YWJsZSAuY2FwdGlvblxue1xuICBoZWlnaHQ6NDBweDtcbn1cbi5kYXRlLXBpY2tlci13cmFwcGVyIHRhYmxlIC5jYXB0aW9uIC5uZXh0LFxuLmRhdGUtcGlja2VyLXdyYXBwZXIgdGFibGUgLmNhcHRpb24gLnByZXZcbntcbiAgcGFkZGluZzowIDVweDtcbiAgY3Vyc29yOnBvaW50ZXI7XG59XG4uZGF0ZS1waWNrZXItd3JhcHBlciB0YWJsZSAuY2FwdGlvbiAubmV4dDpob3Zlcixcbi5kYXRlLXBpY2tlci13cmFwcGVyIHRhYmxlIC5jYXB0aW9uIC5wcmV2OmhvdmVyXG57XG4gIGJhY2tncm91bmQtY29sb3I6I2NjYztcbiAgY29sb3I6d2hpdGU7XG59XG4uZGF0ZS1waWNrZXItd3JhcHBlciAuZ2FwXG57XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6MTVweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOnJlZDtcbiAgZm9udC1zaXplOjA7XG4gIGxpbmUtaGVpZ2h0OjA7XG4gIGZsb2F0OiBsZWZ0O1xuICB0b3A6IC01cHg7XG4gIG1hcmdpbjogMCAxMHB4IC0xMHB4O1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGhlaWdodDogMDtcbn1cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5nYXAgLmdhcC1saW5lcyB7IGhlaWdodDogMTAwJTsgb3ZlcmZsb3c6aGlkZGVuOyB9XG4uZGF0ZS1waWNrZXItd3JhcHBlciAuZ2FwIC5nYXAtbGluZSB7IGhlaWdodDoxNXB4O3dpZHRoOjE1cHg7IHBvc2l0aW9uOnJlbGF0aXZlOyAgfVxuLmRhdGUtcGlja2VyLXdyYXBwZXIgLmdhcCAuZ2FwLWxpbmUgLmdhcC0xIHsgei1pbmRleDoxOyBoZWlnaHQ6MDsgYm9yZGVyLWxlZnQ6OHB4IHNvbGlkIHdoaXRlOyBib3JkZXItdG9wOjhweCBzb2xpZCAjZWVlO2JvcmRlci1ib3R0b206OHB4IHNvbGlkICNlZWU7IH1cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5nYXAgLmdhcC1saW5lIC5nYXAtMiB7IHBvc2l0aW9uOmFic29sdXRlOyByaWdodDowOyB0b3A6MHB4OyB6LWluZGV4OjI7IGhlaWdodDowOyBib3JkZXItbGVmdDo4cHggc29saWQgdHJhbnNwYXJlbnQ7IGJvcmRlci10b3A6OHB4IHNvbGlkIHdoaXRlOyB9XG4uZGF0ZS1waWNrZXItd3JhcHBlciAuZ2FwIC5nYXAtbGluZSAuZ2FwLTMgeyBwb3NpdGlvbjphYnNvbHV0ZTsgcmlnaHQ6MDsgdG9wOjhweDsgei1pbmRleDoyOyBoZWlnaHQ6MDsgYm9yZGVyLWxlZnQ6OHB4IHNvbGlkIHRyYW5zcGFyZW50OyBib3JkZXItYm90dG9tOjhweCBzb2xpZCB3aGl0ZTsgfVxuLmRhdGUtcGlja2VyLXdyYXBwZXIgLmdhcCAuZ2FwLXRvcC1tYXNrIHsgd2lkdGg6IDZweDsgaGVpZ2h0OjFweDsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDogLTFweDsgbGVmdDogMXB4OyBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlOyB6LWluZGV4OjM7IH1cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5nYXAgLmdhcC1ib3R0b20tbWFzayB7IHdpZHRoOiA2cHg7IGhlaWdodDoxcHg7IHBvc2l0aW9uOmFic29sdXRlOyBib3R0b206IC0xcHg7IGxlZnQ6IDdweDsgYmFja2dyb3VuZC1jb2xvcjogI2VlZTsgei1pbmRleDozOyB9XG5cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5zZWxlY3RlZC1kYXlzXG57XG4gIGRpc3BsYXk6bm9uZTtcbn1cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5kcnBfdG9wLWJhclxue1xuICBsaW5lLWhlaWdodDogMS40O1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgLy8gcGFkZGluZzogMTBweCA0MHB4IDEwcHggMDtcbiAgcGFkZGluZzogMCAwIDEwcHggMDtcbn1cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5kcnBfdG9wLWJhciAuZXJyb3ItdG9wIHsgZGlzcGxheTpub25lOyB9XG4uZGF0ZS1waWNrZXItd3JhcHBlciAuZHJwX3RvcC1iYXIgLm5vcm1hbC10b3AgeyBkaXNwbGF5Om5vbmU7IH1cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5kcnBfdG9wLWJhciAuZGVmYXVsdC10b3AgeyBkaXNwbGF5OmJsb2NrOyB9XG5cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5kcnBfdG9wLWJhci5lcnJvciAuZGVmYXVsdC10b3AgeyBkaXNwbGF5Om5vbmU7IH1cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5kcnBfdG9wLWJhci5lcnJvciAuZXJyb3ItdG9wIHsgZGlzcGxheTpibG9jazsgY29sb3I6cmVkOyB9XG5cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5kcnBfdG9wLWJhci5ub3JtYWwgLmRlZmF1bHQtdG9wIHsgZGlzcGxheTpub25lOyB9XG4uZGF0ZS1waWNrZXItd3JhcHBlciAuZHJwX3RvcC1iYXIubm9ybWFsIC5ub3JtYWwtdG9wIHsgZGlzcGxheTpibG9jazsgfVxuXG4uZGF0ZS1waWNrZXItd3JhcHBlciAuZHJwX3RvcC1iYXIgLmFwcGx5LWJ0blxue1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgcmlnaHQ6IDBweDtcbiAgdG9wOiA2cHg7XG4gIHBhZGRpbmc6M3B4IDVweDtcbiAgbWFyZ2luOjA7XG4gIGZvbnQtc2l6ZToxMnB4O1xuICBib3JkZXItcmFkaXVzOjRweDtcbiAgY3Vyc29yOnBvaW50ZXI7XG5cbiAgY29sb3I6ICNkOWVlZjc7XG4gIGJvcmRlcjogc29saWQgMXB4ICMwMDc2YTM7XG4gIGJhY2tncm91bmQ6ICMwMDk1Y2Q7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20oIzAwYWRlZSksIHRvKCMwMDc4YTUpKTtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAgIzAwYWRlZSwgICMwMDc4YTUpO1xuICBmaWx0ZXI6ICBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzAwYWRlZScsIGVuZENvbG9yc3RyPScjMDA3OGE1Jyk7XG4gIGNvbG9yOndoaXRlO1xuICBsaW5lLWhlaWdodDogaW5pdGlhbDtcbn1cblxuLmRhdGUtcGlja2VyLXdyYXBwZXIgLmRycF90b3AtYmFyIC5hcHBseS1idG4uZGlzYWJsZWRcbntcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogIzYwNjA2MDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2I3YjdiNztcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbSgjZmZmKSwgdG8oI2VkZWRlZCkpO1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICAjZmZmLCAgI2VkZWRlZCk7XG4gIGZpbHRlcjogIHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjZmZmZmZmJywgZW5kQ29sb3JzdHI9JyNlZGVkZWQnKTtcbn1cbi8qdGltZSBzdHlsaW5nKi9cbi5kYXRlLXBpY2tlci13cmFwcGVyIC50aW1lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmRhdGUtcGlja2VyLXdyYXBwZXIuc2luZ2xlLW1vbnRoIC50aW1lIHsgZGlzcGxheTpibG9jazsgfVxuXG4uZGF0ZS1waWNrZXItd3JhcHBlciAudGltZSBpbnB1dFt0eXBlPXJhbmdlXSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOjEyOXB4O1xuICBwYWRkaW5nOjA7XG4gIG1hcmdpbjowO1xuICBoZWlnaHQ6MjBweDtcbn1cbi5kYXRlLXBpY2tlci13cmFwcGVyIC50aW1lMSwgLnRpbWUyIHtcbiAgd2lkdGg6IDE4MHB4O1xuICBwYWRkaW5nOiAwIDVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmRhdGUtcGlja2VyLXdyYXBwZXIgLnRpbWUxIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uZGF0ZS1waWNrZXItd3JhcHBlciAudGltZTIge1xuICBmbG9hdDogcmlnaHQ7XG59XG4uZGF0ZS1waWNrZXItd3JhcHBlciAuaG91ciwgLm1pbnV0ZSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLmRhdGUtcGlja2VyLXdyYXBwZXIgLmhpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZGF0ZS1waWNrZXItd3JhcHBlciAuZmlyc3QtZGF0ZS1zZWxlY3RlZCB7IGJhY2tncm91bmQtY29sb3I6IzQ5ZSAhaW1wb3J0YW50OyBjb2xvcjp3aGl0ZSAhaW1wb3J0YW50OyAgfVxuLmRhdGUtcGlja2VyLXdyYXBwZXIgLmxhc3QtZGF0ZS1zZWxlY3RlZCB7IGJhY2tncm91bmQtY29sb3I6IzQ5ZSAhaW1wb3J0YW50OyBjb2xvcjp3aGl0ZSAhaW1wb3J0YW50OyAgfVxuLmRhdGUtcGlja2VyLXdyYXBwZXIgLmRhdGUtcmFuZ2UtbGVuZ3RoLXRpcCB7IHBvc2l0aW9uOmFic29sdXRlOyBtYXJnaW4tdG9wOi00cHg7IG1hcmdpbi1sZWZ0Oi04cHg7IGJveC1zaGFkb3c6MCAwIDNweCByZ2JhKDAsMCwwLC4zKTsgZGlzcGxheTpub25lO2JhY2tncm91bmQtY29sb3I6eWVsbG93OyBwYWRkaW5nOjAgNnB4OyBib3JkZXItcmFkaXVzOjJweDsgZm9udC1zaXplOjEycHg7IGxpbmUtaGVpZ2h0OjE2cHg7XG4td2Via2l0LWZpbHRlcjogZHJvcC1zaGFkb3coMCAwIDNweCByZ2JhKDAsMCwwLC4zKSk7XG4gICAgLW1vei1maWx0ZXI6IGRyb3Atc2hhZG93KDAgMCAzcHggcmdiYSgwLDAsMCwuMykpO1xuICAgIC1tcy1maWx0ZXI6IGRyb3Atc2hhZG93KDAgMCAzcHggcmdiYSgwLDAsMCwuMykpO1xuICAgIC1vLWZpbHRlcjogZHJvcC1zaGFkb3coMCAwIDNweCByZ2JhKDAsMCwwLC4zKSk7XG4gICAgZmlsdGVyOiBkcm9wLXNoYWRvdygwIDAgM3B4IHJnYmEoMCwwLDAsLjMpKTsgIH1cbi5kYXRlLXBpY2tlci13cmFwcGVyIC5kYXRlLXJhbmdlLWxlbmd0aC10aXA6YWZ0ZXIgeyBjb250ZW50OicnOyBwb3NpdGlvbjphYnNvbHV0ZTsgYm9yZGVyLWxlZnQ6NHB4IHNvbGlkIHRyYW5zcGFyZW50OyBib3JkZXItcmlnaHQ6NHB4IHNvbGlkIHRyYW5zcGFyZW50OyBib3JkZXItdG9wOjRweCBzb2xpZCB5ZWxsb3c7IGxlZnQ6NTAlOyBtYXJnaW4tbGVmdDotNHB4OyBib3R0b206LTRweDsgfVxuXG5cbi5kYXRlLXBpY2tlci13cmFwcGVyLnR3by1tb250aHMubm8tZ2FwIC5tb250aDEgLm5leHQsXG4uZGF0ZS1waWNrZXItd3JhcHBlci50d28tbW9udGhzLm5vLWdhcCAubW9udGgyIC5wcmV2IHsgZGlzcGxheTpub25lOyB9XG4uZGF0ZS1waWNrZXItd3JhcHBlciAud2Vlay1udW1iZXJcbntcbiAgcGFkZGluZzo1cHggMDtcbiAgbGluZS1oZWlnaHQ6MTtcbiAgZm9udC1zaXplOjEycHg7XG4gIG1hcmdpbi1ib3R0b206MXB4O1xuICBjb2xvcjojOTk5O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uZGF0ZS1waWNrZXItd3JhcHBlciAud2Vlay1udW1iZXIud2Vlay1udW1iZXItc2VsZWN0ZWQgeyBjb2xvcjogIzQ0OTlFRTsgZm9udC13ZWlnaHQ6Ym9sZDsgIH1cbiIsIi8qIVxuQ2hvc2VuLCBhIFNlbGVjdCBCb3ggRW5oYW5jZXIgZm9yIGpRdWVyeSBhbmQgUHJvdG90eXBlXG5ieSBQYXRyaWNrIEZpbGxlciBmb3IgSGFydmVzdCwgaHR0cDovL2dldGhhcnZlc3QuY29tXG5cblZlcnNpb24gMS42LjFcbkZ1bGwgc291cmNlIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS9oYXJ2ZXN0aHEvY2hvc2VuXG5Db3B5cmlnaHQgKGMpIDIwMTEtMjAxNiBIYXJ2ZXN0IGh0dHA6Ly9nZXRoYXJ2ZXN0LmNvbVxuXG5NSVQgTGljZW5zZSwgaHR0cHM6Ly9naXRodWIuY29tL2hhcnZlc3RocS9jaG9zZW4vYmxvYi9tYXN0ZXIvTElDRU5TRS5tZFxuVGhpcyBmaWxlIGlzIGdlbmVyYXRlZCBieSBgZ3J1bnQgYnVpbGRgLCBkbyBub3QgZWRpdCBpdCBieSBoYW5kLlxuKi9cblxuLyogQGdyb3VwIEJhc2UgKi9cbi5jaG9zZW4tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG4uY2hvc2VuLWNvbnRhaW5lciAqIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4uY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLWRyb3Age1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogLTk5OTlweDtcbiAgei1pbmRleDogMTAxMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuLmNob3Nlbi1jb250YWluZXIuY2hvc2VuLXdpdGgtZHJvcCAuY2hvc2VuLWRyb3Age1xuICBsZWZ0OiAwO1xufVxuLmNob3Nlbi1jb250YWluZXIgYSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5jaG9zZW4tY29udGFpbmVyIC5zZWFyY2gtY2hvaWNlIC5ncm91cC1uYW1lLCAuY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLXNpbmdsZSAuZ3JvdXAtbmFtZSB7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICM5OTk5OTk7XG59XG4uY2hvc2VuLWNvbnRhaW5lciAuc2VhcmNoLWNob2ljZSAuZ3JvdXAtbmFtZTphZnRlciwgLmNob3Nlbi1jb250YWluZXIgLmNob3Nlbi1zaW5nbGUgLmdyb3VwLW5hbWU6YWZ0ZXIge1xuICBjb250ZW50OiBcIjpcIjtcbiAgcGFkZGluZy1sZWZ0OiAycHg7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi8qIEBlbmQgKi9cbi8qIEBncm91cCBTaW5nbGUgQ2hvc2VuICovXG4uY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zaW5nbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwIDAgMCA4cHg7XG4gIGhlaWdodDogMjVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgNTAlIDAlLCA1MCUgMTAwJSwgY29sb3Itc3RvcCgyMCUsICNmZmZmZmYpLCBjb2xvci1zdG9wKDUwJSwgI2Y2ZjZmNiksIGNvbG9yLXN0b3AoNTIlLCAjZWVlZWVlKSwgY29sb3Itc3RvcCgxMDAlLCAjZjRmNGY0KSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCNmZmZmZmYgMjAlLCAjZjZmNmY2IDUwJSwgI2VlZWVlZSA1MiUsICNmNGY0ZjQgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KCNmZmZmZmYgMjAlLCAjZjZmNmY2IDUwJSwgI2VlZWVlZSA1MiUsICNmNGY0ZjQgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCgjZmZmZmZmIDIwJSwgI2Y2ZjZmNiA1MCUsICNlZWVlZWUgNTIlLCAjZjRmNGY0IDEwMCUpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoI2ZmZmZmZiAyMCUsICNmNmY2ZjYgNTAlLCAjZWVlZWVlIDUyJSwgI2Y0ZjRmNCAxMDAlKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm94LXNoYWRvdzogMCAwIDNweCB3aGl0ZSBpbnNldCwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgY29sb3I6ICM0NDQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1kZWZhdWx0IHtcbiAgY29sb3I6ICM5OTk7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zaW5nbGUgc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tcmlnaHQ6IDI2cHg7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLmNob3Nlbi1jb250YWluZXItc2luZ2xlIC5jaG9zZW4tc2luZ2xlLXdpdGgtZGVzZWxlY3Qgc3BhbiB7XG4gIG1hcmdpbi1yaWdodDogMzhweDtcbn1cbi5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLXNpbmdsZSBhYmJyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDZweDtcbiAgcmlnaHQ6IDI2cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxMnB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoJy9hc3NldHMvaW1hZ2VzL2Nob3Nlbi1zcHJpdGUucG5nJykgLTQycHggMXB4IG5vLXJlcGVhdDtcbiAgZm9udC1zaXplOiAxcHg7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zaW5nbGUgYWJicjpob3ZlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00MnB4IC0xMHB4O1xufVxuLmNob3Nlbi1jb250YWluZXItc2luZ2xlLmNob3Nlbi1kaXNhYmxlZCAuY2hvc2VuLXNpbmdsZSBhYmJyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQycHggLTEwcHg7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zaW5nbGUgZGl2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDE4cHg7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLXNpbmdsZSBkaXYgYiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiB1cmwoJy9hc3NldHMvaW1hZ2VzL2Nob3Nlbi1zcHJpdGUucG5nJykgbm8tcmVwZWF0IDBweCAycHg7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zZWFyY2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwMTA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogM3B4IDRweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLXNlYXJjaCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gIG1hcmdpbjogMXB4IDA7XG4gIHBhZGRpbmc6IDRweCAyMHB4IDRweCA1cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG91dGxpbmU6IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gIGJhY2tncm91bmQ6IHdoaXRlIHVybCgnL2Fzc2V0cy9pbWFnZXMvY2hvc2VuLXNwcml0ZS5wbmcnKSBuby1yZXBlYXQgMTAwJSAtMjBweDtcbiAgYmFja2dyb3VuZDogdXJsKCcvYXNzZXRzL2ltYWdlcy9jaG9zZW4tc3ByaXRlLnBuZycpIG5vLXJlcGVhdCAxMDAlIC0yMHB4O1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1kcm9wIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDRweCA0cHg7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUtbm9zZWFyY2ggLmNob3Nlbi1zZWFyY2gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC05OTk5cHg7XG59XG5cbi8qIEBlbmQgKi9cbi8qIEBncm91cCBSZXN1bHRzICovXG4uY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLXJlc3VsdHMge1xuICBjb2xvcjogIzQ0NDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG1hcmdpbjogMCA0cHggNHB4IDA7XG4gIHBhZGRpbmc6IDAgMCAwIDRweDtcbiAgbWF4LWhlaWdodDogMjQwcHg7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cbi5jaG9zZW4tY29udGFpbmVyIC5jaG9zZW4tcmVzdWx0cyBsaSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogNXB4IDZweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xufVxuLmNob3Nlbi1jb250YWluZXIgLmNob3Nlbi1yZXN1bHRzIGxpLmFjdGl2ZS1yZXN1bHQge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5jaG9zZW4tY29udGFpbmVyIC5jaG9zZW4tcmVzdWx0cyBsaS5kaXNhYmxlZC1yZXN1bHQge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIGNvbG9yOiAjY2NjO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4uY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLXJlc3VsdHMgbGkuaGlnaGxpZ2h0ZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzg3NWQ3O1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgNTAlIDAlLCA1MCUgMTAwJSwgY29sb3Itc3RvcCgyMCUsICMzODc1ZDcpLCBjb2xvci1zdG9wKDkwJSwgIzJhNjJiYykpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgjMzg3NWQ3IDIwJSwgIzJhNjJiYyA5MCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCgjMzg3NWQ3IDIwJSwgIzJhNjJiYyA5MCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoIzM4NzVkNyAyMCUsICMyYTYyYmMgOTAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCMzODc1ZDcgMjAlLCAjMmE2MmJjIDkwJSk7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmNob3Nlbi1jb250YWluZXIgLmNob3Nlbi1yZXN1bHRzIGxpLm5vLXJlc3VsdHMge1xuICBjb2xvcjogIzc3NztcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xuICBiYWNrZ3JvdW5kOiAjZjRmNGY0O1xufVxuLmNob3Nlbi1jb250YWluZXIgLmNob3Nlbi1yZXN1bHRzIGxpLmdyb3VwLXJlc3VsdCB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5jaG9zZW4tY29udGFpbmVyIC5jaG9zZW4tcmVzdWx0cyBsaS5ncm91cC1vcHRpb24ge1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG59XG4uY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLXJlc3VsdHMgbGkgZW0ge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4vKiBAZW5kICovXG4vKiBAZ3JvdXAgTXVsdGkgQ2hvc2VuICovXG4uY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLWNob2ljZXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbiAgY29sb3I6ICMwMDQwNWI7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgcGFkZGluZzogNnB4IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGN1cnNvcjogdGV4dDtcbn1cbi5jaG9zZW4tY29udGFpbmVyLW11bHRpIC5jaG9zZW4tY2hvaWNlcyBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLmNob3Nlbi1jb250YWluZXItbXVsdGkgLmNob3Nlbi1jaG9pY2VzIGxpLnNlYXJjaC1maWVsZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5jaG9zZW4tY29udGFpbmVyLW11bHRpIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtZmllbGQgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICBtYXJnaW46IDFweCAwO1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IDI1cHg7XG4gIG91dGxpbmU6IDA7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogIzk5OTtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5jaG9zZW4tY29udGFpbmVyLW11bHRpIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtY2hvaWNlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDNweCA1cHggM3B4IDA7XG4gIHBhZGRpbmc6IDNweCAyMHB4IDNweCA1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgNTAlIDAlLCA1MCUgMTAwJSwgY29sb3Itc3RvcCgyMCUsICNmNGY0ZjQpLCBjb2xvci1zdG9wKDUwJSwgI2YwZjBmMCksIGNvbG9yLXN0b3AoNTIlLCAjZThlOGU4KSwgY29sb3Itc3RvcCgxMDAlLCAjZWVlZWVlKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCNmNGY0ZjQgMjAlLCAjZjBmMGYwIDUwJSwgI2U4ZThlOCA1MiUsICNlZWVlZWUgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KCNmNGY0ZjQgMjAlLCAjZjBmMGYwIDUwJSwgI2U4ZThlOCA1MiUsICNlZWVlZWUgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgjZjRmNGY0IDIwJSwgI2YwZjBmMCA1MCUsICNlOGU4ZTggNTIlLCAjZWVlZWVlIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoI2Y0ZjRmNCAyMCUsICNmMGYwZjAgNTAlLCAjZThlOGU4IDUyJSwgI2VlZWVlZSAxMDAlKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDE5cHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm94LXNoYWRvdzogMCAwIDJweCB3aGl0ZSBpbnNldCwgMCAxcHggMCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBjb2xvcjogIzMzMztcbiAgbGluZS1oZWlnaHQ6IDEzcHg7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5jaG9zZW4tY29udGFpbmVyLW11bHRpIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtY2hvaWNlIHNwYW4ge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLWNob2ljZXMgbGkuc2VhcmNoLWNob2ljZSAuc2VhcmNoLWNob2ljZS1jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0cHg7XG4gIHJpZ2h0OiAzcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxMnB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoJy9hc3NldHMvaW1hZ2VzL2Nob3Nlbi1zcHJpdGUucG5nJykgLTQycHggMXB4IG5vLXJlcGVhdDtcbiAgZm9udC1zaXplOiAxcHg7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLWNob2ljZXMgbGkuc2VhcmNoLWNob2ljZSAuc2VhcmNoLWNob2ljZS1jbG9zZTpob3ZlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00MnB4IC0xMHB4O1xufVxuLmNob3Nlbi1jb250YWluZXItbXVsdGkgLmNob3Nlbi1jaG9pY2VzIGxpLnNlYXJjaC1jaG9pY2UtZGlzYWJsZWQge1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCA1MCUgMCUsIDUwJSAxMDAlLCBjb2xvci1zdG9wKDIwJSwgI2Y0ZjRmNCksIGNvbG9yLXN0b3AoNTAlLCAjZjBmMGYwKSwgY29sb3Itc3RvcCg1MiUsICNlOGU4ZTgpLCBjb2xvci1zdG9wKDEwMCUsICNlZWVlZWUpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoI2Y0ZjRmNCAyMCUsICNmMGYwZjAgNTAlLCAjZThlOGU4IDUyJSwgI2VlZWVlZSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoI2Y0ZjRmNCAyMCUsICNmMGYwZjAgNTAlLCAjZThlOGU4IDUyJSwgI2VlZWVlZSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCNmNGY0ZjQgMjAlLCAjZjBmMGYwIDUwJSwgI2U4ZThlOCA1MiUsICNlZWVlZWUgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgjZjRmNGY0IDIwJSwgI2YwZjBmMCA1MCUsICNlOGU4ZTggNTIlLCAjZWVlZWVlIDEwMCUpO1xuICBjb2xvcjogIzY2Njtcbn1cbi5jaG9zZW4tY29udGFpbmVyLW11bHRpIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtY2hvaWNlLWZvY3VzIHtcbiAgYmFja2dyb3VuZDogI2Q0ZDRkNDtcbn1cbi5jaG9zZW4tY29udGFpbmVyLW11bHRpIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtY2hvaWNlLWZvY3VzIC5zZWFyY2gtY2hvaWNlLWNsb3NlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQycHggLTEwcHg7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLXJlc3VsdHMge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLWRyb3AgLnJlc3VsdC1zZWxlY3RlZCB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgY29sb3I6ICNjY2M7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyogQGVuZCAqL1xuLyogQGdyb3VwIEFjdGl2ZSAgKi9cbi5jaG9zZW4tY29udGFpbmVyLWFjdGl2ZSAuY2hvc2VuLXNpbmdsZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM1ODk3ZmI7XG4gIGJveC1zaGFkb3c6IDAgMCA1cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuLmNob3Nlbi1jb250YWluZXItYWN0aXZlLmNob3Nlbi13aXRoLWRyb3AgLmNob3Nlbi1zaW5nbGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tbGVmdDogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDUwJSAwJSwgNTAlIDEwMCUsIGNvbG9yLXN0b3AoMjAlLCAjZWVlZWVlKSwgY29sb3Itc3RvcCg4MCUsICNmZmZmZmYpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoI2VlZWVlZSAyMCUsICNmZmZmZmYgODAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoI2VlZWVlZSAyMCUsICNmZmZmZmYgODAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCNlZWVlZWUgMjAlLCAjZmZmZmZmIDgwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgjZWVlZWVlIDIwJSwgI2ZmZmZmZiA4MCUpO1xuICBib3gtc2hhZG93OiAwIDFweCAwICNmZmYgaW5zZXQ7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1hY3RpdmUuY2hvc2VuLXdpdGgtZHJvcCAuY2hvc2VuLXNpbmdsZSBkaXYge1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1hY3RpdmUuY2hvc2VuLXdpdGgtZHJvcCAuY2hvc2VuLXNpbmdsZSBkaXYgYiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xOHB4IDJweDtcbn1cbi5jaG9zZW4tY29udGFpbmVyLWFjdGl2ZSAuY2hvc2VuLWNob2ljZXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTg5N2ZiO1xuICBib3gtc2hhZG93OiAwIDAgNXB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cbi5jaG9zZW4tY29udGFpbmVyLWFjdGl2ZSAuY2hvc2VuLWNob2ljZXMgbGkuc2VhcmNoLWZpZWxkIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgY29sb3I6ICMyMjIgIWltcG9ydGFudDtcbn1cblxuLyogQGVuZCAqL1xuLyogQGdyb3VwIERpc2FibGVkIFN1cHBvcnQgKi9cbi5jaG9zZW4tZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjUgIWltcG9ydGFudDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLmNob3Nlbi1kaXNhYmxlZCAuY2hvc2VuLXNpbmdsZSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5jaG9zZW4tZGlzYWJsZWQgLmNob3Nlbi1jaG9pY2VzIC5zZWFyY2gtY2hvaWNlIC5zZWFyY2gtY2hvaWNlLWNsb3NlIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vKiBAZW5kICovXG4vKiBAZ3JvdXAgUmlnaHQgdG8gTGVmdCAqL1xuLmNob3Nlbi1ydGwge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5jaG9zZW4tcnRsIC5jaG9zZW4tc2luZ2xlIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBhZGRpbmc6IDAgOHB4IDAgMDtcbn1cbi5jaG9zZW4tcnRsIC5jaG9zZW4tc2luZ2xlIHNwYW4ge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAyNnB4O1xuICBkaXJlY3Rpb246IHJ0bDtcbn1cbi5jaG9zZW4tcnRsIC5jaG9zZW4tc2luZ2xlLXdpdGgtZGVzZWxlY3Qgc3BhbiB7XG4gIG1hcmdpbi1sZWZ0OiAzOHB4O1xufVxuLmNob3Nlbi1ydGwgLmNob3Nlbi1zaW5nbGUgZGl2IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDNweDtcbn1cbi5jaG9zZW4tcnRsIC5jaG9zZW4tc2luZ2xlIGFiYnIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMjZweDtcbn1cbi5jaG9zZW4tcnRsIC5jaG9zZW4tY2hvaWNlcyBsaSB7XG4gIGZsb2F0OiByaWdodDtcbn1cbi5jaG9zZW4tcnRsIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtZmllbGQgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICBkaXJlY3Rpb246IHJ0bDtcbn1cbi5jaG9zZW4tcnRsIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtY2hvaWNlIHtcbiAgbWFyZ2luOiAzcHggNXB4IDNweCAwO1xuICBwYWRkaW5nOiAzcHggNXB4IDNweCAxOXB4O1xufVxuLmNob3Nlbi1ydGwgLmNob3Nlbi1jaG9pY2VzIGxpLnNlYXJjaC1jaG9pY2UgLnNlYXJjaC1jaG9pY2UtY2xvc2Uge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNHB4O1xufVxuLmNob3Nlbi1ydGwuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUtbm9zZWFyY2ggLmNob3Nlbi1zZWFyY2gsXG4uY2hvc2VuLXJ0bCAuY2hvc2VuLWRyb3Age1xuICBsZWZ0OiA5OTk5cHg7XG59XG4uY2hvc2VuLXJ0bC5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLXJlc3VsdHMge1xuICBtYXJnaW46IDAgMCA0cHggNHB4O1xuICBwYWRkaW5nOiAwIDRweCAwIDA7XG59XG4uY2hvc2VuLXJ0bCAuY2hvc2VuLXJlc3VsdHMgbGkuZ3JvdXAtb3B0aW9uIHtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLmNob3Nlbi1ydGwuY2hvc2VuLWNvbnRhaW5lci1hY3RpdmUuY2hvc2VuLXdpdGgtZHJvcCAuY2hvc2VuLXNpbmdsZSBkaXYge1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG59XG4uY2hvc2VuLXJ0bCAuY2hvc2VuLXNlYXJjaCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gIHBhZGRpbmc6IDRweCA1cHggNHB4IDIwcHg7XG4gIGJhY2tncm91bmQ6IHdoaXRlIHVybCgnL2Fzc2V0cy9pbWFnZXMvY2hvc2VuLXNwcml0ZS5wbmcnKSBuby1yZXBlYXQgLTMwcHggLTIwcHg7XG4gIGJhY2tncm91bmQ6IHVybCgnL2Fzc2V0cy9pbWFnZXMvY2hvc2VuLXNwcml0ZS5wbmcnKSBuby1yZXBlYXQgLTMwcHggLTIwcHg7XG4gIGRpcmVjdGlvbjogcnRsO1xufVxuLmNob3Nlbi1ydGwuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zaW5nbGUgZGl2IGIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA2cHggMnB4O1xufVxuLmNob3Nlbi1ydGwuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUuY2hvc2VuLXdpdGgtZHJvcCAuY2hvc2VuLXNpbmdsZSBkaXYgYiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMnB4IDJweDtcbn1cblxuLyogQGVuZCAqL1xuLyogQGdyb3VwIFJldGluYSBjb21wYXRpYmlsaXR5ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE0NGRwaSksIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDEuNWRwcHgpIHtcbiAgLmNob3Nlbi1ydGwgLmNob3Nlbi1zZWFyY2ggaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIC5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLXNpbmdsZSBhYmJyLFxuICAuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zaW5nbGUgZGl2IGIsXG4gIC5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLXNlYXJjaCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgLmNob3Nlbi1jb250YWluZXItbXVsdGkgLmNob3Nlbi1jaG9pY2VzIC5zZWFyY2gtY2hvaWNlIC5zZWFyY2gtY2hvaWNlLWNsb3NlLFxuICAuY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLXJlc3VsdHMtc2Nyb2xsLWRvd24gc3BhbixcbiAgLmNob3Nlbi1jb250YWluZXIgLmNob3Nlbi1yZXN1bHRzLXNjcm9sbC11cCBzcGFuIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2Nob3Nlbi1zcHJpdGVAMngucG5nJykgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDUycHggMzdweCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQgIWltcG9ydGFudDtcbiAgfVxufVxuLyogQGVuZCAqL1xuXG5cblxuXG5cblxuXG5cblxuXG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wgKyAuY2hvc2VuLWNvbnRhaW5lci5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLXNpbmdsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzNHB4O1xuICAgIHBhZGRpbmc6IDZweCAxMnB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMS40Mjg1NzE0Mjk7XG4gICAgY29sb3I6ICM1NTU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsMC4wNzUpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLDAuMDc1KTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJvcmRlci1jb2xvciBlYXNlLWluLW91dCAuMTVzLGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgLjE1cztcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgLjE1cyxib3gtc2hhZG93IGVhc2UtaW4tb3V0IC4xNXM7XG4gICAgYmFja2dyb3VuZC1pbWFnZTpub25lO1xufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sICsgLmNob3Nlbi1jb250YWluZXIuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zaW5nbGUgZGl2IHtcbiAgICB0b3A6NHB4O1xuICAgIGNvbG9yOiMwMDA7XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wgKyAuY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLWRyb3Age1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0NDQztcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNnB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjE3NSk7XG4gICAgYm94LXNoYWRvdzogMCA2cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMTc1KTtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIG1hcmdpbjogMnB4IDAgMDtcblxufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sICsgLmNob3Nlbi1jb250YWluZXIgLmNob3Nlbi1zZWFyY2ggaW5wdXRbdHlwZT10ZXh0XSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzNHB4O1xuICAgIHBhZGRpbmc6IDZweCAxMnB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMS40Mjg1NzE0Mjk7XG4gICAgY29sb3I6ICM1NTU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNDQ0M7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJvcmRlci1jb2xvciBlYXNlLWluLW91dCAwLjE1cywgYm94LXNoYWRvdyBlYXNlLWluLW91dCAwLjE1cztcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgMC4xNXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgMC4xNXM7XG4gICAgYmFja2dyb3VuZC1pbWFnZTpub25lO1xufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sICsgLmNob3Nlbi1jb250YWluZXIgLmNob3Nlbi1yZXN1bHRzIHtcbiAgICBtYXJnaW46IDJweCAwIDA7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wgKyAuY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLXJlc3VsdHMgbGkgLFxuc2VsZWN0LmZvcm0tY29udHJvbCArIC5jaG9zZW4tY29udGFpbmVyIC5jaG9zZW4tcmVzdWx0cyBsaS5hY3RpdmUtcmVzdWx0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAzcHggMjBweDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3MTQyOTtcbiAgICBjb2xvcjogIzMzMztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6bm9uZTtcbn1cbnNlbGVjdC5mb3JtLWNvbnRyb2wgKyAuY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLXJlc3VsdHMgbGk6aG92ZXIsXG5zZWxlY3QuZm9ybS1jb250cm9sICsgLmNob3Nlbi1jb250YWluZXIgLmNob3Nlbi1yZXN1bHRzIGxpLmFjdGl2ZS1yZXN1bHQ6aG92ZXIsXG5zZWxlY3QuZm9ybS1jb250cm9sICsgLmNob3Nlbi1jb250YWluZXIgLmNob3Nlbi1yZXN1bHRzIGxpLmhpZ2hsaWdodGVkXG57XG4gICAgY29sb3I6ICNGRkY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0MjhCQ0E7XG4gICAgYmFja2dyb3VuZC1pbWFnZTpub25lO1xufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sICsgLmNob3Nlbi1jb250YWluZXItbXVsdGkgLmNob3Nlbi1jaG9pY2VzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAzNHB4O1xuICAgIHBhZGRpbmc6IDZweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDI4NTcxNDI5O1xuICAgIGNvbG9yOiAjNTU1O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQ0NDO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgMC4xNXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgMC4xNXM7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IDAuMTVzLCBib3gtc2hhZG93IGVhc2UtaW4tb3V0IDAuMTVzO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6bm9uZTtcbn1cblxuc2VsZWN0LmZvcm0tY29udHJvbCArIC5jaG9zZW4tY29udGFpbmVyLW11bHRpIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtZmllbGQgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgIGhlaWdodDphdXRvO1xuICAgIHBhZGRpbmc6NXB4IDA7XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wgKyAuY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLWNob2ljZXMgbGkuc2VhcmNoLWNob2ljZSB7XG5cbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIHBhZGRpbmc6IDNweCAyNHB4IDNweCA1cHg7XG4gICAgbWFyZ2luOiAwIDZweCAwIDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDI4NTcxNDI5O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGNvbG9yOiAjMzMzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgYm9yZGVyLWNvbG9yOiAjQ0NDO1xufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sICsgLmNob3Nlbi1jb250YWluZXItbXVsdGkgLmNob3Nlbi1jaG9pY2VzIGxpLnNlYXJjaC1jaG9pY2UgLnNlYXJjaC1jaG9pY2UtY2xvc2Uge1xuICAgIHRvcDo4cHg7XG4gICAgcmlnaHQ6NnB4O1xufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sICsgLmNob3Nlbi1jb250YWluZXItbXVsdGkuY2hvc2VuLWNvbnRhaW5lci1hY3RpdmUgLmNob3Nlbi1jaG9pY2VzLFxuc2VsZWN0LmZvcm0tY29udHJvbCArIC5jaG9zZW4tY29udGFpbmVyLmNob3Nlbi1jb250YWluZXItc2luZ2xlLmNob3Nlbi1jb250YWluZXItYWN0aXZlIC5jaG9zZW4tc2luZ2xlLFxuc2VsZWN0LmZvcm0tY29udHJvbCArIC5jaG9zZW4tY29udGFpbmVyIC5jaG9zZW4tc2VhcmNoIGlucHV0W3R5cGU9dGV4dF06Zm9jdXN7XG4gICAgYm9yZGVyLWNvbG9yOiAjNjZBRkU5O1xuICAgIG91dGxpbmU6IDA7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSksMCAwIDhweCByZ2JhKDEwMiwgMTc1LCAyMzMsIDAuNik7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpLDAgMCA4cHggcmdiYSgxMDIsIDE3NSwgMjMzLCAwLjYpO1xufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sICsgLmNob3Nlbi1jb250YWluZXItbXVsdGkgLmNob3Nlbi1yZXN1bHRzIGxpLnJlc3VsdC1zZWxlY3RlZHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gICAgY29sb3I6ICNjY2M7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xufVxuIiwiaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBhcHBsZXQsIG9iamVjdCwgaWZyYW1lLFxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLFxuYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLFxuZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzLCBzYW1wLFxuc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhcixcbmIsIHUsIGksIGNlbnRlcixcbmRsLCBkdCwgZGQsIG9sLCB1bCwgbGksXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbnRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxuYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsXG5maWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsXG5tZW51LCBuYXYsIG91dHB1dCwgcnVieSwgc2VjdGlvbiwgc3VtbWFyeSxcbnRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBmb250OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5vbCwgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG5jYXB0aW9uLCB0aCwgdGQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5xLCBibG9ja3F1b3RlIHtcbiAgcXVvdGVzOiBub25lO1xuXG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGNvbnRlbnQ6IG5vbmU7XG4gIH1cbn1cblxuYSBpbWcge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbmFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlcixcbmhlYWRlciwgaGdyb3VwLCBtYWluLCBtZW51LCBuYXYsIHNlY3Rpb24sIHN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiIsIkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1ZvbGtzd2FnZW4gSGVhZCc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgc3JjOiB1cmwoXCIjeyRwYXRoLWZvbnRzfVZXSGVhZFdlYi1MaWdodC5lb3RcIik7XG4gIHNyYzogdXJsKFwiI3skcGF0aC1mb250c31WV0hlYWRXZWItTGlnaHQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSxcbiAgICAgICB1cmwoXCIjeyRwYXRoLWZvbnRzfVZXSGVhZFdlYi1MaWdodC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksXG4gICAgICAgdXJsKFwiI3skcGF0aC1mb250c31WV0hlYWRXZWItTGlnaHQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLFxuICAgICAgIHVybChcIiN7JHBhdGgtZm9udHN9VldIZWFkV2ViLUxpZ2h0LnN2ZyBIZWFkXCIpIGZvcm1hdChcInN2Z1wiKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1ZvbGtzd2FnZW4gSGVhZCc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgc3JjOiB1cmwoXCIjeyRwYXRoLWZvbnRzfVZXSGVhZFdlYi1SZWd1bGFyLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIjeyRwYXRoLWZvbnRzfVZXSGVhZFdlYi1SZWd1bGFyLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXG4gICAgICAgdXJsKFwiI3skcGF0aC1mb250c31WV0hlYWRXZWItUmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksXG4gICAgICAgdXJsKFwiI3skcGF0aC1mb250c31WV0hlYWRXZWItUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksXG4gICAgICAgdXJsKFwiI3skcGF0aC1mb250c31WV0hlYWRXZWItUmVndWxhci5zdmcgSGVhZFwiKSBmb3JtYXQoXCJzdmdcIik7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdWb2xrc3dhZ2VuIEhlYWQnO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHNyYzogdXJsKFwiI3skcGF0aC1mb250c31WV0hlYWRXZWItUmVndWxhckl0YWxpYy5lb3RcIik7XG4gIHNyYzogdXJsKFwiI3skcGF0aC1mb250c31WV0hlYWRXZWItUmVndWxhckl0YWxpYy5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLFxuICAgICAgIHVybChcIiN7JHBhdGgtZm9udHN9VldIZWFkV2ViLVJlZ3VsYXJJdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgICAgIHVybChcIiN7JHBhdGgtZm9udHN9VldIZWFkV2ViLVJlZ3VsYXJJdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLFxuICAgICAgIHVybChcIiN7JHBhdGgtZm9udHN9VldIZWFkV2ViLVJlZ3VsYXJJdGFsaWMuc3ZnIEhlYWRcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnVm9sa3N3YWdlbiBIZWFkJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBzcmM6IHVybChcIiN7JHBhdGgtZm9udHN9VldIZWFkV2ViLUJvbGQuZW90XCIpO1xuICBzcmM6IHVybChcIiN7JHBhdGgtZm9udHN9VldIZWFkV2ViLUJvbGQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSxcbiAgICAgIHVybChcIiN7JHBhdGgtZm9udHN9VldIZWFkV2ViLUJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgICAgdXJsKFwiI3skcGF0aC1mb250c31WV0hlYWRXZWItQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksXG4gICAgICAgdXJsKFwiI3skcGF0aC1mb250c31WV0hlYWRXZWItQm9sZC5zdmcgSGVhZFwiKSBmb3JtYXQoXCJzdmdcIik7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdWb2xrc3dhZ2VuIEhlYWQnO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogdXJsKFwiI3skcGF0aC1mb250c31WV0hlYWRXZWItQm9sZEl0YWxpYy5lb3RcIik7XG4gIHNyYzogdXJsKFwiI3skcGF0aC1mb250c31WV0hlYWRXZWItQm9sZEl0YWxpYy5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLFxuICAgICAgIHVybChcIiN7JHBhdGgtZm9udHN9VldIZWFkV2ViLUJvbGRJdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgICAgIHVybChcIiN7JHBhdGgtZm9udHN9VldIZWFkV2ViLUJvbGRJdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLFxuICAgICAgIHVybChcIiN7JHBhdGgtZm9udHN9VldIZWFkV2ViLUJvbGRJdGFsaWMuc3ZnIEhlYWRcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnVm9sa3N3YWdlbiBIZWFkJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogOTAwO1xuICBzcmM6IHVybChcIiN7JHBhdGgtZm9udHN9VldIZWFkV2ViLUV4dHJhQm9sZC5lb3RcIik7XG4gIHNyYzogdXJsKFwiI3skcGF0aC1mb250c31WV0hlYWRXZWItRXh0cmFCb2xkLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXG4gICAgICAgdXJsKFwiI3skcGF0aC1mb250c31WV0hlYWRXZWItRXh0cmFCb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICAgICB1cmwoXCIjeyRwYXRoLWZvbnRzfVZXSGVhZFdlYi1FeHRyYUJvbGQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLFxuICAgICAgIHVybChcIiN7JHBhdGgtZm9udHN9VldIZWFkV2ViLUV4dHJhQm9sZC5zdmcgSGVhZFwiKSBmb3JtYXQoXCJzdmdcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1ZvbGtzd2FnZW4gVGV4dCc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgc3JjOiB1cmwoXCIjeyRwYXRoLWZvbnRzfVZXVGV4dFdlYi1MaWdodC5lb3RcIik7XG4gIHNyYzogdXJsKFwiI3skcGF0aC1mb250c31WV1RleHRXZWItTGlnaHQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSxcbiAgICAgICB1cmwoXCIjeyRwYXRoLWZvbnRzfVZXVGV4dFdlYi1MaWdodC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksXG4gICAgICAgdXJsKFwiI3skcGF0aC1mb250c31WV1RleHRXZWItTGlnaHQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLFxuICAgICAgIHVybChcIiN7JHBhdGgtZm9udHN9VldUZXh0V2ViLUxpZ2h0LnN2Z1wiKSBmb3JtYXQoXCJzdmdcIik7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdWb2xrc3dhZ2VuIFRleHQnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHNyYzogdXJsKFwiI3skcGF0aC1mb250c31WV1RleHRXZWItUmVndWxhci5lb3RcIik7XG4gIHNyYzogdXJsKFwiI3skcGF0aC1mb250c31WV1RleHRXZWItUmVndWxhci5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLFxuICAgICAgIHVybChcIiN7JHBhdGgtZm9udHN9VldUZXh0V2ViLVJlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgICAgIHVybChcIiN7JHBhdGgtZm9udHN9VldUZXh0V2ViLVJlZ3VsYXIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLFxuICAgICAgIHVybChcIiN7JHBhdGgtZm9udHN9VldUZXh0V2ViLVJlZ3VsYXIuc3ZnXCIpIGZvcm1hdChcInN2Z1wiKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1ZvbGtzd2FnZW4gVGV4dCc7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgc3JjOiB1cmwoXCIjeyRwYXRoLWZvbnRzfVZXVGV4dFdlYi1SZWd1bGFySXRhbGljLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIjeyRwYXRoLWZvbnRzfVZXVGV4dFdlYi1SZWd1bGFySXRhbGljLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXG4gICAgICAgdXJsKFwiI3skcGF0aC1mb250c31WV1RleHRXZWItUmVndWxhckl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksXG4gICAgICAgdXJsKFwiI3skcGF0aC1mb250c31WV1RleHRXZWItUmVndWxhckl0YWxpYy50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksXG4gICAgICAgdXJsKFwiI3skcGF0aC1mb250c31WV1RleHRXZWItUmVndWxhckl0YWxpYy5zdmdcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnVm9sa3N3YWdlbiBUZXh0JztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBzcmM6IHVybChcIiN7JHBhdGgtZm9udHN9VldUZXh0V2ViLUJvbGQuZW90XCIpO1xuICBzcmM6IHVybChcIiN7JHBhdGgtZm9udHN9VldUZXh0V2ViLUJvbGQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSxcbiAgICAgICB1cmwoXCIjeyRwYXRoLWZvbnRzfVZXVGV4dFdlYi1Cb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICAgICB1cmwoXCIjeyRwYXRoLWZvbnRzfVZXVGV4dFdlYi1Cb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSxcbiAgICAgICB1cmwoXCIjeyRwYXRoLWZvbnRzfVZXVGV4dFdlYi1Cb2xkLnN2Z1wiKSBmb3JtYXQoXCJzdmdcIik7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdWb2xrc3dhZ2VuIFRleHQnO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogdXJsKFwiI3skcGF0aC1mb250c31WV1RleHRXZWItQm9sZEl0YWxpYy5lb3RcIik7XG4gIHNyYzogdXJsKFwiI3skcGF0aC1mb250c31WV1RleHRXZWItQm9sZEl0YWxpYy5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLFxuICAgICAgIHVybChcIiN7JHBhdGgtZm9udHN9VldUZXh0V2ViLUJvbGRJdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgICAgIHVybChcIiN7JHBhdGgtZm9udHN9VldUZXh0V2ViLUJvbGRJdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLFxuICAgICAgIHVybChcIiN7JHBhdGgtZm9udHN9VldUZXh0V2ViLUJvbGRJdGFsaWMuc3ZnXCIpIGZvcm1hdChcInN2Z1wiKTtcbn1cbiIsIioge1xuICB1c2VyLXNlbGVjdDogdGV4dDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogdGV4dDtcbiAgLW1vei11c2VyLXNlbGVjdDogdGV4dDtcbiAgLW8tdXNlci1zZWxlY3Q6IHRleHQ7XG5cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxufVxuXG5ib2R5LCBodG1sIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZm9udC1mYW1pbHk6ICRmb250LXZ3LWhlYWQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4yNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJmMGYyO1xufVxuXG5odG1sIHtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG5ib2R5IHtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuc2VjdGlvbiB7XG4gIC8vIHdpZHRoOiAxMDAlO1xuICAvLyBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5pbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5zdHJvbmcsIGIge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuaSwgZW0ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbmEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjRkZGO1xufVxuXG4udmFsaWduIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxcHg7XG59XG5cbi5pbm5lcixcbi5jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4udnctY29va2llLWFsZXJ0IHtcbiAgY29sb3I6Izc1NzU3NTtcbiAgZm9udC1zaXplOjE2cHg7XG4gIGxpbmUtaGVpZ2h0OjEuNTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogNzBweDtcbiAgcGFkZGluZzogMjBweCA2MHB4IDIwcHggMjBweDtcbiAgYm90dG9tOiAwO1xuICBmb250LXdlaWdodDogbGlnaHRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U1ZTVlNTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2M7XG4gIHotaW5kZXg6IDUwMDtcblxuICBhIHtcbiAgICBjb2xvcjogIzg3MTczZDtcbiAgfVxuXG4gIGJ1dHRvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIHRvcDogMjBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXZ3LXRleHQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbn1cblxuLmctcmVjYXB0Y2hhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjojZmZmO1xuICBwYWRkaW5nOjEwcHg7XG4gIG1hcmdpbjogMTBweCAwO1xuXG4gIGRpdiB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuc2VjdGlvbi5mb3JtIC5lcnJvcl9mb3JtIHtcbiAgZGlzcGxheTpub25lO1xufVxuXG4ubWFycXVlcyB7XG4gIHdpZHRoOiA0MDBweDtcbiAgdGV4dC1hbGlnbjpyaWdodDtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbn1cblxuXG5mb290ZXIge1xuICBtYXJnaW4tdG9wOiA2MHB4O1xuXG4gIHRhYmxlIHtcbiAgICAvLyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxufVxuXG4vKlxuLm5fdmVydCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMjBweCAwIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cbiAgc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGNvbG9yOiAjNjQ2NDY0O1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgfVxuXG4gIHN0cm9uZyB7XG4gICAgYSB7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gIH1cbn1cbiovXG5cbi5ib3R0b21fZm9vdGVyIHtcbiAgcGFkZGluZzogMjBweCAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0MDViO1xuXG4gIGEge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBtYXJnaW4tbGVmdDogNDBweDtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLmZvb3Rlcl9yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgLmZvb3Rlcl9yaWdodCB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgfVxuICB9XG59XG5cbmhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZTZlNmU2O1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLnRvcF9oZWFkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDA1YjtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHBhZGRpbmc6IDdweCAwO1xuXG4gIGEge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDE1cHggMTBweDtcbiAgfVxufVxuXG4ubWFycXVlcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW46IDE1cHggMDtcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB9XG59XG5cblxuLm1hcnF1ZSB7XG4gIG1hcmdpbjogMCAxMHB4O1xufVxuXG5cbi5pbnRybyB7XG4gIG1hcmdpbjogNjBweCBhdXRvO1xuICBmb250LXdlaWdodDogMTAwO1xuICBmb250LXNpemU6IDI1cHg7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICBjb2xvcjogIzAwNDA1YjtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgbWFyZ2luOiA2MHB4IGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gICAgbWFyZ2luOiA2MHB4IGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gIH1cbn1cblxuaDEge1xuICBmb250LWZhbWlseTogJGZvbnQtdnctaGVhZDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiA1MHB4O1xuICBtYXJnaW46IDEwcHggMDtcbiAgbGluZS1oZWlnaHQ6IDQ5cHg7XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxufVxuXG5zZWN0aW9uLmNvbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogMSU7XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgfVxufVxuXG5oMiB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC12dy1oZWFkO1xuICBmb250LXdlaWdodDogMTAwO1xuICBmb250LXNpemU6IDI0cHg7XG4gIGNvbG9yOiAjMDA0MDViO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuaHIge1xuICBtYXJnaW46IDE1cHggMCAzMHB4IDA7XG4gIGhlaWdodDogNHB4O1xuICBjb2xvcjogIzg3MTczZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg3MTczZDtcbiAgYm9yZGVyOiAwO1xuXG4gICYucmVkIHtcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgfVxuXG4gICYuZnVsbCB7XG4gICAgbWFyZ2luOiA2MHB4IDA7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgY29sb3I6ICNkOWQ5ZDk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q5ZDlkOTtcbiAgfVxufVxuLmJsb2NrLXdoaXRlIGhyLmZ1bGwubm8tbWFyZ2luIHtcbiAgbWFyZ2luOiAyMHB4IC0yMHB4O1xufVxuXG5cblxuLmJsb2NrLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWJvcmRlci1ncmV5O1xuICBwYWRkaW5nOiAyMHB4O1xufVxuIiwiLyogbGluZSAzMzEsIC4uL3Nhc3MvaG9tZS5zY3NzICovXG5zZWN0aW9uLmZhcSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLyogbGluZSAzMzUsIC4uL3Nhc3MvaG9tZS5zY3NzICovXG4gIHNlY3Rpb24uZmFxIHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gIH1cbn1cblxuLyogbGluZSAzMzUsIC4uL3Nhc3MvaG9tZS5zY3NzICovXG5zZWN0aW9uLmZhcSB1bC5xdWVzdGlvbnMge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICAtbW96LWNvbHVtbi1jb3VudDogMjtcbiAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDI7XG4gIGNvbHVtbi1jb3VudDogMjtcbiAgLW1vei1jb2x1bW4tZ2FwOiAyMHB4O1xuICAtd2Via2l0LWNvbHVtbi1nYXA6IDIwcHg7XG4gIGNvbHVtbi1nYXA6IDIwcHg7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC8qIGxpbmUgMzM1LCAuLi9zYXNzL2hvbWUuc2NzcyAqL1xuICBzZWN0aW9uLmZhcSB1bC5xdWVzdGlvbnMge1xuICAgIG1hcmdpbjogMDtcbiAgICAtbW96LWNvbHVtbi1jb3VudDogaW5pdGlhbDtcbiAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogaW5pdGlhbDtcbiAgICBjb2x1bW4tY291bnQ6IGluaXRpYWw7XG4gICAgLW1vei1jb2x1bW4tZ2FwOiBpbml0aWFsO1xuICAgIC13ZWJraXQtY29sdW1uLWdhcDogaW5pdGlhbDtcbiAgICBjb2x1bW4tZ2FwOiBpbml0aWFsO1xuICB9XG59XG5cbi8qIGxpbmUgMzQ5LCAuLi9zYXNzL2hvbWUuc2NzcyAqL1xuc2VjdGlvbi5mYXEgbGkucXVlc3Rpb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nOiAyMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAvKiBsaW5lIDM0OSwgLi4vc2Fzcy9ob21lLnNjc3MgKi9cbiAgc2VjdGlvbi5mYXEgbGkucXVlc3Rpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMjBweCBhdXRvO1xuICB9XG59XG5cbi8qIGxpbmUgMzY2LCAuLi9zYXNzL2hvbWUuc2NzcyAqL1xuc2VjdGlvbi5mYXEgbGkucXVlc3Rpb24gaDMge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBmb250LWZhbWlseTogXCJWb2xrc3dhZ2VuIEhlYWRcIjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgY29sb3I6ICMwNDQzNWU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC8qIGxpbmUgMzY2LCAuLi9zYXNzL2hvbWUuc2NzcyAqL1xuICBzZWN0aW9uLmZhcSBsaS5xdWVzdGlvbiBoMyB7XG4gICAgLyogdGV4dC1hbGlnbjogY2VudGVyOyAqL1xuICB9XG59XG5cbi8qIGxpbmUgMzc5LCAuLi9zYXNzL2hvbWUuc2NzcyAqL1xuc2VjdGlvbi5mYXEgbGkucXVlc3Rpb24gcCB7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIGNvbG9yOiAjMDQ0MzVlO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAvKiBsaW5lIDM3OSwgLi4vc2Fzcy9ob21lLnNjc3MgKi9cbiAgc2VjdGlvbi5mYXEgbGkucXVlc3Rpb24gcCB7XG4gICAgLyogdGV4dC1hbGlnbjogY2VudGVyOyAqL1xuICB9XG59XG5cbi8qIGxpbmUgMzkwLCAuLi9zYXNzL2hvbWUuc2NzcyAqL1xuc2VjdGlvbi5mYXEgLmJ0bl9mYXEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMzBweCAwIDYwcHggMDtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4NzE3M2Q7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLyogbGluZSAzOTAsIC4uL3Nhc3MvaG9tZS5zY3NzICovXG4gIHNlY3Rpb24uZmFxIC5idG5fZmFxIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAzMHB4IDA7XG4gIH1cbn1cblxuLyogbGluZSA0MDgsIC4uL3Nhc3MvaG9tZS5zY3NzICovXG5zZWN0aW9uLmZhcSAuYnRuX2ZhcTpob3ZlcixcbnNlY3Rpb24uZmFxIC5idG5fZmFxOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYxMTAyYjtcbn1cblxuLyogbGluZSA0MTMsIC4uL3Nhc3MvaG9tZS5zY3NzICovXG5zZWN0aW9uLmZhcSAuYnRuX2ZhcSBpbWcge1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG59XG5cblxuXG5cbmxpLmFydGljbGUgaDN7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cblxuc2VjdGlvbi5mYXEgYnV0dG9ue1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjBweDtcbiAgcmlnaHQ6IDIwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViZjBmMjtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzY0NjQ2NDtcbiAgb3V0bGluZTogbm9uZTtcbiAgd2lkdGg6IDI1cHg7XG4gIGhlaWdodDogMjVweDtcbn1cblxuc2VjdGlvbi5mYXEgaDN7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAyNXB4KTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuc2VjdGlvbi5mYXEgcHtcbiAgcGFkZGluZy1yaWdodDogNDVweDtcbn1cblxuc2VjdGlvbi5mYXEgdWwucXVlc3Rpb25zIGxpe1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4iLCIuZm9ybS1zdWJtaXQgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdnctYnVyZ3VuZHk7XG4gIGJvcmRlcjogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDE5cHggMjBweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogbGlnaHRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uYnRuLWRvd25sb2FkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci12dy1idXJndW5keTtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAxMXB4IDIwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoL2Fzc2V0cy9pbWFnZXMvaV9kb3dubG9hZC5wbmcpIG5vLXJlcGVhdCByaWdodCBjZW50ZXI7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XG4gICAgbWluLWhlaWdodDogMjVweDtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbn1cbiIsIi5udmVydF9ibG9ja3tcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogMzBweDtcbiAgZm9udC1zaXplOiAwO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuXG4ubnZlcnRfYmxvY2subnZlcnRmb290ZXJ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi50ZWxfbnZlcnQsXG4uY2hhdF9udmVydHtcbiAgd2lkdGg6IDQ1JTtcbiAgaGVpZ2h0OiAxMjBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMi41JTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpe1xuICAudGVsX252ZXJ0LFxuICAuY2hhdF9udmVydHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDIwcHggYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUyMHB4KXtcbiAgLnRlbF9udmVydCxcbiAgLmNoYXRfbnZlcnR7XG4gICAgaGVpZ2h0OiAxNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM2MHB4KXtcbiAudGVsX252ZXJ0LFxuIC5jaGF0X252ZXJ0e1xuICBoZWlnaHQ6IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbn1cblxuLmljb25fdGVsbnZlcnQsXG4uaWNvbl9jaGF0bnZlcnR7XG4gIHdpZHRoOiAyNSU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZTZlNmU2O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzYwcHgpe1xuIC5pY29uX3RlbG52ZXJ0LFxuIC5pY29uX2NoYXRudmVydHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7XG59XG59XG5cbi5pY29uX3RlbG52ZXJ0IGltZ3tcbiAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuLmljb25fY2hhdG52ZXJ0IGltZ3tcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNjBweCl7XG4gIC5pY29uX3RlbG52ZXJ0LFxuICAuaWNvbl9jaGF0bnZlcnR7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgLmljb25fdGVsbnZlcnQgaW1nLFxuICAuaWNvbl9jaGF0bnZlcnQgaW1ne1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4uaWNvbl90ZWxudmVydCBzcGFuLFxuLmljb25fY2hhdG52ZXJ0IHNwYW57XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXNpemU6IDEycHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi50eHRfdGVsbnZlcnQsXG4udHh0X2NoYXRudmVydHtcbiAgd2lkdGg6IDc1JTtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6ICMwMDQwNWI7XG59XG5cbi50eHRfdGVsbnZlcnQgc3Ryb25nLFxuLnR4dF9jaGF0bnZlcnQgc3Ryb25ne1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNjBweCl7XG4gIC50eHRfdGVsbnZlcnQsXG4gIC50eHRfY2hhdG52ZXJ0e1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgfVxufVxuXG4ubnZlcnR7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG59XG5cbi5udmVydCAubnVtX252ZXJ0e1xuICB3aWR0aDogNjAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGNvbG9yOiAjNjY5OTMzO1xuICBmb250LXNpemU6IDE4cHg7XG4gIHBhZGRpbmctbGVmdDogNXB4O1xufVxuLm52ZXJ0IC50eHRfbnZlcnR7XG4gIHBhZGRpbmc6IDdweDtcbiAgd2lkdGg6IDQwJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY5OTMzO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCl7XG4gIC5udmVydCAubnVtX252ZXJ0e1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIH1cblxuICAubnZlcnQgLnR4dF9udmVydHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTIwcHgpe1xuICAubnZlcnQgLm51bV9udmVydHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiA1cHg7XG4gIH1cblxuICAubnZlcnQgLnR4dF9udmVydHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiA3cHg7XG4gIH1cbn1cblxuLm5fdmVydHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAyMHB4IDAgMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLm5fdmVydCBoMyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICMwMDQwNWI7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgZm9udC1mYW1pbHk6ICdWb2xrc3dhZ2VuIEhlYWQnO1xuICBmb250LXdlaWdodDogMTAwO1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbn1cbiIsIi5wYWdlLWluZGV4IHtcbiAgc2VjdGlvbi5jb20ge1xuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICB9XG4gICAgcC5pbnRyb19jb20ge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgfVxuICBzZWN0aW9uLmZvcm0gbGFiZWwub3B0dGV4dCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG4gIHNlY3Rpb24uZm9ybSBsYWJlbC5vcHR0ZXh0IC5yYWRpby13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMjAlO1xuICB9XG4gIHNlY3Rpb24uZm9ybSBsYWJlbC5vcHR0ZXh0IC5yYWRpby10eHQge1xuICAgIHdpZHRoOiBjYWxjKDgwJSAtIDMwcHgpO1xuICB9XG4gIHNlY3Rpb24uZm9ybSBwIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cbn1cbiIsIi8qKlxuICogUGFnZSBHcm91cHM6IExvZ2luXG4gKi9cbi5wYWdlLWdyb3Vwcy0tbG9naW4ge1xuICBwYWRkaW5nOiAyNnB4IDIwcHggMCAyMHB4O1xuXG4gIC5pbnRybyB7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1ncm91cHMtbG9naW4ge1xuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtdnctaGVhZDtcbiAgICAgIH1cblxuICAgICAgLmNvbnRyb2wtZm9ybSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWJvcmRlci1ncmV5O1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5mb3JtLXN1Ym1pdCB7XG4gICAgICBpbnB1dCB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdnctYnVyZ3VuZHk7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLyoqXG4gKiBQYWdlIEdyb3VwczogRGFzaGJvYXJkXG4gKi9cbi5wYWdlLWdyb3Vwcy0tZGFzaGJvYXJkIHtcbiAgY29sb3I6ICRjb2xvci12dy1ibHVlO1xuXG4gIC50ZXh0LWhlbHBlciB7XG4gICAgY29sb3I6ICM1OTU5NTk7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICB9XG5cbiAgc2VsZWN0LmZvcm0tY29udHJvbCArIC5jaG9zZW4tY29udGFpbmVyLW11bHRpIC5jaG9zZW4tY2hvaWNlcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbiAgICBjb2xvcjogIzAwNDA1YjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBwYWRkaW5nOiA0cHggMTBweDtcbiAgfVxuICAuY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLWNob2ljZXMgbGkuc2VhcmNoLWZpZWxkIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICBjb2xvcjogIzAwNDA1YjtcbiAgICBmb250LWZhbWlseTogJGZvbnQtdnctaGVhZDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICBzZWxlY3QuZm9ybS1jb250cm9sICsgLmNob3Nlbi1jb250YWluZXItbXVsdGkgLmNob3Nlbi1jaG9pY2VzIGxpLnNlYXJjaC1maWVsZCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgc2VsZWN0LmZvcm0tY29udHJvbCArIC5jaG9zZW4tY29udGFpbmVyIC5jaG9zZW4tcmVzdWx0cyBsaS5ncm91cC1yZXN1bHQge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBhZGRpbmc6IDNweCAxNXB4O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuICB9XG5cbiAgLmdyb3Vwcy1pbmZvcyB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMjVlbTtcbiAgICBjb2xvcjogJGNvbG9yLXZ3LWJsdWU7XG4gIH1cblxuICAuYmxvY2std2hpdGUge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gIH1cblxuICAuYmxvY2stZG93bmxvYWQge1xuICAgIHNlbGVjdFtuYW1lPVwiYnJhbmRcIl0sXG4gICAgYnV0dG9uW25hbWU9XCJkb3dubG9hZC1zZWxlY3Rpb25cIl0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG4gICAgc2VsZWN0W25hbWU9XCJlbmdpbmVcIl0ge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG4gIH1cblxuICAuZmlsdGVyZWQtdmVoaWNsZXMtY291bnRlciB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gIH1cblxuICAuZ3JvdXBzLWluZm9zLS1icmFuZCB7XG4gICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIC8vIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAvLyBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICB3aWR0aDogMjAlO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgIH1cbiAgfVxuXG4gIC5uZXdzIHtcbiAgICAubmV3cy1uZXdzIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ib3JkZXItZ3JleTtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICAubmV3cy1uZXdzLS1oZWFkZXItbmV3cyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmN2Y5ZmEgdXJsKC9hc3NldHMvaW1hZ2VzL2lfY2FsZW5kYXIucG5nKSBuby1yZXBlYXQgMTNweCBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItYm9yZGVyLWdyZXk7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgY29sb3I6ICM3NTc1NzU7XG4gICAgICAgIHBhZGRpbmc6IDhweCAyMHB4IDhweCA0MHB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLm5ld3MtbmV3cy0taGVhZGVyLWNvbGxhcHNlZC1idG4ge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDNweDtcbiAgICAgICAgICByaWdodDogOHB4O1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ViZjBmMjtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgY29sb3I6ICM2NDY0NjQ7XG4gICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLm5ld3MtbmV3cy0taGVhZGVyLWV4cGFuZGVkLWJ0biB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDNweDtcbiAgICAgICAgICByaWdodDogOHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYmYwZjI7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIGNvbG9yOiAjNjQ2NDY0O1xuICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICB9XG4gICAgICAgICYuY29sbGFwc2VkIHtcbiAgICAgICAgICAubmV3cy1uZXdzLS1oZWFkZXItZXhwYW5kZWQtYnRuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5uZXdzLW5ld3MtLWhlYWRlci1jb2xsYXBzZWQtYnRuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgICAgJi5jb2xsYXBzZWQtbm8taWNvbiB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZiB1cmwoL2Fzc2V0cy9pbWFnZXMvaV9kb3dubG9hZC5wbmcpIG5vLXJlcGVhdCA5cHggY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm5ld3MtbmV3cy0taGVhZGVyLWRvY3Mge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmIHVybCgvYXNzZXRzL2ltYWdlcy9pX2Rvd25sb2FkLnBuZykgbm8tcmVwZWF0IDlweCBjZW50ZXI7XG4gICAgICAgICYuY29sbGFwc2VkLW5vLWljb24ge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG5cbiAgICAgICAgfVxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLWJvcmRlci1ncmV5O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGNvbG9yOiAjNzU3NTc1O1xuICAgICAgICBwYWRkaW5nOiA4cHggNDBweCA4cHggNDBweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC5uZXdzLW5ld3MtLWhlYWRlci1jb2xsYXBzZWQtYnRuIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA5JTtcbiAgICAgICAgICByaWdodDogOHB4O1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ViZjBmMjtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgY29sb3I6ICM2NDY0NjQ7XG4gICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLm5ld3MtbmV3cy0taGVhZGVyLWV4cGFuZGVkLWJ0biB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDklO1xuICAgICAgICAgIHJpZ2h0OiA4cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ViZjBmMjtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgY29sb3I6ICM2NDY0NjQ7XG4gICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgIH1cbiAgICAgICAgJi5jb2xsYXBzZWQge1xuICAgICAgICAgIC5uZXdzLW5ld3MtLWhlYWRlci1leHBhbmRlZC1idG4ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLm5ld3MtbmV3cy0taGVhZGVyLWNvbGxhcHNlZC1idG4ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLmNvbGxhcHNlZC1uby1pY29uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmYgdXJsKC9hc3NldHMvaW1hZ2VzL2lfZG93bmxvYWQucG5nKSBuby1yZXBlYXQgOXB4IGNlbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5uZXdzLW5ld3MtLWNvbnRlbnQge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXZ3LWJsdWU7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICB9XG4gICAgICAubmV3cy1uZXdzLS10ZXh0IHtcbiAgICAgICAgY29sb3I6ICRjb2xvci12dy1ibHVlO1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTBweDtcbiAgICAgICAgLm5ld3MtbmV3cy0tZG93bmxvYWQtbGluayB7XG4gICAgICAgICAgYSwgYTpsaW5rLCBhOnZpc2l0ZWQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogOTUlO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwcHg7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci12dy1ibHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmljb24tbGluayB7XG4gICAgICAgICAgLm5ld3MtbmV3cy0tZG93bmxvYWQtbGluayB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZiB1cmwoL2Fzc2V0cy9pbWFnZXMvaV9kb3dubG9hZC5wbmcpIG5vLXJlcGVhdCAwcHggY2VudGVyO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubmV3cy1uZXdzLS1kZXNjcmlwdGlvbiB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItdnctYmx1ZTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgIH1cbiAgICAgIC5uZXdzLW5ld3MtLWxpbmsge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweCAxMHB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3ItdnctYnVyZ3VuZHk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBsYWJlbC5sYWJlbC1taW5pIHtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG5cbiAgLmdyb3Vwcy1kYXNoYm9hcmQtLWZvcm0tdmluIHtcbiAgICBsYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgfVxuICAgIC5hdXRvY29tcGxldGUtdmluLXJlc3VsdHMge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgdGFibGUge1xuICAgICAgICBtaW4td2lkdGg6IDE2MDBweDtcbiAgICAgIH1cblxuICAgICAgdGhlYWQge1xuICAgICAgICB0ZCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIGNvbG9yOiAkY29sb3ItdnctYmx1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGJvZHkge1xuICAgICAgICB0ZCB7XG4gICAgICAgICAgY29sb3I6ICM3NTc1NzU7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIG1pbi13aWR0aDogMTAwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaGVscC10ZXh0IHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgYmFja2dyb3VuZDogdXJsKC9hc3NldHMvaW1hZ2VzL2lfaW5mb19ibHVlLnBuZykgbm8tcmVwZWF0IDAgMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQ2cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWluLWhlaWdodDogMjVweDtcbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XG4gICAgY29sb3I6ICRjb2xvci12dy1ibHVlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ib3JkZXItZ3JleTtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgcGFkZGluZzogNnB4IDEwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuXG5cblxufVxuIl0sIm1hcHBpbmdzIjoiQUNBQTs7OztHQUlHO0FpQ0pILDRFQUE0RTtBQVE1RSxJQUFJLENBQUM7RUFDSCxXQUFXLEVBQUUsVUFBVztFQUN4QixvQkFBb0IsRUFBRSxJQUFLO0VBQzNCLHdCQUF3QixFQUFFLElBQUs7Q0FDaEM7O0FBTUQsSUFBSSxDQUFDO0VBQ0gsTUFBTSxFQUFFLENBQUU7Q0FDWDs7QUFZRCxPQUFPO0FBQ1AsS0FBSztBQUNMLE9BQU87QUFDUCxVQUFVO0FBQ1YsTUFBTTtBQUNOLE1BQU07QUFDTixNQUFNO0FBQ04sTUFBTTtBQUNOLElBQUk7QUFDSixJQUFJO0FBQ0osR0FBRztBQUNILE9BQU87QUFDUCxPQUFPLENBQUM7RUFDTixPQUFPLEVBQUUsS0FBTTtDQUNoQjs7QUFPRCxLQUFLO0FBQ0wsTUFBTTtBQUNOLFFBQVE7QUFDUixLQUFLLENBQUM7RUFDSixPQUFPLEVBQUUsWUFBYTtFQUN0QixjQUFjLEVBQUUsUUFBUztDQUMxQjs7QUFPRCxLQUFLLEFBQUEsSUFBSyxFQUFBLEFBQUEsUUFBQyxBQUFBLEdBQVc7RUFDcEIsT0FBTyxFQUFFLElBQUs7RUFDZCxNQUFNLEVBQUUsQ0FBRTtDQUNYOztDQU9ELEFBQUEsTUFBQyxBQUFBO0FBQ0QsUUFBUSxDQUFDO0VBQ1AsT0FBTyxF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QixVQUFVLEVBQUUsR0FBSTtFQUVoQixZQUFZLEVBQUcsSUFBSTtFQUNuQixhQUFhLEVBQUUsSUFBSztDQUNyQjs7QUFTRCxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsQ0FBckk7RUFDRSxLQUFLLEVBQUUsSUFBSztDQUNiOztBQU1DLFNBQVMsQ0FBVDtFQUNFLEtBQUssRUFBRSxRQUFVO0NBQ2xCOztBQUZELFNBQVMsQ0FBVDtFQUNFLEtBQUssRUFBRSxTQUFVO0NBQ2xCOztBQUZELFNBQVMsQ0FBVDtFQUNFLEtBQUssRUFBRSxHQUFVO0NBQ2xCOztBQUZELFNBQVMsQ0FBVDtFQUNFLEtBQUssRUFBRSxTQUFVO0NBQ2xCOztBQUZELFNBQVMsQ0FBVDtFQUNFLEtBQUssRUFBRSxTQUFVO0NBQ2xCOztBQUZELFNBQVMsQ0FBVDtFQUNFLEtBQUssRUFBRSxHQUFVO0NBQ2xCOztBQUZELFNBQVMsQ0FBVDtFQUNFLEtBQUssRUFBRSxTQUFVO0NBQ2xCOztBQUZELFNBQVMsQ0FBVDtFQUNFLEtBQUssRUFBRSxTQUFVO0NBQ2xCOztBQUZELFNBQVMsQ0FBVDtFQUNFLEtBQUssRUFBRSxHQUFVO0NBQ2xCOztBQUZELFVBQVUsQ0FBVjtFQUNFLEtBQUssRUFBRSxTQUFVO0NBQ2xCOztBQUZELFVBQVUsQ0FBVjtFQUNFLEtBQUssRUFBRSxTQUFVO0NBQ2xCOztBQUZELFVBQVUsQ0FBVjtFQUNFLEtBQUssRUFBRSxJQUFVO0NBQ2xCOztBQWtCRCxjQUFjLENBQWQ7RUFDRSxLQUFLLEVBQUUsSUFBSztDQUNiOztBQVBELGNBQWMsQ0FBZDtFQUNFLEtBQUssRUFBRSxRQUFVO0NBQ2xCOztBQUZELGNBQWMsQ0FBZDtFQUNFLEtBQUssRUFBRSxTQUFVO0NBQ2xCOztBQUZELGNBQWMsQ0FBZDtFQUNFLEtBQUssRUFBRSxHQUFVO0NBQ2xCOztBQUZELGNBQWMsQ0FBZDtFQUNFLEtBQUssRUFBRSxTQUFVO0NBQ2xCOztBQUZELGNBQWMsQ0FBZDtFQUNFLEtBQUssRUFBRSxTQUFVO0NBQ2xCOztBQUZELGNBQWMsQ0FBZDtFQUNFLEtBQUssRUFBRSxHQUFVO0NBQ2xCOztBQUZELGNBQWMsQ0FBZDtFQUNFLEtBQUssRUFBRSxTQUFVO0NBQ2xCOztBQUZELGNBQWMsQ0FBZDtFQUNFLEtBQUssRUFBRSxTQUFVO0NBQ2xCOztBQUZELGNBQWMsQ0FBZDtFQUNFLEtBQUssRUFBRSxHQUFVO0NBQ2xCOztBQUZELGVBQWUsQ0FBZjtFQUNFLEtBQUssRUFBRSxTQUFVO0NBQ2xCOztBQUZELGVBQWUsQ0FBZjtFQUNFLEtBQUssRUFBRSxTQUFVO0NBQ2xCOztBQUZELGVBQWUsQ0FBZjtFQUNFLEtBQUssRUFBRSxJQUFVO0NBQ2xCOztBQVBELGNBQWMsQ0FBZDtFQUNFLElBQUksRUFBRSxJQUFLO0NBQ1o7O0FBUEQsY0FBYyxDQUFkO0VBQ0UsSUFBSSxFQUFFLFFBQVU7Q0FDakI7O0FBRkQsY0FBYyxDQUFkO0VBQ0UsSUFBSSxFQUFFLFNBQVU7Q0FDakI7O0FBRkQsY0FBYyxDQUFkO0VBQ0UsSUFBSSxFQUFFLEdBQVU7Q0FDakI7O0FBRkQsY0FBYyxDQUFkO0VBQ0UsSUFBSSxFQUFFLFNBQVU7Q0FDakI7O0FBRkQsY0FBYyxDQUFkO0VBQ0UsSUFBSSxFQUFFLFNBQVU7Q0FDakI7O0FBRkQsY0FBYyxDQUFkO0VBQ0UsSUFBSSxFQUFFLEdBQVU7Q0FDakI7O0FBRkQsY0FBYyxDQUFkO0VBQ0UsSUFBSSxFQUFFLFNBQVU7Q0FDakI7O0FBRkQsY0FBYyxDQUFkO0VBQ0UsSUFBSSxFQUFFLFNBQVU7Q0FDakI7O0FBRkQsY0FBYyxDQUFkO0VBQ0UsSUFBSSxFQUFFLEdBQVU7Q0FDakI7O0FBRkQsZUFBZSxDQUFmO0VBQ0UsSUFBSSxFQUFFLFNBQVU7Q0FDakI7O0FBRkQsZUFBZSxDQUFmO0VBQ0UsSUFBSSxFQUFFLFNBQVU7Q0FDakI7O0FBRkQsZUFBZSxDQUFmO0VBQ0UsSUFBSSxFQUFFLElBQVU7Q0FDakI7O0FBa0JELGdCQUFnQixDQUFoQjtFQUNFLFdBQVcsRUFBRSxFQUFVO0NBQ3hCOztBQUZELGdCQUFnQixDQUFoQjtFQUNFLFdBQVcsRUFBRSxRQUFVO0NBQ3hCOztBQUZELGdCQUFnQixDQUFoQjtFQUNFLFdBQVcsRUFBRSxTQUFVO0NBQ3hCOztBQUZELGdCQUFnQixDQUFoQjtFQUNFLFdBQVcsRUFBRSxHQUFVO0NBQ3hCOztBQUZELGdCQUFnQixDQUFoQjtFQUNFLFdBQVcsRUFBRSxTQUFVO0NBQ3hCOztBQUZELGdCQUFnQixDQUFoQjtFQUNFLFdBQVcsRUFBRSxTQUFVO0NBQ3hCOztBQUZELGdCQUFnQixDQUFoQjtFQUNFLFdBQVcsRUFBRSxHQUFVO0NBQ3hCOztBQUZELGdCQUFnQixDQUFoQjtFQUNFLFdBQVcsRUFBRSxTQUFVO0NBQ3hCOztBQUZELGdCQUFnQixDQUFoQjtFQUNFLFdBQVcsRUFBRSxTQUFVO0NBQ3hCOztBQUZELGdCQUFnQixDQUFoQjtFQUNFLFdBQVcsRUFBRSxHQUFVO0NBQ3hCOztBQUZELGlCQUFpQixDQUFqQjtFQUNFLFdBQVcsRUFBRSxTQUFVO0NBQ3hCOztBQUZELGlCQUFpQixDQUFqQjtFQUNFLFdBQVcsRUFBRSxTQUFVO0NBQ3hCOztBQUZELGlCQUFpQixDQUFqQjtFQUNFLFdBQVcsRUFBRSxJQUFVO0NBQ3hCOztBT0VMLE1BQU0sRUFBTCxTQUFTLEVBQUUsS0FBSztFUHJDZixTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsQ0FBckk7SUFDRSxLQUFLLEVBQUUsSUFBSztHQUNiO0VBTUMsU0FBUyxDQUFUO0lBQ0UsS0FBSyxFQUFFLFFBQVU7R0FDbEI7RUFGRCxTQUFTLENBQVQ7SUFDRSxLQUFLLEVBQUUsU0FBVTtHQUNsQjtFQUZELFNBQVMsQ0FBVDtJQUNFLEtBQUssRUFBRSxHQUFVO0dBQ2xCO0VBRkQsU0FBUyxDQUFUO0lBQ0UsS0FBSyxFQUFFLFNBQVU7R0FDbEI7RUFGRCxTQUFTLENBQVQ7SUFDRSxLQUFLLEVBQUUsU0FBVTtHQUNsQjtFQUZELFNBQVMsQ0FBVDtJQUNFLEtBQUssRUFBRSxHQUFVO0dBQ2xCO0VBRkQsU0FBUyxDQUFUO0lBQ0UsS0FBSyxFQUFFLFNBQVU7R0FDbEI7RUFGRCxTQUFTLENBQVQ7SUFDRSxLQUFLLEVBQUUsU0FBVTtHQUNsQjtFQUZELFNBQVMsQ0FBVDtJQUNFLEtBQUssRUFBRSxHQUFVO0dBQ2xCO0VBRkQsVUFBVSxDQUFWO0lBQ0UsS0FBSyxFQUFFLFNBQVU7R0FDbEI7RUFGRCxVQUFVLENBQVY7SUFDRSxLQUFLLEVBQUUsU0FBVTtHQUNsQjtFQUZELFVBQVUsQ0FBVjtJQUNFLEtBQUssRUFBRSxJQUFVO0dBQ2xCO0VBa0JELGNBQWMsQ0FBZDtJQUNFLEtBQUssRUFBRSxJQUFLO0dBQ2I7RUFQRCxjQUFjLENBQWQ7SUFDRSxLQUFLLEVBQUUsUUFBVTtHQUNsQjtFQUZELGNBQWMsQ0FBZDtJQUNFLEtBQUssRUFBRSxTQUFVO0dBQ2xCO0VBRkQsY0FBYyxDQUFkO0lBQ0UsS0FBSyxFQUFFLEdBQVU7R0FDbEI7RUFGRCxjQUFjLENBQWQ7SUFDRSxLQUFLLEVBQUUsU0FBVTtHQUNsQjtFQUZELGNBQWMsQ0FBZDtJQUNFLEtBQUssRUFBRSxTQUFVO0dBQ2xCO0VBRkQsY0FBYyxDQUFkO0lBQ0UsS0FBSyxFQUFFLEdBQVU7R0FDbEI7RUFGRCxjQUFjLENBQWQ7SUFDRSxLQUFLLEVBQUUsU0FBVTtHQUNsQjtFQUZELGNBQWMsQ0FBZDtJQUNFLEtBQUssRUFBRSxTQUFVO0dBQ2xCO0VBRkQsY0FBYyxDQUFkO0lBQ0UsS0FBSyxFQUFFLEdBQVU7R0FDbEI7RUFGRCxlQUFlLENBQWY7SUFDRSxLQUFLLEVBQUUsU0FBVTtHQUNsQjtFQUZELGVBQWUsQ0FBZjtJQUNFLEtBQUssRUFBRSxTQUFVO0dBQ2xCO0VBRkQsZUFBZSxDQUFmO0lBQ0UsS0FBSyxFQUFFLElBQVU7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LElBQUs7R0FDYjtFQU1DLFNBQVMsQ0FBVDtJQUNFLEtBQUssRUFBRSxRQUFVO0dBQ2xCO0VBRkQsU0FBUyxDQUFUO0lBQ0UsS0FBSyxFQUFFLFNBQVU7R0FDbEI7RUFGRCxTQUFTLENBQVQ7SUFDRSxLQUFLLEVBQUUsR0FBVTtHQUNsQjtFQUZELFNBQVMsQ0FBVDtJQUNFLEtBQUssRUFBRSxTQUFVO0dBQ2xCO0VBRkQsU0FBUyxDQUFUO0lBQ0UsS0FBSyxFQUFFLFNBQVU7R0FDbEI7RUFGRCxTQUFTLENBQVQ7SUFDRSxLQUFLLEVBQUUsR0FBVTtHQUNsQjtFQUZELFNBQVMsQ0FBVDtJQUNFLEtBQUssRUFBRSxTQUFVO0dBQ2xCO0VBRkQsU0FBUyxDQUFUO0lBQ0UsS0FBSyxFQUFFLFNBQVU7R0FDbEI7RUFGRCxTQUFTLENBQVQ7SUFDRSxLQUFLLEVBQUUsR0FBVTtHQUNsQjtFQUZELFVBQVUsQ0FBVjtJQUNFLEtBQUssRUFBRSxTQUFVO0dBQ2xCO0VBRkQsVUFBVSxDQUFWO0lBQ0UsS0FBSyxFQUFFLFNBQVU7R0FDbEI7RUFGRCxVQUFVLENBQVY7SUFDRSxLQUFLLEVBQUUsSUFBVTtHQUNsQjtFQWtCRCxjQUFjLENBQWQ7SUFDRSxLQUFLLEVBQUUsSUFBSztHQUNiO0VBUEQsY0FBYyxDQUFkO0lBQ0UsS0FBSyxFQUFFLFFBQVU7R0FDbEI7RUFGRCxjQUFjLENBQWQ7SUFDRSxLQUFLLEVBQUUsU0FBVTtHQUNsQjtFQUZELGNBQWMsQ0FBZDtJQUNFLEtBQUssRUFBRSxHQUFVO0dBQ2xCO0VBRkQsY0FBYyxDQUFkO0lBQ0UsS0FBSyxFQUFFLFNBQVU7R0FDbEI7RUFGRCxjQUFjLENBQWQ7SUFDRSxLQUFLLEVBQUUsU0FBVTtHQUNsQjtFQUZELGNBQWMsQ0FBZDtJQUNFLEtBQUssRUFBRSxHQUFVO0dBQ2xCO0VBRkQsY0FBYyxDQUFkO0lBQ0UsS0FBSyxFQUFFLFNBQVU7R0FDbEI7RUFGRCxjQUFjLENBQWQ7SUFDRSxLQUFLLEVBQUUsU0FBVTtHQUNsQjtFQUZELGNBQWMsQ0FBZDtJQUNFLEtBQUssRUFB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QXVCLENBQUM7RUFDdEIsS0FBSyxFdEU1Uk8sT0FBTztFc0U2Um5CLFNBQVMsRUFBRSxJQUFLO0VBQ2hCLFdBQVcsRUFBRSxNQUFPO0VBQ3BCLE9BQU8sRUFBRSxJQUFLO0VBQ2QsV0FBVyxFQUFFLElBQUs7Q0FDbkI7O0FBMU9QLHVCQUF1QixDQXdGckIsS0FBSyxDQUNILFVBQVUsQ0FrSlIsZ0JBQWdCLENBQUM7RUFDZixTQUFTLEVBQUUsSUFBSztFQUNoQixPQUFPLEVBQUUsV0FBWTtDQUt0Qjs7QUFsUFAsdUJBQXVCLENBd0ZyQixLQUFLLENBQ0gsVUFBVSxDQWtKUixnQkFBZ0IsQ0FJZCxDQUFDLENBQUM7RUFDQSxLQUFLLEV0RXRTSyxPQUFPO0NzRXVTbEI7O0FBalBULHVCQUF1QixDQXNQckIsS0FBSyxBQUFBLFdBQVcsQ0FBQztFQUNmLGFBQWEsRUFBRSxHQUFJO0VBQ25CLFNBQVMsRUFBRSxJQUFLO0NBQ2pCOztBQXpQSCx1QkFBdUIsQ0EyUHJCLDJCQUEyQixDQUN6QixLQUFLLENBQUM7RUFDSixhQUFhLEVBQUUsR0FBSTtFQUNuQixTQUFTLEVBQUUsSUFBSztDQUNqQjs7QUEvUEwsdUJBQXVCLENBMlByQiwyQkFBMkIsQ0FLekIseUJBQXlCLENBQUM7RUFDeEIsT0FBTyxFQUFFLElBQUs7Q0FtQmY7O0FBcFJMLHVCQUF1QixDQTJQckIsMkJBQTJCLENBS3pCLHlCQUF5QixDQUd2QixLQUFLLENBQUM7RUFDSixTQUFTLEVBQUUsTUFBTztDQUNuQjs7QUFyUVAsdUJBQXVCLENBMlByQiwyQkFBMkIsQ0FLekIseUJBQXlCLENBT3ZCLEtBQUssQ0FDSCxFQUFFLENBQUM7RUFDRCxTQUFTLEVBQUUsSUFBSztFQUNoQixLQUFLLEV0RWpVSyxPQUFPO0NzRWtVbEI7O0FBM1FULHVCQUF1QixDQTJQckIsMkJBQTJCLENBS3pCLHlCQUF5QixDQWF2QixLQUFLLENBQ0gsRUFBRSxDQUFDO0VBQ0QsS0FBSyxFQUFFLE9BQVE7RUFDZixTQUFTLEVBQUUsSUFBSztFQUNoQixTQUFTLEVBQUUsS0FBTTtDQUNsQjs7QUFsUlQsdUJBQXVCLENBdVJyQixVQUFVLENBQUM7RUFDVCxTQUFTLEVBQUUsSUFBSztFQUNoQixNQUFNLEVBQUUsTUFBTztFQUNmLFVBQVUsRUFBb0MsbUNBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7RUFDN0QsWUFBWSxFQUFFLElBQUs7RUFDbkIsT0FBTyxFQUFFLEtBQU07RUFDZixVQUFVLEVBQUUsSUFBSztDQUNsQjs7QUE5UkgsdUJBQXVCLENBZ1NyQixhQUFhLENBQUM7RUFDWixLQUFLLEVBQUUsSUFBSztFQUNaLGdCQUFnQixFQUFFLE9BQVE7RUFDMUIsS0FBSyxFdEUxVlcsT0FBTztFc0UyVnZCLE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDdEV6VkQsT0FBTztFc0UwVnZCLFNBQVMsRUFBRSxJQUFLO0VBQ2hCLE9BQU8sRUFBRSxRQUFTO0VBQ2xCLGFBQWEsRUFBRSxDQUFFO0NBQ2xCIiwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ== */
