/**
* style.less imports all required less partials
*/
/**
* Bootstrap
*/
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
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 {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}
pre {
  overflow: auto;
}
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}
button {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}
button[disabled],
html input[disabled] {
  cursor: default;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
input {
  line-height: normal;
}
input[type="checkbox"],
input[type="radio"] {
  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;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
legend {
  border: 0;
  padding: 0;
}
textarea {
  overflow: auto;
}
optgroup {
  font-weight: bold;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
td,
th {
  padding: 0;
}
/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    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;
  }
  select {
    background: #fff !important;
  }
  .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;
  }
}
@font-face {
  font-family: 'Glyphicons Halflings';
  src: url('assets/icons/flat-ui-icons-regular.eot');
  src: url('assets/icons/flat-ui-icons-regular.eot?#iefix') format('embedded-opentype'), url('assets/icons/flat-ui-icons-regular.woff') format('woff'), url('assets/icons/flat-ui-icons-regular.ttf') format('truetype'), url('assets/icons/flat-ui-icons-regular.svg#flat-ui-icons-regular') format('svg');
}
.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: 'Glyphicons Halflings';
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.glyphicon-asterisk:before {
  content: "\2a";
}
.glyphicon-plus:before {
  content: "\2b";
}
.glyphicon-euro:before,
.glyphicon-eur:before {
  content: "\20ac";
}
.glyphicon-minus:before {
  content: "\2212";
}
.glyphicon-cloud:before {
  content: "\2601";
}
.glyphicon-envelope:before {
  content: "\2709";
}
.glyphicon-pencil:before {
  content: "\270f";
}
.glyphicon-glass:before {
  content: "\e001";
}
.glyphicon-music:before {
  content: "\e002";
}
.glyphicon-search:before {
  content: "\e003";
}
.glyphicon-heart:before {
  content: "\e005";
}
.glyphicon-star:before {
  content: "\e006";
}
.glyphicon-star-empty:before {
  content: "\e007";
}
.glyphicon-user:before {
  content: "\e008";
}
.glyphicon-film:before {
  content: "\e009";
}
.glyphicon-th-large:before {
  content: "\e010";
}
.glyphicon-th:before {
  content: "\e011";
}
.glyphicon-th-list:before {
  content: "\e012";
}
.glyphicon-ok:before {
  content: "\e013";
}
.glyphicon-remove:before {
  content: "\e014";
}
.glyphicon-zoom-in:before {
  content: "\e015";
}
.glyphicon-zoom-out:before {
  content: "\e016";
}
.glyphicon-off:before {
  content: "\e017";
}
.glyphicon-signal:before {
  content: "\e018";
}
.glyphicon-cog:before {
  content: "\e019";
}
.glyphicon-trash:before {
  content: "\e020";
}
.glyphicon-home:before {
  content: "\e021";
}
.glyphicon-file:before {
  content: "\e022";
}
.glyphicon-time:before {
  content: "\e023";
}
.glyphicon-road:before {
  content: "\e024";
}
.glyphicon-download-alt:before {
  content: "\e025";
}
.glyphicon-download:before {
  content: "\e026";
}
.glyphicon-upload:before {
  content: "\e027";
}
.glyphicon-inbox:before {
  content: "\e028";
}
.glyphicon-play-circle:before {
  content: "\e029";
}
.glyphicon-repeat:before {
  content: "\e030";
}
.glyphicon-refresh:before {
  content: "\e031";
}
.glyphicon-list-alt:before {
  content: "\e032";
}
.glyphicon-lock:before {
  content: "\e033";
}
.glyphicon-flag:before {
  content: "\e034";
}
.glyphicon-headphones:before {
  content: "\e035";
}
.glyphicon-volume-off:before {
  content: "\e036";
}
.glyphicon-volume-down:before {
  content: "\e037";
}
.glyphicon-volume-up:before {
  content: "\e038";
}
.glyphicon-qrcode:before {
  content: "\e039";
}
.glyphicon-barcode:before {
  content: "\e040";
}
.glyphicon-tag:before {
  content: "\e041";
}
.glyphicon-tags:before {
  content: "\e042";
}
.glyphicon-book:before {
  content: "\e043";
}
.glyphicon-bookmark:before {
  content: "\e044";
}
.glyphicon-print:before {
  content: "\e045";
}
.glyphicon-camera:before {
  content: "\e046";
}
.glyphicon-font:before {
  content: "\e047";
}
.glyphicon-bold:before {
  content: "\e048";
}
.glyphicon-italic:before {
  content: "\e049";
}
.glyphicon-text-height:before {
  content: "\e050";
}
.glyphicon-text-width:before {
  content: "\e051";
}
.glyphicon-align-left:before {
  content: "\e052";
}
.glyphicon-align-center:before {
  content: "\e053";
}
.glyphicon-align-right:before {
  content: "\e054";
}
.glyphicon-align-justify:before {
  content: "\e055";
}
.glyphicon-list:before {
  content: "\e056";
}
.glyphicon-indent-left:before {
  content: "\e057";
}
.glyphicon-indent-right:before {
  content: "\e058";
}
.glyphicon-facetime-video:before {
  content: "\e059";
}
.glyphicon-picture:before {
  content: "\e060";
}
.glyphicon-map-marker:before {
  content: "\e062";
}
.glyphicon-adjust:before {
  content: "\e063";
}
.glyphicon-tint:before {
  content: "\e064";
}
.glyphicon-edit:before {
  content: "\e065";
}
.glyphicon-share:before {
  content: "\e066";
}
.glyphicon-check:before {
  content: "\e067";
}
.glyphicon-move:before {
  content: "\e068";
}
.glyphicon-step-backward:before {
  content: "\e069";
}
.glyphicon-fast-backward:before {
  content: "\e070";
}
.glyphicon-backward:before {
  content: "\e071";
}
.glyphicon-play:before {
  content: "\e072";
}
.glyphicon-pause:before {
  content: "\e073";
}
.glyphicon-stop:before {
  content: "\e074";
}
.glyphicon-forward:before {
  content: "\e075";
}
.glyphicon-fast-forward:before {
  content: "\e076";
}
.glyphicon-step-forward:before {
  content: "\e077";
}
.glyphicon-eject:before {
  content: "\e078";
}
.glyphicon-chevron-left:before {
  content: "\e079";
}
.glyphicon-chevron-right:before {
  content: "\e080";
}
.glyphicon-plus-sign:before {
  content: "\e081";
}
.glyphicon-minus-sign:before {
  content: "\e082";
}
.glyphicon-remove-sign:before {
  content: "\e083";
}
.glyphicon-ok-sign:before {
  content: "\e084";
}
.glyphicon-question-sign:before {
  content: "\e085";
}
.glyphicon-info-sign:before {
  content: "\e086";
}
.glyphicon-screenshot:before {
  content: "\e087";
}
.glyphicon-remove-circle:before {
  content: "\e088";
}
.glyphicon-ok-circle:before {
  content: "\e089";
}
.glyphicon-ban-circle:before {
  content: "\e090";
}
.glyphicon-arrow-left:before {
  content: "\e091";
}
.glyphicon-arrow-right:before {
  content: "\e092";
}
.glyphicon-arrow-up:before {
  content: "\e093";
}
.glyphicon-arrow-down:before {
  content: "\e094";
}
.glyphicon-share-alt:before {
  content: "\e095";
}
.glyphicon-resize-full:before {
  content: "\e096";
}
.glyphicon-resize-small:before {
  content: "\e097";
}
.glyphicon-exclamation-sign:before {
  content: "\e101";
}
.glyphicon-gift:before {
  content: "\e102";
}
.glyphicon-leaf:before {
  content: "\e103";
}
.glyphicon-fire:before {
  content: "\e104";
}
.glyphicon-eye-open:before {
  content: "\e105";
}
.glyphicon-eye-close:before {
  content: "\e106";
}
.glyphicon-warning-sign:before {
  content: "\e107";
}
.glyphicon-plane:before {
  content: "\e108";
}
.glyphicon-calendar:before {
  content: "\e109";
}
.glyphicon-random:before {
  content: "\e110";
}
.glyphicon-comment:before {
  content: "\e111";
}
.glyphicon-magnet:before {
  content: "\e112";
}
.glyphicon-chevron-up:before {
  content: "\e113";
}
.glyphicon-chevron-down:before {
  content: "\e114";
}
.glyphicon-retweet:before {
  content: "\e115";
}
.glyphicon-shopping-cart:before {
  content: "\e116";
}
.glyphicon-folder-close:before {
  content: "\e117";
}
.glyphicon-folder-open:before {
  content: "\e118";
}
.glyphicon-resize-vertical:before {
  content: "\e119";
}
.glyphicon-resize-horizontal:before {
  content: "\e120";
}
.glyphicon-hdd:before {
  content: "\e121";
}
.glyphicon-bullhorn:before {
  content: "\e122";
}
.glyphicon-bell:before {
  content: "\e123";
}
.glyphicon-certificate:before {
  content: "\e124";
}
.glyphicon-thumbs-up:before {
  content: "\e125";
}
.glyphicon-thumbs-down:before {
  content: "\e126";
}
.glyphicon-hand-right:before {
  content: "\e127";
}
.glyphicon-hand-left:before {
  content: "\e128";
}
.glyphicon-hand-up:before {
  content: "\e129";
}
.glyphicon-hand-down:before {
  content: "\e130";
}
.glyphicon-circle-arrow-right:before {
  content: "\e131";
}
.glyphicon-circle-arrow-left:before {
  content: "\e132";
}
.glyphicon-circle-arrow-up:before {
  content: "\e133";
}
.glyphicon-circle-arrow-down:before {
  content: "\e134";
}
.glyphicon-globe:before {
  content: "\e135";
}
.glyphicon-wrench:before {
  content: "\e136";
}
.glyphicon-tasks:before {
  content: "\e137";
}
.glyphicon-filter:before {
  content: "\e138";
}
.glyphicon-briefcase:before {
  content: "\e139";
}
.glyphicon-fullscreen:before {
  content: "\e140";
}
.glyphicon-dashboard:before {
  content: "\e141";
}
.glyphicon-paperclip:before {
  content: "\e142";
}
.glyphicon-heart-empty:before {
  content: "\e143";
}
.glyphicon-link:before {
  content: "\e144";
}
.glyphicon-phone:before {
  content: "\e145";
}
.glyphicon-pushpin:before {
  content: "\e146";
}
.glyphicon-usd:before {
  content: "\e148";
}
.glyphicon-gbp:before {
  content: "\e149";
}
.glyphicon-sort:before {
  content: "\e150";
}
.glyphicon-sort-by-alphabet:before {
  content: "\e151";
}
.glyphicon-sort-by-alphabet-alt:before {
  content: "\e152";
}
.glyphicon-sort-by-order:before {
  content: "\e153";
}
.glyphicon-sort-by-order-alt:before {
  content: "\e154";
}
.glyphicon-sort-by-attributes:before {
  content: "\e155";
}
.glyphicon-sort-by-attributes-alt:before {
  content: "\e156";
}
.glyphicon-unchecked:before {
  content: "\e157";
}
.glyphicon-expand:before {
  content: "\e158";
}
.glyphicon-collapse-down:before {
  content: "\e159";
}
.glyphicon-collapse-up:before {
  content: "\e160";
}
.glyphicon-log-in:before {
  content: "\e161";
}
.glyphicon-flash:before {
  content: "\e162";
}
.glyphicon-log-out:before {
  content: "\e163";
}
.glyphicon-new-window:before {
  content: "\e164";
}
.glyphicon-record:before {
  content: "\e165";
}
.glyphicon-save:before {
  content: "\e166";
}
.glyphicon-open:before {
  content: "\e167";
}
.glyphicon-saved:before {
  content: "\e168";
}
.glyphicon-import:before {
  content: "\e169";
}
.glyphicon-export:before {
  content: "\e170";
}
.glyphicon-send:before {
  content: "\e171";
}
.glyphicon-floppy-disk:before {
  content: "\e172";
}
.glyphicon-floppy-saved:before {
  content: "\e173";
}
.glyphicon-floppy-remove:before {
  content: "\e174";
}
.glyphicon-floppy-save:before {
  content: "\e175";
}
.glyphicon-floppy-open:before {
  content: "\e176";
}
.glyphicon-credit-card:before {
  content: "\e177";
}
.glyphicon-transfer:before {
  content: "\e178";
}
.glyphicon-cutlery:before {
  content: "\e179";
}
.glyphicon-header:before {
  content: "\e180";
}
.glyphicon-compressed:before {
  content: "\e181";
}
.glyphicon-earphone:before {
  content: "\e182";
}
.glyphicon-phone-alt:before {
  content: "\e183";
}
.glyphicon-tower:before {
  content: "\e184";
}
.glyphicon-stats:before {
  content: "\e185";
}
.glyphicon-sd-video:before {
  content: "\e186";
}
.glyphicon-hd-video:before {
  content: "\e187";
}
.glyphicon-subtitles:before {
  content: "\e188";
}
.glyphicon-sound-stereo:before {
  content: "\e189";
}
.glyphicon-sound-dolby:before {
  content: "\e190";
}
.glyphicon-sound-5-1:before {
  content: "\e191";
}
.glyphicon-sound-6-1:before {
  content: "\e192";
}
.glyphicon-sound-7-1:before {
  content: "\e193";
}
.glyphicon-copyright-mark:before {
  content: "\e194";
}
.glyphicon-registration-mark:before {
  content: "\e195";
}
.glyphicon-cloud-download:before {
  content: "\e197";
}
.glyphicon-cloud-upload:before {
  content: "\e198";
}
.glyphicon-tree-conifer:before {
  content: "\e199";
}
.glyphicon-tree-deciduous:before {
  content: "\e200";
}
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  font-size: 10px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
  font-family: 'Open Sans', sans-serif;
  font-size: 16px;
  line-height: 1.72222;
  color: #595959;
  background-color: #fff;
}
input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
a {
  color: #0088DD;
  text-decoration: none;
}
a:hover,
a:focus {
  color: #d9d9d9;
  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,
.thumbnail > img,
.thumbnail a > img,
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  display: block;
  max-width: 100%;
  height: auto;
}
.img-rounded {
  border-radius: 6px;
}
.img-thumbnail {
  padding: 4px;
  line-height: 1.72222;
  background-color: #fff;
  border: 1px solid #bdc3c7;
  border-radius: 6px;
  -o-transition: all 0.2s ease-in-out;
  -webkit-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: 27px;
  margin-bottom: 27px;
  border: 0;
  border-top: 1px solid #8e7bb1;
}
.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;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: "Open Sans", sans-serif;
  font-weight: 700;
  line-height: 1.3;
  color: inherit;
}
h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small,
.h1 small,
.h2 small,
.h3 small,
.h4 small,
.h5 small,
.h6 small,
h1 .small,
h2 .small,
h3 .small,
h4 .small,
h5 .small,
h6 .small,
.h1 .small,
.h2 .small,
.h3 .small,
.h4 .small,
.h5 .small,
.h6 .small {
  font-weight: normal;
  line-height: 1;
  color: #e9e6f0;
}
h1,
.h1,
h2,
.h2,
h3,
.h3 {
  margin-top: 27px;
  margin-bottom: 13.5px;
}
h1 small,
.h1 small,
h2 small,
.h2 small,
h3 small,
.h3 small,
h1 .small,
.h1 .small,
h2 .small,
.h2 .small,
h3 .small,
.h3 .small {
  font-size: 65%;
}
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  margin-top: 13.5px;
  margin-bottom: 13.5px;
}
h4 small,
.h4 small,
h5 small,
.h5 small,
h6 small,
.h6 small,
h4 .small,
.h4 .small,
h5 .small,
.h5 .small,
h6 .small,
.h6 .small {
  font-size: 75%;
}
h1,
.h1 {
  font-size: 36px;
}
h2,
.h2 {
  font-size: 29px;
}
h3,
.h3 {
  font-size: 23px;
}
h4,
.h4 {
  font-size: 20px;
}
h5,
.h5 {
  font-size: 17px;
}
h6,
.h6 {
  font-size: 18px;
}
p {
  margin: 0 0 13.5px;
}
.lead {
  margin-bottom: 27px;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .lead {
    font-size: 24px;
  }
}
small,
.small {
  font-size: 87%;
}
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 {
  text-transform: uppercase;
}
.text-capitalize {
  text-transform: capitalize;
}
.text-muted {
  color: #bdc3c7;
}
.text-primary {
  color: #4b2e83;
}
a.text-primary:hover {
  color: #35215d;
}
a.text-primary:hover {
  color: #3c2569;
}
.text-success {
  color: #2ecc71;
}
a.text-success:hover {
  color: #25a25a;
}
a.text-success:hover {
  color: #25a35a;
}
.text-info {
  color: #3498db;
}
a.text-info:hover {
  color: #217dbb;
}
a.text-info:hover {
  color: #2a7aaf;
}
.text-warning {
  color: #f1c40f;
}
a.text-warning:hover {
  color: #c29d0b;
}
a.text-warning:hover {
  color: #c19d0c;
}
.text-danger {
  color: #e74c3c;
}
a.text-danger:hover {
  color: #d62c1a;
}
a.text-danger:hover {
  color: #b93d30;
}
.bg-primary {
  color: #fff;
  background-color: #4b2e83;
}
a.bg-primary:hover {
  background-color: #35215d;
}
a.bg-primary:hover {
  background-color: #35215d;
}
.bg-success {
  background-color: #dff0d8;
}
a.bg-success:hover {
  background-color: #c1e2b3;
}
a.bg-success:hover {
  background-color: #c1e2b3;
}
.bg-info {
  background-color: #d9edf7;
}
a.bg-info:hover {
  background-color: #afd9ee;
}
a.bg-info:hover {
  background-color: #afd9ee;
}
.bg-warning {
  background-color: #fcf8e3;
}
a.bg-warning:hover {
  background-color: #f7ecb5;
}
a.bg-warning:hover {
  background-color: #f7ecb5;
}
.bg-danger {
  background-color: #f2dede;
}
a.bg-danger:hover {
  background-color: #e4b9b9;
}
a.bg-danger:hover {
  background-color: #e4b9b9;
}
.page-header {
  padding-bottom: 12.5px;
  margin: 54px 0 27px;
  border-bottom: 1px solid #e9e6f0;
}
ul,
ol {
  margin-top: 0;
  margin-bottom: 13.5px;
}
ul ul,
ol ul,
ul ol,
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: 27px;
}
dt,
dd {
  line-height: 1.72222;
}
dt {
  font-weight: bold;
}
dd {
  margin-left: 0;
}
@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 #bdc3c7;
}
.initialism {
  font-size: 90%;
  text-transform: uppercase;
}
blockquote {
  padding: 13.5px 27px;
  margin: 0 0 27px;
  font-size: 20px;
  border-left: 5px solid #e9e6f0;
}
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.72222;
  color: inherit;
}
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 #e9e6f0;
  border-left: 0;
  text-align: right;
}
.blockquote-reverse footer:before,
blockquote.pull-right footer:before,
.blockquote-reverse small:before,
blockquote.pull-right small:before,
.blockquote-reverse .small:before,
blockquote.pull-right .small:before {
  content: '';
}
.blockquote-reverse footer:after,
blockquote.pull-right footer:after,
.blockquote-reverse small:after,
blockquote.pull-right small:after,
.blockquote-reverse .small:after,
blockquote.pull-right .small:after {
  content: '\00A0 \2014';
}
address {
  margin-bottom: 27px;
  font-style: normal;
  line-height: 1.72222;
}
code,
kbd,
pre,
samp {
  font-family: Monaco, Menlo, 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: white;
  background-color: #4b2e83;
  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: 13px;
  margin: 0 0 13.5px;
  font-size: 15px;
  line-height: 1.72222;
  word-break: break-all;
  word-wrap: break-word;
  color: inherit;
  background-color: white;
  border: 1px solid #e9e6f0;
  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;
}
.container:before,
.container:after {
  content: " ";
  display: table;
}
.container:after {
  clear: both;
}
.container:before,
.container:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
.container:after {
  clear: both;
}
.container:before,
.container:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
.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;
}
.container-fluid:before,
.container-fluid:after {
  content: " ";
  display: table;
}
.container-fluid:after {
  clear: both;
}
.container-fluid:before,
.container-fluid:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
.container-fluid:after {
  clear: both;
}
.container-fluid:before,
.container-fluid:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
.container-fluid:after {
  clear: both;
}
.row {
  margin-left: -15px;
  margin-right: -15px;
}
.row:before,
.row:after {
  content: " ";
  display: table;
}
.row:after {
  clear: both;
}
.row:before,
.row:after {
  content: " ";
  display: table;
}
.row:after {
  clear: both;
}
.row:before,
.row:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
.row:after {
  clear: both;
}
.row:before,
.row:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
.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-12 {
  width: 100%;
}
.col-xs-11 {
  width: 91.66666667%;
}
.col-xs-10 {
  width: 83.33333333%;
}
.col-xs-9 {
  width: 75%;
}
.col-xs-8 {
  width: 66.66666667%;
}
.col-xs-7 {
  width: 58.33333333%;
}
.col-xs-6 {
  width: 50%;
}
.col-xs-5 {
  width: 41.66666667%;
}
.col-xs-4 {
  width: 33.33333333%;
}
.col-xs-3 {
  width: 25%;
}
.col-xs-2 {
  width: 16.66666667%;
}
.col-xs-1 {
  width: 8.33333333%;
}
.col-xs-pull-12 {
  right: 100%;
}
.col-xs-pull-11 {
  right: 91.66666667%;
}
.col-xs-pull-10 {
  right: 83.33333333%;
}
.col-xs-pull-9 {
  right: 75%;
}
.col-xs-pull-8 {
  right: 66.66666667%;
}
.col-xs-pull-7 {
  right: 58.33333333%;
}
.col-xs-pull-6 {
  right: 50%;
}
.col-xs-pull-5 {
  right: 41.66666667%;
}
.col-xs-pull-4 {
  right: 33.33333333%;
}
.col-xs-pull-3 {
  right: 25%;
}
.col-xs-pull-2 {
  right: 16.66666667%;
}
.col-xs-pull-1 {
  right: 8.33333333%;
}
.col-xs-pull-0 {
  right: auto;
}
.col-xs-push-12 {
  left: 100%;
}
.col-xs-push-11 {
  left: 91.66666667%;
}
.col-xs-push-10 {
  left: 83.33333333%;
}
.col-xs-push-9 {
  left: 75%;
}
.col-xs-push-8 {
  left: 66.66666667%;
}
.col-xs-push-7 {
  left: 58.33333333%;
}
.col-xs-push-6 {
  left: 50%;
}
.col-xs-push-5 {
  left: 41.66666667%;
}
.col-xs-push-4 {
  left: 33.33333333%;
}
.col-xs-push-3 {
  left: 25%;
}
.col-xs-push-2 {
  left: 16.66666667%;
}
.col-xs-push-1 {
  left: 8.33333333%;
}
.col-xs-push-0 {
  left: auto;
}
.col-xs-offset-12 {
  margin-left: 100%;
}
.col-xs-offset-11 {
  margin-left: 91.66666667%;
}
.col-xs-offset-10 {
  margin-left: 83.33333333%;
}
.col-xs-offset-9 {
  margin-left: 75%;
}
.col-xs-offset-8 {
  margin-left: 66.66666667%;
}
.col-xs-offset-7 {
  margin-left: 58.33333333%;
}
.col-xs-offset-6 {
  margin-left: 50%;
}
.col-xs-offset-5 {
  margin-left: 41.66666667%;
}
.col-xs-offset-4 {
  margin-left: 33.33333333%;
}
.col-xs-offset-3 {
  margin-left: 25%;
}
.col-xs-offset-2 {
  margin-left: 16.66666667%;
}
.col-xs-offset-1 {
  margin-left: 8.33333333%;
}
.col-xs-offset-0 {
  margin-left: 0%;
}
@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-12 {
    width: 100%;
  }
  .col-sm-11 {
    width: 91.66666667%;
  }
  .col-sm-10 {
    width: 83.33333333%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-8 {
    width: 66.66666667%;
  }
  .col-sm-7 {
    width: 58.33333333%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-5 {
    width: 41.66666667%;
  }
  .col-sm-4 {
    width: 33.33333333%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-2 {
    width: 16.66666667%;
  }
  .col-sm-1 {
    width: 8.33333333%;
  }
  .col-sm-pull-12 {
    right: 100%;
  }
  .col-sm-pull-11 {
    right: 91.66666667%;
  }
  .col-sm-pull-10 {
    right: 83.33333333%;
  }
  .col-sm-pull-9 {
    right: 75%;
  }
  .col-sm-pull-8 {
    right: 66.66666667%;
  }
  .col-sm-pull-7 {
    right: 58.33333333%;
  }
  .col-sm-pull-6 {
    right: 50%;
  }
  .col-sm-pull-5 {
    right: 41.66666667%;
  }
  .col-sm-pull-4 {
    right: 33.33333333%;
  }
  .col-sm-pull-3 {
    right: 25%;
  }
  .col-sm-pull-2 {
    right: 16.66666667%;
  }
  .col-sm-pull-1 {
    right: 8.33333333%;
  }
  .col-sm-pull-0 {
    right: auto;
  }
  .col-sm-push-12 {
    left: 100%;
  }
  .col-sm-push-11 {
    left: 91.66666667%;
  }
  .col-sm-push-10 {
    left: 83.33333333%;
  }
  .col-sm-push-9 {
    left: 75%;
  }
  .col-sm-push-8 {
    left: 66.66666667%;
  }
  .col-sm-push-7 {
    left: 58.33333333%;
  }
  .col-sm-push-6 {
    left: 50%;
  }
  .col-sm-push-5 {
    left: 41.66666667%;
  }
  .col-sm-push-4 {
    left: 33.33333333%;
  }
  .col-sm-push-3 {
    left: 25%;
  }
  .col-sm-push-2 {
    left: 16.66666667%;
  }
  .col-sm-push-1 {
    left: 8.33333333%;
  }
  .col-sm-push-0 {
    left: auto;
  }
  .col-sm-offset-12 {
    margin-left: 100%;
  }
  .col-sm-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-sm-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-sm-offset-9 {
    margin-left: 75%;
  }
  .col-sm-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-sm-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-sm-offset-6 {
    margin-left: 50%;
  }
  .col-sm-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-sm-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-sm-offset-3 {
    margin-left: 25%;
  }
  .col-sm-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-sm-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-sm-offset-0 {
    margin-left: 0%;
  }
}
@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-12 {
    width: 100%;
  }
  .col-md-11 {
    width: 91.66666667%;
  }
  .col-md-10 {
    width: 83.33333333%;
  }
  .col-md-9 {
    width: 75%;
  }
  .col-md-8 {
    width: 66.66666667%;
  }
  .col-md-7 {
    width: 58.33333333%;
  }
  .col-md-6 {
    width: 50%;
  }
  .col-md-5 {
    width: 41.66666667%;
  }
  .col-md-4 {
    width: 33.33333333%;
  }
  .col-md-3 {
    width: 25%;
  }
  .col-md-2 {
    width: 16.66666667%;
  }
  .col-md-1 {
    width: 8.33333333%;
  }
  .col-md-pull-12 {
    right: 100%;
  }
  .col-md-pull-11 {
    right: 91.66666667%;
  }
  .col-md-pull-10 {
    right: 83.33333333%;
  }
  .col-md-pull-9 {
    right: 75%;
  }
  .col-md-pull-8 {
    right: 66.66666667%;
  }
  .col-md-pull-7 {
    right: 58.33333333%;
  }
  .col-md-pull-6 {
    right: 50%;
  }
  .col-md-pull-5 {
    right: 41.66666667%;
  }
  .col-md-pull-4 {
    right: 33.33333333%;
  }
  .col-md-pull-3 {
    right: 25%;
  }
  .col-md-pull-2 {
    right: 16.66666667%;
  }
  .col-md-pull-1 {
    right: 8.33333333%;
  }
  .col-md-pull-0 {
    right: auto;
  }
  .col-md-push-12 {
    left: 100%;
  }
  .col-md-push-11 {
    left: 91.66666667%;
  }
  .col-md-push-10 {
    left: 83.33333333%;
  }
  .col-md-push-9 {
    left: 75%;
  }
  .col-md-push-8 {
    left: 66.66666667%;
  }
  .col-md-push-7 {
    left: 58.33333333%;
  }
  .col-md-push-6 {
    left: 50%;
  }
  .col-md-push-5 {
    left: 41.66666667%;
  }
  .col-md-push-4 {
    left: 33.33333333%;
  }
  .col-md-push-3 {
    left: 25%;
  }
  .col-md-push-2 {
    left: 16.66666667%;
  }
  .col-md-push-1 {
    left: 8.33333333%;
  }
  .col-md-push-0 {
    left: auto;
  }
  .col-md-offset-12 {
    margin-left: 100%;
  }
  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-md-offset-0 {
    margin-left: 0%;
  }
}
@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-12 {
    width: 100%;
  }
  .col-lg-11 {
    width: 91.66666667%;
  }
  .col-lg-10 {
    width: 83.33333333%;
  }
  .col-lg-9 {
    width: 75%;
  }
  .col-lg-8 {
    width: 66.66666667%;
  }
  .col-lg-7 {
    width: 58.33333333%;
  }
  .col-lg-6 {
    width: 50%;
  }
  .col-lg-5 {
    width: 41.66666667%;
  }
  .col-lg-4 {
    width: 33.33333333%;
  }
  .col-lg-3 {
    width: 25%;
  }
  .col-lg-2 {
    width: 16.66666667%;
  }
  .col-lg-1 {
    width: 8.33333333%;
  }
  .col-lg-pull-12 {
    right: 100%;
  }
  .col-lg-pull-11 {
    right: 91.66666667%;
  }
  .col-lg-pull-10 {
    right: 83.33333333%;
  }
  .col-lg-pull-9 {
    right: 75%;
  }
  .col-lg-pull-8 {
    right: 66.66666667%;
  }
  .col-lg-pull-7 {
    right: 58.33333333%;
  }
  .col-lg-pull-6 {
    right: 50%;
  }
  .col-lg-pull-5 {
    right: 41.66666667%;
  }
  .col-lg-pull-4 {
    right: 33.33333333%;
  }
  .col-lg-pull-3 {
    right: 25%;
  }
  .col-lg-pull-2 {
    right: 16.66666667%;
  }
  .col-lg-pull-1 {
    right: 8.33333333%;
  }
  .col-lg-pull-0 {
    right: auto;
  }
  .col-lg-push-12 {
    left: 100%;
  }
  .col-lg-push-11 {
    left: 91.66666667%;
  }
  .col-lg-push-10 {
    left: 83.33333333%;
  }
  .col-lg-push-9 {
    left: 75%;
  }
  .col-lg-push-8 {
    left: 66.66666667%;
  }
  .col-lg-push-7 {
    left: 58.33333333%;
  }
  .col-lg-push-6 {
    left: 50%;
  }
  .col-lg-push-5 {
    left: 41.66666667%;
  }
  .col-lg-push-4 {
    left: 33.33333333%;
  }
  .col-lg-push-3 {
    left: 25%;
  }
  .col-lg-push-2 {
    left: 16.66666667%;
  }
  .col-lg-push-1 {
    left: 8.33333333%;
  }
  .col-lg-push-0 {
    left: auto;
  }
  .col-lg-offset-12 {
    margin-left: 100%;
  }
  .col-lg-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-lg-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-lg-offset-9 {
    margin-left: 75%;
  }
  .col-lg-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-lg-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-lg-offset-6 {
    margin-left: 50%;
  }
  .col-lg-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-lg-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-lg-offset-3 {
    margin-left: 25%;
  }
  .col-lg-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-lg-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-lg-offset-0 {
    margin-left: 0%;
  }
}
table {
  background-color: transparent;
}
caption {
  padding-top: 8px;
  padding-bottom: 8px;
  color: #bdc3c7;
  text-align: left;
}
th {
  text-align: left;
}
.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 27px;
}
.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > tbody > tr > td,
.table > tfoot > tr > td {
  padding: 8px;
  line-height: 1.72222;
  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 > colgroup + thead > tr:first-child > th,
.table > thead:first-child > tr:first-child > th,
.table > caption + thead > tr:first-child > td,
.table > colgroup + thead > tr:first-child > td,
.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 > tbody > tr > th,
.table-condensed > tfoot > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > td {
  padding: 5px;
}
.table-bordered {
  border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > tbody > tr > th,
.table-bordered > tfoot > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > tbody > tr > td,
.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-child(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 > tbody > tr > td.active,
.table > tfoot > tr > td.active,
.table > thead > tr > th.active,
.table > tbody > tr > th.active,
.table > tfoot > tr > th.active,
.table > thead > tr.active > td,
.table > tbody > tr.active > td,
.table > tfoot > tr.active > td,
.table > thead > tr.active > th,
.table > tbody > tr.active > th,
.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 > tbody > tr > td.success,
.table > tfoot > tr > td.success,
.table > thead > tr > th.success,
.table > tbody > tr > th.success,
.table > tfoot > tr > th.success,
.table > thead > tr.success > td,
.table > tbody > tr.success > td,
.table > tfoot > tr.success > td,
.table > thead > tr.success > th,
.table > tbody > tr.success > th,
.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 > tbody > tr > td.info,
.table > tfoot > tr > td.info,
.table > thead > tr > th.info,
.table > tbody > tr > th.info,
.table > tfoot > tr > th.info,
.table > thead > tr.info > td,
.table > tbody > tr.info > td,
.table > tfoot > tr.info > td,
.table > thead > tr.info > th,
.table > tbody > tr.info > th,
.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 > tbody > tr > td.warning,
.table > tfoot > tr > td.warning,
.table > thead > tr > th.warning,
.table > tbody > tr > th.warning,
.table > tfoot > tr > th.warning,
.table > thead > tr.warning > td,
.table > tbody > tr.warning > td,
.table > tfoot > tr.warning > td,
.table > thead > tr.warning > th,
.table > tbody > tr.warning > th,
.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 > tbody > tr > td.danger,
.table > tfoot > tr > td.danger,
.table > thead > tr > th.danger,
.table > tbody > tr > th.danger,
.table > tfoot > tr > th.danger,
.table > thead > tr.danger > td,
.table > tbody > tr.danger > td,
.table > tfoot > tr.danger > td,
.table > thead > tr.danger > th,
.table > tbody > tr.danger > th,
.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: 20.25px;
    overflow-y: hidden;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    border: 1px solid #ddd;
  }
  .table-responsive > .table {
    margin-bottom: 0;
  }
  .table-responsive > .table > thead > tr > th,
  .table-responsive > .table > tbody > tr > th,
  .table-responsive > .table > tfoot > tr > th,
  .table-responsive > .table > thead > tr > td,
  .table-responsive > .table > tbody > tr > td,
  .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 > tbody > tr > th:first-child,
  .table-responsive > .table-bordered > tfoot > tr > th:first-child,
  .table-responsive > .table-bordered > thead > tr > td:first-child,
  .table-responsive > .table-bordered > tbody > tr > td: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 > tbody > tr > th:last-child,
  .table-responsive > .table-bordered > tfoot > tr > th:last-child,
  .table-responsive > .table-bordered > thead > tr > td:last-child,
  .table-responsive > .table-bordered > tbody > tr > td: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 > tfoot > tr:last-child > th,
  .table-responsive > .table-bordered > tbody > tr:last-child > td,
  .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: 27px;
  font-size: 24px;
  line-height: inherit;
  color: inherit;
  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: 16px;
  line-height: 1.72222;
  color: #d9d9d9;
}
.form-control {
  display: block;
  width: 100%;
  height: 41px;
  padding: 6px 12px;
  font-size: 16px;
  line-height: 1.72222;
  color: #d9d9d9;
  background-color: white;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 6px;
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -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);
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  -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;
}
.form-control:focus {
  border-color: #66afe9;
  outline: 0;
  -moz-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.form-group.focus .form-control,
.form-control:focus {
  border-color: #4b2e83;
  outline: 0;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.form-control:-ms-input-placeholder {
  color: #999;
}
.form-control::-webkit-input-placeholder {
  color: #999;
}
.form-control:-moz-placeholder {
  color: #999;
}
.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.form-control:-ms-input-placeholder {
  color: #999;
}
.form-control::-webkit-input-placeholder {
  color: #999;
}
.form-control.placeholder {
  color: #999;
}
.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
  cursor: not-allowed;
  background-color: #fbfbfb;
  opacity: 1;
}
textarea.form-control {
  height: auto;
}
input[type="search"] {
  -webkit-appearance: none;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"],
  input[type="time"],
  input[type="datetime-local"],
  input[type="month"] {
    line-height: 41px;
  }
  input[type="date"].input-sm,
  input[type="time"].input-sm,
  input[type="datetime-local"].input-sm,
  input[type="month"].input-sm {
    line-height: 35px;
  }
  input[type="date"].input-lg,
  input[type="time"].input-lg,
  input[type="datetime-local"].input-lg,
  input[type="month"].input-lg {
    line-height: 45px;
  }
}
.form-group {
  margin-bottom: 15px;
}
.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px;
}
.radio label,
.checkbox label {
  min-height: 27px;
  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 {
  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="checkbox"][disabled],
input[type="radio"].disabled,
input[type="checkbox"].disabled,
fieldset[disabled] input[type="radio"],
fieldset[disabled] input[type="checkbox"] {
  cursor: not-allowed;
}
.radio-inline.disabled,
.checkbox-inline.disabled,
fieldset[disabled] .radio-inline,
fieldset[disabled] .checkbox-inline {
  cursor: not-allowed;
}
.radio.disabled label,
.checkbox.disabled label,
fieldset[disabled] .radio label,
fieldset[disabled] .checkbox label {
  cursor: not-allowed;
}
.form-control-static {
  padding-top: 7px;
  padding-bottom: 7px;
  margin-bottom: 0;
}
.form-control-static.input-lg,
.form-control-static.input-sm {
  padding-left: 0;
  padding-right: 0;
}
.input-sm,
.form-group-sm .form-control {
  height: 35px;
  padding: 5px 10px;
  font-size: 14px;
  line-height: 1.5;
  border-radius: 3px;
}
select.input-sm,
select.form-group-sm .form-control {
  height: 35px;
  line-height: 35px;
}
textarea.input-sm,
textarea.form-group-sm .form-control,
select[multiple].input-sm,
select[multiple].form-group-sm .form-control {
  height: auto;
}
select.input-sm,
select.form-group-sm .form-control {
  height: 35px;
  line-height: 35px;
}
textarea.input-sm,
textarea.form-group-sm .form-control,
select[multiple].input-sm,
select[multiple].form-group-sm .form-control {
  height: auto;
}
.input-lg,
.form-group-lg .form-control {
  height: 45px;
  padding: 10px 16px;
  font-size: 20px;
  line-height: 1.33;
  border-radius: 6px;
}
select.input-lg,
select.form-group-lg .form-control {
  height: 45px;
  line-height: 45px;
}
textarea.input-lg,
textarea.form-group-lg .form-control,
select[multiple].input-lg,
select[multiple].form-group-lg .form-control {
  height: auto;
}
select.input-lg,
select.form-group-lg .form-control {
  height: 45px;
  line-height: 45px;
}
textarea.input-lg,
textarea.form-group-lg .form-control,
select[multiple].input-lg,
select[multiple].form-group-lg .form-control {
  height: auto;
}
.has-feedback {
  position: relative;
}
.has-feedback .form-control {
  padding-right: 51.25px;
}
.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: 41px;
  height: 41px;
  line-height: 41px;
  text-align: center;
  pointer-events: none;
}
.input-lg + .form-control-feedback {
  width: 45px;
  height: 45px;
  line-height: 45px;
}
.input-sm + .form-control-feedback {
  width: 35px;
  height: 35px;
  line-height: 35px;
}
.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: #2ecc71;
}
.has-success .form-control {
  border-color: #2ecc71;
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -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: #25a25a;
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ee2a8;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ee2a8;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ee2a8;
}
.has-success .input-group-addon {
  color: #2ecc71;
  border-color: #2ecc71;
  background-color: #dff0d8;
}
.has-success .form-control-feedback {
  color: #2ecc71;
}
.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline {
  color: #2ecc71;
}
.has-success .form-control {
  color: #2ecc71;
  border-color: #2ecc71;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.has-success .form-control::-moz-placeholder {
  color: #2ecc71;
  opacity: 1;
}
.has-success .form-control:-ms-input-placeholder {
  color: #2ecc71;
}
.has-success .form-control::-webkit-input-placeholder {
  color: #2ecc71;
}
.has-success .form-control:-moz-placeholder {
  color: #2ecc71;
}
.has-success .form-control::-moz-placeholder {
  color: #2ecc71;
  opacity: 1;
}
.has-success .form-control:-ms-input-placeholder {
  color: #2ecc71;
}
.has-success .form-control::-webkit-input-placeholder {
  color: #2ecc71;
}
.has-success .form-control.placeholder {
  color: #2ecc71;
}
.has-success .form-control:focus {
  border-color: #2ecc71;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.has-success .input-group-addon {
  color: #2ecc71;
  border-color: #2ecc71;
  background-color: #dff0d8;
}
.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: #f1c40f;
}
.has-warning .form-control {
  border-color: #f1c40f;
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -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: #c29d0b;
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #f7dc6f;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #f7dc6f;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #f7dc6f;
}
.has-warning .input-group-addon {
  color: #f1c40f;
  border-color: #f1c40f;
  background-color: #fcf8e3;
}
.has-warning .form-control-feedback {
  color: #f1c40f;
}
.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline {
  color: #f1c40f;
}
.has-warning .form-control {
  color: #f1c40f;
  border-color: #f1c40f;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.has-warning .form-control::-moz-placeholder {
  color: #f1c40f;
  opacity: 1;
}
.has-warning .form-control:-ms-input-placeholder {
  color: #f1c40f;
}
.has-warning .form-control::-webkit-input-placeholder {
  color: #f1c40f;
}
.has-warning .form-control:-moz-placeholder {
  color: #f1c40f;
}
.has-warning .form-control::-moz-placeholder {
  color: #f1c40f;
  opacity: 1;
}
.has-warning .form-control:-ms-input-placeholder {
  color: #f1c40f;
}
.has-warning .form-control::-webkit-input-placeholder {
  color: #f1c40f;
}
.has-warning .form-control.placeholder {
  color: #f1c40f;
}
.has-warning .form-control:focus {
  border-color: #f1c40f;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.has-warning .input-group-addon {
  color: #f1c40f;
  border-color: #f1c40f;
  background-color: #fcf8e3;
}
.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: #e74c3c;
}
.has-error .form-control {
  border-color: #e74c3c;
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -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: #d62c1a;
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #f29f97;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #f29f97;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #f29f97;
}
.has-error .input-group-addon {
  color: #e74c3c;
  border-color: #e74c3c;
  background-color: #f2dede;
}
.has-error .form-control-feedback {
  color: #e74c3c;
}
.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline {
  color: #e74c3c;
}
.has-error .form-control {
  color: #e74c3c;
  border-color: #e74c3c;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.has-error .form-control::-moz-placeholder {
  color: #e74c3c;
  opacity: 1;
}
.has-error .form-control:-ms-input-placeholder {
  color: #e74c3c;
}
.has-error .form-control::-webkit-input-placeholder {
  color: #e74c3c;
}
.has-error .form-control:-moz-placeholder {
  color: #e74c3c;
}
.has-error .form-control::-moz-placeholder {
  color: #e74c3c;
  opacity: 1;
}
.has-error .form-control:-ms-input-placeholder {
  color: #e74c3c;
}
.has-error .form-control::-webkit-input-placeholder {
  color: #e74c3c;
}
.has-error .form-control.placeholder {
  color: #e74c3c;
}
.has-error .form-control:focus {
  border-color: #e74c3c;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.has-error .input-group-addon {
  color: #e74c3c;
  border-color: #e74c3c;
  background-color: #f2dede;
}
.has-feedback label ~ .form-control-feedback {
  top: 32px;
}
.has-feedback label.sr-only ~ .form-control-feedback {
  top: 0;
}
.help-block {
  display: block;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #999999;
}
@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: 34px;
}
.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;
}
.form-horizontal .form-group:before,
.form-horizontal .form-group:after {
  content: " ";
  display: table;
}
.form-horizontal .form-group:after {
  clear: both;
}
.form-horizontal .form-group:before,
.form-horizontal .form-group:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
.form-horizontal .form-group:after {
  clear: both;
}
.form-horizontal .form-group:before,
.form-horizontal .form-group:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
.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: 14.3px;
  }
}
@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
  }
}
.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: 16px;
  line-height: 1.72222;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.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: white;
  text-decoration: none;
}
.btn:active,
.btn.active {
  outline: 0;
  background-image: none;
  -moz-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  -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;
  pointer-events: none;
  opacity: 0.65;
  filter: alpha(opacity=65);
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.btn-default {
  color: white;
  background-color: #bdc3c7;
  border-color: #ccc;
}
.btn-default:hover,
.btn-default:focus,
.btn-default.focus,
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  color: white;
  background-color: #a1aab0;
  border-color: #adadad;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  background-image: none;
}
.btn-default.disabled,
.btn-default[disabled],
fieldset[disabled] .btn-default,
.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus,
.btn-default.disabled.focus,
.btn-default[disabled].focus,
fieldset[disabled] .btn-default.focus,
.btn-default.disabled:active,
.btn-default[disabled]:active,
fieldset[disabled] .btn-default:active,
.btn-default.disabled.active,
.btn-default[disabled].active,
fieldset[disabled] .btn-default.active {
  background-color: #bdc3c7;
  border-color: #ccc;
}
.btn-default .badge {
  color: #bdc3c7;
  background-color: white;
}
.btn-primary {
  color: #fff;
  background-color: #4b2e83;
  border-color: #402770;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary.focus,
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  color: #fff;
  background-color: #35215d;
  border-color: #261743;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  background-image: none;
}
.btn-primary.disabled,
.btn-primary[disabled],
fieldset[disabled] .btn-primary,
.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled.focus,
.btn-primary[disabled].focus,
fieldset[disabled] .btn-primary.focus,
.btn-primary.disabled:active,
.btn-primary[disabled]:active,
fieldset[disabled] .btn-primary:active,
.btn-primary.disabled.active,
.btn-primary[disabled].active,
fieldset[disabled] .btn-primary.active {
  background-color: #4b2e83;
  border-color: #402770;
}
.btn-primary .badge {
  color: #4b2e83;
  background-color: #fff;
}
.btn-success {
  color: #fff;
  background-color: #2ecc71;
  border-color: #29b765;
}
.btn-success:hover,
.btn-success:focus,
.btn-success.focus,
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
  color: #fff;
  background-color: #25a25a;
  border-color: #1e854a;
}
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
  background-image: none;
}
.btn-success.disabled,
.btn-success[disabled],
fieldset[disabled] .btn-success,
.btn-success.disabled:hover,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success:hover,
.btn-success.disabled:focus,
.btn-success[disabled]:focus,
fieldset[disabled] .btn-success:focus,
.btn-success.disabled.focus,
.btn-success[disabled].focus,
fieldset[disabled] .btn-success.focus,
.btn-success.disabled:active,
.btn-success[disabled]:active,
fieldset[disabled] .btn-success:active,
.btn-success.disabled.active,
.btn-success[disabled].active,
fieldset[disabled] .btn-success.active {
  background-color: #2ecc71;
  border-color: #29b765;
}
.btn-success .badge {
  color: #2ecc71;
  background-color: #fff;
}
.btn-info {
  color: #fff;
  background-color: #3498db;
  border-color: #258cd1;
}
.btn-info:hover,
.btn-info:focus,
.btn-info.focus,
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
  color: #fff;
  background-color: #217dbb;
  border-color: #1c699d;
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
  background-image: none;
}
.btn-info.disabled,
.btn-info[disabled],
fieldset[disabled] .btn-info,
.btn-info.disabled:hover,
.btn-info[disabled]:hover,
fieldset[disabled] .btn-info:hover,
.btn-info.disabled:focus,
.btn-info[disabled]:focus,
fieldset[disabled] .btn-info:focus,
.btn-info.disabled.focus,
.btn-info[disabled].focus,
fieldset[disabled] .btn-info.focus,
.btn-info.disabled:active,
.btn-info[disabled]:active,
fieldset[disabled] .btn-info:active,
.btn-info.disabled.active,
.btn-info[disabled].active,
fieldset[disabled] .btn-info.active {
  background-color: #3498db;
  border-color: #258cd1;
}
.btn-info .badge {
  color: #3498db;
  background-color: #fff;
}
.btn-warning {
  color: #fff;
  background-color: #f1c40f;
  border-color: #dab10d;
}
.btn-warning:hover,
.btn-warning:focus,
.btn-warning.focus,
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
  color: #fff;
  background-color: #c29d0b;
  border-color: #a08209;
}
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
  background-image: none;
}
.btn-warning.disabled,
.btn-warning[disabled],
fieldset[disabled] .btn-warning,
.btn-warning.disabled:hover,
.btn-warning[disabled]:hover,
fieldset[disabled] .btn-warning:hover,
.btn-warning.disabled:focus,
.btn-warning[disabled]:focus,
fieldset[disabled] .btn-warning:focus,
.btn-warning.disabled.focus,
.btn-warning[disabled].focus,
fieldset[disabled] .btn-warning.focus,
.btn-warning.disabled:active,
.btn-warning[disabled]:active,
fieldset[disabled] .btn-warning:active,
.btn-warning.disabled.active,
.btn-warning[disabled].active,
fieldset[disabled] .btn-warning.active {
  background-color: #f1c40f;
  border-color: #dab10d;
}
.btn-warning .badge {
  color: #f1c40f;
  background-color: #fff;
}
.btn-danger {
  color: #fff;
  background-color: #e74c3c;
  border-color: #e43725;
}
.btn-danger:hover,
.btn-danger:focus,
.btn-danger.focus,
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
  color: #fff;
  background-color: #d62c1a;
  border-color: #b62516;
}
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
  background-image: none;
}
.btn-danger.disabled,
.btn-danger[disabled],
fieldset[disabled] .btn-danger,
.btn-danger.disabled:hover,
.btn-danger[disabled]:hover,
fieldset[disabled] .btn-danger:hover,
.btn-danger.disabled:focus,
.btn-danger[disabled]:focus,
fieldset[disabled] .btn-danger:focus,
.btn-danger.disabled.focus,
.btn-danger[disabled].focus,
fieldset[disabled] .btn-danger.focus,
.btn-danger.disabled:active,
.btn-danger[disabled]:active,
fieldset[disabled] .btn-danger:active,
.btn-danger.disabled.active,
.btn-danger[disabled].active,
fieldset[disabled] .btn-danger.active {
  background-color: #e74c3c;
  border-color: #e43725;
}
.btn-danger .badge {
  color: #e74c3c;
  background-color: #fff;
}
.btn-link {
  color: #0088DD;
  font-weight: normal;
  border-radius: 0;
}
.btn-link,
.btn-link:active,
.btn-link.active,
.btn-link[disabled],
fieldset[disabled] .btn-link {
  background-color: transparent;
  -moz-box-shadow: none;
  -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: #d9d9d9;
  text-decoration: underline;
  background-color: transparent;
}
.btn-link[disabled]:hover,
fieldset[disabled] .btn-link:hover,
.btn-link[disabled]:focus,
fieldset[disabled] .btn-link:focus {
  color: #bdc3c7;
  text-decoration: none;
}
.btn-lg,
.btn-group-lg > .btn {
  padding: 10px 16px;
  font-size: 20px;
  line-height: 1.33;
  border-radius: 6px;
}
.btn-sm,
.btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 14px;
  line-height: 1.5;
  border-radius: 3px;
}
.btn-xs,
.btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 14px;
  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;
  -o-transition: opacity 0.15s linear;
  -webkit-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear;
}
.fade.in {
  opacity: 1;
}
.collapse {
  display: none;
  visibility: hidden;
}
.collapse.in {
  display: block;
  visibility: visible;
}
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 solid;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
}
.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: 16px;
  text-align: left;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  -moz-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  -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: 12.5px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}
.dropdown-menu > li > a {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 1.72222;
  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: #4b2e83;
}
.dropdown-menu > .disabled > a,
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
  color: #bdc3c7;
}
.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: 14px;
  line-height: 1.72222;
  color: #bdc3c7;
  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 solid;
  content: "";
}
.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 1px;
}
@media (min-width: 768px) {
  .navbar-right .dropdown-menu {
    left: auto;
    right: 0;
  }
  .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-vertical > .btn:hover,
.btn-group > .btn:focus,
.btn-group-vertical > .btn:focus,
.btn-group > .btn:active,
.btn-group-vertical > .btn:active,
.btn-group > .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 .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 > .btn:last-child,
.btn-group > .btn-group:first-child > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.btn-group > .btn-group:last-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 {
  padding-left: 12px;
  padding-right: 12px;
}
.btn-group.open .dropdown-toggle {
  -moz-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  -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 {
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.btn .caret {
  margin-left: 0;
}
.btn-lg .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0;
}
.dropup .btn-lg .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 > .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-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-bottom-left-radius: 4px;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
}
.btn-group-justified > .btn,
.btn-group-justified > .btn-group {
  float: none;
  display: table-cell;
  width: 1%;
}
.btn-group-justified > .btn-group .btn {
  width: 100%;
}
.btn-group-justified > .btn-group .dropdown-menu {
  left: auto;
}
[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[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-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 45px;
  padding: 10px 16px;
  font-size: 20px;
  line-height: 1.33;
  border-radius: 6px;
}
select.input-group-lg > .form-control,
select.input-group-lg > .input-group-addon,
select.input-group-lg > .input-group-btn > .btn {
  height: 45px;
  line-height: 45px;
}
textarea.input-group-lg > .form-control,
textarea.input-group-lg > .input-group-addon,
textarea.input-group-lg > .input-group-btn > .btn,
select[multiple].input-group-lg > .form-control,
select[multiple].input-group-lg > .input-group-addon,
select[multiple].input-group-lg > .input-group-btn > .btn {
  height: auto;
}
select.input-group-lg > .form-control,
select.input-group-lg > .input-group-addon,
select.input-group-lg > .input-group-btn > .btn {
  height: 45px;
  line-height: 45px;
}
textarea.input-group-lg > .form-control,
textarea.input-group-lg > .input-group-addon,
textarea.input-group-lg > .input-group-btn > .btn,
select[multiple].input-group-lg > .form-control,
select[multiple].input-group-lg > .input-group-addon,
select[multiple].input-group-lg > .input-group-btn > .btn {
  height: auto;
}
.input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: 35px;
  padding: 5px 10px;
  font-size: 14px;
  line-height: 1.5;
  border-radius: 3px;
}
select.input-group-sm > .form-control,
select.input-group-sm > .input-group-addon,
select.input-group-sm > .input-group-btn > .btn {
  height: 35px;
  line-height: 35px;
}
textarea.input-group-sm > .form-control,
textarea.input-group-sm > .input-group-addon,
textarea.input-group-sm > .input-group-btn > .btn,
select[multiple].input-group-sm > .form-control,
select[multiple].input-group-sm > .input-group-addon,
select[multiple].input-group-sm > .input-group-btn > .btn {
  height: auto;
}
select.input-group-sm > .form-control,
select.input-group-sm > .input-group-addon,
select.input-group-sm > .input-group-btn > .btn {
  height: 35px;
  line-height: 35px;
}
textarea.input-group-sm > .form-control,
textarea.input-group-sm > .input-group-addon,
textarea.input-group-sm > .input-group-btn > .btn,
select[multiple].input-group-sm > .form-control,
select[multiple].input-group-sm > .input-group-addon,
select[multiple].input-group-sm > .input-group-btn > .btn {
  height: auto;
}
.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: 16px;
  font-weight: normal;
  line-height: 1;
  color: #d9d9d9;
  text-align: center;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  border-radius: 4px;
}
.input-group-addon.input-sm {
  padding: 5px 10px;
  font-size: 14px;
  border-radius: 3px;
}
.input-group-addon.input-lg {
  padding: 10px 16px;
  font-size: 20px;
  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 {
  margin-left: -1px;
}
.nav {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.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: #bdc3c7;
}
.nav > li.disabled > a:hover,
.nav > li.disabled > a:focus {
  color: #bdc3c7;
  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: #0088DD;
}
.nav .nav-divider {
  height: 1px;
  margin: 12.5px 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.72222;
  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: #d9d9d9;
  background-color: #fff;
  border: 1px solid #ddd;
  border-bottom-color: transparent;
  cursor: default;
}
.nav-tabs.nav-justified {
  width: 100%;
  border-bottom: 0;
}
.nav-tabs.nav-justified > li {
  float: none;
}
.nav-tabs.nav-justified > li > a {
  text-align: center;
  margin-bottom: 5px;
}
.nav-tabs.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}
@media (min-width: 768px) {
  .nav-tabs.nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-tabs.nav-justified > li > a {
    margin-bottom: 0;
  }
}
.nav-tabs.nav-justified > li > a {
  margin-right: 0;
  border-radius: 4px;
}
.nav-tabs.nav-justified > .active > a,
.nav-tabs.nav-justified > .active > a:hover,
.nav-tabs.nav-justified > .active > a:focus {
  border: 1px solid #ddd;
}
@media (min-width: 768px) {
  .nav-tabs.nav-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 4px 4px 0 0;
  }
  .nav-tabs.nav-justified > .active > a,
  .nav-tabs.nav-justified > .active > a:hover,
  .nav-tabs.nav-justified > .active > a:focus {
    border-bottom-color: #fff;
  }
}
.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: #4b2e83;
}
.nav-stacked > li {
  float: none;
}
.nav-stacked > li + li {
  margin-top: 2px;
  margin-left: 0;
}
.nav-justified {
  width: 100%;
}
.nav-justified > li {
  float: none;
}
.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 {
    display: table-cell;
    width: 1%;
  }
  .nav-justified > li > a {
    margin-bottom: 0;
  }
}
.nav-tabs-justified {
  border-bottom: 0;
}
.nav-tabs-justified > li > a {
  margin-right: 0;
  border-radius: 4px;
}
.nav-tabs-justified > .active > a,
.nav-tabs-justified > .active > a:hover,
.nav-tabs-justified > .active > a:focus {
  border: 1px solid #ddd;
}
@media (min-width: 768px) {
  .nav-tabs-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 4px 4px 0 0;
  }
  .nav-tabs-justified > .active > a,
  .nav-tabs-justified > .active > a:hover,
  .nav-tabs-justified > .active > a:focus {
    border-bottom-color: #fff;
  }
}
.tab-content > .tab-pane {
  display: none;
  visibility: hidden;
}
.tab-content > .active {
  display: block;
  visibility: visible;
}
.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: 27px;
  border: 1px solid transparent;
}
@media (min-width: 768px) {
  .navbar {
    border-radius: 6px;
  }
}
@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.in {
  overflow-y: auto;
}
@media (min-width: 768px) {
  .navbar-collapse {
    width: auto;
    border-top: 0;
    box-shadow: none;
  }
  .navbar-collapse.collapse {
    display: block !important;
    visibility: visible !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-fluid > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-collapse {
  margin-right: -15px;
  margin-left: -15px;
}
@media (min-width: 768px) {
  .container > .navbar-header,
  .container-fluid > .navbar-header,
  .container > .navbar-collapse,
  .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: 11.5px 15px;
  font-size: 20px;
  line-height: 27px;
  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;
  padding-top: 9.5px;
  padding-bottom: 9.5px;
  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: 5.75px -15px;
}
.navbar-nav > li > a {
  padding-top: 10px;
  padding-bottom: 10px;
  line-height: 27px;
}
@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: 27px;
  }
  .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: 11.5px;
    padding-bottom: 11.5px;
  }
}
.navbar-form {
  margin-left: -15px;
  margin-right: -15px;
  padding: 10px 15px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  -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: 4.5px;
  margin-bottom: 4.5px;
  padding-top: 6px;
  padding-bottom: 6px;
}
@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;
    -moz-box-shadow: none;
    -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 {
  border-top-right-radius: 6px;
  border-top-left-radius: 6px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.navbar-btn {
  margin-top: 4.5px;
  margin-bottom: 4.5px;
  padding-top: 6px;
  padding-bottom: 6px;
}
.navbar-btn.btn-sm {
  margin-top: 7.5px;
  margin-bottom: 7.5px;
  padding-top: 9px;
  padding-bottom: 9px;
}
.navbar-btn.btn-xs {
  margin-top: 14px;
  margin-bottom: 14px;
  padding-top: 15.5px;
  padding-bottom: 15.5px;
}
.navbar-text {
  margin-top: 11.5px;
  margin-bottom: 11.5px;
  padding-top: 13px;
  padding-bottom: 13px;
}
@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: #ececf4;
  border-color: #d7d7e8;
}
.navbar-default .navbar-brand {
  color: #4b2e83;
}
.navbar-default .navbar-brand:hover,
.navbar-default .navbar-brand:focus {
  color: #4b2e83;
  background-color: transparent;
}
.navbar-default .navbar-text {
  color: #777;
}
.navbar-default .navbar-nav > li > a {
  color: #4b2e83;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
  color: #4b2e83;
  background-color: transparent;
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
  color: #4b2e83;
  background-color: transparent;
}
.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: #d7d7e8;
}
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
  background-color: transparent;
  color: #4b2e83;
}
@media (max-width: 767px) {
  .navbar-default .navbar-nav .open .dropdown-menu > li > a {
    color: #4b2e83;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #4b2e83;
    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: #4b2e83;
    background-color: transparent;
  }
  .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: #4b2e83;
}
.navbar-default .navbar-link:hover {
  color: #4b2e83;
}
.navbar-default .btn-link {
  color: #4b2e83;
}
.navbar-default .btn-link:hover,
.navbar-default .btn-link:focus {
  color: #4b2e83;
}
.navbar-default .btn-link[disabled]:hover,
fieldset[disabled] .navbar-default .btn-link:hover,
.navbar-default .btn-link[disabled]:focus,
fieldset[disabled] .navbar-default .btn-link:focus {
  color: #ccc;
}
.navbar-inverse {
  background-color: #4b2e83;
  border-color: #35215d;
}
.navbar-inverse .navbar-brand {
  color: white;
}
.navbar-inverse .navbar-brand:hover,
.navbar-inverse .navbar-brand:focus {
  color: #4b2e83;
  background-color: transparent;
}
.navbar-inverse .navbar-text {
  color: white;
}
.navbar-inverse .navbar-nav > li > a {
  color: white;
}
.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > li > a:focus {
  color: #4b2e83;
  background-color: transparent;
}
.navbar-inverse .navbar-nav > .active > a,
.navbar-inverse .navbar-nav > .active > a:hover,
.navbar-inverse .navbar-nav > .active > a:focus {
  color: white;
  background-color: #4b2e83;
}
.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: #3c2569;
}
.navbar-inverse .navbar-nav > .open > a,
.navbar-inverse .navbar-nav > .open > a:hover,
.navbar-inverse .navbar-nav > .open > a:focus {
  background-color: #4b2e83;
  color: white;
}
@media (max-width: 767px) {
  .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
    border-color: #35215d;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
    background-color: #35215d;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
    color: white;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #4b2e83;
    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: white;
    background-color: #4b2e83;
  }
  .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: white;
}
.navbar-inverse .navbar-link:hover {
  color: #4b2e83;
}
.navbar-inverse .btn-link {
  color: white;
}
.navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link:focus {
  color: #4b2e83;
}
.navbar-inverse .btn-link[disabled]:hover,
fieldset[disabled] .navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link[disabled]:focus,
fieldset[disabled] .navbar-inverse .btn-link:focus {
  color: #444;
}
.breadcrumb {
  padding: 8px 15px;
  margin-bottom: 27px;
  list-style: none;
  background-color: #f5f5f5;
  border-radius: 4px;
}
.breadcrumb > li {
  display: inline-block;
}
.breadcrumb > li + li:before {
  content: "/\00a0";
  padding: 0 5px;
  color: #ccc;
}
.breadcrumb > .active {
  color: #bdc3c7;
}
.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 27px 0;
  border-radius: 4px;
}
.pagination > li {
  display: inline;
}
.pagination > li > a,
.pagination > li > span {
  position: relative;
  float: left;
  padding: 6px 12px;
  line-height: 1.72222;
  text-decoration: none;
  color: #dbd5e6;
  background-color: #fff;
  border: 1px solid #ddd;
  margin-left: -1px;
}
.pagination > li:first-child > a,
.pagination > li:first-child > span {
  margin-left: 0;
  border-bottom-left-radius: 4px;
  border-top-left-radius: 4px;
}
.pagination > li:last-child > a,
.pagination > li:last-child > span {
  border-bottom-right-radius: 4px;
  border-top-right-radius: 4px;
}
.pagination > li > a:hover,
.pagination > li > span:hover,
.pagination > li > a:focus,
.pagination > li > span:focus {
  color: #d9d9d9;
  background-color: #eeeeee;
  border-color: #ddd;
}
.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover,
.pagination > .active > a:focus,
.pagination > .active > span:focus {
  z-index: 2;
  color: #fff;
  background-color: #4b2e83;
  border-color: #4b2e83;
  cursor: default;
}
.pagination > .disabled > span,
.pagination > .disabled > span:hover,
.pagination > .disabled > span:focus,
.pagination > .disabled > a,
.pagination > .disabled > a:hover,
.pagination > .disabled > a:focus {
  color: #bdc3c7;
  background-color: #fff;
  border-color: #ddd;
  cursor: not-allowed;
}
.pagination-lg > li > a,
.pagination-lg > li > span {
  padding: 10px 16px;
  font-size: 20px;
}
.pagination-lg > li:first-child > a,
.pagination-lg > li:first-child > span {
  border-bottom-left-radius: 6px;
  border-top-left-radius: 6px;
}
.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
  border-bottom-right-radius: 6px;
  border-top-right-radius: 6px;
}
.pagination-sm > li > a,
.pagination-sm > li > span {
  padding: 5px 10px;
  font-size: 14px;
}
.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px;
}
.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px;
}
.pager {
  padding-left: 0;
  margin: 27px 0;
  list-style: none;
  text-align: center;
}
.pager li {
  display: inline;
}
.pager li > a,
.pager li > span {
  display: inline-block;
  padding: 5px 14px;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 15px;
}
.pager li > a:hover,
.pager li > a:focus {
  text-decoration: none;
  background-color: #eeeeee;
}
.pager .next > a,
.pager .next > span {
  float: right;
}
.pager .previous > a,
.pager .previous > span {
  float: left;
}
.pager .disabled > a,
.pager .disabled > a:hover,
.pager .disabled > a:focus,
.pager .disabled > span {
  color: #bdc3c7;
  background-color: #fff;
  cursor: not-allowed;
}
.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;
}
a.label:hover,
a.label:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
.label:empty {
  display: none;
}
.btn .label {
  position: relative;
  top: -1px;
}
.label-default {
  background-color: #bdc3c7;
}
.label-default[href]:hover,
.label-default[href]:focus {
  background-color: #a1aab0;
}
.label-primary {
  background-color: #4b2e83;
}
.label-primary[href]:hover,
.label-primary[href]:focus {
  background-color: #35215d;
}
.label-success {
  background-color: #2ecc71;
}
.label-success[href]:hover,
.label-success[href]:focus {
  background-color: #25a25a;
}
.label-info {
  background-color: #3498db;
}
.label-info[href]:hover,
.label-info[href]:focus {
  background-color: #217dbb;
}
.label-warning {
  background-color: #f1c40f;
}
.label-warning[href]:hover,
.label-warning[href]:focus {
  background-color: #c29d0b;
}
.label-danger {
  background-color: #e74c3c;
}
.label-danger[href]:hover,
.label-danger[href]:focus {
  background-color: #d62c1a;
}
.badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  line-height: 1;
  vertical-align: baseline;
  white-space: nowrap;
  text-align: center;
  background-color: #bdc3c7;
  border-radius: 10px;
}
.badge:empty {
  display: none;
}
.btn .badge {
  position: relative;
  top: -1px;
}
.btn-xs .badge {
  top: 0;
  padding: 1px 5px;
}
a.badge:hover,
a.badge:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
.list-group-item.active > .badge,
.nav-pills > .active > a > .badge {
  color: #0088DD;
  background-color: #fff;
}
.list-group-item > .badge {
  float: right;
}
.list-group-item > .badge + .badge {
  margin-right: 5px;
}
.nav-pills > li > a > .badge {
  margin-left: 3px;
}
.jumbotron {
  padding: 30px 15px;
  margin-bottom: 30px;
  color: inherit;
  background-color: #eeeeee;
}
.jumbotron h1,
.jumbotron .h1 {
  color: inherit;
}
.jumbotron p {
  margin-bottom: 15px;
  font-size: 24px;
  font-weight: 200;
}
.jumbotron > hr {
  border-top-color: #d5d5d5;
}
.container .jumbotron,
.container-fluid .jumbotron {
  border-radius: 6px;
}
.jumbotron .container {
  max-width: 100%;
}
@media screen and (min-width: 768px) {
  .jumbotron {
    padding: 48px 0;
  }
  .container .jumbotron,
  .container-fluid .jumbotron {
    padding-left: 60px;
    padding-right: 60px;
  }
  .jumbotron h1,
  .jumbotron .h1 {
    font-size: 72px;
  }
}
.thumbnail {
  display: block;
  padding: 4px;
  margin-bottom: 27px;
  line-height: 1.72222;
  background-color: #fff;
  border: 1px solid #bdc3c7;
  border-radius: 6px;
  -o-transition: border 0.2s ease-in-out;
  -webkit-transition: border 0.2s ease-in-out;
  transition: border 0.2s ease-in-out;
}
.thumbnail > img,
.thumbnail a > img {
  margin-left: auto;
  margin-right: auto;
}
a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #0088DD;
}
.thumbnail .caption {
  padding: 9px;
  color: #595959;
}
.alert {
  padding: 15px;
  margin-bottom: 27px;
  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: #2ecc71;
}
.alert-success hr {
  border-top-color: #c9e2b3;
}
.alert-success .alert-link {
  color: #25a25a;
}
.alert-info {
  background-color: #d9edf7;
  border-color: #bce8f1;
  color: #3498db;
}
.alert-info hr {
  border-top-color: #a6e1ec;
}
.alert-info .alert-link {
  color: #217dbb;
}
.alert-warning {
  background-color: #fcf8e3;
  border-color: #faebcc;
  color: #f1c40f;
}
.alert-warning hr {
  border-top-color: #f7e1b5;
}
.alert-warning .alert-link {
  color: #c29d0b;
}
.alert-danger {
  background-color: #f2dede;
  border-color: #ebccd1;
  color: #e74c3c;
}
.alert-danger hr {
  border-top-color: #e4b9c0;
}
.alert-danger .alert-link {
  color: #d62c1a;
}
@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 40px 0;
  }
  to {
    background-position: 0 0;
  }
}
@keyframes progress-bar-stripes {
  from {
    background-position: 40px 0;
  }
  to {
    background-position: 0 0;
  }
}
.progress {
  overflow: hidden;
  height: 27px;
  margin-bottom: 27px;
  background-color: #f5f5f5;
  border-radius: 4px;
  -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}
.progress-bar {
  float: left;
  width: 0%;
  height: 100%;
  font-size: 14px;
  line-height: 27px;
  color: #fff;
  text-align: center;
  background-color: #4b2e83;
  -moz-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  -o-transition: width 0.6s ease;
  -webkit-transition: width 0.6s ease;
  transition: width 0.6s ease;
}
.progress-striped .progress-bar,
.progress-bar-striped {
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 40px 40px;
}
.progress.active .progress-bar,
.progress-bar.active {
  -o-animation: progress-bar-stripes 2s linear infinite;
  -webkit-animation: progress-bar-stripes 2s linear infinite;
  animation: progress-bar-stripes 2s linear infinite;
}
.progress-bar-success {
  background-color: #2ecc71;
}
.progress-striped .progress-bar-success {
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-info {
  background-color: #3498db;
}
.progress-striped .progress-bar-info {
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-warning {
  background-color: #f1c40f;
}
.progress-striped .progress-bar-warning {
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-danger {
  background-color: #e74c3c;
}
.progress-striped .progress-bar-danger {
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.media {
  margin-top: 15px;
}
.media:first-child {
  margin-top: 0;
}
.media-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 {
  color: #555;
}
a.list-group-item .list-group-item-heading {
  color: #333;
}
a.list-group-item:hover,
a.list-group-item:focus {
  text-decoration: none;
  color: #555;
  background-color: #f5f5f5;
}
.list-group-item.disabled,
.list-group-item.disabled:hover,
.list-group-item.disabled:focus {
  background-color: #eeeeee;
  color: #bdc3c7;
  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: #bdc3c7;
}
.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
  z-index: 2;
  color: #fff;
  background-color: #4b2e83;
  border-color: #4b2e83;
}
.list-group-item.active .list-group-item-heading,
.list-group-item.active:hover .list-group-item-heading,
.list-group-item.active:focus .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active:hover .list-group-item-heading > small,
.list-group-item.active:focus .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small,
.list-group-item.active:hover .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: #b5a0dd;
}
.list-group-item-success {
  color: #2ecc71;
  background-color: #dff0d8;
}
a.list-group-item-success {
  color: #2ecc71;
}
a.list-group-item-success .list-group-item-heading {
  color: inherit;
}
a.list-group-item-success:hover,
a.list-group-item-success:focus {
  color: #2ecc71;
  background-color: #d0e9c6;
}
a.list-group-item-success.active,
a.list-group-item-success.active:hover,
a.list-group-item-success.active:focus {
  color: #fff;
  background-color: #2ecc71;
  border-color: #2ecc71;
}
.list-group-item-info {
  color: #3498db;
  background-color: #d9edf7;
}
a.list-group-item-info {
  color: #3498db;
}
a.list-group-item-info .list-group-item-heading {
  color: inherit;
}
a.list-group-item-info:hover,
a.list-group-item-info:focus {
  color: #3498db;
  background-color: #c4e3f3;
}
a.list-group-item-info.active,
a.list-group-item-info.active:hover,
a.list-group-item-info.active:focus {
  color: #fff;
  background-color: #3498db;
  border-color: #3498db;
}
.list-group-item-warning {
  color: #f1c40f;
  background-color: #fcf8e3;
}
a.list-group-item-warning {
  color: #f1c40f;
}
a.list-group-item-warning .list-group-item-heading {
  color: inherit;
}
a.list-group-item-warning:hover,
a.list-group-item-warning:focus {
  color: #f1c40f;
  background-color: #faf2cc;
}
a.list-group-item-warning.active,
a.list-group-item-warning.active:hover,
a.list-group-item-warning.active:focus {
  color: #fff;
  background-color: #f1c40f;
  border-color: #f1c40f;
}
.list-group-item-danger {
  color: #e74c3c;
  background-color: #f2dede;
}
a.list-group-item-danger {
  color: #e74c3c;
}
a.list-group-item-danger .list-group-item-heading {
  color: inherit;
}
a.list-group-item-danger:hover,
a.list-group-item-danger:focus {
  color: #e74c3c;
  background-color: #ebcccc;
}
a.list-group-item-danger.active,
a.list-group-item-danger.active:hover,
a.list-group-item-danger.active:focus {
  color: #fff;
  background-color: #e74c3c;
  border-color: #e74c3c;
}
.list-group-item-heading {
  margin-top: 0;
  margin-bottom: 5px;
}
.list-group-item-text {
  margin-bottom: 0;
  line-height: 1.3;
}
.panel {
  margin-bottom: 27px;
  background-color: #fff;
  border: 1px solid transparent;
  border-radius: 4px;
  -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
  -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-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: 18px;
  color: inherit;
}
.panel-title > 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-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-responsive:first-child > .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 > 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-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .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 td:first-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th: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-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .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 td:last-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th: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-responsive:last-child > .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 > 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-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .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 td:first-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th: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-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .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 td:last-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th: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-responsive > .table-bordered > thead > tr > th:first-child,
.panel > .table-bordered > tbody > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
.panel > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-bordered > thead > tr > td:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
.panel > .table-bordered > tbody > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
.panel > .table-bordered > tfoot > tr > td: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-responsive > .table-bordered > thead > tr > th:last-child,
.panel > .table-bordered > tbody > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
.panel > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-bordered > thead > tr > td:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
.panel > .table-bordered > tbody > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
.panel > .table-bordered > tfoot > tr > td: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-responsive > .table-bordered > thead > tr:first-child > td,
.panel > .table-bordered > tbody > tr:first-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
.panel > .table-bordered > thead > tr:first-child > th,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
.panel > .table-bordered > tbody > tr:first-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
  border-bottom: 0;
}
.panel > .table-bordered > tbody > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
.panel > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-bordered > tbody > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
.panel > .table-bordered > tfoot > tr:last-child > th,
.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: 27px;
}
.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: #4b2e83;
}
.panel-primary > .panel-heading {
  color: #fff;
  background-color: #4b2e83;
  border-color: #4b2e83;
}
.panel-primary > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #4b2e83;
}
.panel-primary > .panel-heading .badge {
  color: #4b2e83;
  background-color: #fff;
}
.panel-primary > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #4b2e83;
}
.panel-success {
  border-color: #d6e9c6;
}
.panel-success > .panel-heading {
  color: #2ecc71;
  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: #2ecc71;
}
.panel-success > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #d6e9c6;
}
.panel-info {
  border-color: #bce8f1;
}
.panel-info > .panel-heading {
  color: #3498db;
  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: #3498db;
}
.panel-info > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #bce8f1;
}
.panel-warning {
  border-color: #faebcc;
}
.panel-warning > .panel-heading {
  color: #f1c40f;
  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: #f1c40f;
}
.panel-warning > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #faebcc;
}
.panel-danger {
  border-color: #ebccd1;
}
.panel-danger > .panel-heading {
  color: #e74c3c;
  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: #e74c3c;
}
.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.embed-responsive-16by9 {
  padding-bottom: 56.25%;
}
.embed-responsive.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;
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  -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: 24px;
  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;
}
.modal-open {
  overflow: hidden;
}
.modal {
  display: none;
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  -webkit-overflow-scrolling: touch;
  outline: 0;
}
.modal.fade .modal-dialog {
  -o-transform: translate(0, -25%);
  -webkit-transform: translate(0, -25%);
  -ms-transform: translate(0, -25%);
  transform: translate(0, -25%);
  -webkit-transition: -webkit-transform 0.3s ease-out;
  -moz-transition: -moz-transform 0.3s ease-out;
  -o-transition: -o-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
}
.modal.in .modal-dialog {
  -o-transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
}
.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}
.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px;
}
.modal-content {
  position: relative;
  background-color: #fff;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  -moz-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  background-clip: padding-box;
  outline: 0;
}
.modal-backdrop {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  background-color: #000;
}
.modal-backdrop.fade {
  opacity: 0;
  filter: alpha(opacity=0);
}
.modal-backdrop.in {
  opacity: 0.5;
  filter: alpha(opacity=50);
}
.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5;
  min-height: 16.72222px;
}
.modal-header .close {
  margin-top: -2px;
}
.modal-title {
  margin: 0;
  line-height: 1.72222;
}
.modal-body {
  position: relative;
  padding: 15px;
}
.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5;
}
.modal-footer .btn + .btn {
  margin-left: 5px;
  margin-bottom: 0;
}
.modal-footer .btn-group .btn + .btn {
  margin-left: -1px;
}
.modal-footer .btn-block + .btn-block {
  margin-left: 0;
}
.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}
@media (min-width: 768px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto;
  }
  .modal-content {
    -moz-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
    -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  }
  .modal-sm {
    width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg {
    width: 900px;
  }
}
.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  visibility: visible;
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.4;
  opacity: 0;
  filter: alpha(opacity=0);
}
.tooltip.in {
  opacity: 0.9;
  filter: alpha(opacity=90);
}
.tooltip.top {
  margin-top: -3px;
  padding: 5px 0;
}
.tooltip.right {
  margin-left: 3px;
  padding: 0 5px;
}
.tooltip.bottom {
  margin-top: 3px;
  padding: 5px 0;
}
.tooltip.left {
  margin-left: -3px;
  padding: 0 5px;
}
.tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: #fff;
  text-align: center;
  text-decoration: none;
  background-color: #000;
  border-radius: 4px;
}
.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}
.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.top-left .tooltip-arrow {
  bottom: 0;
  right: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.top-right .tooltip-arrow {
  bottom: 0;
  left: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-width: 5px 5px 5px 0;
  border-right-color: #000;
}
.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 5px;
  border-left-color: #000;
}
.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.tooltip.bottom-left .tooltip-arrow {
  top: 0;
  right: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.tooltip.bottom-right .tooltip-arrow {
  top: 0;
  left: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: none;
  max-width: 276px;
  padding: 1px;
  font-family: 'Open Sans', sans-serif;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.72222;
  text-align: left;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  white-space: normal;
}
.popover.top {
  margin-top: -10px;
}
.popover.right {
  margin-left: 10px;
}
.popover.bottom {
  margin-top: 10px;
}
.popover.left {
  margin-left: -10px;
}
.popover-title {
  margin: 0;
  padding: 8px 14px;
  font-size: 16px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: 5px 5px 0 0;
}
.popover-content {
  padding: 9px 14px;
}
.popover > .arrow,
.popover > .arrow:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}
.popover > .arrow {
  border-width: 11px;
}
.popover > .arrow:after {
  border-width: 10px;
  content: "";
}
.popover.top > .arrow {
  left: 50%;
  margin-left: -11px;
  border-bottom-width: 0;
  border-top-color: #999999;
  border-top-color: rgba(0, 0, 0, 0.25);
  bottom: -11px;
}
.popover.top > .arrow:after {
  content: " ";
  bottom: 1px;
  margin-left: -10px;
  border-bottom-width: 0;
  border-top-color: #fff;
}
.popover.right > .arrow {
  top: 50%;
  left: -11px;
  margin-top: -11px;
  border-left-width: 0;
  border-right-color: #999999;
  border-right-color: rgba(0, 0, 0, 0.25);
}
.popover.right > .arrow:after {
  content: " ";
  left: 1px;
  bottom: -10px;
  border-left-width: 0;
  border-right-color: #fff;
}
.popover.bottom > .arrow {
  left: 50%;
  margin-left: -11px;
  border-top-width: 0;
  border-bottom-color: #999999;
  border-bottom-color: rgba(0, 0, 0, 0.25);
  top: -11px;
}
.popover.bottom > .arrow:after {
  content: " ";
  top: 1px;
  margin-left: -10px;
  border-top-width: 0;
  border-bottom-color: #fff;
}
.popover.left > .arrow {
  top: 50%;
  right: -11px;
  margin-top: -11px;
  border-right-width: 0;
  border-left-color: #999999;
  border-left-color: rgba(0, 0, 0, 0.25);
}
.popover.left > .arrow:after {
  content: " ";
  right: 1px;
  border-right-width: 0;
  border-left-color: #fff;
  bottom: -10px;
}
.carousel {
  position: relative;
}
.carousel-inner {
  position: relative;
  overflow: hidden;
  width: 100%;
}
.carousel-inner > .item {
  display: none;
  position: relative;
  -o-transition: 0.6s ease-in-out left;
  -webkit-transition: 0.6s ease-in-out left;
  transition: 0.6s ease-in-out left;
}
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  line-height: 1;
}
@media all and (transform-3d), (-webkit-transform-3d) {
  .carousel-inner > .item {
    transition: transform 0.6s ease-in-out;
    backface-visibility: hidden;
    perspective: 1000;
  }
  .carousel-inner > .item.next,
  .carousel-inner > .item.active.right {
    transform: translate3d(100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.prev,
  .carousel-inner > .item.active.left {
    transform: translate3d(-100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.next.left,
  .carousel-inner > .item.prev.right,
  .carousel-inner > .item.active {
    transform: translate3d(0, 0, 0);
    left: 0;
  }
}
.carousel-inner > .active,
.carousel-inner > .next,
.carousel-inner > .prev {
  display: block;
}
.carousel-inner > .active {
  left: 0;
}
.carousel-inner > .next,
.carousel-inner > .prev {
  position: absolute;
  top: 0;
  width: 100%;
}
.carousel-inner > .next {
  left: 100%;
}
.carousel-inner > .prev {
  left: -100%;
}
.carousel-inner > .next.left,
.carousel-inner > .prev.right {
  left: 0;
}
.carousel-inner > .active.left {
  left: -100%;
}
.carousel-inner > .active.right {
  left: 100%;
}
.carousel-control {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 15%;
  opacity: 0.5;
  filter: alpha(opacity=50);
  font-size: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}
.carousel-control.left {
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.5) 0%), color-stop(rgba(0, 0, 0, 0.0001) 100%));
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
}
.carousel-control.right {
  left: auto;
  right: 0;
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.0001) 0%), color-stop(rgba(0, 0, 0, 0.5) 100%));
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
}
.carousel-control:hover,
.carousel-control:focus {
  outline: 0;
  color: #fff;
  text-decoration: none;
  opacity: 0.9;
  filter: alpha(opacity=90);
}
.carousel-control .icon-prev,
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-left,
.carousel-control .glyphicon-chevron-right {
  position: absolute;
  top: 50%;
  z-index: 5;
  display: inline-block;
}
.carousel-control .icon-prev,
.carousel-control .glyphicon-chevron-left {
  left: 50%;
  margin-left: -10px;
}
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-right {
  right: 50%;
  margin-right: -10px;
}
.carousel-control .icon-prev,
.carousel-control .icon-next {
  width: 20px;
  height: 20px;
  margin-top: -10px;
  font-family: serif;
}
.carousel-control .icon-prev:before {
  content: '\2039';
}
.carousel-control .icon-next:before {
  content: '\203a';
}
.carousel-indicators {
  position: absolute;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  margin-left: -30%;
  padding-left: 0;
  list-style: none;
  text-align: center;
}
.carousel-indicators li {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 1px;
  text-indent: -999px;
  border: 1px solid #fff;
  border-radius: 10px;
  cursor: pointer;
  background-color: #000 \9;
  background-color: rgba(0, 0, 0, 0);
}
.carousel-indicators .active {
  margin: 0;
  width: 12px;
  height: 12px;
  background-color: #fff;
}
.carousel-caption {
  position: absolute;
  left: 15%;
  right: 15%;
  bottom: 20px;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}
.carousel-caption .btn {
  text-shadow: none;
}
@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -15px;
    font-size: 30px;
  }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -15px;
  }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -15px;
  }
  .carousel-caption {
    left: 20%;
    right: 20%;
    padding-bottom: 30px;
  }
  .carousel-indicators {
    bottom: 20px;
  }
}
.clearfix:before,
.clearfix:after,
.dl-horizontal dd:before,
.dl-horizontal dd:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after,
.form-horizontal .form-group:before,
.form-horizontal .form-group:after,
.btn-toolbar:before,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:before,
.btn-group-vertical > .btn-group:after,
.nav:before,
.nav:after,
.navbar:before,
.navbar:after,
.navbar-header:before,
.navbar-header:after,
.navbar-collapse:before,
.navbar-collapse:after,
.pager:before,
.pager:after,
.panel-body:before,
.panel-body:after,
.modal-footer:before,
.modal-footer:after {
  content: " ";
  display: table;
}
.clearfix:after,
.dl-horizontal dd:after,
.container:after,
.container-fluid:after,
.row:after,
.form-horizontal .form-group:after,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:after,
.nav:after,
.navbar:after,
.navbar-header:after,
.navbar-collapse:after,
.pager:after,
.panel-body:after,
.modal-footer:after {
  clear: both;
}
.clearfix:before,
.clearfix:after,
.dl-horizontal dd:before,
.dl-horizontal dd:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after,
.form-horizontal .form-group:before,
.form-horizontal .form-group:after,
.btn-toolbar:before,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:before,
.btn-group-vertical > .btn-group:after,
.nav:before,
.nav:after,
.navbar:before,
.navbar:after,
.navbar-header:before,
.navbar-header:after,
.navbar-collapse:before,
.navbar-collapse:after,
.pager:before,
.pager:after,
.panel-body:before,
.panel-body:after,
.modal-footer:before,
.modal-footer:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
.clearfix:after,
.dl-horizontal dd:after,
.container:after,
.container-fluid:after,
.row:after,
.form-horizontal .form-group:after,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:after,
.nav:after,
.navbar:after,
.navbar-header:after,
.navbar-collapse:after,
.pager:after,
.panel-body:after,
.modal-footer: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;
  visibility: hidden !important;
}
.affix {
  position: fixed;
}
@-ms-viewport {
  width: device-width;
}
.visible-xs,
.visible-sm,
.visible-md,
.visible-lg {
  display: none !important;
}
.visible-xs,
.visible-sm,
.visible-md,
.visible-lg,
tr.visible-xs,
tr.visible-sm,
tr.visible-md,
tr.visible-lg,
th.visible-xs,
th.visible-sm,
th.visible-md,
th.visible-lg,
td.visible-xs,
td.visible-sm,
td.visible-md,
td.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;
  }
  tr.visible-xs {
    display: table-row !important;
  }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !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;
  }
  tr.visible-sm {
    display: table-row !important;
  }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !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;
  }
  tr.visible-md {
    display: table-row !important;
  }
  th.visible-md,
  td.visible-md {
    display: table-cell !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;
  }
  tr.visible-lg {
    display: table-row !important;
  }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !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;
  }
  .hidden-xs,
  tr.hidden-xs,
  th.hidden-xs,
  td.hidden-xs {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
  .hidden-sm,
  tr.hidden-sm,
  th.hidden-sm,
  td.hidden-sm {
    display: none !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
  .hidden-md,
  tr.hidden-md,
  th.hidden-md,
  td.hidden-md {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
  .hidden-lg,
  tr.hidden-lg,
  th.hidden-lg,
  td.hidden-lg {
    display: none !important;
  }
}
.visible-print {
  display: none !important;
}
.visible-print,
tr.visible-print,
th.visible-print,
td.visible-print {
  display: none !important;
}
@media print {
  .visible-print {
    display: block !important;
  }
  table.visible-print {
    display: table;
  }
  tr.visible-print {
    display: table-row !important;
  }
  th.visible-print,
  td.visible-print {
    display: table-cell !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;
  }
  .hidden-print,
  tr.hidden-print,
  th.hidden-print,
  td.hidden-print {
    display: none !important;
  }
}
html.overlay-open .navbar-fixed-top {
  z-index: 400;
}
html.js fieldset.collapsed {
  height: auto;
}
html.js input.form-autocomplete {
  background-image: none;
}
body {
  position: relative;
}
body.admin-expanded.admin-vertical.admin-nw .navbar,
body.admin-expanded.admin-vertical.admin-sw .navbar {
  margin-left: 260px;
}
body.navbar-is-fixed-top {
  padding-top: 64px !important;
}
body.navbar-is-fixed-bottom {
  padding-bottom: 64px !important;
}
body.toolbar {
  padding-top: 30px !important;
}
body.toolbar .navbar-fixed-top {
  top: 30px;
}
body.toolbar.navbar-is-fixed-top {
  padding-top: 94px !important;
}
body.toolbar-drawer {
  padding-top: 64px !important;
}
body.toolbar-drawer .navbar-fixed-top {
  top: 64px;
}
body.toolbar-drawer.navbar-is-fixed-top {
  padding-top: 128px !important;
}
body.admin-menu .navbar-fixed-top {
  top: 29px;
}
body.admin-menu.navbar-is-fixed-top {
  padding-top: 93px !important;
}
body div#admin-toolbar {
  z-index: 1600;
}
body #toolbar,
body #admin-menu,
body #admin-toolbar {
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
body #admin-menu {
  margin: 0;
  padding: 0;
  position: fixed;
  z-index: 1600;
}
body #admin-menu .dropdown li {
  line-height: normal;
}
.navbar.container {
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .navbar.container {
    max-width: 720px;
  }
}
@media screen and (min-width: 992px) {
  .navbar.container {
    max-width: 940px;
  }
}
@media screen and (min-width: 1200px) {
  .navbar.container {
    max-width: 1140px;
  }
}
.navbar.container > .container {
  margin: 0;
  padding: 0;
  width: auto;
}
#overlay-container,
.overlay-modal-background,
.overlay-element {
  z-index: 1500;
}
#toolbar {
  z-index: 1600;
}
.modal {
  z-index: 1620;
}
.modal-dialog {
  z-index: 1630;
}
.modal-backdrop {
  z-index: 1610;
}
.element-invisible {
  margin: 0;
  padding: 0;
  width: 1px;
}
.navbar .logo {
  margin-right: -15px;
  padding-left: 15px;
  padding-right: 15px;
}
@media screen and (min-width: 768px) {
  .navbar .logo {
    margin-right: 0;
    padding-left: 0;
  }
}
ul.secondary {
  float: left;
}
@media screen and (min-width: 768px) {
  ul.secondary {
    float: right;
  }
}
.page-header {
  margin-top: 0;
}
.block:first-child h2.block-title {
  margin-top: 0;
}
p:last-child {
  margin-bottom: 0;
}
.region-help > .glyphicon {
  font-size: 20px;
  float: left;
  margin: -0.05em 0.5em 0 0;
}
.region-help .block {
  overflow: hidden;
}
form#search-block-form {
  margin: 0;
}
.navbar #block-search-form {
  float: none;
  margin: 5px 0 5px 5px;
}
@media screen and (min-width: 992px) {
  .navbar #block-search-form {
    float: right;
  }
}
.navbar-search .control-group {
  margin-bottom: 0px;
}
ul.action-links {
  margin: 12px 0;
  padding: 0;
}
ul.action-links li {
  display: inline;
  margin: 0;
  padding: 0 6px 0 0;
}
ul.action-links .glyphicon {
  padding-right: 0.5em;
}
input,
textarea,
select,
.uneditable-input {
  max-width: 100%;
  width: auto;
}
input.error {
  color: #e74c3c;
  border-color: #ebccd1;
}
fieldset legend.panel-heading {
  float: left;
  line-height: 1em;
  margin: 0;
}
fieldset .panel-body {
  clear: both;
}
fieldset .panel-heading a.panel-title {
  color: inherit;
  display: block;
  margin: -10px -15px;
  padding: 10px 15px;
}
fieldset .panel-heading a.panel-title:hover {
  text-decoration: none;
}
.form-actions {
  clear: both;
}
.resizable-textarea textarea {
  border-radius: 4px 4px 0 0;
}
.radio:first-child,
.checkbox:first-child {
  margin-top: 0;
}
.radio:last-child,
.checkbox:last-child {
  margin-bottom: 0;
}
.help-block,
.control-group .help-inline {
  color: #bdc3c7;
  font-size: 12px;
  margin: 5px 0 10px;
  padding: 0;
}
.panel-heading {
  display: block;
}
a.tabledrag-handle .handle {
  height: auto;
  width: auto;
}
.error {
  color: #e74c3c;
}
div.error,
table tr.error {
  background-color: #f2dede;
  color: #e74c3c;
}
.control-group.error {
  background: none;
}
.control-group.error label,
.control-group.error .control-label {
  color: #e74c3c;
  font-weight: 600;
}
.control-group.error input,
.control-group.error textarea,
.control-group.error select,
.control-group.error .uneditable-input {
  color: #d9d9d9;
  border: 1px solid #ccc;
}
.control-group.error .help-block,
.control-group.error .help-inline {
  color: #595959;
}
.list-inline > li.first {
  padding-left: 0;
}
.nav-tabs {
  margin-bottom: 10px;
}
ul li.collapsed,
ul li.expanded,
ul li.leaf {
  list-style: none;
  list-style-image: none;
}
.tabs--secondary {
  margin: 0 0 10px;
}
.submitted {
  margin-bottom: 1em;
  font-style: italic;
  font-weight: normal;
  color: #777;
}
.password-strength {
  width: 17em;
  float: right;
  /* LTR */
  margin-top: 1.4em;
}
.password-strength-title {
  display: inline;
}
.password-strength-text {
  float: right;
  /* LTR */
  font-weight: bold;
}
.password-indicator {
  background-color: #949494;
  height: 0.3em;
  width: 100%;
}
.password-indicator div {
  height: 100%;
  width: 0%;
  background-color: #999;
}
input.password-confirm,
input.password-field {
  width: 16em;
  margin-bottom: 0.4em;
}
div.password-confirm {
  float: right;
  /* LTR */
  margin-top: 1.5em;
  visibility: hidden;
  width: 17em;
}
div.form-item div.password-suggestions {
  padding: 0.2em 0.5em;
  margin: 0.7em 0;
  width: 38.5em;
  border: 1px solid #B4B4B4;
}
div.password-suggestions ul {
  margin-bottom: 0;
}
.confirm-parent,
.password-parent {
  clear: left;
  /* LTR */
  margin: 0;
  width: 36.3em;
}
.progress-wrapper .progress {
  margin-bottom: 10px;
}
.pagination ul > li > a.progress-disabled {
  float: left;
}
.form-autocomplete .glyphicon {
  color: #bdc3c7;
  font-size: 120%;
}
.form-autocomplete .glyphicon.glyphicon-spin {
  color: #4b2e83;
}
.form-autocomplete .input-group-addon {
  background-color: #ffffff;
}
.ajax-progress .glyphicon {
  font-size: 90%;
  margin: 0 -0.25em 0 0.5em;
}
.glyphicon-spin {
  display: inline-block;
  -moz-animation: spin 1s infinite linear;
  -o-animation: spin 1s infinite linear;
  -webkit-animation: spin 1s infinite linear;
  animation: spin 1s infinite linear;
}
a .glyphicon-spin {
  display: inline-block;
  text-decoration: none;
}
@-moz-keyframes spin {
  0% {
    -moz-transform: rotate(0deg);
  }
  100% {
    -moz-transform: rotate(359deg);
  }
}
@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
  }
}
@-o-keyframes spin {
  0% {
    -o-transform: rotate(0deg);
  }
  100% {
    -o-transform: rotate(359deg);
  }
}
@-ms-keyframes spin {
  0% {
    -ms-transform: rotate(0deg);
  }
  100% {
    -ms-transform: rotate(359deg);
  }
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
.glyphicon-refresh {
  -webkit-transform-origin: 50% 45%;
  -moz-transform-origin: 50% 45%;
  -ms-transform-origin: 50% 45%;
  -o-transform-origin: 50% 45%;
  transform-origin: 50% 45%;
}
/**
 * Missing Bootstrap 2 tab styling.
 * @see http://stackoverflow.com/questions/18432577/stacked-tabs-in-bootstrap-3
 * @see http://bootply.com/74926
 */
.tabbable {
  margin-bottom: 20px;
}
.tabs-below > .nav-tabs,
.tabs-left > .nav-tabs,
.tabs-right > .nav-tabs {
  border-bottom: 0;
}
.tabs-below > .nav-tabs .summary,
.tabs-left > .nav-tabs .summary,
.tabs-right > .nav-tabs .summary {
  color: #bdc3c7;
  font-size: 14px;
}
.tab-pane > .panel-heading {
  display: none;
}
.tab-content > .active {
  display: block;
}
.tabs-below > .nav-tabs {
  border-top: 1px solid #ddd;
}
.tabs-below > .nav-tabs > li {
  margin-top: -1px;
  margin-bottom: 0;
}
.tabs-below > .nav-tabs > li > a {
  border-radius: 0 0 4px 4px;
}
.tabs-below > .nav-tabs > li > a:hover,
.tabs-below > .nav-tabs > li > a:focus {
  border-top-color: #ddd;
  border-bottom-color: transparent;
}
.tabs-below > .nav-tabs > .active > a,
.tabs-below > .nav-tabs > .active > a:hover,
.tabs-below > .nav-tabs > .active > a:focus {
  border-color: transparent #ddd #ddd #ddd;
}
.tabs-left > .nav-tabs,
.tabs-right > .nav-tabs {
  padding-bottom: 20px;
  width: 220px;
}
.tabs-left > .nav-tabs > li,
.tabs-right > .nav-tabs > li {
  float: none;
}
.tabs-left > .nav-tabs > li:focus,
.tabs-right > .nav-tabs > li:focus {
  outline: 0;
}
.tabs-left > .nav-tabs > li > a,
.tabs-right > .nav-tabs > li > a {
  margin-right: 0;
  margin-bottom: 3px;
}
.tabs-left > .nav-tabs > li > a:focus,
.tabs-right > .nav-tabs > li > a:focus {
  outline: 0;
}
.tabs-left > .tab-content,
.tabs-right > .tab-content {
  border-radius: 0 4px 4px 4px;
  -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
  border: 1px solid #ddd;
  overflow: hidden;
  padding: 10px 15px;
}
.tabs-left > .nav-tabs {
  float: left;
  margin-right: -1px;
}
.tabs-left > .nav-tabs > li > a {
  border-radius: 4px 0 0 4px;
}
.tabs-left > .nav-tabs > li > a:hover,
.tabs-left > .nav-tabs > li > a:focus {
  border-color: #eeeeee #ddd #eeeeee #eeeeee;
}
.tabs-left > .nav-tabs > .active > a,
.tabs-left > .nav-tabs > .active > a:hover,
.tabs-left > .nav-tabs > .active > a:focus {
  border-color: #ddd transparent #ddd #ddd;
  -moz-box-shadow: -1px 1px 1px rgba(0, 0, 0, 0.05);
  -webkit-box-shadow: -1px 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: -1px 1px 1px rgba(0, 0, 0, 0.05);
}
.tabs-right > .nav-tabs {
  float: right;
  margin-left: -1px;
}
.tabs-right > .nav-tabs > li > a {
  border-radius: 0 4px 4px 0;
}
.tabs-right > .nav-tabs > li > a:hover,
.tabs-right > .nav-tabs > li > a:focus {
  border-color: #eeeeee #eeeeee #eeeeee #ddd;
  -moz-box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.05);
  -webkit-box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.05);
}
.tabs-right > .nav-tabs > .active > a,
.tabs-right > .nav-tabs > .active > a:hover,
.tabs-right > .nav-tabs > .active > a:focus {
  border-color: #ddd #ddd #ddd transparent;
}
th.checkbox,
td.checkbox,
th.radio,
td.radio {
  display: table-cell;
}
.views-display-settings .label {
  font-size: 100%;
  color: #666666;
}
.views-display-settings .footer {
  padding: 0;
  margin: 4px 0 0 0;
}
table .radio input[type="radio"],
table .checkbox input[type="checkbox"] {
  max-width: inherit;
}
.form-horizontal .form-group label {
  position: relative;
  min-height: 1px;
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 7px;
  padding-left: 15px;
  padding-right: 15px;
  text-align: right;
}
@media (min-width: 768px) {
  .form-horizontal .form-group label {
    float: left;
    width: 16.66666667%;
  }
}
.alert a {
  font-weight: bold;
}
.alert-success a {
  color: #25a25a;
}
.alert-info a {
  color: #217dbb;
}
.alert-warning a {
  color: #c29d0b;
}
.alert-danger a {
  color: #d62c1a;
}
/**
* UW Marketing & Communications partials
*/
@font-face {
  font-family: 'Encode Sans Compressed';
  src: url('assets/fonts/encodesanscondensed-400-regular-webfont.eot');
  src: url('assets/fonts/encodesanscondensed-400-regular-webfont.eot?#iefix') format('embedded-opentype'), url('assets/fonts/encodesanscondensed-400-regular-webfont.woff') format('woff'), url('assets/fonts/encodesanscondensed-400-regular-webfont.ttf') format('truetype'), url('assets/fonts/encodesanscondensed-400-regular-webfont.svg#encodesanscondensed-400-regular-webfont') format('svg');
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: 'Encode Sans Compressed';
  src: url('assets/fonts/encodesanscondensed-500-medium-webfont.eot');
  src: url('assets/fonts/encodesanscondensed-500-medium-webfont.eot?#iefix') format('embedded-opentype'), url('assets/fonts/encodesanscondensed-500-medium-webfont.woff') format('woff'), url('assets/fonts/encodesanscondensed-500-medium-webfont.ttf') format('truetype'), url('assets/fonts/encodesanscondensed-500-medium-webfont.svg#encodesanscondensed-500-medium-webfont') format('svg');
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: 'Encode Sans Compressed';
  src: url('assets/fonts/encodesanscompressed-600-semibold-webfont.eot');
  src: url('assets/fonts/encodesanscompressed-600-semibold-webfont.eot?#iefix') format('embedded-opentype'), url('assets/fonts/encodesanscompressed-600-semibold-webfont.woff') format('woff'), url('assets/fonts/encodesanscompressed-600-semibold-webfont.ttf') format('truetype'), url('assets/fonts/encodesanscompressed-600-semibold-webfont.svg#encodesanscompressed-600-semibold-webfont') format('svg');
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: 'Encode Sans Compressed';
  src: url('assets/fonts/encodesanscompressed-700-bold-webfont.eot');
  src: url('assets/fonts/encodesanscompressed-700-bold-webfont.eot?#iefix') format('embedded-opentype'), url('assets/fonts/encodesanscompressed-700-bold-webfont.woff') format('woff'), url('assets/fonts/encodesanscompressed-700-bold-webfont.ttf') format('truetype'), url('assets/fonts/encodesanscompressed-700-bold-webfont.svg#encodesanscompressed-700-bold-webfont') format('svg');
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: 'Encode Sans Compressed';
  src: url('assets/fonts/encodesanscompressed-800-extrabold-webfont.eot');
  src: url('assets/fonts/encodesanscompressed-800-extrabold-webfont.eot?#iefix') format('embedded-opentype'), url('assets/fonts/encodesanscompressed-800-extrabold-webfont.woff') format('woff'), url('assets/fonts/encodesanscompressed-800-extrabold-webfont.ttf') format('truetype'), url('assets/fonts/encodesanscompressed-800-extrabold-webfont.svg#encodesanscompressed-800-extrabold-webfont') format('svg');
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: 'Encode Sans Compressed';
  src: url('assets/fonts/encodesanscompressed-900-black-webfont.eot');
  src: url('assets/fonts/encodesanscompressed-900-black-webfont.eot?#iefix') format('embedded-opentype'), url('assets/fonts/encodesanscompressed-900-black-webfont.woff') format('woff'), url('assets/fonts/encodesanscompressed-900-black-webfont.ttf') format('truetype'), url('assets/fonts/encodesanscompressed-900-black-webfont.svg#encodesanscompressed-900-black-webfont') format('svg');
  font-weight: 900;
  font-style: normal;
}
@font-face {
  font-family: "Flat-UI-Icons";
  src: url('assets/icons/flat-ui-icons-regular.eot');
  src: url('assets/icons/flat-ui-icons-regular.eot?#iefix') format('embedded-opentype'), url('assets/icons/flat-ui-icons-regular.woff') format('woff'), url('assets/icons/flat-ui-icons-regular.ttf') format('truetype'), url('assets/icons/flat-ui-icons-regular.svg#flat-ui-icons-regular') format('svg');
  font-weight: normal;
  font-style: normal;
}
/* Use the following CSS code if you want to use data attributes for inserting your icons */
[data-icon]:before {
  font-family: 'Flat-UI-Icons';
  content: attr(data-icon);
  speak: none;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
/* Use the following CSS code if you want to have a class per icon */
/*
Instead of a list of all class selectors,
you can use the generic selector below, but it's slower:
[class*="fui-"] {
*/
.fui-arrow-right,
.fui-arrow-left,
.fui-cmd,
.fui-check-inverted,
.fui-heart,
.fui-location,
.fui-plus,
.fui-check,
.fui-cross,
.fui-list,
.fui-new,
.fui-video,
.fui-photo,
.fui-volume,
.fui-time,
.fui-eye,
.fui-chat,
.fui-search,
.fui-user,
.fui-mail,
.fui-lock,
.fui-gear,
.fui-radio-unchecked,
.fui-radio-checked,
.fui-checkbox-unchecked,
.fui-checkbox-checked,
.fui-calendar-solid,
.fui-pause,
.fui-play,
.fui-check-inverted-2 {
  display: inline-block;
  font-family: 'Flat-UI-Icons';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.fui-arrow-right:before {
  content: "\e02c";
}
.fui-arrow-left:before {
  content: "\e02d";
}
.fui-cmd:before {
  content: "\e02f";
}
.fui-check-inverted:before {
  content: "\e006";
}
.fui-heart:before {
  content: "\e007";
}
.fui-location:before {
  content: "\e008";
}
.fui-plus:before {
  content: "\e009";
}
.fui-check:before {
  content: "\e00a";
}
.fui-cross:before {
  content: "\e00b";
}
.fui-list:before {
  content: "\e00c";
}
.fui-new:before {
  content: "\e00d";
}
.fui-video:before {
  content: "\e00e";
}
.fui-photo:before {
  content: "\e00f";
}
.fui-volume:before {
  content: "\e010";
}
.fui-time:before {
  content: "\e011";
}
.fui-eye:before {
  content: "\e012";
}
.fui-chat:before {
  content: "\e013";
}
.fui-search:before {
  content: "\e01c";
}
.fui-user:before {
  content: "\e01d";
}
.fui-mail:before {
  content: "\e01e";
}
.fui-lock:before {
  content: "\e01f";
}
.fui-gear:before {
  content: "\e024";
}
.fui-radio-unchecked:before {
  content: "\e02b";
}
.fui-radio-checked:before {
  content: "\e032";
}
.fui-checkbox-unchecked:before {
  content: "\e033";
}
.fui-checkbox-checked:before {
  content: "\e034";
}
.fui-calendar-solid:before {
  content: "\e022";
}
.fui-pause:before {
  content: "\e03b";
}
.fui-play:before {
  content: "\e03c";
}
.fui-check-inverted-2:before {
  content: "\e000";
}
.dropdown-arrow-inverse {
  border-bottom-color: #4b2e83 !important;
  border-top-color: #4b2e83 !important;
}
body {
  font-family: 'Open Sans', sans-serif;
  font-size: 16px;
  line-height: 1.72222;
  color: #595959;
  background-color: #fff;
}
a {
  color: #0088DD;
  text-decoration: none;
  -o-transition: 0.25s;
  -webkit-transition: 0.25s;
  transition: 0.25s;
}
a:hover,
a:focus {
  color: #d9d9d9;
  text-decoration: none;
}
a:focus {
  outline: none;
}
.img-rounded {
  border-radius: 6px;
}
.img-thumbnail {
  padding: 4px;
  line-height: 1.72222;
  background-color: #fff;
  border: 2px solid #bdc3c7;
  border-radius: 6px;
  -o-transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  display: inline-block;
  max-width: 100%;
  height: auto;
}
.img-comment {
  font-size: 14px;
  line-height: 1.2;
  font-style: italic;
  margin: 24px 0;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: "Open Sans", sans-serif;
  font-weight: 700;
  line-height: 1.3;
  color: inherit;
}
h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small,
.h1 small,
.h2 small,
.h3 small,
.h4 small,
.h5 small,
.h6 small {
  color: #e9e6f0;
}
h1,
h2,
h3 {
  margin-top: 27px;
  margin-bottom: 13.5px;
}
h4,
h5,
h6 {
  margin-top: 13.5px;
  margin-bottom: 13.5px;
}
h6 {
  font-weight: normal;
}
h1,
.h1 {
  font-size: 36px;
}
h2,
.h2 {
  font-size: 29px;
}
h3,
.h3 {
  font-size: 23px;
}
h4,
.h4 {
  font-size: 20px;
}
h5,
.h5 {
  font-size: 17px;
}
h6,
.h6 {
  font-size: 18px;
}
p {
  font-size: 16px;
  line-height: 1.72222;
  margin: 0 0 13.5px;
  font-weight: normal;
  color: #3D3D3D;
  -webkit-font-smoothing: antialiased;
}
.lead {
  margin-bottom: 27px;
  font-size: 24px;
  line-height: 1.46428571;
  font-weight: 300;
}
@media (min-width: 768px) {
  .lead {
    font-size: 26.672px;
  }
}
small,
.small {
  font-size: 83%;
  line-height: 2.067;
}
.text-muted {
  color: #bdc3c7;
}
.text-inverse {
  color: white;
}
.text-primary {
  color: #4b2e83;
}
a.text-primary:hover {
  color: #35215d;
}
a.text-primary:hover {
  color: #3c2569;
}
.text-warning {
  color: #f1c40f;
}
a.text-warning:hover {
  color: #c29d0b;
}
a.text-warning:hover {
  color: #c19d0c;
}
.text-danger {
  color: #e74c3c;
}
a.text-danger:hover {
  color: #d62c1a;
}
a.text-danger:hover {
  color: #b93d30;
}
.text-success {
  color: #2ecc71;
}
a.text-success:hover {
  color: #25a25a;
}
a.text-success:hover {
  color: #25a35a;
}
.text-info {
  color: #3498db;
}
a.text-info:hover {
  color: #217dbb;
}
a.text-info:hover {
  color: #2a7aaf;
}
.bg-primary {
  color: white;
  background-color: #4b2e83;
}
a.bg-primary:hover {
  background-color: #35215d;
}
a.bg-primary:hover {
  background-color: #35215d;
}
.bg-success {
  background-color: #dff0d8;
}
a.bg-success:hover {
  background-color: #c1e2b3;
}
a.bg-success:hover {
  background-color: #c1e2b3;
}
.bg-info {
  background-color: #d9edf7;
}
a.bg-info:hover {
  background-color: #afd9ee;
}
a.bg-info:hover {
  background-color: #afd9ee;
}
.bg-warning {
  background-color: #fcf8e3;
}
a.bg-warning:hover {
  background-color: #f7ecb5;
}
a.bg-warning:hover {
  background-color: #f7ecb5;
}
.bg-danger {
  background-color: #f2dede;
}
a.bg-danger:hover {
  background-color: #e4b9b9;
}
a.bg-danger:hover {
  background-color: #e4b9b9;
}
.page-header {
  padding-bottom: 12.5px;
  border-bottom: 1px solid #e9e6f0;
}
ul,
ol {
  margin-bottom: 13.5px;
}
dl {
  margin-bottom: 27px;
}
dt,
dd {
  line-height: 1.72222;
}
@media (min-width: 768px) {
  .dl-horizontal dt {
    width: 160px;
  }
  .dl-horizontal dd {
    margin-left: 180px;
  }
}
abbr[title],
abbr[data-original-title] {
  border-bottom: 1px dotted #bdc3c7;
}
blockquote {
  border-left: 3px solid #e9e6f0;
  padding: 0 0 0 16px;
  margin: 0 0 27px;
}
blockquote p {
  font-size: 18px;
  line-height: 1.55;
  font-weight: normal;
  margin-bottom: .4em;
}
blockquote small,
blockquote .small {
  font-size: 16px;
  line-height: 1.72222;
  font-style: italic;
  color: inherit;
}
blockquote small:before,
blockquote .small:before {
  content: "";
}
blockquote.pull-right {
  padding-right: 16px;
  padding-left: 0;
  border-right: 3px solid #e9e6f0;
  border-left: 0;
}
blockquote.pull-right small:after {
  content: "";
}
address {
  margin-bottom: 27px;
  line-height: 1.72222;
}
/* Styles necessary for quicklinks */
#uw-container {
  position: relative;
  width: 100%;
  height: 100%;
  margin-left: 0;
  background-color: white;
  overflow-x: hidden;
}
#uw-container #quicklinks {
  position: absolute;
  background-color: #4d4d4d;
  top: 0px;
  right: 0px;
  height: 100%;
  width: 300px;
  padding: 10px 0 0 90px;
  transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  background: #4d4d4d;
  background: #2e2e2e;
  background: -moz-linear-gradient(left, #2e2e2e 0%, #4d4d4d 4%, #4d4d4d 100%);
  background: -webkit-gradient(left top, right top, color-stop(0%, #2e2e2e), color-stop(4%, #4d4d4d), color-stop(100%, #4d4d4d));
  background: -webkit-linear-gradient(left, #2e2e2e 0%, #4d4d4d 4%, #4d4d4d 100%);
  background: -o-linear-gradient(left, #2e2e2e 0%, #4d4d4d 4%, #4d4d4d 100%);
  background: -ms-linear-gradient(left, #2e2e2e 0%, #4d4d4d 4%, #4d4d4d 100%);
  background: linear-gradient(to right, #2e2e2e 0%, #4d4d4d 4%, #4d4d4d 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#2e2e2e', endColorstr='#4d4d4d', GradientType=1);
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transform: matrix(1, 0, 0, 1, 190, 0);
  -moz-transform: matrix(1, 0, 0, 1, 190, 0);
  -ms-transform: matrix(1, 0, 0, 1, 190, 0);
  -o-transform: matrix(1, 0, 0, 1, 190, 0);
  transform: matrix(1, 0, 0, 1, 190, 0);
}
#uw-container #quicklinks ul {
  padding: 0;
}
#uw-container #quicklinks ul#big-links {
  list-style: none;
  margin-top: 10px;
}
#uw-container #quicklinks ul#big-links li {
  display: block;
  width: 100%;
  padding: 14px 0 0 0;
}
#uw-container #quicklinks ul#big-links li a {
  font-family: "Open Sans", sans-serif;
  font-size: 18px;
  margin-left: 15px;
}
#uw-container #quicklinks ul#big-links li a:hover,
#uw-container #quicklinks ul#big-links li a:focus {
  color: #ffd800;
  text-decoration: underline;
}
#uw-container #quicklinks ul#big-links li span {
  display: block;
  float: left;
  width: 30px;
  height: 30px;
  background: url(assets/svg/uw-sprite.svg) no-repeat 0 0;
}
#uw-container #quicklinks ul#big-links li span.icon-maps {
  background-position: 6px -303px;
}
#uw-container #quicklinks ul#big-links li span.icon-directories {
  background-position: -84px -303px;
}
#uw-container #quicklinks ul#big-links li span.icon-calendar {
  background-position: -39px -303px;
}
#uw-container #quicklinks ul#big-links li span.icon-libraries {
  background-position: -129px -303px;
}
#uw-container #quicklinks ul#big-links li span.icon-medicine {
  background-position: -264px -303px;
}
#uw-container #quicklinks ul#big-links li span.icon-myuw {
  background-position: -174px -303px;
}
#uw-container #quicklinks ul#big-links li span.icon-uwtoday {
  background-position: -219px -303px;
}
#uw-container #quicklinks h3 {
  font-size: 18px;
  color: white;
  margin: 40px 0 30px 0;
  position: relative;
}
#uw-container #quicklinks h3:after {
  content: "";
  display: block;
  width: 30px;
  height: 1px;
  background-color: white;
  position: absolute;
  bottom: -19px;
}
#uw-container #quicklinks ul#little-links {
  margin-left: 10px;
}
#uw-container #quicklinks ul#little-links li {
  list-style: none;
  position: relative;
}
#uw-container #quicklinks ul#little-links li:before {
  content: "";
  width: 6px;
  height: 6px;
  display: block;
  background-color: #ffd800;
  position: absolute;
  left: -15px;
  top: 13px;
  border-top-right-radius: 100%;
  border-bottom-right-radius: 100%;
  border-bottom-left-radius: 100%;
  border-top-left-radius: 100%;
}
#uw-container #quicklinks ul#little-links li:before {
  background-color: #9bc343;
}
#uw-container #quicklinks ul#little-links li a {
  font-family: "Open Sans", sans-serif;
  font-size: 18px;
}
#uw-container #quicklinks ul#little-links li a:hover,
#uw-container #quicklinks ul#little-links li a:focus {
  color: #ffd800;
  text-decoration: underline;
}
#uw-container #quicklinks a {
  color: white;
}
#uw-container #quicklinks.open {
  -webkit-transform: matrix(1, 0, 0, 1, 0, 0);
  -moz-transform: matrix(1, 0, 0, 1, 0, 0);
  -ms-transform: matrix(1, 0, 0, 1, 0, 0);
  -o-transform: matrix(1, 0, 0, 1, 0, 0);
  transform: matrix(1, 0, 0, 1, 0, 0);
}
#uw-container div#uw-container-inner {
  position: relative;
  background-color: white;
  box-shadow: 10px 0px 11px -6px #1f1f1f;
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
#uw-container.open div#uw-container-inner {
  -webkit-transform: matrix(1, 0, 0, 1, -270, 0);
  -moz-transform: matrix(1, 0, 0, 1, -270, 0);
  -ms-transform: matrix(1, 0, 0, 1, -270, 0);
  -o-transform: matrix(1, 0, 0, 1, -270, 0);
  transform: matrix(1, 0, 0, 1, -270, 0);
}
@media only screen and (max-width: 767px) {
  #uw-container #quicklinks {
    padding: 0 0 0 70px;
  }
}
.assistive-text {
  position: absolute;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  z-index: -1;
}
#dawgdrops {
  -moz-box-shadow: 0 1px 3px rgba(34, 25, 25, 0.4);
  -webkit-box-shadow: 0 1px 3px rgba(34, 25, 25, 0.4);
  box-shadow: 0 1px 3px rgba(34, 25, 25, 0.4);
  background-color: white;
  position: relative;
  z-index: 5;
  display: block;
}
#dawgdrops ul {
  padding-left: 0;
  padding-right: 0;
  margin: 0;
  list-style: none;
}
#dawgdrops li {
  list-style: none;
  display: inline-block;
}
#dawgdrops li li {
  width: 80%;
  margin: 0 10%;
}
.dawgdrops-inner {
  padding: 20px 0 5px 0;
}
.menu-block {
  float: left;
  width: 230px;
}
.dawgdrops-item.dawgdrops-item a {
  font-family: "Encode Sans Compressed", sans-serif;
  font-weight: 700;
  font-size: 20px;
  padding: 5px 10px 21px 15px;
}
.dawgdrops-item.dawgdrops-item a:focus,
.dawgdrops-item.dawgdrops-item a:hover {
  color: #85754d;
}
.dawgdrops-item.dawgdrops-item li a {
  font-family: "Encode Sans Compressed", sans-serif;
  text-transform: none;
  font-weight: 700;
  padding-bottom: 4px;
  padding-left: 10px;
  padding-top: 4px;
  margin-left: 0;
  margin-right: 0;
  margin-top: 6px;
  margin-bottom: 6px;
  font-size: 20px;
  line-height: 28px;
}
.dawgdrops-item.dawgdrops-item li a:hover,
.dawgdrops-item.dawgdrops-item li a:focus {
  color: #4b2e83;
  background-color: #E7E7E7;
}
.dawgdrops-item a {
  color: #4b2e83;
  -webkit-font-smoothing: antialiased;
  font-size: 22px;
  text-transform: uppercase;
  padding: 24px 10px 19px 15px;
  display: block;
  position: relative;
}
.dawgdrops-item a.dropdown-toggle {
  padding-right: 30px;
}
.dawgdrops-item a.dropdown-toggle:hover:before {
  background: url(assets/svg/uw-sprite.svg) no-repeat -203px -490px;
  -o-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  height: 25px;
  width: 18px;
  right: 4px;
  top: 8px;
}
.dawgdrops-item a.dropdown-toggle:before {
  content: "";
  position: absolute;
  height: 10px;
  width: 10px;
  right: 8px;
  top: 17px;
  background: url(assets/svg/uw-sprite.svg) no-repeat -353px 0px;
}
.dawgdrops-item a:after {
  content: "";
  position: absolute;
  right: -14px;
  height: 24px;
  width: 12px;
  top: 14px;
  background: url('assets/svg/slash.svg') no-repeat;
}
.dawgdrops-item:hover .dawgdrops-menu {
  display: block;
}
.dawgdrops-item:last-child a:after {
  display: none;
}
.dawgdrops-menu {
  top: 66px;
  left: 0;
  position: absolute;
  display: none;
  min-width: 260px;
  border: 0;
  border-top: 4px solid #4b2e83;
  padding: 10px 0;
  margin: -1px 0 0;
  background: #fff;
  overflow: hidden;
  z-index: 1;
  -webkit-box-shadow: 1px 1px 8px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 1px 1px 8px rgba(0, 0, 0, 0.5);
  box-shadow: 1px 1px 8px rgba(0, 0, 0, 0.5);
}
.dawgdrops-menu li {
  float: left;
  clear: left;
  border-bottom: thin solid #eee;
}
.dawgdrops-menu li a {
  color: #707070;
  font-size: 17px;
  margin: 10px 30px 0px 20px;
  text-align: left;
  padding: 0 10px;
}
.dawgdrops-menu li a:after {
  background: none;
}
.dawgdrops-menu li:first-child {
  margin-top: 5px;
}
.dawgdrops-menu li:last-child {
  margin-bottom: 10px;
  border: none;
}
/* Small Devices, Tablets */
@media only screen and (max-width: 767px) {
  section.block-menu {
    z-index: 1000;
  }
  #dawgdrops {
    display: none;
  }
  #menu-toggle {
    z-index: 1000;
  }
  #menu-toggle ul.menu {
    background-color: #4b2e83;
  }
  #menu-toggle ul.menu ul.dropdown-menu {
    display: block;
    position: relative;
    border: none;
    box-shadow: none;
    background: transparent;
  }
  #menu-toggle ul.menu ul.dropdown-menu li {
    padding-left: 35px;
    background: transparent;
  }
  #menu-toggle ul.menu ul.dropdown-menu li a {
    border: none;
  }
  #menu-toggle ul.menu li.dropdown a.dropdown-toggle {
    border-bottom: none;
  }
}
/* Medium Devices, Desktops */
@media only screen and (max-width: 992px) {
  .dawgdrops-inner {
    padding: 20px 0;
  }
  .dawgdrops-item.dawgdrops-item:hover .dawgdrops-menu {
    display: none;
  }
  .dawgdrops-item.dawgdrops-item a {
    padding: 4px 10px 10px 15px;
  }
  .dawgdrops-item.dawgdrops-item a.dropdown-toggle {
    padding-right: 10px;
  }
  .dawgdrops-item.dawgdrops-item a:before {
    display: none;
  }
  .dawgdrops-item.dawgdrops-item a:after {
    top: 13px;
  }
}
@media only screen and (min-width: 993px) and (max-width: 1200px) {
  .dawgdrops-item.dawgdrops-item a {
    font-size: 18px;
    padding-bottom: 23px;
  }
}
@media only screen and (min-width: 768px) {
  nav#dawgdrops .btn-myuw a {
    font-size: 18px;
    text-transform: none;
    color: #FFF;
    font-weight: 600;
    position: absolute;
    top: 65px;
    right: 0;
    padding: 15px 20px 20px 100px;
    z-index: -1;
    overflow: hidden;
  }
  nav#dawgdrops .btn-myuw a:after {
    content: "";
    display: block;
    position: absolute;
    width: 40px;
    height: 33px;
    left: 58px;
    top: 16px;
    background: url(assets/svg/person.svg) no-repeat 0 0;
  }
  nav#dawgdrops .btn-myuw a:hover {
    color: black;
  }
  nav#dawgdrops .btn-myuw a:before {
    content: "";
    display: block;
    position: absolute;
    top: 17px;
    width: 450px;
    height: 60px;
    left: 33px;
    top: -1px;
    background-color: #85754d;
    -webkit-transform: skewX(-15deg) skewY(0);
    -o-transform: skewX(-15deg) skewY(0);
    transform: skewX(-15deg) skewY(0);
    -webkit-transform: skew(-15deg, 0);
    -ms-transform: skewX(-15deg) skewY(0);
    transform: skew(-15deg, 0);
    z-index: -1;
    box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.4);
  }
}
.dropdown-menu {
  padding: 0;
}
.dropdown-menu a {
  border-radius: 4px;
}
.uw-thinstrip {
  height: 90px;
  width: 100%;
  background: #4b2e83;
  padding-top: 22px;
  position: relative;
  z-index: 2;
  -moz-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
}
.uw-thinstrip .container {
  position: relative;
}
.uw-thinstrip .allen-school-wordmark {
  display: block;
  position: absolute;
  top: 17px;
  left: 15px;
}
.uw-thinstrip .allen-school-wordmark img {
  margin-top: -25px;
  height: 60px;
}
.uw-thinstrip div.align-right {
  float: right;
}
.uw-thinstrip nav {
  display: inline-block;
  vertical-align: top;
}
.uw-thinstrip ul.uw-thin-links {
  margin: 0;
  position: relative;
  z-index: 1;
  font-weight: 700;
  padding: 0;
}
.uw-thinstrip ul.uw-thin-links li {
  float: left;
  list-style: none;
}
.uw-thinstrip ul.uw-thin-links li:last-child a:after {
  display: none;
}
.uw-thinstrip ul.uw-thin-links li a,
.uw-thinstrip ul.uw-thin-links li button {
  font-family: "Open Sans", sans-serif;
  color: #fff;
  font-size: 17px;
  font-weight: 600;
  position: relative;
  float: right;
  padding: 8px 25px 10px 0;
  letter-spacing: .01em;
}
.uw-thinstrip ul.uw-thin-links li a:after,
.uw-thinstrip ul.uw-thin-links li button:after {
  position: absolute;
  right: 6px;
  height: 32px;
  width: 12px;
  top: 7px;
  content: "";
}
.uw-thinstrip ul.uw-thin-links li a:hover,
.uw-thinstrip ul.uw-thin-links li button:hover,
.uw-thinstrip ul.uw-thin-links li a:focus,
.uw-thinstrip ul.uw-thin-links li button:focus {
  color: #b7a57a;
  text-decoration: underline;
}
.uw-thinstrip button {
  border: none;
  display: inline-block;
  vertical-align: top;
  font-family: "Open Sans", sans-serif;
  font-size: 17px;
  font-weight: 600;
  position: relative;
  z-index: 1;
}
.uw-thinstrip button.uw-search {
  text-indent: -99999px;
  padding-right: 78px;
  outline: none;
  background-color: transparent;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  width: 45px;
  padding: 0;
  height: 45px;
  margin: 0 15px;
  overflow: hidden;
}
.uw-thinstrip button.uw-search:hover,
.uw-thinstrip button.uw-search:focus {
  background-color: #3a2365;
  -o-transition: all 0.1s linear;
  -webkit-transition: all 0.1s linear;
  transition: all 0.1s linear;
}
.uw-thinstrip button.uw-search:after {
  display: none;
}
.uw-thinstrip button.uw-search svg {
  position: absolute;
  top: 12px;
  left: 11px;
}
.uw-thinstrip button.uw-quicklinks {
  height: 45px;
  margin-left: -15px;
  margin-right: 0;
  padding-right: 34px;
  color: #FFF;
  background-color: transparent;
  overflow: hidden;
}
.uw-thinstrip button.uw-quicklinks div {
  position: absolute;
  top: -22px;
  right: 0px;
  width: 160px;
  height: 68px;
  margin: 0px;
}
.uw-thinstrip button.uw-quicklinks:hover,
.uw-thinstrip button.uw-quicklinks:focus {
  color: #FFF;
  text-shadow: 0px 0px 4px rgba(0, 0, 0, 0.54);
  text-decoration: underline;
  outline: none;
  -o-transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.uw-thinstrip button.uw-quicklinks:hover svg,
.uw-thinstrip button.uw-quicklinks:focus svg {
  right: 15px;
}
.uw-thinstrip button.uw-quicklinks:after {
  display: none;
}
.uw-thinstrip button.uw-quicklinks svg {
  position: absolute;
  right: 11px;
  top: 16px;
  -o-transition: right 0.2s ease;
  -webkit-transition: right 0.2s ease;
  transition: right 0.2s ease;
}
.search-open .uw-thinstrip button.uw-search svg {
  top: -20px;
  left: 10px;
}
.open .uw-thinstrip ul.uw-thin-links li.uw-quicklinks button:hover svg,
.open .uw-thinstrip ul.uw-thin-links li.uw-quicklinks button:focus svg {
  right: 11px;
}
.open .uw-thinstrip ul.uw-thin-links li.uw-quicklinks button svg {
  top: -37px;
}
#uw-container.open .uw-quicklinks a {
  color: black;
}
#uw-container.open .uw-quicklinks a:after {
  top: 11px;
  right: 10px;
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#dawgdrops {
  background-color: #d9d9d9;
}
/* Small Devices, Tablets */
@media only screen and (max-width: 767px) {
  #uw-container.open .uw-quicklinks button {
    color: black;
    background-position: -492px -317px;
  }
  #uw-container.open .uw-quicklinks button:after {
    background-position: -294px -52px;
    background-size: 880px;
  }
  .uw-thinstrip {
    padding: 0;
    height: 45px;
  }
  .uw-thinstrip .container {
    position: static;
  }
  .uw-thinstrip .allen-school-wordmark {
    width: 73px;
    height: 45px;
    top: 0;
    left: 0;
    background-size: 470px;
    -o-transition: all 0s;
    -webkit-transition: all 0s;
    transition: all 0s;
  }
  .uw-thinstrip .allen-school-wordmark:hover,
  .uw-thinstrip .allen-school-wordmark:focus {
    background-size: 470px;
  }
  .uw-thinstrip .allen-school-wordmark img {
    height: 35px;
    margin-top: 5px;
    margin-left: 5px;
  }
  .uw-thinstrip .uw-wordmark {
    width: 155px;
    height: 34px;
    margin: 0;
    float: none;
    top: 4px;
    background-size: 397px;
  }
  .uw-thinstrip button.uw-quicklinks {
    background-position: -484px -247px;
    background-size: 900px;
    text-indent: -99999px;
    overflow: hidden;
    padding: 20px 9px 0 0;
    width: 50px;
    top: 0;
    right: 0;
    position: absolute;
  }
  .uw-thinstrip button.uw-quicklinks:after {
    background-position: -253px 4px;
    background-size: 780px;
    top: 11px;
    right: 9px;
  }
  .uw-thinstrip button.uw-search {
    display: none;
  }
  .uw-thin-links {
    display: none;
  }
  .search-open .uw-thinstrip button.uw-search svg {
    top: -17px;
    left: 14px;
  }
  .uw-thinstrip ul.uw-thin-links li {
    display: none;
  }
  .uw-thinstrip ul.uw-thin-links li.uw-search,
  .uw-thinstrip ul.uw-thin-links li.uw-quicklinks {
    display: block;
  }
  .uw-thinstrip ul.uw-thin-links li.uw-quicklinks button:before {
    background: none;
  }
  .uw-thinstrip ul.uw-thin-links li.uw-quicklinks div {
    display: none;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .uw-thinstrip {
    height: 140px;
  }
  .uw-thinstrip .allen-school-wordmark {
    z-index: 2;
  }
  .uw-thinstrip div.align-right {
    position: relative;
  }
  .uw-thinstrip div.align-right #search-quicklinks {
    position: absolute;
    top: 0px;
    right: 0px;
    min-width: 230px;
  }
  .uw-thinstrip ul.uw-thin-links:before {
    position: absolute;
    top: 0;
    height: 50px;
    width: 100%;
    content: "";
    background-color: #4b2e83;
  }
  .uw-thinstrip ul.uw-thin-links li a,
  .uw-thinstrip ul.uw-thin-links li button {
    font-size: 16px;
    padding: 10px 25px 10px 0;
    color: white;
  }
  .uw-thinstrip li {
    margin-top: 68px;
  }
  .uw-thinstrip li.uw-quicklinks {
    position: absolute;
    right: 0;
    top: -69px;
    margin: 0;
  }
  .uw-thinstrip ul.uw-thin-links li.uw-search {
    position: absolute;
    right: 145px;
    top: -69px;
    margin: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1020px) {
  .uw-thinstrip .allen-school-wordmark {
    -o-transform: scale(0.8, 0.8);
    -webkit-transform: scale(0.8, 0.8);
    -ms-transform: scale(0.8, 0.8);
    transform: scale(0.8, 0.8);
    top: 12px;
    left: -15px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
  .uw-thinstrip ul.uw-thin-links li a,
  .uw-thinstrip ul.uw-thin-links li button {
    font-size: 16px;
    padding: 10px 25px 10px 0;
  }
}
.uw-hero-image,
.no-uw-hero-image {
  height: 170px;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  position: relative;
}
.uw-hero-image:after,
.no-uw-hero-image:after {
  position: absolute;
  bottom: 0;
  height: 80px;
  width: 100%;
  content: "";
  background: url('assets/images/stripes-dark-tile.svg');
  opacity: .2;
}
.uw-hero-image:before,
.no-uw-hero-image:before {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 80px;
  width: 100%;
  content: "";
  opacity: .4;
  background: -webkit-gradient(linear, 0 0, 0 100%, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.8))) 0 0 no-repeat;
}
.uw-hero-image.hero-height,
.no-uw-hero-image.hero-height {
  height: 350px;
}
.uw-hero-image.hero-height #hero-container,
.no-uw-hero-image.hero-height #hero-container {
  padding-left: 0;
  position: static;
}
.uw-hero-image.hero-height #hero-container h1,
.no-uw-hero-image.hero-height #hero-container h1 {
  line-height: 1;
  padding: 80px 20% 0 0;
  margin: 0;
  text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.5);
}
.uw-hero-image.hero-height #hero-container h1:after,
.no-uw-hero-image.hero-height #hero-container h1:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  height: 360px;
  left: -140px;
  opacity: .3;
  width: 600px;
  background: url(assets/svg/slashes-light.svg) no-repeat 0 0;
  z-index: 0;
}
.uw-hero-image.hero-height:after,
.no-uw-hero-image.hero-height:after {
  display: none;
}
.uw-hero-image.hero-height #hero-bg,
.no-uw-hero-image.hero-height #hero-bg {
  padding: 0;
}
.uw-hero-image.hero-height .udub-slant span,
.no-uw-hero-image.hero-height .udub-slant span {
  background-color: #E8E3D3;
}
.no-uw-hero-image {
  background: none;
  background-color: #e8e3d3;
  height: 130px;
}
.no-uw-hero-image:after {
  opacity: .2;
}
.no-uw-hero-image:before {
  display: none;
}
.udub-slant {
  overflow: hidden;
  display: block;
  margin: 30px 0 25px 0;
}
.udub-slant span {
  -webkit-transform: skewX(-25deg) skewY(0);
  -o-transform: skewX(-25deg) skewY(0);
  transform: skewX(-25deg) skewY(0);
  -webkit-transform: skew(-25deg, 0);
  -ms-transform: skewX(-25deg) skewY(0);
  transform: skew(-25deg, 0);
  display: block;
  height: 11px;
  width: 210px;
  background-color: white;
  margin: 0 0 0 -5px;
}
.page-template-templatestemplate-no-hero-php .uw-body .uw-site-title {
  color: #5A5A5A;
}
.page-template-templatestemplate-no-title-php .uw-body .uw-site-title {
  display: none;
}
.page-template-templatestemplate-no-title-php .uw-body.container {
  margin-top: 30px;
}
.page-template-templatestemplate-no-title-php ul.uw-sidebar-menu {
  margin-top: -20px;
}
/* Small Devices, Tablets */
@media only screen and (max-width: 767px) {
  .uw-hero-image {
    display: none;
  }
  .uw-hero-image.hero-height {
    padding: 50px 20px 20px;
    display: block;
    height: auto;
  }
  .uw-hero-image.hero-height #hero-container h1 {
    font-size: 35px;
    padding: 0;
  }
  .uw-hero-image.hero-height #hero-container h1:after {
    background-size: 80%;
    -moz-background-size: 80%;
    -webkit-background-size: 80%;
    top: -60px;
    left: -270px;
  }
  .uw-hero-image.hero-blank {
    display: block;
  }
  .uw-hero-image.hero-blank .uw-site-title-blank {
    font-size: 30px;
    margin: 5px 0 20px 5px;
  }
  .udub-slant {
    margin: 10px 0 15px 0;
  }
  .udub-slant span {
    height: 8px;
    margin: 0 0 0 -145px;
  }
  div.container.uw-body {
    padding-top: 0;
  }
  div.container.uw-body div.uw-site-title {
    margin-top: 0;
  }
  div.hero-content.col-md-12.uw-content {
    margin-top: 0;
  }
}
.uw-breadcrumbs {
  margin: -17px 0 0 -30px;
  background-color: white;
  display: inline-block;
  padding: 20px 20px 0 30px;
}
.uw-breadcrumbs ul {
  padding: 0;
  margin: 0;
}
.uw-breadcrumbs li {
  list-style: none;
  display: inline-block;
  position: relative;
}
.uw-breadcrumbs li:first-child a {
  background: url(assets/svg/uw-sprite.svg) no-repeat -249px 5px;
  text-indent: -99999px;
  width: 30px;
  padding: 5px 0 5px 0;
  margin-right: 25px;
}
.uw-breadcrumbs li:first-child a:before {
  right: -18px;
}
.uw-breadcrumbs li:first-child:after {
  top: 17px;
}
.uw-breadcrumbs li.current span {
  color: #85754d;
}
.uw-breadcrumbs li.current:after {
  display: none;
}
.uw-breadcrumbs li:before {
  content: "";
  position: absolute;
  height: 29px;
  width: 25px;
  right: 0;
  top: 4px;
  background: url('assets/images/breadcrumb-gradient.png') right top repeat-y transparent;
}
.uw-breadcrumbs li:after {
  content: "";
  position: absolute;
  height: 10px;
  width: 10px;
  right: 5px;
  top: 7px;
  opacity: 0.8;
  filter: alpha(opacity=80);
  background: url('assets/svg/caret.svg') no-repeat;
  -webkit-background-size: 7px 5px;
  -moz-background-size: 7px 5px;
  -o-background-size: 7px 5px;
  background-size: 7px 5px;
  -o-transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.uw-breadcrumbs li:empty {
  display: none;
}
.uw-breadcrumbs li a:hover {
  border-bottom: none;
  text-decoration: underline;
}
.uw-breadcrumbs a,
.uw-breadcrumbs span {
  font-family: "Open Sans", sans-serif;
  color: #535353;
  font-weight: 500;
  font-size: 15px;
  padding: 0 25px 0 0;
  display: block;
  white-space: nowrap;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .uw-breadcrumbs {
    float: none;
    padding: 0;
    margin: 0 0 0 -5px;
  }
  .uw-breadcrumbs li {
    float: left;
    display: initial;
  }
  .uw-breadcrumbs li a,
  .uw-breadcrumbs li span {
    padding: 0 25px 0 0;
  }
  .uw-breadcrumbs li:first-child a {
    background-position: -250px -3px;
    padding: 0;
  }
  .uw-breadcrumbs li:first-child:after {
    top: 8px;
  }
}
ul {
  padding-left: 25px;
}
dd {
  margin-bottom: 24.5px;
}
hr {
  border-top: 1px solid #EBEBEB;
  clear: both;
}
iframe {
  margin: 40px 0 20px;
}
small,
.small {
  font-size: 15px;
  line-height: 1.5;
}
.intro {
  font-family: "Open Sans", sans-serif;
  font-size: 23px;
  font-weight: 400;
  line-height: 1.5;
  margin-bottom: 20px;
}
.uw-body-copy .weight-900 {
  font-weight: 900;
}
a.more {
  position: relative;
}
a.more:after {
  background: url(/wp-content/themes/uw-2014/assets/svg/uw-sprite.svg) no-repeat -206px -492px;
  content: "";
  position: absolute;
  right: -24px;
  bottom: 0px;
  width: 14px;
  height: 21px;
  -o-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.no-blue-links a {
  color: #4b2e83;
}
.no-blue-links a.btn-bs {
  color: #FFF;
}
.uw-body {
  position: relative;
}
.uw-body.container {
  background-color: white;
}
body.front .front-background {
  background-image: url(assets/images/front_page_bg.gif);
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
}
body.front .front-background .uw-body,
body.front .front-background .row {
  background-color: transparent;
}
.uw-body {
  padding-top: 10px;
  -webkit-font-smoothing: antialiased;
}
.uw-body h1,
.uw-body h2 {
  color: #4b2e83;
  display: block;
}
.uw-body h2,
.uw-body h3,
.uw-body h4,
.uw-body h5 {
  font-weight: 700;
}
.uw-body blockquote p {
  font-family: "Open Sans", sans-serif;
  font-size: 21px;
}
.uw-body .uw-site-title {
  position: absolute;
  top: -150px;
  left: 11px;
  color: #fff;
  font-family: "Open Sans", sans-serif;
  font-size: 50px;
  line-height: 55px;
  font-weight: 900;
  -webkit-font-smoothing: antialiased;
}
.uw-body .uw-site-title span {
  font-weight: 700;
}
.uw-body div.uw-site-title {
  margin-top: 29px;
  margin-bottom: 14.5px;
}
.uw-body p.date {
  margin-top: 25px;
  margin-bottom: -19px;
}
.uw-body .author-info {
  margin: -4.5px 0 20px 0;
  font-weight: 800;
}
span.next-page {
  display: block;
  margin-top: 50px;
}
span.next-page a {
  padding: 10px 40px 10px 19px;
  text-transform: uppercase;
  background-color: #e8e3d3;
  font-family: "Open Sans", sans-serif;
  color: #5A5A5A;
  display: inline-block;
  position: relative;
  background-image: none !important;
  border-bottom: none;
  margin-bottom: 25px;
  margin-right: 55px;
  z-index: 1;
  line-height: 24px;
  font-size: 14px;
  font-weight: 700;
  border-radius: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
}
span.next-page a:after {
  background: url(/wp-content/themes/uw-2014/assets/svg/uw-sprite.svg) no-repeat -206px -492px;
  content: "";
  position: absolute;
  right: 17px;
  top: 12px;
  bottom: 3px;
  width: 14px;
  height: 21px;
  -o-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
span.next-page a:hover {
  background-color: #dfd8c2;
}
.uw-body-copy h1 a,
.uw-body-copy h2 a,
.uw-body-copy h3 a,
.uw-body-copy h4 a,
.uw-body-copy h5 a {
  border-bottom: none;
  color: inherit;
}
.uw-body-copy a {
  text-decoration: none;
}
.info-box {
  width: 310px;
  float: left;
  margin-right: 50px;
  margin-bottom: 50px;
  margin-top: 20px;
  margin-left: -150px;
  padding: 30px 30px 30px;
  -moz-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);
  border-top: 6px solid #b7a57a;
  position: relative;
  background: url('assets/images/stripes-dark-tile.svg') repeat-x 0 -88px transparent;
}
.info-box img {
  max-width: 100%;
  height: auto;
}
.info-box:after {
  top: auto;
  bottom: -40px;
}
.info-box p,
.info-box li,
.info-box a {
  font-size: 16px;
  line-height: 1.6;
}
.info-box h1,
.info-box h2,
.info-box h3,
.info-box h4,
.info-box h5 {
  margin-top: 0;
}
.uw-body-copy ul.links {
  overflow: visible;
}
.links {
  padding: 0;
  margin-top: 20px;
  overflow: visible;
}
.links li {
  padding: 0;
  list-style: none;
  margin-bottom: 6px;
  padding-bottom: 6px;
  border-bottom: 1px solid #EEE;
}
.links li:last-child {
  border-bottom: none;
}
img.attachment-post-thumbnail.wp-post-image {
  float: left;
  margin: 5px 50px 0 0;
  height: 150px;
  width: auto;
}
img.img-float-left {
  float: left;
  margin-right: 20px;
  margin-bottom: 20px;
}
img.img-float-right {
  float: right;
  margin-left: 20px;
  margin-bottom: 20px;
}
.dawgbytes-thumbnail-text-container {
  margin-bottom: 10px;
}
.dawgbytes-thumbnail-text-container img {
  width: 85px;
  height: 126px;
  margin-bottom: 0px;
}
.dawgbytes-thumbnail-text-container h3 {
  margin-top: 0px;
}
/* Small Devices, Tablets */
@media only screen and (max-width: 767px) {
  .uw-body {
    padding: 20px;
  }
  .uw-body .uw-site-title {
    color: #4b2e83;
    font-size: 25px;
    line-height: 1.2;
    font-weight: 900;
    margin: -20px -20px 20px -20px;
    padding: 15px 15px 15px 20px;
    position: static;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  }
  .uw-body h1 {
    margin: 10px 80px 10px 0;
    font-size: 33px;
  }
  .uw-body p.date {
    margin-bottom: -15px;
  }
  .home .uw-body .uw-site-title {
    padding-right: 65px;
  }
}
@media only screen and (min-width: 768px) {
  .uw-body .uw-site-title.long-title {
    margin-top: 3px;
  }
}
.widget {
  padding: 10px 0 0 40px;
}
@media only screen and (max-width: 1600px) {
  .info-box {
    margin-left: -50px;
  }
}
@media only screen and (max-width: 767px) {
  .widget {
    padding: 0;
  }
  .info-box {
    margin-left: 0;
    width: 100%;
  }
  .uw-body-copy h1,
  .uw-body-copy h2,
  .uw-body-copy h3,
  .uw-body-copy h4 {
    clear: right;
  }
  .uw-body-copy > div.row {
    clear: both;
  }
}
@media only screen and (max-width: 480px) {
  body.front .front-background {
    background-image: none;
  }
}
@media only screen and (min-width: 768px) {
  .uw-body .uw-site-title {
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
  }
}
@media only screen and (max-width: 768px) {
  div.front-background {
    position: relative;
    top: 250px;
  }
}
body.search-open #uwsearcharea {
  -webkit-transform: matrix(1, 0, 0, 1, 0, 0);
  -moz-transform: matrix(1, 0, 0, 1, 0, 0);
  -ms-transform: matrix(1, 0, 0, 1, 0, 0);
  -o-transform: matrix(1, 0, 0, 1, 0, 0);
  transform: matrix(1, 0, 0, 1, 0, 0);
}
body.search-open #uwsearcharea .uw-search-wrapper {
  -webkit-transform: matrix(1, 0, 0, 1, 0, 0);
  -moz-transform: matrix(1, 0, 0, 1, 0, 0);
  -ms-transform: matrix(1, 0, 0, 1, 0, 0);
  -o-transform: matrix(1, 0, 0, 1, 0, 0);
  transform: matrix(1, 0, 0, 1, 0, 0);
}
#uwsearcharea {
  -webkit-transform: matrix(1, 0, 0, 1, 0, -100);
  -moz-transform: matrix(1, 0, 0, 1, 0, -100);
  -ms-transform: matrix(1, 0, 0, 1, 0, -100);
  -o-transform: matrix(1, 0, 0, 1, 0, -100);
  transform: matrix(1, 0, 0, 1, 0, -100);
  transition: transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}
#uwsearcharea .uw-search-wrapper {
  -webkit-transform: matrix(1, 0, 0, 1, 0, -20);
  -moz-transform: matrix(1, 0, 0, 1, 0, -20);
  -ms-transform: matrix(1, 0, 0, 1, 0, -20);
  -o-transform: matrix(1, 0, 0, 1, 0, -20);
  transform: matrix(1, 0, 0, 1, 0, -20);
  transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
#uwsearcharea .uw-results {
  position: relative;
  top: 162px;
}
.uw-search-bar-container {
  background-color: #FFF;
}
.uw-search-bar-container .radio.checked,
.uw-search-bar-container .radio.checked .second-icon {
  color: #4b2e83;
}
.uw-search-bar-container .radio .icons {
  color: #C7C7C7;
}
.uw-search-bar-container .container.no-height {
  position: absolute;
  width: 100%;
  padding: 10px 0 20px;
}
.uw-search-bar-container .uw-search-wrapper {
  position: relative;
  width: 890px;
  margin-top: 20px;
}
.uw-search-bar-container form {
  float: left;
  width: calc(100% - 240px);
  outline: 2px solid #ADADAD;
}
.uw-search-bar-container form input {
  width: 100%;
  height: 54px;
  padding: 10px 0 10px 15px;
  border: none;
  font-size: 20px;
  outline: none;
  background: url(assets/svg/search_purple.svg) no-repeat center;
}
.uw-search-bar-container form .gsc-clear-button {
  display: none;
}
.uw-search-bar-container div.labels {
  float: left;
  display: block;
  margin-left: 40px;
  margin-top: -10px;
  color: #707070;
}
.uw-search-bar-container div.labels .radio {
  margin-bottom: -5px;
  font-family: "Open Sans", sans-serif;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
}
.uw-search-bar-container div#search-labels.labels.hidden-xs.focused {
  zoom: 1.2;
  margin-top: -15px;
}
.uw-search-bar-container input.search {
  border: none;
  font-size: 0px;
  float: left;
  display: block;
  height: 54px;
  outline: 2px solid #808080;
  background: url(assets/svg/search.svg) no-repeat center center gray;
  position: relative;
  -webkit-background-size: 22px;
  -moz-background-size: 22px;
  -o-background-size: 22px;
  background-size: 22px;
  padding: 0px 60px 0px 0px;
}
.uw-search-bar-container input.search:focus {
  zoom: 1.2;
  bottom: 5px;
}
.uw-search-bar-container .uw-results {
  width: 890px;
  margin: auto;
}
.uw-search-bar-container .uw-results .result {
  z-index: 1;
  width: 690px;
  border-bottom: 1px solid #E4E4E4;
  display: block;
  float: left;
  margin-top: -10px;
  margin-bottom: 10px;
  position: relative;
}
.uw-search-bar-container .uw-results .result .information {
  margin: -10px 0 20px 0;
  padding: 0 15px;
}
.uw-search-bar-container .uw-results .result .title {
  margin-bottom: -3px;
}
.uw-search-bar-container .uw-results .result .mail,
.uw-search-bar-container .uw-results .result .fax,
.uw-search-bar-container .uw-results .result .telephonenumber {
  padding-left: 30px;
}
.uw-search-bar-container .uw-results .result .mail a:hover,
.uw-search-bar-container .uw-results .result .fax a:hover,
.uw-search-bar-container .uw-results .result .telephonenumber a:hover {
  color: #4b2e83;
}
.uw-search-bar-container .uw-results .result .mail {
  background: url('assets/images/search-mail.png') no-repeat 0 8px;
}
.uw-search-bar-container .uw-results .result .fax {
  background: url('assets/images/search-fax.png') no-repeat 0 8px;
}
.uw-search-bar-container .uw-results .result .telephonenumber {
  background: url('assets/images/search-phone.png') no-repeat 0 6px;
}
.uw-search-bar-container .uw-results .result .vcard {
  background: url('assets/images/search-vcard.png') no-repeat 0 6px;
}
.uw-search-bar-container .uw-results .result.open h4 {
  color: #4b2e83;
}
.uw-search-bar-container .uw-results .result.open a.directory-more {
  background-position: -310px -23px;
  -o-transition: none;
  -webkit-transition: none;
  transition: none;
}
.uw-search-bar-container .uw-results .result:last-child {
  border: none;
  margin-bottom: 20px;
}
.uw-search-bar-container .uw-results h4 {
  width: 100%;
  font-size: 18px;
  color: #757575;
  padding: 15px 0 15px 14px;
  margin: 0;
  text-transform: uppercase;
  cursor: pointer;
}
.uw-search-bar-container .uw-results a.directory-more {
  text-indent: -99999px;
  background: url(assets/svg/uw-sprite.svg) no-repeat -283px 1px;
  height: 25px;
  right: 25px;
  top: 14px;
  position: absolute;
  width: 30px;
}
.uw-search-bar-container .uw-results .information {
  float: left;
  width: 100%;
  color: #4E4E4E;
}
.uw-search-bar-container .uw-results .information p {
  color: #4E4E4E;
}
.uw-search-bar-container .uw-results .information span {
  float: left;
  width: 100%;
}
.uw-search-bar-container .uw-results .information a {
  color: #4E4E4E;
}
.uw-search-bar-container .uw-results .more-results {
  clear: both;
  padding: 10px 0 0 10px;
  font-size: 15px;
  color: #525252;
}
body #uw-container {
  transition: transform .3s;
}
body.search-open #uw-container {
  -webkit-transform: matrix(1, 0, 0, 1, 0, 120);
  -moz-transform: matrix(1, 0, 0, 1, 0, 120);
  -ms-transform: matrix(1, 0, 0, 1, 0, 120);
  -o-transform: matrix(1, 0, 0, 1, 0, 120);
  transform: matrix(1, 0, 0, 1, 0, 120);
}
table.gsc-search-box {
  margin-top: 0px;
  background-color: #FFF;
}
table.gsc-search-box tbody {
  border: 0px;
}
td.gsc-clear-button {
  visibility: hidden;
  width: 0px;
}
td.gsc-input {
  padding-right: 0px !important;
}
td.gsc-input input {
  background-image: none !important;
  background-color: $white !important;
}
td.gsc-input input ::-webkit-input-placeholder,
td.gsc-input input ::-moz-placeholder,
td.gsc-input input :-ms-input-placeholder,
td.gsc-input input :-moz-placeholder {
  color: $white;
}
input.gsc-input {
  border-color: #AAA !important;
}
input.gsc-search-button {
  background: url(/images/search.svg) no-repeat center;
  text-indent: -9999px;
  margin-left: 15px !important;
  padding: 0 !important;
  background-color: transparent !important;
  border: 0 !important;
  height: 34px !important;
  width: 34px !important;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  #uwsearcharea .center-block {
    width: 750px;
  }
}
@media only screen and (max-width: 767px) {
  #uwsearcharea .uw-results {
    top: 126px;
  }
  .uw-search-bar-container {
    padding: 0px;
  }
  .uw-search-bar-container .container.no-height {
    padding: 0px 10px;
  }
  .uw-search-bar-container .uw-search-wrapper {
    width: 100%;
    position: relative;
    margin-top: 15px;
  }
  .uw-search-bar-container .uw-search-wrapper .search {
    position: absolute;
    right: 0;
    top: 0;
  }
  .uw-search-bar-container .uw-search-wrapper div.labels {
    margin-top: 20px;
    margin-left: 10px;
    margin-bottom: 20px;
  }
  .uw-search-bar-container select {
    width: 100%;
    margin: 0 0 15px;
  }
  .uw-search-bar-container form {
    width: 100%;
    margin-bottom: 15px;
  }
  .uw-search-bar-container form input {
    border-radius: 0;
  }
  .uw-search-bar-container .uw-results h4 {
    padding: 15px 60px 15px 14px;
  }
  .uw-search-bar-container .uw-results .result {
    width: 100%;
  }
  body.search-open #uw-container {
    -webkit-transform: matrix(1, 0, 0, 1, 0, 136);
    -moz-transform: matrix(1, 0, 0, 1, 0, 136);
    -ms-transform: matrix(1, 0, 0, 1, 0, 136);
    -o-transform: matrix(1, 0, 0, 1, 0, 136);
    transform: matrix(1, 0, 0, 1, 0, 136);
  }
  #block-custom-search-blocks-3 {
    display: none;
  }
}
ul.uw-sidebar-menu,
ul.uw-mobile-menu {
  margin-left: 20px;
  padding: 20px;
  margin-top: -124px;
  background-color: white;
}
ul.uw-sidebar-menu ul,
ul.uw-mobile-menu ul,
ul.uw-sidebar-menu li,
ul.uw-mobile-menu li {
  display: block;
  list-style: none;
  padding: 0;
  margin: 0;
  -webkit-font-smoothing: auto;
}
ul.uw-sidebar-menu li.pagenav a,
ul.uw-mobile-menu li.pagenav a,
ul.uw-sidebar-menu > div a,
ul.uw-mobile-menu > div a,
ul.uw-sidebar-menu li.pagenav span,
ul.uw-mobile-menu li.pagenav span,
ul.uw-sidebar-menu > div span,
ul.uw-mobile-menu > div span {
  display: block;
  font-size: 16px;
  padding: 10px 10px 10px 20px;
}
ul.uw-sidebar-menu li.pagenav a.homelink,
ul.uw-mobile-menu li.pagenav a.homelink,
ul.uw-sidebar-menu > div a.homelink,
ul.uw-mobile-menu > div a.homelink,
ul.uw-sidebar-menu li.pagenav span.homelink,
ul.uw-mobile-menu li.pagenav span.homelink,
ul.uw-sidebar-menu > div span.homelink,
ul.uw-mobile-menu > div span.homelink {
  display: none;
  color: #4b2e83;
  font-size: 25px;
}
ul.uw-sidebar-menu li.pagenav ul,
ul.uw-mobile-menu li.pagenav ul,
ul.uw-sidebar-menu > div ul,
ul.uw-mobile-menu > div ul {
  font-size: 20px;
  line-height: 1.3;
  font-size: 19px;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item,
ul.uw-mobile-menu li.pagenav ul li.current_page_item,
ul.uw-sidebar-menu > div ul li.current_page_item,
ul.uw-mobile-menu > div ul li.current_page_item,
ul.uw-sidebar-menu li.pagenav ul li.current_page_parent,
ul.uw-mobile-menu li.pagenav ul li.current_page_parent,
ul.uw-sidebar-menu > div ul li.current_page_parent,
ul.uw-mobile-menu > div ul li.current_page_parent {
  background-color: #4b2e83;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item > a,
ul.uw-mobile-menu li.pagenav ul li.current_page_item > a,
ul.uw-sidebar-menu > div ul li.current_page_item > a,
ul.uw-mobile-menu > div ul li.current_page_item > a,
ul.uw-sidebar-menu li.pagenav ul li.current_page_parent > a,
ul.uw-mobile-menu li.pagenav ul li.current_page_parent > a,
ul.uw-sidebar-menu > div ul li.current_page_parent > a,
ul.uw-mobile-menu > div ul li.current_page_parent > a,
ul.uw-sidebar-menu li.pagenav ul li.current_page_item > span,
ul.uw-mobile-menu li.pagenav ul li.current_page_item > span,
ul.uw-sidebar-menu > div ul li.current_page_item > span,
ul.uw-mobile-menu > div ul li.current_page_item > span,
ul.uw-sidebar-menu li.pagenav ul li.current_page_parent > span,
ul.uw-mobile-menu li.pagenav ul li.current_page_parent > span,
ul.uw-sidebar-menu > div ul li.current_page_parent > span,
ul.uw-mobile-menu > div ul li.current_page_parent > span {
  font-weight: bold;
  padding-left: 19px;
  padding-top: 16px;
  padding-bottom: 16px;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item a,
ul.uw-mobile-menu li.pagenav ul li.current_page_item a,
ul.uw-sidebar-menu > div ul li.current_page_item a,
ul.uw-mobile-menu > div ul li.current_page_item a,
ul.uw-sidebar-menu li.pagenav ul li.current_page_parent a,
ul.uw-mobile-menu li.pagenav ul li.current_page_parent a,
ul.uw-sidebar-menu > div ul li.current_page_parent a,
ul.uw-mobile-menu > div ul li.current_page_parent a,
ul.uw-sidebar-menu li.pagenav ul li.current_page_item span,
ul.uw-mobile-menu li.pagenav ul li.current_page_item span,
ul.uw-sidebar-menu > div ul li.current_page_item span,
ul.uw-mobile-menu > div ul li.current_page_item span,
ul.uw-sidebar-menu li.pagenav ul li.current_page_parent span,
ul.uw-mobile-menu li.pagenav ul li.current_page_parent span,
ul.uw-sidebar-menu > div ul li.current_page_parent span,
ul.uw-mobile-menu > div ul li.current_page_parent span {
  color: white;
  border-bottom: none;
  border-left: 10px solid #b7a57a;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item.current_page_ancestor,
ul.uw-mobile-menu li.pagenav ul li.current_page_item.current_page_ancestor,
ul.uw-sidebar-menu > div ul li.current_page_item.current_page_ancestor,
ul.uw-mobile-menu > div ul li.current_page_item.current_page_ancestor,
ul.uw-sidebar-menu li.pagenav ul li.current_page_parent.current_page_ancestor,
ul.uw-mobile-menu li.pagenav ul li.current_page_parent.current_page_ancestor,
ul.uw-sidebar-menu > div ul li.current_page_parent.current_page_ancestor,
ul.uw-mobile-menu > div ul li.current_page_parent.current_page_ancestor {
  position: relative;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item.current_page_ancestor > a,
ul.uw-mobile-menu li.pagenav ul li.current_page_item.current_page_ancestor > a,
ul.uw-sidebar-menu > div ul li.current_page_item.current_page_ancestor > a,
ul.uw-mobile-menu > div ul li.current_page_item.current_page_ancestor > a,
ul.uw-sidebar-menu li.pagenav ul li.current_page_parent.current_page_ancestor > a,
ul.uw-mobile-menu li.pagenav ul li.current_page_parent.current_page_ancestor > a,
ul.uw-sidebar-menu > div ul li.current_page_parent.current_page_ancestor > a,
ul.uw-mobile-menu > div ul li.current_page_parent.current_page_ancestor > a {
  padding-right: 60px;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item.current_page_ancestor > a:hover,
ul.uw-mobile-menu li.pagenav ul li.current_page_item.current_page_ancestor > a:hover,
ul.uw-sidebar-menu > div ul li.current_page_item.current_page_ancestor > a:hover,
ul.uw-mobile-menu > div ul li.current_page_item.current_page_ancestor > a:hover,
ul.uw-sidebar-menu li.pagenav ul li.current_page_parent.current_page_ancestor > a:hover,
ul.uw-mobile-menu li.pagenav ul li.current_page_parent.current_page_ancestor > a:hover,
ul.uw-sidebar-menu > div ul li.current_page_parent.current_page_ancestor > a:hover,
ul.uw-mobile-menu > div ul li.current_page_parent.current_page_ancestor > a:hover,
ul.uw-sidebar-menu li.pagenav ul li.current_page_item.current_page_ancestor > a:focus,
ul.uw-mobile-menu li.pagenav ul li.current_page_item.current_page_ancestor > a:focus,
ul.uw-sidebar-menu > div ul li.current_page_item.current_page_ancestor > a:focus,
ul.uw-mobile-menu > div ul li.current_page_item.current_page_ancestor > a:focus,
ul.uw-sidebar-menu li.pagenav ul li.current_page_parent.current_page_ancestor > a:focus,
ul.uw-mobile-menu li.pagenav ul li.current_page_parent.current_page_ancestor > a:focus,
ul.uw-sidebar-menu > div ul li.current_page_parent.current_page_ancestor > a:focus,
ul.uw-mobile-menu > div ul li.current_page_parent.current_page_ancestor > a:focus {
  color: #b7a57a;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item.current_page_ancestor > a:after,
ul.uw-mobile-menu li.pagenav ul li.current_page_item.current_page_ancestor > a:after,
ul.uw-sidebar-menu > div ul li.current_page_item.current_page_ancestor > a:after,
ul.uw-mobile-menu > div ul li.current_page_item.current_page_ancestor > a:after,
ul.uw-sidebar-menu li.pagenav ul li.current_page_parent.current_page_ancestor > a:after,
ul.uw-mobile-menu li.pagenav ul li.current_page_parent.current_page_ancestor > a:after,
ul.uw-sidebar-menu > div ul li.current_page_parent.current_page_ancestor > a:after,
ul.uw-mobile-menu > div ul li.current_page_parent.current_page_ancestor > a:after {
  content: "";
  background: url(assets/svg/uw-sprite.svg) no-repeat -191px -478px;
  display: inline-block;
  height: 52px;
  width: 44px;
  margin-left: 7px;
  margin-top: -26px;
  position: absolute;
  right: 0;
  top: 50%;
  background-color: #b7a57a;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item.current_page_ancestor a,
ul.uw-mobile-menu li.pagenav ul li.current_page_item.current_page_ancestor a,
ul.uw-sidebar-menu > div ul li.current_page_item.current_page_ancestor a,
ul.uw-mobile-menu > div ul li.current_page_item.current_page_ancestor a,
ul.uw-sidebar-menu li.pagenav ul li.current_page_parent.current_page_ancestor a,
ul.uw-mobile-menu li.pagenav ul li.current_page_parent.current_page_ancestor a,
ul.uw-sidebar-menu > div ul li.current_page_parent.current_page_ancestor a,
ul.uw-mobile-menu > div ul li.current_page_parent.current_page_ancestor a,
ul.uw-sidebar-menu li.pagenav ul li.current_page_item.current_page_ancestor span,
ul.uw-mobile-menu li.pagenav ul li.current_page_item.current_page_ancestor span,
ul.uw-sidebar-menu > div ul li.current_page_item.current_page_ancestor span,
ul.uw-mobile-menu > div ul li.current_page_item.current_page_ancestor span,
ul.uw-sidebar-menu li.pagenav ul li.current_page_parent.current_page_ancestor span,
ul.uw-mobile-menu li.pagenav ul li.current_page_parent.current_page_ancestor span,
ul.uw-sidebar-menu > div ul li.current_page_parent.current_page_ancestor span,
ul.uw-mobile-menu > div ul li.current_page_parent.current_page_ancestor span {
  border-left: none;
  position: relative;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item li.page_item_has_children ul,
ul.uw-mobile-menu li.pagenav ul li.current_page_item li.page_item_has_children ul,
ul.uw-sidebar-menu > div ul li.current_page_item li.page_item_has_children ul,
ul.uw-mobile-menu > div ul li.current_page_item li.page_item_has_children ul,
ul.uw-sidebar-menu li.pagenav ul li.current_page_parent li.page_item_has_children ul,
ul.uw-mobile-menu li.pagenav ul li.current_page_parent li.page_item_has_children ul,
ul.uw-sidebar-menu > div ul li.current_page_parent li.page_item_has_children ul,
ul.uw-mobile-menu > div ul li.current_page_parent li.page_item_has_children ul {
  display: none;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item li.page_item_has_children.current_page_item ul,
ul.uw-mobile-menu li.pagenav ul li.current_page_item li.page_item_has_children.current_page_item ul,
ul.uw-sidebar-menu > div ul li.current_page_item li.page_item_has_children.current_page_item ul,
ul.uw-mobile-menu > div ul li.current_page_item li.page_item_has_children.current_page_item ul,
ul.uw-sidebar-menu li.pagenav ul li.current_page_parent li.page_item_has_children.current_page_item ul,
ul.uw-mobile-menu li.pagenav ul li.current_page_parent li.page_item_has_children.current_page_item ul,
ul.uw-sidebar-menu > div ul li.current_page_parent li.page_item_has_children.current_page_item ul,
ul.uw-mobile-menu > div ul li.current_page_parent li.page_item_has_children.current_page_item ul {
  display: block;
}
ul.uw-sidebar-menu li.pagenav ul li a,
ul.uw-mobile-menu li.pagenav ul li a,
ul.uw-sidebar-menu > div ul li a,
ul.uw-mobile-menu > div ul li a {
  color: #4b2e83;
  border-bottom: thin solid #eee;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item ul.children,
ul.uw-mobile-menu li.pagenav ul li.current_page_item ul.children,
ul.uw-sidebar-menu > div ul li.current_page_item ul.children,
ul.uw-mobile-menu > div ul li.current_page_item ul.children,
ul.uw-sidebar-menu li.pagenav ul li.current_page_ancestor ul.children,
ul.uw-mobile-menu li.pagenav ul li.current_page_ancestor ul.children,
ul.uw-sidebar-menu > div ul li.current_page_ancestor ul.children,
ul.uw-mobile-menu > div ul li.current_page_ancestor ul.children {
  display: block;
  font-size: 17px;
  background-color: white;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item ul.children li,
ul.uw-mobile-menu li.pagenav ul li.current_page_item ul.children li,
ul.uw-sidebar-menu > div ul li.current_page_item ul.children li,
ul.uw-mobile-menu > div ul li.current_page_item ul.children li,
ul.uw-sidebar-menu li.pagenav ul li.current_page_ancestor ul.children li,
ul.uw-mobile-menu li.pagenav ul li.current_page_ancestor ul.children li,
ul.uw-sidebar-menu > div ul li.current_page_ancestor ul.children li,
ul.uw-mobile-menu > div ul li.current_page_ancestor ul.children li {
  background-color: #eee;
  border-bottom: 1px solid #fff;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item ul.children li a,
ul.uw-mobile-menu li.pagenav ul li.current_page_item ul.children li a,
ul.uw-sidebar-menu > div ul li.current_page_item ul.children li a,
ul.uw-mobile-menu > div ul li.current_page_item ul.children li a,
ul.uw-sidebar-menu li.pagenav ul li.current_page_ancestor ul.children li a,
ul.uw-mobile-menu li.pagenav ul li.current_page_ancestor ul.children li a,
ul.uw-sidebar-menu > div ul li.current_page_ancestor ul.children li a,
ul.uw-mobile-menu > div ul li.current_page_ancestor ul.children li a,
ul.uw-sidebar-menu li.pagenav ul li.current_page_item ul.children li span,
ul.uw-mobile-menu li.pagenav ul li.current_page_item ul.children li span,
ul.uw-sidebar-menu > div ul li.current_page_item ul.children li span,
ul.uw-mobile-menu > div ul li.current_page_item ul.children li span,
ul.uw-sidebar-menu li.pagenav ul li.current_page_ancestor ul.children li span,
ul.uw-mobile-menu li.pagenav ul li.current_page_ancestor ul.children li span,
ul.uw-sidebar-menu > div ul li.current_page_ancestor ul.children li span,
ul.uw-mobile-menu > div ul li.current_page_ancestor ul.children li span {
  color: #5A5A5A;
  padding: 10px 30px 10px 30px;
  border-left: none;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item ul.children li a:hover,
ul.uw-mobile-menu li.pagenav ul li.current_page_item ul.children li a:hover,
ul.uw-sidebar-menu > div ul li.current_page_item ul.children li a:hover,
ul.uw-mobile-menu > div ul li.current_page_item ul.children li a:hover,
ul.uw-sidebar-menu li.pagenav ul li.current_page_ancestor ul.children li a:hover,
ul.uw-mobile-menu li.pagenav ul li.current_page_ancestor ul.children li a:hover,
ul.uw-sidebar-menu > div ul li.current_page_ancestor ul.children li a:hover,
ul.uw-mobile-menu > div ul li.current_page_ancestor ul.children li a:hover,
ul.uw-sidebar-menu li.pagenav ul li.current_page_item ul.children li span:hover,
ul.uw-mobile-menu li.pagenav ul li.current_page_item ul.children li span:hover,
ul.uw-sidebar-menu > div ul li.current_page_item ul.children li span:hover,
ul.uw-mobile-menu > div ul li.current_page_item ul.children li span:hover,
ul.uw-sidebar-menu li.pagenav ul li.current_page_ancestor ul.children li span:hover,
ul.uw-mobile-menu li.pagenav ul li.current_page_ancestor ul.children li span:hover,
ul.uw-sidebar-menu > div ul li.current_page_ancestor ul.children li span:hover,
ul.uw-mobile-menu > div ul li.current_page_ancestor ul.children li span:hover,
ul.uw-sidebar-menu li.pagenav ul li.current_page_item ul.children li a:focus,
ul.uw-mobile-menu li.pagenav ul li.current_page_item ul.children li a:focus,
ul.uw-sidebar-menu > div ul li.current_page_item ul.children li a:focus,
ul.uw-mobile-menu > div ul li.current_page_item ul.children li a:focus,
ul.uw-sidebar-menu li.pagenav ul li.current_page_ancestor ul.children li a:focus,
ul.uw-mobile-menu li.pagenav ul li.current_page_ancestor ul.children li a:focus,
ul.uw-sidebar-menu > div ul li.current_page_ancestor ul.children li a:focus,
ul.uw-mobile-menu > div ul li.current_page_ancestor ul.children li a:focus,
ul.uw-sidebar-menu li.pagenav ul li.current_page_item ul.children li span:focus,
ul.uw-mobile-menu li.pagenav ul li.current_page_item ul.children li span:focus,
ul.uw-sidebar-menu > div ul li.current_page_item ul.children li span:focus,
ul.uw-mobile-menu > div ul li.current_page_item ul.children li span:focus,
ul.uw-sidebar-menu li.pagenav ul li.current_page_ancestor ul.children li span:focus,
ul.uw-mobile-menu li.pagenav ul li.current_page_ancestor ul.children li span:focus,
ul.uw-sidebar-menu > div ul li.current_page_ancestor ul.children li span:focus,
ul.uw-mobile-menu > div ul li.current_page_ancestor ul.children li span:focus {
  background-color: #DDD;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item ul.children li.current_page_item ul.children li,
ul.uw-mobile-menu li.pagenav ul li.current_page_item ul.children li.current_page_item ul.children li,
ul.uw-sidebar-menu > div ul li.current_page_item ul.children li.current_page_item ul.children li,
ul.uw-mobile-menu > div ul li.current_page_item ul.children li.current_page_item ul.children li,
ul.uw-sidebar-menu li.pagenav ul li.current_page_ancestor ul.children li.current_page_item ul.children li,
ul.uw-mobile-menu li.pagenav ul li.current_page_ancestor ul.children li.current_page_item ul.children li,
ul.uw-sidebar-menu > div ul li.current_page_ancestor ul.children li.current_page_item ul.children li,
ul.uw-mobile-menu > div ul li.current_page_ancestor ul.children li.current_page_item ul.children li {
  border-bottom: 1px solid #E0E0E0;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item ul.children li.current_page_item ul.children li:last-child,
ul.uw-mobile-menu li.pagenav ul li.current_page_item ul.children li.current_page_item ul.children li:last-child,
ul.uw-sidebar-menu > div ul li.current_page_item ul.children li.current_page_item ul.children li:last-child,
ul.uw-mobile-menu > div ul li.current_page_item ul.children li.current_page_item ul.children li:last-child,
ul.uw-sidebar-menu li.pagenav ul li.current_page_ancestor ul.children li.current_page_item ul.children li:last-child,
ul.uw-mobile-menu li.pagenav ul li.current_page_ancestor ul.children li.current_page_item ul.children li:last-child,
ul.uw-sidebar-menu > div ul li.current_page_ancestor ul.children li.current_page_item ul.children li:last-child,
ul.uw-mobile-menu > div ul li.current_page_ancestor ul.children li.current_page_item ul.children li:last-child {
  border-bottom: none;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item ul.children li.current_page_item ul.children a,
ul.uw-mobile-menu li.pagenav ul li.current_page_item ul.children li.current_page_item ul.children a,
ul.uw-sidebar-menu > div ul li.current_page_item ul.children li.current_page_item ul.children a,
ul.uw-mobile-menu > div ul li.current_page_item ul.children li.current_page_item ul.children a,
ul.uw-sidebar-menu li.pagenav ul li.current_page_ancestor ul.children li.current_page_item ul.children a,
ul.uw-mobile-menu li.pagenav ul li.current_page_ancestor ul.children li.current_page_item ul.children a,
ul.uw-sidebar-menu > div ul li.current_page_ancestor ul.children li.current_page_item ul.children a,
ul.uw-mobile-menu > div ul li.current_page_ancestor ul.children li.current_page_item ul.children a {
  background-color: white;
  color: #5A5A5A;
  border-left: none;
  padding-left: 25px;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item ul.children li.current_page_item ul.children a:before,
ul.uw-mobile-menu li.pagenav ul li.current_page_item ul.children li.current_page_item ul.children a:before,
ul.uw-sidebar-menu > div ul li.current_page_item ul.children li.current_page_item ul.children a:before,
ul.uw-mobile-menu > div ul li.current_page_item ul.children li.current_page_item ul.children a:before,
ul.uw-sidebar-menu li.pagenav ul li.current_page_ancestor ul.children li.current_page_item ul.children a:before,
ul.uw-mobile-menu li.pagenav ul li.current_page_ancestor ul.children li.current_page_item ul.children a:before,
ul.uw-sidebar-menu > div ul li.current_page_ancestor ul.children li.current_page_item ul.children a:before,
ul.uw-mobile-menu > div ul li.current_page_ancestor ul.children li.current_page_item ul.children a:before {
  content: "- ";
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item ul.children li.current_page_item span,
ul.uw-mobile-menu li.pagenav ul li.current_page_item ul.children li.current_page_item span,
ul.uw-sidebar-menu > div ul li.current_page_item ul.children li.current_page_item span,
ul.uw-mobile-menu > div ul li.current_page_item ul.children li.current_page_item span,
ul.uw-sidebar-menu li.pagenav ul li.current_page_ancestor ul.children li.current_page_item span,
ul.uw-mobile-menu li.pagenav ul li.current_page_ancestor ul.children li.current_page_item span,
ul.uw-sidebar-menu > div ul li.current_page_ancestor ul.children li.current_page_item span,
ul.uw-mobile-menu > div ul li.current_page_ancestor ul.children li.current_page_item span {
  border-left: 10px solid #b7a57a;
  padding-left: 20px;
  background-color: #ddd;
  border-bottom: none;
}
ul.uw-sidebar-menu li.pagenav ul li.current_page_item ul.children li.current_page_item span a,
ul.uw-mobile-menu li.pagenav ul li.current_page_item ul.children li.current_page_item span a,
ul.uw-sidebar-menu > div ul li.current_page_item ul.children li.current_page_item span a,
ul.uw-mobile-menu > div ul li.current_page_item ul.children li.current_page_item span a,
ul.uw-sidebar-menu li.pagenav ul li.current_page_ancestor ul.children li.current_page_item span a,
ul.uw-mobile-menu li.pagenav ul li.current_page_ancestor ul.children li.current_page_item span a,
ul.uw-sidebar-menu > div ul li.current_page_ancestor ul.children li.current_page_item span a,
ul.uw-mobile-menu > div ul li.current_page_ancestor ul.children li.current_page_item span a {
  color: white;
  border-bottom: none;
}
ul.uw-sidebar-menu li.pagenav ul li:last-child a,
ul.uw-mobile-menu li.pagenav ul li:last-child a,
ul.uw-sidebar-menu > div ul li:last-child a,
ul.uw-mobile-menu > div ul li:last-child a {
  border-bottom: none;
}
ul.uw-sidebar-menu ul.children,
ul.uw-mobile-menu ul.children {
  display: none;
}
.uw-sidebar .widgettitle {
  clear: left;
  font-weight: 900;
  font-size: 22px;
  text-transform: uppercase;
  position: relative;
  padding-bottom: 20px;
}
.uw-sidebar .widgettitle:after,
.uw-sidebar .widgettitle:before {
  position: absolute;
  left: 0;
  bottom: 5px;
  content: "";
  height: 4px;
}
.uw-sidebar .widgettitle:before {
  width: 100px;
  background-color: #b7a57a;
}
.uw-sidebar .widgettitle:after {
  width: 40px;
  -webkit-transform: skewX(-25deg) skewY(0);
  -o-transform: skewX(-25deg) skewY(0);
  transform: skewX(-25deg) skewY(0);
  -webkit-transform: skew(-25deg, 0);
  -ms-transform: skewX(-25deg) skewY(0);
  transform: skew(-25deg, 0);
  left: 80px;
  background-color: white;
  bottom: 3px;
  height: 8px;
}
body.home .uw-sidebar-menu {
  display: none;
}
/* Medium Devices, Desktops */
@media only screen and (max-width: 992px) {
  ul.uw-sidebar-menu {
    padding: 0;
    margin: 50px 0 0 0;
    clear: both;
  }
}
@media only screen and (min-width: 768px) {
  .uw-sidebar {
    padding-top: 40px;
  }
}
#mobile-relative {
  display: none;
}
#mobile-relative ul.uw-mobile-menu {
  display: none;
  width: 100%;
  float: right;
  clear: both;
  list-style: none;
  padding: 0;
  margin: 0 0 25px;
}
#mobile-relative ul.uw-mobile-menu > ul {
  display: block;
  list-style: none;
  padding: 0;
  margin: 0;
}
#mobile-relative ul.uw-mobile-menu li {
  width: 100%;
}
/*==========  Mobile First Method  ==========*/
/* Custom, iPhone Retina */
@media only screen and (max-width: 767px) {
  #desktop-relative {
    display: none;
  }
  .uw-mobile-menu li {
    background-color: #eee;
    border-bottom: 1px solid #fff;
  }
  #mobile-relative {
    display: block;
    padding-top: 5px;
  }
  #mobile-relative button.uw-mobile-menu-toggle {
    display: block;
    position: relative;
    float: right;
    font-size: 13.33333333px;
    line-height: 1.43518333;
    font-family: "Open Sans", sans-serif;
    font-weight: 700;
    text-align: center;
    width: 50px;
    height: 40px;
    text-transform: uppercase;
    color: #4b2e83;
    background: url(assets/svg/uw-sprite.svg) no-repeat -475px 20px transparent;
    background-size: 1200px;
    border: none;
    padding: 0 0 20px 0;
  }
  #mobile-relative button.uw-mobile-menu-toggle:before {
    content: "";
    position: absolute;
    right: 55px;
    top: -4px;
    width: 20px;
    height: 40px;
    background: url(assets/svg/uw-sprite.svg) no-repeat -600px 0 transparent;
  }
  #mobile-relative ul.uw-mobile-menu li.pagenav ul li.current_page_parent.current_page_ancestor > a:after {
    display: none;
  }
  #mobile-relative.frontpage {
    margin-top: -18px;
    position: relative;
  }
  #mobile-relative.frontpage button.uw-mobile-menu-toggle {
    position: absolute;
    right: -20px;
    z-index: 10;
    margin: 0;
    top: -50px;
  }
  #mobile-relative.frontpage ul.uw-mobile-menu {
    z-index: 1;
  }
  #mobile-relative.frontpage ul.uw-mobile-menu .menu-dropdowns-container {
    margin-top: 0px;
  }
  #mobile-relative.frontpage.bighero {
    margin-top: 0px;
    background-color: white;
  }
  #mobile-relative.frontpage.bighero button.uw-mobile-menu-toggle {
    right: 0px;
    top: 12px;
  }
  #mobile-relative.frontpage.bighero ul.uw-mobile-menu {
    margin: 0;
  }
  #mobile-relative.frontpage.bighero #spacer {
    height: 58px;
    margin-bottom: 2px;
    width: 100%;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  }
  #mobile-relative:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0;
  }
  .home #mobile-relative li a:hover,
  .home #mobile-relative li a:focus {
    border-bottom: 1px solid #eee;
  }
  .home #mobile-relative li:last-child a:hover,
  .home #mobile-relative li:last-child a:focus {
    border-bottom: none;
  }
  button {
    float: right;
    border: none;
    display: inline-block;
    vertical-align: top;
    position: relative;
    z-index: 1;
  }
  button.uw-search {
    text-indent: -99999px;
    padding-right: 78px;
    outline: none;
    background-color: transparent;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    width: 40px;
    height: 40px;
    padding: 0;
    margin-top: -3px;
    margin-right: 15px;
    overflow: hidden;
  }
  button.uw-search:after {
    display: none;
  }
  button.uw-search svg {
    position: absolute;
    top: 12px;
    left: 11px;
  }
  .search-open button.uw-search svg {
    top: -20px;
    left: 10px;
  }
}
a.screen-reader-shortcut {
  position: absolute;
  left: 6px;
  top: -99px;
}
a.screen-reader-shortcut:focus {
  z-index: 5;
  font-size: 14px;
  font-weight: 700;
  top: 6px;
  padding: 15px 23px 14px;
  background-color: #f1f1f1;
  color: #4b2e83;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
}
label.screen-reader {
  position: absolute;
  opacity: 0;
}
.offscreen {
  position: absolute;
  font-size: 1px;
  left: -9999px;
}
#dawgdrops li.dawgdrops-item a:focus {
  text-decoration: underline;
}
#dawgdrops li.dawgdrops-item ul.dawgdrops-menu a:focus {
  text-decoration: none;
}
.uw-body a:focus,
.uw-body a:hover {
  color: #85754d;
  border-bottom: 1px solid #BDBDBD;
}
.uw-body a:focus.uw-btn,
.uw-body a:hover.uw-btn {
  border-bottom: none;
}
.uw-body a.uw-btn:focus {
  text-decoration: underline;
}
.uw-body .uw-breadcrumbs a:focus {
  border-bottom: none;
  text-decoration: underline;
}
.uw-body #main_content:focus {
  outline: none;
}
.uw-body .widget a.widget-link:focus,
.uw-body .widget a.widget-link:hover {
  border-bottom: none;
  color: #85754d;
}
.uw-body .widget a.widget-link:focus {
  text-decoration: underline;
}
.uw-body input::-webkit-input-placeholder {
  color: #7B7B7B;
}
.uw-body input:-moz-placeholder {
  color: #7B7B7B;
}
.uw-body input::-moz-placeholder {
  color: #7B7B7B;
}
.uw-body input:-ms-input-placeholder {
  color: #7B7B7B;
}
.uw-body .form-control {
  color: #303030;
}
.site-accessibility .uw-body-copy a,
.site-accessibility .uw-sidebar a {
  border-bottom: 1px solid #DFDFDF;
}
.site-accessibility .uw-body-copy a:hover,
.site-accessibility .uw-sidebar a:hover {
  border-bottom: 1px solid #85754d;
}
/**
* UW Boundless theme overrides
*/
.uw-search-bar-container form {
  overflow: hidden;
}
.uw-search-bar-container .uw-search-wrapper .block-search .form-control {
  border-radius: 0;
  z-index: 0;
}
.uw-search-bar-container .uw-search-wrapper .btn.search {
  border-radius: 0;
}
.uw-search-bar-container button.search {
  border: none;
  font-size: 0px;
  float: left;
  display: block;
  height: 54px;
  outline: 2px solid #808080;
  background: url(assets/svg/search.svg) no-repeat center center gray;
  position: relative;
  -webkit-background-size: 22px;
  -moz-background-size: 22px;
  -o-background-size: 22px;
  background-size: 22px;
  padding: 0px 60px 0px 0px;
}
@media only screen and (max-width: 767px) {
  .uw-search-bar-container .uw-search-wrapper .search {
    position: relative;
  }
}
.front .uw-hero-image {
  height: 595px;
  padding: 60px 0 0 0;
}
.front .uw-hero-image h1 {
  font-family: "Encode Sans Compressed", sans-serif;
  font-weight: 900;
  line-height: 1;
  font-size: 95px;
  text-transform: uppercase;
  color: #fff;
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.5);
}
.front .uw-hero-image p {
  color: #fff;
  line-height: 1.55;
  -webkit-font-smoothing: auto;
  margin-bottom: 30px;
  text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.8);
}
.uw-body .uw-site-title + p {
  position: absolute;
  top: -60px;
  color: #fff;
  line-height: 1.55;
  -webkit-font-smoothing: auto;
  margin-bottom: 30px;
  text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.8);
}
@media only screen and (max-width: 767px) {
  .uw-body .uw-site-title {
    padding-right: 75px;
  }
  div.container.uw-body {
    padding-top: 20px;
  }
}
.front .uw-body .uw-site-title + p {
  display: none;
}
@media only screen and (max-width: 767px) {
  .uw-body .uw-site-title + p {
    display: none;
  }
}
@media only screen and (min-width: 768px) {
  .front .uw-body {
    padding-top: 0px;
  }
  .front .uw-body > .row {
    background-color: #fff;
  }
  .front .uw-body .uw-site-title {
    display: none;
  }
}
.uw-sidebar .region:not(:last-child) {
  padding-bottom: 30px;
}
@media only screen and (max-width: 992px) {
  .uw-sidebar .region {
    padding-top: 30px;
  }
}
nav#mobile-relative .navbar-nav .dawgdrops-menu {
  display: none;
  position: relative;
  -webkit-box-shadow: none;
  box-shadow: none;
  top: 0;
  border-top: none;
}
nav#mobile-relative .navbar-nav .dawgdrops-menu li {
  background-color: inherit;
}
nav#mobile-relative .navbar-nav .dawgdrops-menu li a {
  background-color: inherit;
  color: #5a5a5a;
  border-left: none;
  padding-left: 35px;
  padding-top: 10;
  padding-bottom: 10;
}
nav#mobile-relative .navbar-nav .dawgdrops-item a {
  font-weight: 400;
  text-transform: none;
}
nav#mobile-relative .navbar-nav .dawgdrops-item a:after {
  background: none;
}
nav#mobile-relative .navbar-nav .dawgdrops-item .dawgdrops-item-menu-link {
  display: block;
  float: right;
  z-index: 1;
  font-family: "Encode Sans Compressed", sans-serif;
  font-size: 60%;
  cursor: pointer;
  text-transform: uppercase;
  background: url(assets/svg/caret.svg) no-repeat 33px 35px;
}
nav#mobile-relative .navbar-nav .dawgdrops-item .dawgdrops-item-menu-link:before {
  display: inline-block;
  content: "";
  position: absolute;
  right: 50px;
  top: 12px;
  width: 20px;
  height: 30px;
  background: url(assets/svg/uw-sprite.svg) no-repeat -600px 0 transparent;
}
a.more:after {
  background: url(assets/svg/uw-sprite.svg) no-repeat -206px -492px;
}
span.next-page a:after {
  background: url(assets/svg/uw-sprite.svg) no-repeat -206px -492px;
}
.links a:after {
  background: url(assets/svg/uw-sprite.svg) no-repeat -206px -492px;
}
img.pull-right {
  margin-left: 20px;
  margin-bottom: 20px;
}
img.pull-left {
  margin-right: 20px;
  margin-bottom: 20px;
}
.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
  margin-left: 0;
}
.checkbox input,
.radio input {
  opacity: 1;
}
.form-text,
.form-textarea,
.form-select,
.form-file {
  border-radius: 0;
  color: #595959;
}
.form-submit {
  border-radius: 0;
}
.webform-component {
  margin-bottom: 15px;
}
/**
 * CSE Boundless
 */
#block-block-139,
#block-block-142,
#block-block-140 {
  margin-bottom: 60px;
}
.icon-menu {
  display: table;
  table-layout: fixed;
  height: 100%;
  border-collapse: separate;
  margin: 0px 8px 0px 0px;
  margin-left: 0px;
  margin-right: 8px;
  margin-top: 0px;
  padding-left: 0px;
  width: 100%;
}
.icon-menu li {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  width: 100%;
}
.icon-menu a {
  text-transform: uppercase;
  text-decoration: none;
  font-size: 1.2em;
  width: 100%;
  display: block;
}
#audience-menu {
  padding-top: 10px;
  padding-bottom: 15px;
  color: #5A5A5A;
  background-color: #d9d9d9;
  margin-left: 0px;
  margin-right: 0px;
}
#audience-menu a {
  color: #d9d9d9;
  height: 100%;
  width: 100%;
}
#audience-menu div.audience-menu-icon {
  transition-property: all;
  transition-duration: .3s;
  text-align: center;
  padding-top: 10px;
  padding-bottom: 15px;
  height: 90px;
}
#audience-menu div.audience-menu-icon i {
  color: #5A5A5A;
  font-size: 2.5em;
}
#audience-menu div.audience-menu-icon p {
  font-family: "Encode Sans Compressed", sans-serif;
  text-align: center;
  text-transform: uppercase;
  font-weight: bold;
  line-height: 1.2;
  color: #5A5A5A;
}
#audience-menu div.audience-menu-icon :hover i {
  color: #4b2e83;
  font-size: 2.7em;
  transition-property: all;
  transition-duration: .3s;
}
#audience-menu div.audience-menu-icon :hover p {
  color: #4b2e83;
  transition-property: all;
  transition-duration: .3s;
}
#audience-menu div.icon-container {
  padding-bottom: 5px;
}
@media only screen and (max-width: 765px) {
  #audience-menu {
    padding-bottom: 10px;
  }
  #audience-menu div.icon-container {
    height: auto;
    padding-bottom: 5px;
  }
  div.audience-menu-icon {
    height: 90px;
  }
  div.audience-menu-icon i {
    font-size: 1.3em;
  }
  div.audience-menu-icon p {
    line-height: 1.3;
    font-size: 12px;
  }
}
#front-page-welcome-container {
  background-color: #4b2e83;
  color: #FFF;
  padding: 20px;
  text-align: center;
}
#front-page-welcome-container h2 {
  font-size: 24px;
  text-transform: uppercase;
  margin-top: 10px;
  color: #FFF;
}
#front-page-welcome-container p,
#front-page-welcome-container a {
  font-size: 14px;
  color: #FFF;
  line-height: 1.4;
}
#front-page-welcome-container a {
  font-weight: bold;
}
#news-events {
  background-attachment: fixed;
  background-size: cover;
  padding: 0px;
}
#news-events p.bottom-more-link {
  position: absolute;
  bottom: 5px;
}
.news-headline-photo-block {
  background-color: #d9d9d9;
  color: #4b2e83;
  margin: 0;
  height: 400px;
}
.news-headline-photo-block img {
  width: 100%;
  height: 150px;
  text-align: center;
  overflow: hidden;
}
.news-headline-photo-block div.img-container {
  height: 150px;
  width: auto;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.news-headline-photo-block div.img-container a {
  display: inline-block;
  width: 100%;
  height: 100%;
}
.news-headline-photo-block h3 {
  padding: 5px 5px 5px 15px;
  font-size: 1.2em;
  font-weight: bold;
  margin: 0;
  margin-top: -38px;
  color: #FFF;
}
.news-headline-photo-block h3 a {
  color: #FFF;
  font-size: 1.3em;
  font-weight: bold;
}
.news-headline-photo-block h3 a:hover {
  text-decoration: none;
  color: #FFF;
}
.news-headline-photo-block p {
  padding: 5px 15px 0px 15px;
  line-height: 1.4;
  font-size: 14px;
}
.news-headline-photo-block a {
  color: #4b2e83;
  font-weight: normal;
  font-style: normal;
}
#front-page-news-content {
  height: 220px;
  overflow: hidden;
  position: relative;
}
#front-page-news-content + .fade {
  position: relative;
  height: 40px;
  bottom: 40px;
  width: 100%;
  display: block;
  opacity: 1;
  background-image: linear-gradient(to bottom, rgba(217, 217, 217, 0), rgba(217, 217, 217, 0.9) 100%);
  background: -webkit-linear-gradient(rgba(217, 217, 217, 0) 0%, #d9d9d9 100%);
  background-image: -moz-linear-gradient(rgba(217, 217, 217, 0) 0%, #d9d9d9 100%);
  background-image: -o-linear-gradient(rgba(217, 217, 217, 0) 0%, #d9d9d9 100%);
}
.front-page-events-row {
  padding-top: 5px;
}
.front-page-events-row div {
  padding: 0px 15px 0px 15px;
  line-height: 1.4;
  font-size: 14px;
}
@media only screen and (max-width: 992px) {
  #news-events div.col-sm-6 {
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 768px) {
  #news-events div.col-sm-6 {
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 480px) {
  #news-events div.col-xs-12 {
    margin-bottom: 15px;
  }
}
#fast-facts-container {
  background-color: #5A5A5A;
  padding: 20px 0px;
  margin-bottom: -25px;
}
#fast-facts-container #fast-facts {
  background-color: #FFF;
  padding-top: 20px;
  padding-bottom: 20px;
}
#fast-facts-container h2 {
  text-align: center;
  margin: 0px 0px 5px 0px;
  color: #4b2e83;
  font-size: 24px;
  text-transform: uppercase;
}
#fast-facts-container div.icon-container {
  text-align: center;
  margin-top: 15px;
}
#fast-facts-container div.icon-container i {
  font-size: 5em;
  color: #4b2e83;
  margin-bottom: 8px;
}
#fast-facts-container p {
  font-family: "Encode Sans Compressed", sans-serif;
  text-align: center;
  text-transform: uppercase;
  font-weight: bold;
  line-height: 1.2;
  color: #5A5A5A;
}
@media only screen and (max-width: 768px) {
  #fast-facts div.icon-container {
    padding-top: 18px;
    margin-top: 5px;
  }
}
/* People Listings */
div.alist {
  text-align: center;
}
div.alist a {
  color: white;
  background-color: #4b2e83;
  margin: 2px;
  padding: 3px 5px 3px 5px;
  text-decoration: none;
}
/*
 * Directories
 */
div.directory-row {
  margin-top: 15px;
}
h2.directory-people-type p {
  font-size: 29px;
  font-family: "Open Sans", sans-serif;
  color: #4b2e83;
  font-weight: 700;
}
div.directory-photo-container {
  min-width: 159px;
}
div.directory-photo-container img {
  width: 159px;
}
div.directory-name {
  font-size: 1.3em;
  font-weight: bold;
  color: #4b2e83;
}
div.directory-working-title {
  font-size: 1.1em;
  font-weight: bold;
}
.personal-social-icon {
  color: #4b2e83;
  background-color: #fff;
}
.view-display-id-page_2 h2 p {
  font-size: 29px;
  font-weight: 700;
  color: #4b2e83;
}
#block-views-person-contact-block {
  margin-bottom: 15px;
}
/**
 * Research Project Listings
 */
div.view-research-projects h2 {
  margin: 0px 0px 10px 0px;
}
div.research-project-thumbnail {
  float: left;
  margin-left: 20px;
}
div.research-project-thumbnail img {
  margin-right: 10px;
  margin-bottom: 10px;
  width: 100px;
  height: auto;
}
div.research-project-blurb {
  margin: 0px 10px 20px 40px;
  clear: bottom;
}
div.node-research-project div.field-name-field-research-project-image {
  float: left;
  margin-right: 20px;
  margin-bottom: 20px;
}
div.node-research-project img {
  width: 200px;
}
div.node-research-project div.associated-content {
  clear: both;
}
div.grouped-project-container {
  margin: 0px 0px 20px 20px;
}
div.grouped-project-container h2 {
  font-size: 12px;
}
div.grouped-publication-container,
div.pub-group-header {
  margin: 0px 0px 20px 20px;
}
div.publication-group h2 {
  font-size: 18px;
}
/** body.page-research-robotics-projects-by-topic */
div.robotics-grouped-tile-view div.grouped-project-container {
  margin-left: 0px;
}
div.robotics-grouped-tile-view div.research-project-thumbnail {
  float: none;
  clear: both;
  position: absolute;
  top: 5px;
  width: 158px;
  margin-left: 0px;
}
div.robotics-grouped-tile-view div.research-project-thumbnail img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  top: 5px;
  left: 30px;
  clip: rect(0px, 100px, 100px, 0px);
}
div.robotics-grouped-tile-view div.grouped-project-container h2 {
  position: relative;
  top: 105px;
  text-align: center;
}
div.robotics-grouped-tile-view div.grouped-project-container div.views-row {
  width: 158px;
  height: 165px;
  float: left;
  border: thin solid #AAA;
  padding: 5px 5px 5px 5px;
  clear: none;
  position: relative;
  margin: 0px 2px 2px 0px;
}
div.robotics-grouped-tile-view div.research-project-blurb {
  display: none;
}
/**
 * Course listings
 */
.course-listing-title {
  font-weight: bold;
  text-decoration: none;
}
div.view-course-listing div.views-row {
  margin: 0px 20px 10px 25px;
}
/*
 * Tabbed menus at the top of content regions
 */
div.region-content section.block-menu ul.menu {
  margin-bottom: 20px;
  border-bottom: 1px solid #d9d9d9;
  list-style: none;
}
div.region-content section.block-menu ul.menu > li {
  position: relative;
  display: block;
  float: left;
  margin-bottom: -1px;
  margin-left: 0px;
  margin-right: 5px;
  padding: 0px;
  background-color: white;
  font-size: 24px;
}
div.region-content section.block-menu ul.menu > li a,
div.region-content section.block-menu ul.menu > li span.dropdown-toggle {
  color: #4b2e83;
  border: 1px solid #d9d9d9;
  border-bottom-color: #FFF;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  padding: 10px 15px;
  display: block;
}
div.region-content section.block-menu ul.menu > li.active a {
  background-color: #4b2e83;
  color: white;
}
.dawgdrops-item.dawgdrops-item a:hover {
  color: #b7a57a;
}
.last-edited {
  font-style: italic;
  font-size: smaller;
  float: right;
}
/*
 * For tablet and smaller, offer hamburger menus with full-width
 * menu items.
 *
 * Adapted from https://codepen.io/anon/pen/xLaEgz
 */
#menu-toggle input {
  display: none;
}
@media only screen and (max-width: 768px) {
  #menu-toggle {
    height: 40px;
  }
  #menu-toggle ul.menu {
    max-height: 0;
    transition: max-height 0.15s ease-out;
    overflow: hidden;
    border: none;
    width: 100%;
    margin-top: -30px;
  }
  #menu-toggle ul.menu ul li {
    padding: 5px 20px 5px 5px;
  }
  #menu-toggle ul.menu span.caret {
    display: none;
  }
  #menu-toggle ul.menu li {
    width: 100%;
    background-color: #4b2e83;
  }
  #menu-toggle ul.menu li a {
    color: #FFF;
    font-size: 14px;
    padding: 5px;
    border-radius: 0;
  }
  #menu-toggle span {
    display: block;
    width: 33px;
    height: 4px;
    margin-bottom: 5px;
    position: relative;
    top: -30px;
    left: 5px;
    background-color: #4b2e83;
    border-radius: 3px;
    z-index: 1;
    transform-origin: 4px 0px;
  }
  #menu-toggle span:first-child {
    transform-origin: 0% 0%;
  }
  #menu-toggle span:nth-last-child(2) {
    transform-origin: 0% 100%;
  }
  #menu-toggle input {
    display: block;
    width: 42px;
    height: 32px;
    opacity: 0;
    z-index: 2;
  }
  #menu-toggle input:checked ~ ul.menu {
    max-height: 1000px;
    transition: max-height 0.25s ease-in;
  }
  #menu-toggle input:checked ~ span {
    transform: rotate(45deg) translate(-2px, -1px);
  }
  #menu-toggle input:checked ~ span:nth-last-child(3) {
    transform: rotate(0deg) scale(0.1, 0.1);
  }
  #menu-toggle input:checked ~ span:nth-last-child(2) {
    transform: rotate(-45deg) translate(0, -1px);
  }
}
/**
 * Views
 */
a.internal-edit-link {
  color: red !important;
  font-size: smaller;
}
.callout {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  -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);
}
.callout > h2 {
  font-size: 24px;
}
.callout aside {
  font-size: 14px;
}
.callout aside h2 {
  font-size: 20px;
}
.callout .more-link {
  text-align: right;
  font-style: italic;
}
.callout blockquote {
  border-color: #ddd;
  border-color: rgba(0, 0, 0, 0.15);
}
/* MSB */
div.msb {
  margin: 3px;
  text-align: center;
  float: left;
  height: 270px;
  margin-bottom: 30px;
}
div.msb img {
  width: 200px;
  height: 259px;
}
#sideshow {
  display: none;
}
body.front #slideshow {
  display: block;
  height: 600px;
}
.slideshow-row {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  height: 600px;
  margin: auto;
  color: #FFF;
}
.slideshow-row h2 {
  font-size: 42px;
  font-weight: 700;
  line-height: 1.1;
}
.slideshow-row p {
  color: #FFF;
  font-size: 24px;
  line-height: 1.3;
}
.slideshow-row a {
  color: #FFF;
}
.slideshow-row .more {
  color: #FFF;
  font-style: italic;
  text-decoration: underline;
}
.views-slideshow-cycle-main-frame-row,
.views-slideshow-cycle-main-frame {
  width: 100% !important;
}
#vscc_controls_front_page_slideshow-block_2_1 {
  position: relative;
  z-index: 500;
  top: -40px;
  width: 100px;
  margin: auto;
}
#vscc_controls_front_page_slideshow-block_2_1 img {
  display: inline;
}
@media only screen and (max-width: 1200px) {
  .slideshow-row {
    background-position: right;
  }
}
@media only screen and (max-width: 768px) {
  body.front #slideshow {
    height: 350px;
  }
  .slideshow-row {
    height: 350px;
    color: #FFF;
    margin-bottom: 250px;
  }
  .slideshow-row h2 {
    font-size: 24px;
  }
  .slideshow-row div.row {
    position: absolute;
    top: 350px;
    background-color: #5A5A5A;
    height: 250px;
  }
  .slideshow-row p {
    color: #FFF;
    font-size: 14px;
    line-height: 1.3;
  }
  #vscc_controls_front_page_slideshow-block_2_1 {
    display: none;
  }
}
footer.footer {
  color: #FFF;
  background-color: #4b2e83;
  padding: 10px 10px 30px 10px !important;
  margin-top: 25px;
  position: relative;
  width: 100%;
  max-width: inherit !important;
  border-top: 1px solid #E5E5E5;
}
footer.footer h2 {
  font-size: 24px;
  text-transform: uppercase;
}
footer.footer p,
footer.footer a {
  color: #FFF;
  font-size: 14px;
}
@media only screen and (max-width: 768px) {
  body.front footer.footer {
    margin-top: 250px;
  }
}
footer.footer .white-footer-w {
  height: 60px;
  margin: -10px;
}
footer.footer i {
  color: #FFF;
  margin-right: 10px;
  font-size: 4em;
}
.connect-with-us i {
  margin-bottom: 10px;
}
#legalese {
  margin-top: 15px;
}
#block-shib-auth-login-box {
  margin-top: 15px;
  padding-left: 15px;
}
/* Make bootstrappy buttons on the lab home page */
.btn-bs > :first-child {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 40px;
  line-height: 40px;
  font-size: 1.6em;
  text-align: center;
  border-right: 1px solid rgba(0, 0, 0, 0.2);
}
.btn-twitter {
  color: #fff;
  background-color: #55acee;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-twitter:hover {
  color: #fff;
  background-color: #2795e9;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-gitlab {
  color: #fff;
  background-color: #4B515D;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-gitlab:hover {
  color: #fff;
  background-color: #263238;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-myportfolio {
  color: #fff;
  background-color: #aa66cc;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-myportfolio:hover {
  color: #fff;
  background-color: #9933cc;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-linux-vm {
  color: #fff;
  background-color: #2BBBAD;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-linux-vm:hover {
  color: #fff;
  background-color: #00e676;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-vdi {
  color: #fff;
  background-color: #4285F4;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-vdi:hover {
  color: #fff;
  background-color: #304ffe;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-change-password {
  color: #fff;
  background-color: #967ADC;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-change-password:hover {
  color: #fff;
  background-color: #AC92EC;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-wifi {
  color: #fff;
  background-color: #3BAFDA;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-wifi:hover {
  color: #fff;
  background-color: #4FC1E9;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-email {
  color: #fff;
  background-color: #37BC9B;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-email:hover {
  color: #fff;
  background-color: #48CFAD;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-print {
  color: #fff;
  background-color: #F6BB42;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-print:hover {
  color: #fff;
  background-color: #FFCE54;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-request-account {
  color: #fff;
  background-color: #AAB2BD;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-request-account:hover {
  color: #fff;
  background-color: #CCD1D9;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-support-request {
  color: #fff;
  background-color: #4D505B;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-support-request:hover {
  color: #fff;
  background-color: #30302F;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-macintosh {
  color: #fff;
  background-color: #EC3F8C;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-macintosh:hover {
  color: #fff;
  background-color: #f50057;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-linux {
  color: #fff;
  background-color: #1FD26A;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-linux:hover {
  color: #fff;
  background-color: #00c853;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-windows {
  color: #fff;
  background-color: #39B1C6;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-windows:hover {
  color: #fff;
  background-color: #2962ff;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-report-emergency {
  color: #FFF;
  background-color: #F00;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-report-emergency:hover {
  color: #fff;
  background-color: #C00;
  border-color: rgba(0, 0, 0, 0.2);
}
.fa-twitter:before {
  content: "\f099";
}
.fa-gitlab:before {
  content: "\f296";
}
.fa-myportfolio:before {
  content: "\f07c";
}
.fa-vdi:before {
  content: "\f17a";
}
.fa-change-password:before {
  content: "\f084";
}
.fa-print:before {
  content: "\f02f";
}
.fa-request-account:before {
  content: "\f007";
}
.fa-linux-vm:before {
  content: "\f063";
}
.fa-support-request:before {
  content: "\f145";
}
.fa-macintosh:before {
  content: "\f179";
}
.fa-windows:before {
  content: "\f17a";
}
.fa-linux:before {
  content: "\f17c";
}
.fa-wifi:before {
  content: "\f1eb";
}
.fa-email:before {
  content: "\f0e0";
}
.btn-bs {
  text-decoration: none;
  display: block;
  width: 70%;
  padding: 6px 12px 6px 44px;
  margin-bottom: 5px;
  margin-left: 15px;
  font-size: 18px;
  font-weight: normal;
  line-height: 1.42857143;
  text-align: center;
  vertical-align: middle;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px;
  position: relative;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#block-custom-search-blocks-4 .form-item-custom-search-blocks-form-4 {
  padding-right: 50px;
}
#block-custom-search-blocks-4 div.form-actions {
  width: 35px;
  float: right;
  position: relative;
  top: -52px;
}
#block-custom-search-blocks-4 button.form-submit {
  background: url(/images/search_icon.png) no-repeat center top;
  text-indent: -9999px;
  padding: 0 !important;
  background-color: #FFF !important;
  border: 0 !important;
  height: 34px !important;
  width: 34px !important;
}
.cse-callout {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  -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);
  width: 25%;
  float: right;
  margin-left: 15px;
  margin-bottom: 15px;
}
.cse-callout blockquote {
  border-color: #ddd;
  border-color: rgba(0, 0, 0, 0.15);
}
@media only screen and (max-width: 480px) {
  .cse-callout {
    width: 100%;
    margin-left: 0px;
  }
}
div.public-directory-item {
  margin-bottom: 20px;
}
div.public-directory-name,
div.public-directory-name a {
  text-decoration: none;
  color: #4b2e83;
  font-size: 24px;
  font-weight: bold;
}
h3.biblio-title {
  color: #0088DD;
  font-size: 18px;
  margin-top: 20px;
  margin-bottom: 2px;
}
.cse-alert {
  background-color: #597184;
}
.cse-alert p {
  margin-top: 0px;
  color: #FFF;
  font-size: 13px;
}
.cse-alert div.container {
  height: 80px;
  width: 1000px;
  margin: auto;
  background-size: contain;
  background-repeat: no-repeat;
  padding-left: 120px;
}
.cse-alert a {
  color: yellow;
  text-decoration: none;
}
.cse-alert p.system-alert-title {
  color: yellow;
  margin-bottom: 0;
  margin-top: 2px;
  font-size: 1.6em;
  display: inline-block;
}
.alert-style-876 div.container {
  background-image: url('/images/system-alert-red.png');
}
.alert-style-878 div.container {
  background-image: url('/images/system-alert-yellow.png');
}
.alert-style-877 div.container {
  background-image: url('/images/system-alert-orange.png');
}
.alert-style-879 div.container {
  background-image: url('/images/system-alert-green.png');
}
#edit-field-system-alert-style-und-879 label {
  background-image: url('/images/system-alert-green.png');
  text-align: center;
  color: #FFF;
  height: 50px;
  padding-top: 30px;
}
#edit-field-system-alert-style-und-877 label {
  background-image: url('/images/system-alert-orange.png');
  text-align: center;
  color: #FFF;
  height: 50px;
  padding-top: 30px;
}
#edit-field-system-alert-style-und-876 label,
#edit-field-system-alert-style-und-880 + label {
  background-image: url('/images/system-alert-red.png');
  text-align: center;
  color: #FFF;
  height: 50px;
  padding-top: 30px;
}
#edit-field-system-alert-style-und-878 label {
  background-image: url('/images/system-alert-yellow.png');
  text-align: center;
  color: #FFF;
  height: 50px;
  padding-top: 30px;
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL25vcm1hbGl6ZS5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvcHJpbnQubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL2dseXBoaWNvbnMubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL3NjYWZmb2xkaW5nLmxlc3MiLCIuLi9sZXNzL3V3L2ZsYXQvbWl4aW5zLmxlc3MiLCIuLi9sZXNzL2NzZS9jc2UudmFyaWFibGVzLmxlc3MiLCIuLi9sZXNzLy93d3cvZHJ1cGFsL3NpdGVzL2FsbC90aGVtZXMvY3NlX2JvdW5kbGVzcy9ib290c3RyYXAvbGVzcy90aHVtYm5haWxzLmxlc3MiLCIuLi9sZXNzLy93d3cvZHJ1cGFsL3NpdGVzL2FsbC90aGVtZXMvY3NlX2JvdW5kbGVzcy9ib290c3RyYXAvbGVzcy9jYXJvdXNlbC5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvbWl4aW5zL3ZlbmRvci1wcmVmaXhlcy5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvdHlwZS5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvbWl4aW5zL3RleHQtZW1waGFzaXMubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL21peGlucy9iYWNrZ3JvdW5kLXZhcmlhbnQubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL2NvZGUubGVzcyIsIi4uL2xlc3MvdXcvZmxhdC92YXJpYWJsZXMubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL2dyaWQubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL21peGlucy9jbGVhcmZpeC5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvbWl4aW5zL2dyaWQtZnJhbWV3b3JrLmxlc3MiLCIuLi9sZXNzLy93d3cvZHJ1cGFsL3NpdGVzL2FsbC90aGVtZXMvY3NlX2JvdW5kbGVzcy9ib290c3RyYXAvbGVzcy90YWJsZXMubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL21peGlucy90YWJsZS1yb3cubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL2Zvcm1zLmxlc3MiLCIuLi9sZXNzL292ZXJyaWRlcy5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvbWl4aW5zL2Zvcm1zLmxlc3MiLCIuLi9sZXNzLy93d3cvZHJ1cGFsL3NpdGVzL2FsbC90aGVtZXMvY3NlX2JvdW5kbGVzcy9ib290c3RyYXAvbGVzcy9idXR0b25zLmxlc3MiLCIuLi9sZXNzLy93d3cvZHJ1cGFsL3NpdGVzL2FsbC90aGVtZXMvY3NlX2JvdW5kbGVzcy9ib290c3RyYXAvbGVzcy9taXhpbnMvYnV0dG9ucy5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvYnV0dG9uLWdyb3Vwcy5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvY29tcG9uZW50LWFuaW1hdGlvbnMubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL2Ryb3Bkb3ducy5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvbWl4aW5zL25hdi1kaXZpZGVyLmxlc3MiLCIuLi9sZXNzLy93d3cvZHJ1cGFsL3NpdGVzL2FsbC90aGVtZXMvY3NlX2JvdW5kbGVzcy9ib290c3RyYXAvbGVzcy9pbnB1dC1ncm91cHMubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL25hdnMubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL25hdmJhci5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvbWl4aW5zL25hdi12ZXJ0aWNhbC1hbGlnbi5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvdXRpbGl0aWVzLmxlc3MiLCIuLi9sZXNzLy93d3cvZHJ1cGFsL3NpdGVzL2FsbC90aGVtZXMvY3NlX2JvdW5kbGVzcy9ib290c3RyYXAvbGVzcy9icmVhZGNydW1icy5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvcGFnaW5hdGlvbi5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvbWl4aW5zL3BhZ2luYXRpb24ubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL3BhZ2VyLmxlc3MiLCIuLi9sZXNzLy93d3cvZHJ1cGFsL3NpdGVzL2FsbC90aGVtZXMvY3NlX2JvdW5kbGVzcy9ib290c3RyYXAvbGVzcy9sYWJlbHMubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL21peGlucy9sYWJlbHMubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL2JhZGdlcy5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvanVtYm90cm9uLmxlc3MiLCIuLi9sZXNzLy93d3cvZHJ1cGFsL3NpdGVzL2FsbC90aGVtZXMvY3NlX2JvdW5kbGVzcy9ib290c3RyYXAvbGVzcy9hbGVydHMubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL21peGlucy9hbGVydHMubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL3Byb2dyZXNzLWJhcnMubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL21peGlucy9ncmFkaWVudHMubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL21peGlucy9wcm9ncmVzcy1iYXIubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL21lZGlhLmxlc3MiLCIuLi9sZXNzLy93d3cvZHJ1cGFsL3NpdGVzL2FsbC90aGVtZXMvY3NlX2JvdW5kbGVzcy9ib290c3RyYXAvbGVzcy9saXN0LWdyb3VwLmxlc3MiLCIuLi9sZXNzLy93d3cvZHJ1cGFsL3NpdGVzL2FsbC90aGVtZXMvY3NlX2JvdW5kbGVzcy9ib290c3RyYXAvbGVzcy9taXhpbnMvbGlzdC1ncm91cC5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvcGFuZWxzLmxlc3MiLCIuLi9sZXNzLy93d3cvZHJ1cGFsL3NpdGVzL2FsbC90aGVtZXMvY3NlX2JvdW5kbGVzcy9ib290c3RyYXAvbGVzcy9taXhpbnMvcGFuZWxzLmxlc3MiLCIuLi9sZXNzLy93d3cvZHJ1cGFsL3NpdGVzL2FsbC90aGVtZXMvY3NlX2JvdW5kbGVzcy9ib290c3RyYXAvbGVzcy9yZXNwb25zaXZlLWVtYmVkLmxlc3MiLCIuLi9sZXNzLy93d3cvZHJ1cGFsL3NpdGVzL2FsbC90aGVtZXMvY3NlX2JvdW5kbGVzcy9ib290c3RyYXAvbGVzcy93ZWxscy5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvY2xvc2UubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL21vZGFscy5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvdG9vbHRpcC5sZXNzIiwiLi4vbGVzcy8vd3d3L2RydXBhbC9zaXRlcy9hbGwvdGhlbWVzL2NzZV9ib3VuZGxlc3MvYm9vdHN0cmFwL2xlc3MvcG9wb3ZlcnMubGVzcyIsIi4uL2xlc3MvL3d3dy9kcnVwYWwvc2l0ZXMvYWxsL3RoZW1lcy9jc2VfYm91bmRsZXNzL2Jvb3RzdHJhcC9sZXNzL3Jlc3BvbnNpdmUtdXRpbGl0aWVzLmxlc3MiLCIuLi9sZXNzLy93d3cvZHJ1cGFsL3NpdGVzL2FsbC90aGVtZXMvY3NlX2JvdW5kbGVzcy9ib290c3RyYXAvbGVzcy9taXhpbnMvcmVzcG9uc2l2ZS12aXNpYmlsaXR5Lmxlc3MiLCIuLi9sZXNzL3V3L3V3LmZvbnRzLmxlc3MiLCIuLi9sZXNzL3V3L2ZsYXQvbW9kdWxlcy9nbHlwaGljb25zLmxlc3MiLCIuLi9sZXNzL3V3L2ZsYXQvbW9kdWxlcy9zY2FmZm9sZGluZy5sZXNzIiwiLi4vbGVzcy91dy9mbGF0L21vZHVsZXMvdHlwZS5sZXNzIiwiLi4vbGVzcy91dy91dy5xdWlja2xpbmtzLmxlc3MiLCIuLi9sZXNzL2NzZS9jc2UuZHJvcGRvd25zLmxlc3MiLCIuLi9sZXNzL2NzZS9jc2UudGhpbnN0cmlwLmxlc3MiLCIuLi9sZXNzL3V3L3V3Lmhlcm8ubGVzcyIsIi4uL2xlc3MvdXcvdXcuYnJlYWRjcnVtYnMubGVzcyIsIi4uL2xlc3MvY3NlL2NzZS5ib2R5LWNvbnRlbnQubGVzcyIsIi4uL2xlc3MvY3NlL2NzZS5zZWFyY2gubGVzcyIsIi4uL2xlc3MvdXcvdXcuc2lkZWJhci5sZXNzIiwiLi4vbGVzcy9jc2UvY3NlLm1vYmlsZS1tZW51Lmxlc3MiLCIuLi9sZXNzL3V3L3V3LmFjY2Vzc2liaWxpdHkubGVzcyIsIi4uL2xlc3MvaGVhZGVyLmxlc3MiLCIuLi9sZXNzL2NvbnRlbnQubGVzcyIsIi4uL2xlc3MvbW9kdWxlcy93ZWJmb3JtLmxlc3MiLCIuLi9sZXNzL2NzZS5sZXNzIiwiLi4vbGVzcy9jc2UvZnJvbnRfcGFnZV9zbGlkZXNob3cubGVzcyIsIi4uL2xlc3MvY3NlL2Zvb3Rlci5sZXNzIiwiLi4vbGVzcy9jc2UvbGFiLWhvbWUubGVzcyIsIi4uL2xlc3MvY3NlL2NhbGxvdXQubGVzcyIsIi4uL2xlc3MvY3NlL3B1YmxpY19kaXJlY3Rvcmllcy5sZXNzIiwiLi4vbGVzcy9jc2UvYmlibGlvLmxlc3MiLCIuLi9sZXNzL2NzZS9zeXN0ZW0tYWxlcnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBUUE7RUFDRSx1QkFBQTtFQUNBLDBCQUFBO0VBQ0EsOEJBQUE7O0FBT0Y7RUFDRSxTQUFBOztBQWFGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0VBQ0UsY0FBQTs7QUFRRjtBQUNBO0FBQ0E7QUFDQTtFQUNFLHFCQUFBO0VBQ0Esd0JBQUE7O0FBUUYsS0FBSyxJQUFJO0VBQ1AsYUFBQTtFQUNBLFNBQUE7O0FBUUY7QUFDQTtFQUNFLGFBQUE7O0FBVUY7RUFDRSw2QkFBQTs7QUFPRixDQUFDO0FBQ0QsQ0FBQztFQUNDLFVBQUE7O0FBVUYsSUFBSTtFQUNGLHlCQUFBOztBQU9GO0FBQ0E7RUFDRSxpQkFBQTs7QUFPRjtFQUNFLGtCQUFBOztBQVFGO0VBQ0UsY0FBQTtFQUNBLGdCQUFBOztBQU9GO0VBQ0UsZ0JBQUE7RUFDQSxXQUFBOztBQU9GO0VBQ0UsY0FBQTs7QUFPRjtBQUNBO0VBQ0UsY0FBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLHdCQUFBOztBQUdGO0VBQ0UsV0FBQTs7QUFHRjtFQUNFLGVBQUE7O0FBVUY7RUFDRSxTQUFBOztBQU9GLEdBQUcsSUFBSTtFQUNMLGdCQUFBOztBQVVGO0VBQ0UsZ0JBQUE7O0FBT0Y7RUFDRSw0QkFBQTtFQUNBLHVCQUFBO0VBQ0EsU0FBQTs7QUFPRjtFQUNFLGNBQUE7O0FBT0Y7QUFDQTtBQUNBO0FBQ0E7RUFDRSxpQ0FB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QUFUOztBQUNYLHVCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG9CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHFCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHNCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGtCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG9CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHFCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG9CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHFCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHFCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHNCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG1CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHFCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG9CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHNCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHVCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLDJCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGVBQUM7RUFBVSxTQUFTLE9BQVQ7O0FBQ1gsZUFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxlQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG1CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG9CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHVCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG1CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGlCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGtCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGlCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHFCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHVCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGtCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHVCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHNCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLDBCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLDRCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGNBQUM7RUFBVSxTQUFTLE9BQVQ7O0FBQ1gsbUJBQUM7RUFBVSxTQUFTLE9BQVQ7O0FBQ1gsZUFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxzQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxvQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxzQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxxQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxvQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxrQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxvQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCw2QkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCw0QkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCwwQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCw0QkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxnQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxpQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxnQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxpQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxvQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxxQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxvQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxvQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxzQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxlQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGtCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGNBQUM7RUFBVSxTQUFTLE9BQVQ7O0FBQ1gsY0FBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxlQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLDJCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLCtCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLDRCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLDZCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGlDQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG9CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGlCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHNCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGlCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGtCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHFCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGlCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGVBQUM7RUFBVSxTQUFTLE9BQVQ7O0FBQ1gsZUFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxnQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxpQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxpQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxlQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHNCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHVCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHNCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHNCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHNCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG1CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGtCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGlCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHFCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG1CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG9C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LEtBQUssRUFBUSxDQUFDO0VBQ1osVUFBQTs7QUFERixLQUFLLEVBQVEsQ0FBQztFQUNaLG1CQUFBOztBQURGLEtBQUssRUFBUSxDQUFDO0VBQ1osa0JBQUE7O0FBY0YsS0FBSyxFQUFRLE1BQU07RUFDakIsV0FBQTs7QUFERixLQUFLLEVBQVEsTUFBTTtFQUNqQixtQkFBQTs7QUFERixLQUFLLEVBQVEsTUFBTTtFQUNqQixtQkFBQTs7QUFERixLQUFLLEVBQVEsTUFBTTtFQUNqQixVQUFBOztBQURGLEtBQUssRUFBUSxNQUFNO0VBQ2pCLG1CQUFBOztBQURGLEtBQUssRUFBUSxNQUFNO0VBQ2pCLG1CQUFBOztBQURGLEtBQUssRUFBUSxNQUFNO0VBQ2pCLFVBQUE7O0FBREYsS0FBSyxFQUFRLE1BQU07RUFDakIsbUJBQUE7O0FBREYsS0FBSyxFQUFRLE1BQU07RUFDakIsbUJBQUE7O0FBREYsS0FBSyxFQUFRLE1BQU07RUFDakIsVUFBQTs7QUFERixLQUFLLEVBQVEsTUFBTTtFQUNqQixtQkFBQTs7QUFERixLQUFLLEVBQVEsTUFBTTtFQUNqQixrQkFBQTs7QUFJRixLQUFLLEVBQVE7RUFDWCxXQUFBOztBQWhCRixLQUFLLEVBQVEsTUFBTTtFQUNqQixVQUFBOztBQURGLEtBQUssRUFBUSxNQUFNO0VBQ2pCLGtCQUFBOztBQURGLEtBQUssRUFBUSxNQUFNO0VBQ2pCLGtCQUFBOztBQURGLEtBQUssRUFBUSxNQUFNO0VBQ2pCLFNBQUE7O0FBREYsS0FBSyxFQUFRLE1BQU07RUFDakIsa0JBQUE7O0FBREYsS0FBSyxFQUFRLE1BQU07RUFDakIsa0JBQUE7O0FBREYsS0FBSyxFQUFRLE1BQU07RUFDakIsU0FBQTs7QUFERixLQUFLLEVBQVEsTUFBTTtFQUNqQixrQkFBQTs7QUFERixLQUFLLEVBQVEsTUFBTTtFQUNqQixrQkFBQTs7QUFERixLQUFLLEVBQVEsTUFBTTtFQUNqQixTQUFBOztBQURGLEtBQUssRUFBUSxNQUFNO0VBQ2pCLGtCQUFBOztBQURGLEtBQUssRUFBUSxNQUFNO0VBQ2pCLGlCQUFBOztBQUlGLEtBQUssRUFBUTtFQUNYLFVBQUE7O0FBY0YsS0FBSyxFQUFRLFFBQVE7RUFDbkIsaUJBQUE7O0FBREYsS0FBSyxFQUFRLFFBQVE7RUFDbkIseUJBQUE7O0FBREYsS0FBSyxFQUFRLFFBQVE7RUFDbkIseUJBQUE7O0FBREYsS0FBSyxFQUFRLFFBQVE7RUFDbkIsZ0JBQUE7O0FBREYsS0FBSyxFQUFRLFFBQVE7RUFDbkIseUJBQUE7O0FBREYsS0FBSyxFQUFRLFFBQVE7RUFDbkIseUJBQUE7O0FBREYsS0FBSyxFQUFRLFFBQVE7RUFDbkIsZ0JBQUE7O0FBREYsS0FBSyxFQUFRLFFBQVE7RUFDbkIseUJBQUE7O0FBREYsS0FBSyxFQUFRLFFBQVE7RUFDbkIseUJBQUE7O0FBREYsS0FBSyxFQUFRLFFBQVE7RUFDbkIsZ0JBQUE7O0FBREYsS0FBSyxFQUFRLFFBQVE7RUFDbkIseUJBQUE7O0FBREYsS0FBSyxFQUFRLFFBQVE7RUFDbkIsd0JBQUE7O0FBREYsS0FBSyxFQUFRLFFBQVE7RUFDbkIsZUFBQTs7QUZUSixRQUFtQztFRXpCL0I7SUFDRSxXQUFBOztFQU9KLEtBQUssRUFBUSxDQUFDO0lBQ1osV0FBQTs7RUFERixLQUFLLEVBQVEsQ0FBQztJQUNaLG1CQUFBOztFQURGLEtBQUssRUFBUSxDQUFDO0lBQ1osbUJBQUE7O0VBREYsS0FBSyxFQUFRLENBQUM7SUFDWixVQUFBOztFQURGLEtBQUssRUFBUSxDQUFDO0lBQ1osbUJBQUE7O0VBREYsS0FBSyxFQUFRLENBQUM7SUFDWixtQkFBQTs7RUFERixLQUFLLEVBQVEsQ0FBQztJQUNaLFVBQUE7O0VBREYsS0FBSyxFQUFRLENBQUM7SUFDWixtQkFBQTs7RUFERixLQUFLLEVBQVEsQ0FBQztJQUNaLG1CQUFBOztFQURGLEtBQUssRUFBUSxDQUFDO0lBQ1osVUFBQTs7RUFERixLQUFLLEVBQVEsQ0FBQztJQUNaLG1CQUFBOztFQURGLEtBQUssRUFBUSxDQUFDO0lBQ1osa0JBQUE7O0VBY0YsS0FBSyxFQUFRLE1BQU07SUFDakIsV0FBQTs7RUFERixLQUFLLEVBQVEsTUFBTTtJQUNqQixtQkFBQTs7RUFERixLQUFLLEVBQVEsTUFBTTtJQUNqQixtQkFBQTs7RUFERixLQUFLLEVBQVEsTUFBTTtJQUNqQixVQUFBOztFQURGLEtBQUssRUFBUSxNQUFNO0lBQ2pCLG1CQUFBOztFQURGLEtBQUssRUFBUSxNQUFNO0lBQ2pCLG1CQUFBOztFQURGLEtBQUssRUFBUSxNQUFNO0lBQ2pCLFVBQUE7O0VBREYsS0FBSyxFQUFRLE1BQU07SUFDakIsbUJBQUE7O0VBREYsS0FBSyxFQUFRLE1BQU07SUFDakIsbUJBQUE7O0VBREYsS0FBSyxFQUFRLE1BQU07SUFDakIsVUFBQTs7RUFERixLQUFLLEVBQVEsTUFBTTtJQUNqQixtQkFBQTs7RUFERixLQUFLLEVBQVEsTUFBTTtJQUNqQixrQkFBQTs7RUFJRixLQUFLLEVBQVE7SUFDWCxXQUFBOztFQWhCRixLQUFLLEVBQVEsTUFBTTtJQUNqQixVQUFBOztFQURGLEtBQUssRUFBUSxNQUFNO0lBQ2pCLGtCQUFBOztFQURGLEtBQUssRUFBUSxNQUFNO0lBQ2pCLGtCQUFBOztFQURGLEtBQUssRUFBUSxNQUFNO0lBQ2pCLFNBQUE7O0VBREYsS0FBSyxFQUFRLE1BQU07SUFDakIsa0JBQUE7O0VBREYsS0FBSyxFQUFRLE1BQU07SUFDakIsa0JBQUE7O0VBREYsS0FBSyxFQUFRLE1BQU07SUFDakIsU0FBQTs7RUFERixLQUFLLEVBQVEsTUFBTTtJQUNqQixrQkFBQTs7RUFERixLQUFLLEVBQVEsTUFBTTtJQUNqQixrQkFBQTs7RUFERixLQUFLLEVBQVEsTUFBTTtJQUNqQixTQUFBOztFQURGLEtBQUssRUFBUSxNQUFNO0lBQ2pCLGtCQUFBOztFQURGLEtBQUssRUFBUSxNQUFNO0lBQ2pCLGlCQUFBOztFQUlGLEtBQUssRUFBUTtJQUNYLFVBQUE7O0VBY0YsS0FBSyxFQUFRLFFBQVE7SUFDbkIsaUJBQUE7O0VBREYsS0FBSyxFQUFRLFFBQVE7SUFDbkIseUJBQUE7O0VBREYsS0FBSyxFQUFRLFFBQVE7SUFDbkIseUJBQUE7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S0c7QURlSCxnQkNoQkc7QURnQkgsZ0JDZkc7QUR3QkgsSUN6Qkc7QUR5QkgsSUN4Qkc7QUlzZEgsZ0JBcUJFLFlKNWVDO0FJdWRILGdCQXFCRSxZSjNlQztBU29CSCxZVHJCRztBU3FCSCxZVHBCRztBU2dJSCxtQkFXRSxhVDVJQztBU2lJSCxtQkFXRSxhVDNJQztBY05ILElkS0c7QWNMSCxJZE1HO0FlSkgsT2ZHRztBZUhILE9mSUc7QWVnQkgsY2ZqQkc7QWVpQkgsY2ZoQkc7QWVtQ0gsZ0JmcENHO0Flb0NILGdCZm5DRztBcUJUSCxNckJRRztBcUJSSCxNckJTRztBa0NDSCxXbENGRztBa0NFSCxXbENERztBdUNzRkgsYXZDdkZHO0F1Q3VGSCxhdkN0Rkc7RUFDQyxTQUFTLEdBQVQ7RUFDQSxjQUFBOztBQUVGLFNBQUM7QU44TEgsY0FDRSxHTS9MQztBRFRILFVDU0c7QURXSCxnQkNYRztBRG9CSCxJQ3BCRztBSWtkSCxnQkFxQkUsWUp2ZUM7QVNnQkgsWVRoQkc7QVM0SEgsbUJBV0UsYVR2SUM7QWNWSCxJZFVHO0FlUkgsT2ZRRztBZVlILGNmWkc7QWUrQkgsZ0JmL0JHO0FxQmJILE1yQmFHO0FrQ0hILFdsQ0dHO0F1Q2tGSCxhdkNsRkc7RUFDQyxXQUFBOztBWERGLFNBQUM7QUFDRCxTQUFDO0FLNkxILGNBQ0UsR0wvTEM7QUs4TEgsY0FDRSxHTDlMQztBVVZILFVWU0c7QVVUSCxVVlVHO0FVVUgsZ0JWWEc7QVVXSCxnQlZWRztBVW1CSCxJVnBCRztBVW9CSCxJVm5CRztBZWlkSCxnQkFxQkUsWWZ2ZUM7QWVrZEgsZ0JBcUJFLFlmdGVDO0FvQmVILFlwQmhCRztBb0JnQkgsWXBCZkc7QW9CMkhILG1CQVdFLGFwQnZJQztBb0I0SEgsbUJBV0UsYXBCdElDO0F5QlhILEl6QlVHO0F5QlZILEl6QldHO0EwQlRILE8xQlFHO0EwQlJILE8xQlNHO0EwQldILGMxQlpHO0EwQllILGMxQlhHO0EwQjhCSCxnQjFCL0JHO0EwQitCSCxnQjFCOUJHO0FnQ2RILE1oQ2FHO0FnQ2JILE1oQ2NHO0E2Q0pILFc3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QkFBQTtFQUNBLG1CQUFBOztBQWZKLFVBa0JFO0VBQ0UsYUFBQTtFQUNBLHFCQUFBOztBQUlKLFVBRUEsRUFBQztFQUNDLGFBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtFQUNBLHFCQUFBOztBQUdGLGdCQUFpQixJQUFHO0VBQ2xCLHNCQUFzQiwrQkFBdEI7O0FBR0YsZ0JBQWlCLElBQUc7RUFDbEIsc0JBQXNCLGtDQUF0Qjs7QUFHRixnQkFBa0IsSUFBRztFQUNuQixzQkFBc0Isa0NBQXRCOztBQUdGLGdCQUFrQixJQUFHO0VBQ25CLHNCQUFzQixpQ0FBdEI7O0FBSUYsc0NBQXVDO0VBQ3JDLHNCQUFzQixpQ0FBdEI7RUFDQSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsaUJBQUE7O0FBSUYsc0NBQXVDO0VBQ3JDLHNCQUFzQixrQ0FBdEI7RUFDQSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsaUJBQUE7O0FBSUYsc0NBQXVDO0FBQ3ZDLHNDQUF1QztFQUNyQyxzQkFBc0IsK0JBQXRCO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGlCQUFBOztBQUlGLHNDQUF1QztFQUNyQyxzQkFBc0Isa0NBQXRCO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGlCQUFBIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMiB8IE1JVCBMaWNlbnNlIHwgZ2l0LmlvL25vcm1hbGl6ZSAqL1xuXG4vL1xuLy8gMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbi8vIDIuIFByZXZlbnQgaU9TIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlLCB3aXRob3V0IGRpc2FibGluZ1xuLy8gICAgdXNlciB6b29tLlxuLy9cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAxXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuLy9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8gSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuLy8gYW5kIEZpcmVmb3guXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuLy9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuLy8gMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuLy9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gMlxufVxuXG4vL1xuLy8gUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbi8vIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4vL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4vLyBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4vL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gTGlua3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbi8vXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLy9cbi8vIEltcHJvdmUgcmVhZGFiaWxpdHkgd2hlbiBmb2N1c2VkIGFuZCBhbHNvIG1vdXNlIGhvdmVyZWQgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gVGV4dC1sZXZlbCBzZW1hbnRpY3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4vL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4vLyBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbi8vXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbi8vIEVtYmVkZGVkIGNvbnRlbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbi8vXG5cbmltZyB7XG4gIGJvcmRlcjogMDtcbn1cblxuLy9cbi8vIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuLy9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLyBHcm91cGluZyBjb250ZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4vL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vL1xuLy8gQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuLy9cblxuaHIge1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vL1xuLy8gQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLy9cbi8vIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLy8gRm9ybXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuLy8gc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxuLy9cblxuLy9cbi8vIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbi8vICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuLy8gMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbi8vIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDFcbiAgZm9udDogaW5oZXJpdDsgLy8gMlxuICBtYXJnaW46IDA7IC8vIDNcbn1cblxuLy9cbi8vIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuLy9cblxuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4vLyBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuLy8gQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cbi8vIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbi8vXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2Bcbi8vICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuLy8gMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuLy8gMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbi8vICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbi8vXG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG4gIGN1cnNvcjogcG9pbnRlcjsgLy8gM1xufVxuXG4vL1xuLy8gUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbi8vXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLy9cbi8vIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbi8vXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuLy8gdGhlIFVBIHN0eWxlc2hlZXQuXG4vL1xuXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8vXG4vLyBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4vLyBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxuLy9cbi8vIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4vLyAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuLy9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG59XG5cbi8vXG4vLyBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuLy8gYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbi8vIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbi8vXG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vL1xuLy8gMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4vLyAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lXG4vLyAgICAoaW5jbHVkZSBgLW1vemAgdG8gZnV0dXJlLXByb29mKS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAyXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4vL1xuLy8gUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4vLyBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4vLyBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG4vL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbi8vXG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxuLy8gMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuLy9cblxubGVnZW5kIHtcbiAgYm9yZGVyOiAwOyAvLyAxXG4gIHBhZGRpbmc6IDA7IC8vIDJcbn1cblxuLy9cbi8vIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXG4vL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vL1xuLy8gRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuLy8gTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4vL1xuXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vLyBUYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDtcbn1cbiIsIi8qISBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2Jsb2IvbWFzdGVyL3NyYy9jc3MvbWFpbi5jc3MgKi9cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFByaW50IHN0eWxlcy5cbi8vIElubGluZWQgdG8gYXZvaWQgdGhlIGFkZGl0aW9uYWwgSFRUUCByZXF1ZXN0OiBoNWJwLmNvbS9yXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AbWVkaWEgcHJpbnQge1xuICAgICosXG4gICAgKjpiZWZvcmUsXG4gICAgKjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3NcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgYVtocmVmXTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIH1cblxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICAgIH1cblxuICAgIC8vIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXG4gICAgLy8gb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxuICAgIGFbaHJlZl49XCIjXCJdOmFmdGVyLFxuICAgIGFbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgfVxuXG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgdGhlYWQge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IC8vIGg1YnAuY29tL3RcbiAgICB9XG5cbiAgICB0cixcbiAgICBpbWcge1xuICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICAgIG9ycGhhbnM6IDM7XG4gICAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIHN0YXJ0XG4gICAgLy9cbiAgICAvLyBDaHJvbWUgKE9TWCkgZml4IGZvciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExMjQ1XG4gICAgLy8gT25jZSBmaXhlZCwgd2UgY2FuIGp1c3Qgc3RyYWlnaHQgdXAgcmVtb3ZlIHRoaXMuXG4gICAgc2VsZWN0IHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZiAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5idG4sXG4gICAgLmRyb3B1cCA+IC5idG4ge1xuICAgICAgICA+IC5jYXJldCB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxhYmVsIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgdGQsXG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICB0aCxcbiAgICAgICAgdGQge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG59XG4iLCIvL1xuLy8gR2x5cGhpY29ucyBmb3IgQm9vdHN0cmFwXG4vL1xuLy8gU2luY2UgaWNvbnMgYXJlIGZvbnRzLCB0aGV5IGNhbiBiZSBwbGFjZWQgYW55d2hlcmUgdGV4dCBpcyBwbGFjZWQgYW5kIGFyZVxuLy8gdGh1cyBhdXRvbWF0aWNhbGx5IHNpemVkIHRvIG1hdGNoIHRoZSBzdXJyb3VuZGluZyBjaGlsZC4gVG8gdXNlLCBjcmVhdGUgYW5cbi8vIGlubGluZSBlbGVtZW50IHdpdGggdGhlIGFwcHJvcHJpYXRlIGNsYXNzZXMsIGxpa2Ugc286XG4vL1xuLy8gPGEgaHJlZj1cIiNcIj48c3BhbiBjbGFzcz1cImdseXBoaWNvbiBnbHlwaGljb24tc3RhclwiPjwvc3Bhbj4gU3RhcjwvYT5cblxuLy8gSW1wb3J0IHRoZSBmb250c1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xuICBzcmM6IHVybCgnQHtpY29uLWZvbnQtcGF0aH1Ae2ljb24tZm9udC1uYW1lfS5lb3QnKTtcbiAgc3JjOiB1cmwoJ0B7aWNvbi1mb250LXBhdGh9QHtpY29uLWZvbnQtbmFtZX0uZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICB1cmwoJ0B7aWNvbi1mb250LXBhdGh9QHtpY29uLWZvbnQtbmFtZX0ud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgIHVybCgnQHtpY29uLWZvbnQtcGF0aH1Ae2ljb24tZm9udC1uYW1lfS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgdXJsKCdAe2ljb24tZm9udC1wYXRofUB7aWNvbi1mb250LW5hbWV9LnN2ZyNAe2ljb24tZm9udC1zdmctaWR9JykgZm9ybWF0KCdzdmcnKTtcbn1cblxuLy8gQ2F0Y2hhbGwgYmFzZWNsYXNzXG4uZ2x5cGhpY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDFweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJ0dseXBoaWNvbnMgSGFsZmxpbmdzJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi8vIEluZGl2aWR1YWwgaWNvbnNcbi5nbHlwaGljb24tYXN0ZXJpc2sgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDJhXCI7IH0gfVxuLmdseXBoaWNvbi1wbHVzICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMmJcIjsgfSB9XG4uZ2x5cGhpY29uLWV1cm8sXG4uZ2x5cGhpY29uLWV1ciAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMGFjXCI7IH0gfVxuLmdseXBoaWNvbi1taW51cyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjIxMlwiOyB9IH1cbi5nbHlwaGljb24tY2xvdWQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI2MDFcIjsgfSB9XG4uZ2x5cGhpY29uLWVudmVsb3BlICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNzA5XCI7IH0gfVxuLmdseXBoaWNvbi1wZW5jaWwgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjcwZlwiOyB9IH1cbi5nbHlwaGljb24tZ2xhc3MgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDFcIjsgfSB9XG4uZ2x5cGhpY29uLW11c2ljICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDAyXCI7IH0gfVxuLmdseXBoaWNvbi1zZWFyY2ggICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwM1wiOyB9IH1cbi5nbHlwaGljb24taGVhcnQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDVcIjsgfSB9XG4uZ2x5cGhpY29uLXN0YXIgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA2XCI7IH0gfVxuLmdseXBoaWNvbi1zdGFyLWVtcHR5ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwN1wiOyB9IH1cbi5nbHlwaGljb24tdXNlciAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDhcIjsgfSB9XG4uZ2x5cGhpY29uLWZpbG0gICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA5XCI7IH0gfVxuLmdseXBoaWNvbi10aC1sYXJnZSAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxMFwiOyB9IH1cbi5nbHlwaGljb24tdGggICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTFcIjsgfSB9XG4uZ2x5cGhpY29uLXRoLWxpc3QgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEyXCI7IH0gfVxuLmdseXBoaWNvbi1vayAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxM1wiOyB9IH1cbi5nbHlwaGljb24tcmVtb3ZlICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTRcIjsgfSB9XG4uZ2x5cGhpY29uLXpvb20taW4gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE1XCI7IH0gfVxuLmdseXBoaWNvbi16b29tLW91dCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxNlwiOyB9IH1cbi5nbHlwaGljb24tb2ZmICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTdcIjsgfSB9XG4uZ2x5cGhpY29uLXNpZ25hbCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE4XCI7IH0gfVxuLmdseXBoaWNvbi1jb2cgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxOVwiOyB9IH1cbi5nbHlwaGljb24tdHJhc2ggICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjBcIjsgfSB9XG4uZ2x5cGhpY29uLWhvbWUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIxXCI7IH0gfVxuLmdseXBoaWNvbi1maWxlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyMlwiOyB9IH1cbi5nbHlwaGljb24tdGltZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjNcIjsgfSB9XG4uZ2x5cGhpY29uLXJvYWQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI0XCI7IH0gfVxuLmdseXBoaWNvbi1kb3dubG9hZC1hbHQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyNVwiOyB9IH1cbi5nbHlwaGljb24tZG93bmxvYWQgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjZcIjsgfSB9XG4uZ2x5cGhpY29uLXVwbG9hZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI3XCI7IH0gfVxuLmdseXBoaWNvbi1pbmJveCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyOFwiOyB9IH1cbi5nbHlwaGljb24tcGxheS1jaXJjbGUgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjlcIjsgfSB9XG4uZ2x5cGhpY29uLXJlcGVhdCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMwXCI7IH0gfVxuLmdseXBoaWNvbi1yZWZyZXNoICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzMVwiOyB9IH1cbi5nbHlwaGljb24tbGlzdC1hbHQgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzJcIjsgfSB9XG4uZ2x5cGhpY29uLWxvY2sgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMzXCI7IH0gfVxuLmdseXBoaWNvbi1mbGFnICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzNFwiOyB9IH1cbi5nbHlwaGljb24taGVhZHBob25lcyAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzVcIjsgfSB9XG4uZ2x5cGhpY29uLXZvbHVtZS1vZmYgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM2XCI7IH0gfVxuLmdseXBoaWNvbi12b2x1bWUtZG93biAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzN1wiOyB9IH1cbi5nbHlwaGljb24tdm9sdW1lLXVwICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzhcIjsgfSB9XG4uZ2x5cGhpY29uLXFyY29kZSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM5XCI7IH0gfVxuLmdseXBoaWNvbi1iYXJjb2RlICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0MFwiOyB9IH1cbi5nbHlwaGljb24tdGFnICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDFcIjsgfSB9XG4uZ2x5cGhpY29uLXRhZ3MgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQyXCI7IH0gfVxuLmdseXBoaWNvbi1ib29rICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0M1wiOyB9IH1cbi5nbHlwaGljb24tYm9va21hcmsgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDRcIjsgfSB9XG4uZ2x5cGhpY29uLXByaW50ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ1XCI7IH0gfVxuLmdseXBoaWNvbi1jYW1lcmEgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0NlwiOyB9IH1cbi5nbHlwaGljb24tZm9udCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDdcIjsgfSB9XG4uZ2x5cGhpY29uLWJvbGQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ4XCI7IH0gfVxuLmdseXBoaWNvbi1pdGFsaWMgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0OVwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC1oZWlnaHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTBcIjsgfSB9XG4uZ2x5cGhpY29uLXRleHQtd2lkdGggICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUxXCI7IH0gfVxuLmdseXBoaWNvbi1hbGlnbi1sZWZ0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1MlwiOyB9IH1cbi5nbHlwaGljb24tYWxpZ24tY2VudGVyICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTNcIjsgfSB9XG4uZ2x5cGhpY29uLWFsaWduLXJpZ2h0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU0XCI7IH0gfVxuLmdseXBoaWNvbi1hbGlnbi1qdXN0aWZ5ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1NVwiOyB9IH1cbi5nbHlwaGljb24tbGlzdCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTZcIjsgfSB9XG4uZ2x5cGhpY29uLWluZGVudC1sZWZ0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU3XCI7IH0gfVxuLmdseXBoaWNvbi1pbmRlbnQtcmlnaHQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1OFwiOyB9IH1cbi5nbHlwaGljb24tZmFjZXRpbWUtdmlkZW8gICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTlcIjsgfSB9XG4uZ2x5cGhpY29uLXBpY3R1cmUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYwXCI7IH0gfVxuLmdseXBoaWNvbi1tYXAtbWFya2VyICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2MlwiOyB9IH1cbi5nbHlwaGljb24tYWRqdXN0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjNcIjsgfSB9XG4uZ2x5cGhpY29uLXRpbnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY0XCI7IH0gfVxuLmdseXBoaWNvbi1lZGl0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2NVwiOyB9IH1cbi5nbHlwaGljb24tc2hhcmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjZcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZWNrICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY3XCI7IH0gfVxuLmdseXBoaWNvbi1tb3ZlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2OFwiOyB9IH1cbi5nbHlwaGljb24tc3RlcC1iYWNrd2FyZCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjlcIjsgfSB9XG4uZ2x5cGhpY29uLWZhc3QtYmFja3dhcmQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDcwXCI7IH0gfVxuLmdseXBoaWNvbi1iYWNrd2FyZCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3MVwiOyB9IH1cbi5nbHlwaGljb24tcGxheSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzJcIjsgfSB9XG4uZ2x5cGhpY29uLXBhdXNlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDczXCI7IH0gfVxuLmdseXBoaWNvbi1zdG9wICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3NFwiOyB9IH1cbi5nbHlwaGljb24tZm9yd2FyZCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzVcIjsgfSB9XG4uZ2x5cGhpY29uLWZhc3QtZm9yd2FyZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc2XCI7IH0gfVxuLmdseXBoaWNvbi1zdGVwLWZvcndhcmQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3N1wiOyB9IH1cbi5nbHlwaGljb24tZWplY3QgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzhcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZXZyb24tbGVmdCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc5XCI7IH0gfVxuLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4MFwiOyB9IH1cbi5nbHlwaGljb24tcGx1cy1zaWduICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODFcIjsgfSB9XG4uZ2x5cGhpY29uLW1pbnVzLXNpZ24gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgyXCI7IH0gfVxuLmdseXBoaWNvbi1yZW1vdmUtc2lnbiAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4M1wiOyB9IH1cbi5nbHlwaGljb24tb2stc2lnbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODRcIjsgfSB9XG4uZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg1XCI7IH0gfVxuLmdseXBoaWNvbi1pbmZvLXNpZ24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4NlwiOyB9IH1cbi5nbHlwaGljb24tc2NyZWVuc2hvdCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODdcIjsgfSB9XG4uZ2x5cGhpY29uLXJlbW92ZS1jaXJjbGUgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg4XCI7IH0gfVxuLmdseXBoaWNvbi1vay1jaXJjbGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4OVwiOyB9IH1cbi5nbHlwaGljb24tYmFuLWNpcmNsZSAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTBcIjsgfSB9XG4uZ2x5cGhpY29uLWFycm93LWxlZnQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkxXCI7IH0gfVxuLmdseXBoaWNvbi1hcnJvdy1yaWdodCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5MlwiOyB9IH1cbi5nbHlwaGljb24tYXJyb3ctdXAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTNcIjsgfSB9XG4uZ2x5cGhpY29uLWFycm93LWRvd24gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk0XCI7IH0gfVxuLmdseXBoaWNvbi1zaGFyZS1hbHQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5NVwiOyB9IH1cbi5nbHlwaGljb24tcmVzaXplLWZ1bGwgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTZcIjsgfSB9XG4uZ2x5cGhpY29uLXJlc2l6ZS1zbWFsbCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk3XCI7IH0gfVxuLmdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwMVwiOyB9IH1cbi5nbHlwaGljb24tZ2lmdCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDJcIjsgfSB9XG4uZ2x5cGhpY29uLWxlYWYgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTAzXCI7IH0gfVxuLmdseXBoaWNvbi1maXJlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwNFwiOyB9IH1cbi5nbHlwaGljb24tZXllLW9wZW4gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDVcIjsgfSB9XG4uZ2x5cGhpY29uLWV5ZS1jbG9zZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA2XCI7IH0gfVxuLmdseXBoaWNvbi13YXJuaW5nLXNpZ24gICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwN1wiOyB9IH1cbi5nbHlwaGljb24tcGxhbmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDhcIjsgfSB9XG4uZ2x5cGhpY29uLWNhbGVuZGFyICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA5XCI7IH0gfVxuLmdseXBoaWNvbi1yYW5kb20gICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExMFwiOyB9IH1cbi5nbHlwaGljb24tY29tbWVudCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTFcIjsgfSB9XG4uZ2x5cGhpY29uLW1hZ25ldCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEyXCI7IH0gfVxuLmdseXBoaWNvbi1jaGV2cm9uLXVwICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExM1wiOyB9IH1cbi5nbHlwaGljb24tY2hldnJvbi1kb3duICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTRcIjsgfSB9XG4uZ2x5cGhpY29uLXJldHdlZXQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE1XCI7IH0gfVxuLmdseXBoaWNvbi1zaG9wcGluZy1jYXJ0ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExNlwiOyB9IH1cbi5nbHlwaGljb24tZm9sZGVyLWNsb3NlICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTdcIjsgfSB9XG4uZ2x5cGhpY29uLWZvbGRlci1vcGVuICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE4XCI7IH0gfVxuLmdseXBoaWNvbi1yZXNpemUtdmVydGljYWwgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExOVwiOyB9IH1cbi5nbHlwaGljb24tcmVzaXplLWhvcml6b250YWwgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjBcIjsgfSB9XG4uZ2x5cGhpY29uLWhkZCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIxXCI7IH0gfVxuLmdseXBoaWNvbi1idWxsaG9ybiAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyMlwiOyB9IH1cbi5nbHlwaGljb24tYmVsbCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjNcIjsgfSB9XG4uZ2x5cGhpY29uLWNlcnRpZmljYXRlICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI0XCI7IH0gfVxuLmdseXBoaWNvbi10aHVtYnMtdXAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyNVwiOyB9IH1cbi5nbHlwaGljb24tdGh1bWJzLWRvd24gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjZcIjsgfSB9XG4uZ2x5cGhpY29uLWhhbmQtcmlnaHQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI3XCI7IH0gfVxuLmdseXBoaWNvbi1oYW5kLWxlZnQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyOFwiOyB9IH1cbi5nbHlwaGljb24taGFuZC11cCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjlcIjsgfSB9XG4uZ2x5cGhpY29uLWhhbmQtZG93biAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMwXCI7IH0gfVxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctcmlnaHQgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzMVwiOyB9IH1cbi5nbHlwaGljb24tY2lyY2xlLWFycm93LWxlZnQgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzJcIjsgfSB9XG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy11cCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMzXCI7IH0gfVxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctZG93biAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzNFwiOyB9IH1cbi5nbHlwaGljb24tZ2xvYmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzVcIjsgfSB9XG4uZ2x5cGhpY29uLXdyZW5jaCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM2XCI7IH0gfVxuLmdseXBoaWNvbi10YXNrcyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzN1wiOyB9IH1cbi5nbHlwaGljb24tZmlsdGVyICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzhcIjsgfSB9XG4uZ2x5cGhpY29uLWJyaWVmY2FzZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM5XCI7IH0gfVxuLmdseXBoaWNvbi1mdWxsc2NyZWVuICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0MFwiOyB9IH1cbi5nbHlwaGljb24tZGFzaGJvYXJkICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDFcIjsgfSB9XG4uZ2x5cGhpY29uLXBhcGVyY2xpcCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQyXCI7IH0gfVxuLmdseXBoaWNvbi1oZWFydC1lbXB0eSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0M1wiOyB9IH1cbi5nbHlwaGljb24tbGluayAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDRcIjsgfSB9XG4uZ2x5cGhpY29uLXBob25lICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ1XCI7IH0gfVxuLmdseXBoaWNvbi1wdXNocGluICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0NlwiOyB9IH1cbi5nbHlwaGljb24tdXNkICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDhcIjsgfSB9XG4uZ2x5cGhpY29uLWdicCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ5XCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1MFwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1hbHBoYWJldCAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTFcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktYWxwaGFiZXQtYWx0ICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUyXCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LW9yZGVyICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1M1wiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1vcmRlci1hbHQgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTRcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktYXR0cmlidXRlcyAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU1XCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LWF0dHJpYnV0ZXMtYWx0IHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1NlwiOyB9IH1cbi5nbHlwaGljb24tdW5jaGVja2VkICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTdcIjsgfSB9XG4uZ2x5cGhpY29uLWV4cGFuZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU4XCI7IH0gfVxuLmdseXBoaWNvbi1jb2xsYXBzZS1kb3duICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1OVwiOyB9IH1cbi5nbHlwaGljb24tY29sbGFwc2UtdXAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjBcIjsgfSB9XG4uZ2x5cGhpY29uLWxvZy1pbiAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYxXCI7IH0gfVxuLmdseXBoaWNvbi1mbGFzaCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2MlwiOyB9IH1cbi5nbHlwaGljb24tbG9nLW91dCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjNcIjsgfSB9XG4uZ2x5cGhpY29uLW5ldy13aW5kb3cgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY0XCI7IH0gfVxuLmdseXBoaWNvbi1yZWNvcmQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2NVwiOyB9IH1cbi5nbHlwaGljb24tc2F2ZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjZcIjsgfSB9XG4uZ2x5cGhpY29uLW9wZW4gICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY3XCI7IH0gfVxuLmdseXBoaWNvbi1zYXZlZCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2OFwiOyB9IH1cbi5nbHlwaGljb24taW1wb3J0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjlcIjsgfSB9XG4uZ2x5cGhpY29uLWV4cG9ydCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTcwXCI7IH0gfVxuLmdseXBoaWNvbi1zZW5kICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3MVwiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LWRpc2sgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzJcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1zYXZlZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTczXCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktcmVtb3ZlICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3NFwiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LXNhdmUgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzVcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1vcGVuICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc2XCI7IH0gfVxuLmdseXBoaWNvbi1jcmVkaXQtY2FyZCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3N1wiOyB9IH1cbi5nbHlwaGljb24tdHJhbnNmZXIgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzhcIjsgfSB9XG4uZ2x5cGhpY29uLWN1dGxlcnkgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc5XCI7IH0gfVxuLmdseXBoaWNvbi1oZWFkZXIgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4MFwiOyB9IH1cbi5nbHlwaGljb24tY29tcHJlc3NlZCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODFcIjsgfSB9XG4uZ2x5cGhpY29uLWVhcnBob25lICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgyXCI7IH0gfVxuLmdseXBoaWNvbi1waG9uZS1hbHQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4M1wiOyB9IH1cbi5nbHlwaGljb24tdG93ZXIgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODRcIjsgfSB9XG4uZ2x5cGhpY29uLXN0YXRzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg1XCI7IH0gfVxuLmdseXBoaWNvbi1zZC12aWRlbyAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4NlwiOyB9IH1cbi5nbHlwaGljb24taGQtdmlkZW8gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODdcIjsgfSB9XG4uZ2x5cGhpY29uLXN1YnRpdGxlcyAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg4XCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC1zdGVyZW8gICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4OVwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtZG9sYnkgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTBcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLTUtMSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkxXCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC02LTEgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5MlwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtNy0xICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTNcIjsgfSB9XG4uZ2x5cGhpY29uLWNvcHlyaWdodC1tYXJrICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk0XCI7IH0gfVxuLmdseXBoaWNvbi1yZWdpc3RyYXRpb24tbWFyayAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5NVwiOyB9IH1cbi5nbHlwaGljb24tY2xvdWQtZG93bmxvYWQgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTdcIjsgfSB9XG4uZ2x5cGhpY29uLWNsb3VkLXVwbG9hZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk4XCI7IH0gfVxuLmdseXBoaWNvbi10cmVlLWNvbmlmZXIgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5OVwiOyB9IH1cbi5nbHlwaGljb24tdHJlZS1kZWNpZHVvdXMgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDBcIjsgfSB9XG4iLCIvL1xuLy8gU2NhZmZvbGRpbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gUmVzZXQgdGhlIGJveC1zaXppbmdcbi8vXG4vLyBIZWFkcyB1cCEgVGhpcyByZXNldCBtYXkgY2F1c2UgY29uZmxpY3RzIHdpdGggc29tZSB0aGlyZC1wYXJ0eSB3aWRnZXRzLlxuLy8gRm9yIHJlY29tbWVuZGF0aW9ucyBvbiByZXNvbHZpbmcgc3VjaCBjb25mbGljdHMsIHNlZVxuLy8gaHR0cDovL2dldGJvb3RzdHJhcC5jb20vZ2V0dGluZy1zdGFydGVkLyN0aGlyZC1ib3gtc2l6aW5nXG4qIHtcbiAgLmJveC1zaXppbmcoYm9yZGVyLWJveCk7XG59XG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICAuYm94LXNpemluZyhib3JkZXItYm94KTtcbn1cblxuXG4vLyBCb2R5IHJlc2V0XG5cbmh0bWwge1xuICBmb250LXNpemU6IDEwcHg7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLDAsMCwwKTtcbn1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiBAZm9udC1mYW1pbHktYmFzZTtcbiAgZm9udC1zaXplOiBAZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6IEB0ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYm9keS1iZztcbn1cblxuLy8gUmVzZXQgZm9udHMgZm9yIHJlbGV2YW50IGVsZW1lbnRzXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cblxuLy8gTGlua3NcblxuYSB7XG4gIGNvbG9yOiBAbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiBAbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IEBsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICAudGFiLWZvY3VzKCk7XG4gIH1cbn1cblxuXG4vLyBGaWd1cmVzXG4vL1xuLy8gV2UgcmVzZXQgdGhpcyBoZXJlIGJlY2F1c2UgcHJldmlvdXNseSBOb3JtYWxpemUgaGFkIG5vIGBmaWd1cmVgIG1hcmdpbnMuIFRoaXNcbi8vIGVuc3VyZXMgd2UgZG9uJ3QgYnJlYWsgYW55b25lJ3MgdXNlIG9mIHRoZSBlbGVtZW50LlxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cblxuLy8gSW1hZ2VzXG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLmltZy1yZXNwb25zaXZlIHtcbiAgLmltZy1yZXNwb25zaXZlKCk7XG59XG5cbi8vIFJvdW5kZWQgY29ybmVyc1xuLmltZy1yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlci1yYWRpdXMtbGFyZ2U7XG59XG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi8vXG4vLyBIZWFkcyB1cCEgVGhpcyBpcyBtaXhpbi1lZCBpbnRvIHRodW1ibmFpbHMubGVzcyBmb3IgYC50aHVtYm5haWxgLlxuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiBAdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgQHRodW1ibmFpbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6IEB0aHVtYm5haWwtYm9yZGVyLXJhZGl1cztcbiAgLnRyYW5zaXRpb24oYWxsIC4ycyBlYXNlLWluLW91dCk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIC5pbWctcmVzcG9uc2l2ZShpbmxpbmUtYmxvY2spO1xufVxuXG4vLyBQZXJmZWN0IGNpcmNsZVxuLmltZy1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7IC8vIHNldCByYWRpdXMgaW4gcGVyY2VudHNcbn1cblxuXG4vLyBIb3Jpem9udGFsIHJ1bGVzXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogICAgQGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBtYXJnaW4tYm90dG9tOiBAbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIEBoci1ib3JkZXI7XG59XG5cblxuLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHA6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cblxuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuLnNyLW9ubHktZm9jdXNhYmxlIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICB9XG59XG4iLCIvL1xuLy8gTWl4aW5zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBVdGlsaXRpZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQ2xlYXJmaXhcbi8vIFNvdXJjZTogaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svXG4vL1xuLy8gRm9yIG1vZGVybiBicm93c2Vyc1xuLy8gMS4gVGhlIHNwYWNlIGNvbnRlbnQgaXMgb25lIHdheSB0byBhdm9pZCBhbiBPcGVyYSBidWcgd2hlbiB0aGVcbi8vICAgIGNvbnRlbnRlZGl0YWJsZSBhdHRyaWJ1dGUgaXMgaW5jbHVkZWQgYW55d2hlcmUgZWxzZSBpbiB0aGUgZG9jdW1lbnQuXG4vLyAgICBPdGhlcndpc2UgaXQgY2F1c2VzIHNwYWNlIHRvIGFwcGVhciBhdCB0aGUgdG9wIGFuZCBib3R0b20gb2YgZWxlbWVudHNcbi8vICAgIHRoYXQgYXJlIGNsZWFyZml4ZWQuXG4vLyAyLiBUaGUgdXNlIG9mIGB0YWJsZWAgcmF0aGVyIHRoYW4gYGJsb2NrYCBpcyBvbmx5IG5lY2Vzc2FyeSBpZiB1c2luZ1xuLy8gICAgYDpiZWZvcmVgIHRvIGNvbnRhaW4gdGhlIHRvcC1tYXJnaW5zIG9mIGNoaWxkIGVsZW1lbnRzLlxuLmNsZWFyZml4KCkge1xuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7IC8qIDEgKi9cbiAgICBkaXNwbGF5OiB0YWJsZTsgLyogMiAqL1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vIFdlYmtpdC1zdHlsZSBmb2N1c1xuLnRhYi1mb2N1cygpIHtcbiAgLy8gRGVmYXVsdFxuICBvdXRsaW5lOiB0aGluIGRvdHRlZDtcbiAgLy8gV2Via2l0XG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG59XG5cbi8vIENlbnRlci1hbGlnbiBhIGJsb2NrIGxldmVsIGVsZW1lbnRcbi5jZW50ZXItYmxvY2soKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vLyBTaXppbmcgc2hvcnRjdXRzXG4uc2l6ZShAd2lkdGg7IEBoZWlnaHQpIHtcbiAgd2lkdGg6IEB3aWR0aDtcbiAgaGVpZ2h0OiBAaGVpZ2h0O1xufVxuLnNxdWFyZShAc2l6ZSkge1xuICAuc2l6ZShAc2l6ZTsgQHNpemUpO1xufVxuXG4vLyBQbGFjZWhvbGRlciB0ZXh0XG4ucGxhY2Vob2xkZXIoQGNvbG9yOiBAaW5wdXQtY29sb3ItcGxhY2Vob2xkZXIpIHtcbiAgJjotbW96LXBsYWNlaG9sZGVyICAgICAgICAgICAgeyBjb2xvcjogQGNvbG9yOyB9IC8vIEZpcmVmb3ggNC0xOFxuICAmOjotbW96LXBsYWNlaG9sZGVyICAgICAgICAgICB7IGNvbG9yOiBAY29sb3I7ICAgLy8gRmlyZWZveCAxOStcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxOyB9IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNlxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciAgICAgICB7IGNvbG9yOiBAY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6IEBjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxuICAmLnBsYWNlaG9sZGVyICAgICAgICAgICAgICAgICB7IGNvbG9yOiBAY29sb3I7IH0gLy8gRmFsbGJhY2tcbn1cblxuLnBsYWNlaG9sZGVyLWhlaWdodChAaGVpZ2h0KSB7XG4gICY6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgbGluZS1oZWlnaHQ6IEBoZWlnaHQ7XG4gIH1cbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgbGluZS1oZWlnaHQ6IEBoZWlnaHQ7XG4gIH1cbiAgJi5wbGFjZWhvbGRlciB7XG4gICAgbGluZS1oZWlnaHQ6IEBoZWlnaHQ7XG4gIH1cbn1cblxuLy8gVGV4dCBvdmVyZmxvd1xuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuLnRleHQtb3ZlcmZsb3coKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbi50ZXh0LWhpZGUoKSB7XG4gIGZvbnQ6IH5cIjAvMFwiIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi8vIENTUzMgUFJPUEVSVElFU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJvcmRlci1yYWRpdXMgKEByYWRpdXM6IDVweCkge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IEByYWRpdXM7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogICAgQHJhZGl1cztcbiAgYm9yZGVyLXJhZGl1czogICAgICAgICBAcmFkaXVzO1xuXG4gIC1tb3otYmFja2dyb3VuZC1jbGlwOiAgICBwYWRkaW5nO1xuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJhY2tncm91bmQtY2xpcDogICAgICAgICBwYWRkaW5nLWJveDtcbn1cblxuLm1hc2soQGFyZ3VtZW50cykge1xuICAtd2Via2l0LW1hc2s6IEBhcmd1bWVudHM7XG4gICAgICAgICAgbWFzazogQGFyZ3VtZW50cztcbn1cblxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuLmJvcmRlci10b3AtcmFkaXVzKEByYWRpdXMpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IEByYWRpdXM7XG4gICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBAcmFkaXVzO1xufVxuLmJvcmRlci1yaWdodC1yYWRpdXMoQHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogQHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IEByYWRpdXM7XG59XG4uYm9yZGVyLWJvdHRvbS1yYWRpdXMoQHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogQHJhZGl1cztcbiAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IEByYWRpdXM7XG59XG4uYm9yZGVyLWxlZnQtcmFkaXVzKEByYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogQHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogQHJhZGl1cztcbn1cblxuLy8gRHJvcCBzaGFkb3dzXG4uYm94LXNoYWRvdyhAc2hhZG93KSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogQHNoYWRvdzsgLy8gaU9TIDw0LjMgJiBBbmRyb2lkIDw0LjFcbiAgICAgICAgICBib3gtc2hhZG93OiBAc2hhZG93O1xufVxuXG4vLyBUcmFuc2l0aW9uc1xuLnRyYW5zaXRpb24oQHRyYW5zaXRpb24pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBAdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBAdHJhbnNpdGlvbjtcbn1cbi50cmFuc2l0aW9uLXByb3BlcnR5KEB0cmFuc2l0aW9uLXByb3BlcnR5KSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogQHRyYW5zaXRpb24tcHJvcGVydHk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogQHRyYW5zaXRpb24tcHJvcGVydHk7XG59XG4udHJhbnNpdGlvbi1kZWxheShAdHJhbnNpdGlvbi1kZWxheSkge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IEB0cmFuc2l0aW9uLWRlbGF5O1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IEB0cmFuc2l0aW9uLWRlbGF5O1xufVxuLnRyYW5zaXRpb24tZHVyYXRpb24oQHRyYW5zaXRpb24tZHVyYXRpb24pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiBAdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiBAdHJhbnNpdGlvbi1kdXJhdGlvbjtcbn1cbi50cmFuc2l0aW9uLXRyYW5zZm9ybShAdHJhbnNpdGlvbikge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIEB0cmFuc2l0aW9uO1xuICAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIEB0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSBAdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gQHRyYW5zaXRpb247XG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uc1xuLnJvdGF0ZShAZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKEBkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZShAZGVncmVlcyk7IC8vIElFOStcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZShAZGVncmVlcyk7XG59XG4uc2NhbGUoQHJhdGlvOyBAcmF0aW8teS4uLikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoQHJhdGlvLCBAcmF0aW8teSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZShAcmF0aW8sIEByYXRpby15KTsgLy8gSUU5IG9ubHlcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKEByYXRpbywgQHJhdGlvLXkpO1xufVxuLnRyYW5zbGF0ZShAeDsgQHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSk7IC8vIElFOStcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHkpO1xufVxuLnNrZXcoQHg7IEB5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KEB4LCBAeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBza2V3WChAeCkgc2tld1koQHkpOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy80ODg1OyBJRTkrXG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3KEB4LCBAeSk7XG59XG4udHJhbnNsYXRlM2QoQHg7IEB5OyBAeikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoQHgsIEB5LCBAeik7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZChAeCwgQHksIEB6KTtcbn1cblxuLnJvdGF0ZVgoQGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoQGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWChAZGVncmVlcyk7IC8vIElFOStcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoQGRlZ3JlZXMpO1xufVxuLnJvdGF0ZVkoQGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoQGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWShAZGVncmVlcyk7IC8vIElFOStcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoQGRlZ3JlZXMpO1xufVxuLnBlcnNwZWN0aXZlKEBwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiBAcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmU6IEBwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZTogQHBlcnNwZWN0aXZlO1xufVxuLnBlcnNwZWN0aXZlLW9yaWdpbihAcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW46IEBwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZS1vcmlnaW46IEBwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZS1vcmlnaW46IEBwZXJzcGVjdGl2ZTtcbn1cbi50cmFuc2Zvcm0tb3JpZ2luKEBvcmlnaW4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBAb3JpZ2luO1xuICAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IEBvcmlnaW47XG4gICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogQG9yaWdpbjsgLy8gSUU5IG9ubHlcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBAb3JpZ2luO1xufVxuXG4vLyBBbmltYXRpb25zXG4uYW5pbWF0aW9uKEBhbmltYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IEBhbmltYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uOiBAYW5pbWF0aW9uO1xufVxuLmFuaW1hdGlvbi1uYW1lKEBuYW1lKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IEBuYW1lO1xuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBAbmFtZTtcbn1cbi5hbmltYXRpb24tZHVyYXRpb24oQGR1cmF0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiBAZHVyYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiBAZHVyYXRpb247XG59XG4uYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbihAdGltaW5nLWZ1bmN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogQHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBAdGltaW5nLWZ1bmN0aW9uO1xufVxuLmFuaW1hdGlvbi1kZWxheShAZGVsYXkpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IEBkZWxheTtcbiAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IEBkZWxheTtcbn1cbi5hbmltYXRpb24taXRlcmF0aW9uLWNvdW50KEBpdGVyYXRpb24tY291bnQpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBAaXRlcmF0aW9uLWNvdW50O1xuICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IEBpdGVyYXRpb24tY291bnQ7XG59XG4uYW5pbWF0aW9uLWRpcmVjdGlvbihAZGlyZWN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogQGRpcmVjdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tZGlyZWN0aW9uOiBAZGlyZWN0aW9uO1xufVxuXG5cbi8vIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIFByZXZlbnQgYnJvd3NlcnMgZnJvbSBmbGlja2VyaW5nIHdoZW4gdXNpbmcgQ1NTIDNEIHRyYW5zZm9ybXMuXG4vLyBEZWZhdWx0IHZhbHVlIGlzIGB2aXNpYmxlYCwgYnV0IGNhbiBiZSBjaGFuZ2VkIHRvIGBoaWRkZW5gXG4vLyBTZWUgZ2l0IHB1bGwgaHR0cHM6Ly9naXRodWIuY29tL2Rhbm55a2VhbmUvYm9vdHN0cmFwLmdpdCBiYWNrZmFjZS12aXNpYmlsaXR5IGZvciBleGFtcGxlc1xuLmJhY2tmYWNlLXZpc2liaWxpdHkoQHZpc2liaWxpdHkpe1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IEB2aXNpYmlsaXR5O1xuICAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IEB2aXNpYmlsaXR5O1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IEB2aXNpYmlsaXR5O1xufVxuXG4vLyBCYWNrZ3JvdW5kIGNsaXBcbi5iYWNrZ3JvdW5kLWNsaXAoQGNsaXA6IGJvcmRlci1ib3gpIHtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IEBjbGlwO1xuICAgICAtbW96LWJhY2tncm91bmQtY2xpcDogQGNsaXA7XG4gICAgICAgICAgYmFja2dyb3VuZC1jbGlwOiBAY2xpcDtcbn1cblxuLy8gQm94IHNpemluZ1xuLmJveC1zaXppbmcoQGJveG1vZGVsKSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogQGJveG1vZGVsO1xuICAgICAtbW96LWJveC1zaXppbmc6IEBib3htb2RlbDtcbiAgICAgICAgICBib3gtc2l6aW5nOiBAYm94bW9kZWw7XG59XG4vLyBCYWNrZ3JvdW5kIHNpemluZ1xuLmJhY2tncm91bmQtc2l6ZShAc2l6ZSkge1xuICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogQHNpemU7XG4gICAgIC1tb3otYmFja2dyb3VuZC1zaXplOiBAc2l6ZTtcbiAgICAgICAtby1iYWNrZ3JvdW5kLXNpemU6IEBzaXplO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogQHNpemU7XG59XG5cbi8vIFVzZXIgc2VsZWN0XG4vLyBGb3Igc2VsZWN0aW5nIHRleHQgb24gdGhlIHBhZ2Vcbi51c2VyLXNlbGVjdChAc2VsZWN0KSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IEBzZWxlY3Q7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IEBzZWxlY3Q7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6IEBzZWxlY3Q7IC8vIElFMTArXG4gICAgICAgLW8tdXNlci1zZWxlY3Q6IEBzZWxlY3Q7XG4gICAgICAgICAgdXNlci1zZWxlY3Q6IEBzZWxlY3Q7XG59XG5cbi8vIFJlc2l6ZSBhbnl0aGluZ1xuLnJlc2l6YWJsZShAZGlyZWN0aW9uKSB7XG4gIHJlc2l6ZTogQGRpcmVjdGlvbjsgLy8gT3B0aW9uczogaG9yaXpvbnRhbCwgdmVydGljYWwsIGJvdGhcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFNhZmFyaSBmaXhcbn1cblxuLy8gQ1NTMyBDb250ZW50IENvbHVtbnNcbi5jb250ZW50LWNvbHVtbnMoQGNvbHVtbi1jb3VudDsgQGNvbHVtbi1nYXA6IEBncmlkLWd1dHRlci13aWR0aCkge1xuICAtd2Via2l0LWNvbHVtbi1jb3VudDogQGNvbHVtbi1jb3VudDtcbiAgICAgLW1vei1jb2x1bW4tY291bnQ6IEBjb2x1bW4tY291bnQ7XG4gICAgICAgICAgY29sdW1uLWNvdW50OiBAY29sdW1uLWNvdW50O1xuICAtd2Via2l0LWNvbHVtbi1nYXA6IEBjb2x1bW4tZ2FwO1xuICAgICAtbW96LWNvbHVtbi1nYXA6IEBjb2x1bW4tZ2FwO1xuICAgICAgICAgIGNvbHVtbi1nYXA6IEBjb2x1bW4tZ2FwO1xufVxuXG4vLyBPcHRpb25hbCBoeXBoZW5hdGlvblxuLmh5cGhlbnMoQG1vZGU6IGF1dG8pIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LWh5cGhlbnM6IEBtb2RlO1xuICAgICAtbW96LWh5cGhlbnM6IEBtb2RlO1xuICAgICAgLW1zLWh5cGhlbnM6IEBtb2RlOyAvLyBJRTEwK1xuICAgICAgIC1vLWh5cGhlbnM6IEBtb2RlO1xuICAgICAgICAgIGh5cGhlbnM6IEBtb2RlO1xufVxuXG4vLyBPcGFjaXR5XG4ub3BhY2l0eShAb3BhY2l0eSkge1xuICBvcGFjaXR5OiBAb3BhY2l0eTtcbiAgLy8gSUU4IGZpbHRlclxuICBAb3BhY2l0eS1pZTogKEBvcGFjaXR5ICogMTAwKTtcbiAgZmlsdGVyOiB+XCJhbHBoYShvcGFjaXR5PUB7b3BhY2l0eS1pZX0pXCI7XG59XG5cblxuXG4vLyBHUkFESUVOVFNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiNncmFkaWVudCB7XG5cbiAgLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4gIC8vXG4gIC8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4gIC8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXG4gIC5ob3Jpem9udGFsKEBzdGFydC1jb2xvcjogIzU1NTsgQGVuZC1jb2xvcjogIzMzMzsgQHN0YXJ0LXBlcmNlbnQ6IDAlOyBAZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCBjb2xvci1zdG9wKEBzdGFydC1jb2xvciBAc3RhcnQtcGVyY2VudCksIGNvbG9yLXN0b3AoQGVuZC1jb2xvciBAZW5kLXBlcmNlbnQpKTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gICAgYmFja2dyb3VuZC1pbWFnZTogIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgQHN0YXJ0LWNvbG9yIEBzdGFydC1wZXJjZW50LCBAZW5kLWNvbG9yIEBlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgZmlsdGVyOiBlKCUoXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nJWQnLCBlbmRDb2xvcnN0cj0nJWQnLCBHcmFkaWVudFR5cGU9MSlcIixhcmdiKEBzdGFydC1jb2xvciksYXJnYihAZW5kLWNvbG9yKSkpOyAvLyBJRTkgYW5kIGRvd25cbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbiAgLy9cbiAgLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbiAgLy8gQ29sb3Igc3RvcHMgYXJlIG5vdCBhdmFpbGFibGUgaW4gSUU5IGFuZCBiZWxvdy5cbiAgLnZlcnRpY2FsKEBzdGFydC1jb2xvcjogIzU1NTsgQGVuZC1jb2xvcjogIzMzMzsgQHN0YXJ0LXBlcmNlbnQ6IDAlOyBAZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIEBzdGFydC1jb2xvciBAc3RhcnQtcGVyY2VudCwgQGVuZC1jb2xvciBAZW5kLXBlcmNlbnQpOyAgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgQHN0YXJ0LWNvbG9yIEBzdGFydC1wZXJjZW50LCBAZW5kLWNvbG9yIEBlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgZmlsdGVyOiBlKCUoXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nJWQnLCBlbmRDb2xvcnN0cj0nJWQnLCBHcmFkaWVudFR5cGU9MClcIixhcmdiKEBzdGFydC1jb2xvciksYXJnYihAZW5kLWNvbG9yKSkpOyAvLyBJRTkgYW5kIGRvd25cbiAgfVxuXG4gIC5kaXJlY3Rpb25hbChAc3RhcnQtY29sb3I6ICM1NTU7IEBlbmQtY29sb3I6ICMzMzM7IEBkZWc6IDQ1ZGVnKSB7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KEBkZWcsIEBzdGFydC1jb2xvciwgQGVuZC1jb2xvcik7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChAZGVnLCBAc3RhcnQtY29sb3IsIEBlbmQtY29sb3IpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIH1cbiAgLmhvcml6b250YWwtdGhyZWUtY29sb3JzKEBzdGFydC1jb2xvcjogIzAwYjNlZTsgQG1pZC1jb2xvcjogIzdhNDNiNjsgQGNvbG9yLXN0b3A6IDUwJTsgQGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIEBzdGFydC1jb2xvciwgQG1pZC1jb2xvciBAY29sb3Itc3RvcCwgQGVuZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCBAc3RhcnQtY29sb3IsIEBtaWQtY29sb3IgQGNvbG9yLXN0b3AsIEBlbmQtY29sb3IpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgZmlsdGVyOiBlKCUoXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nJWQnLCBlbmRDb2xvcnN0cj0nJWQnLCBHcmFkaWVudFR5cGU9MSlcIixhcmdiKEBzdGFydC1jb2xvciksYXJnYihAZW5kLWNvbG9yKSkpOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xuICB9XG4gIC52ZXJ0aWNhbC10aHJlZS1jb2xvcnMoQHN0YXJ0LWNvbG9yOiAjMDBiM2VlOyBAbWlkLWNvbG9yOiAjN2E0M2I2OyBAY29sb3Itc3RvcDogNTAlOyBAZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoQHN0YXJ0LWNvbG9yLCBAbWlkLWNvbG9yIEBjb2xvci1zdG9wLCBAZW5kLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoQHN0YXJ0LWNvbG9yLCBAbWlkLWNvbG9yIEBjb2xvci1zdG9wLCBAZW5kLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGZpbHRlcjogZSglKFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyVkJywgZW5kQ29sb3JzdHI9JyVkJywgR3JhZGllbnRUeXBlPTApXCIsYXJnYihAc3RhcnQtY29sb3IpLGFyZ2IoQGVuZC1jb2xvcikpKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcbiAgfVxuICAucmFkaWFsKEBpbm5lci1jb2xvcjogIzU1NTsgQG91dGVyLWNvbG9yOiAjMzMzKSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCBAaW5uZXItY29sb3IsIEBvdXRlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgQGlubmVyLWNvbG9yLCBAb3V0ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cbiAgLnN0cmlwZWQoQGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4xNSk7IEBhbmdsZTogNDVkZWcpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChAYW5nbGUsIEBjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCBAY29sb3IgNTAlLCBAY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoQGFuZ2xlLCBAY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgQGNvbG9yIDUwJSwgQGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIH1cbn1cblxuLy8gUmVzZXQgZmlsdGVycyBmb3IgSUVcbi8vXG4vLyBXaGVuIHlvdSBuZWVkIHRvIHJlbW92ZSBhIGdyYWRpZW50IGJhY2tncm91bmQsIGRvIG5vdCBmb3JnZXQgdG8gdXNlIHRoaXMgdG8gcmVzZXRcbi8vIHRoZSBJRSBmaWx0ZXIgZm9yIElFOSBhbmQgYmVsb3cuXG4ucmVzZXQtZmlsdGVyKCkge1xuICBmaWx0ZXI6IGUoJShcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkID0gZmFsc2UpXCIpKTtcbn1cblxuXG5cbi8vIFJldGluYSBpbWFnZXNcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemVcblxuLmltZy1yZXRpbmEoQGZpbGUtMXg7IEBmaWxlLTJ4OyBAd2lkdGgtMXg7IEBoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiQHtmaWxlLTF4fVwiKTtcblxuICBAbWVkaWFcbiAgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgIG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLzEpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJAe2ZpbGUtMnh9XCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogQHdpZHRoLTF4IEBoZWlnaHQtMXg7XG4gIH1cbn1cblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cblxuLmltZy1yZXNwb25zaXZlKEBkaXNwbGF5OiBibG9jazspIHtcbiAgZGlzcGxheTogQGRpc3BsYXk7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgaGVpZ2h0OiBhdXRvOyAvLyBQYXJ0IDI6IFNjYWxlIHRoZSBoZWlnaHQgYWNjb3JkaW5nIHRvIHRoZSB3aWR0aCwgb3RoZXJ3aXNlIHlvdSBnZXQgc3RyZXRjaGluZ1xufVxuXG4vLyBSZXNwb25zaXZlIHV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTW9yZSBlYXNpbHkgaW5jbHVkZSBhbGwgdGhlIHN0YXRlcyBmb3IgcmVzcG9uc2l2ZS11dGlsaXRpZXMubGVzcy5cbi5yZXNwb25zaXZlLXZpc2liaWxpdHkoKSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIHRyJiB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRoJixcbiAgdGQmIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG59XG5cbi5yZXNwb25zaXZlLWludmlzaWJpbGl0eSgpIHtcbiAgICAmLFxuICB0ciYsXG4gIHRoJixcbiAgdGQmIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG59XG5cbi8vIEdyaWQgU3lzdGVtXG4vLyAtLS0tLS0tLS0tLVxuXG4vLyBDZW50ZXJlZCBjb250YWluZXIgZWxlbWVudFxuLmNvbnRhaW5lci1maXhlZCgpIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAgKEBncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoQGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XG4gIC5jbGVhcmZpeCgpO1xufVxuXG4vLyBDcmVhdGVzIGEgd3JhcHBlciBmb3IgYSBzZXJpZXMgb2YgY29sdW1uc1xuLm1ha2Utcm93KEBndXR0ZXI6IEBncmlkLWd1dHRlci13aWR0aCkge1xuICBtYXJnaW4tbGVmdDogIChAZ3V0dGVyIC8gLTIpO1xuICBtYXJnaW4tcmlnaHQ6IChAZ3V0dGVyIC8gLTIpO1xuICAuY2xlYXJmaXgoKTtcbn1cblxuLy8gR2VuZXJhdGUgdGhlIGV4dHJhIHNtYWxsIGNvbHVtbnNcbi5tYWtlLXhzLWNvbHVtbihAY29sdW1uczsgQGd1dHRlcjogQGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiBwZXJjZW50YWdlKChAY29sdW1ucyAvIEBncmlkLWNvbHVtbnMpKTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoQGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoQGd1dHRlciAvIDIpO1xufVxuLm1ha2UteHMtY29sdW1uLW9mZnNldChAY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi14cy1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoQGNvbHVtbnMgLyBAZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbi5tYWtlLXhzLWNvbHVtbi1wdXNoKEBjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXhzLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKEBjb2x1bW5zIC8gQGdyaWQtY29sdW1ucykpO1xuICB9XG59XG4ubWFrZS14cy1jb2x1bW4tcHVsbChAY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi14cy1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoQGNvbHVtbnMgLyBAZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cblxuXG4vLyBHZW5lcmF0ZSB0aGUgc21hbGwgY29sdW1uc1xuLm1ha2Utc20tY29sdW1uKEBjb2x1bW5zOyBAZ3V0dGVyOiBAZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogIChAZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6IChAZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tc20tbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKEBjb2x1bW5zIC8gQGdyaWQtY29sdW1ucykpO1xuICB9XG59XG4ubWFrZS1zbS1jb2x1bW4tb2Zmc2V0KEBjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKChAY29sdW1ucyAvIEBncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuLm1ha2Utc20tY29sdW1uLXB1c2goQGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tc20tbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoQGNvbHVtbnMgLyBAZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbi5tYWtlLXNtLWNvbHVtbi1wdWxsKEBjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKChAY29sdW1ucyAvIEBncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuXG5cbi8vIEdlbmVyYXRlIHRoZSBtZWRpdW0gY29sdW1uc1xuLm1ha2UtbWQtY29sdW1uKEBjb2x1bW5zOyBAZ3V0dGVyOiBAZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogIChAZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6IChAZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbWQtbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKEBjb2x1bW5zIC8gQGdyaWQtY29sdW1ucykpO1xuICB9XG59XG4ubWFrZS1tZC1jb2x1bW4tb2Zmc2V0KEBjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLW1kLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKChAY29sdW1ucyAvIEBncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuLm1ha2UtbWQtY29sdW1uLXB1c2goQGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbWQtbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoQGNvbHVtbnMgLyBAZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbi5tYWtlLW1kLWNvbHVtbi1wdWxsKEBjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLW1kLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKChAY29sdW1ucyAvIEBncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuXG5cbi8vIEdlbmVyYXRlIHRoZSBsYXJnZSBjb2x1bW5zXG4ubWFrZS1sZy1jb2x1bW4oQGNvbHVtbnM7IEBndXR0ZXI6IEBncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKEBndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKEBndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1sZy1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoQGNvbHVtbnMgLyBAZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbi5tYWtlLWxnLWNvbHVtbi1vZmZzZXQoQGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbGctbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKEBjb2x1bW5zIC8gQGdyaWQtY29sdW1ucykpO1xuICB9XG59XG4ubWFrZS1sZy1jb2x1bW4tcHVzaChAY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1sZy1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKChAY29sdW1ucyAvIEBncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuLm1ha2UtbGctY29sdW1uLXB1bGwoQGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbGctbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKEBjb2x1bW5zIC8gQGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5cblxuLy8gQ09NUE9ORU5UIE1JWElOU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQ29sb3Igc3dhdGNoZXMgZ3JpZFxuLmNhbGMtY29sb3IoQGZpcnN0LWNvbG9yLCBAc2Vjb25kLWNvbG9yKSB7XG4gIC5wYWxldHRlLUB7Zmlyc3QtY29sb3J9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB+XCJAe0B7Zmlyc3QtY29sb3J9fVwiO1xuICB9XG4gIC5wYWxldHRlLUB7c2Vjb25kLWNvbG9yfSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogflwiQHtAe3NlY29uZC1jb2xvcn19XCI7XG4gIH0gIFxufVxuXG4vLyBEcm9wZG93biBhcnJvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmRyb3Bkb3duLWFycm93KEBjb2xvcjogQGJyYW5kLXByaW1hcnk7IEB0b3A6IDVweDsgQGxlZnQ6IDE1cHg7IEBzaXplOiA5cHgpIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDAgQHNpemUgQHNpemUgQHNpemU7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCBAY29sb3IgdHJhbnNwYXJlbnQ7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiBAbGVmdDtcbiAgICB0b3A6IEB0b3A7XG4gICAgd2lkdGg6IDA7XG4gICAgLy8gTWFrZSBjb3JuZXJzIHNtb290aFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG4vLyBCdXR0b24gdmFyaWFudHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuLmJ1dHRvbi12YXJpYW50KEBjb2xvcjsgQGJhY2tncm91bmQ7IEBob3Zlci1iYWNrZ3JvdW5kOyBAYWN0aXZlLWJhY2tncm91bmQ7IEBkaXNhYmxlZC1iYWNrZ3JvdW5kOiBAZ3JheS1saWdodCkge1xuICBjb2xvcjogQGNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmFja2dyb3VuZDtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5vcGVuIC5kcm9wZG93bi10b2dnbGUmIHtcbiAgICBjb2xvcjogQGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBob3Zlci1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogQGhvdmVyLWJhY2tncm91bmQ7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiAuZHJvcGRvd24tdG9nZ2xlJiB7XG4gICAgYmFja2dyb3VuZDogQGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogQGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICB9XG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgJixcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGJhY2tncm91bmQ7XG4gICAgICBib3JkZXItY29sb3I6IEBiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5idXR0b24tc2l6ZShAcGFkZGluZy12ZXJ0aWNhbDsgQHBhZGRpbmctaG9yaXpvbnRhbDsgQGZvbnQtc2l6ZTsgQGxpbmUtaGVpZ2h0OyBAYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiBAcGFkZGluZy12ZXJ0aWNhbCBAcGFkZGluZy1ob3Jpem9udGFsO1xuICBmb250LXNpemU6IEBmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzO1xufVxuXG4vLyBTb2NpYWwgYnV0dG9uIHZhcmlhbnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc29jaWFsLWJ1dHRvbi12YXJpYW50KEBjb2xvcjsgQGJhY2tncm91bmQpIHtcbiAgY29sb3I6IEBjb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGJhY2tncm91bmQ7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KEBiYWNrZ3JvdW5kLCB3aGl0ZSwgODAlKTtcbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1peChAYmFja2dyb3VuZCwgYmxhY2ssIDg1JSk7XG4gIH1cbn1cblxuLnN3YXAtZGlhbG9nLWNvbG9yKEBjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBtaXgoQGNvbG9yLCB3aGl0ZSwgOSUpO1xuICBib3JkZXItdG9wLWNvbG9yOiBtaXgoQGNvbG9yLCB3aGl0ZSwgMjAlKTtcbn1cblxuLmRyb3Bkb3duLWFycm93LWludmVyc2Uge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiBAYnJhbmQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLWNvbG9yOiBAYnJhbmQtcHJpbWFyeSAhaW1wb3J0YW50O1xufVxuXG4uc3dhcC1pY29uYmFyLWNvbG9yKEBjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3I7XG4gID4gdWwge1xuICAgID4gbGkge1xuICAgICAgJi5hY3RpdmUge1xuICAgICAgICA+IGEge1xuICAgICAgICAgIGNvbG9yOiBtaXgoQGNvbG9yLCBibGFjaywgNjYlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgPiBhIHtcbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6IG1peChAY29sb3IsIGJsYWNrLCA2NiUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5pY29uYmFyLXVucmVhZCB7IGJhY2tncm91bmQtY29sb3I6IG1peChAY29sb3IsIGJsYWNrLCA2NiUpOyB9XG59XG5cbi5zd2FwLXBhZ2luYXRpb24tY29sb3IoQGNvbG9yLCBAaG92ZXIsIEBhY3RpdmUpIHtcbiAgdWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvcjtcblxuICAgIGxpIHtcbiAgICAgICYucHJldmlvdXMge1xuICAgICAgICA+IGEge1xuICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogbWl4KEBjb2xvciwgd2hpdGUsIDY2JSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgID4gYSwgPiBzcGFuIHtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IG1peChAY29sb3IsIHdoaXRlLCA2NiUpO1xuXG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBob3ZlcjtcbiAgICAgICAgfVxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGFjdGl2ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICA+IGEsID4gc3BhbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGFjdGl2ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnBhZ2luYXRpb24tZHJvcGRvd24uZHJvcHVwIHtcbiAgICAgICAgLmRyb3Bkb3duLWFycm93IHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiBAY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gTGFiZWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubGFiZWwtdmFyaWFudChAY29sb3IsIEBob3Zlci1jb2xvciwgQHRleHQtY29sb3I6IEBpbnZlcnNlKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvcjtcbiAgY29sb3I6IEB0ZXh0LWNvbG9yO1xuICBcbiAgJltocmVmXSB7XG4gICAgY29sb3I6IEB0ZXh0LWNvbG9yO1xuICAgIFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogQHRleHQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5iZy12YXJpYW50KEBjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3I7XG4gIGEmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGNvbG9yLCAxMCUpO1xuICB9XG59XG5cbi8vIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi50ZXh0LWVtcGhhc2lzLXZhcmlhbnQoQGNvbG9yKSB7XG4gIGNvbG9yOiBAY29sb3I7XG4gIGEmOmhvdmVyIHtcbiAgICBjb2xvcjogbWl4KEBjb2xvciwgYmxhY2ssIDgwJSk7XG4gIH1cbn1cblxuLy8gTmF2YmFyIHZlcnRpY2FsIGFsaWduXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBWZXJ0aWNhbGx5IGNlbnRlciBlbGVtZW50cyBpbiB0aGUgbmF2YmFyLlxuLy8gRXhhbXBsZTogYW4gZWxlbWVudCBoYXMgYSBoZWlnaHQgb2YgMzBweCwgc28gd3JpdGUgb3V0IGAubmF2YmFyLXZlcnRpY2FsLWFsaWduKDMwcHgpO2AgdG8gY2FsY3VsYXRlIHRoZSBhcHByb3ByaWF0ZSB0b3AgbWFyZ2luLlxuLm5hdmJhci12ZXJ0aWNhbC1hbGlnbihAZWxlbWVudC1oZWlnaHQ7IEBuYXZiYXItaGVpZ2h0OiBAbmF2YmFyLWhlaWdodC1iYXNlKSB7XG4gIHBhZGRpbmctdG9wOiAoKEBuYXZiYXItaGVpZ2h0IC0gQGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xuICBwYWRkaW5nLWJvdHRvbTogKChAbmF2YmFyLWhlaWdodCAtIEBlbGVtZW50LWhlaWdodCkgLyAyKTtcbn1cblxuLy8gRm9ybSB2YWxpZGF0aW9uIHN0YXRlc1xuLy9cbi8vIFVzZWQgaW4gZm9ybXMubGVzcyB0byBnZW5lcmF0ZSB0aGUgZm9ybSB2YWxpZGF0aW9uIENTUyBmb3Igd2FybmluZ3MsIGVycm9ycyxcbi8vIGFuZCBzdWNjZXNzZXMuXG5cbi5mb3JtLWNvbnRyb2wtdmFsaWRhdGlvbihAdGV4dC1jb2xvcjogQGJyYW5kLXByaW1hcnk7IEBib3JkZXItY29sb3I6IEBncmF5LWxpZ2h0OyBAYmFja2dyb3VuZC1jb2xvcjogQGludmVyc2UpIHtcbiAgLy8gQ29sb3IgdGhlIGxhYmVsIGFuZCBoZWxwIHRleHRcbiAgLmhlbHAtYmxvY2ssXG4gIC5jb250cm9sLWxhYmVsLFxuICAucmFkaW8sXG4gIC5jaGVja2JveCxcbiAgLnJhZGlvLWlubGluZSxcbiAgLmNoZWNrYm94LWlubGluZSB7XG4gICAgY29sb3I6IEB0ZXh0LWNvbG9yO1xuICB9XG4gIC8vIFNldCB0aGUgYm9yZGVyIGFuZCBib3ggc2hhZG93IG9uIHNwZWNpZmljIGlucHV0cyB0byBtYXRjaFxuICAuZm9ybS1jb250cm9sIHtcbiAgICBjb2xvcjogQHRleHQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiBAYm9yZGVyLWNvbG9yO1xuICAgIC5ib3gtc2hhZG93KG5vbmUpO1xuICAgIC5wbGFjZWhvbGRlcihAdGV4dC1jb2xvcik7XG4gICAgXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IEBib3JkZXItY29sb3I7XG4gICAgICAuYm94LXNoYWRvdyhub25lKTtcbiAgICB9XG4gIH1cbiAgLy8gU2V0IHZhbGlkYXRpb24gc3RhdGVzIGFsc28gZm9yIGFkZG9uc1xuICAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgIGNvbG9yOiBAdGV4dC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6IEBib3JkZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGJhY2tncm91bmQtY29sb3I7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgQGlucHV0LWZvY3VzLWJvcmRlcmAgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cblxuLmZvcm0tY29udHJvbC1mb2N1cyhAY29sb3I6IEBicmFuZC1zZWNvbmRhcnkpIHtcbiAgLmZvcm0tZ3JvdXAuZm9jdXMgJixcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiBAY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICAuYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gUmVsYXRpdmUgdGV4dCBzaXplLCBwYWRkaW5nLCBhbmQgYm9yZGVyLXJhZGlpIGNoYW5nZXMgZm9yIGZvcm0gY29udHJvbHMuIEZvclxuLy8gaG9yaXpvbnRhbCBzaXppbmcsIHdyYXAgY29udHJvbHMgaW4gdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLiBgPHNlbGVjdD5gXG4vLyBlbGVtZW50IGdldHMgc3BlY2lhbCBsb3ZlIGJlY2F1c2UgaXQncyBzcGVjaWFsLCBhbmQgdGhhdCdzIGEgZmFjdCFcblxuLmlucHV0LXNpemUoQGlucHV0LWhlaWdodDsgQHBhZGRpbmctdmVydGljYWw7IEBwYWRkaW5nLWhvcml6b250YWw7IEBmb250LXNpemU7IEBsaW5lLWhlaWdodDsgQGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWxhcmdlKSB7XG4gIGhlaWdodDogQGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogQHBhZGRpbmctdmVydGljYWwgQHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiBAZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogQGxpbmUtaGVpZ2h0O1xuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cztcblxuICBzZWxlY3QmIHtcbiAgICBoZWlnaHQ6IEBpbnB1dC1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IEBpbnB1dC1oZWlnaHQ7XG4gIH1cblxuICB0ZXh0YXJlYSYsXG4gIHNlbGVjdFttdWx0aXBsZV0mIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzIGZvciBmb3JtIGNvbnRyb2xzXG4vL1xuLmZvcm0tY29udHJvbHMtY29ybmVycy1yZXNldCgpIHtcbiAgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6Zmlyc3QtY2hpbGQsXG4gIC5pbnB1dC1ncm91cC1hZGRvbjpmaXJzdC1jaGlsZCxcbiAgLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4sXG4gIC5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuZHJvcGRvd24tdG9nZ2xlLFxuICAuaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcbiAgICAuYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxuICAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpsYXN0LWNoaWxkLFxuICAuaW5wdXQtZ3JvdXAtYWRkb246bGFzdC1jaGlsZCxcbiAgLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bixcbiAgLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIC5ib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLy8gU3Bpbm5lciB2YXJpYW50c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnNwaW5uZXItdmFyaWFudChAdXAtYnRuLWhlaWdodDsgQGRvd24tYnRuLWhlaWdodDsgQGxpbmUtaGVpZ2h0KSB7XG4gICYgKyAudWktc3Bpbm5lci1idXR0b24ge1xuICAgIGhlaWdodDogQHVwLWJ0bi1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodDtcbiAgfVxuICAmICsgLnVpLXNwaW5uZXItYnV0dG9uICsgLnVpLXNwaW5uZXItYnV0dG9uIHtcbiAgICBoZWlnaHQ6IEBkb3duLWJ0bi1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodDtcbiAgfVxufSIsIi8vPT0gVHlwb2dyYXBoeVxuLy9cbi8vIyMgRm9udCwgbGluZS1oZWlnaHQgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MgYW5kIG1vcmVcblxuLy8gQ29sb3Igc3dhdGNoZXNcbkBwdXJwbGU6IFx0XHQgICAgICM0YjJlODM7XG5AZ3JheTogIFx0XHQgICAgICNkOWQ5ZDk7XG5AZGFya2dyYXk6XHQgICAgICM1QTVBNUE7XG5AbGluazogXHRcdFx0ICAgICAjMDA4OEREO1xuQGJyaWdodGdvbGQ6ICAgICAjZmZkODAwO1xuQHVsdHJhbGlnaHRnb2xkOiAjZThlM2QzO1xuQGxpZ2h0Z29sZDpcdFx0ICAgI2I3YTU3YTtcbkBkYXJrZ29sZDogXHRcdCAgICM4NTc1NGQ7XG5cblxuLy8gRm9udHNcbkBmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbkBmb250LWZhbWlseS1oZWFkbGluZTogICAgICBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuQGZvbnQtZmFtaWx5LWgxOiAgICAgICAgICAgIFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG5AZm9udC1mYW1pbHktZGF3Z2Ryb3BzOiAgICAgXCJFbmNvZGUgU2FucyBDb21wcmVzc2VkXCIsIHNhbnMtc2VyaWY7XG5cbkBmb250LXNpemUtYmFzZTogICAgICAgICAgICAxNnB4O1xuQGZvbnQtd2VpZ2h0LWJhc2U6ICBcdFx0ICAgIG5vcm1hbDtcbkBmb250LWNvbG9yLWJhc2U6XHRcdFx0ICAgICAgIzNEM0QzRDtcblxuQGhlYWRpbmdzLWZvbnQtZmFtaWx5OiBcdFx0QGZvbnQtZmFtaWx5LWhlYWRsaW5lO1xuXG5cbkBmb250LXNpemUtaDE6ICAgICAgICAgICAgICBmbG9vcihAZm9udC1zaXplLWJhc2UgKiAyLjMpOyBcbkBmb250LXNpemUtaDI6ICAgICAgICAgICAgICBjZWlsKEBmb250LXNpemUtYmFzZSAqIDEuOCk7IFxuQGZvbnQtc2l6ZS1oMzogICAgICAgICAgICAgIGNlaWwoQGZvbnQtc2l6ZS1iYXNlICogMS40KTsgXG5AZm9udC1zaXplLWg0OiAgICAgICAgICAgICAgY2VpbChAZm9udC1zaXplLWJhc2UgKiAxLjIpOyBcbkBmb250LXNpemUtaDU6ICAgICAgICAgICAgICBmbG9vcihAZm9udC1zaXplLWJhc2UgKiAxLjExMSk7IFxuQGZvbnQtc2l6ZS1oNjogICAgICAgICAgICAgIGNlaWwoQGZvbnQtc2l6ZS1iYXNlICogMS4xMTEpOyBcblxuQGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgIDEuMztcblxuXG5cbkBsb2NhbC1mb250LXBhdGg6ICAgICAgICAgICBcdFwiYXNzZXRzL2ZvbnRzL1wiO1xuQGxvY2FsLWZvbnQtbmFtZS10aGluOlx0XHRcdFwiZW5jb2Rlc2Fuc2NvbXByZXNzZWQtMTAwLXRoaW4td2ViZm9udFwiO1xuQGxvY2FsLWZvbnQtbmFtZS1leHRyYWxpZ2h0Olx0XCJlbmNvZGVzYW5zY29tcHJlc3NlZC0yMDAtZXh0cmFsaWdodC13ZWJmb250XCI7XG5AbG9jYWwtZm9udC1uYW1lLWxpZ2h0Olx0XHRcdFwiZW5jb2Rlc2Fuc2NvbXByZXNzZWQtMzAwLWxpZ2h0LXdlYmZvbnQuZW90XCI7XG5AbG9jYWwtZm9udC1uYW1lLXJlZ3VsYXI6XHRcdFwiZW5jb2Rlc2Fuc2NvbmRlbnNlZC00MDAtcmVndWxhci13ZWJmb250XCI7XG5AbG9jYWwtZm9udC1uYW1lLW1lZGl1bTpcdFx0XCJlbmNvZGVzYW5zY29uZGVuc2VkLTUwMC1tZWRpdW0td2ViZm9udFwiO1xuQGxvY2FsLWZvbnQtbmFtZS1zZW1pYm9sZDpcdFx0XCJlbmNvZGVzYW5zY29tcHJlc3NlZC02MDAtc2VtaWJvbGQtd2ViZm9udFwiO1xuQGxvY2FsLWZvbnQtbmFtZS1ib2xkOlx0XHRcdFwiZW5jb2Rlc2Fuc2NvbXByZXNzZWQtNzAwLWJvbGQtd2ViZm9udFwiO1xuQGxvY2FsLWZvbnQtbmFtZS1leHRyYWJvbGQ6XHRcdFwiZW5jb2Rlc2Fuc2NvbXByZXNzZWQtODAwLWV4dHJhYm9sZC13ZWJmb250XCI7XG5AbG9jYWwtZm9udC1uYW1lLWJsYWNrOiBcdFx0XCJlbmNvZGVzYW5zY29tcHJlc3NlZC05MDAtYmxhY2std2ViZm9udFwiO1xuXG4vLyBWYXJpYWJsZSBoZWFkbGluZSB3ZWlnaHRcbkB1bHRyYS1mb250LXdlaWdodDogXHRcdDkwMDtcbkBoZWFkaW5ncy1mb250LXdlaWdodDpcdFx0NzAwO1xuQGJvZHktZm9udC13ZWlnaHQ6XHRcdFx0MzAwO1xuXG5cblxuLy8gSWNvbm9ncmFwaHlcbkBpY29uLWZvbnQtcGF0aDogICAgICAgICAgICBcImFzc2V0cy9pY29ucy9cIjtcbkBpY29uLWZvbnQtbmFtZTogICAgICAgICAgICBcImZsYXQtdWktaWNvbnMtcmVndWxhclwiO1xuQGljb24tZm9udC1zdmctaWQ6ICAgICAgICAgIFwiZmxhdC11aS1pY29ucy1yZWd1bGFyXCI7XG5cbi8vIEltYWdlIGFzc2V0c1xuQGxvY2FsLWltYWdlLXBhdGg6ICAgICAgICAgICBcImFzc2V0cy9pbWFnZXMvXCI7XG5cbi8vIEJyYW5kIGNvbG9yc1xuQGJyYW5kLXByaW1hcnk6ICAgICAgICAgICAgIEBwdXJwbGU7XG5AYnJhbmQtc2Vjb25kYXJ5OiAgICAgICAgICAgQHB1cnBsZTtcblxuLy8qKiBHbG9iYWwgdGV4dHVhbCBsaW5rIGNvbG9yLlxuQGxpbmstY29sb3I6ICAgICAgICAgICAgICAgIEBsaW5rO1xuQGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgIEBncmF5O1xuXG4vLyBTbGlkZXNob3cgZGlzcGxheWVkIG9uIGZyb250IHBhZ2VcbkBzbGlkZXNob3dfaGVpZ2h0IDogNjAwcHg7XG5AbW9iaWxlX3NsaWRlc2hvd19oZWlnaHQ6IDM1MHB4O1xuQG1vYmlsZV9zbGlkZXNob3dfdGV4dF9ib3hfaGVpZ2h0OiAyNTBweDsiLCIvL1xuLy8gVGh1bWJuYWlsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBNaXhpbiBhbmQgYWRqdXN0IHRoZSByZWd1bGFyIGltYWdlIGNsYXNzXG4udGh1bWJuYWlsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IEB0aHVtYm5haWwtcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogQGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBsaW5lLWhlaWdodDogQGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6IEB0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkIEB0aHVtYm5haWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiBAdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM7XG4gIC50cmFuc2l0aW9uKGJvcmRlciAuMnMgZWFzZS1pbi1vdXQpO1xuXG4gID4gaW1nLFxuICBhID4gaW1nIHtcbiAgICAmOmV4dGVuZCguaW1nLXJlc3BvbnNpdmUpO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG4gIC8vIEFkZCBhIGhvdmVyIHN0YXRlIGZvciBsaW5rZWQgdmVyc2lvbnMgb25seVxuICBhJjpob3ZlcixcbiAgYSY6Zm9jdXMsXG4gIGEmLmFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiBAbGluay1jb2xvcjtcbiAgfVxuXG4gIC8vIEltYWdlIGNhcHRpb25zXG4gIC5jYXB0aW9uIHtcbiAgICBwYWRkaW5nOiBAdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZztcbiAgICBjb2xvcjogQHRodW1ibmFpbC1jYXB0aW9uLWNvbG9yO1xuICB9XG59XG4iLCIvL1xuLy8gQ2Fyb3VzZWxcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gV3JhcHBlciBmb3IgdGhlIHNsaWRlIGNvbnRhaW5lciBhbmQgaW5kaWNhdG9yc1xuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLml0ZW0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC50cmFuc2l0aW9uKC42cyBlYXNlLWluLW91dCBsZWZ0KTtcblxuICAgIC8vIEFjY291bnQgZm9yIGphbmtpdHVkZSBvbiBpbWFnZXNcbiAgICA+IGltZyxcbiAgICA+IGEgPiBpbWcge1xuICAgICAgJjpleHRlbmQoLmltZy1yZXNwb25zaXZlKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cblxuICAgIC8vIFdlYktpdCBDU1MzIHRyYW5zZm9ybXMgZm9yIHN1cHBvcnRlZCBkZXZpY2VzXG4gICAgQG1lZGlhIGFsbCBhbmQgKHRyYW5zZm9ybS0zZCksICgtd2Via2l0LXRyYW5zZm9ybS0zZCkge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC42cyBlYXNlLWluLW91dDtcbiAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIHBlcnNwZWN0aXZlOiAxMDAwO1xuXG4gICAgICAmLm5leHQsXG4gICAgICAmLmFjdGl2ZS5yaWdodCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgICAmLnByZXYsXG4gICAgICAmLmFjdGl2ZS5sZWZ0IHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgICAmLm5leHQubGVmdCxcbiAgICAgICYucHJldi5yaWdodCxcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUsXG4gID4gLm5leHQsXG4gID4gLnByZXYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgPiAuYWN0aXZlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgPiAubmV4dCxcbiAgPiAucHJldiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLm5leHQge1xuICAgIGxlZnQ6IDEwMCU7XG4gIH1cbiAgPiAucHJldiB7XG4gICAgbGVmdDogLTEwMCU7XG4gIH1cbiAgPiAubmV4dC5sZWZ0LFxuICA+IC5wcmV2LnJpZ2h0IHtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgPiAuYWN0aXZlLmxlZnQge1xuICAgIGxlZnQ6IC0xMDAlO1xuICB9XG4gID4gLmFjdGl2ZS5yaWdodCB7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuXG59XG5cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5jYXJvdXNlbC1jb250cm9sIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IEBjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICAub3BhY2l0eShAY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5KTtcbiAgZm9udC1zaXplOiBAY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU7XG4gIGNvbG9yOiBAY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXNoYWRvdzogQGNhcm91c2VsLXRleHQtc2hhZG93O1xuICAvLyBXZSBjYW4ndCBoYXZlIHRoaXMgdHJhbnNpdGlvbiBoZXJlIGJlY2F1c2UgV2ViS2l0IGNhbmNlbHMgdGhlIGNhcm91c2VsXG4gIC8vIGFuaW1hdGlvbiBpZiB5b3UgdHJpcCB0aGlzIHdoaWxlIGluIHRoZSBtaWRkbGUgb2YgYW5vdGhlciBhbmltYXRpb24uXG5cbiAgLy8gU2V0IGdyYWRpZW50cyBmb3IgYmFja2dyb3VuZHNcbiAgJi5sZWZ0IHtcbiAgICAjZ3JhZGllbnQgPiAuaG9yaXpvbnRhbChAc3RhcnQtY29sb3I6IHJnYmEoMCwwLDAsLjUpOyBAZW5kLWNvbG9yOiByZ2JhKDAsMCwwLC4wMDAxKSk7XG4gIH1cbiAgJi5yaWdodCB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICAjZ3JhZGllbnQgPiAuaG9yaXpvbnRhbChAc3RhcnQtY29sb3I6IHJnYmEoMCwwLDAsLjAwMDEpOyBAZW5kLWNvbG9yOiByZ2JhKDAsMCwwLC41KSk7XG4gIH1cblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGNvbG9yOiBAY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgLm9wYWNpdHkoLjkpO1xuICB9XG5cbiAgLy8gVG9nZ2xlc1xuICAuaWNvbi1wcmV2LFxuICAuaWNvbi1uZXh0LFxuICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCxcbiAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLmljb24tcHJldixcbiAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQge1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIH1cbiAgLmljb24tbmV4dCxcbiAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0IHtcbiAgICByaWdodDogNTAlO1xuICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gIH1cbiAgLmljb24tcHJldixcbiAgLmljb24tbmV4dCB7XG4gICAgd2lkdGg6ICAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICBmb250LWZhbWlseTogc2VyaWY7XG4gIH1cblxuXG4gIC5pY29uLXByZXYge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDIwMzknOy8vIFNJTkdMRSBMRUZULVBPSU5USU5HIEFOR0xFIFFVT1RBVElPTiBNQVJLIChVKzIwMzkpXG4gICAgfVxuICB9XG4gIC5pY29uLW5leHQge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDIwM2EnOy8vIFNJTkdMRSBSSUdIVC1QT0lOVElORyBBTkdMRSBRVU9UQVRJT04gTUFSSyAoVSsyMDNBKVxuICAgIH1cbiAgfVxufVxuXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwc1xuLy9cbi8vIEFkZCBhbiB1bm9yZGVyZWQgbGlzdCB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhIGxpc3QgaXRlbSBmb3IgZWFjaFxuLy8gc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTBweDtcbiAgbGVmdDogNTAlO1xuICB6LWluZGV4OiAxNTtcbiAgd2lkdGg6IDYwJTtcbiAgbWFyZ2luLWxlZnQ6IC0zMCU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6ICAxMHB4O1xuICAgIGhlaWdodDogMTBweDtcbiAgICBtYXJnaW46IDFweDtcbiAgICB0ZXh0LWluZGVudDogLTk5OXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIEBjYXJvdXNlbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgLy8gSUU4LTkgaGFjayBmb3IgZXZlbnQgaGFuZGxpbmdcbiAgICAvL1xuICAgIC8vIEludGVybmV0IEV4cGxvcmVyIDgtOSBkb2VzIG5vdCBzdXBwb3J0IGNsaWNrcyBvbiBlbGVtZW50cyB3aXRob3V0IGEgc2V0XG4gICAgLy8gYGJhY2tncm91bmQtY29sb3JgLiBXZSBjYW5ub3QgdXNlIGBmaWx0ZXJgIHNpbmNlIHRoYXQncyBub3Qgdmlld2VkIGFzIGFcbiAgICAvLyBiYWNrZ3JvdW5kIGNvbG9yIGJ5IHRoZSBicm93c2VyLiBUaHVzLCBhIGhhY2sgaXMgbmVlZGVkLlxuICAgIC8vXG4gICAgLy8gRm9yIElFOCwgd2Ugc2V0IHNvbGlkIGJsYWNrIGFzIGl0IGRvZXNuJ3Qgc3VwcG9ydCBgcmdiYSgpYC4gRm9yIElFOSwgd2VcbiAgICAvLyBzZXQgYWxwaGEgdHJhbnNwYXJlbmN5IGZvciB0aGUgYmVzdCByZXN1bHRzIHBvc3NpYmxlLlxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAgXFw5OyAvLyBJRThcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDApOyAvLyBJRTlcbiAgfVxuICAuYWN0aXZlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6ICAxMnB4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgfVxufVxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhpZGRlbiBieSBkZWZhdWx0IGZvciBzbWFsbGVyIHZpZXdwb3J0c1xuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDE1JTtcbiAgcmlnaHQ6IDE1JTtcbiAgYm90dG9tOiAyMHB4O1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogQGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1zaGFkb3c6IEBjYXJvdXNlbC10ZXh0LXNoYWRvdztcbiAgJiAuYnRuIHtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTsgLy8gTm8gc2hhZG93IGZvciBidXR0b24gZWxlbWVudHMgaW4gY2Fyb3VzZWwtY2FwdGlvblxuICB9XG59XG5cblxuLy8gU2NhbGUgdXAgY29udHJvbHMgZm9yIHRhYmxldHMgYW5kIHVwXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikge1xuXG4gIC8vIFNjYWxlIHVwIHRoZSBjb250cm9scyBhIHNtaWRnZVxuICAuY2Fyb3VzZWwtY29udHJvbCB7XG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxuICAgIC5pY29uLXByZXYsXG4gICAgLmljb24tbmV4dCB7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIG1hcmdpbi10b3A6IC0xNXB4O1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgIH1cbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCxcbiAgICAuaWNvbi1wcmV2IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICB9XG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxuICAgIC5pY29uLW5leHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgICB9XG4gIH1cblxuICAvLyBTaG93IGFuZCBsZWZ0IGFsaWduIHRoZSBjYXB0aW9uc1xuICAuY2Fyb3VzZWwtY2FwdGlvbiB7XG4gICAgbGVmdDogMjAlO1xuICAgIHJpZ2h0OiAyMCU7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIH1cblxuICAvLyBNb3ZlIHVwIHRoZSBpbmRpY2F0b3JzXG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgICBib3R0b206IDIwcHg7XG4gIH1cbn1cbiIsIi8vIFZlbmRvciBQcmVmaXhlc1xuLy9cbi8vIEFsbCB2ZW5kb3IgbWl4aW5zIGFyZSBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBkdWUgdG8gdGhlIGludHJvZHVjdGlvbiBvZlxuLy8gQXV0b3ByZWZpeGVyIGluIG91ciBHcnVudGZpbGUuIFRoZXkgd2lsbCBiZSByZW1vdmVkIGluIHY0LlxuXG4vLyAtIEFuaW1hdGlvbnNcbi8vIC0gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gLSBCb3ggc2hhZG93XG4vLyAtIEJveCBzaXppbmdcbi8vIC0gQ29udGVudCBjb2x1bW5zXG4vLyAtIEh5cGhlbnNcbi8vIC0gUGxhY2Vob2xkZXIgdGV4dFxuLy8gLSBUcmFuc2Zvcm1hdGlvbnNcbi8vIC0gVHJhbnNpdGlvbnNcbi8vIC0gVXNlciBTZWxlY3RcblxuXG4vLyBBbmltYXRpb25zXG4uYW5pbWF0aW9uKEBhbmltYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IEBhbmltYXRpb247XG4gICAgICAgLW8tYW5pbWF0aW9uOiBAYW5pbWF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbjogQGFuaW1hdGlvbjtcbn1cbi5hbmltYXRpb24tbmFtZShAbmFtZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBAbmFtZTtcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogQG5hbWU7XG59XG4uYW5pbWF0aW9uLWR1cmF0aW9uKEBkdXJhdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogQGR1cmF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogQGR1cmF0aW9uO1xufVxuLmFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oQHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IEB0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogQHRpbWluZy1mdW5jdGlvbjtcbn1cbi5hbmltYXRpb24tZGVsYXkoQGRlbGF5KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiBAZGVsYXk7XG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiBAZGVsYXk7XG59XG4uYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudChAaXRlcmF0aW9uLWNvdW50KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogQGl0ZXJhdGlvbi1jb3VudDtcbiAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBAaXRlcmF0aW9uLWNvdW50O1xufVxuLmFuaW1hdGlvbi1kaXJlY3Rpb24oQGRpcmVjdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246IEBkaXJlY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogQGRpcmVjdGlvbjtcbn1cbi5hbmltYXRpb24tZmlsbC1tb2RlKEBmaWxsLW1vZGUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBAZmlsbC1tb2RlO1xuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IEBmaWxsLW1vZGU7XG59XG5cbi8vIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIFByZXZlbnQgYnJvd3NlcnMgZnJvbSBmbGlja2VyaW5nIHdoZW4gdXNpbmcgQ1NTIDNEIHRyYW5zZm9ybXMuXG4vLyBEZWZhdWx0IHZhbHVlIGlzIGB2aXNpYmxlYCwgYnV0IGNhbiBiZSBjaGFuZ2VkIHRvIGBoaWRkZW5gXG5cbi5iYWNrZmFjZS12aXNpYmlsaXR5KEB2aXNpYmlsaXR5KXtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBAdmlzaWJpbGl0eTtcbiAgICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBAdmlzaWJpbGl0eTtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBAdmlzaWJpbGl0eTtcbn1cblxuLy8gRHJvcCBzaGFkb3dzXG4vL1xuLy8gTm90ZTogRGVwcmVjYXRlZCBgLmJveC1zaGFkb3coKWAgYXMgb2YgdjMuMS4wIHNpbmNlIGFsbCBvZiBCb290c3RyYXAnc1xuLy8gc3VwcG9ydGVkIGJyb3dzZXJzIHRoYXQgaGF2ZSBib3ggc2hhZG93IGNhcGFiaWxpdGllcyBub3cgc3VwcG9ydCBpdC5cblxuLmJveC1zaGFkb3coQHNoYWRvdykge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IEBzaGFkb3c7IC8vIGlPUyA8NC4zICYgQW5kcm9pZCA8NC4xXG4gICAgICAgICAgYm94LXNoYWRvdzogQHNoYWRvdztcbn1cblxuLy8gQm94IHNpemluZ1xuLmJveC1zaXppbmcoQGJveG1vZGVsKSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogQGJveG1vZGVsO1xuICAgICAtbW96LWJveC1zaXppbmc6IEBib3htb2RlbDtcbiAgICAgICAgICBib3gtc2l6aW5nOiBAYm94bW9kZWw7XG59XG5cbi8vIENTUzMgQ29udGVudCBDb2x1bW5zXG4uY29udGVudC1jb2x1bW5zKEBjb2x1bW4tY291bnQ7IEBjb2x1bW4tZ2FwOiBAZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IEBjb2x1bW4tY291bnQ7XG4gICAgIC1tb3otY29sdW1uLWNvdW50OiBAY29sdW1uLWNvdW50O1xuICAgICAgICAgIGNvbHVtbi1jb3VudDogQGNvbHVtbi1jb3VudDtcbiAgLXdlYmtpdC1jb2x1bW4tZ2FwOiBAY29sdW1uLWdhcDtcbiAgICAgLW1vei1jb2x1bW4tZ2FwOiBAY29sdW1uLWdhcDtcbiAgICAgICAgICBjb2x1bW4tZ2FwOiBAY29sdW1uLWdhcDtcbn1cblxuLy8gT3B0aW9uYWwgaHlwaGVuYXRpb25cbi5oeXBoZW5zKEBtb2RlOiBhdXRvKSB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBAbW9kZTtcbiAgICAgLW1vei1oeXBoZW5zOiBAbW9kZTtcbiAgICAgIC1tcy1oeXBoZW5zOiBAbW9kZTsgLy8gSUUxMCtcbiAgICAgICAtby1oeXBoZW5zOiBAbW9kZTtcbiAgICAgICAgICBoeXBoZW5zOiBAbW9kZTtcbn1cblxuLy8gUGxhY2Vob2xkZXIgdGV4dFxuLnBsYWNlaG9sZGVyKEBjb2xvcjogQGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyKSB7XG4gIC8vIEZpcmVmb3hcbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IEBjb2xvcjtcbiAgICBvcGFjaXR5OiAxOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjZcbiAgfVxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiBAY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6IEBjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvbnNcbi5zY2FsZShAcmF0aW8pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKEByYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZShAcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoQHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKEByYXRpbyk7XG59XG4uc2NhbGUoQHJhdGlvWDsgQHJhdGlvWSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoQHJhdGlvWCwgQHJhdGlvWSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZShAcmF0aW9YLCBAcmF0aW9ZKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKEByYXRpb1gsIEByYXRpb1kpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoQHJhdGlvWCwgQHJhdGlvWSk7XG59XG4uc2NhbGVYKEByYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKEByYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoQHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWChAcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKEByYXRpbyk7XG59XG4uc2NhbGVZKEByYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKEByYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVkoQHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWShAcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKEByYXRpbyk7XG59XG4uc2tldyhAeDsgQHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKEB4KSBza2V3WShAeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBza2V3WChAeCkgc2tld1koQHkpOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy80ODg1OyBJRTkrXG4gICAgICAgLW8tdHJhbnNmb3JtOiBza2V3WChAeCkgc2tld1koQHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1goQHgpIHNrZXdZKEB5KTtcbn1cbi50cmFuc2xhdGUoQHg7IEB5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoQHgsIEB5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHkpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoQHgsIEB5KTtcbn1cbi50cmFuc2xhdGUzZChAeDsgQHk7IEB6KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZChAeCwgQHksIEB6KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKEB4LCBAeSwgQHopO1xufVxuLnJvdGF0ZShAZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKEBkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZShAZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoQGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKEBkZWdyZWVzKTtcbn1cbi5yb3RhdGVYKEBkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKEBkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVgoQGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWChAZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKEBkZWdyZWVzKTtcbn1cbi5yb3RhdGVZKEBkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZKEBkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVkoQGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWShAZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKEBkZWdyZWVzKTtcbn1cbi5wZXJzcGVjdGl2ZShAcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogQHBlcnNwZWN0aXZlO1xuICAgICAtbW96LXBlcnNwZWN0aXZlOiBAcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmU6IEBwZXJzcGVjdGl2ZTtcbn1cbi5wZXJzcGVjdGl2ZS1vcmlnaW4oQHBlcnNwZWN0aXZlKSB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmUtb3JpZ2luOiBAcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmUtb3JpZ2luOiBAcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmUtb3JpZ2luOiBAcGVyc3BlY3RpdmU7XG59XG4udHJhbnNmb3JtLW9yaWdpbihAb3JpZ2luKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogQG9yaWdpbjtcbiAgICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiBAb3JpZ2luO1xuICAgICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IEBvcmlnaW47IC8vIElFOSBvbmx5XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogQG9yaWdpbjtcbn1cblxuXG4vLyBUcmFuc2l0aW9uc1xuXG4udHJhbnNpdGlvbihAdHJhbnNpdGlvbikge1xuICAtd2Via2l0LXRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xufVxuLnRyYW5zaXRpb24tcHJvcGVydHkoQHRyYW5zaXRpb24tcHJvcGVydHkpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBAdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBAdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbn1cbi50cmFuc2l0aW9uLWRlbGF5KEB0cmFuc2l0aW9uLWRlbGF5KSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogQHRyYW5zaXRpb24tZGVsYXk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogQHRyYW5zaXRpb24tZGVsYXk7XG59XG4udHJhbnNpdGlvbi1kdXJhdGlvbihAdHJhbnNpdGlvbi1kdXJhdGlvbikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IEB0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IEB0cmFuc2l0aW9uLWR1cmF0aW9uO1xufVxuLnRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKEB0aW1pbmctZnVuY3Rpb24pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogQHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogQHRpbWluZy1mdW5jdGlvbjtcbn1cbi50cmFuc2l0aW9uLXRyYW5zZm9ybShAdHJhbnNpdGlvbikge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIEB0cmFuc2l0aW9uO1xuICAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIEB0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSBAdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gQHRyYW5zaXRpb247XG59XG5cblxuLy8gVXNlciBzZWxlY3Rcbi8vIEZvciBzZWxlY3RpbmcgdGV4dCBvbiB0aGUgcGFnZVxuXG4udXNlci1zZWxlY3QoQHNlbGVjdCkge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBAc2VsZWN0O1xuICAgICAtbW96LXVzZXItc2VsZWN0OiBAc2VsZWN0O1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiBAc2VsZWN0OyAvLyBJRTEwK1xuICAgICAgICAgIHVzZXItc2VsZWN0OiBAc2VsZWN0O1xufVxuIiwiLy9cbi8vIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSGVhZGluZ3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBmb250LWZhbWlseTogQGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogQGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogQGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogQGhlYWRpbmdzLWNvbG9yO1xuXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6IEBoZWFkaW5ncy1zbWFsbC1jb2xvcjtcbiAgfVxufVxuXG5oMSwgLmgxLFxuaDIsIC5oMixcbmgzLCAuaDMge1xuICBtYXJnaW4tdG9wOiBAbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbi1ib3R0b206IChAbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcblxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDY1JTtcbiAgfVxufVxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgbWFyZ2luLXRvcDogKEBsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAoQGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG5cbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gIH1cbn1cblxuaDEsIC5oMSB7IGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1oMTsgfVxuaDIsIC5oMiB7IGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1oMjsgfVxuaDMsIC5oMyB7IGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1oMzsgfVxuaDQsIC5oNCB7IGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1oNDsgfVxuaDUsIC5oNSB7IGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1oNTsgfVxuaDYsIC5oNiB7IGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1oNjsgfVxuXG5cbi8vIEJvZHkgdGV4dFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5wIHtcbiAgbWFyZ2luOiAwIDAgKEBsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xufVxuXG4ubGVhZCB7XG4gIG1hcmdpbi1ib3R0b206IEBsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zaXplOiBmbG9vcigoQGZvbnQtc2l6ZS1iYXNlICogMS4xNSkpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikge1xuICAgIGZvbnQtc2l6ZTogKEBmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIH1cbn1cblxuXG4vLyBFbXBoYXNpcyAmIG1pc2Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRXg6ICgxMnB4IHNtYWxsIGZvbnQgLyAxNHB4IGJhc2UgZm9udCkgKiAxMDAlID0gYWJvdXQgODUlXG5zbWFsbCxcbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogZmxvb3IoKDEwMCUgKiBAZm9udC1zaXplLXNtYWxsIC8gQGZvbnQtc2l6ZS1iYXNlKSk7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBzdGF0ZS13YXJuaW5nLWJnO1xuICBwYWRkaW5nOiAuMmVtO1xufVxuXG4vLyBBbGlnbm1lbnRcbi50ZXh0LWxlZnQgICAgICAgICAgIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuLnRleHQtcmlnaHQgICAgICAgICAgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuLnRleHQtY2VudGVyICAgICAgICAgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbi50ZXh0LWp1c3RpZnkgICAgICAgIHsgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuLnRleHQtbm93cmFwICAgICAgICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi8vIFRyYW5zZm9ybWF0aW9uXG4udGV4dC1sb3dlcmNhc2UgICAgICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cbi50ZXh0LXVwcGVyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuLnRleHQtY2FwaXRhbGl6ZSAgICAgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogQHRleHQtbXV0ZWQ7XG59XG4udGV4dC1wcmltYXJ5IHtcbiAgLnRleHQtZW1waGFzaXMtdmFyaWFudChAYnJhbmQtcHJpbWFyeSk7XG59XG4udGV4dC1zdWNjZXNzIHtcbiAgLnRleHQtZW1waGFzaXMtdmFyaWFudChAc3RhdGUtc3VjY2Vzcy10ZXh0KTtcbn1cbi50ZXh0LWluZm8ge1xuICAudGV4dC1lbXBoYXNpcy12YXJpYW50KEBzdGF0ZS1pbmZvLXRleHQpO1xufVxuLnRleHQtd2FybmluZyB7XG4gIC50ZXh0LWVtcGhhc2lzLXZhcmlhbnQoQHN0YXRlLXdhcm5pbmctdGV4dCk7XG59XG4udGV4dC1kYW5nZXIge1xuICAudGV4dC1lbXBoYXNpcy12YXJpYW50KEBzdGF0ZS1kYW5nZXItdGV4dCk7XG59XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcbi8vIEZvciBub3cgd2UnbGwgbGVhdmUgdGhlc2UgYWxvbmdzaWRlIHRoZSB0ZXh0IGNsYXNzZXMgdW50aWwgdjQgd2hlbiB3ZSBjYW5cbi8vIHNhZmVseSBzaGlmdCB0aGluZ3MgYXJvdW5kIChwZXIgU2VtVmVyIHJ1bGVzKS5cbi5iZy1wcmltYXJ5IHtcbiAgLy8gR2l2ZW4gdGhlIGNvbnRyYXN0IGhlcmUsIHRoaXMgaXMgdGhlIG9ubHkgY2xhc3MgdG8gaGF2ZSBpdHMgY29sb3IgaW52ZXJ0ZWRcbiAgLy8gYXV0b21hdGljYWxseS5cbiAgY29sb3I6ICNmZmY7XG4gIC5iZy12YXJpYW50KEBicmFuZC1wcmltYXJ5KTtcbn1cbi5iZy1zdWNjZXNzIHtcbiAgLmJnLXZhcmlhbnQoQHN0YXRlLXN1Y2Nlc3MtYmcpO1xufVxuLmJnLWluZm8ge1xuICAuYmctdmFyaWFudChAc3RhdGUtaW5mby1iZyk7XG59XG4uYmctd2FybmluZyB7XG4gIC5iZy12YXJpYW50KEBzdGF0ZS13YXJuaW5nLWJnKTtcbn1cbi5iZy1kYW5nZXIge1xuICAuYmctdmFyaWFudChAc3RhdGUtZGFuZ2VyLWJnKTtcbn1cblxuXG4vLyBQYWdlIGhlYWRlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ucGFnZS1oZWFkZXIge1xuICBwYWRkaW5nLWJvdHRvbTogKChAbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIDEpO1xuICBtYXJnaW46IChAbGluZS1oZWlnaHQtY29tcHV0ZWQgKiAyKSAwIEBsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEBwYWdlLWhlYWRlci1ib3JkZXItY29sb3I7XG59XG5cblxuLy8gTGlzdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gVW5vcmRlcmVkIGFuZCBPcmRlcmVkIGxpc3RzXG51bCxcbm9sIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogKEBsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICB1bCxcbiAgb2wge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8gTGlzdCBvcHRpb25zXG5cbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxuLmxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXG4ubGlzdC1pbmxpbmUge1xuICAubGlzdC11bnN0eWxlZCgpO1xuICBtYXJnaW4tbGVmdDogLTVweDtcblxuICA+IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xuICB9XG59XG5cbi8vIERlc2NyaXB0aW9uIExpc3RzXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7IC8vIFJlbW92ZSBicm93c2VyIGRlZmF1bHRcbiAgbWFyZ2luLWJvdHRvbTogQGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xufVxuZHQsXG5kZCB7XG4gIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcbn1cbmR0IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5kZCB7XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyBVbmRvIGJyb3dzZXIgZGVmYXVsdFxufVxuXG4vLyBIb3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3RzXG4vL1xuLy8gRGVmYXVsdHMgdG8gYmVpbmcgc3RhY2tlZCB3aXRob3V0IGFueSBvZiB0aGUgYmVsb3cgc3R5bGVzIGFwcGxpZWQsIHVudGlsIHRoZVxuLy8gZ3JpZCBicmVha3BvaW50IGlzIHJlYWNoZWQgKGRlZmF1bHQgb2Ygfjc2OHB4KS5cblxuLmRsLWhvcml6b250YWwge1xuICBkZCB7XG4gICAgJjpleHRlbmQoLmNsZWFyZml4IGFsbCk7IC8vIENsZWFyIHRoZSBmbG9hdGVkIGBkdGAgaWYgYW4gZW1wdHkgYGRkYCBpcyBwcmVzZW50XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogQGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGR0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IChAZGwtaG9yaXpvbnRhbC1vZmZzZXQgLSAyMCk7XG4gICAgICBjbGVhcjogbGVmdDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgLnRleHQtb3ZlcmZsb3coKTtcbiAgICB9XG4gICAgZGQge1xuICAgICAgbWFyZ2luLWxlZnQ6IEBkbC1ob3Jpem9udGFsLW9mZnNldDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBNaXNjXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEFiYnJldmlhdGlvbnMgYW5kIGFjcm9ueW1zXG5hYmJyW3RpdGxlXSxcbi8vIEFkZCBkYXRhLSogYXR0cmlidXRlIHRvIGhlbHAgb3V0IG91ciB0b29sdGlwIHBsdWdpbiwgcGVyIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvNTI1N1xuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7XG4gIGN1cnNvcjogaGVscDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCBAYWJici1ib3JkZXItY29sb3I7XG59XG4uaW5pdGlhbGlzbSB7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6IChAbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSBAbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbjogMCAwIEBsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zaXplOiBAYmxvY2txdW90ZS1mb250LXNpemU7XG4gIGJvcmRlci1sZWZ0OiA1cHggc29saWQgQGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xuXG4gIHAsXG4gIHVsLFxuICBvbCB7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gTm90ZTogRGVwcmVjYXRlZCBzbWFsbCBhbmQgLnNtYWxsIGFzIG9mIHYzLjEuMFxuICAvLyBDb250ZXh0OiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjYwXG4gIGZvb3RlcixcbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiA4MCU7IC8vIGJhY2sgdG8gZGVmYXVsdCBmb250LXNpemVcbiAgICBsaW5lLWhlaWdodDogQGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgY29sb3I6IEBibG9ja3F1b3RlLXNtYWxsLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAxNCBcXDAwQTAnOyAvLyBlbSBkYXNoLCBuYnNwXG4gICAgfVxuICB9XG59XG5cbi8vIE9wcG9zaXRlIGFsaWdubWVudCBvZiBibG9ja3F1b3RlXG4vL1xuLy8gSGVhZHMgdXA6IGBibG9ja3F1b3RlLnB1bGwtcmlnaHRgIGhhcyBiZWVuIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMS4wLlxuLmJsb2NrcXVvdGUtcmV2ZXJzZSxcbmJsb2NrcXVvdGUucHVsbC1yaWdodCB7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgYm9yZGVyLXJpZ2h0OiA1cHggc29saWQgQGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItbGVmdDogMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgLy8gQWNjb3VudCBmb3IgY2l0YXRpb25cbiAgZm9vdGVyLFxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICAmOmJlZm9yZSB7IGNvbnRlbnQ6ICcnOyB9XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnXFwwMEEwIFxcMjAxNCc7IC8vIG5ic3AsIGVtIGRhc2hcbiAgICB9XG4gIH1cbn1cblxuLy8gQWRkcmVzc2VzXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogQGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcbn1cbiIsIi8vIFR5cG9ncmFwaHlcblxuLnRleHQtZW1waGFzaXMtdmFyaWFudChAY29sb3IpIHtcbiAgY29sb3I6IEBjb2xvcjtcbiAgYSY6aG92ZXIge1xuICAgIGNvbG9yOiBkYXJrZW4oQGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbi5iZy12YXJpYW50KEBjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3I7XG4gIGEmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvL1xuLy8gQ29kZSAoaW5saW5lIGFuZCBibG9jaylcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSW5saW5lIGFuZCBibG9jayBjb2RlIHN0eWxlc1xuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogQGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbn1cblxuLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBwYWRkaW5nOiAycHggNHB4O1xuICBmb250LXNpemU6IDkwJTtcbiAgY29sb3I6IEBjb2RlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29kZS1iZztcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlci1yYWRpdXMtYmFzZTtcbn1cblxuLy8gVXNlciBpbnB1dCB0eXBpY2FsbHkgZW50ZXJlZCB2aWEga2V5Ym9hcmRcbmtiZCB7XG4gIHBhZGRpbmc6IDJweCA0cHg7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogQGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGtiZC1iZztcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlci1yYWRpdXMtc21hbGw7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTFweCAwIHJnYmEoMCwwLDAsLjI1KTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAoKEBsaW5lLWhlaWdodC1jb21wdXRlZCAtIDEpIC8gMik7XG4gIG1hcmdpbjogMCAwIChAbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcbiAgZm9udC1zaXplOiAoQGZvbnQtc2l6ZS1iYXNlIC0gMSk7IC8vIDE0cHggdG8gMTNweFxuICBsaW5lLWhlaWdodDogQGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBjb2xvcjogQHByZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHByZS1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgQHByZS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6IEBwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG4iLCIvL1xuLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyA9PSBDb2xvcnNcbi8vXG4vLyMjXG5cbi8vIENvbG9yIHN3YXRjaGVzXG5AdHVycXVvaXNlOiAgICAgICAgICAgICAgICAgIzFhYmM5YztcbkBncmVlbi1zZWE6ICAgICAgICAgICAgICAgICAjMTZhMDg1O1xuXG5AZW1lcmFsZDogICAgICAgICAgICAgICAgICAgIzJlY2M3MTtcbkBuZXBocml0aXM6ICAgICAgICAgICAgICAgICAjMjdhZTYwO1xuXG5AcGV0ZXItcml2ZXI6ICAgICAgICAgICAgICAgIzM0OThkYjtcbkBiZWxpemUtaG9sZTogICAgICAgICAgICAgICAjMjk4MGI5O1xuXG5AYW1ldGh5c3Q6ICAgICAgICAgICAgICAgICAgIzliNTliNjtcbkB3aXN0ZXJpYTogICAgICAgICAgICAgICAgICAjOGU0NGFkO1xuXG5Ad2V0LWFzcGhhbHQ6ICAgICAgICAgICAgICAgIzM0NDk1ZTtcbkBtaWRuaWdodC1ibHVlOiAgICAgICAgICAgICAjMmMzZTUwO1xuXG5Ac3VuLWZsb3dlcjogICAgICAgICAgICAgICAgI2YxYzQwZjtcbkBvcmFuZ2U6ICAgICAgICAgICAgICAgICAgICAjZjM5YzEyO1xuXG5AY2Fycm90OiAgICAgICAgICAgICAgICAgICAgI2U2N2UyMjtcbkBwdW1wa2luOiAgICAgICAgICAgICAgICAgICAjZDM1NDAwO1xuXG5AYWxpemFyaW46ICAgICAgICAgICAgICAgICAgI2U3NGMzYztcbkBwb21lZ3JhbmF0ZTogICAgICAgICAgICAgICAjYzAzOTJiO1xuXG5AY2xvdWRzOiAgICAgICAgICAgICAgICAgICAgI2VjZjBmMTtcbkBzaWx2ZXI6ICAgICAgICAgICAgICAgICAgICAjYmRjM2M3O1xuXG5AY29uY3JldGU6ICAgICAgICAgICAgICAgICAgIzk1YTVhNjtcbkBhc2Jlc3RvczogICAgICAgICAgICAgICAgICAjN2Y4YzhkO1xuXG5AZGFya2dyZXk6XHRcdFx0XHRcdCM1OTU5NTk7XG5cbi8vIEdyYXlzXG5AZ3JheTogICAgICAgICAgICAgICAgICAgICAgQGNvbmNyZXRlO1xuQGdyYXktbGlnaHQ6ICAgICAgICAgICAgICAgIEBzaWx2ZXI7XG5AaW52ZXJzZTogICAgICAgICAgICAgICAgICAgd2hpdGU7XG5cbi8vIEJyYW5kIGNvbG9yc1xuQGJyYW5kLXByaW1hcnk6ICAgICAgICAgICAgIEB3ZXQtYXNwaGFsdDtcbkBicmFuZC1zZWNvbmRhcnk6ICAgICAgICAgICBAdHVycXVvaXNlO1xuQGJyYW5kLXN1Y2Nlc3M6ICAgICAgICAgICAgIEBlbWVyYWxkO1xuQGJyYW5kLXdhcm5pbmc6ICAgICAgICAgICAgIEBzdW4tZmxvd2VyO1xuQGJyYW5kLWRhbmdlcjogICAgICAgICAgICAgIEBhbGl6YXJpbjtcbkBicmFuZC1pbmZvOiAgICAgICAgICAgICAgICBAcGV0ZXItcml2ZXI7XG5cblxuLy89PSBTY2FmZm9sZGluZ1xuLy9cbi8vIyMgU2V0dGluZ3MgZm9yIHNvbWUgb2YgdGhlIG1vc3QgZ2xvYmFsIHN0eWxlcy5cblxuQGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICNmZmY7XG5AdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgQGRhcmtncmV5O1xuXG4vLyoqIEdsb2JhbCB0ZXh0dWFsIGxpbmsgY29sb3IuXG5AbGluay1jb2xvcjogICAgICAgICAgICAgICAgQGdyZWVuLXNlYTtcbkBsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICBAdHVycXVvaXNlO1xuXG5cbi8vPT0gVHlwb2dyYXBoeVxuLy9cbi8vIyMgRm9udCwgbGluZS1oZWlnaHQgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG5AZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgXCJMYXRvXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG5AZm9udC1mYW1pbHktZGVtbzogICAgICAgICAgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuQGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgIE1vbmFjbywgTWVubG8sIENvbnNvbGFzLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZTtcbkBmb250LXNpemUtYmFzZTogICAgICAgICAgICAxOHB4O1xuXG5AbG9jYWwtZm9udC1wYXRoOiAgICAgICAgICAgICAgIFwiLi4vZm9udHMvbGF0by9cIjtcbkBsb2NhbC1mb250LW5hbWU6ICAgICAgICAgICAgICAgXCJsYXRvLXJlZ3VsYXJcIjtcbkBsb2NhbC1mb250LXN2Zy1pZDogICAgICAgICAgICAgXCJsYXRvcmVndWxhclwiO1xuQGxvY2FsLWZvbnQtbmFtZS1saWdodDogICAgICAgICBcImxhdG8tbGlnaHRcIjtcbkBsb2NhbC1mb250LXN2Zy1pZC1saWdodDogICAgICAgXCJsYXRvbGlnaHRcIjtcbkBsb2NhbC1mb250LW5hbWUtYmxhY2s6ICAgICAgICAgXCJsYXRvLWJsYWNrXCI7XG5AbG9jYWwtZm9udC1zdmctaWQtYmxhY2s6ICAgICAgIFwibGF0b2JsYWNrXCI7XG5AbG9jYWwtZm9udC1uYW1lLWJvbGQ6ICAgICAgICAgIFwibGF0by1ib2xkXCI7XG5AbG9jYWwtZm9udC1zdmctaWQtYm9sZDogICAgICAgIFwibGF0b2JvbGRcIjtcbkBsb2NhbC1mb250LW5hbWUtaXRhbGljOiAgICAgICAgXCJsYXRvLWl0YWxpY1wiO1xuQGxvY2FsLWZvbnQtc3ZnLWlkLWl0YWxpYzogICAgICBcImxhdG9pdGFsaWNcIjtcbkBsb2NhbC1mb250LW5hbWUtYm9sZC1pdGFsaWM6ICAgXCJsYXRvLWJvbGRpdGFsaWNcIjtcbkBsb2NhbC1mb250LXN2Zy1pZC1ib2xkLWl0YWxpYzogXCJsYXRvYm9sZC1pdGFsaWNcIjtcblxuQGZvbnQtc2l6ZS1oMTogICAgICAgICAgICAgIGZsb29yKEBmb250LXNpemUtYmFzZSAqIDIuMjIyKTsgLy8gfjYycHhcbkBmb250LXNpemUtaDI6ICAgICAgICAgICAgICBjZWlsKEBmb250LXNpemUtYmFzZSAqIDEuNjExKTsgLy8gfjUycHhcbkBmb250LXNpemUtaDM6ICAgICAgICAgICAgICBjZWlsKEBmb250LXNpemUtYmFzZSAqIDEuNTU2KTsgLy8gfjQwcHhcbkBmb250LXNpemUtaDQ6ICAgICAgICAgICAgICBjZWlsKEBmb250LXNpemUtYmFzZSAqIDEuMzMzKTsgLy8gfjI5cHhcbkBmb250LXNpemUtaDU6ICAgICAgICAgICAgICBmbG9vcihAZm9udC1zaXplLWJhc2UgKiAxLjIyMik7IC8vIH4yOHB4XG5AZm9udC1zaXplLWg2OiAgICAgICAgICAgICAgY2VpbChAZm9udC1zaXplLWJhc2UgKiAxLjExMSk7IC8vIH4yMHB4XG5cbkBsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAxLjcyMjIyOyAvLyAzMS8xOFxuQGxpbmUtaGVpZ2h0LWNvbXB1dGVkOiAgICAgIGZsb29yKEBmb250LXNpemUtYmFzZSAqIEBsaW5lLWhlaWdodC1iYXNlKTsgLy8gfjMxcHhcblxuQGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgIGluaGVyaXQ7XG5AaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgNzAwO1xuQGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgIDEuMTtcbkBoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICBpbmhlcml0O1xuXG5cbi8vPT0gSWNvbm9ncmFwaHlcbi8vXG4vLyMjIFNwZWNpZnkgY3VzdG9tIGxvY2F0aW9ucyBvZiB0aGUgaW5jbHVkZSBHbHlwaGljb25zIGljb24gZm9udC5cblxuQGljb24tZm9udC1wYXRoOiAgICAgICAgICAgIFwiLi4vZm9udHMvXCI7XG5AaWNvbi1mb250LW5hbWU6ICAgICAgICAgICAgXCJmbGF0LXVpLWljb25zLXJlZ3VsYXJcIjtcbkBpY29uLWZvbnQtc3ZnLWlkOiAgICAgICAgICBcImZsYXQtdWktaWNvbnMtcmVndWxhclwiO1xuXG4vLyoqIEljb24gc2l6ZXMgZm9yIHVzZSBpbiBjb21wb25lbnRzXG5AaWNvbi1ub3JtYWw6ICAgICAgICAgICAgICAgMTZweDtcbkBpY29uLW1lZGl1bTogICAgICAgICAgICAgICAxOHB4O1xuQGljb24tbGFyZ2U6ICAgICAgICAgICAgICAgIDMycHg7XG5cblxuLy89PSBDb21wb25lbnRzXG4vL1xuLy8jIyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbi8vKiogRGVmYXVsdCBmb250LXNpemUgaW4gY29tcG9uZW50c1xuQGNvbXBvbmVudC1mb250LXNpemUtYmFzZTogIGNlaWwoQGZvbnQtc2l6ZS1iYXNlICogMC44MzMpOyAvLyB+MTVweFxuXG4vLyBCb3JkZXItcmFkaXVzXG5AYm9yZGVyLXJhZGl1cy1iYXNlOiAgICAgICAgNHB4O1xuQGJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgIDZweDtcbkBib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAzcHg7XG5cblxuLy89PSBCdXR0b25zXG4vL1xuLy8jIyBGb3IgZWFjaCBvZiBGbGF0IFVJJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGZvbnQgc2l6ZSBhbmQgaGVpZ2h0LlxuXG5AYnRuLWZvbnQtc2l6ZS1iYXNlOiAgICAgICAgIEBjb21wb25lbnQtZm9udC1zaXplLWJhc2U7XG5AYnRuLWZvbnQtc2l6ZS14czogICAgICAgICAgIGNlaWwoQGNvbXBvbmVudC1mb250LXNpemUtYmFzZSAqIDAuODApOyAgIC8vIH4xMnB4XG5AYnRuLWZvbnQtc2l6ZS1zbTogICAgICAgICAgIGZsb29yKEBjb21wb25lbnQtZm9udC1zaXplLWJhc2UgKiAwLjg2Nyk7IC8vIH4xM3B4XG5AYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgIGNlaWwoQGNvbXBvbmVudC1mb250LXNpemUtYmFzZSAqIDEuMTMzKTsgIC8vIH4xN3B4XG5AYnRuLWZvbnQtc2l6ZS1oZzogICAgICAgICAgIGZsb29yKEBjb21wb25lbnQtZm9udC1zaXplLWJhc2UgKiAxLjQ2Nyk7IC8vIH4yMnB4XG5cbkBidG4tbGluZS1oZWlnaHQtYmFzZTogICAgICAgMS40OyAgIC8vIH4yMXB4XG5AYnRuLWxpbmUtaGVpZ2h0LWhnOiAgICAgICAgIDEuMjI3OyAvLyB+MjdweFxuQGJ0bi1saW5lLWhlaWdodC1sZzogICAgICAgICAxLjQ3MTsgLy8gfjI1cHhcbkBidG4tbGluZS1oZWlnaHQtc206ICAgICAgICAgMS4zODU7IC8vIH4xNnB4XG5AYnRuLWxpbmUtaGVpZ2h0LXhzOiAgICAgICAgIDEuMDgzOyAvLyB+MTNweFxuXG5AYnRuLXNvY2lhbC1mb250LXNpemUtYmFzZTogICBmbG9vcihAY29tcG9uZW50LWZvbnQtc2l6ZS1iYXNlICogMC44NjcpOyAvLyB+MTNweFxuQGJ0bi1zb2NpYWwtbGluZS1oZWlnaHQtYmFzZTogMS4wNzc7ICAvLyB+MTRweFxuXG5AYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIG5vcm1hbDtcblxuQGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICBAaW52ZXJzZTtcbkBidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgQGdyYXktbGlnaHQ7XG5AYnRuLWhvdmVyLWJnOiAgICAgICAgICAgICAgIG1peChAZ3JheS1saWdodCwgd2hpdGUsIDgwJSk7XG5AYnRuLWFjdGl2ZS1iZzogICAgICAgICAgICAgIG1peChAZ3JheS1saWdodCwgYmxhY2ssIDg1JSk7XG5cbkBidG4tcHJpbWFyeS1ob3Zlci1iZzogICAgICAgbWl4KEBicmFuZC1zZWNvbmRhcnksIHdoaXRlLCA4MCUpO1xuQGJ0bi1wcmltYXJ5LWFjdGl2ZS1iZzogICAgICBtaXgoQGJyYW5kLXNlY29uZGFyeSwgYmxhY2ssIDg1JSk7XG5cbkBidG4taW5mby1ob3Zlci1iZzogICAgICAgICAgbWl4KEBicmFuZC1pbmZvLCB3aGl0ZSwgODAlKTtcbkBidG4taW5mby1hY3RpdmUtYmc6ICAgICAgICAgbWl4KEBicmFuZC1pbmZvLCBibGFjaywgODUlKTtcblxuQGJ0bi1zdWNjZXNzLWhvdmVyLWJnOiAgICAgICBtaXgoQGJyYW5kLXN1Y2Nlc3MsIHdoaXRlLCA4MCUpO1xuQGJ0bi1zdWNjZXNzLWFjdGl2ZS1iZzogICAgICBtaXgoQGJyYW5kLXN1Y2Nlc3MsIGJsYWNrLCA4NSUpO1xuXG5AYnRuLWRhbmdlci1ob3Zlci1iZzogICAgICAgIG1peChAYnJhbmQtZGFuZ2VyLCB3aGl0ZSwgODAlKTtcbkBidG4tZGFuZ2VyLWFjdGl2ZS1iZzogICAgICAgbWl4KEBicmFuZC1kYW5nZXIsIGJsYWNrLCA4NSUpO1xuXG5AYnRuLXdhcm5pbmctaG92ZXItYmc6ICAgICAgIG92ZXJsYXkoQGJyYW5kLXdhcm5pbmcsIGRhcmtlbih3aGl0ZSwgMzcuNSUpKTtcbkBidG4td2FybmluZy1hY3RpdmUtYmc6ICAgICAgbWl4KEBicmFuZC13YXJuaW5nLCBibGFjaywgODUlKTtcblxuQGJ0bi1pbnZlcnNlLWhvdmVyLWJnOiAgICAgICBvdmVybGF5KEBicmFuZC1wcmltYXJ5LCBkYXJrZW4od2hpdGUsIDM3LjUlKSk7XG5AYnRuLWludmVyc2UtYWN0aXZlLWJnOiAgICAgIG1peChAYnJhbmQtcHJpbWFyeSwgYmxhY2ssIDg1JSk7XG5cbkBidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgQGdyYXktbGlnaHQ7XG5cblxuLy89PSBGb3Jtc1xuLy9cbi8vIyNcblxuQGlucHV0LWZvbnQtc2l6ZS1iYXNlOiAgICAgIEBjb21wb25lbnQtZm9udC1zaXplLWJhc2U7XG5AaW5wdXQtZm9udC1zaXplLXNtYWxsOiAgICAgZmxvb3IoQGNvbXBvbmVudC1mb250LXNpemUtYmFzZSAqIDAuODY3KTsgLy8gfjEzcHhcbkBpbnB1dC1mb250LXNpemUtbGFyZ2U6ICAgICBjZWlsKEBjb21wb25lbnQtZm9udC1zaXplLWJhc2UgKiAxLjEzMyk7IC8vIH4xN3B4XG5AaW5wdXQtZm9udC1zaXplLWh1Z2U6ICAgICAgZmxvb3IoQGNvbXBvbmVudC1mb250LXNpemUtYmFzZSAqIDEuNDY3KTsgLy8gfjIycHhcblxuQGlucHV0LWxpbmUtaGVpZ2h0LWJhc2U6ICAgIDEuNDY3OyAvLyB+MjJweFxuQGlucHV0LWxpbmUtaGVpZ2h0LXNtYWxsOiAgIDEuNDYyOyAvLyB+MTlweFxuQGlucHV0LWxpbmUtaGVpZ2h0LWxhcmdlOiAgIDEuMjM1OyAvLyB+MjFweFxuQGlucHV0LWxpbmUtaGVpZ2h0LWh1Z2U6ICAgIDEuMzE4OyAvLyB+MjlweFxuXG5AaW5wdXQtaWNvbi1mb250LXNpemU6ICAgICAgY2VpbChAY29tcG9uZW50LWZvbnQtc2l6ZS1iYXNlICogMS4zMzMpOyAgLy8gfjIwcHggICAgICAgXG5cbkBpbnB1dC1iZzogICAgICAgICAgICAgICAgICBAaW52ZXJzZTtcbkBpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICBtaXgoQGdyYXksIHdoaXRlLCAxMCUpO1xuXG5AaW5wdXQtaGVpZ2h0LXNtYWxsOiAgICAgICAgMzVweDtcbkBpbnB1dC1oZWlnaHQtYmFzZTogICAgICAgICA0MXB4O1xuQGlucHV0LWhlaWdodC1sYXJnZTogICAgICAgIDQ1cHg7XG5AaW5wdXQtaGVpZ2h0LWh1Z2U6ICAgICAgICAgNTNweDtcblxuQGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgIEBib3JkZXItcmFkaXVzLWxhcmdlO1xuXG5AbGVnZW5kLWNvbG9yOiAgICAgICAgICAgICAgaW5oZXJpdDtcblxuXG4vLz09IEZvcm1zXG4vL1xuLy8jI1xuXG5AaW5wdXQtZm9udC1zaXplLWJhc2U6ICAgICAgQGNvbXBvbmVudC1mb250LXNpemUtYmFzZTtcbkBpbnB1dC1mb250LXNpemUtc21hbGw6ICAgICBmbG9vcihAY29tcG9uZW50LWZvbnQtc2l6ZS1iYXNlICogMC44NjcpOyAvLyB+MTNweFxuQGlucHV0LWZvbnQtc2l6ZS1sYXJnZTogICAgIGNlaWwoQGNvbXBvbmVudC1mb250LXNpemUtYmFzZSAqIDEuMTMzKTsgLy8gfjE3cHhcbkBpbnB1dC1mb250LXNpemUtaHVnZTogICAgICBmbG9vcihAY29tcG9uZW50LWZvbnQtc2l6ZS1iYXNlICogMS40NjcpOyAvLyB+MjJweFxuXG5AaW5wdXQtbGluZS1oZWlnaHQtYmFzZTogICAgMS40Njc7IC8vIH4yMnB4XG5AaW5wdXQtbGluZS1oZWlnaHQtc21hbGw6ICAgMS40NjI7IC8vIH4xOXB4XG5AaW5wdXQtbGluZS1oZWlnaHQtbGFyZ2U6ICAgMS4yMzU7IC8vIH4yMXB4XG5AaW5wdXQtbGluZS1oZWlnaHQtaHVnZTogICAgMS4zMTg7IC8vIH4yOXB4XG5cbkBpbnB1dC1pY29uLWZvbnQtc2l6ZTogICAgICBjZWlsKEBjb21wb25lbnQtZm9udC1zaXplLWJhc2UgKiAxLjMzMyk7ICAvLyB+MjBweCAgICAgICBcblxuQGlucHV0LWJnOiAgICAgICAgICAgICAgICAgIEBpbnZlcnNlO1xuQGlucHV0LWJnLWRpc2FibGVkOiAgICAgICAgIG1peChAZ3JheSwgd2hpdGUsIDEwJSk7XG5cbkBpbnB1dC1oZWlnaHQtc21hbGw6ICAgICAgICAzNXB4O1xuQGlucHV0LWhlaWdodC1iYXNlOiAgICAgICAgIDQxcHg7XG5AaW5wdXQtaGVpZ2h0LWxhcmdlOiAgICAgICAgNDVweDtcbkBpbnB1dC1oZWlnaHQtaHVnZTogICAgICAgICA1M3B4O1xuXG5AaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgQGJvcmRlci1yYWRpdXMtbGFyZ2U7XG5cbkBsZWdlbmQtY29sb3I6ICAgICAgICAgICAgICBpbmhlcml0O1xuXG5cbi8vPT0gUGFnaW5hdGlvblxuLy9cbi8vIyNcblxuQHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICBtaXgoQGJyYW5kLXByaW1hcnksIHdoaXRlLCAyMCUpO1xuXG5cbi8vPT0gUGFnZXJcbi8vXG4vLyMjXG5cbkBwYWdlci1wYWRkaW5nOiAgICAgICAgICAgICAgOXB4IDE1cHggMTBweDtcblxuXG4vLz09IE5hdmJhclxuLy9cbi8vIyNcblxuLy8gQmFzaWNzIG9mIGEgbmF2YmFyXG5AemluZGV4LW5hdmJhcjogICAgICAgICAgICAgIDEwMDA7XG5AemluZGV4LW5hdmJhci1maXhlZDogICAgICAgIDEwMzA7XG5AbmF2YmFyLWhlaWdodC1iYXNlOiAgICAgICAgIDUzcHg7XG5AbmF2YmFyLWhlaWdodC1sYXJnZTogICAgICAgIDc2cHg7XG5AbmF2YmFyLWlucHV0LWxpbmUtaGVpZ2h0OiAgIDEuNDsgLy8gfjIxcHhcbkBuYXZiYXItbWFyZ2luLWJvdHRvbTogICAgICAgQGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuQG5hdmJhci1ib3JkZXItcmFkaXVzOiAgICAgICBAYm9yZGVyLXJhZGl1cy1sYXJnZTtcblxuQG5hdmJhci1kZWZhdWx0LWJnOiAgICAgICAgICBzYXR1cmF0ZShzcGluKHRpbnQoQGJyYW5kLXByaW1hcnksIDkxJSksIC0xOCksIDIlKTtcblxuLy8gTmF2YmFyIGxpbmtzXG5AbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjogICAgICAgICAgIEBicmFuZC1wcmltYXJ5O1xuQG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I6ICAgICBAYnJhbmQtc2Vjb25kYXJ5O1xuQG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc6ICAgICAgICB0cmFuc3BhcmVudDtcbkBuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjogICAgQGJyYW5kLXNlY29uZGFyeTtcbkBuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZzogICAgICAgdHJhbnNwYXJlbnQ7XG5AbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjogICNjY2M7XG5AbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZzogICAgIHRyYW5zcGFyZW50O1xuXG4vLyBOYXZiYXIgbmF2IGNhcmV0c1xuQG5hdmJhci1kZWZhdWx0LWNhcmV0LWNvbG9yOiAgICAgICAgICBAbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcbkBuYXZiYXItZGVmYXVsdC1jYXJldC1ob3Zlci1jb2xvcjogICAgQG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG5AbmF2YmFyLWRlZmF1bHQtY2FyZXQtYWN0aXZlLWNvbG9yOiAgIEBuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjtcblxuLy8gTmF2YmFyIGJyYW5kIGxhYmVsXG5AbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I6ICAgICAgICAgIEBuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuQG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICBAbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcbkBuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1iZzogICAgICAgdHJhbnNwYXJlbnQ7XG5cbi8vIE5hdmJhciB0b2dnbGVcbkBuYXZiYXItZGVmYXVsdC10b2dnbGUtY29sb3I6ICAgICAgICAgQG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG5AbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWhvdmVyLWNvbG9yOiAgIEBuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xuXG4vLyBOYXZiYXIgZm9ybVxuQG5hdmJhci1kZWZhdWx0LWZvcm0tcGxhY2Vob2xkZXI6ICAgICBzcGluKHRpbnQoQGJyYW5kLXByaW1hcnksIDYwJSksIDIpO1xuQG5hdmJhci1kZWZhdWx0LWZvcm0taWNvbjogICAgICAgICAgICBkZXNhdHVyYXRlKHRpbnQoQGJyYW5kLXByaW1hcnksIDQ1JSksIDIlKTtcbkBuYXZiYXItZGVmYXVsdC1mb3JtLWJvcmRlcjogICAgICAgICAgc2hhZGUoQG5hdmJhci1kZWZhdWx0LWJnLCAzJSk7XG5cblxuLy8gSW52ZXJ0ZWQgbmF2YmFyXG4vLyBSZXNldCBpbnZlcnRlZCBuYXZiYXIgYmFzaWNzXG5AbmF2YmFyLWludmVyc2UtZGl2aWRlcjogICAgICAgICAgICAgIGRhcmtlbihAYnJhbmQtcHJpbWFyeSwgMyUpO1xuXG4vLyBSZXNldCBpbnZlcnRlZCBuYXZiYXIgYmFzaWNzXG5AbmF2YmFyLWludmVyc2UtY29sb3I6ICAgICAgICAgICAgICAgIEBpbnZlcnNlO1xuQG5hdmJhci1pbnZlcnNlLWJnOiAgICAgICAgICAgICAgICAgICBAYnJhbmQtcHJpbWFyeTtcbkBuYXZiYXItaW52ZXJzZS1ib3JkZXI6ICAgICAgICAgICAgICAgZGFya2VuKEBuYXZiYXItaW52ZXJzZS1iZywgMTAlKTtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXG5AbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjogICAgICAgICAgIEBpbnZlcnNlO1xuQG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I6ICAgICBAYnJhbmQtc2Vjb25kYXJ5O1xuQG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItYmc6ICAgICAgICB0cmFuc3BhcmVudDtcbkBuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjogICAgQG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG5AbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc6ICAgICAgIEBicmFuZC1zZWNvbmRhcnk7XG5AbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjogICM0NDQ7XG5AbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1iZzogICAgIHRyYW5zcGFyZW50O1xuXG4vLyBOYXZiYXIgbmF2IGNhcmV0c1xuQG5hdmJhci1pbnZlcnNlLWNhcmV0LWNvbG9yOiAgICAgICAgICBsaWdodGVuKGRlc2F0dXJhdGUoQGJyYW5kLXByaW1hcnksIDclKSwgOSUpO1xuQG5hdmJhci1pbnZlcnNlLWNhcmV0LWhvdmVyLWNvbG9yOiAgICBAbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcbkBuYXZiYXItaW52ZXJzZS1jYXJldC1hY3RpdmUtY29sb3I6ICAgQG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yO1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgYnJhbmQgbGFiZWxcbkBuYXZiYXItaW52ZXJzZS1icmFuZC1jb2xvcjogICAgICAgICAgQG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG5AbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItY29sb3I6ICAgIEBuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xuQG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWJnOiAgICAgICB0cmFuc3BhcmVudDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIHRvZ2dsZVxuQG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1jb2xvcjogICAgICAgICBAbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcbkBuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItY29sb3I6ICAgQG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG5cbi8vIE5hdmJhciBmb3JtXG5AbmF2YmFyLWludmVyc2UtZm9ybS1iZzogICAgICAgICAgICAgIGRhcmtlbihAYnJhbmQtcHJpbWFyeSwgNiUpO1xuQG5hdmJhci1pbnZlcnNlLWZvcm0tcGxhY2Vob2xkZXI6ICAgICBkZXNhdHVyYXRlKGxpZ2h0ZW4oQGJyYW5kLXByaW1hcnksIDEzJSksIDclKTtcbkBuYXZiYXItaW52ZXJzZS1mb3JtLWljb246ICAgICAgICAgICAgZGVzYXR1cmF0ZShsaWdodGVuKEBicmFuZC1wcmltYXJ5LCAxMyUpLCA2JSk7XG5AbmF2YmFyLWludmVyc2UtZm9ybS1ib3JkZXI6ICAgICAgICAgIEBuYXZiYXItaW52ZXJzZS1kaXZpZGVyO1xuXG4vLyBEcm9wZG93biBtZW51XG5AbmF2YmFyLWludmVyc2UtZHJvcGRvd24tYXJyb3c6ICAgICAgICAgICAgIEBuYXZiYXItaW52ZXJzZS1iZztcbkBuYXZiYXItaW52ZXJzZS1kcm9wZG93bi1iZzogICAgICAgICAgICAgICAgQG5hdmJhci1pbnZlcnNlLWJnO1xuQG5hdmJhci1pbnZlcnNlLWRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICBtaXgoQG5hdmJhci1pbnZlcnNlLWJnLCBAbmF2YmFyLWludmVyc2UtY29sb3IsIDE1JSk7XG5AbmF2YmFyLWludmVyc2UtZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogIEBpbnZlcnNlO1xuQG5hdmJhci1pbnZlcnNlLWRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICBAYnJhbmQtc2Vjb25kYXJ5O1xuXG5cbi8vPT0gRHJvcGRvd24gTWVudVxuLy9cbi8vIyNcblxuQGRyb3Bkb3duLWJhY2tncm91bmQ6ICAgICAgICBtaXgoQGludmVyc2UsIEBicmFuZC1wcmltYXJ5LCA5NCUpO1xuXG5cbi8vPT0gSWNvbmJhclxuLy9cbi8vIyNcblxuQGljb25iYXItYmFja2dyb3VuZDogICAgICAgICBtaXgoQGJyYW5kLXByaW1hcnksIGJsYWNrLCA4NSUpO1xuXG5cbi8vPT0gUHJvZ3Jlc3MgYmFyc1xuLy9cbi8vIyNcblxuQHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAxMnB4O1xuXG5cbi8vPT0gU2xpZGVyXG4vL1xuLy8jI1xuXG5Ac2xpZGVyLWhlaWdodDogICAgICAgICAgICAgIDEycHg7XG5Ac2xpZGVyLXZhbHVlLWZvbnQtc2l6ZTogICAgIGZsb29yKEBjb21wb25lbnQtZm9udC1zaXplLWJhc2UgKiAwLjg2Nyk7IC8vIH4xM3B4O1xuXG5Ac2xpZGVyLWhhbmRsZS1iZzogICAgICAgICAgIG1peChAYnJhbmQtc2Vjb25kYXJ5LCBibGFjaywgODUlKTtcbkBzbGlkZXItaGFuZGxlLWhvdmVyLWJnOiAgICAgbWl4KEBicmFuZC1zZWNvbmRhcnksIHdoaXRlLCA4MCUpO1xuQHNsaWRlci1oYW5kbGUtYWN0aXZlLWJnOiAgICBtaXgoQGJyYW5kLXNlY29uZGFyeSwgYmxhY2ssIDg1JSk7XG5cbkBzbGlkZXItcmFuZ2UtYmc6ICAgICAgICAgICAgQGJyYW5kLXNlY29uZGFyeTtcblxuQHNsaWRlci1zZWdtZW50LWJnOiAgICAgICAgICBtaXgoZGVzYXR1cmF0ZShAYnJhbmQtcHJpbWFyeSwgMTUlKSwgd2hpdGUsIDIwJSk7XG5cblxuLy89PSBTd2l0Y2hcbi8vXG4vLyMjXG5cbkBzd2l0Y2gtYm9yZGVyLXJhZGl1czogICAgICAgMzBweDtcbkBzd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgODBweDtcblxuXG4vLz09IFRodW1ibmFpbHNcbi8vXG4vLyMjXG5cbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBpbWFnZVxuQHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgNHB4O1xuLy8qKiBUaHVtYm5haWwgYmFja2dyb3VuZCBjb2xvclxuQHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgQGJvZHktYmc7XG4vLyoqIFRodW1ibmFpbCBib3JkZXIgY29sb3JcbkB0aHVtYm5haWwtYm9yZGVyOiAgICAgICAgICAgIEBncmF5LWxpZ2h0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIHJhZGl1c1xuQHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgQGJvcmRlci1yYWRpdXMtbGFyZ2U7XG5cbi8vKiogQ3VzdG9tIHRleHQgY29sb3IgZm9yIHRodW1ibmFpbCBjYXB0aW9uc1xuQHRodW1ibmFpbC1jYXB0aW9uLWNvbG9yOiAgICAgQHRleHQtY29sb3I7XG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgY2FwdGlvblxuQHRodW1ibmFpbC1jYXB0aW9uLXBhZGRpbmc6ICAgOXB4O1xuXG5cbi8vPT0gTWVkaWEgcXVlcmllcyBicmVha3BvaW50c1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBicmVha3BvaW50cyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSwgYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gRXh0cmEgc21hbGwgc2NyZWVuIC8gcGhvbmVcbkBzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgIDQ4MHB4O1xuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbkBzY3JlZW4tc20tbWluOiAgICAgICAgICAgICAgIDc2OHB4O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuQHNjcmVlbi1tZC1taW46ICAgICAgICAgICAgICAgOTkycHg7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuQHNjcmVlbi1sZy1taW46ICAgICAgICAgICAgICAgMTIwMHB4O1xuXG4vLyBTbyBtZWRpYSBxdWVyaWVzIGRvbid0IG92ZXJsYXAgd2hlbiByZXF1aXJlZCwgcHJvdmlkZSBhIG1heGltdW1cbkBzY3JlZW4teHMtbWF4OiAgICAgICAgICAgICAgIChAc2NyZWVuLXNtLW1pbiAtIDEpO1xuQHNjcmVlbi1zbS1tYXg6ICAgICAgICAgICAgICAgKEBzY3JlZW4tbWQtbWluIC0gMSk7XG5Ac2NyZWVuLW1kLW1heDogICAgICAgICAgICAgICAoQHNjcmVlbi1sZy1taW4gLSAxKTtcblxuXG4vLz09IEdyaWQgc3lzdGVtXG4vL1xuLy8jIyBEZWZpbmUgeW91ciBjdXN0b20gcmVzcG9uc2l2ZSBncmlkLlxuXG4vLyoqIE51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkLlxuQGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTI7XG4vLyoqIFBhZGRpbmcgYmV0d2VlbiBjb2x1bW5zLiBHZXRzIGRpdmlkZWQgaW4gaGFsZiBmb3IgdGhlIGxlZnQgYW5kIHJpZ2h0LlxuQGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMzBweDtcbi8vIE5hdmJhciBjb2xsYXBzZVxuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlY29tZXMgdW5jb2xsYXBzZWQuXG5AZ3JpZC1mbG9hdC1icmVha3BvaW50OiAgICAgICBAc2NyZWVuLXNtLW1pbjtcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWdpbnMgY29sbGFwc2luZy5cbkBncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4OiAgIChAZ3JpZC1mbG9hdC1icmVha3BvaW50IC0gMSk7XG5cbi8vIEZvcm0gc3RhdGVzIGFuZCBhbGVydHNcbi8vXG4vLyMjIERlZmluZSBjb2xvcnMgZm9yIGZvcm0gZmVlZGJhY2sgc3RhdGVzIGFuZCwgYnkgZGVmYXVsdCwgYWxlcnRzLlxuXG5Ac3RhdGUtc3VjY2Vzcy10ZXh0OiAgICAgICAgICBAYnJhbmQtc3VjY2VzcztcbkBzdGF0ZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICNkZmYwZDg7XG5Ac3RhdGUtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICBkYXJrZW4oc3BpbihAc3RhdGUtc3VjY2Vzcy1iZywgLTEwKSwgNSUpO1xuXG5Ac3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICBAYnJhbmQtaW5mbztcbkBzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgICNkOWVkZjc7XG5Ac3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oc3BpbihAc3RhdGUtaW5mby1iZywgLTEwKSwgNyUpO1xuXG5Ac3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICBAYnJhbmQtd2FybmluZztcbkBzdGF0ZS13YXJuaW5nLWJnOiAgICAgICAgICAgICNmY2Y4ZTM7XG5Ac3RhdGUtd2FybmluZy1ib3JkZXI6ICAgICAgICBkYXJrZW4oc3BpbihAc3RhdGUtd2FybmluZy1iZywgLTEwKSwgNSUpO1xuXG5Ac3RhdGUtZGFuZ2VyLXRleHQ6ICAgICAgICAgICBAYnJhbmQtZGFuZ2VyO1xuQHN0YXRlLWRhbmdlci1iZzogICAgICAgICAgICAgI2YyZGVkZTtcbkBzdGF0ZS1kYW5nZXItYm9yZGVyOiAgICAgICAgIGRhcmtlbihzcGluKEBzdGF0ZS1kYW5nZXItYmcsIC0xMCksIDUlKTtcblxuXG4vLyBDb2RlXG4vL1xuLy8jI1xuXG5AY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAjYzcyNTRlO1xuQGNvZGUtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y5ZjJmNDtcblxuQGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgQGludmVyc2U7XG5Aa2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICBAYnJhbmQtcHJpbWFyeTtcblxuQHByZS1iZzogICAgICAgICAgICAgICAgICAgICAgQGludmVyc2U7XG5AcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICBpbmhlcml0O1xuQHByZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgbWl4KEBicmFuZC1wcmltYXJ5LCBAaW52ZXJzZSwgMTIlKTtcbkBwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgIDM0MHB4O1xuQHByZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgQGJvcmRlci1yYWRpdXMtbGFyZ2U7XG5cblxuLy8gVHlwZVxuLy9cbi8vIyNcblxuLy8qKiBUZXh0IG11dGVkIGNvbG9yXG5AdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICBAZ3JheS1saWdodDtcbi8vKiogQWJicmV2aWF0aW9ucyBhbmQgYWNyb255bXMgYm9yZGVyIGNvbG9yXG5AYWJici1ib3JkZXItY29sb3I6ICAgICAgICAgICBAZ3JheS1saWdodDtcbi8vKiogSGVhZGluZ3Mgc21hbGwgY29sb3JcbkBoZWFkaW5ncy1zbWFsbC1jb2xvcjogICAgICAgIG1peChAYnJhbmQtcHJpbWFyeSwgQGludmVyc2UsIDEyJSk7XG4vLyoqIEJsb2NrcXVvdGUgc21hbGwgY29sb3JcbkBibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgIGluaGVyaXQ7XG4vLyoqIEJsb2NrcXVvdGUgYm9yZGVyIGNvbG9yXG5AYmxvY2txdW90ZS1ib3JkZXItY29sb3I6ICAgICBtaXgoQGJyYW5kLXByaW1hcnksIEBpbnZlcnNlLCAxMiUpO1xuLy8qKiBQYWdlIGhlYWRlciBib3JkZXIgY29sb3JcbkBwYWdlLWhlYWRlci1ib3JkZXItY29sb3I6ICAgIG1peChAYnJhbmQtcHJpbWFyeSwgQGludmVyc2UsIDEyJSk7XG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy9cbi8vIyNcblxuLy8qKiBIciBib3JkZXIgY29sb3JcbkBoci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgIG1peChAYnJhbmQtcHJpbWFyeSwgQGludmVyc2UsIDYzJSk7XG5cbi8vKiogSG9yaXpvbnRhbCBmb3JtcyAmIGxpc3RzXG5AY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsOiAxODBweDtcbiIsIi8vXG4vLyBHcmlkIHN5c3RlbVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG4uY29udGFpbmVyIHtcbiAgLmNvbnRhaW5lci1maXhlZCgpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikge1xuICAgIHdpZHRoOiBAY29udGFpbmVyLXNtO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLW1kLW1pbikge1xuICAgIHdpZHRoOiBAY29udGFpbmVyLW1kO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLWxnLW1pbikge1xuICAgIHdpZHRoOiBAY29udGFpbmVyLWxnO1xuICB9XG59XG5cblxuLy8gRmx1aWQgY29udGFpbmVyXG4vL1xuLy8gVXRpbGl6ZXMgdGhlIG1peGluIG1lYW50IGZvciBmaXhlZCB3aWR0aCBjb250YWluZXJzLCBidXQgd2l0aG91dCBhbnkgZGVmaW5lZFxuLy8gd2lkdGggZm9yIGZsdWlkLCBmdWxsIHdpZHRoIGxheW91dHMuXG5cbi5jb250YWluZXItZmx1aWQge1xuICAuY29udGFpbmVyLWZpeGVkKCk7XG59XG5cblxuLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIGFuZCBjbGVhciB0aGUgZmxvYXRzIG9mIHlvdXIgY29sdW1ucy5cblxuLnJvdyB7XG4gIC5tYWtlLXJvdygpO1xufVxuXG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbi5tYWtlLWdyaWQtY29sdW1ucygpO1xuXG5cbi8vIEV4dHJhIHNtYWxsIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgZXh0cmEgc21hbGwgZGV2aWNlcyBsaWtlXG4vLyBzbWFydHBob25lcy5cblxuLm1ha2UtZ3JpZCh4cyk7XG5cblxuLy8gU21hbGwgZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgc21hbGwgZGV2aWNlIHJhbmdlLCBmcm9tIHBob25lc1xuLy8gdG8gdGFibGV0cy5cblxuQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tc20tbWluKSB7XG4gIC5tYWtlLWdyaWQoc20pO1xufVxuXG5cbi8vIE1lZGl1bSBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBkZXNrdG9wIGRldmljZSByYW5nZS5cblxuQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbWQtbWluKSB7XG4gIC5tYWtlLWdyaWQobWQpO1xufVxuXG5cbi8vIExhcmdlIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIGxhcmdlIGRlc2t0b3AgZGV2aWNlIHJhbmdlLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1sZy1taW4pIHtcbiAgLm1ha2UtZ3JpZChsZyk7XG59XG4iLCIvLyBDbGVhcmZpeFxuLy9cbi8vIEZvciBtb2Rlcm4gYnJvd3NlcnNcbi8vIDEuIFRoZSBzcGFjZSBjb250ZW50IGlzIG9uZSB3YXkgdG8gYXZvaWQgYW4gT3BlcmEgYnVnIHdoZW4gdGhlXG4vLyAgICBjb250ZW50ZWRpdGFibGUgYXR0cmlidXRlIGlzIGluY2x1ZGVkIGFueXdoZXJlIGVsc2UgaW4gdGhlIGRvY3VtZW50LlxuLy8gICAgT3RoZXJ3aXNlIGl0IGNhdXNlcyBzcGFjZSB0byBhcHBlYXIgYXQgdGhlIHRvcCBhbmQgYm90dG9tIG9mIGVsZW1lbnRzXG4vLyAgICB0aGF0IGFyZSBjbGVhcmZpeGVkLlxuLy8gMi4gVGhlIHVzZSBvZiBgdGFibGVgIHJhdGhlciB0aGFuIGBibG9ja2AgaXMgb25seSBuZWNlc3NhcnkgaWYgdXNpbmdcbi8vICAgIGA6YmVmb3JlYCB0byBjb250YWluIHRoZSB0b3AtbWFyZ2lucyBvZiBjaGlsZCBlbGVtZW50cy5cbi8vXG4vLyBTb3VyY2U6IGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrL1xuXG4uY2xlYXJmaXgoKSB7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjsgLy8gMVxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAyXG4gIH1cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgQGdyaWQtY29sdW1uc2AuXG5cbi5tYWtlLWdyaWQtY29sdW1ucygpIHtcbiAgLy8gQ29tbW9uIHN0eWxlcyBmb3IgYWxsIHNpemVzIG9mIGdyaWQgY29sdW1ucywgd2lkdGhzIDEtMTJcbiAgLmNvbChAaW5kZXgpIHsgLy8gaW5pdGlhbFxuICAgIEBpdGVtOiB+XCIuY29sLXhzLUB7aW5kZXh9LCAuY29sLXNtLUB7aW5kZXh9LCAuY29sLW1kLUB7aW5kZXh9LCAuY29sLWxnLUB7aW5kZXh9XCI7XG4gICAgLmNvbCgoQGluZGV4ICsgMSksIEBpdGVtKTtcbiAgfVxuICAuY29sKEBpbmRleCwgQGxpc3QpIHdoZW4gKEBpbmRleCA9PCBAZ3JpZC1jb2x1bW5zKSB7IC8vIGdlbmVyYWw7IFwiPTxcIiBpc24ndCBhIHR5cG9cbiAgICBAaXRlbTogflwiLmNvbC14cy1Ae2luZGV4fSwgLmNvbC1zbS1Ae2luZGV4fSwgLmNvbC1tZC1Ae2luZGV4fSwgLmNvbC1sZy1Ae2luZGV4fVwiO1xuICAgIC5jb2woKEBpbmRleCArIDEpLCB+XCJAe2xpc3R9LCBAe2l0ZW19XCIpO1xuICB9XG4gIC5jb2woQGluZGV4LCBAbGlzdCkgd2hlbiAoQGluZGV4ID4gQGdyaWQtY29sdW1ucykgeyAvLyB0ZXJtaW5hbFxuICAgIEB7bGlzdH0ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gY29sbGFwc2luZyB3aGVuIGVtcHR5XG4gICAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgICAvLyBJbm5lciBndXR0ZXIgdmlhIHBhZGRpbmdcbiAgICAgIHBhZGRpbmctbGVmdDogIChAZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IChAZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgICB9XG4gIH1cbiAgLmNvbCgxKTsgLy8ga2lja3N0YXJ0IGl0XG59XG5cbi5mbG9hdC1ncmlkLWNvbHVtbnMoQGNsYXNzKSB7XG4gIC5jb2woQGluZGV4KSB7IC8vIGluaXRpYWxcbiAgICBAaXRlbTogflwiLmNvbC1Ae2NsYXNzfS1Ae2luZGV4fVwiO1xuICAgIC5jb2woKEBpbmRleCArIDEpLCBAaXRlbSk7XG4gIH1cbiAgLmNvbChAaW5kZXgsIEBsaXN0KSB3aGVuIChAaW5kZXggPTwgQGdyaWQtY29sdW1ucykgeyAvLyBnZW5lcmFsXG4gICAgQGl0ZW06IH5cIi5jb2wtQHtjbGFzc30tQHtpbmRleH1cIjtcbiAgICAuY29sKChAaW5kZXggKyAxKSwgflwiQHtsaXN0fSwgQHtpdGVtfVwiKTtcbiAgfVxuICAuY29sKEBpbmRleCwgQGxpc3QpIHdoZW4gKEBpbmRleCA+IEBncmlkLWNvbHVtbnMpIHsgLy8gdGVybWluYWxcbiAgICBAe2xpc3R9IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgfVxuICAuY29sKDEpOyAvLyBraWNrc3RhcnQgaXRcbn1cblxuLmNhbGMtZ3JpZC1jb2x1bW4oQGluZGV4LCBAY2xhc3MsIEB0eXBlKSB3aGVuIChAdHlwZSA9IHdpZHRoKSBhbmQgKEBpbmRleCA+IDApIHtcbiAgLmNvbC1Ae2NsYXNzfS1Ae2luZGV4fSB7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKEBpbmRleCAvIEBncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuLmNhbGMtZ3JpZC1jb2x1bW4oQGluZGV4LCBAY2xhc3MsIEB0eXBlKSB3aGVuIChAdHlwZSA9IHB1c2gpIGFuZCAoQGluZGV4ID4gMCkge1xuICAuY29sLUB7Y2xhc3N9LXB1c2gtQHtpbmRleH0ge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKEBpbmRleCAvIEBncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuLmNhbGMtZ3JpZC1jb2x1bW4oQGluZGV4LCBAY2xhc3MsIEB0eXBlKSB3aGVuIChAdHlwZSA9IHB1c2gpIGFuZCAoQGluZGV4ID0gMCkge1xuICAuY29sLUB7Y2xhc3N9LXB1c2gtMCB7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuLmNhbGMtZ3JpZC1jb2x1bW4oQGluZGV4LCBAY2xhc3MsIEB0eXBlKSB3aGVuIChAdHlwZSA9IHB1bGwpIGFuZCAoQGluZGV4ID4gMCkge1xuICAuY29sLUB7Y2xhc3N9LXB1bGwtQHtpbmRleH0ge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKChAaW5kZXggLyBAZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbi5jYWxjLWdyaWQtY29sdW1uKEBpbmRleCwgQGNsYXNzLCBAdHlwZSkgd2hlbiAoQHR5cGUgPSBwdWxsKSBhbmQgKEBpbmRleCA9IDApIHtcbiAgLmNvbC1Ae2NsYXNzfS1wdWxsLTAge1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG59XG4uY2FsYy1ncmlkLWNvbHVtbihAaW5kZXgsIEBjbGFzcywgQHR5cGUpIHdoZW4gKEB0eXBlID0gb2Zmc2V0KSB7XG4gIC5jb2wtQHtjbGFzc30tb2Zmc2V0LUB7aW5kZXh9IHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoQGluZGV4IC8gQGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5cbi8vIEJhc2ljIGxvb3BpbmcgaW4gTEVTU1xuLmxvb3AtZ3JpZC1jb2x1bW5zKEBpbmRleCwgQGNsYXNzLCBAdHlwZSkgd2hlbiAoQGluZGV4ID49IDApIHtcbiAgLmNhbGMtZ3JpZC1jb2x1bW4oQGluZGV4LCBAY2xhc3MsIEB0eXBlKTtcbiAgLy8gbmV4dCBpdGVyYXRpb25cbiAgLmxvb3AtZ3JpZC1jb2x1bW5zKChAaW5kZXggLSAxKSwgQGNsYXNzLCBAdHlwZSk7XG59XG5cbi8vIENyZWF0ZSBncmlkIGZvciBzcGVjaWZpYyBjbGFzc1xuLm1ha2UtZ3JpZChAY2xhc3MpIHtcbiAgLmZsb2F0LWdyaWQtY29sdW1ucyhAY2xhc3MpO1xuICAubG9vcC1ncmlkLWNvbHVtbnMoQGdyaWQtY29sdW1ucywgQGNsYXNzLCB3aWR0aCk7XG4gIC5sb29wLWdyaWQtY29sdW1ucyhAZ3JpZC1jb2x1bW5zLCBAY2xhc3MsIHB1bGwpO1xuICAubG9vcC1ncmlkLWNvbHVtbnMoQGdyaWQtY29sdW1ucywgQGNsYXNzLCBwdXNoKTtcbiAgLmxvb3AtZ3JpZC1jb2x1bW5zKEBncmlkLWNvbHVtbnMsIEBjbGFzcywgb2Zmc2V0KTtcbn1cbiIsIi8vXG4vLyBUYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAdGFibGUtYmc7XG59XG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6IEB0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiBAdGFibGUtY2VsbC1wYWRkaW5nO1xuICBjb2xvcjogQHRleHQtbXV0ZWQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG50aCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cblxuLy8gQmFzZWxpbmUgc3R5bGVzXG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IEBsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgLy8gQ2VsbHNcbiAgPiB0aGVhZCxcbiAgPiB0Ym9keSxcbiAgPiB0Zm9vdCB7XG4gICAgPiB0ciB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IEB0YWJsZS1jZWxsLXBhZGRpbmc7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIEB0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIEJvdHRvbSBhbGlnbiBmb3IgY29sdW1uIGhlYWRpbmdzXG4gID4gdGhlYWQgPiB0ciA+IHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBAdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG4gIC8vIFJlbW92ZSB0b3AgYm9yZGVyIGZyb20gdGhlYWQgYnkgZGVmYXVsdFxuICA+IGNhcHRpb24gKyB0aGVhZCxcbiAgPiBjb2xncm91cCArIHRoZWFkLFxuICA+IHRoZWFkOmZpcnN0LWNoaWxkIHtcbiAgICA+IHRyOmZpcnN0LWNoaWxkIHtcbiAgICAgID4gdGgsXG4gICAgICA+IHRkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gQWNjb3VudCBmb3IgbXVsdGlwbGUgdGJvZHkgaW5zdGFuY2VzXG4gID4gdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIEB0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAvLyBOZXN0aW5nXG4gIC50YWJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGJvZHktYmc7XG4gIH1cbn1cblxuXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG5cbi50YWJsZS1jb25kZW5zZWQge1xuICA+IHRoZWFkLFxuICA+IHRib2R5LFxuICA+IHRmb290IHtcbiAgICA+IHRyIHtcbiAgICAgID4gdGgsXG4gICAgICA+IHRkIHtcbiAgICAgICAgcGFkZGluZzogQHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gQm9yZGVyZWQgdmVyc2lvblxuLy9cbi8vIEFkZCBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgQHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgPiB0aGVhZCxcbiAgPiB0Ym9keSxcbiAgPiB0Zm9vdCB7XG4gICAgPiB0ciB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIEB0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gdGhlYWQgPiB0ciB7XG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgPiB0Ym9keSA+IHRyOm50aC1jaGlsZChvZGQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAdGFibGUtYmctYWNjZW50O1xuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICA+IHRib2R5ID4gdHI6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB0YWJsZS1iZy1ob3ZlcjtcbiAgfVxufVxuXG5cbi8vIFRhYmxlIGNlbGwgc2l6aW5nXG4vL1xuLy8gUmVzZXQgZGVmYXVsdCB0YWJsZSBiZWhhdmlvclxuXG50YWJsZSBjb2xbY2xhc3MqPVwiY29sLVwiXSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7IC8vIFByZXZlbnQgYm9yZGVyIGhpZGluZyBpbiBGaXJlZm94IGFuZCBJRTkvMTAgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjIzKVxuICBmbG9hdDogbm9uZTtcbiAgZGlzcGxheTogdGFibGUtY29sdW1uO1xufVxudGFibGUge1xuICB0ZCxcbiAgdGgge1xuICAgICZbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljOyAvLyBQcmV2ZW50IGJvcmRlciBoaWRpbmcgaW4gRmlyZWZveCBhbmQgSUU5LzEwIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTYyMylcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJsZSBiYWNrZ3JvdW5kc1xuLy9cbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4vLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuXG4vLyBHZW5lcmF0ZSB0aGUgY29udGV4dHVhbCB2YXJpYW50c1xuLnRhYmxlLXJvdy12YXJpYW50KGFjdGl2ZTsgQHRhYmxlLWJnLWFjdGl2ZSk7XG4udGFibGUtcm93LXZhcmlhbnQoc3VjY2VzczsgQHN0YXRlLXN1Y2Nlc3MtYmcpO1xuLnRhYmxlLXJvdy12YXJpYW50KGluZm87IEBzdGF0ZS1pbmZvLWJnKTtcbi50YWJsZS1yb3ctdmFyaWFudCh3YXJuaW5nOyBAc3RhdGUtd2FybmluZy1iZyk7XG4udGFibGUtcm93LXZhcmlhbnQoZGFuZ2VyOyBAc3RhdGUtZGFuZ2VyLWJnKTtcblxuXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xuLy9cbi8vIFdyYXAgeW91ciB0YWJsZXMgaW4gYC50YWJsZS1yZXNwb25zaXZlYCBhbmQgd2UnbGwgbWFrZSB0aGVtIG1vYmlsZSBmcmllbmRseVxuLy8gYnkgZW5hYmxpbmcgaG9yaXpvbnRhbCBzY3JvbGxpbmcuIE9ubHkgYXBwbGllcyA8NzY4cHguIEV2ZXJ5dGhpbmcgYWJvdmUgdGhhdFxuLy8gd2lsbCBkaXNwbGF5IG5vcm1hbGx5LlxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDAuMDElOyAvLyBXb3JrYXJvdW5kIGZvciBJRTkgYnVnIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNDgzNylcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBAc2NyZWVuLXhzLW1heCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IChAbGluZS1oZWlnaHQtY29tcHV0ZWQgKiAwLjc1KTtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgQHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICAgIC8vIFRpZ2h0ZW4gdXAgc3BhY2luZ1xuICAgID4gLnRhYmxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgIC8vIEVuc3VyZSB0aGUgY29udGVudCBkb2Vzbid0IHdyYXBcbiAgICAgID4gdGhlYWQsXG4gICAgICA+IHRib2R5LFxuICAgICAgPiB0Zm9vdCB7XG4gICAgICAgID4gdHIge1xuICAgICAgICAgID4gdGgsXG4gICAgICAgICAgPiB0ZCB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNwZWNpYWwgb3ZlcnJpZGVzIGZvciB0aGUgYm9yZGVyZWQgdGFibGVzXG4gICAgPiAudGFibGUtYm9yZGVyZWQge1xuICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAvLyBOdWtlIHRoZSBhcHByb3ByaWF0ZSBib3JkZXJzIHNvIHRoYXQgdGhlIHBhcmVudCBjYW4gaGFuZGxlIHRoZW1cbiAgICAgID4gdGhlYWQsXG4gICAgICA+IHRib2R5LFxuICAgICAgPiB0Zm9vdCB7XG4gICAgICAgID4gdHIge1xuICAgICAgICAgID4gdGg6Zmlyc3QtY2hpbGQsXG4gICAgICAgICAgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgPiB0aDpsYXN0LWNoaWxkLFxuICAgICAgICAgID4gdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIE9ubHkgbnVrZSB0aGUgbGFzdCByb3cncyBib3R0b20tYm9yZGVyIGluIGB0Ym9keWAgYW5kIGB0Zm9vdGAgc2luY2VcbiAgICAgIC8vIGNoYW5jZXMgYXJlIHRoZXJlIHdpbGwgYmUgb25seSBvbmUgYHRyYCBpbiBhIGB0aGVhZGAgYW5kIHRoYXQgd291bGRcbiAgICAgIC8vIHJlbW92ZSB0aGUgYm9yZGVyIGFsdG9nZXRoZXIuXG4gICAgICA+IHRib2R5LFxuICAgICAgPiB0Zm9vdCB7XG4gICAgICAgID4gdHI6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgPiB0aCxcbiAgICAgICAgICA+IHRkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG4udGFibGUtcm93LXZhcmlhbnQoQHN0YXRlOyBAYmFja2dyb3VuZCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUgPiB0aGVhZCA+IHRyLFxuICAudGFibGUgPiB0Ym9keSA+IHRyLFxuICAudGFibGUgPiB0Zm9vdCA+IHRyIHtcbiAgICA+IHRkLkB7c3RhdGV9LFxuICAgID4gdGguQHtzdGF0ZX0sXG4gICAgJi5Ae3N0YXRlfSA+IHRkLFxuICAgICYuQHtzdGF0ZX0gPiB0aCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyIHtcbiAgICA+IHRkLkB7c3RhdGV9OmhvdmVyLFxuICAgID4gdGguQHtzdGF0ZX06aG92ZXIsXG4gICAgJi5Ae3N0YXRlfTpob3ZlciA+IHRkLFxuICAgICY6aG92ZXIgPiAuQHtzdGF0ZX0sXG4gICAgJi5Ae3N0YXRlfTpob3ZlciA+IHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEZvcm1zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIE5vcm1hbGl6ZSBub24tY29udHJvbHNcbi8vXG4vLyBSZXN0eWxlIGFuZCBiYXNlbGluZSBub24tY29udHJvbCBmb3JtIGVsZW1lbnRzLlxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xuICAvLyBDaHJvbWUgYW5kIEZpcmVmb3ggc2V0IGEgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4gIC8vIHNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGl0IGJlaGF2ZXMgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTkuXG4gIG1pbi13aWR0aDogMDtcbn1cblxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiBAbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc2l6ZTogKEBmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogQGxlZ2VuZC1jb2xvcjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQGxlZ2VuZC1ib3JkZXItY29sb3I7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIEZvcmNlIElFOCB0byB3cmFwIGxvbmcgY29udGVudCAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTMxNDEpXG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cblxuLy8gTm9ybWFsaXplIGZvcm0gY29udHJvbHNcbi8vXG4vLyBXaGlsZSBtb3N0IG9mIG91ciBmb3JtIHN0eWxlcyByZXF1aXJlIGV4dHJhIGNsYXNzZXMsIHNvbWUgYmFzaWMgbm9ybWFsaXphdGlvblxuLy8gaXMgcmVxdWlyZWQgdG8gZW5zdXJlIG9wdGltdW0gZGlzcGxheSB3aXRoIG9yIHdpdGhvdXQgdGhvc2UgY2xhc3NlcyB0byBiZXR0ZXJcbi8vIGFkZHJlc3MgYnJvd3NlciBpbmNvbnNpc3RlbmNpZXMuXG5cbi8vIE92ZXJyaWRlIGNvbnRlbnQtYm94IGluIE5vcm1hbGl6ZSAoKiBpc24ndCBzcGVjaWZpYyBlbm91Z2gpXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLmJveC1zaXppbmcoYm9yZGVyLWJveCk7XG59XG5cbi8vIFBvc2l0aW9uIHJhZGlvcyBhbmQgY2hlY2tib3hlcyBiZXR0ZXJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIG1hcmdpbjogNHB4IDAgMDtcbiAgbWFyZ2luLXRvcDogMXB4IFxcOTsgLy8gSUU4LTlcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLy8gU2V0IHRoZSBoZWlnaHQgb2YgZmlsZSBjb250cm9scyB0byBtYXRjaCB0ZXh0IGlucHV0c1xuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gTWFrZSByYW5nZSBpbnB1dHMgYmVoYXZlIGxpa2UgdGV4dHVhbCBmb3JtIGNvbnRyb2xzXG5pbnB1dFt0eXBlPVwicmFuZ2VcIl0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIE1ha2UgbXVsdGlwbGUgc2VsZWN0IGVsZW1lbnRzIGhlaWdodCBub3QgZml4ZWRcbnNlbGVjdFttdWx0aXBsZV0sXG5zZWxlY3Rbc2l6ZV0ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEZvY3VzIGZvciBmaWxlLCByYWRpbywgYW5kIGNoZWNrYm94XG5pbnB1dFt0eXBlPVwiZmlsZVwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmb2N1cyB7XG4gIC50YWItZm9jdXMoKTtcbn1cblxuLy8gQWRqdXN0IG91dHB1dCBlbGVtZW50XG5vdXRwdXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy10b3A6IChAcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XG4gIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1iYXNlO1xuICBsaW5lLWhlaWdodDogQGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiBAaW5wdXQtY29sb3I7XG59XG5cblxuLy8gQ29tbW9uIGZvcm0gY29udHJvbHNcbi8vXG4vLyBTaGFyZWQgc2l6ZSBhbmQgdHlwZSByZXNldHMgZm9yIGZvcm0gY29udHJvbHMuIEFwcGx5IGAuZm9ybS1jb250cm9sYCB0byBhbnlcbi8vIG9mIHRoZSBmb2xsb3dpbmcgZm9ybSBjb250cm9sczpcbi8vXG4vLyBzZWxlY3Rcbi8vIHRleHRhcmVhXG4vLyBpbnB1dFt0eXBlPVwidGV4dFwiXVxuLy8gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl1cbi8vIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXVxuLy8gaW5wdXRbdHlwZT1cImRhdGVcIl1cbi8vIGlucHV0W3R5cGU9XCJtb250aFwiXVxuLy8gaW5wdXRbdHlwZT1cInRpbWVcIl1cbi8vIGlucHV0W3R5cGU9XCJ3ZWVrXCJdXG4vLyBpbnB1dFt0eXBlPVwibnVtYmVyXCJdXG4vLyBpbnB1dFt0eXBlPVwiZW1haWxcIl1cbi8vIGlucHV0W3R5cGU9XCJ1cmxcIl1cbi8vIGlucHV0W3R5cGU9XCJzZWFyY2hcIl1cbi8vIGlucHV0W3R5cGU9XCJ0ZWxcIl1cbi8vIGlucHV0W3R5cGU9XCJjb2xvclwiXVxuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IEBpbnB1dC1oZWlnaHQtYmFzZTsgLy8gTWFrZSBpbnB1dHMgYXQgbGVhc3QgdGhlIGhlaWdodCBvZiB0aGVpciBidXR0b24gY291bnRlcnBhcnQgKGJhc2UgbGluZS1oZWlnaHQgKyBwYWRkaW5nICsgYm9yZGVyKVxuICBwYWRkaW5nOiBAcGFkZGluZy1iYXNlLXZlcnRpY2FsIEBwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiBAZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6IEBpbnB1dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGlucHV0LWJnO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XG4gIGJvcmRlcjogMXB4IHNvbGlkIEBpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6IEBpbnB1dC1ib3JkZXItcmFkaXVzO1xuICAuYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSk7XG4gIC50cmFuc2l0aW9uKH5cImJvcmRlci1jb2xvciBlYXNlLWluLW91dCAuMTVzLCBib3gtc2hhZG93IGVhc2UtaW4tb3V0IC4xNXNcIik7XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICAuZm9ybS1jb250cm9sLWZvY3VzKCk7XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgLnBsYWNlaG9sZGVyKCk7XG5cbiAgLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmW2Rpc2FibGVkXSxcbiAgJltyZWFkb25seV0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBjdXJzb3I6IEBjdXJzb3ItZGlzYWJsZWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGlucHV0LWJnLWRpc2FibGVkO1xuICAgIG9wYWNpdHk6IDE7IC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudFxuICB9XG5cbiAgLy8gUmVzZXQgaGVpZ2h0IGZvciBgdGV4dGFyZWFgc1xuICB0ZXh0YXJlYSYge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG5cbi8vIFNlYXJjaCBpbnB1dHMgaW4gaU9TXG4vL1xuLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuLy8gYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4vLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5cbi8vIFNwZWNpYWwgc3R5bGVzIGZvciBpT1MgdGVtcG9yYWwgaW5wdXRzXG4vL1xuLy8gSW4gTW9iaWxlIFNhZmFyaSwgc2V0dGluZyBgZGlzcGxheTogYmxvY2tgIG9uIHRlbXBvcmFsIGlucHV0cyBjYXVzZXMgdGhlXG4vLyB0ZXh0IHdpdGhpbiB0aGUgaW5wdXQgdG8gYmVjb21lIHZlcnRpY2FsbHkgbWlzYWxpZ25lZC4gQXMgYSB3b3JrYXJvdW5kLCB3ZVxuLy8gc2V0IGEgcGl4ZWwgbGluZS1oZWlnaHQgdGhhdCBtYXRjaGVzIHRoZSBnaXZlbiBoZWlnaHQgb2YgdGhlIGlucHV0LCBidXQgb25seVxuLy8gZm9yIFNhZmFyaS5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMCkge1xuICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4gIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdIHtcbiAgICBsaW5lLWhlaWdodDogQGlucHV0LWhlaWdodC1iYXNlO1xuICB9XG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdLmlucHV0LXNtLFxuICBpbnB1dFt0eXBlPVwidGltZVwiXS5pbnB1dC1zbSxcbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLmlucHV0LXNtLFxuICBpbnB1dFt0eXBlPVwibW9udGhcIl0uaW5wdXQtc20ge1xuICAgIGxpbmUtaGVpZ2h0OiBAaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICB9XG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdLmlucHV0LWxnLFxuICBpbnB1dFt0eXBlPVwidGltZVwiXS5pbnB1dC1sZyxcbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLmlucHV0LWxnLFxuICBpbnB1dFt0eXBlPVwibW9udGhcIl0uaW5wdXQtbGcge1xuICAgIGxpbmUtaGVpZ2h0OiBAaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICB9XG59XG5cblxuLy8gRm9ybSBncm91cHNcbi8vXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXG4vLyBob3Jpem9udGFsIGZvcm1zLCB1c2UgdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLlxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gSW5kZW50IHRoZSBsYWJlbHMgdG8gcG9zaXRpb24gcmFkaW9zL2NoZWNrYm94ZXMgYXMgaGFuZ2luZyBjb250cm9scy5cblxuLnJhZGlvLFxuLmNoZWNrYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICBsYWJlbCB7XG4gICAgbWluLWhlaWdodDogQGxpbmUtaGVpZ2h0LWNvbXB1dGVkOyAvLyBFbnN1cmUgdGhlIGlucHV0IGRvZXNuJ3QganVtcCB3aGVuIHRoZXJlIGlzIG5vIHRleHRcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbi5yYWRpby1pbmxpbmUgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbi5jaGVja2JveC1pbmxpbmUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gIG1hcmdpbi10b3A6IDRweCBcXDk7XG59XG5cbi5yYWRpbyArIC5yYWRpbyxcbi5jaGVja2JveCArIC5jaGVja2JveCB7XG4gIG1hcmdpbi10b3A6IC01cHg7IC8vIE1vdmUgdXAgc2libGluZyByYWRpb3Mgb3IgY2hlY2tib3hlcyBmb3IgdGlnaHRlciBzcGFjaW5nXG59XG5cbi8vIFJhZGlvcyBhbmQgY2hlY2tib3hlcyBvbiBzYW1lIGxpbmVcbi5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5yYWRpby1pbmxpbmUgKyAucmFkaW8taW5saW5lLFxuLmNoZWNrYm94LWlubGluZSArIC5jaGVja2JveC1pbmxpbmUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tbGVmdDogMTBweDsgLy8gc3BhY2Ugb3V0IGNvbnNlY3V0aXZlIGlubGluZSBjb250cm9sc1xufVxuXG4vLyBBcHBseSBzYW1lIGRpc2FibGVkIGN1cnNvciB0d2VhayBhcyBmb3IgaW5wdXRzXG4vLyBTb21lIHNwZWNpYWwgY2FyZSBpcyBuZWVkZWQgYmVjYXVzZSA8bGFiZWw+cyBkb24ndCBpbmhlcml0IHRoZWlyIHBhcmVudCdzIGBjdXJzb3JgLlxuLy9cbi8vIE5vdGU6IE5laXRoZXIgcmFkaW9zIG5vciBjaGVja2JveGVzIGNhbiBiZSByZWFkb25seS5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiBAY3Vyc29yLWRpc2FibGVkO1xuICB9XG59XG4vLyBUaGVzZSBjbGFzc2VzIGFyZSB1c2VkIGRpcmVjdGx5IG9uIDxsYWJlbD5zXG4ucmFkaW8taW5saW5lLFxuLmNoZWNrYm94LWlubGluZSB7XG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBjdXJzb3I6IEBjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cbn1cbi8vIFRoZXNlIGNsYXNzZXMgYXJlIHVzZWQgb24gZWxlbWVudHMgd2l0aCA8bGFiZWw+IGRlc2NlbmRhbnRzXG4ucmFkaW8sXG4uY2hlY2tib3gge1xuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgbGFiZWwge1xuICAgICAgY3Vyc29yOiBAY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFN0YXRpYyBmb3JtIGNvbnRyb2wgdGV4dFxuLy9cbi8vIEFwcGx5IGNsYXNzIHRvIGEgYHBgIGVsZW1lbnQgdG8gbWFrZSBhbnkgc3RyaW5nIG9mIHRleHQgYWxpZ24gd2l0aCBsYWJlbHMgaW5cbi8vIGEgaG9yaXpvbnRhbCBmb3JtIGxheW91dC5cblxuLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAvLyBTaXplIGl0IGFwcHJvcHJpYXRlbHkgbmV4dCB0byByZWFsIGZvcm0gY29udHJvbHNcbiAgcGFkZGluZy10b3A6IChAcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XG4gIHBhZGRpbmctYm90dG9tOiAoQHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xuICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gZnJvbSBgcGBcbiAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAmLmlucHV0LWxnLFxuICAmLmlucHV0LXNtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cblxuLmlucHV0LXNtLFxuLmZvcm0tZ3JvdXAtc20gLmZvcm0tY29udHJvbCB7XG4gIC5pbnB1dC1zaXplKEBpbnB1dC1oZWlnaHQtc21hbGw7IEBwYWRkaW5nLXNtYWxsLXZlcnRpY2FsOyBAcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsOyBAZm9udC1zaXplLXNtYWxsOyBAbGluZS1oZWlnaHQtc21hbGw7IEBpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsKTtcbn1cblxuLmlucHV0LWxnLFxuLmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbCB7XG4gIC5pbnB1dC1zaXplKEBpbnB1dC1oZWlnaHQtbGFyZ2U7IEBwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOyBAcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOyBAZm9udC1zaXplLWxhcmdlOyBAbGluZS1oZWlnaHQtbGFyZ2U7IEBpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlKTtcbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgZmVlZGJhY2sgc3RhdGVzXG4vL1xuLy8gQXBwbHkgY29udGV4dHVhbCBhbmQgc2VtYW50aWMgc3RhdGVzIHRvIGluZGl2aWR1YWwgZm9ybSBjb250cm9scy5cblxuLmhhcy1mZWVkYmFjayB7XG4gIC8vIEVuYWJsZSBhYnNvbHV0ZSBwb3NpdGlvbmluZ1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLy8gRW5zdXJlIGljb25zIGRvbid0IG92ZXJsYXAgdGV4dFxuICAuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAoQGlucHV0LWhlaWdodC1iYXNlICogMS4yNSk7XG4gIH1cbn1cbi8vIEZlZWRiYWNrIGljb24gKHJlcXVpcmVzIC5nbHlwaGljb24gY2xhc3Nlcylcbi5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDI7IC8vIEVuc3VyZSBpY29uIGlzIGFib3ZlIGlucHV0IGdyb3Vwc1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IEBpbnB1dC1oZWlnaHQtYmFzZTtcbiAgaGVpZ2h0OiBAaW5wdXQtaGVpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiBAaW5wdXQtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uaW5wdXQtbGcgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgd2lkdGg6IEBpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gIGhlaWdodDogQGlucHV0LWhlaWdodC1sYXJnZTtcbiAgbGluZS1oZWlnaHQ6IEBpbnB1dC1oZWlnaHQtbGFyZ2U7XG59XG4uaW5wdXQtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgd2lkdGg6IEBpbnB1dC1oZWlnaHQtc21hbGw7XG4gIGhlaWdodDogQGlucHV0LWhlaWdodC1zbWFsbDtcbiAgbGluZS1oZWlnaHQ6IEBpbnB1dC1oZWlnaHQtc21hbGw7XG59XG5cbi8vIEZlZWRiYWNrIHN0YXRlc1xuLmhhcy1zdWNjZXNzIHtcbiAgLmZvcm0tY29udHJvbC12YWxpZGF0aW9uKEBzdGF0ZS1zdWNjZXNzLXRleHQ7IEBzdGF0ZS1zdWNjZXNzLXRleHQ7IEBzdGF0ZS1zdWNjZXNzLWJnKTtcbn1cbi5oYXMtd2FybmluZyB7XG4gIC5mb3JtLWNvbnRyb2wtdmFsaWRhdGlvbihAc3RhdGUtd2FybmluZy10ZXh0OyBAc3RhdGUtd2FybmluZy10ZXh0OyBAc3RhdGUtd2FybmluZy1iZyk7XG59XG4uaGFzLWVycm9yIHtcbiAgLmZvcm0tY29udHJvbC12YWxpZGF0aW9uKEBzdGF0ZS1kYW5nZXItdGV4dDsgQHN0YXRlLWRhbmdlci10ZXh0OyBAc3RhdGUtZGFuZ2VyLWJnKTtcbn1cblxuLy8gUmVwb3NpdGlvbiBmZWVkYmFjayBpY29uIGlmIGlucHV0IGhhcyB2aXNpYmxlIGxhYmVsIGFib3ZlXG4uaGFzLWZlZWRiYWNrIGxhYmVsIHtcblxuICAmIH4gLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgIHRvcDogKEBsaW5lLWhlaWdodC1jb21wdXRlZCArIDUpOyAvLyBIZWlnaHQgb2YgdGhlIGBsYWJlbGAgYW5kIGl0cyBtYXJnaW5cbiAgfVxuICAmLnNyLW9ubHkgfiAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICAgdG9wOiAwO1xuICB9XG59XG5cblxuLy8gSGVscCB0ZXh0XG4vL1xuLy8gQXBwbHkgdG8gYW55IGVsZW1lbnQgeW91IHdpc2ggdG8gY3JlYXRlIGxpZ2h0IHRleHQgZm9yIHBsYWNlbWVudCBpbW1lZGlhdGVseVxuLy8gYmVsb3cgYSBmb3JtIGNvbnRyb2wuIFVzZSBmb3IgZ2VuZXJhbCBoZWxwLCBmb3JtYXR0aW5nLCBvciBpbnN0cnVjdGlvbmFsIHRleHQuXG5cbi5oZWxwLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7IC8vIGFjY291bnQgZm9yIGFueSBlbGVtZW50IHVzaW5nIGhlbHAtYmxvY2tcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjb2xvcjogbGlnaHRlbihAdGV4dC1jb2xvciwgMjUlKTsgLy8gbGlnaHRlbiB0aGUgdGV4dCBzb21lIGZvciBjb250cmFzdFxufVxuXG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgaXMgbWl4aW4tZWQgaW50byBgLm5hdmJhci1mb3JtYCBpbiBuYXZiYXJzLmxlc3MuXG5cbi5mb3JtLWlubGluZSB7XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikge1xuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIEluIG5hdmJhci1mb3JtLCBhbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAuaW5wdXQtZ3JvdXAtYWRkb24sXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuLFxuICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElucHV0IGdyb3VwcyBuZWVkIHRoYXQgMTAwJSB3aWR0aCB0aG91Z2hcbiAgICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoICh3aGljaCBhbHNvIGF2b2lkc1xuICAgIC8vIGEgYnVnIGluIFdlYktpdDogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTY5KS5cbiAgICAucmFkaW8sXG4gICAgLmNoZWNrYm94IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgbGFiZWwge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICAgIC5yYWRpbyBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAvLyBSZS1vdmVycmlkZSB0aGUgZmVlZGJhY2sgaWNvbi5cbiAgICAuaGFzLWZlZWRiYWNrIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgICAgdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEhvcml6b250YWwgZm9ybXNcbi8vXG4vLyBIb3Jpem9udGFsIGZvcm1zIGFyZSBidWlsdCBvbiBncmlkIGNsYXNzZXMgYW5kIGFsbG93IHlvdSB0byBjcmVhdGUgZm9ybXMgd2l0aFxuLy8gbGFiZWxzIG9uIHRoZSBsZWZ0IGFuZCBpbnB1dHMgb24gdGhlIHJpZ2h0LlxuXG4uZm9ybS1ob3Jpem9udGFsIHtcblxuICAvLyBDb25zaXN0ZW50IHZlcnRpY2FsIGFsaWdubWVudCBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXNcbiAgLy9cbiAgLy8gTGFiZWxzIGFsc28gZ2V0IHNvbWUgcmVzZXQgc3R5bGVzLCBidXQgdGhhdCBpcyBzY29wZWQgdG8gYSBtZWRpYSBxdWVyeSBiZWxvdy5cbiAgLnJhZGlvLFxuICAuY2hlY2tib3gsXG4gIC5yYWRpby1pbmxpbmUsXG4gIC5jaGVja2JveC1pbmxpbmUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogKEBwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTsgLy8gRGVmYXVsdCBwYWRkaW5nIHBsdXMgYSBib3JkZXJcbiAgfVxuICAvLyBBY2NvdW50IGZvciBwYWRkaW5nIHdlJ3JlIGFkZGluZyB0byBlbnN1cmUgdGhlIGFsaWdubWVudCBhbmQgb2YgaGVscCB0ZXh0XG4gIC8vIGFuZCBvdGhlciBjb250ZW50IGJlbG93IGl0ZW1zXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94IHtcbiAgICBtaW4taGVpZ2h0OiAoQGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKEBwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKSk7XG4gIH1cblxuICAvLyBNYWtlIGZvcm0gZ3JvdXBzIGJlaGF2ZSBsaWtlIHJvd3NcbiAgLmZvcm0tZ3JvdXAge1xuICAgIC5tYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVzZXQgc3BhY2luZyBhbmQgcmlnaHQgYWxpZ24gbGFiZWxzLCBidXQgc2NvcGUgdG8gbWVkaWEgcXVlcmllcyBzbyB0aGF0XG4gIC8vIGxhYmVscyBvbiBuYXJyb3cgdmlld3BvcnRzIHN0YWNrIHRoZSBzYW1lIGFzIGEgZGVmYXVsdCBmb3JtIGV4YW1wbGUuXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikge1xuICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmctdG9wOiAoQHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpOyAvLyBEZWZhdWx0IHBhZGRpbmcgcGx1cyBhIGJvcmRlclxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbGlkYXRpb24gc3RhdGVzXG4gIC8vXG4gIC8vIFJlcG9zaXRpb24gdGhlIGljb24gYmVjYXVzZSBpdCdzIG5vdyB3aXRoaW4gYSBncmlkIGNvbHVtbiBhbmQgY29sdW1ucyBoYXZlXG4gIC8vIGBwb3NpdGlvbjogcmVsYXRpdmU7YCBvbiB0aGVtLiBBbHNvIGFjY291bnRzIGZvciB0aGUgZ3JpZCBndXR0ZXIgcGFkZGluZy5cbiAgLmhhcy1mZWVkYmFjayAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICByaWdodDogKEBncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICB9XG5cbiAgLy8gRm9ybSBncm91cCBzaXplc1xuICAvL1xuICAvLyBRdWljayB1dGlsaXR5IGNsYXNzIGZvciBhcHBseWluZyBgLmlucHV0LWxnYCBhbmQgYC5pbnB1dC1zbWAgc3R5bGVzIHRvIHRoZVxuICAvLyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoaW4gYSBgLmZvcm0tZ3JvdXBgLlxuICAuZm9ybS1ncm91cC1sZyB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tc20tbWluKSB7XG4gICAgICAuY29udHJvbC1sYWJlbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAoKEBwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICogQGxpbmUtaGVpZ2h0LWxhcmdlKSArIDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9ybS1ncm91cC1zbSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tc20tbWluKSB7XG4gICAgICAuY29udHJvbC1sYWJlbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAoQHBhZGRpbmctc21hbGwtdmVydGljYWwgKyAxKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJvb3RzdHJhcCB2YXJpYWJsZXMuXG5AaW1wb3J0ICd2YXJpYWJsZXMubGVzcyc7XG5cbi8vIE1lZGlhIHF1ZXJ5IHZhcmlhYmxlcy5cbkB0YWJsZXQ6ICB+XCJzY3JlZW4gYW5kIChtaW4td2lkdGg6IEB7c2NyZWVuLXNtLW1pbn0pXCI7XG5Abm9ybWFsOiAgflwic2NyZWVuIGFuZCAobWluLXdpZHRoOiBAe3NjcmVlbi1tZC1taW59KVwiO1xuQHdpZGU6ICAgIH5cInNjcmVlbiBhbmQgKG1pbi13aWR0aDogQHtzY3JlZW4tbGctbWlufSlcIjtcblxuLy8gRHJvcCBzaGFkb3dzLlxuLmJveC1zaGFkb3coQHNoYWRvdykge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IEBzaGFkb3c7XG4gICAgIC1tb3otYm94LXNoYWRvdzogQHNoYWRvdztcbiAgICAgICAgICBib3gtc2hhZG93OiBAc2hhZG93O1xufVxuXG5odG1sIHtcbiAgJi5vdmVybGF5LW9wZW4gLm5hdmJhci1maXhlZC10b3Age1xuICAgIHotaW5kZXg6IDQwMDtcbiAgfVxuICAmLmpzIHtcbiAgICAvLyBDb2xsYXBzaWJsZSBmaWVsZHNldHMuXG4gICAgZmllbGRzZXQuY29sbGFwc2VkIHtcbiAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICAvLyBUaHJvYmJlcnMuXG4gICAgaW5wdXQuZm9ybS1hdXRvY29tcGxldGUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbmJvZHkge1xuICAvLyBGaXggaG9yaXpvbnRhbCBzY3JvbGxpbmcgb24gaU9TIGRldmljZXMuXG4gIC8vIGh0dHA6Ly9kcnVwYWwub3JnL25vZGUvMTg3MDA3NlxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICYuYWRtaW4tZXhwYW5kZWQuYWRtaW4tdmVydGljYWwuYWRtaW4tbncgLm5hdmJhcixcbiAgJi5hZG1pbi1leHBhbmRlZC5hZG1pbi12ZXJ0aWNhbC5hZG1pbi1zdyAubmF2YmFyIHtcbiAgICBtYXJnaW4tbGVmdDogMjYwcHg7XG4gIH1cbiAgLy8gQWRkIHBhZGRpbmcgdG8gYm9keSBpZiB2YXJpb3VzIHRvb2xiYXIgb3IgbmF2YmFycyBhcmUgZml4ZWQgb24gdG9wLlxuICAmLm5hdmJhci1pcy1maXhlZC10b3Age1xuICAgIHBhZGRpbmctdG9wOiA2NHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgJi5uYXZiYXItaXMtZml4ZWQtYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjRweCAhaW1wb3J0YW50O1xuICB9XG4gICYudG9vbGJhciB7XG4gICAgcGFkZGluZy10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgICAubmF2YmFyLWZpeGVkLXRvcCB7XG4gICAgICB0b3A6IDMwcHg7XG4gICAgfVxuICAgICYubmF2YmFyLWlzLWZpeGVkLXRvcCB7XG4gICAgICBwYWRkaW5nLXRvcDogOTRweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICAmLnRvb2xiYXItZHJhd2VyIHtcbiAgICBwYWRkaW5nLXRvcDogNjRweCAhaW1wb3J0YW50O1xuICAgIC5uYXZiYXItZml4ZWQtdG9wIHtcbiAgICAgIHRvcDogNjRweDtcbiAgICB9XG4gICAgJi5uYXZiYXItaXMtZml4ZWQtdG9wIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMjhweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICAvLyBBZG1pbl9tZW51IHRvb2xiYXIuXG4gICYuYWRtaW4tbWVudSB7XG4gICAgLm5hdmJhci1maXhlZC10b3Age1xuICAgICAgdG9wOiAyOXB4O1xuICAgIH1cbiAgICAmLm5hdmJhci1pcy1maXhlZC10b3Age1xuICAgICAgcGFkZGluZy10b3A6IDkzcHggIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgZGl2I2FkbWluLXRvb2xiYXIge1xuICAgIHotaW5kZXg6IDE2MDA7XG4gIH1cbiAgLy8gT3ZlcnJpZGUgYm94LXNoYWRvdyBzdHlsZXMgb24gYWxsIFwiYWRtaW5cIiBtZW51cy5cbiAgI3Rvb2xiYXIsICNhZG1pbi1tZW51LCAjYWRtaW4tdG9vbGJhciB7XG4gICAgLmJveC1zaGFkb3cobm9uZSk7XG4gIH1cbiAgLy8gT3ZlcnJpZGUgI2FkbWluLW1lbnUgc3R5bGUuXG4gICNhZG1pbi1tZW51IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMTYwMDtcbiAgICAuZHJvcGRvd24gbGkge1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG4gIH1cbn1cblxuLy8gRGVmYXVsdCBuYXZiYXIuXG4ubmF2YmFyLmNvbnRhaW5lciB7XG4gIEBtZWRpYSBAdGFibGV0IHtcbiAgICBtYXgtd2lkdGg6ICgoQGNvbnRhaW5lci1zbSAtIDMwcHgpKTtcbiAgfVxuICBAbWVkaWEgQG5vcm1hbCB7XG4gICAgbWF4LXdpZHRoOiAoKEBjb250YWluZXItbWQgLSAzMHB4KSk7XG4gIH1cbiAgQG1lZGlhIEB3aWRlIHtcbiAgICBtYXgtd2lkdGg6ICgoQGNvbnRhaW5lci1sZyAtIDMwcHgpKTtcbiAgfVxuICBtYXJnaW4tdG9wOiAyMHB4O1xuICA+IC5jb250YWluZXIge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vIEFkanVzdCB6LWluZGV4IG9mIGNvcmUgY29tcG9uZW50cy5cbiNvdmVybGF5LWNvbnRhaW5lcixcbi5vdmVybGF5LW1vZGFsLWJhY2tncm91bmQsXG4ub3ZlcmxheS1lbGVtZW50IHtcbiAgei1pbmRleDogMTUwMDtcbn1cbiN0b29sYmFyIHtcbiAgei1pbmRleDogMTYwMDtcbn1cbi8vIEFkanVzdCB6LWluZGV4IG9mIGJvb3RzdHJhcCBtb2RhbHNcbi5tb2RhbCB7XG4gIHotaW5kZXg6IDE2MjA7XG59XG4ubW9kYWwtZGlhbG9nIHtcbiAgei1pbmRleDogMTYzMDtcbn1cbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHotaW5kZXg6IDE2MTA7XG59XG5cbi8vIEVsZW1lbnQgaW52aXNpYmxlIGZpeFxuLmVsZW1lbnQtaW52aXNpYmxlIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMXB4O1xufVxuXG4vLyBCcmFuZGluZy5cbi5uYXZiYXIgLmxvZ28ge1xuICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIEBtZWRpYSBAdGFibGV0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbi8vIE5hdmlnYXRpb24uXG51bC5zZWNvbmRhcnkge1xuICBmbG9hdDogbGVmdDtcbiAgQG1lZGlhIEB0YWJsZXQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4vLyBQYWdlIGhlYWRlci5cbi5wYWdlLWhlYWRlciB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi8vIEJsb2Nrc1xuLmJsb2NrIHtcbiAgJjpmaXJzdC1jaGlsZCBoMi5ibG9jay10aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4vLyBQYXJhZ3JhcGhzLlxucDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLy8gSGVscCByZWdpb24uXG4ucmVnaW9uLWhlbHAge1xuICA+IC5nbHlwaGljb24ge1xuICAgIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1sYXJnZTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IC0wLjA1ZW0gMC41ZW0gMCAwO1xuICB9XG4gIC5ibG9jayB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG4vLyBTZWFyY2ggZm9ybS5cbmZvcm0jc2VhcmNoLWJsb2NrLWZvcm0ge1xuICBtYXJnaW46IDA7XG59XG4ubmF2YmFyICNibG9jay1zZWFyY2gtZm9ybSB7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW46IDVweCAwIDVweCA1cHg7XG4gIEBtZWRpYSBAbm9ybWFsIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cbi5uYXZiYXItc2VhcmNoIC5jb250cm9sLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTowcHg7XG59XG5cbi8vIEFjdGlvbiBMaW5rc1xudWwuYWN0aW9uLWxpbmtzIHtcbiAgbWFyZ2luOiBAcGFkZGluZy1iYXNlLWhvcml6b250YWwgMDtcbiAgcGFkZGluZzogMDtcbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCBAcGFkZGluZy1iYXNlLXZlcnRpY2FsIDAgMDtcbiAgfVxuICAuZ2x5cGhpY29uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbiAgfVxufVxuXG4vLyBGb3JtIGVsZW1lbnRzLlxuaW5wdXQsIHRleHRhcmVhLCBzZWxlY3QsIC51bmVkaXRhYmxlLWlucHV0IHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogYXV0bztcbn1cbmlucHV0LmVycm9yIHtcbiAgY29sb3I6IEBzdGF0ZS1kYW5nZXItdGV4dDtcbiAgYm9yZGVyLWNvbG9yOiBAc3RhdGUtZGFuZ2VyLWJvcmRlcjtcbn1cbmZpZWxkc2V0IGxlZ2VuZC5wYW5lbC1oZWFkaW5nIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG4gIG1hcmdpbjogMDtcbn1cbmZpZWxkc2V0IC5wYW5lbC1ib2R5IHtcbiAgY2xlYXI6IGJvdGg7XG59XG5maWVsZHNldCAucGFuZWwtaGVhZGluZyBhLnBhbmVsLXRpdGxlIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IC0xMHB4IC0xNXB4O1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuLmZvcm0tYWN0aW9uc3tcbiAgY2xlYXI6IGJvdGg7XG59XG4ucmVzaXphYmxlLXRleHRhcmVhIHRleHRhcmVhIHtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlci1yYWRpdXMtYmFzZSBAYm9yZGVyLXJhZGl1cy1iYXNlIDAgMDtcbn1cbi5yYWRpbywgLmNoZWNrYm94IHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbi5oZWxwLWJsb2NrLCAuY29udHJvbC1ncm91cCAuaGVscC1pbmxpbmUge1xuICBjb2xvcjogQGdyYXktbGlnaHQ7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbWFyZ2luOiA1cHggMCAxMHB4O1xuICBwYWRkaW5nOiAwO1xufVxuLnBhbmVsLWhlYWRpbmcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbmEudGFibGVkcmFnLWhhbmRsZSAuaGFuZGxlIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogYXV0bztcbn1cblxuLy8gRXJyb3IgY29udGFpbmVycy5cbi5lcnJvciB7XG4gIGNvbG9yOiBAc3RhdGUtZGFuZ2VyLXRleHQ7XG59XG5kaXYuZXJyb3IsXG50YWJsZSB0ci5lcnJvciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBzdGF0ZS1kYW5nZXItYmc7XG4gIGNvbG9yOiBAc3RhdGUtZGFuZ2VyLXRleHQ7XG59XG4uY29udHJvbC1ncm91cC5lcnJvciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGxhYmVsLCAuY29udHJvbC1sYWJlbCB7XG4gICAgY29sb3I6IEBzdGF0ZS1kYW5nZXItdGV4dDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG4gIGlucHV0LCB0ZXh0YXJlYSwgc2VsZWN0LCAudW5lZGl0YWJsZS1pbnB1dCB7XG4gICAgY29sb3I6IEBpbnB1dC1jb2xvcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBAaW5wdXQtYm9yZGVyO1xuICB9XG4gIC5oZWxwLWJsb2NrLCAuaGVscC1pbmxpbmUge1xuICAgIGNvbG9yOiBAdGV4dC1jb2xvcjtcbiAgfVxufVxuXG4vLyBMaXN0c1xuLmxpc3QtaW5saW5lIHtcbiAgPiBsaS5maXJzdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG4ubmF2LXRhYnMge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxudWwgbGkuY29sbGFwc2VkLFxudWwgbGkuZXhwYW5kZWQsXG51bCBsaS5sZWFmIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbGlzdC1zdHlsZS1pbWFnZTogbm9uZTtcbn1cbi50YWJzLS1zZWNvbmRhcnkge1xuICBtYXJnaW46IDAgMCAxMHB4O1xufVxuXG4vLyBTdWJtaXR0ZWRcbi5zdWJtaXR0ZWQge1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICM3Nzc7XG59XG5cbi8vIFBhc3N3b3JkIHN0cmVuZ3RoIGluZGljYXRvci5cbi5wYXNzd29yZC1zdHJlbmd0aCB7XG4gIHdpZHRoOiAxN2VtO1xuICBmbG9hdDogcmlnaHQ7ICAvKiBMVFIgKi9cbiAgbWFyZ2luLXRvcDogMS40ZW07XG59XG4ucGFzc3dvcmQtc3RyZW5ndGgtdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG4ucGFzc3dvcmQtc3RyZW5ndGgtdGV4dCB7XG4gIGZsb2F0OiByaWdodDsgLyogTFRSICovXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLnBhc3N3b3JkLWluZGljYXRvciB7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAaW5wdXQtY29sb3ItcGxhY2Vob2xkZXIsIDIlKTtcbiAgaGVpZ2h0OiAwLjNlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpdiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW5wdXQtY29sb3ItcGxhY2Vob2xkZXI7XG4gIH1cbn1cbmlucHV0LnBhc3N3b3JkLWNvbmZpcm0sXG5pbnB1dC5wYXNzd29yZC1maWVsZCB7XG4gIHdpZHRoOiAxNmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjRlbTtcbn1cbmRpdi5wYXNzd29yZC1jb25maXJtIHtcbiAgZmxvYXQ6IHJpZ2h0OyAgLyogTFRSICovXG4gIG1hcmdpbi10b3A6IDEuNWVtO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAxN2VtO1xufVxuZGl2LmZvcm0taXRlbSBkaXYucGFzc3dvcmQtc3VnZ2VzdGlvbnMge1xuICBwYWRkaW5nOiAwLjJlbSAwLjVlbTtcbiAgbWFyZ2luOiAwLjdlbSAwO1xuICB3aWR0aDogMzguNWVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjQjRCNEI0O1xufVxuZGl2LnBhc3N3b3JkLXN1Z2dlc3Rpb25zIHVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5jb25maXJtLXBhcmVudCxcbi5wYXNzd29yZC1wYXJlbnQge1xuICBjbGVhcjogbGVmdDsgLyogTFRSICovXG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDM2LjNlbTtcbn1cblxuLy8gUHJvZ3Jlc3MgYmFyLlxuLnByb2dyZXNzLXdyYXBwZXIgLnByb2dyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLy8gVmlld3MgQUpBWCBwYWdlci5cbi5wYWdpbmF0aW9uIHVsID4gbGkgPiBhIHtcbiAgJi5wcm9ncmVzcy1kaXNhYmxlZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuLy8gQXV0b2NvbXBsZXRlIGFuZCB0aHJvYmJlclxuLmZvcm0tYXV0b2NvbXBsZXRlIHtcbiAgLmdseXBoaWNvbiB7XG4gICAgY29sb3I6IEBncmF5LWxpZ2h0O1xuICAgIGZvbnQtc2l6ZTogMTIwJTtcbiAgICAmLmdseXBoaWNvbi1zcGluIHtcbiAgICAgIGNvbG9yOiBAYnJhbmQtcHJpbWFyeTtcbiAgICB9XG4gIH1cbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4gIH1cbn1cblxuLy8gQUpBWCBcIlRocm9iYmVyXCIuXG4uYWpheC1wcm9ncmVzcyB7XG4gIC5nbHlwaGljb24ge1xuICAgIGZvbnQtc2l6ZTogOTAlO1xuICAgIG1hcmdpbjogMCAtLjI1ZW0gMCAwLjVlbTtcbiAgfVxufVxuXG4uZ2x5cGhpY29uLXNwaW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC1tb3otYW5pbWF0aW9uOiBzcGluIDFzIGluZmluaXRlIGxpbmVhcjtcbiAgLW8tYW5pbWF0aW9uOiBzcGluIDFzIGluZmluaXRlIGxpbmVhcjtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNwaW4gMXMgaW5maW5pdGUgbGluZWFyO1xuICBhbmltYXRpb246IHNwaW4gMXMgaW5maW5pdGUgbGluZWFyO1xufVxuYSAuZ2x5cGhpY29uLXNwaW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbkAtbW96LWtleWZyYW1lcyBzcGluIHtcbiAgMCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgc3BpbiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyBzcGluIHtcbiAgMCUge1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIHNwaW4ge1xuICAwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHNwaW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgfVxufVxuXG4uZ2x5cGhpY29uLXJlZnJlc2gge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSA0NSU7XG4gIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogNTAlIDQ1JTtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDUwJSA0NSU7XG4gIC1vLXRyYW5zZm9ybS1vcmlnaW46IDUwJSA0NSU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA0NSU7XG59XG5cbi8qKlxuICogTWlzc2luZyBCb290c3RyYXAgMiB0YWIgc3R5bGluZy5cbiAqIEBzZWUgaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xODQzMjU3Ny9zdGFja2VkLXRhYnMtaW4tYm9vdHN0cmFwLTNcbiAqIEBzZWUgaHR0cDovL2Jvb3RwbHkuY29tLzc0OTI2XG4gKi9cbi50YWJiYWJsZSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4udGFicy1iZWxvdywgLnRhYnMtbGVmdCwgLnRhYnMtcmlnaHQge1xuICA+IC5uYXYtdGFicyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAuc3VtbWFyeSB7XG4gICAgICBjb2xvcjogQG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yO1xuICAgICAgZm9udC1zaXplOiBAZm9udC1zaXplLXNtYWxsO1xuICAgIH1cbiAgfVxufVxuLnRhYi1wYW5lID4gLnBhbmVsLWhlYWRpbmcge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnRhYi1jb250ZW50ID4gLmFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBCZWxvdy5cbi50YWJzLWJlbG93IHtcbiAgPiAubmF2LXRhYnMge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBAbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuICAgID4gbGkge1xuICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICA+IGEge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgQGJvcmRlci1yYWRpdXMtYmFzZSBAYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiBAbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gLmFjdGl2ZSB7XG4gICAgICA+IGEsXG4gICAgICA+IGE6aG92ZXIsXG4gICAgICA+IGE6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IEBuYXYtdGFicy1ib3JkZXItY29sb3IgQG5hdi10YWJzLWJvcmRlci1jb2xvciBAbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBMZWZ0IGFuZCByaWdodCB0YWJzLlxuLnRhYnMtbGVmdCxcbi50YWJzLXJpZ2h0IHtcbiAgPiAubmF2LXRhYnMge1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIHdpZHRoOiAyMjBweDtcbiAgICA+IGxpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICB9XG4gICAgICA+IGEge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNweDtcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IC50YWItY29udGVudCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCBAYm9yZGVyLXJhZGl1cy1iYXNlIEBib3JkZXItcmFkaXVzLWJhc2UgQGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICAuYm94LXNoYWRvdygwIDFweCAxcHggcmdiYSgwLDAsMCwuMDUpKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBAbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMTBweCAxNXB4O1xuICB9XG59XG5cbi8vIExlZnQgdGFicy5cbi50YWJzLWxlZnQge1xuICA+IC5uYXYtdGFicyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWJhc2UgMCAwIEBib3JkZXItcmFkaXVzLWJhc2U7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogQG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yIEBuYXYtdGFicy1ib3JkZXItY29sb3IgQG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yIEBuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuYWN0aXZlID4gYSxcbiAgICA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuICAgID4gLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiBAbmF2LXRhYnMtYm9yZGVyLWNvbG9yIHRyYW5zcGFyZW50IEBuYXYtdGFicy1ib3JkZXItY29sb3IgQG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgICAgIC5ib3gtc2hhZG93KC0xcHggMXB4IDFweCByZ2JhKDAsMCwwLC4wNSkpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSaWdodCB0YWJzLlxuLnRhYnMtcmlnaHQge1xuICA+IC5uYXYtdGFicyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgQGJvcmRlci1yYWRpdXMtYmFzZSBAYm9yZGVyLXJhZGl1cy1iYXNlIDA7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogQG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yIEBuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvciBAbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgQG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgICAgICAgLmJveC1zaGFkb3coMXB4IDFweCAxcHggcmdiYSgwLDAsMCwuMDUpKTtcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuYWN0aXZlID4gYSxcbiAgICA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuICAgID4gLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiBAbmF2LXRhYnMtYm9yZGVyLWNvbG9yIEBuYXYtdGFicy1ib3JkZXItY29sb3IgQG5hdi10YWJzLWJvcmRlci1jb2xvciB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ2hlY2tib3ggY2VsbCBmaXguXG50aC5jaGVja2JveCxcbnRkLmNoZWNrYm94LFxudGgucmFkaW8sXG50ZC5yYWRpbyB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG59XG5cbi8vIFZpZXdzIFVJIGZpeGVzLlxuLnZpZXdzLWRpc3BsYXktc2V0dGluZ3Mge1xuICAubGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICBjb2xvcjojNjY2NjY2O1xuICB9XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmc6MDtcbiAgICBtYXJnaW46NHB4IDAgMCAwO1xuICB9XG59XG5cbi8vIFJhZGlvIGFuZCBjaGVja2JveCBpbiB0YWJsZSBmaXhlc1xudGFibGUge1xuICAucmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gRXhwb3NlZCBmaWx0ZXJzXG4uZm9ybS1ob3Jpem9udGFsIC5mb3JtLWdyb3VwIGxhYmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctdG9wOiA3cHg7XG4gIHBhZGRpbmctbGVmdDogIChAZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKEBncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1zbS1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoMiAvIEBncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuXG4vLyBUcmVhdCBhbGwgbGlua3MgaW5zaWRlIGFsZXJ0IGFzIC5hbGVydC1saW5rXG4uYWxlcnQgYSB7XG4gIGZvbnQtd2VpZ2h0OiBAYWxlcnQtbGluay1mb250LXdlaWdodDtcbn1cbi5hbGVydC1zdWNjZXNzIGEge1xuICBjb2xvcjogZGFya2VuKEBhbGVydC1zdWNjZXNzLXRleHQsIDEwJSk7XG59XG4uYWxlcnQtaW5mbyBhIHtcbiAgY29sb3I6IGRhcmtlbihAYWxlcnQtaW5mby10ZXh0LCAxMCUpO1xufVxuLmFsZXJ0LXdhcm5pbmcgYSB7XG4gIGNvbG9yOiBkYXJrZW4oQGFsZXJ0LXdhcm5pbmctdGV4dCwgMTAlKTtcbn1cbi5hbGVydC1kYW5nZXIgYSB7XG4gIGNvbG9yOiBkYXJrZW4oQGFsZXJ0LWRhbmdlci10ZXh0LCAxMCUpO1xufVxuIiwiLy8gRm9ybSB2YWxpZGF0aW9uIHN0YXRlc1xuLy9cbi8vIFVzZWQgaW4gZm9ybXMubGVzcyB0byBnZW5lcmF0ZSB0aGUgZm9ybSB2YWxpZGF0aW9uIENTUyBmb3Igd2FybmluZ3MsIGVycm9ycyxcbi8vIGFuZCBzdWNjZXNzZXMuXG5cbi5mb3JtLWNvbnRyb2wtdmFsaWRhdGlvbihAdGV4dC1jb2xvcjogIzU1NTsgQGJvcmRlci1jb2xvcjogI2NjYzsgQGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjUpIHtcbiAgLy8gQ29sb3IgdGhlIGxhYmVsIGFuZCBoZWxwIHRleHRcbiAgLmhlbHAtYmxvY2ssXG4gIC5jb250cm9sLWxhYmVsLFxuICAucmFkaW8sXG4gIC5jaGVja2JveCxcbiAgLnJhZGlvLWlubGluZSxcbiAgLmNoZWNrYm94LWlubGluZSxcbiAgJi5yYWRpbyBsYWJlbCxcbiAgJi5jaGVja2JveCBsYWJlbCxcbiAgJi5yYWRpby1pbmxpbmUgbGFiZWwsXG4gICYuY2hlY2tib3gtaW5saW5lIGxhYmVsICB7XG4gICAgY29sb3I6IEB0ZXh0LWNvbG9yO1xuICB9XG4gIC8vIFNldCB0aGUgYm9yZGVyIGFuZCBib3ggc2hhZG93IG9uIHNwZWNpZmljIGlucHV0cyB0byBtYXRjaFxuICAuZm9ybS1jb250cm9sIHtcbiAgICBib3JkZXItY29sb3I6IEBib3JkZXItY29sb3I7XG4gICAgLmJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpOyAvLyBSZWRlY2xhcmUgc28gdHJhbnNpdGlvbnMgd29ya1xuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oQGJvcmRlci1jb2xvciwgMTAlKTtcbiAgICAgIEBzaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgNnB4IGxpZ2h0ZW4oQGJvcmRlci1jb2xvciwgMjAlKTtcbiAgICAgIC5ib3gtc2hhZG93KEBzaGFkb3cpO1xuICAgIH1cbiAgfVxuICAvLyBTZXQgdmFsaWRhdGlvbiBzdGF0ZXMgYWxzbyBmb3IgYWRkb25zXG4gIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gICAgY29sb3I6IEB0ZXh0LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogQGJvcmRlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmFja2dyb3VuZC1jb2xvcjtcbiAgfVxuICAvLyBPcHRpb25hbCBmZWVkYmFjayBpY29uXG4gIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgIGNvbG9yOiBAdGV4dC1jb2xvcjtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYEBpbnB1dC1ib3JkZXItZm9jdXNgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG4uZm9ybS1jb250cm9sLWZvY3VzKEBjb2xvcjogQGlucHV0LWJvcmRlci1mb2N1cykge1xuICBAY29sb3ItcmdiYTogcmdiYShyZWQoQGNvbG9yKSwgZ3JlZW4oQGNvbG9yKSwgYmx1ZShAY29sb3IpLCAuNik7XG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogQGNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLmJveC1zaGFkb3coflwiaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksIDAgMCA4cHggQHtjb2xvci1yZ2JhfVwiKTtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gUmVsYXRpdmUgdGV4dCBzaXplLCBwYWRkaW5nLCBhbmQgYm9yZGVyLXJhZGlpIGNoYW5nZXMgZm9yIGZvcm0gY29udHJvbHMuIEZvclxuLy8gaG9yaXpvbnRhbCBzaXppbmcsIHdyYXAgY29udHJvbHMgaW4gdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLiBgPHNlbGVjdD5gXG4vLyBlbGVtZW50IGdldHMgc3BlY2lhbCBsb3ZlIGJlY2F1c2UgaXQncyBzcGVjaWFsLCBhbmQgdGhhdCdzIGEgZmFjdCFcbi5pbnB1dC1zaXplKEBpbnB1dC1oZWlnaHQ7IEBwYWRkaW5nLXZlcnRpY2FsOyBAcGFkZGluZy1ob3Jpem9udGFsOyBAZm9udC1zaXplOyBAbGluZS1oZWlnaHQ7IEBib3JkZXItcmFkaXVzKSB7XG4gIGhlaWdodDogQGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogQHBhZGRpbmctdmVydGljYWwgQHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiBAZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogQGxpbmUtaGVpZ2h0O1xuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cztcblxuICBzZWxlY3QmIHtcbiAgICBoZWlnaHQ6IEBpbnB1dC1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IEBpbnB1dC1oZWlnaHQ7XG4gIH1cblxuICB0ZXh0YXJlYSYsXG4gIHNlbGVjdFttdWx0aXBsZV0mIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cbiIsIi8vXG4vLyBCdXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2Ugc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBGb3IgaW5wdXQuYnRuXG4gIGZvbnQtd2VpZ2h0OiBAYnRuLWZvbnQtd2VpZ2h0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIC5idXR0b24tc2l6ZShAcGFkZGluZy1iYXNlLXZlcnRpY2FsOyBAcGFkZGluZy1iYXNlLWhvcml6b250YWw7IEBmb250LXNpemUtYmFzZTsgQGxpbmUtaGVpZ2h0LWJhc2U7IEBib3JkZXItcmFkaXVzLWJhc2UpO1xuICAudXNlci1zZWxlY3Qobm9uZSk7XG5cbiAgJixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgLnRhYi1mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiBAYnRuLWRlZmF1bHQtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgLmJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBjdXJzb3I6IEBjdXJzb3ItZGlzYWJsZWQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IC8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzXG4gICAgLm9wYWNpdHkoLjY1KTtcbiAgICAuYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWRlZmF1bHQge1xuICAuYnV0dG9uLXZhcmlhbnQoQGJ0bi1kZWZhdWx0LWNvbG9yOyBAYnRuLWRlZmF1bHQtYmc7IEBidG4tZGVmYXVsdC1ib3JkZXIpO1xufVxuLmJ0bi1wcmltYXJ5IHtcbiAgLmJ1dHRvbi12YXJpYW50KEBidG4tcHJpbWFyeS1jb2xvcjsgQGJ0bi1wcmltYXJ5LWJnOyBAYnRuLXByaW1hcnktYm9yZGVyKTtcbn1cbi8vIFN1Y2Nlc3MgYXBwZWFycyBhcyBncmVlblxuLmJ0bi1zdWNjZXNzIHtcbiAgLmJ1dHRvbi12YXJpYW50KEBidG4tc3VjY2Vzcy1jb2xvcjsgQGJ0bi1zdWNjZXNzLWJnOyBAYnRuLXN1Y2Nlc3MtYm9yZGVyKTtcbn1cbi8vIEluZm8gYXBwZWFycyBhcyBibHVlLWdyZWVuXG4uYnRuLWluZm8ge1xuICAuYnV0dG9uLXZhcmlhbnQoQGJ0bi1pbmZvLWNvbG9yOyBAYnRuLWluZm8tYmc7IEBidG4taW5mby1ib3JkZXIpO1xufVxuLy8gV2FybmluZyBhcHBlYXJzIGFzIG9yYW5nZVxuLmJ0bi13YXJuaW5nIHtcbiAgLmJ1dHRvbi12YXJpYW50KEBidG4td2FybmluZy1jb2xvcjsgQGJ0bi13YXJuaW5nLWJnOyBAYnRuLXdhcm5pbmctYm9yZGVyKTtcbn1cbi8vIERhbmdlciBhbmQgZXJyb3IgYXBwZWFyIGFzIHJlZFxuLmJ0bi1kYW5nZXIge1xuICAuYnV0dG9uLXZhcmlhbnQoQGJ0bi1kYW5nZXItY29sb3I7IEBidG4tZGFuZ2VyLWJnOyBAYnRuLWRhbmdlci1ib3JkZXIpO1xufVxuXG5cbi8vIExpbmsgYnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgY29sb3I6IEBsaW5rLWNvbG9yO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICYsXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAuYm94LXNoYWRvdyhub25lKTtcbiAgfVxuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogQGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6IEBidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCdXR0b24gU2l6ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tbGcge1xuICAvLyBsaW5lLWhlaWdodDogZW5zdXJlIGV2ZW4tbnVtYmVyZWQgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIGxhcmdlIGlucHV0XG4gIC5idXR0b24tc2l6ZShAcGFkZGluZy1sYXJnZS12ZXJ0aWNhbDsgQHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDsgQGZvbnQtc2l6ZS1sYXJnZTsgQGxpbmUtaGVpZ2h0LWxhcmdlOyBAYm9yZGVyLXJhZGl1cy1sYXJnZSk7XG59XG4uYnRuLXNtIHtcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBwcm9wZXIgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIHNtYWxsIGlucHV0XG4gIC5idXR0b24tc2l6ZShAcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDsgQHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDsgQGZvbnQtc2l6ZS1zbWFsbDsgQGxpbmUtaGVpZ2h0LXNtYWxsOyBAYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG59XG4uYnRuLXhzIHtcbiAgLmJ1dHRvbi1zaXplKEBwYWRkaW5nLXhzLXZlcnRpY2FsOyBAcGFkZGluZy14cy1ob3Jpem9udGFsOyBAZm9udC1zaXplLXNtYWxsOyBAbGluZS1oZWlnaHQtc21hbGw7IEBib3JkZXItcmFkaXVzLXNtYWxsKTtcbn1cblxuXG4vLyBCbG9jayBidXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIFZlcnRpY2FsbHkgc3BhY2Ugb3V0IG11bHRpcGxlIGJsb2NrIGJ1dHRvbnNcbi5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgJi5idG4tYmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuLmJ1dHRvbi12YXJpYW50KEBjb2xvcjsgQGJhY2tncm91bmQ7IEBib3JkZXIpIHtcbiAgY29sb3I6IEBjb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogQGJvcmRlcjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmLmZvY3VzLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5vcGVuID4gLmRyb3Bkb3duLXRvZ2dsZSYge1xuICAgIGNvbG9yOiBAY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBiYWNrZ3JvdW5kLCAxMCUpO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbihAYm9yZGVyLCAxMiUpO1xuICB9XG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgLm9wZW4gPiAuZHJvcGRvd24tdG9nZ2xlJiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGJhY2tncm91bmQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBAYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgY29sb3I6IEBiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvcjtcbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbi5idXR0b24tc2l6ZShAcGFkZGluZy12ZXJ0aWNhbDsgQHBhZGRpbmctaG9yaXpvbnRhbDsgQGZvbnQtc2l6ZTsgQGxpbmUtaGVpZ2h0OyBAYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiBAcGFkZGluZy12ZXJ0aWNhbCBAcGFkZGluZy1ob3Jpem9udGFsO1xuICBmb250LXNpemU6IEBmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzO1xufVxuIiwiLy9cbi8vIEJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgYnV0dG9uIHRvIHRoZSBmcm9udFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4uYnRuLWdyb3VwIHtcbiAgLmJ0biArIC5idG4sXG4gIC5idG4gKyAuYnRuLWdyb3VwLFxuICAuYnRuLWdyb3VwICsgLmJ0bixcbiAgLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4OyAvLyBPZmZzZXQgdGhlIGZpcnN0IGNoaWxkJ3MgbWFyZ2luXG4gICY6ZXh0ZW5kKC5jbGVhcmZpeCBhbGwpO1xuXG4gIC5idG4tZ3JvdXAsXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAsXG4gID4gLmlucHV0LWdyb3VwIHtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICB9XG59XG5cbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gU2V0IGNvcm5lcnMgaW5kaXZpZHVhbCBiZWNhdXNlIHNvbWV0aW1lcyBhIHNpbmdsZSBidXR0b24gY2FuIGJlIGluIGEgLmJ0bi1ncm91cCBhbmQgd2UgbmVlZCA6Zmlyc3QtY2hpbGQgYW5kIDpsYXN0LWNoaWxkIHRvIGJvdGggbWF0Y2hcbi5idG4tZ3JvdXAgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gICY6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSkge1xuICAgIC5ib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG59XG4vLyBOZWVkIC5kcm9wZG93bi10b2dnbGUgc2luY2UgOmxhc3QtY2hpbGQgZG9lc24ndCBhcHBseSBnaXZlbiBhIC5kcm9wZG93bi1tZW51IGltbWVkaWF0ZWx5IGFmdGVyIGl0XG4uYnRuLWdyb3VwID4gLmJ0bjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmJ0bi1ncm91cCA+IC5kcm9wZG93bi10b2dnbGU6bm90KDpmaXJzdC1jaGlsZCkge1xuICAuYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuXG4vLyBDdXN0b20gZWRpdHMgZm9yIGluY2x1ZGluZyBidG4tZ3JvdXBzIHdpdGhpbiBidG4tZ3JvdXBzICh1c2VmdWwgZm9yIGluY2x1ZGluZyBkcm9wZG93biBidXR0b25zIHdpdGhpbiBhIGJ0bi1ncm91cClcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZCB7XG4gID4gLmJ0bjpsYXN0LWNoaWxkLFxuICA+IC5kcm9wZG93bi10b2dnbGUge1xuICAgIC5ib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG59XG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpsYXN0LWNoaWxkID4gLmJ0bjpmaXJzdC1jaGlsZCB7XG4gIC5ib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG5cbi8vIE9uIGFjdGl2ZSBhbmQgb3BlbiwgZG9uJ3Qgc2hvdyBvdXRsaW5lXG4uYnRuLWdyb3VwIC5kcm9wZG93bi10b2dnbGU6YWN0aXZlLFxuLmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGUge1xuICBvdXRsaW5lOiAwO1xufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXhzID4gLmJ0biB7ICY6ZXh0ZW5kKC5idG4teHMpOyB9XG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7ICY6ZXh0ZW5kKC5idG4tc20pOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7ICY6ZXh0ZW5kKC5idG4tbGcpOyB9XG5cblxuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBHaXZlIHRoZSBsaW5lIGJldHdlZW4gYnV0dG9ucyBzb21lIGRlcHRoXG4uYnRuLWdyb3VwID4gLmJ0biArIC5kcm9wZG93bi10b2dnbGUge1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xufVxuLmJ0bi1ncm91cCA+IC5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xufVxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFJlbW92ZSB0aGUgZ3JhZGllbnQgYW5kIHNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgLmJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgLmJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vLyBSZXBvc2l0aW9uIHRoZSBjYXJldFxuLmJ0biAuY2FyZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi8vIENhcmV0cyBpbiBvdGhlciBidXR0b24gc2l6ZXNcbi5idG4tbGcgLmNhcmV0IHtcbiAgYm9yZGVyLXdpZHRoOiBAY2FyZXQtd2lkdGgtbGFyZ2UgQGNhcmV0LXdpZHRoLWxhcmdlIDA7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG59XG4vLyBVcHNpZGUgZG93biBjYXJldHMgZm9yIC5kcm9wdXBcbi5kcm9wdXAgLmJ0bi1sZyAuY2FyZXQge1xuICBib3JkZXItd2lkdGg6IDAgQGNhcmV0LXdpZHRoLWxhcmdlIEBjYXJldC13aWR0aC1sYXJnZTtcbn1cblxuXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCxcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gQ2xlYXIgZmxvYXRzIHNvIGRyb3Bkb3duIG1lbnVzIGNhbiBiZSBwcm9wZXJseSBwbGFjZWRcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICAmOmV4dGVuZCguY2xlYXJmaXggYWxsKTtcbiAgICA+IC5idG4ge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgPiAuYnRuICsgLmJ0bixcbiAgPiAuYnRuICsgLmJ0bi1ncm91cCxcbiAgPiAuYnRuLWdyb3VwICsgLmJ0bixcbiAgPiAuYnRuLWdyb3VwICsgLmJ0bi1ncm91cCB7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB7XG4gICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICAmOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBAYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgIC5ib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWJhc2U7XG4gICAgLmJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgPiAuYnRuOmxhc3QtY2hpbGQsXG4gID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgLmJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bjpmaXJzdC1jaGlsZCB7XG4gIC5ib3JkZXItdG9wLXJhZGl1cygwKTtcbn1cblxuXG4vLyBKdXN0aWZpZWQgYnV0dG9uIGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWdyb3VwLWp1c3RpZmllZCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgd2lkdGg6IDElO1xuICB9XG4gID4gLmJ0bi1ncm91cCAuYnRuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0bi1ncm91cCAuZHJvcGRvd24tbWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94IGFuZCByYWRpbyBvcHRpb25zXG4vL1xuLy8gSW4gb3JkZXIgdG8gc3VwcG9ydCB0aGUgYnJvd3NlcidzIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFjaywgcG93ZXJlZCBieSB0aGVcbi8vIGByZXF1aXJlZGAgYXR0cmlidXRlLCB3ZSBoYXZlIHRvIFwiaGlkZVwiIHRoZSBpbnB1dHMgdmlhIGBjbGlwYC4gV2UgY2Fubm90IHVzZVxuLy8gYGRpc3BsYXk6IG5vbmU7YCBvciBgdmlzaWJpbGl0eTogaGlkZGVuO2AgYXMgdGhhdCBhbHNvIGhpZGVzIHRoZSBwb3BvdmVyLlxuLy8gU2ltcGx5IHZpc3VhbGx5IGhpZGluZyB0aGUgaW5wdXRzIHZpYSBgb3BhY2l0eWAgd291bGQgbGVhdmUgdGhlbSBjbGlja2FibGUgaW5cbi8vIGNlcnRhaW4gY2FzZXMgd2hpY2ggaXMgcHJldmVudGVkIGJ5IHVzaW5nIGBjbGlwYCBhbmQgYHBvaW50ZXItZXZlbnRzYC5cbi8vIFRoaXMgd2F5LCB3ZSBlbnN1cmUgYSBET00gZWxlbWVudCBpcyB2aXNpYmxlIHRvIHBvc2l0aW9uIHRoZSBwb3BvdmVyIGZyb20uXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEyNzk0IGFuZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTQ1NTkgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG5cbltkYXRhLXRvZ2dsZT1cImJ1dHRvbnNcIl0ge1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIENvbXBvbmVudCBhbmltYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBIZWFkcyB1cCFcbi8vXG4vLyBXZSBkb24ndCB1c2UgdGhlIGAub3BhY2l0eSgpYCBtaXhpbiBoZXJlIHNpbmNlIGl0IGNhdXNlcyBhIGJ1ZyB3aXRoIHRleHRcbi8vIGZpZWxkcyBpbiBJRTctOC4gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zNTUyLlxuXG4uZmFkZSB7XG4gIG9wYWNpdHk6IDA7XG4gIC50cmFuc2l0aW9uKG9wYWNpdHkgLjE1cyBsaW5lYXIpO1xuICAmLmluIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAmLmluICAgICAgeyBkaXNwbGF5OiBibG9jazsgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICB0ciYuaW4gICAgeyBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cbiAgdGJvZHkmLmluIHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwOyB9XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC50cmFuc2l0aW9uLXByb3BlcnR5KH5cImhlaWdodCwgdmlzaWJpbGl0eVwiKTtcbiAgLnRyYW5zaXRpb24tZHVyYXRpb24oLjM1cyk7XG4gIC50cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbihlYXNlKTtcbn1cbiIsIi8vXG4vLyBEcm9wZG93biBtZW51c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBEcm9wZG93biBhcnJvdy9jYXJldFxuLmNhcmV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItdG9wOiAgIEBjYXJldC13aWR0aC1iYXNlIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6IEBjYXJldC13aWR0aC1iYXNlIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogIEBjYXJldC13aWR0aC1iYXNlIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4vLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoZGl2KVxuLmRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLyBQcmV2ZW50IHRoZSBmb2N1cyBvbiB0aGUgZHJvcGRvd24gdG9nZ2xlIHdoZW4gY2xvc2luZyBkcm9wZG93bnNcbi5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudSAodWwpXG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiBAemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAxNjBweDtcbiAgcGFkZGluZzogNXB4IDA7XG4gIG1hcmdpbjogMnB4IDAgMDsgLy8gb3ZlcnJpZGUgZGVmYXVsdCB1bFxuICBsaXN0LXN0eWxlOiBub25lO1xuICBmb250LXNpemU6IEBmb250LXNpemUtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZHJvcGRvd24tYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkIEBkcm9wZG93bi1mYWxsYmFjay1ib3JkZXI7IC8vIElFOCBmYWxsYmFja1xuICBib3JkZXI6IDFweCBzb2xpZCBAZHJvcGRvd24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAuYm94LXNoYWRvdygwIDZweCAxMnB4IHJnYmEoMCwwLDAsLjE3NSkpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuXG4gIC8vIEFsaWducyB0aGUgZHJvcGRvd24gbWVudSB0byByaWdodFxuICAvL1xuICAvLyBEZXByZWNhdGVkIGFzIG9mIDMuMS4wIGluIGZhdm9yIG9mIGAuZHJvcGRvd24tbWVudS1bZGlyXWBcbiAgJi5wdWxsLXJpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIHRoZSBkcm9wZG93blxuICAuZGl2aWRlciB7XG4gICAgLm5hdi1kaXZpZGVyKEBkcm9wZG93bi1kaXZpZGVyLWJnKTtcbiAgfVxuXG4gIC8vIExpbmtzIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuICA+IGxpID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogM3B4IDIwcHg7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogQGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgY29sb3I6IEBkcm9wZG93bi1saW5rLWNvbG9yO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICB9XG59XG5cbi8vIEhvdmVyL0ZvY3VzIHN0YXRlXG4uZHJvcGRvd24tbWVudSA+IGxpID4gYSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogQGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG4gIH1cbn1cblxuLy8gQWN0aXZlIHN0YXRlXG4uZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IEBkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAZHJvcGRvd24tbGluay1hY3RpdmUtYmc7XG4gIH1cbn1cblxuLy8gRGlzYWJsZWQgc3RhdGVcbi8vXG4vLyBHcmF5IG91dCB0ZXh0IGFuZCBlbnN1cmUgdGhlIGhvdmVyL2ZvY3VzIHN0YXRlIHJlbWFpbnMgZ3JheVxuXG4uZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGEge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogQGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gIH1cblxuICAvLyBOdWtlIGhvdmVyL2ZvY3VzIGVmZmVjdHNcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRcbiAgICAucmVzZXQtZmlsdGVyKCk7XG4gICAgY3Vyc29yOiBAY3Vyc29yLWRpc2FibGVkO1xuICB9XG59XG5cbi8vIE9wZW4gc3RhdGUgZm9yIHRoZSBkcm9wZG93blxuLm9wZW4ge1xuICAvLyBTaG93IHRoZSBtZW51XG4gID4gLmRyb3Bkb3duLW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBvdXRsaW5lIHdoZW4gOmZvY3VzIGlzIHRyaWdnZXJlZFxuICA+IGEge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8gTWVudSBwb3NpdGlvbmluZ1xuLy9cbi8vIEFkZCBleHRyYSBjbGFzcyB0byBgLmRyb3Bkb3duLW1lbnVgIHRvIGZsaXAgdGhlIGFsaWdubWVudCBvZiB0aGUgZHJvcGRvd25cbi8vIG1lbnUgd2l0aCB0aGUgcGFyZW50LlxuLmRyb3Bkb3duLW1lbnUtcmlnaHQge1xuICBsZWZ0OiBhdXRvOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIGAuZHJvcGRvd24tbWVudWBcbiAgcmlnaHQ6IDA7XG59XG4vLyBXaXRoIHYzLCB3ZSBlbmFibGVkIGF1dG8tZmxpcHBpbmcgaWYgeW91IGhhdmUgYSBkcm9wZG93biB3aXRoaW4gYSByaWdodFxuLy8gYWxpZ25lZCBuYXYgY29tcG9uZW50LiBUbyBlbmFibGUgdGhlIHVuZG9pbmcgb2YgdGhhdCwgd2UgcHJvdmlkZSBhbiBvdmVycmlkZVxuLy8gdG8gcmVzdG9yZSB0aGUgZGVmYXVsdCBkcm9wZG93biBtZW51IGFsaWdubWVudC5cbi8vXG4vLyBUaGlzIGlzIG9ubHkgZm9yIGxlZnQtYWxpZ25pbmcgYSBkcm9wZG93biBtZW51IHdpdGhpbiBhIGAubmF2YmFyLXJpZ2h0YCBvclxuLy8gYC5wdWxsLXJpZ2h0YCBuYXYgY29tcG9uZW50LlxuLmRyb3Bkb3duLW1lbnUtbGVmdCB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogM3B4IDIwcHg7XG4gIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1zbWFsbDtcbiAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogQGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBCYWNrZHJvcCB0byBjYXRjaCBib2R5IGNsaWNrcyBvbiBtb2JpbGUsIGV0Yy5cbi5kcm9wZG93bi1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAoQHppbmRleC1kcm9wZG93biAtIDEwKTtcbn1cblxuLy8gUmlnaHQgYWxpZ25lZCBkcm9wZG93bnNcbi5wdWxsLXJpZ2h0ID4gLmRyb3Bkb3duLW1lbnUge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXG4vL1xuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LCBicm8uXG4vLyBUT0RPOiBhYnN0cmFjdCB0aGlzIHNvIHRoYXQgdGhlIG5hdmJhciBmaXhlZCBzdHlsZXMgYXJlIG5vdCBwbGFjZWQgaGVyZT9cblxuLmRyb3B1cCxcbi5uYXZiYXItZml4ZWQtYm90dG9tIC5kcm9wZG93biB7XG4gIC8vIFJldmVyc2UgdGhlIGNhcmV0XG4gIC5jYXJldCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItYm90dG9tOiBAY2FyZXQtd2lkdGgtYmFzZSBzb2xpZDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG4gIC8vIERpZmZlcmVudCBwb3NpdGlvbmluZyBmb3IgYm90dG9tIHVwIG1lbnVcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICB9XG59XG5cblxuLy8gQ29tcG9uZW50IGFsaWdubWVudFxuLy9cbi8vIFJlaXRlcmF0ZSBwZXIgbmF2YmFyLmxlc3MgYW5kIHRoZSBtb2RpZmllZCBjb21wb25lbnQgYWxpZ25tZW50IHRoZXJlLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogQGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAubmF2YmFyLXJpZ2h0IHtcbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAuZHJvcGRvd24tbWVudS1yaWdodCgpO1xuICAgIH1cbiAgICAvLyBOZWNlc3NhcnkgZm9yIG92ZXJyaWRlcyBvZiB0aGUgZGVmYXVsdCByaWdodCBhbGlnbmVkIG1lbnUuXG4gICAgLy8gV2lsbCByZW1vdmUgY29tZSB2NCBpbiBhbGwgbGlrZWxpaG9vZC5cbiAgICAuZHJvcGRvd24tbWVudS1sZWZ0IHtcbiAgICAgIC5kcm9wZG93bi1tZW51LWxlZnQoKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuLm5hdi1kaXZpZGVyKEBjb2xvcjogI2U1ZTVlNSkge1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAoKEBsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpIC0gMSkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yO1xufVxuIiwiLy9cbi8vIElucHV0IGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQmFzZSBzdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGRyb3Bkb3duc1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTsgLy8gcHJldmVudCBpbnB1dCBncm91cHMgZnJvbSBpbmhlcml0aW5nIGJvcmRlciBzdHlsZXMgZnJvbSB0YWJsZSBjZWxscyB3aGVuIHBsYWNlZCB3aXRoaW4gYSB0YWJsZVxuXG4gIC8vIFVuZG8gcGFkZGluZyBhbmQgZmxvYXQgb2YgZ3JpZCBjbGFzc2VzXG4gICZbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICAvLyBFbnN1cmUgdGhhdCB0aGUgaW5wdXQgaXMgYWx3YXlzIGFib3ZlIHRoZSAqYXBwZW5kZWQqIGFkZG9uIGJ1dHRvbiBmb3JcbiAgICAvLyBwcm9wZXIgYm9yZGVyIGNvbG9ycy5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgIC8vIElFOSBmdWJhcnMgdGhlIHBsYWNlaG9sZGVyIGF0dHJpYnV0ZSBpbiB0ZXh0IGlucHV0cyBhbmQgdGhlIGFycm93cyBvblxuICAgIC8vIHNlbGVjdCBlbGVtZW50cyBpbiBpbnB1dCBncm91cHMuIFRvIGZpeCBpdCwgd2UgZmxvYXQgdGhlIGlucHV0LiBEZXRhaWxzOlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1NjEjaXNzdWVjb21tZW50LTI4OTM2ODU1XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vIFNpemluZyBvcHRpb25zXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xuICAuaW5wdXQtbGcoKTtcbn1cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XG4gIC5pbnB1dC1zbSgpO1xufVxuXG5cbi8vIERpc3BsYXkgYXMgdGFibGUtY2VsbFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWJ0bixcbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcblxuICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cbi8vIEFkZG9uIGFuZCBhZGRvbiB3cmFwcGVyIGZvciBidXR0b25zXG4uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtYnRuIHtcbiAgd2lkdGg6IDElO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBNYXRjaCB0aGUgaW5wdXRzXG59XG5cbi8vIFRleHQgaW5wdXQgZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAtYWRkb24ge1xuICBwYWRkaW5nOiBAcGFkZGluZy1iYXNlLXZlcnRpY2FsIEBwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiBAZm9udC1zaXplLWJhc2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogQGlucHV0LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IEBpbnB1dC1ncm91cC1hZGRvbi1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgQGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlci1yYWRpdXMtYmFzZTtcblxuICAvLyBTaXppbmdcbiAgJi5pbnB1dC1zbSB7XG4gICAgcGFkZGluZzogQHBhZGRpbmctc21hbGwtdmVydGljYWwgQHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6IEBmb250LXNpemUtc21hbGw7XG4gICAgYm9yZGVyLXJhZGl1czogQGJvcmRlci1yYWRpdXMtc21hbGw7XG4gIH1cbiAgJi5pbnB1dC1sZyB7XG4gICAgcGFkZGluZzogQHBhZGRpbmctbGFyZ2UtdmVydGljYWwgQHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6IEBmb250LXNpemUtbGFyZ2U7XG4gICAgYm9yZGVyLXJhZGl1czogQGJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIH1cblxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuZHJvcGRvd24tdG9nZ2xlLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAuYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbn1cbi5pbnB1dC1ncm91cC1hZGRvbjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yaWdodDogMDtcbn1cbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOmxhc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYWRkb246bGFzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuLWdyb3VwID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5kcm9wZG93bi10b2dnbGUsXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gIC5ib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG4uaW5wdXQtZ3JvdXAtYWRkb246bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG4vLyBCdXR0b24gaW5wdXQgZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAtYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBKYW5raWx5IHByZXZlbnQgaW5wdXQgYnV0dG9uIGdyb3VwcyBmcm9tIHdyYXBwaW5nIHdpdGggYHdoaXRlLXNwYWNlYCBhbmRcbiAgLy8gYGZvbnQtc2l6ZWAgaW4gY29tYmluYXRpb24gd2l0aCBgaW5saW5lLWJsb2NrYCBvbiBidXR0b25zLlxuICBmb250LXNpemU6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBzcGFjaW5nLCBwb3NpdGlvbiBmb3IgYnJpbmdpbmcgaG92ZXJlZC9mb2N1c2VkL2FjdGl2ZWRcbiAgLy8gZWxlbWVudCBhYm92ZSB0aGUgc2libGluZ3MuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICsgLmJ0biB7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICB9XG4gICAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgYnV0dG9uIHRvIHRoZSBmcm9udFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgfVxuXG4gIC8vIE5lZ2F0aXZlIG1hcmdpbiB0byBvbmx5IGhhdmUgYSAxcHggYm9yZGVyIGJldHdlZW4gdGhlIHR3b1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICA+IC5idG4sXG4gICAgPiAuYnRuLWdyb3VwIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTFweDtcbiAgICB9XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICA+IC5idG4sXG4gICAgPiAuYnRuLWdyb3VwIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIE5hdnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm5hdiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCB1bC9vbFxuICBsaXN0LXN0eWxlOiBub25lO1xuICAmOmV4dGVuZCguY2xlYXJmaXggYWxsKTtcblxuICA+IGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICA+IGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiBAbmF2LWxpbmstcGFkZGluZztcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2LWxpbmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3RhdGUgc2V0cyB0ZXh0IHRvIGdyYXkgYW5kIG51a2VzIGhvdmVyL3RhYiBlZmZlY3RzXG4gICAgJi5kaXNhYmxlZCA+IGEge1xuICAgICAgY29sb3I6IEBuYXYtZGlzYWJsZWQtbGluay1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogQG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjdXJzb3I6IEBjdXJzb3ItZGlzYWJsZWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gT3BlbiBkcm9wZG93bnNcbiAgLm9wZW4gPiBhIHtcbiAgICAmLFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2LWxpbmstaG92ZXItYmc7XG4gICAgICBib3JkZXItY29sb3I6IEBsaW5rLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIE5hdiBkaXZpZGVycyAoZGVwcmVjYXRlZCB3aXRoIHYzLjAuMSlcbiAgLy9cbiAgLy8gVGhpcyBzaG91bGQgaGF2ZSBiZWVuIHJlbW92ZWQgaW4gdjMgd2l0aCB0aGUgZHJvcHBpbmcgb2YgYC5uYXYtbGlzdGAsIGJ1dFxuICAvLyB3ZSBtaXNzZWQgaXQuIFdlIGRvbid0IGN1cnJlbnRseSBzdXBwb3J0IHRoaXMgYW55d2hlcmUsIGJ1dCBpbiB0aGUgaW50ZXJlc3RcbiAgLy8gb2YgbWFpbnRhaW5pbmcgYmFja3dhcmQgY29tcGF0aWJpbGl0eSBpbiBjYXNlIHlvdSB1c2UgaXQsIGl0J3MgZGVwcmVjYXRlZC5cbiAgLm5hdi1kaXZpZGVyIHtcbiAgICAubmF2LWRpdmlkZXIoKTtcbiAgfVxuXG4gIC8vIFByZXZlbnQgSUU4IGZyb20gbWlzcGxhY2luZyBpbWdzXG4gIC8vXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9pc3N1ZXMvOTg0I2lzc3VlY29tbWVudC0zOTg1OTg5XG4gID4gbGkgPiBhID4gaW1nIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBUYWJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEdpdmUgdGhlIHRhYnMgc29tZXRoaW5nIHRvIHNpdCBvblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEBuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIC8vIE1ha2UgdGhlIGxpc3QtaXRlbXMgb3ZlcmxheSB0aGUgYm90dG9tIGJvcmRlclxuICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XG5cbiAgICAvLyBBY3R1YWwgdGFicyAoYXMgbGlua3MpXG4gICAgPiBhIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodC1iYXNlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cy1iYXNlIEBib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogQG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yIEBuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvciBAbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZSwgYW5kIGl0cyA6aG92ZXIgdG8gb3ZlcnJpZGUgbm9ybWFsIDpob3ZlclxuICAgICYuYWN0aXZlID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogQG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIEBuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIHB1bGxpbmcgdGhpcyBpbiBtYWlubHkgZm9yIGxlc3Mgc2hvcnRoYW5kXG4gICYubmF2LWp1c3RpZmllZCB7XG4gICAgLm5hdi1qdXN0aWZpZWQoKTtcbiAgICAubmF2LXRhYnMtanVzdGlmaWVkKCk7XG4gIH1cbn1cblxuXG4vLyBQaWxsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm5hdi1waWxscyB7XG4gID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgLy8gTGlua3MgcmVuZGVyZWQgYXMgcGlsbHNcbiAgICA+IGEge1xuICAgICAgYm9yZGVyLXJhZGl1czogQG5hdi1waWxscy1ib3JkZXItcmFkaXVzO1xuICAgIH1cbiAgICArIGxpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiBAbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFN0YWNrZWQgcGlsbHNcbi5uYXYtc3RhY2tlZCB7XG4gID4gbGkge1xuICAgIGZsb2F0OiBub25lO1xuICAgICsgbGkge1xuICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IC8vIG5vIG5lZWQgZm9yIHRoaXMgZ2FwIGJldHdlZW4gbmF2IGl0ZW1zXG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2IHZhcmlhdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEp1c3RpZmllZCBuYXYgbGlua3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm5hdi1qdXN0aWZpZWQge1xuICB3aWR0aDogMTAwJTtcblxuICA+IGxpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICA+IGEge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIH1cbiAgfVxuXG4gID4gLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikge1xuICAgID4gbGkge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgID4gYSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE1vdmUgYm9yZGVycyB0byBhbmNob3JzIGluc3RlYWQgb2YgYm90dG9tIG9mIGxpc3Rcbi8vXG4vLyBNaXhpbiBmb3IgYWRkaW5nIG9uIHRvcCB0aGUgc2hhcmVkIGAubmF2LWp1c3RpZmllZGAgc3R5bGVzIGZvciBvdXIgdGFic1xuLm5hdi10YWJzLWp1c3RpZmllZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgPiBsaSA+IGEge1xuICAgIC8vIE92ZXJyaWRlIG1hcmdpbiBmcm9tIC5uYXYtdGFic1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cy1iYXNlO1xuICB9XG5cbiAgPiAuYWN0aXZlID4gYSxcbiAgPiAuYWN0aXZlID4gYTpob3ZlcixcbiAgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgQG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogQGJvcmRlci1yYWRpdXMtYmFzZSBAYm9yZGVyLXJhZGl1cy1iYXNlIDAgMDtcbiAgICB9XG4gICAgPiAuYWN0aXZlID4gYSxcbiAgICA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuICAgID4gLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogQG5hdi10YWJzLWp1c3RpZmllZC1hY3RpdmUtbGluay1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuXG4vLyBEcm9wZG93bnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gU3BlY2lmaWMgZHJvcGRvd25zXG4ubmF2LXRhYnMgLmRyb3Bkb3duLW1lbnUge1xuICAvLyBtYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgLmJvcmRlci10b3AtcmFkaXVzKDApO1xufVxuIiwiLy9cbi8vIE5hdmJhcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gV3JhcHBlciBhbmQgYmFzZSBjbGFzc1xuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogQG5hdmJhci1oZWlnaHQ7IC8vIEVuc3VyZSBhIG5hdmJhciBhbHdheXMgc2hvd3MgKGUuZy4sIHdpdGhvdXQgYSAubmF2YmFyLWJyYW5kIGluIGNvbGxhcHNlZCBtb2RlKVxuICBtYXJnaW4tYm90dG9tOiBAbmF2YmFyLW1hcmdpbi1ib3R0b207XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gIC8vIFByZXZlbnQgZmxvYXRzIGZyb20gYnJlYWtpbmcgdGhlIG5hdmJhclxuICAmOmV4dGVuZCguY2xlYXJmaXggYWxsKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogQGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGJvcmRlci1yYWRpdXM6IEBuYXZiYXItYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBoZWFkaW5nXG4vL1xuLy8gR3JvdXBzIGAubmF2YmFyLWJyYW5kYCBhbmQgYC5uYXZiYXItdG9nZ2xlYCBpbnRvIGEgc2luZ2xlIGNvbXBvbmVudCBmb3IgZWFzeVxuLy8gc3R5bGluZyBvZiByZXNwb25zaXZlIGFzcGVjdHMuXG5cbi5uYXZiYXItaGVhZGVyIHtcbiAgJjpleHRlbmQoLmNsZWFyZml4IGFsbCk7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IEBncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBjb2xsYXBzZSAoYm9keSlcbi8vXG4vLyBHcm91cCB5b3VyIG5hdmJhciBjb250ZW50IGludG8gdGhpcyBmb3IgZWFzeSBjb2xsYXBzaW5nIGFuZCBleHBhbmRpbmcgYWNyb3NzXG4vLyB2YXJpb3VzIGRldmljZSBzaXplcy4gQnkgZGVmYXVsdCwgdGhpcyBjb250ZW50IGlzIGNvbGxhcHNlZCB3aGVuIDw3NjhweCwgYnV0XG4vLyB3aWxsIGV4cGFuZCBwYXN0IHRoYXQgZm9yIGEgaG9yaXpvbnRhbCBkaXNwbGF5LlxuLy9cbi8vIFRvIHN0YXJ0IChvbiBtb2JpbGUgZGV2aWNlcykgdGhlIG5hdmJhciBsaW5rcywgZm9ybXMsIGFuZCBidXR0b25zIGFyZSBzdGFja2VkXG4vLyB2ZXJ0aWNhbGx5IGFuZCBpbmNsdWRlIGEgYG1heC1oZWlnaHRgIHRvIG92ZXJmbG93IGluIGNhc2UgeW91IGhhdmUgdG9vIG11Y2hcbi8vIGNvbnRlbnQgZm9yIHRoZSB1c2VyJ3Mgdmlld3BvcnQuXG5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBvdmVyZmxvdy14OiB2aXNpYmxlO1xuICBwYWRkaW5nLXJpZ2h0OiBAbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgcGFkZGluZy1sZWZ0OiAgQG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKTtcbiAgJjpleHRlbmQoLmNsZWFyZml4IGFsbCk7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAmLmluIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IEBncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAmLmNvbGxhcHNlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IHNldHRpbmdcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi5pbiB7XG4gICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8vIFVuZG8gdGhlIGNvbGxhcHNlIHNpZGUgcGFkZGluZyBmb3IgbmF2YmFycyB3aXRoIGNvbnRhaW5lcnMgdG8gZW5zdXJlXG4gICAgLy8gYWxpZ25tZW50IG9mIHJpZ2h0LWFsaWduZWQgY29udGVudHMuXG4gICAgLm5hdmJhci1maXhlZC10b3AgJixcbiAgICAubmF2YmFyLXN0YXRpYy10b3AgJixcbiAgICAubmF2YmFyLWZpeGVkLWJvdHRvbSAmIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5uYXZiYXItZml4ZWQtdG9wLFxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xuICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBtYXgtaGVpZ2h0OiBAbmF2YmFyLWNvbGxhcHNlLW1heC1oZWlnaHQ7XG5cbiAgICBAbWVkaWEgKG1heC1kZXZpY2Utd2lkdGg6IEBzY3JlZW4teHMtbWluKSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJvdGggbmF2YmFyIGhlYWRlciBhbmQgY29sbGFwc2Vcbi8vXG4vLyBXaGVuIGEgY29udGFpbmVyIGlzIHByZXNlbnQsIGNoYW5nZSB0aGUgYmVoYXZpb3Igb2YgdGhlIGhlYWRlciBhbmQgY29sbGFwc2UuXG5cbi5jb250YWluZXIsXG4uY29udGFpbmVyLWZsdWlkIHtcbiAgPiAubmF2YmFyLWhlYWRlcixcbiAgPiAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC1AbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBtYXJnaW4tbGVmdDogIC1AbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiBAZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogIDA7XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIE5hdmJhciBhbGlnbm1lbnQgb3B0aW9uc1xuLy9cbi8vIERpc3BsYXkgdGhlIG5hdmJhciBhY3Jvc3MgdGhlIGVudGlyZXR5IG9mIHRoZSBwYWdlIG9yIGZpeGVkIGl0IHRvIHRoZSB0b3Agb3Jcbi8vIGJvdHRvbSBvZiB0aGUgcGFnZS5cblxuLy8gU3RhdGljIHRvcCAodW5maXhlZCwgYnV0IDEwMCUgd2lkZSkgbmF2YmFyXG4ubmF2YmFyLXN0YXRpYy10b3Age1xuICB6LWluZGV4OiBAemluZGV4LW5hdmJhcjtcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuXG4vLyBGaXggdGhlIHRvcC9ib3R0b20gbmF2YmFycyB3aGVuIHNjcmVlbiByZWFsIGVzdGF0ZSBzdXBwb3J0cyBpdFxuLm5hdmJhci1maXhlZC10b3AsXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IEB6aW5kZXgtbmF2YmFyLWZpeGVkO1xuXG4gIC8vIFVuZG8gdGhlIHJvdW5kZWQgY29ybmVyc1xuICBAbWVkaWEgKG1pbi13aWR0aDogQGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cbi5uYXZiYXItZml4ZWQtdG9wIHtcbiAgdG9wOiAwO1xuICBib3JkZXItd2lkdGg6IDAgMCAxcHg7XG59XG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gb3ZlcnJpZGUgLm5hdmJhciBkZWZhdWx0c1xuICBib3JkZXItd2lkdGg6IDFweCAwIDA7XG59XG5cblxuLy8gQnJhbmQvcHJvamVjdCBuYW1lXG5cbi5uYXZiYXItYnJhbmQge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogQG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsIEBuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBmb250LXNpemU6IEBmb250LXNpemUtbGFyZ2U7XG4gIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGhlaWdodDogQG5hdmJhci1oZWlnaHQ7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgPiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IEBncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICAubmF2YmFyID4gLmNvbnRhaW5lciAmLFxuICAgIC5uYXZiYXIgPiAuY29udGFpbmVyLWZsdWlkICYge1xuICAgICAgbWFyZ2luLWxlZnQ6IC1AbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdG9nZ2xlXG4vL1xuLy8gQ3VzdG9tIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIGAubmF2YmFyLWNvbGxhcHNlYCwgcG93ZXJlZCBieSB0aGUgY29sbGFwc2Vcbi8vIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4ubmF2YmFyLXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IEBuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBwYWRkaW5nOiA5cHggMTBweDtcbiAgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbigzNHB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgLy8gV2UgcmVtb3ZlIHRoZSBgb3V0bGluZWAgaGVyZSwgYnV0IGxhdGVyIGNvbXBlbnNhdGUgYnkgYXR0YWNoaW5nIGA6aG92ZXJgXG4gIC8vIHN0eWxlcyB0byBgOmZvY3VzYC5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gIC8vIEJhcnNcbiAgLmljb24tYmFyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMjJweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7XG4gIH1cbiAgLmljb24tYmFyICsgLmljb24tYmFyIHtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogQGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2IGxpbmtzXG4vL1xuLy8gQnVpbGRzIG9uIHRvcCBvZiB0aGUgYC5uYXZgIGNvbXBvbmVudHMgd2l0aCBpdHMgb3duIG1vZGlmaWVyIGNsYXNzIHRvIG1ha2Vcbi8vIHRoZSBuYXYgdGhlIGZ1bGwgaGVpZ2h0IG9mIHRoZSBob3Jpem9udGFsIG5hdiAoYWJvdmUgNzY4cHgpLlxuXG4ubmF2YmFyLW5hdiB7XG4gIG1hcmdpbjogKEBuYXZiYXItcGFkZGluZy12ZXJ0aWNhbCAvIDIpIC1AbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcblxuICA+IGxpID4gYSB7XG4gICAgcGFkZGluZy10b3A6ICAgIDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiBAZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgIC8vIERyb3Bkb3ducyBnZXQgY3VzdG9tIGRpc3BsYXkgd2hlbiBjb2xsYXBzZWRcbiAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICA+IGxpID4gYSxcbiAgICAgIC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiA1cHggMTVweCA1cHggMjVweDtcbiAgICAgIH1cbiAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFVuY29sbGFwc2UgdGhlIG5hdlxuICBAbWVkaWEgKG1pbi13aWR0aDogQGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMDtcblxuICAgID4gbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICA+IGEge1xuICAgICAgICBwYWRkaW5nLXRvcDogICAgQG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogQG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBmb3JtXG4vL1xuLy8gRXh0ZW5zaW9uIG9mIHRoZSBgLmZvcm0taW5saW5lYCB3aXRoIHNvbWUgZXh0cmEgZmxhdm9yIGZvciBvcHRpbXVtIGRpc3BsYXkgaW5cbi8vIG91ciBuYXZiYXJzLlxuXG4ubmF2YmFyLWZvcm0ge1xuICBtYXJnaW4tbGVmdDogLUBuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBtYXJnaW4tcmlnaHQ6IC1AbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgcGFkZGluZzogMTBweCBAbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBzaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSksIDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSk7XG4gIC5ib3gtc2hhZG93KEBzaGFkb3cpO1xuXG4gIC8vIE1peGluIGJlaGF2aW9yIGZvciBvcHRpbXVtIGRpc3BsYXlcbiAgLmZvcm0taW5saW5lKCk7XG5cbiAgLmZvcm0tZ3JvdXAge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBAZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsbHkgY2VudGVyIGluIGV4cGFuZGVkLCBob3Jpem9udGFsIG5hdmJhclxuICAubmF2YmFyLXZlcnRpY2FsLWFsaWduKEBpbnB1dC1oZWlnaHQtYmFzZSk7XG5cbiAgLy8gVW5kbyAxMDAlIHdpZHRoIGZvciBwdWxsIGNsYXNzZXNcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIC5ib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy8gRHJvcGRvd24gbWVudXNcblxuLy8gTWVudSBwb3NpdGlvbiBhbmQgbWVudSBjYXJldHNcbi5uYXZiYXItbmF2ID4gbGkgPiAuZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIC5ib3JkZXItdG9wLXJhZGl1cygwKTtcbn1cbi8vIE1lbnUgcG9zaXRpb24gYW5kIG1lbnUgY2FyZXQgc3VwcG9ydCBmb3IgZHJvcHVwcyB2aWEgZXh0cmEgZHJvcHVwIGNsYXNzXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSAubmF2YmFyLW5hdiA+IGxpID4gLmRyb3Bkb3duLW1lbnUge1xuICAuYm9yZGVyLXRvcC1yYWRpdXMoQG5hdmJhci1ib3JkZXItcmFkaXVzKTtcbiAgLmJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xufVxuXG5cbi8vIEJ1dHRvbnMgaW4gbmF2YmFyc1xuLy9cbi8vIFZlcnRpY2FsbHkgY2VudGVyIGEgYnV0dG9uIHdpdGhpbiBhIG5hdmJhciAod2hlbiAqbm90KiBpbiBhIGZvcm0pLlxuXG4ubmF2YmFyLWJ0biB7XG4gIC5uYXZiYXItdmVydGljYWwtYWxpZ24oQGlucHV0LWhlaWdodC1iYXNlKTtcblxuICAmLmJ0bi1zbSB7XG4gICAgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbihAaW5wdXQtaGVpZ2h0LXNtYWxsKTtcbiAgfVxuICAmLmJ0bi14cyB7XG4gICAgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbigyMik7XG4gIH1cbn1cblxuXG4vLyBUZXh0IGluIG5hdmJhcnNcbi8vXG4vLyBBZGQgYSBjbGFzcyB0byBtYWtlIGFueSBlbGVtZW50IHByb3Blcmx5IGFsaWduIGl0c2VsZiB2ZXJ0aWNhbGx5IHdpdGhpbiB0aGUgbmF2YmFycy5cblxuLm5hdmJhci10ZXh0IHtcbiAgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbihAbGluZS1oZWlnaHQtY29tcHV0ZWQpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IEBuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIG1hcmdpbi1yaWdodDogQG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIH1cbn1cblxuXG4vLyBDb21wb25lbnQgYWxpZ25tZW50XG4vL1xuLy8gUmVwdXJwb3NlIHRoZSBwdWxsIHV0aWxpdGllcyBhcyB0aGVpciBvd24gbmF2YmFyIHV0aWxpdGllcyB0byBhdm9pZCBzcGVjaWZpY2l0eVxuLy8gaXNzdWVzIHdpdGggcGFyZW50cyBhbmQgY2hhaW5pbmcuIE9ubHkgZG8gdGhpcyB3aGVuIHRoZSBuYXZiYXIgaXMgdW5jb2xsYXBzZWRcbi8vIHRob3VnaCBzbyB0aGF0IG5hdmJhciBjb250ZW50cyBwcm9wZXJseSBzdGFjayBhbmQgYWxpZ24gaW4gbW9iaWxlLlxuLy9cbi8vIERlY2xhcmVkIGFmdGVyIHRoZSBuYXZiYXIgY29tcG9uZW50cyB0byBlbnN1cmUgbW9yZSBzcGVjaWZpY2l0eSBvbiB0aGUgbWFyZ2lucy5cblxuQG1lZGlhIChtaW4td2lkdGg6IEBncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgLm5hdmJhci1sZWZ0ICB7IC5wdWxsLWxlZnQoKTsgfVxuICAubmF2YmFyLXJpZ2h0IHtcbiAgICAucHVsbC1yaWdodCgpO1xuICAgIG1hcmdpbi1yaWdodDogLUBuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuXG4gICAgfiAubmF2YmFyLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBBbHRlcm5hdGUgbmF2YmFyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRGVmYXVsdCBuYXZiYXJcbi5uYXZiYXItZGVmYXVsdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXItZGVmYXVsdC1iZztcbiAgYm9yZGVyLWNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtYm9yZGVyO1xuXG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogQG5hdmJhci1kZWZhdWx0LWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogQG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGUge1xuICAgIGJvcmRlci1jb2xvcjogQG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ib3JkZXItY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc7XG4gICAgfVxuICAgIC5pY29uLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWljb24tYmFyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItY29sbGFwc2UsXG4gIC5uYXZiYXItZm9ybSB7XG4gICAgYm9yZGVyLWNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtYm9yZGVyO1xuICB9XG5cbiAgLy8gRHJvcGRvd24gbWVudSBpdGVtc1xuICAubmF2YmFyLW5hdiB7XG4gICAgLy8gUmVtb3ZlIGJhY2tncm91bmQgY29sb3IgZnJvbSBvcGVuIGRyb3Bkb3duXG4gICAgPiAub3BlbiA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnO1xuICAgICAgICBjb2xvcjogQG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBAZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheSB3aGVuIGNvbGxhcHNlZFxuICAgICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICA+IGxpID4gYSB7XG4gICAgICAgICAgY29sb3I6IEBuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogQG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuYWN0aXZlID4gYSB7XG4gICAgICAgICAgJixcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6IEBuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogQG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC8vIExpbmtzIGluIG5hdmJhcnNcbiAgLy9cbiAgLy8gQWRkIGEgY2xhc3MgdG8gZW5zdXJlIGxpbmtzIG91dHNpZGUgdGhlIG5hdmJhciBuYXYgYXJlIGNvbG9yZWQgY29ycmVjdGx5LlxuXG4gIC5uYXZiYXItbGluayB7XG4gICAgY29sb3I6IEBuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IEBuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tbGluayB7XG4gICAgY29sb3I6IEBuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogQG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICAgICZbZGlzYWJsZWRdLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IEBuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBJbnZlcnNlIG5hdmJhclxuXG4ubmF2YmFyLWludmVyc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2YmFyLWludmVyc2UtYmc7XG4gIGJvcmRlci1jb2xvcjogQG5hdmJhci1pbnZlcnNlLWJvcmRlcjtcblxuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogQG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogQG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6IEBuYXZiYXItaW52ZXJzZS1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogQG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IEBuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuYWN0aXZlID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogQG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc7XG4gICAgICB9XG4gICAgfVxuICAgID4gLmRpc2FibGVkID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogQG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIERhcmtlbiB0aGUgcmVzcG9uc2l2ZSBuYXYgdG9nZ2xlXG4gIC5uYXZiYXItdG9nZ2xlIHtcbiAgICBib3JkZXItY29sb3I6IEBuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2YmFyLWludmVyc2UtdG9nZ2xlLWhvdmVyLWJnO1xuICAgIH1cbiAgICAuaWNvbi1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1pY29uLWJhci1iZztcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLWNvbGxhcHNlLFxuICAubmF2YmFyLWZvcm0ge1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKEBuYXZiYXItaW52ZXJzZS1iZywgNyUpO1xuICB9XG5cbiAgLy8gRHJvcGRvd25zXG4gIC5uYXZiYXItbmF2IHtcbiAgICA+IC5vcGVuID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc7XG4gICAgICAgIGNvbG9yOiBAbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IEBncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgICAvLyBEcm9wZG93bnMgZ2V0IGN1c3RvbSBkaXNwbGF5XG4gICAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgID4gLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBAbmF2YmFyLWludmVyc2UtYm9yZGVyO1xuICAgICAgICB9XG4gICAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2YmFyLWludmVyc2UtYm9yZGVyO1xuICAgICAgICB9XG4gICAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgICBjb2xvcjogQG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiBAbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogQG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiBAbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbGluayB7XG4gICAgY29sb3I6IEBuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IEBuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tbGluayB7XG4gICAgY29sb3I6IEBuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogQG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICAgICZbZGlzYWJsZWRdLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IEBuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gTmF2YmFyIHZlcnRpY2FsIGFsaWduXG4vL1xuLy8gVmVydGljYWxseSBjZW50ZXIgZWxlbWVudHMgaW4gdGhlIG5hdmJhci5cbi8vIEV4YW1wbGU6IGFuIGVsZW1lbnQgaGFzIGEgaGVpZ2h0IG9mIDMwcHgsIHNvIHdyaXRlIG91dCBgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbigzMHB4KTtgIHRvIGNhbGN1bGF0ZSB0aGUgYXBwcm9wcmlhdGUgdG9wIG1hcmdpbi5cblxuLm5hdmJhci12ZXJ0aWNhbC1hbGlnbihAZWxlbWVudC1oZWlnaHQpIHtcbiAgbWFyZ2luLXRvcDogKChAbmF2YmFyLWhlaWdodCAtIEBlbGVtZW50LWhlaWdodCkgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogKChAbmF2YmFyLWhlaWdodCAtIEBlbGVtZW50LWhlaWdodCkgLyAyKTtcbn1cbiIsIi8vXG4vLyBVdGlsaXR5IGNsYXNzZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gRmxvYXRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5jbGVhcmZpeCB7XG4gIC5jbGVhcmZpeCgpO1xufVxuLmNlbnRlci1ibG9jayB7XG4gIC5jZW50ZXItYmxvY2soKTtcbn1cbi5wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG4ucHVsbC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cblxuXG4vLyBUb2dnbGluZyBjb250ZW50XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE5vdGU6IERlcHJlY2F0ZWQgLmhpZGUgaW4gZmF2b3Igb2YgLmhpZGRlbiBvciAuc3Itb25seSAoYXMgYXBwcm9wcmlhdGUpIGluIHYzLjAuMVxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4uc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnRleHQtaGlkZSB7XG4gIC50ZXh0LWhpZGUoKTtcbn1cblxuXG4vLyBIaWRlIGZyb20gc2NyZWVucmVhZGVycyBhbmQgYnJvd3NlcnNcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG5cbi8vIEZvciBBZmZpeCBwbHVnaW5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmFmZml4IHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuIiwiLy9cbi8vIEJyZWFkY3J1bWJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5icmVhZGNydW1iIHtcbiAgcGFkZGluZzogQGJyZWFkY3J1bWItcGFkZGluZy12ZXJ0aWNhbCBAYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw7XG4gIG1hcmdpbi1ib3R0b206IEBsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGJyZWFkY3J1bWItYmc7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgKyBsaTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJAe2JyZWFkY3J1bWItc2VwYXJhdG9yfVxcMDBhMFwiOyAvLyBVbmljb2RlIHNwYWNlIGFkZGVkIHNpbmNlIGlubGluZS1ibG9jayBtZWFucyBub24tY29sbGFwc2luZyB3aGl0ZS1zcGFjZVxuICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgICBjb2xvcjogQGJyZWFkY3J1bWItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgPiAuYWN0aXZlIHtcbiAgICBjb2xvcjogQGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yO1xuICB9XG59XG4iLCIvL1xuLy8gUGFnaW5hdGlvbiAobXVsdGlwbGUgcGFnZXMpXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luOiBAbGluZS1oZWlnaHQtY29tcHV0ZWQgMDtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlci1yYWRpdXMtYmFzZTtcblxuICA+IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7IC8vIFJlbW92ZSBsaXN0LXN0eWxlIGFuZCBibG9jay1sZXZlbCBkZWZhdWx0c1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxvYXQ6IGxlZnQ7IC8vIENvbGxhcHNlIHdoaXRlLXNwYWNlXG4gICAgICBwYWRkaW5nOiBAcGFkZGluZy1iYXNlLXZlcnRpY2FsIEBwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiBAcGFnaW5hdGlvbi1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBwYWdpbmF0aW9uLWJnO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgQHBhZ2luYXRpb24tYm9yZGVyO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgfVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIC5ib3JkZXItbGVmdC1yYWRpdXMoQGJvcmRlci1yYWRpdXMtYmFzZSk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICAuYm9yZGVyLXJpZ2h0LXJhZGl1cyhAYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IGxpID4gYSxcbiAgPiBsaSA+IHNwYW4ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogQHBhZ2luYXRpb24taG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAcGFnaW5hdGlvbi1ob3Zlci1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogQHBhZ2luYXRpb24taG92ZXItYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gID4gLmFjdGl2ZSA+IGEsXG4gID4gLmFjdGl2ZSA+IHNwYW4ge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBjb2xvcjogQHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQHBhZ2luYXRpb24tYWN0aXZlLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiBAcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyO1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cbiAgfVxuXG4gID4gLmRpc2FibGVkIHtcbiAgICA+IHNwYW4sXG4gICAgPiBzcGFuOmhvdmVyLFxuICAgID4gc3Bhbjpmb2N1cyxcbiAgICA+IGEsXG4gICAgPiBhOmhvdmVyLFxuICAgID4gYTpmb2N1cyB7XG4gICAgICBjb2xvcjogQHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogQHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyO1xuICAgICAgY3Vyc29yOiBAY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIExhcmdlXG4ucGFnaW5hdGlvbi1sZyB7XG4gIC5wYWdpbmF0aW9uLXNpemUoQHBhZGRpbmctbGFyZ2UtdmVydGljYWw7IEBwYWRkaW5nLWxhcmdlLWhvcml6b250YWw7IEBmb250LXNpemUtbGFyZ2U7IEBib3JkZXItcmFkaXVzLWxhcmdlKTtcbn1cblxuLy8gU21hbGxcbi5wYWdpbmF0aW9uLXNtIHtcbiAgLnBhZ2luYXRpb24tc2l6ZShAcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDsgQHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDsgQGZvbnQtc2l6ZS1zbWFsbDsgQGJvcmRlci1yYWRpdXMtc21hbGwpO1xufVxuIiwiLy8gUGFnaW5hdGlvblxuXG4ucGFnaW5hdGlvbi1zaXplKEBwYWRkaW5nLXZlcnRpY2FsOyBAcGFkZGluZy1ob3Jpem9udGFsOyBAZm9udC1zaXplOyBAYm9yZGVyLXJhZGl1cykge1xuICA+IGxpIHtcbiAgICA+IGEsXG4gICAgPiBzcGFuIHtcbiAgICAgIHBhZGRpbmc6IEBwYWRkaW5nLXZlcnRpY2FsIEBwYWRkaW5nLWhvcml6b250YWw7XG4gICAgICBmb250LXNpemU6IEBmb250LXNpemU7XG4gICAgfVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgLmJvcmRlci1sZWZ0LXJhZGl1cyhAYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICAuYm9yZGVyLXJpZ2h0LXJhZGl1cyhAYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gUGFnZXIgcGFnaW5hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4ucGFnZXIge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogQGxpbmUtaGVpZ2h0LWNvbXB1dGVkIDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgJjpleHRlbmQoLmNsZWFyZml4IGFsbCk7XG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiA1cHggMTRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBwYWdlci1iZztcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIEBwYWdlci1ib3JkZXI7XG4gICAgICBib3JkZXItcmFkaXVzOiBAcGFnZXItYm9yZGVyLXJhZGl1cztcbiAgICB9XG5cbiAgICA+IGE6aG92ZXIsXG4gICAgPiBhOmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBwYWdlci1ob3Zlci1iZztcbiAgICB9XG4gIH1cblxuICAubmV4dCB7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLnByZXZpb3VzIHtcbiAgICA+IGEsXG4gICAgPiBzcGFuIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgfVxuXG4gIC5kaXNhYmxlZCB7XG4gICAgPiBhLFxuICAgID4gYTpob3ZlcixcbiAgICA+IGE6Zm9jdXMsXG4gICAgPiBzcGFuIHtcbiAgICAgIGNvbG9yOiBAcGFnZXItZGlzYWJsZWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAcGFnZXItYmc7XG4gICAgICBjdXJzb3I6IEBjdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gTGFiZWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHBhZGRpbmc6IC4yZW0gLjZlbSAuM2VtO1xuICBmb250LXNpemU6IDc1JTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogQGxhYmVsLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYm9yZGVyLXJhZGl1czogLjI1ZW07XG5cbiAgLy8gQWRkIGhvdmVyIGVmZmVjdHMsIGJ1dCBvbmx5IGZvciBsaW5rc1xuICBhJiB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBAbGFiZWwtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cblxuICAvLyBFbXB0eSBsYWJlbHMgY29sbGFwc2UgYXV0b21hdGljYWxseSAobm90IGF2YWlsYWJsZSBpbiBJRTgpXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBRdWljayBmaXggZm9yIGxhYmVscyBpbiBidXR0b25zXG4gIC5idG4gJiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTFweDtcbiAgfVxufVxuXG4vLyBDb2xvcnNcbi8vIENvbnRleHR1YWwgdmFyaWF0aW9ucyAobGlua2VkIGxhYmVscyBnZXQgZGFya2VyIG9uIDpob3ZlcilcblxuLmxhYmVsLWRlZmF1bHQge1xuICAubGFiZWwtdmFyaWFudChAbGFiZWwtZGVmYXVsdC1iZyk7XG59XG5cbi5sYWJlbC1wcmltYXJ5IHtcbiAgLmxhYmVsLXZhcmlhbnQoQGxhYmVsLXByaW1hcnktYmcpO1xufVxuXG4ubGFiZWwtc3VjY2VzcyB7XG4gIC5sYWJlbC12YXJpYW50KEBsYWJlbC1zdWNjZXNzLWJnKTtcbn1cblxuLmxhYmVsLWluZm8ge1xuICAubGFiZWwtdmFyaWFudChAbGFiZWwtaW5mby1iZyk7XG59XG5cbi5sYWJlbC13YXJuaW5nIHtcbiAgLmxhYmVsLXZhcmlhbnQoQGxhYmVsLXdhcm5pbmctYmcpO1xufVxuXG4ubGFiZWwtZGFuZ2VyIHtcbiAgLmxhYmVsLXZhcmlhbnQoQGxhYmVsLWRhbmdlci1iZyk7XG59XG4iLCIvLyBMYWJlbHNcblxuLmxhYmVsLXZhcmlhbnQoQGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvcjtcblxuICAmW2hyZWZdIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBjb2xvciwgMTAlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYWRnZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDEwcHg7XG4gIHBhZGRpbmc6IDNweCA3cHg7XG4gIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1zbWFsbDtcbiAgZm9udC13ZWlnaHQ6IEBiYWRnZS1mb250LXdlaWdodDtcbiAgY29sb3I6IEBiYWRnZS1jb2xvcjtcbiAgbGluZS1oZWlnaHQ6IEBiYWRnZS1saW5lLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IEBiYWRnZS1iZztcbiAgYm9yZGVyLXJhZGl1czogQGJhZGdlLWJvcmRlci1yYWRpdXM7XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHkgKG5vdCBhdmFpbGFibGUgaW4gSUU4KVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuICAuYnRuICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gIH1cbiAgLmJ0bi14cyAmIHtcbiAgICB0b3A6IDA7XG4gICAgcGFkZGluZzogMXB4IDVweDtcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlLCBidXQgb25seSBmb3IgbGlua3NcbiAgYSYge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogQGJhZGdlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gQWNjb3VudCBmb3IgYmFkZ2VzIGluIG5hdnNcbiAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgPiAmLFxuICAubmF2LXBpbGxzID4gLmFjdGl2ZSA+IGEgPiAmIHtcbiAgICBjb2xvcjogQGJhZGdlLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmFkZ2UtYWN0aXZlLWJnO1xuICB9XG4gIC5saXN0LWdyb3VwLWl0ZW0gPiAmIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaXRlbSA+ICYgKyAmIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgfVxuICAubmF2LXBpbGxzID4gbGkgPiBhID4gJiB7XG4gICAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgfVxufVxuIiwiLy9cbi8vIEp1bWJvdHJvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uanVtYm90cm9uIHtcbiAgcGFkZGluZzogQGp1bWJvdHJvbi1wYWRkaW5nIChAanVtYm90cm9uLXBhZGRpbmcgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogQGp1bWJvdHJvbi1wYWRkaW5nO1xuICBjb2xvcjogQGp1bWJvdHJvbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGp1bWJvdHJvbi1iZztcblxuICBoMSxcbiAgLmgxIHtcbiAgICBjb2xvcjogQGp1bWJvdHJvbi1oZWFkaW5nLWNvbG9yO1xuICB9XG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IChAanVtYm90cm9uLXBhZGRpbmcgLyAyKTtcbiAgICBmb250LXNpemU6IEBqdW1ib3Ryb24tZm9udC1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIH1cblxuICA+IGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oQGp1bWJvdHJvbi1iZywgMTAlKTtcbiAgfVxuXG4gIC5jb250YWluZXIgJixcbiAgLmNvbnRhaW5lci1mbHVpZCAmIHtcbiAgICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cy1sYXJnZTsgLy8gT25seSByb3VuZCBjb3JuZXJzIGF0IGhpZ2hlciByZXNvbHV0aW9ucyBpZiBjb250YWluZWQgaW4gYSBjb250YWluZXJcbiAgfVxuXG4gIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IEBzY3JlZW4tc20tbWluKSB7XG4gICAgcGFkZGluZzogKEBqdW1ib3Ryb24tcGFkZGluZyAqIDEuNikgMDtcblxuICAgIC5jb250YWluZXIgJixcbiAgICAuY29udGFpbmVyLWZsdWlkICYge1xuICAgICAgcGFkZGluZy1sZWZ0OiAgKEBqdW1ib3Ryb24tcGFkZGluZyAqIDIpO1xuICAgICAgcGFkZGluZy1yaWdodDogKEBqdW1ib3Ryb24tcGFkZGluZyAqIDIpO1xuICAgIH1cblxuICAgIGgxLFxuICAgIC5oMSB7XG4gICAgICBmb250LXNpemU6IChAZm9udC1zaXplLWJhc2UgKiA0LjUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEFsZXJ0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYWxlcnQge1xuICBwYWRkaW5nOiBAYWxlcnQtcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogQGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogQGFsZXJ0LWJvcmRlci1yYWRpdXM7XG5cbiAgLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbiAgaDQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgLy8gU3BlY2lmaWVkIGZvciB0aGUgaDQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgQGhlYWRpbmdzLWNvbG9yXG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbiAgLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbiAgLmFsZXJ0LWxpbmsge1xuICAgIGZvbnQtd2VpZ2h0OiBAYWxlcnQtbGluay1mb250LXdlaWdodDtcbiAgfVxuXG4gIC8vIEltcHJvdmUgYWxpZ25tZW50IGFuZCBzcGFjaW5nIG9mIGlubmVyIGNvbnRlbnRcbiAgPiBwLFxuICA+IHVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gID4gcCArIHAge1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgfVxufVxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NhYmxlLCAvLyBUaGUgbWlzc3BlbGxlZCAuYWxlcnQtZGlzbWlzc2FibGUgd2FzIGRlcHJlY2F0ZWQgaW4gMy4yLjAuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAoQGFsZXJ0LXBhZGRpbmcgKyAyMCk7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMnB4O1xuICAgIHJpZ2h0OiAtMjFweDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBBbHRlcm5hdGUgc3R5bGVzXG4vL1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydC5cblxuLmFsZXJ0LXN1Y2Nlc3Mge1xuICAuYWxlcnQtdmFyaWFudChAYWxlcnQtc3VjY2Vzcy1iZzsgQGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyOyBAYWxlcnQtc3VjY2Vzcy10ZXh0KTtcbn1cbi5hbGVydC1pbmZvIHtcbiAgLmFsZXJ0LXZhcmlhbnQoQGFsZXJ0LWluZm8tYmc7IEBhbGVydC1pbmZvLWJvcmRlcjsgQGFsZXJ0LWluZm8tdGV4dCk7XG59XG4uYWxlcnQtd2FybmluZyB7XG4gIC5hbGVydC12YXJpYW50KEBhbGVydC13YXJuaW5nLWJnOyBAYWxlcnQtd2FybmluZy1ib3JkZXI7IEBhbGVydC13YXJuaW5nLXRleHQpO1xufVxuLmFsZXJ0LWRhbmdlciB7XG4gIC5hbGVydC12YXJpYW50KEBhbGVydC1kYW5nZXItYmc7IEBhbGVydC1kYW5nZXItYm9yZGVyOyBAYWxlcnQtZGFuZ2VyLXRleHQpO1xufVxuIiwiLy8gQWxlcnRzXG5cbi5hbGVydC12YXJpYW50KEBiYWNrZ3JvdW5kOyBAYm9yZGVyOyBAdGV4dC1jb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiBAYm9yZGVyO1xuICBjb2xvcjogQHRleHQtY29sb3I7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbihAYm9yZGVyLCA1JSk7XG4gIH1cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oQHRleHQtY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vXG4vLyBQcm9ncmVzcyBiYXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhciBhbmltYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFdlYktpdFxuQC13ZWJraXQta2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgZnJvbSAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0MHB4IDA7IH1cbiAgdG8gICAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbn1cblxuLy8gU3BlYyBhbmQgSUUxMCtcbkBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tICB7IGJhY2tncm91bmQtcG9zaXRpb246IDQwcHggMDsgfVxuICB0byAgICB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxufVxuXG5cbi8vIEJhciBpdHNlbGZcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gT3V0ZXIgY29udGFpbmVyXG4ucHJvZ3Jlc3Mge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IEBsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbWFyZ2luLWJvdHRvbTogQGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcHJvZ3Jlc3MtYmc7XG4gIGJvcmRlci1yYWRpdXM6IEBwcm9ncmVzcy1ib3JkZXItcmFkaXVzO1xuICAuYm94LXNoYWRvdyhpbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwuMSkpO1xufVxuXG4vLyBCYXIgb2YgcHJvZ3Jlc3Ncbi5wcm9ncmVzcy1iYXIge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1zbWFsbDtcbiAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgY29sb3I6IEBwcm9ncmVzcy1iYXItY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHByb2dyZXNzLWJhci1iZztcbiAgLmJveC1zaGFkb3coaW5zZXQgMCAtMXB4IDAgcmdiYSgwLDAsMCwuMTUpKTtcbiAgLnRyYW5zaXRpb24od2lkdGggLjZzIGVhc2UpO1xufVxuXG4vLyBTdHJpcGVkIGJhcnNcbi8vXG4vLyBgLnByb2dyZXNzLXN0cmlwZWQgLnByb2dyZXNzLWJhcmAgaXMgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgaW4gZmF2b3Igb2YgdGhlXG4vLyBgLnByb2dyZXNzLWJhci1zdHJpcGVkYCBjbGFzcywgd2hpY2ggeW91IGp1c3QgYWRkIHRvIGFuIGV4aXN0aW5nXG4vLyBgLnByb2dyZXNzLWJhcmAuXG4ucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyLFxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgI2dyYWRpZW50ID4gLnN0cmlwZWQoKTtcbiAgYmFja2dyb3VuZC1zaXplOiA0MHB4IDQwcHg7XG59XG5cbi8vIENhbGwgYW5pbWF0aW9uIGZvciB0aGUgYWN0aXZlIG9uZVxuLy9cbi8vIGAucHJvZ3Jlc3MuYWN0aXZlIC5wcm9ncmVzcy1iYXJgIGlzIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGluIGZhdm9yIG9mIHRoZVxuLy8gYC5wcm9ncmVzcy1iYXIuYWN0aXZlYCBhcHByb2FjaC5cbi5wcm9ncmVzcy5hY3RpdmUgLnByb2dyZXNzLWJhcixcbi5wcm9ncmVzcy1iYXIuYWN0aXZlIHtcbiAgLmFuaW1hdGlvbihwcm9ncmVzcy1iYXItc3RyaXBlcyAycyBsaW5lYXIgaW5maW5pdGUpO1xufVxuXG5cbi8vIFZhcmlhdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnByb2dyZXNzLWJhci1zdWNjZXNzIHtcbiAgLnByb2dyZXNzLWJhci12YXJpYW50KEBwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZyk7XG59XG5cbi5wcm9ncmVzcy1iYXItaW5mbyB7XG4gIC5wcm9ncmVzcy1iYXItdmFyaWFudChAcHJvZ3Jlc3MtYmFyLWluZm8tYmcpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXdhcm5pbmcge1xuICAucHJvZ3Jlc3MtYmFyLXZhcmlhbnQoQHByb2dyZXNzLWJhci13YXJuaW5nLWJnKTtcbn1cblxuLnByb2dyZXNzLWJhci1kYW5nZXIge1xuICAucHJvZ3Jlc3MtYmFyLXZhcmlhbnQoQHByb2dyZXNzLWJhci1kYW5nZXItYmcpO1xufVxuIiwiLy8gR3JhZGllbnRzXG5cbiNncmFkaWVudCB7XG5cbiAgLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4gIC8vXG4gIC8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4gIC8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXG4gIC5ob3Jpem9udGFsKEBzdGFydC1jb2xvcjogIzU1NTsgQGVuZC1jb2xvcjogIzMzMzsgQHN0YXJ0LXBlcmNlbnQ6IDAlOyBAZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCBAc3RhcnQtY29sb3IgQHN0YXJ0LXBlcmNlbnQsIEBlbmQtY29sb3IgQGVuZC1wZXJjZW50KTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsIEBzdGFydC1jb2xvciBAc3RhcnQtcGVyY2VudCwgQGVuZC1jb2xvciBAZW5kLXBlcmNlbnQpOyAvLyBPcGVyYSAxMlxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgQHN0YXJ0LWNvbG9yIEBzdGFydC1wZXJjZW50LCBAZW5kLWNvbG9yIEBlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgZmlsdGVyOiBlKCUoXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nJWQnLCBlbmRDb2xvcnN0cj0nJWQnLCBHcmFkaWVudFR5cGU9MSlcIixhcmdiKEBzdGFydC1jb2xvciksYXJnYihAZW5kLWNvbG9yKSkpOyAvLyBJRTkgYW5kIGRvd25cbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbiAgLy9cbiAgLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbiAgLy8gQ29sb3Igc3RvcHMgYXJlIG5vdCBhdmFpbGFibGUgaW4gSUU5IGFuZCBiZWxvdy5cbiAgLnZlcnRpY2FsKEBzdGFydC1jb2xvcjogIzU1NTsgQGVuZC1jb2xvcjogIzMzMzsgQHN0YXJ0LXBlcmNlbnQ6IDAlOyBAZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIEBzdGFydC1jb2xvciBAc3RhcnQtcGVyY2VudCwgQGVuZC1jb2xvciBAZW5kLXBlcmNlbnQpOyAgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0LWNvbG9yIEBzdGFydC1wZXJjZW50LCBAZW5kLWNvbG9yIEBlbmQtcGVyY2VudCk7ICAvLyBPcGVyYSAxMlxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIEBzdGFydC1jb2xvciBAc3RhcnQtcGVyY2VudCwgQGVuZC1jb2xvciBAZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGZpbHRlcjogZSglKFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyVkJywgZW5kQ29sb3JzdHI9JyVkJywgR3JhZGllbnRUeXBlPTApXCIsYXJnYihAc3RhcnQtY29sb3IpLGFyZ2IoQGVuZC1jb2xvcikpKTsgLy8gSUU5IGFuZCBkb3duXG4gIH1cblxuICAuZGlyZWN0aW9uYWwoQHN0YXJ0LWNvbG9yOiAjNTU1OyBAZW5kLWNvbG9yOiAjMzMzOyBAZGVnOiA0NWRlZykge1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChAZGVnLCBAc3RhcnQtY29sb3IsIEBlbmQtY29sb3IpOyAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoQGRlZywgQHN0YXJ0LWNvbG9yLCBAZW5kLWNvbG9yKTsgLy8gT3BlcmEgMTJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoQGRlZywgQHN0YXJ0LWNvbG9yLCBAZW5kLWNvbG9yKTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICB9XG4gIC5ob3Jpem9udGFsLXRocmVlLWNvbG9ycyhAc3RhcnQtY29sb3I6ICMwMGIzZWU7IEBtaWQtY29sb3I6ICM3YTQzYjY7IEBjb2xvci1zdG9wOiA1MCU7IEBlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCBAc3RhcnQtY29sb3IsIEBtaWQtY29sb3IgQGNvbG9yLXN0b3AsIEBlbmQtY29sb3IpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCBAc3RhcnQtY29sb3IsIEBtaWQtY29sb3IgQGNvbG9yLXN0b3AsIEBlbmQtY29sb3IpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgQHN0YXJ0LWNvbG9yLCBAbWlkLWNvbG9yIEBjb2xvci1zdG9wLCBAZW5kLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGZpbHRlcjogZSglKFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyVkJywgZW5kQ29sb3JzdHI9JyVkJywgR3JhZGllbnRUeXBlPTEpXCIsYXJnYihAc3RhcnQtY29sb3IpLGFyZ2IoQGVuZC1jb2xvcikpKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcbiAgfVxuICAudmVydGljYWwtdGhyZWUtY29sb3JzKEBzdGFydC1jb2xvcjogIzAwYjNlZTsgQG1pZC1jb2xvcjogIzdhNDNiNjsgQGNvbG9yLXN0b3A6IDUwJTsgQGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KEBzdGFydC1jb2xvciwgQG1pZC1jb2xvciBAY29sb3Itc3RvcCwgQGVuZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KEBzdGFydC1jb2xvciwgQG1pZC1jb2xvciBAY29sb3Itc3RvcCwgQGVuZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KEBzdGFydC1jb2xvciwgQG1pZC1jb2xvciBAY29sb3Itc3RvcCwgQGVuZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBmaWx0ZXI6IGUoJShcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSclZCcsIGVuZENvbG9yc3RyPSclZCcsIEdyYWRpZW50VHlwZT0wKVwiLGFyZ2IoQHN0YXJ0LWNvbG9yKSxhcmdiKEBlbmQtY29sb3IpKSk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG4gIH1cbiAgLnJhZGlhbChAaW5uZXItY29sb3I6ICM1NTU7IEBvdXRlci1jb2xvcjogIzMzMykge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgQGlubmVyLWNvbG9yLCBAb3V0ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsIEBpbm5lci1jb2xvciwgQG91dGVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB9XG4gIC5zdHJpcGVkKEBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuMTUpOyBAYW5nbGU6IDQ1ZGVnKSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoQGFuZ2xlLCBAY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgQGNvbG9yIDUwJSwgQGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KEBhbmdsZSwgQGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIEBjb2xvciA1MCUsIEBjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChAYW5nbGUsIEBjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCBAY29sb3IgNTAlLCBAY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgfVxufVxuIiwiLy8gUHJvZ3Jlc3MgYmFyc1xuXG4ucHJvZ3Jlc3MtYmFyLXZhcmlhbnQoQGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvcjtcblxuICAvLyBEZXByZWNhdGVkIHBhcmVudCBjbGFzcyByZXF1aXJlbWVudCBhcyBvZiB2My4yLjBcbiAgLnByb2dyZXNzLXN0cmlwZWQgJiB7XG4gICAgI2dyYWRpZW50ID4gLnN0cmlwZWQoKTtcbiAgfVxufVxuIiwiLm1lZGlhIHtcbiAgLy8gUHJvcGVyIHNwYWNpbmcgYmV0d2VlbiBpbnN0YW5jZXMgb2YgLm1lZGlhXG4gIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4ubWVkaWEtcmlnaHQsXG4ubWVkaWEgPiAucHVsbC1yaWdodCB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbn1cblxuLm1lZGlhLWxlZnQsXG4ubWVkaWEgPiAucHVsbC1sZWZ0IHtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuLm1lZGlhLWxlZnQsXG4ubWVkaWEtcmlnaHQsXG4ubWVkaWEtYm9keSB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi5tZWRpYS1taWRkbGUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ubWVkaWEtYm90dG9tIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBoZWFkaW5ncyBmb3IgdGlnaHRlciBkZWZhdWx0IHNwYWNpbmdcbi5tZWRpYS1oZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4vLyBNZWRpYSBsaXN0IHZhcmlhdGlvblxuLy9cbi8vIFVuZG8gZGVmYXVsdCB1bC9vbCBzdHlsZXNcbi5tZWRpYS1saXN0IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy9cbi8vIExpc3QgZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxuXG4ubGlzdC1ncm91cCB7XG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyByZXNldCBwYWRkaW5nIGJlY2F1c2UgdWwgYW5kIG9sXG59XG5cblxuLy8gSW5kaXZpZHVhbCBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIG9uIGBsaWBzIG9yIGBkaXZgcyB3aXRoaW4gdGhlIGAubGlzdC1ncm91cGAgcGFyZW50LlxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICAvLyBQbGFjZSB0aGUgYm9yZGVyIG9uIHRoZSBsaXN0IGl0ZW1zIGFuZCBuZWdhdGl2ZSBtYXJnaW4gdXAgZm9yIGJldHRlciBzdHlsaW5nXG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IEBsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCBAbGlzdC1ncm91cC1ib3JkZXI7XG5cbiAgLy8gUm91bmQgdGhlIGZpcnN0IGFuZCBsYXN0IGl0ZW1zXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIC5ib3JkZXItdG9wLXJhZGl1cyhAbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgLmJvcmRlci1ib3R0b20tcmFkaXVzKEBsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG59XG5cblxuLy8gTGlua2VkIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBsaW5rZWQgbGlzdCBpdGVtcy5cbi8vIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2hvd2luZyBzZWxlY3RlZCBpdGVtcy5cblxuYS5saXN0LWdyb3VwLWl0ZW0ge1xuICBjb2xvcjogQGxpc3QtZ3JvdXAtbGluay1jb2xvcjtcblxuICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgIGNvbG9yOiBAbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IEBsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGxpc3QtZ3JvdXAtaG92ZXItYmc7XG4gIH1cbn1cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICYuZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQ6aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICAgIGNvbG9yOiBAbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcbiAgICBjdXJzb3I6IEBjdXJzb3ItZGlzYWJsZWQ7XG5cbiAgICAvLyBGb3JjZSBjb2xvciB0byBpbmhlcml0IGZvciBjdXN0b20gY29udGVudFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiBAbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFjdGl2ZSBjbGFzcyBvbiBpdGVtIGl0c2VsZiwgbm90IHBhcmVudFxuICAmLmFjdGl2ZSxcbiAgJi5hY3RpdmU6aG92ZXIsXG4gICYuYWN0aXZlOmZvY3VzIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiBAbGlzdC1ncm91cC1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGxpc3QtZ3JvdXAtYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogQGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjtcblxuICAgIC8vIEZvcmNlIGNvbG9yIHRvIGluaGVyaXQgZm9yIGN1c3RvbSBjb250ZW50XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IHNtYWxsLFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IC5zbWFsbCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiBAbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tdmFyaWFudChzdWNjZXNzOyBAc3RhdGUtc3VjY2Vzcy1iZzsgQHN0YXRlLXN1Y2Nlc3MtdGV4dCk7XG4ubGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoaW5mbzsgQHN0YXRlLWluZm8tYmc7IEBzdGF0ZS1pbmZvLXRleHQpO1xuLmxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KHdhcm5pbmc7IEBzdGF0ZS13YXJuaW5nLWJnOyBAc3RhdGUtd2FybmluZy10ZXh0KTtcbi5saXN0LWdyb3VwLWl0ZW0tdmFyaWFudChkYW5nZXI7IEBzdGF0ZS1kYW5nZXItYmc7IEBzdGF0ZS1kYW5nZXItdGV4dCk7XG5cblxuLy8gQ3VzdG9tIGNvbnRlbnQgb3B0aW9uc1xuLy9cbi8vIEV4dHJhIGNsYXNzZXMgZm9yIGNyZWF0aW5nIHdlbGwtZm9ybWF0dGVkIGNvbnRlbnQgd2l0aGluIGAubGlzdC1ncm91cC1pdGVtYHMuXG5cbi5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tdGV4dCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG4ubGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoQHN0YXRlOyBAYmFja2dyb3VuZDsgQGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tQHtzdGF0ZX0ge1xuICAgIGNvbG9yOiBAY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGJhY2tncm91bmQ7XG5cbiAgICBhJiB7XG4gICAgICBjb2xvcjogQGNvbG9yO1xuXG4gICAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogQGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGJhY2tncm91bmQsIDUlKTtcbiAgICAgIH1cbiAgICAgICYuYWN0aXZlLFxuICAgICAgJi5hY3RpdmU6aG92ZXIsXG4gICAgICAmLmFjdGl2ZTpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogQGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFBhbmVsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4ucGFuZWwge1xuICBtYXJnaW4tYm90dG9tOiBAbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6IEBwYW5lbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IEBwYW5lbC1ib3JkZXItcmFkaXVzO1xuICAuYm94LXNoYWRvdygwIDFweCAxcHggcmdiYSgwLDAsMCwuMDUpKTtcbn1cblxuLy8gUGFuZWwgY29udGVudHNcbi5wYW5lbC1ib2R5IHtcbiAgcGFkZGluZzogQHBhbmVsLWJvZHktcGFkZGluZztcbiAgJjpleHRlbmQoLmNsZWFyZml4IGFsbCk7XG59XG5cbi8vIE9wdGlvbmFsIGhlYWRpbmdcbi5wYW5lbC1oZWFkaW5nIHtcbiAgcGFkZGluZzogQHBhbmVsLWhlYWRpbmctcGFkZGluZztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAuYm9yZGVyLXRvcC1yYWRpdXMoKEBwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuXG4gID4gLmRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIFdpdGhpbiBoZWFkaW5nLCBzdHJpcCBhbnkgYGgqYCB0YWcgb2YgaXRzIGRlZmF1bHQgbWFyZ2lucyBmb3Igc3BhY2luZy5cbi5wYW5lbC10aXRsZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogY2VpbCgoQGZvbnQtc2l6ZS1iYXNlICogMS4xMjUpKTtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgPiBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBPcHRpb25hbCBmb290ZXIgKHN0YXlzIGdyYXkgaW4gZXZlcnkgbW9kaWZpZXIgY2xhc3MpXG4ucGFuZWwtZm9vdGVyIHtcbiAgcGFkZGluZzogQHBhbmVsLWZvb3Rlci1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcGFuZWwtZm9vdGVyLWJnO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgQHBhbmVsLWlubmVyLWJvcmRlcjtcbiAgLmJvcmRlci1ib3R0b20tcmFkaXVzKChAcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcbn1cblxuXG4vLyBMaXN0IGdyb3VwcyBpbiBwYW5lbHNcbi8vXG4vLyBCeSBkZWZhdWx0LCBzcGFjZSBvdXQgbGlzdCBncm91cCBjb250ZW50IGZyb20gcGFuZWwgaGVhZGluZ3MgdG8gYWNjb3VudCBmb3Jcbi8vIGFueSBraW5kIG9mIGN1c3RvbSBjb250ZW50IGJldHdlZW4gdGhlIHR3by5cblxuLnBhbmVsIHtcbiAgPiAubGlzdC1ncm91cCxcbiAgPiAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuXG4gICAgLy8gQWRkIGJvcmRlciB0b3AgcmFkaXVzIGZvciBmaXJzdCBvbmVcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICAuYm9yZGVyLXRvcC1yYWRpdXMoKEBwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuICAgICAgfVxuICAgIH1cbiAgICAvLyBBZGQgYm9yZGVyIGJvdHRvbSByYWRpdXMgZm9yIGxhc3Qgb25lXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIC5ib3JkZXItYm90dG9tLXJhZGl1cygoQHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBDb2xsYXBzZSBzcGFjZSBiZXR3ZWVuIHdoZW4gdGhlcmUncyBubyBhZGRpdGlvbmFsIGNvbnRlbnQuXG4ucGFuZWwtaGVhZGluZyArIC5saXN0LWdyb3VwIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxufVxuLmxpc3QtZ3JvdXAgKyAucGFuZWwtZm9vdGVyIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbn1cblxuLy8gVGFibGVzIGluIHBhbmVsc1xuLy9cbi8vIFBsYWNlIGEgbm9uLWJvcmRlcmVkIGAudGFibGVgIHdpdGhpbiBhIHBhbmVsIChub3Qgd2l0aGluIGEgYC5wYW5lbC1ib2R5YCkgYW5kXG4vLyB3YXRjaCBpdCBnbyBmdWxsIHdpZHRoLlxuXG4ucGFuZWwge1xuICA+IC50YWJsZSxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSxcbiAgPiAucGFuZWwtY29sbGFwc2UgPiAudGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBjYXB0aW9uIHtcbiAgICAgIHBhZGRpbmctbGVmdDogQHBhbmVsLWJvZHktcGFkZGluZztcbiAgICAgIHBhZGRpbmctcmlnaHQ6IEBwYW5lbC1ib2R5LXBhZGRpbmc7XG4gICAgfVxuICB9XG4gIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXG4gID4gLnRhYmxlOmZpcnN0LWNoaWxkLFxuICA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkIHtcbiAgICAuYm9yZGVyLXRvcC1yYWRpdXMoKEBwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuXG4gICAgPiB0aGVhZDpmaXJzdC1jaGlsZCxcbiAgICA+IHRib2R5OmZpcnN0LWNoaWxkIHtcbiAgICAgID4gdHI6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAoQHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IChAcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuXG4gICAgICAgIHRkOmZpcnN0LWNoaWxkLFxuICAgICAgICB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogKEBwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgICAgdGQ6bGFzdC1jaGlsZCxcbiAgICAgICAgdGg6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IChAcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIEFkZCBib3JkZXIgYm90dG9tIHJhZGl1cyBmb3IgbGFzdCBvbmVcbiAgPiAudGFibGU6bGFzdC1jaGlsZCxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZTpsYXN0LWNoaWxkID4gLnRhYmxlOmxhc3QtY2hpbGQge1xuICAgIC5ib3JkZXItYm90dG9tLXJhZGl1cygoQHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG5cbiAgICA+IHRib2R5Omxhc3QtY2hpbGQsXG4gICAgPiB0Zm9vdDpsYXN0LWNoaWxkIHtcbiAgICAgID4gdHI6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IChAcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogKEBwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG5cbiAgICAgICAgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgICAgIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAoQHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgfVxuICAgICAgICB0ZDpsYXN0LWNoaWxkLFxuICAgICAgICB0aDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogKEBwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgPiAucGFuZWwtYm9keSArIC50YWJsZSxcbiAgPiAucGFuZWwtYm9keSArIC50YWJsZS1yZXNwb25zaXZlLFxuICA+IC50YWJsZSArIC5wYW5lbC1ib2R5LFxuICA+IC50YWJsZS1yZXNwb25zaXZlICsgLnBhbmVsLWJvZHkge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBAdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG4gID4gLnRhYmxlID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0aCxcbiAgPiAudGFibGUgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG4gID4gLnRhYmxlLWJvcmRlcmVkLFxuICA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gICAgPiB0aGVhZCxcbiAgICA+IHRib2R5LFxuICAgID4gdGZvb3Qge1xuICAgICAgPiB0ciB7XG4gICAgICAgID4gdGg6Zmlyc3QtY2hpbGQsXG4gICAgICAgID4gdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgID4gdGg6bGFzdC1jaGlsZCxcbiAgICAgICAgPiB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgPiB0aGVhZCxcbiAgICA+IHRib2R5IHtcbiAgICAgID4gdHI6Zmlyc3QtY2hpbGQge1xuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gdGJvZHksXG4gICAgPiB0Zm9vdCB7XG4gICAgICA+IHRyOmxhc3QtY2hpbGQge1xuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gLnRhYmxlLXJlc3BvbnNpdmUge1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cblxuLy8gQ29sbGFwc2FibGUgcGFuZWxzIChha2EsIGFjY29yZGlvbilcbi8vXG4vLyBXcmFwIGEgc2VyaWVzIG9mIHBhbmVscyBpbiBgLnBhbmVsLWdyb3VwYCB0byB0dXJuIHRoZW0gaW50byBhbiBhY2NvcmRpb24gd2l0aFxuLy8gdGhlIGhlbHAgb2Ygb3VyIGNvbGxhcHNlIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4ucGFuZWwtZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiBAbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG5cbiAgLy8gVGlnaHRlbiB1cCBtYXJnaW4gc28gaXQncyBvbmx5IGJldHdlZW4gcGFuZWxzXG4gIC5wYW5lbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXItcmFkaXVzOiBAcGFuZWwtYm9yZGVyLXJhZGl1cztcblxuICAgICsgLnBhbmVsIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICB9XG4gIH1cblxuICAucGFuZWwtaGVhZGluZyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHksXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgQHBhbmVsLWlubmVyLWJvcmRlcjtcbiAgICB9XG4gIH1cblxuICAucGFuZWwtZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgICsgLnBhbmVsLWNvbGxhcHNlIC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAcGFuZWwtaW5uZXItYm9yZGVyO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWF0aW9uc1xuLnBhbmVsLWRlZmF1bHQge1xuICAucGFuZWwtdmFyaWFudChAcGFuZWwtZGVmYXVsdC1ib3JkZXI7IEBwYW5lbC1kZWZhdWx0LXRleHQ7IEBwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc7IEBwYW5lbC1kZWZhdWx0LWJvcmRlcik7XG59XG4ucGFuZWwtcHJpbWFyeSB7XG4gIC5wYW5lbC12YXJpYW50KEBwYW5lbC1wcmltYXJ5LWJvcmRlcjsgQHBhbmVsLXByaW1hcnktdGV4dDsgQHBhbmVsLXByaW1hcnktaGVhZGluZy1iZzsgQHBhbmVsLXByaW1hcnktYm9yZGVyKTtcbn1cbi5wYW5lbC1zdWNjZXNzIHtcbiAgLnBhbmVsLXZhcmlhbnQoQHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOyBAcGFuZWwtc3VjY2Vzcy10ZXh0OyBAcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnOyBAcGFuZWwtc3VjY2Vzcy1ib3JkZXIpO1xufVxuLnBhbmVsLWluZm8ge1xuICAucGFuZWwtdmFyaWFudChAcGFuZWwtaW5mby1ib3JkZXI7IEBwYW5lbC1pbmZvLXRleHQ7IEBwYW5lbC1pbmZvLWhlYWRpbmctYmc7IEBwYW5lbC1pbmZvLWJvcmRlcik7XG59XG4ucGFuZWwtd2FybmluZyB7XG4gIC5wYW5lbC12YXJpYW50KEBwYW5lbC13YXJuaW5nLWJvcmRlcjsgQHBhbmVsLXdhcm5pbmctdGV4dDsgQHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZzsgQHBhbmVsLXdhcm5pbmctYm9yZGVyKTtcbn1cbi5wYW5lbC1kYW5nZXIge1xuICAucGFuZWwtdmFyaWFudChAcGFuZWwtZGFuZ2VyLWJvcmRlcjsgQHBhbmVsLWRhbmdlci10ZXh0OyBAcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmc7IEBwYW5lbC1kYW5nZXItYm9yZGVyKTtcbn1cbiIsIi8vIFBhbmVsc1xuXG4ucGFuZWwtdmFyaWFudChAYm9yZGVyOyBAaGVhZGluZy10ZXh0LWNvbG9yOyBAaGVhZGluZy1iZy1jb2xvcjsgQGhlYWRpbmctYm9yZGVyKSB7XG4gIGJvcmRlci1jb2xvcjogQGJvcmRlcjtcblxuICAmID4gLnBhbmVsLWhlYWRpbmcge1xuICAgIGNvbG9yOiBAaGVhZGluZy10ZXh0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBoZWFkaW5nLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogQGhlYWRpbmctYm9yZGVyO1xuXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiBAYm9yZGVyO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgY29sb3I6IEBoZWFkaW5nLWJnLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGhlYWRpbmctdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJiA+IC5wYW5lbC1mb290ZXIge1xuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogQGJvcmRlcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEVtYmVkcyByZXNwb25zaXZlXG4vL1xuLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIE1vZGlmaWVyIGNsYXNzIGZvciAxNjo5IGFzcGVjdCByYXRpb1xuICAmLmVtYmVkLXJlc3BvbnNpdmUtMTZieTkge1xuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIH1cblxuICAvLyBNb2RpZmllciBjbGFzcyBmb3IgNDozIGFzcGVjdCByYXRpb1xuICAmLmVtYmVkLXJlc3BvbnNpdmUtNGJ5MyB7XG4gICAgcGFkZGluZy1ib3R0b206IDc1JTtcbiAgfVxufVxuIiwiLy9cbi8vIFdlbGxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi53ZWxsIHtcbiAgbWluLWhlaWdodDogMjBweDtcbiAgcGFkZGluZzogMTlweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHdlbGwtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkIEB3ZWxsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgLmJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA1KSk7XG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlci1jb2xvcjogI2RkZDtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsLjE1KTtcbiAgfVxufVxuXG4vLyBTaXplc1xuLndlbGwtbGcge1xuICBwYWRkaW5nOiAyNHB4O1xuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cy1sYXJnZTtcbn1cbi53ZWxsLXNtIHtcbiAgcGFkZGluZzogOXB4O1xuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cy1zbWFsbDtcbn1cbiIsIi8vXG4vLyBDbG9zZSBpY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogKEBmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIGZvbnQtd2VpZ2h0OiBAY2xvc2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogQGNsb3NlLWNvbG9yO1xuICB0ZXh0LXNoYWRvdzogQGNsb3NlLXRleHQtc2hhZG93O1xuICAub3BhY2l0eSguMik7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IEBjbG9zZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC5vcGFjaXR5KC41KTtcbiAgfVxuXG4gIC8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbiAgLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4gIC8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuICBidXR0b24mIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG59XG4iLCIvL1xuLy8gTW9kYWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc2hpdFxuXG4vLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbi5tb2RhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBkaXNwbGF5OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogQHppbmRleC1tb2RhbDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gICYuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgICAudHJhbnNsYXRlKDAsIC0yNSUpO1xuICAgIC50cmFuc2l0aW9uLXRyYW5zZm9ybSh+XCIwLjNzIGVhc2Utb3V0XCIpO1xuICB9XG4gICYuaW4gLm1vZGFsLWRpYWxvZyB7IC50cmFuc2xhdGUoMCwgMCkgfVxufVxuLm1vZGFsLW9wZW4gLm1vZGFsIHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDEwcHg7XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6IEBtb2RhbC1jb250ZW50LWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCBAbW9kYWwtY29udGVudC1mYWxsYmFjay1ib3JkZXItY29sb3I7IC8vb2xkIGJyb3dzZXJzIGZhbGxiYWNrIChpZTggZXRjKVxuICBib3JkZXI6IDFweCBzb2xpZCBAbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWxhcmdlO1xuICAuYm94LXNoYWRvdygwIDNweCA5cHggcmdiYSgwLDAsMCwuNSkpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IEBtb2RhbC1iYWNrZHJvcC1iZztcbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgLm9wYWNpdHkoMCk7IH1cbiAgJi5pbiB7IC5vcGFjaXR5KEBtb2RhbC1iYWNrZHJvcC1vcGFjaXR5KTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIHBhZGRpbmc6IEBtb2RhbC10aXRsZS1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XG4gIG1pbi1oZWlnaHQ6IChAbW9kYWwtdGl0bGUtcGFkZGluZyArIEBtb2RhbC10aXRsZS1saW5lLWhlaWdodCk7XG59XG4vLyBDbG9zZSBpY29uXG4ubW9kYWwtaGVhZGVyIC5jbG9zZSB7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogQG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogQG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgcGFkZGluZzogQG1vZGFsLWlubmVyLXBhZGRpbmc7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyAvLyByaWdodCBhbGlnbiBidXR0b25zXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBAbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgJjpleHRlbmQoLmNsZWFyZml4IGFsbCk7IC8vIGNsZWFyIGl0IGluIGNhc2UgZm9sa3MgdXNlIC5wdWxsLSogY2xhc3NlcyBvbiBidXR0b25zXG5cbiAgLy8gUHJvcGVybHkgc3BhY2Ugb3V0IGJ1dHRvbnNcbiAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gYWNjb3VudCBmb3IgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB3aGljaCBnZXRzIHRoZSBib3R0b20gbWFyZ2luIGxpa2UgYWxsIG90aGVyIGlucHV0c1xuICB9XG4gIC8vIGJ1dCBvdmVycmlkZSB0aGF0IGZvciBidXR0b24gZ3JvdXBzXG4gIC5idG4tZ3JvdXAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG4gIC8vIGFuZCBvdmVycmlkZSBpdCBmb3IgYmxvY2sgYnV0dG9ucyBhcyB3ZWxsXG4gIC5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIHdpZHRoOiBAbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG87XG4gIH1cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIC5ib3gtc2hhZG93KDAgNXB4IDE1cHggcmdiYSgwLDAsMCwuNSkpO1xuICB9XG5cbiAgLy8gTW9kYWwgc2l6ZXNcbiAgLm1vZGFsLXNtIHsgd2lkdGg6IEBtb2RhbC1zbTsgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1tZC1taW4pIHtcbiAgLm1vZGFsLWxnIHsgd2lkdGg6IEBtb2RhbC1sZzsgfVxufVxuIiwiLy9cbi8vIFRvb2x0aXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiBAemluZGV4LXRvb2x0aXA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAvLyBSZXNldCBmb250IGFuZCB0ZXh0IHByb3BlcnRlcyBnaXZlbiBuZXcgaW5zZXJ0aW9uIG1ldGhvZFxuICBmb250LWZhbWlseTogQGZvbnQtZmFtaWx5LWJhc2U7XG4gIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1zbWFsbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgLm9wYWNpdHkoMCk7XG5cbiAgJi5pbiAgICAgeyAub3BhY2l0eShAdG9vbHRpcC1vcGFjaXR5KTsgfVxuICAmLnRvcCAgICB7IG1hcmdpbi10b3A6ICAtM3B4OyBwYWRkaW5nOiBAdG9vbHRpcC1hcnJvdy13aWR0aCAwOyB9XG4gICYucmlnaHQgIHsgbWFyZ2luLWxlZnQ6ICAzcHg7IHBhZGRpbmc6IDAgQHRvb2x0aXAtYXJyb3ctd2lkdGg7IH1cbiAgJi5ib3R0b20geyBtYXJnaW4tdG9wOiAgIDNweDsgcGFkZGluZzogQHRvb2x0aXAtYXJyb3ctd2lkdGggMDsgfVxuICAmLmxlZnQgICB7IG1hcmdpbi1sZWZ0OiAtM3B4OyBwYWRkaW5nOiAwIEB0b29sdGlwLWFycm93LXdpZHRoOyB9XG59XG5cbi8vIFdyYXBwZXIgZm9yIHRoZSB0b29sdGlwIGNvbnRlbnRcbi50b29sdGlwLWlubmVyIHtcbiAgbWF4LXdpZHRoOiBAdG9vbHRpcC1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6IDNweCA4cHg7XG4gIGNvbG9yOiBAdG9vbHRpcC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IEB0b29sdGlwLWJnO1xuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cy1iYXNlO1xufVxuXG4vLyBBcnJvd3Ncbi50b29sdGlwLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xufVxuLy8gTm90ZTogRGVwcmVjYXRlZCAudG9wLWxlZnQsIC50b3AtcmlnaHQsIC5ib3R0b20tbGVmdCwgYW5kIC5ib3R0b20tcmlnaHQgYXMgb2YgdjMuMy4xXG4udG9vbHRpcCB7XG4gICYudG9wIC50b29sdGlwLWFycm93IHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtQHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiBAdG9vbHRpcC1hcnJvdy13aWR0aCBAdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci10b3AtY29sb3I6IEB0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYudG9wLWxlZnQgLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogQHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWJvdHRvbTogLUB0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogQHRvb2x0aXAtYXJyb3ctd2lkdGggQHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBAdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLnRvcC1yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IEB0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1ib3R0b206IC1AdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6IEB0b29sdGlwLWFycm93LXdpZHRoIEB0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogQHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAtQHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiBAdG9vbHRpcC1hcnJvdy13aWR0aCBAdG9vbHRpcC1hcnJvdy13aWR0aCBAdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogQHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAtQHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiBAdG9vbHRpcC1hcnJvdy13aWR0aCAwIEB0b29sdGlwLWFycm93LXdpZHRoIEB0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiBAdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmJvdHRvbSAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLUB0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogMCBAdG9vbHRpcC1hcnJvdy13aWR0aCBAdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBAdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmJvdHRvbS1sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IEB0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi10b3A6IC1AdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6IDAgQHRvb2x0aXAtYXJyb3ctd2lkdGggQHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogQHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5ib3R0b20tcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiBAdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tdG9wOiAtQHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAwIEB0b29sdGlwLWFycm93LXdpZHRoIEB0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IEB0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG59XG4iLCIvL1xuLy8gUG9wb3ZlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogQHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtd2lkdGg6IEBwb3BvdmVyLW1heC13aWR0aDtcbiAgcGFkZGluZzogMXB4O1xuICAvLyBSZXNldCBmb250IGFuZCB0ZXh0IHByb3BlcnRlcyBnaXZlbiBuZXcgaW5zZXJ0aW9uIG1ldGhvZFxuICBmb250LWZhbWlseTogQGZvbnQtZmFtaWx5LWJhc2U7XG4gIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1iYXNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogQGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IEBwb3BvdmVyLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCBAcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3I7XG4gIGJvcmRlcjogMXB4IHNvbGlkIEBwb3BvdmVyLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIC5ib3gtc2hhZG93KDAgNXB4IDEwcHggcmdiYSgwLDAsMCwuMikpO1xuXG4gIC8vIE92ZXJyaWRlcyBmb3IgcHJvcGVyIGluc2VydGlvblxuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuXG4gIC8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuICAmLnRvcCAgICAgeyBtYXJnaW4tdG9wOiAtQHBvcG92ZXItYXJyb3ctd2lkdGg7IH1cbiAgJi5yaWdodCAgIHsgbWFyZ2luLWxlZnQ6IEBwb3BvdmVyLWFycm93LXdpZHRoOyB9XG4gICYuYm90dG9tICB7IG1hcmdpbi10b3A6IEBwb3BvdmVyLWFycm93LXdpZHRoOyB9XG4gICYubGVmdCAgICB7IG1hcmdpbi1sZWZ0OiAtQHBvcG92ZXItYXJyb3ctd2lkdGg7IH1cbn1cblxuLnBvcG92ZXItdGl0bGUge1xuICBtYXJnaW46IDA7IC8vIHJlc2V0IGhlYWRpbmcgbWFyZ2luXG4gIHBhZGRpbmc6IDhweCAxNHB4O1xuICBmb250LXNpemU6IEBmb250LXNpemUtYmFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHBvcG92ZXItdGl0bGUtYmc7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZW4oQHBvcG92ZXItdGl0bGUtYmcsIDUlKTtcbiAgYm9yZGVyLXJhZGl1czogKEBib3JkZXItcmFkaXVzLWxhcmdlIC0gMSkgKEBib3JkZXItcmFkaXVzLWxhcmdlIC0gMSkgMCAwO1xufVxuXG4ucG9wb3Zlci1jb250ZW50IHtcbiAgcGFkZGluZzogOXB4IDE0cHg7XG59XG5cbi8vIEFycm93c1xuLy9cbi8vIC5hcnJvdyBpcyBvdXRlciwgLmFycm93OmFmdGVyIGlzIGlubmVyXG5cbi5wb3BvdmVyID4gLmFycm93IHtcbiAgJixcbiAgJjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIH1cbn1cbi5wb3BvdmVyID4gLmFycm93IHtcbiAgYm9yZGVyLXdpZHRoOiBAcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbn1cbi5wb3BvdmVyID4gLmFycm93OmFmdGVyIHtcbiAgYm9yZGVyLXdpZHRoOiBAcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLnBvcG92ZXIge1xuICAmLnRvcCA+IC5hcnJvdyB7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtQHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBAcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjsgLy8gSUU4IGZhbGxiYWNrXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogQHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgYm90dG9tOiAtQHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGJvdHRvbTogMXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IC1AcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiBAcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJi5yaWdodCA+IC5hcnJvdyB7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogLUBwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIG1hcmdpbi10b3A6IC1AcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IEBwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOyAvLyBJRTggZmFsbGJhY2tcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IEBwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBsZWZ0OiAxcHg7XG4gICAgICBib3R0b206IC1AcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiBAcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJi5ib3R0b20gPiAuYXJyb3cge1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLUBwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogQHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IEBwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIHRvcDogLUBwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICB0b3A6IDFweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtQHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogQHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG5cbiAgJi5sZWZ0ID4gLmFycm93IHtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogLUBwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIG1hcmdpbi10b3A6IC1AcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IEBwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOyAvLyBJRTggZmFsbGJhY2tcbiAgICBib3JkZXItbGVmdC1jb2xvcjogQHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIHJpZ2h0OiAxcHg7XG4gICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogQHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgICBib3R0b206IC1AcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBSZXNwb25zaXZlOiBVdGlsaXR5IGNsYXNzZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSUUxMCBpbiBXaW5kb3dzIChQaG9uZSkgOFxuLy9cbi8vIFN1cHBvcnQgZm9yIHJlc3BvbnNpdmUgdmlld3MgdmlhIG1lZGlhIHF1ZXJpZXMgaXMga2luZCBvZiBib3JrZWQgaW4gSUUxMCwgZm9yXG4vLyBTdXJmYWNlL2Rlc2t0b3AgaW4gc3BsaXQgdmlldyBhbmQgZm9yIFdpbmRvd3MgUGhvbmUgOC4gVGhpcyBwYXJ0aWN1bGFyIGZpeFxuLy8gbXVzdCBiZSBhY2NvbXBhbmllZCBieSBhIHNuaXBwZXQgb2YgSmF2YVNjcmlwdCB0byBzbmlmZiB0aGUgdXNlciBhZ2VudCBhbmRcbi8vIGFwcGx5IHNvbWUgY29uZGl0aW9uYWwgQ1NTIHRvICpvbmx5KiB0aGUgU3VyZmFjZS9kZXNrdG9wIFdpbmRvd3MgOC4gTG9vayBhdFxuLy8gb3VyIEdldHRpbmcgU3RhcnRlZCBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIG9uIHRoaXMgYnVnLlxuLy9cbi8vIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIGZvbGxvd2luZzpcbi8vXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMDQ5N1xuLy8gRG9jczogaHR0cDovL2dldGJvb3RzdHJhcC5jb20vZ2V0dGluZy1zdGFydGVkLyNzdXBwb3J0LWllMTAtd2lkdGhcbi8vIFNvdXJjZTogaHR0cDovL3RpbWthZGxlYy5jb20vMjAxMy8wMS93aW5kb3dzLXBob25lLTgtYW5kLWRldmljZS13aWR0aC9cbi8vIFNvdXJjZTogaHR0cDovL3RpbWthZGxlYy5jb20vMjAxMi8xMC9pZTEwLXNuYXAtbW9kZS1hbmQtcmVzcG9uc2l2ZS1kZXNpZ24vXG5cbkAtbXMtdmlld3BvcnQge1xuICB3aWR0aDogZGV2aWNlLXdpZHRoO1xufVxuXG5cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXhzLCAudmlzaWJsZS1zbSwgLnZpc2libGUtbWQsIGFuZCAudmlzaWJsZS1sZyBhcyBvZiB2My4yLjBcbi52aXNpYmxlLXhzLFxuLnZpc2libGUtc20sXG4udmlzaWJsZS1tZCxcbi52aXNpYmxlLWxnIHtcbiAgLnJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCk7XG59XG5cbi52aXNpYmxlLXhzLWJsb2NrLFxuLnZpc2libGUteHMtaW5saW5lLFxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtc20tYmxvY2ssXG4udmlzaWJsZS1zbS1pbmxpbmUsXG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1tZC1ibG9jayxcbi52aXNpYmxlLW1kLWlubGluZSxcbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayxcbi52aXNpYmxlLWxnLWJsb2NrLFxuLnZpc2libGUtbGctaW5saW5lLFxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udmlzaWJsZS14cyB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBAc2NyZWVuLXhzLW1heCkge1xuICAgIC5yZXNwb25zaXZlLXZpc2liaWxpdHkoKTtcbiAgfVxufVxuLnZpc2libGUteHMtYmxvY2sge1xuICBAbWVkaWEgKG1heC13aWR0aDogQHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS14cy1pbmxpbmUge1xuICBAbWVkaWEgKG1heC13aWR0aDogQHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IEBzY3JlZW4teHMtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnZpc2libGUtc20ge1xuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiBAc2NyZWVuLXNtLW1heCkge1xuICAgIC5yZXNwb25zaXZlLXZpc2liaWxpdHkoKTtcbiAgfVxufVxuLnZpc2libGUtc20tYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiBAc2NyZWVuLXNtLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXNtLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6IEBzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6IEBzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnZpc2libGUtbWQge1xuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiBAc2NyZWVuLW1kLW1heCkge1xuICAgIC5yZXNwb25zaXZlLXZpc2liaWxpdHkoKTtcbiAgfVxufVxuLnZpc2libGUtbWQtYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiBAc2NyZWVuLW1kLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLW1kLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6IEBzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6IEBzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnZpc2libGUtbGcge1xuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1sZy1taW4pIHtcbiAgICAucmVzcG9uc2l2ZS12aXNpYmlsaXR5KCk7XG4gIH1cbn1cbi52aXNpYmxlLWxnLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbGctaW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLWxnLW1pbikge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5oaWRkZW4teHMge1xuICBAbWVkaWEgKG1heC13aWR0aDogQHNjcmVlbi14cy1tYXgpIHtcbiAgICAucmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoKTtcbiAgfVxufVxuLmhpZGRlbi1zbSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6IEBzY3JlZW4tc20tbWF4KSB7XG4gICAgLnJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCk7XG4gIH1cbn1cbi5oaWRkZW4tbWQge1xuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiBAc2NyZWVuLW1kLW1heCkge1xuICAgIC5yZXNwb25zaXZlLWludmlzaWJpbGl0eSgpO1xuICB9XG59XG4uaGlkZGVuLWxnIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbGctbWluKSB7XG4gICAgLnJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCk7XG4gIH1cbn1cblxuXG4vLyBQcmludCB1dGlsaXRpZXNcbi8vXG4vLyBNZWRpYSBxdWVyaWVzIGFyZSBwbGFjZWQgb24gdGhlIGluc2lkZSB0byBiZSBtaXhpbi1mcmllbmRseS5cblxuLy8gTm90ZTogRGVwcmVjYXRlZCAudmlzaWJsZS1wcmludCBhcyBvZiB2My4yLjBcbi52aXNpYmxlLXByaW50IHtcbiAgLnJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCk7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAucmVzcG9uc2l2ZS12aXNpYmlsaXR5KCk7XG4gIH1cbn1cbi52aXNpYmxlLXByaW50LWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQtaW5saW5lIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXByaW50LWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5oaWRkZW4tcHJpbnQge1xuICBAbWVkaWEgcHJpbnQge1xuICAgIC5yZXNwb25zaXZlLWludmlzaWJpbGl0eSgpO1xuICB9XG59XG4iLCIvLyBSZXNwb25zaXZlIHV0aWxpdGllc1xuXG4vL1xuLy8gTW9yZSBlYXNpbHkgaW5jbHVkZSBhbGwgdGhlIHN0YXRlcyBmb3IgcmVzcG9uc2l2ZS11dGlsaXRpZXMubGVzcy5cbi5yZXNwb25zaXZlLXZpc2liaWxpdHkoKSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIHRhYmxlJiAgeyBkaXNwbGF5OiB0YWJsZTsgfVxuICB0ciYgICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgmLFxuICB0ZCYgICAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG59XG5cbi5yZXNwb25zaXZlLWludmlzaWJpbGl0eSgpIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLy8gIEBmb250LWZhY2Uge1xuLy8gICAgZm9udC1mYW1pbHk6ICdFbmNvZGUgU2FucyBDb21wcmVzc2VkJztcbi8vICAgIHNyYzogflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS10aGlufS5lb3QnKVwiO1xuLy8gICAgc3JjOiB+XCJ1cmwoJ0B7bG9jYWwtZm9udC1wYXRofUB7bG9jYWwtZm9udC1uYW1lLXRoaW59LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJylcIixcbi8vICAgICAgICAgflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS10aGlufS53b2ZmJykgZm9ybWF0KCd3b2ZmJylcIixcbi8vICAgICAgICAgflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS10aGlufS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJylcIixcbi8vICAgICAgICAgflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS10aGlufS5zdmcjQHtsb2NhbC1mb250LW5hbWUtdGhpbn0nKSBmb3JtYXQoJ3N2ZycpXCI7XG4vLyAgICBmb250LXdlaWdodDogMTAwO1xuLy8gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuLy8gIH1cbi8vICBcbi8vICBAZm9udC1mYWNlIHtcbi8vICAgIGZvbnQtZmFtaWx5OiAnRW5jb2RlIFNhbnMgQ29tcHJlc3NlZCc7XG4vLyAgICBzcmM6IH5cInVybCgnQHtsb2NhbC1mb250LXBhdGh9QHtsb2NhbC1mb250LW5hbWUtZXh0cmFsaWdodH0uZW90JylcIjtcbi8vICAgIHNyYzogflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS1leHRyYWxpZ2h0fS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpXCIsXG4vLyAgICAgICAgIH5cInVybCgnQHtsb2NhbC1mb250LXBhdGh9QHtsb2NhbC1mb250LW5hbWUtZXh0cmFsaWdodH0ud29mZicpIGZvcm1hdCgnd29mZicpXCIsXG4vLyAgICAgICAgIH5cInVybCgnQHtsb2NhbC1mb250LXBhdGh9QHtsb2NhbC1mb250LW5hbWUtZXh0cmFsaWdodH0udHRmJykgZm9ybWF0KCd0cnVldHlwZScpXCIsXG4vLyAgICAgICAgIH5cInVybCgnQHtsb2NhbC1mb250LXBhdGh9QHtsb2NhbC1mb250LW5hbWUtZXh0cmFsaWdodH0uc3ZnI0B7bG9jYWwtZm9udC1uYW1lLWV4dHJhbGlnaHR9JykgZm9ybWF0KCdzdmcnKVwiO1xuLy8gICAgZm9udC13ZWlnaHQ6IDIwMDtcbi8vICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbi8vICB9XG4vLyAgXG4vLyAgQGZvbnQtZmFjZSB7XG4vLyAgICBmb250LWZhbWlseTogJ0VuY29kZSBTYW5zIENvbXByZXNzZWQnO1xuLy8gICAgc3JjOiB+XCJ1cmwoJ0B7bG9jYWwtZm9udC1wYXRofUB7bG9jYWwtZm9udC1uYW1lLWxpZ2h0fS5lb3QnKVwiO1xuLy8gICAgc3JjOiB+XCJ1cmwoJ0B7bG9jYWwtZm9udC1wYXRofUB7bG9jYWwtZm9udC1uYW1lLWxpZ2h0fS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpXCIsXG4vLyAgICAgICAgIH5cInVybCgnQHtsb2NhbC1mb250LXBhdGh9QHtsb2NhbC1mb250LW5hbWUtbGlnaHR9LndvZmYnKSBmb3JtYXQoJ3dvZmYnKVwiLFxuLy8gICAgICAgICB+XCJ1cmwoJ0B7bG9jYWwtZm9udC1wYXRofUB7bG9jYWwtZm9udC1uYW1lLWxpZ2h0fS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJylcIixcbi8vICAgICAgICAgflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS1saWdodH0uc3ZnI0B7bG9jYWwtZm9udC1uYW1lLWxpZ2h0fScpIGZvcm1hdCgnc3ZnJylcIjtcbi8vICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4vLyAgICBmb250LXN0eWxlOiBub3JtYWw7XG4vLyAgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdFbmNvZGUgU2FucyBDb21wcmVzc2VkJztcbiAgc3JjOiB+XCJ1cmwoJ0B7bG9jYWwtZm9udC1wYXRofUB7bG9jYWwtZm9udC1uYW1lLXJlZ3VsYXJ9LmVvdCcpXCI7XG4gIHNyYzogflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS1yZWd1bGFyfS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpXCIsXG4gICAgICAgflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS1yZWd1bGFyfS53b2ZmJykgZm9ybWF0KCd3b2ZmJylcIixcbiAgICAgICB+XCJ1cmwoJ0B7bG9jYWwtZm9udC1wYXRofUB7bG9jYWwtZm9udC1uYW1lLXJlZ3VsYXJ9LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKVwiLFxuICAgICAgIH5cInVybCgnQHtsb2NhbC1mb250LXBhdGh9QHtsb2NhbC1mb250LW5hbWUtcmVndWxhcn0uc3ZnI0B7bG9jYWwtZm9udC1uYW1lLXJlZ3VsYXJ9JykgZm9ybWF0KCdzdmcnKVwiO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0VuY29kZSBTYW5zIENvbXByZXNzZWQnO1xuICBzcmM6IH5cInVybCgnQHtsb2NhbC1mb250LXBhdGh9QHtsb2NhbC1mb250LW5hbWUtbWVkaXVtfS5lb3QnKVwiO1xuICBzcmM6IH5cInVybCgnQHtsb2NhbC1mb250LXBhdGh9QHtsb2NhbC1mb250LW5hbWUtbWVkaXVtfS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpXCIsXG4gICAgICAgflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS1tZWRpdW19LndvZmYnKSBmb3JtYXQoJ3dvZmYnKVwiLFxuICAgICAgIH5cInVybCgnQHtsb2NhbC1mb250LXBhdGh9QHtsb2NhbC1mb250LW5hbWUtbWVkaXVtfS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJylcIixcbiAgICAgICB+XCJ1cmwoJ0B7bG9jYWwtZm9udC1wYXRofUB7bG9jYWwtZm9udC1uYW1lLW1lZGl1bX0uc3ZnI0B7bG9jYWwtZm9udC1uYW1lLW1lZGl1bX0nKSBmb3JtYXQoJ3N2ZycpXCI7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRW5jb2RlIFNhbnMgQ29tcHJlc3NlZCc7XG4gIHNyYzogflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS1zZW1pYm9sZH0uZW90JylcIjtcbiAgc3JjOiB+XCJ1cmwoJ0B7bG9jYWwtZm9udC1wYXRofUB7bG9jYWwtZm9udC1uYW1lLXNlbWlib2xkfS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpXCIsXG4gICAgICAgflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS1zZW1pYm9sZH0ud29mZicpIGZvcm1hdCgnd29mZicpXCIsXG4gICAgICAgflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS1zZW1pYm9sZH0udHRmJykgZm9ybWF0KCd0cnVldHlwZScpXCIsXG4gICAgICAgflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS1zZW1pYm9sZH0uc3ZnI0B7bG9jYWwtZm9udC1uYW1lLXNlbWlib2xkfScpIGZvcm1hdCgnc3ZnJylcIjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdFbmNvZGUgU2FucyBDb21wcmVzc2VkJztcbiAgc3JjOiB+XCJ1cmwoJ0B7bG9jYWwtZm9udC1wYXRofUB7bG9jYWwtZm9udC1uYW1lLWJvbGR9LmVvdCcpXCI7XG4gIHNyYzogflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS1ib2xkfS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpXCIsXG4gICAgICAgflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS1ib2xkfS53b2ZmJykgZm9ybWF0KCd3b2ZmJylcIixcbiAgICAgICB+XCJ1cmwoJ0B7bG9jYWwtZm9udC1wYXRofUB7bG9jYWwtZm9udC1uYW1lLWJvbGR9LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKVwiLFxuICAgICAgIH5cInVybCgnQHtsb2NhbC1mb250LXBhdGh9QHtsb2NhbC1mb250LW5hbWUtYm9sZH0uc3ZnI0B7bG9jYWwtZm9udC1uYW1lLWJvbGR9JykgZm9ybWF0KCdzdmcnKVwiO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0VuY29kZSBTYW5zIENvbXByZXNzZWQnO1xuICBzcmM6IH5cInVybCgnQHtsb2NhbC1mb250LXBhdGh9QHtsb2NhbC1mb250LW5hbWUtZXh0cmFib2xkfS5lb3QnKVwiO1xuICBzcmM6IH5cInVybCgnQHtsb2NhbC1mb250LXBhdGh9QHtsb2NhbC1mb250LW5hbWUtZXh0cmFib2xkfS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpXCIsXG4gICAgICAgflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS1leHRyYWJvbGR9LndvZmYnKSBmb3JtYXQoJ3dvZmYnKVwiLFxuICAgICAgIH5cInVybCgnQHtsb2NhbC1mb250LXBhdGh9QHtsb2NhbC1mb250LW5hbWUtZXh0cmFib2xkfS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJylcIixcbiAgICAgICB+XCJ1cmwoJ0B7bG9jYWwtZm9udC1wYXRofUB7bG9jYWwtZm9udC1uYW1lLWV4dHJhYm9sZH0uc3ZnI0B7bG9jYWwtZm9udC1uYW1lLWV4dHJhYm9sZH0nKSBmb3JtYXQoJ3N2ZycpXCI7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRW5jb2RlIFNhbnMgQ29tcHJlc3NlZCc7XG4gIHNyYzogflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS1ibGFja30uZW90JylcIjtcbiAgc3JjOiB+XCJ1cmwoJ0B7bG9jYWwtZm9udC1wYXRofUB7bG9jYWwtZm9udC1uYW1lLWJsYWNrfS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpXCIsXG4gICAgICAgflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS1ibGFja30ud29mZicpIGZvcm1hdCgnd29mZicpXCIsXG4gICAgICAgflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS1ibGFja30udHRmJykgZm9ybWF0KCd0cnVldHlwZScpXCIsXG4gICAgICAgflwidXJsKCdAe2xvY2FsLWZvbnQtcGF0aH1Ae2xvY2FsLWZvbnQtbmFtZS1ibGFja30uc3ZnI0B7bG9jYWwtZm9udC1uYW1lLWJsYWNrfScpIGZvcm1hdCgnc3ZnJylcIjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufSIsIi8vXG4vLyBHbHlwaGljb25zIGZvciBGbGF0IFVJIEZyZWVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGbGF0LVVJLUljb25zXCI7XG4gIHNyYzogflwidXJsKCdAe2ljb24tZm9udC1wYXRofUB7aWNvbi1mb250LW5hbWV9LmVvdCcpXCI7XG4gIHNyYzogflwidXJsKCdAe2ljb24tZm9udC1wYXRofUB7aWNvbi1mb250LW5hbWV9LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJylcIixcbiAgICAgICB+XCJ1cmwoJ0B7aWNvbi1mb250LXBhdGh9QHtpY29uLWZvbnQtbmFtZX0ud29mZicpIGZvcm1hdCgnd29mZicpXCIsXG4gICAgICAgflwidXJsKCdAe2ljb24tZm9udC1wYXRofUB7aWNvbi1mb250LW5hbWV9LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKVwiLFxuICAgICAgIH5cInVybCgnQHtpY29uLWZvbnQtcGF0aH1Ae2ljb24tZm9udC1uYW1lfS5zdmcjQHtpY29uLWZvbnQtc3ZnLWlkfScpIGZvcm1hdCgnc3ZnJylcIjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5cbi8qIFVzZSB0aGUgZm9sbG93aW5nIENTUyBjb2RlIGlmIHlvdSB3YW50IHRvIHVzZSBkYXRhIGF0dHJpYnV0ZXMgZm9yIGluc2VydGluZyB5b3VyIGljb25zICovXG5bZGF0YS1pY29uXTpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ0ZsYXQtVUktSWNvbnMnO1xuICBjb250ZW50OiBhdHRyKGRhdGEtaWNvbik7XG4gIHNwZWFrOiBub25lO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4vKiBVc2UgdGhlIGZvbGxvd2luZyBDU1MgY29kZSBpZiB5b3Ugd2FudCB0byBoYXZlIGEgY2xhc3MgcGVyIGljb24gKi9cbi8qXG5JbnN0ZWFkIG9mIGEgbGlzdCBvZiBhbGwgY2xhc3Mgc2VsZWN0b3JzLFxueW91IGNhbiB1c2UgdGhlIGdlbmVyaWMgc2VsZWN0b3IgYmVsb3csIGJ1dCBpdCdzIHNsb3dlcjpcbltjbGFzcyo9XCJmdWktXCJdIHtcbiovXG4uZnVpLWFycm93LXJpZ2h0LCAuZnVpLWFycm93LWxlZnQsIC5mdWktY21kLCAuZnVpLWNoZWNrLWludmVydGVkLCAuZnVpLWhlYXJ0LCAuZnVpLWxvY2F0aW9uLCAuZnVpLXBsdXMsIC5mdWktY2hlY2ssIC5mdWktY3Jvc3MsIC5mdWktbGlzdCwgLmZ1aS1uZXcsIC5mdWktdmlkZW8sIC5mdWktcGhvdG8sIC5mdWktdm9sdW1lLCAuZnVpLXRpbWUsIC5mdWktZXllLCAuZnVpLWNoYXQsIC5mdWktc2VhcmNoLCAuZnVpLXVzZXIsIC5mdWktbWFpbCwgLmZ1aS1sb2NrLCAuZnVpLWdlYXIsIC5mdWktcmFkaW8tdW5jaGVja2VkLCAuZnVpLXJhZGlvLWNoZWNrZWQsIC5mdWktY2hlY2tib3gtdW5jaGVja2VkLCAuZnVpLWNoZWNrYm94LWNoZWNrZWQsIC5mdWktY2FsZW5kYXItc29saWQsIC5mdWktcGF1c2UsIC5mdWktcGxheSwgLmZ1aS1jaGVjay1pbnZlcnRlZC0yIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJ0ZsYXQtVUktSWNvbnMnO1xuICBzcGVhazogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuLmZ1aS1hcnJvdy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAyY1wiO1xufVxuLmZ1aS1hcnJvdy1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDJkXCI7XG59XG4uZnVpLWNtZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAyZlwiO1xufVxuLmZ1aS1jaGVjay1pbnZlcnRlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwNlwiO1xufVxuLmZ1aS1oZWFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwN1wiO1xufVxuLmZ1aS1sb2NhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwOFwiO1xufVxuLmZ1aS1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDA5XCI7XG59XG4uZnVpLWNoZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDBhXCI7XG59XG4uZnVpLWNyb3NzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDBiXCI7XG59XG4uZnVpLWxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMGNcIjtcbn1cbi5mdWktbmV3OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDBkXCI7XG59XG4uZnVpLXZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDBlXCI7XG59XG4uZnVpLXBob3RvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDBmXCI7XG59XG4uZnVpLXZvbHVtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAxMFwiO1xufVxuLmZ1aS10aW1lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDExXCI7XG59XG4uZnVpLWV5ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAxMlwiO1xufVxuLmZ1aS1jaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDEzXCI7XG59XG4uZnVpLXNlYXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAxY1wiO1xufVxuLmZ1aS11c2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDFkXCI7XG59XG4uZnVpLW1haWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMWVcIjtcbn1cbi5mdWktbG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAxZlwiO1xufVxuLmZ1aS1nZWFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDI0XCI7XG59XG4uZnVpLXJhZGlvLXVuY2hlY2tlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAyYlwiO1xufVxuLmZ1aS1yYWRpby1jaGVja2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDMyXCI7XG59XG4uZnVpLWNoZWNrYm94LXVuY2hlY2tlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAzM1wiO1xufVxuLmZ1aS1jaGVja2JveC1jaGVja2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDM0XCI7XG59XG4uZnVpLWNhbGVuZGFyLXNvbGlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDIyXCI7XG59XG4uZnVpLXBhdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDNiXCI7XG59XG4uZnVpLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwM2NcIjtcbn1cbi5mdWktY2hlY2staW52ZXJ0ZWQtMjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwMFwiO1xufVxuIiwiLy9cbi8vIFNjYWZmb2xkaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJvZHkgcmVzZXRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiBAZm9udC1mYW1pbHktYmFzZTtcbiAgZm9udC1zaXplOiBAZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6IEB0ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYm9keS1iZztcbn1cblxuLy8gTGlua3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuYSB7XG4gIGNvbG9yOiBAbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAudHJhbnNpdGlvbiguMjVzKTtcbiAgICBcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IEBsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59XG5cbi8vIEltYWdlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBSb3VuZGVkIGNvcm5lcnNcbi5pbWctcm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWxhcmdlO1xufVxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgaXMgbWl4aW4tZWQgaW50byB0aHVtYm5haWxzLmxlc3MgZm9yIGAudGh1bWJuYWlsYC5cbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogQHRodW1ibmFpbC1wYWRkaW5nO1xuICBsaW5lLWhlaWdodDogQGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6IEB0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogMnB4IHNvbGlkIEB0aHVtYm5haWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiBAdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM7XG4gIC50cmFuc2l0aW9uKGFsbCAuMjVzIGVhc2UtaW4tb3V0KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgLmltZy1yZXNwb25zaXZlKGlubGluZS1ibG9jayk7XG59XG5cbi8vIERlc2NyaXB0aW9uIHRleHQgdW5kZXIgaW1hZ2Vcbi5pbWctY29tbWVudCB7XG4gIGZvbnQtc2l6ZTogY2VpbChAZm9udC1zaXplLWJhc2UgKiAwLjgzMzMpOyAvLyB+MTVweFxuICBsaW5lLWhlaWdodDogMS4yO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIG1hcmdpbjogMjRweCAwO1xufSIsIi8vXG4vLyBUeXBvZ3JhcGh5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEhlYWRpbmdzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgZm9udC1mYW1pbHk6IEBoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6IEBoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IEBoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6IEBoZWFkaW5ncy1jb2xvcjtcbiAgXG4gIHNtYWxsIHtcbiAgICBjb2xvcjogQGhlYWRpbmdzLXNtYWxsLWNvbG9yO1xuICB9XG59XG5cbmgxLFxuaDIsXG5oMyB7XG4gIG1hcmdpbi10b3A6IEBsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbWFyZ2luLWJvdHRvbTogKEBsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xufVxuaDQsXG5oNSxcbmg2IHtcbiAgbWFyZ2luLXRvcDogKEBsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAoQGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG59XG5cbmg2IHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuaDEsIC5oMSB7IGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1oMTsgfSAvLyB+NjJweFxuaDIsIC5oMiB7IGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1oMjsgfSAvLyB+NTJweFxuaDMsIC5oMyB7IGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1oMzsgfSAvLyB+NDBweFxuaDQsIC5oNCB7IGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1oNDsgfSAvLyB+MjlweFxuaDUsIC5oNSB7IGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1oNTsgfSAvLyB+MjhweCBcbmg2LCAuaDYgeyBmb250LXNpemU6IEBmb250LXNpemUtaDY7IH0gLy8gfjI0cHhcblxuXG4vLyBCb2R5IHRleHRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxucCB7XG4gIGZvbnQtc2l6ZTogICBAZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcbiAgbWFyZ2luOiAwIDAgKEBsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICBmb250LXdlaWdodDogQGZvbnQtd2VpZ2h0LWJhc2U7XG4gIGNvbG9yOiBAZm9udC1jb2xvci1iYXNlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbn1cblxuLmxlYWQge1xuICBtYXJnaW4tYm90dG9tOiBAbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc2l6ZTogICBmbG9vcihAZm9udC1zaXplLWJhc2UgKiAxLjU1Nik7ICAvLyB+MjhweFxuICBsaW5lLWhlaWdodDogMS40NjQyODU3MTsgICAgICAgICAgICAgICAgICAgICAgLy8gfjQxcHhcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikge1xuICAgIGZvbnQtc2l6ZTogKEBmb250LXNpemUtYmFzZSAqIDEuNjY3KTsgICAgICAgLy8gfjMwcHhcbiAgfVxufVxuXG4vLyBFbXBoYXNpcyAmIG1pc2Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRXg6IDE4cHggYmFzZSBmb250ICogODMlID0gYWJvdXQgMTVweFxuc21hbGwsXG4uc21hbGwge1xuICBmb250LXNpemU6IDgzJTsgICAgIC8vIH4xNXB4XG4gIGxpbmUtaGVpZ2h0OiAyLjA2NzsgLy8gfjMxcHhcbn1cblxuLy8gQ29udGV4dHVhbCBlbXBoYXNpc1xuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogQHRleHQtbXV0ZWQ7XG59XG4udGV4dC1pbnZlcnNlIHtcbiAgY29sb3I6IEBpbnZlcnNlO1xufVxuLnRleHQtcHJpbWFyeSB7XG4gIC50ZXh0LWVtcGhhc2lzLXZhcmlhbnQoQGJyYW5kLXNlY29uZGFyeSk7XG59XG4udGV4dC13YXJuaW5nIHtcbiAgLnRleHQtZW1waGFzaXMtdmFyaWFudChAc3RhdGUtd2FybmluZy10ZXh0KTtcbn1cbi50ZXh0LWRhbmdlciB7XG4gIC50ZXh0LWVtcGhhc2lzLXZhcmlhbnQoQHN0YXRlLWRhbmdlci10ZXh0KTtcbn1cbi50ZXh0LXN1Y2Nlc3Mge1xuICAudGV4dC1lbXBoYXNpcy12YXJpYW50KEBzdGF0ZS1zdWNjZXNzLXRleHQpO1xufVxuLnRleHQtaW5mbyB7XG4gIC50ZXh0LWVtcGhhc2lzLXZhcmlhbnQoQHN0YXRlLWluZm8tdGV4dCk7XG59XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcbi5iZy1wcmltYXJ5IHtcbiAgLy8gR2l2ZW4gdGhlIGNvbnRyYXN0IGhlcmUsIHRoaXMgaXMgdGhlIG9ubHkgY2xhc3MgdG8gaGF2ZSBpdHMgY29sb3IgaW52ZXJ0ZWRcbiAgLy8gYXV0b21hdGljYWxseS5cbiAgY29sb3I6IEBpbnZlcnNlO1xuICAuYmctdmFyaWFudChAYnJhbmQtcHJpbWFyeSk7XG59XG4uYmctc3VjY2VzcyB7XG4gIC5iZy12YXJpYW50KEBzdGF0ZS1zdWNjZXNzLWJnKTtcbn1cbi5iZy1pbmZvIHtcbiAgLmJnLXZhcmlhbnQoQHN0YXRlLWluZm8tYmcpO1xufVxuLmJnLXdhcm5pbmcge1xuICAuYmctdmFyaWFudChAc3RhdGUtd2FybmluZy1iZyk7XG59XG4uYmctZGFuZ2VyIHtcbiAgLmJnLXZhcmlhbnQoQHN0YXRlLWRhbmdlci1iZyk7XG59XG5cblxuLy8gUGFnZSBoZWFkZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnBhZ2UtaGVhZGVyIHtcbiAgcGFkZGluZy1ib3R0b206ICgoQGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgLSAxKTtcbiAgLy9tYXJnaW46IChAbGluZS1oZWlnaHQtY29tcHV0ZWQgKiAyKSAwIEBsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEBwYWdlLWhlYWRlci1ib3JkZXItY29sb3I7XG4gIFxufVxuXG5cbi8vIExpc3RzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBVbm9yZGVyZWQgYW5kIE9yZGVyZWQgbGlzdHNcbnVsLFxub2wge1xuICBtYXJnaW4tYm90dG9tOiAoQGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG59XG5cbi8vIERlc2NyaXB0aW9uIExpc3RzXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IEBsaW5lLWhlaWdodC1jb21wdXRlZDtcbn1cbmR0LFxuZGQge1xuICBsaW5lLWhlaWdodDogQGxpbmUtaGVpZ2h0LWJhc2U7XG59XG5cbi8vIEhvcml6b250YWwgZGVzY3JpcHRpb24gbGlzdHNcbi8vXG4vLyBEZWZhdWx0cyB0byBiZWluZyBzdGFja2VkIHdpdGhvdXQgYW55IG9mIHRoZSBiZWxvdyBzdHlsZXMgYXBwbGllZCwgdW50aWwgdGhlXG4vLyBncmlkIGJyZWFrcG9pbnQgaXMgcmVhY2hlZCAoZGVmYXVsdCBvZiB+NzY4cHgpLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogQGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAuZGwtaG9yaXpvbnRhbCB7XG4gICAgZHQge1xuICAgICAgd2lkdGg6IChAY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsIC0gMjApO1xuICAgIH1cbiAgICBkZCB7XG4gICAgICBtYXJnaW4tbGVmdDogQGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTUlTQ1xuLy8gLS0tLVxuXG4vLyBBYmJyZXZpYXRpb25zIGFuZCBhY3Jvbnltc1xuYWJiclt0aXRsZV0sXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCBAYWJici1ib3JkZXItY29sb3I7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG5ibG9ja3F1b3RlIHtcbiAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCBAYmxvY2txdW90ZS1ib3JkZXItY29sb3I7XG4gIHBhZGRpbmc6IDAgMCAwIDE2cHg7XG4gIG1hcmdpbjogMCAwIEBsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogY2VpbChAZm9udC1zaXplLWJhc2UgKiAxLjExMSk7IC8vIH4yMHB4XG4gICAgbGluZS1oZWlnaHQ6IDEuNTU7ICAgICAgICAgICAgICAgICAgICAgICAgLy8gfjMxcHhcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbi1ib3R0b206IC40ZW07XG4gIH1cbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZm9udC1zaXplOiBAZm9udC1zaXplLWJhc2U7XG4gICAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodC1iYXNlO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBjb2xvcjogQGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cbiAgfVxuICBcbiAgLy8gRmxvYXQgcmlnaHQgd2l0aCB0ZXh0LWFsaWduOiByaWdodFxuICAmLnB1bGwtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodDogM3B4IHNvbGlkIEBibG9ja3F1b3RlLWJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItbGVmdDogMDtcblxuICAgIHNtYWxsIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRyZXNzZXNcbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiBAbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcbn0iLCIvKiBTdHlsZXMgbmVjZXNzYXJ5IGZvciBxdWlja2xpbmtzICovXG5cblxuI3V3LWNvbnRhaW5lclxue1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6MDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG5cbiAgICAjcXVpY2tsaW5rc1xuICAgIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGQ0ZDRkO1xuICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgcmlnaHQ6IDBweDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMCAwIDkwcHg7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcbiAgICAgICAgYmFja2dyb3VuZDogIzRkNGQ0ZDtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSg0Niw0Niw0NiwxKTtcbiAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSg0Niw0Niw0NiwxKSAwJSwgcmdiYSg3Nyw3Nyw3NywxKSA0JSwgcmdiYSg3Nyw3Nyw3NywxKSAxMDAlKTtcbiAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCByZ2JhKDQ2LDQ2LDQ2LDEpKSwgY29sb3Itc3RvcCg0JSwgcmdiYSg3Nyw3Nyw3NywxKSksIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSg3Nyw3Nyw3NywxKSkpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDQ2LDQ2LDQ2LDEpIDAlLCByZ2JhKDc3LDc3LDc3LDEpIDQlLCByZ2JhKDc3LDc3LDc3LDEpIDEwMCUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSg0Niw0Niw0NiwxKSAwJSwgcmdiYSg3Nyw3Nyw3NywxKSA0JSwgcmdiYSg3Nyw3Nyw3NywxKSAxMDAlKTtcbiAgICAgICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDQ2LDQ2LDQ2LDEpIDAlLCByZ2JhKDc3LDc3LDc3LDEpIDQlLCByZ2JhKDc3LDc3LDc3LDEpIDEwMCUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoNDYsNDYsNDYsMSkgMCUsIHJnYmEoNzcsNzcsNzcsMSkgNCUsIHJnYmEoNzcsNzcsNzcsMSkgMTAwJSk7XG4gICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMmUyZTJlJywgZW5kQ29sb3JzdHI9JyM0ZDRkNGQnLCBHcmFkaWVudFR5cGU9MSApO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjVzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBtYXRyaXgoMSwgMCwgMCwgMSwgMTkwLCAwKTtcbiAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IG1hdHJpeCgxLCAwLCAwLCAxLCAxOTAsIDApO1xuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogbWF0cml4KDEsIDAsIDAsIDEsIDE5MCwgMCk7XG4gICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBtYXRyaXgoMSwgMCwgMCwgMSwgMTkwLCAwKTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG1hdHJpeCgxLCAwLCAwLCAxLCAxOTAsIDApO1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgICAgIHVsI2JpZy1saW5rcyB7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgICAgICAgbGlcbiAgICAgICAgICB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMTRweCAwIDAgMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBAZm9udC1mYW1pbHktaGVhZGxpbmU7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1oNjtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBAYnJpZ2h0Z29sZDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICB3aWR0aDozMHB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6MzBweDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKGFzc2V0cy9zdmcvdXctc3ByaXRlLnN2Zykgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgJi5pY29uLW1hcHNcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDZweCAtMzAzcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmljb24tZGlyZWN0b3JpZXNcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC04NHB4IC0zMDNweDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuaWNvbi1jYWxlbmRhclxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM5cHggLTMwM3B4O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJi5pY29uLWxpYnJhcmllc1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOXB4IC0zMDNweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmLmljb24tbWVkaWNpbmVcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNjRweCAtMzAzcHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJi5pY29uLW15dXdcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNzRweCAtMzAzcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmljb24tdXd0b2RheVxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIxOXB4IC0zMDNweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICBoM3tcbiAgICAgICAgZm9udC1zaXplOiBAZm9udC1zaXplLWg2O1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIG1hcmdpbjogNDBweCAwIDMwcHggMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IC0xOXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB1bCNsaXR0bGUtbGlua3N7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICBsaSB7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHdpZHRoOiA2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGJyaWdodGdvbGQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAtMTVweDtcbiAgICAgICAgICAgIHRvcDogMTNweDtcbiAgICAgICAgICAgIC5ib3JkZXItdG9wLXJhZGl1cygxMDAlKTtcbiAgICAgICAgICAgIC5ib3JkZXItcmlnaHQtcmFkaXVzKDEwMCUpO1xuICAgICAgICAgICAgLmJvcmRlci1ib3R0b20tcmFkaXVzKDEwMCUpO1xuICAgICAgICAgICAgLmJvcmRlci1sZWZ0LXJhZGl1cygxMDAlKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpiZWZvcmUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjOWJjMzQzOyB9XG5cblxuICAgICAgICAgIGF7XG4gICAgICAgICAgICBmb250LWZhbWlseTogQGZvbnQtZmFtaWx5LWhlYWRsaW5lO1xuICAgICAgICAgICAgZm9udC1zaXplOiBAZm9udC1zaXplLWg2O1xuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgIGNvbG9yOiBAYnJpZ2h0Z29sZDtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICAgYVxuICAgICAgICB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5vcGVuXG4gICAgICAgIHtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbWF0cml4KDEsIDAsIDAsIDEsIDAsIDApO1xuICAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBtYXRyaXgoMSwgMCwgMCwgMSwgMCwgMCk7XG4gICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IG1hdHJpeCgxLCAwLCAwLCAxLCAwLCAwKTtcbiAgICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogbWF0cml4KDEsIDAsIDAsIDEsIDAsIDApO1xuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBtYXRyaXgoMSwgMCwgMCwgMSwgMCwgMCk7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIGRpdiN1dy1jb250YWluZXItaW5uZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OiAxMHB4IDBweCAxMXB4IC02cHggIzFmMWYxZjtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC41cyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xuICAgICAgICAvL2Rpdi51dy1ib2R5LXdyYXB7XG4gICAgICAgIC8vICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAvLyAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLy8gICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAvLyAgICBiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO1xuICAgICAgICAvL31cbiAgICB9XG4gICAgJi5vcGVuXG4gICAge1xuICAgICAgICBkaXYjdXctY29udGFpbmVyLWlubmVyIHtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBtYXRyaXgoMSwgMCwgMCwgMSwgLTI3MCwgMCk7XG4gICAgICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogbWF0cml4KDEsIDAsIDAsIDEsIC0yNzAsIDApO1xuICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IG1hdHJpeCgxLCAwLCAwLCAxLCAtMjcwLCAwKTtcbiAgICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBtYXRyaXgoMSwgMCwgMCwgMSwgLTI3MCwgMCk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbWF0cml4KDEsIDAsIDAsIDEsIC0yNzAsIDApO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cblxuLy8gTW9iaWxlXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDc2N3B4KSB7XG4gICN1dy1jb250YWluZXIge1xuICAgICNxdWlja2xpbmtzICB7XG4gICAgICBwYWRkaW5nOiAwIDAgMCA3MHB4O1xuICAgIH1cbn1cbn1cbiIsIi8vIFVXIERyb3dwZG93bnNcblxuLmFzc2lzdGl2ZS10ZXh0IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRjbGlwOiByZWN0KDFweCAxcHggMXB4IDFweCk7XG5cdGNsaXA6IHJlY3QoMXB4LDFweCwxcHgsMXB4KTtcblx0ei1pbmRleDogLTE7XG59XG5cbi8vIFJlc2V0c1xuXG4jZGF3Z2Ryb3BzIHtcblx0LmJveC1zaGFkb3coMCAxcHggM3B4IHJnYmEoMzQsIDI1LCAyNSwgMC40KSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cdHVsIHtcblx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHRtYXJnaW46IDA7XG5cdFx0bGlzdC1zdHlsZTpub25lO1xuXHRcdC8vIEZvciBlcXVhbCB3aWR0aFxuXHRcdC8vZGlzcGxheTogdGFibGU7XG5cdFx0Ly90YWJsZS1sYXlvdXQ6IGZpeGVkO1xuXHRcdC8vb3ZlcmZsb3c6IGhpZGRlbjtcblx0XHQvL3dpZHRoOiAxMDAlXG5cdH1cblx0bGkge1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdC8vZGlzcGxheTogdGFibGUtY2VsbDsgLy8gRm9yIGVxdWFsIHdpZHRoXG5cdFx0bGkge1xuXHRcdFx0d2lkdGg6IDgwJTtcblx0XHRcdG1hcmdpbjogMCAxMCU7XG5cdFx0fVxuXHR9XG59XG5cbi5kYXdnZHJvcHMtaW5uZXIge1xuXHQvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZzogMjBweCAwIDVweCAwO1xufVxuXG4vLyBNZW51IGJsb2Nrc1xuXG4ubWVudS1ibG9jayB7XG5cdGZsb2F0OiBsZWZ0O1xuXHR3aWR0aDoyMzBweDtcbn1cblxuLmRhd2dkcm9wcy1pdGVtIHtcblx0Ji5kYXdnZHJvcHMtaXRlbSB7XG5cdFx0YSB7XG5cdFx0Zm9udC1mYW1pbHk6IEBmb250LWZhbWlseS1kYXdnZHJvcHM7XG5cdFx0Zm9udC13ZWlnaHQ6IEBoZWFkaW5ncy1mb250LXdlaWdodDtcblx0XHRmb250LXNpemU6IDIwcHg7XG5cdFx0cGFkZGluZzogNXB4IDEwcHggMjFweCAxNXB4O1xuXHRcdFx0Jjpmb2N1cyxcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRjb2xvcjogQGRhcmtnb2xkO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRsaSBhIHtcblx0XHRcdGZvbnQtZmFtaWx5OiBAZm9udC1mYW1pbHktZGF3Z2Ryb3BzO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDRweDtcblx0XHRcdHBhZGRpbmctbGVmdDogMTBweDtcblx0XHRcdHBhZGRpbmctdG9wOiA0cHg7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdG1hcmdpbi10b3A6IDZweDtcblx0XHRcdG1hcmdpbi1ib3R0b206IDZweDtcblx0XHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAyOHB4O1xuXHRcdFx0Jjpob3Zlcixcblx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRjb2xvcjogQHB1cnBsZTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI0U3RTdFNztcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0YSB7XG5cblx0XHRjb2xvcjogQHB1cnBsZTtcblx0XHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0XHRmb250LXNpemU6IDIycHg7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRwYWRkaW5nOiAyNHB4IDEwcHggMTlweCAxNXB4O1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQvL0NhcmV0XG5cdFx0Ji5kcm9wZG93bi10b2dnbGUge1xuXHRcdFx0cGFkZGluZy1yaWdodDogMzBweDtcblx0XHRcdCY6aG92ZXI6YmVmb3JlIHtcblx0XHRcdFx0YmFja2dyb3VuZDogdXJsKGFzc2V0cy9zdmcvdXctc3ByaXRlLnN2Zykgbm8tcmVwZWF0IC0yMDNweCAtNDkwcHg7XG5cdFx0XHRcdC5yb3RhdGUoOTBkZWcpO1xuXHRcdFx0XHRoZWlnaHQ6IDI1cHg7XG5cdFx0XHRcdHdpZHRoOiAxOHB4O1xuXHRcdFx0XHRyaWdodDogNHB4O1xuXHRcdFx0XHR0b3A6IDhweDtcblx0XHRcdH1cblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRoZWlnaHQ6IDEwcHg7XG5cdFx0XHRcdHdpZHRoOiAxMHB4O1xuXHRcdFx0XHRyaWdodDogOHB4O1xuXHRcdFx0XHR0b3A6IDE3cHg7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHVybChhc3NldHMvc3ZnL3V3LXNwcml0ZS5zdmcpIG5vLXJlcGVhdCAtMzUzcHggMHB4O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQvLyBGb3J3YXJkIHNsYXNoIG1lbnUtc2VwYXJhdG9yXG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0cmlnaHQ6IC0xNHB4O1xuXHRcdFx0aGVpZ2h0OiAyNHB4O1xuXHRcdFx0d2lkdGg6IDEycHg7XG5cdFx0XHR0b3A6IDE0cHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJ2Fzc2V0cy9zdmcvc2xhc2guc3ZnJykgbm8tcmVwZWF0O1xuXHRcdH1cblx0XHQmOmZvY3VzIHtcblxuXHRcdH1cblx0fVxuXHQmOmhvdmVyIC5kYXdnZHJvcHMtbWVudSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblx0JjpsYXN0LWNoaWxkIGE6YWZ0ZXIgeyBkaXNwbGF5OiBub25lOyB9XG59XG5cbi5kYXdnZHJvcHMtbWVudSB7XG5cdHRvcDogNjZweDtcblx0bGVmdDogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRkaXNwbGF5Om5vbmU7XG5cdG1pbi13aWR0aDogMjYwcHg7XG5cdC8vIHZpc2liaWxpdHk6IGhpZGRlbjtcblx0Ym9yZGVyOiAwO1xuXHRib3JkZXItdG9wOiA0cHggc29saWQgQHB1cnBsZTtcblx0cGFkZGluZzogMTBweCAwO1xuXHRtYXJnaW46IC0xcHggMCAwO1xuXHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR6LWluZGV4OjE7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAxcHggMXB4IDhweCByZ2JhKDAsMCwwLC41KTtcbiAgICAtbW96LWJveC1zaGFkb3c6IDFweCAxcHggOHB4IHJnYmEoMCwwLDAsLjUpO1xuICAgIGJveC1zaGFkb3c6IDFweCAxcHggOHB4IHJnYmEoMCwwLDAsLjUpO1xuXG5cdGxpIHtcblx0XHRmbG9hdDpsZWZ0O1xuXHRcdGNsZWFyOmxlZnQ7XG5cdFx0Ym9yZGVyLWJvdHRvbTogdGhpbiBzb2xpZCAjZWVlO1xuXHRcdGEge1xuXHRcdFx0Y29sb3I6ICM3MDcwNzA7XG5cdFx0XHRmb250LXNpemU6IDE3cHg7XG5cdFx0XHRtYXJnaW46IDEwcHggMzBweCAwcHggMjBweDtcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRwYWRkaW5nOiAwIDEwcHg7XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOm5vbmU7XG5cdFx0XHR9XG5cblx0XHR9XG5cblx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi10b3A6IDVweDtcblx0XHR9XG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0fVxuXHR9XG5cbn1cblxuXG4vKiBTbWFsbCBEZXZpY2VzLCBUYWJsZXRzICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDc2N3B4KSB7XG5cdHNlY3Rpb24uYmxvY2stbWVudSB7XG5cdFx0ei1pbmRleDogMTAwMDtcdFxuXHR9XG5cdFxuXHQjZGF3Z2Ryb3BzIHtcbiBcdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXHRcblx0I21lbnUtdG9nZ2xlIHtcblx0XHR6LWluZGV4OiAxMDAwO1xuXHRcdFxuXHRcdHVsLm1lbnUge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogQHB1cnBsZTtcdFxuXHRcdH1cblx0XHRcblx0XHR1bC5tZW51ICB1bC5kcm9wZG93bi1tZW51IHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRcdFx0XG5cdFx0XHRsaSB7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMzVweDtcblx0XHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdFxuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0dWwubWVudSAgbGkuZHJvcGRvd24gYS5kcm9wZG93bi10b2dnbGUge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHR9XG5cdH1cblxufVxuXG4vKiBNZWRpdW0gRGV2aWNlcywgRGVza3RvcHMgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDk5MnB4KSB7XG5cdC5kYXdnZHJvcHMtaW5uZXIge1xuXHRcdHBhZGRpbmc6IDIwcHggMDtcblx0fVxuXHQuZGF3Z2Ryb3BzLWl0ZW0uZGF3Z2Ryb3BzLWl0ZW0ge1xuXHRcdCY6aG92ZXIgLmRhd2dkcm9wcy1tZW51IHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHRcdGEge1xuXHRcdFx0cGFkZGluZzogNHB4IDEwcHggMTBweCAxNXB4O1xuXHRcdFx0Ji5kcm9wZG93bi10b2dnbGUge1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXHRcdFx0fVxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdHRvcDogMTNweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiA5OTNweCkgYW5kIChtYXgtd2lkdGggOiAxMjAwcHgpIHtcblx0LmRhd2dkcm9wcy1pdGVtLmRhd2dkcm9wcy1pdGVtIGEge1xuXHRcdGZvbnQtc2l6ZTogMThweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogMjNweDtcblx0fVxufVxuXG4vLyBTcGVjaWFsIE15VVcgYnV0dG9uXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDc2OHB4KSB7XG5cdG5hdiNkYXdnZHJvcHMgLmJ0bi1teXV3IGEge1xuICBcdFx0Zm9udC1zaXplOiAxOHB4O1xuICBcdFx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIFx0XHRjb2xvcjogI0ZGRjtcbiAgXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG4gIFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG4gIFx0XHR0b3A6IDY1cHg7XG4gIFx0XHRyaWdodDogMDtcbiAgXHRcdHBhZGRpbmc6IDE1cHggMjBweCAyMHB4IDEwMHB4O1xuICBcdFx0ei1pbmRleDogLTE7XG4gIFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHQgICAgJjphZnRlciB7XG4gIFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG4gIFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuICBcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG4gIFx0XHRcdHdpZHRoOiA0MHB4O1xuICBcdFx0XHRoZWlnaHQ6IDMzcHg7XG4gIFx0XHRcdGxlZnQ6IDU4cHg7XG4gIFx0XHRcdHRvcDogMTZweDtcblx0ICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoYXNzZXRzL3N2Zy9wZXJzb24uc3ZnKSBuby1yZXBlYXQgMCAwO1xuXHQgICAgfVxuXHQgICAgJjpob3ZlciB7XG5cdCAgICAgIGNvbG9yOiBibGFjaztcblx0ICAgIH1cblx0ICAgICY6YmVmb3JlIHtcblx0ICAgICAgICBjb250ZW50OiBcIlwiO1xuXHQgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXHQgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ICAgICAgICB0b3A6IDE3cHg7XG5cdCAgICAgICAgd2lkdGg6IDQ1MHB4O1xuXHQgICAgICAgIGhlaWdodDogNjBweDtcblx0ICAgICAgICBsZWZ0OiAzM3B4O1xuXHQgICAgICAgIHRvcDogLTFweDtcblx0ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAZGFya2dvbGQ7XG5cdCAgICAgICAgLnNrZXcoLTE1ZGVnLDApO1xuXHQgICAgICAgIHotaW5kZXg6IC0xO1xuXHQgICAgICAgIGJveC1zaGFkb3c6IDBweCAxcHggM3B4IHJnYmEoMCwwLDAsLjQpO1xuXHQgICAgfVxuXHR9XG59XG5cbi5kcm9wZG93bi1tZW51IHtcblx0cGFkZGluZzogMDtcblx0XG5cdGEge1xuXHRcdGJvcmRlci1yYWRpdXM6IDRweDtcblx0fVxufSIsIi8vIFVXIFRoaW5zdHJpcFxuXG4udXctdGhpbnN0cmlwIHtcblx0aGVpZ2h0OiA5MHB4O1xuXHR3aWR0aDogMTAwJTtcblx0YmFja2dyb3VuZDogQHB1cnBsZTtcblx0cGFkZGluZy10b3A6IDIycHg7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMjtcblx0LmJveC1zaGFkb3coMCAycHggNXB4IHJnYmEoMCwwLDAsLjMpKTtcblxuXHQvLyBDb250YWluZXJcblx0LmNvbnRhaW5lciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR9XG5cblx0Ly8gQWxsZW4gU2Nob29sIFdvcmRtYXJrXG5cblx0LmFsbGVuLXNjaG9vbC13b3JkbWFyayB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAxN3B4O1xuXHRcdGxlZnQ6IDE1cHg7XG5cdFx0XG5cdFx0aW1nIHtcblx0XHRcdG1hcmdpbi10b3A6IC0yNXB4O1xuXHRcdFx0aGVpZ2h0OiA2MHB4O1xuXHRcdH1cblx0fVxuXG4gIGRpdi5hbGlnbi1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG5cbiAgbmF2IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG5cdC8vIEF1ZGllbmNlXG5cblx0dWwudXctdGhpbi1saW5rcyB7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0cGFkZGluZzogMDtcblxuXHRcdGxpIHtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRcdCY6bGFzdC1jaGlsZCBhOmFmdGVyIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHRcdGEsIGJ1dHRvbiB7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiBAZm9udC1mYW1pbHktaGVhZGxpbmU7XG5cdFx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdFx0XHRmb250LXNpemU6IDE3cHg7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdFx0XHRwYWRkaW5nOiA4cHggMjVweCAxMHB4IDA7XG5cdFx0XHRcdGxldHRlci1zcGFjaW5nOiAuMDFlbTtcblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHJpZ2h0OiA2cHg7XG5cdFx0XHRcdFx0aGVpZ2h0OjMycHg7XG5cdFx0XHRcdFx0d2lkdGg6IDEycHg7XG5cdFx0XHRcdFx0dG9wOiA3cHg7XG5cdFx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0XHQvL2JhY2tncm91bmQ6IHVybChhc3NldHMvc3ZnL3V3LXNwcml0ZS5zdmcpIG5vLXJlcGVhdCAtNjk2cHggMDtcblx0XHRcdFx0fVxuXHRcdFx0XHQmOmhvdmVyLFxuXHRcdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0XHRjb2xvcjogQGxpZ2h0Z29sZDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBidXR0b24ge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgZm9udC1mYW1pbHk6IEBmb250LWZhbWlseS1oZWFkbGluZTtcbiAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICYudXctc2VhcmNoIHtcbiAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OTlweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDc4cHg7XG4gICAgICAgICAgICAvL2JvcmRlcjogMnB4IHNvbGlkIHdoaXRlO1xuXHRcdFx0XHRcdFx0b3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgLmJvcmRlci1yYWRpdXMoMTAwJSk7XG4gICAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgMTVweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAvL2JvcmRlcjogMnB4IHNvbGlkIEBsaWdodGdvbGQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBwdXJwbGUsIDglKTtcbiAgICAgICAgICAgICAgICAudHJhbnNpdGlvbihhbGwgLjFzIGxpbmVhcilcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDEycHg7XG4gICAgICAgICAgICAgICAgbGVmdDogMTFweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLnV3LXF1aWNrbGlua3Mge1xuICAgICAgICAgICAgZGl2IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAtMjJweDtcbiAgICAgICAgICAgICAgICByaWdodDogMHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTYwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjhweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDM0cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgLy9iYWNrZ3JvdW5kOiB1cmwoYXNzZXRzL3N2Zy91dy1zcHJpdGUuc3ZnKSBuby1yZXBlYXQgLTQ1MXB4IC0yMzVweDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7ICAgICAgICAgICAgICAgIFx0XG4gICAgICAgICAgICAgICAgXHRjb2xvcjogI0ZGRjtcblx0XHRcdFx0XHR0ZXh0LXNoYWRvdzogMHB4IDBweCA0cHggcmdiYSgwLCAwLCAwLCAwLjU0KTtcblx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdFx0XHRvdXRsaW5lOiBub25lO1xuXHRcdFx0XHRcdC50cmFuc2l0aW9uKGFsbCAwLjJzIGVhc2UpO1xuICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBcdHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAvL1x0cG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIC8vXHR0b3A6IDFweDtcbiAgICAgICAgICAgICAgICAvL1x0cmlnaHQ6IC03cHg7XG4gICAgICAgICAgICAgICAgLy9cdGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgLy9cdHdpZHRoOiA1MXB4O1xuICAgICAgICAgICAgICAgIC8vXHRoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICAgICAgLy9cdGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIC8vXHR0cmFuc2Zvcm06IHNrZXdYKC0xNGRlZyk7XG4gICAgICAgICAgICAgICAgLy9cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwjMmUyZTJlIDAsIzY4Njg2OCA0JSwjNjg2ODY4IDEwMCUpO1xuICAgICAgICAgICAgICAgIC8vfVxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDExcHg7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgLnRyYW5zaXRpb24ocmlnaHQgMC4ycyBlYXNlKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cdFx0XG4gICAgLy8gQWN0aXZlIHN0YXRlIG9mIHNlYXJjaCBidXR0b25cblxuICAgIC5zZWFyY2gtb3BlbiAudXctdGhpbnN0cmlwIGJ1dHRvbi51dy1zZWFyY2gge1xuICAgICAgICBzdmcge1xuXHRcdHRvcDogLTIwcHg7XG5cdFx0bGVmdDogMTBweDtcblx0fVxufVxuLm9wZW4gLnV3LXRoaW5zdHJpcCB1bC51dy10aGluLWxpbmtzIGxpLnV3LXF1aWNrbGlua3MgYnV0dG9uIHtcblx0Jjpob3ZlciBzdmcsXG5cdCY6Zm9jdXMgc3ZnIHtcblx0XHRyaWdodDogMTFweDtcblx0fVxuXHRzdmcge1xuXHRcdHRvcDogLTM3cHg7XG5cdH1cbn1cblxuXG4jdXctY29udGFpbmVyIHtcblx0Ji5vcGVuIC51dy1xdWlja2xpbmtzIGEge1xuXHRcdGNvbG9yOiBibGFjaztcblx0XHQvLyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDcycHggLTMxN3B4O1xuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Ly8gYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1M3B4IC00NHB4O1xuICAgICAgdG9wOiAxMXB4O1xuICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgIC1tb3otdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgIC1tcy10cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgIC1vLXRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpO1xuXHRcdH1cblx0fVxufVxuXG4jZGF3Z2Ryb3BzIHtcblx0YmFja2dyb3VuZC1jb2xvcjogQGdyYXk7XG59XG5cblxuLyogU21hbGwgRGV2aWNlcywgVGFibGV0cyAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNzY3cHgpIHtcblxuXHQjdXctY29udGFpbmVyIHtcblx0XHQmLm9wZW4gLnV3LXF1aWNrbGlua3MgYnV0dG9uIHtcblx0XHRcdGNvbG9yOiBibGFjaztcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC00OTJweCAtMzE3cHg7XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTI5NHB4IC01MnB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDg4MHB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC51dy10aGluc3RyaXAge1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0aGVpZ2h0OiA0NXB4O1xuXHRcdC5jb250YWluZXIge1xuXHRcdFx0cG9zaXRpb246IHN0YXRpYztcblx0XHR9XG5cdFx0XG5cdFx0LmFsbGVuLXNjaG9vbC13b3JkbWFyayB7XG5cdFx0XHR3aWR0aDogNzNweDtcblx0XHRcdGhlaWdodDogNDVweDtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDQ3MHB4O1xuXHRcdFx0LnRyYW5zaXRpb24oYWxsIDBzKTtcblx0XHRcdCY6aG92ZXIsXG5cdFx0XHQmOmZvY3VzLFxuXHRcdFx0e1xuXHRcdFx0ICBiYWNrZ3JvdW5kLXNpemU6IDQ3MHB4O1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRpbWcge1xuXHRcdFx0XHRoZWlnaHQ6IDM1cHg7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDVweDtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDVweDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LnV3LXdvcmRtYXJrIHtcblx0XHRcdHdpZHRoOiAxNTVweDtcblx0XHRcdGhlaWdodDogMzRweDtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0dG9wOiA0cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDM5N3B4O1xuXHRcdH1cblx0XHRidXR0b24ge1xuXHRcdFx0Ji51dy1xdWlja2xpbmtzIHtcblx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4NHB4IC0yNDdweDtcblx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiA5MDBweDtcblx0XHRcdFx0dGV4dC1pbmRlbnQ6IC05OTk5OXB4O1xuXHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0XHRwYWRkaW5nOiAyMHB4IDlweCAwIDA7XG5cdFx0XHRcdHdpZHRoOiA1MHB4O1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC0yNTNweCA0cHg7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiA3ODBweDtcblx0XHRcdFx0XHR0b3A6IDExcHg7XG5cdFx0XHRcdFx0cmlnaHQ6IDlweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQvLyBXZSBoaWRlIHRoZSBzZWFyY2ggaWNvbiBhdCB0aGlzIHJlc29sdGlvbiwgYnV0IGl0IGFwcGVhcnMgaW4gdGhlXG5cdFx0XHQvLyBtb2JpbGUgbmF2IChjc2UubW9iaWxlLW1lbnUubGVzcylcblx0XHRcdCYudXctc2VhcmNoe1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHQvL3RvcDogMDtcblx0XHRcdFx0Ly9yaWdodDogMzZweDtcblx0XHRcdFx0Ly9oZWlnaHQ6IDQ3cHg7XG5cdFx0XHRcdC8vd2lkdGg6IDQ3cHg7XG5cdFx0XHRcdC8vbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXHRcdFx0XHQvL2JvcmRlcjogbm9uZTtcblx0XHRcdFx0Ly9vdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0XHQvL3Bvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0Ly8mOmhvdmVyIHtcblx0XHRcdFx0Ly9cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0XHQvL1x0Ym9yZGVyOiBub25lO1xuXHRcdFx0XHQvL31cblx0XHRcdFx0Ly9zdmcge1xuXHRcdFx0XHQvL1x0dG9wOiAxNHB4O1xuXHRcdFx0XHQvL1x0bGVmdDogMTRweDtcblx0XHRcdFx0Ly99XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdFxuXHQudXctdGhpbi1saW5rcyB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXHRcbiAgICAuc2VhcmNoLW9wZW4ge1xuICAgICAgICAudXctdGhpbnN0cmlwIHtcbiAgICAgICAgICAgIGJ1dHRvbi51dy1zZWFyY2gge1xuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTE3cHg7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDE0cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cdC51dy10aGluc3RyaXAge1xuXHRcdHVsLnV3LXRoaW4tbGlua3Mge1xuXHRcdFx0bGkge1xuXHRcdFx0ICAgIGRpc3BsYXk6IG5vbmU7XG5cdFx0XHQgICAgJi51dy1zZWFyY2gsICYudXctcXVpY2tsaW5rcyB7XG5cdFx0XHQgICAgXHRkaXNwbGF5OiBibG9jaztcblx0XHRcdCAgICB9XG5cdCAgICAgICAgICAgICAgICAmLnV3LXF1aWNrbGlua3Mge1xuXHQgICAgICAgICAgICAgICAgXHRidXR0b246YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdFx0XHRcdH1cblx0ICAgICAgICAgICAgICAgIFx0ZGl2IHtcblx0ICAgICAgICAgICAgICAgICAgICBcdGRpc3BsYXk6IG5vbmU7XG5cdCAgICAgICAgICAgICAgICBcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiA3NjhweCkgYW5kIChtYXgtd2lkdGggOiA5OTFweCkge1xuXHQudXctdGhpbnN0cmlwIHtcblx0XHRoZWlnaHQ6IDE0MHB4O1xuXHRcdC51dy1wYXRjaCB7XG5cdFx0XHQvL3RvcDogLTkwcHg7XG5cdFx0fVxuXHRcdC5hbGxlbi1zY2hvb2wtd29yZG1hcmsge1xuICAgICAgei1pbmRleDogMjtcblx0XHR9XG4gICAgZGl2LmFsaWduLXJpZ2h0IHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdCNzZWFyY2gtcXVpY2tsaW5rcyB7XG5cdFx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHR0b3A6MHB4O1xuXHRcdFx0XHRyaWdodDowcHg7XG5cdFx0XHRcdG1pbi13aWR0aDogMjMwcHg7XG5cdFx0XHR9XG4gICAgfVxuXHRcdHVsLnV3LXRoaW4tbGlua3Mge1xuXHRcdFx0bGkge1xuXHRcdFx0XHQvL2Zsb2F0OiBub25lO1xuXHRcdFx0fVxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0aGVpZ2h0OiA1MHB4O1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogQHB1cnBsZTtcblx0XHRcdH1cblx0XHRcdGxpIGEsbGkgYnV0dG9uIHtcblx0XHRcdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdFx0XHRwYWRkaW5nOiAxMHB4IDI1cHggMTBweCAwO1xuXHRcdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdGxpIHtcblx0XHRcdG1hcmdpbi10b3A6IDY4cHg7XG5cdFx0fVxuXHRcdGxpLnV3LXF1aWNrbGlua3Mge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHR0b3A6IC02OXB4O1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdH1cblx0XHR1bC51dy10aGluLWxpbmtzIGxpLnV3LXNlYXJjaCB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRyaWdodDogMTQ1cHg7XG5cdFx0XHR0b3A6IC02OXB4O1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdH1cblx0fVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiA3NjhweCkgYW5kIChtYXgtd2lkdGggOiAxMDIwcHgpIHtcblx0LnV3LXRoaW5zdHJpcCB7XG5cdFx0LmFsbGVuLXNjaG9vbC13b3JkbWFyayB7XG4gICAgICAuc2NhbGUoLjgsLjgpO1xuXHRcdFx0dG9wOiAxMnB4O1xuXHRcdFx0bGVmdDogLTE1cHg7XG5cdFx0fVxuXHR9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiA5OTJweCkgYW5kIChtYXgtd2lkdGggOiAxMjAwcHgpIHtcblx0LnV3LXRoaW5zdHJpcCB7XG5cdFx0dWwudXctdGhpbi1saW5rcyBsaXtcbiAgICAgICAgICAgIGEsIGJ1dHRvbiB7XG5cdFx0XHQgICAgZm9udC1zaXplOiAxNnB4O1xuXHRcdFx0ICAgIHBhZGRpbmc6IDEwcHggMjVweCAxMHB4IDA7XG4gICAgICAgICAgICB9XG5cdFx0fVxuXHR9XG59XG4iLCIvLyBVVyBIZXJvXG5cbi51dy1oZXJvLWltYWdlLFxuLm5vLXV3LWhlcm8taW1hZ2UgIHtcblx0aGVpZ2h0OiAxNzBweDtcblx0Ly8gYmFja2dyb3VuZDogdXJsKCdhc3NldHMvdGVtcC9pbWEuanBnJykgY2VudGVyIGNlbnRlcjtcblx0LmJhY2tncm91bmQtc2l6ZShjb3Zlcik7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Ly8gei1pbmRleDogLTE7XG5cdCY6YWZ0ZXIge1xuXHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdGJvdHRvbTogMDtcblx0XHRoZWlnaHQ6IDgwcHg7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJ2Fzc2V0cy9pbWFnZXMvc3RyaXBlcy1kYXJrLXRpbGUuc3ZnJyk7XG5cdFx0b3BhY2l0eTogLjI7XG5cdH1cblx0JjpiZWZvcmUge1xuXHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdGhlaWdodDogODBweDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRjb250ZW50OiBcIlwiO1xuXHRcdG9wYWNpdHk6IC40O1xuXHRcdGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDAgMTAwJSwgZnJvbShyZ2JhKDAsIDAsIDAsIDApKSwgdG8ocmdiYSgwLCAwLCAwLCAuOCkpKSAwIDAgbm8tcmVwZWF0O1xuXHR9XG5cdC8vIFBhZ2UgQXR0cmlidXRlcyA+IEJpZyBIZXJvIC8gUmFkaW8gYnV0dG9uXG5cdCYuaGVyby1oZWlnaHQge1xuICBcdFx0aGVpZ2h0OiAzNTBweDtcbiAgXHRcdCNoZXJvLWNvbnRhaW5lciB7XG4gIFx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdHBvc2l0aW9uOiBzdGF0aWM7XG4gIFx0XHRcdGgxIHtcblx0XHRcdCAgbGluZS1oZWlnaHQ6IDE7XG5cdFx0XHQgIHBhZGRpbmc6IDgwcHggMjAlIDAgMDtcblx0XHRcdCAgbWFyZ2luOiAwO1xuXHRcdCAgICAgIHRleHQtc2hhZG93OiAxcHggMXB4IDNweCByZ2JhKDAsMCwwLC41KTtcblx0XHRcdCAgJjphZnRlciB7XG5cdFx0XHQgICAgY29udGVudDogXCJcIjtcblx0XHRcdCAgICBkaXNwbGF5OiBibG9jaztcblx0XHRcdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHQgICAgdG9wOiAwO1xuXHRcdFx0ICAgIGhlaWdodDogMzYwcHg7XG5cdFx0XHQgICAgbGVmdDogLTE0MHB4O1xuICBcdFx0XHRcdG9wYWNpdHk6IC4zO1xuICBcdFx0XHRcdHdpZHRoOiA2MDBweDtcblx0XHRcdCAgICBiYWNrZ3JvdW5kOiB1cmwoYXNzZXRzL3N2Zy9zbGFzaGVzLWxpZ2h0LnN2Zykgbm8tcmVwZWF0IDAgMDtcblx0XHRcdCAgICB6LWluZGV4OiAwO1xuXHRcdFx0ICB9XG5cdFx0XHR9XG4gIFx0XHR9XG4gIFx0XHQmOmFmdGVye1xuICBcdFx0XHRkaXNwbGF5OiBub25lO1xuICBcdFx0fVxuICBcdFx0I2hlcm8tYmcge1xuICBcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdH1cblx0XHQudWR1Yi1zbGFudCBzcGFuIHtcblx0XHQgIGJhY2tncm91bmQtY29sb3I6ICNFOEUzRDM7XG5cdFx0fVxuXHR9XG59XG4ubm8tdXctaGVyby1pbWFnZSB7XG5cdGJhY2tncm91bmQ6IG5vbmU7XG5cdGJhY2tncm91bmQtY29sb3I6ICNlOGUzZDM7XG5cdGhlaWdodDogMTMwcHg7XG5cdCY6YWZ0ZXIge1xuXHRcdG9wYWNpdHk6IC4yO1xuXHR9XG5cdCY6YmVmb3JlIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cblxuLy8gRHViIHNsYW50XG5cbi51ZHViLXNsYW50IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMzBweCAwIDI1cHggMDtcbiAgICBzcGFuIHtcbiAgICAgIC5za2V3KC0yNWRlZywwKTtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBoZWlnaHQ6IDExcHg7XG4gICAgICB3aWR0aDogMjEwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO1xuICAgICAgbWFyZ2luOiAwIDAgMCAtNXB4O1xuICAgIH1cbn1cblxuXG4vLyBObyBpbWFnZVxuXG4ucGFnZS10ZW1wbGF0ZS10ZW1wbGF0ZXN0ZW1wbGF0ZS1uby1oZXJvLXBocCB7XG5cdC51dy1ib2R5IHtcblx0XHQudXctc2l0ZS10aXRsZSB7XG5cdFx0XHRjb2xvcjogQGRhcmtncmF5XG5cdFx0fVxuXHR9XG59XG5cbi8vIE5vIHNpdGUgdGl0bGVcblxuLnBhZ2UtdGVtcGxhdGUtdGVtcGxhdGVzdGVtcGxhdGUtbm8tdGl0bGUtcGhwIHtcblx0LnV3LWJvZHkge1xuXHRcdC51dy1zaXRlLXRpdGxlIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHRcdCYuY29udGFpbmVyIHtcblx0XHRcdG1hcmdpbi10b3A6IDMwcHg7XG5cdFx0fVxuXHR9XG5cdHVsLnV3LXNpZGViYXItbWVudSB7XG5cdFx0bWFyZ2luLXRvcDogLTIwcHg7XG5cdH1cbn1cblxuXG4vKiBTbWFsbCBEZXZpY2VzLCBUYWJsZXRzICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA3NjdweCkge1xuXHQudXctaGVyby1pbWFnZSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdC8vIExhcmdlciBoZXJvXG5cdFx0Ji5oZXJvLWhlaWdodCB7XG5cdFx0XHRwYWRkaW5nOiA1MHB4IDIwcHggMjBweDtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdCAgXHRoZWlnaHQ6IGF1dG87XG5cdFx0ICBcdCNoZXJvLWNvbnRhaW5lciB7XG5cdFx0ICBcdFx0aDEge1xuXHRcdCAgXHRcdFx0Zm9udC1zaXplOiAzNXB4O1xuXHRcdCAgXHRcdFx0cGFkZGluZzogMDtcblx0XHQgIFx0XHRcdCY6YWZ0ZXIge1xuXHRcdCAgXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDgwJTtcblx0XHQgIFx0XHRcdFx0LW1vei1iYWNrZ3JvdW5kLXNpemU6IDgwJTtcblx0XHQgIFx0XHRcdFx0LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IDgwJTtcblx0XHRcdFx0XHRcdHRvcDogLTYwcHg7XG5cdFx0XHRcdFx0XHRsZWZ0OiAtMjcwcHg7XG5cdFx0ICBcdFx0XHR9XG5cdFx0ICBcdFx0fVxuXHRcdCAgXHR9XG5cdFx0fVxuXHRcdCYuaGVyby1ibGFuayB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdC51dy1zaXRlLXRpdGxlLWJsYW5rIHtcbiAgICBcdFx0XHRmb250LXNpemU6IDMwcHg7XG4gIFx0XHRcdCAgICBtYXJnaW46IDVweCAwIDIwcHggNXB4O1xuICAgIFx0XHR9XG5cdFx0fVxuXHR9XG4gICAgLnVkdWItc2xhbnQge1xuICAgICAgICBtYXJnaW46IDEwcHggMCAxNXB4IDA7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwIC0xNDVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBkaXYuY29udGFpbmVyLnV3LWJvZHkge1xuICAgIFx0cGFkZGluZy10b3A6IDA7XG4gICAgfVxuICAgIGRpdi5jb250YWluZXIudXctYm9keSB7XG5cdCAgIFx0ZGl2LnV3LXNpdGUtdGl0bGUgeyBcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdCAgICB9XG5cdH1cbiAgICBidXR0b24udXctbW9iaWxlLW1lbnUtdG9nZ2xlIHtcbiAgICBcdC8vYm90dG9tOiAxMHB4O1xuICAgIH1cbiAgICBkaXYuaGVyby1jb250ZW50LmNvbC1tZC0xMi51dy1jb250ZW50IHtcbiAgICBcdG1hcmdpbi10b3A6IDA7XG4gICAgfVxufVxuIiwiLy8gVVcgQnJlYWRjcnVtYnNcblxuLnV3LWJyZWFkY3J1bWJzIHtcblx0bWFyZ2luOiAtMTdweCAwIDAgLTMwcHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBhZGRpbmc6IDIwcHggMjBweCAwIDMwcHg7XG5cdHVsIHtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdG1hcmdpbjogMDtcblx0fVxuXHRsaSB7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0YSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHVybChhc3NldHMvc3ZnL3V3LXNwcml0ZS5zdmcpIG5vLXJlcGVhdCAtMjQ5cHggNXB4O1xuXHRcdFx0XHR0ZXh0LWluZGVudDogLTk5OTk5cHg7XG5cdFx0XHRcdHdpZHRoOiAzMHB4O1xuXHRcdFx0XHRwYWRkaW5nOiA1cHggMCA1cHggMDtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAyNXB4O1xuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0cmlnaHQ6IC0xOHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0dG9wOiAxN3B4O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmLmN1cnJlbnQge1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6IEBkYXJrZ29sZDtcdFx0XHRcdFx0XHRcbiAgICAgICAgICAgIH1cblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVx0XG5cdFx0fSBcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0aGVpZ2h0OiAyOXB4O1xuXHRcdFx0d2lkdGg6IDI1cHg7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdHRvcDogNHB4O1xuXHRcdFx0YmFja2dyb3VuZDogdXJsKCdhc3NldHMvaW1hZ2VzL2JyZWFkY3J1bWItZ3JhZGllbnQucG5nJykgcmlnaHQgdG9wIHJlcGVhdC15IHRyYW5zcGFyZW50O1xuXHRcdH1cblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHRcdFx0XG5cdFx0XHRoZWlnaHQ6IDEwcHg7XG5cdFx0XHR3aWR0aDogMTBweDtcblx0XHRcdHJpZ2h0OiA1cHg7XG5cdFx0XHR0b3A6IDdweDtcblx0XHRcdC5vcGFjaXR5KC44KTtcblx0XHRcdGJhY2tncm91bmQ6IHVybCgnYXNzZXRzL3N2Zy9jYXJldC5zdmcnKSBuby1yZXBlYXQ7XG5cdFx0XHQuYmFja2dyb3VuZC1zaXplKDdweCA1cHgpO1xuXHRcdFx0LnJvdGF0ZSgtOTBkZWcpO1xuXHRcdH1cblx0XHQmOmVtcHR5IHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHRcdGE6aG92ZXIge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdH1cblx0fVxuXHRhLCBzcGFuIHtcblx0XHRmb250LWZhbWlseTogQGZvbnQtZmFtaWx5LWhlYWRsaW5lO1xuXHRcdGNvbG9yOiAjNTM1MzUzO1xuXHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0Zm9udC1zaXplOiAxNXB4O1xuXHRcdHBhZGRpbmc6IDAgMjVweCAwIDA7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdC8vQ2FyZXRcblx0fVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNzY3cHgpIHtcblx0LnV3LWJyZWFkY3J1bWJzIHtcblx0XHRmbG9hdDogbm9uZTtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdG1hcmdpbjogMCAwIDAgLTVweDtcblx0XHRsaSB7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdGRpc3BsYXk6IGluaXRpYWw7XG5cdFx0XHRhLCBzcGFuIHtcblx0XHRcdFx0cGFkZGluZzogMCAyNXB4IDAgMDtcblx0XHRcdH1cblx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjUwcHggLTNweDtcblx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdHRvcDogOHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQgXG5cdFx0fVxuXHR9XG59XG4iLCIvLyBTZXRzIGJ1bGxldGVkIGl0ZW1zIHRvIGEgZGVmYXVsdCBwYWRkaW5nOlxuXG51bCB7XG5cdHBhZGRpbmctbGVmdDogMjVweDtcblx0Ly9saXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG59XG5kZCB7XG5cdG1hcmdpbi1ib3R0b206IDI0LjVweDtcbn1cblxuLy8gQmFzaWMgc3R5bGVzIFxuXG5ociB7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCAjRUJFQkVCO1xuXHRjbGVhcjogYm90aDtcbn1cblxuaWZyYW1lIHtcblx0bWFyZ2luOiA0MHB4IDAgMjBweDtcbn1cblxuXG4vLyBUaGlzIG92ZXJyaWRlcyB0aGUgbGluZS1oZWlnaHQgaXNzdWUgd2l0aCBib290cmFwXG5zbWFsbCxcbi5zbWFsbCB7XG5cdGZvbnQtc2l6ZTogMTVweDtcblx0bGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuXG4uaW50cm8ge1xuXHRmb250LWZhbWlseTogQGZvbnQtZmFtaWx5LWhlYWRsaW5lO1xuXHRmb250LXNpemU6IDIzcHg7XG5cdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdGxpbmUtaGVpZ2h0OiAxLjU7XG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi8vIE1ha2VzIGhlYXZ5XG4udXctYm9keS1jb3B5IC53ZWlnaHQtOTAwIHtcblx0Zm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuYS5tb3JlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuIC8vIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKC93cC1jb250ZW50L3RoZW1lcy91dy0yMDE0L2Fzc2V0cy9zdmcvdXctc3ByaXRlLnN2Zykgbm8tcmVwZWF0IC0yMDZweCAtNDkycHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IC0yNHB4O1xuICAgIGJvdHRvbTogMHB4O1xuICAgIHdpZHRoOiAxNHB4O1xuICAgIGhlaWdodDogMjFweDtcbiAgICAucm90YXRlKDkwZGVnKTtcbiAgfVxufVxuXG4ubm8tYmx1ZS1saW5rcyBhIHtcblx0Y29sb3I6IEBwdXJwbGU7XG59XG5cbi5uby1ibHVlLWxpbmtzIGEuYnRuLWJzIHtcblx0Y29sb3I6ICNGRkY7XG59XG4vLyBXcmFwcGVyXG5cbi51dy1ib2R5IHtcblx0cG9zaXRpb246cmVsYXRpdmU7XG5cdCYuY29udGFpbmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblx0XHQvL21hcmdpbi1ib3R0b206IDgwcHg7XG5cdH1cbn1cblxuYm9keS5mcm9udCAuZnJvbnQtYmFja2dyb3VuZCB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybChhc3NldHMvaW1hZ2VzL2Zyb250X3BhZ2VfYmcuZ2lmKTtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHQudXctYm9keSxcblx0LnJvdyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdH1cbn1cbi8vIEFjdHVhbCBjb250ZW50IGFyZWEgKGluY2x1ZGVzIHNpZGVhYmFyKVxuXG5cbi51dy1ib2R5IHtcblx0cGFkZGluZy10b3A6IDEwcHg7XG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHRoMSwgaDIge1xuXHRcdGNvbG9yOiBAcHVycGxlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cdGgyLCBoMywgaDQsIGg1IHtcblx0XHRmb250LXdlaWdodDogNzAwO1xuXHR9XG5cdGJsb2NrcXVvdGUge1xuXHRcdHAge1xuXHRcdFx0Zm9udC1mYW1pbHk6IEBmb250LWZhbWlseS1oZWFkbGluZTtcblx0XHRcdGZvbnQtc2l6ZTogMjFweDtcblx0XHR9XG5cdH1cblx0LnV3LXNpdGUtdGl0bGUge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IC0xNTBweDtcblx0XHRsZWZ0OiAxMXB4O1xuXHRcdGNvbG9yOiAjZmZmO1xuXHRcdGZvbnQtZmFtaWx5OiBAZm9udC1mYW1pbHktaGVhZGxpbmU7XG5cdFx0Zm9udC1zaXplOiA1MHB4O1xuXHRcdGxpbmUtaGVpZ2h0OiA1NXB4O1xuXHRcdGZvbnQtd2VpZ2h0OiA5MDA7XG5cdFx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdFx0c3BhbiB7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdH1cblx0fVxuXHRkaXYudXctc2l0ZS10aXRsZSB7XG5cdFx0bWFyZ2luLXRvcDogMjlweDtcblx0XHRtYXJnaW4tYm90dG9tOiAxNC41cHg7XG5cdH1cbiAgcC5kYXRlIHtcbiAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IC0xOXB4O1xuICAgIC8vICY6Zmlyc3Qtb2YtdHlwZXtcbiAgICAvLyAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIC8vIH1cbiAgfVxuICAuYXV0aG9yLWluZm8ge1xuICAgIG1hcmdpbjogLTQuNXB4IDAgMjBweCAwO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIH1cbiAgXG59XG5cbi8vIE5leHQgbGluayBpbiB0aGUgYmxvZ1xuXG5zcGFuLm5leHQtcGFnZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW4tdG9wOiA1MHB4O1xuXHRhIHtcblx0ICBwYWRkaW5nOiAxMHB4IDQwcHggMTBweCAxOXB4O1xuXHQgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdCAgYmFja2dyb3VuZC1jb2xvcjogQHVsdHJhbGlnaHRnb2xkO1xuXHQgIGZvbnQtZmFtaWx5OiBAZm9udC1mYW1pbHktaGVhZGxpbmU7XG5cdCAgZm9udC13ZWlnaHQ6IEBoZWFkaW5ncy1mb250LXdlaWdodDtcblx0ICBjb2xvcjogQGRhcmtncmF5O1xuXHQgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0ICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdCAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuXHQgIGJvcmRlci1ib3R0b206IG5vbmU7XG5cdCAgbWFyZ2luLWJvdHRvbTogMjVweDtcblx0ICBtYXJnaW4tcmlnaHQ6IDU1cHg7XG5cdCAgei1pbmRleDogMTtcblx0ICBsaW5lLWhlaWdodDogMjRweDtcblx0ICBmb250LXNpemU6IDE0cHg7XG5cdCAgZm9udC13ZWlnaHQ6IDcwMDtcblx0ICBib3JkZXItcmFkaXVzOjA7XG5cdCAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjA7XG5cdCAgLW1vei1ib3JkZXItcmFkaXVzOjA7XG5cdCAgJjphZnRlciB7XG5cdFx0YmFja2dyb3VuZDogdXJsKC93cC1jb250ZW50L3RoZW1lcy91dy0yMDE0L2Fzc2V0cy9zdmcvdXctc3ByaXRlLnN2Zykgbm8tcmVwZWF0IC0yMDZweCAtNDkycHg7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDE3cHg7XG5cdFx0dG9wOiAxMnB4O1xuXHRcdGJvdHRvbTogM3B4O1xuXHRcdHdpZHRoOiAxNHB4O1xuXHRcdGhlaWdodDogMjFweDtcblx0XHQucm90YXRlKDkwZGVnKTtcblx0ICB9XG5cdCAgJjpob3ZlciB7XG5cdCAgXHQgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEB1bHRyYWxpZ2h0Z29sZCwgNSUpO1xuXHQgIH1cblx0fVxufVxuXG5cbiAvLyAoZG9lc24ndCBpbmNsdWRlIHNpZGViYXIpXG5cbi51dy1ib2R5LWNvcHkge1xuXHRoMSBhLFxuXHRoMiBhLFxuXHRoMyBhLFxuXHRoNCBhLFxuXHRoNSBhIHtcblx0XHRib3JkZXItYm90dG9tOiBub25lO1xuXHRcdGNvbG9yOiBpbmhlcml0O1xuXHR9XG5cdGEge1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHQvLyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0QzRDNEMztcblxuXHR9XG59XG5cblxuLmluZm8tYm94IHtcblx0d2lkdGg6IDMxMHB4O1xuXHRmbG9hdDogbGVmdDtcblx0bWFyZ2luLXJpZ2h0OiA1MHB4O1xuXHRtYXJnaW4tYm90dG9tOiA1MHB4O1xuXHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRtYXJnaW4tbGVmdDogLTE1MHB4O1xuXHRwYWRkaW5nOiAzMHB4IDMwcHggMzBweDtcblx0LmJveC1zaGFkb3coMHB4IDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjIpKTtcblx0Ym9yZGVyLXRvcDogNnB4IHNvbGlkIEBsaWdodGdvbGQ7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0YmFja2dyb3VuZDogdXJsKCdhc3NldHMvaW1hZ2VzL3N0cmlwZXMtZGFyay10aWxlLnN2ZycpIHJlcGVhdC14IDAgLTg4cHggdHJhbnNwYXJlbnQ7XG5cdGltZyB7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogYXV0bztcblx0fVxuXHQmOmFmdGVyIHtcblx0XHR0b3A6IGF1dG87XG5cdFx0Ym90dG9tOiAtNDBweDtcblx0fVxuXHRwLCBsaSwgYSB7XG5cdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjY7XG5cdH1cblx0aDEsIGgyLCBoMywgaDQsIGg1IHtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHR9XG59XG4udXctYm9keS1jb3B5IHVsLmxpbmtzIHtcblx0b3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5saW5rcyB7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbi10b3A6IDIwcHg7XG5cdG92ZXJmbG93OiB2aXNpYmxlO1xuXHRhIHtcbi8vXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vXHRcdCY6YWZ0ZXIge1xuLy9cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoL3dwLWNvbnRlbnQvdGhlbWVzL3V3LTIwMTQvYXNzZXRzL3N2Zy91dy1zcHJpdGUuc3ZnKSBuby1yZXBlYXQgLTIwNnB4IC00OTJweDtcbi8vXHRcdFx0Y29udGVudDogXCJcIjtcbi8vXHRcdFx0b3BhY2l0eTogLjQ7XG4vL1x0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbi8vXHRcdFx0cmlnaHQ6IC0yM3B4O1xuLy9cdFx0XHRib3R0b206IDFweDtcbi8vXHRcdFx0d2lkdGg6IDE0cHg7XG4vL1x0XHRcdGhlaWdodDogMjFweDtcbi8vXHRcdFx0LnJvdGF0ZSg5MGRlZyk7XG4vL1x0XHR9XG5cdH1cblx0bGkge1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRtYXJnaW4tYm90dG9tOiA2cHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDZweDtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgI0VFRTtcblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHR9XG5cdH1cbn1cblxuaW1nLmF0dGFjaG1lbnQtcG9zdC10aHVtYm5haWwud3AtcG9zdC1pbWFnZSB7XG5cdGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogNXB4IDUwcHggMCAwO1xuICAgIGhlaWdodDogMTUwcHg7XG4gICAgd2lkdGg6IGF1dG87XG59XG5cbmltZy5pbWctZmxvYXQtbGVmdCB7XG5cdGZsb2F0OiBsZWZ0O1xuXHRtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cblxuaW1nLmltZy1mbG9hdC1yaWdodCB7XG5cdGZsb2F0OiByaWdodDtcblx0bWFyZ2luLWxlZnQ6IDIwcHg7XG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5kYXdnYnl0ZXMtdGh1bWJuYWlsLXRleHQtY29udGFpbmVyIHtcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0XG5cdGltZyB7XG5cdFx0d2lkdGg6IDg1cHg7XG5cdFx0aGVpZ2h0OiAxMjZweDtcblx0XHRtYXJnaW4tYm90dG9tOiAwcHg7XG5cdH1cblx0XG5cdGgzIHtcblx0XHRtYXJnaW4tdG9wOiAwcHg7XG5cdH1cblx0XG59XG5cblxuLyogU21hbGwgRGV2aWNlcywgVGFibGV0cyAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNzY3cHgpIHtcblx0LnV3LWJvZHkge1xuXHRcdHBhZGRpbmc6IDIwcHg7XG5cdFx0LnV3LXNpdGUtdGl0bGUge1xuXHRcdFx0Y29sb3I6IEBwdXJwbGU7XG5cdFx0XHRmb250LXNpemU6IDI1cHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMS4yO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDkwMDtcblx0XHRcdG1hcmdpbjogLTIwcHggLTIwcHggMjBweCAtMjBweDtcblx0XHRcdHBhZGRpbmc6IDE1cHggMTVweCAxNXB4IDIwcHg7XG5cdFx0XHRwb3NpdGlvbjogc3RhdGljO1xuXHRcdFx0Ym94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwwLDAsLjIpO1xuXHRcdH1cblx0XHRoMSB7XG5cdFx0XHRtYXJnaW46IDEwcHggODBweCAxMHB4IDA7XG5cdFx0XHRmb250LXNpemU6IDMzcHg7XG5cdFx0fVxuICAgICAgICBwLmRhdGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTE1cHg7XG4gICAgICAgIH1cblx0fVxuICAgIC5ob21lIHtcbiAgICAgICAgLnV3LWJvZHkge1xuICAgICAgICAgICAgLnV3LXNpdGUtdGl0bGV7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNjVweDtcbiAgICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cdFxuXHRcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogNzY4cHgpIHtcbiAgICAudXctYm9keSB7XG4gICAgICAgIC51dy1zaXRlLXRpdGxlIHtcbiAgICAgICAgICAgICYubG9uZy10aXRsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogM3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyAuaG9tZSAudXctc2lkZWJhci1tZW51IHtcbi8vIFx0ZGlzcGxheTogbm9uZTtcbi8vIH1cblxuLndpZGdldCB7XG5cdHBhZGRpbmc6IDEwcHggMCAwIDQwcHg7XG59XG5cblxuLy8gQmlnIFNjcmVlbnNcblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogMTYwMHB4KSB7XG5cdC5pbmZvLWJveCB7XG5cdFx0bWFyZ2luLWxlZnQ6IC01MHB4O1xuXHR9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDc2N3B4KSB7XG5cblx0LndpZGdldCB7XG5cdFx0cGFkZGluZzogMDtcblx0fVx0XG5cdC5pbmZvLWJveCB7XG5cdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cbiAgICAudXctYm9keS1jb3B5IHtcbiAgICAgICAgaDEsaDIsaDMsaDQge1xuICAgICAgICAgICAgY2xlYXI6IHJpZ2h0O1xuICAgICAgICB9XG4gICAgICAgID5kaXYucm93IHtcbiAgICAgICAgICAgIGNsZWFyOmJvdGg7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiBAc2NyZWVuLXhzKSB7XG5cdGJvZHkuZnJvbnQgLmZyb250LWJhY2tncm91bmQge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogNzY4cHgpIHtcblxuXHQudXctYm9keSB7XG5cdFx0LnV3LXNpdGUtdGl0bGUge1xuXHRcdFx0dGV4dC1zaGFkb3c6IDFweCAxcHggMnB4IHJnYmEoMCwwLDAsLjUpO1xuXHRcdH1cblx0fVxuXG5cdC8vIEZpeGVzIGZsb2F0ZWQgaW1hZ2VzIG5leHQgdG8gYSBidWxsZXRlZCBsaXN0LiBUaGUgYnVsbGV0cyB3ZXJlbid0IGluZGVudGluZyBwcm9wZXJseVxuXHQvLy51dy1ib2R5LWNvcHkge1xuXHQvL1x0dWwge1xuXHQvL1x0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHQvL1x0fVxuXHQvL31cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA3NjhweCkge1xuXHRkaXYuZnJvbnQtYmFja2dyb3VuZCB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHRvcDogQG1vYmlsZV9zbGlkZXNob3dfdGV4dF9ib3hfaGVpZ2h0O1xuXHR9XG59XG4iLCJib2R5LnNlYXJjaC1vcGVuICN1d3NlYXJjaGFyZWEge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBtYXRyaXgoMSwwLDAsMSwwLDApO1xuICAgICAgIC1tb3otdHJhbnNmb3JtOiBtYXRyaXgoMSwwLDAsMSwwLDApO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiBtYXRyaXgoMSwwLDAsMSwwLDApO1xuICAgICAgICAgLW8tdHJhbnNmb3JtOiBtYXRyaXgoMSwwLDAsMSwwLDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBtYXRyaXgoMSwwLDAsMSwwLDApO1xuXG4gICAgLnV3LXNlYXJjaC13cmFwcGVyXG4gICAge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbWF0cml4KDEsMCwwLDEsMCwwKTtcbiAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IG1hdHJpeCgxLDAsMCwxLDAsMCk7XG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBtYXRyaXgoMSwwLDAsMSwwLDApO1xuICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogbWF0cml4KDEsMCwwLDEsMCwwKTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG1hdHJpeCgxLDAsMCwxLDAsMCk7XG4gICAgfVxufVxuXG4jdXdzZWFyY2hhcmVhIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IG1hdHJpeCgxLDAsMCwxLDAsLTEwMCk7XG4gICAgIC1tb3otdHJhbnNmb3JtOiBtYXRyaXgoMSwwLDAsMSwwLC0xMDApO1xuICAgICAgLW1zLXRyYW5zZm9ybTogbWF0cml4KDEsMCwwLDEsMCwtMTAwKTtcbiAgICAgICAtby10cmFuc2Zvcm06IG1hdHJpeCgxLDAsMCwxLDAsLTEwMCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBtYXRyaXgoMSwwLDAsMSwwLC0xMDApO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG4gIC51dy1zZWFyY2gtd3JhcHBlciB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG1hdHJpeCgxLDAsMCwxLDAsLTIwKTtcbiAgICAgICAtbW96LXRyYW5zZm9ybTogbWF0cml4KDEsMCwwLDEsMCwtMjApO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiBtYXRyaXgoMSwwLDAsMSwwLC0yMCk7XG4gICAgICAgICAtby10cmFuc2Zvcm06IG1hdHJpeCgxLDAsMCwxLDAsLTIwKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbWF0cml4KDEsMCwwLDEsMCwtMjApO1xuICAgIC8vIHRyYW5zaXRpb246IHRvcCAycyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xuICAgIC8vIHRyYW5zaXRpb246IGFsbCAxcztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcbiAgfVxuICAudXctcmVzdWx0c1xuICB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgdG9wOjE2MnB4O1xuICB9XG59XG5cbi51dy1zZWFyY2gtYmFyLWNvbnRhaW5lclxue1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXG4gIC5yYWRpby5jaGVja2VkLFxuICAucmFkaW8uY2hlY2tlZCAuc2Vjb25kLWljb25cbiAge1xuICAgIGNvbG9yOiBAcHVycGxlO1xuICB9XG4gIC5yYWRpbyAuaWNvbnMge1xuICAgIGNvbG9yOiAjQzdDN0M3O1xuICB9XG5cbiAgLmNvbnRhaW5lci5uby1oZWlnaHQge1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDEwcHggMCAyMHB4O1xuICB9XG4gIC51dy1zZWFyY2gtd3JhcHBlclxuICB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgd2lkdGg6ODkwcHg7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxuXG4gIGZvcm1cbiAge1xuXG4gICAgZmxvYXQ6bGVmdDtcbiAgICB3aWR0aDpjYWxjKH5cIjEwMCUgLSAyNDBweFwiKTtcbiAgICBvdXRsaW5lOiAycHggc29saWQgI0FEQURBRDtcblxuICAgIGlucHV0XG4gICAge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDU0cHg7XG4gICAgICBwYWRkaW5nOiAxMHB4IDAgMTBweCAxNXB4O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IHVybChhc3NldHMvc3ZnL3NlYXJjaF9wdXJwbGUuc3ZnKSBuby1yZXBlYXQgY2VudGVyO1xuICAgIH1cblxuICAgIC5nc2MtY2xlYXItYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgZGl2LmxhYmVsc1xuICB7XG5cbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICBjb2xvcjogIzcwNzA3MDtcbiAgICAucmFkaW8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTVweDtcbiAgICAgIGZvbnQtZmFtaWx5OiBAZm9udC1mYW1pbHktaGVhZGxpbmU7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIGRpdiNzZWFyY2gtbGFiZWxzLmxhYmVscy5oaWRkZW4teHMuZm9jdXNlZCB7XG4gICAgem9vbTogMS4yO1xuICAgIG1hcmdpbi10b3A6IC0xNXB4O1xuICB9XG5cbiAgaW5wdXQuc2VhcmNoXG4gIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC1zaXplOiAwcHg7XG4gICAgZmxvYXQ6bGVmdDtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIGhlaWdodDogNTRweDtcbiAgICBvdXRsaW5lOiAycHggc29saWQgIzgwODA4MDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoYXNzZXRzL3N2Zy9zZWFyY2guc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlciBncmF5O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogMjJweDtcbiAgICAtbW96LWJhY2tncm91bmQtc2l6ZTogMjJweDtcbiAgICAtby1iYWNrZ3JvdW5kLXNpemU6IDIycHg7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyMnB4O1xuICAgIHBhZGRpbmc6IDBweCA2MHB4IDBweCAwcHg7XG4gIH1cblxuICBpbnB1dC5zZWFyY2g6Zm9jdXMge1xuICAgIHpvb206IDEuMjtcbiAgICBib3R0b206IDVweDtcbiAgfVxuXG4gIC51dy1yZXN1bHRzXG4gIHtcbiAgICB3aWR0aDogODkwcHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIC5yZXN1bHQge1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHdpZHRoOiA2OTBweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRTRFNEU0O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIC5pbmZvcm1hdGlvbiB7XG4gICAgICAgIG1hcmdpbjogLTEwcHggMCAyMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgIH1cbiAgICAgIC50aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0zcHg7XG4gICAgICB9XG4gICAgICAubWFpbCxcbiAgICAgIC5mYXgsXG4gICAgICAudGVsZXBob25lbnVtYmVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICBhOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogQHB1cnBsZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm1haWwge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2Fzc2V0cy9pbWFnZXMvc2VhcmNoLW1haWwucG5nJykgbm8tcmVwZWF0IDAgOHB4O1xuICAgICAgfVxuICAgICAgLmZheCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnYXNzZXRzL2ltYWdlcy9zZWFyY2gtZmF4LnBuZycpIG5vLXJlcGVhdCAwIDhweDtcbiAgICAgIH1cbiAgICAgIC50ZWxlcGhvbmVudW1iZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2Fzc2V0cy9pbWFnZXMvc2VhcmNoLXBob25lLnBuZycpIG5vLXJlcGVhdCAwIDZweDtcbiAgICAgIH1cbiAgICAgIC52Y2FyZCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnYXNzZXRzL2ltYWdlcy9zZWFyY2gtdmNhcmQucG5nJykgbm8tcmVwZWF0IDAgNnB4O1xuICAgICAgfVxuICAgICAgJi5vcGVuIHtcbiAgICAgICAgaDQge1xuICAgICAgICAgIGNvbG9yOiBAcHVycGxlO1xuICAgICAgICB9XG4gICAgICAgIGEuZGlyZWN0b3J5LW1vcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMTBweCAtMjNweDtcbiAgICAgICAgICAudHJhbnNpdGlvbihub25lKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkICB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGNvbG9yOiAjNzU3NTc1O1xuICAgICAgcGFkZGluZzogMTVweCAwIDE1cHggMTRweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgYS5kaXJlY3RvcnktbW9yZSB7XG4gICAgICB0ZXh0LWluZGVudDogLTk5OTk5cHg7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoYXNzZXRzL3N2Zy91dy1zcHJpdGUuc3ZnKSBuby1yZXBlYXQgLTI4M3B4IDFweDtcbiAgICAgIGhlaWdodDogMjVweDtcbiAgICAgIHJpZ2h0OiAyNXB4O1xuICAgICAgdG9wOiAxNHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgfVxuXG4gICAgLmluZm9ybWF0aW9uIHtcbiAgICAgIGZsb2F0OmxlZnQ7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgY29sb3I6ICM0RTRFNEU7XG4gICAgICBwIHtcbiAgICAgICAgY29sb3I6ICM0RTRFNEU7XG4gICAgICB9XG4gICAgICBzcGFuIHtcbiAgICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogIzRFNEU0RTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubW9yZS1yZXN1bHRzIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgcGFkZGluZzogMTBweCAwIDAgMTBweDtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIGNvbG9yOiAjNTI1MjUyO1xuICAgIH1cblxuICB9XG5cbn1cblxuYm9keSB7XG4gICAgI3V3LWNvbnRhaW5lciB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3M7XG4gICAgfVxuICAgICYuc2VhcmNoLW9wZW4ge1xuICAgICAgICAjdXctY29udGFpbmVyIHtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBtYXRyaXgoMSwwLDAsMSwwLDEyMCk7XG4gICAgICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogbWF0cml4KDEsMCwwLDEsMCwxMjApO1xuICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IG1hdHJpeCgxLDAsMCwxLDAsMTIwKTtcbiAgICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBtYXRyaXgoMSwwLDAsMSwwLDEyMCk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbWF0cml4KDEsMCwwLDEsMCwxMjApO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cblxudGFibGUuZ3NjLXNlYXJjaC1ib3gge1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG59XG5cbnRhYmxlLmdzYy1zZWFyY2gtYm94IHRib2R5IHtcbiAgYm9yZGVyOiAwcHg7XG59XG5cbnRkLmdzYy1jbGVhci1idXR0b24ge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAwcHg7XG59XG5cbnRkLmdzYy1pbnB1dCB7XG4gIHBhZGRpbmctcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xuICBcbiAgaW5wdXQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsIC8qIENocm9tZS9PcGVyYS9TYWZhcmkgKi9cbiAgICA6Oi1tb3otcGxhY2Vob2xkZXIsICAvKiBGaXJlZm94IDE5KyAqL1xuICAgIDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsICAvKiBJRSAxMCsgKi9cbiAgICA6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxufVxuXG5pbnB1dC5nc2MtaW5wdXQge1xuICBib3JkZXItY29sb3I6ICNBQUEgIWltcG9ydGFudDtcbn1cblxuaW5wdXQuZ3NjLXNlYXJjaC1idXR0b24ge1xuICAgIGJhY2tncm91bmQ6IHVybCgvaW1hZ2VzL3NlYXJjaC5zdmcpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDM0cHggIWltcG9ydGFudDtcbiAgICB3aWR0aDogMzRweCAhaW1wb3J0YW50O1xufVxuXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDc2OHB4KSBhbmQgKG1heC13aWR0aCA6IDk5MXB4KSB7XG5cbiAgICAjdXdzZWFyY2hhcmVhIHtcbiAgICAgICAgLmNlbnRlci1ibG9jayB7XG4gICAgICAgICAgICB3aWR0aDogNzUwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIE1vYmlsZVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNzY3cHgpIHtcblxuICAjdXdzZWFyY2hhcmVhIHtcbiAgICAudXctcmVzdWx0c3tcbiAgICAgICAgdG9wOiAxMjZweDtcbiAgICB9XG4gIH1cblxuICAudXctc2VhcmNoLWJhci1jb250YWluZXIge1xuICAgLy8gbWFyZ2luLXRvcDogLTE3NnB4O1xuICAgIHBhZGRpbmc6IDBweDtcbiAgICAuY29udGFpbmVyLm5vLWhlaWdodHtcbiAgICAgICAgcGFkZGluZzowcHggMTBweDtcbiAgICB9XG4gICAgLnV3LXNlYXJjaC13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIC5zZWFyY2gge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG4gICAgICBkaXYubGFiZWxzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICB9XG5cbiAgICB9XG4gICAgc2VsZWN0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwIDAgMTVweDtcbiAgICB9XG4gICAgZm9ybSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICBpbnB1dCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICB9XG4gICAgfVxuICAgIC51dy1yZXN1bHRzIHtcbiAgICAgIGg0IHtcbiAgICAgICAgcGFkZGluZzogMTVweCA2MHB4IDE1cHggMTRweDtcbiAgICAgIH1cbiAgICAgIC5yZXN1bHQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIGJvZHkuc2VhcmNoLW9wZW4ge1xuICAgICAgI3V3LWNvbnRhaW5lciB7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG1hdHJpeCgxLDAsMCwxLDAsMTM2KTtcbiAgICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogbWF0cml4KDEsMCwwLDEsMCwxMzYpO1xuICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBtYXRyaXgoMSwwLDAsMSwwLDEzNik7XG4gICAgICAgICAgICAgICAtby10cmFuc2Zvcm06IG1hdHJpeCgxLDAsMCwxLDAsMTM2KTtcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbWF0cml4KDEsMCwwLDEsMCwxMzYpO1xuICAgICAgfVxuICB9XG4gIFxuICAvLyBIaWRlIHRoZSBwZW9wbGUgY3VzdG9tIHNlYXJjaCBmb3IgdGFibGV0IGFuZCBzbWFsbGVyXG4gICNibG9jay1jdXN0b20tc2VhcmNoLWJsb2Nrcy0zIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIFxufVxuIiwidWwudXctc2lkZWJhci1tZW51LFxudWwudXctbW9iaWxlLW1lbnVcblxue1xuXHRtYXJnaW4tbGVmdDogMjBweDtcblx0cGFkZGluZzogMjBweDtcblx0bWFyZ2luLXRvcDogLTEyNHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO1xuXG5cdHVsLCBsaVxuXHR7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bGlzdC1zdHlsZTpub25lO1xuXHRcdHBhZGRpbmc6MDtcblx0XHRtYXJnaW46MDtcblx0XHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhdXRvO1xuXHR9XG5cblx0bGkucGFnZW5hdixcblx0PmRpdlxuXHR7XG5cdFx0XHRhLCBzcGFuXG5cdFx0XHR7XG5cdFx0XHRcdC8vIGZvbnQtZmFtaWx5OiBAZm9udC1mYW1pbHktaGVhZGxpbmU7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0ICAgIGZvbnQtc2l6ZTogMTZweDtcblx0XHRcdFx0cGFkZGluZzogMTBweCAxMHB4IDEwcHggMjBweDtcblxuXHRcdFx0XHQmLmhvbWVsaW5rXG5cdFx0XHRcdHtcblx0XHRcdFx0XHRkaXNwbGF5Om5vbmU7XG5cdFx0XHRcdFx0Y29sb3I6QHB1cnBsZTtcblx0XHRcdFx0XHRmb250LXNpemU6MjVweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHR1bFxuXHRcdFx0e1xuXG5cdFx0XHRcdGZvbnQtc2l6ZToyMHB4O1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMS4zO1xuICAgIFx0XHRcdGZvbnQtc2l6ZTogMTlweDtcblxuXHRcdFx0XHRsaS5jdXJyZW50X3BhZ2VfaXRlbSwgbGkuY3VycmVudF9wYWdlX3BhcmVudFxuXHRcdFx0XHR7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogQHB1cnBsZTtcblx0XHRcdFx0XHQmID4gYSxcblx0XHRcdFx0XHQmID4gc3BhbiB7XG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMTlweDtcblx0XHRcdFx0XHRcdHBhZGRpbmctdG9wOiAxNnB4O1xuXHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206IDE2cHg7XG5cdFx0XHRcdFx0fVxuICAgICAgICAgICAgICAgICAgICBhLFxuXHRcdFx0XHRcdHNwYW4ge1xuXHRcdFx0XHRcdFx0Y29sb3I6d2hpdGU7XG5cdFx0XHRcdFx0XHRib3JkZXItYm90dG9tOiBub25lO1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWxlZnQ6IDEwcHggc29saWQgI2I3YTU3YTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0Ji5jdXJyZW50X3BhZ2VfYW5jZXN0b3Ige1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdFx0JiA+IGEge1xuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1c3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IEBsaWdodGdvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXHRcdFx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHVybChhc3NldHMvc3ZnL3V3LXNwcml0ZS5zdmcpIG5vLXJlcGVhdCAtMTkxcHggLTQ3OHB4O1xuXHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdFx0XHRoZWlnaHQ6IDUycHg7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6IDQ0cHg7XG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDdweDtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAtMjZweDtcblx0XHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdFx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2I3YTU3YTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0YSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuXHRcdFx0XHRcdFx0XHRib3JkZXItbGVmdDogbm9uZTtcblx0XHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0bGkucGFnZV9pdGVtX2hhc19jaGlsZHJlbiB1bCB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5Om5vbmU7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0bGkucGFnZV9pdGVtX2hhc19jaGlsZHJlbi5jdXJyZW50X3BhZ2VfaXRlbSB1bCB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHR9XG5cblx0XHRcdFx0bGlcblx0XHRcdFx0e1xuXHRcdFx0XHRcdGFcdHtcblx0XHRcdFx0XHRcdGNvbG9yOiBAcHVycGxlO1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogdGhpbiBzb2xpZCAjZWVlO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQmLmN1cnJlbnRfcGFnZV9pdGVtIHVsLmNoaWxkcmVuLCAmLmN1cnJlbnRfcGFnZV9hbmNlc3RvciB1bC5jaGlsZHJlblxuXHRcdFx0XHRcdHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDE3cHg7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO1xuXG5cdFx0XHRcdFx0XHRsaVxuXHRcdFx0XHRcdFx0e1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiNlZWU7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuXHRcdFx0XHRcdFx0XHRhLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW5cblx0XHRcdFx0XHRcdFx0e1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOkBkYXJrZ3JheTtcblx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nOiAxMHB4IDMwcHggMTBweCAzMHB4O1xuXHRcdFx0XHRcdFx0XHRcdGJvcmRlci1sZWZ0OiBub25lO1xuXHRcdFx0XHRcdFx0XHRcdCY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuXHRcdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI0RERDtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRsaS5jdXJyZW50X3BhZ2VfaXRlbVxuXHRcdFx0XHRcdFx0e1xuXHRcdFx0XHRcdFx0XHQvLyBiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO1xuXHRcdFx0XHRcdFx0XHR1bC5jaGlsZHJlbiB7XG5cdFx0XHRcdFx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFMEUwRTA7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdGxpOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblx0XHRcdFx0XHRcdFx0XHRcdGNvbG9yOiBAZGFya2dyYXk7XG5cdFx0XHRcdFx0XHRcdFx0XHRib3JkZXItbGVmdDogbm9uZTtcblx0XHRcdFx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMjVweDtcblx0XHRcdFx0XHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Y29udGVudDogXCItIFwiO1xuXHRcdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRzcGFuXG5cdFx0XHRcdFx0XHRcdHtcblx0XHRcdFx0XHRcdFx0XHQvLyBiYWNrZ3JvdW5kLWNvbG9yOiM3NTc1NzU7XG5cdFx0XHRcdFx0XHRcdFx0Ym9yZGVyLWxlZnQ6IDEwcHggc29saWQgI2I3YTU3YTtcblx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2RkZDtcblx0XHRcdFx0XHRcdFx0XHRhXG5cdFx0XHRcdFx0XHRcdFx0e1xuXHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6d2hpdGU7XG5cdFx0XHRcdFx0XHRcdFx0XHRib3JkZXItYm90dG9tOiBub25lO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHQvLyBjb2xvcjp3aGl0ZTtcblx0XHRcdFx0XHRcdFx0XHRib3JkZXItYm90dG9tOiBub25lO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cblxuXHRcdFx0XHRcdH1cblxuXG5cdFx0XHRcdH1cblxuXHRcdFx0XHRsaTpsYXN0LWNoaWxkXG5cdFx0XHRcdHtcblx0XHRcdFx0XHRhXG5cdFx0XHRcdFx0e1xuXHRcdFx0XHRcdFx0Ly8gY29sb3I6QHB1cnBsZTtcblx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IG5vbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdH1cblxuXHRcdH1cblxuXHRcdHVsLmNoaWxkcmVuIHtcblx0XHRcdGRpc3BsYXk6bm9uZTtcblx0XHR9XG5cbn1cblxuLy8gU2lkZWJhciB3aWRnZXQgdGl0bGVzXG5cbi51dy1zaWRlYmFyIHtcblx0LndpZGdldHRpdGxlIHtcbiAgICAgICAgY2xlYXI6bGVmdDtcblx0XHRmb250LXdlaWdodDogOTAwO1xuXHRcdGZvbnQtc2l6ZTogMjJweDtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nLWJvdHRvbTogMjBweDtcblx0XHQmOmFmdGVyLFxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRib3R0b206IDVweDtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRoZWlnaHQ6IDRweDtcblx0XHR9XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0d2lkdGg6IDEwMHB4O1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogQGxpZ2h0Z29sZDtcdFx0XHRcdFx0XG5cdFx0fVxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0d2lkdGg6IDQwcHg7XG5cdFx0XHQuc2tldygtMjVkZWcsMCk7XG5cdFx0XHRsZWZ0OiA4MHB4O1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cdFx0XHRib3R0b206IDNweDtcblx0XHRcdGhlaWdodDogOHB4O1xuXHRcdH1cblx0fVxufVxuXG5cbmJvZHkuaG9tZSAudXctc2lkZWJhci1tZW51IHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLyogTWVkaXVtIERldmljZXMsIERlc2t0b3BzICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA5OTJweCkge1xuXHR1bC51dy1zaWRlYmFyLW1lbnUge1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0bWFyZ2luOiA1MHB4IDAgMCAwO1xuXHRcdGNsZWFyOiBib3RoO1xuXHR9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDc2OHB4KSB7XG5cdC51dy1zaWRlYmFyIHtcblx0XHRwYWRkaW5nLXRvcDogNDBweDtcblx0fVxufVxuIiwiI21vYmlsZS1yZWxhdGl2ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB1bC51dy1tb2JpbGUtbWVudSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICAgIHBhZGRpbmc6MDtcbiAgICAgIG1hcmdpbjowIDAgMjVweDtcbiAgICAgID4gdWxcbiAgICAgIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgICBtYXJnaW46MDtcbiAgICAgIH1cbiAgICAgIGxpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxufVxuXG5cbi8qPT09PT09PT09PSAgTW9iaWxlIEZpcnN0IE1ldGhvZCAgPT09PT09PT09PSovXG5cbi8qIEN1c3RvbSwgaVBob25lIFJldGluYSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNzY3cHgpIHtcblxuICAvL0hpZGVzIGRlc2t0b3AgdmVyc2lvblxuICAjZGVza3RvcC1yZWxhdGl2ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC51dy1tb2JpbGUtbWVudSBsaSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjtcbiAgfVxuICAjbW9iaWxlLXJlbGF0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgIFxuICAgIGJ1dHRvbi51dy1tb2JpbGUtbWVudS10b2dnbGVcbiAgICB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxvYXQ6cmlnaHQ7XG4gICAgICBmb250LXNpemU6IEBmb250LXNpemUtYmFzZSAvIDEuMjtcbiAgICAgIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZSAvIDEuMjtcbiAgICAgIGZvbnQtZmFtaWx5OiBAZm9udC1mYW1pbHktaGVhZGxpbmU7XG4gICAgICBmb250LXdlaWdodDogQGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgY29sb3I6QHB1cnBsZTtcbiAgICAgIGJhY2tncm91bmQ6IHVybChhc3NldHMvc3ZnL3V3LXNwcml0ZS5zdmcpIG5vLXJlcGVhdCAtNDc1cHggMjBweCB0cmFuc3BhcmVudDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTIwMHB4O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgcGFkZGluZzogMCAwIDIwcHggMDtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogNTVweDtcbiAgICAgICAgdG9wOiAtNHB4O1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoYXNzZXRzL3N2Zy91dy1zcHJpdGUuc3ZnKSBuby1yZXBlYXQgLTYwMHB4IDAgdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIHVsLnV3LW1vYmlsZS1tZW51IGxpLnBhZ2VuYXYgdWwgbGkuY3VycmVudF9wYWdlX3BhcmVudC5jdXJyZW50X3BhZ2VfYW5jZXN0b3IgPiBhOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgICYuZnJvbnRwYWdlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTE4cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYnV0dG9uLnV3LW1vYmlsZS1tZW51LXRvZ2dsZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogLTIwcHg7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHRvcDogLTUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgdWwudXctbW9iaWxlLW1lbnUge1xuICAgICAgICAgICAgLy9wb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAvL3JpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIC8vbWFyZ2luLXRvcDogNjJweDtcbiAgICAgICAgICAgIC8vd2lkdGg6IGNhbGMoflwiMTAwJSAtIDQwcHhcIik7XG4gICAgICAgICAgICAubWVudS1kcm9wZG93bnMtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5iaWdoZXJvIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgYnV0dG9uLnV3LW1vYmlsZS1tZW51LXRvZ2dsZSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDBweDtcbiAgICAgICAgICAgICAgICB0b3A6IDEycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB1bC51dy1tb2JpbGUtbWVudSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgI3NwYWNlciB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1OHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICY6YWZ0ZXIgeyAvL2NsZWFyZml4XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICB9XG4gIH1cblxuICAvLyBOZXh0IGZldyBsaW5lcyBmb3IgdGhlIGhvbWVwYWdlIG9ubHlcbiAuaG9tZVxuICAgI21vYmlsZS1yZWxhdGl2ZSB7XG4gICAgbGl7XG4gICAgICBhOmhvdmVyLFxuICAgICAgYTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlO1xuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYTpob3ZlcixcbiAgICAgICAgYTpmb2N1cyB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgXG4gIGJ1dHRvbiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICAmLnV3LXNlYXJjaCB7XG4gICAgICAgIHRleHQtaW5kZW50OiAtOTk5OTlweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNzhweDtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIC5ib3JkZXItcmFkaXVzKDEwMCUpO1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxMnB4O1xuICAgICAgICAgICAgbGVmdDogMTFweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgfVxuICBcblxuICAuc2VhcmNoLW9wZW4gYnV0dG9uLnV3LXNlYXJjaCB7XG4gICAgc3ZnIHtcbiAgICAgIHRvcDogLTIwcHg7XG4gICAgICBsZWZ0OiAxMHB4O1xuICAgIH1cbiAgfVxufVxuXG4iLCIgLy8gLmNoZWNrYm94LCAucmFkaW97XG4gLy8gICAgIGlucHV0IHtcbiAvLyAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuIC8vICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuIC8vICAgICAgICAgb3BhY2l0eTogMDtcbiAvLyAgICAgfVxuIC8vIH1cbmEuc2NyZWVuLXJlYWRlci1zaG9ydGN1dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNnB4O1xuICAgICAgICB0b3A6IC05OXB4O1xuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgdG9wOiA2cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDIzcHggMTRweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG4gICAgICAgICAgICBjb2xvcjogQHB1cnBsZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwwLDAsLjYpO1xuICAgICAgICB9XG59XG5sYWJlbC5zY3JlZW4tcmVhZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgb3BhY2l0eTogMDtcbiAgICAvL29wYWNpdHkgaGFjayBxdWVzdGlvbmFibGUgc3VwcG9ydCBpbiBJRThcbiAgICAvL2xlZnQ6IC05OTk5OXB4O1xufVxuLm9mZnNjcmVlbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGZvbnQtc2l6ZTogMXB4O1xuICAgIGxlZnQ6IC05OTk5cHg7XG59XG4jZGF3Z2Ryb3BzIHtcbiAgICBsaS5kYXdnZHJvcHMtaXRlbXtcbiAgICAgICAgYTpmb2N1c3tcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgICAgIHVsLmRhd2dkcm9wcy1tZW51IHtcbiAgICAgICAgICAgIGE6Zm9jdXMge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi51dy1ib2R5IHtcbiAgICBhOmZvY3VzLFxuICAgIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogQGRhcmtnb2xkO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0JEQkRCRDtcbiAgICAgICAgLy8gV2UgZG9uJ3Qgd2FudCBidXR0b25zIHVuZGVybGluZWQgb24gaG92ZXJcbiAgICAgICAgJi51dy1idG4ge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBhLnV3LWJ0bjpmb2N1cyB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgICAudXctYnJlYWRjcnVtYnMge1xuICAgICAgICBhOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAjbWFpbl9jb250ZW50OmZvY3VzIHtcbiAgICAgIG91dGxpbmU6bm9uZTtcbiAgICB9XG4gICAgLndpZGdldCB7XG4gICAgICAgIGEud2lkZ2V0LWxpbmt7XG4gICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBAZGFya2dvbGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAvLyBjYW4ndCBvdmVycmlkZSBhY2NvcmRpbmcgdG8gc3BlYy4gV2UnbGwgaGF2ZSB0byByZWRvIHRoZSBzdHJ1Y3R1cmUgdG8gZ2V0IHRoaXMgZG9uZVxuICAgICAgICAgICAgICAgIC8vcCB7XG4gICAgICAgICAgICAgICAgLy8gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIC8vfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8vIERhcmtlbiBmb3JtIGRlZmF1bHQgY29sb3JcbiAgICBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcntcbiAgICAgICAgIGNvbG9yOiAjN0I3QjdCO1xuICAgIH1cbiAgICBpbnB1dDotbW96LXBsYWNlaG9sZGVye1xuICAgICAgICAgY29sb3I6ICM3QjdCN0I7XG4gICAgfVxuICAgIGlucHV0OjotbW96LXBsYWNlaG9sZGVye1xuICAgICAgICAgY29sb3I6ICM3QjdCN0I7XG4gICAgfSAgICBcbiAgICBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgY29sb3I6ICM3QjdCN0I7XG4gICAgfVxuICAgIC8vIERhcmtlbnMgZm9ybSBjb2xvcnNcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgY29sb3I6ICMzMDMwMzA7XG4gICAgfVxufVxuXG5cblxuLy8gRm9yIHV3LmVkdS9hY2Nlc3NpYmlsaXR5IG9ubHlcblxuLnNpdGUtYWNjZXNzaWJpbGl0eSB7XG4gICAgLnV3LWJvZHktY29weSwgXG4gICAgLnV3LXNpZGViYXIge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjREZERkRGO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEBkYXJrZ29sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIEluc2VydCB5b3VyIHN0eWxpbmcgaGVyZS5cblxuLy8gU2VhcmNoIGZvcm0gaW4gcmVnaW9uIHNlYXJjaFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnV3LXNlYXJjaC1iYXItY29udGFpbmVyIHtcbiAgICBmb3JtIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gICAgLnV3LXNlYXJjaC13cmFwcGVyIHsgICAgICAgIFxuICAgICAgICAuYmxvY2stc2VhcmNoIHsgICAgICAgICAgICBcbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSAgICAgICAgXG4gICAgICAgIC5idG4uc2VhcmNoIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIH1cbiAgICB9ICBcbiAgICAvLyBjb3B5IG9mIGlucHV0LnNlYXJjaCBmcm9tIHV3LnNlYXJjaC5sZXNzLCBMbiAxMzJcbiAgICBidXR0b24uc2VhcmNoXG4gICAgICB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiAwcHg7XG4gICAgICAgIGZsb2F0OmxlZnQ7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIGhlaWdodDogNTRweDtcbiAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkICM4MDgwODA7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChhc3NldHMvc3ZnL3NlYXJjaC5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIGdyYXk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IDIycHg7XG4gICAgICAgIC1tb3otYmFja2dyb3VuZC1zaXplOiAyMnB4O1xuICAgICAgICAtby1iYWNrZ3JvdW5kLXNpemU6IDIycHg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjJweDtcbiAgICAgICAgcGFkZGluZzogMHB4IDYwcHggMHB4IDBweDtcbiAgICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC51dy1zZWFyY2gtYmFyLWNvbnRhaW5lciB7XG4gICAgICAgIC51dy1zZWFyY2gtd3JhcHBlciB7XG4gICAgICAgICAgICAuc2VhcmNoIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIG1haW4tbWVudSBpbiByZWdpb24gbmF2aWdhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8uZGF3Z2Ryb3BzLW1lbnUge1xuLy8gICAgbGVmdDogaW5oZXJpdDtcbi8vICAgIHRvcDogNzhweDtcbi8vfVxuLy8uYWRtaW4tbWVudSB7XG4vLyAgICAuZGF3Z2Ryb3BzLW1lbnUge1xuLy8gICAgICAgIHRvcDogNThweDtcbi8vICAgIH1cbi8vfVxuXG4vLyBmcm9udHBhZ2UgdXctaGVyby1pbWFnZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmZyb250IHtcbiAgICAudXctaGVyby1pbWFnZSB7XG4gICAgICAgIGhlaWdodDogNTk1cHg7XG4gICAgICAgIHBhZGRpbmc6IDYwcHggMCAwIDA7XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkVuY29kZSBTYW5zIENvbXByZXNzZWRcIixzYW5zLXNlcmlmO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgZm9udC1zaXplOiA5NXB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDJweCAycHggMnB4IHJnYmEoMCwwLDAsLjUpO1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41NTtcbiAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDFweCAxcHggNXB4IHJnYmEoMCwwLDAsLjgpO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8vIEluc2VydCB5b3VyIHN0eWxpbmcgaGVyZS5cbi8vIFNpdGUgdGl0bGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi51dy1ib2R5IHtcbiAgICAudXctc2l0ZS10aXRsZSB7XG4gICAgICAgICtwIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTYwcHg7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU1O1xuICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICB0ZXh0LXNoYWRvdzogMXB4IDFweCA1cHggcmdiYSgwLDAsMCwuOCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnV3LWJvZHkge1xuICAgICAgICAudXctc2l0ZS10aXRsZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3NXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIGRpdi5jb250YWluZXIudXctYm9keSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIH1cbn1cbi8vIHNvbWUgZXhjZXB0aW9ucyBmb3Igc2l0ZS10aXRsZSBhbmQgc2l0ZS1zbG9nYW4gXG4uZnJvbnQge1xuICAgIC51dy1ib2R5IHtcbiAgICAgICAgLnV3LXNpdGUtdGl0bGUge1xuICAgICAgICAgICAgK3Age1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KXtcbiAgICAudXctYm9keSB7XG4gICAgICAgIC51dy1zaXRlLXRpdGxlIHtcbiAgICAgICAgICAgICtwIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5mcm9udCB7XG4gICAgICAgIC51dy1ib2R5IHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMHB4O1xuICAgICAgICAgIFxuICAgICAgICAgICAgPi5yb3cge1xuICAgICAgICAgICAgICAgIC8vbWFyZ2luLXRvcDogLTMwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC51dy1zaXRlLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8vIFNpZGViYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi51dy1zaWRlYmFyIHtcbiAgICAucmVnaW9uOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgLnV3LXNpZGViYXIgeyBcbiAgICAgICAgLnJlZ2lvbiB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gTW9iaWxlIG1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbm5hdiNtb2JpbGUtcmVsYXRpdmUge1xuICAgIC8vIGhpZGUgdGhlIHN1Ym1lbnUgZHJvcGRvd25zIG9uIHRoZSByZW5kZXJpbmcgb2YgJHByaW1hcnlfbmF2IFxuICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgLmRhd2dkcm9wcy1tZW51IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjNWE1YTVhO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOjEwO1xuICAgICAgICAgICAgICAgIH0gIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5kYXdnZHJvcHMtaXRlbSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kYXdnZHJvcHMtaXRlbS1tZW51LWxpbmsge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkVuY29kZSBTYW5zIENvbXByZXNzZWRcIiwgc2Fucy1zZXJpZjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDYwJTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoYXNzZXRzL3N2Zy9jYXJldC5zdmcpIG5vLXJlcGVhdCAzM3B4IDM1cHg7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgIHJpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICAgICAgdG9wOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoYXNzZXRzL3N2Zy91dy1zcHJpdGUuc3ZnKSBuby1yZXBlYXQgLTYwMHB4IDAgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYS5kYXdnZHJvcHMtaXRlbS1tZW51LWxpbmsge1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi8vIGZyb250cGFnZSBtb2JpbGUtbWVudSBuYXYgY29udGFpbmVyXG4vLy5mcm9udCB7XG4vLyAgICBuYXYjbW9iaWxlLXJlbGF0aXZlIHtcbi8vICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuLy8gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbi8vICAgIH1cbi8vfVxuLy9cbi8vLm5vdC1mcm9udCB7XG4vLyAgICBuYXYjbW9iaWxlLXJlbGF0aXZlIHtcbi8vICAgICAgICAubmF2YmFyLW5hdiB7XG4vLyAgICAgICAgICAgIHdpZHRoOiBpbmhlcml0O1xuLy8gICAgICAgIH1cbi8vICAgIH1cbi8vfVxuLy9cbi8vQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuLy8gICAgbmF2I21vYmlsZS1yZWxhdGl2ZSB7XG4vLyAgICAgICAgYnV0dG9uLnV3LW1vYmlsZS1tZW51LXRvZ2dsZSB7XG4vLyAgICAgICAgICAgIG1hcmdpbi10b3A6IC01NXB4O1xuLy8gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4vLyAgICAgICAgfVxuLy8gICAgfVxuLy99XG5cbi8vIENvbnRlbnRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIHBhdGggZml4IGZyb20gdXcuYm9keS1jb250ZW50Lmxlc3NcbmEubW9yZSB7XG4gICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChhc3NldHMvc3ZnL3V3LXNwcml0ZS5zdmcpIG5vLXJlcGVhdCAtMjA2cHggLTQ5MnB4O1xuICAgIH1cbn1cbi8vIHBhdGggZml4IGZyb20gdXcuYm9keS1jb250ZW50Lmxlc3NcbnNwYW4ubmV4dC1wYWdlIHtcbiAgICBhIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoYXNzZXRzL3N2Zy91dy1zcHJpdGUuc3ZnKSBuby1yZXBlYXQgLTIwNnB4IC00OTJweDtcbiAgICAgIH1cbiAgICB9XG59XG4vLyBwYXRoIGZpeCBmcm9tIHV3LmJvZHktY29udGVudC5sZXNzXG4ubGlua3Mge1xuICAgIGEge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChhc3NldHMvc3ZnL3V3LXNwcml0ZS5zdmcpIG5vLXJlcGVhdCAtMjA2cHggLTQ5MnB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5pbWcucHVsbC1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OjIwcHg7XG4gIG1hcmdpbi1ib3R0b206MjBweDtcbn1cblxuaW1nLnB1bGwtbGVmdCB7XG4gIG1hcmdpbi1yaWdodDoyMHB4O1xuICBtYXJnaW4tYm90dG9tOjIwcHg7XG59XG5cbi8vIGZvcm0gZWxlbWVudHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5yYWRpbyBpbnB1dFt0eXBlPVwicmFkaW9cIl0sIFxuLnJhZGlvLWlubGluZSBpbnB1dFt0eXBlPVwicmFkaW9cIl0sIFxuLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSwgXG4uY2hlY2tib3gtaW5saW5lIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uY2hlY2tib3ggaW5wdXQsIFxuLnJhZGlvIGlucHV0IHtcbiAgICBvcGFjaXR5OiAxO1xufVxuLmZvcm0tdGV4dCxcbi5mb3JtLXRleHRhcmVhLFxuLmZvcm0tc2VsZWN0LFxuLmZvcm0tZmlsZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBjb2xvcjogIzU5NTk1OTtcbn1cbi5mb3JtLXN1Ym1pdCB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbn1cbiIsIi8vIEluc2VydCB5b3VyIHN0eWxpbmcgaGVyZS5cblxuLndlYmZvcm0tY29tcG9uZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuIiwiLy8gQ1NFIEJvdW5kbGVzcyBDdXN0b21pemF0aW9uc1xuXG5AZnJvbnRwYWdlX3NlY3Rpb25fc3BhY2luZzogNjBweDtcblxuI2Jsb2NrLWJsb2NrLTEzOSxcbiNibG9jay1ibG9jay0xNDIsXG4jYmxvY2stYmxvY2stMTQwIHtcbiAgbWFyZ2luLWJvdHRvbTogQGZyb250cGFnZV9zZWN0aW9uX3NwYWNpbmc7XG59XG5cbi8vXG4vLyBJY29uIG1lbnVzIGRpc3BsYXkgaW5saW5lXG4vL1xuLmljb24tbWVudSB7XG4gIGRpc3BsYXk6dGFibGU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgbWFyZ2luOiAwcHggOHB4IDBweCAwcHg7XG4gIG1hcmdpbi1sZWZ0OjBweDtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaWNvbi1tZW51IGxpIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uaWNvbi1tZW51IGEge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgXG59XG5cbi8vIEF1ZGllbmNlIG1lbnU6IGZyb250IHBhZ2Ugb25seVxuI2F1ZGllbmNlLW1lbnUge1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIGNvbG9yOiBAZGFya2dyYXk7XG4gIGJhY2tncm91bmQtY29sb3I6IEBncmF5O1xuICBtYXJnaW4tbGVmdDogMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgXG4gIGEge1xuICAgIGNvbG9yOiBAZ3JheTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgXG4gIGRpdi5hdWRpZW5jZS1tZW51LWljb24ge1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGFsbDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuM3M7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgIGhlaWdodDogOTBweDtcbiAgICBcbiAgICBpIHtcbiAgICAgIGNvbG9yOiBAZGFya2dyYXk7XG4gICAgICBmb250LXNpemU6IDIuNWVtO1xuICAgIH1cbiAgICAgXG4gICAgcCAge1xuICAgICAgZm9udC1mYW1pbHk6IEBmb250LWZhbWlseS1kYXdnZHJvcHM7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgY29sb3I6IEBkYXJrZ3JheTtcbiAgICB9XG4gICAgXG4gICAgOmhvdmVyIHtcbiAgICAgIGkge1xuICAgICAgICAgIGNvbG9yOiBAcHVycGxlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMi43ZW07XG4gICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYWxsO1xuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IC4zcztcbiAgICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgICAgY29sb3I6IEBwdXJwbGU7XG4gICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYWxsO1xuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IC4zcztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIGRpdi5pY29uLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgfVxufVxuXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDc2NXB4KSB7XG4gICNhdWRpZW5jZS1tZW51IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgfVxuICBcbiAgI2F1ZGllbmNlLW1lbnUgZGl2Lmljb24tY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgfVxuICBcbiAgZGl2LmF1ZGllbmNlLW1lbnUtaWNvbiB7XG4gICAgaGVpZ2h0OiA5MHB4O1xuICAgIFxuICAgIGkge1xuICAgICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICB9XG4gICAgXG4gICAgcCB7XG4gICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgIH1cbiAgICAgXG4gIH1cbn1cblxuI2Zyb250LXBhZ2Utd2VsY29tZS1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcHVycGxlO1xuICBjb2xvcjogI0ZGRjtcbiAgcGFkZGluZzogMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBcbiAgaDIge1xuICAgIGZvbnQtc2l6ZToyNHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBjb2xvcjogI0ZGRjtcbiAgfVxuICBcbiAgcCwgYSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIH1cbiAgXG4gIGEge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIFxufVxuXG5cblxuI25ld3MtZXZlbnRzIHtcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgcGFkZGluZzogMHB4O1xuICBcbiAgcC5ib3R0b20tbW9yZS1saW5rIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiA1cHg7XG4gIH1cbiAgXG59XG5cblxuLm5ld3MtaGVhZGxpbmUtcGhvdG8tYmxvY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZ3JheTtcbiAgY29sb3I6IEBwdXJwbGU7XG4gIG1hcmdpbjogMDtcbiAgaGVpZ2h0OiA0MDBweDtcbiAgXG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxNTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICBcbiAgZGl2LmltZy1jb250YWluZXIge1xuICAgIGhlaWdodDogMTUwcHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxuICBcbiAgaDMge1xuICAgIHBhZGRpbmc6IDVweCA1cHggNXB4IDE1cHg7XG4gICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLXRvcDogLTM4cHg7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgXG4gICAgYSB7XG4gICAgICBjb2xvcjogI0ZGRjtcbiAgICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gICAgXG4gICAgYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogI0ZGRjtcbiAgICB9XG4gIH1cbiAgXG4gIHAge1xuICAgIHBhZGRpbmc6IDVweCAxNXB4IDBweCAxNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG4gIFxuICBhIHtcbiAgICBjb2xvcjogQHB1cnBsZTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgfVxufVxuXG4jZnJvbnQtcGFnZS1uZXdzLWNvbnRlbnQge1xuICBoZWlnaHQ6IDIyMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgKyAuZmFkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogNDBweDtcbiAgICBib3R0b206IDQwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMTtcbiAgICBcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCBcbiAgICAgICAgcmdiYSgyMTcsIDIxNywgMjE3LCAwKSwgXG4gICAgICAgIHJnYmEoMjE3LCAyMTcsIDIxNywgMC45KVxuICAgIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KFxuICAgICAgICByZ2JhKDIxNywgMjE3LCAyMTcsIDApIDAlLFxuICAgICAgICByZ2JhKDIxNywgMjE3LCAyMTcsIDEpIDEwMCVcbiAgICApOyBcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChcbiAgICAgICAgcmdiYSgyMTcsIDIxNywgMjE3LCAwKSAwJSxcbiAgICAgICAgcmdiYSgyMTcsIDIxNywgMjE3LCAxKSAxMDAlXG4gICAgKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoXG4gICAgICAgIHJnYmEoMjE3LCAyMTcsIDIxNywgMCkgMCUsXG4gICAgICAgIHJnYmEoMjE3LCAyMTcsIDIxNywgMSkgMTAwJVxuICAgICk7XG4gIH1cbn1cblxuLmZyb250LXBhZ2UtZXZlbnRzLXJvdyB7XG4gIHBhZGRpbmctdG9wOiA1cHg7XG4gIGRpdiB7XG4gICAgcGFkZGluZzogMHB4IDE1cHggMHB4IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogOTkycHgpIHtcbiAgI25ld3MtZXZlbnRzIHtcbiAgICBkaXYuY29sLXNtLTYge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNzY4cHgpIHtcbiAgI25ld3MtZXZlbnRzIHtcbiAgICBkaXYuY29sLXNtLTYge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNDgwcHgpIHtcbiAgI25ld3MtZXZlbnRzIHtcbiAgICBkaXYuY29sLXhzLTEyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuICB9XG59XG5cbiNmYXN0LWZhY3RzLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBkYXJrZ3JheTtcbiAgcGFkZGluZzogMjBweCAwcHg7XG4gIG1hcmdpbi1ib3R0b206IC0yNXB4O1xuICBcbiAgI2Zhc3QtZmFjdHMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIH1cbiAgXG5cbiAgaDIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDBweCAwcHggNXB4IDBweDtcbiAgICBjb2xvcjogQHB1cnBsZTtcbiAgICBmb250LXNpemU6MjRweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIFxuICBkaXYuaWNvbi1jb250YWluZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIFxuICAgIGkge1xuICAgICAgZm9udC1zaXplOiA1ZW07XG4gICAgICBjb2xvcjogQHB1cnBsZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICB9XG4gIH1cbiAgXG4gIHAgIHtcbiAgICBmb250LWZhbWlseTogQGZvbnQtZmFtaWx5LWRhd2dkcm9wcztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGNvbG9yOiBAZGFya2dyYXk7XG4gIH1cbiAgXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDc2OHB4KSB7XG4gICNmYXN0LWZhY3RzIGRpdi5pY29uLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDE4cHg7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICB9XG59XG5cbi8qIFBlb3BsZSBMaXN0aW5ncyAqL1xuXG4vLyBBbHBoYWJldCBsaW5rcyBhdCB0b3Agb2YgbGlzdHNcbmRpdi5hbGlzdCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuZGl2LmFsaXN0IGEge1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6IEBwdXJwbGU7XG4gIG1hcmdpbjogMnB4O1xuICBwYWRkaW5nOiAzcHggNXB4IDNweCA1cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLypcbiAqIERpcmVjdG9yaWVzXG4gKi9cbmRpdi5kaXJlY3Rvcnktcm93IHtcbiAgbWFyZ2luLXRvcDogMTVweDtcbn1cblxuLy8gVGhlIHZpZXcgdGhhdCByZW5kZXJzIHRoZXNlIGhlYWRlcnMgaW5pc3RzIG9uIHdyYXBwaW5nIHRoZW0gaW4gYSA8cD48L3A+XG5oMi5kaXJlY3RvcnktcGVvcGxlLXR5cGUgcCB7XG4gIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1oMjtcbiAgZm9udC1mYW1pbHk6IEBoZWFkaW5ncy1mb250LWZhbWlseTtcblx0Y29sb3I6IEBwdXJwbGU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbmRpdi5kaXJlY3RvcnktcGhvdG8tY29udGFpbmVyIHtcbiAgbWluLXdpZHRoOiAxNTlweDtcbiAgXG4gIGltZyB7XG4gICAgd2lkdGg6IDE1OXB4O1xuICB9XG59XG5cbmRpdi5kaXJlY3RvcnktbmFtZSB7XG4gIGZvbnQtc2l6ZTogMS4zZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogQHB1cnBsZTtcbn1cblxuZGl2LmRpcmVjdG9yeS13b3JraW5nLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjFlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmRpdi5kaXJlY3Rvcnktb2ZmaWNlIHtcbiAgXG59XG5cbmRpdi5kaXJlY3RvcnktcGhvbmUge1xuICBcbn1cblxuZGl2LmRpcmVjdG9yeS1lbWFpbCB7XG4gIFxufVxuXG5kaXYuZGlyZWN0b3J5LWhvbWVwYWdlIHtcbiAgXG59XG5cbmRpdi5kaXJlY3RvcnktcmVzZWFyY2gtaW50ZXJlc3RzIHtcbiAgXG59XG5cbi5wZXJzb25hbC1zb2NpYWwtaWNvbiB7XG4gIGNvbG9yOiBAcHVycGxlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4udmlldy1kaXNwbGF5LWlkLXBhZ2VfMiBoMiBwIHtcbiAgZm9udC1zaXplOiAyOXB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogQHB1cnBsZTtcbn1cblxuI2Jsb2NrLXZpZXdzLXBlcnNvbi1jb250YWN0LWJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLyoqXG4gKiBSZXNlYXJjaCBQcm9qZWN0IExpc3RpbmdzXG4gKi9cbmRpdi52aWV3LXJlc2VhcmNoLXByb2plY3RzIGgyIHtcbiAgbWFyZ2luOiAwcHggMHB4IDEwcHggMHB4O1xufVxuXG5kaXYucmVzZWFyY2gtcHJvamVjdC10aHVtYm5haWwge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG59XG5kaXYucmVzZWFyY2gtcHJvamVjdC10aHVtYm5haWwgaW1nIHtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB3aWR0aDogMTAwcHg7XG4gIGhlaWdodDogYXV0bztcbn1cbmRpdi5yZXNlYXJjaC1wcm9qZWN0LWJsdXJiIHtcbiAgbWFyZ2luOiAwcHggMTBweCAyMHB4IDQwcHg7XG4gIGNsZWFyOiBib3R0b207XG59XG5cbmRpdi5ub2RlLXJlc2VhcmNoLXByb2plY3QgZGl2LmZpZWxkLW5hbWUtZmllbGQtcmVzZWFyY2gtcHJvamVjdC1pbWFnZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbmRpdi5ub2RlLXJlc2VhcmNoLXByb2plY3QgaW1nIHtcbiAgd2lkdGg6IDIwMHB4OyAgXG59XG5cbmRpdi5ub2RlLXJlc2VhcmNoLXByb2plY3QgZGl2LmFzc29jaWF0ZWQtY29udGVudCB7XG4gIGNsZWFyOiBib3RoOyAgXG59XG5cbmRpdi5ncm91cGVkLXByb2plY3QtY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwcHggMHB4IDIwcHggMjBweDtcbn1cblxuZGl2Lmdyb3VwZWQtcHJvamVjdC1jb250YWluZXIgaDIge1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbmRpdi5ncm91cGVkLXB1YmxpY2F0aW9uLWNvbnRhaW5lcixcbmRpdi5wdWItZ3JvdXAtaGVhZGVyIHtcbiAgbWFyZ2luOiAwcHggMHB4IDIwcHggMjBweDtcbn1cblxuZGl2LnB1YmxpY2F0aW9uLWdyb3VwIGgyIHtcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuXG4vKiogYm9keS5wYWdlLXJlc2VhcmNoLXJvYm90aWNzLXByb2plY3RzLWJ5LXRvcGljICovXG5kaXYucm9ib3RpY3MtZ3JvdXBlZC10aWxlLXZpZXcgZGl2Lmdyb3VwZWQtcHJvamVjdC1jb250YWluZXIgIHtcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbn1cblxuZGl2LnJvYm90aWNzLWdyb3VwZWQtdGlsZS12aWV3IGRpdi5yZXNlYXJjaC1wcm9qZWN0LXRodW1ibmFpbCB7XG4gIGZsb2F0OiBub25lO1xuICBjbGVhcjogYm90aDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDVweDtcbiAgd2lkdGg6IDE1OHB4O1xuICBtYXJnaW4tbGVmdDogMHB4O1xufVxuXG5kaXYucm9ib3RpY3MtZ3JvdXBlZC10aWxlLXZpZXcgZGl2LnJlc2VhcmNoLXByb2plY3QtdGh1bWJuYWlsIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDVweDtcbiAgbGVmdDogMzBweDtcbiAgY2xpcDpyZWN0KDBweCwxMDBweCwxMDBweCwwcHgpO1xufVxuXG5kaXYucm9ib3RpY3MtZ3JvdXBlZC10aWxlLXZpZXcgIGRpdi5ncm91cGVkLXByb2plY3QtY29udGFpbmVyIGgyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6MTA1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuXG5kaXYucm9ib3RpY3MtZ3JvdXBlZC10aWxlLXZpZXcgZGl2Lmdyb3VwZWQtcHJvamVjdC1jb250YWluZXIgZGl2LnZpZXdzLXJvdyB7XG4gIHdpZHRoOiAxNThweDtcbiAgaGVpZ2h0OiAxNjVweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGJvcmRlcjogdGhpbiBzb2xpZCAjQUFBO1xuICBwYWRkaW5nOiA1cHggNXB4IDVweCA1cHg7XG4gIGNsZWFyOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMHB4IDJweCAycHggMHB4O1xufVxuXG5kaXYucm9ib3RpY3MtZ3JvdXBlZC10aWxlLXZpZXcgZGl2LnJlc2VhcmNoLXByb2plY3QtYmx1cmIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5cbi8qKlxuICogQ291cnNlIGxpc3RpbmdzXG4gKi9cbi5jb3Vyc2UtbGlzdGluZy10aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmRpdi52aWV3LWNvdXJzZS1saXN0aW5nIGRpdi52aWV3cy1yb3cge1xuICBtYXJnaW46IDBweCAyMHB4IDEwcHggMjVweDtcbn1cblxuXG4vKlxuICogVGFiYmVkIG1lbnVzIGF0IHRoZSB0b3Agb2YgY29udGVudCByZWdpb25zXG4gKi9cbmRpdi5yZWdpb24tY29udGVudCB7XG4gIHNlY3Rpb24uYmxvY2stbWVudSB7XG4gICAgdWwubWVudSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEBncmF5O1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIFxuICAgICAgPiBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgICAgICBcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgXG4gICAgICAgIGEsIHNwYW4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgICBjb2xvcjogQHB1cnBsZTtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBAZ3JheTtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjRkZGO1xuICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDtcbiAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgICA+IGxpLmFjdGl2ZSB7XG4gICAgICAgIFxuICAgICAgICBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAcHVycGxlO1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZGF3Z2Ryb3BzLWl0ZW0uZGF3Z2Ryb3BzLWl0ZW0gYTpob3ZlciB7XG4gIGNvbG9yOiBAbGlnaHRnb2xkO1xufVxuXG4ubGFzdC1lZGl0ZWQge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4vKlxuICogRm9yIHRhYmxldCBhbmQgc21hbGxlciwgb2ZmZXIgaGFtYnVyZ2VyIG1lbnVzIHdpdGggZnVsbC13aWR0aFxuICogbWVudSBpdGVtcy5cbiAqXG4gKiBBZGFwdGVkIGZyb20gaHR0cHM6Ly9jb2RlcGVuLmlvL2Fub24vcGVuL3hMYUVnelxuICovXG4jbWVudS10b2dnbGUgaW5wdXQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA3NjhweCkgIHsgIFxuICAjbWVudS10b2dnbGUge1xuICAgIGhlaWdodDogNDBweDsgIFxuICB9XG5cbiAgLy8gTWVudSBub3JtYWxseSBjb2xsYXBzZWQoaGlkZGVuKSBhdCB0aGlzIHJlc29sdXRpb25cbiAgI21lbnUtdG9nZ2xlIHVsLm1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAuMTVzIGVhc2Utb3V0O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IC0zMHB4O1xuICAgIFxuICAgIHVsIGxpIHtcbiAgICAgIHBhZGRpbmc6ICA1cHggMjBweCA1cHggNXB4O1xuICAgIH1cbiAgICBcbiAgICBzcGFuLmNhcmV0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQHB1cnBsZTtcbiAgICAgIFxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gIH1cbiAgXG4gIC8vIExpbmVzIG9mIGhhbWJ1cmdlclxuICAjbWVudS10b2dnbGUgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDMzcHg7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0zMHB4O1xuICAgIGxlZnQ6IDVweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAcHVycGxlO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICB6LWluZGV4OiAxO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDRweCAwcHg7XG4gIH1cbiAgI21lbnUtdG9nZ2xlIHNwYW46Zmlyc3QtY2hpbGRcbntcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCUgMCU7XG59XG5cbiNtZW51LXRvZ2dsZSBzcGFuOm50aC1sYXN0LWNoaWxkKDIpXG57XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAlIDEwMCU7XG59XG4gIC8vIFRyYW5zcGFyZW50IGFuZCBvbiB0b3Agb2YgaGFtYnVyZ2VyXG4gICNtZW51LXRvZ2dsZSBpbnB1dCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDQycHg7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICAgIG9wYWNpdHk6IDA7IFxuICAgIHotaW5kZXg6IDI7IFxuICB9XG4gIFxuICAjbWVudS10b2dnbGUgaW5wdXQ6Y2hlY2tlZCB+IHVsLm1lbnUge1xuICAgIC8vZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LWhlaWdodDogMTAwMHB4O1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgLjI1cyBlYXNlLWluO1xuICB9XG4gIFxuICNtZW51LXRvZ2dsZSBpbnB1dDpjaGVja2VkIH4gc3BhblxuICB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSgtMnB4LCAtMXB4KTtcbiAgfVxuICBcbiAgI21lbnUtdG9nZ2xlIGlucHV0OmNoZWNrZWQgfiBzcGFuOm50aC1sYXN0LWNoaWxkKDMpICB7XG4gICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpIHNjYWxlKDAuMSwgMC4xKTtcbiAgfVxuICBcbiAgI21lbnUtdG9nZ2xlIGlucHV0OmNoZWNrZWQgfiBzcGFuOm50aC1sYXN0LWNoaWxkKDIpIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZSgwLCAtMXB4KTtcbiAgfVxufVxuXG4vKipcbiAqIFZpZXdzXG4gKi9cbmEuaW50ZXJuYWwtZWRpdC1saW5rIHtcbiAgY29sb3I6IHJlZCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IHNtYWxsZXI7XG59XG5cbi5jYWxsb3V0IHtcbiAgPiBoMiB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG4gIFxuICBtaW4taGVpZ2h0OiAyMHB4O1xuICBwYWRkaW5nOiAxOXB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2VsbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgQHdlbGwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAuYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDUpKTtcbiAgXG4gIGFzaWRlIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgXG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgIH1cbiAgfVxuICBcbiAgLm1vcmUtbGluayB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICB9XG4gIFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXItY29sb3I6ICNkZGQ7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLC4xNSk7XG4gIH1cbn1cblxuXG4vKiBNU0IgKi9cbmRpdi5tc2Ige1xuICBtYXJnaW46IDNweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAyNzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbiBcbmRpdi5tc2IgaW1nIHtcbiAgd2lkdGg6IDIwMHB4O1xuICBoZWlnaHQ6IDI1OXB4OyBcbn1cbiIsIi8vIFNsaWRlc2hvdyBkaXNwbGF5ZWQgb24gZnJvbnQgcGFnZVxuXG4jc2lkZXNob3cge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5ib2R5LmZyb250ICNzbGlkZXNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBAc2xpZGVzaG93X2hlaWdodDsgIFxufVxuXG4uc2xpZGVzaG93LXJvdyB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgXG4gIGhlaWdodDogQHNsaWRlc2hvd19oZWlnaHQ7XG4gIG1hcmdpbjogYXV0bztcbiAgY29sb3I6ICNGRkY7XG4gIFxuICBoMiB7XG4gICAgZm9udC1zaXplOiA0MnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMVxuICB9XG4gIFxuICBwIHtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuM1xuICB9XG4gIFxuICBhIHtcbiAgICBjb2xvcjogI0ZGRjtcbiAgfVxuICBcbiAgLm1vcmUge1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufVxuXG4udmlld3Mtc2xpZGVzaG93LWN5Y2xlLW1haW4tZnJhbWUtcm93LFxuLnZpZXdzLXNsaWRlc2hvdy1jeWNsZS1tYWluLWZyYW1lIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuI3ZzY2NfY29udHJvbHNfZnJvbnRfcGFnZV9zbGlkZXNob3ctYmxvY2tfMl8xIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA1MDA7XG4gIHRvcDogLTQwcHg7XG4gIHdpZHRoOiAxMDBweDtcbiAgbWFyZ2luOiBhdXRvXG59XG5cbiN2c2NjX2NvbnRyb2xzX2Zyb250X3BhZ2Vfc2xpZGVzaG93LWJsb2NrXzJfMSBpbWcge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogMTIwMHB4KSB7XG4gIC5zbGlkZXNob3ctcm93IHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodDtcbiAgfVxufVxuXG4vL0BtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDc2N3B4KSB7XG4vLyAgLnNsaWRlc2hvdy1yb3cge1xuLy8gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQ7IFxuLy8gIH1cbi8vICBcbi8vICBib2R5LmZyb250ICNzbGlkZXNob3cge1xuLy8gICAgaGVpZ2h0OiBAbW9iaWxlX3NsaWRlc2hvd19oZWlnaHQ7ICBcbi8vICB9XG4vL1xuLy99XG5cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNzY4cHgpIHtcblxuICBib2R5LmZyb250ICNzbGlkZXNob3cge1xuICAgIGhlaWdodDogQG1vYmlsZV9zbGlkZXNob3dfaGVpZ2h0OyAgXG4gIH1cblxuICAuc2xpZGVzaG93LXJvdyB7XG4gICAgaGVpZ2h0OiBAbW9iaWxlX3NsaWRlc2hvd19oZWlnaHQ7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgbWFyZ2luLWJvdHRvbTogQG1vYmlsZV9zbGlkZXNob3dfdGV4dF9ib3hfaGVpZ2h0O1xuICAgIFxuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICB9XG4gICAgXG4gICAgZGl2LnJvdyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IEBtb2JpbGVfc2xpZGVzaG93X2hlaWdodDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBkYXJrZ3JheTtcbiAgICAgIGhlaWdodDpAbW9iaWxlX3NsaWRlc2hvd190ZXh0X2JveF9oZWlnaHQ7XG4gICAgfVxuICAgIFxuICAgIHAge1xuICAgICAgY29sb3I6ICNGRkY7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS4zXG4gICAgfVxuICAgIFxuICB9XG4gIFxuICAjdnNjY19jb250cm9sc19mcm9udF9wYWdlX3NsaWRlc2hvdy1ibG9ja18yXzEge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxufSIsIi8vIEZvb3RlclxuXG5mb290ZXIuZm9vdGVyIHtcbiAgY29sb3I6ICNGRkY7XG4gIGJhY2tncm91bmQtY29sb3I6IEBwdXJwbGU7XG4gIHBhZGRpbmc6IDEwcHggMTBweCAzMHB4IDEwcHggIWltcG9ydGFudDtcbiAgbWFyZ2luLXRvcDogMjVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRTVFNUU1O1xuICBcbiAgaDIge1xuICAgIGZvbnQtc2l6ZToyNHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgXG4gIHAsIGEge1xuICAgY29sb3I6ICNGRkY7XG4gICBmb250LXNpemU6IDE0cHg7XG4gIH1cbiAgXG4gXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDc2OHB4KSB7XG4gIGJvZHkuZnJvbnQgZm9vdGVyLmZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogQG1vYmlsZV9zbGlkZXNob3dfdGV4dF9ib3hfaGVpZ2h0O1xuICB9XG59XG5cbmZvb3Rlci5mb290ZXIgICAud2hpdGUtZm9vdGVyLXcge1xuICAgIGhlaWdodDogNjBweDtcbiAgICBtYXJnaW46IC0xMHB4O1xufVxuXG5mb290ZXIuZm9vdGVyIGkge1xuICBjb2xvcjogI0ZGRjtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBmb250LXNpemU6IDRlbTtcbn1cblxuLmNvbm5lY3Qtd2l0aC11cyB7XG4gIGkge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuI2xlZ2FsZXNlIHtcbiAgbWFyZ2luLXRvcDogMTVweDtcbn1cblxuI2Jsb2NrLXNoaWItYXV0aC1sb2dpbi1ib3gge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG59IiwiLyogTWFrZSBib290c3RyYXBweSBidXR0b25zIG9uIHRoZSBsYWIgaG9tZSBwYWdlICovXG5cbi5idG4tYnM+OmZpcnN0LWNoaWxkIHtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICBsZWZ0OjA7dG9wOjA7Ym90dG9tOjA7XG4gICAgd2lkdGg6NDBweDtcbiAgICBsaW5lLWhlaWdodDo0MHB4O1xuICAgIGZvbnQtc2l6ZToxLjZlbTtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4yKVxufVxuXG4uYnRuLXR3aXR0ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiM1NWFjZWU7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4yKX1cbi5idG4tdHdpdHRlcjpob3Zlcntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzI3OTVlOTtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjIpfVxuXG4uYnRuLWdpdGxhYntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzRCNTE1RDtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjIpfVxuLmJ0bi1naXRsYWI6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMyNjMyMzg7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4yKX1cblxuLmJ0bi1teXBvcnRmb2xpb3tjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6I2FhNjZjYztib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjIpfVxuLmJ0bi1teXBvcnRmb2xpbzpob3Zlcntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6Izk5MzNjYztib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjIpfVxuXG4uYnRuLWxpbnV4LXZte2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMkJCQkFEO2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMil9XG4uYnRuLWxpbnV4LXZtOmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMDBlNjc2O2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMil9XG5cbi5idG4tdmRpe2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojNDI4NUY0O2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMil9XG4uYnRuLXZkaTpob3Zlcntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzMwNGZmZTtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjIpfVxuXG4uYnRuLWNoYW5nZS1wYXNzd29yZHtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6Izk2N0FEQztib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjIpfVxuLmJ0bi1jaGFuZ2UtcGFzc3dvcmQ6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiNBQzkyRUM7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4yKX1cblxuLmJ0bi13aWZpe2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojM0JBRkRBO2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMil9XG4uYnRuLXdpZmk6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiM0RkMxRTk7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4yKX1cblxuLmJ0bi1lbWFpbHtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzM3QkM5Qjtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjIpfVxuLmJ0bi1lbWFpbDpob3Zlcntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzQ4Q0ZBRDtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjIpfVxuXG4uYnRuLXByaW50e2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojRjZCQjQyO2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMil9XG4uYnRuLXByaW50OmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojRkZDRTU0O2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMil9XG5cbi5idG4tcmVxdWVzdC1hY2NvdW50e2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojQUFCMkJEO2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMil9XG4uYnRuLXJlcXVlc3QtYWNjb3VudDpob3Zlcntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6I0NDRDFEOTtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjIpfVxuXG4uYnRuLXN1cHBvcnQtcmVxdWVzdHtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzRENTA1Qjtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjIpfVxuLmJ0bi1zdXBwb3J0LXJlcXVlc3Q6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMzMDMwMkY7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4yKX1cblxuLmJ0bi1tYWNpbnRvc2h7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiNFQzNGOEM7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4yKX1cbi5idG4tbWFjaW50b3NoOmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojZjUwMDU3O2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMil9XG5cbi5idG4tbGludXh7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMxRkQyNkE7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4yKX1cbi5idG4tbGludXg6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMwMGM4NTM7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4yKX1cblxuLmJ0bi13aW5kb3dze2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMzlCMUM2O2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMil9XG4uYnRuLXdpbmRvd3M6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMyOTYyZmY7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4yKX1cblxuLmJ0bi1yZXBvcnQtZW1lcmdlbmN5IHtjb2xvcjojRkZGO2JhY2tncm91bmQtY29sb3I6I0YwMDtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjIpfTtcbi5idG4tcmVwb3J0LWVtZXJnZW5jeTpob3Zlcntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6I0MwMDtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjIpfVxuXG4uZmEtdHdpdHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5OVwiO1xufVxuXG4uZmEtZ2l0bGFiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjk2XCI7XG59XG4uZmEtbXlwb3J0Zm9saW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwN2NcIjtcbn1cbi5mYS12ZGk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxN2FcIjtcbn1cbi5mYS1jaGFuZ2UtcGFzc3dvcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODRcIjtcbn1cbi5mYS1wcmludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyZlwiO1xufVxuLmZhLXJlcXVlc3QtYWNjb3VudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwN1wiO1xufVxuXG4uZmEtbGludXgtdm06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjNcIjtcbn1cblxuLmZhLXN1cHBvcnQtcmVxdWVzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0NVwiO1xufVxuXG4uZmEtbWFjaW50b3NoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTc5XCI7XG59XG5cbi5mYS13aW5kb3dzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTdhXCI7XG59XG5cbi5mYS1saW51eDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3Y1wiO1xufVxuXG4uZmEtd2lmaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlYlwiO1xufVxuXG4uZmEtZW1haWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZTBcIjtcbn1cblxuLmJ0bi1icyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA3MCU7XG4gICAgcGFkZGluZzogNnB4IDEycHggNnB4IDQ0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3MTQzO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICAgIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICB3aGl0ZS1zcGFjZTpub3dyYXA7XG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6ZWxsaXBzaXNcbn1cblxuLy8gU2VhcmNoIGZvcm0gb24gbGFiIHBhZ2VzXG4jYmxvY2stY3VzdG9tLXNlYXJjaC1ibG9ja3MtNCB7XG4gIC5mb3JtLWl0ZW0tY3VzdG9tLXNlYXJjaC1ibG9ja3MtZm9ybS00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICB9XG5cbiAgZGl2LmZvcm0tYWN0aW9ucyB7XG4gICAgd2lkdGg6IDM1cHg7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC01MnB4O1xuICB9XG5cbiAgYnV0dG9uLmZvcm0tc3VibWl0IHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoL2ltYWdlcy9zZWFyY2hfaWNvbi5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgdG9wO1xuICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAzNHB4ICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDM0cHggIWltcG9ydGFudDtcbiAgfVxufSIsIi5jc2UtY2FsbG91dCB7XG4gIC53ZWxsKCk7XG4gIHdpZHRoOiAyNSU7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIFxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA0ODBweCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gIH1cbn1cblxuIiwiZGl2LnB1YmxpYy1kaXJlY3RvcnktaXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbmRpdi5wdWJsaWMtZGlyZWN0b3J5LW5hbWUsXG5kaXYucHVibGljLWRpcmVjdG9yeS1uYW1lIGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiBAcHVycGxlO1xuICBmb250LXNpemU6IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5kaXYucHVibGljLWRpcmVjdG9yeS1lbWFpbCB7XG4gIFxufVxuXG5kaXYucHVibGljLWRpcmVjdG9yeS13b3JraW5nLXRpdGxlIHtcbiAgXG59IiwiaDMuYmlibGlvLXRpdGxlIHtcbiBjb2xvcjogQGxpbmstY29sb3I7XG4gZm9udC1zaXplOiAxOHB4O1xuIG1hcmdpbi10b3A6IDIwcHg7XG4gbWFyZ2luLWJvdHRvbTogMnB4O1xufSIsIi5jc2UtYWxlcnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTk3MTg0O1xuICBcbiAgcCB7XG4gICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgfVxuICBcbiAgZGl2LmNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiA4MHB4O1xuICAgIHdpZHRoOiAxMDAwcHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHBhZGRpbmctbGVmdDogMTIwcHg7XG4gIH1cbiAgXG4gIGEge1xuICAgIGNvbG9yOiB5ZWxsb3c7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi5jc2UtYWxlcnQgXG5cbnAuc3lzdGVtLWFsZXJ0LXRpdGxlIHtcbiAgY29sb3I6IHllbGxvdztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMnB4O1xuICBmb250LXNpemU6IDEuNmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5hbGVydC1zdHlsZS04NzYgZGl2LmNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9zeXN0ZW0tYWxlcnQtcmVkLnBuZycpO1xufVxuXG4uYWxlcnQtc3R5bGUtODc4IGRpdi5jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvc3lzdGVtLWFsZXJ0LXllbGxvdy5wbmcnKTtcbn1cblxuLmFsZXJ0LXN0eWxlLTg3NyAgZGl2LmNvbnRhaW5lcntcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL3N5c3RlbS1hbGVydC1vcmFuZ2UucG5nJyk7XG59XG5cbi5hbGVydC1zdHlsZS04NzkgIGRpdi5jb250YWluZXJ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9zeXN0ZW0tYWxlcnQtZ3JlZW4ucG5nJyk7XG59XG5cbi8vIGdyZWVuXG4jZWRpdC1maWVsZC1zeXN0ZW0tYWxlcnQtc3R5bGUtdW5kLTg3OSBsYWJlbCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9zeXN0ZW0tYWxlcnQtZ3JlZW4ucG5nJyk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNGRkY7XG4gIGhlaWdodDogNTBweDtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG59XG5cbi8vIG9yYW5nZVxuI2VkaXQtZmllbGQtc3lzdGVtLWFsZXJ0LXN0eWxlLXVuZC04NzcgbGFiZWwge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvc3lzdGVtLWFsZXJ0LW9yYW5nZS5wbmcnKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI0ZGRjtcbiAgaGVpZ2h0OiA1MHB4O1xuICBwYWRkaW5nLXRvcDogMzBweDtcbn1cblxuLy8gcmVkXG4jZWRpdC1maWVsZC1zeXN0ZW0tYWxlcnQtc3R5bGUtdW5kLTg3NiBsYWJlbCxcbiNlZGl0LWZpZWxkLXN5c3RlbS1hbGVydC1zdHlsZS11bmQtODgwICsgbGFiZWwge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvc3lzdGVtLWFsZXJ0LXJlZC5wbmcnKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI0ZGRjtcbiAgaGVpZ2h0OiA1MHB4O1xuICBwYWRkaW5nLXRvcDogMzBweDtcbn1cblxuLy8geWVsbG93XG4jZWRpdC1maWVsZC1zeXN0ZW0tYWxlcnQtc3R5bGUtdW5kLTg3OCBsYWJlbCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9zeXN0ZW0tYWxlcnQteWVsbG93LnBuZycpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjRkZGO1xuICBoZWlnaHQ6IDUwcHg7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xufSJdfQ== */