@charset "UTF-8";
form .captcha {
  margin-bottom: 15px;
}

/*!
 *  Font Awesome 4.3.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url("../fonts/font-awesome//fontawesome-webfont.eot?v=4.4.0");
  src: url("../fonts/font-awesome//fontawesome-webfont.eot?#iefix&v=4.4.0") format("embedded-opentype"), url("../fonts/font-awesome//fontawesome-webfont.woff2?v=4.4.0") format("woff2"), url("../fonts/font-awesome//fontawesome-webfont.woff?v=4.4.0") format("woff"), url("../fonts/font-awesome//fontawesome-webfont.ttf?v=4.4.0") format("truetype"), url("../fonts/font-awesome//fontawesome-webfont.svg?v=4.4.0#fontawesomeregular") format("svg");
  font-weight: normal;
  font-style: normal;
}

.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333em;
  line-height: 0.75em;
  vertical-align: -15%;
}

.fa-2x {
  font-size: 2em;
}

.fa-3x {
  font-size: 3em;
}

.fa-4x {
  font-size: 4em;
}

.fa-5x {
  font-size: 5em;
}

.fa-fw {
  width: 1.28571em;
  text-align: center;
}

.fa-ul {
  padding-left: 0;
  margin-left: 2.14286em;
  list-style-type: none;
}

.fa-ul > li {
  position: relative;
}

.fa-li {
  position: absolute;
  left: -2.14286em;
  width: 2.14286em;
  top: 0.14286em;
  text-align: center;
}

.fa-li.fa-lg {
  left: -1.85714em;
}

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-angle-left:before {
  content: "";
}

.fa-angle-right:before {
  content: "";
}

.fa-angle-up:before {
  content: "";
}

.fa-angle-down:before {
  content: "";
}

.fa-bars:before {
  content: "";
}

.fa-caret-up:before {
  content: "";
}

.fa-caret-down:before {
  content: "";
}

.fa-caret-right:before {
  content: "";
}

.fa-plus:before {
  content: "";
}

.fa-minus:before {
  content: "";
}

.fa-chevron-right:before {
  content: "";
}

.fa-heart:before {
  content: "";
}

.fa-heart-o:before {
  content: "";
}

.fa-trash:before {
  content: "";
}

.fa-chevron-up:before {
  content: "";
}

.fa-chevron-down:before {
  content: "";
}

.fa-thumbs-up:before {
  content: "";
}

.fa-shield:before {
  content: "";
}

.fa-home:before {
  content: "";
}

.fa-twitter:before {
  content: "";
}

.fa-twitter-square:before {
  content: "";
}

.fa-facebook:before {
  content: "";
}

.fa-google-plus:before {
  content: "";
}

.fa-linkedin:before {
  content: "";
}

.fa-linkedin-square:before {
  content: "";
}

.fa-instagram:before {
  content: "";
}

.fa-pinterest:before {
  content: "";
}

.fa-youtube:before {
  content: "";
}

.fa-share-alt:before {
  content: "";
}

.fa-youtube-play:before {
  content: "";
}

.fa-group:before {
  content: "";
}

.fa-calendar:before {
  content: "";
}

.fa-map-marker:before {
  content: "";
}

.fa-phone:before {
  content: "";
}

.fa-mobile:before {
  content: "";
}

.fa-users:before {
  content: "";
}

.fa-clock-o:before {
  content: "";
}

.fa-info-circle:before {
  content: "";
}

.fa-quote-left:before {
  content: "";
}

.fa-quote-right:before {
  content: "";
}

.fa-ellipsis-h:before {
  content: "";
}

.fa-gear:before,
.fa-cog:before {
  content: "";
}

.fa-gears:before,
.fa-cogs:before {
  content: "";
}

.fa-columns:before {
  content: "";
}

.fa-file-text-o:before {
  content: "";
}

.fa-wrench:before {
  content: "";
}

.fa-pencil:before {
  content: "";
}

.fa-picture:before {
  content: "";
}

.fa-hourglass:before {
  content: "";
}

.fa-list:before {
  content: "";
}

.fa-map-o:before {
  content: "";
}

.fa-angle-up:before {
  content: "";
}

.fa-folder:before {
  content: "";
}

.fa-weixin:before {
  content: "";
}

.fa-pencil-square-o:before {
  content: "";
}

.fa-user:before {
  content: "";
}

.fa-bookmark:before {
  content: "";
}

.fa-star:before {
  content: "";
}

.fa-envelope:before {
  content: "";
}

.fa-rss:before {
  content: "";
}

.fa-floppy-o:before {
  content: "";
}

.fa-search:before {
  content: "";
}

.fa-question-circle:before {
  content: "";
}

.fa-upload:before {
  content: "";
}

.fa-check:before {
  content: "";
}

.fa-times:before {
  content: "";
}

.fa-external-link:before {
  content: "";
}

.fa-lg:before {
  margin-top: -10px;
}

body.toolbar, body.toolbar-drawer {
  padding-top: 0 !important;
}

body.toolbar #toolbar, body.toolbar-drawer #toolbar {
  top: auto;
  bottom: 0;
}

/*!
 * Bootstrap v3.3.6 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.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, #sliding-popup .popup-content #popup-buttons button > .caret,
  .dropup > .btn > .caret,
  #sliding-popup .popup-content #popup-buttons .dropup > button > .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("../fonts/bootstrap/glyphicons-halflings-regular.eot");
  src: url("../fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/bootstrap/glyphicons-halflings-regular.woff2") format("woff2"), url("../fonts/bootstrap/glyphicons-halflings-regular.woff") format("woff"), url("../fonts/bootstrap/glyphicons-halflings-regular.ttf") format("truetype"), url("../fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") 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";
}

.glyphicon-cd:before {
  content: "\e201";
}

.glyphicon-save-file:before {
  content: "\e202";
}

.glyphicon-open-file:before {
  content: "\e203";
}

.glyphicon-level-up:before {
  content: "\e204";
}

.glyphicon-copy:before {
  content: "\e205";
}

.glyphicon-paste:before {
  content: "\e206";
}

.glyphicon-alert:before {
  content: "\e209";
}

.glyphicon-equalizer:before {
  content: "\e210";
}

.glyphicon-king:before {
  content: "\e211";
}

.glyphicon-queen:before {
  content: "\e212";
}

.glyphicon-pawn:before {
  content: "\e213";
}

.glyphicon-bishop:before {
  content: "\e214";
}

.glyphicon-knight:before {
  content: "\e215";
}

.glyphicon-baby-formula:before {
  content: "\e216";
}

.glyphicon-tent:before {
  content: "\26fa";
}

.glyphicon-blackboard:before {
  content: "\e218";
}

.glyphicon-bed:before {
  content: "\e219";
}

.glyphicon-apple:before {
  content: "\f8ff";
}

.glyphicon-erase:before {
  content: "\e221";
}

.glyphicon-hourglass:before {
  content: "\231b";
}

.glyphicon-lamp:before {
  content: "\e223";
}

.glyphicon-duplicate:before {
  content: "\e224";
}

.glyphicon-piggy-bank:before {
  content: "\e225";
}

.glyphicon-scissors:before {
  content: "\e226";
}

.glyphicon-bitcoin:before {
  content: "\e227";
}

.glyphicon-btc:before {
  content: "\e227";
}

.glyphicon-xbt:before {
  content: "\e227";
}

.glyphicon-yen:before {
  content: "\00a5";
}

.glyphicon-jpy:before {
  content: "\00a5";
}

.glyphicon-ruble:before {
  content: "\20bd";
}

.glyphicon-rub:before {
  content: "\20bd";
}

.glyphicon-scale:before {
  content: "\e230";
}

.glyphicon-ice-lolly:before {
  content: "\e231";
}

.glyphicon-ice-lolly-tasted:before {
  content: "\e232";
}

.glyphicon-education:before {
  content: "\e233";
}

.glyphicon-option-horizontal:before {
  content: "\e234";
}

.glyphicon-option-vertical:before {
  content: "\e235";
}

.glyphicon-menu-hamburger:before {
  content: "\e236";
}

.glyphicon-modal-window:before {
  content: "\e237";
}

.glyphicon-oil:before {
  content: "\e238";
}

.glyphicon-grain:before {
  content: "\e239";
}

.glyphicon-sunglasses:before {
  content: "\e240";
}

.glyphicon-text-size:before {
  content: "\e241";
}

.glyphicon-text-color:before {
  content: "\e242";
}

.glyphicon-text-background:before {
  content: "\e243";
}

.glyphicon-object-align-top:before {
  content: "\e244";
}

.glyphicon-object-align-bottom:before {
  content: "\e245";
}

.glyphicon-object-align-horizontal:before {
  content: "\e246";
}

.glyphicon-object-align-left:before {
  content: "\e247";
}

.glyphicon-object-align-vertical:before {
  content: "\e248";
}

.glyphicon-object-align-right:before {
  content: "\e249";
}

.glyphicon-triangle-right:before {
  content: "\e250";
}

.glyphicon-triangle-left:before {
  content: "\e251";
}

.glyphicon-triangle-bottom:before {
  content: "\e252";
}

.glyphicon-triangle-top:before {
  content: "\e253";
}

.glyphicon-console:before {
  content: "\e254";
}

.glyphicon-superscript:before {
  content: "\e255";
}

.glyphicon-subscript:before {
  content: "\e256";
}

.glyphicon-menu-left:before {
  content: "\e257";
}

.glyphicon-menu-right:before {
  content: "\e258";
}

.glyphicon-menu-down:before {
  content: "\e259";
}

.glyphicon-menu-up:before {
  content: "\e260";
}

* {
  -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: "Montserrat", sans-serif;
  font-size: 14px;
  line-height: 1.4286;
  color: #777777;
  background-color: #fff;
}

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

a {
  color: #9a5fa3;
  text-decoration: none;
}

a:hover, a:focus {
  color: #7c4c83;
  text-decoration: underline;
}

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

figure {
  margin: 0;
}

img {
  vertical-align: middle;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

p {
  margin: 0 0 10px;
}

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

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

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

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

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

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

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

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

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

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

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

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

.text-muted {
  color: #777777;
}

.text-primary {
  color: #9a5fa3;
}

a.text-primary:hover {
  color: #7c4c83;
}

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

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

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

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

.text-warning {
  color: #cf8100;
}

a.text-warning:hover {
  color: #9c6100;
}

.text-danger {
  color: #a94442;
}

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

.bg-primary {
  color: #fff;
}

.bg-primary {
  background-color: #9a5fa3;
}

a.bg-primary:hover {
  background-color: #7c4c83;
}

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

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

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

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

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

a.bg-warning:hover {
  background-color: #ffda96;
}

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

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

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

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

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

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

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

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

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

dt,
dd {
  line-height: 1.4286;
}

dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

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

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

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

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

.initialism {
  font-size: 90%;
}

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

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.4286;
  color: #777777;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.container:after {
  clear: both;
}

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

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

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

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

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

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

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

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

.row:after {
  clear: both;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

table {
  background-color: transparent;
}

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

th {
  text-align: left;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

textarea.form-control {
  height: auto;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

.form-control-static.input-lg, .input-group-lg > .form-control-static.form-control,
.input-group-lg > .form-control-static.input-group-addon,
.input-group-lg > .input-group-btn > .form-control-static.btn, #sliding-popup .popup-content #popup-buttons .input-group-lg > .input-group-btn > button.form-control-static, .form-control-static.input-sm, .input-group-sm > .form-control-static.form-control,
.input-group-sm > .form-control-static.input-group-addon,
.input-group-sm > .input-group-btn > .form-control-static.btn, #sliding-popup .popup-content #popup-buttons .input-group-sm > .input-group-btn > button.form-control-static {
  padding-left: 0;
  padding-right: 0;
}

.input-sm, .input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn, #sliding-popup .popup-content #popup-buttons .input-group-sm > .input-group-btn > button {
  height: 32px;
  padding: 6px 12px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 0;
}

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

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

.form-group-sm .form-control {
  height: 32px;
  padding: 6px 12px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 0;
}

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

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

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

.input-lg, .input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn, #sliding-popup .popup-content #popup-buttons .input-group-lg > .input-group-btn > button {
  height: 46px;
  padding: 10px 12px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 0;
}

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

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

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

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

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

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

.has-feedback {
  position: relative;
}

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

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

.input-lg + .form-control-feedback, .input-group-lg > .form-control + .form-control-feedback, .input-group-lg > .input-group-addon + .form-control-feedback, .input-group-lg > .input-group-btn > .btn + .form-control-feedback, #sliding-popup .popup-content #popup-buttons .input-group-lg > .input-group-btn > button + .form-control-feedback {
  width: 46px;
  height: 46px;
  line-height: 46px;
}

.input-sm + .form-control-feedback, .input-group-sm > .form-control + .form-control-feedback, .input-group-sm > .input-group-addon + .form-control-feedback, .input-group-sm > .input-group-btn > .btn + .form-control-feedback, #sliding-popup .popup-content #popup-buttons .input-group-sm > .input-group-btn > button + .form-control-feedback {
  width: 32px;
  height: 32px;
  line-height: 32px;
}

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

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

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

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

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

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

.has-warning .form-control {
  border-color: #cf8100;
  -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: #9c6100;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ffb336;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ffb336;
}

.has-warning .input-group-addon {
  color: #cf8100;
  border-color: #cf8100;
  background-color: #ffecc9;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.btn, #sliding-popup .popup-content #popup-buttons button {
  display: inline-block;
  margin-bottom: 0;
  font-weight: 400;
  text-align: center;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 10px 12px;
  font-size: 14px;
  line-height: 1.4286;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.btn:focus, #sliding-popup .popup-content #popup-buttons button:focus, .btn.focus, #sliding-popup .popup-content #popup-buttons button.focus, .btn:active:focus, #sliding-popup .popup-content #popup-buttons button:active:focus, .btn:active.focus, #sliding-popup .popup-content #popup-buttons button:active.focus, .btn.active:focus, #sliding-popup .popup-content #popup-buttons button.active:focus, .btn.active.focus, #sliding-popup .popup-content #popup-buttons button.active.focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

.btn:hover, #sliding-popup .popup-content #popup-buttons button:hover, .btn:focus, #sliding-popup .popup-content #popup-buttons button:focus, .btn.focus, #sliding-popup .popup-content #popup-buttons button.focus {
  color: #333;
  text-decoration: none;
}

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

.btn.disabled, #sliding-popup .popup-content #popup-buttons button.disabled, .btn[disabled], #sliding-popup .popup-content #popup-buttons button[disabled],
fieldset[disabled] .btn,
fieldset[disabled] #sliding-popup .popup-content #popup-buttons button,
#sliding-popup .popup-content #popup-buttons fieldset[disabled] button {
  cursor: not-allowed;
  pointer-events: none;
  opacity: 0.65;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
  box-shadow: none;
}

.btn-default {
  color: #333;
  background-color: #eee;
  border-color: transparent;
}

.btn-default:hover, .btn-default:focus, .btn-default.focus, .btn-default:active, .btn-default.active,
.open > .btn-default.dropdown-toggle {
  color: #333;
  background-color: #d5d5d5;
  border-color: rgba(0, 0, 0, 0);
}

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

.btn-default.disabled, .btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled.focus, .btn-default.disabled:active, .btn-default.disabled.active, .btn-default[disabled], .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled].focus, .btn-default[disabled]:active, .btn-default[disabled].active,
fieldset[disabled] .btn-default,
fieldset[disabled] .btn-default:hover,
fieldset[disabled] .btn-default:focus,
fieldset[disabled] .btn-default.focus,
fieldset[disabled] .btn-default:active,
fieldset[disabled] .btn-default.active {
  background-color: #eee;
  border-color: transparent;
}

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

.btn-primary {
  color: #fff;
  background-color: #9a5fa3;
  border-color: transparent;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary.focus, .btn-primary:active, .btn-primary.active,
.open > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #7c4c83;
  border-color: rgba(0, 0, 0, 0);
}

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

.btn-primary.disabled, .btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary.disabled:active, .btn-primary.disabled.active, .btn-primary[disabled], .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus, .btn-primary[disabled]:active, .btn-primary[disabled].active,
fieldset[disabled] .btn-primary,
fieldset[disabled] .btn-primary:hover,
fieldset[disabled] .btn-primary:focus,
fieldset[disabled] .btn-primary.focus,
fieldset[disabled] .btn-primary:active,
fieldset[disabled] .btn-primary.active {
  background-color: #9a5fa3;
  border-color: transparent;
}

.btn-primary .badge {
  color: #9a5fa3;
  background-color: #fff;
}

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

.btn-success:hover, .btn-success:focus, .btn-success.focus, .btn-success:active, .btn-success.active,
.open > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #449d44;
  border-color: rgba(0, 0, 0, 0);
}

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

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

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

.btn-info {
  color: #9a5fa3;
  background-color: #c7d0e1;
  border-color: transparent;
}

.btn-info:hover, .btn-info:focus, .btn-info.focus, .btn-info:active, .btn-info.active,
.open > .btn-info.dropdown-toggle {
  color: #9a5fa3;
  background-color: #a6b4cf;
  border-color: rgba(0, 0, 0, 0);
}

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

.btn-info.disabled, .btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info.disabled:active, .btn-info.disabled.active, .btn-info[disabled], .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled].focus, .btn-info[disabled]:active, .btn-info[disabled].active,
fieldset[disabled] .btn-info,
fieldset[disabled] .btn-info:hover,
fieldset[disabled] .btn-info:focus,
fieldset[disabled] .btn-info.focus,
fieldset[disabled] .btn-info:active,
fieldset[disabled] .btn-info.active {
  background-color: #c7d0e1;
  border-color: transparent;
}

.btn-info .badge {
  color: #c7d0e1;
  background-color: #9a5fa3;
}

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

.btn-warning:hover, .btn-warning:focus, .btn-warning.focus, .btn-warning:active, .btn-warning.active,
.open > .btn-warning.dropdown-toggle {
  color: #fff;
  background-color: #ec971f;
  border-color: rgba(0, 0, 0, 0);
}

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

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

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

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

.btn-danger:hover, .btn-danger:focus, .btn-danger.focus, .btn-danger:active, .btn-danger.active,
.open > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #c9302c;
  border-color: rgba(0, 0, 0, 0);
}

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

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

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

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

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

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

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

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

.btn-lg, .btn-group-lg > .btn, #sliding-popup .popup-content #popup-buttons .btn-group-lg > button {
  padding: 10px 12px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px;
}

.btn-sm, .btn-group-sm > .btn, #sliding-popup .popup-content #popup-buttons button {
  padding: 6px 12px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

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

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

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

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

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

.fade.in {
  opacity: 1;
}

.collapse {
  display: none;
}

.collapse.in {
  display: block;
}

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

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

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

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

.dropup,
.dropdown {
  position: relative;
}

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

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

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

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

.dropdown-menu > li > a {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 1.4286;
  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: #9a5fa3;
  text-decoration: none;
  outline: 0;
  background-color: #e4e4e4;
}

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

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

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

.open > a {
  outline: 0;
}

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

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

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

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

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

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

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

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

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

.btn-group > .btn, #sliding-popup .popup-content #popup-buttons .btn-group > button,
.btn-group-vertical > .btn,
#sliding-popup .popup-content #popup-buttons .btn-group-vertical > button {
  position: relative;
  float: left;
}

.btn-group > .btn:hover, #sliding-popup .popup-content #popup-buttons .btn-group > button:hover, .btn-group > .btn:focus, #sliding-popup .popup-content #popup-buttons .btn-group > button:focus, .btn-group > .btn:active, #sliding-popup .popup-content #popup-buttons .btn-group > button:active, .btn-group > .btn.active, #sliding-popup .popup-content #popup-buttons .btn-group > button.active,
.btn-group-vertical > .btn:hover,
#sliding-popup .popup-content #popup-buttons .btn-group-vertical > button:hover,
.btn-group-vertical > .btn:focus,
#sliding-popup .popup-content #popup-buttons .btn-group-vertical > button:focus,
.btn-group-vertical > .btn:active,
#sliding-popup .popup-content #popup-buttons .btn-group-vertical > button:active,
.btn-group-vertical > .btn.active,
#sliding-popup .popup-content #popup-buttons .btn-group-vertical > button.active {
  z-index: 2;
}

.btn-group .btn + .btn, .btn-group #sliding-popup .popup-content #popup-buttons button + .btn, #sliding-popup .popup-content #popup-buttons .btn-group button + .btn, .btn-group #sliding-popup .popup-content #popup-buttons .btn + button, #sliding-popup .popup-content #popup-buttons .btn-group .btn + button, .btn-group #sliding-popup .popup-content #popup-buttons button + button, #sliding-popup .popup-content #popup-buttons .btn-group button + button,
.btn-group .btn + .btn-group,
.btn-group #sliding-popup .popup-content #popup-buttons button + .btn-group,
#sliding-popup .popup-content #popup-buttons .btn-group button + .btn-group,
.btn-group .btn-group + .btn,
.btn-group #sliding-popup .popup-content #popup-buttons .btn-group + button,
#sliding-popup .popup-content #popup-buttons .btn-group .btn-group + button,
.btn-group .btn-group + .btn-group {
  margin-left: -1px;
}

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

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

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

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

.btn-toolbar > .btn, #sliding-popup .popup-content #popup-buttons .btn-toolbar > button,
.btn-toolbar > .btn-group,
.btn-toolbar > .input-group {
  margin-left: 5px;
}

.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle), #sliding-popup .popup-content #popup-buttons .btn-group > button:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0;
}

.btn-group > .btn:first-child, #sliding-popup .popup-content #popup-buttons .btn-group > button:first-child {
  margin-left: 0;
}

.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle), #sliding-popup .popup-content #popup-buttons .btn-group > button: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), #sliding-popup .popup-content #popup-buttons .btn-group > button: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, #sliding-popup .popup-content #popup-buttons .btn-group > .btn-group:not(:first-child):not(:last-child) > button {
  border-radius: 0;
}

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

.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child, #sliding-popup .popup-content #popup-buttons .btn-group > .btn-group:last-child:not(:first-child) > button: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, #sliding-popup .popup-content #popup-buttons .btn-group > button + .dropdown-toggle {
  padding-left: 8px;
  padding-right: 8px;
}

.btn-group > .btn-lg + .dropdown-toggle, .btn-group-lg.btn-group > .btn + .dropdown-toggle, #sliding-popup .popup-content #popup-buttons .btn-group-lg.btn-group > button + .dropdown-toggle {
  padding-left: 12px;
  padding-right: 12px;
}

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

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

.btn .caret, #sliding-popup .popup-content #popup-buttons button .caret {
  margin-left: 0;
}

.btn-lg .caret, .btn-group-lg > .btn .caret, #sliding-popup .popup-content #popup-buttons .btn-group-lg > button .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0;
}

.dropup .btn-lg .caret, .dropup .btn-group-lg > .btn .caret, .dropup #sliding-popup .popup-content #popup-buttons .btn-group-lg > button .caret, #sliding-popup .popup-content #popup-buttons .dropup .btn-group-lg > button .caret {
  border-width: 0 5px 5px;
}


.btn-group-vertical > .btn,
#sliding-popup .popup-content #popup-buttons .btn-group-vertical > button,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn,
#sliding-popup .popup-content #popup-buttons .btn-group-vertical > .btn-group > button {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%;
}

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

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


.btn-group-vertical > .btn-group > .btn,
#sliding-popup .popup-content #popup-buttons .btn-group-vertical > .btn-group > button {
  float: none;
}

.btn-group-vertical > .btn + .btn, #sliding-popup .popup-content #popup-buttons .btn-group-vertical > button + .btn, #sliding-popup .popup-content #popup-buttons .btn-group-vertical > .btn + button, #sliding-popup .popup-content #popup-buttons .btn-group-vertical > button + button,
.btn-group-vertical > .btn + .btn-group,
#sliding-popup .popup-content #popup-buttons .btn-group-vertical > button + .btn-group,
.btn-group-vertical > .btn-group + .btn,
#sliding-popup .popup-content #popup-buttons .btn-group-vertical > .btn-group + button,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0;
}

.btn-group-vertical > .btn:not(:first-child):not(:last-child), #sliding-popup .popup-content #popup-buttons .btn-group-vertical > button:not(:first-child):not(:last-child) {
  border-radius: 0;
}

.btn-group-vertical > .btn:first-child:not(:last-child), #sliding-popup .popup-content #popup-buttons .btn-group-vertical > button: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), #sliding-popup .popup-content #popup-buttons .btn-group-vertical > button: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, #sliding-popup .popup-content #popup-buttons .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > button {
  border-radius: 0;
}

.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, #sliding-popup .popup-content #popup-buttons .btn-group-vertical > .btn-group:first-child:not(:last-child) > button: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, #sliding-popup .popup-content #popup-buttons .btn-group-vertical > .btn-group:last-child:not(:first-child) > button: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, #sliding-popup .popup-content #popup-buttons .btn-group-justified > button,
.btn-group-justified > .btn-group {
  float: none;
  display: table-cell;
  width: 1%;
}

.btn-group-justified > .btn-group .btn, .btn-group-justified > .btn-group #sliding-popup .popup-content #popup-buttons button, #sliding-popup .popup-content #popup-buttons .btn-group-justified > .btn-group button {
  width: 100%;
}

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

[data-toggle="buttons"] > .btn input[type="radio"], #sliding-popup .popup-content #popup-buttons [data-toggle="buttons"] > button input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
#sliding-popup .popup-content #popup-buttons [data-toggle="buttons"] > button input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
#sliding-popup .popup-content #popup-buttons [data-toggle="buttons"] > .btn-group > button input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"],
#sliding-popup .popup-content #popup-buttons [data-toggle="buttons"] > .btn-group > button 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-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: 10px 12px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  color: #555555;
  text-align: center;
  background-color: #e4e4e4;
  border: 1px solid #e4e4e4;
  border-radius: 4px;
}

.input-group-addon.input-sm,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .input-group-addon.btn, #sliding-popup .popup-content #popup-buttons .input-group-sm > .input-group-btn > button.input-group-addon {
  padding: 6px 12px;
  font-size: 12px;
  border-radius: 3px;
}

.input-group-addon.input-lg,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .input-group-addon.btn, #sliding-popup .popup-content #popup-buttons .input-group-lg > .input-group-btn > button.input-group-addon {
  padding: 10px 12px;
  font-size: 18px;
  border-radius: 6px;
}

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

.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
#sliding-popup .popup-content #popup-buttons .input-group-btn:first-child > button,
.input-group-btn:first-child > .btn-group > .btn,
#sliding-popup .popup-content #popup-buttons .input-group-btn:first-child > .btn-group > button,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
#sliding-popup .popup-content #popup-buttons .input-group-btn:last-child > button:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn,
#sliding-popup .popup-content #popup-buttons .input-group-btn:last-child > .btn-group:not(:last-child) > button {
  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,
#sliding-popup .popup-content #popup-buttons .input-group-btn:last-child > button,
.input-group-btn:last-child > .btn-group > .btn,
#sliding-popup .popup-content #popup-buttons .input-group-btn:last-child > .btn-group > button,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
#sliding-popup .popup-content #popup-buttons .input-group-btn:first-child > button:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn,
#sliding-popup .popup-content #popup-buttons .input-group-btn:first-child > .btn-group:not(:first-child) > button {
  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, #sliding-popup .popup-content #popup-buttons .input-group-btn > button {
  position: relative;
}

.input-group-btn > .btn + .btn, #sliding-popup .popup-content #popup-buttons .input-group-btn > button + .btn, #sliding-popup .popup-content #popup-buttons .input-group-btn > .btn + button, #sliding-popup .popup-content #popup-buttons .input-group-btn > button + button {
  margin-left: -1px;
}

.input-group-btn > .btn:hover, #sliding-popup .popup-content #popup-buttons .input-group-btn > button:hover, .input-group-btn > .btn:focus, #sliding-popup .popup-content #popup-buttons .input-group-btn > button:focus, .input-group-btn > .btn:active, #sliding-popup .popup-content #popup-buttons .input-group-btn > button:active {
  z-index: 2;
}


.input-group-btn:first-child > .btn,
#sliding-popup .popup-content #popup-buttons .input-group-btn:first-child > button,
.input-group-btn:first-child > .btn-group {
  margin-right: -1px;
}


.input-group-btn:last-child > .btn,
#sliding-popup .popup-content #popup-buttons .input-group-btn:last-child > button,
.input-group-btn:last-child > .btn-group {
  margin-left: -1px;
}

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

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

.nav:after {
  clear: both;
}

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

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

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

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

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

.nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
  background-color: #e4e4e4;
  border-color: #9a5fa3;
}

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

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

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

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

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

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

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

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

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

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

.nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
  color: #9a5fa3;
  background-color: #e4e4e4;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.navbar:after {
  clear: both;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.navbar-btn.btn-sm, .btn-group-sm > .navbar-btn.btn, #sliding-popup .popup-content #popup-buttons button.navbar-btn {
  margin-top: 9px;
  margin-bottom: 9px;
}

.navbar-btn.btn-xs, .btn-group-xs > .navbar-btn.btn, #sliding-popup .popup-content #popup-buttons .btn-group-xs > button.navbar-btn {
  margin-top: 14px;
  margin-bottom: 14px;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.breadcrumb {
  padding: 8px 15px;
  margin-bottom: 20px;
  list-style: none;
  background-color: white;
  border-radius: 4px;
}

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

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

.breadcrumb > .active {
  color: #9a5fa3;
}

.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 20px 0;
  border-radius: 4px;
}

.pagination > li {
  display: inline;
}

.pagination > li > a,
.pagination > li > span {
  position: relative;
  float: left;
  padding: 10px 12px;
  line-height: 1.4286;
  text-decoration: none;
  color: #9a5fa3;
  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 > a:focus,
.pagination > li > span:hover,
.pagination > li > span:focus {
  color: #7c4c83;
  background-color: #e4e4e4;
  border-color: #ddd;
}

.pagination > .active > a, .pagination > .active > a:hover, .pagination > .active > a:focus,
.pagination > .active > span,
.pagination > .active > span:hover,
.pagination > .active > span:focus {
  z-index: 2;
  color: #fff;
  background-color: #9a5fa3;
  border-color: #9a5fa3;
  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: #777777;
  background-color: #fff;
  border-color: #ddd;
  cursor: not-allowed;
}

.pagination-lg > li > a,
.pagination-lg > li > span {
  padding: 10px 12px;
  font-size: 18px;
}

.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: 6px 12px;
  font-size: 12px;
}

.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: 20px 0;
  list-style: none;
  text-align: center;
}

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

.pager:after {
  clear: both;
}

.pager li {
  display: inline;
}

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

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

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

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

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

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

.label:empty {
  display: none;
}

.btn .label, #sliding-popup .popup-content #popup-buttons button .label {
  position: relative;
  top: -1px;
}

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

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

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

.label-primary {
  background-color: #9a5fa3;
}

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

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

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

.label-info {
  background-color: #c7d0e1;
}

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

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

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

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

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

.badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  line-height: 1;
  vertical-align: baseline;
  white-space: nowrap;
  text-align: center;
  background-color: #777777;
  border-radius: 10px;
}

.badge:empty {
  display: none;
}

.btn .badge, #sliding-popup .popup-content #popup-buttons button .badge {
  position: relative;
  top: -1px;
}

.btn-xs .badge, .btn-group-xs > .btn .badge, #sliding-popup .popup-content #popup-buttons .btn-group-xs > button .badge,
.btn-group-xs > .btn .badge,
#sliding-popup .popup-content #popup-buttons .btn-group-xs > button .badge {
  top: 0;
  padding: 1px 5px;
}

.list-group-item.active > .badge,
.nav-pills > .active > a > .badge {
  color: #9a5fa3;
  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;
}

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

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

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

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

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

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

.thumbnail {
  display: block;
  padding: 4px;
  margin-bottom: 20px;
  line-height: 1.4286;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  -webkit-transition: border 0.2s ease-in-out;
  -o-transition: border 0.2s ease-in-out;
  transition: border 0.2s ease-in-out;
}

.thumbnail > img,
.thumbnail a > img {
  display: block;
  max-width: 100%;
  height: auto;
  margin-left: auto;
  margin-right: auto;
}

.thumbnail .caption {
  padding: 9px;
  color: #777777;
}

a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #9a5fa3;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

.alert-warning {
  background-color: #ffecc9;
  border-color: #cf8100;
  color: #cf8100;
}

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

.alert-warning .alert-link {
  color: #9c6100;
}

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

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

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

@-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: 20px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border-radius: 4px;
  -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: 12px;
  line-height: 20px;
  color: #fff;
  text-align: center;
  background-color: #9a5fa3;
  -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);
  -webkit-transition: width 0.6s ease;
  -o-transition: width 0.6s ease;
  transition: width 0.6s ease;
}

.progress-striped .progress-bar,
.progress-bar-striped {
  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: -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: 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 {
  -webkit-animation: progress-bar-stripes 2s linear infinite;
  -o-animation: progress-bar-stripes 2s linear infinite;
  animation: progress-bar-stripes 2s linear infinite;
}

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

.progress-striped .progress-bar-success {
  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: -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: 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: #c7d0e1;
}

.progress-striped .progress-bar-info {
  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: -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: 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: #f0ad4e;
}

.progress-striped .progress-bar-warning {
  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: -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: 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: #d9534f;
}

.progress-striped .progress-bar-danger {
  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: -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: 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,
.media-body {
  zoom: 1;
  overflow: hidden;
}

.media-body {
  width: 10000px;
}

.media-object {
  display: block;
}

.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: #e4e4e4;
  color: #777777;
  cursor: not-allowed;
}

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

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

.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus {
  z-index: 2;
  color: #9a5fa3;
  background-color: #e4e4e4;
  border-color: #e4e4e4;
}

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

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

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

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

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

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

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

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

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

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

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

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

.list-group-item-warning {
  color: #cf8100;
  background-color: #ffecc9;
}

a.list-group-item-warning {
  color: #cf8100;
}

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

a.list-group-item-warning:hover, a.list-group-item-warning:focus {
  color: #cf8100;
  background-color: #ffe3b0;
}

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

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

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

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

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

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

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

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

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

.panel-body {
  padding: 15px;
}

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

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

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

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

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

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

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

.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: -1;
  border-top-left-radius: -1;
}

.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: -1;
  border-bottom-left-radius: -1;
}

.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: -1;
  border-top-left-radius: -1;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.panel-primary > .panel-heading {
  color: #fff;
  background-color: #9a5fa3;
  border-color: #9a5fa3;
}

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

.panel-primary > .panel-heading .badge {
  color: #9a5fa3;
  background-color: #fff;
}

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

.panel-success {
  border-color: #3c763d;
}

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

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

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

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

.panel-info {
  border-color: #31708f;
}

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

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

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

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

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

.panel-warning > .panel-heading {
  color: #cf8100;
  background-color: #ffecc9;
  border-color: #cf8100;
}

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

.panel-warning > .panel-heading .badge {
  color: #ffecc9;
  background-color: #cf8100;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.modal-open {
  overflow: hidden;
}

.modal {
  display: none;
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  -webkit-overflow-scrolling: touch;
  outline: 0;
}

.modal.fade .modal-dialog {
  -webkit-transform: translate(0, -25%);
  -ms-transform: translate(0, -25%);
  -o-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 {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-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;
  -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: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  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.4286px;
}

.modal-header .close {
  margin-top: -2px;
}

.modal-title {
  margin: 0;
  line-height: 1.4286;
}

.modal-body {
  position: relative;
  padding: 15px;
}

.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5;
}

.modal-footer:before, .modal-footer:after {
  content: " ";
  display: table;
}

.modal-footer:after {
  clear: both;
}

.modal-footer .btn + .btn, .modal-footer #sliding-popup .popup-content #popup-buttons button + .btn, #sliding-popup .popup-content #popup-buttons .modal-footer button + .btn, .modal-footer #sliding-popup .popup-content #popup-buttons .btn + button, #sliding-popup .popup-content #popup-buttons .modal-footer .btn + button, .modal-footer #sliding-popup .popup-content #popup-buttons button + button, #sliding-popup .popup-content #popup-buttons .modal-footer button + button {
  margin-left: 5px;
  margin-bottom: 0;
}

.modal-footer .btn-group .btn + .btn, .modal-footer .btn-group #sliding-popup .popup-content #popup-buttons button + .btn, #sliding-popup .popup-content #popup-buttons .modal-footer .btn-group button + .btn, .modal-footer .btn-group #sliding-popup .popup-content #popup-buttons .btn + button, #sliding-popup .popup-content #popup-buttons .modal-footer .btn-group .btn + button, .modal-footer .btn-group #sliding-popup .popup-content #popup-buttons button + button, #sliding-popup .popup-content #popup-buttons .modal-footer .btn-group button + button {
  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 {
    -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;
  font-family: "Montserrat", sans-serif;
  font-size: 12px;
  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: "Montserrat", sans-serif;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.4286;
  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;
  -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: 14px;
  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;
  -webkit-transition: 0.6s ease-in-out left;
  -o-transition: 0.6s ease-in-out left;
  transition: 0.6s ease-in-out left;
}

.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  display: block;
  max-width: 100%;
  height: auto;
  line-height: 1;
}

@media all and (transform-3d), (-webkit-transform-3d) {
  .carousel-inner > .item {
    -webkit-transition: -webkit-transform 0.6s ease-in-out;
    -moz-transition: -moz-transform 0.6s ease-in-out;
    -o-transition: -o-transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-perspective: 1000;
    -moz-perspective: 1000;
    perspective: 1000;
  }
  .carousel-inner > .item.next, .carousel-inner > .item.active.right {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.prev, .carousel-inner > .item.active.left {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.next.left, .carousel-inner > .item.prev.right, .carousel-inner > .item.active {
    -webkit-transform: translate3d(0, 0, 0);
    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: 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: 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;
  line-height: 1;
  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, .carousel-caption #sliding-popup .popup-content #popup-buttons button, #sliding-popup .popup-content #popup-buttons .carousel-caption button {
  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 {
  content: " ";
  display: table;
}

.clearfix:after {
  clear: both;
}

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

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

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

.hide {
  display: none !important;
}

.show {
  display: block !important;
}

.invisible {
  visibility: hidden;
}

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

.hidden {
  display: none !important;
}

.affix {
  position: fixed;
}

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

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

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

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

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

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

@media (max-width: 767px) {
  .visible-xs {
    display: block !important;
  }
  table.visible-xs {
    display: table;
  }
  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;
  }
}

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

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

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

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

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

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

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

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

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

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

@media print {
  .visible-print {
    display: block !important;
  }
  table.visible-print {
    display: table;
  }
  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;
  }
}

@font-face {
  font-family: 'Geometria';
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/geometria/geometria-regular-webfont.eot);
  src: local("☺"), url(../fonts/geometria/geometria-regular-webfont.woff) format("woff"), url(../fonts/geometria/geometria-regular-webfont.woff2) format("woff2");
}

@font-face {
  font-family: 'Geometria';
  font-style: normal;
  font-weight: 500;
  src: url(../fonts/geometria/geometria-medium-webfont.eot);
  src: local("☺"), url(../fonts/geometria/geometria-medium-webfont.woff) format("woff"), url(../fonts/geometria/geometria-medium-webfont.woff2) format("woff2"), url(../fonts/geometria/geometria-medium-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 600;
  src: url(../fonts/lato/lato-black-webfont.eot);
  src: local("☺"), url(../fonts/lato/lato-black-webfont.woff) format("woff"), url(../fonts/lato/lato-black-webfont.woff2) format("woff2"), url(../fonts/lato/lato-black-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 600;
  src: url(../fonts/lato/lato-blackitalic-webfont.eot);
  src: local("☺"), url(../fonts/lato/lato-blackitalic-webfont.woff) format("woff"), url(../fonts/lato/lato-blackitalic-webfont.woff2) format("woff2"), url(../fonts/lato/lato-blackitalic-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/lato/lato-bold-webfont.eot);
  src: local("☺"), url(../fonts/lato/lato-bold-webfont.woff) format("woff"), url(../fonts/lato/lato-bold-webfont.woff2) format("woff2"), url(../fonts/lato/lato-bold-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 400;
  src: url(../fonts/lato/lato-bolditalic-webfont.eot);
  src: local("☺"), url(../fonts/lato/lato-bolditalic-webfont.woff) format("woff"), url(../fonts/lato/lato-bolditalic-webfont.woff2) format("woff2"), url(../fonts/lato/lato-bolditalic-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 100;
  src: url(../fonts/lato/lato-hairline-webfont.eot);
  src: local("☺"), url(../fonts/lato/lato-hairline-webfont.woff) format("woff"), url(../fonts/lato/lato-hairline-webfont.woff2) format("woff2"), url(../fonts/lato/lato-hairline-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 100;
  src: url(../fonts/lato/lato-hairlineitalic-webfont.eot);
  src: local("☺"), url(../fonts/lato/lato-hairlineitalic-webfont.woff) format("woff"), url(../fonts/lato/lato-hairlineitalic-webfont.woff2) format("woff2"), url(../fonts/lato/lato-hairlineitalic-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 300;
  src: url(../fonts/lato/lato-italic-webfont.eot);
  src: local("☺"), url(../fonts/lato/lato-italic-webfont.woff) format("woff"), url(../fonts/lato/lato-italic-webfont.woff2) format("woff2"), url(../fonts/lato/lato-italic-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 300;
  src: url(../fonts/lato/lato-italic-webfont.eot);
  src: local("☺"), url(../fonts/lato/lato-italic-webfont.woff) format("woff"), url(../fonts/lato/lato-italic-webfont.woff2) format("woff2"), url(../fonts/lato/lato-italic-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 200;
  src: url(../fonts/lato/lato-light-webfont.eot);
  src: local("☺"), url(../fonts/lato/lato-light-webfont.woff) format("woff"), url(../fonts/lato/lato-light-webfont.woff2) format("woff2"), url(../fonts/lato/lato-light-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 200;
  src: url(../fonts/lato/lato-lightitalic-webfont.eot);
  src: local("☺"), url(../fonts/lato/lato-lightitalic-webfont.woff) format("woff"), url(../fonts/lato/lato-lightitalic-webfont.woff2) format("woff2"), url(../fonts/lato/lato-lightitalic-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  src: url(../fonts/lato/lato-regular-webfont.eot);
  src: local("☺"), url(../fonts/lato/lato-regular-webfont.woff) format("woff"), url(../fonts/lato/lato-regular-webfont.woff2) format("woff2"), url(../fonts/lato/lato-regular-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  src: url(../fonts/montserrat/montserrat-light-webfont.eot);
  src: local("☺"), url(../fonts/montserrat/montserrat-light-webfont.woff) format("woff"), url(../fonts/montserrat/montserrat-light-webfont.woff2) format("woff2"), url(../fonts/montserrat/montserrat-light-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/montserrat/montserrat-regular-webfont.eot);
  src: local("☺"), url(../fonts/montserrat/montserrat-regular-webfont.woff) format("woff"), url(../fonts/montserrat/montserrat-regular-webfont.woff2) format("woff2"), url(../fonts/montserrat/montserrat-regular-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100;
  src: url(../fonts/roboto/roboto-thin-webfont.eot);
  src: local("☺"), url(../fonts/roboto/roboto-thin-webfont.woff) format("woff"), url(../fonts/roboto/roboto-thin-webfont.woff2) format("woff2"), url(../fonts/roboto/roboto-thin-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: url(../fonts/roboto/roboto-light-webfont.eot);
  src: local("☺"), url(../fonts/roboto/roboto-light-webfont.woff) format("woff"), url(../fonts/roboto/roboto-light-webfont.woff2) format("woff2"), url(../fonts/roboto/roboto-light-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/roboto/roboto-regular-webfont.eot);
  src: local("☺"), url(../fonts/roboto/roboto-regular-webfont.woff) format("woff"), url(../fonts/roboto/roboto-regular-webfont.woff2) format("woff2"), url(../fonts/roboto/roboto-regular-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: url(../fonts/roboto/roboto-medium-webfont.eot);
  src: local("☺"), url(../fonts/roboto/roboto-medium-webfont.woff) format("woff"), url(../fonts/roboto/roboto-medium-webfont.woff2) format("woff2"), url(../fonts/roboto/roboto-medium-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url(../fonts/roboto/roboto-bold-webfont.eot);
  src: local("☺"), url(../fonts/roboto/roboto-bold-webfont.woff) format("woff"), url(../fonts/roboto/roboto-bold-webfont.woff2) format("woff2"), url(../fonts/roboto/roboto-bold-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 900;
  src: url(../fonts/roboto/roboto-black-webfont.eot);
  src: local("☺"), url(../fonts/roboto/roboto-black-webfont.woff) format("woff"), url(../fonts/roboto/roboto-black-webfont.woff2) format("woff2"), url(../fonts/roboto/roboto-black-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100;
  src: url(../fonts/roboto/roboto-thinitalic-webfont.eot);
  src: local("☺"), url(../fonts/roboto/roboto-thinitalic-webfont.woff) format("woff"), url(../fonts/roboto/roboto-thinitalic-webfont.woff2) format("woff2"), url(../fonts/roboto/roboto-thinitalic-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 300;
  src: url(../fonts/roboto/roboto-lightitalic-webfont.eot);
  src: local("☺"), url(../fonts/roboto/roboto-lightitalic-webfont.woff) format("woff"), url(../fonts/roboto/roboto-lightitalic-webfont.woff2) format("woff2"), url(../fonts/roboto/roboto-lightitalic-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 400;
  src: url(../fonts/roboto/roboto-italic-webfont.eot);
  src: local("☺"), url(../fonts/roboto/roboto-italic-webfont.woff) format("woff"), url(../fonts/roboto/roboto-italic-webfont.woff2) format("woff2"), url(../fonts/roboto/roboto-italic-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 500;
  src: url(../fonts/roboto/roboto-mediumitalic-webfont.eot);
  src: local("☺"), url(../fonts/roboto/roboto-mediumitalic-webfont.woff) format("woff"), url(../fonts/roboto/roboto-mediumitalic-webfont.woff2) format("woff2"), url(../fonts/roboto/roboto-mediumitalic-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 700;
  src: url(../fonts/roboto/roboto-bolditalic-webfont.eot);
  src: local("☺"), url(../fonts/roboto/roboto-bolditalic-webfont.woff) format("woff"), url(../fonts/roboto/roboto-bolditalic-webfont.woff2) format("woff2"), url(../fonts/roboto/roboto-bolditalic-webfont.svg) format("svg");
}

@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 900;
  src: url(../fonts/roboto/roboto-blackitalic-webfont.eot);
  src: local("☺"), url(../fonts/roboto/roboto-blackitalic-webfont.woff) format("woff"), url(../fonts/roboto/roboto-blackitalic-webfont.woff2) format("woff2"), url(../fonts/roboto/roboto-blackitalic-webfont.svg) format("svg");
}

body {
  font-weight: 300;
}

#nav-primary .logo,
.nav-primary .logo {
  width: 120px;
  margin: 12px 10px 0 10px;
}

.panel-about h1, .panel-job-manager .panel-body h1, .panel-listing .panel-heading h1, .panel .panel-head h1, .panel-about .h1, .panel-job-manager .panel-body .h1, .panel-listing .panel-heading .h1, .panel .panel-head .h1,
.panel-about h2,
.panel-job-manager .panel-body h2,
.panel-listing .panel-heading h2,
.panel .panel-head h2, .panel-about .h2, .panel-job-manager .panel-body .h2, .panel-listing .panel-heading .h2, .panel .panel-head .h2,
.panel-about h3,
.panel-job-manager .panel-body h3,
.panel-listing .panel-heading h3,
.panel .panel-head h3, .panel-about .h3, .panel-job-manager .panel-body .h3, .panel-listing .panel-heading .h3, .panel .panel-head .h3,
.panel-about h4,
.panel-job-manager .panel-body h4,
.panel-listing .panel-heading h4,
.panel .panel-head h4, .panel-about .h4, .panel-job-manager .panel-body .h4, .panel-listing .panel-heading .h4, .panel .panel-head .h4 {
  margin: 0;
}

.block-grid:after, .row:after, .main section:after {
  content: "";
  display: table;
  clear: both;
}

img {
  vertical-align: middle;
}

.img-bordered {
  border: 1px solid #e4e4e4;
}

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

.media-right,
.media > .pull-right {
  float: none !important;
  padding: 0;
}

@media only screen and (min-width: 480px) {
  .media-right,
  .media > .pull-right {
    float: right !important;
    padding-left: 20px;
    padding-bottom: 20px;
  }
}

.media-left,
.media > .pull-left {
  float: none !important;
  padding: 0;
}

@media only screen and (min-width: 480px) {
  .media-left,
  .media > .pull-left {
    float: left !important;
    padding-right: 20px;
    padding-bottom: 20px;
  }
}

.media h1,
.media h2,
.media h3,
.media h4,
.media h5 {
  margin-top: 20px;
}

.table-primary {
  font-size: 16px;
  margin-bottom: 20px;
}

.table-primary th {
  background-color: #c7d0e1;
  color: #9a5fa3;
  font-weight: normal;
}

.table-primary > thead > tr > th,
.table-primary > tbody > tr > th,
.table-primary > tfoot > tr > th {
  border-bottom-color: white;
}

.table-primary > thead > tr:last-child > th,
.table-primary > tbody > tr:last-child > th,
.table-primary > tfoot > tr:last-child > th {
  border-bottom-color: #c7d0e1;
}

.fixed-width-30 th {
  width: 30%;
}

.fixed-width-50 th {
  width: 50%;
}

/* Typography styling */
html {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

/* Default header styles */
h1, h2, h3, h4, h5, h6 {
  color: #4a4a49;
  font-weight: 500;
}

h1, .h1,
h2, .h2,
h3, .h3 {
  margin-top: 0;
  margin-bottom: 21;
}

body {
  font-size: 16.8px;
}

@media only screen and (min-width: 992px) {
  body {
    font-size: 14.98px;
  }
}

/* Typography resets */
/* Default Link Styles */
a {
  /* Disabled state sets text to gray and nukes hover/tab effects */
}

a[disabled] {
  color: #777777;
  text-decoration: none;
  opacity: 0.7;
}

a[disabled]:hover, a[disabled]:focus {
  color: #777777;
  text-decoration: none;
  background-color: transparent;
  cursor: not-allowed;
}

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

.has-error.select-style, .has-error.form-control {
  border-color: #a94442;
}

.has-error.select-style:focus, .has-error.form-control:focus {
  border-color: #a94442;
}

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

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

.error-message {
  font-size: 12px;
  font-size: 0.85714rem;
  color: #a94442;
  display: block;
}

.form-control {
  border-radius: 0;
}

.select-style select {
  box-shadow: none;
  background: white;
  background-image: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  appearance: none;
  border-width: 1px;
  border-style: solid;
}

.select-style select::-ms-expand {
  display: none;
}

.select-style select:focus {
  outline: none;
}

.select-style.form-select-max, .select-style .form-select {
  width: 100%;
}

.select-style select[disabled],
.select-style select[disabled] ~ span {
  color: #696969;
}

.input-icon {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 42px;
  height: 42px;
  line-height: 42px;
  text-align: center;
  pointer-events: none;
}

.input-icon.input-icon-sm {
  width: 32px;
  height: 32px;
  line-height: 32px;
}

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

.has-icon {
  display: block;
  position: relative;
  width: auto;
  vertical-align: middle;
}

.has-icon .form-control {
  padding-right: 42px;
}

.has-icon.select-style .form-control, .has-icon .form-select .form-control {
  padding-right: 0;
}

.has-icon.select-style select, .has-icon .form-select select {
  width: 100%;
}

.input-group-lg .input-group-btn .btn, .input-group-lg .input-group-btn #sliding-popup .popup-content #popup-buttons button, #sliding-popup .popup-content #popup-buttons .input-group-lg .input-group-btn button {
  padding-top: 0;
  padding-bottom: 0;
}

.lt-ie10 .has-icon.select-style .input-icon {
  display: none;
}

.lt-ie10 .has-icon.select-style .form-control {
  padding-right: 21px;
}

.row-1-2 {
  margin-left: -15px;
  margin-right: -15px;
  /*
  2 column row with 1 third / 2 thirds split spans.
  For small screens the columns become vertically stacked
  in the order they appear in the markup.
  -------------------------------
  |         |                   |
  |  col-1  |       col-2       |
  |         |                   |
  -------------------------------
  */
}

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

.row-1-2:after {
  clear: both;
}

.row-1-2 > .col-1 {
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .row-1-2 > .col-1 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-2 > .col-1 {
    float: left;
    width: 33.33333%;
  }
}

.row-1-2 > .col-2 {
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .row-1-2 > .col-2 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-2 > .col-2 {
    float: left;
    width: 66.66667%;
  }
}

.row-2-1 {
  /*
  2 column row with 2 thirds / 1 third split spans.
  For small screens the columns become vertically stacked
  in the order they appear in the markup.
  -------------------------------
  |                   |         |
  |       col-1       |  col-2  |
  |                   |         |
  -------------------------------
  */
}

.row-2-1 > .col-1 {
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .row-2-1 > .col-1 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-2-1 > .col-1 {
    float: left;
    width: 66.66667%;
  }
}

.row-2-1 > .col-2 {
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .row-2-1 > .col-2 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-2-1 > .col-2 {
    float: left;
    width: 33.33333%;
  }
}

.row-1-1 {
  /*
  2 column row with equally split columns.
  For xsmall screens the columns become vertically stacked
  in the order they appear in the markup.
  -----------------------------
  |             |             |
  |    col-1    |    col-2    |
  |             |             |
  -----------------------------
  */
}

.row-1-1 > .col-1 {
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 480px) {
  .row-1-1 > .col-1 {
    position: relative;
    float: left;
    width: 50%;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

.row-1-1 > .col-2 {
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 480px) {
  .row-1-1 > .col-2 {
    position: relative;
    float: left;
    width: 50%;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

.row-1-1-small-only {
  /*
  2 column row with equally split columns.
  For small screens the columns become vertically stacked
  in the order they appear in the markup.
  -----------------------------
  |             |             |
  |    col-1    |    col-2    |
  |             |             |
  -----------------------------
  */
}

.row-1-1-small-only > .col-1 {
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .row-1-1-small-only > .col-1 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) and (min-width: 768px) {
  .row-1-1-small-only > .col-1 {
    float: left;
    width: 50%;
  }
}

.row-1-1-small-only > .col-2 {
  padding-left: 15px;
  padding-right: 15px;
  margin-top: 30px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .row-1-1-small-only > .col-2 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    margin-top: 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) and (min-width: 768px) {
  .row-1-1-small-only > .col-2 {
    float: left;
    width: 50%;
  }
}

.row-1-1-medium-up {
  /*
  2 column row with equally split columns.
  For xsmall and small screens the columns become vertically stacked
  in the order they appear in the markup.
  -----------------------------
  |             |             |
  |    col-1    |    col-2    |
  |             |             |
  -----------------------------
  */
}

.row-1-1-medium-up > .col-1 {
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .row-1-1-medium-up > .col-1 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-1-medium-up > .col-1 {
    float: left;
    width: 50%;
  }
}

.row-1-1-medium-up > .col-2 {
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .row-1-1-medium-up > .col-2 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-1-medium-up > .col-2 {
    float: left;
    width: 50%;
  }
}

.row-1-1-all {
  /*
  2 column row with equally split columns.
  -----------------------------
  |             |             |
  |    col-1    |    col-2    |
  |             |             |
  -----------------------------
  */
}

.row-1-1-all > .col-1 {
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  float: left;
  width: 50%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

.row-1-1-all > .col-2 {
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  float: left;
  width: 50%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

.row-1-1-1 {
  /*
  3 column row with equally split columns.
  For small screens the columns become vertically stacked
  in the order they appear in the markup.
  -------------------------------
  |         |         |         |
  |  col-1  |  col-2  |  col-3  |
  |         |         |         |
  -------------------------------
  */
}

.row-1-1-1 > .col-1 {
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 768px) {
  .row-1-1-1 > .col-1 {
    position: relative;
    float: left;
    width: 33.33333%;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

.row-1-1-1 > .col-2 {
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 768px) {
  .row-1-1-1 > .col-2 {
    position: relative;
    float: left;
    width: 33.33333%;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

.row-1-1-1 > .col-3 {
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 768px) {
  .row-1-1-1 > .col-3 {
    position: relative;
    float: left;
    width: 33.33333%;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

.row-1-1-1-medium-up {
  /*
  3 column row with equally split columns.
  For medium up screens the columns become vertically stacked
  in the order they appear in the markup.
  -------------------------------
  |         |         |         |
  |  col-1  |  col-2  |  col-3  |
  |         |         |         |
  -------------------------------
  */
}

@media only screen and (min-width: 992px) {
  .row-1-1-1-medium-up > .col-1 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-1-1-medium-up > .col-1 {
    float: left;
    width: 33.33333%;
  }
}

@media only screen and (min-width: 992px) {
  .row-1-1-1-medium-up > .col-2 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-1-1-medium-up > .col-2 {
    float: left;
    width: 33.33333%;
  }
}

@media only screen and (min-width: 992px) {
  .row-1-1-1-medium-up > .col-3 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-1-1-medium-up > .col-3 {
    float: left;
    width: 33.33333%;
  }
}

.row-2-over-1 {
  /*
  For small screens:
  Behaves like a standard 3 column row (row-1-1-1)
  -------------------------------
  |         |         |         |
  |  col-1  |  col-2  |  col-3  |
  |         |         |         |
  -------------------------------

  For large screens and up:
  Creates a row for columns 1 and 3 (row-1-1) and stacks
  these above column 2 in it's own row.
  -------------------------------
  |              |              |
  |    col-1     |    col-3     |
  |              |              |
  -------------------------------
  |                             |
  |            col-2            |
  |                             |
  -------------------------------
  */
}

.row-2-over-1 > .col-2 {
  margin-top: 30px;
}

@media only screen and (min-width: 768px) {
  .row-2-over-1 > .col-2 {
    clear: both;
  }
}

@media only screen and (min-width: 992px) {
  .row-2-over-1 > .col-2 {
    margin-top: 0;
  }
}

.row-2-over-1 > .col-3 {
  margin-top: 30px;
}

@media only screen and (min-width: 768px) {
  .row-2-over-1 > .col-3 {
    margin-top: 0;
  }
}

@media only screen and (min-width: 992px) {
  .row-2-over-1 > .col-3 {
    margin-top: 0;
  }
}

.row-1-1-1-1 {
  /*
  4 column row with equally split columns.
  For small up screens the columns become vertically stacked
  in the order they appear in the markup.
  -----------------------------------------
  |         |         |         |         |
  |  col-1  |  col-2  |  col-3  |  col-4  |
  |         |         |         |         |
  -----------------------------------------
  */
}

.row-1-1-1-1 > .col {
  padding-bottom: 30px;
  margin-top: 0;
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 768px) {
  .row-1-1-1-1 > .col {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
  .row-1-1-1-1 > .col:nth-of-type(2n+1) {
    clear: left;
  }
}

@media only screen and (min-width: 768px) and (min-width: 768px) {
  .row-1-1-1-1 > .col {
    float: left;
    width: 50%;
  }
}

@media only screen and (min-width: 992px) {
  .row-1-1-1-1 > .col {
    padding-bottom: 0;
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
  .row-1-1-1-1 > .col:nth-of-type(2n+1) {
    clear: none;
  }
  .row-1-1-1-1 > .col:nth-of-type(4n+1) {
    clear: left;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-1-1-1 > .col {
    float: left;
    width: 25%;
  }
}

.row-1-1-1-1 > .col-1 {
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .row-1-1-1-1 > .col-1 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-1-1-1 > .col-1 {
    float: left;
    width: 25%;
  }
}

.row-1-1-1-1 > .col-2 {
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .row-1-1-1-1 > .col-2 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-1-1-1 > .col-2 {
    float: left;
    width: 25%;
  }
}

.row-1-1-1-1 > .col-3 {
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .row-1-1-1-1 > .col-3 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-1-1-1 > .col-3 {
    float: left;
    width: 25%;
  }
}

.row-1-1-1-1 > .col-4 {
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .row-1-1-1-1 > .col-4 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-1-1-1 > .col-4 {
    float: left;
    width: 25%;
  }
}

.row-1-1-1-1-1-1 .col-1 {
  padding-top: 10px;
  margin: 0;
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .row-1-1-1-1-1-1 .col-1 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 0;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-1-1-1-1-1 .col-1 {
    float: left;
    width: 33.33333%;
  }
}

@media only screen and (min-width: 1200px) {
  .row-1-1-1-1-1-1 .col-1 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 1200px) {
  .row-1-1-1-1-1-1 .col-1 {
    float: left;
    width: 16.66667%;
  }
}

.row-1-1-1-1-1-1 .col-2 {
  padding-top: 10px;
  margin: 0;
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .row-1-1-1-1-1-1 .col-2 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 0;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-1-1-1-1-1 .col-2 {
    float: left;
    width: 33.33333%;
  }
}

@media only screen and (min-width: 1200px) {
  .row-1-1-1-1-1-1 .col-2 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 1200px) {
  .row-1-1-1-1-1-1 .col-2 {
    float: left;
    width: 16.66667%;
  }
}

.row-1-1-1-1-1-1 .col-3 {
  padding-top: 10px;
  margin: 0;
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .row-1-1-1-1-1-1 .col-3 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 0;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-1-1-1-1-1 .col-3 {
    float: left;
    width: 33.33333%;
  }
}

@media only screen and (min-width: 1200px) {
  .row-1-1-1-1-1-1 .col-3 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 1200px) {
  .row-1-1-1-1-1-1 .col-3 {
    float: left;
    width: 16.66667%;
  }
}

.row-1-1-1-1-1-1 .col-4 {
  padding-top: 10px;
  margin: 0;
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .row-1-1-1-1-1-1 .col-4 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    clear: left;
    padding-top: 10px;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-1-1-1-1-1 .col-4 {
    float: left;
    width: 33.33333%;
  }
}

@media only screen and (min-width: 1200px) {
  .row-1-1-1-1-1-1 .col-4 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 0;
    clear: none;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 1200px) {
  .row-1-1-1-1-1-1 .col-4 {
    float: left;
    width: 16.66667%;
  }
}

.row-1-1-1-1-1-1 .col-5 {
  padding-top: 10px;
  margin: 0;
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .row-1-1-1-1-1-1 .col-5 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 10px;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-1-1-1-1-1 .col-5 {
    float: left;
    width: 33.33333%;
  }
}

@media only screen and (min-width: 1200px) {
  .row-1-1-1-1-1-1 .col-5 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 0;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 1200px) {
  .row-1-1-1-1-1-1 .col-5 {
    float: left;
    width: 16.66667%;
  }
}

.row-1-1-1-1-1-1 .col-6 {
  padding-top: 10px;
  margin: 0;
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .row-1-1-1-1-1-1 .col-6 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 10px;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-1-1-1-1-1 .col-6 {
    float: left;
    width: 33.33333%;
  }
}

@media only screen and (min-width: 1200px) {
  .row-1-1-1-1-1-1 .col-6 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 0;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 1200px) {
  .row-1-1-1-1-1-1 .col-6 {
    float: left;
    width: 16.66667%;
  }
}

.row-1-1-1-1-1-1-1 .col-1 {
  padding-top: 10px;
  margin: 0;
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .row-1-1-1-1-1-1-1 .col-1 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 0;
  }
}

@media only screen and (min-width: 992px) and (min-width: 992px) {
  .row-1-1-1-1-1-1-1 .col-1 {
    float: left;
    width: 100%;
  }
}

@media only screen and (min-width: 1200px) {
  .row-1-1-1-1-1-1-1 .col-1 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 1200px) {
  .row-1-1-1-1-1-1-1 .col-1 {
    float: left;
    width: 14.25%;
  }
}

.row-1-1-1-1-1-1-1 .col-2 {
  padding-top: 10px;
  margin: 0;
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 768px) {
  .row-1-1-1-1-1-1-1 .col-2 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 10px;
  }
}

@media only screen and (min-width: 768px) and (min-width: 768px) {
  .row-1-1-1-1-1-1-1 .col-2 {
    float: left;
    width: 33.33333%;
  }
}

@media only screen and (min-width: 1200px) {
  .row-1-1-1-1-1-1-1 .col-2 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 0;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 1200px) {
  .row-1-1-1-1-1-1-1 .col-2 {
    float: left;
    width: 14.25%;
  }
}

.row-1-1-1-1-1-1-1 .col-3 {
  padding-top: 10px;
  margin: 0;
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 768px) {
  .row-1-1-1-1-1-1-1 .col-3 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 10px;
  }
}

@media only screen and (min-width: 768px) and (min-width: 768px) {
  .row-1-1-1-1-1-1-1 .col-3 {
    float: left;
    width: 33.33333%;
  }
}

@media only screen and (min-width: 1200px) {
  .row-1-1-1-1-1-1-1 .col-3 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 0;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 1200px) {
  .row-1-1-1-1-1-1-1 .col-3 {
    float: left;
    width: 14.25%;
  }
}

.row-1-1-1-1-1-1-1 .col-4 {
  padding-top: 10px;
  margin: 0;
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 768px) {
  .row-1-1-1-1-1-1-1 .col-4 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 10px;
  }
}

@media only screen and (min-width: 768px) and (min-width: 768px) {
  .row-1-1-1-1-1-1-1 .col-4 {
    float: left;
    width: 33.33333%;
  }
}

@media only screen and (min-width: 1200px) {
  .row-1-1-1-1-1-1-1 .col-4 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 0;
    clear: none;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 1200px) {
  .row-1-1-1-1-1-1-1 .col-4 {
    float: left;
    width: 14.25%;
  }
}

.row-1-1-1-1-1-1-1 .col-5 {
  padding-top: 10px;
  margin: 0;
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 768px) {
  .row-1-1-1-1-1-1-1 .col-5 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 10px;
  }
}

@media only screen and (min-width: 768px) and (min-width: 768px) {
  .row-1-1-1-1-1-1-1 .col-5 {
    float: left;
    width: 33.33333%;
  }
}

@media only screen and (min-width: 1200px) {
  .row-1-1-1-1-1-1-1 .col-5 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 0;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 1200px) {
  .row-1-1-1-1-1-1-1 .col-5 {
    float: left;
    width: 14.25%;
  }
}

.row-1-1-1-1-1-1-1 .col-6 {
  padding-top: 10px;
  margin: 0;
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 768px) {
  .row-1-1-1-1-1-1-1 .col-6 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 10px;
  }
}

@media only screen and (min-width: 768px) and (min-width: 768px) {
  .row-1-1-1-1-1-1-1 .col-6 {
    float: left;
    width: 33.33333%;
  }
}

@media only screen and (min-width: 1200px) {
  .row-1-1-1-1-1-1-1 .col-6 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 0;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 1200px) {
  .row-1-1-1-1-1-1-1 .col-6 {
    float: left;
    width: 14.25%;
  }
}

.row-1-1-1-1-1-1-1 .col-7 {
  padding-top: 10px;
  margin: 0;
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 768px) {
  .row-1-1-1-1-1-1-1 .col-7 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 10px;
  }
}

@media only screen and (min-width: 768px) and (min-width: 768px) {
  .row-1-1-1-1-1-1-1 .col-7 {
    float: left;
    width: 33.33333%;
  }
}

@media only screen and (min-width: 1200px) {
  .row-1-1-1-1-1-1-1 .col-7 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 0;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 1200px) {
  .row-1-1-1-1-1-1-1 .col-7 {
    float: left;
    width: 14.25%;
  }
}

.block-grid {
  margin: 0;
  padding: 0;
  list-style: none;
}

.block-grid > li {
  float: left;
  width: 100%;
  display: block;
  height: auto;
  margin-bottom: 20px;
}

.block-grid > li:last-child {
  margin-bottom: 0;
}

.block-grid-2 > li {
  width: 47%;
  margin-left: 1.5%;
  margin-right: 1.5%;
}

.block-grid-2 > li:nth-of-type(n) {
  width: 48.5%;
}

.block-grid-2 > li:nth-of-type(2n+2) {
  margin-right: 0;
}

.block-grid-2 > li:nth-of-type(2n+1) {
  clear: both;
  margin-left: 0;
}

.block-grid-2 > li:nth-last-of-type(-n+2) {
  margin-bottom: 0;
}

.block-grid-3 > li {
  width: 30.33333%;
  margin-left: 1.5%;
  margin-right: 1.5%;
}

.block-grid-3 > li:nth-of-type(n) {
  width: 31.33333%;
}

.block-grid-3 > li:nth-of-type(3n+3) {
  margin-right: 0;
}

.block-grid-3 > li:nth-of-type(3n+1) {
  clear: both;
  margin-left: 0;
}

.block-grid-3 > li:nth-last-of-type(-n+3) {
  margin-bottom: 0;
}

.block-grid-4 > li {
  width: 22%;
  margin-left: 1.5%;
  margin-right: 1.5%;
}

.block-grid-4 > li:nth-of-type(n) {
  width: 22.75%;
}

.block-grid-4 > li:nth-of-type(4n+4) {
  margin-right: 0;
}

.block-grid-4 > li:nth-of-type(4n+1) {
  clear: both;
  margin-left: 0;
}

.block-grid-4 > li:nth-last-of-type(-n+4) {
  margin-bottom: 0;
}

@media only screen and (min-width: 480px) and (max-width: 767px) {
  .block-grid-2-xsmall > li {
    width: 46%;
    margin-left: 2%;
    margin-right: 2%;
  }
  .block-grid-2-xsmall > li:nth-of-type(n) {
    width: 48%;
  }
  .block-grid-2-xsmall > li:nth-of-type(2n+2) {
    margin-right: 0;
  }
  .block-grid-2-xsmall > li:nth-of-type(2n+1) {
    clear: both;
    margin-left: 0;
  }
  .block-grid-2-xsmall > li:nth-last-of-type(-n+2) {
    margin-bottom: 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .block-grid-2-small > li {
    width: 46%;
    margin-left: 2%;
    margin-right: 2%;
  }
  .block-grid-2-small > li:nth-of-type(n) {
    width: 48%;
  }
  .block-grid-2-small > li:nth-of-type(2n+2) {
    margin-right: 0;
  }
  .block-grid-2-small > li:nth-of-type(2n+1) {
    clear: both;
    margin-left: 0;
  }
  .block-grid-2-small > li:nth-last-of-type(-n+2) {
    margin-bottom: 0;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .block-grid-2-medium > li {
    width: 47%;
    margin-left: 1.5%;
    margin-right: 1.5%;
  }
  .block-grid-2-medium > li:nth-of-type(n) {
    width: 48.5%;
  }
  .block-grid-2-medium > li:nth-of-type(2n+2) {
    margin-right: 0;
  }
  .block-grid-2-medium > li:nth-of-type(2n+1) {
    clear: both;
    margin-left: 0;
  }
  .block-grid-2-medium > li:nth-last-of-type(-n+2) {
    margin-bottom: 0;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1199px) {
  .block-grid-2-large > li {
    width: 47%;
    margin-left: 1.5%;
    margin-right: 1.5%;
  }
  .block-grid-2-large > li:nth-of-type(n) {
    width: 48.5%;
  }
  .block-grid-2-large > li:nth-of-type(2n+2) {
    margin-right: 0;
  }
  .block-grid-2-large > li:nth-of-type(2n+1) {
    clear: both;
    margin-left: 0;
  }
  .block-grid-2-large > li:nth-last-of-type(-n+2) {
    margin-bottom: 0;
  }
}

@media only screen and (min-width: 480px) and (max-width: 767px) {
  .block-grid-3-xsmall > li {
    width: 29.33333%;
    margin-left: 2%;
    margin-right: 2%;
  }
  .block-grid-3-xsmall > li:nth-of-type(n) {
    width: 30.66667%;
  }
  .block-grid-3-xsmall > li:nth-of-type(3n+3) {
    margin-right: 0;
  }
  .block-grid-3-xsmall > li:nth-of-type(3n+1) {
    clear: both;
    margin-left: 0;
  }
  .block-grid-3-xsmall > li:nth-last-of-type(-n+3) {
    margin-bottom: 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .block-grid-3-small > li {
    width: 29.33333%;
    margin-left: 2%;
    margin-right: 2%;
  }
  .block-grid-3-small > li:nth-of-type(n) {
    width: 30.66667%;
  }
  .block-grid-3-small > li:nth-of-type(3n+3) {
    margin-right: 0;
  }
  .block-grid-3-small > li:nth-of-type(3n+1) {
    clear: both;
    margin-left: 0;
  }
  .block-grid-3-small > li:nth-last-of-type(-n+3) {
    margin-bottom: 0;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .block-grid-3-medium > li {
    width: 30.33333%;
    margin-left: 1.5%;
    margin-right: 1.5%;
  }
  .block-grid-3-medium > li:nth-of-type(n) {
    width: 31.33333%;
  }
  .block-grid-3-medium > li:nth-of-type(3n+3) {
    margin-right: 0;
  }
  .block-grid-3-medium > li:nth-of-type(3n+1) {
    clear: both;
    margin-left: 0;
  }
  .block-grid-3-medium > li:nth-last-of-type(-n+3) {
    margin-bottom: 0;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1199px) {
  .block-grid-3-large > li {
    width: 30.33333%;
    margin-left: 1.5%;
    margin-right: 1.5%;
  }
  .block-grid-3-large > li:nth-of-type(n) {
    width: 31.33333%;
  }
  .block-grid-3-large > li:nth-of-type(3n+3) {
    margin-right: 0;
  }
  .block-grid-3-large > li:nth-of-type(3n+1) {
    clear: both;
    margin-left: 0;
  }
  .block-grid-3-large > li:nth-last-of-type(-n+3) {
    margin-bottom: 0;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .block-grid-4-medium > li {
    width: 22%;
    margin-left: 1.5%;
    margin-right: 1.5%;
  }
  .block-grid-4-medium > li:nth-of-type(n) {
    width: 22.75%;
  }
  .block-grid-4-medium > li:nth-of-type(4n+4) {
    margin-right: 0;
  }
  .block-grid-4-medium > li:nth-of-type(4n+1) {
    clear: both;
    margin-left: 0;
  }
  .block-grid-4-medium > li:nth-last-of-type(-n+4) {
    margin-bottom: 0;
  }
}

@media only screen and (min-width: 992px) {
  .block-grid-3-medium-up > li {
    width: 30.33333%;
    margin-left: 1.5%;
    margin-right: 1.5%;
  }
  .block-grid-3-medium-up > li:nth-of-type(n) {
    width: 31.33333%;
  }
  .block-grid-3-medium-up > li:nth-of-type(3n+3) {
    margin-right: 0;
  }
  .block-grid-3-medium-up > li:nth-of-type(3n+1) {
    clear: both;
    margin-left: 0;
  }
  .block-grid-3-medium-up > li:nth-last-of-type(-n+3) {
    margin-bottom: 0;
  }
}

@media only screen and (min-width: 1200px) {
  .block-grid-3-large-up > li {
    width: 30.33333%;
    margin-left: 1.5%;
    margin-right: 1.5%;
  }
  .block-grid-3-large-up > li:nth-of-type(n) {
    width: 31.33333%;
  }
  .block-grid-3-large-up > li:nth-of-type(3n+3) {
    margin-right: 0;
  }
  .block-grid-3-large-up > li:nth-of-type(3n+1) {
    clear: both;
    margin-left: 0;
  }
  .block-grid-3-large-up > li:nth-last-of-type(-n+3) {
    margin-bottom: 0;
  }
}

@media only screen and (min-width: 1301px) {
  .block-grid-3-xlarge-up > li {
    width: 30.33333%;
    margin-left: 1.5%;
    margin-right: 1.5%;
  }
  .block-grid-3-xlarge-up > li:nth-of-type(n) {
    width: 31.33333%;
  }
  .block-grid-3-xlarge-up > li:nth-of-type(3n+3) {
    margin-right: 0;
  }
  .block-grid-3-xlarge-up > li:nth-of-type(3n+1) {
    clear: both;
    margin-left: 0;
  }
  .block-grid-3-xlarge-up > li:nth-last-of-type(-n+3) {
    margin-bottom: 0;
  }
}

@media only screen and (min-width: 992px) {
  .block-grid-4-medium-up > li {
    width: 22%;
    margin-left: 1.5%;
    margin-right: 1.5%;
  }
  .block-grid-4-medium-up > li:nth-of-type(n) {
    width: 22.75%;
  }
  .block-grid-4-medium-up > li:nth-of-type(4n+4) {
    margin-right: 0;
  }
  .block-grid-4-medium-up > li:nth-of-type(4n+1) {
    clear: both;
    margin-left: 0;
  }
  .block-grid-4-medium-up > li:nth-last-of-type(-n+4) {
    margin-bottom: 0;
  }
}

@media only screen and (min-width: 1200px) {
  .block-grid-4-large-up > li {
    width: 22.5%;
    margin-left: 1.25%;
    margin-right: 1.25%;
  }
  .block-grid-4-large-up > li:nth-of-type(n) {
    width: 23.125%;
  }
  .block-grid-4-large-up > li:nth-of-type(4n+4) {
    margin-right: 0;
  }
  .block-grid-4-large-up > li:nth-of-type(4n+1) {
    clear: both;
    margin-left: 0;
  }
  .block-grid-4-large-up > li:nth-last-of-type(-n+4) {
    margin-bottom: 0;
  }
}

header {
  position: relative;
}

.row-1-2 div:first-child, .row-2-1 div:first-child, .row-1-1-medium-up div:first-child, .row-1-1-1-medium-up div:first-child, .row-1-1-1-1 div:first-child {
  margin-top: 0;
}

.row-1-2 > div, .row-2-1 > div, .row-1-1-medium-up > div, .row-1-1-1-medium-up > div, .row-1-1-1-1 > div {
  margin-top: 30px;
}

@media only screen and (min-width: 992px) {
  .row-1-2 > div, .row-2-1 > div, .row-1-1-medium-up > div, .row-1-1-1-medium-up > div, .row-1-1-1-1 > div {
    margin-top: 0;
  }
}

.row-1-1-1 div:first-child, .row-1 div:first-child {
  margin-top: 0;
}

.row-1-1-1 > div, .row-1 > div {
  margin-top: 30px;
}

@media only screen and (min-width: 768px) {
  .row-1-1-1 > div, .row-1 > div {
    margin-top: 0;
  }
}

.row-1-1 div:first-child {
  margin-top: 0;
}

.row-1-1 > div {
  margin-top: 30px;
}

@media only screen and (min-width: 480px) {
  .row-1-1 > div {
    margin-top: 0;
  }
}

.row-contain {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.row-1 {
  /*
  1 column row.
  -----------------------------
  |                           |
  |           Col 1           |
  |                           |
  -----------------------------
  */
}

.row-1 > .col-1 {
  padding-left: 15px;
  padding-right: 15px;
}

.collapse-icon:after,
.accordion-toggle:after {
  font-size: 18px;
  float: right;
  display: inline-block;
  font-family: FontAwesome;
}

[data-toggle="collapse"] {
  cursor: pointer;
}

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

@media only screen and (min-width: 768px) {
  .accordion {
    margin-left: 0;
    margin-right: 0;
  }
}

.accordion.panel-group .panel {
  border: 0px;
  box-shadow: none;
}

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

.accordion.panel-group .panel .panel-heading {
  border-top: 1px solid #c7d0e1;
  color: #9a5fa3;
}

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

.accordion.panel-group .panel .panel-heading + .panel-collapse > .panel-body .lead, .accordion.panel-group .panel .panel-heading + .panel-collapse > .panel-body .lead-lg,
.accordion.panel-group .panel .panel-heading + .panel-collapse > .list-group .lead,
.accordion.panel-group .panel .panel-heading + .panel-collapse > .list-group .lead-lg {
  color: #777777;
  font-size: 18px;
}

.accordion.panel-group .panel a.panel-heading {
  display: block;
}

.accordion.panel-group .panel .panel-title {
  font-size: 20px;
}

.accordion.panel-group .panel .panel-title::after {
  font-size: 20px;
}

.accordion.panel-group .panel .collapsed {
  border-top: 1px solid transparent;
  background-color: #e6eff4;
}

.collapse-icon-default:after {
  content: "";
}

.collapsed .collapse-icon-default:after {
  content: "";
}

.collapsed.collapse-icon-default:after {
  content: "";
}

.collapse-icon-arrow:after {
  content: "";
}

.collapsed .collapse-icon-arrow:after {
  content: "";
}

.collapsed.collapse-icon-arrow:after {
  content: "";
}

.collapse-icon-angle:after {
  content: "";
}

.collapsed .collapse-icon-angle:after {
  content: "";
}

.collapsed.collapse-icon-angle:after {
  content: "";
}

.alert h4 {
  font-size: 24px;
}

.alert p, .alert ul {
  color: #777777;
  font-size: 16px;
}

.article-heading h1 {
  margin-top: 0;
}

.meta-author,
.meta-category {
  margin: 0;
}

.article-listing .featured {
  background-color: #e6eff4;
  padding-top: 15px;
  padding-bottom: 15px;
}

.article-listing h3 {
  margin-top: 0;
}

a.back-to-top {
  background: #e4e4e4;
  color: #4a4a49;
  position: fixed;
  padding: 10px 23px;
  text-decoration: none;
  z-index: 100;
  display: none;
  bottom: 0;
  right: 0;
  opacity: 0.8;
}

@media only screen and (min-width: 992px) {
  a.back-to-top {
    bottom: 40px;
    right: 40px;
  }
}

.background-title.hero {
  background-color: #dfdfdf;
  background-position: center center;
}

.background-title.hero h1.title {
  padding: 150px 0 25px 0;
  color: #fff;
  text-align: center;
  font-size: 36px;
}

.background-title.hero p.title {
  padding: 196px 0 25px 0;
  color: #fff;
  text-align: center;
  font-size: 36px;
}

@media only screen and (max-width: 480px) {
  .background-title.hero {
    background-size: 768px auto;
  }
}

@media only screen and (min-width: 480px) {
  .background-title.hero h1.title {
    text-align: left;
  }
}

.background-title {
  background-repeat: no-repeat;
  background-size: 1000px auto;
  background-position: center top;
  background-color: #bfc9c3;
}

.background-title h1.title {
  padding: 50px 0 50px 0;
  color: #fff;
  text-align: center;
}

.background-title .row-1-1-1 {
  /* Anim effects */
}

.background-title .row-1-1-1:nth-of-type(2) {
  margin-bottom: 60px;
}

.background-title .row-1-1-1 .col-wrap {
  border: 0;
  color: #fff;
  padding: 20px;
  font-weight: 200;
  display: block;
  text-decoration: none;
}

.background-title .row-1-1-1 .col-wrap h1, .background-title .row-1-1-1 .col-wrap h2, .background-title .row-1-1-1 .col-wrap h3, .background-title .row-1-1-1 .col-wrap h4, .background-title .row-1-1-1 .col-wrap span.heading {
  color: #fff;
  font-weight: 200;
}

.background-title .row-1-1-1 .col-wrap span.heading, .background-title .row-1-1-1 .col-wrap span.desc {
  display: block;
  padding-bottom: 15px;
}

.background-title .row-1-1-1 .col-wrap span.heading {
  padding-bottom: 5px;
  font-size: 24px;
}

.background-title .row-1-1-1 .effect-one {
  overflow: hidden;
}

.background-title .row-1-1-1 .effect-one p {
  display: inline-block;
  -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
  transition: opacity 0.35s, transform 0.35s;
  -webkit-transform: translate3d(0, 250px, 0);
  transform: translate3d(0, 250px, 0);
}

.background-title .row-1-1-1 .effect-one p:first-child {
  -webkit-transition-delay: 0.15s;
  transition-delay: 0.15s;
}

.background-title .row-1-1-1 .effect-one p:nth-of-type(2) {
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
}

.background-title .row-1-1-1 .effect-one p:nth-of-type(3) {
  -webkit-transition-delay: 0.05s;
  transition-delay: 0.05s;
}

.background-title .row-1-1-1 .effect-one:hover p {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.background-title .row-1-1-1 .effect-one:hover p:first-child {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.background-title .row-1-1-1 .effect-one:hover p:nth-of-type(2) {
  -webkit-transition-delay: 0.05s;
  transition-delay: 0.05s;
}

.background-title .row-1-1-1 .effect-one:hover p:nth-of-type(3) {
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
}

.background-title .row-1-1-1 .effect-two {
  overflow: hidden;
  position: relative;
}

.background-title .row-1-1-1 .effect-two::before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  background: #fff;
  content: '';
  -webkit-transform: translate3d(0, 10px, 0);
  transform: translate3d(0, 10px, 0);
  -webkit-transition: -webkit-transform 0.35s;
  transition: transform 0.35s;
}

.background-title .row-1-1-1 .effect-two h3, .background-title .row-1-1-1 .effect-two p, .background-title .row-1-1-1 .effect-two span.heading, .background-title .row-1-1-1 .effect-two span.desc {
  position: relative;
  top: 0;
  -webkit-transition: all 0.35s ease;
  transition: all 0.35s ease;
}

.background-title .row-1-1-1 .effect-two:hover h3, .background-title .row-1-1-1 .effect-two:hover p, .background-title .row-1-1-1 .effect-two:hover span.heading, .background-title .row-1-1-1 .effect-two:hover span.desc {
  top: -5px;
  -webkit-transition: all 0.35s ease;
  transition: all 0.35s ease;
}

.background-title .row-1-1-1 .effect-two:hover::before {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.background-title .row-1-1-1 div:nth-of-type(odd) .col-wrap {
  background-color: rgba(23, 23, 22, 0.5);
}

.background-title .row-1-1-1 div:nth-of-type(even) .col-wrap {
  background-color: rgba(0, 0, 0, 0.5);
}

.background-title .row-1-1-1 div:nth-of-type(odd) .bg-white {
  background-color: rgba(255, 255, 255, 0.8);
  color: #777777;
  display: none;
}

@media only screen and (min-width: 768px) {
  .background-title .row-1-1-1 div:nth-of-type(odd) .bg-white {
    display: block;
  }
}

.background-title .row-1-1-1 div:nth-of-type(odd) .bg-transparent {
  background-color: transparent;
  padding: 0;
}

@media only screen and (max-width: 480px) {
  .background-title {
    background-size: 1000px auto;
    background-position: center center;
  }
}

@media only screen and (min-width: 480px) {
  .background-title {
    background-size: 1000px auto;
  }
}

@media only screen and (min-width: 768px) {
  .background-title {
    background-size: 1230px auto;
  }
  .background-title h1.title {
    color: #fff;
    font-size: 30px;
    text-align: left;
    padding: 125px 0 125px 0;
  }
}

@media only screen and (min-width: 992px) {
  .background-title h1.title {
    padding: 125px 0 125px 0;
  }
}

@media only screen and (min-width: 1200px) {
  .background-title {
    background-size: 1600px auto;
  }
  .background-title h1.title {
    padding: 150px 0 150px 0;
    font-size: 36px;
  }
}

.bg-pad:before {
  padding: 140px 0;
}

@media only screen and (min-width: 768px) {
  .bg-pad:before {
    padding: 170px 0;
  }
}

@media only screen and (min-width: 1200px) {
  .bg-pad:before {
    padding: 220px 0;
  }
}

.brand-strip {
  background-color: rgba(0, 0, 0, 0.8);
  padding: 5px 0;
}

.brand-strip .row {
  margin-bottom: 0;
}

.brand-strip .row .col-1 {
  color: #fff;
  text-transform: uppercase;
  padding-top: 15px;
  padding-bottom: 15px;
  font-size: 24px;
  text-align: center;
}

@media only screen and (min-width: 1200px) {
  .brand-strip .row .col-1 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    text-align: left;
    font-size: 12px;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 1200px) {
  .brand-strip .row .col-1 {
    float: left;
    width: 16.66667%;
  }
}

.brand-strip .row .col-2, .brand-strip .row .col-3, .brand-strip .row .col-4, .brand-strip .row .col-5, .brand-strip .row .col-6, .brand-strip .row .col-7 {
  text-align: center;
  padding: 0 60px;
}

.brand-strip .row .col-2 img, .brand-strip .row .col-3 img, .brand-strip .row .col-4 img, .brand-strip .row .col-5 img, .brand-strip .row .col-6 img, .brand-strip .row .col-7 img {
  display: inline-block;
  max-width: 200px;
}

@media only screen and (min-width: 768px) {
  .brand-strip .row .col-2 img, .brand-strip .row .col-3 img, .brand-strip .row .col-4 img, .brand-strip .row .col-5 img, .brand-strip .row .col-6 img, .brand-strip .row .col-7 img {
    max-width: 100%;
  }
}

@media only screen and (min-width: 1200px) {
  .brand-strip .row .col-2, .brand-strip .row .col-3, .brand-strip .row .col-4, .brand-strip .row .col-5, .brand-strip .row .col-6, .brand-strip .row .col-7 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    padding: 0 15px;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 1200px) {
  .brand-strip .row .col-2, .brand-strip .row .col-3, .brand-strip .row .col-4, .brand-strip .row .col-5, .brand-strip .row .col-6, .brand-strip .row .col-7 {
    float: left;
    width: 13.75%;
  }
}

.breadcrumb {
  margin-bottom: 0;
  padding: 8px 5px;
  text-transform: capitalize;
}

.breadcrumb > li a {
  color: #777777;
}

.breadcrumb > li + li:before {
  font-family: FontAwesome;
  font-size: 12px;
}

.featured-link img {
  margin: 0 auto;
}

#nomatches {
  display: none;
}

.btn-spaced {
  padding-left: 20%;
  padding-right: 20%;
  margin: 15px 0 0 15px;
}

.btn, #sliding-popup .popup-content #popup-buttons button {
  border: 0;
}

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

.btn-default:hover {
  color: #333;
  background-color: #e1e1e1;
}

.btn-primary {
  color: #fff;
  background-color: #9a5fa3;
}

.btn-primary:hover {
  color: #fff;
  background-color: #8b5594;
}

.btn-cancel {
  color: #9a5fa3;
  background-color: #f1f1f1;
}

.btn-cancel:hover {
  color: #9a5fa3;
  background-color: #e4e4e4;
}

.btn-secondary, #sliding-popup .popup-content #popup-buttons button {
  color: #fff;
  background-color: #cd3563;
}

.btn-secondary:hover, #sliding-popup .popup-content #popup-buttons button:hover {
  color: #fff;
  background-color: #ba2e59;
}

.btn-tertiary {
  color: #fff;
  background-color: #919191;
}

.btn-tertiary:hover {
  color: #fff;
  background-color: #848484;
}

.btn, #sliding-popup .popup-content #popup-buttons button {
  padding: 10px 12px;
  font-size: 16px;
  line-height: 1.4286;
  border-radius: 4px;
}

.btn-lg, .btn-group-lg > .btn, #sliding-popup .popup-content #popup-buttons .btn-group-lg > button {
  padding: 10px 12px;
  font-size: 24px;
  line-height: 1.33333;
  border-radius: 6px;
}

.btn-sm, .btn-group-sm > .btn, #sliding-popup .popup-content #popup-buttons button {
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.5;
  border-radius: 3px;
}

.btn-xs, .btn-group-xs > .btn, #sliding-popup .popup-content #popup-buttons .btn-group-xs > button {
  padding: 6px 12px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

.btn-with-icon {
  border-collapse: separate;
  display: table;
  padding: 0;
  position: relative;
  text-align: left;
  white-space: normal;
}

.btn-with-icon.btn-block .btn-text {
  width: 100%;
}

.btn-with-icon .btn-text {
  display: table-cell;
  vertical-align: middle;
}

.btn-with-icon.btn .btn-text, #sliding-popup .popup-content #popup-buttons button.btn-with-icon .btn-text {
  padding: 10px 12px;
}

.btn-with-icon.btn-lg .btn-text, .btn-group-lg > .btn-with-icon.btn .btn-text, #sliding-popup .popup-content #popup-buttons .btn-group-lg > button.btn-with-icon .btn-text {
  padding: 10px 12px;
}

.btn-with-icon.btn-sm .btn-text, .btn-group-sm > .btn-with-icon.btn .btn-text, #sliding-popup .popup-content #popup-buttons button.btn-with-icon .btn-text {
  padding: 6px 12px;
}

.btn-with-icon .btn-icon {
  color: white;
  display: table-cell;
  vertical-align: middle;
}

.btn-with-icon.btn .btn-icon, #sliding-popup .popup-content #popup-buttons button.btn-with-icon .btn-icon {
  font-size: 32px;
}

.btn-with-icon.btn-lg .btn-icon, .btn-group-lg > .btn-with-icon.btn .btn-icon, #sliding-popup .popup-content #popup-buttons .btn-group-lg > button.btn-with-icon .btn-icon {
  font-size: 42px;
}

.btn-with-icon.btn-sm .btn-icon, .btn-group-sm > .btn-with-icon.btn .btn-icon, #sliding-popup .popup-content #popup-buttons button.btn-with-icon .btn-icon {
  font-size: 22px;
}

.btn-with-icon.btn .fa-search, #sliding-popup .popup-content #popup-buttons button.btn-with-icon .fa-search {
  font-size: 24px;
}

.btn-with-icon.btn .btn-icon, #sliding-popup .popup-content #popup-buttons button.btn-with-icon .btn-icon {
  padding: 0 14px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}

.btn-with-icon.btn-lg .btn-icon, .btn-group-lg > .btn-with-icon.btn .btn-icon, #sliding-popup .popup-content #popup-buttons .btn-group-lg > button.btn-with-icon .btn-icon {
  padding: 0 16px;
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
}

.btn-with-icon.btn-sm .btn-icon, .btn-group-sm > .btn-with-icon.btn .btn-icon, #sliding-popup .popup-content #popup-buttons button.btn-with-icon .btn-icon {
  padding: 0 12px;
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
}

.btn-with-icon.btn-default .btn-icon {
  color: #333;
  background-color: #e1e1e1;
}

.btn-with-icon.btn-primary .btn-icon {
  color: #fff;
  background-color: #8b5594;
}

.btn-with-icon.btn-secondary .btn-icon, #sliding-popup .popup-content #popup-buttons button.btn-with-icon .btn-icon {
  color: #fff;
  background-color: #ba2e59;
}

.btn-with-icon.btn-tertiary .btn-icon {
  color: #fff;
  background-color: #848484;
}

.btn-link:hover {
  text-decoration: none;
}

.btn-link .btn-icon {
  color: #cd3563;
}

.btn-link.btn .btn-icon, #sliding-popup .popup-content #popup-buttons button.btn-link .btn-icon {
  font-size: 18px;
  padding-left: 10px;
  line-height: 0.4;
}

.btn-link.btn-lg .btn-icon, .btn-group-lg > .btn-link.btn .btn-icon, #sliding-popup .popup-content #popup-buttons .btn-group-lg > button.btn-link .btn-icon {
  font-size: 22px;
  line-height: 0.8;
}

.btn-link.btn-sm .btn-icon, .btn-group-sm > .btn-link.btn .btn-icon, #sliding-popup .popup-content #popup-buttons button.btn-link .btn-icon {
  font-size: 14px;
}

.btn-link.btn-lg, .btn-group-lg > .btn-link.btn, #sliding-popup .popup-content #popup-buttons .btn-group-lg > button.btn-link {
  font-size: 20px;
}

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

.panel-email-jobs.panel-bg {
  background-color: #cd3563;
}

.panel-email-jobs .panel-body {
  padding: 20px 30px;
}

.panel-email-jobs label {
  color: white;
  font-size: 21px;
  font-weight: normal;
  margin-bottom: 15px;
}

@media only screen and (min-width: 480px) {
  .panel-email-jobs label {
    font-size: 24px;
  }
}

.panel-email-jobs p {
  color: white;
  font-size: 12.6506px;
}

@media only screen and (min-width: 480px) {
  .panel-email-jobs p {
    font-size: 15px;
  }
}

.panel-email-jobs p a {
  color: white;
  text-decoration: underline;
}

@media only screen and (min-width: 480px) {
  .row-2-1 .col-1 .panel-email-jobs .input-group {
    width: 100%;
  }
}

.panel-email-jobs .btn, .panel-email-jobs #sliding-popup .popup-content #popup-buttons button, #sliding-popup .popup-content #popup-buttons .panel-email-jobs button {
  background-color: #a5264c;
  color: white;
}

.block-grid li {
  position: relative;
}

.block-grid li .block-title-overlay {
  background-color: #000;
  background-color: #127eb9;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
  color: #fff;
  font-size: 17px;
  padding: 10px 15px;
  position: absolute;
  bottom: 5%;
  left: 0;
  max-width: 80%;
}

.featured-recruiter-title h1 {
  max-width: 65%;
  margin-top: 0;
}

.featured-recruiter-title span {
  margin-top: 10px;
}

.filter-listing select {
  border-color: #c7d0e1;
}

.filter-listing select.input-lg, .filter-listing .input-group-lg > select.form-control,
.filter-listing .input-group-lg > select.input-group-addon,
.filter-listing .input-group-lg > .input-group-btn > select.btn {
  line-height: inherit;
}

.filter-listing .input-icon {
  color: #4a4a49;
}

.filter-listing .col-2 {
  margin-top: 10px;
}

@media only screen and (min-width: 480px) {
  .filter-listing .col-1 {
    padding-left: 0;
  }
  .filter-listing .col-2 {
    padding-right: 0;
    margin-top: 0;
  }
}

.active-filters {
  margin-top: 10px;
  margin-bottom: 0;
  margin-left: 0;
}

.active-filters li {
  background-color: #e4e4e4;
  border-radius: 5px;
  color: #4a4a49;
  margin-bottom: 10px;
  margin-right: 10px;
  float: left;
  clear: left;
}

@media only screen and (min-width: 480px) {
  .active-filters li {
    clear: none;
  }
}

.active-filters li span {
  display: table-cell;
  vertical-align: middle;
  padding: 5px;
}

.active-filters li a {
  display: table-cell;
  text-decoration: none;
  text-align: center;
  vertical-align: middle;
  padding: 5px;
  color: inherit;
}

.active-filters li.filters-label {
  background: transparent;
  font-weight: bold;
  padding-left: 0;
  padding-right: 0;
}

.active-filters li.filters-label span {
  padding-left: 0;
  padding-right: 0;
}

.active-filters li.clear-all {
  background-color: white;
}

.footer-navigation h4 {
  font-weight: 500;
  padding-bottom: 10px;
  color: #9a5fa3;
  border-bottom: 1px solid #ca315c;
}

.footer-navigation h4 a {
  color: #9a5fa3;
}

.footer-navigation h4 a:hover {
  text-decoration: none;
}

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

.footer-navigation ul li {
  font-size: 14px;
  padding: 4px 0;
}

.footer-navigation ul li a {
  text-decoration: none;
  color: #909090;
}

.footer-navigation ul li a:hover {
  text-decoration: underline;
}

@media only screen and (min-width: 992px) {
  .footer-navigation [data-toggle="collapse"] {
    cursor: default;
  }
  .footer-navigation .collapse {
    display: block;
  }
  .footer-navigation .collapse-icon:after {
    display: none;
  }
}

.lt-ie9 .footer-navigation .collapse-icon:after {
  display: none;
}

.footer-legal {
  font-size: 14px;
}

.footer-legal p {
  color: #909090;
}

.footer-legal .footer-legal-nav li {
  padding: 0;
}

.footer-legal .footer-legal-nav li:after {
  content: "|";
  font-weight: 300;
}

.footer-legal .footer-legal-nav li:last-child:after {
  content: "";
}

.footer-legal .footer-legal-nav li a {
  color: #909090;
  margin-left: 10px;
  margin-right: 10px;
}

.form-favourite-jobs .select,
.form-favourite-jobs .remove {
  padding-left: 15px;
  padding-right: 15px;
  vertical-align: middle;
}

.filter-checkbox {
  background: #f1f1f1;
  display: inline-block;
  padding: 0 10px;
  border: 0;
  color: #9a5fa3;
  min-width: 100%;
  margin: 0 0 15px 0;
}

.filter-checkbox .checkbox {
  margin: 0;
  padding: 5px 0;
}

.filter-checkbox .checkbox input {
  margin-top: 2px;
}

.filter-input input {
  border: 1px solid #e4e4e4;
  min-width: 90%;
  max-width: 100%;
  margin: 0 0 15px 0;
}

.filter-input input:disabled {
  background: none;
}

.filter-radio {
  background: #f1f1f1;
  display: inline-block;
  padding: 0 10px;
  border: 0;
  color: #9a5fa3;
  min-width: 100%;
  margin: 0 0 15px 0;
}

.filter-radio .radio {
  margin: 0;
  padding: 5px 0;
}

.filter-radio .radio input {
  margin-top: 2px;
}

#homepage-gray-carousel div.slick-track {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

#homepage-gray-carousel div.slick-track .slick-dots li,
#homepage-gray-carousel div.slick-track .slick-dots:after,
#homepage-gray-carousel div.slick-track .slick-dots:before {
  background: none;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  #homepage-gray-carousel div.slick-track .item.slick-slide.slick-current.slick-active {
    height: auto;
  }
}

#homepage-gray-carousel .slick-dots {
  bottom: 3px;
}

#homepage-gray-carousel .slick-dots:before, #homepage-gray-carousel .slick-dots:after, #homepage-gray-carousel .slick-dots li {
  background: none;
}

#homepage-gray-carousel .panel-body {
  padding: 25px;
  padding-bottom: 35px;
}

#homepage-gray-carousel .slick-slider .slick-list .item-plain {
  padding: 0;
}

@media only screen and (min-width: 480px) and (max-width: 767px) {
  #homepage-gray-carousel .slick-slider .slick-list .item-plain {
    padding: 0 10px;
  }
  #homepage-gray-carousel .carousel .carousel-inner .slick-prev {
    left: 10px;
  }
  #homepage-gray-carousel .carousel .carousel-inner .slick-next {
    right: 10px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  #homepage-gray-carousel .slick-slider .slick-list .item-plain {
    padding: 0 10px;
  }
  #homepage-gray-carousel .carousel .carousel-inner .slick-prev {
    left: 10px;
  }
  #homepage-gray-carousel .carousel .carousel-inner .slick-next {
    right: 10px;
  }
}

#header-information {
  display: none;
}

#header-information > .container {
  display: -ms-flexbox;
  display: flex;
}

#header-information > .container .region-contact-info {
  align-self: center;
  -ms-flex-item-align: center;
  margin-left: auto;
  order: 3;
}

@media only screen and (min-width: 992px) {
  #header-information {
    display: block;
  }
}

#header-information .logo {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  padding: 0;
}

@media (min-width: 992px) {
  #header-information .logo {
    float: left;
    width: 25%;
  }
}

#header-information .strapline {
  color: #4a4a49;
  font-size: 14px;
  text-align: left;
  margin: 0;
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 22px;
  padding-left: 40px;
}

@media (min-width: 992px) {
  #header-information .strapline {
    float: left;
    width: 50%;
  }
}

@media only screen and (min-width: 1200px) {
  #header-information .strapline {
    font-size: 18px;
    padding-top: 27px;
  }
}

#header-information .contact-info {
  width: auto;
  text-align: right;
}

#header-information .contact-info .phone {
  line-height: 1;
  display: block;
  color: #4a4a49;
  font-size: 20px;
}

@media only screen and (min-width: 1200px) {
  #header-information .contact-info .phone {
    font-size: 26px;
  }
}

#header-information .contact-info .email {
  font-size: 14px;
  color: #4a4a49;
}

@media only screen and (min-width: 1200px) {
  #header-information .contact-info .email {
    font-size: 18px;
    white-space: nowrap;
  }
}

#header-information .contact-info .fa {
  color: #4a4a49;
  font-size: 18px;
  margin-right: 5px;
}

.hero-bg-img .hero-bg-img__overlay--content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  margin: auto;
  align-items: start;
}

.hero-bg-img .hero-bg-img__overlay--content-center {
  align-items: center;
  text-align: center;
}

.hero-bg-img .hero-bg-img__overlay--content-2-cols {
  align-items: center;
  justify-content: space-around;
  text-align: center;
}

@media only screen and (min-width: 992px) {
  .hero-bg-img .hero-bg-img__overlay--content-2-cols {
    flex-direction: row;
  }
}

.hero-bg-img .hero-bg-img__overlay--content-3-cols {
  justify-content: space-around;
}

@media only screen and (min-width: 992px) {
  .hero-bg-img .hero-bg-img__overlay--content-3-cols {
    flex-direction: row;
  }
}

.hero-bg-img .hero-bg-img__overlay--content-3-cols--col {
  width: 80%;
  margin-bottom: 50px;
}

@media only screen and (min-width: 992px) {
  .hero-bg-img .hero-bg-img__overlay--content-3-cols--col {
    width: 25%;
    margin-bottom: 0;
  }
}

.hero-bg-img .hero-bg-img__overlay--content-3-cols--col:first-child {
  margin-top: 50px;
}

@media only screen and (min-width: 992px) {
  .hero-bg-img .hero-bg-img__overlay--content-3-cols--col:first-child {
    margin-top: 0;
  }
}

.hero-bg-video .hero-bg-video__wrapper {
  overflow: hidden;
  position: relative;
}

@media only screen and (min-width: 992px) {
  .hero-bg-video .hero-bg-video__wrapper {
    height: 500px;
  }
}

.hero-bg-video .hero-bg-video__iframe {
  padding: 56.25% 0 0 0;
  position: relative;
}

.hero-bg-video .hero-bg-video__overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

@media only screen and (min-width: 992px) {
  .hero-bg-video .hero-bg-video__overlay--with-bg-img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-image: none !important;
  }
}

.hero-bg-video .hero-bg-video__overlay--content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  margin: auto;
  align-items: start;
}

.hero-bg-video .hero-bg-video__overlay--content-center {
  align-items: center;
  text-align: center;
}

.hero-bg-video .hero-bg-video__overlay--content-2-cols {
  align-items: center;
  justify-content: space-around;
  text-align: center;
}

@media only screen and (min-width: 992px) {
  .hero-bg-video .hero-bg-video__overlay--content-2-cols {
    flex-direction: row;
  }
}

.hero-bg-video .hero-bg-video__overlay--content-3-cols {
  justify-content: space-around;
}

@media only screen and (min-width: 992px) {
  .hero-bg-video .hero-bg-video__overlay--content-3-cols {
    flex-direction: row;
  }
}

.hero-bg-video .hero-bg-video__overlay--content-3-cols--col {
  width: 80%;
  margin-bottom: 50px;
}

@media only screen and (min-width: 992px) {
  .hero-bg-video .hero-bg-video__overlay--content-3-cols--col {
    width: 25%;
    margin-bottom: 0;
  }
}

.hero-bg-video .hero-bg-video__overlay--content-3-cols--col:first-child {
  margin-top: 50px;
}

@media only screen and (min-width: 992px) {
  .hero-bg-video .hero-bg-video__overlay--content-3-cols--col:first-child {
    margin-top: 0;
  }
}

.job-actions .col-2 {
  margin-top: 0;
}

.job-actions .col-2 .list-utils {
  padding-top: 5px;
  text-align: right;
}

@media only screen and (min-width: 992px) {
  .job-actions .col-2 .list-utils {
    text-align: right;
  }
}

.job-actions .col-2 .list-share {
  padding-top: 20px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .job-options .col-1, .job-options .col-2 {
    width: 50%;
  }
}

.job-options .table-primary {
  margin-bottom: 0;
}

.job-options .list-utils {
  text-align: right;
  margin-top: 10px;
}

.job-options .list-utils li a {
  color: #777777;
}

.job-options .list-utils li a:hover {
  color: #7c4c83;
  text-decoration: none;
}

.job-options .list-utils li a i {
  margin-right: 5px;
}

.job-options .list-utils li a .add-to-shortlist.selected i {
  color: #f6a000;
}

@media only screen and (min-width: 992px) {
  .job-options .list-share {
    text-align: right;
  }
}

@media only screen and (min-width: 768px) {
  .listing-heading .listing-title {
    display: inline;
    margin-right: 20px;
  }
}

.listing-heading .listing-title span {
  font-weight: bold;
}

.listing-heading .list-utils {
  display: inline-block;
  margin-bottom: 0;
}

.listing-heading .list-utils li {
  margin-right: 10px;
  margin-bottom: 15px;
}

@media only screen and (min-width: 768px) {
  .listing-heading .list-utils li {
    margin-bottom: 0;
  }
}

.listing-heading .list-utils li a {
  color: #777777;
}

.listing-heading .list-utils li a i {
  font-size: 22px;
  vertical-align: middle;
}

@media only screen and (min-width: 768px) {
  .listing-heading .list-utils li a i {
    vertical-align: inherit;
  }
}

.job-listings .listing.promoted .listing-header {
  background-color: #c7d0e1;
}

.job-listings .listing.promoted .listing-content {
  background-color: #e6eff4;
}

.job-listings .listing .listing-header {
  background-color: #f1f1f1;
  position: relative;
  padding-right: 55px;
  overflow: hidden;
}

.job-listings .listing .listing-header h3 {
  margin: 0;
  padding: 12px 15px;
}

.job-listings .listing .listing-header h3 a {
  display: block;
  margin-right: 10px;
  font-size: 22px;
  color: #1f4487;
}

@media only screen and (min-width: 480px) {
  .job-listings .listing .listing-header h3 a {
    display: inline;
  }
}

.job-listings .listing .listing-header h3 .label {
  font-size: 14px;
  font-weight: normal;
  padding: 0.4em 0.6em 0.25em 0.6em;
  position: relative;
  top: -3px;
}

.job-listings .listing .listing-header h3 .label + .label {
  margin-left: 6px;
}

.job-listings .listing .listing-header h3 .label-promoted {
  background-color: #333333;
}

.job-listings .listing .listing-header h3 .label-justadded {
  background-color: #cd3563;
}

.job-listings .listing .listing-header h3 .label-featured {
  background-color: #9a5fa3;
}

.job-listings .listing .listing-header .add-to-shortlist {
  background-color: #e4e4e4;
  color: #555555;
  padding: 16px;
  position: absolute;
  top: 0;
  right: 0;
}

@media only screen and (min-width: 1200px) {
  .job-listings .listing .listing-header .add-to-shortlist {
    bottom: 0;
  }
}

.job-listings .listing .listing-header .add-to-shortlist i {
  color: #777777;
  font-size: 22px;
}

.job-listings .listing .listing-header .add-to-shortlist.selected i {
  color: #f6a000;
}

.job-listings .listing .listing-content {
  font-size: 16px;
  position: relative;
  padding: 15px;
}

.job-listings .listing .listing-content ul {
  color: #9a5fa3;
  margin-bottom: 0;
}

.job-listings .listing .listing-content ul li:before {
  font-family: 'FontAwesome';
  font-size: 20px;
  width: 1.28571em;
  color: #a1a1a1;
  display: inline-block;
}

.job-listings .listing .listing-content ul li.fa-ref:before {
  content: "";
}

.job-listings .listing .listing-content ul li.fa-rate:before {
  content: "";
}

.job-listings .listing .listing-content ul li.fa-rate-gbp:before {
  content: "";
}

.job-listings .listing .listing-content ul li.fa-rate-usd:before {
  content: "";
}

.job-listings .listing .listing-content ul li.fa-rate-eur:before {
  content: "";
}

.job-listings .listing .listing-content ul li.fa-location:before {
  content: "";
}

.job-listings .listing .listing-content .company-logo {
  padding-top: 20px;
}

@media only screen and (min-width: 992px) {
  .job-listings .listing .listing-content .company-logo {
    float: right;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .masonry-grid .col-v-margin {
    margin-top: 30px !important;
  }
}

.masonry-grid .masonry-block {
  background-color: #c7d0e1;
  position: relative;
  height: 230px;
  overflow: hidden;
}

@media only screen and (min-width: 992px) {
  .masonry-grid .masonry-block {
    height: 135px;
  }
}

.masonry-grid .masonry-block .block-title-overlay {
  background-color: #000;
  background-color: #127eb9;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
  font-size: 17px;
  font-weight: 500;
  color: #fff;
  position: absolute;
  bottom: 10px;
  left: 0;
  padding: 10px 15px;
  max-width: 90%;
}

.masonry-grid .masonry-block .block-title-overlay span {
  display: block;
  font-weight: normal;
  font-size: 22px;
}

.masonry-grid .masonry-block:hover .block-title-overlay {
  background-color: #000;
  background-color: #4a4a49;
}

.masonry-grid .masonry-block-tall {
  background-color: #4a4a49;
}

@media only screen and (min-width: 992px) {
  .masonry-grid .masonry-block-tall {
    height: 300px;
  }
}

.masonry-grid .masonry-block-1 {
  background: url("../images/masonry/masonry-480x727.jpg") no-repeat 0 center;
  background-size: 100%;
}

@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  .masonry-grid .masonry-block-1 {
    /* on retina, use image that's scaled by 1.5 */
    background-image: url("../images/masonry/masonry-480x727.jpg");
    background-size: 480px 727px;
  }
}

.masonry-grid .masonry-block-2 {
  background: url("../images/masonry/masonry-480x727.jpg") no-repeat 0 center;
  background-size: 100%;
}

@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  .masonry-grid .masonry-block-2 {
    /* on retina, use image that's scaled by 1.5 */
    background-image: url("../images/masonry/masonry-480x727.jpg");
    background-size: 480px 727px;
  }
}

.masonry-grid .masonry-block-3 {
  background: url("../images/masonry/masonry-480x727.jpg") no-repeat 0 center;
  background-size: 100%;
}

@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  .masonry-grid .masonry-block-3 {
    /* on retina, use image that's scaled by 1.5 */
    background-image: url("../images/masonry/masonry-480x727.jpg");
    background-size: 480px 727px;
  }
}

.masonry-grid .masonry-block-4 {
  background: url("../images/masonry/masonry-480x727.jpg") no-repeat 0 center;
  background-size: 100%;
}

@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  .masonry-grid .masonry-block-4 {
    /* on retina, use image that's scaled by 1.5 */
    background-image: url("../images/masonry/masonry-480x727.jpg");
    background-size: 480px 727px;
  }
}

.masonry-grid .masonry-block-5 {
  background: url("../images/masonry/masonry-480x727.jpg") no-repeat 0 center;
  background-size: 100%;
}

@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  .masonry-grid .masonry-block-5 {
    /* on retina, use image that's scaled by 1.5 */
    background-image: url("../images/masonry/masonry-480x727.jpg");
    background-size: 480px 727px;
  }
}

.masonry-grid .masonry-block-6 {
  background: url("../images/masonry/masonry-480x727.jpg") no-repeat 0 center;
  background-size: 100%;
}

@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  .masonry-grid .masonry-block-6 {
    /* on retina, use image that's scaled by 1.5 */
    background-image: url("../images/masonry/masonry-480x727.jpg");
    background-size: 480px 727px;
  }
}

@media only screen and (min-width: 992px) {
  .masonry-grid-small .masonry-block {
    height: 85px;
  }
}

.masonry-grid-small .masonry-block .block-title-overlay {
  padding: 10px 15px;
}

@media only screen and (min-width: 992px) {
  .masonry-grid-small .masonry-block .block-title-overlay {
    font-size: 16px;
    padding: 5px 10px;
  }
}

@media only screen and (min-width: 1200px) {
  .masonry-grid-small .masonry-block .block-title-overlay {
    font-size: 18px;
  }
}

@media only screen and (min-width: 992px) {
  .masonry-grid-small .masonry-block .block-title-overlay span {
    font-size: 14px;
  }
}

@media only screen and (min-width: 1200px) {
  .masonry-grid-small .masonry-block .block-title-overlay span {
    font-size: 16px;
  }
}

@media only screen and (min-width: 992px) {
  .masonry-grid-small .masonry-block-tall {
    height: 200px;
  }
}

#nav-primary.alternative {
  background: #8a8a8e;
}

#nav-primary.alternative .logo {
  width: auto;
  padding-bottom: 10px;
  display: block;
}

#nav-primary.alternative .logo .img-responsive {
  width: 130px;
}

#nav-primary.alternative.stuck .logo {
  display: block;
  overflow: visible;
  width: auto;
}

#nav-primary.alternative.stuck .logo .img-responsive {
  width: 130px;
}

#nav-primary.alternative .nav {
  padding: 0 0 0 5px;
}

#nav-primary.alternative .nav > li:after {
  content: '';
}

#nav-primary.alternative .nav > li > a {
  color: #fff;
  text-transform: uppercase;
  font-size: 12px;
  padding-top: 5px;
  padding-bottom: 5px;
}

#nav-primary.alternative .nav > li > a:hover, #nav-primary.alternative .nav > li > a:active {
  color: #777777;
}

#nav-primary.alternative .nav > li > a.active, #nav-primary.alternative .nav > li > a.active-trail {
  color: #777777;
}

#nav-primary.alternative .nav > li.open > a {
  color: #000;
}

#nav-primary.alternative .nav .dropdown-menu a {
  color: #4a4a49;
}

#nav-primary.alternative .navbar-collapse.collapse {
  float: right;
}

#nav-primary.alternative.stuck {
  background: #8a8a8e;
}

#nav-primary.alternative .nav-area .fa {
  color: #fff;
}

#nav-primary.alternative .sub-area {
  background: #fff;
  border-bottom: 1px solid #f8f8f8;
}

#nav-primary.alternative .sub-area .nav {
  float: right;
}

#nav-primary.alternative .sub-area .nav > li > a {
  color: #777777;
  font-size: 14px;
  font-weight: 500;
  padding-top: 25px;
  padding-bottom: 20px;
  text-transform: none;
  max-width: 150px;
}

#nav-primary.alternative .sub-area .nav > li > a:hover, #nav-primary.alternative .sub-area .nav > li > a:active, #nav-primary.alternative .sub-area .nav > li > a.active {
  color: #4a4a49;
  border-color: #f1f1f1;
}

#nav-primary.alternative .sub-area .nav > li.open > a {
  color: #4a4a49;
  border-color: #f1f1f1;
}

#nav-primary.alternative .sub-area .nav .dropdown-submenu a {
  padding-right: 30px;
  position: relative;
}

#nav-primary.alternative .sub-area .nav .dropdown-submenu a .caret {
  position: absolute;
  right: 15px;
  top: 33px;
}

#nav-primary.alternative .sub-area .nav .dropdown-menu a {
  color: #4a4a49;
}

#nav-primary.alternative .sub-area .nav .dropdown-menu-right {
  left: auto;
}

#nav-primary.client .logo {
  width: auto;
  padding-top: 10px;
  padding-bottom: 10px;
  display: block;
}

#nav-primary.client .logo .img-responsive {
  width: 170px;
}

@media only screen and (min-width: 992px) {
  #nav-primary.client .logo .img-responsive {
    width: 200px;
  }
}

#nav-primary.client.stuck .logo .img-responsive {
  width: 170px;
}

@media only screen and (min-width: 992px) {
  #nav-primary.client.stuck .logo .img-responsive {
    width: 200px;
  }
}

#nav-primary.client .navbar-collapse {
  padding: 0;
}

#nav-primary.client .navbar-collapse.collapse {
  display: none !important;
  float: left;
}

@media only screen and (min-width: 1200px) {
  #nav-primary.client .navbar-collapse.collapse {
    display: inline-block !important;
  }
}

#nav-primary.client .hotdog-nav {
  display: inline-block;
  float: left;
}

#nav-primary.client .hotdog-nav .fa {
  color: #fff;
}

@media only screen and (min-width: 1200px) {
  #nav-primary.client .hotdog-nav {
    display: none;
  }
}

#nav-primary.client .navbar-collapse {
  float: none;
  width: 100%;
  margin: 0 0 20px 0;
}

#nav-primary.client .navbar-collapse .nav {
  float: none;
  width: 100%;
  clear: both;
  margin: 0;
}

#nav-primary.client .navbar-collapse .nav > li {
  width: 100%;
  clear: both;
}

#nav-primary.client .navbar-collapse .nav > li > a {
  width: 100%;
  max-width: none;
  padding-top: 20px;
  padding-bottom: 20px;
}

#nav-primary.client .navbar-collapse .nav .dropdown-menu {
  margin-left: -5px;
}

#nav-primary.client .navbar-collapse.collapse {
  float: right;
}

@media only screen and (min-width: 1200px) {
  #nav-primary.client .navbar-collapse {
    float: right;
    width: auto;
    margin: 0;
  }
  #nav-primary.client .navbar-collapse .nav {
    float: right;
    width: auto;
    clear: none;
  }
  #nav-primary.client .navbar-collapse .nav > li {
    width: auto;
    clear: none;
  }
  #nav-primary.client .navbar-collapse .nav > li > a {
    width: auto;
  }
}

@media only screen and (min-width: 768px) {
  #nav-primary.client .navbar-collapse .nav .dropdown-menu {
    margin-left: 0;
  }
}

#nav-primary.client .navbar-collapse.collapse.in, #nav-primary.client .navbar-collapse.collapse.collapsing {
  display: block !important;
}

#nav-primary.client .hotdog-nav {
  float: left;
  padding: 40px 5px 40px 0;
}

@media only screen and (min-width: 1200px) {
  #nav-primary.client .hotdog-nav {
    display: none;
  }
}

#nav-primary.client .nav > li > a {
  color: #fff;
}

#nav-primary.client .sub-area {
  background: #00507f;
}

#nav-primary.client .sub-area .nav > li > a {
  color: #fff;
  font-size: 18px;
  font-weight: 300;
}

@media only screen and (min-width: 1200px) {
  #nav-primary.client .sub-area .nav > li > a {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

#nav-primary.client .sub-area .nav .dropdown-toggle .caret {
  top: 49px;
}

#nav-primary,
.nav-primary {
  background: #fff;
  border-bottom: 1px solid #e4e4e4;
}

#nav-primary .shown-st,
.nav-primary .shown-st {
  display: none;
}

#nav-primary.stuck,
.nav-primary.stuck {
  box-shadow: 0 0 10px #555555;
  background: #fff;
}

#nav-primary.stuck .logo,
.nav-primary.stuck .logo {
  display: inline-block;
  overflow: hidden;
  width: 0;
}

#nav-primary.stuck .logo .img-responsive,
.nav-primary.stuck .logo .img-responsive {
  max-width: none;
  width: 130px;
}

#nav-primary.stuck .hidden-st,
.nav-primary.stuck .hidden-st {
  display: none;
}

#nav-primary.stuck .shown-st,
.nav-primary.stuck .shown-st {
  display: block;
}

@media only screen and (min-width: 768px) {
  #nav-primary,
  .nav-primary {
    padding: 0;
    border: 0;
  }
}

@media only screen and (min-width: 992px) {
  #nav-primary,
  .nav-primary {
    background: #eee;
    padding: 0;
    font-size: 11px;
    margin: 0;
  }
}

@media only screen and (min-width: 1200px) {
  #nav-primary,
  .nav-primary {
    font-size: 14px;
  }
}

#nav-primary .hotdog-nav,
.nav-primary .hotdog-nav {
  padding: 15px 0 10px 0;
}

#nav-primary .hotdog-nav .fa,
.nav-primary .hotdog-nav .fa {
  font-size: 24px;
}

#nav-primary .strapline,
.nav-primary .strapline {
  color: #fff;
  display: none;
  font-size: 12px;
  margin: 0;
  padding-top: 20px;
  padding-left: 20px;
  text-align: left;
}

@media only screen and (min-width: 768px) {
  #nav-primary .strapline,
  .nav-primary .strapline {
    display: inline-block;
  }
}

@media only screen and (min-width: 992px) {
  #nav-primary .strapline,
  .nav-primary .strapline {
    display: none;
  }
}

#nav-primary .fa,
.nav-primary .fa {
  bottom: -2px;
  color: #666;
  font-size: 18px;
  position: relative;
  margin-top: -4px;
}

#nav-primary .nav,
.nav-primary .nav {
  padding: 0 0 0 5px;
}

#nav-primary .nav > li:after,
.nav-primary .nav > li:after {
  color: #1f4487;
  content: "|";
  float: left;
  font-weight: 300;
  font-size: 20px;
  padding-top: 10px;
  margin: 0 0 0 -4px;
}

#nav-primary .nav > li:nth-last-child(2):after, #nav-primary .nav > li:nth-last-child(1):after,
.nav-primary .nav > li:nth-last-child(2):after,
.nav-primary .nav > li:nth-last-child(1):after {
  content: "";
}

#nav-primary .nav > li > a,
.nav-primary .nav > li > a {
  border-left: 1px solid transparent;
  border-right: 1px solid transparent;
  float: left;
  padding-left: 15px;
  padding-right: 15px;
  margin: 0 0 0 -5px;
  color: #1f4487;
}

@media only screen and (min-width: 1200px) {
  #nav-primary .nav > li > a,
  .nav-primary .nav > li > a {
    padding-left: 20px;
    padding-right: 20px;
  }
}

#nav-primary .nav > li > a:hover, #nav-primary .nav > li > a:active, #nav-primary .nav > li > a.active, #nav-primary .nav > li > a.active-trail,
.nav-primary .nav > li > a:hover,
.nav-primary .nav > li > a:active,
.nav-primary .nav > li > a.active,
.nav-primary .nav > li > a.active-trail {
  background-color: #fff;
  border-color: #e4e4e4;
}

#nav-primary .nav > li.open > a,
.nav-primary .nav > li.open > a {
  background-color: #fff;
  border-color: #e4e4e4;
}

#nav-primary .nav .disabled,
.nav-primary .nav .disabled {
  opacity: 1;
}

#nav-primary .nav .dropdown-menu,
.nav-primary .nav .dropdown-menu {
  left: -4px;
  border: 0;
  background: #fff;
}

#nav-primary .nav .dropdown-menu a,
.nav-primary .nav .dropdown-menu a {
  color: #1f4487;
}

.dropdown-menu {
  font-size: inherit;
  padding-top: 0;
  -webkit-box-shadow: 0 12px 12px rgba(0, 0, 0, 0.175);
  box-shadow: 0 12px 12px rgba(0, 0, 0, 0.175);
}

.dropdown-menu > li > a {
  color: #9a5fa3;
  padding-top: 10px;
  padding-bottom: 10px;
}

.dropdown-menu .divider {
  margin: 0;
  background-color: #f1f1f1;
}

#nav-primary .nav .dropdown:hover .dropdown-menu,
.nav-primary .nav .dropdown:hover .dropdown-menu {
  display: block;
}

#nav-primary .user-nav,
.nav-primary .user-nav {
  display: inline-block;
  float: right;
}

#nav-primary .user-nav .nav,
.nav-primary .user-nav .nav {
  margin: 0;
  margin-right: -15px;
  font-size: 1px;
}

@media only screen and (min-width: 992px) {
  #nav-primary .user-nav .nav,
  .nav-primary .user-nav .nav {
    margin-right: 0;
  }
}

#nav-primary .user-nav .nav > li,
.nav-primary .user-nav .nav > li {
  display: inline-block;
}

#nav-primary .user-nav .nav > li:after,
.nav-primary .user-nav .nav > li:after {
  content: "|";
  font-size: 20px;
  float: left;
  color: #e4e4e4;
  padding-top: 10px;
  font-weight: 300;
}

#nav-primary .user-nav .nav > li:nth-last-child(1)::after,
.nav-primary .user-nav .nav > li:nth-last-child(1)::after {
  content: "";
}

@media only screen and (min-width: 992px) {
  #nav-primary .user-nav .nav > li:nth-last-child(1)::after,
  .nav-primary .user-nav .nav > li:nth-last-child(1)::after {
    content: "|";
  }
}

#nav-primary .user-nav .nav > li > a,
.nav-primary .user-nav .nav > li > a {
  padding: 18px 15px 11px 15px;
  float: left;
}

@media only screen and (max-width: 1199px) {
  #nav-primary .user-nav .nav > li.login-register a > span,
  .nav-primary .user-nav .nav > li.login-register a > span {
    display: none;
  }
}

@media only screen and (min-width: 1200px) {
  #nav-primary .user-nav .nav > li.login-register,
  .nav-primary .user-nav .nav > li.login-register {
    font-size: 14px;
  }
  #nav-primary .user-nav .nav > li.login-register:after,
  .nav-primary .user-nav .nav > li.login-register:after {
    content: "";
  }
  #nav-primary .user-nav .nav > li.login-register > a,
  .nav-primary .user-nav .nav > li.login-register > a {
    padding: 15px 15px 16px 15px;
    margin-right: 2px;
    background-color: #ddd;
  }
  #nav-primary .user-nav .nav > li.login-register > a > span,
  .nav-primary .user-nav .nav > li.login-register > a > span {
    padding-left: 10px;
  }
  #nav-primary .user-nav .nav > li.login-register > a:hover, #nav-primary .user-nav .nav > li.login-register > a:focus,
  .nav-primary .user-nav .nav > li.login-register > a:hover,
  .nav-primary .user-nav .nav > li.login-register > a:focus {
    background-color: #ccc;
  }
}

#nav-primary .user-nav .nav > li.register,
.nav-primary .user-nav .nav > li.register {
  font-size: 11px;
}

@media only screen and (min-width: 1200px) {
  #nav-primary .user-nav .nav > li.register,
  .nav-primary .user-nav .nav > li.register {
    font-size: 14px;
  }
}

#nav-primary .user-nav .nav > li.register:after,
.nav-primary .user-nav .nav > li.register:after {
  content: "";
}

#nav-primary .user-nav .nav > li.register > a,
.nav-primary .user-nav .nav > li.register > a {
  padding: 15px 15px 16px 15px;
  margin-right: 2px;
  background-color: #ddd;
}

#nav-primary .user-nav .nav > li.register > a > span,
.nav-primary .user-nav .nav > li.register > a > span {
  padding-left: 10px;
}

#nav-primary .user-nav .nav > li.register > a:hover, #nav-primary .user-nav .nav > li.register > a:focus,
.nav-primary .user-nav .nav > li.register > a:hover,
.nav-primary .user-nav .nav > li.register > a:focus {
  background-color: #ccc;
}

#nav-primary .user-nav .nav > li .add-to-shortlist.selected i,
.nav-primary .user-nav .nav > li .add-to-shortlist.selected i {
  color: #f6a000;
}

#nav-primary .dropdown-submenu,
.nav-primary .dropdown-submenu {
  position: relative;
}

#nav-primary .dropdown-submenu .fa,
.nav-primary .dropdown-submenu .fa {
  font-size: 12px;
  color: #1f4487;
  bottom: auto;
  left: 5px;
}

#nav-primary .dropdown-submenu > .dropdown-menu,
.nav-primary .dropdown-submenu > .dropdown-menu {
  top: 100%;
  left: -4px;
  display: none;
  background: #fff;
}

#nav-primary .dropdown-submenu > .dropdown-menu .dropdown-menu,
.nav-primary .dropdown-submenu > .dropdown-menu .dropdown-menu {
  top: -2px;
  left: 100%;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

#nav-primary .dropdown-submenu:hover > .dropdown-menu,
.nav-primary .dropdown-submenu:hover > .dropdown-menu {
  display: block;
}

#nav-primary .hotdog-nav,
#nav-primary .logo,
#nav-primary .strapline {
  display: inline-block;
  float: left;
}

#nav-primary .navbar-collapse {
  padding: 0;
}

#nav-primary .navbar-collapse.collapse {
  display: none !important;
  float: left;
}

@media (min-width: 1025px) {
  #nav-primary .hotdog-nav,
  #nav-primary .logo,
  #nav-primary .strapline {
    display: none;
  }
  #nav-primary .navbar-collapse.collapse {
    display: inline-block !important;
  }
}

#nav-primary.touch-device .hotdog-nav,
#nav-primary.touch-device .logo,
#nav-primary.touch-device .strapline {
  display: inline-block;
}

#nav-primary.touch-device .navbar-collapse.collapse {
  display: none !important;
}

.offcanvas-wrap {
  position: relative;
  -webkit-overflow-scrolling: touch;
}

.offopen {
  overflow-x: hidden;
}

.offcanvas {
  position: relative;
  height: 100%;
}

.offcanvas.in {
  -webkit-transform: translate(85%, 0);
  -ms-transform: translate(85%, 0);
  -o-transform: translate(85%, 0);
  transform: translate(85%, 0);
}

@media only screen and (min-width: 768px) {
  .offcanvas.in {
    -webkit-transform: translate(45%, 0);
    -ms-transform: translate(45%, 0);
    -o-transform: translate(45%, 0);
    transform: translate(45%, 0);
  }
}

.offcanvas-panel {
  position: absolute;
  z-index: 1010;
  top: 0;
  width: 85%;
  left: -85%;
  background-color: white;
  margin-top: -9999em;
}

@media only screen and (min-width: 768px) {
  .offcanvas-panel {
    width: 45%;
    left: -45%;
  }
}

.offcanvas-header {
  text-align: right;
  padding: 15px;
}

.offcanvas-header .close-oc {
  font-size: 26px;
  font-size: 1.85714rem;
  color: #555555;
  cursor: pointer;
}

.offcanvas-header .close-oc:hover .fa {
  color: #000;
}

.offcanvas-body {
  background-color: white;
  padding: 0;
}

.offcanvas-body .nav .open > a:hover, .offcanvas-body .nav .open > a:focus {
  background-color: transparent;
}

.offcanvas-body .nav .open > a.caret:hover, .offcanvas-body .nav .open > a.caret:focus {
  background-color: transparent;
}

.offcanvas-body .nav .open .dropdown-menu a {
  padding-left: 15px;
  background-color: transparent;
}

.offcanvas-body > .navbar-nav {
  margin: 0;
  border-top: 1px solid #cd3563;
  font-size: 18px;
  float: none;
}

.offcanvas-body > .navbar-nav ul {
  padding-left: 5px;
}

.offcanvas-body > .navbar-nav > li {
  float: none;
}

.offcanvas-body > .navbar-nav > li > a {
  border-bottom: 1px solid #cd3563;
  background: #f1f1f1;
  padding-top: 15px;
  padding-bottom: 15px;
}

.offcanvas-body > .navbar-nav > li > a.caret {
  position: absolute;
  z-index: 3;
  right: 0;
  top: 0;
  border: 0;
  background: none;
}

.offcanvas-body > .navbar-nav > li > a.caret:hover, .offcanvas-body > .navbar-nav > li > a.caret:focus, .offcanvas-body > .navbar-nav > li > a.caret:active {
  background: none;
}

.offcanvas-body > .navbar-nav > li > a.caret:after {
  font-size: 18px;
  float: right;
  display: inline-block;
  font-family: FontAwesome;
  content: "";
}

.offcanvas-body > .navbar-nav > li.login-register > a {
  padding-left: 15px;
  padding-right: 15px;
  background-color: #ddd;
}

.offcanvas-body > .navbar-nav > li.login-register > a > i {
  padding-right: 10px;
}

.offcanvas-body > .navbar-nav > li.register > a {
  padding-left: 15px;
  padding-right: 15px;
  background-color: #ddd;
}

.offcanvas-body > .navbar-nav > li.register > a > i {
  padding-right: 10px;
}

.offcanvas-body > .navbar-nav > li .dropdown-submenu.open a .fa {
  display: inline-block;
}

.offcanvas-body > .navbar-nav > li {
  float: none;
}

.offcanvas-body > .navbar-nav > li > a {
  border-bottom: 1px solid #cd3563;
  background: #f1f1f1;
  padding-top: 15px;
  padding-bottom: 15px;
}

.offcanvas-body > .navbar-nav > li.register > a {
  padding-left: 15px;
  padding-right: 15px;
  background-color: #ddd;
}

.offcanvas-body > .navbar-nav > li .dropdown-submenu.open a .fa {
  display: inline-block;
}

.offcanvas-body > .navbar-nav li {
  position: relative;
}

.offcanvas-body > .navbar-nav li a.caret {
  position: absolute;
  z-index: 3;
  right: 0;
  top: 0;
  border: 0;
  background: none;
  height: 50px;
  width: 50px;
}

.offcanvas-body > .navbar-nav li a.caret:after {
  font-size: 18px;
  float: right;
  display: inline-block;
  font-family: FontAwesome;
  content: "";
}

.offcanvas-body > .navbar-nav li.open > a.caret:after {
  content: "";
}

.offcanvas-body > .navbar-nav .dropdown-menu > li > a, .offcanvas-body > .navbar-nav .dropdown-menu .dropdown-header {
  padding-top: 15px;
  padding-bottom: 15px;
}

.offcanvas-body > .navbar-nav li a {
  white-space: normal;
}

.offcanvas-body > .navbar-nav .dropdown-menu .divider {
  background-color: #e4e4e4;
}

.offcanvas-backdrop {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0.4;
  background-color: #000;
  z-index: 1000;
  cursor: pointer;
}

.lt-ie9 .offcanvas {
  position: relative;
  left: 0;
}

.lt-ie9 .offcanvas.in {
  left: 85%;
}

.lt-ie9 .offcanvas-backdrop {
  visibility: hidden;
}

.lt-ie10 .offcanvas-wrap {
  overflow-y: hidden;
}

.offcanvas-panel .navbar-nav .open .dropdown-menu {
  position: static;
  float: none;
  width: auto;
  margin-top: 0;
  background-color: transparent;
  border: 0;
  box-shadow: none;
}

.offcanvas-panel .navbar-nav .open .dropdown-menu > li > a,
.offcanvas-panel .navbar-nav .open .dropdown-menu .dropdown-header {
  padding: 15px 15px 15px 25px;
}

.offcanvas-panel .navbar-nav .open .dropdown-menu > li > a {
  line-height: 21px;
}

.offcanvas-panel .navbar-nav .open .dropdown-menu > li > a:hover, .offcanvas-panel .navbar-nav .open .dropdown-menu > li > a:focus {
  background-image: none;
}

.offcanvas .dropdown-menu > .active > a:not(.caret), .offcanvas .dropdown-menu > .active > a:not(.caret):hover, .offcanvas .dropdown-menu > .active > a:not(.caret):focus {
  color: #9a5fa3;
}

.offcanvas .dropdown-menu > .active > a:not(.caret).active, .offcanvas .dropdown-menu > .active > a:not(.caret).active:hover, .offcanvas .dropdown-menu > .active > a:not(.caret).active:focus {
  color: #333333;
}

.previous-next .btn, .previous-next #sliding-popup .popup-content #popup-buttons button, #sliding-popup .popup-content #popup-buttons .previous-next button {
  font-size: 18px;
}

.previous-next .btn .btn-icon, .previous-next #sliding-popup .popup-content #popup-buttons button .btn-icon, #sliding-popup .popup-content #popup-buttons .previous-next button .btn-icon {
  color: #cd3563;
}

.previous-next .btn.btn-prev .btn-icon, .previous-next #sliding-popup .popup-content #popup-buttons button.btn-prev .btn-icon, #sliding-popup .popup-content #popup-buttons .previous-next button.btn-prev .btn-icon {
  background-color: transparent;
  margin-right: 5px;
}

.previous-next .btn.btn-next .btn-icon, .previous-next #sliding-popup .popup-content #popup-buttons button.btn-next .btn-icon, #sliding-popup .popup-content #popup-buttons .previous-next button.btn-next .btn-icon {
  background-color: transparent;
  margin-left: 5px;
}

.progress {
  height: 25px;
}

.progress-bar {
  line-height: 28px;
}

.search-bg-video .search-bg-video__wrapper {
  overflow: hidden;
  position: relative;
}

@media only screen and (min-width: 768px) {
  .search-bg-video .search-bg-video__wrapper {
    height: 500px;
  }
}

.search-bg-video .search-bg-video__iframe {
  background-color: #4a4a49;
  display: none;
  padding: 56.25% 0 0 0;
  position: relative;
}

@media only screen and (min-width: 992px) {
  .search-bg-video .search-bg-video__iframe {
    display: block;
  }
}

@media only screen and (min-width: 768px) {
  .search-bg-video .search-bg-video__overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
  }
}

.search-bg-video .search-bg-video__overlay--content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  margin: auto;
  text-align: center;
}

.search-form {
  color: #fff;
  font-size: 16px;
  padding: 15px 0;
  text-align: center;
  -webkit-backface-visibility: hidden;
  -webkit-transition: font-size 0.9s cubic-bezier(0.23, 1, 0.32, 1);
  -o-transition: font-size 0.9s cubic-bezier(0.23, 1, 0.32, 1);
  transition: font-size 0.9s cubic-bezier(0.23, 1, 0.32, 1);
}

@media only screen and (min-width: 992px) {
  .search-form {
    font-size: 18px;
  }
}

@media only screen and (min-width: 1200px) {
  .search-form.focused {
    font-size: 27px;
  }
  .search-form.focused input.form-control {
    font-size: inherit;
    height: auto;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 992px) {
  .search-form.focused .control-label {
    -webkit-backface-visibility: hidden;
    -webkit-transition: font-size 0.9s cubic-bezier(0.23, 1, 0.32, 1);
    -o-transition: font-size 0.9s cubic-bezier(0.23, 1, 0.32, 1);
    transition: font-size 0.9s cubic-bezier(0.23, 1, 0.32, 1);
    font-size: 38px;
  }
}

@media only screen and (min-width: 1200px) {
  .search-form.focused .auto-wrapper .dropdown {
    top: 43px;
  }
  .search-form.focused .btn-with-icon.btn.btn-search, .search-form.focused #sliding-popup .popup-content #popup-buttons button.btn-with-icon.btn-search, #sliding-popup .popup-content #popup-buttons .search-form.focused button.btn-with-icon.btn-search {
    font-size: 26px;
  }
  .search-form.focused .btn-with-icon.btn.btn-search .fa-search, .search-form.focused #sliding-popup .popup-content #popup-buttons button.btn-with-icon.btn-search .fa-search, #sliding-popup .popup-content #popup-buttons .search-form.focused button.btn-with-icon.btn-search .fa-search {
    font-size: 40px;
  }
}

.search-form input.form-control {
  border: none;
  box-shadow: none;
}

.search-form .input-group-addon {
  background-color: #fff;
  border: none;
  box-shadow: none;
  color: #777777;
  font-size: 24px;
}

.search-form span.search-label {
  display: none;
}

@media only screen and (min-width: 992px) {
  .search-form span.search-label {
    display: inline;
  }
}

.search-form a {
  font-size: 16px;
  color: white;
  text-decoration: underline;
  margin: 15px 0 0 0;
  display: block;
  font-weight: 300;
  text-align: right;
}

.search-form a:hover, .search-form a:focus {
  text-decoration: none;
  color: white;
  outline: none;
}

@media only screen and (min-width: 992px) {
  .search-form a {
    clear: left;
  }
}

.search-form .wrap {
  padding: 0 15px;
}

@media only screen and (min-width: 768px) {
  .search-form .wrap {
    display: inline-block;
  }
}

@media only screen and (min-width: 992px) {
  .search-form .wrap {
    padding: 0;
  }
}

.search-form .input-group {
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .search-form .input-group {
    width: 290px;
  }
}

.search-form .auto-wrapper {
  display: inline;
  position: relative;
}

.search-form .auto-wrapper .input-group {
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .search-form .auto-wrapper .input-group {
    width: 285px;
  }
}

.search-form .auto-wrapper .form-control {
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .search-form .auto-wrapper .form-control {
    width: 285px;
  }
}

.search-form .auto-wrapper .form-select {
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .search-form .auto-wrapper .form-select {
    width: 285px;
  }
}

.search-form .auto-wrapper .dropdown {
  position: absolute;
  left: 0;
  top: 43px;
  z-index: 100;
  -webkit-box-shadow: 0 6px 6px rgba(0, 0, 0, 0.175);
  box-shadow: 0 6px 6px rgba(0, 0, 0, 0.175);
  background: #fff;
  color: #555555;
  min-width: 100%;
  border-radius: 5px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  display: none;
}

@media only screen and (min-width: 992px) {
  .search-form .auto-wrapper .dropdown {
    left: 0;
  }
}

.search-form .auto-wrapper .dropdown > .dropdown-menu {
  color: #555555;
  min-width: 100%;
  text-align: left;
  font-size: 16px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border: none;
}

.search-form .auto-wrapper .dropdown > .dropdown-menu > li > a {
  display: block;
  color: #777777;
  margin: 0;
  padding: 10px 15px;
  text-decoration: none;
  text-align: left;
  white-space: normal;
}

.search-form .auto-wrapper .dropdown > .dropdown-menu > li > a:hover, .search-form .auto-wrapper .dropdown > .dropdown-menu > li > a:focus, .search-form .auto-wrapper .dropdown > .dropdown-menu > li > a:active {
  background-color: whitesmoke;
}

.search-form .auto-wrapper .dropdown > .dropdown-menu > .active > a {
  background-color: whitesmoke;
}

.search-form .control-label {
  display: none;
}

@media only screen and (min-width: 992px) {
  .search-form .control-label {
    display: inline-block;
    color: white;
    font-size: 28px;
    font-weight: 300;
    padding-left: 15px;
    padding-right: 15px;
  }
}

.search-form .btn-with-icon.btn.btn-search, .search-form #sliding-popup .popup-content #popup-buttons button.btn-with-icon.btn-search, #sliding-popup .popup-content #popup-buttons .search-form button.btn-with-icon.btn-search {
  width: 100%;
  display: inline-table;
}

@media only screen and (min-width: 768px) {
  .search-form .btn-with-icon.btn.btn-search, .search-form #sliding-popup .popup-content #popup-buttons button.btn-with-icon.btn-search, #sliding-popup .popup-content #popup-buttons .search-form button.btn-with-icon.btn-search {
    width: auto;
    margin-left: 10px;
    margin-bottom: 0;
  }
}

.search-form .btn-with-icon.btn.btn-search .btn-text, .search-form #sliding-popup .popup-content #popup-buttons button.btn-with-icon.btn-search .btn-text, #sliding-popup .popup-content #popup-buttons .search-form button.btn-with-icon.btn-search .btn-text {
  float: left;
  font-size: 19.8px;
  padding: 10px 15px;
}

@media only screen and (min-width: 768px) {
  .search-form .btn-with-icon.btn.btn-search .btn-text, .search-form #sliding-popup .popup-content #popup-buttons button.btn-with-icon.btn-search .btn-text, #sliding-popup .popup-content #popup-buttons .search-form button.btn-with-icon.btn-search .btn-text {
    display: none;
  }
}

.search-form .btn-with-icon.btn.btn-search .btn-icon, .search-form #sliding-popup .popup-content #popup-buttons button.btn-with-icon.btn-search .btn-icon, #sliding-popup .popup-content #popup-buttons .search-form button.btn-with-icon.btn-search .btn-icon {
  float: right;
  padding-top: 6px;
  padding-bottom: 6px;
}

@media only screen and (min-width: 768px) {
  .search-form .btn-with-icon.btn.btn-search .btn-icon, .search-form #sliding-popup .popup-content #popup-buttons button.btn-with-icon.btn-search .btn-icon, #sliding-popup .popup-content #popup-buttons .search-form button.btn-with-icon.btn-search .btn-icon {
    float: none;
    border-radius: 4px;
    background: none;
  }
}

.search-form .btn-with-icon.btn.btn-search .fa-search, .search-form #sliding-popup .popup-content #popup-buttons button.btn-with-icon.btn-search .fa-search, #sliding-popup .popup-content #popup-buttons .search-form button.btn-with-icon.btn-search .fa-search {
  font-size: 31px;
  padding-top: 7px;
  padding-bottom: 11px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .search-form #search-location {
    margin-left: 11px;
  }
}

.pac-container {
  font-family: "Montserrat", sans-serif;
}

.pac-container .pac-item {
  color: #777777;
  font-size: 12px;
}

.pac-container .pac-item .pac-item-query {
  font-size: 16px;
  padding-right: 8px;
}

.pac-logo:after {
  padding: 8px;
  background-position: 95%;
  height: 30px;
}

.lt-ie9 .search-form .form-inline .form-group, .lt-ie9 .search-form input.form-control {
  zoom: 1;
  display: inline;
}

.lt-ie9 .search-form .form-group {
  padding-bottom: 10px;
}

.lt-ie9 .search-form .btn-secondary, .lt-ie9 .search-form #sliding-popup .popup-content #popup-buttons button, #sliding-popup .popup-content #popup-buttons .lt-ie9 .search-form button {
  margin-top: 20px;
}

.lt-ie9 .search-form a {
  text-align: center;
}

.lt-ie9 .search-form .wrap {
  zoom: 1;
  display: inline;
}

.search-job-sectors h3 {
  font-weight: 700;
  color: #fff;
  margin-top: 0;
}

.search-job-sectors .list-job-sectors {
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .search-job-sectors .list-job-sectors {
    padding-left: 10%;
    padding-right: 10%;
  }
}

.search-job-sectors .list-job-sectors li {
  padding: 0;
  margin-left: 5px;
  margin-right: 5px;
  margin-bottom: 10px;
}

@media only screen and (min-width: 992px) {
  .search-job-sectors .list-job-sectors li {
    margin-left: 10px;
    margin-right: 10px;
    margin-bottom: 20px;
  }
}

.search-job-sectors .list-job-sectors li .btn, .search-job-sectors .list-job-sectors li #sliding-popup .popup-content #popup-buttons button, #sliding-popup .popup-content #popup-buttons .search-job-sectors .list-job-sectors li button {
  font-size: 16px;
  color: white;
}

@media only screen and (min-width: 768px) {
  .search-job-sectors .list-job-sectors li .btn, .search-job-sectors .list-job-sectors li #sliding-popup .popup-content #popup-buttons button, #sliding-popup .popup-content #popup-buttons .search-job-sectors .list-job-sectors li button {
    font-size: 16px;
  }
}

@media only screen and (min-width: 992px) {
  .search-job-sectors .list-job-sectors li .btn, .search-job-sectors .list-job-sectors li #sliding-popup .popup-content #popup-buttons button, #sliding-popup .popup-content #popup-buttons .search-job-sectors .list-job-sectors li button {
    font-size: 18px;
  }
}

.share-bar .list-utils {
  text-align: center;
  margin: 5px 0;
}

@media only screen and (min-width: 992px) {
  .share-bar .list-utils {
    text-align: right;
  }
}

.share-bar .list-share {
  text-align: left;
}

.share-bar .list-share li {
  padding-right: 0;
}

.share-bar .list-share li a {
  padding: 4px;
  width: 30px;
}

.share-bar .list-share li a .fa-lg {
  font-size: 16px;
}

.social-bar .list-share {
  font-size: 16px;
  margin: 0;
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .social-bar .list-share {
    text-align: left;
  }
}

.social-bar .list-share li {
  padding-right: 5px;
}

.social-bar .list-share li a {
  padding: 12px;
  width: 46px;
}

.social-bar .form-control {
  border-color: transparent;
  box-shadow: none;
}

.social-bar .col-2 {
  margin-top: 0;
}

.list-share {
  text-align: right;
  font-size: 16px;
  margin-bottom: 0;
}

@media only screen and (min-width: 992px) {
  .list-share {
    text-align: right;
  }
}

.list-share li {
  padding-right: 2px;
}

.list-share li a {
  background: #555555;
  color: #fff;
  display: inline-block;
  padding: 8px;
  text-align: center;
  width: 34px;
}

.list-share li.facebook a {
  background-color: #3b5998;
}

.list-share li.twitter a {
  background-color: #55acee;
}

.list-share li.linkedin a {
  background-color: #007bb6;
}

.list-share li a:hover {
  background: #333333;
}

.static-slider {
  position: fixed;
  right: 0;
  top: 75%;
  -webkit-transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  transform: rotate(-90deg);
  z-index: 100;
}

.static-slider span {
  position: fixed;
  bottom: 3px;
}

.static-slider span a {
  box-shadow: -3px 3px 10px rgba(0, 0, 0, 0.5);
}

.list-utils li a {
  color: #777777;
}

.list-utils li a:hover {
  color: #7c4c83;
  text-decoration: none;
}

.list-utils li a i {
  margin-right: 5px;
}

.well {
  border-radius: 0;
}

.panel-about {
  background: #e6eff4;
  border: 0;
}

.panel-about .img-profile {
  border-bottom: 5px solid #cd3563;
}

.panel-accordion {
  background: #e5eff4;
  border: 0;
}

.panel-accordion .panel-heading {
  background: #c8dde7;
}

.panel-accordion .panel-heading h3 {
  margin-bottom: 0;
}

.panel-accordion .panel-group {
  margin-bottom: 0;
  padding: 5px 0;
}

.panel-accordion .panel-group .panel {
  margin-top: 0;
}

.panel-accordion .panel-group .panel .collapse-icon-angle:after {
  font-size: 24px;
  margin-top: -5px;
}

.panel-accordion .panel-group .panel .panel-heading {
  background: none;
  position: relative;
}

.panel-accordion .panel-group .panel .panel-heading p {
  margin: 0;
  color: #9a5fa3;
  font-weight: 300;
}

.panel-accordion .panel-group .panel .panel-heading a.accordion-trigger {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  padding: 10px 15px;
}

.panel-accordion .panel-group .panel .panel-heading a.accordion-trigger:hover p {
  color: #000;
}

.panel-accordion .panel-group .panel .panel-body {
  padding-top: 0;
  padding-bottom: 0;
}

.panel-accordion .panel-group .panel .panel-body ul {
  list-style: none;
}

.panel-accordion .panel-group .panel .panel-body ul li a {
  padding-bottom: 5px;
  display: block;
}

.panel-accordion a.panel-heading {
  display: block;
}

.panel-job-manager {
  background: #e6eff4;
  border: 0;
}

.panel-job-manager h3 a {
  text-decoration: underline;
}

.panel-job-manager h3 a:hover {
  text-decoration: none;
}

.panel-job-manager .panel-body {
  font-size: 18px;
  color: #9a5fa3;
  padding-top: 30px;
}

.panel-job-manager .panel-body .img-profile {
  border-bottom: 5px solid #cd3563;
}

.panel-job-manager .panel-footer {
  background: #e6eff4;
  text-align: center;
  border-color: #fff;
}

.panel-job-manager .panel-footer p {
  padding-top: 15px;
}

.panel-job-manager .panel-footer p strong {
  color: #9a5fa3;
  font-size: 18px;
  font-weight: 400;
}

.panel-job-manager .panel-footer .btn, .panel-job-manager .panel-footer #sliding-popup .popup-content #popup-buttons button, #sliding-popup .popup-content #popup-buttons .panel-job-manager .panel-footer button {
  margin: 10px 0;
  white-space: normal;
}

.panel-job-manager .panel-footer .btn-with-icon {
  display: inline-table;
}

.panel-listing {
  background: #f1f1f1;
  margin-bottom: 0;
  border: 0;
  -webkit-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
}

.panel-listing .panel-heading {
  background: #e4e4e4;
}

.panel-listing .panel-body {
  border-bottom: 1px solid #fff;
}

.panel-listing .panel-body .title {
  display: block;
  font-size: 18px;
  margin-bottom: 5px;
}

.panel-listing .panel-body .highlight {
  color: #333333;
}

.panel-listing .list-group {
  font-size: 16px;
}

.panel-listing .list-group .list-group-item {
  padding: 0;
  background-color: transparent;
  border-color: #fff;
}

.panel-listing .list-group .list-group-item a {
  display: block;
  padding: 10px 15px;
}

.panel-listing .btn .btn-icon, .panel-listing #sliding-popup .popup-content #popup-buttons button .btn-icon, #sliding-popup .popup-content #popup-buttons .panel-listing button .btn-icon {
  border-radius: 0;
}

.panel {
  box-shadow: none;
}

.panel .panel-group .panel-heading + .panel-collapse > .panel-body,
.panel .panel-group .panel-heading + .panel-collapse > .list-group {
  border-top: 0;
}

.panel.panel-bg-default {
  background-color: #f1f1f1;
}

.panel.panel-bg-primary {
  background-color: #e6eff4;
}

.panel .list-group-icons {
  font-size: 16px;
}

.panel .list-group-icons .list-group-item {
  background-color: #fff;
  border-color: #c7d0e1;
}

.panel .list-group-icons .status-icon:after {
  display: inline-block;
  font-family: FontAwesome;
  font-size: 18px;
  float: right;
}

.panel .list-group-icons .status-icon.status-complete:after {
  color: #5cb85c;
  content: "";
}

.panel .list-group-icons .status-icon.status-incomplete:after {
  color: #d9534f;
  content: "";
}

.panel .small-author {
  font-size: 85%;
}

.panel .btn, .panel #sliding-popup .popup-content #popup-buttons button, #sliding-popup .popup-content #popup-buttons .panel button {
  font-size: 17px;
}

.panel .btn.btn-block, .panel #sliding-popup .popup-content #popup-buttons button.btn-block, #sliding-popup .popup-content #popup-buttons .panel button.btn-block {
  border-radius: 0;
}

.panel .btn .btn-text, .panel #sliding-popup .popup-content #popup-buttons button .btn-text, #sliding-popup .popup-content #popup-buttons .panel button .btn-text {
  padding-top: 12px;
  padding-bottom: 12px;
}

.panel .btn .btn-icon, .panel #sliding-popup .popup-content #popup-buttons button .btn-icon, #sliding-popup .popup-content #popup-buttons .panel button .btn-icon {
  padding-left: 18px;
  padding-right: 18px;
}

.panel-hover {
  text-align: center;
  float: left;
  margin: 0;
  position: relative;
  overflow: hidden;
  width: 100%;
}

.panel-hover,
.item-hover,
.item-hover .mask,
.item-img,
.item-info {
  width: 100%;
  height: 230px;
}

@media only screen and (min-width: 768px) {
  .panel-hover,
  .item-hover,
  .item-hover .mask,
  .item-img,
  .item-info {
    height: 350px;
  }
}

@media only screen and (min-width: 992px) {
  .panel-hover,
  .item-hover,
  .item-hover .mask,
  .item-img,
  .item-info {
    height: 600px;
  }
}

.row-1-1 .panel-hover,
.row-1-1 .item-hover,
.row-1-1 .item-hover .mask,
.row-1-1 .item-img,
.row-1-1 .item-info {
  width: 100%;
  height: 230px;
}

@media only screen and (min-width: 480px) {
  .row-1-1 .panel-hover,
  .row-1-1 .item-hover,
  .row-1-1 .item-hover .mask,
  .row-1-1 .item-img,
  .row-1-1 .item-info {
    height: 170px;
  }
}

@media only screen and (min-width: 768px) {
  .row-1-1 .panel-hover,
  .row-1-1 .item-hover,
  .row-1-1 .item-hover .mask,
  .row-1-1 .item-img,
  .row-1-1 .item-info {
    height: 200px;
  }
}

@media only screen and (min-width: 992px) {
  .row-1-1 .panel-hover,
  .row-1-1 .item-hover,
  .row-1-1 .item-hover .mask,
  .row-1-1 .item-img,
  .row-1-1 .item-info {
    height: 300px;
  }
}

@media only screen and (min-width: 1200px) {
  .row-1-1 .panel-hover,
  .row-1-1 .item-hover,
  .row-1-1 .item-hover .mask,
  .row-1-1 .item-img,
  .row-1-1 .item-info {
    height: 350px;
  }
}

@media only screen and (min-width: 480px) and (max-width: 767px) {
  .row-1-1 .item-type-line .item-info {
    font-size: 0.6em;
  }
  .row-1-1 .item-type-line .item-info .headline {
    font-size: 1.3em;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .row-1-1 .item-type-line .item-info {
    font-size: 0.8em;
  }
  .row-1-1 .item-type-line .item-info .headline {
    font-size: 1.6em;
  }
}

.row-1-1-1 .panel-hover,
.row-1-1-1 .item-hover,
.row-1-1-1 .item-hover .mask,
.row-1-1-1 .item-img,
.row-1-1-1 .item-info {
  width: 100%;
  height: 190px;
}

@media only screen and (min-width: 480px) {
  .row-1-1-1 .panel-hover,
  .row-1-1-1 .item-hover,
  .row-1-1-1 .item-hover .mask,
  .row-1-1-1 .item-img,
  .row-1-1-1 .item-info {
    height: 190px;
  }
}

@media only screen and (min-width: 768px) {
  .row-1-1-1 .panel-hover,
  .row-1-1-1 .item-hover,
  .row-1-1-1 .item-hover .mask,
  .row-1-1-1 .item-img,
  .row-1-1-1 .item-info {
    height: 140px;
  }
}

@media only screen and (min-width: 992px) {
  .row-1-1-1 .panel-hover,
  .row-1-1-1 .item-hover,
  .row-1-1-1 .item-hover .mask,
  .row-1-1-1 .item-img,
  .row-1-1-1 .item-info {
    height: 190px;
  }
}

@media only screen and (min-width: 1200px) {
  .row-1-1-1 .panel-hover,
  .row-1-1-1 .item-hover,
  .row-1-1-1 .item-hover .mask,
  .row-1-1-1 .item-img,
  .row-1-1-1 .item-info {
    height: 220px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .row-1-1-1 .item-type-line .item-info {
    font-size: 0.6em;
  }
  .row-1-1-1 .item-type-line .item-info .headline {
    font-size: 1.3em;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .row-1-1-1 .item-type-line .item-info {
    font-size: 0.8em;
  }
  .row-1-1-1 .item-type-line .item-info .headline {
    font-size: 1.6em;
  }
}

.row-1-1-1-1 .panel-hover,
.row-1-1-1-1 .item-hover,
.row-1-1-1-1 .item-hover .mask,
.row-1-1-1-1 .item-img,
.row-1-1-1-1 .item-info {
  width: 100%;
  height: 190px;
}

@media only screen and (min-width: 480px) {
  .row-1-1-1-1 .panel-hover,
  .row-1-1-1-1 .item-hover,
  .row-1-1-1-1 .item-hover .mask,
  .row-1-1-1-1 .item-img,
  .row-1-1-1-1 .item-info {
    height: 190px;
  }
}

@media only screen and (min-width: 768px) {
  .row-1-1-1-1 .panel-hover,
  .row-1-1-1-1 .item-hover,
  .row-1-1-1-1 .item-hover .mask,
  .row-1-1-1-1 .item-img,
  .row-1-1-1-1 .item-info {
    height: 400px;
  }
}

@media only screen and (min-width: 992px) {
  .row-1-1-1-1 .panel-hover,
  .row-1-1-1-1 .item-hover,
  .row-1-1-1-1 .item-hover .mask,
  .row-1-1-1-1 .item-img,
  .row-1-1-1-1 .item-info {
    height: 135px;
  }
}

@media only screen and (min-width: 1200px) {
  .row-1-1-1-1 .panel-hover,
  .row-1-1-1-1 .item-hover,
  .row-1-1-1-1 .item-hover .mask,
  .row-1-1-1-1 .item-img,
  .row-1-1-1-1 .item-info {
    height: 170px;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .row-1-1-1-1 .item-type-line .item-info {
    font-size: 0.6em;
  }
  .row-1-1-1-1 .item-type-line .item-info .headline {
    font-size: 1.3em;
  }
}

@media only screen and (min-width: 1200px) {
  .row-1-1-1-1 .item-type-line .item-info {
    font-size: 0.8em;
  }
  .row-1-1-1-1 .item-type-line .item-info .headline {
    font-size: 1.6em;
  }
}

.item-hover,
.item-hover .mask,
.item-img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.item-type-line .item-hover {
  z-index: 100;
  -webkit-transition: all 300ms ease-out;
  -moz-transition: all 300ms ease-out;
  -o-transition: all 300ms ease-out;
  transition: all 300ms ease-out;
  opacity: 0;
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  padding: 0 15px;
  display: table;
}

.item-type-line .item-info {
  color: #ffffff;
  display: table-cell;
  vertical-align: middle;
  position: relative;
  z-index: 5;
}

.item-type-line .item-info .headline {
  font-size: 24px;
}

.item-type-line .item-info .line {
  height: 1px;
  width: 0%;
  margin: 10px auto;
  background-color: #ffffff;
  -webkit-transition: all 500ms ease-out;
  -moz-transition: all 500ms ease-out;
  -o-transition: all 500ms ease-out;
  transition: all 500ms ease-out;
}

.item-type-line .item-info .info {
  display: block;
  padding: 0 0 5px 0;
}

.item-type-line .item-info a {
  color: #fff;
  text-decoration: underline;
}

.item-type-line .item-hover .mask {
  background-color: #4a4a49;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
  filter: alpha(opacity=50);
  opacity: 0.5;
  z-index: 0;
}

.item-type-line .item-hover:hover .line {
  width: 40%;
}

.item-type-line .item-hover:hover {
  opacity: 1;
  cursor: default;
}

.item-img {
  background-color: #4a4a49;
  z-index: 0;
}

.item-img img {
  width: 100%;
}

.panel-promo {
  border: 0;
  color: #fff;
  font-size: 18px;
}

.panel-promo img {
  float: right;
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0);
  box-shadow: 0 0 5px rgba(0, 0, 0, 0);
}

.panel-promo a {
  color: #fff;
}

.search-home .search-job-sectors {
  /*display:none;*/
  padding-bottom: 50px;
}

.bg-instagram {
  background: #555555;
}

.bg-instagram .slick-dots li, .bg-instagram .slick-dots:before, .bg-instagram .slick-dots:after {
  background: #555555;
}

.bg-instagram .slick-prev:before, .bg-instagram .slick-prev:after, .bg-instagram .slick-next:before, .bg-instagram .slick-next:after {
  color: #fff;
}

.bg-sol-contact {
  background: #cbcacd;
}

.bg-sol-contact h2.pane-title {
  text-align: center;
}

.page-featured-recruiters {
  font-family: "Arial", Helvetica Neue, Helvetica, sans-serif;
  color: #3d3935;
}

.page-featured-recruiters .lead, .page-featured-recruiters .lead-lg, .page-featured-recruiters .lead-lg {
  color: #3d3935;
}

.page-featured-recruiters h1, .page-featured-recruiters h2, .page-featured-recruiters h3, .page-featured-recruiters h4, .page-featured-recruiters h5, .page-featured-recruiters h6, .page-featured-recruiters .h1, .page-featured-recruiters .h2, .page-featured-recruiters .h3, .page-featured-recruiters .h4, .page-featured-recruiters .h5, .page-featured-recruiters .h6 {
  color: #00507f;
}

.page-featured-recruiters .btn-primary {
  color: #3d3935;
  background-color: #c5e86e;
}

.page-featured-recruiters .btn-primary .btn-icon {
  background-color: #9dcf21;
  color: #3d3935;
}

.page-featured-recruiters .btn-primary:hover {
  color: #3d3935;
  background-color: #9dcf21;
}

.page-featured-recruiters .btn-primary:active {
  color: #3d3935;
  background-color: #7ca31a;
}

.page-featured-recruiters .filter-listing select {
  border-color: #c8dde7;
}

.page-featured-recruiters .filter-listing select .border-bottom-gray {
  border-bottom: 1px solid #e6e6e6;
}

.page-featured-recruiters .filter-listing select .border-top-gray {
  border-top: 1px solid #e6e6e6;
}

.page-featured-recruiters .listing-heading .list-utils li a {
  color: #949ca1;
}

.page-featured-recruiters .job-listings .listing .listing-header {
  background-color: #d6d7d8;
}

.page-featured-recruiters .job-listings .listing .listing-header h3 a {
  color: #3d3935;
}

.page-featured-recruiters .job-listings .listing .listing-header h3 .label-justadded {
  background-color: #da961a;
}

.page-featured-recruiters .job-listings .listing .listing-header h3 .label-featured {
  background-color: #005b85;
}

.page-featured-recruiters .job-listings .listing .listing-header .add-to-shortlist {
  background-color: #e4e4e4;
}

.page-featured-recruiters .job-listings .listing .listing-header .add-to-shortlist i {
  color: #949ca1;
}

.page-featured-recruiters .job-listings .listing .listing-content ul li {
  color: #00507f;
}

.page-featured-recruiters .job-listings .listing .listing-content ul li::before {
  color: #949ca1;
}

.page-featured-recruiters .previous-next .btn, .page-featured-recruiters .previous-next #sliding-popup .popup-content #popup-buttons button, #sliding-popup .popup-content #popup-buttons .page-featured-recruiters .previous-next button {
  font-weight: 100;
}

.page-featured-recruiters .offcanvas-panel {
  background-color: black;
}

.page-featured-recruiters .border-top-orange {
  border-top: 3px solid #e59500;
}

.page-featured-recruiters .bg-default {
  background-color: #eeeeee;
}

.page-featured-recruiters .footer-legal p {
  color: #909090;
}

.page-featured-recruiters .footer-legal .footer-legal-nav li a {
  color: #909090;
}

.page-featured-recruiters .btn, .page-featured-recruiters #sliding-popup .popup-content #popup-buttons button, #sliding-popup .popup-content #popup-buttons .page-featured-recruiters button, .page-featured-recruiters #sliding-popup .popup-content #popup-buttons button {
  font-size: 16px;
}

.page-featured-recruiters .btn-cancel {
  color: #0076b0;
  background-color: #eeeeee;
}

.page-featured-recruiters .accordion.panel-group .panel .panel-heading {
  border-color: #c7d0e1;
  color: #9a5fa3;
}

.page-featured-recruiters .accordion.panel-group .panel .panel-heading + .panel-collapse > .panel-body,
.page-featured-recruiters .accordion.panel-group .panel .panel-heading + .panel-collapse > .list-group {
  border-color: #c7d0e1;
}

.page-featured-recruiters .accordion.panel-group .panel .panel-heading + .panel-collapse > .panel-body .lead, .page-featured-recruiters .accordion.panel-group .panel .panel-heading + .panel-collapse > .panel-body .lead-lg,
.page-featured-recruiters .accordion.panel-group .panel .panel-heading + .panel-collapse > .list-group .lead,
.page-featured-recruiters .accordion.panel-group .panel .panel-heading + .panel-collapse > .list-group .lead-lg {
  color: #777777;
  font-size: 18px;
}

.page-featured-recruiters .accordion.panel-group .panel .panel-title {
  font-size: 20px;
}

.page-featured-recruiters .accordion.panel-group .panel .panel-title::after {
  font-size: 20px;
}

.page-featured-recruiters .accordion.panel-group .panel .collapsed {
  border-color: transparent;
  background-color: #e6eff4;
}

.page-featured-recruiters .panel-title {
  color: #00507f;
}

.page-test .console-col-wrap {
  padding: 20px;
  background-color: #f1f1f1;
  border: 1px dashed #555555;
}

.page-test .row-1-2, .page-test .row-1-1-1-1, .page-test .row-1-1-1-1-1-1 {
  padding-top: 15px;
}

.vow-content .hero-container {
  position: relative;
}

.vow-content .lead, .vow-content .lead-lg {
  text-align: center;
  width: 90%;
}

.vow-content .section-heading {
  background-color: #9a5fa3;
  text-align: left;
  margin-bottom: 0;
}

.vow-content .section-heading h2 {
  color: white;
  font-size: 21px;
  font-weight: 500;
  margin: 0;
  padding: 20px 0;
}

.vow-content .section-heading h2 span {
  display: block;
}

@media only screen and (min-width: 992px) {
  .vow-content .section-heading h2 span {
    display: inline;
  }
}

@media only screen and (min-width: 992px) {
  .vow-content .section-heading h2 {
    font-size: 30px;
    line-height: 100px;
    padding: 0;
  }
  .vow-content .section-heading h2.heading-bg-people {
    background: url(/sites/networkers/files/wysiwyg/images/vow/2017/header-people.png) right bottom no-repeat;
  }
  .vow-content .section-heading h2.heading-bg-hands {
    background: url(/sites/networkers/files/wysiwyg/images/vow/2017/header-hands.png) right bottom no-repeat;
  }
}

.vow-content .section-content .h3 {
  font-size: 19.88px;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 0;
  padding: 20px 0;
}

@media only screen and (min-width: 992px) {
  .vow-content .section-content .h3 {
    font-size: 33.88px;
    padding: 70px 0;
  }
  .vow-content .section-content .h3.heading-bg-globe {
    background: url(/sites/networkers/files/wysiwyg/images/vow/2017/header-globe.png) left bottom no-repeat;
    padding: 60px 0 40px 200px;
  }
}

.vow-content .section-content .h3 span {
  display: block;
}

.vow-content .section-content .h3 span.heading-style-1 {
  color: #9a5fa3;
}

.vow-content .section-content .h3 span.heading-style-2 {
  color: white;
}

.vow-content .section-content .h3 span.heading-style-3 {
  color: #127eb9;
}

.vow-content .section-content.bg-filled {
  background-color: #3b3b3e;
}

.vow-content .section-accordion {
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 992px) {
  .vow-content .section-accordion .col-1 {
    padding-left: 0;
    padding-right: 0;
  }
}

.vow-content .section-accordion .panel-group {
  margin-bottom: 0;
}

.vow-content .section-accordion .panel-group .panel {
  font-size: 28px;
}

.vow-content .section-accordion .panel-group .panel .panel-heading {
  background-color: #464549;
  border-top: none;
  color: white;
  padding: 20px 0;
  text-decoration: none;
}

.vow-content .section-accordion .panel-group .panel .panel-heading .panel-title {
  position: relative;
}

.vow-content .section-accordion .panel-group .panel .panel-heading .panel-title span {
  display: inline-block;
  width: 85%;
}

@media only screen and (min-width: 992px) {
  .vow-content .section-accordion .panel-group .panel .panel-heading .panel-title span {
    display: inline;
    width: 100%;
  }
}

.vow-content .section-accordion .panel-group .panel .panel-heading .panel-title:after {
  background-color: #3b3b3e;
  border-radius: 50%;
  width: 45px;
  height: 45px;
  padding-top: 9px;
  text-align: center;
  position: absolute;
  top: -10px;
  right: 0;
}

.vow-jump-menu {
  margin-top: 30px;
  margin-bottom: 30px;
}

@media only screen and (min-width: 768px) {
  .vow-jump-menu {
    text-align: center;
  }
}

.vow-jump-menu .pane-title {
  color: #777777;
  font-size: 22px;
}

@media only screen and (min-width: 768px) {
  .vow-jump-menu .pane-content {
    display: inline-block;
  }
}

.vow-jump-menu .pane-content form {
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .vow-jump-menu .pane-content form {
    width: auto;
    min-width: 340px;
  }
}

.vow-jump-menu .pane-content form select {
  color: #9a5fa3;
  font-size: 22px;
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 0;
}

.srt {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  width: 1px;
  overflow: hidden;
  position: absolute !important;
}

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

.fade.in {
  opacity: 1;
}

.collapse {
  display: none;
}

.collapse.in {
  display: block;
}

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

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

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

.sliding {
  position: relative;
  -webkit-transition: -webkit-transform;
  -moz-transition: -moz-transform;
  -o-transition: -o-transform;
  transition: transform;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
}

.bg-default {
  background-color: #f1f1f1;
}

.bg-headers {
  background-color: #9a5fa3;
}

.bg-primary {
  background-color: #9a5fa3;
}

.bg-secondary {
  background-color: #c7d0e1;
}

.bg-tertiary {
  background-color: #e6eff4;
}

.bg-quaternary {
  background-color: #fff;
}

.bg-medium-gray {
  background-color: #a1a1a1;
}

.bg-light-gray {
  background-color: #e4e4e4;
}

.bg-search {
  background: #9a5fa3 url("../images/backgrounds/bg-search-networkers.jpg") no-repeat 0 0;
  background-size: cover;
}

.bg-promo {
  background: #9a5fa3;
}

.bs-docs-side-bar {
  display: inline-block !important;
  position: relative;
  top: 70px;
}

.bs-docs-side-bar.affix {
  position: fixed;
  top: 20px;
}

.bs-docs-side-bar .nav > li > a:hover, .bs-docs-side-bar .nav > li > a:focus {
  background: none;
}

.bs-docs-side-bar .dropdown-menu {
  position: static;
  float: none;
  border: none;
  box-shadow: none;
  margin-bottom: 15px;
  margin-left: 15px;
  border-top: 1px solid #cd3563;
  border-radius: 0;
}

.bs-docs-side-bar .dropdown-menu > li > a {
  padding: 5px 0;
}

.bs-docs-side-bar .dropdown-menu > li > a:hover {
  background: none;
}

.bs-example {
  padding: 10px 0 10px 0;
}

.bs-example-control-sizing input[type="text"] + input[type="text"], .bs-example-control-sizing select {
  margin-top: 10px;
}

.show-grid [class^="col-"] {
  padding-top: 10px;
  padding-bottom: 10px;
  background-color: #eee;
  background-color: rgba(86, 61, 124, 0.15);
  border: 1px solid #ddd;
  border: 1px solid rgba(86, 61, 124, 0.2);
}

.affix-nudge {
  position: fixed;
  bottom: 20px;
}

.border-top {
  border-top: 1px solid #cd3563;
}

.border-bottom {
  border-bottom: 1px solid #cd3563;
}

.border-top-gray {
  border-top: 1px solid #f1f1f1;
}

.border-bottom-gray {
  border-bottom: 1px solid #f1f1f1;
}

.border-top-orange {
  border-top: 3px solid #ca315c;
}

.border-bottom-orange {
  border-bottom: 3px solid #ca315c;
}

.border-thick-bottom-orange {
  border-bottom: 5px solid #ca315c;
}

.border-all {
  border: 1px solid #cd3563;
}

.border-light-gray {
  border-color: #f1f1f1;
}

.btn-border-right {
  border-right: 2px solid #fff;
}

.donut-chart {
  position: relative;
  border-radius: 50%;
  overflow: hidden;
}

.donut-chart .slice {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.donut-chart .chart-center {
  position: absolute;
  border-radius: 50%;
}

.donut-chart .chart-center span {
  display: block;
  font-weight: 700;
  text-align: center;
}

.donut-chart-border {
  padding: 5px;
  overflow: hidden;
  border: 4px solid white;
  border-radius: 50%;
  width: 179px;
  height: 179px;
  position: absolute;
  top: 98px;
  left: -2px;
}

.img-hero-spaced {
  margin-bottom: 40px;
}

img.pg {
  padding-bottom: 20px;
  width: 100%;
  max-width: 120px;
}

.lt-ie9 img.pg {
  width: auto;
}

.width-25,
.width-50,
.width-75,
.width-100 {
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .width-25 {
    width: 25%;
  }
  .width-50 {
    width: 50%;
  }
  .width-75 {
    width: 75%;
  }
  .width-100 {
    width: 100%;
  }
  .content-left {
    float: left;
    margin-bottom: 40px;
    padding-right: 40px;
  }
  .content-left.clearboth {
    clear: both;
  }
  .content-right {
    float: right;
    margin-bottom: 40px;
    padding-left: 40px;
  }
  .content-right.clearboth {
    clear: both;
  }
}

.hover-effect-default:hover {
  opacity: 0.70;
  filter: alpha(opacity=70);
}

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

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

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

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

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

@media only screen and (min-width: 768px) {
  .width-25 {
    width: 25%;
  }
  .width-33 {
    width: 33%;
  }
  .width-50 {
    width: 50%;
  }
  .width-66 {
    width: 66%;
  }
  .width-75 {
    width: 75%;
  }
}

@media only screen and (min-width: 992px) {
  iframe.home-share {
    height: 155px;
  }
}

@media only screen and (min-width: 1200px) {
  iframe.home-share {
    height: 197px;
  }
}

.m-x-auto {
  margin-right: auto !important;
  margin-left: auto !important;
}

.m-a-0 {
  margin: 0 0 !important;
}

@media only screen and (min-width: 768px) {
  .m-a-0 {
    margin: 0 0 !important;
  }
}

.m-t-0 {
  margin-top: 0 !important;
}

@media only screen and (min-width: 768px) {
  .m-r-0 {
    margin-right: 0 !important;
  }
}

.m-b-0 {
  margin-bottom: 0 !important;
}

@media only screen and (min-width: 768px) {
  .m-l-0 {
    margin-left: 0 !important;
  }
}

@media only screen and (min-width: 768px) {
  .m-x-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
}

.m-y-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.m-a-1 {
  margin: 10px 0 !important;
}

@media only screen and (min-width: 768px) {
  .m-a-1 {
    margin: 10px 10px !important;
  }
}

.m-t-1 {
  margin-top: 10px !important;
}

@media only screen and (min-width: 768px) {
  .m-r-1 {
    margin-right: 10px !important;
  }
}

.m-b-1 {
  margin-bottom: 10px !important;
}

@media only screen and (min-width: 768px) {
  .m-l-1 {
    margin-left: 10px !important;
  }
}

@media only screen and (min-width: 768px) {
  .m-x-1 {
    margin-right: 10px !important;
    margin-left: 10px !important;
  }
}

.m-y-1 {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}

.m-a-2 {
  margin: 20px 0 !important;
}

@media only screen and (min-width: 768px) {
  .m-a-2 {
    margin: 20px 20px !important;
  }
}

.m-t-2 {
  margin-top: 20px !important;
}

@media only screen and (min-width: 768px) {
  .m-r-2 {
    margin-right: 20px !important;
  }
}

.m-b-2 {
  margin-bottom: 20px !important;
}

@media only screen and (min-width: 768px) {
  .m-l-2 {
    margin-left: 20px !important;
  }
}

@media only screen and (min-width: 768px) {
  .m-x-2 {
    margin-right: 20px !important;
    margin-left: 20px !important;
  }
}

.m-y-2 {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

.m-a-3 {
  margin: 30px 0 !important;
}

@media only screen and (min-width: 768px) {
  .m-a-3 {
    margin: 30px 30px !important;
  }
}

.m-t-3 {
  margin-top: 30px !important;
}

@media only screen and (min-width: 768px) {
  .m-r-3 {
    margin-right: 30px !important;
  }
}

.m-b-3 {
  margin-bottom: 30px !important;
}

@media only screen and (min-width: 768px) {
  .m-l-3 {
    margin-left: 30px !important;
  }
}

@media only screen and (min-width: 768px) {
  .m-x-3 {
    margin-right: 30px !important;
    margin-left: 30px !important;
  }
}

.m-y-3 {
  margin-top: 30px !important;
  margin-bottom: 30px !important;
}

.m-a-4 {
  margin: 40px 0 !important;
}

@media only screen and (min-width: 768px) {
  .m-a-4 {
    margin: 40px 40px !important;
  }
}

.m-t-4 {
  margin-top: 40px !important;
}

@media only screen and (min-width: 768px) {
  .m-r-4 {
    margin-right: 40px !important;
  }
}

.m-b-4 {
  margin-bottom: 40px !important;
}

@media only screen and (min-width: 768px) {
  .m-l-4 {
    margin-left: 40px !important;
  }
}

@media only screen and (min-width: 768px) {
  .m-x-4 {
    margin-right: 40px !important;
    margin-left: 40px !important;
  }
}

.m-y-4 {
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}

.m-a-5 {
  margin: 50px 0 !important;
}

@media only screen and (min-width: 768px) {
  .m-a-5 {
    margin: 50px 50px !important;
  }
}

.m-t-5 {
  margin-top: 50px !important;
}

@media only screen and (min-width: 768px) {
  .m-r-5 {
    margin-right: 50px !important;
  }
}

.m-b-5 {
  margin-bottom: 50px !important;
}

@media only screen and (min-width: 768px) {
  .m-l-5 {
    margin-left: 50px !important;
  }
}

@media only screen and (min-width: 768px) {
  .m-x-5 {
    margin-right: 50px !important;
    margin-left: 50px !important;
  }
}

.m-y-5 {
  margin-top: 50px !important;
  margin-bottom: 50px !important;
}

.m-a-7 {
  margin: 70px 0 !important;
}

@media only screen and (min-width: 768px) {
  .m-a-7 {
    margin: 70px 70px !important;
  }
}

.m-t-7 {
  margin-top: 70px !important;
}

@media only screen and (min-width: 768px) {
  .m-r-7 {
    margin-right: 70px !important;
  }
}

.m-b-7 {
  margin-bottom: 70px !important;
}

@media only screen and (min-width: 768px) {
  .m-l-7 {
    margin-left: 70px !important;
  }
}

@media only screen and (min-width: 768px) {
  .m-x-7 {
    margin-right: 70px !important;
    margin-left: 70px !important;
  }
}

.m-y-7 {
  margin-top: 70px !important;
  margin-bottom: 70px !important;
}

.m-a-10 {
  margin: 100px 0 !important;
}

@media only screen and (min-width: 768px) {
  .m-a-10 {
    margin: 100px 100px !important;
  }
}

.m-t-10 {
  margin-top: 100px !important;
}

@media only screen and (min-width: 768px) {
  .m-r-10 {
    margin-right: 100px !important;
  }
}

.m-b-10 {
  margin-bottom: 100px !important;
}

@media only screen and (min-width: 768px) {
  .m-l-10 {
    margin-left: 100px !important;
  }
}

@media only screen and (min-width: 768px) {
  .m-x-10 {
    margin-right: 100px !important;
    margin-left: 100px !important;
  }
}

.m-y-10 {
  margin-top: 100px !important;
  margin-bottom: 100px !important;
}

.p-a-0 {
  padding: 0 0 !important;
}

@media only screen and (min-width: 768px) {
  .p-a-0 {
    padding: 0 0 !important;
  }
}

.p-t-0 {
  padding-top: 0 !important;
}

@media only screen and (min-width: 768px) {
  .p-r-0 {
    padding-right: 0 !important;
  }
}

.p-b-0 {
  padding-bottom: 0 !important;
}

@media only screen and (min-width: 768px) {
  .p-l-0 {
    padding-left: 0 !important;
  }
}

@media only screen and (min-width: 768px) {
  .p-x-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
}

.p-y-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.p-a-1 {
  padding: 10px 0 !important;
}

@media only screen and (min-width: 768px) {
  .p-a-1 {
    padding: 10px 10px !important;
  }
}

.p-t-1 {
  padding-top: 10px !important;
}

@media only screen and (min-width: 768px) {
  .p-r-1 {
    padding-right: 10px !important;
  }
}

.p-b-1 {
  padding-bottom: 10px !important;
}

@media only screen and (min-width: 768px) {
  .p-l-1 {
    padding-left: 10px !important;
  }
}

@media only screen and (min-width: 768px) {
  .p-x-1 {
    padding-right: 10px !important;
    padding-left: 10px !important;
  }
}

.p-y-1 {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.p-a-2 {
  padding: 20px 0 !important;
}

@media only screen and (min-width: 768px) {
  .p-a-2 {
    padding: 20px 20px !important;
  }
}

.p-t-2 {
  padding-top: 20px !important;
}

@media only screen and (min-width: 768px) {
  .p-r-2 {
    padding-right: 20px !important;
  }
}

.p-b-2 {
  padding-bottom: 20px !important;
}

@media only screen and (min-width: 768px) {
  .p-l-2 {
    padding-left: 20px !important;
  }
}

@media only screen and (min-width: 768px) {
  .p-x-2 {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }
}

.p-y-2 {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.p-a-3 {
  padding: 30px 0 !important;
}

@media only screen and (min-width: 768px) {
  .p-a-3 {
    padding: 30px 30px !important;
  }
}

.p-t-3 {
  padding-top: 30px !important;
}

@media only screen and (min-width: 768px) {
  .p-r-3 {
    padding-right: 30px !important;
  }
}

.p-b-3 {
  padding-bottom: 30px !important;
}

@media only screen and (min-width: 768px) {
  .p-l-3 {
    padding-left: 30px !important;
  }
}

@media only screen and (min-width: 768px) {
  .p-x-3 {
    padding-right: 30px !important;
    padding-left: 30px !important;
  }
}

.p-y-3 {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

.p-a-4 {
  padding: 40px 0 !important;
}

@media only screen and (min-width: 768px) {
  .p-a-4 {
    padding: 40px 40px !important;
  }
}

.p-t-4 {
  padding-top: 40px !important;
}

@media only screen and (min-width: 768px) {
  .p-r-4 {
    padding-right: 40px !important;
  }
}

.p-b-4 {
  padding-bottom: 40px !important;
}

@media only screen and (min-width: 768px) {
  .p-l-4 {
    padding-left: 40px !important;
  }
}

@media only screen and (min-width: 768px) {
  .p-x-4 {
    padding-right: 40px !important;
    padding-left: 40px !important;
  }
}

.p-y-4 {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

.p-a-5 {
  padding: 50px 0 !important;
}

@media only screen and (min-width: 768px) {
  .p-a-5 {
    padding: 50px 50px !important;
  }
}

.p-t-5 {
  padding-top: 50px !important;
}

@media only screen and (min-width: 768px) {
  .p-r-5 {
    padding-right: 50px !important;
  }
}

.p-b-5 {
  padding-bottom: 50px !important;
}

@media only screen and (min-width: 768px) {
  .p-l-5 {
    padding-left: 50px !important;
  }
}

@media only screen and (min-width: 768px) {
  .p-x-5 {
    padding-right: 50px !important;
    padding-left: 50px !important;
  }
}

.p-y-5 {
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

.p-a-7 {
  padding: 70px 0 !important;
}

@media only screen and (min-width: 768px) {
  .p-a-7 {
    padding: 70px 70px !important;
  }
}

.p-t-7 {
  padding-top: 70px !important;
}

@media only screen and (min-width: 768px) {
  .p-r-7 {
    padding-right: 70px !important;
  }
}

.p-b-7 {
  padding-bottom: 70px !important;
}

@media only screen and (min-width: 768px) {
  .p-l-7 {
    padding-left: 70px !important;
  }
}

@media only screen and (min-width: 768px) {
  .p-x-7 {
    padding-right: 70px !important;
    padding-left: 70px !important;
  }
}

.p-y-7 {
  padding-top: 70px !important;
  padding-bottom: 70px !important;
}

.p-a-10 {
  padding: 100px 0 !important;
}

@media only screen and (min-width: 768px) {
  .p-a-10 {
    padding: 100px 100px !important;
  }
}

.p-t-10 {
  padding-top: 100px !important;
}

@media only screen and (min-width: 768px) {
  .p-r-10 {
    padding-right: 100px !important;
  }
}

.p-b-10 {
  padding-bottom: 100px !important;
}

@media only screen and (min-width: 768px) {
  .p-l-10 {
    padding-left: 100px !important;
  }
}

@media only screen and (min-width: 768px) {
  .p-x-10 {
    padding-right: 100px !important;
    padding-left: 100px !important;
  }
}

.p-y-10 {
  padding-top: 100px !important;
  padding-bottom: 100px !important;
}

.pos-f-t {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

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

.disabled {
  opacity: 0.5;
  pointer-events: none;
  cursor: not-allowed;
}

.disabled input {
  pointer-events: none;
}

.main-content ul {
  list-style: none;
  margin: 10px 0 0 15px;
  padding: 0;
}

.main-content ul li {
  padding: 0 0 10px 10px;
}

.main-content ul li:before {
  content: "•";
  color: #ca315c;
  position: absolute;
  margin-left: -18px;
  margin-top: -3px;
  font-size: 38px;
  line-height: 25px;
}

.main-content ol {
  margin: 10px 0 0 25px;
  padding: 0;
}

.main-content ol li {
  padding: 0 0 10px 0;
}

.text-primary {
  color: #9a5fa3;
}

.text-accent {
  color: #ed1c24;
}

.text-white {
  color: #fff !important;
}

.link-no-decoration {
  text-decoration: none;
}

.heading-border {
  text-align: center;
  position: relative;
  padding-top: 15px;
}

@media only screen and (min-width: 992px) {
  .heading-border {
    padding-top: 0;
  }
}

.row-2-1 .col-2 .heading-border {
  margin-bottom: 0;
}

@media only screen and (min-width: 992px) {
  .heading-border {
    border-top: 1px solid #f1f1f1;
    margin-top: -1px !important;
  }
  .heading-border h1, .heading-border h2, .heading-border h3, .heading-border h4, .heading-border h5 {
    background: white;
    display: inline-block;
    padding: 0 15px;
    position: relative;
    top: -21.17647px;
    margin: 0;
  }
  .heading-border h2 {
    top: -17.64706px;
  }
  .heading-border h3 {
    top: -14.11765px;
  }
  .heading-border h4 {
    top: -11.25px;
  }
  .heading-border h5 {
    top: -9.33333px;
  }
}

.hr-v-margin-small {
  margin-top: 10px;
  margin-bottom: 10px;
}

.hr-partial-width {
  max-width: 90px;
  border-top: 2px solid #cd3563;
  margin-left: 0;
  text-align: left;
}

.section-heading {
  text-align: center;
  margin-bottom: 10px;
}

@media only screen and (min-width: 992px) {
  .section-heading {
    margin-bottom: 40px;
  }
}

.section-link {
  padding: 40px 0;
}

.section-link .btn-link {
  margin: 0 auto;
}

.lead, .lead-lg {
  color: #777777;
  margin-bottom: 21;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
}

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

.lead-lg {
  font-size: 23px;
}

ul.fa-ul {
  font-size: 18px;
}

@media only screen and (min-width: 992px) {
  ul.fa-ul {
    font-size: 16px;
  }
}

ul.fa-ul li {
  margin-bottom: 10px;
}

ul.fa-ul li .fa {
  color: #777777;
}

address {
  font-size: 16px;
}

.font-montserrat {
  font-family: 'Montserrat', sans-serif;
}

.font-montserrat.light-weight {
  font-weight: 300;
}

.font-geometria {
  font-family: 'Geometria', sans-serif;
}

.font-geometria.medium-weight {
  font-weight: 500;
}

.font-roboto {
  font-family: 'Roboto', sans-serif;
}

.font-roboto.bold-weight {
  font-weight: 700;
}

.font-verdana {
  font-family: 'Verdana', sans-serif;
}

.font-verdana.bold-weight {
  font-weight: 700;
}

.home-intro {
  display: none;
  color: #fff;
}

@media only screen and (min-width: 768px) {
  .home-intro {
    display: block;
    font-size: 23px;
    letter-spacing: .07em;
  }
}

@media only screen and (min-width: 992px) {
  .home-intro {
    font-size: 27px;
    padding-left: 20%;
    padding-right: 20%;
  }
}

@media only screen and (min-width: 1200px) {
  .home-intro {
    font-size: 30px;
  }
}

.home-intro strong {
  font-size: 1.7em;
}

.show-inline-touch,
.show-block-touch {
  display: none;
}

.hide-inline-touch {
  display: inline-block;
}

.hide-block-touch {
  display: block;
}

.touch .show-inline-touch {
  display: inline-block;
}

.touch .show-block-touch {
  display: block;
}

.touch .hide-touch {
  display: none;
}

.hidden {
  display: none !important;
}

.hide {
  position: absolute !important;
  left: -999em !important;
}

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

.visible-xxsmall-block,
.visible-xxsmall-inline,
.visible-xxsmall-inline-block,
.visible-xsmall-block,
.visible-xsmall-block-up,
.visible-xsmall-inline,
.visible-xsmall-inline-block,
.visible-small-block,
.visible-small-inline,
.visible-small-inline-block,
.visible-medium-block,
.visible-medium-inline,
.visible-medium-inline-block,
.visible-large-block,
.visible-large-inline,
.visible-large-inline-block,
.visible-xlarge-block,
.visible-xlarge-inline,
.visible-xlarge-inline-block {
  display: none !important;
}

@media only screen and (max-width: 480px) {
  .visible-xxsmall-block {
    display: block !important;
  }
}

@media only screen and (min-width: 480px) and (max-width: 767px) {
  .visible-xsmall-block {
    display: block !important;
  }
}

@media only screen and (min-width: 480px) {
  .visible-xsmall-block-up {
    display: block !important;
  }
}

@media only screen and (min-width: 480px) and (max-width: 767px) {
  .visible-xsmall-inline {
    display: inline !important;
  }
}

@media only screen and (min-width: 480px) and (max-width: 767px) {
  .visible-xsmall-inline-block {
    display: inline-block !important;
  }
}

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

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

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

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

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

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

@media only screen and (min-width: 1200px) and (max-width: 1199px) {
  .visible-large-block {
    display: block !important;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1199px) {
  .visible-large-inline {
    display: inline !important;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1199px) {
  .visible-large-inline-block {
    display: inline-block !important;
  }
}

@media only screen and (min-width: 1301px) and (max-width: 1500px) {
  .visible-xlarge-block {
    display: block !important;
  }
}

@media only screen and (min-width: 1301px) and (max-width: 1500px) {
  .visible-xlarge-inline {
    display: inline !important;
  }
}

@media only screen and (min-width: 1301px) and (max-width: 1500px) {
  .visible-xlarge-inline-block {
    display: inline-block !important;
  }
}

@media only screen and (min-width: 480px) and (max-width: 767px) {
  .hidden-xsmall {
    display: none !important;
  }
}

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

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

@media only screen and (min-width: 1200px) and (max-width: 1199px) {
  .hidden-large {
    display: none !important;
  }
}

@media only screen and (min-width: 1301px) {
  .hidden-xlarge {
    display: none !important;
  }
}

#sliding-popup {
  border-top: 1px dotted #fff;
}

#sliding-popup.sliding-popup-bottom {
  background: #9a5fa3;
}

#sliding-popup .popup-content #popup-text {
  max-width: 70%;
  padding-top: 10px;
}

#sliding-popup .popup-content #popup-text p {
  font-weight: 300;
  font-size: 14px;
}

#sliding-popup .popup-content #popup-buttons {
  max-width: 30%;
}

#sliding-popup .popup-content #popup-buttons button {
  margin-top: 7px;
  margin-bottom: 7px;
  box-shadow: none;
  text-shadow: none;
  font-family: "Montserrat", sans-serif;
}

#sliding-popup .popup-content #popup-buttons button:hover {
  background: #ba2e59;
}

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

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

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

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

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

/* Slider */
.carousel {
  padding-bottom: 30px;
}

.carousel .carousel-inner {
  padding: 0 30px;
}

.carousel .carousel-inner .slick-prev {
  left: 5px;
}

.carousel .carousel-inner .slick-next {
  right: 5px;
}

.carousel .carousel-inner .slick-dots {
  left: 0;
}

.carousel-small .carousel-inner {
  padding: 0;
}

.carousel-small-arrows .carousel-inner {
  padding: 0 30px;
}

.carousel-medium .carousel-inner {
  padding: 0 25px;
}

.carousel-medium .carousel-inner .slick-prev {
  left: 0;
}

.carousel-medium .carousel-inner .slick-next {
  right: 0;
}

.carousel-medium .carousel-inner .slick-dots {
  left: 0;
}

.carousel-instagram .slick-slider .slick-list .item {
  padding: 0 15px;
}

.carousel-instagram .slick-slider .slick-list .item img {
  width: 100%;
  height: auto;
}

.slick-loading .slick-list {
  background: #fff url("../images/ajax-loader.gif") center center no-repeat;
}

/* Gutters */
.slick-with-gutters .slick-slide {
  padding-left: 5px;
  padding-right: 5px;
}

/* *MT - specific slide item styling */
.slick-slider.with-border .slick-list {
  border-right: 1px solid #f1f1f1;
}

.slick-slider.with-border .slick-list .item-plain {
  border-left: 1px solid #f1f1f1;
}

.slick-slider .slick-list .item-plain {
  text-align: center;
  display: block;
  justify-content: center;
  align-content: center;
  flex-direction: column;
  /* column | row */
  padding: 0 10px;
}

.slick-slider .slick-list .item-plain img {
  display: inline-block;
}

.slick-slider .slick-list .item-plain p {
  font-size: 85%;
}

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 55px;
  width: auto;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  margin-top: -27.5px;
  padding: 0;
  border: none;
  outline: none;
}

.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}

.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before, .slick-next:before {
  font-family: FontAwesome;
  font-size: 55px;
  font-size: 3.92857rem;
  line-height: 1;
  color: #333333;
  opacity: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -50px;
}

@media only screen and (min-width: 768px) {
  .slick-prev {
    left: -5px;
  }
}

[dir="rtl"] .slick-prev {
  left: auto;
  right: -50px;
}

@media only screen and (min-width: 768px) {
  [dir="rtl"] .slick-prev {
    right: -5px;
  }
}

.slick-prev:before {
  content: "";
}

[dir="rtl"] .slick-prev:before {
  content: "";
}

.slick-next {
  right: -50px;
}

@media only screen and (min-width: 768px) {
  .slick-next {
    right: -5px;
  }
}

[dir="rtl"] .slick-next {
  left: -50px;
  right: auto;
}

@media only screen and (min-width: 768px) {
  [dir="rtl"] .slick-next {
    left: -5px;
  }
}

.slick-next:before {
  content: "";
}

[dir="rtl"] .slick-next:before {
  content: "";
}

.slick-inline-prev,
.slick-inline-next {
  position: relative;
  left: 0;
  right: 0;
  width: 55px;
}

/* Dots */
.slick-has-dots {
  margin-bottom: 40px;
}

.slick-dots {
  position: absolute;
  list-style: none;
  display: block;
  text-align: center;
  padding: 1px 0 0 0;
  width: 100%;
  margin-left: 0;
  margin-bottom: 0;
  bottom: -45px;
  height: 45px;
}

.slick-dots:before, .slick-dots:after {
  content: " ";
  height: 30px;
  width: 15px;
  display: inline-block;
  background: #fff;
  position: relative;
  top: 10px;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0;
  padding: 0;
  cursor: pointer;
  background: #fff;
}

.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}

.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 20px;
  height: 20px;
  font-family: FontAwesome;
  font-size: 18px;
  font-size: 1.28571rem;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  color: #ca315c;
  opacity: 1;
}

.slick-slider *:focus {
  outline: none;
}

.slick-slide img.slick-loading {
  display: none;
}

.js .carousel-inner {
  overflow: hidden;
  height: 0;
}

/*
* Be careful when overwriting, libsass and/or globbing produce
* unpredictable results if commented imports are included.
*/

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29ya2Vycy5jc3MiLCJzb3VyY2VzIjpbIm5ldHdvcmtlcnMuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9fYnJlYWtwb2ludC5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvX3NldHRpbmdzLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9fY29udGV4dC5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvX2hlbHBlcnMuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L19wYXJzZXJzLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL19xdWVyeS5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvcGFyc2Vycy9fc2luZ2xlLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL3NpbmdsZS9fZGVmYXVsdC5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvcGFyc2Vycy9fZG91YmxlLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL2RvdWJsZS9fZGVmYXVsdC1wYWlyLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL2RvdWJsZS9fZG91YmxlLXN0cmluZy5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvcGFyc2Vycy9kb3VibGUvX2RlZmF1bHQuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L3BhcnNlcnMvX3RyaXBsZS5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvcGFyc2Vycy90cmlwbGUvX2RlZmF1bHQuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L3BhcnNlcnMvX3Jlc29sdXRpb24uc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L3BhcnNlcnMvcmVzb2x1dGlvbi9fcmVzb2x1dGlvbi5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvX25vLXF1ZXJ5LnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9fcmVzcG9uZC10by5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvX2xlZ2FjeS1zZXR0aW5ncy5zY3NzIiwidmVuZG9yL19jYXB0Y2hhLnNjc3MiLCJ2ZW5kb3IvX2ZvbnQtYXdlc29tZS5zY3NzIiwidmVuZG9yL2ZvbnQtYXdlc29tZS9fdmFyaWFibGVzLnNjc3MiLCJ2ZW5kb3IvZm9udC1hd2Vzb21lL19taXhpbnMuc2NzcyIsInZlbmRvci9mb250LWF3ZXNvbWUvX3BhdGguc2NzcyIsInZlbmRvci9mb250LWF3ZXNvbWUvX2NvcmUuc2NzcyIsInZlbmRvci9mb250LWF3ZXNvbWUvX2xhcmdlci5zY3NzIiwidmVuZG9yL2ZvbnQtYXdlc29tZS9fZml4ZWQtd2lkdGguc2NzcyIsInZlbmRvci9mb250LWF3ZXNvbWUvX2xpc3Quc2NzcyIsInZlbmRvci9fY3VzdG9tLWljb25zLnNjc3MiLCJ2ZW5kb3IvX2RwLnNjc3MiLCJ2ZW5kb3IvX3NoYXJlLXRoaXMuc2NzcyIsIm5ldHdvcmtlcnMvdmVuZG9yL2Jvb3RzdHJhcC9fdmFyaWFibGVzLnNjc3MiLCJ2ZW5kb3IvYm9vdHN0cmFwL19ib290c3RyYXAuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX21peGlucy5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2hpZGUtdGV4dC5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX29wYWNpdHkuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19pbWFnZS5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2xhYmVscy5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LWZpbHRlci5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2l6ZS5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc3BvbnNpdmUtdmlzaWJpbGl0eS5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3NpemUuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL190YWItZm9jdXMuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGV4dC1vdmVyZmxvdy5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3ZlbmRvci1wcmVmaXhlcy5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2FsZXJ0cy5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19wYW5lbHMuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fZm9ybXMuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19wcm9ncmVzcy1iYXIuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fY2xlYXJmaXguc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19jZW50ZXItYmxvY2suc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19uYXYtdmVydGljYWwtYWxpZ24uc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX25vcm1hbGl6ZS5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcHJpbnQuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2dseXBoaWNvbnMuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3NjYWZmb2xkaW5nLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL190eXBlLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19jb2RlLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19ncmlkLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL190YWJsZXMuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2Zvcm1zLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19idXR0b25zLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19jb21wb25lbnQtYW5pbWF0aW9ucy5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fZHJvcGRvd25zLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19idXR0b24tZ3JvdXBzLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19pbnB1dC1ncm91cHMuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX25hdnMuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX25hdmJhci5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fYnJlYWRjcnVtYnMuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3BhZ2luYXRpb24uc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3BhZ2VyLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19sYWJlbHMuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2JhZGdlcy5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fanVtYm90cm9uLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL190aHVtYm5haWxzLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19hbGVydHMuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3Byb2dyZXNzLWJhcnMuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX21lZGlhLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19saXN0LWdyb3VwLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wYW5lbHMuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3Jlc3BvbnNpdmUtZW1iZWQuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3dlbGxzLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19jbG9zZS5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbW9kYWxzLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL190b29sdGlwLnNjc3MiLCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wb3BvdmVycy5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fY2Fyb3VzZWwuc2NzcyIsIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3V0aWxpdGllcy5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcmVzcG9uc2l2ZS11dGlsaXRpZXMuc2NzcyIsInZhcmlhYmxlcy9jb3JlL19mb250LWdlb21ldHJpYS5zY3NzIiwidmFyaWFibGVzL2NvcmUvX2ZvbnQtbGF0by5zY3NzIiwidmFyaWFibGVzL2NvcmUvX2ZvbnQtbW9udHNlcnJhdC5zY3NzIiwidmFyaWFibGVzL2NvcmUvX2ZvbnQtcm9ib3RvLnNjc3MiLCJ2YXJpYWJsZXMvY29yZS9fZ3JpZC5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdmFyaWFibGVzLnNjc3MiLCJ2YXJpYWJsZXMvY29yZS9fbGF5b3V0LnNjc3MiLCJ2YXJpYWJsZXMvY29yZS9fdHlwb2dyYXBoeS5zY3NzIiwibmV0d29ya2Vycy92YXJpYWJsZXMvY29yZS9fY29sb3Vycy5zY3NzIiwibmV0d29ya2Vycy92YXJpYWJsZXMvY29yZS9fdHlwb2dyYXBoeS5zY3NzIiwidmFyaWFibGVzL19hY2NvcmRpb24uc2NzcyIsInZhcmlhYmxlcy9fYmFjay10by10b3Auc2NzcyIsInZhcmlhYmxlcy9fYmFja2dyb3VuZC10aXRsZS1oZXJvLnNjc3MiLCJ2YXJpYWJsZXMvX2JhY2tncm91bmQtdGl0bGUuc2NzcyIsInZhcmlhYmxlcy9fYmxvY2txdW90ZS5zY3NzIiwidmFyaWFibGVzL19icmVhZGNydW1iLnNjc3MiLCJ2YXJpYWJsZXMvX2J1dHRvbi5zY3NzIiwidmFyaWFibGVzL19jYXJvdXNlbC5zY3NzIiwidmFyaWFibGVzL19jaGFydGluZy5zY3NzIiwidmFyaWFibGVzL19kcm9wZG93bi5zY3NzIiwidmFyaWFibGVzL19lbWFpbC1qb2JzLnNjc3MiLCJ2YXJpYWJsZXMvX2ZlYXR1cmVkLXByb2plY3RzLnNjc3MiLCJ2YXJpYWJsZXMvX2Zsb2F0cy5zY3NzIiwidmFyaWFibGVzL19mb290ZXItbmF2aWdhdGlvbi5zY3NzIiwidmFyaWFibGVzL19mb3JtLWZpbHRlci1jaGVja2JveC5zY3NzIiwidmFyaWFibGVzL19mb3JtLWZpbHRlci1pbnB1dC5zY3NzIiwidmFyaWFibGVzL19mb3JtLWZpbHRlci1yYWRpby5zY3NzIiwidmFyaWFibGVzL19oZWFkZXItaW5mb3JtYXRpb24uc2NzcyIsInZhcmlhYmxlcy9faW1hZ2VzLnNjc3MiLCJ2YXJpYWJsZXMvX2xpc3Rpbmcuc2NzcyIsInZhcmlhYmxlcy9fbWFzb25yeS5zY3NzIiwidmFyaWFibGVzL19uYXYuc2NzcyIsInZhcmlhYmxlcy9fbmF2aWdhdGlvbi1wcmltYXJ5LnNjc3MiLCJ2YXJpYWJsZXMvX29mZi1jYW52YXMuc2NzcyIsInZhcmlhYmxlcy9fcGFuZWxzLnNjc3MiLCJ2YXJpYWJsZXMvX3NlYXJjaC1mb3JtLnNjc3MiLCJ2YXJpYWJsZXMvX3NlYXJjaC1ob21lLnNjc3MiLCJ2YXJpYWJsZXMvX3NlYXJjaC1qb2Itc2VjdG9ycy5zY3NzIiwidmFyaWFibGVzL19zb2NpYWwtaWNvbnMuc2NzcyIsInZhcmlhYmxlcy9fc3BhY2luZy5zY3NzIiwidmFyaWFibGVzL190YWJsZXMuc2NzcyIsInZhcmlhYmxlcy9fdm93LnNjc3MiLCJuZXR3b3JrZXJzL3ZhcmlhYmxlcy9fZW1haWwtam9icy5zY3NzIiwibmV0d29ya2Vycy92YXJpYWJsZXMvX2ZlYXR1cmVkLXByb2plY3RzLnNjc3MiLCJuZXR3b3JrZXJzL3ZhcmlhYmxlcy9faGVhZGVyLWluZm9ybWF0aW9uLnNjc3MiLCJuZXR3b3JrZXJzL3ZhcmlhYmxlcy9fbGlzdGluZy5zY3NzIiwibmV0d29ya2Vycy92YXJpYWJsZXMvX21hc29ucnkuc2NzcyIsIm5ldHdvcmtlcnMvdmFyaWFibGVzL19uYXZpZ2F0aW9uLXByaW1hcnkuc2NzcyIsIm5ldHdvcmtlcnMvdmFyaWFibGVzL19vZmYtY2FudmFzLnNjc3MiLCJuZXR3b3JrZXJzL3ZhcmlhYmxlcy9fc2VhcmNoLWZvcm0uc2NzcyIsIm5ldHdvcmtlcnMvdmFyaWFibGVzL19zZWFyY2gtaG9tZS5zY3NzIiwibmV0d29ya2Vycy92YXJpYWJsZXMvX3Zvdy5zY3NzIiwibWl4aW5zL19hY2NvcmRpb24uc2NzcyIsIm1peGlucy9fYmxvY2stZ3JpZC5zY3NzIiwibWl4aW5zL19idXR0b25zLnNjc3MiLCJtaXhpbnMvX2NoYXJ0aW5nLnNjc3MiLCJtaXhpbnMvX2Zvcm1zLnNjc3MiLCJtaXhpbnMvX2ltYWdlLnNjc3MiLCJtaXhpbnMvX21hc29ucnkuc2NzcyIsIm1peGlucy9fbWVkaWEtbGlzdGluZy5zY3NzIiwibWl4aW5zL19taXhpbnMuc2NzcyIsIm1peGlucy9fcGFuZWxzLnNjc3MiLCJtaXhpbnMvX3ByaW1hcnlfbmF2LnNjc3MiLCJtaXhpbnMvX3NpdGUtaGVhZGVyLnNjc3MiLCJtaXhpbnMvX3RyYW5zaXRpb25zLnNjc3MiLCJiYXNlL19ncmlkLnNjc3MiLCJiYXNlL19pbWFnZXMuc2NzcyIsImJhc2UvX21lZGlhLnNjc3MiLCJiYXNlL190YWJsZXMuc2NzcyIsImJhc2UvX3R5cG9ncmFwaHkuc2NzcyIsImJhc2UvZm9ybXMvX2Vycm9ycy5zY3NzIiwiYmFzZS9mb3Jtcy9fZm9ybXMuc2NzcyIsImJhc2UvbGF5b3V0L18yLWNvbHVtbi1sZWZ0LnNjc3MiLCJiYXNlL2xheW91dC9fMi1jb2x1bW4tcmlnaHQuc2NzcyIsImJhc2UvbGF5b3V0L18yLWNvbHVtbi5zY3NzIiwiYmFzZS9sYXlvdXQvXzMtY29sdW1uLnNjc3MiLCJiYXNlL2xheW91dC9fMy10by0yLWNvbHVtbi1zdGFja2VkLnNjc3MiLCJiYXNlL2xheW91dC9fNC1jb2x1bW4uc2NzcyIsImJhc2UvbGF5b3V0L182LWNvbHVtbi5zY3NzIiwiYmFzZS9sYXlvdXQvXzctY29sdW1uLnNjc3MiLCJiYXNlL2xheW91dC9fYmxvY2stZ3JpZC5zY3NzIiwiYmFzZS9sYXlvdXQvX2xheW91dC5zY3NzIiwiYmFzZS9sYXlvdXQvX3NpbmdsZS1jb2x1bW4uc2NzcyIsImNvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiY29tcG9uZW50cy9fYWxlcnRzLnNjc3MiLCJjb21wb25lbnRzL19hcnRpY2xlLWhlYWRpbmcuc2NzcyIsImNvbXBvbmVudHMvX2FydGljbGUtbGlzdGluZy5zY3NzIiwiY29tcG9uZW50cy9fYmFjay10by10b3Auc2NzcyIsImNvbXBvbmVudHMvX2JhY2tncm91bmQtdGl0bGUtaGVyby5zY3NzIiwiY29tcG9uZW50cy9fYmFja2dyb3VuZC10aXRsZS5zY3NzIiwiY29tcG9uZW50cy9fYnJlYWRjcnVtYi5zY3NzIiwiY29tcG9uZW50cy9fYnJvd3NlLWZlYXR1cmVkLnNjc3MiLCJjb21wb25lbnRzL19icm93c2UtZmlsdGVyLnNjc3MiLCJjb21wb25lbnRzL19idXR0b25zLnNjc3MiLCJjb21wb25lbnRzL19lbWFpbC1qb2JzLnNjc3MiLCJjb21wb25lbnRzL19mZWF0dXJlZC1wcm9qZWN0cy5zY3NzIiwiY29tcG9uZW50cy9fZmVhdHVyZWQtcmVjcnVpdGVyLXRpdGxlLnNjc3MiLCJjb21wb25lbnRzL19maWx0ZXItbGlzdGluZy5zY3NzIiwiY29tcG9uZW50cy9fZmlsdGVyLXNlbGVjdGVkLnNjc3MiLCJjb21wb25lbnRzL19mb290ZXItbmF2aWdhdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL19mb3JtLWZhdm91cml0ZXMtam9icy5zY3NzIiwiY29tcG9uZW50cy9fZm9ybS1maWx0ZXItY2hlY2tib3guc2NzcyIsImNvbXBvbmVudHMvX2Zvcm0tZmlsdGVyLWlucHV0LnNjc3MiLCJjb21wb25lbnRzL19mb3JtLWZpbHRlci1yYWRpby5zY3NzIiwiY29tcG9uZW50cy9fZ3JheS1jYXJvdXNlbC5zY3NzIiwiY29tcG9uZW50cy9faGVhZGVyLWluZm9ybWF0aW9uLnNjc3MiLCJjb21wb25lbnRzL19oZXJvLWJnLWltZy5zY3NzIiwiY29tcG9uZW50cy9faGVyby1iZy12aWRlby5zY3NzIiwiY29tcG9uZW50cy9fam9iLWFjdGlvbnMuc2NzcyIsImNvbXBvbmVudHMvX2pvYi1vcHRpb25zLnNjc3MiLCJjb21wb25lbnRzL19saXN0aW5nLWhlYWRpbmcuc2NzcyIsImNvbXBvbmVudHMvX2xpc3Rpbmcuc2NzcyIsImNvbXBvbmVudHMvX21hc29ucnkuc2NzcyIsImNvbXBvbmVudHMvX25hdmlnYXRpb24tYWx0ZXJuYXRpdmUuc2NzcyIsImNvbXBvbmVudHMvX25hdmlnYXRpb24tY2xpZW50LnNjc3MiLCJjb21wb25lbnRzL19uYXZpZ2F0aW9uLXByaW1hcnkuc2NzcyIsImNvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyIsImNvbXBvbmVudHMvX3ByZXZpb3VzLW5leHQuc2NzcyIsImNvbXBvbmVudHMvX3Byb2dyZXNzLWJhcnMuc2NzcyIsImNvbXBvbmVudHMvX3NlYXJjaC1iZy12aWRlby5zY3NzIiwiY29tcG9uZW50cy9fc2VhcmNoLWZvcm0uc2NzcyIsImNvbXBvbmVudHMvX3NlYXJjaC1qb2Itc2VjdG9ycy5zY3NzIiwiY29tcG9uZW50cy9fc2hhcmUtYmFyLnNjc3MiLCJjb21wb25lbnRzL19zb2NpYWwtYmFyLnNjc3MiLCJjb21wb25lbnRzL19zb2NpYWwtaWNvbnMuc2NzcyIsImNvbXBvbmVudHMvX3N0YXRpY19zbGlkZXIuc2NzcyIsImNvbXBvbmVudHMvX3V0aWxzLWljb25zLnNjc3MiLCJjb21wb25lbnRzL193ZWxscy5zY3NzIiwiY29tcG9uZW50cy9wYW5lbHMvX2Fib3V0LnNjc3MiLCJjb21wb25lbnRzL3BhbmVscy9fYWNjb3JkaW9uLnNjc3MiLCJjb21wb25lbnRzL3BhbmVscy9fam9iLW1hbmFnZXIuc2NzcyIsImNvbXBvbmVudHMvcGFuZWxzL19saXN0aW5nLnNjc3MiLCJjb21wb25lbnRzL3BhbmVscy9fcGFuZWwuc2NzcyIsImNvbXBvbmVudHMvcGFuZWxzL19wcm9tby1ob3Zlci5zY3NzIiwiY29tcG9uZW50cy9wYW5lbHMvX3Byb21vLnNjc3MiLCJoeWJyaWQtY29tcG9uZW50cy9fbWFzb25yeS5zY3NzIiwiaHlicmlkLWNvbXBvbmVudHMvX3NlYXJjaC1ob21lLnNjc3MiLCJwYWdlcy9fZ2F0dGFjYS1jYXJlZXJzLnNjc3MiLCJwYWdlcy9fZ2F0dGFjYS1zb2x1dGlvbnMuc2NzcyIsInBhZ2VzL19ob21lLnNjc3MiLCJwYWdlcy9fcGFnZS1teS1hY2NvdW50LWRhc2hib2FyZC5zY3NzIiwicGFnZXMvX3BhZ2Utb3ZlcndyaXRlLnNjc3MiLCJwYWdlcy9fdGVzdC5zY3NzIiwicGFnZXMvX3Zvdy5zY3NzIiwiaGVscGVycy9fYWNjZXNzaWJpbGl0eS5zY3NzIiwiaGVscGVycy9fYW5pbWF0aW9ucy5zY3NzIiwiaGVscGVycy9fYmFja2dyb3VuZHMuc2NzcyIsImhlbHBlcnMvX2Jvb3RzdHJhcC5zY3NzIiwiaGVscGVycy9fYm9yZGVycy5zY3NzIiwiaGVscGVycy9fY2hhcnRpbmcuc2NzcyIsImhlbHBlcnMvX2ltYWdlcy5zY3NzIiwiaGVscGVycy9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwiaGVscGVycy9fc2NyZWVuLXJlYWRlci5zY3NzIiwiaGVscGVycy9fc2l6aW5nLnNjc3MiLCJoZWxwZXJzL19zcGFjaW5nLnNjc3MiLCJoZWxwZXJzL19zdGF0dXMuc2NzcyIsImhlbHBlcnMvX3R5cG9ncmFwaHkuc2NzcyIsImhlbHBlcnMvX3Zpc2libGlsaXR5LnNjc3MiLCJ2ZW5kb3IvX2Nvb2tpZS5zY3NzIiwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvc2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2suc2NzcyIsInZlbmRvci9zbGljay1jYXJvdXNlbC9fbXQtdGhlbWUuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnRcIjtcblxuLy8gQWRkIHN0eWxpbmcgdG8gY2FwdGNoYVxuQGltcG9ydCBcInZlbmRvci9jYXB0Y2hhXCI7XG5cbi8vIExvYWQgZm9udHMgdGhhdCBtaWdodCBiZSBuZWVkZWQgYnkgYWxsIG90aGVyIHNhc3NcbkBpbXBvcnQgXCJ2ZW5kb3IvZm9udC1hd2Vzb21lXCI7XG5cbi8vIG92ZXJ3cml0ZSBkcCBuYXN0aWVzXG5AaW1wb3J0IFwidmVuZG9yL2RwXCI7XG5cbi8vIG92ZXJ3cml0ZSBzaGFyZSB0aGlzIG5hc3RpZXNcbkBpbXBvcnQgXCJ2ZW5kb3Ivc2hhcmUtdGhpc1wiO1xuXG4vLyBMb2FkIEJvb3RzdHJhcCAzIHRvIGJhc2UgdGhlIHNpdGUgb25cbi8vQGltcG9ydCBcInZlbmRvci9ib290c3RyYXAvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibmV0d29ya2Vycy92ZW5kb3IvYm9vdHN0cmFwL3ZhcmlhYmxlc1wiO1xuXG5AaW1wb3J0IFwidmVuZG9yL2Jvb3RzdHJhcC9ib290c3RyYXBcIjtcblxuLy8gTG9hZCBjcml0aWNhbCB2YXJpYWJsZXMgZmlyc3QsIGZvbGxvd2VkIGJ5IGFsbCB0aGUgb3RoZXJzXG5AaW1wb3J0IFwidmFyaWFibGVzL2NvcmUvX2ZvbnQtZ2VvbWV0cmlhLnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29yZS9fZm9udC1sYXRvLnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29yZS9fZm9udC1tb250c2VycmF0LnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29yZS9fZm9udC1yb2JvdG8uc2Nzc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb3JlL19ncmlkLnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29yZS9fbGF5b3V0LnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29yZS9fdHlwb2dyYXBoeS5zY3NzXCI7XG5AaW1wb3J0IFwibmV0d29ya2Vycy92YXJpYWJsZXMvY29yZS9fY29sb3Vycy5zY3NzXCI7XG5AaW1wb3J0IFwibmV0d29ya2Vycy92YXJpYWJsZXMvY29yZS9fdHlwb2dyYXBoeS5zY3NzXCI7XG5cbkBpbXBvcnQgXCJ2YXJpYWJsZXMvX2FjY29yZGlvbi5zY3NzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL19iYWNrLXRvLXRvcC5zY3NzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL19iYWNrZ3JvdW5kLXRpdGxlLWhlcm8uc2Nzc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9fYmFja2dyb3VuZC10aXRsZS5zY3NzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL19ibG9ja3F1b3RlLnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvX2JyZWFkY3J1bWIuc2Nzc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9fYnV0dG9uLnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvX2Nhcm91c2VsLnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvX2NoYXJ0aW5nLnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvX2Ryb3Bkb3duLnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvX2VtYWlsLWpvYnMuc2Nzc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9fZmVhdHVyZWQtcHJvamVjdHMuc2Nzc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9fZmxvYXRzLnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvX2Zvb3Rlci1uYXZpZ2F0aW9uLnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvX2Zvcm0tZmlsdGVyLWNoZWNrYm94LnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvX2Zvcm0tZmlsdGVyLWlucHV0LnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvX2Zvcm0tZmlsdGVyLXJhZGlvLnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvX2hlYWRlci1pbmZvcm1hdGlvbi5zY3NzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL19pbWFnZXMuc2Nzc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9fbGlzdGluZy5zY3NzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL19tYXNvbnJ5LnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvX25hdi5zY3NzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL19uYXZpZ2F0aW9uLXByaW1hcnkuc2Nzc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9fb2ZmLWNhbnZhcy5zY3NzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL19wYW5lbHMuc2Nzc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9fc2VhcmNoLWZvcm0uc2Nzc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9fc2VhcmNoLWhvbWUuc2Nzc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9fc2VhcmNoLWpvYi1zZWN0b3JzLnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvX3NvY2lhbC1pY29ucy5zY3NzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL19zcGFjaW5nLnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvX3RhYmxlcy5zY3NzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL192b3cuc2Nzc1wiO1xuQGltcG9ydCBcIm5ldHdvcmtlcnMvdmFyaWFibGVzL19lbWFpbC1qb2JzLnNjc3NcIjtcbkBpbXBvcnQgXCJuZXR3b3JrZXJzL3ZhcmlhYmxlcy9fZmVhdHVyZWQtcHJvamVjdHMuc2Nzc1wiO1xuQGltcG9ydCBcIm5ldHdvcmtlcnMvdmFyaWFibGVzL19oZWFkZXItaW5mb3JtYXRpb24uc2Nzc1wiO1xuQGltcG9ydCBcIm5ldHdvcmtlcnMvdmFyaWFibGVzL19saXN0aW5nLnNjc3NcIjtcbkBpbXBvcnQgXCJuZXR3b3JrZXJzL3ZhcmlhYmxlcy9fbWFzb25yeS5zY3NzXCI7XG5AaW1wb3J0IFwibmV0d29ya2Vycy92YXJpYWJsZXMvX25hdmlnYXRpb24tcHJpbWFyeS5zY3NzXCI7XG5AaW1wb3J0IFwibmV0d29ya2Vycy92YXJpYWJsZXMvX29mZi1jYW52YXMuc2Nzc1wiO1xuQGltcG9ydCBcIm5ldHdvcmtlcnMvdmFyaWFibGVzL19zZWFyY2gtZm9ybS5zY3NzXCI7XG5AaW1wb3J0IFwibmV0d29ya2Vycy92YXJpYWJsZXMvX3NlYXJjaC1ob21lLnNjc3NcIjtcbkBpbXBvcnQgXCJuZXR3b3JrZXJzL3ZhcmlhYmxlcy9fdm93LnNjc3NcIjtcblxuQGltcG9ydCBcIm1peGlucy9fYWNjb3JkaW9uLnNjc3NcIjtcbkBpbXBvcnQgXCJtaXhpbnMvX2Jsb2NrLWdyaWQuc2Nzc1wiO1xuQGltcG9ydCBcIm1peGlucy9fYnV0dG9ucy5zY3NzXCI7XG5AaW1wb3J0IFwibWl4aW5zL19jaGFydGluZy5zY3NzXCI7XG5AaW1wb3J0IFwibWl4aW5zL19mb3Jtcy5zY3NzXCI7XG5AaW1wb3J0IFwibWl4aW5zL19pbWFnZS5zY3NzXCI7XG5AaW1wb3J0IFwibWl4aW5zL19tYXNvbnJ5LnNjc3NcIjtcbkBpbXBvcnQgXCJtaXhpbnMvX21lZGlhLWxpc3Rpbmcuc2Nzc1wiO1xuQGltcG9ydCBcIm1peGlucy9fbWl4aW5zLnNjc3NcIjtcbkBpbXBvcnQgXCJtaXhpbnMvX3BhbmVscy5zY3NzXCI7XG5AaW1wb3J0IFwibWl4aW5zL19wcmltYXJ5X25hdi5zY3NzXCI7XG5AaW1wb3J0IFwibWl4aW5zL19zaXRlLWhlYWRlci5zY3NzXCI7XG5AaW1wb3J0IFwibWl4aW5zL190cmFuc2l0aW9ucy5zY3NzXCI7XG5AaW1wb3J0IFwiYmFzZS9fZ3JpZC5zY3NzXCI7XG5AaW1wb3J0IFwiYmFzZS9faW1hZ2VzLnNjc3NcIjtcbkBpbXBvcnQgXCJiYXNlL19tZWRpYS5zY3NzXCI7XG5AaW1wb3J0IFwiYmFzZS9fdGFibGVzLnNjc3NcIjtcbkBpbXBvcnQgXCJiYXNlL190eXBvZ3JhcGh5LnNjc3NcIjtcbkBpbXBvcnQgXCJiYXNlL2Zvcm1zL19lcnJvcnMuc2Nzc1wiO1xuQGltcG9ydCBcImJhc2UvZm9ybXMvX2Zvcm1zLnNjc3NcIjtcbkBpbXBvcnQgXCJiYXNlL2xheW91dC9fMi1jb2x1bW4tbGVmdC5zY3NzXCI7XG5AaW1wb3J0IFwiYmFzZS9sYXlvdXQvXzItY29sdW1uLXJpZ2h0LnNjc3NcIjtcbkBpbXBvcnQgXCJiYXNlL2xheW91dC9fMi1jb2x1bW4uc2Nzc1wiO1xuQGltcG9ydCBcImJhc2UvbGF5b3V0L18zLWNvbHVtbi5zY3NzXCI7XG5AaW1wb3J0IFwiYmFzZS9sYXlvdXQvXzMtdG8tMi1jb2x1bW4tc3RhY2tlZC5zY3NzXCI7XG5AaW1wb3J0IFwiYmFzZS9sYXlvdXQvXzQtY29sdW1uLnNjc3NcIjtcbkBpbXBvcnQgXCJiYXNlL2xheW91dC9fNi1jb2x1bW4uc2Nzc1wiO1xuQGltcG9ydCBcImJhc2UvbGF5b3V0L183LWNvbHVtbi5zY3NzXCI7XG5AaW1wb3J0IFwiYmFzZS9sYXlvdXQvX2Jsb2NrLWdyaWQuc2Nzc1wiO1xuQGltcG9ydCBcImJhc2UvbGF5b3V0L19sYXlvdXQuc2Nzc1wiO1xuQGltcG9ydCBcImJhc2UvbGF5b3V0L19zaW5nbGUtY29sdW1uLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19hY2NvcmRpb24uc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2FsZXJ0cy5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYXJ0aWNsZS1oZWFkaW5nLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19hcnRpY2xlLWxpc3Rpbmcuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2JhY2stdG8tdG9wLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19iYWNrZ3JvdW5kLXRpdGxlLWhlcm8uc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2JhY2tncm91bmQtdGl0bGUuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2JyZWFkY3J1bWIuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2Jyb3dzZS1mZWF0dXJlZC5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYnJvd3NlLWZpbHRlci5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZW1haWwtam9icy5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZmVhdHVyZWQtcHJvamVjdHMuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2ZlYXR1cmVkLXJlY3J1aXRlci10aXRsZS5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZmlsdGVyLWxpc3Rpbmcuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2ZpbHRlci1zZWxlY3RlZC5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZm9vdGVyLW5hdmlnYXRpb24uc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2Zvb3Rlci5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZm9ybS1mYXZvdXJpdGVzLWpvYnMuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2Zvcm0tZmlsdGVyLWNoZWNrYm94LnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19mb3JtLWZpbHRlci1pbnB1dC5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZm9ybS1maWx0ZXItcmFkaW8uc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2dyYXktY2Fyb3VzZWwuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2hlYWRlci1pbmZvcm1hdGlvbi5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9faGVyby1iZy1pbWcuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2hlcm8tYmctdmlkZW8uc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2pvYi1hY3Rpb25zLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19qb2Itb3B0aW9ucy5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fbGlzdGluZy1oZWFkaW5nLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19saXN0aW5nLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19tYXNvbnJ5LnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19uYXZpZ2F0aW9uLWFsdGVybmF0aXZlLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19uYXZpZ2F0aW9uLWNsaWVudC5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fbmF2aWdhdGlvbi1wcmltYXJ5LnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19wcmV2aW91cy1uZXh0LnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19wcm9ncmVzcy1iYXJzLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19zZWFyY2gtYmctdmlkZW8uc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3NlYXJjaC1mb3JtLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19zZWFyY2gtam9iLXNlY3RvcnMuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3NoYXJlLWJhci5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fc29jaWFsLWJhci5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fc29jaWFsLWljb25zLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19zdGF0aWNfc2xpZGVyLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL191dGlscy1pY29ucy5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fd2VsbHMuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcGFuZWxzL19hYm91dC5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9wYW5lbHMvX2FjY29yZGlvbi5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9wYW5lbHMvX2pvYi1tYW5hZ2VyLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhbmVscy9fbGlzdGluZy5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9wYW5lbHMvX3BhbmVsLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhbmVscy9fcHJvbW8taG92ZXIuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcGFuZWxzL19wcm9tby5zY3NzXCI7XG5AaW1wb3J0IFwiaHlicmlkLWNvbXBvbmVudHMvX21hc29ucnkuc2Nzc1wiO1xuQGltcG9ydCBcImh5YnJpZC1jb21wb25lbnRzL19zZWFyY2gtaG9tZS5zY3NzXCI7XG5AaW1wb3J0IFwicGFnZXMvX2dhdHRhY2EtY2FyZWVycy5zY3NzXCI7XG5AaW1wb3J0IFwicGFnZXMvX2dhdHRhY2Etc29sdXRpb25zLnNjc3NcIjtcbkBpbXBvcnQgXCJwYWdlcy9faG9tZS5zY3NzXCI7XG5AaW1wb3J0IFwicGFnZXMvX3BhZ2UtbXktYWNjb3VudC1kYXNoYm9hcmQuc2Nzc1wiO1xuQGltcG9ydCBcInBhZ2VzL19wYWdlLW92ZXJ3cml0ZS5zY3NzXCI7XG5AaW1wb3J0IFwicGFnZXMvX3Rlc3Quc2Nzc1wiO1xuQGltcG9ydCBcInBhZ2VzL192b3cuc2Nzc1wiO1xuQGltcG9ydCBcImhlbHBlcnMvX2FjY2Vzc2liaWxpdHkuc2Nzc1wiO1xuQGltcG9ydCBcImhlbHBlcnMvX2FuaW1hdGlvbnMuc2Nzc1wiO1xuQGltcG9ydCBcImhlbHBlcnMvX2JhY2tncm91bmRzLnNjc3NcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL19ib290c3RyYXAuc2Nzc1wiO1xuQGltcG9ydCBcImhlbHBlcnMvX2JvcmRlcnMuc2Nzc1wiO1xuQGltcG9ydCBcImhlbHBlcnMvX2NoYXJ0aW5nLnNjc3NcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL19pbWFnZXMuc2Nzc1wiO1xuQGltcG9ydCBcImhlbHBlcnMvX3Jlc3BvbnNpdmUtZW1iZWQuc2Nzc1wiO1xuQGltcG9ydCBcImhlbHBlcnMvX3NjcmVlbi1yZWFkZXIuc2Nzc1wiO1xuQGltcG9ydCBcImhlbHBlcnMvX3NpemluZy5zY3NzXCI7XG5AaW1wb3J0IFwiaGVscGVycy9fc3BhY2luZy5zY3NzXCI7XG5AaW1wb3J0IFwiaGVscGVycy9fc3RhdHVzLnNjc3NcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL190eXBvZ3JhcGh5LnNjc3NcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL192aXNpYmxpbGl0eS5zY3NzXCI7XG5cbkBpbXBvcnQgXCJ2ZW5kb3IvY29va2llXCI7XG5cbi8vIFNsaWNrIENhcm91c2VsXG5AaW1wb3J0IFwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvc2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2suc2Nzc1wiO1xuQGltcG9ydCBcInZlbmRvci9zbGljay1jYXJvdXNlbC9fbXQtdGhlbWUuc2Nzc1wiO1xuXG4vKlxuKiBCZSBjYXJlZnVsIHdoZW4gb3ZlcndyaXRpbmcsIGxpYnNhc3MgYW5kL29yIGdsb2JiaW5nIHByb2R1Y2VcbiogdW5wcmVkaWN0YWJsZSByZXN1bHRzIGlmIGNvbW1lbnRlZCBpbXBvcnRzIGFyZSBpbmNsdWRlZC5cbiovIiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4kQnJlYWtwb2ludC1TZXR0aW5nczogKFxuICAnZGVmYXVsdCBtZWRpYSc6IGFsbCxcbiAgJ2RlZmF1bHQgZmVhdHVyZSc6IG1pbi13aWR0aCxcbiAgJ2RlZmF1bHQgcGFpcic6IHdpZHRoLFxuXG4gICdmb3JjZSBhbGwgbWVkaWEgdHlwZSc6IGZhbHNlLFxuICAndG8gZW1zJzogZmFsc2UsXG4gICd0cmFuc2Zvcm0gcmVzb2x1dGlvbnMnOiB0cnVlLFxuXG4gICdubyBxdWVyaWVzJzogZmFsc2UsXG4gICdubyBxdWVyeSBmYWxsYmFja3MnOiBmYWxzZSxcblxuICAnYmFzZSBmb250IHNpemUnOiAxNnB4LFxuXG4gICdsZWdhY3kgc3ludGF4JzogZmFsc2Vcbik7XG5cbiRicmVha3BvaW50OiAoKSAhZGVmYXVsdDtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBJbXBvcnRzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBpbXBvcnQgXCJicmVha3BvaW50L3NldHRpbmdzXCI7XG5AaW1wb3J0ICdicmVha3BvaW50L2NvbnRleHQnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9oZWxwZXJzJztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvcGFyc2Vycyc7XG5AaW1wb3J0ICdicmVha3BvaW50L25vLXF1ZXJ5JztcblxuQGltcG9ydCAnYnJlYWtwb2ludC9yZXNwb25kLXRvJztcblxuQGltcG9ydCBcImJyZWFrcG9pbnQvbGVnYWN5LXNldHRpbmdzXCI7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQnJlYWtwb2ludCBNaXhpblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbkBtaXhpbiBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBsZWdhY3ktc2V0dGluZ3Mtd2FybmluZztcblxuICAvLyBSZXNldCBjb250ZXh0c1xuICBAaW5jbHVkZSBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMoKTtcblxuICAkYnJlYWtwb2ludDogYnJlYWtwb2ludCgkcXVlcnksIGZhbHNlKTtcblxuICAkcXVlcnktc3RyaW5nOiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnknKTtcbiAgJHF1ZXJ5LWZhbGxiYWNrOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnZmFsbGJhY2snKTtcblxuICAkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnY29udGV4dCBob2xkZXInKSAhZ2xvYmFsO1xuICAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50OiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnkgY291bnQnKSAhZ2xvYmFsO1xuXG4gIC8vIEFsbG93IGZvciBhbiBhcy1uZWVkZWQgb3ZlcnJpZGUgb3IgdXNhZ2Ugb2Ygbm8gcXVlcnkgZmFsbGJhY2suXG4gIEBpZiAkbm8tcXVlcnkgIT0gZmFsc2Uge1xuICAgICRxdWVyeS1mYWxsYmFjazogJG5vLXF1ZXJ5O1xuICB9XG5cbiAgQGlmICRxdWVyeS1mYWxsYmFjayAhPSBmYWxzZSB7XG4gICAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJ25vLXF1ZXJ5JywgJHF1ZXJ5LWZhbGxiYWNrKTtcbiAgfVxuXG4gIC8vIFByaW50IE91dCBRdWVyeSBTdHJpbmdcbiAgQGlmIG5vdCBicmVha3BvaW50LWdldCgnbm8gcXVlcmllcycpIHtcbiAgICBAbWVkaWEgI3skcXVlcnktc3RyaW5nfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAaWYgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpICE9IGZhbHNlIG9yIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyaWVzJykgPT0gdHJ1ZSB7XG5cbiAgICAkdHlwZTogdHlwZS1vZihicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykpO1xuICAgICRwcmludDogZmFsc2U7XG5cbiAgICBAaWYgKCR0eXBlID09ICdib29sJykge1xuICAgICAgJHByaW50OiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ3N0cmluZycpIHtcbiAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgPT0gYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpIHtcbiAgICAgICAgJHByaW50OiB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ2xpc3QnKSB7XG4gICAgICBAZWFjaCAkd3JhcHBlciBpbiBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykge1xuICAgICAgICBAaWYgJHF1ZXJ5LWZhbGxiYWNrID09ICR3cmFwcGVyIHtcbiAgICAgICAgICAkcHJpbnQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBXcml0ZSBGYWxsYmFja1xuICAgIEBpZiAoJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlKSBhbmQgKCRwcmludCA9PSB0cnVlKSB7XG4gICAgICAkdHlwZS1mYWxsYmFjazogdHlwZS1vZigkcXVlcnktZmFsbGJhY2spO1xuXG4gICAgICBAaWYgKCR0eXBlLWZhbGxiYWNrICE9ICdib29sJykge1xuICAgICAgICAjeyRxdWVyeS1mYWxsYmFja30gJiB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcHJpdmF0ZS1icmVha3BvaW50LXJlc2V0LWNvbnRleHRzKCk7XG59XG5cblxuQG1peGluIG1xKCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gSGFzIFNldHRpbmdcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaGFzKCRzZXR0aW5nKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludCwgJHNldHRpbmcpIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBHZXQgU2V0dGluZ3Ncbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtZ2V0KCRzZXR0aW5nKSB7XG4gIEBpZiBicmVha3BvaW50LWhhcygkc2V0dGluZykge1xuICAgIEByZXR1cm4gbWFwLWdldCgkYnJlYWtwb2ludCwgJHNldHRpbmcpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJEJyZWFrcG9pbnQtU2V0dGluZ3MsICRzZXR0aW5nKTtcbiAgfVxufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFNldCBTZXR0aW5nc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1zZXQoJHNldHRpbmcsICR2YWx1ZSkge1xuICBAaWYgKHN0ci1pbmRleCgkc2V0dGluZywgJy0nKSBvciBzdHItaW5kZXgoJHNldHRpbmcsICdfJykpIGFuZCBzdHItaW5kZXgoJHNldHRpbmcsICcgJykgPT0gbnVsbCB7XG4gICAgQHdhcm4gXCJXb3JkcyBpbiBCcmVha3BvaW50IHNldHRpbmdzIHNob3VsZCBiZSBzZXBhcmF0ZWQgYnkgc3BhY2VzLCBub3QgZGFzaGVzIG9yIHVuZGVyc2NvcmVzLiBQbGVhc2UgcmVwbGFjZSBkYXNoZXMgYW5kIHVuZGVyc2NvcmVzIGJldHdlZW4gd29yZHMgd2l0aCBzcGFjZXMuIFNldHRpbmdzIHdpbGwgbm90IHdvcmsgYXMgZXhwZWN0ZWQgdW50aWwgY2hhbmdlZC5cIjtcbiAgfVxuICAkYnJlYWtwb2ludDogbWFwLW1lcmdlKCRicmVha3BvaW50LCAoJHNldHRpbmc6ICR2YWx1ZSkpICFnbG9iYWw7XG4gIEByZXR1cm4gdHJ1ZTtcbn1cblxuQG1peGluIGJyZWFrcG9pbnQtY2hhbmdlKCRzZXR0aW5nLCAkdmFsdWUpIHtcbiAgJGJyZWFrcG9pbnQtY2hhbmdlOiBicmVha3BvaW50LXNldCgkc2V0dGluZywgJHZhbHVlKTtcbn1cblxuQG1peGluIGJyZWFrcG9pbnQtc2V0KCRzZXR0aW5nLCAkdmFsdWUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludC1jaGFuZ2UoJHNldHRpbmcsICR2YWx1ZSk7XG59XG5cbkBtaXhpbiBia3B0LWNoYW5nZSgkc2V0dGluZywgJHZhbHVlKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQtY2hhbmdlKCRzZXR0aW5nLCAkdmFsdWUpO1xufVxuQG1peGluIGJrcHQtc2V0KCRzZXR0aW5nLCAkdmFsdWUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludC1jaGFuZ2UoJHNldHRpbmcsICR2YWx1ZSk7XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUmVtb3ZlIFNldHRpbmdcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtcmVzZXQoJHNldHRpbmdzLi4uKSB7XG4gIEBpZiBsZW5ndGgoJHNldHRpbmdzKSA9PSAxIHtcbiAgICAkc2V0dGluZ3M6IG50aCgkc2V0dGluZ3MsIDEpO1xuICB9XG5cbiAgQGVhY2ggJHNldHRpbmcgaW4gJHNldHRpbmdzIHtcbiAgICAkYnJlYWtwb2ludDogbWFwLXJlbW92ZSgkYnJlYWtwb2ludCwgJHNldHRpbmcpICFnbG9iYWw7XG4gIH1cbiAgQHJldHVybiB0cnVlO1xufVxuXG5AbWl4aW4gYnJlYWtwb2ludC1yZXNldCgkc2V0dGluZ3MuLi4pIHtcbiAgJGJyZWFrcG9pbnQtcmVzZXQ6IGJyZWFrcG9pbnQtcmVzZXQoJHNldHRpbmdzKTtcbn1cblxuQG1peGluIGJrcHQtcmVzZXQoJHNldHRpbmdzLi4uKSB7XG4gICRicmVha3BvaW50LXJlc2V0OiBicmVha3BvaW50LXJlc2V0KCRzZXR0aW5ncyk7XG59IiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBQcml2YXRlIEJyZWFrcG9pbnQgVmFyaWFibGVzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6ICgpO1xuJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudDogMCAhZGVmYXVsdDtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBCcmVha3BvaW50IEhhcyBDb250ZXh0XG4vLyBSZXR1cm5zIHdoZXRoZXIgb3Igbm90IHlvdSBhcmUgaW5zaWRlIGEgQnJlYWtwb2ludCBxdWVyeVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1oYXMtY29udGV4dCgpIHtcbiAgQGlmIGxlbmd0aCgkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50KSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQnJlYWtwb2ludCBHZXQgQ29udGV4dFxuLy8gJGZlYXR1cmU6IElucHV0IGZlYXR1cmUgdG8gZ2V0IGl0J3MgY3VycmVudCBNUSBjb250ZXh0LiBSZXR1cm5zIGZhbHNlIGlmIG5vIGNvbnRleHRcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtZ2V0LWNvbnRleHQoJGZlYXR1cmUpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXIsICRmZWF0dXJlKSB7XG4gICAgJGdldDogbWFwLWdldCgkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyLCAkZmVhdHVyZSk7XG4gICAgLy8gU3BlY2lhbCBoYW5kbGluZyBvZiBuby1xdWVyeSBmcm9tIGdldCBzaWRlIHNvIC9mYWxzZS8gcHJlcGVuZHMgYXJlbid0IHJldHVybmVkXG4gICAgQGlmICRmZWF0dXJlID09ICduby1xdWVyeScge1xuICAgICAgQGlmIHR5cGUtb2YoJGdldCkgPT0gJ2xpc3QnIGFuZCBsZW5ndGgoJGdldCkgPiAxIGFuZCBudGgoJGdldCwgMSkgPT0gZmFsc2Uge1xuICAgICAgICAkZ2V0OiBudGgoJGdldCwgbGVuZ3RoKCRnZXQpKTtcbiAgICAgIH1cbiAgICB9XG4gICAgQHJldHVybiAkZ2V0O1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgYnJlYWtwb2ludC1oYXMtY29udGV4dCgpIGFuZCAkZmVhdHVyZSA9PSAnbWVkaWEnIHtcbiAgICAgIEByZXR1cm4gYnJlYWtwb2ludC1nZXQoJ2RlZmF1bHQgbWVkaWEnKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBQcml2YXRlIGZ1bmN0aW9uIHRvIHNldCBjb250ZXh0XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBmdW5jdGlvbiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJGZlYXR1cmUsICR2YWx1ZSkge1xuICBAaWYgJHZhbHVlID09ICdtb25vY2hyb21lJyB7XG4gICAgJGZlYXR1cmU6ICdtb25vY2hyb21lJztcbiAgfVxuXG4gICRjdXJyZW50OiBtYXAtZ2V0KCRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXIsICRmZWF0dXJlKTtcbiAgQGlmICRjdXJyZW50IGFuZCBsZW5ndGgoJGN1cnJlbnQpID09ICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQge1xuICAgIEB3YXJuIFwiWW91IGhhdmUgYWxyZWFkeSBxdWVyaWVkIGFnYWluc3QgYCN7JGZlYXR1cmV9YC4gVW5leHBlY3RlZCB0aGluZ3MgbWF5IGhhcHBlbiBpZiB5b3UgcXVlcnkgYWdhaW5zdCB0aGUgc2FtZSBmZWF0dXJlIG1vcmUgdGhhbiBvbmNlIGluIHRoZSBzYW1lIGBhbmRgIHF1ZXJ5LiBCcmVha3BvaW50IGlzIG92ZXJ3cml0aW5nIHRoZSBjdXJyZW50IGNvbnRleHQgd2l0aCBgI3skdmFsdWV9YFwiO1xuICB9XG5cbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyLCAkZmVhdHVyZSkge1xuICAgICR2LWhvbGRlcjogKCk7XG4gICAgQGZvciAkaSBmcm9tIDEgdG8gJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudCB7XG4gICAgICBAaWYgJGZlYXR1cmUgPT0gJ21lZGlhJyB7XG4gICAgICAgICR2LWhvbGRlcjogYXBwZW5kKCR2LWhvbGRlciwgYnJlYWtwb2ludC1nZXQoJ2RlZmF1bHQgbWVkaWEnKSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICR2LWhvbGRlcjogYXBwZW5kKCR2LWhvbGRlciwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgICAkdi1ob2xkZXI6IGFwcGVuZCgkdi1ob2xkZXIsICR2YWx1ZSk7XG4gICAgJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlcjogbWFwLW1lcmdlKCRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXIsICgkZmVhdHVyZTogJHYtaG9sZGVyKSkgIWdsb2JhbDtcbiAgfVxuICBAZWxzZSB7XG4gICAgJHYtaG9sZGVyOiBtYXAtZ2V0KCRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXIsICRmZWF0dXJlKTtcbiAgICAkbGVuZ3RoOiBsZW5ndGgoJHYtaG9sZGVyKTtcbiAgICBAZm9yICRpIGZyb20gJGxlbmd0aCB0byAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50IC0gMSB7XG4gICAgICBAaWYgJGZlYXR1cmUgPT0gJ21lZGlhJyB7XG4gICAgICAgICR2LWhvbGRlcjogYXBwZW5kKCR2LWhvbGRlciwgYnJlYWtwb2ludC1nZXQoJ2RlZmF1bHQgbWVkaWEnKSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICR2LWhvbGRlcjogYXBwZW5kKCR2LWhvbGRlciwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgICAkdi1ob2xkZXI6IGFwcGVuZCgkdi1ob2xkZXIsICR2YWx1ZSk7XG4gICAgJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlcjogbWFwLW1lcmdlKCRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXIsICgkZmVhdHVyZTogJHYtaG9sZGVyKSkgIWdsb2JhbDtcbiAgfVxuXG4gIEByZXR1cm4gdHJ1ZTtcbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBQcml2YXRlIGZ1bmN0aW9uIHRvIHJlc2V0IGNvbnRleHRcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQG1peGluIHByaXZhdGUtYnJlYWtwb2ludC1yZXNldC1jb250ZXh0cyB7XG4gICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6ICgpICFnbG9iYWw7XG4gICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQ6IDAgIWdsb2JhbDtcbn0iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIENvbnZlcnRzIHRoZSBpbnB1dCB2YWx1ZSB0byBCYXNlIEVNc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gYnJlYWtwb2ludC10by1iYXNlLWVtKCR2YWx1ZSkge1xuICAkdmFsdWUtdW5pdDogdW5pdCgkdmFsdWUpO1xuXG4gIC8vIFdpbGwgY29udmVydCByZWxhdGl2ZSBFTXMgaW50byByb290IEVNcy5cbiAgQGlmIGJyZWFrcG9pbnQtZ2V0KCdiYXNlIGZvbnQgc2l6ZScpIGFuZCB0eXBlLW9mKGJyZWFrcG9pbnQtZ2V0KCdiYXNlIGZvbnQgc2l6ZScpKSA9PSAnbnVtYmVyJyBhbmQgJHZhbHVlLXVuaXQgPT0gJ2VtJyB7XG4gICAgJGJhc2UtdW5pdDogdW5pdChicmVha3BvaW50LWdldCgnYmFzZSBmb250IHNpemUnKSk7XG5cbiAgICBAaWYgJGJhc2UtdW5pdCA9PSAncHgnIG9yICRiYXNlLXVuaXQgPT0gJyUnIG9yICRiYXNlLXVuaXQgPT0gJ2VtJyBvciAkYmFzZS11bml0ID09ICdwdCcge1xuICAgICAgQHJldHVybiBiYXNlLWNvbnZlcnNpb24oJHZhbHVlKSAvIGJhc2UtY29udmVyc2lvbihicmVha3BvaW50LWdldCgnYmFzZSBmb250IHNpemUnKSkgKiAxZW07XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICcje2JyZWFrcG9pbnQtZ2V0KFxcJ2Jhc2UgZm9udCBzaXplXFwnKX0gaXMgbm90IHNldCBpbiB2YWxpZCB1bml0cyBmb3IgZm9udCBzaXplISc7XG4gICAgICBAcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBiYXNlLWNvbnZlcnNpb24oJHZhbHVlKTtcbiAgfVxufVxuXG5AZnVuY3Rpb24gYmFzZS1jb252ZXJzaW9uKCR2YWx1ZSkge1xuICAkdW5pdDogdW5pdCgkdmFsdWUpO1xuXG4gIEBpZiAkdW5pdCA9PSAncHgnIHtcbiAgICBAcmV0dXJuICR2YWx1ZSAvIDE2cHggKiAxZW07XG4gIH1cbiAgQGVsc2UgaWYgJHVuaXQgPT0gJyUnIHtcbiAgICBAcmV0dXJuICR2YWx1ZSAvIDEwMCUgKiAxZW07XG4gIH1cbiAgQGVsc2UgaWYgJHVuaXQgPT0gJ2VtJyB7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbiAgQGVsc2UgaWYgJHVuaXQgPT0gJ3B0JyB7XG4gICAgQHJldHVybiAkdmFsdWUgLyAxMnB0ICogMWVtO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuICR2YWx1ZTtcbi8vICAgIEB3YXJuICdFdmVyeXRoaW5nIGlzIHRlcnJpYmxlISBXaGF0IGhhdmUgeW91IGRvbmU/ISc7XG4gIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBSZXR1cm5zIHdoZXRoZXIgdGhlIGZlYXR1cmUgY2FuIGhhdmUgYSBtaW4vbWF4IHBhaXJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuJGJyZWFrcG9pbnQtbWluLW1heC1mZWF0dXJlczogJ2NvbG9yJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdjb2xvci1pbmRleCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYXNwZWN0LXJhdGlvJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkZXZpY2UtYXNwZWN0LXJhdGlvJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkZXZpY2UtaGVpZ2h0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkZXZpY2Utd2lkdGgnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hlaWdodCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbW9ub2Nocm9tZScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncmVzb2x1dGlvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnd2lkdGgnO1xuXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4tbWF4KCRmZWF0dXJlKSB7XG4gIEBlYWNoICRpdGVtIGluICRicmVha3BvaW50LW1pbi1tYXgtZmVhdHVyZXMge1xuICAgIEBpZiAkZmVhdHVyZSA9PSAkaXRlbSB7XG4gICAgICBAcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gZmFsc2U7XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUmV0dXJucyB3aGV0aGVyIHRoZSBmZWF0dXJlIGNhbiBoYXZlIGEgc3RyaW5nIHZhbHVlXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRicmVha3BvaW50LXN0cmluZy1mZWF0dXJlczogICdvcmllbnRhdGlvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2NhbicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnY29sb3InLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2FzcGVjdC1yYXRpbycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGV2aWNlLWFzcGVjdC1yYXRpbycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9pbnRlcicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbHVtaW5vc2l0eSc7XG5cbkBmdW5jdGlvbiBicmVha3BvaW50LXN0cmluZy12YWx1ZSgkZmVhdHVyZSkge1xuICBAZWFjaCAkaXRlbSBpbiAkYnJlYWtwb2ludC1zdHJpbmctZmVhdHVyZXMge1xuICAgIEBpZiBicmVha3BvaW50LW1pbi1tYXgoJGl0ZW0pIHtcbiAgICAgIEBpZiAkZmVhdHVyZSA9PSAnbWluLSN7JGl0ZW19JyBvciAkZmVhdHVyZSA9PSAnbWF4LSN7JGl0ZW19JyB7XG4gICAgICAgIEByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2UgaWYgJGZlYXR1cmUgPT0gJGl0ZW0ge1xuICAgICAgQHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuIGZhbHNlO1xufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFJldHVybnMgd2hldGhlciB0aGUgZmVhdHVyZSBpcyBhIG1lZGlhIHR5cGVcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuJGJyZWFrcG9pbnQtbWVkaWEtdHlwZXM6ICAnYWxsJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2JyYWlsbGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAnZW1ib3NzZWQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAnaGFuZGhlbGQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAncHJpbnQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAncHJvamVjdGlvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICdzY3JlZW4nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAnc3BlZWNoJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3R0eScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICd0dic7XG5cbkBmdW5jdGlvbiBicmVha3BvaW50LWlzLW1lZGlhKCRmZWF0dXJlKSB7XG4gIEBlYWNoICRtZWRpYSBpbiAkYnJlYWtwb2ludC1tZWRpYS10eXBlcyB7XG4gICAgQGlmICgkZmVhdHVyZSA9PSAkbWVkaWEpIG9yICgkZmVhdHVyZSA9PSAnbm90ICN7JG1lZGlhfScpIG9yICgkZmVhdHVyZSA9PSAnb25seSAjeyRtZWRpYX0nKSB7XG4gICAgICBAcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiBmYWxzZTtcbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBSZXR1cm5zIHdoZXRoZXIgdGhlIGZlYXR1cmUgY2FuIHN0YW5kIGFsb25lXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRicmVha3BvaW50LXNpbmdsZS1zdHJpbmctZmVhdHVyZXM6ICdjb2xvcicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnY29sb3ItaW5kZXgnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2dyaWQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ21vbm9jaHJvbWUnO1xuXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKCRmZWF0dXJlKSB7XG4gIEBlYWNoICRpdGVtIGluICRicmVha3BvaW50LXNpbmdsZS1zdHJpbmctZmVhdHVyZXMge1xuICAgIEBpZiAkZmVhdHVyZSA9PSAkaXRlbSB7XG4gICAgICBAcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gZmFsc2U7XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUmV0dXJucyB3aGV0aGVyIHRoZSBmZWF0dXJlXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBmdW5jdGlvbiBicmVha3BvaW50LWlzLXJlc29sdXRpb24oJGZlYXR1cmUpIHtcbiAgJHJlc29sdXRpb25zOiAnZGV2aWNlLXBpeGVsLXJhdGlvJywgJ2Rwcic7XG5cbiAgQGlmIGJyZWFrcG9pbnQtZ2V0KCd0cmFuc2Zvcm0gcmVzb2x1dGlvbnMnKSB7XG4gICAgJHJlc29sdXRpb25zOiBhcHBlbmQoJHJlc29sdXRpb25zLCAncmVzb2x1dGlvbicpO1xuICB9XG5cbiAgQGVhY2ggJHJlc28gaW4gJHJlc29sdXRpb25zIHtcbiAgICBAaWYgaW5kZXgoJGZlYXR1cmUsICRyZXNvKSBvciBpbmRleCgkZmVhdHVyZSwgJ21pbi0jeyRyZXNvfScpIG9yIGluZGV4KCRmZWF0dXJlLCAnbWF4LSN7JHJlc299Jykge1xuICAgICAgQHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gZmFsc2U7XG59XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEltcG9ydCBQYXJzZXIgUGllY2VzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBpbXBvcnQgXCJwYXJzZXJzL3F1ZXJ5XCI7XG5AaW1wb3J0IFwicGFyc2Vycy9zaW5nbGVcIjtcbkBpbXBvcnQgXCJwYXJzZXJzL2RvdWJsZVwiO1xuQGltcG9ydCBcInBhcnNlcnMvdHJpcGxlXCI7XG5AaW1wb3J0IFwicGFyc2Vycy9yZXNvbHV0aW9uXCI7XG5cbiRNZW1vLUV4aXN0czogZnVuY3Rpb24tZXhpc3RzKG1lbW8tZ2V0KSBhbmQgZnVuY3Rpb24tZXhpc3RzKG1lbW8tc2V0KTtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBCcmVha3BvaW50IEZ1bmN0aW9uXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBmdW5jdGlvbiBicmVha3BvaW50KCRxdWVyeSwgJGNvbnRleHRzLi4uKSB7XG4gICRydW46IHRydWU7XG4gICRyZXR1cm46ICgpO1xuXG4gIC8vIEdyYWIgdGhlIE1lbW8gT3V0cHV0IGlmIE1lbW9pemF0aW9uIGNhbiBiZSBhIHRoaW5nXG4gIEBpZiAkTWVtby1FeGlzdHMge1xuICAgICRyZXR1cm46IG1lbW8tZ2V0KGJyZWFrcG9pbnQsIGJyZWFrcG9pbnQgJHF1ZXJ5ICRjb250ZXh0cyk7XG5cbiAgICBAaWYgJHJldHVybiAhPSBudWxsIHtcbiAgICAgICRydW46IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBub3QgJE1lbW8tRXhpc3RzIG9yICRydW4ge1xuICAgIC8vIEludGVybmFsIFZhcmlhYmxlc1xuICAgICRxdWVyeS1zdHJpbmc6ICcnO1xuICAgICRxdWVyeS1mYWxsYmFjazogZmFsc2U7XG4gICAgJHJldHVybjogKCk7XG5cbiAgICAvLyBSZXNlcnZlIEdsb2JhbCBQcml2YXRlIEJyZWFrcG9pbnQgQ29udGV4dFxuICAgICRob2xkZXItY29udGV4dDogJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlcjtcbiAgICAkaG9sZGVyLXF1ZXJ5LWNvdW50OiAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50O1xuXG4gICAgLy8gUmVzZXQgR2xvYmFsIFByaXZhdGUgQnJlYWtwb2ludCBDb250ZXh0XG4gICAgJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlcjogKCkgIWdsb2JhbDtcbiAgICAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50OiAwICFnbG9iYWw7XG5cblxuICAgIC8vIFRlc3QgdG8gc2VlIGlmIGl0J3MgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdFxuICAgICRvci1saXN0OiBpZihsaXN0LXNlcGFyYXRvcigkcXVlcnkpID09ICdjb21tYScsIHRydWUsIGZhbHNlKTtcblxuXG4gICAgQGlmICgkb3ItbGlzdCA9PSBmYWxzZSBhbmQgYnJlYWtwb2ludC1nZXQoJ2xlZ2FjeSBzeW50YXgnKSA9PSBmYWxzZSkge1xuICAgICAgJHF1ZXJ5LXN0cmluZzogYnJlYWtwb2ludC1wYXJzZSgkcXVlcnkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkbGVuZ3RoOiBsZW5ndGgoJHF1ZXJ5KTtcblxuICAgICAgJGxhc3Q6IG50aCgkcXVlcnksICRsZW5ndGgpO1xuICAgICAgJHF1ZXJ5LWZhbGxiYWNrOiBicmVha3BvaW50LW5vLXF1ZXJ5KCRsYXN0KTtcblxuICAgICAgQGlmICgkcXVlcnktZmFsbGJhY2sgIT0gZmFsc2UpIHtcbiAgICAgICAgJGxlbmd0aDogJGxlbmd0aCAtIDE7XG4gICAgICB9XG5cbiAgICAgIEBpZiAoYnJlYWtwb2ludC1nZXQoJ2xlZ2FjeSBzeW50YXgnKSA9PSB0cnVlKSB7XG4gICAgICAgICRtcTogKCk7XG5cbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbGVuZ3RoIHtcbiAgICAgICAgICAkbXE6IGFwcGVuZCgkbXEsIG50aCgkcXVlcnksICRpKSwgY29tbWEpO1xuICAgICAgICB9XG5cbiAgICAgICAgJHF1ZXJ5LXN0cmluZzogYnJlYWtwb2ludC1wYXJzZSgkbXEpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkcXVlcnktc3RyaW5nOiAnJztcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbGVuZ3RoIHtcbiAgICAgICAgICAkcXVlcnktc3RyaW5nOiAkcXVlcnktc3RyaW5nICsgaWYoJGkgPT0gMSwgJycsICcsICcpICsgYnJlYWtwb2ludC1wYXJzZShudGgoJHF1ZXJ5LCAkaSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJHJldHVybjogKCdxdWVyeSc6ICRxdWVyeS1zdHJpbmcsXG4gICAgICAgICdmYWxsYmFjayc6ICRxdWVyeS1mYWxsYmFjayxcbiAgICAgICAgJ2NvbnRleHQgaG9sZGVyJzogJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlcixcbiAgICAgICAgJ3F1ZXJ5IGNvdW50JzogJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudFxuICAgICk7XG4gICAgQGlmIGxlbmd0aCgkY29udGV4dHMpID4gMCBhbmQgbnRoKCRjb250ZXh0cywgMSkgIT0gZmFsc2Uge1xuICAgICAgQGlmICRxdWVyeS1mYWxsYmFjayAhPSBmYWxzZSB7XG4gICAgICAgICRjb250ZXh0LXNldHRlcjogcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KCduby1xdWVyeScsICRxdWVyeS1mYWxsYmFjayk7XG4gICAgICB9XG4gICAgICAkY29udGV4dC1tYXA6ICgpO1xuICAgICAgQGVhY2ggJGNvbnRleHQgaW4gJGNvbnRleHRzIHtcbiAgICAgICAgJGNvbnRleHQtbWFwOiBtYXAtbWVyZ2UoJGNvbnRleHQtbWFwLCAoJGNvbnRleHQ6IGJyZWFrcG9pbnQtZ2V0LWNvbnRleHQoJGNvbnRleHQpKSk7XG4gICAgICB9XG4gICAgICAkcmV0dXJuOiBtYXAtbWVyZ2UoJHJldHVybiwgKGNvbnRleHQ6ICRjb250ZXh0LW1hcCkpO1xuICAgIH1cblxuICAgIC8vIFJlc2V0IEdsb2JhbCBQcml2YXRlIEJyZWFrcG9pbnQgQ29udGV4dFxuICAgICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6ICgpICFnbG9iYWw7XG4gICAgJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudDogMCAhZ2xvYmFsO1xuXG4gICAgQGlmICRNZW1vLUV4aXN0cyB7XG4gICAgICAkaG9sZGVyOiBtZW1vLXNldChicmVha3BvaW50LCBicmVha3BvaW50ICRxdWVyeSAkY29udGV4dHMsICRyZXR1cm4pO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHJldHVybjtcbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBHZW5lcmFsIEJyZWFrcG9pbnQgUGFyc2VyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBmdW5jdGlvbiBicmVha3BvaW50LXBhcnNlKCRxdWVyeSkge1xuICAvLyBJbmNyZWFzZSBudW1iZXIgb2YgJ2FuZCcgcXVlcmllc1xuICAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50OiAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50ICsgMSAhZ2xvYmFsO1xuXG4gIC8vIFNldCB1cCBNZWRpYSBUeXBlXG4gICRxdWVyeS1wcmludDogJyc7XG5cbiAgJGZvcmNlLWFsbDogKChicmVha3BvaW50LWdldCgnZm9yY2UgYWxsIG1lZGlhIHR5cGUnKSA9PSB0cnVlKSBhbmQgKGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IG1lZGlhJykgPT0gJ2FsbCcpKTtcbiAgJGVtcHR5LW1lZGlhOiB0cnVlO1xuICBAaWYgKCRmb3JjZS1hbGwgPT0gdHJ1ZSkgb3IgKGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IG1lZGlhJykgIT0gJ2FsbCcpIHtcbiAgICAvLyBGb3JjZSB0aGUgcHJpbnQgb2YgdGhlIGRlZmF1bHQgbWVkaWEgdHlwZSBpZiAoZm9yY2UgYWxsIGlzIHRydWUgYW5kIGRlZmF1bHQgbWVkaWEgdHlwZSBpcyBhbGwpIG9yIChkZWZhdWx0IG1lZGlhIHR5cGUgaXMgbm90IGFsbClcbiAgICAkcXVlcnktcHJpbnQ6IGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IG1lZGlhJyk7XG4gICAgJGVtcHR5LW1lZGlhOiBmYWxzZTtcbiAgfVxuXG5cbiAgJHF1ZXJ5LXJlc29sdXRpb246IGZhbHNlO1xuXG4gICRxdWVyeS1ob2xkZXI6IGJyZWFrcG9pbnQtcGFyc2UtcXVlcnkoJHF1ZXJ5KTtcblxuXG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggcGFyc2VkIG91dCBxdWVyeSBhbmQgd3JpdGUgaXQgdG8gJHF1ZXJ5LXByaW50XG4gICRmaXJzdDogdHJ1ZTtcblxuICBAZWFjaCAkZmVhdHVyZSBpbiAkcXVlcnktaG9sZGVyIHtcbiAgICAkbGVuZ3RoOiBsZW5ndGgoJGZlYXR1cmUpO1xuXG4gICAgLy8gUGFyc2UgYSBzaW5nbGUgZmVhdHVyZVxuICAgIEBpZiAoJGxlbmd0aCA9PSAxKSB7XG4gICAgICAvLyBGZWF0dXJlIGlzIGN1cnJlbnRseSBhIGxpc3QsIGdyYWIgdGhlIGFjdHVhbCB2YWx1ZVxuICAgICAgJGZlYXR1cmU6IG50aCgkZmVhdHVyZSwgMSk7XG5cbiAgICAgIC8vIE1lZGlhIFR5cGUgbXVzdCBieSBjb252ZW50aW9uIGJlIHRoZSBmaXJzdCBpdGVtLCBzbyBpdCdzIHNhZmUgdG8gZmxhdCBvdmVycmlkZSAkcXVlcnktcHJpbnQsIHdoaWNoIHJpZ2h0IG5vdyBzaG91bGQgb25seSBiZSB0aGUgZGVmYXVsdCBtZWRpYSB0eXBlXG4gICAgICBAaWYgKGJyZWFrcG9pbnQtaXMtbWVkaWEoJGZlYXR1cmUpKSB7XG4gICAgICAgIEBpZiAoJGZvcmNlLWFsbCA9PSB0cnVlKSBvciAoJGZlYXR1cmUgIT0gJ2FsbCcpIHtcbiAgICAgICAgICAvLyBGb3JjZSB0aGUgcHJpbnQgb2YgdGhlIGRlZmF1bHQgbWVkaWEgdHlwZSBpZiAoZm9yY2UgYWxsIGlzIHRydWUgYW5kIGRlZmF1bHQgbWVkaWEgdHlwZSBpcyBhbGwpIG9yIChkZWZhdWx0IG1lZGlhIHR5cGUgaXMgbm90IGFsbClcbiAgICAgICAgICAkcXVlcnktcHJpbnQ6ICRmZWF0dXJlO1xuICAgICAgICAgICRlbXB0eS1tZWRpYTogZmFsc2U7XG5cbiAgICAgICAgICAvLyBTZXQgQ29udGV4dFxuICAgICAgICAgICRjb250ZXh0LXNldHRlcjogcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KG1lZGlhLCAkcXVlcnktcHJpbnQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICRwYXJzZWQ6IGJyZWFrcG9pbnQtcGFyc2Utc2luZ2xlKCRmZWF0dXJlLCAkZW1wdHktbWVkaWEsICRmaXJzdCk7XG4gICAgICAgICRxdWVyeS1wcmludDogJyN7JHF1ZXJ5LXByaW50fSAjeyRwYXJzZWR9JztcbiAgICAgICAgJGZpcnN0OiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gUGFyc2UgYSBkb3VibGUgZmVhdHVyZVxuICAgIEBlbHNlIGlmICgkbGVuZ3RoID09IDIpIHtcbiAgICAgIEBpZiAoYnJlYWtwb2ludC1pcy1yZXNvbHV0aW9uKCRmZWF0dXJlKSAhPSBmYWxzZSkge1xuICAgICAgICAkcXVlcnktcmVzb2x1dGlvbjogJGZlYXR1cmU7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICRwYXJzZWQ6IG51bGw7XG4gICAgICAgIC8vIElmIGl0J3MgYSBzdHJpbmcvbnVtYmVyIHBhaXIsXG4gICAgICAgIC8vIHdlIGNoZWNrIHRvIHNlZSBpZiBvbmUgaXMgYSBzaW5nbGUtc3RyaW5nIHZhbHVlLFxuICAgICAgICAvLyB0aGVuIHdlIHBhcnNlIGl0IGFzIGEgbm9ybWFsIGRvdWJsZVxuICAgICAgICAkYWxwaGE6IG50aCgkZmVhdHVyZSwgMSk7XG4gICAgICAgICRiZXRhOiBudGgoJGZlYXR1cmUsIDIpO1xuICAgICAgICBAaWYgYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKCRhbHBoYSkgb3IgYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKCRiZXRhKSB7XG4gICAgICAgICAgJHBhcnNlZDogYnJlYWtwb2ludC1wYXJzZS1zaW5nbGUoJGFscGhhLCAkZW1wdHktbWVkaWEsICRmaXJzdCk7XG4gICAgICAgICAgJHF1ZXJ5LXByaW50OiAnI3skcXVlcnktcHJpbnR9ICN7JHBhcnNlZH0nO1xuICAgICAgICAgICRmaXJzdDogZmFsc2U7XG4gICAgICAgICAgJHBhcnNlZDogYnJlYWtwb2ludC1wYXJzZS1zaW5nbGUoJGJldGEsICRlbXB0eS1tZWRpYSwgJGZpcnN0KTtcbiAgICAgICAgICAkcXVlcnktcHJpbnQ6ICcjeyRxdWVyeS1wcmludH0gI3skcGFyc2VkfSc7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICRwYXJzZWQ6IGJyZWFrcG9pbnQtcGFyc2UtZG91YmxlKCRmZWF0dXJlLCAkZW1wdHktbWVkaWEsICRmaXJzdCk7XG4gICAgICAgICAgJHF1ZXJ5LXByaW50OiAnI3skcXVlcnktcHJpbnR9ICN7JHBhcnNlZH0nO1xuICAgICAgICAgICRmaXJzdDogZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLy8gUGFyc2UgYSB0cmlwbGUgZmVhdHVyZVxuICAgIEBlbHNlIGlmICgkbGVuZ3RoID09IDMpIHtcbiAgICAgICRwYXJzZWQ6IGJyZWFrcG9pbnQtcGFyc2UtdHJpcGxlKCRmZWF0dXJlLCAkZW1wdHktbWVkaWEsICRmaXJzdCk7XG4gICAgICAkcXVlcnktcHJpbnQ6ICcjeyRxdWVyeS1wcmludH0gI3skcGFyc2VkfSc7XG4gICAgICAkZmlyc3Q6IGZhbHNlO1xuICAgIH1cblxuICB9XG5cbiAgQGlmICgkcXVlcnktcmVzb2x1dGlvbiAhPSBmYWxzZSkge1xuICAgICRxdWVyeS1wcmludDogYnJlYWtwb2ludC1idWlsZC1yZXNvbHV0aW9uKCRxdWVyeS1wcmludCwgJHF1ZXJ5LXJlc29sdXRpb24sICRlbXB0eS1tZWRpYSwgJGZpcnN0KTtcbiAgfVxuXG4gIC8vIExvb3AgdGhyb3VnaCBlYWNoIGZlYXR1cmUgdGhhdCdzIGJlZW4gZGV0ZWN0ZWQgc28gZmFyIGFuZCBhcHBlbmQgJ2ZhbHNlJyB0byB0aGUgdGhlIHZhbHVlIGxpc3QgdG8gaW5jcmVtZW50IHRoZWlyIGNvdW50ZXJzXG4gIEBlYWNoICRmLCAkdiBpbiAkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyIHtcbiAgICAkdi1ob2xkZXI6ICR2O1xuICAgICRsZW5ndGg6IGxlbmd0aCgkdi1ob2xkZXIpO1xuICAgIEBpZiBsZW5ndGgoJHYtaG9sZGVyKSA8ICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQge1xuICAgICAgQGZvciAkaSBmcm9tICRsZW5ndGggdG8gJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudCB7XG4gICAgICAgIEBpZiAkZiA9PSAnbWVkaWEnIHtcbiAgICAgICAgICAkdi1ob2xkZXI6IGFwcGVuZCgkdi1ob2xkZXIsIGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IG1lZGlhJykpO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAkdi1ob2xkZXI6IGFwcGVuZCgkdi1ob2xkZXIsIGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyOiBtYXAtbWVyZ2UoJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlciwgKCRmOiAkdi1ob2xkZXIpKSAhZ2xvYmFsO1xuICB9XG5cbiAgQHJldHVybiAkcXVlcnktcHJpbnQ7XG59XG4iLCJAZnVuY3Rpb24gYnJlYWtwb2ludC1wYXJzZS1xdWVyeSgkcXVlcnkpIHtcbiAgLy8gUGFyc2UgZmVhdHVyZXMgb3V0IG9mIGFuIGluZGl2aWR1YWwgcXVlcnlcbiAgJGZlYXR1cmUtaG9sZGVyOiAoKTtcbiAgJHF1ZXJ5LWhvbGRlcjogKCk7XG4gICRsZW5ndGg6IGxlbmd0aCgkcXVlcnkpO1xuXG4gIEBpZiAkbGVuZ3RoID09IDIge1xuICAgIC8vIElmIHdlJ3ZlIGdvdCBhIHN0cmluZy9udW1iZXIsIG51bWJlci9zdHJpbmcsIGNoZWNrIHRvIHNlZSBpZiBpdCdzIGEgdmFsaWQgc3RyaW5nL251bWJlciBwYWlyIG9yIHR3byBzaW5nbGVzXG4gICAgQGlmICh0eXBlLW9mKG50aCgkcXVlcnksIDEpKSA9PSAnc3RyaW5nJyBhbmQgdHlwZS1vZihudGgoJHF1ZXJ5LCAyKSkgPT0gJ251bWJlcicpIG9yICh0eXBlLW9mKG50aCgkcXVlcnksIDEpKSA9PSAnbnVtYmVyJyBhbmQgdHlwZS1vZihudGgoJHF1ZXJ5LCAyKSkgPT0gJ3N0cmluZycpIHtcblxuICAgICAgJG51bWJlcjogJyc7XG4gICAgICAkdmFsdWU6ICcnO1xuXG4gICAgICBAaWYgdHlwZS1vZihudGgoJHF1ZXJ5LCAxKSkgPT0gJ3N0cmluZycge1xuICAgICAgICAkbnVtYmVyOiBudGgoJHF1ZXJ5LCAyKTtcbiAgICAgICAgJHZhbHVlOiBudGgoJHF1ZXJ5LCAxKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJG51bWJlcjogbnRoKCRxdWVyeSwgMSk7XG4gICAgICAgICR2YWx1ZTogbnRoKCRxdWVyeSwgMik7XG4gICAgICB9XG5cbiAgICAgIC8vIElmIHRoZSBzdHJpbmcgdmFsdWUgY2FuIGJlIGEgc2luZ2xlIHZhbHVlLCBjaGVjayB0byBzZWUgaWYgdGhlIG51bWJlciBwYXNzZWQgaW4gaXMgYSB2YWxpZCBpbnB1dCBmb3Igc2FpZCBzaW5nbGUgdmFsdWUuIEZvcnR1bmF0ZWx5LCBhbGwgY3VycmVudCBzaW5nbGUtdmFsdWUgb3B0aW9ucyBvbmx5IGFjY2VwdCB1bml0bGVzcyBudW1iZXJzLCBzbyB0aGlzIGNoZWNrIGlzIGVhc3kuXG4gICAgICBAaWYgYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKCR2YWx1ZSkge1xuICAgICAgICBAaWYgdW5pdGxlc3MoJG51bWJlcikge1xuICAgICAgICAgICRmZWF0dXJlLWhvbGRlcjogYXBwZW5kKCR2YWx1ZSwgJG51bWJlciwgc3BhY2UpO1xuICAgICAgICAgICRxdWVyeS1ob2xkZXI6IGFwcGVuZCgkcXVlcnktaG9sZGVyLCAkZmVhdHVyZS1ob2xkZXIsIGNvbW1hKTtcbiAgICAgICAgICBAcmV0dXJuICRxdWVyeS1ob2xkZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC8vIElmIHRoZSBzdHJpbmcgaXMgYSBtZWRpYSB0eXBlLCBzcGxpdCB0aGUgcXVlcnlcbiAgICAgIEBpZiBicmVha3BvaW50LWlzLW1lZGlhKCR2YWx1ZSkge1xuICAgICAgICAkcXVlcnktaG9sZGVyOiBhcHBlbmQoJHF1ZXJ5LWhvbGRlciwgbnRoKCRxdWVyeSwgMSkpO1xuICAgICAgICAkcXVlcnktaG9sZGVyOiBhcHBlbmQoJHF1ZXJ5LWhvbGRlciwgbnRoKCRxdWVyeSwgMikpO1xuICAgICAgICBAcmV0dXJuICRxdWVyeS1ob2xkZXI7XG4gICAgICB9XG4gICAgICAvLyBJZiBpdCdzIG5vdCBhIHNpbmdsZSBmZWF0dXJlLCB3ZSdyZSBqdXN0IGdvaW5nIHRvIGFzc3VtZSBpdCdzIGEgcHJvcGVyIHN0cmluZy92YWx1ZSBwYWlyLCBhbmQgcm9sbCB3aXRoIGl0LlxuICAgICAgQGVsc2Uge1xuICAgICAgICAkZmVhdHVyZS1ob2xkZXI6IGFwcGVuZCgkdmFsdWUsICRudW1iZXIsIHNwYWNlKTtcbiAgICAgICAgJHF1ZXJ5LWhvbGRlcjogYXBwZW5kKCRxdWVyeS1ob2xkZXIsICRmZWF0dXJlLWhvbGRlciwgY29tbWEpO1xuICAgICAgICBAcmV0dXJuICRxdWVyeS1ob2xkZXI7XG4gICAgICB9XG5cbiAgICB9XG4gICAgLy8gSWYgdGhleSdyZSBib3RoIG51bWJlcnMsIHdlIGFzc3VtZSBpdCdzIGEgZG91YmxlIGFuZCByb2xsIHdpdGggdGhhdFxuICAgIEBlbHNlIGlmICh0eXBlLW9mKG50aCgkcXVlcnksIDEpKSA9PSAnbnVtYmVyJyBhbmQgdHlwZS1vZihudGgoJHF1ZXJ5LCAyKSkgPT0gJ251bWJlcicpIHtcbiAgICAgICRmZWF0dXJlLWhvbGRlcjogYXBwZW5kKG50aCgkcXVlcnksIDEpLCBudGgoJHF1ZXJ5LCAyKSwgc3BhY2UpO1xuICAgICAgJHF1ZXJ5LWhvbGRlcjogYXBwZW5kKCRxdWVyeS1ob2xkZXIsICRmZWF0dXJlLWhvbGRlciwgY29tbWEpO1xuICAgICAgQHJldHVybiAkcXVlcnktaG9sZGVyO1xuICAgIH1cbiAgICAvLyBJZiB0aGV5J3JlIGJvdGggc3RyaW5ncyBhbmQgbmVpdGhlciBhcmUgc2luZ2xlcywgd2Ugcm9sbCB3aXRoIHRoYXQuXG4gICAgQGVsc2UgaWYgKHR5cGUtb2YobnRoKCRxdWVyeSwgMSkpID09ICdzdHJpbmcnIGFuZCB0eXBlLW9mKG50aCgkcXVlcnksIDIpKSA9PSAnc3RyaW5nJykge1xuICAgICAgQGlmIG5vdCBicmVha3BvaW50LXNpbmdsZS1zdHJpbmcobnRoKCRxdWVyeSwgMSkpIGFuZCBub3QgYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKG50aCgkcXVlcnksIDIpKSB7XG4gICAgICAgICRmZWF0dXJlLWhvbGRlcjogYXBwZW5kKG50aCgkcXVlcnksIDEpLCBudGgoJHF1ZXJ5LCAyKSwgc3BhY2UpO1xuICAgICAgICAkcXVlcnktaG9sZGVyOiBhcHBlbmQoJHF1ZXJ5LWhvbGRlciwgJGZlYXR1cmUtaG9sZGVyLCBjb21tYSk7XG4gICAgICAgIEByZXR1cm4gJHF1ZXJ5LWhvbGRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGxlbmd0aCA9PSAzIHtcbiAgICAvLyBJZiB3ZSd2ZSBnb3QgdGhyZWUgaXRlbXMgYW5kIG5vbmUgaXMgYSBsaXN0LCB3ZSBjaGVjayB0byBzZWVcbiAgICBAaWYgdHlwZS1vZihudGgoJHF1ZXJ5LCAxKSkgIT0gJ2xpc3QnIGFuZCB0eXBlLW9mKG50aCgkcXVlcnksIDIpKSAhPSAnbGlzdCcgYW5kIHR5cGUtb2YobnRoKCRxdWVyeSwgMykpICE9ICdsaXN0JyB7XG4gICAgICAvLyBJZiBub25lIG9mIHRoZSBpdGVtcyBhcmUgc2luZ2xlIHN0cmluZyB2YWx1ZXMgYW5kIG5vbmUgb2YgdGhlIHZhbHVlcyBhcmUgbWVkaWEgdmFsdWVzLCB3ZSdyZSBnb29kLlxuICAgICAgQGlmIChub3QgYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKG50aCgkcXVlcnksIDEpKSBhbmQgbm90IGJyZWFrcG9pbnQtc2luZ2xlLXN0cmluZyhudGgoJHF1ZXJ5LCAyKSkgYW5kIG5vdCBicmVha3BvaW50LXNpbmdsZS1zdHJpbmcobnRoKCRxdWVyeSwgMykpKSBhbmQgICgobm90IGJyZWFrcG9pbnQtaXMtbWVkaWEobnRoKCRxdWVyeSwgMSkpIGFuZCBub3QgYnJlYWtwb2ludC1pcy1tZWRpYShudGgoJHF1ZXJ5LCAyKSkgYW5kIG5vdCBicmVha3BvaW50LWlzLW1lZGlhKG50aCgkcXVlcnksIDMpKSkpIHtcbiAgICAgICAgJGZlYXR1cmUtaG9sZGVyOiBhcHBlbmQobnRoKCRxdWVyeSwgMSksIG50aCgkcXVlcnksIDIpLCBzcGFjZSk7XG4gICAgICAgICRmZWF0dXJlLWhvbGRlcjogYXBwZW5kKCRmZWF0dXJlLWhvbGRlciwgbnRoKCRxdWVyeSwgMyksIHNwYWNlKTtcbiAgICAgICAgJHF1ZXJ5LWhvbGRlcjogYXBwZW5kKCRxdWVyeS1ob2xkZXIsICRmZWF0dXJlLWhvbGRlciwgY29tbWEpO1xuICAgICAgICBAcmV0dXJuICRxdWVyeS1ob2xkZXI7XG4gICAgICB9XG4gICAgICAvLyBsZXQncyBjaGVjayB0byBzZWUgaWYgdGhlIGZpcnN0IGl0ZW0gaXMgYSBtZWRpYSB0eXBlXG4gICAgICBAZWxzZSBpZiBicmVha3BvaW50LWlzLW1lZGlhKG50aCgkcXVlcnksIDEpKSB7XG4gICAgICAgICRxdWVyeS1ob2xkZXI6IGFwcGVuZCgkcXVlcnktaG9sZGVyLCBudGgoJHF1ZXJ5LCAxKSk7XG4gICAgICAgICRmZWF0dXJlLWhvbGRlcjogYXBwZW5kKG50aCgkcXVlcnksIDIpLCBudGgoJHF1ZXJ5LCAzKSwgc3BhY2UpO1xuICAgICAgICAkcXVlcnktaG9sZGVyOiBhcHBlbmQoJHF1ZXJ5LWhvbGRlciwgJGZlYXR1cmUtaG9sZGVyKTtcbiAgICAgICAgQHJldHVybiAkcXVlcnktaG9sZGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElmIGl0J3MgYSBzaW5nbGUgaXRlbSwgb3IgaWYgaXQncyBub3QgYSBzcGVjaWFsIGNhc2UgZG91YmxlIG9yIHRyaXBsZSwgd2UgY2FuIHNpbXBseSByZXR1cm4gdGhlIHF1ZXJ5LlxuICBAcmV0dXJuICRxdWVyeTtcbn1cbiIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gSW1wb3J0IFBpZWNlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AaW1wb3J0IFwic2luZ2xlL2RlZmF1bHRcIjtcblxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtcGFyc2Utc2luZ2xlKCRmZWF0dXJlLCAkZW1wdHktbWVkaWEsICRmaXJzdCkge1xuICAkcGFyc2VkOiAnJztcbiAgJGxlYWRlcjogJyc7XG4gIC8vIElmIHdlJ3JlIGZvcmNpbmdcbiAgQGlmIG5vdCAoJGVtcHR5LW1lZGlhKSBvciBub3QgKCRmaXJzdCkge1xuICAgICRsZWFkZXI6ICdhbmQgJztcbiAgfVxuXG4gIC8vIElmIGl0J3MgYSBzaW5nbGUgZmVhdHVyZSB0aGF0IGNhbiBzdGFuZCBhbG9uZSwgd2UgbGV0IGl0XG4gIEBpZiAoYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKCRmZWF0dXJlKSkge1xuICAgICRwYXJzZWQ6ICRmZWF0dXJlO1xuICAgIC8vIFNldCBDb250ZXh0XG4gICAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJGZlYXR1cmUsICRmZWF0dXJlKTtcbiAgfVxuICAvLyBJZiBpdCdzIG5vdCBhIHN0YW5kIGFsb25lIGZlYXR1cmUsIHdlIHBhc3MgaXQgb2ZmIHRvIHRoZSBkZWZhdWx0IGhhbmRsZXIuXG4gIEBlbHNlIHtcbiAgICAkcGFyc2VkOiBicmVha3BvaW50LXBhcnNlLWRlZmF1bHQoJGZlYXR1cmUpO1xuICB9XG5cbiAgQHJldHVybiAkbGVhZGVyICsgJygnICsgJHBhcnNlZCArICcpJztcbn1cbiIsIkBmdW5jdGlvbiBicmVha3BvaW50LXBhcnNlLWRlZmF1bHQoJGZlYXR1cmUpIHtcbiAgJGRlZmF1bHQ6IGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IGZlYXR1cmUnKTtcblxuICAvLyBTZXQgQ29udGV4dFxuICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dCgkZGVmYXVsdCwgJGZlYXR1cmUpO1xuXG4gIEBpZiAoYnJlYWtwb2ludC1nZXQoJ3RvIGVtcycpID09IHRydWUpIGFuZCAodHlwZS1vZigkZmVhdHVyZSkgPT0gJ251bWJlcicpIHtcbiAgICBAcmV0dXJuICcjeyRkZWZhdWx0fTogI3ticmVha3BvaW50LXRvLWJhc2UtZW0oJGZlYXR1cmUpfSc7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gJyN7JGRlZmF1bHR9OiAjeyRmZWF0dXJlfSc7XG4gIH1cbn1cbiIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gSW1wb3J0IFBpZWNlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AaW1wb3J0IFwiZG91YmxlL2RlZmF1bHQtcGFpclwiO1xuQGltcG9ydCBcImRvdWJsZS9kb3VibGUtc3RyaW5nXCI7XG5AaW1wb3J0IFwiZG91YmxlL2RlZmF1bHRcIjtcblxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtcGFyc2UtZG91YmxlKCRmZWF0dXJlLCAkZW1wdHktbWVkaWEsICRmaXJzdCkge1xuICAkcGFyc2VkOiAnJztcbiAgJGxlYWRlcjogJyc7XG4gIC8vIElmIHdlJ3JlIGZvcmNpbmdcbiAgQGlmIG5vdCAoJGVtcHR5LW1lZGlhKSBvciBub3QgKCRmaXJzdCkge1xuICAgICRsZWFkZXI6ICdhbmQgJztcbiAgfVxuXG4gICRmaXJzdDogbnRoKCRmZWF0dXJlLCAxKTtcbiAgJHNlY29uZDogbnRoKCRmZWF0dXJlLCAyKTtcblxuICAvLyBJZiB3ZSd2ZSBnb3QgdHdvIG51bWJlcnMsIHdlIGtub3cgd2UgbmVlZCB0byB1c2UgdGhlIGRlZmF1bHQgcGFpciBiZWNhdXNlIHRoZXJlIGFyZSBubyBtZWRpYSBxdWVyaWVzIHRoYXQgaGFzIGEgbWVkaWEgZmVhdHVyZSB0aGF0IGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCRmaXJzdCkgPT0gJ251bWJlcicgYW5kIHR5cGUtb2YoJHNlY29uZCkgPT0gJ251bWJlcicge1xuICAgICRwYXJzZWQ6IGJyZWFrcG9pbnQtcGFyc2UtZGVmYXVsdC1wYWlyKCRmaXJzdCwgJHNlY29uZCk7XG4gIH1cbiAgLy8gSWYgdGhleSBhcmUgYm90aCBzdHJpbmdzLCB3ZSBzZW5kIGl0IHRocm91Z2ggdGhlIHN0cmluZyBwYXJzZXJcbiAgQGVsc2UgaWYgdHlwZS1vZigkZmlyc3QpID09ICdzdHJpbmcnIGFuZCB0eXBlLW9mKCRzZWNvbmQpID09ICdzdHJpbmcnIHtcbiAgICAkcGFyc2VkOiBicmVha3BvaW50LXBhcnNlLWRvdWJsZS1zdHJpbmcoJGZpcnN0LCAkc2Vjb25kKTtcbiAgfVxuICAvLyBJZiBpdCdzIGEgc3RyaW5nL251bWJlciBwYWlyLCB3ZSBwYXJzZSBpdCBhcyBhIG5vcm1hbCBkb3VibGVcbiAgQGVsc2Uge1xuICAgICRwYXJzZWQ6IGJyZWFrcG9pbnQtcGFyc2UtZG91YmxlLWRlZmF1bHQoJGZpcnN0LCAkc2Vjb25kKTtcbiAgfVxuXG4gIEByZXR1cm4gJGxlYWRlciArICRwYXJzZWQ7XG59XG4iLCJAZnVuY3Rpb24gYnJlYWtwb2ludC1wYXJzZS1kZWZhdWx0LXBhaXIoJGZpcnN0LCAkc2Vjb25kKSB7XG4gICRkZWZhdWx0OiBicmVha3BvaW50LWdldCgnZGVmYXVsdCBwYWlyJyk7XG4gICRtaW46ICcnO1xuICAkbWF4OiAnJztcblxuICAvLyBTb3J0IGludG8gbWluIGFuZCBtYXhcbiAgJG1pbjogbWluKCRmaXJzdCwgJHNlY29uZCk7XG4gICRtYXg6IG1heCgkZmlyc3QsICRzZWNvbmQpO1xuXG4gIC8vIFNldCBDb250ZXh0XG4gICRjb250ZXh0LXNldHRlcjogcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KG1pbi0jeyRkZWZhdWx0fSwgJG1pbik7XG4gICRjb250ZXh0LXNldHRlcjogcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KG1heC0jeyRkZWZhdWx0fSwgJG1heCk7XG5cbiAgLy8gTWFrZSB0aGVtIEVNcyBpZiBuZWVkIGJlXG4gIEBpZiAoYnJlYWtwb2ludC1nZXQoJ3RvIGVtcycpID09IHRydWUpIHtcbiAgICAkbWluOiBicmVha3BvaW50LXRvLWJhc2UtZW0oJG1pbik7XG4gICAgJG1heDogYnJlYWtwb2ludC10by1iYXNlLWVtKCRtYXgpO1xuICB9XG5cbiAgQHJldHVybiAnKG1pbi0jeyRkZWZhdWx0fTogI3skbWlufSkgYW5kIChtYXgtI3skZGVmYXVsdH06ICN7JG1heH0pJztcbn1cbiIsIkBmdW5jdGlvbiBicmVha3BvaW50LXBhcnNlLWRvdWJsZS1zdHJpbmcoJGZpcnN0LCAkc2Vjb25kKSB7XG4gICRmZWF0dXJlOiAnJztcbiAgJHZhbHVlOiAnJztcblxuICAvLyBUZXN0IHRvIHNlZSB3aGljaCBpcyB0aGUgZmVhdHVyZSBhbmQgd2hpY2ggaXMgdGhlIHZhbHVlXG4gIEBpZiAoYnJlYWtwb2ludC1zdHJpbmctdmFsdWUoJGZpcnN0KSA9PSB0cnVlKSB7XG4gICAgJGZlYXR1cmU6ICRmaXJzdDtcbiAgICAkdmFsdWU6ICRzZWNvbmQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgICRmZWF0dXJlOiAkc2Vjb25kO1xuICAgICR2YWx1ZTogJGZpcnN0O1xuICB9XG5cbiAgLy8gU2V0IENvbnRleHRcbiAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJGZlYXR1cmUsICR2YWx1ZSk7XG5cbiAgQHJldHVybiAnKCN7JGZlYXR1cmV9OiAjeyR2YWx1ZX0pJztcbn1cbiIsIkBmdW5jdGlvbiBicmVha3BvaW50LXBhcnNlLWRvdWJsZS1kZWZhdWx0KCRmaXJzdCwgJHNlY29uZCkge1xuICAkZmVhdHVyZTogJyc7XG4gICR2YWx1ZTogJyc7XG5cbiAgQGlmIHR5cGUtb2YoJGZpcnN0KSA9PSAnc3RyaW5nJyB7XG4gICAgJGZlYXR1cmU6ICRmaXJzdDtcbiAgICAkdmFsdWU6ICRzZWNvbmQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgICRmZWF0dXJlOiAkc2Vjb25kO1xuICAgICR2YWx1ZTogJGZpcnN0O1xuICB9XG5cbiAgLy8gU2V0IENvbnRleHRcbiAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJGZlYXR1cmUsICR2YWx1ZSk7XG5cbiAgQGlmIChicmVha3BvaW50LWdldCgndG8gZW1zJykgPT0gdHJ1ZSkge1xuICAgICR2YWx1ZTogYnJlYWtwb2ludC10by1iYXNlLWVtKCR2YWx1ZSk7XG4gIH1cblxuICBAcmV0dXJuICcoI3skZmVhdHVyZX06ICN7JHZhbHVlfSknXG59XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEltcG9ydCBQaWVjZXNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGltcG9ydCBcInRyaXBsZS9kZWZhdWx0XCI7XG5cbkBmdW5jdGlvbiBicmVha3BvaW50LXBhcnNlLXRyaXBsZSgkZmVhdHVyZSwgJGVtcHR5LW1lZGlhLCAkZmlyc3QpIHtcbiAgJHBhcnNlZDogJyc7XG4gICRsZWFkZXI6ICcnO1xuXG4gIC8vIElmIHdlJ3JlIGZvcmNpbmdcbiAgQGlmIG5vdCAoJGVtcHR5LW1lZGlhKSBvciBub3QgKCRmaXJzdCkge1xuICAgICRsZWFkZXI6ICdhbmQgJztcbiAgfVxuXG4gIC8vIHNlcGFyYXRlIHRoZSBzdHJpbmcgZmVhdHVyZXMgZnJvbSB0aGUgdmFsdWUgbnVtYmVyc1xuICAkc3RyaW5nOiBudWxsO1xuICAkbnVtYmVyczogbnVsbDtcbiAgQGVhY2ggJHZhbCBpbiAkZmVhdHVyZSB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbCkgPT0gc3RyaW5nIHtcbiAgICAgICRzdHJpbmc6ICR2YWw7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpZiB0eXBlLW9mKCRudW1iZXJzKSA9PSAnbnVsbCcge1xuICAgICAgICAkbnVtYmVyczogJHZhbDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJG51bWJlcnM6IGFwcGVuZCgkbnVtYmVycywgJHZhbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJHBhcnNlZDogYnJlYWtwb2ludC1wYXJzZS10cmlwbGUtZGVmYXVsdCgkc3RyaW5nLCBudGgoJG51bWJlcnMsIDEpLCBudGgoJG51bWJlcnMsIDIpKTtcblxuICBAcmV0dXJuICRsZWFkZXIgKyAkcGFyc2VkO1xuXG59XG4iLCJAZnVuY3Rpb24gYnJlYWtwb2ludC1wYXJzZS10cmlwbGUtZGVmYXVsdCgkZmVhdHVyZSwgJGZpcnN0LCAkc2Vjb25kKSB7XG5cbiAgLy8gU29ydCBpbnRvIG1pbiBhbmQgbWF4XG4gICRtaW46IG1pbigkZmlyc3QsICRzZWNvbmQpO1xuICAkbWF4OiBtYXgoJGZpcnN0LCAkc2Vjb25kKTtcblxuICAvLyBTZXQgQ29udGV4dFxuICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dChtaW4tI3skZmVhdHVyZX0sICRtaW4pO1xuICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dChtYXgtI3skZmVhdHVyZX0sICRtYXgpO1xuXG4gIC8vIE1ha2UgdGhlbSBFTXMgaWYgbmVlZCBiZVxuICBAaWYgKGJyZWFrcG9pbnQtZ2V0KCd0byBlbXMnKSA9PSB0cnVlKSB7XG4gICAgJG1pbjogYnJlYWtwb2ludC10by1iYXNlLWVtKCRtaW4pO1xuICAgICRtYXg6IGJyZWFrcG9pbnQtdG8tYmFzZS1lbSgkbWF4KTtcbiAgfVxuXG4gIEByZXR1cm4gJyhtaW4tI3skZmVhdHVyZX06ICN7JG1pbn0pIGFuZCAobWF4LSN7JGZlYXR1cmV9OiAjeyRtYXh9KSc7XG59XG4iLCJAaW1wb3J0IFwicmVzb2x1dGlvbi9yZXNvbHV0aW9uXCI7XG5cbkBmdW5jdGlvbiBicmVha3BvaW50LWJ1aWxkLXJlc29sdXRpb24oJHF1ZXJ5LXByaW50LCAkcXVlcnktcmVzb2x1dGlvbiwgJGVtcHR5LW1lZGlhLCAkZmlyc3QpIHtcbiAgJGxlYWRlcjogJyc7XG4gIC8vIElmIHdlJ3JlIGZvcmNpbmdcbiAgQGlmIG5vdCAoJGVtcHR5LW1lZGlhKSBvciBub3QgKCRmaXJzdCkge1xuICAgICRsZWFkZXI6ICdhbmQgJztcbiAgfVxuXG4gIEBpZiBicmVha3BvaW50LWdldCgndHJhbnNmb3JtIHJlc29sdXRpb25zJykgYW5kICRxdWVyeS1yZXNvbHV0aW9uIHtcbiAgICAkcmVzb2x1dGlvbnM6IGJyZWFrcG9pbnQtbWFrZS1yZXNvbHV0aW9ucygkcXVlcnktcmVzb2x1dGlvbik7XG4gICAgJGxlbmd0aDogbGVuZ3RoKCRyZXNvbHV0aW9ucyk7XG4gICAgJHF1ZXJ5LWhvbGRlcjogJyc7XG5cbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRsZW5ndGgge1xuICAgICAgJHF1ZXJ5OiAnI3skcXVlcnktcHJpbnR9ICN7JGxlYWRlcn0je250aCgkcmVzb2x1dGlvbnMsICRpKX0nO1xuICAgICAgQGlmICRpID09IDEge1xuICAgICAgICAkcXVlcnktaG9sZGVyOiAkcXVlcnk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICRxdWVyeS1ob2xkZXI6ICcjeyRxdWVyeS1ob2xkZXJ9LCAjeyRxdWVyeX0nO1xuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gJHF1ZXJ5LWhvbGRlcjtcbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gUmV0dXJuIHdpdGggYXR0YWNoZWQgcmVzb2x1dGlvblxuICAgIEByZXR1cm4gJHF1ZXJ5LXByaW50O1xuICB9XG59XG4iLCJAZnVuY3Rpb24gYnJlYWtwb2ludC1tYWtlLXJlc29sdXRpb25zKCRyZXNvbHV0aW9uKSB7XG4gICRsZW5ndGg6IGxlbmd0aCgkcmVzb2x1dGlvbik7XG5cbiAgJG91dHB1dDogKCk7XG5cbiAgQGlmICRsZW5ndGggPT0gMiB7XG4gICAgJGZlYXR1cmU6ICcnO1xuICAgICR2YWx1ZTogJyc7XG5cbiAgICAvLyBGaW5kIHdoaWNoIGlzIG51bWJlclxuICAgIEBpZiB0eXBlLW9mKG50aCgkcmVzb2x1dGlvbiwgMSkpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogbnRoKCRyZXNvbHV0aW9uLCAxKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHZhbHVlOiBudGgoJHJlc29sdXRpb24sIDIpO1xuICAgIH1cblxuICAgIC8vIERldGVybWluZSBtaW4vbWF4L3N0YW5kYXJkXG4gICAgQGlmIGluZGV4KCRyZXNvbHV0aW9uLCAnbWluLXJlc29sdXRpb24nKSB7XG4gICAgICAkZmVhdHVyZTogJ21pbi0nO1xuICAgIH1cbiAgICBAZWxzZSBpZiBpbmRleCgkcmVzb2x1dGlvbiwgJ21heC1yZXNvbHV0aW9uJykge1xuICAgICAgJGZlYXR1cmU6ICdtYXgtJztcbiAgICB9XG5cbiAgICAkc3RhbmRhcmQ6ICcoI3skZmVhdHVyZX1yZXNvbHV0aW9uOiAjeyR2YWx1ZX0pJztcblxuICAgIC8vIElmIHdlJ3JlIG5vdCBkZWFsaW5nIHdpdGggZHBweCxcbiAgICBAaWYgdW5pdCgkdmFsdWUpICE9ICdkcHB4JyB7XG4gICAgICAkYmFzZTogOTZkcGk7XG4gICAgICBAaWYgdW5pdCgkdmFsdWUpID09ICdkcGNtJyB7XG4gICAgICAgICRiYXNlOiAyNDMuODRkcGNtO1xuICAgICAgfVxuICAgICAgLy8gV3JpdGUgb3V0IGZlYXR1cmUgdGVzdHNcbiAgICAgICR3ZWJraXQ6ICcnO1xuICAgICAgJG1vejogJyc7XG4gICAgICAkd2Via2l0OiAnKC13ZWJraXQtI3skZmVhdHVyZX1kZXZpY2UtcGl4ZWwtcmF0aW86ICN7JHZhbHVlIC8gJGJhc2V9KSc7XG4gICAgICAkbW96OiAnKCN7JGZlYXR1cmV9LW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86ICN7JHZhbHVlIC8gJGJhc2V9KSc7XG4gICAgICAvLyBBcHBlbmQgdG8gb3V0cHV0XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgJHN0YW5kYXJkLCBzcGFjZSk7XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgJHdlYmtpdCwgc3BhY2UpO1xuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICRtb3osIHNwYWNlKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdlYmtpdDogJyc7XG4gICAgICAkbW96OiAnJztcbiAgICAgICR3ZWJraXQ6ICcoLXdlYmtpdC0jeyRmZWF0dXJlfWRldmljZS1waXhlbC1yYXRpbzogI3skdmFsdWUgLyAxZHBweH0pJztcbiAgICAgICRtb3o6ICcoI3skZmVhdHVyZX0tbW96LWRldmljZS1waXhlbC1yYXRpbzogI3skdmFsdWUgLyAxZHBweH0pJztcbiAgICAgICRmYWxsYmFjazogJygjeyRmZWF0dXJlfXJlc29sdXRpb246ICN7JHZhbHVlIC8gMWRwcHggKiA5NmRwaX0pJztcbiAgICAgIC8vIEFwcGVuZCB0byBvdXRwdXRcbiAgICAgICRvdXRwdXQ6IGFwcGVuZCgkb3V0cHV0LCAkc3RhbmRhcmQsIHNwYWNlKTtcbiAgICAgICRvdXRwdXQ6IGFwcGVuZCgkb3V0cHV0LCAkd2Via2l0LCBzcGFjZSk7XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgJG1veiwgc3BhY2UpO1xuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICRmYWxsYmFjaywgc3BhY2UpO1xuICAgIH1cblxuICB9XG5cbiAgQHJldHVybiAkb3V0cHV0O1xufVxuIiwiQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbm8tcXVlcnkoJHF1ZXJ5KSB7XG4gIEBpZiB0eXBlLW9mKCRxdWVyeSkgPT0gJ2xpc3QnIHtcbiAgICAka2V5d29yZDogbnRoKCRxdWVyeSwgMSk7XG5cbiAgICBAaWYgdHlwZS1vZigka2V5d29yZCkgPT0gJ3N0cmluZycgYW5kICgka2V5d29yZCA9PSAnbm8tcXVlcnknIG9yICRrZXl3b3JkID09ICdubyBxdWVyeScgb3IgJGtleXdvcmQgPT0gJ2ZhbGxiYWNrJykge1xuICAgICAgQHJldHVybiBudGgoJHF1ZXJ5LCAyKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gZmFsc2U7XG4gIH1cbn1cbiIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gRGVmYXVsdCB0aGUgQnJlYWtwb2ludHMgdmFyaWFibGVcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuJGJyZWFrcG9pbnRzOiAoKSAhZGVmYXVsdDtcbiRCUkVBS1BPSU5UUzogKCkgIWRlZmF1bHQ7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUmVzcG9uZC10byBBUEkgTWl4aW5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQG1peGluIHJlc3BvbmQtdG8oJGNvbnRleHQsICRuby1xdWVyeTogZmFsc2UpIHtcbiAgQGlmIGxlbmd0aCgkYnJlYWtwb2ludHMpID4gMCBhbmQgbGVuZ3RoKCRCUkVBS1BPSU5UUykgPT0gMCB7XG4gICAgQHdhcm4gXCJJbiBvcmRlciB0byBhdm9pZCB2YXJpYWJsZSBuYW1lc3BhY2UgY29sbGlzaW9ucywgd2UgaGF2ZSB1cGRhdGVkIHRoZSB3YXkgdG8gYWRkIGJyZWFrcG9pbnRzIGZvciByZXNwb25kLXRvLiBQbGVhc2UgY2hhbmdlIGFsbCBpbnN0YW5jZXMgb2YgYCRicmVha3BvaW50czogYWRkLWJyZWFrcG9pbnQoKWAgdG8gYEBpbmNsdWRlIGFkZC1icmVha3BvaW50KClgLiBUaGUgYGFkZC1icmVha3BvaW50KClgIGZ1bmN0aW9uIHdpbGwgYmUgZGVwcmVjYXRlZCBpbiBhIGZ1dHVyZSByZWxlYXNlLlwiO1xuICAgICRCUkVBS1BPSU5UUzogJGJyZWFrcG9pbnRzICFnbG9iYWw7XG4gICAgJGJyZWFrcG9pbnRzOiAoKSAhZ2xvYmFsO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJEJSRUFLUE9JTlRTKSAhPSAnbWFwJyB7XG4gICAgLy8gSnVzdCBpbiBjYXNlIHNvbWVvbmUgd3JpdGVzIGdpYmJlcmlzaCB0byB0aGUgJGJyZWFrcG9pbnRzIHZhcmlhYmxlLlxuICAgIEB3YXJuIFwiWW91ciBicmVha3BvaW50cyBhcmVuJ3QgYSBtYXAhIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc251Z3VnL3Jlc3BvbmQtdG8jYXBpIGlmIHlvdSdkIGxpa2UgYSByZW1pbmRlciBvbiBob3cgdG8gdXNlIFJlc3BvbmQtdG9cIjtcbiAgICBAY29udGVudDtcbiAgfVxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkQlJFQUtQT0lOVFMsICRjb250ZXh0KSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtYXAtZ2V0KCRCUkVBS1BPSU5UUywgJGNvbnRleHQpLCAkbm8tcXVlcnkpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiBub3QgbWFwLWhhcy1rZXkoJEJSRUFLUE9JTlRTLCAkY29udGV4dCkge1xuICAgIEB3YXJuIFwiYCN7JGNvbnRleHR9YCBpc24ndCBhIGRlZmluZWQgYnJlYWtwb2ludCEgUGxlYXNlIGFkZCBpdCB1c2luZyBgJGJyZWFrcG9pbnRzOiBhZGQtYnJlYWtwb2ludChgI3skY29udGV4dH1gLCAkdmFsdWUpO2BcIjtcbiAgICBAY29udGVudDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gXCJZb3UgaGF2ZW4ndCBjcmVhdGVkIGFueSBicmVha3BvaW50cyB5ZXQhIE1ha2Ugc29tZSBhbHJlYWR5ISBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3NudWd1Zy9yZXNwb25kLXRvI2FwaSBpZiB5b3UnZCBsaWtlIGEgcmVtaW5kZXIgb24gaG93IHRvIHVzZSBSZXNwb25kLXRvXCI7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBBZGQgQnJlYWtwb2ludCB0byBCcmVha3BvaW50c1xuLy8gVE9ETzogUmVtb3ZlIGZ1bmN0aW9uIGluIG5leHQgcmVsZWFzZVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gYWRkLWJyZWFrcG9pbnQoJG5hbWUsICRia3B0LCAkb3ZlcndyaXRlOiBmYWxzZSkge1xuICAkb3V0cHV0OiAoJG5hbWU6ICRia3B0KTtcblxuICBAaWYgbGVuZ3RoKCRicmVha3BvaW50cykgPT0gMCB7XG4gICAgQHJldHVybiAkb3V0cHV0O1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkbmFtZSkgYW5kICRvdmVyd3JpdGUgIT0gdHJ1ZSB7XG4gICAgICBAd2FybiBcIllvdSBhbHJlYWR5IGhhdmUgYSBicmVha3BvaW50IG5hbWVkIGAjeyRuYW1lfWAsIHBsZWFzZSBjaG9vc2UgYW5vdGhlciBicmVha3BvaW50IG5hbWUsIG9yIHBhc3MgaW4gYCRvdmVyd3JpdGU6IHRydWVgIHRvIG92ZXJ3cml0ZSB0aGUgcHJldmlvdXMgYnJlYWtwb2ludC5cIjtcbiAgICAgIEByZXR1cm4gJGJyZWFrcG9pbnRzO1xuICAgIH1cbiAgICBAZWxzZSBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkbmFtZSkgb3IgJG92ZXJ3cml0ZSA9PSB0cnVlIHtcbiAgICAgIEByZXR1cm4gbWFwLW1lcmdlKCRicmVha3BvaW50cywgJG91dHB1dCk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhZGQtYnJlYWtwb2ludCgkbmFtZSwgJGJrcHQsICRvdmVyd3JpdGU6IGZhbHNlKSB7XG4gICRvdXRwdXQ6ICgkbmFtZTogJGJrcHQpO1xuXG4gIEBpZiBsZW5ndGgoJEJSRUFLUE9JTlRTKSA9PSAwIHtcbiAgICAkQlJFQUtQT0lOVFM6ICRvdXRwdXQgIWdsb2JhbDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRCUkVBS1BPSU5UUywgJG5hbWUpIGFuZCAkb3ZlcndyaXRlICE9IHRydWUge1xuICAgICAgQHdhcm4gXCJZb3UgYWxyZWFkeSBoYXZlIGEgYnJlYWtwb2ludCBuYW1lZCBgI3skbmFtZX1gLCBwbGVhc2UgY2hvb3NlIGFub3RoZXIgYnJlYWtwb2ludCBuYW1lLCBvciBwYXNzIGluIGAkb3ZlcndyaXRlOiB0cnVlYCB0byBvdmVyd3JpdGUgdGhlIHByZXZpb3VzIGJyZWFrcG9pbnQuXCI7XG4gICAgICAkQlJFQUtQT0lOVFM6ICRCUkVBS1BPSU5UUyAhZ2xvYmFsO1xuICAgIH1cbiAgICBAZWxzZSBpZiBub3QgbWFwLWhhcy1rZXkoJEJSRUFLUE9JTlRTLCAkbmFtZSkgb3IgJG92ZXJ3cml0ZSA9PSB0cnVlIHtcbiAgICAgICRCUkVBS1BPSU5UUzogbWFwLW1lcmdlKCRCUkVBS1BPSU5UUywgJG91dHB1dCkgIWdsb2JhbDtcbiAgICB9XG4gIH1cbn0iLCJAbWl4aW4gbGVnYWN5LXNldHRpbmdzLXdhcm5pbmcge1xuICAkbGVnYWN5VmFyczogKFxuICAgICdkZWZhdWx0LW1lZGlhJzogJ2RlZmF1bHQgbWVkaWEnLFxuICAgICdkZWZhdWx0LWZlYXR1cmUnOiAnZGVmYXVsdCBmZWF0dXJlJyxcbiAgICAnZm9yY2UtbWVkaWEtYWxsJzogJ2ZvcmNlIGFsbCBtZWRpYSB0eXBlJyxcbiAgICAndG8tZW1zJzogJ3RvIGVtcycsXG4gICAgJ3Jlc29sdXRpb25zJzogJ3RyYW5zZm9ybSByZXNvbHV0aW9ucycsXG4gICAgJ25vLXF1ZXJpZXMnOiAnbm8gcXVlcmllcycsXG4gICAgJ25vLXF1ZXJ5LWZhbGxiYWNrcyc6ICdubyBxdWVyeSBmYWxsYmFja3MnLFxuICAgICdiYXNlLWZvbnQtc2l6ZSc6ICdiYXNlIGZvbnQgc2l6ZScsXG4gICAgJ2xlZ2FjeS1zeW50YXgnOiAnbGVnYWN5IHN5bnRheCdcbiAgKTtcblxuICBAZWFjaCAkbGVnYWN5LCAkbmV3IGluICRsZWdhY3lWYXJzIHtcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygnYnJlYWtwb2ludC0nICsgJGxlZ2FjeSkge1xuICAgICAgQHdhcm4gXCJJbiBvcmRlciB0byBhdm9pZCB2YXJpYWJsZSBuYW1zcGFjZSBjb2xsaXNpb25zLCB3ZSBoYXZlIHVwZGF0ZWQgdGhlIHdheSB0byBjaGFuZ2Ugc2V0dGluZ3MgZm9yIEJyZWFrcG9pbnQuIFBsZWFzZSBjaGFuZ2UgYWxsIGluc3RhbmNlcyBvZiBgJGJyZWFrcG9pbnQtI3skbGVnYWN5fToge3tzZXR0aW5nfX1gIHRvIGBAaW5jbHVkZSBicmVha3BvaW50LXNldCgnI3skbmV3fScsIHt7c2V0dGluZ319KWAuIFZhcmlhYmxlIHNldHRpbmdzLCBhcyB3ZWxsIGFzIHRoaXMgd2FybmluZyB3aWxsIGJlIGRlcHJlY2F0ZWQgaW4gYSBmdXR1cmUgcmVsZWFzZS5cIlxuICAgIH1cbiAgfTtcblxuICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgLy8gSGFuZCBjb3JyZWN0IGVhY2ggc2V0dGluZ1xuICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoJ2JyZWFrcG9pbnQtZGVmYXVsdC1tZWRpYScpIGFuZCAkYnJlYWtwb2ludC1kZWZhdWx0LW1lZGlhICE9IGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IG1lZGlhJykge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQtc2V0KCdkZWZhdWx0IG1lZGlhJywgJGJyZWFrcG9pbnQtZGVmYXVsdC1tZWRpYSk7XG4gIH1cbiAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoJ2JyZWFrcG9pbnQtZGVmYXVsdC1mZWF0dXJlJykgYW5kICRicmVha3BvaW50LWRlZmF1bHQtZmVhdHVyZSAhPSBicmVha3BvaW50LWdldCgnZGVmYXVsdCBmZWF0dXJlJykge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQtc2V0KCdkZWZhdWx0IGZlYXR1cmUnLCAkYnJlYWtwb2ludC1kZWZhdWx0LWZlYXR1cmUpO1xuICB9XG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKCdicmVha3BvaW50LWZvcmNlLW1lZGlhLWFsbCcpIGFuZCAkYnJlYWtwb2ludC1mb3JjZS1tZWRpYS1hbGwgIT0gYnJlYWtwb2ludC1nZXQoJ2ZvcmNlIGFsbCBtZWRpYSB0eXBlJykge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQtc2V0KCdmb3JjZSBhbGwgbWVkaWEgdHlwZScsICRicmVha3BvaW50LWZvcmNlLW1lZGlhLWFsbCk7XG4gIH1cbiAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoJ2JyZWFrcG9pbnQtdG8tZW1zJykgYW5kICRicmVha3BvaW50LXRvLWVtcyAhPSBicmVha3BvaW50LWdldCgndG8gZW1zJykge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQtc2V0KCd0byBlbXMnLCAkYnJlYWtwb2ludC10by1lbXMpO1xuICB9XG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKCdicmVha3BvaW50LXJlc29sdXRpb25zJykgYW5kICRicmVha3BvaW50LXJlc29sdXRpb25zICE9IGJyZWFrcG9pbnQtZ2V0KCd0cmFuc2Zvcm0gcmVzb2x1dGlvbnMnKSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludC1zZXQoJ3RyYW5zZm9ybSByZXNvbHV0aW9ucycsICRicmVha3BvaW50LXJlc29sdXRpb25zKTtcbiAgfVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygnYnJlYWtwb2ludC1uby1xdWVyaWVzJykgYW5kICRicmVha3BvaW50LW5vLXF1ZXJpZXMgIT0gYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJpZXMnKSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludC1zZXQoJ25vIHF1ZXJpZXMnLCAkYnJlYWtwb2ludC1uby1xdWVyaWVzKTtcbiAgfVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygnYnJlYWtwb2ludC1uby1xdWVyeS1mYWxsYmFja3MnKSBhbmQgJGJyZWFrcG9pbnQtbm8tcXVlcnktZmFsbGJhY2tzICE9IGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludC1zZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycsICRicmVha3BvaW50LW5vLXF1ZXJ5LWZhbGxiYWNrcyk7XG4gIH1cbiAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoJ2JyZWFrcG9pbnQtYmFzZS1mb250LXNpemUnKSBhbmQgJGJyZWFrcG9pbnQtYmFzZS1mb250LXNpemUgIT0gYnJlYWtwb2ludC1nZXQoJ2Jhc2UgZm9udCBzaXplJykge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQtc2V0KCdiYXNlIGZvbnQgc2l6ZScsICRicmVha3BvaW50LWJhc2UtZm9udC1zaXplKTtcbiAgfVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygnYnJlYWtwb2ludC1sZWdhY3ktc3ludGF4JykgYW5kICRicmVha3BvaW50LWxlZ2FjeS1zeW50YXggIT0gYnJlYWtwb2ludC1nZXQoJ2xlZ2FjeSBzeW50YXgnKSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludC1zZXQoJ2xlZ2FjeSBzeW50YXgnLCAkYnJlYWtwb2ludC1sZWdhY3ktc3ludGF4KTtcbiAgfVxufSIsIi8vIENhcHRjaGEgaW4gZm9ybXMuXG4vL1xuXG5mb3JtIC5jYXB0Y2hhIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cbiIsIi8qIVxuICogIEZvbnQgQXdlc29tZSA0LjMuMCBieSBAZGF2ZWdhbmR5IC0gaHR0cDovL2ZvbnRhd2Vzb21lLmlvIC0gQGZvbnRhd2Vzb21lXG4gKiAgTGljZW5zZSAtIGh0dHA6Ly9mb250YXdlc29tZS5pby9saWNlbnNlIChGb250OiBTSUwgT0ZMIDEuMSwgQ1NTOiBNSVQgTGljZW5zZSlcbiAqL1xuXG5AaW1wb3J0IFwiZm9udC1hd2Vzb21lL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcImZvbnQtYXdlc29tZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJmb250LWF3ZXNvbWUvcGF0aFwiO1xuQGltcG9ydCBcImZvbnQtYXdlc29tZS9jb3JlXCI7XG5AaW1wb3J0IFwiZm9udC1hd2Vzb21lL2xhcmdlclwiO1xuQGltcG9ydCBcImZvbnQtYXdlc29tZS9maXhlZC13aWR0aFwiO1xuQGltcG9ydCBcImZvbnQtYXdlc29tZS9saXN0XCI7XG4vL0BpbXBvcnQgXCJmb250LWF3ZXNvbWUvYm9yZGVyZWQtcHVsbGVkXCI7XG4vL0BpbXBvcnQgXCJmb250LWF3ZXNvbWUvYW5pbWF0ZWRcIjtcbi8vQGltcG9ydCBcImZvbnQtYXdlc29tZS9yb3RhdGVkLWZsaXBwZWRcIjtcbi8vQGltcG9ydCBcImZvbnQtYXdlc29tZS9zdGFja2VkXCI7XG4vL0BpbXBvcnQgXCJmb250LWF3ZXNvbWUvaWNvbnNcIjtcblxuLy8gTG9hZCBvbmx5IHRoZSBzdWJzZXQgb2YgaWNvbnMgd2UgYWN0dWFsbHkgbmVlZFxuQGltcG9ydCBcImN1c3RvbS1pY29uc1wiO1xuIiwiLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kZmEtc2Fzcy1hc3NldC1oZWxwZXI6IGZhbHNlICFkZWZhdWx0O1xuXG4kZmEtZm9udC1wYXRoOiAgICAgICAgaWYoJGZhLXNhc3MtYXNzZXQtaGVscGVyLCBcImZvbnQtYXdlc29tZS9cIiwgXCIuLi9mb250cy9mb250LWF3ZXNvbWUvXCIpICFkZWZhdWx0O1xuJGZhLWZvbnQtbmFtZTogICAgICAgIFwiZm9udGF3ZXNvbWUtd2ViZm9udFwiICFkZWZhdWx0O1xuLy8kZmEtZm9udC1wYXRoOiAgICAgICAgXCIuLi9mb250c1wiICFkZWZhdWx0O1xuLy8kZmEtZm9udC1wYXRoOiAgICAgICAgXCIvL25ldGRuYS5ib290c3RyYXBjZG4uY29tL2ZvbnQtYXdlc29tZS80LjQuMC9mb250c1wiICFkZWZhdWx0OyAvLyBmb3IgcmVmZXJlbmNpbmcgQm9vdHN0cmFwIENETiBmb250IGZpbGVzIGRpcmVjdGx5XG4kZmEtZm9udC1zaXplLWJhc2U6ICAgMTRweCAhZGVmYXVsdDtcbiRmYS1saW5lLWhlaWdodC1iYXNlOiAxICFkZWZhdWx0O1xuJGZhLWNzcy1wcmVmaXg6ICAgICAgIGZhICFkZWZhdWx0O1xuJGZhLXZlcnNpb246ICAgICAgICAgIFwiNC40LjBcIiAhZGVmYXVsdDtcbiRmYS1ib3JkZXItY29sb3I6ICAgICAjZWVlICFkZWZhdWx0O1xuJGZhLWludmVyc2U6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kZmEtbGktd2lkdGg6ICAgICAgICAgKDMwZW0gLyAxNCkgIWRlZmF1bHQ7XG5cbiRmYS12YXItNTAwcHg6IFwiXFxmMjZlXCI7XG4kZmEtdmFyLWFkanVzdDogXCJcXGYwNDJcIjtcbiRmYS12YXItYWRuOiBcIlxcZjE3MFwiO1xuJGZhLXZhci1hbGlnbi1jZW50ZXI6IFwiXFxmMDM3XCI7XG4kZmEtdmFyLWFsaWduLWp1c3RpZnk6IFwiXFxmMDM5XCI7XG4kZmEtdmFyLWFsaWduLWxlZnQ6IFwiXFxmMDM2XCI7XG4kZmEtdmFyLWFsaWduLXJpZ2h0OiBcIlxcZjAzOFwiO1xuJGZhLXZhci1hbWF6b246IFwiXFxmMjcwXCI7XG4kZmEtdmFyLWFtYnVsYW5jZTogXCJcXGYwZjlcIjtcbiRmYS12YXItYW5jaG9yOiBcIlxcZjEzZFwiO1xuJGZhLXZhci1hbmRyb2lkOiBcIlxcZjE3YlwiO1xuJGZhLXZhci1hbmdlbGxpc3Q6IFwiXFxmMjA5XCI7XG4kZmEtdmFyLWFuZ2xlLWRvdWJsZS1kb3duOiBcIlxcZjEwM1wiO1xuJGZhLXZhci1hbmdsZS1kb3VibGUtbGVmdDogXCJcXGYxMDBcIjtcbiRmYS12YXItYW5nbGUtZG91YmxlLXJpZ2h0OiBcIlxcZjEwMVwiO1xuJGZhLXZhci1hbmdsZS1kb3VibGUtdXA6IFwiXFxmMTAyXCI7XG4kZmEtdmFyLWFuZ2xlLWRvd246IFwiXFxmMTA3XCI7XG4kZmEtdmFyLWFuZ2xlLWxlZnQ6IFwiXFxmMTA0XCI7XG4kZmEtdmFyLWFuZ2xlLXJpZ2h0OiBcIlxcZjEwNVwiO1xuJGZhLXZhci1hbmdsZS11cDogXCJcXGYxMDZcIjtcbiRmYS12YXItYXBwbGU6IFwiXFxmMTc5XCI7XG4kZmEtdmFyLWFyY2hpdmU6IFwiXFxmMTg3XCI7XG4kZmEtdmFyLWFyZWEtY2hhcnQ6IFwiXFxmMWZlXCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1kb3duOiBcIlxcZjBhYlwiO1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtbGVmdDogXCJcXGYwYThcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLW8tZG93bjogXCJcXGYwMWFcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLW8tbGVmdDogXCJcXGYxOTBcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLW8tcmlnaHQ6IFwiXFxmMThlXCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1vLXVwOiBcIlxcZjAxYlwiO1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtcmlnaHQ6IFwiXFxmMGE5XCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS11cDogXCJcXGYwYWFcIjtcbiRmYS12YXItYXJyb3ctZG93bjogXCJcXGYwNjNcIjtcbiRmYS12YXItYXJyb3ctbGVmdDogXCJcXGYwNjBcIjtcbiRmYS12YXItYXJyb3ctcmlnaHQ6IFwiXFxmMDYxXCI7XG4kZmEtdmFyLWFycm93LXVwOiBcIlxcZjA2MlwiO1xuJGZhLXZhci1hcnJvd3M6IFwiXFxmMDQ3XCI7XG4kZmEtdmFyLWFycm93cy1hbHQ6IFwiXFxmMGIyXCI7XG4kZmEtdmFyLWFycm93cy1oOiBcIlxcZjA3ZVwiO1xuJGZhLXZhci1hcnJvd3MtdjogXCJcXGYwN2RcIjtcbiRmYS12YXItYXN0ZXJpc2s6IFwiXFxmMDY5XCI7XG4kZmEtdmFyLWF0OiBcIlxcZjFmYVwiO1xuJGZhLXZhci1hdXRvbW9iaWxlOiBcIlxcZjFiOVwiO1xuJGZhLXZhci1iYWNrd2FyZDogXCJcXGYwNGFcIjtcbiRmYS12YXItYmFsYW5jZS1zY2FsZTogXCJcXGYyNGVcIjtcbiRmYS12YXItYmFuOiBcIlxcZjA1ZVwiO1xuJGZhLXZhci1iYW5rOiBcIlxcZjE5Y1wiO1xuJGZhLXZhci1iYXItY2hhcnQ6IFwiXFxmMDgwXCI7XG4kZmEtdmFyLWJhci1jaGFydC1vOiBcIlxcZjA4MFwiO1xuJGZhLXZhci1iYXJjb2RlOiBcIlxcZjAyYVwiO1xuJGZhLXZhci1iYXJzOiBcIlxcZjBjOVwiO1xuJGZhLXZhci1iYXR0ZXJ5LTA6IFwiXFxmMjQ0XCI7XG4kZmEtdmFyLWJhdHRlcnktMTogXCJcXGYyNDNcIjtcbiRmYS12YXItYmF0dGVyeS0yOiBcIlxcZjI0MlwiO1xuJGZhLXZhci1iYXR0ZXJ5LTM6IFwiXFxmMjQxXCI7XG4kZmEtdmFyLWJhdHRlcnktNDogXCJcXGYyNDBcIjtcbiRmYS12YXItYmF0dGVyeS1lbXB0eTogXCJcXGYyNDRcIjtcbiRmYS12YXItYmF0dGVyeS1mdWxsOiBcIlxcZjI0MFwiO1xuJGZhLXZhci1iYXR0ZXJ5LWhhbGY6IFwiXFxmMjQyXCI7XG4kZmEtdmFyLWJhdHRlcnktcXVhcnRlcjogXCJcXGYyNDNcIjtcbiRmYS12YXItYmF0dGVyeS10aHJlZS1xdWFydGVyczogXCJcXGYyNDFcIjtcbiRmYS12YXItYmVkOiBcIlxcZjIzNlwiO1xuJGZhLXZhci1iZWVyOiBcIlxcZjBmY1wiO1xuJGZhLXZhci1iZWhhbmNlOiBcIlxcZjFiNFwiO1xuJGZhLXZhci1iZWhhbmNlLXNxdWFyZTogXCJcXGYxYjVcIjtcbiRmYS12YXItYmVsbDogXCJcXGYwZjNcIjtcbiRmYS12YXItYmVsbC1vOiBcIlxcZjBhMlwiO1xuJGZhLXZhci1iZWxsLXNsYXNoOiBcIlxcZjFmNlwiO1xuJGZhLXZhci1iZWxsLXNsYXNoLW86IFwiXFxmMWY3XCI7XG4kZmEtdmFyLWJpY3ljbGU6IFwiXFxmMjA2XCI7XG4kZmEtdmFyLWJpbm9jdWxhcnM6IFwiXFxmMWU1XCI7XG4kZmEtdmFyLWJpcnRoZGF5LWNha2U6IFwiXFxmMWZkXCI7XG4kZmEtdmFyLWJpdGJ1Y2tldDogXCJcXGYxNzFcIjtcbiRmYS12YXItYml0YnVja2V0LXNxdWFyZTogXCJcXGYxNzJcIjtcbiRmYS12YXItYml0Y29pbjogXCJcXGYxNWFcIjtcbiRmYS12YXItYmxhY2stdGllOiBcIlxcZjI3ZVwiO1xuJGZhLXZhci1ib2xkOiBcIlxcZjAzMlwiO1xuJGZhLXZhci1ib2x0OiBcIlxcZjBlN1wiO1xuJGZhLXZhci1ib21iOiBcIlxcZjFlMlwiO1xuJGZhLXZhci1ib29rOiBcIlxcZjAyZFwiO1xuJGZhLXZhci1ib29rbWFyazogXCJcXGYwMmVcIjtcbiRmYS12YXItYm9va21hcmstbzogXCJcXGYwOTdcIjtcbiRmYS12YXItYnJpZWZjYXNlOiBcIlxcZjBiMVwiO1xuJGZhLXZhci1idGM6IFwiXFxmMTVhXCI7XG4kZmEtdmFyLWJ1ZzogXCJcXGYxODhcIjtcbiRmYS12YXItYnVpbGRpbmc6IFwiXFxmMWFkXCI7XG4kZmEtdmFyLWJ1aWxkaW5nLW86IFwiXFxmMGY3XCI7XG4kZmEtdmFyLWJ1bGxob3JuOiBcIlxcZjBhMVwiO1xuJGZhLXZhci1idWxsc2V5ZTogXCJcXGYxNDBcIjtcbiRmYS12YXItYnVzOiBcIlxcZjIwN1wiO1xuJGZhLXZhci1idXlzZWxsYWRzOiBcIlxcZjIwZFwiO1xuJGZhLXZhci1jYWI6IFwiXFxmMWJhXCI7XG4kZmEtdmFyLWNhbGN1bGF0b3I6IFwiXFxmMWVjXCI7XG4kZmEtdmFyLWNhbGVuZGFyOiBcIlxcZjA3M1wiO1xuJGZhLXZhci1jYWxlbmRhci1jaGVjay1vOiBcIlxcZjI3NFwiO1xuJGZhLXZhci1jYWxlbmRhci1taW51cy1vOiBcIlxcZjI3MlwiO1xuJGZhLXZhci1jYWxlbmRhci1vOiBcIlxcZjEzM1wiO1xuJGZhLXZhci1jYWxlbmRhci1wbHVzLW86IFwiXFxmMjcxXCI7XG4kZmEtdmFyLWNhbGVuZGFyLXRpbWVzLW86IFwiXFxmMjczXCI7XG4kZmEtdmFyLWNhbWVyYTogXCJcXGYwMzBcIjtcbiRmYS12YXItY2FtZXJhLXJldHJvOiBcIlxcZjA4M1wiO1xuJGZhLXZhci1jYXI6IFwiXFxmMWI5XCI7XG4kZmEtdmFyLWNhcmV0LWRvd246IFwiXFxmMGQ3XCI7XG4kZmEtdmFyLWNhcmV0LWxlZnQ6IFwiXFxmMGQ5XCI7XG4kZmEtdmFyLWNhcmV0LXJpZ2h0OiBcIlxcZjBkYVwiO1xuJGZhLXZhci1jYXJldC1zcXVhcmUtby1kb3duOiBcIlxcZjE1MFwiO1xuJGZhLXZhci1jYXJldC1zcXVhcmUtby1sZWZ0OiBcIlxcZjE5MVwiO1xuJGZhLXZhci1jYXJldC1zcXVhcmUtby1yaWdodDogXCJcXGYxNTJcIjtcbiRmYS12YXItY2FyZXQtc3F1YXJlLW8tdXA6IFwiXFxmMTUxXCI7XG4kZmEtdmFyLWNhcmV0LXVwOiBcIlxcZjBkOFwiO1xuJGZhLXZhci1jYXJ0LWFycm93LWRvd246IFwiXFxmMjE4XCI7XG4kZmEtdmFyLWNhcnQtcGx1czogXCJcXGYyMTdcIjtcbiRmYS12YXItY2M6IFwiXFxmMjBhXCI7XG4kZmEtdmFyLWNjLWFtZXg6IFwiXFxmMWYzXCI7XG4kZmEtdmFyLWNjLWRpbmVycy1jbHViOiBcIlxcZjI0Y1wiO1xuJGZhLXZhci1jYy1kaXNjb3ZlcjogXCJcXGYxZjJcIjtcbiRmYS12YXItY2MtamNiOiBcIlxcZjI0YlwiO1xuJGZhLXZhci1jYy1tYXN0ZXJjYXJkOiBcIlxcZjFmMVwiO1xuJGZhLXZhci1jYy1wYXlwYWw6IFwiXFxmMWY0XCI7XG4kZmEtdmFyLWNjLXN0cmlwZTogXCJcXGYxZjVcIjtcbiRmYS12YXItY2MtdmlzYTogXCJcXGYxZjBcIjtcbiRmYS12YXItY2VydGlmaWNhdGU6IFwiXFxmMGEzXCI7XG4kZmEtdmFyLWNoYWluOiBcIlxcZjBjMVwiO1xuJGZhLXZhci1jaGFpbi1icm9rZW46IFwiXFxmMTI3XCI7XG4kZmEtdmFyLWNoZWNrOiBcIlxcZjAwY1wiO1xuJGZhLXZhci1jaGVjay1jaXJjbGU6IFwiXFxmMDU4XCI7XG4kZmEtdmFyLWNoZWNrLWNpcmNsZS1vOiBcIlxcZjA1ZFwiO1xuJGZhLXZhci1jaGVjay1zcXVhcmU6IFwiXFxmMTRhXCI7XG4kZmEtdmFyLWNoZWNrLXNxdWFyZS1vOiBcIlxcZjA0NlwiO1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1kb3duOiBcIlxcZjEzYVwiO1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1sZWZ0OiBcIlxcZjEzN1wiO1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1yaWdodDogXCJcXGYxMzhcIjtcbiRmYS12YXItY2hldnJvbi1jaXJjbGUtdXA6IFwiXFxmMTM5XCI7XG4kZmEtdmFyLWNoZXZyb24tZG93bjogXCJcXGYwNzhcIjtcbiRmYS12YXItY2hldnJvbi1sZWZ0OiBcIlxcZjA1M1wiO1xuJGZhLXZhci1jaGV2cm9uLXJpZ2h0OiBcIlxcZjA1NFwiO1xuJGZhLXZhci1jaGV2cm9uLXVwOiBcIlxcZjA3N1wiO1xuJGZhLXZhci1jaGlsZDogXCJcXGYxYWVcIjtcbiRmYS12YXItY2hyb21lOiBcIlxcZjI2OFwiO1xuJGZhLXZhci1jaXJjbGU6IFwiXFxmMTExXCI7XG4kZmEtdmFyLWNpcmNsZS1vOiBcIlxcZjEwY1wiO1xuJGZhLXZhci1jaXJjbGUtby1ub3RjaDogXCJcXGYxY2VcIjtcbiRmYS12YXItY2lyY2xlLXRoaW46IFwiXFxmMWRiXCI7XG4kZmEtdmFyLWNsaXBib2FyZDogXCJcXGYwZWFcIjtcbiRmYS12YXItY2xvY2stbzogXCJcXGYwMTdcIjtcbiRmYS12YXItY2xvbmU6IFwiXFxmMjRkXCI7XG4kZmEtdmFyLWNsb3NlOiBcIlxcZjAwZFwiO1xuJGZhLXZhci1jbG91ZDogXCJcXGYwYzJcIjtcbiRmYS12YXItY2xvdWQtZG93bmxvYWQ6IFwiXFxmMGVkXCI7XG4kZmEtdmFyLWNsb3VkLXVwbG9hZDogXCJcXGYwZWVcIjtcbiRmYS12YXItY255OiBcIlxcZjE1N1wiO1xuJGZhLXZhci1jb2RlOiBcIlxcZjEyMVwiO1xuJGZhLXZhci1jb2RlLWZvcms6IFwiXFxmMTI2XCI7XG4kZmEtdmFyLWNvZGVwZW46IFwiXFxmMWNiXCI7XG4kZmEtdmFyLWNvZmZlZTogXCJcXGYwZjRcIjtcbiRmYS12YXItY29nOiBcIlxcZjAxM1wiO1xuJGZhLXZhci1jb2dzOiBcIlxcZjA4NVwiO1xuJGZhLXZhci1jb2x1bW5zOiBcIlxcZjBkYlwiO1xuJGZhLXZhci1jb21tZW50OiBcIlxcZjA3NVwiO1xuJGZhLXZhci1jb21tZW50LW86IFwiXFxmMGU1XCI7XG4kZmEtdmFyLWNvbW1lbnRpbmc6IFwiXFxmMjdhXCI7XG4kZmEtdmFyLWNvbW1lbnRpbmctbzogXCJcXGYyN2JcIjtcbiRmYS12YXItY29tbWVudHM6IFwiXFxmMDg2XCI7XG4kZmEtdmFyLWNvbW1lbnRzLW86IFwiXFxmMGU2XCI7XG4kZmEtdmFyLWNvbXBhc3M6IFwiXFxmMTRlXCI7XG4kZmEtdmFyLWNvbXByZXNzOiBcIlxcZjA2NlwiO1xuJGZhLXZhci1jb25uZWN0ZGV2ZWxvcDogXCJcXGYyMGVcIjtcbiRmYS12YXItY29udGFvOiBcIlxcZjI2ZFwiO1xuJGZhLXZhci1jb3B5OiBcIlxcZjBjNVwiO1xuJGZhLXZhci1jb3B5cmlnaHQ6IFwiXFxmMWY5XCI7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnM6IFwiXFxmMjVlXCI7XG4kZmEtdmFyLWNyZWRpdC1jYXJkOiBcIlxcZjA5ZFwiO1xuJGZhLXZhci1jcm9wOiBcIlxcZjEyNVwiO1xuJGZhLXZhci1jcm9zc2hhaXJzOiBcIlxcZjA1YlwiO1xuJGZhLXZhci1jc3MzOiBcIlxcZjEzY1wiO1xuJGZhLXZhci1jdWJlOiBcIlxcZjFiMlwiO1xuJGZhLXZhci1jdWJlczogXCJcXGYxYjNcIjtcbiRmYS12YXItY3V0OiBcIlxcZjBjNFwiO1xuJGZhLXZhci1jdXRsZXJ5OiBcIlxcZjBmNVwiO1xuJGZhLXZhci1kYXNoYm9hcmQ6IFwiXFxmMGU0XCI7XG4kZmEtdmFyLWRhc2hjdWJlOiBcIlxcZjIxMFwiO1xuJGZhLXZhci1kYXRhYmFzZTogXCJcXGYxYzBcIjtcbiRmYS12YXItZGVkZW50OiBcIlxcZjAzYlwiO1xuJGZhLXZhci1kZWxpY2lvdXM6IFwiXFxmMWE1XCI7XG4kZmEtdmFyLWRlc2t0b3A6IFwiXFxmMTA4XCI7XG4kZmEtdmFyLWRldmlhbnRhcnQ6IFwiXFxmMWJkXCI7XG4kZmEtdmFyLWRpYW1vbmQ6IFwiXFxmMjE5XCI7XG4kZmEtdmFyLWRpZ2c6IFwiXFxmMWE2XCI7XG4kZmEtdmFyLWRvbGxhcjogXCJcXGYxNTVcIjtcbiRmYS12YXItZG90LWNpcmNsZS1vOiBcIlxcZjE5MlwiO1xuJGZhLXZhci1kb3dubG9hZDogXCJcXGYwMTlcIjtcbiRmYS12YXItZHJpYmJibGU6IFwiXFxmMTdkXCI7XG4kZmEtdmFyLWRyb3Bib3g6IFwiXFxmMTZiXCI7XG4kZmEtdmFyLWRydXBhbDogXCJcXGYxYTlcIjtcbiRmYS12YXItZWRpdDogXCJcXGYwNDRcIjtcbiRmYS12YXItZWplY3Q6IFwiXFxmMDUyXCI7XG4kZmEtdmFyLWVsbGlwc2lzLWg6IFwiXFxmMTQxXCI7XG4kZmEtdmFyLWVsbGlwc2lzLXY6IFwiXFxmMTQyXCI7XG4kZmEtdmFyLWVtcGlyZTogXCJcXGYxZDFcIjtcbiRmYS12YXItZW52ZWxvcGU6IFwiXFxmMGUwXCI7XG4kZmEtdmFyLWVudmVsb3BlLW86IFwiXFxmMDAzXCI7XG4kZmEtdmFyLWVudmVsb3BlLXNxdWFyZTogXCJcXGYxOTlcIjtcbiRmYS12YXItZXJhc2VyOiBcIlxcZjEyZFwiO1xuJGZhLXZhci1ldXI6IFwiXFxmMTUzXCI7XG4kZmEtdmFyLWV1cm86IFwiXFxmMTUzXCI7XG4kZmEtdmFyLWV4Y2hhbmdlOiBcIlxcZjBlY1wiO1xuJGZhLXZhci1leGNsYW1hdGlvbjogXCJcXGYxMmFcIjtcbiRmYS12YXItZXhjbGFtYXRpb24tY2lyY2xlOiBcIlxcZjA2YVwiO1xuJGZhLXZhci1leGNsYW1hdGlvbi10cmlhbmdsZTogXCJcXGYwNzFcIjtcbiRmYS12YXItZXhwYW5kOiBcIlxcZjA2NVwiO1xuJGZhLXZhci1leHBlZGl0ZWRzc2w6IFwiXFxmMjNlXCI7XG4kZmEtdmFyLWV4dGVybmFsLWxpbms6IFwiXFxmMDhlXCI7XG4kZmEtdmFyLWV4dGVybmFsLWxpbmstc3F1YXJlOiBcIlxcZjE0Y1wiO1xuJGZhLXZhci1leWU6IFwiXFxmMDZlXCI7XG4kZmEtdmFyLWV5ZS1zbGFzaDogXCJcXGYwNzBcIjtcbiRmYS12YXItZXllZHJvcHBlcjogXCJcXGYxZmJcIjtcbiRmYS12YXItZmFjZWJvb2s6IFwiXFxmMDlhXCI7XG4kZmEtdmFyLWZhY2Vib29rLWY6IFwiXFxmMDlhXCI7XG4kZmEtdmFyLWZhY2Vib29rLW9mZmljaWFsOiBcIlxcZjIzMFwiO1xuJGZhLXZhci1mYWNlYm9vay1zcXVhcmU6IFwiXFxmMDgyXCI7XG4kZmEtdmFyLWZhc3QtYmFja3dhcmQ6IFwiXFxmMDQ5XCI7XG4kZmEtdmFyLWZhc3QtZm9yd2FyZDogXCJcXGYwNTBcIjtcbiRmYS12YXItZmF4OiBcIlxcZjFhY1wiO1xuJGZhLXZhci1mZWVkOiBcIlxcZjA5ZVwiO1xuJGZhLXZhci1mZW1hbGU6IFwiXFxmMTgyXCI7XG4kZmEtdmFyLWZpZ2h0ZXItamV0OiBcIlxcZjBmYlwiO1xuJGZhLXZhci1maWxlOiBcIlxcZjE1YlwiO1xuJGZhLXZhci1maWxlLWFyY2hpdmUtbzogXCJcXGYxYzZcIjtcbiRmYS12YXItZmlsZS1hdWRpby1vOiBcIlxcZjFjN1wiO1xuJGZhLXZhci1maWxlLWNvZGUtbzogXCJcXGYxYzlcIjtcbiRmYS12YXItZmlsZS1leGNlbC1vOiBcIlxcZjFjM1wiO1xuJGZhLXZhci1maWxlLWltYWdlLW86IFwiXFxmMWM1XCI7XG4kZmEtdmFyLWZpbGUtbW92aWUtbzogXCJcXGYxYzhcIjtcbiRmYS12YXItZmlsZS1vOiBcIlxcZjAxNlwiO1xuJGZhLXZhci1maWxlLXBkZi1vOiBcIlxcZjFjMVwiO1xuJGZhLXZhci1maWxlLXBob3RvLW86IFwiXFxmMWM1XCI7XG4kZmEtdmFyLWZpbGUtcGljdHVyZS1vOiBcIlxcZjFjNVwiO1xuJGZhLXZhci1maWxlLXBvd2VycG9pbnQtbzogXCJcXGYxYzRcIjtcbiRmYS12YXItZmlsZS1zb3VuZC1vOiBcIlxcZjFjN1wiO1xuJGZhLXZhci1maWxlLXRleHQ6IFwiXFxmMTVjXCI7XG4kZmEtdmFyLWZpbGUtdGV4dC1vOiBcIlxcZjBmNlwiO1xuJGZhLXZhci1maWxlLXZpZGVvLW86IFwiXFxmMWM4XCI7XG4kZmEtdmFyLWZpbGUtd29yZC1vOiBcIlxcZjFjMlwiO1xuJGZhLXZhci1maWxlLXppcC1vOiBcIlxcZjFjNlwiO1xuJGZhLXZhci1maWxlcy1vOiBcIlxcZjBjNVwiO1xuJGZhLXZhci1maWxtOiBcIlxcZjAwOFwiO1xuJGZhLXZhci1maWx0ZXI6IFwiXFxmMGIwXCI7XG4kZmEtdmFyLWZpcmU6IFwiXFxmMDZkXCI7XG4kZmEtdmFyLWZpcmUtZXh0aW5ndWlzaGVyOiBcIlxcZjEzNFwiO1xuJGZhLXZhci1maXJlZm94OiBcIlxcZjI2OVwiO1xuJGZhLXZhci1mbGFnOiBcIlxcZjAyNFwiO1xuJGZhLXZhci1mbGFnLWNoZWNrZXJlZDogXCJcXGYxMWVcIjtcbiRmYS12YXItZmxhZy1vOiBcIlxcZjExZFwiO1xuJGZhLXZhci1mbGFzaDogXCJcXGYwZTdcIjtcbiRmYS12YXItZmxhc2s6IFwiXFxmMGMzXCI7XG4kZmEtdmFyLWZsaWNrcjogXCJcXGYxNmVcIjtcbiRmYS12YXItZmxvcHB5LW86IFwiXFxmMGM3XCI7XG4kZmEtdmFyLWZvbGRlcjogXCJcXGYwN2JcIjtcbiRmYS12YXItZm9sZGVyLW86IFwiXFxmMTE0XCI7XG4kZmEtdmFyLWZvbGRlci1vcGVuOiBcIlxcZjA3Y1wiO1xuJGZhLXZhci1mb2xkZXItb3Blbi1vOiBcIlxcZjExNVwiO1xuJGZhLXZhci1mb250OiBcIlxcZjAzMVwiO1xuJGZhLXZhci1mb250aWNvbnM6IFwiXFxmMjgwXCI7XG4kZmEtdmFyLWZvcnVtYmVlOiBcIlxcZjIxMVwiO1xuJGZhLXZhci1mb3J3YXJkOiBcIlxcZjA0ZVwiO1xuJGZhLXZhci1mb3Vyc3F1YXJlOiBcIlxcZjE4MFwiO1xuJGZhLXZhci1mcm93bi1vOiBcIlxcZjExOVwiO1xuJGZhLXZhci1mdXRib2wtbzogXCJcXGYxZTNcIjtcbiRmYS12YXItZ2FtZXBhZDogXCJcXGYxMWJcIjtcbiRmYS12YXItZ2F2ZWw6IFwiXFxmMGUzXCI7XG4kZmEtdmFyLWdicDogXCJcXGYxNTRcIjtcbiRmYS12YXItZ2U6IFwiXFxmMWQxXCI7XG4kZmEtdmFyLWdlYXI6IFwiXFxmMDEzXCI7XG4kZmEtdmFyLWdlYXJzOiBcIlxcZjA4NVwiO1xuJGZhLXZhci1nZW5kZXJsZXNzOiBcIlxcZjIyZFwiO1xuJGZhLXZhci1nZXQtcG9ja2V0OiBcIlxcZjI2NVwiO1xuJGZhLXZhci1nZzogXCJcXGYyNjBcIjtcbiRmYS12YXItZ2ctY2lyY2xlOiBcIlxcZjI2MVwiO1xuJGZhLXZhci1naWZ0OiBcIlxcZjA2YlwiO1xuJGZhLXZhci1naXQ6IFwiXFxmMWQzXCI7XG4kZmEtdmFyLWdpdC1zcXVhcmU6IFwiXFxmMWQyXCI7XG4kZmEtdmFyLWdpdGh1YjogXCJcXGYwOWJcIjtcbiRmYS12YXItZ2l0aHViLWFsdDogXCJcXGYxMTNcIjtcbiRmYS12YXItZ2l0aHViLXNxdWFyZTogXCJcXGYwOTJcIjtcbiRmYS12YXItZ2l0dGlwOiBcIlxcZjE4NFwiO1xuJGZhLXZhci1nbGFzczogXCJcXGYwMDBcIjtcbiRmYS12YXItZ2xvYmU6IFwiXFxmMGFjXCI7XG4kZmEtdmFyLWdvb2dsZTogXCJcXGYxYTBcIjtcbiRmYS12YXItZ29vZ2xlLXBsdXM6IFwiXFxmMGQ1XCI7XG4kZmEtdmFyLWdvb2dsZS1wbHVzLXNxdWFyZTogXCJcXGYwZDRcIjtcbiRmYS12YXItZ29vZ2xlLXdhbGxldDogXCJcXGYxZWVcIjtcbiRmYS12YXItZ3JhZHVhdGlvbi1jYXA6IFwiXFxmMTlkXCI7XG4kZmEtdmFyLWdyYXRpcGF5OiBcIlxcZjE4NFwiO1xuJGZhLXZhci1ncm91cDogXCJcXGYwYzBcIjtcbiRmYS12YXItaC1zcXVhcmU6IFwiXFxmMGZkXCI7XG4kZmEtdmFyLWhhY2tlci1uZXdzOiBcIlxcZjFkNFwiO1xuJGZhLXZhci1oYW5kLWdyYWItbzogXCJcXGYyNTVcIjtcbiRmYS12YXItaGFuZC1saXphcmQtbzogXCJcXGYyNThcIjtcbiRmYS12YXItaGFuZC1vLWRvd246IFwiXFxmMGE3XCI7XG4kZmEtdmFyLWhhbmQtby1sZWZ0OiBcIlxcZjBhNVwiO1xuJGZhLXZhci1oYW5kLW8tcmlnaHQ6IFwiXFxmMGE0XCI7XG4kZmEtdmFyLWhhbmQtby11cDogXCJcXGYwYTZcIjtcbiRmYS12YXItaGFuZC1wYXBlci1vOiBcIlxcZjI1NlwiO1xuJGZhLXZhci1oYW5kLXBlYWNlLW86IFwiXFxmMjViXCI7XG4kZmEtdmFyLWhhbmQtcG9pbnRlci1vOiBcIlxcZjI1YVwiO1xuJGZhLXZhci1oYW5kLXJvY2stbzogXCJcXGYyNTVcIjtcbiRmYS12YXItaGFuZC1zY2lzc29ycy1vOiBcIlxcZjI1N1wiO1xuJGZhLXZhci1oYW5kLXNwb2NrLW86IFwiXFxmMjU5XCI7XG4kZmEtdmFyLWhhbmQtc3RvcC1vOiBcIlxcZjI1NlwiO1xuJGZhLXZhci1oZGQtbzogXCJcXGYwYTBcIjtcbiRmYS12YXItaGVhZGVyOiBcIlxcZjFkY1wiO1xuJGZhLXZhci1oZWFkcGhvbmVzOiBcIlxcZjAyNVwiO1xuJGZhLXZhci1oZWFydDogXCJcXGYwMDRcIjtcbiRmYS12YXItaGVhcnQtbzogXCJcXGYwOGFcIjtcbiRmYS12YXItaGVhcnRiZWF0OiBcIlxcZjIxZVwiO1xuJGZhLXZhci1oaXN0b3J5OiBcIlxcZjFkYVwiO1xuJGZhLXZhci1ob21lOiBcIlxcZjAxNVwiO1xuJGZhLXZhci1ob3NwaXRhbC1vOiBcIlxcZjBmOFwiO1xuJGZhLXZhci1ob3RlbDogXCJcXGYyMzZcIjtcbiRmYS12YXItaG91cmdsYXNzOiBcIlxcZjI1NFwiO1xuJGZhLXZhci1ob3VyZ2xhc3MtMTogXCJcXGYyNTFcIjtcbiRmYS12YXItaG91cmdsYXNzLTI6IFwiXFxmMjUyXCI7XG4kZmEtdmFyLWhvdXJnbGFzcy0zOiBcIlxcZjI1M1wiO1xuJGZhLXZhci1ob3VyZ2xhc3MtZW5kOiBcIlxcZjI1M1wiO1xuJGZhLXZhci1ob3VyZ2xhc3MtaGFsZjogXCJcXGYyNTJcIjtcbiRmYS12YXItaG91cmdsYXNzLW86IFwiXFxmMjUwXCI7XG4kZmEtdmFyLWhvdXJnbGFzcy1zdGFydDogXCJcXGYyNTFcIjtcbiRmYS12YXItaG91eno6IFwiXFxmMjdjXCI7XG4kZmEtdmFyLWh0bWw1OiBcIlxcZjEzYlwiO1xuJGZhLXZhci1pLWN1cnNvcjogXCJcXGYyNDZcIjtcbiRmYS12YXItaWxzOiBcIlxcZjIwYlwiO1xuJGZhLXZhci1pbWFnZTogXCJcXGYwM2VcIjtcbiRmYS12YXItaW5ib3g6IFwiXFxmMDFjXCI7XG4kZmEtdmFyLWluZGVudDogXCJcXGYwM2NcIjtcbiRmYS12YXItaW5kdXN0cnk6IFwiXFxmMjc1XCI7XG4kZmEtdmFyLWluZm86IFwiXFxmMTI5XCI7XG4kZmEtdmFyLWluZm8tY2lyY2xlOiBcIlxcZjA1YVwiO1xuJGZhLXZhci1pbnI6IFwiXFxmMTU2XCI7XG4kZmEtdmFyLWluc3RhZ3JhbTogXCJcXGYxNmRcIjtcbiRmYS12YXItaW5zdGl0dXRpb246IFwiXFxmMTljXCI7XG4kZmEtdmFyLWludGVybmV0LWV4cGxvcmVyOiBcIlxcZjI2YlwiO1xuJGZhLXZhci1pbnRlcnNleDogXCJcXGYyMjRcIjtcbiRmYS12YXItaW94aG9zdDogXCJcXGYyMDhcIjtcbiRmYS12YXItaXRhbGljOiBcIlxcZjAzM1wiO1xuJGZhLXZhci1qb29tbGE6IFwiXFxmMWFhXCI7XG4kZmEtdmFyLWpweTogXCJcXGYxNTdcIjtcbiRmYS12YXItanNmaWRkbGU6IFwiXFxmMWNjXCI7XG4kZmEtdmFyLWtleTogXCJcXGYwODRcIjtcbiRmYS12YXIta2V5Ym9hcmQtbzogXCJcXGYxMWNcIjtcbiRmYS12YXIta3J3OiBcIlxcZjE1OVwiO1xuJGZhLXZhci1sYW5ndWFnZTogXCJcXGYxYWJcIjtcbiRmYS12YXItbGFwdG9wOiBcIlxcZjEwOVwiO1xuJGZhLXZhci1sYXN0Zm06IFwiXFxmMjAyXCI7XG4kZmEtdmFyLWxhc3RmbS1zcXVhcmU6IFwiXFxmMjAzXCI7XG4kZmEtdmFyLWxlYWY6IFwiXFxmMDZjXCI7XG4kZmEtdmFyLWxlYW5wdWI6IFwiXFxmMjEyXCI7XG4kZmEtdmFyLWxlZ2FsOiBcIlxcZjBlM1wiO1xuJGZhLXZhci1sZW1vbi1vOiBcIlxcZjA5NFwiO1xuJGZhLXZhci1sZXZlbC1kb3duOiBcIlxcZjE0OVwiO1xuJGZhLXZhci1sZXZlbC11cDogXCJcXGYxNDhcIjtcbiRmYS12YXItbGlmZS1ib3V5OiBcIlxcZjFjZFwiO1xuJGZhLXZhci1saWZlLWJ1b3k6IFwiXFxmMWNkXCI7XG4kZmEtdmFyLWxpZmUtcmluZzogXCJcXGYxY2RcIjtcbiRmYS12YXItbGlmZS1zYXZlcjogXCJcXGYxY2RcIjtcbiRmYS12YXItbGlnaHRidWxiLW86IFwiXFxmMGViXCI7XG4kZmEtdmFyLWxpbmUtY2hhcnQ6IFwiXFxmMjAxXCI7XG4kZmEtdmFyLWxpbms6IFwiXFxmMGMxXCI7XG4kZmEtdmFyLWxpbmtlZGluOiBcIlxcZjBlMVwiO1xuJGZhLXZhci1saW5rZWRpbi1zcXVhcmU6IFwiXFxmMDhjXCI7XG4kZmEtdmFyLWxpbnV4OiBcIlxcZjE3Y1wiO1xuJGZhLXZhci1saXN0OiBcIlxcZjAzYVwiO1xuJGZhLXZhci1saXN0LWFsdDogXCJcXGYwMjJcIjtcbiRmYS12YXItbGlzdC1vbDogXCJcXGYwY2JcIjtcbiRmYS12YXItbGlzdC11bDogXCJcXGYwY2FcIjtcbiRmYS12YXItbG9jYXRpb24tYXJyb3c6IFwiXFxmMTI0XCI7XG4kZmEtdmFyLWxvY2s6IFwiXFxmMDIzXCI7XG4kZmEtdmFyLWxvbmctYXJyb3ctZG93bjogXCJcXGYxNzVcIjtcbiRmYS12YXItbG9uZy1hcnJvdy1sZWZ0OiBcIlxcZjE3N1wiO1xuJGZhLXZhci1sb25nLWFycm93LXJpZ2h0OiBcIlxcZjE3OFwiO1xuJGZhLXZhci1sb25nLWFycm93LXVwOiBcIlxcZjE3NlwiO1xuJGZhLXZhci1tYWdpYzogXCJcXGYwZDBcIjtcbiRmYS12YXItbWFnbmV0OiBcIlxcZjA3NlwiO1xuJGZhLXZhci1tYWlsLWZvcndhcmQ6IFwiXFxmMDY0XCI7XG4kZmEtdmFyLW1haWwtcmVwbHk6IFwiXFxmMTEyXCI7XG4kZmEtdmFyLW1haWwtcmVwbHktYWxsOiBcIlxcZjEyMlwiO1xuJGZhLXZhci1tYWxlOiBcIlxcZjE4M1wiO1xuJGZhLXZhci1tYXA6IFwiXFxmMjc5XCI7XG4kZmEtdmFyLW1hcC1tYXJrZXI6IFwiXFxmMDQxXCI7XG4kZmEtdmFyLW1hcC1vOiBcIlxcZjI3OFwiO1xuJGZhLXZhci1tYXAtcGluOiBcIlxcZjI3NlwiO1xuJGZhLXZhci1tYXAtc2lnbnM6IFwiXFxmMjc3XCI7XG4kZmEtdmFyLW1hcnM6IFwiXFxmMjIyXCI7XG4kZmEtdmFyLW1hcnMtZG91YmxlOiBcIlxcZjIyN1wiO1xuJGZhLXZhci1tYXJzLXN0cm9rZTogXCJcXGYyMjlcIjtcbiRmYS12YXItbWFycy1zdHJva2UtaDogXCJcXGYyMmJcIjtcbiRmYS12YXItbWFycy1zdHJva2UtdjogXCJcXGYyMmFcIjtcbiRmYS12YXItbWF4Y2RuOiBcIlxcZjEzNlwiO1xuJGZhLXZhci1tZWFucGF0aDogXCJcXGYyMGNcIjtcbiRmYS12YXItbWVkaXVtOiBcIlxcZjIzYVwiO1xuJGZhLXZhci1tZWRraXQ6IFwiXFxmMGZhXCI7XG4kZmEtdmFyLW1laC1vOiBcIlxcZjExYVwiO1xuJGZhLXZhci1tZXJjdXJ5OiBcIlxcZjIyM1wiO1xuJGZhLXZhci1taWNyb3Bob25lOiBcIlxcZjEzMFwiO1xuJGZhLXZhci1taWNyb3Bob25lLXNsYXNoOiBcIlxcZjEzMVwiO1xuJGZhLXZhci1taW51czogXCJcXGYwNjhcIjtcbiRmYS12YXItbWludXMtY2lyY2xlOiBcIlxcZjA1NlwiO1xuJGZhLXZhci1taW51cy1zcXVhcmU6IFwiXFxmMTQ2XCI7XG4kZmEtdmFyLW1pbnVzLXNxdWFyZS1vOiBcIlxcZjE0N1wiO1xuJGZhLXZhci1tb2JpbGU6IFwiXFxmMTBiXCI7XG4kZmEtdmFyLW1vYmlsZS1waG9uZTogXCJcXGYxMGJcIjtcbiRmYS12YXItbW9uZXk6IFwiXFxmMGQ2XCI7XG4kZmEtdmFyLW1vb24tbzogXCJcXGYxODZcIjtcbiRmYS12YXItbW9ydGFyLWJvYXJkOiBcIlxcZjE5ZFwiO1xuJGZhLXZhci1tb3RvcmN5Y2xlOiBcIlxcZjIxY1wiO1xuJGZhLXZhci1tb3VzZS1wb2ludGVyOiBcIlxcZjI0NVwiO1xuJGZhLXZhci1tdXNpYzogXCJcXGYwMDFcIjtcbiRmYS12YXItbmF2aWNvbjogXCJcXGYwYzlcIjtcbiRmYS12YXItbmV1dGVyOiBcIlxcZjIyY1wiO1xuJGZhLXZhci1uZXdzcGFwZXItbzogXCJcXGYxZWFcIjtcbiRmYS12YXItb2JqZWN0LWdyb3VwOiBcIlxcZjI0N1wiO1xuJGZhLXZhci1vYmplY3QtdW5ncm91cDogXCJcXGYyNDhcIjtcbiRmYS12YXItb2Rub2tsYXNzbmlraTogXCJcXGYyNjNcIjtcbiRmYS12YXItb2Rub2tsYXNzbmlraS1zcXVhcmU6IFwiXFxmMjY0XCI7XG4kZmEtdmFyLW9wZW5jYXJ0OiBcIlxcZjIzZFwiO1xuJGZhLXZhci1vcGVuaWQ6IFwiXFxmMTliXCI7XG4kZmEtdmFyLW9wZXJhOiBcIlxcZjI2YVwiO1xuJGZhLXZhci1vcHRpbi1tb25zdGVyOiBcIlxcZjIzY1wiO1xuJGZhLXZhci1vdXRkZW50OiBcIlxcZjAzYlwiO1xuJGZhLXZhci1wYWdlbGluZXM6IFwiXFxmMThjXCI7XG4kZmEtdmFyLXBhaW50LWJydXNoOiBcIlxcZjFmY1wiO1xuJGZhLXZhci1wYXBlci1wbGFuZTogXCJcXGYxZDhcIjtcbiRmYS12YXItcGFwZXItcGxhbmUtbzogXCJcXGYxZDlcIjtcbiRmYS12YXItcGFwZXJjbGlwOiBcIlxcZjBjNlwiO1xuJGZhLXZhci1wYXJhZ3JhcGg6IFwiXFxmMWRkXCI7XG4kZmEtdmFyLXBhc3RlOiBcIlxcZjBlYVwiO1xuJGZhLXZhci1wYXVzZTogXCJcXGYwNGNcIjtcbiRmYS12YXItcGF3OiBcIlxcZjFiMFwiO1xuJGZhLXZhci1wYXlwYWw6IFwiXFxmMWVkXCI7XG4kZmEtdmFyLXBlbmNpbDogXCJcXGYwNDBcIjtcbiRmYS12YXItcGVuY2lsLXNxdWFyZTogXCJcXGYxNGJcIjtcbiRmYS12YXItcGVuY2lsLXNxdWFyZS1vOiBcIlxcZjA0NFwiO1xuJGZhLXZhci1waG9uZTogXCJcXGYwOTVcIjtcbiRmYS12YXItcGhvbmUtc3F1YXJlOiBcIlxcZjA5OFwiO1xuJGZhLXZhci1waG90bzogXCJcXGYwM2VcIjtcbiRmYS12YXItcGljdHVyZS1vOiBcIlxcZjAzZVwiO1xuJGZhLXZhci1waWUtY2hhcnQ6IFwiXFxmMjAwXCI7XG4kZmEtdmFyLXBpZWQtcGlwZXI6IFwiXFxmMWE3XCI7XG4kZmEtdmFyLXBpZWQtcGlwZXItYWx0OiBcIlxcZjFhOFwiO1xuJGZhLXZhci1waW50ZXJlc3Q6IFwiXFxmMGQyXCI7XG4kZmEtdmFyLXBpbnRlcmVzdC1wOiBcIlxcZjIzMVwiO1xuJGZhLXZhci1waW50ZXJlc3Qtc3F1YXJlOiBcIlxcZjBkM1wiO1xuJGZhLXZhci1wbGFuZTogXCJcXGYwNzJcIjtcbiRmYS12YXItcGxheTogXCJcXGYwNGJcIjtcbiRmYS12YXItcGxheS1jaXJjbGU6IFwiXFxmMTQ0XCI7XG4kZmEtdmFyLXBsYXktY2lyY2xlLW86IFwiXFxmMDFkXCI7XG4kZmEtdmFyLXBsdWc6IFwiXFxmMWU2XCI7XG4kZmEtdmFyLXBsdXM6IFwiXFxmMDY3XCI7XG4kZmEtdmFyLXBsdXMtY2lyY2xlOiBcIlxcZjA1NVwiO1xuJGZhLXZhci1wbHVzLXNxdWFyZTogXCJcXGYwZmVcIjtcbiRmYS12YXItcGx1cy1zcXVhcmUtbzogXCJcXGYxOTZcIjtcbiRmYS12YXItcG93ZXItb2ZmOiBcIlxcZjAxMVwiO1xuJGZhLXZhci1wcmludDogXCJcXGYwMmZcIjtcbiRmYS12YXItcHV6emxlLXBpZWNlOiBcIlxcZjEyZVwiO1xuJGZhLXZhci1xcTogXCJcXGYxZDZcIjtcbiRmYS12YXItcXJjb2RlOiBcIlxcZjAyOVwiO1xuJGZhLXZhci1xdWVzdGlvbjogXCJcXGYxMjhcIjtcbiRmYS12YXItcXVlc3Rpb24tY2lyY2xlOiBcIlxcZjA1OVwiO1xuJGZhLXZhci1xdW90ZS1sZWZ0OiBcIlxcZjEwZFwiO1xuJGZhLXZhci1xdW90ZS1yaWdodDogXCJcXGYxMGVcIjtcbiRmYS12YXItcmE6IFwiXFxmMWQwXCI7XG4kZmEtdmFyLXJhbmRvbTogXCJcXGYwNzRcIjtcbiRmYS12YXItcmViZWw6IFwiXFxmMWQwXCI7XG4kZmEtdmFyLXJlY3ljbGU6IFwiXFxmMWI4XCI7XG4kZmEtdmFyLXJlZGRpdDogXCJcXGYxYTFcIjtcbiRmYS12YXItcmVkZGl0LXNxdWFyZTogXCJcXGYxYTJcIjtcbiRmYS12YXItcmVmcmVzaDogXCJcXGYwMjFcIjtcbiRmYS12YXItcmVnaXN0ZXJlZDogXCJcXGYyNWRcIjtcbiRmYS12YXItcmVtb3ZlOiBcIlxcZjAwZFwiO1xuJGZhLXZhci1yZW5yZW46IFwiXFxmMThiXCI7XG4kZmEtdmFyLXJlb3JkZXI6IFwiXFxmMGM5XCI7XG4kZmEtdmFyLXJlcGVhdDogXCJcXGYwMWVcIjtcbiRmYS12YXItcmVwbHk6IFwiXFxmMTEyXCI7XG4kZmEtdmFyLXJlcGx5LWFsbDogXCJcXGYxMjJcIjtcbiRmYS12YXItcmV0d2VldDogXCJcXGYwNzlcIjtcbiRmYS12YXItcm1iOiBcIlxcZjE1N1wiO1xuJGZhLXZhci1yb2FkOiBcIlxcZjAxOFwiO1xuJGZhLXZhci1yb2NrZXQ6IFwiXFxmMTM1XCI7XG4kZmEtdmFyLXJvdGF0ZS1sZWZ0OiBcIlxcZjBlMlwiO1xuJGZhLXZhci1yb3RhdGUtcmlnaHQ6IFwiXFxmMDFlXCI7XG4kZmEtdmFyLXJvdWJsZTogXCJcXGYxNThcIjtcbiRmYS12YXItcnNzOiBcIlxcZjA5ZVwiO1xuJGZhLXZhci1yc3Mtc3F1YXJlOiBcIlxcZjE0M1wiO1xuJGZhLXZhci1ydWI6IFwiXFxmMTU4XCI7XG4kZmEtdmFyLXJ1YmxlOiBcIlxcZjE1OFwiO1xuJGZhLXZhci1ydXBlZTogXCJcXGYxNTZcIjtcbiRmYS12YXItc2FmYXJpOiBcIlxcZjI2N1wiO1xuJGZhLXZhci1zYXZlOiBcIlxcZjBjN1wiO1xuJGZhLXZhci1zY2lzc29yczogXCJcXGYwYzRcIjtcbiRmYS12YXItc2VhcmNoOiBcIlxcZjAwMlwiO1xuJGZhLXZhci1zZWFyY2gtbWludXM6IFwiXFxmMDEwXCI7XG4kZmEtdmFyLXNlYXJjaC1wbHVzOiBcIlxcZjAwZVwiO1xuJGZhLXZhci1zZWxsc3k6IFwiXFxmMjEzXCI7XG4kZmEtdmFyLXNlbmQ6IFwiXFxmMWQ4XCI7XG4kZmEtdmFyLXNlbmQtbzogXCJcXGYxZDlcIjtcbiRmYS12YXItc2VydmVyOiBcIlxcZjIzM1wiO1xuJGZhLXZhci1zaGFyZTogXCJcXGYwNjRcIjtcbiRmYS12YXItc2hhcmUtYWx0OiBcIlxcZjFlMFwiO1xuJGZhLXZhci1zaGFyZS1hbHQtc3F1YXJlOiBcIlxcZjFlMVwiO1xuJGZhLXZhci1zaGFyZS1zcXVhcmU6IFwiXFxmMTRkXCI7XG4kZmEtdmFyLXNoYXJlLXNxdWFyZS1vOiBcIlxcZjA0NVwiO1xuJGZhLXZhci1zaGVrZWw6IFwiXFxmMjBiXCI7XG4kZmEtdmFyLXNoZXFlbDogXCJcXGYyMGJcIjtcbiRmYS12YXItc2hpZWxkOiBcIlxcZjEzMlwiO1xuJGZhLXZhci1zaGlwOiBcIlxcZjIxYVwiO1xuJGZhLXZhci1zaGlydHNpbmJ1bGs6IFwiXFxmMjE0XCI7XG4kZmEtdmFyLXNob3BwaW5nLWNhcnQ6IFwiXFxmMDdhXCI7XG4kZmEtdmFyLXNpZ24taW46IFwiXFxmMDkwXCI7XG4kZmEtdmFyLXNpZ24tb3V0OiBcIlxcZjA4YlwiO1xuJGZhLXZhci1zaWduYWw6IFwiXFxmMDEyXCI7XG4kZmEtdmFyLXNpbXBseWJ1aWx0OiBcIlxcZjIxNVwiO1xuJGZhLXZhci1zaXRlbWFwOiBcIlxcZjBlOFwiO1xuJGZhLXZhci1za3lhdGxhczogXCJcXGYyMTZcIjtcbiRmYS12YXItc2t5cGU6IFwiXFxmMTdlXCI7XG4kZmEtdmFyLXNsYWNrOiBcIlxcZjE5OFwiO1xuJGZhLXZhci1zbGlkZXJzOiBcIlxcZjFkZVwiO1xuJGZhLXZhci1zbGlkZXNoYXJlOiBcIlxcZjFlN1wiO1xuJGZhLXZhci1zbWlsZS1vOiBcIlxcZjExOFwiO1xuJGZhLXZhci1zb2NjZXItYmFsbC1vOiBcIlxcZjFlM1wiO1xuJGZhLXZhci1zb3J0OiBcIlxcZjBkY1wiO1xuJGZhLXZhci1zb3J0LWFscGhhLWFzYzogXCJcXGYxNWRcIjtcbiRmYS12YXItc29ydC1hbHBoYS1kZXNjOiBcIlxcZjE1ZVwiO1xuJGZhLXZhci1zb3J0LWFtb3VudC1hc2M6IFwiXFxmMTYwXCI7XG4kZmEtdmFyLXNvcnQtYW1vdW50LWRlc2M6IFwiXFxmMTYxXCI7XG4kZmEtdmFyLXNvcnQtYXNjOiBcIlxcZjBkZVwiO1xuJGZhLXZhci1zb3J0LWRlc2M6IFwiXFxmMGRkXCI7XG4kZmEtdmFyLXNvcnQtZG93bjogXCJcXGYwZGRcIjtcbiRmYS12YXItc29ydC1udW1lcmljLWFzYzogXCJcXGYxNjJcIjtcbiRmYS12YXItc29ydC1udW1lcmljLWRlc2M6IFwiXFxmMTYzXCI7XG4kZmEtdmFyLXNvcnQtdXA6IFwiXFxmMGRlXCI7XG4kZmEtdmFyLXNvdW5kY2xvdWQ6IFwiXFxmMWJlXCI7XG4kZmEtdmFyLXNwYWNlLXNodXR0bGU6IFwiXFxmMTk3XCI7XG4kZmEtdmFyLXNwaW5uZXI6IFwiXFxmMTEwXCI7XG4kZmEtdmFyLXNwb29uOiBcIlxcZjFiMVwiO1xuJGZhLXZhci1zcG90aWZ5OiBcIlxcZjFiY1wiO1xuJGZhLXZhci1zcXVhcmU6IFwiXFxmMGM4XCI7XG4kZmEtdmFyLXNxdWFyZS1vOiBcIlxcZjA5NlwiO1xuJGZhLXZhci1zdGFjay1leGNoYW5nZTogXCJcXGYxOGRcIjtcbiRmYS12YXItc3RhY2stb3ZlcmZsb3c6IFwiXFxmMTZjXCI7XG4kZmEtdmFyLXN0YXI6IFwiXFxmMDA1XCI7XG4kZmEtdmFyLXN0YXItaGFsZjogXCJcXGYwODlcIjtcbiRmYS12YXItc3Rhci1oYWxmLWVtcHR5OiBcIlxcZjEyM1wiO1xuJGZhLXZhci1zdGFyLWhhbGYtZnVsbDogXCJcXGYxMjNcIjtcbiRmYS12YXItc3Rhci1oYWxmLW86IFwiXFxmMTIzXCI7XG4kZmEtdmFyLXN0YXItbzogXCJcXGYwMDZcIjtcbiRmYS12YXItc3RlYW06IFwiXFxmMWI2XCI7XG4kZmEtdmFyLXN0ZWFtLXNxdWFyZTogXCJcXGYxYjdcIjtcbiRmYS12YXItc3RlcC1iYWNrd2FyZDogXCJcXGYwNDhcIjtcbiRmYS12YXItc3RlcC1mb3J3YXJkOiBcIlxcZjA1MVwiO1xuJGZhLXZhci1zdGV0aG9zY29wZTogXCJcXGYwZjFcIjtcbiRmYS12YXItc3RpY2t5LW5vdGU6IFwiXFxmMjQ5XCI7XG4kZmEtdmFyLXN0aWNreS1ub3RlLW86IFwiXFxmMjRhXCI7XG4kZmEtdmFyLXN0b3A6IFwiXFxmMDRkXCI7XG4kZmEtdmFyLXN0cmVldC12aWV3OiBcIlxcZjIxZFwiO1xuJGZhLXZhci1zdHJpa2V0aHJvdWdoOiBcIlxcZjBjY1wiO1xuJGZhLXZhci1zdHVtYmxldXBvbjogXCJcXGYxYTRcIjtcbiRmYS12YXItc3R1bWJsZXVwb24tY2lyY2xlOiBcIlxcZjFhM1wiO1xuJGZhLXZhci1zdWJzY3JpcHQ6IFwiXFxmMTJjXCI7XG4kZmEtdmFyLXN1YndheTogXCJcXGYyMzlcIjtcbiRmYS12YXItc3VpdGNhc2U6IFwiXFxmMGYyXCI7XG4kZmEtdmFyLXN1bi1vOiBcIlxcZjE4NVwiO1xuJGZhLXZhci1zdXBlcnNjcmlwdDogXCJcXGYxMmJcIjtcbiRmYS12YXItc3VwcG9ydDogXCJcXGYxY2RcIjtcbiRmYS12YXItdGFibGU6IFwiXFxmMGNlXCI7XG4kZmEtdmFyLXRhYmxldDogXCJcXGYxMGFcIjtcbiRmYS12YXItdGFjaG9tZXRlcjogXCJcXGYwZTRcIjtcbiRmYS12YXItdGFnOiBcIlxcZjAyYlwiO1xuJGZhLXZhci10YWdzOiBcIlxcZjAyY1wiO1xuJGZhLXZhci10YXNrczogXCJcXGYwYWVcIjtcbiRmYS12YXItdGF4aTogXCJcXGYxYmFcIjtcbiRmYS12YXItdGVsZXZpc2lvbjogXCJcXGYyNmNcIjtcbiRmYS12YXItdGVuY2VudC13ZWlibzogXCJcXGYxZDVcIjtcbiRmYS12YXItdGVybWluYWw6IFwiXFxmMTIwXCI7XG4kZmEtdmFyLXRleHQtaGVpZ2h0OiBcIlxcZjAzNFwiO1xuJGZhLXZhci10ZXh0LXdpZHRoOiBcIlxcZjAzNVwiO1xuJGZhLXZhci10aDogXCJcXGYwMGFcIjtcbiRmYS12YXItdGgtbGFyZ2U6IFwiXFxmMDA5XCI7XG4kZmEtdmFyLXRoLWxpc3Q6IFwiXFxmMDBiXCI7XG4kZmEtdmFyLXRodW1iLXRhY2s6IFwiXFxmMDhkXCI7XG4kZmEtdmFyLXRodW1icy1kb3duOiBcIlxcZjE2NVwiO1xuJGZhLXZhci10aHVtYnMtby1kb3duOiBcIlxcZjA4OFwiO1xuJGZhLXZhci10aHVtYnMtby11cDogXCJcXGYwODdcIjtcbiRmYS12YXItdGh1bWJzLXVwOiBcIlxcZjE2NFwiO1xuJGZhLXZhci10aWNrZXQ6IFwiXFxmMTQ1XCI7XG4kZmEtdmFyLXRpbWVzOiBcIlxcZjAwZFwiO1xuJGZhLXZhci10aW1lcy1jaXJjbGU6IFwiXFxmMDU3XCI7XG4kZmEtdmFyLXRpbWVzLWNpcmNsZS1vOiBcIlxcZjA1Y1wiO1xuJGZhLXZhci10aW50OiBcIlxcZjA0M1wiO1xuJGZhLXZhci10b2dnbGUtZG93bjogXCJcXGYxNTBcIjtcbiRmYS12YXItdG9nZ2xlLWxlZnQ6IFwiXFxmMTkxXCI7XG4kZmEtdmFyLXRvZ2dsZS1vZmY6IFwiXFxmMjA0XCI7XG4kZmEtdmFyLXRvZ2dsZS1vbjogXCJcXGYyMDVcIjtcbiRmYS12YXItdG9nZ2xlLXJpZ2h0OiBcIlxcZjE1MlwiO1xuJGZhLXZhci10b2dnbGUtdXA6IFwiXFxmMTUxXCI7XG4kZmEtdmFyLXRyYWRlbWFyazogXCJcXGYyNWNcIjtcbiRmYS12YXItdHJhaW46IFwiXFxmMjM4XCI7XG4kZmEtdmFyLXRyYW5zZ2VuZGVyOiBcIlxcZjIyNFwiO1xuJGZhLXZhci10cmFuc2dlbmRlci1hbHQ6IFwiXFxmMjI1XCI7XG4kZmEtdmFyLXRyYXNoOiBcIlxcZjFmOFwiO1xuJGZhLXZhci10cmFzaC1vOiBcIlxcZjAxNFwiO1xuJGZhLXZhci10cmVlOiBcIlxcZjFiYlwiO1xuJGZhLXZhci10cmVsbG86IFwiXFxmMTgxXCI7XG4kZmEtdmFyLXRyaXBhZHZpc29yOiBcIlxcZjI2MlwiO1xuJGZhLXZhci10cm9waHk6IFwiXFxmMDkxXCI7XG4kZmEtdmFyLXRydWNrOiBcIlxcZjBkMVwiO1xuJGZhLXZhci10cnk6IFwiXFxmMTk1XCI7XG4kZmEtdmFyLXR0eTogXCJcXGYxZTRcIjtcbiRmYS12YXItdHVtYmxyOiBcIlxcZjE3M1wiO1xuJGZhLXZhci10dW1ibHItc3F1YXJlOiBcIlxcZjE3NFwiO1xuJGZhLXZhci10dXJraXNoLWxpcmE6IFwiXFxmMTk1XCI7XG4kZmEtdmFyLXR2OiBcIlxcZjI2Y1wiO1xuJGZhLXZhci10d2l0Y2g6IFwiXFxmMWU4XCI7XG4kZmEtdmFyLXR3aXR0ZXI6IFwiXFxmMDk5XCI7XG4kZmEtdmFyLXR3aXR0ZXItc3F1YXJlOiBcIlxcZjA4MVwiO1xuJGZhLXZhci11bWJyZWxsYTogXCJcXGYwZTlcIjtcbiRmYS12YXItdW5kZXJsaW5lOiBcIlxcZjBjZFwiO1xuJGZhLXZhci11bmRvOiBcIlxcZjBlMlwiO1xuJGZhLXZhci11bml2ZXJzaXR5OiBcIlxcZjE5Y1wiO1xuJGZhLXZhci11bmxpbms6IFwiXFxmMTI3XCI7XG4kZmEtdmFyLXVubG9jazogXCJcXGYwOWNcIjtcbiRmYS12YXItdW5sb2NrLWFsdDogXCJcXGYxM2VcIjtcbiRmYS12YXItdW5zb3J0ZWQ6IFwiXFxmMGRjXCI7XG4kZmEtdmFyLXVwbG9hZDogXCJcXGYwOTNcIjtcbiRmYS12YXItdXNkOiBcIlxcZjE1NVwiO1xuJGZhLXZhci11c2VyOiBcIlxcZjAwN1wiO1xuJGZhLXZhci11c2VyLW1kOiBcIlxcZjBmMFwiO1xuJGZhLXZhci11c2VyLXBsdXM6IFwiXFxmMjM0XCI7XG4kZmEtdmFyLXVzZXItc2VjcmV0OiBcIlxcZjIxYlwiO1xuJGZhLXZhci11c2VyLXRpbWVzOiBcIlxcZjIzNVwiO1xuJGZhLXZhci11c2VyczogXCJcXGYwYzBcIjtcbiRmYS12YXItdmVudXM6IFwiXFxmMjIxXCI7XG4kZmEtdmFyLXZlbnVzLWRvdWJsZTogXCJcXGYyMjZcIjtcbiRmYS12YXItdmVudXMtbWFyczogXCJcXGYyMjhcIjtcbiRmYS12YXItdmlhY29pbjogXCJcXGYyMzdcIjtcbiRmYS12YXItdmlkZW8tY2FtZXJhOiBcIlxcZjAzZFwiO1xuJGZhLXZhci12aW1lbzogXCJcXGYyN2RcIjtcbiRmYS12YXItdmltZW8tc3F1YXJlOiBcIlxcZjE5NFwiO1xuJGZhLXZhci12aW5lOiBcIlxcZjFjYVwiO1xuJGZhLXZhci12azogXCJcXGYxODlcIjtcbiRmYS12YXItdm9sdW1lLWRvd246IFwiXFxmMDI3XCI7XG4kZmEtdmFyLXZvbHVtZS1vZmY6IFwiXFxmMDI2XCI7XG4kZmEtdmFyLXZvbHVtZS11cDogXCJcXGYwMjhcIjtcbiRmYS12YXItd2FybmluZzogXCJcXGYwNzFcIjtcbiRmYS12YXItd2VjaGF0OiBcIlxcZjFkN1wiO1xuJGZhLXZhci13ZWlibzogXCJcXGYxOGFcIjtcbiRmYS12YXItd2VpeGluOiBcIlxcZjFkN1wiO1xuJGZhLXZhci13aGF0c2FwcDogXCJcXGYyMzJcIjtcbiRmYS12YXItd2hlZWxjaGFpcjogXCJcXGYxOTNcIjtcbiRmYS12YXItd2lmaTogXCJcXGYxZWJcIjtcbiRmYS12YXItd2lraXBlZGlhLXc6IFwiXFxmMjY2XCI7XG4kZmEtdmFyLXdpbmRvd3M6IFwiXFxmMTdhXCI7XG4kZmEtdmFyLXdvbjogXCJcXGYxNTlcIjtcbiRmYS12YXItd29yZHByZXNzOiBcIlxcZjE5YVwiO1xuJGZhLXZhci13cmVuY2g6IFwiXFxmMGFkXCI7XG4kZmEtdmFyLXhpbmc6IFwiXFxmMTY4XCI7XG4kZmEtdmFyLXhpbmctc3F1YXJlOiBcIlxcZjE2OVwiO1xuJGZhLXZhci15LWNvbWJpbmF0b3I6IFwiXFxmMjNiXCI7XG4kZmEtdmFyLXktY29tYmluYXRvci1zcXVhcmU6IFwiXFxmMWQ0XCI7XG4kZmEtdmFyLXlhaG9vOiBcIlxcZjE5ZVwiO1xuJGZhLXZhci15YzogXCJcXGYyM2JcIjtcbiRmYS12YXIteWMtc3F1YXJlOiBcIlxcZjFkNFwiO1xuJGZhLXZhci15ZWxwOiBcIlxcZjFlOVwiO1xuJGZhLXZhci15ZW46IFwiXFxmMTU3XCI7XG4kZmEtdmFyLXlvdXR1YmU6IFwiXFxmMTY3XCI7XG4kZmEtdmFyLXlvdXR1YmUtcGxheTogXCJcXGYxNmFcIjtcbiRmYS12YXIteW91dHViZS1zcXVhcmU6IFwiXFxmMTY2XCI7XG5cbiIsIi8vIE1peGluc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQG1peGluIGZhLWljb24oKSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgI3skZmEtZm9udC1zaXplLWJhc2V9LyN7JGZhLWxpbmUtaGVpZ2h0LWJhc2V9IEZvbnRBd2Vzb21lOyAvLyBzaG9ydGVuaW5nIGZvbnQgZGVjbGFyYXRpb25cbiAgZm9udC1zaXplOiBpbmhlcml0OyAvLyBjYW4ndCBoYXZlIGZvbnQtc2l6ZSBpbmhlcml0IG9uIGxpbmUgYWJvdmUsIHNvIG5lZWQgdG8gb3ZlcnJpZGVcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87IC8vIG9wdGltaXplbGVnaWJpbGl0eSB0aHJvd3MgdGhpbmdzIG9mZiAjMTA5NFxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblxufVxuXG5AbWl4aW4gZmEtaWNvbi1yb3RhdGUoJGRlZ3JlZXMsICRyb3RhdGlvbikge1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPSN7JHJvdGF0aW9ufSk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG59XG5cbkBtaXhpbiBmYS1pY29uLWZsaXAoJGhvcml6LCAkdmVydCwgJHJvdGF0aW9uKSB7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249I3skcm90YXRpb259KTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRob3JpeiwgJHZlcnQpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoJGhvcml6LCAkdmVydCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgkaG9yaXosICR2ZXJ0KTtcbn1cbiIsIi8qIEZPTlQgUEFUSFxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICBzcmM6IHVybCgnI3skZmEtZm9udC1wYXRofS9mb250YXdlc29tZS13ZWJmb250LmVvdD92PSN7JGZhLXZlcnNpb259Jyk7XG4gIHNyYzogdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQuZW90PyNpZWZpeCZ2PSN7JGZhLXZlcnNpb259JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgIHVybCgnI3skZmEtZm9udC1wYXRofS9mb250YXdlc29tZS13ZWJmb250LndvZmYyP3Y9I3skZmEtdmVyc2lvbn0nKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQud29mZj92PSN7JGZhLXZlcnNpb259JykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQudHRmP3Y9I3skZmEtdmVyc2lvbn0nKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQuc3ZnP3Y9I3skZmEtdmVyc2lvbn0jZm9udGF3ZXNvbWVyZWd1bGFyJykgZm9ybWF0KCdzdmcnKTtcbi8vICBzcmM6IHVybCgnI3skZmEtZm9udC1wYXRofS9Gb250QXdlc29tZS5vdGYnKSBmb3JtYXQoJ29wZW50eXBlJyk7IC8vIHVzZWQgd2hlbiBkZXZlbG9waW5nIGZvbnRzXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbiIsIi8vIEJhc2UgQ2xhc3MgRGVmaW5pdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsICN7JGZhLWZvbnQtc2l6ZS1iYXNlfS8jeyRmYS1saW5lLWhlaWdodC1iYXNlfSBGb250QXdlc29tZTsgLy8gc2hvcnRlbmluZyBmb250IGRlY2xhcmF0aW9uXG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgLy8gY2FuJ3QgaGF2ZSBmb250LXNpemUgaW5oZXJpdCBvbiBsaW5lIGFib3ZlLCBzbyBuZWVkIHRvIG92ZXJyaWRlXG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvOyAvLyBvcHRpbWl6ZWxlZ2liaWxpdHkgdGhyb3dzIHRoaW5ncyBvZmYgIzEwOTRcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbn1cbiIsIi8vIEljb24gU2l6ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLyogbWFrZXMgdGhlIGZvbnQgMzMlIGxhcmdlciByZWxhdGl2ZSB0byB0aGUgaWNvbiBjb250YWluZXIgKi9cbi4jeyRmYS1jc3MtcHJlZml4fS1sZyB7XG4gIGZvbnQtc2l6ZTogKDRlbSAvIDMpO1xuICBsaW5lLWhlaWdodDogKDNlbSAvIDQpO1xuICB2ZXJ0aWNhbC1hbGlnbjogLTE1JTtcbn1cbi4jeyRmYS1jc3MtcHJlZml4fS0yeCB7IGZvbnQtc2l6ZTogMmVtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tM3ggeyBmb250LXNpemU6IDNlbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LTR4IHsgZm9udC1zaXplOiA0ZW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS01eCB7IGZvbnQtc2l6ZTogNWVtOyB9XG4iLCIvLyBGaXhlZCBXaWR0aCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZ3IHtcbiAgd2lkdGg6ICgxOGVtIC8gMTQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCIvLyBMaXN0IEljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS11bCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWxlZnQ6ICRmYS1saS13aWR0aDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICA+IGxpIHsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG59XG4uI3skZmEtY3NzLXByZWZpeH0tbGkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0kZmEtbGktd2lkdGg7XG4gIHdpZHRoOiAkZmEtbGktd2lkdGg7XG4gIHRvcDogKDJlbSAvIDE0KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAmLiN7JGZhLWNzcy1wcmVmaXh9LWxnIHtcbiAgICBsZWZ0OiAtJGZhLWxpLXdpZHRoICsgKDRlbSAvIDE0KTtcbiAgfVxufVxuIiwiLyogRm9udCBBd2Vzb21lIHVzZXMgdGhlIFVuaWNvZGUgUHJpdmF0ZSBVc2UgQXJlYSAoUFVBKSB0byBlbnN1cmUgc2NyZWVuXG4gICByZWFkZXJzIGRvIG5vdCByZWFkIG9mZiByYW5kb20gY2hhcmFjdGVycyB0aGF0IHJlcHJlc2VudCBpY29ucyAqL1xuXG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdsZS11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdsZS1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcmV0LXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcmV0LWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcmV0LXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGx1czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsdXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taW51czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1pbnVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tcmlnaHQ7IH1cblxuLy8gRmF2b3VyaXRlIHByb3BlcnR5XG4vLy4jeyRmYS1jc3MtcHJlZml4fS1zdGFyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RhcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGVhcnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFydC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGVhcnQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYXNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJhc2g7IH1cblxuLy8gQWNjb3JkaW9uIGljb25zXG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGV2cm9uLWRvd247IH1cblxuLy8gT3duZXJzIGJhZGdlc1xuLiN7JGZhLWNzcy1wcmVmaXh9LXRodW1icy11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRodW1icy11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoaWVsZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNoaWVsZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvbWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ob21lOyB9XG5cbi8vIFNvY2lhbCBpY29uc1xuLiN7JGZhLWNzcy1wcmVmaXh9LXR3aXR0ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10d2l0dGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHdpdHRlci1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10d2l0dGVyLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhY2Vib29rOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmFjZWJvb2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29nbGUtcGx1czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdvb2dsZS1wbHVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlua2VkaW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saW5rZWRpbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpbmtlZGluLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpbmtlZGluLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluc3RhZ3JhbTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWluc3RhZ3JhbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpbnRlcmVzdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBpbnRlcmVzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlvdXR1YmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci15b3V0dWJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hhcmUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2hhcmUtYWx0OyB9XG5cbi8vIFlvdVR1YmVcbi4jeyRmYS1jc3MtcHJlZml4fS15b3V0dWJlLXBsYXk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci15b3V0dWJlLXBsYXk7IH1cblxuLy8gRm9ybSBpY29uc1xuLiN7JGZhLWNzcy1wcmVmaXh9LWdyb3VwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNlcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbGVuZGFyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFwLW1hcmtlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hcC1tYXJrZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waG9uZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBob25lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9iaWxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbW9iaWxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2VyczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb2NrLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jbG9jay1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5mby1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbmZvLWNpcmNsZTsgfVxuXG4vLyBRdW90YXRpb24gbWFya3Ncbi4jeyRmYS1jc3MtcHJlZml4fS1xdW90ZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcXVvdGUtbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1b3RlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcXVvdGUtcmlnaHQ7IH1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LWVsbGlwc2lzLWg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbGxpcHNpcy1oOyB9XG5cbi8vIEZvciBkZXZlbG9wZXIgY29uc29sZSBvbmx5IChjb3VsZCBiZSBtaWdyYXRlZCBhd2F5IGZvciBjb21wbGV0ZSBzZXBhcmF0aW9uKVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdlYXI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdlYXJzOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jb2dzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29nczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbHVtbnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb2x1bW5zOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS10ZXh0LW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLXRleHQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdyZW5jaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdyZW5jaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbmNpbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBlbmNpbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpY3R1cmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waWN0dXJlLW87IH1cblxuLy8gU2VhcmNoIFJlc3VsdHMgTWFwXG4uI3skZmEtY3NzLXByZWZpeH0taG91cmdsYXNzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG91cmdsYXNzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlzdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpc3Q7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXAtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hcC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdsZS11cDsgfVxuXG4vLyBCbG9nIEFydGljbGVcbi4jeyRmYS1jc3MtcHJlZml4fS1mb2xkZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb2xkZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13ZWl4aW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13ZWl4aW47IH1cblxuLy8gTWF0Y2h0ZWNoXG4uI3skZmEtY3NzLXByZWZpeH0tcGVuY2lsLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGVuY2lsLXNxdWFyZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib29rbWFyazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJvb2ttYXJrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0YXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbnZlbG9wZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVudmVsb3BlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnNzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcnNzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxvcHB5LW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mbG9wcHktbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlYXJjaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNlYXJjaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1ZXN0aW9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXF1ZXN0aW9uLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVwbG9hZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVwbG9hZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hlY2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aW1lczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRpbWVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXh0ZXJuYWwtbGluazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV4dGVybmFsLWxpbms7IH1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LWxnIHtcbiAgICY6YmVmb3Jle21hcmdpbi10b3A6LTEwcHg7fVxufSIsImJvZHkudG9vbGJhciwgYm9keS50b29sYmFyLWRyYXdlciB7XG4gIHBhZGRpbmctdG9wOjAhaW1wb3J0YW50O1xuICAjdG9vbGJhciB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMDtcbiAgfVxufVxuIiwiLy8uc2hhcmUtYmFyIC5saXN0LXNoYXJle1xuLy8gIGxpbmUtaGVpZ2h0OjhweDtcbi8vICAuc3RCdXR0b24ge1xuLy8gICAgbGluZS1oZWlnaHQ6OHB4O1xuLy8gICAgbWFyZ2luOjA7XG4vLyAgfVxuLy99IiwiJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlcjogZmFsc2UgIWRlZmF1bHQ7XG4vL1xuLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vPT0gQ29sb3JzXG4vL1xuLy8jIyBHcmF5IGFuZCBicmFuZCBjb2xvcnMgZm9yIHVzZSBhY3Jvc3MgQm9vdHN0cmFwLlxuXG4kZ3JheS1iYXNlOiAgICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJGdyYXktZGFya2VyOiAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAxMy41JSkgIWRlZmF1bHQ7IC8vICMyMjJcbiRncmF5LWRhcms6ICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMjAlKSAhZGVmYXVsdDsgICAvLyAjMzMzXG4kZ3JheTogICAgICAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDMzLjUlKSAhZGVmYXVsdDsgLy8gIzU1NVxuJGdyYXktbGlnaHQ6ICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA0Ni43JSkgIWRlZmF1bHQ7IC8vICM3NzdcbiRncmF5LW1saWdodDogICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgNjMlKSAhZGVmYXVsdDsgLy8gI2RhZGFkYSAqTVRcbiRncmF5LWxpZ2h0ZXI6ICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgODkuNSUpICFkZWZhdWx0OyAvLyAjZTRlNGU0ICpOZXR3b3JrZXJzXG4kZ3JheS14bGlnaHQ6ICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDk0LjUlKSAhZGVmYXVsdDsgLy8gI2YxZjFmMSAqTmV0d29ya2Vyc1xuJGdyYXkteGxpZ2h0ZXI6ICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA5NiUpICFkZWZhdWx0OyAvLyAjZjZmNmY2ICpNVFxuXG4kcHJpbWFyeS1kYXJrLWNvbG9yOiAgICAgICAgICAjOWE1ZmEzOyAvLyAqTmV0d29ya2Vyc1xuJHByaW1hcnktYmFzZS1jb2xvcjogICAgICAgICAgIzRhNGE0OTsgLy8gKk5ldHdvcmtlcnNcbiRwcmltYXJ5LWxpZ2h0LWNvbG9yOiAgICAgICAgICNjN2QwZTE7IC8vICpOZXR3b3JrZXJzXG4kcHJpbWFyeS1saWdodGVyLWNvbG9yOiAgICAgICAjZTZlZmY0OyAvLyAqTmV0d29ya2Vyc1xuXG4kc2Vjb25kYXJ5LWRhcmstY29sb3I6ICAgICAgICAjY2EzMTVjOyAvLyAqTmV0d29ya2Vyc1xuJHNlY29uZGFyeS1iYXNlLWNvbG9yOiAgICAgICAgI2NkMzU2MzsgLy8gKk5ldHdvcmtlcnNcblxuJGFjY2VudC1iYXNlLWNvbG9yOiAgICAgICAgICAgI2VkMWMyNCAhZGVmYXVsdDsgLy8gKk1UXG5cbiRicmFuZC1wcmltYXJ5OiAgICAgICAgICAgICAgICRwcmltYXJ5LWRhcmstY29sb3I7IC8vICpOZXR3b3JrZXJzXG4kYnJhbmQtc3VjY2VzczogICAgICAgICAgICAgICAjNWNiODVjICFkZWZhdWx0O1xuJGJyYW5kLWluZm86ICAgICAgICAgICAgICAgICAgJHByaW1hcnktbGlnaHQtY29sb3IgIWRlZmF1bHQ7XG4kYnJhbmQtd2FybmluZzogICAgICAgICAgICAgICAjZjBhZDRlICFkZWZhdWx0O1xuJGJyYW5kLWRhbmdlcjogICAgICAgICAgICAgICAgI2Q5NTM0ZiAhZGVmYXVsdDtcblxuLy89PSBTY2FmZm9sZGluZ1xuLy9cbi8vIyMgU2V0dGluZ3MgZm9yIHNvbWUgb2YgdGhlIG1vc3QgZ2xvYmFsIHN0eWxlcy5cblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGJvZHk+YC5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCB0ZXh0IGNvbG9yIG9uIGA8Ym9keT5gLlxuJHRleHQtY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7IC8vICpNVCAtIHJlc2V0IHRvICRncmF5LWxpZ2h0ZXJcblxuLy8qKiBHbG9iYWwgdGV4dHVhbCBsaW5rIGNvbG9yLlxuJGxpbmstY29sb3I6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIExpbmsgaG92ZXIgY29sb3Igc2V0IHZpYSBgZGFya2VuKClgIGZ1bmN0aW9uLlxuJGxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxMCUpICFkZWZhdWx0OyAvLyAqTVQgLSBkYXJrbmVzcyBicm91Z2h0IGRvd24gc2xpZ2h0bHlcbi8vKiogTGluayBob3ZlciBkZWNvcmF0aW9uLlxuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogdW5kZXJsaW5lICFkZWZhdWx0O1xuXG4vLz09IFR5cG9ncmFwaHlcbi8vXG4vLyMjIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7IC8vICpOZXR3b3JrZXJzXG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgIEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCBtb25vc3BhY2UgZm9udHMgZm9yIGA8Y29kZT5gLCBgPGtiZD5gLCBhbmQgYDxwcmU+YC5cbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS14bGFyZ2U6ICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjcpKSAhZGVmYXVsdDsgLy8gfjI0cHggKk1UXG4kZm9udC1zaXplLWxhcmdlOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcbiRmb250LXNpemUtbWVkaXVtOiAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4xNDIpKSAhZGVmYXVsdDsgLy8gfjE2cHggKk1UXG4kZm9udC1zaXplLXNtYWxsOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcbiRmb250LXNpemUtc21hbGxlcjogICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC42KSkgIWRlZmF1bHQ7IC8vIH4xMHB4ICpNVFxuXG4kZm9udC1zaXplLWgxOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjYpKSAhZGVmYXVsdDsgLy8gfjM2cHhcbiRmb250LXNpemUtaDI6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuMTUpKSAhZGVmYXVsdDsgLy8gfjMwcHhcbiRmb250LXNpemUtaDM6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS43KSkgIWRlZmF1bHQ7IC8vIH4yNHB4XG4kZm9udC1zaXplLWg0OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcbiRmb250LXNpemUtaDU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1oNjogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbi8vKiogVW5pdC1sZXNzIGBsaW5lLWhlaWdodGAgZm9yIHVzZSBpbiBjb21wb25lbnRzIGxpa2UgYnV0dG9ucy5cbi8vJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAxLjQyODU3MTQyOSAhZGVmYXVsdDsgLy8gMjAvMTRcbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgMS40Mjg2ICFkZWZhdWx0OyAvLyAyMC8xNCAvLyAqTVRcbi8vKiogQ29tcHV0ZWQgXCJsaW5lLWhlaWdodFwiIChgZm9udC1zaXplYCAqIGBsaW5lLWhlaWdodGApIGZvciB1c2Ugd2l0aCBgbWFyZ2luYCwgYHBhZGRpbmdgLCBldGMuXG4kbGluZS1oZWlnaHQtY29tcHV0ZWQ6ICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSkpICFkZWZhdWx0OyAvLyB+MjBweFxuXG4vLyoqIEJ5IGRlZmF1bHQsIHRoaXMgaW5oZXJpdHMgZnJvbSB0aGUgYDxib2R5PmAuXG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgMS4zICFkZWZhdWx0OyAvLyAqTVRcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgJHByaW1hcnktYmFzZS1jb2xvcjsgLy8gKk1UXG5cblxuLy89PSBJY29ub2dyYXBoeVxuLy9cbi8vIyMgU3BlY2lmeSBjdXN0b20gbG9jYXRpb24gYW5kIGZpbGVuYW1lIG9mIHRoZSBpbmNsdWRlZCBHbHlwaGljb25zIGljb24gZm9udC4gVXNlZnVsIGZvciB0aG9zZSBpbmNsdWRpbmcgQm9vdHN0cmFwIHZpYSBCb3dlci5cblxuLy8qKiBMb2FkIGZvbnRzIGZyb20gdGhpcyBkaXJlY3RvcnkuXG5cbi8vIFtjb252ZXJ0ZXJdIElmICRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIgaWYgdXNlZCwgcHJvdmlkZSBwYXRoIHJlbGF0aXZlIHRvIHRoZSBhc3NldHMgbG9hZCBwYXRoLlxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBiZWNhdXNlIHNvbWUgYXNzZXQgaGVscGVycywgc3VjaCBhcyBTcHJvY2tldHMsIGRvIG5vdCB3b3JrIHdpdGggZmlsZS1yZWxhdGl2ZSBwYXRocy5cbiRpY29uLWZvbnQtcGF0aDogaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgXCJib290c3RyYXAvXCIsIFwiLi4vZm9udHMvYm9vdHN0cmFwL1wiKSAhZGVmYXVsdDtcblxuLy8qKiBGaWxlIG5hbWUgZm9yIGFsbCBmb250IGZpbGVzLlxuJGljb24tZm9udC1uYW1lOiAgICAgICAgICBcImdseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXJcIiAhZGVmYXVsdDtcbi8vKiogRWxlbWVudCBJRCB3aXRoaW4gU1ZHIGljb24gZmlsZS5cbiRpY29uLWZvbnQtc3ZnLWlkOiAgICAgICAgXCJnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXJcIiAhZGVmYXVsdDtcblxuXG4vLz09IENvbXBvbmVudHNcbi8vXG4vLyMjIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS4gVmFsdWVzIGJhc2VkIG9uIDE0cHggdGV4dCBhbmQgMS40MjggbGluZS1oZWlnaHQgKH4yMHB4IHRvIHN0YXJ0KS5cblxuLy8kcGFkZGluZy1iYXNlLXZlcnRpY2FsOiAgICAgNnB4ICFkZWZhdWx0O1xuLy8kcGFkZGluZy1iYXNlLWhvcml6b250YWw6ICAgMTJweCAhZGVmYXVsdDtcbi8vXG4vLyRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOiAgICAxMHB4ICFkZWZhdWx0O1xuLy8kcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOiAgMTZweCAhZGVmYXVsdDtcbi8vXG4vLyRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsOiAgICA1cHggIWRlZmF1bHQ7XG4vLyRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw6ICAxMHB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1iYXNlLXZlcnRpY2FsOiAgICAgMTBweCAhZGVmYXVsdDsgLy8gKk1UXG4kcGFkZGluZy1iYXNlLWhvcml6b250YWw6ICAgMTJweCAhZGVmYXVsdDsgLy8gKk1UXG5cbiRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOiAgICAxMHB4ICFkZWZhdWx0OyAvLyAqTVRcbiRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw6ICAxMnB4ICFkZWZhdWx0OyAvLyAqTVRcblxuJHBhZGRpbmctc21hbGwtdmVydGljYWw6ICAgIDZweCAhZGVmYXVsdDsgLy8gKk1UXG4kcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsOiAgMTJweCAhZGVmYXVsdDsgLy8gKk1UXG5cbiRwYWRkaW5nLXhzLXZlcnRpY2FsOiAgICAgICAxcHggIWRlZmF1bHQ7XG4kcGFkZGluZy14cy1ob3Jpem9udGFsOiAgICAgNXB4ICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtbGFyZ2U6ICAgICAgICAgMS4zMzMzMzMzICFkZWZhdWx0OyAvLyBleHRyYSBkZWNpbWFscyBmb3IgV2luIDguMSBDaHJvbWVcbiRsaW5lLWhlaWdodC1zbWFsbDogICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICA0cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgNnB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgIDNweCAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgYmFja2dyb3VuZCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuLy8qKiBXaWR0aCBvZiB0aGUgYGJvcmRlcmAgZm9yIGdlbmVyYXRpbmcgY2FyZXRzIHRoYXQgaW5kaWNhdG9yIGRyb3Bkb3ducy5cbiRjYXJldC13aWR0aC1iYXNlOiAgICAgICAgICA0cHggIWRlZmF1bHQ7XG4vLyoqIENhcmV0cyBpbmNyZWFzZSBzbGlnaHRseSBpbiBzaXplIGZvciBsYXJnZXIgY29tcG9uZW50cy5cbiRjYXJldC13aWR0aC1sYXJnZTogICAgICAgICA1cHggIWRlZmF1bHQ7XG5cblxuLy89PSBUYWJsZXNcbi8vXG4vLyMjIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuLy8qKiBQYWRkaW5nIGZvciBgPHRoPmBzIGFuZCBgPHRkPmBzLlxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGZvciBjZWxscyBpbiBgLnRhYmxlLWNvbmRlbnNlZGAuXG4kdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZzogIDVweCAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYWxsIHRhYmxlcy5cbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1zdHJpcGVkYC5cbiR0YWJsZS1iZy1hY2NlbnQ6ICAgICAgICAgICAgICAgI2Y5ZjlmOSAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLWhvdmVyYC5cbiR0YWJsZS1iZy1ob3ZlcjogICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR0YWJsZS1iZy1hY3RpdmU6ICAgICAgICAgICAgICAgJHRhYmxlLWJnLWhvdmVyICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cbi8vJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkcHJpbWFyeS1saWdodC1jb2xvcjsgLy8gKk1UXG5cblxuLy89PSBCdXR0b25zXG4vL1xuLy8jIyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4vLyRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIG5vcm1hbCAhZGVmYXVsdDtcbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIDQwMDtcblxuJGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbi8vJGJ0bi1kZWZhdWx0LWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgICNlZWU7IC8vICpNVFxuLy8kYnRuLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XG5cbiRidG4tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tcHJpbWFyeS1iZywgNSUpICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XG5cbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbi8vJGJ0bi1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tc3VjY2Vzcy1iZywgNSUpICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XG5cbi8vJGJ0bi1pbmZvLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5O1xuJGJ0bi1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4vLyRidG4taW5mby1ib3JkZXI6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnRuLWluZm8tYmcsIDUlKSAhZGVmYXVsdDtcbiRidG4taW5mby1ib3JkZXI6ICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xuXG4kYnRuLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyRidG4td2FybmluZy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXdhcm5pbmctYmcsIDUlKSAhZGVmYXVsdDtcbiRidG4td2FybmluZy1ib3JkZXI6ICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xuXG4kYnRuLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbi8vJGJ0bi1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKCRidG4tZGFuZ2VyLWJnLCA1JSkgIWRlZmF1bHQ7XG4kYnRuLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgICB0cmFuc3BhcmVudDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1cy1iYXNlOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG5cbi8vPT0gRm9ybXNcbi8vXG4vLyMjXG5cbi8vKiogYDxpbnB1dD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQgZGlzYWJsZWQ+YCBiYWNrZ3JvdW5kIGNvbG9yXG4kaW5wdXQtYmctZGlzYWJsZWQ6ICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGA8aW5wdXQ+YHNcbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuLy8qKiBgPGlucHV0PmAgYm9yZGVyIGNvbG9yXG4kaW5wdXQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBSZW5hbWUgYCRpbnB1dC1ib3JkZXItcmFkaXVzYCB0byBgJGlucHV0LWJvcmRlci1yYWRpdXMtYmFzZWAgaW4gdjRcbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuLy8gVGhpcyBoYXMgbm8gZWZmZWN0IG9uIGA8c2VsZWN0PmBzIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAwICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgMCAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgIDAgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciBpbnB1dHMgb24gZm9jdXNcbiRpbnB1dC1ib3JkZXItZm9jdXM6ICAgICAgICAgICAgICM2NmFmZTkgIWRlZmF1bHQ7XG5cbi8vKiogUGxhY2Vob2xkZXIgdGV4dCBjb2xvclxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzY5Njk2OSAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtYmFzZTogICAgICAgICAgICAgICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtbGFyZ2U6ICAgICAgICAgICAgIChjZWlsKCRmb250LXNpemUtbGFyZ2UgKiAkbGluZS1oZWlnaHQtbGFyZ2UpICsgKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1zbWFsbDogICAgICAgICAgICAgKGZsb29yKCRmb250LXNpemUtc21hbGwgKiAkbGluZS1oZWlnaHQtc21hbGwpICsgKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcblxuLy8qKiBgLmZvcm0tZ3JvdXBgIG1hcmdpblxuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgMTVweCAhZGVmYXVsdDtcblxuJGxlZ2VuZC1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRsZWdlbmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXIgIWRlZmF1bHQ7XG5cbi8vKiogRGlzYWJsZWQgY3Vyc29yIGZvciBmb3JtIGNvbnRyb2xzIGFuZCBidXR0b25zLlxuJGN1cnNvci1kaXNhYmxlZDogICAgICAgICAgICAgICAgbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cblxuLy89PSBEcm9wZG93bnNcbi8vXG4vLyMjIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuLy8qKiBCYWNrZ3JvdW5kIGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAuXG4kZHJvcGRvd24tYm9yZGVyOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4xNSkgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAgKipmb3IgSUU4KiouXG4kZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOiAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBEaXZpZGVyIGNvbG9yIGZvciBiZXR3ZWVuIGRyb3Bkb3duIGl0ZW1zLlxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgI2U1ZTVlNSAhZGVmYXVsdDtcblxuLy8qKiBEcm9wZG93biBsaW5rIHRleHQgY29sb3IuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBjb2xvciBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGdyYXktZGFyaywgNSUpICFkZWZhdWx0O1xuXG4vLyoqIEhvdmVyIGJhY2tncm91bmQgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcblxuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIHRleHQgY29sb3IuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbi8vKiogRGlzYWJsZWQgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIGZvciBoZWFkZXJzIHdpdGhpbiBkcm9wZG93biBtZW51cy5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIERlcHJlY2F0ZWQgYCRkcm9wZG93bi1jYXJldC1jb2xvcmAgYXMgb2YgdjMuMS4wXG4kZHJvcGRvd24tY2FyZXQtY29sb3I6ICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuXG5cbi8vLS0gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuLy9cbi8vIE5vdGU6IFRoZXNlIHZhcmlhYmxlcyBhcmUgbm90IGdlbmVyYXRlZCBpbnRvIHRoZSBDdXN0b21pemVyLlxuXG4kemluZGV4LW5hdmJhcjogICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuJHppbmRleC1uYXZiYXItZml4ZWQ6ICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2dyb3VuZDogIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuXG5cbi8vPT0gTWVkaWEgcXVlcmllcyBicmVha3BvaW50c1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBicmVha3BvaW50cyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSwgYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gRXh0cmEgc21hbGwgc2NyZWVuIC8gcGhvbmVcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14c2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXhzOiAgICAgICAgICAgICAgICAgIDQ4MHB4ICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzLW1pbmAgYXMgb2YgdjMuMi4wXG4kc2NyZWVuLXhzLW1pbjogICAgICAgICAgICAgICRzY3JlZW4teHMgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tcGhvbmVgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1waG9uZTogICAgICAgICAgICAgICAkc2NyZWVuLXhzLW1pbiAhZGVmYXVsdDtcblxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tc21gIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1zbTogICAgICAgICAgICAgICAgICA3NjhweCAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1zbSAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi10YWJsZXRgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi10YWJsZXQ6ICAgICAgICAgICAgICAkc2NyZWVuLXNtLW1pbiAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1tZGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLW1kOiAgICAgICAgICAgICAgICAgIDk5MnB4ICFkZWZhdWx0O1xuJHNjcmVlbi1tZC1taW46ICAgICAgICAgICAgICAkc2NyZWVuLW1kICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1kZXNrdG9wOiAgICAgICAgICAgICAkc2NyZWVuLW1kLW1pbiAhZGVmYXVsdDtcblxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGdgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1sZzogICAgICAgICAgICAgICAgICAxMjAwcHggIWRlZmF1bHQ7XG4kc2NyZWVuLWxnLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbGcgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGctZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnLWRlc2t0b3A6ICAgICAgICAgICRzY3JlZW4tbGctbWluICFkZWZhdWx0O1xuXG4vLyBTbyBtZWRpYSBxdWVyaWVzIGRvbid0IG92ZXJsYXAgd2hlbiByZXF1aXJlZCwgcHJvdmlkZSBhIG1heGltdW1cbiRzY3JlZW4teHMtbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tc20tbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLW1kLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1tZC1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1sZy1taW4gLSAxKSAhZGVmYXVsdDtcblxuXG4vLz09IEdyaWQgc3lzdGVtXG4vL1xuLy8jIyBEZWZpbmUgeW91ciBjdXN0b20gcmVzcG9uc2l2ZSBncmlkLlxuXG4vLyoqIE51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkLlxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGJldHdlZW4gY29sdW1ucy4gR2V0cyBkaXZpZGVkIGluIGhhbGYgZm9yIHRoZSBsZWZ0IGFuZCByaWdodC5cbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAzMHB4ICFkZWZhdWx0O1xuLy8gTmF2YmFyIGNvbGxhcHNlXG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVjb21lcyB1bmNvbGxhcHNlZC5cbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQ6ICAgICAkc2NyZWVuLXNtLW1pbiAhZGVmYXVsdDtcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWdpbnMgY29sbGFwc2luZy5cbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4OiAoJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29udGFpbmVyIHNpemVzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbiRjb250YWluZXItdGFibGV0OiAgICAgICAgICAgICAoNzIwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tc20tbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLXNtOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci10YWJsZXQgIWRlZmF1bHQ7XG5cbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXG4kY29udGFpbmVyLWRlc2t0b3A6ICAgICAgICAgICAgKDk0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLW1kLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1tZDogICAgICAgICAgICAgICAgICRjb250YWluZXItZGVza3RvcCAhZGVmYXVsdDtcblxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4kY29udGFpbmVyLWxhcmdlLWRlc2t0b3A6ICAgICAgKDExNDBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1sZy1taW5gIGFuZCB1cC5cbiRjb250YWluZXItbGc6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWxhcmdlLWRlc2t0b3AgIWRlZmF1bHQ7XG5cblxuLy89PSBOYXZiYXJcbi8vXG4vLyMjXG5cbi8vIEJhc2ljcyBvZiBhIG5hdmJhclxuJG5hdmJhci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICA1MHB4ICFkZWZhdWx0O1xuJG5hdmJhci1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAkbGluZS1oZWlnaHQtY29tcHV0ZWQgIWRlZmF1bHQ7XG4kbmF2YmFyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgIGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSkgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICgoJG5hdmJhci1oZWlnaHQgLSAkbGluZS1oZWlnaHQtY29tcHV0ZWQpIC8gMikgIWRlZmF1bHQ7XG4kbmF2YmFyLWNvbGxhcHNlLW1heC1oZWlnaHQ6ICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICNmOGY4ZjggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgbGlua3NcbiRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAjNzc3ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgYnJhbmQgbGFiZWxcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWJnOiAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgdG9nZ2xlXG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWhvdmVyLWJnOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAjODg4ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PT0gSW52ZXJ0ZWQgbmF2YmFyXG4vLyBSZXNldCBpbnZlcnRlZCBuYXZiYXIgYmFzaWNzXG4kbmF2YmFyLWludmVyc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICMyMjIgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDEwJSkgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBsaW5rc1xuJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWxpZ2h0LCAxNSUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgYnJhbmQgbGFiZWxcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgdG9nZ2xlXG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWhvdmVyLWJnOiAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWljb24tYmFyLWJnOiAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cblxuLy89PSBOYXZzXG4vL1xuLy8jI1xuXG4vLz09PSBTaGFyZWQgbmF2IHN0eWxlc1xuJG5hdi1saW5rLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kbmF2LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtZGlzYWJsZWQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLz09IFRhYnNcbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgI2RkZCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdi10YWJzLWp1c3RpZmllZC1hY3RpdmUtbGluay1ib3JkZXItY29sb3I6ICAgICAkYm9keS1iZyAhZGVmYXVsdDtcblxuLy89PSBQaWxsc1xuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy89PSBQYWdpbmF0aW9uXG4vL1xuLy8jI1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXI6ICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2VyXG4vL1xuLy8jI1xuXG4kcGFnZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1iZyAhZGVmYXVsdDtcbiRwYWdlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJvcmRlciAhZGVmYXVsdDtcbiRwYWdlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRwYWdlci1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kcGFnZXItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnZXItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cbiRwYWdlci1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vPT0gSnVtYm90cm9uXG4vL1xuLy8jI1xuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1jb2xvcjogICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWhlYWRpbmctY29sb3I6ICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1mb250LXNpemU6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS41KSkgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWhlYWRpbmctZm9udC1zaXplOiAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiA0LjUpKSAhZGVmYXVsdDtcblxuXG4vLz09IEZvcm0gc3RhdGVzIGFuZCBhbGVydHNcbi8vXG4vLyMjIERlZmluZSBjb2xvcnMgZm9yIGZvcm0gZmVlZGJhY2sgc3RhdGVzIGFuZCwgYnkgZGVmYXVsdCwgYWxlcnRzLlxuXG4kc3RhdGUtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAgICAjM2M3NjNkICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgI2RmZjBkOCAhZGVmYXVsdDtcbi8vJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXN1Y2Nlc3MtYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQ7XG5cbiRzdGF0ZS1pbmZvLXRleHQ6ICAgICAgICAgICAgICAgICMzMTcwOGYgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1iZzogICAgICAgICAgICAgICAgICAjZDllZGY3ICFkZWZhdWx0O1xuLy8kc3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtaW5mby1iZywgLTEwKSwgNyUpICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dDtcblxuLy8kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctdGV4dDogICAgICAgICAgICAgI2NmODEwMDtcbi8vJHN0YXRlLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICNmZmVjYzk7XG4vLyRzdGF0ZS13YXJuaW5nLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS13YXJuaW5nLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0O1xuXG4kc3RhdGUtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAgICAjYTk0NDQyICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1iZzogICAgICAgICAgICAgICAgI2YyZGVkZSAhZGVmYXVsdDtcbi8vJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWRhbmdlci1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0O1xuXG5cbi8vPT0gVG9vbHRpcHNcbi8vXG4vLyMjXG5cbi8vKiogVG9vbHRpcCBtYXggd2lkdGhcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIHRleHQgY29sb3JcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgYmFja2dyb3VuZCBjb2xvclxuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuXG4vLyoqIFRvb2x0aXAgYXJyb3cgd2lkdGhcbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgIDVweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBhcnJvdyBjb2xvclxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBQb3BvdmVyc1xuLy9cbi8vIyNcblxuLy8qKiBQb3BvdmVyIGJvZHkgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG1heGltdW0gd2lkdGhcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGZhbGxiYWNrIGJvcmRlciBjb2xvclxuJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgdGl0bGUgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItdGl0bGUtYmc6ICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg6ICAgICAgICAgICAoJHBvcG92ZXItYXJyb3ctd2lkdGggKyAxKSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgICBmYWRlX2luKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgMC4wNSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgZmFsbGJhY2sgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOiAgZGFya2VuKCRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvciwgMjAlKSAhZGVmYXVsdDtcblxuXG4vLz09IExhYmVsc1xuLy9cbi8vIyNcblxuLy8qKiBEZWZhdWx0IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kZWZhdWx0LWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBQcmltYXJ5IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1wcmltYXJ5LWJnOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBJbmZvIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1pbmZvLWJnOiAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC13YXJuaW5nLWJnOiAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRhbmdlci1iZzogICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGxhYmVsIHRleHQgY29sb3JcbiRsYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgdGV4dCBjb2xvciBvZiBhIGxpbmtlZCBsYWJlbFxuJGxhYmVsLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IE1vZGFsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCB0aXRsZVxuJG1vZGFsLXRpdGxlLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgdGl0bGUgbGluZS1oZWlnaHRcbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgY29udGVudCBhcmVhXG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yXG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvciAqKmZvciBJRTgqKlxuJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG4vLyoqIE1vZGFsIGJhY2tkcm9wIGJhY2tncm91bmQgY29sb3JcbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGJhY2tkcm9wIG9wYWNpdHlcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgIC41ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAjZTVlNWU1ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBmb290ZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgOTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICA2MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmc6ICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICBib2xkICFkZWZhdWx0O1xuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLy89PSBQcm9ncmVzcyBiYXJzXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIHdob2xlIHByb2dyZXNzIGNvbXBvbmVudFxuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogUHJvZ3Jlc3MgYmFyIHRleHQgY29sb3JcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFZhcmlhYmxlIGZvciBzZXR0aW5nIHJvdW5kZWQgY29ybmVycyBvbiBwcm9ncmVzcyBiYXIuXG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZzogICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci13YXJuaW5nLWJnOiAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnOiAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4vLyoqIEluZm8gcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWluZm8tYmc6ICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcblxuXG4vLz09IExpc3QgZ3JvdXBcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvbiBgLmxpc3QtZ3JvdXAtaXRlbWBcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYC5saXN0LWdyb3VwLWl0ZW1gIGJvcmRlciBjb2xvclxuJGxpc3QtZ3JvdXAtYm9yZGVyOiAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBMaXN0IGdyb3VwIGJvcmRlciByYWRpdXNcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHNpbmdsZSBsaXN0IGl0ZW1zIG9uIGhvdmVyXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBvZiBhY3RpdmUgbGlzdCBlbGVtZW50c1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjogICAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjogIGxpZ2h0ZW4oJGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCA0MCUpICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWxpbmstY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I6ICAgJGxpc3QtZ3JvdXAtbGluay1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjogIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IFBhbmVsc1xuLy9cbi8vIyNcblxuJHBhbmVsLWJnOiAgICAgICAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRwYW5lbC1ib2R5LXBhZGRpbmc6ICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtaGVhZGluZy1wYWRkaW5nOiAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLXBhZGRpbmc6ICAgICAgICAkcGFuZWwtaGVhZGluZy1wYWRkaW5nICFkZWZhdWx0O1xuLy8kcGFuZWwtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0OyAvL1RPRE8gUmVtb3ZlXG4kcGFuZWwtYm9yZGVyLXJhZGl1czogICAgICAgICAwOyAvLyAqTVRcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGVsZW1lbnRzIHdpdGhpbiBwYW5lbHNcbi8vJHBhbmVsLWlubmVyLWJvcmRlcjogICAgICAgICAgI2RkZCAhZGVmYXVsdDsgLy9UT0RPIFJlbW92ZVxuLy8kcGFuZWwtaW5uZXItYm9yZGVyOiAgICAgICAgICAjYzhkZGU3OyAvLyAqTVQgLSAkbGlnaHQtYmx1ZVxuJHBhbmVsLWlubmVyLWJvcmRlcjogICAgICAgICAgJHByaW1hcnktbGlnaHQtY29sb3I7IC8vICpNVFxuJHBhbmVsLWZvb3Rlci1iZzogICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcblxuJHBhbmVsLWRlZmF1bHQtdGV4dDogICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWJvcmRlcjogICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kcGFuZWwtZGVmYXVsdC1oZWFkaW5nLWJnOiAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtcHJpbWFyeS10ZXh0OiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhbmVsLXByaW1hcnktYm9yZGVyOiAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnOiAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJHBhbmVsLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1zdWNjZXNzLWhlYWRpbmctYmc6ICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLWluZm8taGVhZGluZy1iZzogICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmc6ICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuXG5cbi8vPT0gVGh1bWJuYWlsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGltYWdlXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICA0cHggIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBiYWNrZ3JvdW5kIGNvbG9yXG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJvcmRlciBjb2xvclxuJHRodW1ibmFpbC1ib3JkZXI6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJvcmRlciByYWRpdXNcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQ3VzdG9tIHRleHQgY29sb3IgZm9yIHRodW1ibmFpbCBjYXB0aW9uc1xuJHRodW1ibmFpbC1jYXB0aW9uLWNvbG9yOiAgICAgJHRleHQtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgY2FwdGlvblxuJHRodW1ibmFpbC1jYXB0aW9uLXBhZGRpbmc6ICAgOXB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gV2VsbHNcbi8vXG4vLyMjXG5cbiR3ZWxsLWJnOiAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kd2VsbC1ib3JkZXI6ICAgICAgICAgICAgICAgICBkYXJrZW4oJHdlbGwtYmcsIDclKSAhZGVmYXVsdDtcblxuXG4vLz09IEJhZGdlc1xuLy9cbi8vIyNcblxuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogTGlua2VkIGJhZGdlIHRleHQgY29sb3Igb24gaG92ZXJcbiRiYWRnZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYmFkZ2UtYmc6ICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBCYWRnZSB0ZXh0IGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xuJGJhZGdlLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhZGdlIGJhY2tncm91bmQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWJnOiAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xuJGJhZGdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgMSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBCcmVhZGNydW1ic1xuLy9cbi8vIyNcblxuJGJyZWFkY3J1bWItcGFkZGluZy12ZXJ0aWNhbDogICA4cHggIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw6IDE1cHggIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgYmFja2dyb3VuZCBjb2xvclxuLy8kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgIHdoaXRlICFkZWZhdWx0O1xuLy8qKiBCcmVhZGNydW1iIHRleHQgY29sb3Jcbi8vJGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgICAgICAkZ3JheS1saWdodDsgLy8qTVRcbi8vKiogVGV4dCBjb2xvciBvZiBjdXJyZW50IHBhZ2UgaW4gdGhlIGJyZWFkY3J1bWJcbi8vJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgJGJyYW5kLXByaW1hcnk7XG4vLyoqIFRleHR1YWwgc2VwYXJhdG9yIGZvciBiZXR3ZWVuIGJyZWFkY3J1bWIgZWxlbWVudHNcbi8vJGJyZWFkY3J1bWItc2VwYXJhdG9yOiAgICAgICAgICBcIi9cIiAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXNlcGFyYXRvcjogICAgICAgICAgJGZhLXZhci1hbmdsZS1yaWdodDsgLy8qTVRcblxuXG4vLz09IENhcm91c2VsXG4vL1xuLy8jI1xuXG4kY2Fyb3VzZWwtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjYpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDbG9zZVxuLy9cbi8vIyNcblxuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAwIDFweCAwICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDb2RlXG4vL1xuLy8jI1xuXG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAjYzcyNTRlICFkZWZhdWx0O1xuJGNvZGUtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y5ZjJmNCAhZGVmYXVsdDtcblxuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cbiRwcmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHByZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwZVxuLy9cbi8vIyNcblxuLy8qKiBIb3Jpem9udGFsIG9mZnNldCBmb3IgZm9ybXMgYW5kIGxpc3RzLlxuJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbDogMTgwcHggIWRlZmF1bHQ7XG4vLyoqIFRleHQgbXV0ZWQgY29sb3JcbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBBYmJyZXZpYXRpb25zIGFuZCBhY3JvbnltcyBib3JkZXIgY29sb3JcbiRhYmJyLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBIZWFkaW5ncyBzbWFsbCBjb2xvclxuJGhlYWRpbmdzLXNtYWxsLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgc21hbGwgY29sb3JcbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGZvbnQgc2l6ZVxuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGJvcmRlciBjb2xvclxuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogUGFnZSBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kcGFnZS1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBXaWR0aCBvZiBob3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3QgdGl0bGVzXG4kZGwtaG9yaXpvbnRhbC1vZmZzZXQ6ICAgICAgICAkY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCAuZGwtaG9yaXpvbnRhbCBiZWNvbWVzIGhvcml6b250YWxcbiRkbC1ob3Jpem9udGFsLWJyZWFrcG9pbnQ6ICAgICRncmlkLWZsb2F0LWJyZWFrcG9pbnQgIWRlZmF1bHQ7XG4vLyoqIEhvcml6b250YWwgbGluZSBjb2xvci5cbi8vJGhyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRoci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRncmF5LXhsaWdodDtcbiIsIi8qIVxuICogQm9vdHN0cmFwIHYzLjMuNiAoaHR0cDovL2dldGJvb3RzdHJhcC5jb20pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE1IFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKi9cblxuLy8gQ29yZSB2YXJpYWJsZXMgYW5kIG1peGluc1xuQGltcG9ydCBcIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zXCI7XG5cbi8vIFJlc2V0IGFuZCBkZXBlbmRlbmNpZXNcbkBpbXBvcnQgXCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL25vcm1hbGl6ZVwiO1xuQGltcG9ydCBcIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvcHJpbnRcIjtcbkBpbXBvcnQgXCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2dseXBoaWNvbnNcIjtcblxuLy8gQ29yZSBDU1NcbkBpbXBvcnQgXCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL3NjYWZmb2xkaW5nXCI7XG5AaW1wb3J0IFwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC90eXBlXCI7XG5AaW1wb3J0IFwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9jb2RlXCI7XG5AaW1wb3J0IFwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9ncmlkXCI7XG5AaW1wb3J0IFwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC90YWJsZXNcIjtcbkBpbXBvcnQgXCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2Zvcm1zXCI7XG5AaW1wb3J0IFwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9idXR0b25zXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2NvbXBvbmVudC1hbmltYXRpb25zXCI7XG5AaW1wb3J0IFwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9kcm9wZG93bnNcIjtcbkBpbXBvcnQgXCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2J1dHRvbi1ncm91cHNcIjtcbkBpbXBvcnQgXCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2lucHV0LWdyb3Vwc1wiO1xuQGltcG9ydCBcIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbmF2c1wiO1xuQGltcG9ydCBcIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbmF2YmFyXCI7XG5AaW1wb3J0IFwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9icmVhZGNydW1ic1wiO1xuQGltcG9ydCBcIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvcGFnZXJcIjtcbkBpbXBvcnQgXCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2xhYmVsc1wiO1xuQGltcG9ydCBcIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvYmFkZ2VzXCI7XG5AaW1wb3J0IFwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9qdW1ib3Ryb25cIjtcbkBpbXBvcnQgXCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL3RodW1ibmFpbHNcIjtcbkBpbXBvcnQgXCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2FsZXJ0c1wiO1xuQGltcG9ydCBcIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvcHJvZ3Jlc3MtYmFyc1wiO1xuQGltcG9ydCBcIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWVkaWFcIjtcbkBpbXBvcnQgXCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL3BhbmVsc1wiO1xuQGltcG9ydCBcIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvcmVzcG9uc2l2ZS1lbWJlZFwiO1xuQGltcG9ydCBcIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvd2VsbHNcIjtcbkBpbXBvcnQgXCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2Nsb3NlXCI7XG5cbi8vIENvbXBvbmVudHMgdy8gSmF2YVNjcmlwdFxuQGltcG9ydCBcIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbW9kYWxzXCI7XG5AaW1wb3J0IFwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC90b29sdGlwXCI7XG5AaW1wb3J0IFwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9wb3BvdmVyc1wiO1xuQGltcG9ydCBcIi4uL3B1YmxpYy9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvY2Fyb3VzZWxcIjtcblxuLy8gVXRpbGl0eSBjbGFzc2VzXG5AaW1wb3J0IFwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC91dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCIuLi9wdWJsaWMvYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL3Jlc3BvbnNpdmUtdXRpbGl0aWVzXCI7IiwiLy8gTWl4aW5zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgXCJtaXhpbnMvaGlkZS10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL29wYWNpdHlcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGFiZWxzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LWZpbHRlclwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzcG9uc2l2ZS12aXNpYmlsaXR5XCI7XG5AaW1wb3J0IFwibWl4aW5zL3NpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFiLWZvY3VzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtZW1waGFzaXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1vdmVyZmxvd1wiO1xuQGltcG9ydCBcIm1peGlucy92ZW5kb3ItcHJlZml4ZXNcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcIm1peGlucy9hbGVydHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYnV0dG9uc1wiO1xuQGltcG9ydCBcIm1peGlucy9wYW5lbHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIm1peGlucy9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi1kaXZpZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zvcm1zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Byb2dyZXNzLWJhclwiO1xuQGltcG9ydCBcIm1peGlucy90YWJsZS1yb3dcIjtcblxuLy8gU2tpbnNcbkBpbXBvcnQgXCJtaXhpbnMvYmFja2dyb3VuZC12YXJpYW50XCI7XG5AaW1wb3J0IFwibWl4aW5zL2JvcmRlci1yYWRpdXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JhZGllbnRzXCI7XG5cbi8vIExheW91dFxuQGltcG9ydCBcIm1peGlucy9jbGVhcmZpeFwiO1xuQGltcG9ydCBcIm1peGlucy9jZW50ZXItYmxvY2tcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LXZlcnRpY2FsLWFsaWduXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWQtZnJhbWV3b3JrXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWRcIjtcbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuLy9cbi8vIEhlYWRzIHVwISB2MyBsYXVuY2hlZCB3aXRoIHdpdGggb25seSBgLmhpZGUtdGV4dCgpYCwgYnV0IHBlciBvdXIgcGF0dGVybiBmb3Jcbi8vIG1peGlucyBiZWluZyByZXVzZWQgYXMgY2xhc3NlcyB3aXRoIHRoZSBzYW1lIG5hbWUsIHRoaXMgZG9lc24ndCBob2xkIHVwLiBBc1xuLy8gb2YgdjMuMC4xIHdlIGhhdmUgYWRkZWQgYC50ZXh0LWhpZGUoKWAgYW5kIGRlcHJlY2F0ZWQgYC5oaWRlLXRleHQoKWAuXG4vL1xuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9jb21taXQvYWEwMzk2ZWFlNzU3XG5cbi8vIERlcHJlY2F0ZWQgYXMgb2YgdjMuMC4xICh3aWxsIGJlIHJlbW92ZWQgaW4gdjQpXG5AbWl4aW4gaGlkZS10ZXh0KCkge1xuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gTmV3IG1peGluIHRvIHVzZSBhcyBvZiB2My4wLjFcbkBtaXhpbiB0ZXh0LWhpZGUoKSB7XG4gIEBpbmNsdWRlIGhpZGUtdGV4dDtcbn1cbiIsIi8vIE9wYWNpdHlcblxuQG1peGluIG9wYWNpdHkoJG9wYWNpdHkpIHtcbiAgb3BhY2l0eTogJG9wYWNpdHk7XG4gIC8vIElFOCBmaWx0ZXJcbiAgJG9wYWNpdHktaWU6ICgkb3BhY2l0eSAqIDEwMCk7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0kb3BhY2l0eS1pZSk7XG59XG4iLCIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cbkBtaXhpbiBpbWctcmVzcG9uc2l2ZSgkZGlzcGxheTogYmxvY2spIHtcbiAgZGlzcGxheTogJGRpc3BsYXk7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgaGVpZ2h0OiBhdXRvOyAvLyBQYXJ0IDI6IFNjYWxlIHRoZSBoZWlnaHQgYWNjb3JkaW5nIHRvIHRoZSB3aWR0aCwgb3RoZXJ3aXNlIHlvdSBnZXQgc3RyZXRjaGluZ1xufVxuXG5cbi8vIFJldGluYSBpbWFnZVxuLy9cbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS4gTm90ZSB0aGF0IHRoZVxuLy8gc3BlbGxpbmcgb2YgYG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpb2AgaXMgaW50ZW50aW9uYWwuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1pbWFnZS1wYXRoKFwiI3skZmlsZS0xeH1cIiksIFwiI3skZmlsZS0xeH1cIikpO1xuXG4gIEBtZWRpYVxuICBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIvMSksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDE5MmRwaSksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAyZHBweCkge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWltYWdlLXBhdGgoXCIjeyRmaWxlLTJ4fVwiKSwgXCIjeyRmaWxlLTJ4fVwiKSk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxufVxuIiwiLy8gTGFiZWxzXG5cbkBtaXhpbiBsYWJlbC12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgJltocmVmXSB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSZXNldCBmaWx0ZXJzIGZvciBJRVxuLy9cbi8vIFdoZW4geW91IG5lZWQgdG8gcmVtb3ZlIGEgZ3JhZGllbnQgYmFja2dyb3VuZCwgZG8gbm90IGZvcmdldCB0byB1c2UgdGhpcyB0byByZXNldFxuLy8gdGhlIElFIGZpbHRlciBmb3IgSUU5IGFuZCBiZWxvdy5cblxuQG1peGluIHJlc2V0LWZpbHRlcigpIHtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTtcbn1cbiIsIi8vIFJlc2l6ZSBhbnl0aGluZ1xuXG5AbWl4aW4gcmVzaXphYmxlKCRkaXJlY3Rpb24pIHtcbiAgcmVzaXplOiAkZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxuICBvdmVyZmxvdzogYXV0bzsgLy8gUGVyIENTUzMgVUksIGByZXNpemVgIG9ubHkgYXBwbGllcyB3aGVuIGBvdmVyZmxvd2AgaXNuJ3QgYHZpc2libGVgXG59XG4iLCIvLyBSZXNwb25zaXZlIHV0aWxpdGllc1xuXG4vL1xuLy8gTW9yZSBlYXNpbHkgaW5jbHVkZSBhbGwgdGhlIHN0YXRlcyBmb3IgcmVzcG9uc2l2ZS11dGlsaXRpZXMubGVzcy5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgkcGFyZW50KSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGFibGUjeyRwYXJlbnR9ICB7IGRpc3BsYXk6IHRhYmxlOyB9XG4gIHRyI3skcGFyZW50fSAgICAgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0aCN7JHBhcmVudH0sXG4gIHRkI3skcGFyZW50fSAgICAgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJHBhcmVudCkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIFNpemluZyBzaG9ydGN1dHNcblxuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0KSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbn1cblxuQG1peGluIHNxdWFyZSgkc2l6ZSkge1xuICBAaW5jbHVkZSBzaXplKCRzaXplLCAkc2l6ZSk7XG59XG4iLCIvLyBXZWJLaXQtc3R5bGUgZm9jdXNcblxuQG1peGluIHRhYi1mb2N1cygpIHtcbiAgLy8gRGVmYXVsdFxuICBvdXRsaW5lOiB0aGluIGRvdHRlZDtcbiAgLy8gV2ViS2l0XG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG59XG4iLCIvLyBUeXBvZ3JhcGh5XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuICBhI3skcGFyZW50fTpob3ZlciB7XG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIFRleHQgb3ZlcmZsb3dcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtb3ZlcmZsb3coKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gVmVuZG9yIFByZWZpeGVzXG4vL1xuLy8gQWxsIHZlbmRvciBtaXhpbnMgYXJlIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGR1ZSB0byB0aGUgaW50cm9kdWN0aW9uIG9mXG4vLyBBdXRvcHJlZml4ZXIgaW4gb3VyIEdydW50ZmlsZS4gVGhleSB3aWxsIGJlIHJlbW92ZWQgaW4gdjQuXG5cbi8vIC0gQW5pbWF0aW9uc1xuLy8gLSBCYWNrZmFjZSB2aXNpYmlsaXR5XG4vLyAtIEJveCBzaGFkb3dcbi8vIC0gQm94IHNpemluZ1xuLy8gLSBDb250ZW50IGNvbHVtbnNcbi8vIC0gSHlwaGVuc1xuLy8gLSBQbGFjZWhvbGRlciB0ZXh0XG4vLyAtIFRyYW5zZm9ybWF0aW9uc1xuLy8gLSBUcmFuc2l0aW9uc1xuLy8gLSBVc2VyIFNlbGVjdFxuXG5cbi8vIEFuaW1hdGlvbnNcbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbiAgICAgICAtby1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1uYW1lKCRuYW1lKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbn1cbkBtaXhpbiBhbmltYXRpb24tZHVyYXRpb24oJGR1cmF0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1kZWxheSgkZGVsYXkpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbiAgICAgICAgICBhbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbn1cbkBtaXhpbiBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50KCRpdGVyYXRpb24tY291bnQpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xuICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1maWxsLW1vZGUoJGZpbGwtbW9kZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG4gICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcbn1cblxuLy8gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gUHJldmVudCBicm93c2VycyBmcm9tIGZsaWNrZXJpbmcgd2hlbiB1c2luZyBDU1MgM0QgdHJhbnNmb3Jtcy5cbi8vIERlZmF1bHQgdmFsdWUgaXMgYHZpc2libGVgLCBidXQgY2FuIGJlIGNoYW5nZWQgdG8gYGhpZGRlbmBcblxuQG1peGluIGJhY2tmYWNlLXZpc2liaWxpdHkoJHZpc2liaWxpdHkpe1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xuICAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xufVxuXG4vLyBEcm9wIHNoYWRvd3Ncbi8vXG4vLyBOb3RlOiBEZXByZWNhdGVkIGAuYm94LXNoYWRvdygpYCBhcyBvZiB2My4xLjAgc2luY2UgYWxsIG9mIEJvb3RzdHJhcCdzXG4vLyBzdXBwb3J0ZWQgYnJvd3NlcnMgdGhhdCBoYXZlIGJveCBzaGFkb3cgY2FwYWJpbGl0aWVzIG5vdyBzdXBwb3J0IGl0LlxuXG5AbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogJHNoYWRvdzsgLy8gaU9TIDw0LjMgJiBBbmRyb2lkIDw0LjFcbiAgICAgICAgICBib3gtc2hhZG93OiAkc2hhZG93O1xufVxuXG4vLyBCb3ggc2l6aW5nXG5AbWl4aW4gYm94LXNpemluZygkYm94bW9kZWwpIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgIC1tb3otYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgICAgICAgIGJveC1zaXppbmc6ICRib3htb2RlbDtcbn1cblxuLy8gQ1NTMyBDb250ZW50IENvbHVtbnNcbkBtaXhpbiBjb250ZW50LWNvbHVtbnMoJGNvbHVtbi1jb3VudCwgJGNvbHVtbi1nYXA6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAtd2Via2l0LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAgLW1vei1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gICAgICAgICAgY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAtd2Via2l0LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xuICAgICAtbW96LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xuICAgICAgICAgIGNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xufVxuXG4vLyBPcHRpb25hbCBoeXBoZW5hdGlvblxuQG1peGluIGh5cGhlbnMoJG1vZGU6IGF1dG8pIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LWh5cGhlbnM6ICRtb2RlO1xuICAgICAtbW96LWh5cGhlbnM6ICRtb2RlO1xuICAgICAgLW1zLWh5cGhlbnM6ICRtb2RlOyAvLyBJRTEwK1xuICAgICAgIC1vLWh5cGhlbnM6ICRtb2RlO1xuICAgICAgICAgIGh5cGhlbnM6ICRtb2RlO1xufVxuXG4vLyBQbGFjZWhvbGRlciB0ZXh0XG5AbWl4aW4gcGxhY2Vob2xkZXIoJGNvbG9yOiAkaW5wdXQtY29sb3ItcGxhY2Vob2xkZXIpIHtcbiAgLy8gRmlyZWZveFxuICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIG9wYWNpdHk6IDE7IC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2XG4gIH1cbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogJGNvbG9yOyB9IC8vIEludGVybmV0IEV4cGxvcmVyIDEwK1xuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyICB7IGNvbG9yOiAkY29sb3I7IH0gLy8gU2FmYXJpIGFuZCBDaHJvbWVcbn1cblxuLy8gVHJhbnNmb3JtYXRpb25zXG5AbWl4aW4gc2NhbGUoJHJhdGlvLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xufVxuXG5AbWl4aW4gc2NhbGVYKCRyYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG59XG5AbWl4aW4gc2NhbGVZKCRyYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG59XG5AbWl4aW4gc2tldygkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy80ODg1OyBJRTkrXG4gICAgICAgLW8tdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbn1cbkBtaXhpbiB0cmFuc2xhdGUoJHgsICR5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbn1cbkBtaXhpbiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xufVxuQG1peGluIHJvdGF0ZSgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiByb3RhdGVYKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiByb3RhdGVZKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgICAtbW96LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiBwZXJzcGVjdGl2ZS1vcmlnaW4oJHBlcnNwZWN0aXZlKSB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG59XG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkb3JpZ2luKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47IC8vIElFOSBvbmx5XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbn1cblxuXG4vLyBUcmFuc2l0aW9uc1xuXG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tcHJvcGVydHkoJHRyYW5zaXRpb24tcHJvcGVydHkuLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCR0cmFuc2l0aW9uLWRlbGF5KSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1kdXJhdGlvbigkdHJhbnNpdGlvbi1kdXJhdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXRyYW5zZm9ybSgkdHJhbnNpdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb247XG59XG5cblxuLy8gVXNlciBzZWxlY3Rcbi8vIEZvciBzZWxlY3RpbmcgdGV4dCBvbiB0aGUgcGFnZVxuXG5AbWl4aW4gdXNlci1zZWxlY3QoJHNlbGVjdCkge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xuICAgICAtbW96LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiAkc2VsZWN0OyAvLyBJRTEwK1xuICAgICAgICAgIHVzZXItc2VsZWN0OiAkc2VsZWN0O1xufVxuIiwiLy8gQWxlcnRzXG5cbkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkdGV4dC1jb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJHRleHQtY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMsXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgJixcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG5cbiAgLmJhZGdlIHtcbiAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG59XG4iLCIvLyBQYW5lbHNcblxuQG1peGluIHBhbmVsLXZhcmlhbnQoJGJvcmRlciwgJGhlYWRpbmctdGV4dC1jb2xvciwgJGhlYWRpbmctYmctY29sb3IsICRoZWFkaW5nLWJvcmRlcikge1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJiA+IC5wYW5lbC1oZWFkaW5nIHtcbiAgICBjb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRoZWFkaW5nLWJvcmRlcjtcblxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgfVxuICB9XG4gICYgPiAucGFuZWwtZm9vdGVyIHtcbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG59XG4iLCIvLyBQYWdpbmF0aW9uXG5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XG4gID4gbGkge1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfVxuICB9XG5cbiAgYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgfVxuICAgICYuYWN0aXZlLFxuICAgICYuYWN0aXZlOmhvdmVyLFxuICAgICYuYWN0aXZlOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICNlNWU1ZTUpIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIDEpIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbn1cbiIsIi8vIEZvcm0gdmFsaWRhdGlvbiBzdGF0ZXNcbi8vXG4vLyBVc2VkIGluIGZvcm1zLmxlc3MgdG8gZ2VuZXJhdGUgdGhlIGZvcm0gdmFsaWRhdGlvbiBDU1MgZm9yIHdhcm5pbmdzLCBlcnJvcnMsXG4vLyBhbmQgc3VjY2Vzc2VzLlxuXG5AbWl4aW4gZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHRleHQtY29sb3I6ICM1NTUsICRib3JkZXItY29sb3I6ICNjY2MsICRiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1KSB7XG4gIC8vIENvbG9yIHRoZSBsYWJlbCBhbmQgaGVscCB0ZXh0XG4gIC5oZWxwLWJsb2NrLFxuICAuY29udHJvbC1sYWJlbCxcbiAgLnJhZGlvLFxuICAuY2hlY2tib3gsXG4gIC5yYWRpby1pbmxpbmUsXG4gIC5jaGVja2JveC1pbmxpbmUsXG4gICYucmFkaW8gbGFiZWwsXG4gICYuY2hlY2tib3ggbGFiZWwsXG4gICYucmFkaW8taW5saW5lIGxhYmVsLFxuICAmLmNoZWNrYm94LWlubGluZSBsYWJlbCAge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxuICAvLyBTZXQgdGhlIGJvcmRlciBhbmQgYm94IHNoYWRvdyBvbiBzcGVjaWZpYyBpbnB1dHMgdG8gbWF0Y2hcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpOyAvLyBSZWRlY2xhcmUgc28gdHJhbnNpdGlvbnMgd29ya1xuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlci1jb2xvciwgMTAlKTtcbiAgICAgICRzaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgNnB4IGxpZ2h0ZW4oJGJvcmRlci1jb2xvciwgMjAlKTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHNoYWRvdyk7XG4gICAgfVxuICB9XG4gIC8vIFNldCB2YWxpZGF0aW9uIHN0YXRlcyBhbHNvIGZvciBhZGRvbnNcbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICB9XG4gIC8vIE9wdGlvbmFsIGZlZWRiYWNrIGljb25cbiAgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWJvcmRlci1mb2N1c2AgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGNvbG9yOiAkaW5wdXQtYm9yZGVyLWZvY3VzKSB7XG4gICRjb2xvci1yZ2JhOiByZ2JhKHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvciksIC42KTtcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgOHB4ICRjb2xvci1yZ2JhKTtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gUmVsYXRpdmUgdGV4dCBzaXplLCBwYWRkaW5nLCBhbmQgYm9yZGVyLXJhZGlpIGNoYW5nZXMgZm9yIGZvcm0gY29udHJvbHMuIEZvclxuLy8gaG9yaXpvbnRhbCBzaXppbmcsIHdyYXAgY29udHJvbHMgaW4gdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLiBgPHNlbGVjdD5gXG4vLyBlbGVtZW50IGdldHMgc3BlY2lhbCBsb3ZlIGJlY2F1c2UgaXQncyBzcGVjaWFsLCBhbmQgdGhhdCdzIGEgZmFjdCFcbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIGlucHV0LXNpemUoJHBhcmVudCwgJGlucHV0LWhlaWdodCwgJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICBzZWxlY3QjeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIH1cblxuICB0ZXh0YXJlYSN7JHBhcmVudH0sXG4gIHNlbGVjdFttdWx0aXBsZV0jeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cbiIsIi8vIFByb2dyZXNzIGJhcnNcblxuQG1peGluIHByb2dyZXNzLWJhci12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgLy8gRGVwcmVjYXRlZCBwYXJlbnQgY2xhc3MgcmVxdWlyZW1lbnQgYXMgb2YgdjMuMi4wXG4gIC5wcm9ncmVzcy1zdHJpcGVkICYge1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQ7XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUgPiB0aGVhZCA+IHRyLFxuICAudGFibGUgPiB0Ym9keSA+IHRyLFxuICAudGFibGUgPiB0Zm9vdCA+IHRyIHtcbiAgICA+IHRkLiN7JHN0YXRlfSxcbiAgICA+IHRoLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfSA+IHRkLFxuICAgICYuI3skc3RhdGV9ID4gdGgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ciB7XG4gICAgPiB0ZC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgPiB0aC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0ZCxcbiAgICAmOmhvdmVyID4gLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfTpob3ZlciA+IHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbiIsIi8vIEdyYWRpZW50c1xuXG5cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXG5AbWl4aW4gZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93blxufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0wKTsgLy8gSUU5IGFuZCBkb3duXG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xufVxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0xKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcbn1cbkBtaXhpbiBncmFkaWVudC12ZXJ0aWNhbC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogIzU1NSwgJG91dGVyLWNvbG9yOiAjMzMzKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCIvLyBDbGVhcmZpeFxuLy9cbi8vIEZvciBtb2Rlcm4gYnJvd3NlcnNcbi8vIDEuIFRoZSBzcGFjZSBjb250ZW50IGlzIG9uZSB3YXkgdG8gYXZvaWQgYW4gT3BlcmEgYnVnIHdoZW4gdGhlXG4vLyAgICBjb250ZW50ZWRpdGFibGUgYXR0cmlidXRlIGlzIGluY2x1ZGVkIGFueXdoZXJlIGVsc2UgaW4gdGhlIGRvY3VtZW50LlxuLy8gICAgT3RoZXJ3aXNlIGl0IGNhdXNlcyBzcGFjZSB0byBhcHBlYXIgYXQgdGhlIHRvcCBhbmQgYm90dG9tIG9mIGVsZW1lbnRzXG4vLyAgICB0aGF0IGFyZSBjbGVhcmZpeGVkLlxuLy8gMi4gVGhlIHVzZSBvZiBgdGFibGVgIHJhdGhlciB0aGFuIGBibG9ja2AgaXMgb25seSBuZWNlc3NhcnkgaWYgdXNpbmdcbi8vICAgIGA6YmVmb3JlYCB0byBjb250YWluIHRoZSB0b3AtbWFyZ2lucyBvZiBjaGlsZCBlbGVtZW50cy5cbi8vXG4vLyBTb3VyY2U6IGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrL1xuXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjsgLy8gMVxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAyXG4gIH1cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cbiIsIi8vIENlbnRlci1hbGlnbiBhIGJsb2NrIGxldmVsIGVsZW1lbnRcblxuQG1peGluIGNlbnRlci1ibG9jaygpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4iLCIvLyBOYXZiYXIgdmVydGljYWwgYWxpZ25cbi8vXG4vLyBWZXJ0aWNhbGx5IGNlbnRlciBlbGVtZW50cyBpbiB0aGUgbmF2YmFyLlxuLy8gRXhhbXBsZTogYW4gZWxlbWVudCBoYXMgYSBoZWlnaHQgb2YgMzBweCwgc28gd3JpdGUgb3V0IGAubmF2YmFyLXZlcnRpY2FsLWFsaWduKDMwcHgpO2AgdG8gY2FsY3VsYXRlIHRoZSBhcHByb3ByaWF0ZSB0b3AgbWFyZ2luLlxuXG5AbWl4aW4gbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRlbGVtZW50LWhlaWdodCkge1xuICBtYXJnaW4tdG9wOiAoKCRuYXZiYXItaGVpZ2h0IC0gJGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAoKCRuYXZiYXItaGVpZ2h0IC0gJGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xufVxuIiwiLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkaTogMSwgJGxpc3Q6IFwiLmNvbC14cy0jeyRpfSwgLmNvbC1zbS0jeyRpfSwgLmNvbC1tZC0jeyRpfSwgLmNvbC1sZy0jeyRpfVwiKSB7XG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIjtcbiAgfVxuICAjeyRsaXN0fSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGNvbGxhcHNpbmcgd2hlbiBlbXB0eVxuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICAvLyBJbm5lciBndXR0ZXIgdmlhIHBhZGRpbmdcbiAgICBwYWRkaW5nLWxlZnQ6ICAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XG4gICAgcGFkZGluZy1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICB9XG59XG5cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBmbG9hdC1ncmlkLWNvbHVtbnMoJGNsYXNzLCAkaTogMSwgJGxpc3Q6IFwiLmNvbC0jeyRjbGFzc30tI3skaX1cIikge1xuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLSN7JGNsYXNzfS0jeyRpfVwiO1xuICB9XG4gICN7JGxpc3R9IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG5cbkBtaXhpbiBjYWxjLWdyaWQtY29sdW1uKCRpbmRleCwgJGNsYXNzLCAkdHlwZSkge1xuICBAaWYgKCR0eXBlID09IHdpZHRoKSBhbmQgKCRpbmRleCA+IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS0jeyRpbmRleH0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA+IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdXNoLSN7JGluZGV4fSB7XG4gICAgICBsZWZ0OiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVzaCkgYW5kICgkaW5kZXggPT0gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1c2gtMCB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1bGwpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1bGwtI3skaW5kZXh9IHtcbiAgICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVsbCkgYW5kICgkaW5kZXggPT0gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1bGwtMCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBvZmZzZXQpIHtcbiAgICAuY29sLSN7JGNsYXNzfS1vZmZzZXQtI3skaW5kZXh9IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XG4gICAgfVxuICB9XG59XG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gbG9vcC1ncmlkLWNvbHVtbnMoJGNvbHVtbnMsICRjbGFzcywgJHR5cGUpIHtcbiAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgQGluY2x1ZGUgY2FsYy1ncmlkLWNvbHVtbigkaSwgJGNsYXNzLCAkdHlwZSk7XG4gIH1cbn1cblxuXG4vLyBDcmVhdGUgZ3JpZCBmb3Igc3BlY2lmaWMgY2xhc3NcbkBtaXhpbiBtYWtlLWdyaWQoJGNsYXNzKSB7XG4gIEBpbmNsdWRlIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHdpZHRoKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCBwdWxsKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCBwdXNoKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCBvZmZzZXQpO1xufVxuIiwiLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbi8vIENlbnRlcmVkIGNvbnRhaW5lciBlbGVtZW50XG5AbWl4aW4gY29udGFpbmVyLWZpeGVkKCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gQ3JlYXRlcyBhIHdyYXBwZXIgZm9yIGEgc2VyaWVzIG9mIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgbWFyZ2luLWxlZnQ6ICAoJGd1dHRlciAvIC0yKTtcbiAgbWFyZ2luLXJpZ2h0OiAoJGd1dHRlciAvIC0yKTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBleHRyYSBzbWFsbCBjb2x1bW5zXG5AbWl4aW4gbWFrZS14cy1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBzbWFsbCBjb2x1bW5zXG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBtZWRpdW0gY29sdW1uc1xuQG1peGluIG1ha2UtbWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuXG4vLyBHZW5lcmF0ZSB0aGUgbGFyZ2UgY29sdW1uc1xuQG1peGluIG1ha2UtbGctY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4yIHwgTUlUIExpY2Vuc2UgfCBnaXQuaW8vbm9ybWFsaXplICovXG5cbi8vXG4vLyAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuLy8gMi4gUHJldmVudCBpT1MgdGV4dCBzaXplIGFkanVzdCBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2UsIHdpdGhvdXQgZGlzYWJsaW5nXG4vLyAgICB1c2VyIHpvb20uXG4vL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDFcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG59XG5cbi8vXG4vLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG4vL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLyBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4vLyBhbmQgRmlyZWZveC5cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4vL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4vLyAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4vL1xuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyAyXG59XG5cbi8vXG4vLyBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuLy8gUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbi8vXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbi8vIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbi8vXG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBMaW5rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuLy9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vL1xuLy8gSW1wcm92ZSByZWFkYWJpbGl0eSB3aGVuIGZvY3VzZWQgYW5kIGFsc28gbW91c2UgaG92ZXJlZCBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBUZXh0LWxldmVsIHNlbWFudGljc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cbi8vXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcbn1cblxuLy9cbi8vIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbi8vXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLy9cbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbi8vXG5cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLy9cbi8vIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbi8vIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbi8vXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuLy9cblxubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuLy8gRW1iZWRkZWQgY29udGVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgOC85LzEwLlxuLy9cblxuaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4vL1xuLy8gQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuXG4vL1xuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vIEdyb3VwaW5nIGNvbnRlbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbi8vXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXG4vL1xuXG5ociB7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG59XG5cbi8vXG4vLyBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vLyBGb3Jtc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEtub3duIGxpbWl0YXRpb246IGJ5IGRlZmF1bHQsIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFggYWxsb3cgdmVyeSBsaW1pdGVkXG4vLyBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXG4vL1xuXG4vL1xuLy8gMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxuLy8gICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4vLyAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxuLy8gMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBjb2xvcjogaW5oZXJpdDsgLy8gMVxuICBmb250OiBpbmhlcml0OyAvLyAyXG4gIG1hcmdpbjogMDsgLy8gM1xufVxuXG4vL1xuLy8gQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4vL1xuXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLy9cbi8vIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbi8vIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4vLyBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxuLy8gQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuLy9cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8vXG4vLyAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxuLy8gICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4vLyAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4vLyAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuLy8gICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuLy9cblxuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbiAgY3Vyc29yOiBwb2ludGVyOyAvLyAzXG59XG5cbi8vXG4vLyBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuLy9cblxuYnV0dG9uW2Rpc2FibGVkXSxcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vL1xuLy8gUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuLy9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4vLyB0aGUgVUEgc3R5bGVzaGVldC5cbi8vXG5cbmlucHV0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLy9cbi8vIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbi8vIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4vL1xuLy8gMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbi8vIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4vL1xuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gIHBhZGRpbmc6IDA7IC8vIDJcbn1cblxuLy9cbi8vIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXG4vLyBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxuLy8gZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxuLy9cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vXG4vLyAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbi8vIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWVcbi8vICAgIChpbmNsdWRlIGAtbW96YCB0byBmdXR1cmUtcHJvb2YpLlxuLy9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDJcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbi8vXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbi8vIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbi8vIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuLy9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4vLyAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4vL1xuXG5sZWdlbmQge1xuICBib3JkZXI6IDA7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbi8vXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vXG4vLyBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4vLyBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbi8vXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vIFRhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwO1xufVxuIiwiLyohIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzcyAqL1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUHJpbnQgc3R5bGVzLlxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6IGg1YnAuY29tL3Jcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBtZWRpYSBwcmludCB7XG4gICAgKixcbiAgICAqOmJlZm9yZSxcbiAgICAqOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYSxcbiAgICBhOnZpc2l0ZWQge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICBhW2hyZWZdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgfVxuXG4gICAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gICAgfVxuXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgYVtocmVmXj1cIiNcIl06YWZ0ZXIsXG4gICAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG5cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICB0aGVhZCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgLy8gaDVicC5jb20vdFxuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgb3JwaGFuczogMztcbiAgICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcbiAgICAvL1xuICAgIC8vIENocm9tZSAoT1NYKSBmaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTEyNDVcbiAgICAvLyBPbmNlIGZpeGVkLCB3ZSBjYW4ganVzdCBzdHJhaWdodCB1cCByZW1vdmUgdGhpcy5cbiAgICBzZWxlY3Qge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcbiAgICAubmF2YmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmJ0bixcbiAgICAuZHJvcHVwID4gLmJ0biB7XG4gICAgICAgID4gLmNhcmV0IHtcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubGFiZWwge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuICAgIH1cblxuICAgIC50YWJsZSB7XG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcblxuICAgICAgICB0ZCxcbiAgICAgICAgdGgge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgIHRoLFxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBlbmRcbn1cbiIsIi8vXG4vLyBHbHlwaGljb25zIGZvciBCb290c3RyYXBcbi8vXG4vLyBTaW5jZSBpY29ucyBhcmUgZm9udHMsIHRoZXkgY2FuIGJlIHBsYWNlZCBhbnl3aGVyZSB0ZXh0IGlzIHBsYWNlZCBhbmQgYXJlXG4vLyB0aHVzIGF1dG9tYXRpY2FsbHkgc2l6ZWQgdG8gbWF0Y2ggdGhlIHN1cnJvdW5kaW5nIGNoaWxkLiBUbyB1c2UsIGNyZWF0ZSBhblxuLy8gaW5saW5lIGVsZW1lbnQgd2l0aCB0aGUgYXBwcm9wcmlhdGUgY2xhc3NlcywgbGlrZSBzbzpcbi8vXG4vLyA8YSBocmVmPVwiI1wiPjxzcGFuIGNsYXNzPVwiZ2x5cGhpY29uIGdseXBoaWNvbi1zdGFyXCI+PC9zcGFuPiBTdGFyPC9hPlxuXG4vLyBJbXBvcnQgdGhlIGZvbnRzXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdHbHlwaGljb25zIEhhbGZsaW5ncyc7XG4gIHNyYzogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90JyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90JykpO1xuICBzcmM6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aCgnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LmVvdD8jaWVmaXgnKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5lb3Q/I2llZml4JykpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmMicpLCAnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LndvZmYyJykpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmJyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0ud29mZicpKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS50dGYnKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS50dGYnKSkgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgIHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aCgnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnN2ZyMjeyRpY29uLWZvbnQtc3ZnLWlkfScpLCAnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnN2ZyMjeyRpY29uLWZvbnQtc3ZnLWlkfScpKSBmb3JtYXQoJ3N2ZycpO1xufVxuXG4vLyBDYXRjaGFsbCBiYXNlY2xhc3Ncbi5nbHlwaGljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLy8gSW5kaXZpZHVhbCBpY29uc1xuLmdseXBoaWNvbi1hc3RlcmlzayAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMmFcIjsgfSB9XG4uZ2x5cGhpY29uLXBsdXMgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyYlwiOyB9IH1cbi5nbHlwaGljb24tZXVybyxcbi5nbHlwaGljb24tZXVyICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIwYWNcIjsgfSB9XG4uZ2x5cGhpY29uLW1pbnVzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMjEyXCI7IH0gfVxuLmdseXBoaWNvbi1jbG91ZCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjYwMVwiOyB9IH1cbi5nbHlwaGljb24tZW52ZWxvcGUgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI3MDlcIjsgfSB9XG4uZ2x5cGhpY29uLXBlbmNpbCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNzBmXCI7IH0gfVxuLmdseXBoaWNvbi1nbGFzcyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwMVwiOyB9IH1cbi5nbHlwaGljb24tbXVzaWMgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDJcIjsgfSB9XG4uZ2x5cGhpY29uLXNlYXJjaCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDAzXCI7IH0gfVxuLmdseXBoaWNvbi1oZWFydCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwNVwiOyB9IH1cbi5nbHlwaGljb24tc3RhciAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDZcIjsgfSB9XG4uZ2x5cGhpY29uLXN0YXItZW1wdHkgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA3XCI7IH0gfVxuLmdseXBoaWNvbi11c2VyICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwOFwiOyB9IH1cbi5nbHlwaGljb24tZmlsbSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDlcIjsgfSB9XG4uZ2x5cGhpY29uLXRoLWxhcmdlICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEwXCI7IH0gfVxuLmdseXBoaWNvbi10aCAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxMVwiOyB9IH1cbi5nbHlwaGljb24tdGgtbGlzdCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTJcIjsgfSB9XG4uZ2x5cGhpY29uLW9rICAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEzXCI7IH0gfVxuLmdseXBoaWNvbi1yZW1vdmUgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxNFwiOyB9IH1cbi5nbHlwaGljb24tem9vbS1pbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTVcIjsgfSB9XG4uZ2x5cGhpY29uLXpvb20tb3V0ICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE2XCI7IH0gfVxuLmdseXBoaWNvbi1vZmYgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxN1wiOyB9IH1cbi5nbHlwaGljb24tc2lnbmFsICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMThcIjsgfSB9XG4uZ2x5cGhpY29uLWNvZyAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE5XCI7IH0gfVxuLmdseXBoaWNvbi10cmFzaCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyMFwiOyB9IH1cbi5nbHlwaGljb24taG9tZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjFcIjsgfSB9XG4uZ2x5cGhpY29uLWZpbGUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIyXCI7IH0gfVxuLmdseXBoaWNvbi10aW1lICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyM1wiOyB9IH1cbi5nbHlwaGljb24tcm9hZCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjRcIjsgfSB9XG4uZ2x5cGhpY29uLWRvd25sb2FkLWFsdCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI1XCI7IH0gfVxuLmdseXBoaWNvbi1kb3dubG9hZCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyNlwiOyB9IH1cbi5nbHlwaGljb24tdXBsb2FkICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjdcIjsgfSB9XG4uZ2x5cGhpY29uLWluYm94ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI4XCI7IH0gfVxuLmdseXBoaWNvbi1wbGF5LWNpcmNsZSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyOVwiOyB9IH1cbi5nbHlwaGljb24tcmVwZWF0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzBcIjsgfSB9XG4uZ2x5cGhpY29uLXJlZnJlc2ggICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMxXCI7IH0gfVxuLmdseXBoaWNvbi1saXN0LWFsdCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzMlwiOyB9IH1cbi5nbHlwaGljb24tbG9jayAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzNcIjsgfSB9XG4uZ2x5cGhpY29uLWZsYWcgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM0XCI7IH0gfVxuLmdseXBoaWNvbi1oZWFkcGhvbmVzICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzNVwiOyB9IH1cbi5nbHlwaGljb24tdm9sdW1lLW9mZiAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzZcIjsgfSB9XG4uZ2x5cGhpY29uLXZvbHVtZS1kb3duICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM3XCI7IH0gfVxuLmdseXBoaWNvbi12b2x1bWUtdXAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzOFwiOyB9IH1cbi5nbHlwaGljb24tcXJjb2RlICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzlcIjsgfSB9XG4uZ2x5cGhpY29uLWJhcmNvZGUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQwXCI7IH0gfVxuLmdseXBoaWNvbi10YWcgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0MVwiOyB9IH1cbi5nbHlwaGljb24tdGFncyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDJcIjsgfSB9XG4uZ2x5cGhpY29uLWJvb2sgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQzXCI7IH0gfVxuLmdseXBoaWNvbi1ib29rbWFyayAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0NFwiOyB9IH1cbi5nbHlwaGljb24tcHJpbnQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDVcIjsgfSB9XG4uZ2x5cGhpY29uLWNhbWVyYSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ2XCI7IH0gfVxuLmdseXBoaWNvbi1mb250ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0N1wiOyB9IH1cbi5nbHlwaGljb24tYm9sZCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDhcIjsgfSB9XG4uZ2x5cGhpY29uLWl0YWxpYyAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ5XCI7IH0gfVxuLmdseXBoaWNvbi10ZXh0LWhlaWdodCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1MFwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC13aWR0aCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTFcIjsgfSB9XG4uZ2x5cGhpY29uLWFsaWduLWxlZnQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUyXCI7IH0gfVxuLmdseXBoaWNvbi1hbGlnbi1jZW50ZXIgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1M1wiOyB9IH1cbi5nbHlwaGljb24tYWxpZ24tcmlnaHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTRcIjsgfSB9XG4uZ2x5cGhpY29uLWFsaWduLWp1c3RpZnkgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU1XCI7IH0gfVxuLmdseXBoaWNvbi1saXN0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1NlwiOyB9IH1cbi5nbHlwaGljb24taW5kZW50LWxlZnQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTdcIjsgfSB9XG4uZ2x5cGhpY29uLWluZGVudC1yaWdodCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU4XCI7IH0gfVxuLmdseXBoaWNvbi1mYWNldGltZS12aWRlbyAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1OVwiOyB9IH1cbi5nbHlwaGljb24tcGljdHVyZSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjBcIjsgfSB9XG4uZ2x5cGhpY29uLW1hcC1tYXJrZXIgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYyXCI7IH0gfVxuLmdseXBoaWNvbi1hZGp1c3QgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2M1wiOyB9IH1cbi5nbHlwaGljb24tdGludCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjRcIjsgfSB9XG4uZ2x5cGhpY29uLWVkaXQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY1XCI7IH0gfVxuLmdseXBoaWNvbi1zaGFyZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2NlwiOyB9IH1cbi5nbHlwaGljb24tY2hlY2sgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjdcIjsgfSB9XG4uZ2x5cGhpY29uLW1vdmUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY4XCI7IH0gfVxuLmdseXBoaWNvbi1zdGVwLWJhY2t3YXJkICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2OVwiOyB9IH1cbi5nbHlwaGljb24tZmFzdC1iYWNrd2FyZCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzBcIjsgfSB9XG4uZ2x5cGhpY29uLWJhY2t3YXJkICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDcxXCI7IH0gfVxuLmdseXBoaWNvbi1wbGF5ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3MlwiOyB9IH1cbi5nbHlwaGljb24tcGF1c2UgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzNcIjsgfSB9XG4uZ2x5cGhpY29uLXN0b3AgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc0XCI7IH0gfVxuLmdseXBoaWNvbi1mb3J3YXJkICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3NVwiOyB9IH1cbi5nbHlwaGljb24tZmFzdC1mb3J3YXJkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzZcIjsgfSB9XG4uZ2x5cGhpY29uLXN0ZXAtZm9yd2FyZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc3XCI7IH0gfVxuLmdseXBoaWNvbi1lamVjdCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3OFwiOyB9IH1cbi5nbHlwaGljb24tY2hldnJvbi1sZWZ0ICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzlcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgwXCI7IH0gfVxuLmdseXBoaWNvbi1wbHVzLXNpZ24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4MVwiOyB9IH1cbi5nbHlwaGljb24tbWludXMtc2lnbiAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODJcIjsgfSB9XG4uZ2x5cGhpY29uLXJlbW92ZS1zaWduICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgzXCI7IH0gfVxuLmdseXBoaWNvbi1vay1zaWduICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4NFwiOyB9IH1cbi5nbHlwaGljb24tcXVlc3Rpb24tc2lnbiAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODVcIjsgfSB9XG4uZ2x5cGhpY29uLWluZm8tc2lnbiAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg2XCI7IH0gfVxuLmdseXBoaWNvbi1zY3JlZW5zaG90ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4N1wiOyB9IH1cbi5nbHlwaGljb24tcmVtb3ZlLWNpcmNsZSAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODhcIjsgfSB9XG4uZ2x5cGhpY29uLW9rLWNpcmNsZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg5XCI7IH0gfVxuLmdseXBoaWNvbi1iYW4tY2lyY2xlICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5MFwiOyB9IH1cbi5nbHlwaGljb24tYXJyb3ctbGVmdCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTFcIjsgfSB9XG4uZ2x5cGhpY29uLWFycm93LXJpZ2h0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkyXCI7IH0gfVxuLmdseXBoaWNvbi1hcnJvdy11cCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5M1wiOyB9IH1cbi5nbHlwaGljb24tYXJyb3ctZG93biAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTRcIjsgfSB9XG4uZ2x5cGhpY29uLXNoYXJlLWFsdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk1XCI7IH0gfVxuLmdseXBoaWNvbi1yZXNpemUtZnVsbCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5NlwiOyB9IH1cbi5nbHlwaGljb24tcmVzaXplLXNtYWxsICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTdcIjsgfSB9XG4uZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24gICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTAxXCI7IH0gfVxuLmdseXBoaWNvbi1naWZ0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwMlwiOyB9IH1cbi5nbHlwaGljb24tbGVhZiAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDNcIjsgfSB9XG4uZ2x5cGhpY29uLWZpcmUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA0XCI7IH0gfVxuLmdseXBoaWNvbi1leWUtb3BlbiAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwNVwiOyB9IH1cbi5nbHlwaGljb24tZXllLWNsb3NlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDZcIjsgfSB9XG4uZ2x5cGhpY29uLXdhcm5pbmctc2lnbiAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA3XCI7IH0gfVxuLmdseXBoaWNvbi1wbGFuZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwOFwiOyB9IH1cbi5nbHlwaGljb24tY2FsZW5kYXIgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDlcIjsgfSB9XG4uZ2x5cGhpY29uLXJhbmRvbSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEwXCI7IH0gfVxuLmdseXBoaWNvbi1jb21tZW50ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExMVwiOyB9IH1cbi5nbHlwaGljb24tbWFnbmV0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTJcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZXZyb24tdXAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEzXCI7IH0gfVxuLmdseXBoaWNvbi1jaGV2cm9uLWRvd24gICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExNFwiOyB9IH1cbi5nbHlwaGljb24tcmV0d2VldCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTVcIjsgfSB9XG4uZ2x5cGhpY29uLXNob3BwaW5nLWNhcnQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE2XCI7IH0gfVxuLmdseXBoaWNvbi1mb2xkZXItY2xvc2UgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExN1wiOyB9IH1cbi5nbHlwaGljb24tZm9sZGVyLW9wZW4gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMThcIjsgfSB9XG4uZ2x5cGhpY29uLXJlc2l6ZS12ZXJ0aWNhbCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE5XCI7IH0gfVxuLmdseXBoaWNvbi1yZXNpemUtaG9yaXpvbnRhbCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyMFwiOyB9IH1cbi5nbHlwaGljb24taGRkICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjFcIjsgfSB9XG4uZ2x5cGhpY29uLWJ1bGxob3JuICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIyXCI7IH0gfVxuLmdseXBoaWNvbi1iZWxsICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyM1wiOyB9IH1cbi5nbHlwaGljb24tY2VydGlmaWNhdGUgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjRcIjsgfSB9XG4uZ2x5cGhpY29uLXRodW1icy11cCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI1XCI7IH0gfVxuLmdseXBoaWNvbi10aHVtYnMtZG93biAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyNlwiOyB9IH1cbi5nbHlwaGljb24taGFuZC1yaWdodCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjdcIjsgfSB9XG4uZ2x5cGhpY29uLWhhbmQtbGVmdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI4XCI7IH0gfVxuLmdseXBoaWNvbi1oYW5kLXVwICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyOVwiOyB9IH1cbi5nbHlwaGljb24taGFuZC1kb3duICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzBcIjsgfSB9XG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1yaWdodCAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMxXCI7IH0gfVxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctbGVmdCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzMlwiOyB9IH1cbi5nbHlwaGljb24tY2lyY2xlLWFycm93LXVwICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzNcIjsgfSB9XG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1kb3duICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM0XCI7IH0gfVxuLmdseXBoaWNvbi1nbG9iZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzNVwiOyB9IH1cbi5nbHlwaGljb24td3JlbmNoICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzZcIjsgfSB9XG4uZ2x5cGhpY29uLXRhc2tzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM3XCI7IH0gfVxuLmdseXBoaWNvbi1maWx0ZXIgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzOFwiOyB9IH1cbi5nbHlwaGljb24tYnJpZWZjYXNlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzlcIjsgfSB9XG4uZ2x5cGhpY29uLWZ1bGxzY3JlZW4gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQwXCI7IH0gfVxuLmdseXBoaWNvbi1kYXNoYm9hcmQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0MVwiOyB9IH1cbi5nbHlwaGljb24tcGFwZXJjbGlwICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDJcIjsgfSB9XG4uZ2x5cGhpY29uLWhlYXJ0LWVtcHR5ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQzXCI7IH0gfVxuLmdseXBoaWNvbi1saW5rICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0NFwiOyB9IH1cbi5nbHlwaGljb24tcGhvbmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDVcIjsgfSB9XG4uZ2x5cGhpY29uLXB1c2hwaW4gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ2XCI7IH0gfVxuLmdseXBoaWNvbi11c2QgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0OFwiOyB9IH1cbi5nbHlwaGljb24tZ2JwICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDlcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUwXCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LWFscGhhYmV0ICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1MVwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1hbHBoYWJldC1hbHQgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTJcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktb3JkZXIgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUzXCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LW9yZGVyLWFsdCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1NFwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1hdHRyaWJ1dGVzICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTVcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktYXR0cmlidXRlcy1hbHQgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU2XCI7IH0gfVxuLmdseXBoaWNvbi11bmNoZWNrZWQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1N1wiOyB9IH1cbi5nbHlwaGljb24tZXhwYW5kICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNThcIjsgfSB9XG4uZ2x5cGhpY29uLWNvbGxhcHNlLWRvd24gICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU5XCI7IH0gfVxuLmdseXBoaWNvbi1jb2xsYXBzZS11cCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2MFwiOyB9IH1cbi5nbHlwaGljb24tbG9nLWluICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjFcIjsgfSB9XG4uZ2x5cGhpY29uLWZsYXNoICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYyXCI7IH0gfVxuLmdseXBoaWNvbi1sb2ctb3V0ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2M1wiOyB9IH1cbi5nbHlwaGljb24tbmV3LXdpbmRvdyAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjRcIjsgfSB9XG4uZ2x5cGhpY29uLXJlY29yZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY1XCI7IH0gfVxuLmdseXBoaWNvbi1zYXZlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2NlwiOyB9IH1cbi5nbHlwaGljb24tb3BlbiAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjdcIjsgfSB9XG4uZ2x5cGhpY29uLXNhdmVkICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY4XCI7IH0gfVxuLmdseXBoaWNvbi1pbXBvcnQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2OVwiOyB9IH1cbi5nbHlwaGljb24tZXhwb3J0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzBcIjsgfSB9XG4uZ2x5cGhpY29uLXNlbmQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTcxXCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktZGlzayAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3MlwiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LXNhdmVkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzNcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1yZW1vdmUgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc0XCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktc2F2ZSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3NVwiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LW9wZW4gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzZcIjsgfSB9XG4uZ2x5cGhpY29uLWNyZWRpdC1jYXJkICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc3XCI7IH0gfVxuLmdseXBoaWNvbi10cmFuc2ZlciAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3OFwiOyB9IH1cbi5nbHlwaGljb24tY3V0bGVyeSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzlcIjsgfSB9XG4uZ2x5cGhpY29uLWhlYWRlciAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgwXCI7IH0gfVxuLmdseXBoaWNvbi1jb21wcmVzc2VkICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4MVwiOyB9IH1cbi5nbHlwaGljb24tZWFycGhvbmUgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODJcIjsgfSB9XG4uZ2x5cGhpY29uLXBob25lLWFsdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgzXCI7IH0gfVxuLmdseXBoaWNvbi10b3dlciAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4NFwiOyB9IH1cbi5nbHlwaGljb24tc3RhdHMgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODVcIjsgfSB9XG4uZ2x5cGhpY29uLXNkLXZpZGVvICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg2XCI7IH0gfVxuLmdseXBoaWNvbi1oZC12aWRlbyAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4N1wiOyB9IH1cbi5nbHlwaGljb24tc3VidGl0bGVzICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODhcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLXN0ZXJlbyAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg5XCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC1kb2xieSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5MFwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtNS0xICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTFcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLTYtMSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkyXCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC03LTEgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5M1wiOyB9IH1cbi5nbHlwaGljb24tY29weXJpZ2h0LW1hcmsgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTRcIjsgfSB9XG4uZ2x5cGhpY29uLXJlZ2lzdHJhdGlvbi1tYXJrICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk1XCI7IH0gfVxuLmdseXBoaWNvbi1jbG91ZC1kb3dubG9hZCAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5N1wiOyB9IH1cbi5nbHlwaGljb24tY2xvdWQtdXBsb2FkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOThcIjsgfSB9XG4uZ2x5cGhpY29uLXRyZWUtY29uaWZlciAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk5XCI7IH0gfVxuLmdseXBoaWNvbi10cmVlLWRlY2lkdW91cyAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwMFwiOyB9IH1cbi5nbHlwaGljb24tY2QgICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDFcIjsgfSB9XG4uZ2x5cGhpY29uLXNhdmUtZmlsZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAyXCI7IH0gfVxuLmdseXBoaWNvbi1vcGVuLWZpbGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwM1wiOyB9IH1cbi5nbHlwaGljb24tbGV2ZWwtdXAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDRcIjsgfSB9XG4uZ2x5cGhpY29uLWNvcHkgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA1XCI7IH0gfVxuLmdseXBoaWNvbi1wYXN0ZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwNlwiOyB9IH1cbi8vIFRoZSBmb2xsb3dpbmcgMiBHbHlwaGljb25zIGFyZSBvbWl0dGVkIGZvciB0aGUgdGltZSBiZWluZyBiZWNhdXNlXG4vLyB0aGV5IGN1cnJlbnRseSB1c2UgVW5pY29kZSBjb2RlcG9pbnRzIHRoYXQgYXJlIG91dHNpZGUgdGhlXG4vLyBCYXNpYyBNdWx0aWxpbmd1YWwgUGxhbmUgKEJNUCkuIE9sZGVyIGJ1Z2d5IHZlcnNpb25zIG9mIFdlYktpdCBjYW4ndCBoYW5kbGVcbi8vIG5vbi1CTVAgY29kZXBvaW50cyBpbiBDU1Mgc3RyaW5nIGVzY2FwZXMsIGFuZCB0aHVzIGNhbid0IGRpc3BsYXkgdGhlc2UgdHdvIGljb25zLlxuLy8gTm90YWJseSwgdGhlIGJ1ZyBhZmZlY3RzIHNvbWUgb2xkZXIgdmVyc2lvbnMgb2YgdGhlIEFuZHJvaWQgQnJvd3Nlci5cbi8vIE1vcmUgaW5mbzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMDEwNlxuLy8gLmdseXBoaWNvbi1kb29yICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMWY2YWFcIjsgfSB9XG4vLyAuZ2x5cGhpY29uLWtleSAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwxZjUxMVwiOyB9IH1cbi5nbHlwaGljb24tYWxlcnQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDlcIjsgfSB9XG4uZ2x5cGhpY29uLWVxdWFsaXplciAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjEwXCI7IH0gfVxuLmdseXBoaWNvbi1raW5nICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxMVwiOyB9IH1cbi5nbHlwaGljb24tcXVlZW4gICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTJcIjsgfSB9XG4uZ2x5cGhpY29uLXBhd24gICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjEzXCI7IH0gfVxuLmdseXBoaWNvbi1iaXNob3AgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxNFwiOyB9IH1cbi5nbHlwaGljb24ta25pZ2h0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTVcIjsgfSB9XG4uZ2x5cGhpY29uLWJhYnktZm9ybXVsYSAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE2XCI7IH0gfVxuLmdseXBoaWNvbi10ZW50ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjZmYVwiOyB9IH1cbi5nbHlwaGljb24tYmxhY2tib2FyZCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMThcIjsgfSB9XG4uZ2x5cGhpY29uLWJlZCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE5XCI7IH0gfVxuLmdseXBoaWNvbi1hcHBsZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjhmZlwiOyB9IH1cbi5nbHlwaGljb24tZXJhc2UgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjFcIjsgfSB9XG4uZ2x5cGhpY29uLWhvdXJnbGFzcyAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMzFiXCI7IH0gfVxuLmdseXBoaWNvbi1sYW1wICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyM1wiOyB9IH1cbi5nbHlwaGljb24tZHVwbGljYXRlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjRcIjsgfSB9XG4uZ2x5cGhpY29uLXBpZ2d5LWJhbmsgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI1XCI7IH0gfVxuLmdseXBoaWNvbi1zY2lzc29ycyAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyNlwiOyB9IH1cbi5nbHlwaGljb24tYml0Y29pbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjdcIjsgfSB9XG4uZ2x5cGhpY29uLWJ0YyAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI3XCI7IH0gfVxuLmdseXBoaWNvbi14YnQgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyN1wiOyB9IH1cbi5nbHlwaGljb24teWVuICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDAwYTVcIjsgfSB9XG4uZ2x5cGhpY29uLWpweSAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwwMGE1XCI7IH0gfVxuLmdseXBoaWNvbi1ydWJsZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjBiZFwiOyB9IH1cbi5nbHlwaGljb24tcnViICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIwYmRcIjsgfSB9XG4uZ2x5cGhpY29uLXNjYWxlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMwXCI7IH0gfVxuLmdseXBoaWNvbi1pY2UtbG9sbHkgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzMVwiOyB9IH1cbi5nbHlwaGljb24taWNlLWxvbGx5LXRhc3RlZCAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzJcIjsgfSB9XG4uZ2x5cGhpY29uLWVkdWNhdGlvbiAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMzXCI7IH0gfVxuLmdseXBoaWNvbi1vcHRpb24taG9yaXpvbnRhbCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzNFwiOyB9IH1cbi5nbHlwaGljb24tb3B0aW9uLXZlcnRpY2FsICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzVcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtaGFtYnVyZ2VyICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM2XCI7IH0gfVxuLmdseXBoaWNvbi1tb2RhbC13aW5kb3cgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzN1wiOyB9IH1cbi5nbHlwaGljb24tb2lsICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzhcIjsgfSB9XG4uZ2x5cGhpY29uLWdyYWluICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM5XCI7IH0gfVxuLmdseXBoaWNvbi1zdW5nbGFzc2VzICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0MFwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC1zaXplICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDFcIjsgfSB9XG4uZ2x5cGhpY29uLXRleHQtY29sb3IgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQyXCI7IH0gfVxuLmdseXBoaWNvbi10ZXh0LWJhY2tncm91bmQgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0M1wiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLXRvcCAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDRcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1ib3R0b20gICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ1XCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24taG9yaXpvbnRhbHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0NlwiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLWxlZnQgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDdcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi12ZXJ0aWNhbCAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ4XCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tcmlnaHQgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0OVwiOyB9IH1cbi5nbHlwaGljb24tdHJpYW5nbGUtcmlnaHQgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTBcIjsgfSB9XG4uZ2x5cGhpY29uLXRyaWFuZ2xlLWxlZnQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjUxXCI7IH0gfVxuLmdseXBoaWNvbi10cmlhbmdsZS1ib3R0b20gICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1MlwiOyB9IH1cbi5nbHlwaGljb24tdHJpYW5nbGUtdG9wICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTNcIjsgfSB9XG4uZ2x5cGhpY29uLWNvbnNvbGUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU0XCI7IH0gfVxuLmdseXBoaWNvbi1zdXBlcnNjcmlwdCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1NVwiOyB9IH1cbi5nbHlwaGljb24tc3Vic2NyaXB0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTZcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtbGVmdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU3XCI7IH0gfVxuLmdseXBoaWNvbi1tZW51LXJpZ2h0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1OFwiOyB9IH1cbi5nbHlwaGljb24tbWVudS1kb3duICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTlcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtdXAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjYwXCI7IH0gfVxuIiwiLy9cbi8vIFNjYWZmb2xkaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIFJlc2V0IHRoZSBib3gtc2l6aW5nXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgcmVzZXQgbWF5IGNhdXNlIGNvbmZsaWN0cyB3aXRoIHNvbWUgdGhpcmQtcGFydHkgd2lkZ2V0cy5cbi8vIEZvciByZWNvbW1lbmRhdGlvbnMgb24gcmVzb2x2aW5nIHN1Y2ggY29uZmxpY3RzLCBzZWVcbi8vIGh0dHA6Ly9nZXRib290c3RyYXAuY29tL2dldHRpbmctc3RhcnRlZC8jdGhpcmQtYm94LXNpemluZ1xuKiB7XG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG59XG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xufVxuXG5cbi8vIEJvZHkgcmVzZXRcblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xufVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xufVxuXG4vLyBSZXNldCBmb250cyBmb3IgcmVsZXZhbnQgZWxlbWVudHNcbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuXG4vLyBMaW5rc1xuXG5hIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIHRhYi1mb2N1cztcbiAgfVxufVxuXG5cbi8vIEZpZ3VyZXNcbi8vXG4vLyBXZSByZXNldCB0aGlzIGhlcmUgYmVjYXVzZSBwcmV2aW91c2x5IE5vcm1hbGl6ZSBoYWQgbm8gYGZpZ3VyZWAgbWFyZ2lucy4gVGhpc1xuLy8gZW5zdXJlcyB3ZSBkb24ndCBicmVhayBhbnlvbmUncyB1c2Ugb2YgdGhlIGVsZW1lbnQuXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuXG4vLyBJbWFnZXNcblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4uaW1nLXJlc3BvbnNpdmUge1xuICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcbn1cblxuLy8gUm91bmRlZCBjb3JuZXJzXG4uaW1nLXJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbn1cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLy9cbi8vIEhlYWRzIHVwISBUaGlzIGlzIG1peGluLWVkIGludG8gdGh1bWJuYWlscy5sZXNzIGZvciBgLnRodW1ibmFpbGAuXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMnMgZWFzZS1pbi1vdXQpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZShpbmxpbmUtYmxvY2spO1xufVxuXG4vLyBQZXJmZWN0IGNpcmNsZVxuLmltZy1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7IC8vIHNldCByYWRpdXMgaW4gcGVyY2VudHNcbn1cblxuXG4vLyBIb3Jpem9udGFsIHJ1bGVzXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogICAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRoci1ib3JkZXI7XG59XG5cblxuLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHA6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cblxuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuLnNyLW9ubHktZm9jdXNhYmxlIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICB9XG59XG5cblxuLy8gaU9TIFwiY2xpY2thYmxlIGVsZW1lbnRzXCIgZml4IGZvciByb2xlPVwiYnV0dG9uXCJcbi8vXG4vLyBGaXhlcyBcImNsaWNrYWJpbGl0eVwiIGlzc3VlIChhbmQgbW9yZSBnZW5lcmFsbHksIHRoZSBmaXJpbmcgb2YgZXZlbnRzIHN1Y2ggYXMgZm9jdXMgYXMgd2VsbClcbi8vIGZvciB0cmFkaXRpb25hbGx5IG5vbi1mb2N1c2FibGUgZWxlbWVudHMgd2l0aCByb2xlPVwiYnV0dG9uXCJcbi8vIHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuLy8gVXBzdHJlYW0gcGF0Y2ggZm9yIG5vcm1hbGl6ZS5jc3Mgc3VibWl0dGVkOiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL3B1bGwvMzc5IC0gcmVtb3ZlIHRoaXMgZml4IG9uY2UgdGhhdCBpcyBtZXJnZWRcblxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59IiwiLy9cbi8vIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSGVhZGluZ3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRoZWFkaW5ncy1zbWFsbC1jb2xvcjtcbiAgfVxufVxuXG5oMSwgLmgxLFxuaDIsIC5oMixcbmgzLCAuaDMge1xuICBtYXJnaW4tdG9wOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcblxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDY1JTtcbiAgfVxufVxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgbWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG5cbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gIH1cbn1cblxuaDEsIC5oMSB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMTsgfVxuaDIsIC5oMiB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMjsgfVxuaDMsIC5oMyB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMzsgfVxuaDQsIC5oNCB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNDsgfVxuaDUsIC5oNSB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNTsgfVxuaDYsIC5oNiB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNjsgfVxuXG5cbi8vIEJvZHkgdGV4dFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5wIHtcbiAgbWFyZ2luOiAwIDAgKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xufVxuXG4ubGVhZCB7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zaXplOiBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMS4xNSkpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIH1cbn1cblxuXG4vLyBFbXBoYXNpcyAmIG1pc2Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRXg6ICgxMnB4IHNtYWxsIGZvbnQgLyAxNHB4IGJhc2UgZm9udCkgKiAxMDAlID0gYWJvdXQgODUlXG5zbWFsbCxcbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogZmxvb3IoKDEwMCUgKiAkZm9udC1zaXplLXNtYWxsIC8gJGZvbnQtc2l6ZS1iYXNlKSk7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzdGF0ZS13YXJuaW5nLWJnO1xuICBwYWRkaW5nOiAuMmVtO1xufVxuXG4vLyBBbGlnbm1lbnRcbi50ZXh0LWxlZnQgICAgICAgICAgIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuLnRleHQtcmlnaHQgICAgICAgICAgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuLnRleHQtY2VudGVyICAgICAgICAgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbi50ZXh0LWp1c3RpZnkgICAgICAgIHsgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuLnRleHQtbm93cmFwICAgICAgICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi8vIFRyYW5zZm9ybWF0aW9uXG4udGV4dC1sb3dlcmNhc2UgICAgICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cbi50ZXh0LXVwcGVyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuLnRleHQtY2FwaXRhbGl6ZSAgICAgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogJHRleHQtbXV0ZWQ7XG59XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtcHJpbWFyeScsICRicmFuZC1wcmltYXJ5KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1zdWNjZXNzJywgJHN0YXRlLXN1Y2Nlc3MtdGV4dCk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtaW5mbycsICRzdGF0ZS1pbmZvLXRleHQpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXdhcm5pbmcnLCAkc3RhdGUtd2FybmluZy10ZXh0KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1kYW5nZXInLCAkc3RhdGUtZGFuZ2VyLXRleHQpO1xuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG4vLyBGb3Igbm93IHdlJ2xsIGxlYXZlIHRoZXNlIGFsb25nc2lkZSB0aGUgdGV4dCBjbGFzc2VzIHVudGlsIHY0IHdoZW4gd2UgY2FuXG4vLyBzYWZlbHkgc2hpZnQgdGhpbmdzIGFyb3VuZCAocGVyIFNlbVZlciBydWxlcykuXG4uYmctcHJpbWFyeSB7XG4gIC8vIEdpdmVuIHRoZSBjb250cmFzdCBoZXJlLCB0aGlzIGlzIHRoZSBvbmx5IGNsYXNzIHRvIGhhdmUgaXRzIGNvbG9yIGludmVydGVkXG4gIC8vIGF1dG9tYXRpY2FsbHkuXG4gIGNvbG9yOiAjZmZmO1xufVxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXByaW1hcnknLCAkYnJhbmQtcHJpbWFyeSk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1zdWNjZXNzJywgJHN0YXRlLXN1Y2Nlc3MtYmcpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctaW5mbycsICRzdGF0ZS1pbmZvLWJnKTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXdhcm5pbmcnLCAkc3RhdGUtd2FybmluZy1iZyk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1kYW5nZXInLCAkc3RhdGUtZGFuZ2VyLWJnKTtcblxuXG4vLyBQYWdlIGhlYWRlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ucGFnZS1oZWFkZXIge1xuICBwYWRkaW5nLWJvdHRvbTogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIDEpO1xuICBtYXJnaW46ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKiAyKSAwICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I7XG59XG5cblxuLy8gTGlzdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gVW5vcmRlcmVkIGFuZCBPcmRlcmVkIGxpc3RzXG51bCxcbm9sIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICB1bCxcbiAgb2wge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8gTGlzdCBvcHRpb25zXG5cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBmcm9tIGAubGlzdC11bnN0eWxlZGAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYXMgYEBtaXhpbiBsaXN0LXVuc3R5bGVkYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG59XG5cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIH1cbn1cblxuLy8gRGVzY3JpcHRpb24gTGlzdHNcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDsgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdFxuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG59XG5kdCxcbmRkIHtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xufVxuZHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbmRkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG59XG5cbi8vIEhvcml6b250YWwgZGVzY3JpcHRpb24gbGlzdHNcbi8vXG4vLyBEZWZhdWx0cyB0byBiZWluZyBzdGFja2VkIHdpdGhvdXQgYW55IG9mIHRoZSBiZWxvdyBzdHlsZXMgYXBwbGllZCwgdW50aWwgdGhlXG4vLyBncmlkIGJyZWFrcG9pbnQgaXMgcmVhY2hlZCAoZGVmYXVsdCBvZiB+NzY4cHgpLlxuXG4uZGwtaG9yaXpvbnRhbCB7XG4gIGRkIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDsgLy8gQ2xlYXIgdGhlIGZsb2F0ZWQgYGR0YCBpZiBhbiBlbXB0eSBgZGRgIGlzIHByZXNlbnRcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZHQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogKCRkbC1ob3Jpem9udGFsLW9mZnNldCAtIDIwKTtcbiAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBAaW5jbHVkZSB0ZXh0LW92ZXJmbG93O1xuICAgIH1cbiAgICBkZCB7XG4gICAgICBtYXJnaW4tbGVmdDogJGRsLWhvcml6b250YWwtb2Zmc2V0O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE1pc2Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQWJicmV2aWF0aW9ucyBhbmQgYWNyb255bXNcbmFiYnJbdGl0bGVdLFxuLy8gQWRkIGRhdGEtKiBhdHRyaWJ1dGUgdG8gaGVscCBvdXQgb3VyIHRvb2x0aXAgcGx1Z2luLCBwZXIgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy81MjU3XG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHtcbiAgY3Vyc29yOiBoZWxwO1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICRhYmJyLWJvcmRlci1jb2xvcjtcbn1cbi5pbml0aWFsaXNtIHtcbiAgZm9udC1zaXplOiA5MCU7XG4gIEBleHRlbmQgLnRleHQtdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbjogMCAwICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zaXplOiAkYmxvY2txdW90ZS1mb250LXNpemU7XG4gIGJvcmRlci1sZWZ0OiA1cHggc29saWQgJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xuXG4gIHAsXG4gIHVsLFxuICBvbCB7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gTm90ZTogRGVwcmVjYXRlZCBzbWFsbCBhbmQgLnNtYWxsIGFzIG9mIHYzLjEuMFxuICAvLyBDb250ZXh0OiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjYwXG4gIGZvb3RlcixcbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiA4MCU7IC8vIGJhY2sgdG8gZGVmYXVsdCBmb250LXNpemVcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgY29sb3I6ICRibG9ja3F1b3RlLXNtYWxsLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAxNCBcXDAwQTAnOyAvLyBlbSBkYXNoLCBuYnNwXG4gICAgfVxuICB9XG59XG5cbi8vIE9wcG9zaXRlIGFsaWdubWVudCBvZiBibG9ja3F1b3RlXG4vL1xuLy8gSGVhZHMgdXA6IGBibG9ja3F1b3RlLnB1bGwtcmlnaHRgIGhhcyBiZWVuIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMS4wLlxuLmJsb2NrcXVvdGUtcmV2ZXJzZSxcbmJsb2NrcXVvdGUucHVsbC1yaWdodCB7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgYm9yZGVyLXJpZ2h0OiA1cHggc29saWQgJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItbGVmdDogMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgLy8gQWNjb3VudCBmb3IgY2l0YXRpb25cbiAgZm9vdGVyLFxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICAmOmJlZm9yZSB7IGNvbnRlbnQ6ICcnOyB9XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnXFwwMEEwIFxcMjAxNCc7IC8vIG5ic3AsIGVtIGRhc2hcbiAgICB9XG4gIH1cbn1cblxuLy8gQWRkcmVzc2VzXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbn1cbiIsIi8vXG4vLyBDb2RlIChpbmxpbmUgYW5kIGJsb2NrKVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBJbmxpbmUgYW5kIGJsb2NrIGNvZGUgc3R5bGVzXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xufVxuXG4vLyBJbmxpbmUgY29kZVxuY29kZSB7XG4gIHBhZGRpbmc6IDJweCA0cHg7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xufVxuXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxua2JkIHtcbiAgcGFkZGluZzogMnB4IDRweDtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgcmdiYSgwLDAsMCwuMjUpO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuXG4vLyBCbG9ja3Mgb2YgY29kZVxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gMSkgLyAyKTtcbiAgbWFyZ2luOiAwIDAgKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgLSAxKTsgLy8gMTRweCB0byAxM3B4XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJlLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkcHJlLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbiIsIi8vXG4vLyBHcmlkIHN5c3RlbVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG4uY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyLWZpeGVkO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIHdpZHRoOiAkY29udGFpbmVyLXNtO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIHdpZHRoOiAkY29udGFpbmVyLW1kO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIHdpZHRoOiAkY29udGFpbmVyLWxnO1xuICB9XG59XG5cblxuLy8gRmx1aWQgY29udGFpbmVyXG4vL1xuLy8gVXRpbGl6ZXMgdGhlIG1peGluIG1lYW50IGZvciBmaXhlZCB3aWR0aCBjb250YWluZXJzLCBidXQgd2l0aG91dCBhbnkgZGVmaW5lZFxuLy8gd2lkdGggZm9yIGZsdWlkLCBmdWxsIHdpZHRoIGxheW91dHMuXG5cbi5jb250YWluZXItZmx1aWQge1xuICBAaW5jbHVkZSBjb250YWluZXItZml4ZWQ7XG59XG5cblxuLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIGFuZCBjbGVhciB0aGUgZmxvYXRzIG9mIHlvdXIgY29sdW1ucy5cblxuLnJvdyB7XG4gIEBpbmNsdWRlIG1ha2Utcm93O1xufVxuXG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zO1xuXG5cbi8vIEV4dHJhIHNtYWxsIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgZXh0cmEgc21hbGwgZGV2aWNlcyBsaWtlXG4vLyBzbWFydHBob25lcy5cblxuQGluY2x1ZGUgbWFrZS1ncmlkKHhzKTtcblxuXG4vLyBTbWFsbCBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBzbWFsbCBkZXZpY2UgcmFuZ2UsIGZyb20gcGhvbmVzXG4vLyB0byB0YWJsZXRzLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKHNtKTtcbn1cblxuXG4vLyBNZWRpdW0gZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgZGVza3RvcCBkZXZpY2UgcmFuZ2UuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQobWQpO1xufVxuXG5cbi8vIExhcmdlIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIGxhcmdlIGRlc2t0b3AgZGV2aWNlIHJhbmdlLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKGxnKTtcbn1cbiIsIi8vXG4vLyBUYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmc7XG59XG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG50aCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cblxuLy8gQmFzZWxpbmUgc3R5bGVzXG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgLy8gQ2VsbHNcbiAgPiB0aGVhZCxcbiAgPiB0Ym9keSxcbiAgPiB0Zm9vdCB7XG4gICAgPiB0ciB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIEJvdHRvbSBhbGlnbiBmb3IgY29sdW1uIGhlYWRpbmdzXG4gID4gdGhlYWQgPiB0ciA+IHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG4gIC8vIFJlbW92ZSB0b3AgYm9yZGVyIGZyb20gdGhlYWQgYnkgZGVmYXVsdFxuICA+IGNhcHRpb24gKyB0aGVhZCxcbiAgPiBjb2xncm91cCArIHRoZWFkLFxuICA+IHRoZWFkOmZpcnN0LWNoaWxkIHtcbiAgICA+IHRyOmZpcnN0LWNoaWxkIHtcbiAgICAgID4gdGgsXG4gICAgICA+IHRkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gQWNjb3VudCBmb3IgbXVsdGlwbGUgdGJvZHkgaW5zdGFuY2VzXG4gID4gdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAvLyBOZXN0aW5nXG4gIC50YWJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG4gIH1cbn1cblxuXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG5cbi50YWJsZS1jb25kZW5zZWQge1xuICA+IHRoZWFkLFxuICA+IHRib2R5LFxuICA+IHRmb290IHtcbiAgICA+IHRyIHtcbiAgICAgID4gdGgsXG4gICAgICA+IHRkIHtcbiAgICAgICAgcGFkZGluZzogJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gQm9yZGVyZWQgdmVyc2lvblxuLy9cbi8vIEFkZCBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgPiB0aGVhZCxcbiAgPiB0Ym9keSxcbiAgPiB0Zm9vdCB7XG4gICAgPiB0ciB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gdGhlYWQgPiB0ciB7XG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZy1hY2NlbnQ7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gID4gdGJvZHkgPiB0cjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnLWhvdmVyO1xuICB9XG59XG5cblxuLy8gVGFibGUgY2VsbCBzaXppbmdcbi8vXG4vLyBSZXNldCBkZWZhdWx0IHRhYmxlIGJlaGF2aW9yXG5cbnRhYmxlIGNvbFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgcG9zaXRpb246IHN0YXRpYzsgLy8gUHJldmVudCBib3JkZXIgaGlkaW5nIGluIEZpcmVmb3ggYW5kIElFOS0xMSAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2MjMpXG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiB0YWJsZS1jb2x1bW47XG59XG50YWJsZSB7XG4gIHRkLFxuICB0aCB7XG4gICAgJltjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IC8vIFByZXZlbnQgYm9yZGVyIGhpZGluZyBpbiBGaXJlZm94IGFuZCBJRTktMTEgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjIzKVxuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRhYmxlIGJhY2tncm91bmRzXG4vL1xuLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG5cbi8vIEdlbmVyYXRlIHRoZSBjb250ZXh0dWFsIHZhcmlhbnRzXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnYWN0aXZlJywgJHRhYmxlLWJnLWFjdGl2ZSk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnc3VjY2VzcycsICRzdGF0ZS1zdWNjZXNzLWJnKTtcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCdpbmZvJywgJHN0YXRlLWluZm8tYmcpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ3dhcm5pbmcnLCAkc3RhdGUtd2FybmluZy1iZyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnZGFuZ2VyJywgJHN0YXRlLWRhbmdlci1iZyk7XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBXcmFwIHlvdXIgdGFibGVzIGluIGAudGFibGUtcmVzcG9uc2l2ZWAgYW5kIHdlJ2xsIG1ha2UgdGhlbSBtb2JpbGUgZnJpZW5kbHlcbi8vIGJ5IGVuYWJsaW5nIGhvcml6b250YWwgc2Nyb2xsaW5nLiBPbmx5IGFwcGxpZXMgPDc2OHB4LiBFdmVyeXRoaW5nIGFib3ZlIHRoYXRcbi8vIHdpbGwgZGlzcGxheSBub3JtYWxseS5cblxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBtaW4taGVpZ2h0OiAwLjAxJTsgLy8gV29ya2Fyb3VuZCBmb3IgSUU5IGJ1ZyAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTQ4MzcpXG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICogMC43NSk7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG5cbiAgICAvLyBUaWdodGVuIHVwIHNwYWNpbmdcbiAgICA+IC50YWJsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAvLyBFbnN1cmUgdGhlIGNvbnRlbnQgZG9lc24ndCB3cmFwXG4gICAgICA+IHRoZWFkLFxuICAgICAgPiB0Ym9keSxcbiAgICAgID4gdGZvb3Qge1xuICAgICAgICA+IHRyIHtcbiAgICAgICAgICA+IHRoLFxuICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTcGVjaWFsIG92ZXJyaWRlcyBmb3IgdGhlIGJvcmRlcmVkIHRhYmxlc1xuICAgID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIGJvcmRlcjogMDtcblxuICAgICAgLy8gTnVrZSB0aGUgYXBwcm9wcmlhdGUgYm9yZGVycyBzbyB0aGF0IHRoZSBwYXJlbnQgY2FuIGhhbmRsZSB0aGVtXG4gICAgICA+IHRoZWFkLFxuICAgICAgPiB0Ym9keSxcbiAgICAgID4gdGZvb3Qge1xuICAgICAgICA+IHRyIHtcbiAgICAgICAgICA+IHRoOmZpcnN0LWNoaWxkLFxuICAgICAgICAgID4gdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgID4gdGg6bGFzdC1jaGlsZCxcbiAgICAgICAgICA+IHRkOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBPbmx5IG51a2UgdGhlIGxhc3Qgcm93J3MgYm90dG9tLWJvcmRlciBpbiBgdGJvZHlgIGFuZCBgdGZvb3RgIHNpbmNlXG4gICAgICAvLyBjaGFuY2VzIGFyZSB0aGVyZSB3aWxsIGJlIG9ubHkgb25lIGB0cmAgaW4gYSBgdGhlYWRgIGFuZCB0aGF0IHdvdWxkXG4gICAgICAvLyByZW1vdmUgdGhlIGJvcmRlciBhbHRvZ2V0aGVyLlxuICAgICAgPiB0Ym9keSxcbiAgICAgID4gdGZvb3Qge1xuICAgICAgICA+IHRyOmxhc3QtY2hpbGQge1xuICAgICAgICAgID4gdGgsXG4gICAgICAgICAgPiB0ZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gRm9ybXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gTm9ybWFsaXplIG5vbi1jb250cm9sc1xuLy9cbi8vIFJlc3R5bGUgYW5kIGJhc2VsaW5lIG5vbi1jb250cm9sIGZvcm0gZWxlbWVudHMuXG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG4gIC8vIENocm9tZSBhbmQgRmlyZWZveCBzZXQgYSBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gc28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgaXQgYmVoYXZlcyBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OS5cbiAgbWluLXdpZHRoOiAwO1xufVxuXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlICogMS41KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAkbGVnZW5kLWNvbG9yO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGVnZW5kLWJvcmRlci1jb2xvcjtcbn1cblxubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gRm9yY2UgSUU4IHRvIHdyYXAgbG9uZyBjb250ZW50IChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMzE0MSlcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuXG4vLyBOb3JtYWxpemUgZm9ybSBjb250cm9sc1xuLy9cbi8vIFdoaWxlIG1vc3Qgb2Ygb3VyIGZvcm0gc3R5bGVzIHJlcXVpcmUgZXh0cmEgY2xhc3Nlcywgc29tZSBiYXNpYyBub3JtYWxpemF0aW9uXG4vLyBpcyByZXF1aXJlZCB0byBlbnN1cmUgb3B0aW11bSBkaXNwbGF5IHdpdGggb3Igd2l0aG91dCB0aG9zZSBjbGFzc2VzIHRvIGJldHRlclxuLy8gYWRkcmVzcyBicm93c2VyIGluY29uc2lzdGVuY2llcy5cblxuLy8gT3ZlcnJpZGUgY29udGVudC1ib3ggaW4gTm9ybWFsaXplICgqIGlzbid0IHNwZWNpZmljIGVub3VnaClcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xufVxuXG4vLyBQb3NpdGlvbiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgYmV0dGVyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBtYXJnaW46IDRweCAwIDA7XG4gIG1hcmdpbi10b3A6IDFweCBcXDk7IC8vIElFOC05XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8vIFNldCB0aGUgaGVpZ2h0IG9mIGZpbGUgY29udHJvbHMgdG8gbWF0Y2ggdGV4dCBpbnB1dHNcbmlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIE1ha2UgcmFuZ2UgaW5wdXRzIGJlaGF2ZSBsaWtlIHRleHR1YWwgZm9ybSBjb250cm9sc1xuaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBNYWtlIG11bHRpcGxlIHNlbGVjdCBlbGVtZW50cyBoZWlnaHQgbm90IGZpeGVkXG5zZWxlY3RbbXVsdGlwbGVdLFxuc2VsZWN0W3NpemVdIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyBGb2N1cyBmb3IgZmlsZSwgcmFkaW8sIGFuZCBjaGVja2JveFxuaW5wdXRbdHlwZT1cImZpbGVcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMge1xuICBAaW5jbHVkZSB0YWItZm9jdXM7XG59XG5cbi8vIEFkanVzdCBvdXRwdXQgZWxlbWVudFxub3V0cHV0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xufVxuXG5cbi8vIENvbW1vbiBmb3JtIGNvbnRyb2xzXG4vL1xuLy8gU2hhcmVkIHNpemUgYW5kIHR5cGUgcmVzZXRzIGZvciBmb3JtIGNvbnRyb2xzLiBBcHBseSBgLmZvcm0tY29udHJvbGAgdG8gYW55XG4vLyBvZiB0aGUgZm9sbG93aW5nIGZvcm0gY29udHJvbHM6XG4vL1xuLy8gc2VsZWN0XG4vLyB0ZXh0YXJlYVxuLy8gaW5wdXRbdHlwZT1cInRleHRcIl1cbi8vIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXVxuLy8gaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl1cbi8vIGlucHV0W3R5cGU9XCJkYXRlXCJdXG4vLyBpbnB1dFt0eXBlPVwibW9udGhcIl1cbi8vIGlucHV0W3R5cGU9XCJ0aW1lXCJdXG4vLyBpbnB1dFt0eXBlPVwid2Vla1wiXVxuLy8gaW5wdXRbdHlwZT1cIm51bWJlclwiXVxuLy8gaW5wdXRbdHlwZT1cImVtYWlsXCJdXG4vLyBpbnB1dFt0eXBlPVwidXJsXCJdXG4vLyBpbnB1dFt0eXBlPVwic2VhcmNoXCJdXG4vLyBpbnB1dFt0eXBlPVwidGVsXCJdXG4vLyBpbnB1dFt0eXBlPVwiY29sb3JcIl1cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7IC8vIE1ha2UgaW5wdXRzIGF0IGxlYXN0IHRoZSBoZWlnaHQgb2YgdGhlaXIgYnV0dG9uIGNvdW50ZXJwYXJ0IChiYXNlIGxpbmUtaGVpZ2h0ICsgcGFkZGluZyArIGJvcmRlcilcbiAgcGFkZGluZzogJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAkcGFkZGluZy1iYXNlLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MvaXNzdWVzLzIxNFxuICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1czsgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgPHNlbGVjdD5zIGluIENTUy5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IC4xNXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgLjE1cyk7XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXM7XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgQGluY2x1ZGUgcGxhY2Vob2xkZXI7XG5cbiAgLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmW2Rpc2FibGVkXSxcbiAgJltyZWFkb25seV0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmctZGlzYWJsZWQ7XG4gICAgb3BhY2l0eTogMTsgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NVxuICB9XG5cbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgdGV4dGFyZWEmIHRvIHRleHRhcmVhLmZvcm0tY29udHJvbFxufVxuXG4vLyBSZXNldCBoZWlnaHQgZm9yIGB0ZXh0YXJlYWBzXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gU2VhcmNoIGlucHV0cyBpbiBpT1Ncbi8vXG4vLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4vLyBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbi8vIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cblxuLy8gU3BlY2lhbCBzdHlsZXMgZm9yIGlPUyB0ZW1wb3JhbCBpbnB1dHNcbi8vXG4vLyBJbiBNb2JpbGUgU2FmYXJpLCBzZXR0aW5nIGBkaXNwbGF5OiBibG9ja2Agb24gdGVtcG9yYWwgaW5wdXRzIGNhdXNlcyB0aGVcbi8vIHRleHQgd2l0aGluIHRoZSBpbnB1dCB0byBiZWNvbWUgdmVydGljYWxseSBtaXNhbGlnbmVkLiBBcyBhIHdvcmthcm91bmQsIHdlXG4vLyBzZXQgYSBwaXhlbCBsaW5lLWhlaWdodCB0aGF0IG1hdGNoZXMgdGhlIGdpdmVuIGhlaWdodCBvZiB0aGUgaW5wdXQsIGJ1dCBvbmx5XG4vLyBmb3IgU2FmYXJpLiBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTg0OFxuXG5AbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAwKSB7XG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICBpbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7XG5cbiAgICAmLmlucHV0LXNtLFxuICAgIC5pbnB1dC1ncm91cC1zbSAmIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIH1cblxuICAgICYuaW5wdXQtbGcsXG4gICAgLmlucHV0LWdyb3VwLWxnICYge1xuICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gICAgfVxuICB9XG59XG5cblxuLy8gRm9ybSBncm91cHNcbi8vXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXG4vLyBob3Jpem9udGFsIGZvcm1zLCB1c2UgdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLlxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b207XG59XG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gSW5kZW50IHRoZSBsYWJlbHMgdG8gcG9zaXRpb24gcmFkaW9zL2NoZWNrYm94ZXMgYXMgaGFuZ2luZyBjb250cm9scy5cblxuLnJhZGlvLFxuLmNoZWNrYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICBsYWJlbCB7XG4gICAgbWluLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOyAvLyBFbnN1cmUgdGhlIGlucHV0IGRvZXNuJ3QganVtcCB3aGVuIHRoZXJlIGlzIG5vIHRleHRcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbi5yYWRpby1pbmxpbmUgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbi5jaGVja2JveC1pbmxpbmUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gIG1hcmdpbi10b3A6IDRweCBcXDk7XG59XG5cbi5yYWRpbyArIC5yYWRpbyxcbi5jaGVja2JveCArIC5jaGVja2JveCB7XG4gIG1hcmdpbi10b3A6IC01cHg7IC8vIE1vdmUgdXAgc2libGluZyByYWRpb3Mgb3IgY2hlY2tib3hlcyBmb3IgdGlnaHRlciBzcGFjaW5nXG59XG5cbi8vIFJhZGlvcyBhbmQgY2hlY2tib3hlcyBvbiBzYW1lIGxpbmVcbi5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnJhZGlvLWlubGluZSArIC5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lICsgLmNoZWNrYm94LWlubGluZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4OyAvLyBzcGFjZSBvdXQgY29uc2VjdXRpdmUgaW5saW5lIGNvbnRyb2xzXG59XG5cbi8vIEFwcGx5IHNhbWUgZGlzYWJsZWQgY3Vyc29yIHR3ZWFrIGFzIGZvciBpbnB1dHNcbi8vIFNvbWUgc3BlY2lhbCBjYXJlIGlzIG5lZWRlZCBiZWNhdXNlIDxsYWJlbD5zIGRvbid0IGluaGVyaXQgdGhlaXIgcGFyZW50J3MgYGN1cnNvcmAuXG4vL1xuLy8gTm90ZTogTmVpdGhlciByYWRpb3Mgbm9yIGNoZWNrYm94ZXMgY2FuIGJlIHJlYWRvbmx5LlxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cbn1cbi8vIFRoZXNlIGNsYXNzZXMgYXJlIHVzZWQgZGlyZWN0bHkgb24gPGxhYmVsPnNcbi5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lIHtcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxufVxuLy8gVGhlc2UgY2xhc3NlcyBhcmUgdXNlZCBvbiBlbGVtZW50cyB3aXRoIDxsYWJlbD4gZGVzY2VuZGFudHNcbi5yYWRpbyxcbi5jaGVja2JveCB7XG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBsYWJlbCB7XG4gICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8gU3RhdGljIGZvcm0gY29udHJvbCB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSBgcGAgZWxlbWVudCB0byBtYWtlIGFueSBzdHJpbmcgb2YgdGV4dCBhbGlnbiB3aXRoIGxhYmVscyBpblxuLy8gYSBob3Jpem9udGFsIGZvcm0gbGF5b3V0LlxuXG4uZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gIC8vIFNpemUgaXQgYXBwcm9wcmlhdGVseSBuZXh0IHRvIHJlYWwgZm9ybSBjb250cm9sc1xuICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTtcbiAgcGFkZGluZy1ib3R0b206ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XG4gIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBmcm9tIGBwYFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1iYXNlKTtcblxuICAmLmlucHV0LWxnLFxuICAmLmlucHV0LXNtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBUaGUgYC5mb3JtLWdyb3VwLSogZm9ybS1jb250cm9sYCB2YXJpYXRpb25zIGFyZSBzYWRseSBkdXBsaWNhdGVkIHRvIGF2b2lkIHRoZVxuLy8gaXNzdWUgZG9jdW1lbnRlZCBpbiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE1MDc0LlxuXG5AaW5jbHVkZSBpbnB1dC1zaXplKCcuaW5wdXQtc20nLCAkaW5wdXQtaGVpZ2h0LXNtYWxsLCAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG4uZm9ybS1ncm91cC1zbSB7XG5cbiAgQGluY2x1ZGUgaW5wdXQtc2l6ZSgnLmZvcm0tY29udHJvbCcsICRpbnB1dC1oZWlnaHQtc21hbGwsICRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkbGluZS1oZWlnaHQtc21hbGwsICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsKTtcblxuICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtc21hbGw7XG4gICAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICRmb250LXNpemUtc21hbGwpO1xuICB9XG59XG5cbkBpbmNsdWRlIGlucHV0LXNpemUoJy5pbnB1dC1sZycsICRpbnB1dC1oZWlnaHQtbGFyZ2UsICRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWxhcmdlLCAkbGluZS1oZWlnaHQtbGFyZ2UsICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlKTtcbi5mb3JtLWdyb3VwLWxnIHtcblxuICBAaW5jbHVkZSBpbnB1dC1zaXplKCcuZm9ybS1jb250cm9sJywgJGlucHV0LWhlaWdodC1sYXJnZSwgJHBhZGRpbmctbGFyZ2UtdmVydGljYWwsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRmb250LXNpemUtbGFyZ2UsICRsaW5lLWhlaWdodC1sYXJnZSwgJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2UpO1xuXG4gIC5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gICAgcGFkZGluZzogJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sYXJnZTtcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1sYXJnZSk7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgZmVlZGJhY2sgc3RhdGVzXG4vL1xuLy8gQXBwbHkgY29udGV4dHVhbCBhbmQgc2VtYW50aWMgc3RhdGVzIHRvIGluZGl2aWR1YWwgZm9ybSBjb250cm9scy5cblxuLmhhcy1mZWVkYmFjayB7XG4gIC8vIEVuYWJsZSBhYnNvbHV0ZSBwb3NpdGlvbmluZ1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLy8gRW5zdXJlIGljb25zIGRvbid0IG92ZXJsYXAgdGV4dFxuICAuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAoJGlucHV0LWhlaWdodC1iYXNlICogMS4yNSk7XG4gIH1cbn1cbi8vIEZlZWRiYWNrIGljb24gKHJlcXVpcmVzIC5nbHlwaGljb24gY2xhc3Nlcylcbi5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDI7IC8vIEVuc3VyZSBpY29uIGlzIGFib3ZlIGlucHV0IGdyb3Vwc1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uaW5wdXQtbGcgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgd2lkdGg6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG59XG4uaW5wdXQtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgd2lkdGg6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG59XG5cbi8vIEZlZWRiYWNrIHN0YXRlc1xuLmhhcy1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHN0YXRlLXN1Y2Nlc3MtdGV4dCwgJHN0YXRlLXN1Y2Nlc3MtdGV4dCwgJHN0YXRlLXN1Y2Nlc3MtYmcpO1xufVxuLmhhcy13YXJuaW5nIHtcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHN0YXRlLXdhcm5pbmctdGV4dCwgJHN0YXRlLXdhcm5pbmctdGV4dCwgJHN0YXRlLXdhcm5pbmctYmcpO1xufVxuLmhhcy1lcnJvciB7XG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRzdGF0ZS1kYW5nZXItdGV4dCwgJHN0YXRlLWRhbmdlci10ZXh0LCAkc3RhdGUtZGFuZ2VyLWJnKTtcbn1cblxuLy8gUmVwb3NpdGlvbiBmZWVkYmFjayBpY29uIGlmIGlucHV0IGhhcyB2aXNpYmxlIGxhYmVsIGFib3ZlXG4uaGFzLWZlZWRiYWNrIGxhYmVsIHtcblxuICAmIH4gLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgIHRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArIDUpOyAvLyBIZWlnaHQgb2YgdGhlIGBsYWJlbGAgYW5kIGl0cyBtYXJnaW5cbiAgfVxuICAmLnNyLW9ubHkgfiAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICAgdG9wOiAwO1xuICB9XG59XG5cblxuLy8gSGVscCB0ZXh0XG4vL1xuLy8gQXBwbHkgdG8gYW55IGVsZW1lbnQgeW91IHdpc2ggdG8gY3JlYXRlIGxpZ2h0IHRleHQgZm9yIHBsYWNlbWVudCBpbW1lZGlhdGVseVxuLy8gYmVsb3cgYSBmb3JtIGNvbnRyb2wuIFVzZSBmb3IgZ2VuZXJhbCBoZWxwLCBmb3JtYXR0aW5nLCBvciBpbnN0cnVjdGlvbmFsIHRleHQuXG5cbi5oZWxwLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7IC8vIGFjY291bnQgZm9yIGFueSBlbGVtZW50IHVzaW5nIGhlbHAtYmxvY2tcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjb2xvcjogbGlnaHRlbigkdGV4dC1jb2xvciwgMjUlKTsgLy8gbGlnaHRlbiB0aGUgdGV4dCBzb21lIGZvciBjb250cmFzdFxufVxuXG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgaXMgbWl4aW4tZWQgaW50byBgLm5hdmJhci1mb3JtYCBpbiBuYXZiYXJzLmxlc3MuXG5cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBmcm9tIGAuZm9ybS1pbmxpbmVgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcbkBtaXhpbiBmb3JtLWlubGluZSB7XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIEluIG5hdmJhci1mb3JtLCBhbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAuaW5wdXQtZ3JvdXAtYWRkb24sXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuLFxuICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElucHV0IGdyb3VwcyBuZWVkIHRoYXQgMTAwJSB3aWR0aCB0aG91Z2hcbiAgICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5yYWRpbyxcbiAgICAuY2hlY2tib3gge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICAuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC8vIFJlLW92ZXJyaWRlIHRoZSBmZWVkYmFjayBpY29uLlxuICAgIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG59XG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYXMgYEBtaXhpbiBmb3JtLWlubGluZWAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuLmZvcm0taW5saW5lIHtcbiAgQGluY2x1ZGUgZm9ybS1pbmxpbmU7XG59XG5cblxuXG4vLyBIb3Jpem9udGFsIGZvcm1zXG4vL1xuLy8gSG9yaXpvbnRhbCBmb3JtcyBhcmUgYnVpbHQgb24gZ3JpZCBjbGFzc2VzIGFuZCBhbGxvdyB5b3UgdG8gY3JlYXRlIGZvcm1zIHdpdGhcbi8vIGxhYmVscyBvbiB0aGUgbGVmdCBhbmQgaW5wdXRzIG9uIHRoZSByaWdodC5cblxuLmZvcm0taG9yaXpvbnRhbCB7XG5cbiAgLy8gQ29uc2lzdGVudCB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzXG4gIC8vXG4gIC8vIExhYmVscyBhbHNvIGdldCBzb21lIHJlc2V0IHN0eWxlcywgYnV0IHRoYXQgaXMgc2NvcGVkIHRvIGEgbWVkaWEgcXVlcnkgYmVsb3cuXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94LFxuICAucmFkaW8taW5saW5lLFxuICAuY2hlY2tib3gtaW5saW5lIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7IC8vIERlZmF1bHQgcGFkZGluZyBwbHVzIGEgYm9yZGVyXG4gIH1cbiAgLy8gQWNjb3VudCBmb3IgcGFkZGluZyB3ZSdyZSBhZGRpbmcgdG8gZW5zdXJlIHRoZSBhbGlnbm1lbnQgYW5kIG9mIGhlbHAgdGV4dFxuICAvLyBhbmQgb3RoZXIgY29udGVudCBiZWxvdyBpdGVtc1xuICAucmFkaW8sXG4gIC5jaGVja2JveCB7XG4gICAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSkpO1xuICB9XG5cbiAgLy8gTWFrZSBmb3JtIGdyb3VwcyBiZWhhdmUgbGlrZSByb3dzXG4gIC5mb3JtLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdztcbiAgfVxuXG4gIC8vIFJlc2V0IHNwYWNpbmcgYW5kIHJpZ2h0IGFsaWduIGxhYmVscywgYnV0IHNjb3BlIHRvIG1lZGlhIHF1ZXJpZXMgc28gdGhhdFxuICAvLyBsYWJlbHMgb24gbmFycm93IHZpZXdwb3J0cyBzdGFjayB0aGUgc2FtZSBhcyBhIGRlZmF1bHQgZm9ybSBleGFtcGxlLlxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAuY29udHJvbC1sYWJlbCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTsgLy8gRGVmYXVsdCBwYWRkaW5nIHBsdXMgYSBib3JkZXJcbiAgICB9XG4gIH1cblxuICAvLyBWYWxpZGF0aW9uIHN0YXRlc1xuICAvL1xuICAvLyBSZXBvc2l0aW9uIHRoZSBpY29uIGJlY2F1c2UgaXQncyBub3cgd2l0aGluIGEgZ3JpZCBjb2x1bW4gYW5kIGNvbHVtbnMgaGF2ZVxuICAvLyBgcG9zaXRpb246IHJlbGF0aXZlO2Agb24gdGhlbS4gQWxzbyBhY2NvdW50cyBmb3IgdGhlIGdyaWQgZ3V0dGVyIHBhZGRpbmcuXG4gIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgcmlnaHQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgfVxuXG4gIC8vIEZvcm0gZ3JvdXAgc2l6ZXNcbiAgLy9cbiAgLy8gUXVpY2sgdXRpbGl0eSBjbGFzcyBmb3IgYXBwbHlpbmcgYC5pbnB1dC1sZ2AgYW5kIGAuaW5wdXQtc21gIHN0eWxlcyB0byB0aGVcbiAgLy8gaW5wdXRzIGFuZCBsYWJlbHMgd2l0aGluIGEgYC5mb3JtLWdyb3VwYC5cbiAgLmZvcm0tZ3JvdXAtbGcge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgICBwYWRkaW5nLXRvcDogKCgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqICRsaW5lLWhlaWdodC1sYXJnZSkgKyAxKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm0tZ3JvdXAtc20ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICsgMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gRm9yIGlucHV0LmJ0blxuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy1iYXNlLXZlcnRpY2FsLCAkcGFkZGluZy1iYXNlLWhvcml6b250YWwsICRmb250LXNpemUtYmFzZSwgJGxpbmUtaGVpZ2h0LWJhc2UsICRib3JkZXItcmFkaXVzLWJhc2UpO1xuICBAaW5jbHVkZSB1c2VyLXNlbGVjdChub25lKTtcblxuICAmLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBAaW5jbHVkZSB0YWItZm9jdXM7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6ICRidG4tZGVmYXVsdC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgM3B4IDVweCByZ2JhKDAsMCwwLC4xMjUpKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyAvLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrc1xuICAgIEBpbmNsdWRlIG9wYWNpdHkoLjY1KTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tZGVmYXVsdCB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tZGVmYXVsdC1jb2xvciwgJGJ0bi1kZWZhdWx0LWJnLCAkYnRuLWRlZmF1bHQtYm9yZGVyKTtcbn1cbi5idG4tcHJpbWFyeSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tcHJpbWFyeS1jb2xvciwgJGJ0bi1wcmltYXJ5LWJnLCAkYnRuLXByaW1hcnktYm9yZGVyKTtcbn1cbi8vIFN1Y2Nlc3MgYXBwZWFycyBhcyBncmVlblxuLmJ0bi1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1zdWNjZXNzLWNvbG9yLCAkYnRuLXN1Y2Nlc3MtYmcsICRidG4tc3VjY2Vzcy1ib3JkZXIpO1xufVxuLy8gSW5mbyBhcHBlYXJzIGFzIGJsdWUtZ3JlZW5cbi5idG4taW5mbyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4taW5mby1jb2xvciwgJGJ0bi1pbmZvLWJnLCAkYnRuLWluZm8tYm9yZGVyKTtcbn1cbi8vIFdhcm5pbmcgYXBwZWFycyBhcyBvcmFuZ2Vcbi5idG4td2FybmluZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4td2FybmluZy1jb2xvciwgJGJ0bi13YXJuaW5nLWJnLCAkYnRuLXdhcm5pbmctYm9yZGVyKTtcbn1cbi8vIERhbmdlciBhbmQgZXJyb3IgYXBwZWFyIGFzIHJlZFxuLmJ0bi1kYW5nZXIge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWRhbmdlci1jb2xvciwgJGJ0bi1kYW5nZXItYmcsICRidG4tZGFuZ2VyLWJvcmRlcik7XG59XG5cblxuLy8gTGluayBidXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgJixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJ1dHRvbiBTaXplc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1sZyB7XG4gIC8vIGxpbmUtaGVpZ2h0OiBlbnN1cmUgZXZlbi1udW1iZXJlZCBoZWlnaHQgb2YgYnV0dG9uIG5leHQgdG8gbGFyZ2UgaW5wdXRcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRmb250LXNpemUtbGFyZ2UsICRsaW5lLWhlaWdodC1sYXJnZSwgJGJvcmRlci1yYWRpdXMtbGFyZ2UpO1xufVxuLmJ0bi1zbSB7XG4gIC8vIGxpbmUtaGVpZ2h0OiBlbnN1cmUgcHJvcGVyIGhlaWdodCBvZiBidXR0b24gbmV4dCB0byBzbWFsbCBpbnB1dFxuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG59XG4uYnRuLXhzIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmcteHMtdmVydGljYWwsICRwYWRkaW5nLXhzLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJvcmRlci1yYWRpdXMtc21hbGwpO1xufVxuXG5cbi8vIEJsb2NrIGJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xuLmJ0bi1ibG9jayArIC5idG4tYmxvY2sge1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbi8vIFNwZWNpZmljaXR5IG92ZXJyaWRlc1xuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAmLmJ0bi1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb21wb25lbnQgYW5pbWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSGVhZHMgdXAhXG4vL1xuLy8gV2UgZG9uJ3QgdXNlIHRoZSBgLm9wYWNpdHkoKWAgbWl4aW4gaGVyZSBzaW5jZSBpdCBjYXVzZXMgYSBidWcgd2l0aCB0ZXh0XG4vLyBmaWVsZHMgaW4gSUU3LTguIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzU1Mi5cblxuLmZhZGUge1xuICBvcGFjaXR5OiAwO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgLjE1cyBsaW5lYXIpO1xuICAmLmluIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgJi5pbiAgICAgIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIHRyJi5pbiB0byB0ci5jb2xsYXBzZS5pblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgdGJvZHkmLmluIHRvIHRib2R5LmNvbGxhcHNlLmluXG59XG5cbnRyLmNvbGxhcHNlLmluICAgIHsgZGlzcGxheTogdGFibGUtcm93OyB9XG5cbnRib2R5LmNvbGxhcHNlLmluIHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwOyB9XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tcHJvcGVydHkoaGVpZ2h0LCB2aXNpYmlsaXR5KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbiguMzVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oZWFzZSk7XG59XG4iLCIvL1xuLy8gRHJvcGRvd24gbWVudXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gRHJvcGRvd24gYXJyb3cvY2FyZXRcbi5jYXJldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXRvcDogICAkY2FyZXQtd2lkdGgtYmFzZSBkYXNoZWQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAgJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChkaXYpXG4uZHJvcHVwLFxuLmRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLyBQcmV2ZW50IHRoZSBmb2N1cyBvbiB0aGUgZHJvcGRvd24gdG9nZ2xlIHdoZW4gY2xvc2luZyBkcm9wZG93bnNcbi5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudSAodWwpXG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAxNjBweDtcbiAgcGFkZGluZzogNXB4IDA7XG4gIG1hcmdpbjogMnB4IDAgMDsgLy8gb3ZlcnJpZGUgZGVmYXVsdCB1bFxuICBsaXN0LXN0eWxlOiBub25lO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRkcm9wZG93bi1mYWxsYmFjay1ib3JkZXI7IC8vIElFOCBmYWxsYmFja1xuICBib3JkZXI6IDFweCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgNnB4IDEycHggcmdiYSgwLDAsMCwuMTc1KSk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG5cbiAgLy8gQWxpZ25zIHRoZSBkcm9wZG93biBtZW51IHRvIHJpZ2h0XG4gIC8vXG4gIC8vIERlcHJlY2F0ZWQgYXMgb2YgMy4xLjAgaW4gZmF2b3Igb2YgYC5kcm9wZG93bi1tZW51LVtkaXJdYFxuICAmLnB1bGwtcmlnaHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cblxuICAvLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4gIC5kaXZpZGVyIHtcbiAgICBAaW5jbHVkZSBuYXYtZGl2aWRlcigkZHJvcGRvd24tZGl2aWRlci1iZyk7XG4gIH1cblxuICAvLyBMaW5rcyB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbiAgPiBsaSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDNweCAyMHB4O1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgfVxufVxuXG4vLyBIb3Zlci9Gb2N1cyBzdGF0ZVxuLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWJnO1xuICB9XG59XG5cbi8vIEFjdGl2ZSBzdGF0ZVxuLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYSB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnO1xuICB9XG59XG5cbi8vIERpc2FibGVkIHN0YXRlXG4vL1xuLy8gR3JheSBvdXQgdGV4dCBhbmQgZW5zdXJlIHRoZSBob3Zlci9mb2N1cyBzdGF0ZSByZW1haW5zIGdyYXlcblxuLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICB9XG5cbiAgLy8gTnVrZSBob3Zlci9mb2N1cyBlZmZlY3RzXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50XG4gICAgQGluY2x1ZGUgcmVzZXQtZmlsdGVyO1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxufVxuXG4vLyBPcGVuIHN0YXRlIGZvciB0aGUgZHJvcGRvd25cbi5vcGVuIHtcbiAgLy8gU2hvdyB0aGUgbWVudVxuICA+IC5kcm9wZG93bi1tZW51IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgb3V0bGluZSB3aGVuIDpmb2N1cyBpcyB0cmlnZ2VyZWRcbiAgPiBhIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vIE1lbnUgcG9zaXRpb25pbmdcbi8vXG4vLyBBZGQgZXh0cmEgY2xhc3MgdG8gYC5kcm9wZG93bi1tZW51YCB0byBmbGlwIHRoZSBhbGlnbm1lbnQgb2YgdGhlIGRyb3Bkb3duXG4vLyBtZW51IHdpdGggdGhlIHBhcmVudC5cbi5kcm9wZG93bi1tZW51LXJpZ2h0IHtcbiAgbGVmdDogYXV0bzsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBgLmRyb3Bkb3duLW1lbnVgXG4gIHJpZ2h0OiAwO1xufVxuLy8gV2l0aCB2Mywgd2UgZW5hYmxlZCBhdXRvLWZsaXBwaW5nIGlmIHlvdSBoYXZlIGEgZHJvcGRvd24gd2l0aGluIGEgcmlnaHRcbi8vIGFsaWduZWQgbmF2IGNvbXBvbmVudC4gVG8gZW5hYmxlIHRoZSB1bmRvaW5nIG9mIHRoYXQsIHdlIHByb3ZpZGUgYW4gb3ZlcnJpZGVcbi8vIHRvIHJlc3RvcmUgdGhlIGRlZmF1bHQgZHJvcGRvd24gbWVudSBhbGlnbm1lbnQuXG4vL1xuLy8gVGhpcyBpcyBvbmx5IGZvciBsZWZ0LWFsaWduaW5nIGEgZHJvcGRvd24gbWVudSB3aXRoaW4gYSBgLm5hdmJhci1yaWdodGAgb3Jcbi8vIGAucHVsbC1yaWdodGAgbmF2IGNvbXBvbmVudC5cbi5kcm9wZG93bi1tZW51LWxlZnQge1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDNweCAyMHB4O1xuICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRkcm9wZG93bi1oZWFkZXItY29sb3I7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbn1cblxuLy8gQmFja2Ryb3AgdG8gY2F0Y2ggYm9keSBjbGlja3Mgb24gbW9iaWxlLCBldGMuXG4uZHJvcGRvd24tYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogKCR6aW5kZXgtZHJvcGRvd24gLSAxMCk7XG59XG5cbi8vIFJpZ2h0IGFsaWduZWQgZHJvcGRvd25zXG4ucHVsbC1yaWdodCA+IC5kcm9wZG93bi1tZW51IHtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy9cbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldCwgYnJvLlxuLy8gVE9ETzogYWJzdHJhY3QgdGhpcyBzbyB0aGF0IHRoZSBuYXZiYXIgZml4ZWQgc3R5bGVzIGFyZSBub3QgcGxhY2VkIGhlcmU/XG5cbi5kcm9wdXAsXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSAuZHJvcGRvd24ge1xuICAvLyBSZXZlcnNlIHRoZSBjYXJldFxuICAuY2FyZXQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQ7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuICAvLyBEaWZmZXJlbnQgcG9zaXRpb25pbmcgZm9yIGJvdHRvbSB1cCBtZW51XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgfVxufVxuXG5cbi8vIENvbXBvbmVudCBhbGlnbm1lbnRcbi8vXG4vLyBSZWl0ZXJhdGUgcGVyIG5hdmJhci5sZXNzIGFuZCB0aGUgbW9kaWZpZWQgY29tcG9uZW50IGFsaWdubWVudCB0aGVyZS5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgLm5hdmJhci1yaWdodCB7XG4gICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgcmlnaHQ6IDA7IGxlZnQ6IGF1dG87XG4gICAgfVxuICAgIC8vIE5lY2Vzc2FyeSBmb3Igb3ZlcnJpZGVzIG9mIHRoZSBkZWZhdWx0IHJpZ2h0IGFsaWduZWQgbWVudS5cbiAgICAvLyBXaWxsIHJlbW92ZSBjb21lIHY0IGluIGFsbCBsaWtlbGlob29kLlxuICAgIC5kcm9wZG93bi1tZW51LWxlZnQge1xuICAgICAgbGVmdDogMDsgcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQnV0dG9uIGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBidXR0b24gdG8gdGhlIGZyb250XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICB9XG59XG5cbi8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnMgd2hlbiBidXR0b25zIGFyZSBuZXh0IHRvIGVhY2ggb3RoZXJcbi5idG4tZ3JvdXAge1xuICAuYnRuICsgLmJ0bixcbiAgLmJ0biArIC5idG4tZ3JvdXAsXG4gIC5idG4tZ3JvdXAgKyAuYnRuLFxuICAuYnRuLWdyb3VwICsgLmJ0bi1ncm91cCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7IC8vIE9mZnNldCB0aGUgZmlyc3QgY2hpbGQncyBtYXJnaW5cbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgLmJ0bi1ncm91cCxcbiAgLmlucHV0LWdyb3VwIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCxcbiAgPiAuaW5wdXQtZ3JvdXAge1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIH1cbn1cblxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSkge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBTZXQgY29ybmVycyBpbmRpdmlkdWFsIGJlY2F1c2Ugc29tZXRpbWVzIGEgc2luZ2xlIGJ1dHRvbiBjYW4gYmUgaW4gYSAuYnRuLWdyb3VwIGFuZCB3ZSBuZWVkIDpmaXJzdC1jaGlsZCBhbmQgOmxhc3QtY2hpbGQgdG8gYm90aCBtYXRjaFxuLmJ0bi1ncm91cCA+IC5idG46Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgJjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxufVxuLy8gTmVlZCAuZHJvcGRvd24tdG9nZ2xlIHNpbmNlIDpsYXN0LWNoaWxkIGRvZXNuJ3QgYXBwbHkgZ2l2ZW4gYSAuZHJvcGRvd24tbWVudSBpbW1lZGlhdGVseSBhZnRlciBpdFxuLmJ0bi1ncm91cCA+IC5idG46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbi5idG4tZ3JvdXAgPiAuZHJvcGRvd24tdG9nZ2xlOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuXG4vLyBDdXN0b20gZWRpdHMgZm9yIGluY2x1ZGluZyBidG4tZ3JvdXBzIHdpdGhpbiBidG4tZ3JvdXBzICh1c2VmdWwgZm9yIGluY2x1ZGluZyBkcm9wZG93biBidXR0b25zIHdpdGhpbiBhIGJ0bi1ncm91cClcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgPiAuYnRuOmxhc3QtY2hpbGQsXG4gID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxufVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG46Zmlyc3QtY2hpbGQge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG5cbi8vIE9uIGFjdGl2ZSBhbmQgb3BlbiwgZG9uJ3Qgc2hvdyBvdXRsaW5lXG4uYnRuLWdyb3VwIC5kcm9wZG93bi10b2dnbGU6YWN0aXZlLFxuLmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGUge1xuICBvdXRsaW5lOiAwO1xufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXhzID4gLmJ0biB7IEBleHRlbmQgLmJ0bi14czsgfVxuLmJ0bi1ncm91cC1zbSA+IC5idG4geyBAZXh0ZW5kIC5idG4tc207IH1cbi5idG4tZ3JvdXAtbGcgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLWxnOyB9XG5cblxuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBHaXZlIHRoZSBsaW5lIGJldHdlZW4gYnV0dG9ucyBzb21lIGRlcHRoXG4uYnRuLWdyb3VwID4gLmJ0biArIC5kcm9wZG93bi10b2dnbGUge1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xufVxuLmJ0bi1ncm91cCA+IC5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xufVxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFJlbW92ZSB0aGUgZ3JhZGllbnQgYW5kIHNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDNweCA1cHggcmdiYSgwLDAsMCwuMTI1KSk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy8gUmVwb3NpdGlvbiB0aGUgY2FyZXRcbi5idG4gLmNhcmV0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4vLyBDYXJldHMgaW4gb3RoZXIgYnV0dG9uIHNpemVzXG4uYnRuLWxnIC5jYXJldCB7XG4gIGJvcmRlci13aWR0aDogJGNhcmV0LXdpZHRoLWxhcmdlICRjYXJldC13aWR0aC1sYXJnZSAwO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xufVxuLy8gVXBzaWRlIGRvd24gY2FyZXRzIGZvciAuZHJvcHVwXG4uZHJvcHVwIC5idG4tbGcgLmNhcmV0IHtcbiAgYm9yZGVyLXdpZHRoOiAwICRjYXJldC13aWR0aC1sYXJnZSAkY2FyZXQtd2lkdGgtbGFyZ2U7XG59XG5cblxuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAsXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIENsZWFyIGZsb2F0cyBzbyBkcm9wZG93biBtZW51cyBjYW4gYmUgcHJvcGVybHkgcGxhY2VkXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgPiAuYnRuIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbiAgfVxuXG4gID4gLmJ0biArIC5idG4sXG4gID4gLmJ0biArIC5idG4tZ3JvdXAsXG4gID4gLmJ0bi1ncm91cCArIC5idG4sXG4gID4gLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xuICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4ge1xuICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbiAgJjpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICA+IC5idG46bGFzdC1jaGlsZCxcbiAgPiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxufVxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG46Zmlyc3QtY2hpbGQge1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbn1cblxuXG4vLyBKdXN0aWZpZWQgYnV0dG9uIGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWdyb3VwLWp1c3RpZmllZCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgd2lkdGg6IDElO1xuICB9XG4gID4gLmJ0bi1ncm91cCAuYnRuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0bi1ncm91cCAuZHJvcGRvd24tbWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94IGFuZCByYWRpbyBvcHRpb25zXG4vL1xuLy8gSW4gb3JkZXIgdG8gc3VwcG9ydCB0aGUgYnJvd3NlcidzIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFjaywgcG93ZXJlZCBieSB0aGVcbi8vIGByZXF1aXJlZGAgYXR0cmlidXRlLCB3ZSBoYXZlIHRvIFwiaGlkZVwiIHRoZSBpbnB1dHMgdmlhIGBjbGlwYC4gV2UgY2Fubm90IHVzZVxuLy8gYGRpc3BsYXk6IG5vbmU7YCBvciBgdmlzaWJpbGl0eTogaGlkZGVuO2AgYXMgdGhhdCBhbHNvIGhpZGVzIHRoZSBwb3BvdmVyLlxuLy8gU2ltcGx5IHZpc3VhbGx5IGhpZGluZyB0aGUgaW5wdXRzIHZpYSBgb3BhY2l0eWAgd291bGQgbGVhdmUgdGhlbSBjbGlja2FibGUgaW5cbi8vIGNlcnRhaW4gY2FzZXMgd2hpY2ggaXMgcHJldmVudGVkIGJ5IHVzaW5nIGBjbGlwYCBhbmQgYHBvaW50ZXItZXZlbnRzYC5cbi8vIFRoaXMgd2F5LCB3ZSBlbnN1cmUgYSBET00gZWxlbWVudCBpcyB2aXNpYmxlIHRvIHBvc2l0aW9uIHRoZSBwb3BvdmVyIGZyb20uXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEyNzk0IGFuZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTQ1NTkgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG5cbltkYXRhLXRvZ2dsZT1cImJ1dHRvbnNcIl0ge1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIElucHV0IGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQmFzZSBzdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGRyb3Bkb3duc1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTsgLy8gcHJldmVudCBpbnB1dCBncm91cHMgZnJvbSBpbmhlcml0aW5nIGJvcmRlciBzdHlsZXMgZnJvbSB0YWJsZSBjZWxscyB3aGVuIHBsYWNlZCB3aXRoaW4gYSB0YWJsZVxuXG4gIC8vIFVuZG8gcGFkZGluZyBhbmQgZmxvYXQgb2YgZ3JpZCBjbGFzc2VzXG4gICZbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICAvLyBFbnN1cmUgdGhhdCB0aGUgaW5wdXQgaXMgYWx3YXlzIGFib3ZlIHRoZSAqYXBwZW5kZWQqIGFkZG9uIGJ1dHRvbiBmb3JcbiAgICAvLyBwcm9wZXIgYm9yZGVyIGNvbG9ycy5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgIC8vIElFOSBmdWJhcnMgdGhlIHBsYWNlaG9sZGVyIGF0dHJpYnV0ZSBpbiB0ZXh0IGlucHV0cyBhbmQgdGhlIGFycm93cyBvblxuICAgIC8vIHNlbGVjdCBlbGVtZW50cyBpbiBpbnB1dCBncm91cHMuIFRvIGZpeCBpdCwgd2UgZmxvYXQgdGhlIGlucHV0LiBEZXRhaWxzOlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1NjEjaXNzdWVjb21tZW50LTI4OTM2ODU1XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vIFNpemluZyBvcHRpb25zXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xuICBAZXh0ZW5kIC5pbnB1dC1sZztcbn1cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XG4gIEBleHRlbmQgLmlucHV0LXNtO1xufVxuXG5cbi8vIERpc3BsYXkgYXMgdGFibGUtY2VsbFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWJ0bixcbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcblxuICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cbi8vIEFkZG9uIGFuZCBhZGRvbiB3cmFwcGVyIGZvciBidXR0b25zXG4uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtYnRuIHtcbiAgd2lkdGg6IDElO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBNYXRjaCB0aGUgaW5wdXRzXG59XG5cbi8vIFRleHQgaW5wdXQgZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAtYWRkb24ge1xuICBwYWRkaW5nOiAkcGFkZGluZy1iYXNlLXZlcnRpY2FsICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcblxuICAvLyBTaXppbmdcbiAgJi5pbnB1dC1zbSB7XG4gICAgcGFkZGluZzogJHBhZGRpbmctc21hbGwtdmVydGljYWwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc21hbGw7XG4gIH1cbiAgJi5pbnB1dC1sZyB7XG4gICAgcGFkZGluZzogJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIH1cblxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuZHJvcGRvd24tdG9nZ2xlLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xufVxuLmlucHV0LWdyb3VwLWFkZG9uOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6bGFzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1hZGRvbjpsYXN0LWNoaWxkLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXAgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmRyb3Bkb3duLXRvZ2dsZSxcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuLmlucHV0LWdyb3VwLWFkZG9uOmxhc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLy8gQnV0dG9uIGlucHV0IGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmlucHV0LWdyb3VwLWJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gSmFua2lseSBwcmV2ZW50IGlucHV0IGJ1dHRvbiBncm91cHMgZnJvbSB3cmFwcGluZyB3aXRoIGB3aGl0ZS1zcGFjZWAgYW5kXG4gIC8vIGBmb250LXNpemVgIGluIGNvbWJpbmF0aW9uIHdpdGggYGlubGluZS1ibG9ja2Agb24gYnV0dG9ucy5cbiAgZm9udC1zaXplOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3Igc3BhY2luZywgcG9zaXRpb24gZm9yIGJyaW5naW5nIGhvdmVyZWQvZm9jdXNlZC9hY3RpdmVkXG4gIC8vIGVsZW1lbnQgYWJvdmUgdGhlIHNpYmxpbmdzLlxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICArIC5idG4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgfVxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gIH1cblxuICAvLyBOZWdhdGl2ZSBtYXJnaW4gdG8gb25seSBoYXZlIGEgMXB4IGJvcmRlciBiZXR3ZWVuIHRoZSB0d29cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgPiAuYnRuLFxuICAgID4gLmJ0bi1ncm91cCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgPiAuYnRuLFxuICAgID4gLmJ0bi1ncm91cCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBOYXZzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5uYXYge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgdWwvb2xcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgPiBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgPiBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmc7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1saW5rLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0YXRlIHNldHMgdGV4dCB0byBncmF5IGFuZCBudWtlcyBob3Zlci90YWIgZWZmZWN0c1xuICAgICYuZGlzYWJsZWQgPiBhIHtcbiAgICAgIGNvbG9yOiAkbmF2LWRpc2FibGVkLWxpbmstY29sb3I7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIE9wZW4gZHJvcGRvd25zXG4gIC5vcGVuID4gYSB7XG4gICAgJixcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1saW5rLWhvdmVyLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbGluay1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBOYXYgZGl2aWRlcnMgKGRlcHJlY2F0ZWQgd2l0aCB2My4wLjEpXG4gIC8vXG4gIC8vIFRoaXMgc2hvdWxkIGhhdmUgYmVlbiByZW1vdmVkIGluIHYzIHdpdGggdGhlIGRyb3BwaW5nIG9mIGAubmF2LWxpc3RgLCBidXRcbiAgLy8gd2UgbWlzc2VkIGl0LiBXZSBkb24ndCBjdXJyZW50bHkgc3VwcG9ydCB0aGlzIGFueXdoZXJlLCBidXQgaW4gdGhlIGludGVyZXN0XG4gIC8vIG9mIG1haW50YWluaW5nIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgaW4gY2FzZSB5b3UgdXNlIGl0LCBpdCdzIGRlcHJlY2F0ZWQuXG4gIC5uYXYtZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgbmF2LWRpdmlkZXI7XG4gIH1cblxuICAvLyBQcmV2ZW50IElFOCBmcm9tIG1pc3BsYWNpbmcgaW1nc1xuICAvL1xuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvaXNzdWVzLzk4NCNpc3N1ZWNvbW1lbnQtMzk4NTk4OVxuICA+IGxpID4gYSA+IGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5cblxuLy8gVGFic1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBHaXZlIHRoZSB0YWJzIHNvbWV0aGluZyB0byBzaXQgb25cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuICA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICAvLyBNYWtlIHRoZSBsaXN0LWl0ZW1zIG92ZXJsYXkgdGhlIGJvdHRvbSBib3JkZXJcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuXG4gICAgLy8gQWN0dWFsIHRhYnMgKGFzIGxpbmtzKVxuICAgID4gYSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlIDAgMDtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvciAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGUsIGFuZCBpdHMgOmhvdmVyIHRvIG92ZXJyaWRlIG5vcm1hbCA6aG92ZXJcbiAgICAmLmFjdGl2ZSA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBwdWxsaW5nIHRoaXMgaW4gbWFpbmx5IGZvciBsZXNzIHNob3J0aGFuZFxuICAmLm5hdi1qdXN0aWZpZWQge1xuICAgIEBleHRlbmQgLm5hdi1qdXN0aWZpZWQ7XG4gICAgQGV4dGVuZCAubmF2LXRhYnMtanVzdGlmaWVkO1xuICB9XG59XG5cblxuLy8gUGlsbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5uYXYtcGlsbHMge1xuICA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcblxuICAgIC8vIExpbmtzIHJlbmRlcmVkIGFzIHBpbGxzXG4gICAgPiBhIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cztcbiAgICB9XG4gICAgKyBsaSB7XG4gICAgICBtYXJnaW4tbGVmdDogMnB4O1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgICYuYWN0aXZlID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTdGFja2VkIHBpbGxzXG4ubmF2LXN0YWNrZWQge1xuICA+IGxpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICArIGxpIHtcbiAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyAvLyBubyBuZWVkIGZvciB0aGlzIGdhcCBiZXR3ZWVuIG5hdiBpdGVtc1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdiB2YXJpYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBKdXN0aWZpZWQgbmF2IGxpbmtzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiBsaSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgPiBhIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB9XG4gIH1cblxuICA+IC5kcm9wZG93biAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICA+IGEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBNb3ZlIGJvcmRlcnMgdG8gYW5jaG9ycyBpbnN0ZWFkIG9mIGJvdHRvbSBvZiBsaXN0XG4vL1xuLy8gTWl4aW4gZm9yIGFkZGluZyBvbiB0b3AgdGhlIHNoYXJlZCBgLm5hdi1qdXN0aWZpZWRgIHN0eWxlcyBmb3Igb3VyIHRhYnNcbi5uYXYtdGFicy1qdXN0aWZpZWQge1xuICBib3JkZXItYm90dG9tOiAwO1xuXG4gID4gbGkgPiBhIHtcbiAgICAvLyBPdmVycmlkZSBtYXJnaW4gZnJvbSAubmF2LXRhYnNcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgfVxuXG4gID4gLmFjdGl2ZSA+IGEsXG4gID4gLmFjdGl2ZSA+IGE6aG92ZXIsXG4gID4gLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAwIDA7XG4gICAgfVxuICAgID4gLmFjdGl2ZSA+IGEsXG4gICAgPiAuYWN0aXZlID4gYTpob3ZlcixcbiAgICA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRuYXYtdGFicy1qdXN0aWZpZWQtYWN0aXZlLWxpbmstYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG4udGFiLWNvbnRlbnQge1xuICA+IC50YWItcGFuZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cblxuLy8gRHJvcGRvd25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFNwZWNpZmljIGRyb3Bkb3duc1xuLm5hdi10YWJzIC5kcm9wZG93bi1tZW51IHtcbiAgLy8gbWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xufVxuIiwiLy9cbi8vIE5hdmJhcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gV3JhcHBlciBhbmQgYmFzZSBjbGFzc1xuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogJG5hdmJhci1oZWlnaHQ7IC8vIEVuc3VyZSBhIG5hdmJhciBhbHdheXMgc2hvd3MgKGUuZy4sIHdpdGhvdXQgYSAubmF2YmFyLWJyYW5kIGluIGNvbGxhcHNlZCBtb2RlKVxuICBtYXJnaW4tYm90dG9tOiAkbmF2YmFyLW1hcmdpbi1ib3R0b207XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gIC8vIFByZXZlbnQgZmxvYXRzIGZyb20gYnJlYWtpbmcgdGhlIG5hdmJhclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGJvcmRlci1yYWRpdXM6ICRuYXZiYXItYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBoZWFkaW5nXG4vL1xuLy8gR3JvdXBzIGAubmF2YmFyLWJyYW5kYCBhbmQgYC5uYXZiYXItdG9nZ2xlYCBpbnRvIGEgc2luZ2xlIGNvbXBvbmVudCBmb3IgZWFzeVxuLy8gc3R5bGluZyBvZiByZXNwb25zaXZlIGFzcGVjdHMuXG5cbi5uYXZiYXItaGVhZGVyIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBjb2xsYXBzZSAoYm9keSlcbi8vXG4vLyBHcm91cCB5b3VyIG5hdmJhciBjb250ZW50IGludG8gdGhpcyBmb3IgZWFzeSBjb2xsYXBzaW5nIGFuZCBleHBhbmRpbmcgYWNyb3NzXG4vLyB2YXJpb3VzIGRldmljZSBzaXplcy4gQnkgZGVmYXVsdCwgdGhpcyBjb250ZW50IGlzIGNvbGxhcHNlZCB3aGVuIDw3NjhweCwgYnV0XG4vLyB3aWxsIGV4cGFuZCBwYXN0IHRoYXQgZm9yIGEgaG9yaXpvbnRhbCBkaXNwbGF5LlxuLy9cbi8vIFRvIHN0YXJ0IChvbiBtb2JpbGUgZGV2aWNlcykgdGhlIG5hdmJhciBsaW5rcywgZm9ybXMsIGFuZCBidXR0b25zIGFyZSBzdGFja2VkXG4vLyB2ZXJ0aWNhbGx5IGFuZCBpbmNsdWRlIGEgYG1heC1oZWlnaHRgIHRvIG92ZXJmbG93IGluIGNhc2UgeW91IGhhdmUgdG9vIG11Y2hcbi8vIGNvbnRlbnQgZm9yIHRoZSB1c2VyJ3Mgdmlld3BvcnQuXG5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBvdmVyZmxvdy14OiB2aXNpYmxlO1xuICBwYWRkaW5nLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgcGFkZGluZy1sZWZ0OiAgJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAmLmluIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAmLmNvbGxhcHNlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IHNldHRpbmdcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi5pbiB7XG4gICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8vIFVuZG8gdGhlIGNvbGxhcHNlIHNpZGUgcGFkZGluZyBmb3IgbmF2YmFycyB3aXRoIGNvbnRhaW5lcnMgdG8gZW5zdXJlXG4gICAgLy8gYWxpZ25tZW50IG9mIHJpZ2h0LWFsaWduZWQgY29udGVudHMuXG4gICAgLm5hdmJhci1maXhlZC10b3AgJixcbiAgICAubmF2YmFyLXN0YXRpYy10b3AgJixcbiAgICAubmF2YmFyLWZpeGVkLWJvdHRvbSAmIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5uYXZiYXItZml4ZWQtdG9wLFxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xuICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBtYXgtaGVpZ2h0OiAkbmF2YmFyLWNvbGxhcHNlLW1heC1oZWlnaHQ7XG5cbiAgICBAbWVkaWEgKG1heC1kZXZpY2Utd2lkdGg6ICRzY3JlZW4teHMtbWluKSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJvdGggbmF2YmFyIGhlYWRlciBhbmQgY29sbGFwc2Vcbi8vXG4vLyBXaGVuIGEgY29udGFpbmVyIGlzIHByZXNlbnQsIGNoYW5nZSB0aGUgYmVoYXZpb3Igb2YgdGhlIGhlYWRlciBhbmQgY29sbGFwc2UuXG5cbi5jb250YWluZXIsXG4uY29udGFpbmVyLWZsdWlkIHtcbiAgPiAubmF2YmFyLWhlYWRlcixcbiAgPiAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBtYXJnaW4tbGVmdDogIC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogIDA7XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIE5hdmJhciBhbGlnbm1lbnQgb3B0aW9uc1xuLy9cbi8vIERpc3BsYXkgdGhlIG5hdmJhciBhY3Jvc3MgdGhlIGVudGlyZXR5IG9mIHRoZSBwYWdlIG9yIGZpeGVkIGl0IHRvIHRoZSB0b3Agb3Jcbi8vIGJvdHRvbSBvZiB0aGUgcGFnZS5cblxuLy8gU3RhdGljIHRvcCAodW5maXhlZCwgYnV0IDEwMCUgd2lkZSkgbmF2YmFyXG4ubmF2YmFyLXN0YXRpYy10b3Age1xuICB6LWluZGV4OiAkemluZGV4LW5hdmJhcjtcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuXG4vLyBGaXggdGhlIHRvcC9ib3R0b20gbmF2YmFycyB3aGVuIHNjcmVlbiByZWFsIGVzdGF0ZSBzdXBwb3J0cyBpdFxuLm5hdmJhci1maXhlZC10b3AsXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbmF2YmFyLWZpeGVkO1xuXG4gIC8vIFVuZG8gdGhlIHJvdW5kZWQgY29ybmVyc1xuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cbi5uYXZiYXItZml4ZWQtdG9wIHtcbiAgdG9wOiAwO1xuICBib3JkZXItd2lkdGg6IDAgMCAxcHg7XG59XG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gb3ZlcnJpZGUgLm5hdmJhciBkZWZhdWx0c1xuICBib3JkZXItd2lkdGg6IDFweCAwIDA7XG59XG5cblxuLy8gQnJhbmQvcHJvamVjdCBuYW1lXG5cbi5uYXZiYXItYnJhbmQge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGhlaWdodDogJG5hdmJhci1oZWlnaHQ7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgPiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICAubmF2YmFyID4gLmNvbnRhaW5lciAmLFxuICAgIC5uYXZiYXIgPiAuY29udGFpbmVyLWZsdWlkICYge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdG9nZ2xlXG4vL1xuLy8gQ3VzdG9tIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIGAubmF2YmFyLWNvbGxhcHNlYCwgcG93ZXJlZCBieSB0aGUgY29sbGFwc2Vcbi8vIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4ubmF2YmFyLXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBwYWRkaW5nOiA5cHggMTBweDtcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKDM0cHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MvaXNzdWVzLzIxNFxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcblxuICAvLyBXZSByZW1vdmUgdGhlIGBvdXRsaW5lYCBoZXJlLCBidXQgbGF0ZXIgY29tcGVuc2F0ZSBieSBhdHRhY2hpbmcgYDpob3ZlcmBcbiAgLy8gc3R5bGVzIHRvIGA6Zm9jdXNgLlxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgLy8gQmFyc1xuICAuaWNvbi1iYXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAyMnB4O1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgfVxuICAuaWNvbi1iYXIgKyAuaWNvbi1iYXIge1xuICAgIG1hcmdpbi10b3A6IDRweDtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXYgbGlua3Ncbi8vXG4vLyBCdWlsZHMgb24gdG9wIG9mIHRoZSBgLm5hdmAgY29tcG9uZW50cyB3aXRoIGl0cyBvd24gbW9kaWZpZXIgY2xhc3MgdG8gbWFrZVxuLy8gdGhlIG5hdiB0aGUgZnVsbCBoZWlnaHQgb2YgdGhlIGhvcml6b250YWwgbmF2IChhYm92ZSA3NjhweCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgbWFyZ2luOiAoJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsIC8gMikgKC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbCk7XG5cbiAgPiBsaSA+IGEge1xuICAgIHBhZGRpbmctdG9wOiAgICAxMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcbiAgICAvLyBEcm9wZG93bnMgZ2V0IGN1c3RvbSBkaXNwbGF5IHdoZW4gY29sbGFwc2VkXG4gICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgPiBsaSA+IGEsXG4gICAgICAuZHJvcGRvd24taGVhZGVyIHtcbiAgICAgICAgcGFkZGluZzogNXB4IDE1cHggNXB4IDI1cHg7XG4gICAgICB9XG4gICAgICA+IGxpID4gYSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBVbmNvbGxhcHNlIHRoZSBuYXZcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDA7XG5cbiAgICA+IGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgPiBhIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICAgICRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgZm9ybVxuLy9cbi8vIEV4dGVuc2lvbiBvZiB0aGUgYC5mb3JtLWlubGluZWAgd2l0aCBzb21lIGV4dHJhIGZsYXZvciBmb3Igb3B0aW11bSBkaXNwbGF5IGluXG4vLyBvdXIgbmF2YmFycy5cblxuLm5hdmJhci1mb3JtIHtcbiAgbWFyZ2luLWxlZnQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgbWFyZ2luLXJpZ2h0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIHBhZGRpbmc6IDEwcHggJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAkc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjEpLCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjEpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRzaGFkb3cpO1xuXG4gIC8vIE1peGluIGJlaGF2aW9yIGZvciBvcHRpbXVtIGRpc3BsYXlcbiAgQGluY2x1ZGUgZm9ybS1pbmxpbmU7XG5cbiAgLmZvcm0tZ3JvdXAge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsbHkgY2VudGVyIGluIGV4cGFuZGVkLCBob3Jpem9udGFsIG5hdmJhclxuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGlucHV0LWhlaWdodC1iYXNlKTtcblxuICAvLyBVbmRvIDEwMCUgd2lkdGggZm9yIHB1bGwgY2xhc3Nlc1xuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vIERyb3Bkb3duIG1lbnVzXG5cbi8vIE1lbnUgcG9zaXRpb24gYW5kIG1lbnUgY2FyZXRzXG4ubmF2YmFyLW5hdiA+IGxpID4gLmRyb3Bkb3duLW1lbnUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbn1cbi8vIE1lbnUgcG9zaXRpb24gYW5kIG1lbnUgY2FyZXQgc3VwcG9ydCBmb3IgZHJvcHVwcyB2aWEgZXh0cmEgZHJvcHVwIGNsYXNzXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSAubmF2YmFyLW5hdiA+IGxpID4gLmRyb3Bkb3duLW1lbnUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbmF2YmFyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbn1cblxuXG4vLyBCdXR0b25zIGluIG5hdmJhcnNcbi8vXG4vLyBWZXJ0aWNhbGx5IGNlbnRlciBhIGJ1dHRvbiB3aXRoaW4gYSBuYXZiYXIgKHdoZW4gKm5vdCogaW4gYSBmb3JtKS5cblxuLm5hdmJhci1idG4ge1xuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGlucHV0LWhlaWdodC1iYXNlKTtcblxuICAmLmJ0bi1zbSB7XG4gICAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRpbnB1dC1oZWlnaHQtc21hbGwpO1xuICB9XG4gICYuYnRuLXhzIHtcbiAgICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oMjIpO1xuICB9XG59XG5cblxuLy8gVGV4dCBpbiBuYXZiYXJzXG4vL1xuLy8gQWRkIGEgY2xhc3MgdG8gbWFrZSBhbnkgZWxlbWVudCBwcm9wZXJseSBhbGlnbiBpdHNlbGYgdmVydGljYWxseSB3aXRoaW4gdGhlIG5hdmJhcnMuXG5cbi5uYXZiYXItdGV4dCB7XG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkbGluZS1oZWlnaHQtY29tcHV0ZWQpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIH1cbn1cblxuXG4vLyBDb21wb25lbnQgYWxpZ25tZW50XG4vL1xuLy8gUmVwdXJwb3NlIHRoZSBwdWxsIHV0aWxpdGllcyBhcyB0aGVpciBvd24gbmF2YmFyIHV0aWxpdGllcyB0byBhdm9pZCBzcGVjaWZpY2l0eVxuLy8gaXNzdWVzIHdpdGggcGFyZW50cyBhbmQgY2hhaW5pbmcuIE9ubHkgZG8gdGhpcyB3aGVuIHRoZSBuYXZiYXIgaXMgdW5jb2xsYXBzZWRcbi8vIHRob3VnaCBzbyB0aGF0IG5hdmJhciBjb250ZW50cyBwcm9wZXJseSBzdGFjayBhbmQgYWxpZ24gaW4gbW9iaWxlLlxuLy9cbi8vIERlY2xhcmVkIGFmdGVyIHRoZSBuYXZiYXIgY29tcG9uZW50cyB0byBlbnN1cmUgbW9yZSBzcGVjaWZpY2l0eSBvbiB0aGUgbWFyZ2lucy5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgLm5hdmJhci1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG4gIC5uYXZiYXItcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcblxuICAgIH4gLm5hdmJhci1yaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIG5hdmJhcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIERlZmF1bHQgbmF2YmFyXG4ubmF2YmFyLWRlZmF1bHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYmc7XG4gIGJvcmRlci1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJvcmRlcjtcblxuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuYWN0aXZlID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc7XG4gICAgICB9XG4gICAgfVxuICAgID4gLmRpc2FibGVkID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlIHtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGVmYXVsdC10b2dnbGUtYm9yZGVyLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWhvdmVyLWJnO1xuICAgIH1cbiAgICAuaWNvbi1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZztcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLWNvbGxhcHNlLFxuICAubmF2YmFyLWZvcm0ge1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJvcmRlcjtcbiAgfVxuXG4gIC8vIERyb3Bkb3duIG1lbnUgaXRlbXNcbiAgLm5hdmJhci1uYXYge1xuICAgIC8vIFJlbW92ZSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gb3BlbiBkcm9wZG93blxuICAgID4gLm9wZW4gPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZztcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcbiAgICAgIC8vIERyb3Bkb3ducyBnZXQgY3VzdG9tIGRpc3BsYXkgd2hlbiBjb2xsYXBzZWRcbiAgICAgIC5vcGVuIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgPiBsaSA+IGEge1xuICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gLmFjdGl2ZSA+IGEge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gLmRpc2FibGVkID4gYSB7XG4gICAgICAgICAgJixcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAvLyBMaW5rcyBpbiBuYXZiYXJzXG4gIC8vXG4gIC8vIEFkZCBhIGNsYXNzIHRvIGVuc3VyZSBsaW5rcyBvdXRzaWRlIHRoZSBuYXZiYXIgbmF2IGFyZSBjb2xvcmVkIGNvcnJlY3RseS5cblxuICAubmF2YmFyLWxpbmsge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuYnRuLWxpbmsge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgICAmW2Rpc2FibGVkXSxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gSW52ZXJzZSBuYXZiYXJcblxuLm5hdmJhci1pbnZlcnNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJnO1xuICBib3JkZXItY29sb3I6ICRuYXZiYXItaW52ZXJzZS1ib3JkZXI7XG5cbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1icmFuZC1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZztcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtY29sb3I7XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICAgID4gLmFjdGl2ZSA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBEYXJrZW4gdGhlIHJlc3BvbnNpdmUgbmF2IHRvZ2dsZVxuICAubmF2YmFyLXRvZ2dsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtdG9nZ2xlLWJvcmRlci1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ob3Zlci1iZztcbiAgICB9XG4gICAgLmljb24tYmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1jb2xsYXBzZSxcbiAgLm5hdmJhci1mb3JtIHtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDclKTtcbiAgfVxuXG4gIC8vIERyb3Bkb3duc1xuICAubmF2YmFyLW5hdiB7XG4gICAgPiAub3BlbiA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnO1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheVxuICAgICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICA+IC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJvcmRlcjtcbiAgICAgICAgfVxuICAgICAgICAuZGl2aWRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJvcmRlcjtcbiAgICAgICAgfVxuICAgICAgICA+IGxpID4gYSB7XG4gICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuYWN0aXZlID4gYSB7XG4gICAgICAgICAgJixcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubmF2YmFyLWxpbmsge1xuICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuYnRuLWxpbmsge1xuICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgICAmW2Rpc2FibGVkXSxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCcmVhZGNydW1ic1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uYnJlYWRjcnVtYiB7XG4gIHBhZGRpbmc6ICRicmVhZGNydW1iLXBhZGRpbmctdmVydGljYWwgJGJyZWFkY3J1bWItcGFkZGluZy1ob3Jpem9udGFsO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmVhZGNydW1iLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICsgbGk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiI3skYnJlYWRjcnVtYi1zZXBhcmF0b3J9XFwwMGEwXCI7IC8vIFVuaWNvZGUgc3BhY2UgYWRkZWQgc2luY2UgaW5saW5lLWJsb2NrIG1lYW5zIG5vbi1jb2xsYXBzaW5nIHdoaXRlLXNwYWNlXG4gICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1jb2xvcjtcbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XG4gIH1cbn1cbiIsIi8vXG4vLyBQYWdpbmF0aW9uIChtdWx0aXBsZSBwYWdlcylcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46ICRsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZTsgLy8gUmVtb3ZlIGxpc3Qtc3R5bGUgYW5kIGJsb2NrLWxldmVsIGRlZmF1bHRzXG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gQ29sbGFwc2Ugd2hpdGUtc3BhY2VcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXI7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IGxpID4gYSxcbiAgPiBsaSA+IHNwYW4ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24taG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gID4gLmFjdGl2ZSA+IGEsXG4gID4gLmFjdGl2ZSA+IHNwYW4ge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyO1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cbiAgfVxuXG4gID4gLmRpc2FibGVkIHtcbiAgICA+IHNwYW4sXG4gICAgPiBzcGFuOmhvdmVyLFxuICAgID4gc3Bhbjpmb2N1cyxcbiAgICA+IGEsXG4gICAgPiBhOmhvdmVyLFxuICAgID4gYTpmb2N1cyB7XG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIExhcmdlXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1sYXJnZSwgJGJvcmRlci1yYWRpdXMtbGFyZ2UpO1xufVxuXG4vLyBTbWFsbFxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRib3JkZXItcmFkaXVzLXNtYWxsKTtcbn1cbiIsIi8vXG4vLyBQYWdlciBwYWdpbmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5wYWdlciB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQgMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICA+IGEsXG4gICAgPiBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDVweCAxNHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2VyLWJnO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHBhZ2VyLWJvcmRlcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRwYWdlci1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgID4gYTpob3ZlcixcbiAgICA+IGE6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2VyLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uZXh0IHtcbiAgICA+IGEsXG4gICAgPiBzcGFuIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cblxuICAucHJldmlvdXMge1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuICB9XG5cbiAgLmRpc2FibGVkIHtcbiAgICA+IGEsXG4gICAgPiBhOmhvdmVyLFxuICAgID4gYTpmb2N1cyxcbiAgICA+IHNwYW4ge1xuICAgICAgY29sb3I6ICRwYWdlci1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdlci1iZztcbiAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBMYWJlbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgcGFkZGluZzogLjJlbSAuNmVtIC4zZW07XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkbGFiZWwtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBib3JkZXItcmFkaXVzOiAuMjVlbTtcblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYgdG8gYS5sYWJlbFxuXG4gIC8vIEVtcHR5IGxhYmVscyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5IChub3QgYXZhaWxhYmxlIGluIElFOClcbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIFF1aWNrIGZpeCBmb3IgbGFiZWxzIGluIGJ1dHRvbnNcbiAgLmJ0biAmIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMXB4O1xuICB9XG59XG5cbi8vIEFkZCBob3ZlciBlZmZlY3RzLCBidXQgb25seSBmb3IgbGlua3NcbmEubGFiZWwge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGxhYmVsLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4vLyBDb2xvcnNcbi8vIENvbnRleHR1YWwgdmFyaWF0aW9ucyAobGlua2VkIGxhYmVscyBnZXQgZGFya2VyIG9uIDpob3ZlcilcblxuLmxhYmVsLWRlZmF1bHQge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1kZWZhdWx0LWJnKTtcbn1cblxuLmxhYmVsLXByaW1hcnkge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1wcmltYXJ5LWJnKTtcbn1cblxuLmxhYmVsLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1zdWNjZXNzLWJnKTtcbn1cblxuLmxhYmVsLWluZm8ge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1pbmZvLWJnKTtcbn1cblxuLmxhYmVsLXdhcm5pbmcge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC13YXJuaW5nLWJnKTtcbn1cblxuLmxhYmVsLWRhbmdlciB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLWRhbmdlci1iZyk7XG59XG4iLCIvL1xuLy8gQmFkZ2VzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAxMHB4O1xuICBwYWRkaW5nOiAzcHggN3B4O1xuICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkYmFkZ2UtY29sb3I7XG4gIGxpbmUtaGVpZ2h0OiAkYmFkZ2UtbGluZS1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFkZ2UtYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRiYWRnZS1ib3JkZXItcmFkaXVzO1xuXG4gIC8vIEVtcHR5IGJhZGdlcyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5IChub3QgYXZhaWxhYmxlIGluIElFOClcbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbiAgLmJ0biAmIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMXB4O1xuICB9XG5cbiAgLmJ0bi14cyAmLFxuICAuYnRuLWdyb3VwLXhzID4gLmJ0biAmIHtcbiAgICB0b3A6IDA7XG4gICAgcGFkZGluZzogMXB4IDVweDtcbiAgfVxuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiB0byBhLmJhZGdlXG5cbiAgLy8gQWNjb3VudCBmb3IgYmFkZ2VzIGluIG5hdnNcbiAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgPiAmLFxuICAubmF2LXBpbGxzID4gLmFjdGl2ZSA+IGEgPiAmIHtcbiAgICBjb2xvcjogJGJhZGdlLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFkZ2UtYWN0aXZlLWJnO1xuICB9XG5cbiAgLmxpc3QtZ3JvdXAtaXRlbSA+ICYge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuXG4gIC5saXN0LWdyb3VwLWl0ZW0gPiAmICsgJiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIH1cblxuICAubmF2LXBpbGxzID4gbGkgPiBhID4gJiB7XG4gICAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgfVxufVxuXG4vLyBIb3ZlciBzdGF0ZSwgYnV0IG9ubHkgZm9yIGxpbmtzXG5hLmJhZGdlIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRiYWRnZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbiIsIi8vXG4vLyBKdW1ib3Ryb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmp1bWJvdHJvbiB7XG4gIHBhZGRpbmc6ICRqdW1ib3Ryb24tcGFkZGluZyAoJGp1bWJvdHJvbi1wYWRkaW5nIC8gMik7XG4gIG1hcmdpbi1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgY29sb3I6ICRqdW1ib3Ryb24tY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRqdW1ib3Ryb24tYmc7XG5cbiAgaDEsXG4gIC5oMSB7XG4gICAgY29sb3I6ICRqdW1ib3Ryb24taGVhZGluZy1jb2xvcjtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206ICgkanVtYm90cm9uLXBhZGRpbmcgLyAyKTtcbiAgICBmb250LXNpemU6ICRqdW1ib3Ryb24tZm9udC1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIH1cblxuICA+IGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGp1bWJvdHJvbi1iZywgMTAlKTtcbiAgfVxuXG4gIC5jb250YWluZXIgJixcbiAgLmNvbnRhaW5lci1mbHVpZCAmIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTsgLy8gT25seSByb3VuZCBjb3JuZXJzIGF0IGhpZ2hlciByZXNvbHV0aW9ucyBpZiBjb250YWluZWQgaW4gYSBjb250YWluZXJcbiAgfVxuXG4gIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcGFkZGluZzogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDEuNikgMDtcblxuICAgIC5jb250YWluZXIgJixcbiAgICAuY29udGFpbmVyLWZsdWlkICYge1xuICAgICAgcGFkZGluZy1sZWZ0OiAgKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpO1xuICAgICAgcGFkZGluZy1yaWdodDogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpO1xuICAgIH1cblxuICAgIGgxLFxuICAgIC5oMSB7XG4gICAgICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgKiA0LjUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFRodW1ibmFpbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gTWl4aW4gYW5kIGFkanVzdCB0aGUgcmVndWxhciBpbWFnZSBjbGFzc1xuLnRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlciAuMnMgZWFzZS1pbi1vdXQpO1xuXG4gID4gaW1nLFxuICBhID4gaW1nIHtcbiAgICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSY6aG92ZXIsIGEmOmZvY3VzLCBhJi5hY3RpdmUgdG8gYS50aHVtYm5haWw6aG92ZXIsIGEudGh1bWJuYWlsOmZvY3VzLCBhLnRodW1ibmFpbC5hY3RpdmVcblxuICAvLyBJbWFnZSBjYXB0aW9uc1xuICAuY2FwdGlvbiB7XG4gICAgcGFkZGluZzogJHRodW1ibmFpbC1jYXB0aW9uLXBhZGRpbmc7XG4gICAgY29sb3I6ICR0aHVtYm5haWwtY2FwdGlvbi1jb2xvcjtcbiAgfVxufVxuXG4vLyBBZGQgYSBob3ZlciBzdGF0ZSBmb3IgbGlua2VkIHZlcnNpb25zIG9ubHlcbmEudGh1bWJuYWlsOmhvdmVyLFxuYS50aHVtYm5haWw6Zm9jdXMsXG5hLnRodW1ibmFpbC5hY3RpdmUge1xuICBib3JkZXItY29sb3I6ICRsaW5rLWNvbG9yO1xufVxuIiwiLy9cbi8vIEFsZXJ0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYWxlcnQge1xuICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGFsZXJ0LWJvcmRlci1yYWRpdXM7XG5cbiAgLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbiAgaDQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgLy8gU3BlY2lmaWVkIGZvciB0aGUgaDQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuICAuYWxlcnQtbGluayB7XG4gICAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xuICB9XG5cbiAgLy8gSW1wcm92ZSBhbGlnbm1lbnQgYW5kIHNwYWNpbmcgb2YgaW5uZXIgY29udGVudFxuICA+IHAsXG4gID4gdWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICA+IHAgKyBwIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gIH1cbn1cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzYWJsZSwgLy8gVGhlIG1pc3NwZWxsZWQgLmFsZXJ0LWRpc21pc3NhYmxlIHdhcyBkZXByZWNhdGVkIGluIDMuMi4wLlxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogKCRhbGVydC1wYWRkaW5nICsgMjApO1xuXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXG4gIC5jbG9zZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTJweDtcbiAgICByaWdodDogLTIxcHg7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbi5hbGVydC1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtc3VjY2Vzcy1iZywgJGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyLCAkYWxlcnQtc3VjY2Vzcy10ZXh0KTtcbn1cblxuLmFsZXJ0LWluZm8ge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1pbmZvLWJnLCAkYWxlcnQtaW5mby1ib3JkZXIsICRhbGVydC1pbmZvLXRleHQpO1xufVxuXG4uYWxlcnQtd2FybmluZyB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LXdhcm5pbmctYmcsICRhbGVydC13YXJuaW5nLWJvcmRlciwgJGFsZXJ0LXdhcm5pbmctdGV4dCk7XG59XG5cbi5hbGVydC1kYW5nZXIge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1kYW5nZXItYmcsICRhbGVydC1kYW5nZXItYm9yZGVyLCAkYWxlcnQtZGFuZ2VyLXRleHQpO1xufVxuIiwiLy9cbi8vIFByb2dyZXNzIGJhcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFyIGFuaW1hdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gV2ViS2l0XG5ALXdlYmtpdC1rZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tICB7IGJhY2tncm91bmQtcG9zaXRpb246IDQwcHggMDsgfVxuICB0byAgICB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxufVxuXG4vLyBTcGVjIGFuZCBJRTEwK1xuQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gIGZyb20gIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogNDBweCAwOyB9XG4gIHRvICAgIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG59XG5cblxuLy8gQmFyIGl0c2VsZlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBPdXRlciBjb250YWluZXJcbi5wcm9ncmVzcyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcbiAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLWJvcmRlci1yYWRpdXM7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjEpKTtcbn1cblxuLy8gQmFyIG9mIHByb2dyZXNzXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAtMXB4IDAgcmdiYSgwLDAsMCwuMTUpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih3aWR0aCAuNnMgZWFzZSk7XG59XG5cbi8vIFN0cmlwZWQgYmFyc1xuLy9cbi8vIGAucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyYCBpcyBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBpbiBmYXZvciBvZiB0aGVcbi8vIGAucHJvZ3Jlc3MtYmFyLXN0cmlwZWRgIGNsYXNzLCB3aGljaCB5b3UganVzdCBhZGQgdG8gYW4gZXhpc3Rpbmdcbi8vIGAucHJvZ3Jlc3MtYmFyYC5cbi5wcm9ncmVzcy1zdHJpcGVkIC5wcm9ncmVzcy1iYXIsXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkO1xuICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggNDBweDtcbn1cblxuLy8gQ2FsbCBhbmltYXRpb24gZm9yIHRoZSBhY3RpdmUgb25lXG4vL1xuLy8gYC5wcm9ncmVzcy5hY3RpdmUgLnByb2dyZXNzLWJhcmAgaXMgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgaW4gZmF2b3Igb2YgdGhlXG4vLyBgLnByb2dyZXNzLWJhci5hY3RpdmVgIGFwcHJvYWNoLlxuLnByb2dyZXNzLmFjdGl2ZSAucHJvZ3Jlc3MtYmFyLFxuLnByb2dyZXNzLWJhci5hY3RpdmUge1xuICBAaW5jbHVkZSBhbmltYXRpb24ocHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMnMgbGluZWFyIGluZmluaXRlKTtcbn1cblxuXG4vLyBWYXJpYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5wcm9ncmVzcy1iYXItc3VjY2VzcyB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZyk7XG59XG5cbi5wcm9ncmVzcy1iYXItaW5mbyB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItaW5mby1iZyk7XG59XG5cbi5wcm9ncmVzcy1iYXItd2FybmluZyB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItd2FybmluZy1iZyk7XG59XG5cbi5wcm9ncmVzcy1iYXItZGFuZ2VyIHtcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJHByb2dyZXNzLWJhci1kYW5nZXItYmcpO1xufVxuIiwiLm1lZGlhIHtcbiAgLy8gUHJvcGVyIHNwYWNpbmcgYmV0d2VlbiBpbnN0YW5jZXMgb2YgLm1lZGlhXG4gIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4ubWVkaWEsXG4ubWVkaWEtYm9keSB7XG4gIHpvb206IDE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5tZWRpYS1ib2R5IHtcbiAgd2lkdGg6IDEwMDAwcHg7XG59XG5cbi5tZWRpYS1vYmplY3Qge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm1lZGlhLXJpZ2h0LFxuLm1lZGlhID4gLnB1bGwtcmlnaHQge1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG59XG5cbi5tZWRpYS1sZWZ0LFxuLm1lZGlhID4gLnB1bGwtbGVmdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi5tZWRpYS1sZWZ0LFxuLm1lZGlhLXJpZ2h0LFxuLm1lZGlhLWJvZHkge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4ubWVkaWEtbWlkZGxlIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLm1lZGlhLWJvdHRvbSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gaGVhZGluZ3MgZm9yIHRpZ2h0ZXIgZGVmYXVsdCBzcGFjaW5nXG4ubWVkaWEtaGVhZGluZyB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLy8gTWVkaWEgbGlzdCB2YXJpYXRpb25cbi8vXG4vLyBVbmRvIGRlZmF1bHQgdWwvb2wgc3R5bGVzXG4ubWVkaWEtbGlzdCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vXG4vLyBMaXN0IGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4vL1xuLy8gRWFzaWx5IHVzYWJsZSBvbiA8dWw+LCA8b2w+LCBvciA8ZGl2Pi5cblxuLmxpc3QtZ3JvdXAge1xuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxufVxuXG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgLy8gUGxhY2UgdGhlIGJvcmRlciBvbiB0aGUgbGlzdCBpdGVtcyBhbmQgbmVnYXRpdmUgbWFyZ2luIHVwIGZvciBiZXR0ZXIgc3R5bGluZ1xuICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJGxpc3QtZ3JvdXAtYm9yZGVyO1xuXG4gIC8vIFJvdW5kIHRoZSBmaXJzdCBhbmQgbGFzdCBpdGVtc1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vLyBMaW5rZWQgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3IgZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGxpbmtlZCBsaXN0IGl0ZW1zLlxuLy8gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzaG93aW5nIHNlbGVjdGVkIGl0ZW1zLlxuXG5hLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWNvbG9yO1xuXG4gIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjtcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1ob3Zlci1iZztcbiAgfVxufVxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJi5kaXNhYmxlZCxcbiAgJi5kaXNhYmxlZDpob3ZlcixcbiAgJi5kaXNhYmxlZDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcblxuICAgIC8vIEZvcmNlIGNvbG9yIHRvIGluaGVyaXQgZm9yIGN1c3RvbSBjb250ZW50XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgICAubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICAgICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLXRleHQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gQWN0aXZlIGNsYXNzIG9uIGl0ZW0gaXRzZWxmLCBub3QgcGFyZW50XG4gICYuYWN0aXZlLFxuICAmLmFjdGl2ZTpob3ZlcixcbiAgJi5hY3RpdmU6Zm9jdXMge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyO1xuXG4gICAgLy8gRm9yY2UgY29sb3IgdG8gaW5oZXJpdCBmb3IgY3VzdG9tIGNvbnRlbnRcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nID4gc21hbGwsXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nID4gLnNtYWxsIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgICAubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICAgICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWFudHNcbi8vXG4vLyBBZGQgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxuLy8gT3JnYW5pemF0aW9uYWxseSwgdGhpcyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIGA6aG92ZXJgIHN0YXRlcy5cblxuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoc3VjY2VzcywgJHN0YXRlLXN1Y2Nlc3MtYmcsICRzdGF0ZS1zdWNjZXNzLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoaW5mbywgJHN0YXRlLWluZm8tYmcsICRzdGF0ZS1pbmZvLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQod2FybmluZywgJHN0YXRlLXdhcm5pbmctYmcsICRzdGF0ZS13YXJuaW5nLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoZGFuZ2VyLCAkc3RhdGUtZGFuZ2VyLWJnLCAkc3RhdGUtZGFuZ2VyLXRleHQpO1xuXG5cbi8vIEN1c3RvbSBjb250ZW50IG9wdGlvbnNcbi8vXG4vLyBFeHRyYSBjbGFzc2VzIGZvciBjcmVhdGluZyB3ZWxsLWZvcm1hdHRlZCBjb250ZW50IHdpdGhpbiBgLmxpc3QtZ3JvdXAtaXRlbWBzLlxuXG4ubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG4ubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xufVxuIiwiLy9cbi8vIFBhbmVsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4ucGFuZWwge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRwYW5lbC1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNSkpO1xufVxuXG4vLyBQYW5lbCBjb250ZW50c1xuLnBhbmVsLWJvZHkge1xuICBwYWRkaW5nOiAkcGFuZWwtYm9keS1wYWRkaW5nO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gT3B0aW9uYWwgaGVhZGluZ1xuLnBhbmVsLWhlYWRpbmcge1xuICBwYWRkaW5nOiAkcGFuZWwtaGVhZGluZy1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcblxuICA+IC5kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBXaXRoaW4gaGVhZGluZywgc3RyaXAgYW55IGBoKmAgdGFnIG9mIGl0cyBkZWZhdWx0IG1hcmdpbnMgZm9yIHNwYWNpbmcuXG4ucGFuZWwtdGl0bGUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMTI1KSk7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gID4gYSxcbiAgPiBzbWFsbCxcbiAgPiAuc21hbGwsXG4gID4gc21hbGwgPiBhLFxuICA+IC5zbWFsbCA+IGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIE9wdGlvbmFsIGZvb3RlciAoc3RheXMgZ3JheSBpbiBldmVyeSBtb2RpZmllciBjbGFzcylcbi5wYW5lbC1mb290ZXIge1xuICBwYWRkaW5nOiAkcGFuZWwtZm9vdGVyLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1mb290ZXItYmc7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkcGFuZWwtaW5uZXItYm9yZGVyO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG59XG5cblxuLy8gTGlzdCBncm91cHMgaW4gcGFuZWxzXG4vL1xuLy8gQnkgZGVmYXVsdCwgc3BhY2Ugb3V0IGxpc3QgZ3JvdXAgY29udGVudCBmcm9tIHBhbmVsIGhlYWRpbmdzIHRvIGFjY291bnQgZm9yXG4vLyBhbnkga2luZCBvZiBjdXN0b20gY29udGVudCBiZXR3ZWVuIHRoZSB0d28uXG5cbi5wYW5lbCB7XG4gID4gLmxpc3QtZ3JvdXAsXG4gID4gLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuICAgICAgfVxuICAgIH1cbiAgICAvLyBBZGQgYm9yZGVyIGJvdHRvbSByYWRpdXMgZm9yIGxhc3Qgb25lXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIENvbGxhcHNlIHNwYWNlIGJldHdlZW4gd2hlbiB0aGVyZSdzIG5vIGFkZGl0aW9uYWwgY29udGVudC5cbi5wYW5lbC1oZWFkaW5nICsgLmxpc3QtZ3JvdXAge1xuICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICB9XG59XG4ubGlzdC1ncm91cCArIC5wYW5lbC1mb290ZXIge1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xufVxuXG4vLyBUYWJsZXMgaW4gcGFuZWxzXG4vL1xuLy8gUGxhY2UgYSBub24tYm9yZGVyZWQgYC50YWJsZWAgd2l0aGluIGEgcGFuZWwgKG5vdCB3aXRoaW4gYSBgLnBhbmVsLWJvZHlgKSBhbmRcbi8vIHdhdGNoIGl0IGdvIGZ1bGwgd2lkdGguXG5cbi5wYW5lbCB7XG4gID4gLnRhYmxlLFxuICA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLFxuICA+IC5wYW5lbC1jb2xsYXBzZSA+IC50YWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIGNhcHRpb24ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkcGFuZWwtYm9keS1wYWRkaW5nO1xuICAgICAgcGFkZGluZy1yaWdodDogJHBhbmVsLWJvZHktcGFkZGluZztcbiAgICB9XG4gIH1cbiAgLy8gQWRkIGJvcmRlciB0b3AgcmFkaXVzIGZvciBmaXJzdCBvbmVcbiAgPiAudGFibGU6Zmlyc3QtY2hpbGQsXG4gID4gLnRhYmxlLXJlc3BvbnNpdmU6Zmlyc3QtY2hpbGQgPiAudGFibGU6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcblxuICAgID4gdGhlYWQ6Zmlyc3QtY2hpbGQsXG4gICAgPiB0Ym9keTpmaXJzdC1jaGlsZCB7XG4gICAgICA+IHRyOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcblxuICAgICAgICB0ZDpmaXJzdC1jaGlsZCxcbiAgICAgICAgdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICB9XG4gICAgICAgIHRkOmxhc3QtY2hpbGQsXG4gICAgICAgIHRoOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBBZGQgYm9yZGVyIGJvdHRvbSByYWRpdXMgZm9yIGxhc3Qgb25lXG4gID4gLnRhYmxlOmxhc3QtY2hpbGQsXG4gID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG5cbiAgICA+IHRib2R5Omxhc3QtY2hpbGQsXG4gICAgPiB0Zm9vdDpsYXN0LWNoaWxkIHtcbiAgICAgID4gdHI6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG5cbiAgICAgICAgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgICAgIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgfVxuICAgICAgICB0ZDpsYXN0LWNoaWxkLFxuICAgICAgICB0aDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgPiAucGFuZWwtYm9keSArIC50YWJsZSxcbiAgPiAucGFuZWwtYm9keSArIC50YWJsZS1yZXNwb25zaXZlLFxuICA+IC50YWJsZSArIC5wYW5lbC1ib2R5LFxuICA+IC50YWJsZS1yZXNwb25zaXZlICsgLnBhbmVsLWJvZHkge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG4gID4gLnRhYmxlID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0aCxcbiAgPiAudGFibGUgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG4gID4gLnRhYmxlLWJvcmRlcmVkLFxuICA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gICAgPiB0aGVhZCxcbiAgICA+IHRib2R5LFxuICAgID4gdGZvb3Qge1xuICAgICAgPiB0ciB7XG4gICAgICAgID4gdGg6Zmlyc3QtY2hpbGQsXG4gICAgICAgID4gdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgID4gdGg6bGFzdC1jaGlsZCxcbiAgICAgICAgPiB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgPiB0aGVhZCxcbiAgICA+IHRib2R5IHtcbiAgICAgID4gdHI6Zmlyc3QtY2hpbGQge1xuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gdGJvZHksXG4gICAgPiB0Zm9vdCB7XG4gICAgICA+IHRyOmxhc3QtY2hpbGQge1xuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gLnRhYmxlLXJlc3BvbnNpdmUge1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cblxuLy8gQ29sbGFwc2FibGUgcGFuZWxzIChha2EsIGFjY29yZGlvbilcbi8vXG4vLyBXcmFwIGEgc2VyaWVzIG9mIHBhbmVscyBpbiBgLnBhbmVsLWdyb3VwYCB0byB0dXJuIHRoZW0gaW50byBhbiBhY2NvcmRpb24gd2l0aFxuLy8gdGhlIGhlbHAgb2Ygb3VyIGNvbGxhcHNlIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4ucGFuZWwtZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG5cbiAgLy8gVGlnaHRlbiB1cCBtYXJnaW4gc28gaXQncyBvbmx5IGJldHdlZW4gcGFuZWxzXG4gIC5wYW5lbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkcGFuZWwtYm9yZGVyLXJhZGl1cztcblxuICAgICsgLnBhbmVsIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICB9XG4gIH1cblxuICAucGFuZWwtaGVhZGluZyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHksXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHBhbmVsLWlubmVyLWJvcmRlcjtcbiAgICB9XG4gIH1cblxuICAucGFuZWwtZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgICsgLnBhbmVsLWNvbGxhcHNlIC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcGFuZWwtaW5uZXItYm9yZGVyO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWF0aW9uc1xuLnBhbmVsLWRlZmF1bHQge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1kZWZhdWx0LWJvcmRlciwgJHBhbmVsLWRlZmF1bHQtdGV4dCwgJHBhbmVsLWRlZmF1bHQtaGVhZGluZy1iZywgJHBhbmVsLWRlZmF1bHQtYm9yZGVyKTtcbn1cbi5wYW5lbC1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtcHJpbWFyeS1ib3JkZXIsICRwYW5lbC1wcmltYXJ5LXRleHQsICRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmcsICRwYW5lbC1wcmltYXJ5LWJvcmRlcik7XG59XG4ucGFuZWwtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyLCAkcGFuZWwtc3VjY2Vzcy10ZXh0LCAkcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnLCAkcGFuZWwtc3VjY2Vzcy1ib3JkZXIpO1xufVxuLnBhbmVsLWluZm8ge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1pbmZvLWJvcmRlciwgJHBhbmVsLWluZm8tdGV4dCwgJHBhbmVsLWluZm8taGVhZGluZy1iZywgJHBhbmVsLWluZm8tYm9yZGVyKTtcbn1cbi5wYW5lbC13YXJuaW5nIHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtd2FybmluZy1ib3JkZXIsICRwYW5lbC13YXJuaW5nLXRleHQsICRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmcsICRwYW5lbC13YXJuaW5nLWJvcmRlcik7XG59XG4ucGFuZWwtZGFuZ2VyIHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtZGFuZ2VyLWJvcmRlciwgJHBhbmVsLWRhbmdlci10ZXh0LCAkcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmcsICRwYW5lbC1kYW5nZXItYm9yZGVyKTtcbn1cbiIsIi8vIEVtYmVkcyByZXNwb25zaXZlXG4vL1xuLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLyBNb2RpZmllciBjbGFzcyBmb3IgMTY6OSBhc3BlY3QgcmF0aW9cbi5lbWJlZC1yZXNwb25zaXZlLTE2Ynk5IHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbn1cblxuLy8gTW9kaWZpZXIgY2xhc3MgZm9yIDQ6MyBhc3BlY3QgcmF0aW9cbi5lbWJlZC1yZXNwb25zaXZlLTRieTMge1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xufVxuIiwiLy9cbi8vIFdlbGxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi53ZWxsIHtcbiAgbWluLWhlaWdodDogMjBweDtcbiAgcGFkZGluZzogMTlweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdlbGwtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR3ZWxsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDUpKTtcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGRkO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLDAsMCwuMTUpO1xuICB9XG59XG5cbi8vIFNpemVzXG4ud2VsbC1sZyB7XG4gIHBhZGRpbmc6IDI0cHg7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlO1xufVxuLndlbGwtc20ge1xuICBwYWRkaW5nOiA5cHg7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtYWxsO1xufVxuIiwiLy9cbi8vIENsb3NlIGljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5jbG9zZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlICogMS41KTtcbiAgZm9udC13ZWlnaHQ6ICRjbG9zZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gIHRleHQtc2hhZG93OiAkY2xvc2UtdGV4dC1zaGFkb3c7XG4gIEBpbmNsdWRlIG9wYWNpdHkoLjIpO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC41KTtcbiAgfVxuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBidXR0b24mIHRvIGJ1dHRvbi5jbG9zZVxufVxuXG4vLyBBZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIGJ1dHRvbiB2ZXJzaW9uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5idXR0b24uY2xvc2Uge1xuICBwYWRkaW5nOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cbiIsIi8vXG4vLyBNb2RhbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIC5tb2RhbC1vcGVuICAgICAgLSBib2R5IGNsYXNzIGZvciBraWxsaW5nIHRoZSBzY3JvbGxcbi8vIC5tb2RhbCAgICAgICAgICAgLSBjb250YWluZXIgdG8gc2Nyb2xsIHdpdGhpblxuLy8gLm1vZGFsLWRpYWxvZyAgICAtIHBvc2l0aW9uaW5nIHNoZWxsIGZvciB0aGUgYWN0dWFsIG1vZGFsXG4vLyAubW9kYWwtY29udGVudCAgIC0gYWN0dWFsIG1vZGFsIHcvIGJnIGFuZCBjb3JuZXJzIGFuZCBzaGl0XG5cbi8vIEtpbGwgdGhlIHNjcm9sbCBvbiB0aGUgYm9keVxuLm1vZGFsLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLyBDb250YWluZXIgdGhhdCB0aGUgbW9kYWwgc2Nyb2xscyB3aXRoaW5cbi5tb2RhbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgJi5mYWRlIC5tb2RhbC1kaWFsb2cge1xuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgwLCAtMjUlKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXRyYW5zZm9ybSgwLjNzIGVhc2Utb3V0KTtcbiAgfVxuICAmLmluIC5tb2RhbC1kaWFsb2cgeyBAaW5jbHVkZSB0cmFuc2xhdGUoMCwgMCkgfVxufVxuLm1vZGFsLW9wZW4gLm1vZGFsIHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDEwcHg7XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1jb250ZW50LWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkbW9kYWwtY29udGVudC1mYWxsYmFjay1ib3JkZXItY29sb3I7IC8vb2xkIGJyb3dzZXJzIGZhbGxiYWNrIChpZTggZXRjKVxuICBib3JkZXI6IDFweCBzb2xpZCAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgM3B4IDlweCByZ2JhKDAsMCwwLC41KSk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tncm91bmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1iYWNrZHJvcC1iZztcbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgQGluY2x1ZGUgb3BhY2l0eSgwKTsgfVxuICAmLmluIHsgQGluY2x1ZGUgb3BhY2l0eSgkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eSk7IH1cbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBwYWRkaW5nOiAkbW9kYWwtdGl0bGUtcGFkZGluZztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yO1xuICBtaW4taGVpZ2h0OiAoJG1vZGFsLXRpdGxlLXBhZGRpbmcgKyAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQpO1xufVxuLy8gQ2xvc2UgaWNvblxuLm1vZGFsLWhlYWRlciAuY2xvc2Uge1xuICBtYXJnaW4tdG9wOiAtMnB4O1xufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xuICB0ZXh0LWFsaWduOiByaWdodDsgLy8gcmlnaHQgYWxpZ24gYnV0dG9uc1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGNsZWFyZml4OyAvLyBjbGVhciBpdCBpbiBjYXNlIGZvbGtzIHVzZSAucHVsbC0qIGNsYXNzZXMgb24gYnV0dG9uc1xuXG4gIC8vIFByb3Blcmx5IHNwYWNlIG91dCBidXR0b25zXG4gIC5idG4gKyAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIGFjY291bnQgZm9yIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0gd2hpY2ggZ2V0cyB0aGUgYm90dG9tIG1hcmdpbiBsaWtlIGFsbCBvdGhlciBpbnB1dHNcbiAgfVxuICAvLyBidXQgb3ZlcnJpZGUgdGhhdCBmb3IgYnV0dG9uIGdyb3Vwc1xuICAuYnRuLWdyb3VwIC5idG4gKyAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgfVxuICAvLyBhbmQgb3ZlcnJpZGUgaXQgZm9yIGJsb2NrIGJ1dHRvbnMgYXMgd2VsbFxuICAuYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICB3aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogMzBweCBhdXRvO1xuICB9XG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgNXB4IDE1cHggcmdiYSgwLDAsMCwuNSkpO1xuICB9XG5cbiAgLy8gTW9kYWwgc2l6ZXNcbiAgLm1vZGFsLXNtIHsgd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgLm1vZGFsLWxnIHsgd2lkdGg6ICRtb2RhbC1sZzsgfVxufVxuIiwiLy9cbi8vIFRvb2x0aXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAvLyBSZXNldCBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgZ2l2ZW4gbmV3IGluc2VydGlvbiBtZXRob2RcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG5cbiAgJi5pbiAgICAgeyBAaW5jbHVkZSBvcGFjaXR5KCR0b29sdGlwLW9wYWNpdHkpOyB9XG4gICYudG9wICAgIHsgbWFyZ2luLXRvcDogIC0zcHg7IHBhZGRpbmc6ICR0b29sdGlwLWFycm93LXdpZHRoIDA7IH1cbiAgJi5yaWdodCAgeyBtYXJnaW4tbGVmdDogIDNweDsgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy13aWR0aDsgfVxuICAmLmJvdHRvbSB7IG1hcmdpbi10b3A6ICAgM3B4OyBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwOyB9XG4gICYubGVmdCAgIHsgbWFyZ2luLWxlZnQ6IC0zcHg7IHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGg7IH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogM3B4IDhweDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG59XG5cbi8vIEFycm93c1xuLnRvb2x0aXAtYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG4vLyBOb3RlOiBEZXByZWNhdGVkIC50b3AtbGVmdCwgLnRvcC1yaWdodCwgLmJvdHRvbS1sZWZ0LCBhbmQgLmJvdHRvbS1yaWdodCBhcyBvZiB2My4zLjFcbi50b29sdGlwIHtcbiAgJi50b3AgLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi50b3AtbGVmdCAudG9vbHRpcC1hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tYm90dG9tOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYudG9wLXJpZ2h0IC50b29sdGlwLWFycm93IHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWJvdHRvbTogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLnJpZ2h0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmxlZnQgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoIDAgJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYuYm90dG9tIC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYuYm90dG9tLWxlZnQgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmJvdHRvbS1yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbn1cbiIsIi8vXG4vLyBQb3BvdmVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4ucG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1heC13aWR0aDogJHBvcG92ZXItbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAxcHg7XG4gIC8vIFJlc2V0IGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyBnaXZlbiBuZXcgaW5zZXJ0aW9uIG1ldGhvZFxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCAkcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3I7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRwb3BvdmVyLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCA1cHggMTBweCByZ2JhKDAsMCwwLC4yKSk7XG5cbiAgLy8gT3ZlcnJpZGVzIGZvciBwcm9wZXIgaW5zZXJ0aW9uXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cbiAgLy8gT2Zmc2V0IHRoZSBwb3BvdmVyIHRvIGFjY291bnQgZm9yIHRoZSBwb3BvdmVyIGFycm93XG4gICYudG9wICAgICB7IG1hcmdpbi10b3A6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxuICAmLnJpZ2h0ICAgeyBtYXJnaW4tbGVmdDogJHBvcG92ZXItYXJyb3ctd2lkdGg7IH1cbiAgJi5ib3R0b20gIHsgbWFyZ2luLXRvcDogJHBvcG92ZXItYXJyb3ctd2lkdGg7IH1cbiAgJi5sZWZ0ICAgIHsgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxufVxuXG4ucG9wb3Zlci10aXRsZSB7XG4gIG1hcmdpbjogMDsgLy8gcmVzZXQgaGVhZGluZyBtYXJnaW5cbiAgcGFkZGluZzogOHB4IDE0cHg7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci10aXRsZS1iZztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGRhcmtlbigkcG9wb3Zlci10aXRsZS1iZywgNSUpO1xuICBib3JkZXItcmFkaXVzOiAoJGJvcmRlci1yYWRpdXMtbGFyZ2UgLSAxKSAoJGJvcmRlci1yYWRpdXMtbGFyZ2UgLSAxKSAwIDA7XG59XG5cbi5wb3BvdmVyLWNvbnRlbnQge1xuICBwYWRkaW5nOiA5cHggMTRweDtcbn1cblxuLy8gQXJyb3dzXG4vL1xuLy8gLmFycm93IGlzIG91dGVyLCAuYXJyb3c6YWZ0ZXIgaXMgaW5uZXJcblxuLnBvcG92ZXIgPiAuYXJyb3cge1xuICAmLFxuICAmOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgfVxufVxuLnBvcG92ZXIgPiAuYXJyb3cge1xuICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xufVxuLnBvcG92ZXIgPiAuYXJyb3c6YWZ0ZXIge1xuICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4ucG9wb3ZlciB7XG4gICYudG9wID4gLmFycm93IHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOyAvLyBJRTggZmFsbGJhY2tcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICBib3R0b206IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgYm90dG9tOiAxcHg7XG4gICAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuICAmLnJpZ2h0ID4gLmFycm93IHtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgbWFyZ2luLXRvcDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGxlZnQ6IDFweDtcbiAgICAgIGJvdHRvbTogLSRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuICAmLmJvdHRvbSA+IC5hcnJvdyB7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjsgLy8gSUU4IGZhbGxiYWNrXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgdG9wOiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIHRvcDogMXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAmLmxlZnQgPiAuYXJyb3cge1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgbWFyZ2luLXRvcDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgcmlnaHQ6IDFweDtcbiAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICAgIGJvdHRvbTogLSRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIENhcm91c2VsXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIFdyYXBwZXIgZm9yIHRoZSBzbGlkZSBjb250YWluZXIgYW5kIGluZGljYXRvcnNcbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5pdGVtIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKC42cyBlYXNlLWluLW91dCBsZWZ0KTtcblxuICAgIC8vIEFjY291bnQgZm9yIGphbmtpdHVkZSBvbiBpbWFnZXNcbiAgICA+IGltZyxcbiAgICA+IGEgPiBpbWcge1xuICAgICAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmU7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG5cbiAgICAvLyBXZWJLaXQgQ1NTMyB0cmFuc2Zvcm1zIGZvciBzdXBwb3J0ZWQgZGV2aWNlc1xuICAgIEBtZWRpYSBhbGwgYW5kICh0cmFuc2Zvcm0tM2QpLCAoLXdlYmtpdC10cmFuc2Zvcm0tM2QpIHtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tdHJhbnNmb3JtKDAuNnMgZWFzZS1pbi1vdXQpO1xuICAgICAgQGluY2x1ZGUgYmFja2ZhY2UtdmlzaWJpbGl0eShoaWRkZW4pO1xuICAgICAgQGluY2x1ZGUgcGVyc3BlY3RpdmUoMTAwMCk7XG5cbiAgICAgICYubmV4dCxcbiAgICAgICYuYWN0aXZlLnJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgICAmLnByZXYsXG4gICAgICAmLmFjdGl2ZS5sZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgICAgJi5uZXh0LmxlZnQsXG4gICAgICAmLnByZXYucmlnaHQsXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gID4gLmFjdGl2ZSxcbiAgPiAubmV4dCxcbiAgPiAucHJldiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICA+IC5hY3RpdmUge1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICA+IC5uZXh0LFxuICA+IC5wcmV2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAubmV4dCB7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuICA+IC5wcmV2IHtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgfVxuICA+IC5uZXh0LmxlZnQsXG4gID4gLnByZXYucmlnaHQge1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICA+IC5hY3RpdmUubGVmdCB7XG4gICAgbGVmdDogLTEwMCU7XG4gIH1cbiAgPiAuYWN0aXZlLnJpZ2h0IHtcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG5cbn1cblxuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmNhcm91c2VsLWNvbnRyb2wge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIEBpbmNsdWRlIG9wYWNpdHkoJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eSk7XG4gIGZvbnQtc2l6ZTogJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1zaGFkb3c6ICRjYXJvdXNlbC10ZXh0LXNoYWRvdztcbiAgLy8gV2UgY2FuJ3QgaGF2ZSB0aGlzIHRyYW5zaXRpb24gaGVyZSBiZWNhdXNlIFdlYktpdCBjYW5jZWxzIHRoZSBjYXJvdXNlbFxuICAvLyBhbmltYXRpb24gaWYgeW91IHRyaXAgdGhpcyB3aGlsZSBpbiB0aGUgbWlkZGxlIG9mIGFub3RoZXIgYW5pbWF0aW9uLlxuXG4gIC8vIFNldCBncmFkaWVudHMgZm9yIGJhY2tncm91bmRzXG4gICYubGVmdCB7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6IHJnYmEoMCwwLDAsLjUpLCAkZW5kLWNvbG9yOiByZ2JhKDAsMCwwLC4wMDAxKSk7XG4gIH1cbiAgJi5yaWdodCB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogcmdiYSgwLDAsMCwuMDAwMSksICRlbmQtY29sb3I6IHJnYmEoMCwwLDAsLjUpKTtcbiAgfVxuXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC45KTtcbiAgfVxuXG4gIC8vIFRvZ2dsZXNcbiAgLmljb24tcHJldixcbiAgLmljb24tbmV4dCxcbiAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXG4gIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5pY29uLXByZXYsXG4gIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0IHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICB9XG4gIC5pY29uLW5leHQsXG4gIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCB7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICB9XG4gIC5pY29uLXByZXYsXG4gIC5pY29uLW5leHQge1xuICAgIHdpZHRoOiAgMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1mYW1pbHk6IHNlcmlmO1xuICB9XG5cblxuICAuaWNvbi1wcmV2IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDM5JzsvLyBTSU5HTEUgTEVGVC1QT0lOVElORyBBTkdMRSBRVU9UQVRJT04gTUFSSyAoVSsyMDM5KVxuICAgIH1cbiAgfVxuICAuaWNvbi1uZXh0IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDNhJzsvLyBTSU5HTEUgUklHSFQtUE9JTlRJTkcgQU5HTEUgUVVPVEFUSU9OIE1BUksgKFUrMjAzQSlcbiAgICB9XG4gIH1cbn1cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHNcbi8vXG4vLyBBZGQgYW4gdW5vcmRlcmVkIGxpc3Qgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYSBsaXN0IGl0ZW0gZm9yIGVhY2hcbi8vIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgei1pbmRleDogMTU7XG4gIHdpZHRoOiA2MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzAlO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAgMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgbWFyZ2luOiAxcHg7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIC8vIElFOC05IGhhY2sgZm9yIGV2ZW50IGhhbmRsaW5nXG4gICAgLy9cbiAgICAvLyBJbnRlcm5ldCBFeHBsb3JlciA4LTkgZG9lcyBub3Qgc3VwcG9ydCBjbGlja3Mgb24gZWxlbWVudHMgd2l0aG91dCBhIHNldFxuICAgIC8vIGBiYWNrZ3JvdW5kLWNvbG9yYC4gV2UgY2Fubm90IHVzZSBgZmlsdGVyYCBzaW5jZSB0aGF0J3Mgbm90IHZpZXdlZCBhcyBhXG4gICAgLy8gYmFja2dyb3VuZCBjb2xvciBieSB0aGUgYnJvd3Nlci4gVGh1cywgYSBoYWNrIGlzIG5lZWRlZC5cbiAgICAvLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI0ludGVybmV0X0V4cGxvcmVyXG4gICAgLy9cbiAgICAvLyBGb3IgSUU4LCB3ZSBzZXQgc29saWQgYmxhY2sgYXMgaXQgZG9lc24ndCBzdXBwb3J0IGByZ2JhKClgLiBGb3IgSUU5LCB3ZVxuICAgIC8vIHNldCBhbHBoYSB0cmFuc3BhcmVuY3kgZm9yIHRoZSBiZXN0IHJlc3VsdHMgcG9zc2libGUuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMCBcXDk7IC8vIElFOFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMCk7IC8vIElFOVxuICB9XG4gIC5hY3RpdmUge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogIDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICB9XG59XG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSGlkZGVuIGJ5IGRlZmF1bHQgZm9yIHNtYWxsZXIgdmlld3BvcnRzXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMTUlO1xuICByaWdodDogMTUlO1xuICBib3R0b206IDIwcHg7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXNoYWRvdzogJGNhcm91c2VsLXRleHQtc2hhZG93O1xuICAmIC5idG4ge1xuICAgIHRleHQtc2hhZG93OiBub25lOyAvLyBObyBzaGFkb3cgZm9yIGJ1dHRvbiBlbGVtZW50cyBpbiBjYXJvdXNlbC1jYXB0aW9uXG4gIH1cbn1cblxuXG4vLyBTY2FsZSB1cCBjb250cm9scyBmb3IgdGFibGV0cyBhbmQgdXBcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG5cbiAgLy8gU2NhbGUgdXAgdGhlIGNvbnRyb2xzIGEgc21pZGdlXG4gIC5jYXJvdXNlbC1jb250cm9sIHtcbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCxcbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQsXG4gICAgLmljb24tcHJldixcbiAgICAuaWNvbi1uZXh0IHtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgbWFyZ2luLXRvcDogLTE1cHg7XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgfVxuICAgIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LFxuICAgIC5pY29uLXByZXYge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICAgIH1cbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQsXG4gICAgLmljb24tbmV4dCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICAgIH1cbiAgfVxuXG4gIC8vIFNob3cgYW5kIGxlZnQgYWxpZ24gdGhlIGNhcHRpb25zXG4gIC5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgICBsZWZ0OiAyMCU7XG4gICAgcmlnaHQ6IDIwJTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIC8vIE1vdmUgdXAgdGhlIGluZGljYXRvcnNcbiAgLmNhcm91c2VsLWluZGljYXRvcnMge1xuICAgIGJvdHRvbTogMjBweDtcbiAgfVxufVxuIiwiLy9cbi8vIFV0aWxpdHkgY2xhc3Nlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBGbG9hdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmNsZWFyZml4IHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG4uY2VudGVyLWJsb2NrIHtcbiAgQGluY2x1ZGUgY2VudGVyLWJsb2NrO1xufVxuLnB1bGwtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cbi5wdWxsLWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIFRvZ2dsaW5nIGNvbnRlbnRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gTm90ZTogRGVwcmVjYXRlZCAuaGlkZSBpbiBmYXZvciBvZiAuaGlkZGVuIG9yIC5zci1vbmx5IChhcyBhcHByb3ByaWF0ZSkgaW4gdjMuMC4xXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5zaG93IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlO1xufVxuXG5cbi8vIEhpZGUgZnJvbSBzY3JlZW5yZWFkZXJzIGFuZCBicm93c2Vyc1xuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuXG4vLyBGb3IgQWZmaXggcGx1Z2luXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5hZmZpeCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cbiIsIi8vXG4vLyBSZXNwb25zaXZlOiBVdGlsaXR5IGNsYXNzZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSUUxMCBpbiBXaW5kb3dzIChQaG9uZSkgOFxuLy9cbi8vIFN1cHBvcnQgZm9yIHJlc3BvbnNpdmUgdmlld3MgdmlhIG1lZGlhIHF1ZXJpZXMgaXMga2luZCBvZiBib3JrZWQgaW4gSUUxMCwgZm9yXG4vLyBTdXJmYWNlL2Rlc2t0b3AgaW4gc3BsaXQgdmlldyBhbmQgZm9yIFdpbmRvd3MgUGhvbmUgOC4gVGhpcyBwYXJ0aWN1bGFyIGZpeFxuLy8gbXVzdCBiZSBhY2NvbXBhbmllZCBieSBhIHNuaXBwZXQgb2YgSmF2YVNjcmlwdCB0byBzbmlmZiB0aGUgdXNlciBhZ2VudCBhbmRcbi8vIGFwcGx5IHNvbWUgY29uZGl0aW9uYWwgQ1NTIHRvICpvbmx5KiB0aGUgU3VyZmFjZS9kZXNrdG9wIFdpbmRvd3MgOC4gTG9vayBhdFxuLy8gb3VyIEdldHRpbmcgU3RhcnRlZCBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIG9uIHRoaXMgYnVnLlxuLy9cbi8vIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIGZvbGxvd2luZzpcbi8vXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMDQ5N1xuLy8gRG9jczogaHR0cDovL2dldGJvb3RzdHJhcC5jb20vZ2V0dGluZy1zdGFydGVkLyNzdXBwb3J0LWllMTAtd2lkdGhcbi8vIFNvdXJjZTogaHR0cDovL3RpbWthZGxlYy5jb20vMjAxMy8wMS93aW5kb3dzLXBob25lLTgtYW5kLWRldmljZS13aWR0aC9cbi8vIFNvdXJjZTogaHR0cDovL3RpbWthZGxlYy5jb20vMjAxMi8xMC9pZTEwLXNuYXAtbW9kZS1hbmQtcmVzcG9uc2l2ZS1kZXNpZ24vXG5cbkAtbXMtdmlld3BvcnQge1xuICB3aWR0aDogZGV2aWNlLXdpZHRoO1xufVxuXG5cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXhzLCAudmlzaWJsZS1zbSwgLnZpc2libGUtbWQsIGFuZCAudmlzaWJsZS1sZyBhcyBvZiB2My4yLjBcblxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXhzJyk7XG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtc20nKTtcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1tZCcpO1xuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLWxnJyk7XG5cbi52aXNpYmxlLXhzLWJsb2NrLFxuLnZpc2libGUteHMtaW5saW5lLFxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtc20tYmxvY2ssXG4udmlzaWJsZS1zbS1pbmxpbmUsXG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1tZC1ibG9jayxcbi52aXNpYmxlLW1kLWlubGluZSxcbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayxcbi52aXNpYmxlLWxnLWJsb2NrLFxuLnZpc2libGUtbGctaW5saW5lLFxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS14cycpO1xufVxuLnZpc2libGUteHMtYmxvY2sge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS14cy1pbmxpbmUge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1zbScpO1xufVxuLnZpc2libGUtc20tYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXNtLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1tZCcpO1xufVxuLnZpc2libGUtbWQtYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLW1kLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcbn1cbi52aXNpYmxlLWxnLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbGctaW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi14cycpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1zbScpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1tZCcpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tbGcnKTtcbn1cblxuXG4vLyBQcmludCB1dGlsaXRpZXNcbi8vXG4vLyBNZWRpYSBxdWVyaWVzIGFyZSBwbGFjZWQgb24gdGhlIGluc2lkZSB0byBiZSBtaXhpbi1mcmllbmRseS5cblxuLy8gTm90ZTogRGVwcmVjYXRlZCAudmlzaWJsZS1wcmludCBhcyBvZiB2My4yLjBcblxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXByaW50Jyk7XG5cbkBtZWRpYSBwcmludCB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtcHJpbnQnKTtcbn1cbi52aXNpYmxlLXByaW50LWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQtaW5saW5lIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXByaW50LWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXByaW50Jyk7XG59XG4iLCIkZ2VvbWV0cmlhLXBhdGg6ICAgICBcIi4uL2ZvbnRzL2dlb21ldHJpYS9cIjtcblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnR2VvbWV0cmlhJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IHVybCgjeyRnZW9tZXRyaWEtcGF0aH1nZW9tZXRyaWEtcmVndWxhci13ZWJmb250LmVvdCk7XG4gIHNyYzogbG9jYWwoJ+KYuicpLFxuICB1cmwoI3skZ2VvbWV0cmlhLXBhdGh9Z2VvbWV0cmlhLXJlZ3VsYXItd2ViZm9udC53b2ZmKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCN7JGdlb21ldHJpYS1wYXRofWdlb21ldHJpYS1yZWd1bGFyLXdlYmZvbnQud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnR2VvbWV0cmlhJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwO1xuICBzcmM6IHVybCgjeyRnZW9tZXRyaWEtcGF0aH1nZW9tZXRyaWEtbWVkaXVtLXdlYmZvbnQuZW90KTtcbiAgc3JjOiBsb2NhbCgn4pi6JyksXG4gIHVybCgjeyRnZW9tZXRyaWEtcGF0aH1nZW9tZXRyaWEtbWVkaXVtLXdlYmZvbnQud29mZikgZm9ybWF0KCd3b2ZmJyksXG4gIHVybCgjeyRnZW9tZXRyaWEtcGF0aH1nZW9tZXRyaWEtbWVkaXVtLXdlYmZvbnQud29mZjIpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCN7JGdlb21ldHJpYS1wYXRofWdlb21ldHJpYS1tZWRpdW0td2ViZm9udC5zdmcpIGZvcm1hdCgnc3ZnJyk7XG59XG4iLCIkbGF0by1wYXRoOiAgICAgXCIuLi9mb250cy9sYXRvL1wiO1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNjAwO1xuICBzcmM6IHVybCgjeyRsYXRvLXBhdGh9bGF0by1ibGFjay13ZWJmb250LmVvdCk7XG4gIHNyYzogbG9jYWwoJ+KYuicpLFxuICB1cmwoI3skbGF0by1wYXRofWxhdG8tYmxhY2std2ViZm9udC53b2ZmKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWJsYWNrLXdlYmZvbnQud29mZjIpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWJsYWNrLXdlYmZvbnQuc3ZnKSBmb3JtYXQoJ3N2ZycpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0byc7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgc3JjOiB1cmwoI3skbGF0by1wYXRofWxhdG8tYmxhY2tpdGFsaWMtd2ViZm9udC5lb3QpO1xuICBzcmM6IGxvY2FsKCfimLonKSxcbiAgdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWJsYWNraXRhbGljLXdlYmZvbnQud29mZikgZm9ybWF0KCd3b2ZmJyksXG4gIHVybCgjeyRsYXRvLXBhdGh9bGF0by1ibGFja2l0YWxpYy13ZWJmb250LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgjeyRsYXRvLXBhdGh9bGF0by1ibGFja2l0YWxpYy13ZWJmb250LnN2ZykgZm9ybWF0KCdzdmcnKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0xhdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWJvbGQtd2ViZm9udC5lb3QpO1xuICBzcmM6IGxvY2FsKCfimLonKSxcbiAgdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWJvbGQtd2ViZm9udC53b2ZmKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWJvbGQtd2ViZm9udC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpLFxuICB1cmwoI3skbGF0by1wYXRofWxhdG8tYm9sZC13ZWJmb250LnN2ZykgZm9ybWF0KCdzdmcnKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0xhdG8nO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWJvbGRpdGFsaWMtd2ViZm9udC5lb3QpO1xuICBzcmM6IGxvY2FsKCfimLonKSxcbiAgdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWJvbGRpdGFsaWMtd2ViZm9udC53b2ZmKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWJvbGRpdGFsaWMtd2ViZm9udC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpLFxuICB1cmwoI3skbGF0by1wYXRofWxhdG8tYm9sZGl0YWxpYy13ZWJmb250LnN2ZykgZm9ybWF0KCdzdmcnKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0xhdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIHNyYzogdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWhhaXJsaW5lLXdlYmZvbnQuZW90KTtcbiAgc3JjOiBsb2NhbCgn4pi6JyksXG4gIHVybCgjeyRsYXRvLXBhdGh9bGF0by1oYWlybGluZS13ZWJmb250LndvZmYpIGZvcm1hdCgnd29mZicpLFxuICB1cmwoI3skbGF0by1wYXRofWxhdG8taGFpcmxpbmUtd2ViZm9udC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpLFxuICB1cmwoI3skbGF0by1wYXRofWxhdG8taGFpcmxpbmUtd2ViZm9udC5zdmcpIGZvcm1hdCgnc3ZnJyk7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogMTAwO1xuICBzcmM6IHVybCgjeyRsYXRvLXBhdGh9bGF0by1oYWlybGluZWl0YWxpYy13ZWJmb250LmVvdCk7XG4gIHNyYzogbG9jYWwoJ+KYuicpLFxuICB1cmwoI3skbGF0by1wYXRofWxhdG8taGFpcmxpbmVpdGFsaWMtd2ViZm9udC53b2ZmKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWhhaXJsaW5laXRhbGljLXdlYmZvbnQud29mZjIpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWhhaXJsaW5laXRhbGljLXdlYmZvbnQuc3ZnKSBmb3JtYXQoJ3N2ZycpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0byc7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgc3JjOiB1cmwoI3skbGF0by1wYXRofWxhdG8taXRhbGljLXdlYmZvbnQuZW90KTtcbiAgc3JjOiBsb2NhbCgn4pi6JyksXG4gIHVybCgjeyRsYXRvLXBhdGh9bGF0by1pdGFsaWMtd2ViZm9udC53b2ZmKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWl0YWxpYy13ZWJmb250LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgjeyRsYXRvLXBhdGh9bGF0by1pdGFsaWMtd2ViZm9udC5zdmcpIGZvcm1hdCgnc3ZnJyk7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogMzAwO1xuICBzcmM6IHVybCgjeyRsYXRvLXBhdGh9bGF0by1pdGFsaWMtd2ViZm9udC5lb3QpO1xuICBzcmM6IGxvY2FsKCfimLonKSxcbiAgdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWl0YWxpYy13ZWJmb250LndvZmYpIGZvcm1hdCgnd29mZicpLFxuICB1cmwoI3skbGF0by1wYXRofWxhdG8taXRhbGljLXdlYmZvbnQud29mZjIpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWl0YWxpYy13ZWJmb250LnN2ZykgZm9ybWF0KCdzdmcnKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0xhdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIHNyYzogdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWxpZ2h0LXdlYmZvbnQuZW90KTtcbiAgc3JjOiBsb2NhbCgn4pi6JyksXG4gIHVybCgjeyRsYXRvLXBhdGh9bGF0by1saWdodC13ZWJmb250LndvZmYpIGZvcm1hdCgnd29mZicpLFxuICB1cmwoI3skbGF0by1wYXRofWxhdG8tbGlnaHQtd2ViZm9udC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpLFxuICB1cmwoI3skbGF0by1wYXRofWxhdG8tbGlnaHQtd2ViZm9udC5zdmcpIGZvcm1hdCgnc3ZnJyk7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogMjAwO1xuICBzcmM6IHVybCgjeyRsYXRvLXBhdGh9bGF0by1saWdodGl0YWxpYy13ZWJmb250LmVvdCk7XG4gIHNyYzogbG9jYWwoJ+KYuicpLFxuICB1cmwoI3skbGF0by1wYXRofWxhdG8tbGlnaHRpdGFsaWMtd2ViZm9udC53b2ZmKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWxpZ2h0aXRhbGljLXdlYmZvbnQud29mZjIpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCN7JGxhdG8tcGF0aH1sYXRvLWxpZ2h0aXRhbGljLXdlYmZvbnQuc3ZnKSBmb3JtYXQoJ3N2ZycpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgc3JjOiB1cmwoI3skbGF0by1wYXRofWxhdG8tcmVndWxhci13ZWJmb250LmVvdCk7XG4gIHNyYzogbG9jYWwoJ+KYuicpLFxuICB1cmwoI3skbGF0by1wYXRofWxhdG8tcmVndWxhci13ZWJmb250LndvZmYpIGZvcm1hdCgnd29mZicpLFxuICB1cmwoI3skbGF0by1wYXRofWxhdG8tcmVndWxhci13ZWJmb250LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgjeyRsYXRvLXBhdGh9bGF0by1yZWd1bGFyLXdlYmZvbnQuc3ZnKSBmb3JtYXQoJ3N2ZycpO1xufVxuIiwiJG1vbnRzZXJyYXQtcGF0aDogICAgIFwiLi4vZm9udHMvbW9udHNlcnJhdC9cIjtcblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgc3JjOiB1cmwoI3skbW9udHNlcnJhdC1wYXRofW1vbnRzZXJyYXQtbGlnaHQtd2ViZm9udC5lb3QpO1xuICBzcmM6IGxvY2FsKCfimLonKSxcbiAgdXJsKCN7JG1vbnRzZXJyYXQtcGF0aH1tb250c2VycmF0LWxpZ2h0LXdlYmZvbnQud29mZikgZm9ybWF0KCd3b2ZmJyksXG4gIHVybCgjeyRtb250c2VycmF0LXBhdGh9bW9udHNlcnJhdC1saWdodC13ZWJmb250LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgjeyRtb250c2VycmF0LXBhdGh9bW9udHNlcnJhdC1saWdodC13ZWJmb250LnN2ZykgZm9ybWF0KCdzdmcnKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogdXJsKCN7JG1vbnRzZXJyYXQtcGF0aH1tb250c2VycmF0LXJlZ3VsYXItd2ViZm9udC5lb3QpO1xuICBzcmM6IGxvY2FsKCfimLonKSxcbiAgdXJsKCN7JG1vbnRzZXJyYXQtcGF0aH1tb250c2VycmF0LXJlZ3VsYXItd2ViZm9udC53b2ZmKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCN7JG1vbnRzZXJyYXQtcGF0aH1tb250c2VycmF0LXJlZ3VsYXItd2ViZm9udC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpLFxuICB1cmwoI3skbW9udHNlcnJhdC1wYXRofW1vbnRzZXJyYXQtcmVndWxhci13ZWJmb250LnN2ZykgZm9ybWF0KCdzdmcnKTtcbn1cbiIsIiRyb2JvdG8tcGF0aDogICAgIFwiLi4vZm9udHMvcm9ib3RvL1wiO1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIHNyYzogdXJsKCN7JHJvYm90by1wYXRofXJvYm90by10aGluLXdlYmZvbnQuZW90KTtcbiAgc3JjOiBsb2NhbCgn4pi6JyksXG4gIHVybCgjeyRyb2JvdG8tcGF0aH1yb2JvdG8tdGhpbi13ZWJmb250LndvZmYpIGZvcm1hdCgnd29mZicpLFxuICB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLXRoaW4td2ViZm9udC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpLFxuICB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLXRoaW4td2ViZm9udC5zdmcpIGZvcm1hdCgnc3ZnJyk7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHNyYzogdXJsKCN7JHJvYm90by1wYXRofXJvYm90by1saWdodC13ZWJmb250LmVvdCk7XG4gIHNyYzogbG9jYWwoJ+KYuicpLFxuICB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLWxpZ2h0LXdlYmZvbnQud29mZikgZm9ybWF0KCd3b2ZmJyksXG4gIHVybCgjeyRyb2JvdG8tcGF0aH1yb2JvdG8tbGlnaHQtd2ViZm9udC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpLFxuICB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLWxpZ2h0LXdlYmZvbnQuc3ZnKSBmb3JtYXQoJ3N2ZycpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IHVybCgjeyRyb2JvdG8tcGF0aH1yb2JvdG8tcmVndWxhci13ZWJmb250LmVvdCk7XG4gIHNyYzogbG9jYWwoJ+KYuicpLFxuICB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLXJlZ3VsYXItd2ViZm9udC53b2ZmKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCN7JHJvYm90by1wYXRofXJvYm90by1yZWd1bGFyLXdlYmZvbnQud29mZjIpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCN7JHJvYm90by1wYXRofXJvYm90by1yZWd1bGFyLXdlYmZvbnQuc3ZnKSBmb3JtYXQoJ3N2ZycpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwO1xuICBzcmM6IHVybCgjeyRyb2JvdG8tcGF0aH1yb2JvdG8tbWVkaXVtLXdlYmZvbnQuZW90KTtcbiAgc3JjOiBsb2NhbCgn4pi6JyksXG4gIHVybCgjeyRyb2JvdG8tcGF0aH1yb2JvdG8tbWVkaXVtLXdlYmZvbnQud29mZikgZm9ybWF0KCd3b2ZmJyksXG4gIHVybCgjeyRyb2JvdG8tcGF0aH1yb2JvdG8tbWVkaXVtLXdlYmZvbnQud29mZjIpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCN7JHJvYm90by1wYXRofXJvYm90by1tZWRpdW0td2ViZm9udC5zdmcpIGZvcm1hdCgnc3ZnJyk7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogdXJsKCN7JHJvYm90by1wYXRofXJvYm90by1ib2xkLXdlYmZvbnQuZW90KTtcbiAgc3JjOiBsb2NhbCgn4pi6JyksXG4gIHVybCgjeyRyb2JvdG8tcGF0aH1yb2JvdG8tYm9sZC13ZWJmb250LndvZmYpIGZvcm1hdCgnd29mZicpLFxuICB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLWJvbGQtd2ViZm9udC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpLFxuICB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLWJvbGQtd2ViZm9udC5zdmcpIGZvcm1hdCgnc3ZnJyk7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHNyYzogdXJsKCN7JHJvYm90by1wYXRofXJvYm90by1ibGFjay13ZWJmb250LmVvdCk7XG4gIHNyYzogbG9jYWwoJ+KYuicpLFxuICB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLWJsYWNrLXdlYmZvbnQud29mZikgZm9ybWF0KCd3b2ZmJyksXG4gIHVybCgjeyRyb2JvdG8tcGF0aH1yb2JvdG8tYmxhY2std2ViZm9udC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpLFxuICB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLWJsYWNrLXdlYmZvbnQuc3ZnKSBmb3JtYXQoJ3N2ZycpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogMTAwO1xuICBzcmM6IHVybCgjeyRyb2JvdG8tcGF0aH1yb2JvdG8tdGhpbml0YWxpYy13ZWJmb250LmVvdCk7XG4gIHNyYzogbG9jYWwoJ+KYuicpLFxuICB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLXRoaW5pdGFsaWMtd2ViZm9udC53b2ZmKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCN7JHJvYm90by1wYXRofXJvYm90by10aGluaXRhbGljLXdlYmZvbnQud29mZjIpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCN7JHJvYm90by1wYXRofXJvYm90by10aGluaXRhbGljLXdlYmZvbnQuc3ZnKSBmb3JtYXQoJ3N2ZycpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogMzAwO1xuICBzcmM6IHVybCgjeyRyb2JvdG8tcGF0aH1yb2JvdG8tbGlnaHRpdGFsaWMtd2ViZm9udC5lb3QpO1xuICBzcmM6IGxvY2FsKCfimLonKSxcbiAgdXJsKCN7JHJvYm90by1wYXRofXJvYm90by1saWdodGl0YWxpYy13ZWJmb250LndvZmYpIGZvcm1hdCgnd29mZicpLFxuICB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLWxpZ2h0aXRhbGljLXdlYmZvbnQud29mZjIpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCN7JHJvYm90by1wYXRofXJvYm90by1saWdodGl0YWxpYy13ZWJmb250LnN2ZykgZm9ybWF0KCdzdmcnKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLWl0YWxpYy13ZWJmb250LmVvdCk7XG4gIHNyYzogbG9jYWwoJ+KYuicpLFxuICB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLWl0YWxpYy13ZWJmb250LndvZmYpIGZvcm1hdCgnd29mZicpLFxuICB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLWl0YWxpYy13ZWJmb250LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgjeyRyb2JvdG8tcGF0aH1yb2JvdG8taXRhbGljLXdlYmZvbnQuc3ZnKSBmb3JtYXQoJ3N2ZycpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNTAwO1xuICBzcmM6IHVybCgjeyRyb2JvdG8tcGF0aH1yb2JvdG8tbWVkaXVtaXRhbGljLXdlYmZvbnQuZW90KTtcbiAgc3JjOiBsb2NhbCgn4pi6JyksXG4gIHVybCgjeyRyb2JvdG8tcGF0aH1yb2JvdG8tbWVkaXVtaXRhbGljLXdlYmZvbnQud29mZikgZm9ybWF0KCd3b2ZmJyksXG4gIHVybCgjeyRyb2JvdG8tcGF0aH1yb2JvdG8tbWVkaXVtaXRhbGljLXdlYmZvbnQud29mZjIpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCN7JHJvYm90by1wYXRofXJvYm90by1tZWRpdW1pdGFsaWMtd2ViZm9udC5zdmcpIGZvcm1hdCgnc3ZnJyk7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogdXJsKCN7JHJvYm90by1wYXRofXJvYm90by1ib2xkaXRhbGljLXdlYmZvbnQuZW90KTtcbiAgc3JjOiBsb2NhbCgn4pi6JyksXG4gIHVybCgjeyRyb2JvdG8tcGF0aH1yb2JvdG8tYm9sZGl0YWxpYy13ZWJmb250LndvZmYpIGZvcm1hdCgnd29mZicpLFxuICB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLWJvbGRpdGFsaWMtd2ViZm9udC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpLFxuICB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLWJvbGRpdGFsaWMtd2ViZm9udC5zdmcpIGZvcm1hdCgnc3ZnJyk7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHNyYzogdXJsKCN7JHJvYm90by1wYXRofXJvYm90by1ibGFja2l0YWxpYy13ZWJmb250LmVvdCk7XG4gIHNyYzogbG9jYWwoJ+KYuicpLFxuICB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLWJsYWNraXRhbGljLXdlYmZvbnQud29mZikgZm9ybWF0KCd3b2ZmJyksXG4gIHVybCgjeyRyb2JvdG8tcGF0aH1yb2JvdG8tYmxhY2tpdGFsaWMtd2ViZm9udC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpLFxuICB1cmwoI3skcm9ib3RvLXBhdGh9cm9ib3RvLWJsYWNraXRhbGljLXdlYmZvbnQuc3ZnKSBmb3JtYXQoJ3N2ZycpO1xufVxuIiwiXG5AaW1wb3J0IFwiLi4vcHVibGljL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC92YXJpYWJsZXNcIjtcblxuLy8gTWVkaWEgc2l6ZXNcbi8vXG4vLyBDb21tb24gc2NyZWVuIHNpemVzIHwgYnJvd3NlciBzaXplczpcbi8vIGlQaG9uZSA0ICAgLSAzMjAgeCA0ODBweCB8IDQ4MCB4IDIxMnB4XG4vLyBpUGhvbmUgNSAgIC0gMzIwIHggNTY4cHggfCA1NjggeCAyMTJweFxuLy8gaVBob25lIDYgICAtIDM3NSB4IDY2N3B4IHwgNjY3IHggMjY3cHhcbi8vIGlQaG9uZSA2KyAgLSA0MTQgeCA3MzZweCB8IDczNiB4IDMwNnB4XG4vL1xuXG4vLyoqIEhlcmUgd2UgZGVmaW5lIHRoZSBsb3dlciBhbmQgdXBwZXIgYm91bmRzIGZvciBlYWNoIG1lZGlhIHNpemVcbi8vJHhzbWFsbC1tYXg6ICAgICAgNDgwcHg7ICAgIC8vIDMwZW07IC0gaVBob25lIGxhbmRzY2FwZVxuLy8kc21hbGwtbWluOiAgICAgICA0ODFweDsgICAgLy8gMzAuMDYyNWVtO1xuLy8kc21hbGwtbWF4OiAgICAgICA3NjhweDsgICAgLy8gNDhlbTsgLSBpUGFkIHBvcnRyYWl0XG4vLyRtZWRpdW0tbWluOiAgICAgIDc2OXB4OyAgICAvLyA0OC4wNjI1ZW07XG4vLyRtZWRpdW0tbWF4OiAgICAgIDEwMjRweDsgICAvLyA2NGVtOyAtIGlQYWQgbGFuZHNjYXBlXG4vLyRsYXJnZS1taW46ICAgICAgIDEwMjVweDsgICAvLyA2NC4wNjI1ZW07XG4vLyRsYXJnZS1tYXg6ICAgICAgIDEzMDBweDsgICAvLyA5MGVtO1xuXG4keGxhcmdlLW1pbjogICAgICAxMzAxcHg7ICAgLy8gODEuMzEyNWVtO1xuJHhsYXJnZS1tYXg6ICAgICAgMTUwMHB4OyAgIC8vIDkzLjc1ZW07XG5cbi8vKiogRml4ZWQgd2lkdGhzXG4kbWVkaXVtLXdpZHRoOiAgICA3NDVweDtcbiRsYXJnZS13aWR0aDogICAgIDEwMjRweDtcbiR4bGFyZ2Utd2lkdGg6ICAgIDEyMDBweDtcblxuLy8kc2NyZWVuLXhzOiAgICAgICAgICAgICAgICAgIDQ4MHB4ICFkZWZhdWx0O1xuLy8kc2NyZWVuLXhzLW1pbjogICAgICAgICAgICAgICRzY3JlZW4teHMgIWRlZmF1bHQ7XG4vLyRzY3JlZW4tcGhvbmU6ICAgICAgICAgICAgICAgJHNjcmVlbi14cy1taW4gIWRlZmF1bHQ7XG4vL1xuLy8kc2NyZWVuLXNtOiAgICAgICAgICAgICAgICAgIDc2OHB4ICFkZWZhdWx0O1xuLy8kc2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tc20gIWRlZmF1bHQ7XG4vLyRzY3JlZW4tdGFibGV0OiAgICAgICAgICAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG4vL1xuLy8kc2NyZWVuLW1kOiAgICAgICAgICAgICAgICAgIDk5MnB4ICFkZWZhdWx0O1xuLy8kc2NyZWVuLW1kLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbWQgIWRlZmF1bHQ7XG4vLyRzY3JlZW4tZGVza3RvcDogICAgICAgICAgICAgJHNjcmVlbi1tZC1taW4gIWRlZmF1bHQ7XG4vL1xuLy8kc2NyZWVuLWxnOiAgICAgICAgICAgICAgICAgIDEyMDBweCAhZGVmYXVsdDtcbi8vJHNjcmVlbi1sZy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLWxnICFkZWZhdWx0O1xuLy8kc2NyZWVuLWxnLWRlc2t0b3A6ICAgICAgICAgICRzY3JlZW4tbGctbWluICFkZWZhdWx0O1xuLy9cbi8vJHNjcmVlbi14cy1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1zbS1taW4gLSAxKSAhZGVmYXVsdDtcbi8vJHNjcmVlbi1zbS1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1tZC1taW4gLSAxKSAhZGVmYXVsdDtcbi8vJHNjcmVlbi1tZC1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1sZy1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tbGctbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbGctbWluIC0gMSkgIWRlZmF1bHQ7XG5cbi8vKiogTWVkaWEgUXVlcmllc1xuJHNjcmVlbjogXCJvbmx5IHNjcmVlblwiO1xuXG4vLyBBZGRlZCBuZXcgYnJlYWtwb2ludCBvdXRzaWRlIG9mIEJvb3RzdHJhcCB0byBzZXQgYSB4eHNtYWxsIGJvdW5kYXJ5IHJhbmdlIGZyb20gMCAtIDQ4MHB4IHNjcmVlbnNcbiR4eHNtYWxsLXVwOiAkc2NyZWVuO1xuJHh4c21hbGwtb25seTogKCRzY3JlZW4pIChtYXgtd2lkdGggJHNjcmVlbi14cy1taW4pO1xuXG4keHNtYWxsLXVwOiAkc2NyZWVuIChtaW4td2lkdGggJHNjcmVlbi14cy1taW4pOyAvLzQ4MHB4XG4keHNtYWxsLW9ubHk6ICgkc2NyZWVuKSAobWluLXdpZHRoICRzY3JlZW4teHMtbWluKSAobWF4LXdpZHRoICRzY3JlZW4teHMtbWF4KTsgLy80ODBweCAtIDc2N3B4XG5cbiRzbWFsbC11cDogKCRzY3JlZW4pIChtaW4td2lkdGggJHNjcmVlbi1zbS1taW4pOyAvLzc2OHB4XG4kc21hbGwtb25seTogKCRzY3JlZW4pIChtaW4td2lkdGggJHNjcmVlbi1zbS1taW4pIChtYXgtd2lkdGggJHNjcmVlbi1zbS1tYXgpOyAvLzc2OHB4IC0gOTkxcHhcblxuJG1lZGl1bS11cDogKCRzY3JlZW4pIChtaW4td2lkdGggJHNjcmVlbi1tZC1taW4pOyAvLzk5MnB4XG4kbWVkaXVtLW9ubHk6ICgkc2NyZWVuKSAobWluLXdpZHRoICRzY3JlZW4tbWQtbWluKSAobWF4LXdpZHRoICRzY3JlZW4tbWQtbWF4KTsgLy85OTJweCAtIDExOTlweFxuXG4kbGFyZ2UtdXA6ICgkc2NyZWVuKSAobWluLXdpZHRoICRzY3JlZW4tbGctbWluKTsgLy8xMjAwcHhcbiRsYXJnZS1vbmx5OiAoJHNjcmVlbikgKG1pbi13aWR0aCAkc2NyZWVuLWxnLW1pbikgKG1heC13aWR0aCAkc2NyZWVuLWxnLW1heCk7IC8vMTIwMHB4IC0gMTMwMHB4XG5cbiRub3QtbGFyZ2U6ICgkc2NyZWVuKSAobWF4LXdpZHRoICRzY3JlZW4tbWQtbWF4KTtcblxuLy8gQWRkZWQgbmV3IGJyZWFrcG9pbnQgb3V0c2lkZSBvZiBCb290c3RyYXAgdG8gc2V0IGEgeGxhcmdlIGJvdW5kYXJ5IHJhbmdlIGZyb20gMTMwMSsgc2NyZWVuc1xuJHhsYXJnZS11cDogKCRzY3JlZW4pIChtaW4td2lkdGggJHhsYXJnZS1taW4pO1xuJHhsYXJnZS1vbmx5OiAoJHNjcmVlbikgKG1pbi13aWR0aCAkeGxhcmdlLW1pbikgKG1heC13aWR0aCAkeGxhcmdlLW1heCk7IC8vMTMwMXB4ICtcblxuXG4vLyoqIFRhcmdldCByZXRpbmEgZGV2aWNlc1xuJGltZy1yZXRpbmE6IFwiI3skc2NyZWVufSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpXCI7XG5cblxuLy8gWiBpbmRleCBsZXZlbHNcbi8vJHotaW5kZXgtbG93OiAxO1xuLy8kei1pbmRleC1taWQ6IDEwO1xuLy8kei1pbmRleC1oaWdoOiAyMDtcbiIsIiRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXI6IGZhbHNlICFkZWZhdWx0O1xuLy9cbi8vIFZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLz09IENvbG9yc1xuLy9cbi8vIyMgR3JheSBhbmQgYnJhbmQgY29sb3JzIGZvciB1c2UgYWNyb3NzIEJvb3RzdHJhcC5cblxuJGdyYXktYmFzZTogICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kZ3JheS1kYXJrZXI6ICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAxMy41JSkgIWRlZmF1bHQ7IC8vICMyMjJcbiRncmF5LWRhcms6ICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDIwJSkgIWRlZmF1bHQ7ICAgLy8gIzMzM1xuJGdyYXk6ICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMzMuNSUpICFkZWZhdWx0OyAvLyAjNTU1XG4kZ3JheS1saWdodDogICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA0Ni43JSkgIWRlZmF1bHQ7IC8vICM3NzdcbiRncmF5LWxpZ2h0ZXI6ICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDkzLjUlKSAhZGVmYXVsdDsgLy8gI2VlZVxuXG4kYnJhbmQtcHJpbWFyeTogICAgICAgICBkYXJrZW4oIzQyOGJjYSwgNi41JSkgIWRlZmF1bHQ7IC8vICMzMzdhYjdcbiRicmFuZC1zdWNjZXNzOiAgICAgICAgICM1Y2I4NWMgIWRlZmF1bHQ7XG4kYnJhbmQtaW5mbzogICAgICAgICAgICAjNWJjMGRlICFkZWZhdWx0O1xuJGJyYW5kLXdhcm5pbmc6ICAgICAgICAgI2YwYWQ0ZSAhZGVmYXVsdDtcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgICNkOTUzNGYgIWRlZmF1bHQ7XG5cblxuLy89PSBTY2FmZm9sZGluZ1xuLy9cbi8vIyMgU2V0dGluZ3MgZm9yIHNvbWUgb2YgdGhlIG1vc3QgZ2xvYmFsIHN0eWxlcy5cblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGJvZHk+YC5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCB0ZXh0IGNvbG9yIG9uIGA8Ym9keT5gLlxuJHRleHQtY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgdGV4dHVhbCBsaW5rIGNvbG9yLlxuJGxpbmstY29sb3I6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIExpbmsgaG92ZXIgY29sb3Igc2V0IHZpYSBgZGFya2VuKClgIGZ1bmN0aW9uLlxuJGxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGRlY29yYXRpb24uXG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWRlZmF1bHQ7XG5cblxuLy89PSBUeXBvZ3JhcGh5XG4vL1xuLy8jIyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgIEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCBtb25vc3BhY2UgZm9udHMgZm9yIGA8Y29kZT5gLCBgPGtiZD5gLCBhbmQgYDxwcmU+YC5cbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sYXJnZTogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLXNtYWxsOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcblxuJGZvbnQtc2l6ZS1oMTogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi42KSkgIWRlZmF1bHQ7IC8vIH4zNnB4XG4kZm9udC1zaXplLWgyOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjE1KSkgIWRlZmF1bHQ7IC8vIH4zMHB4XG4kZm9udC1zaXplLWgzOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNykpICFkZWZhdWx0OyAvLyB+MjRweFxuJGZvbnQtc2l6ZS1oNDogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLWg1OiAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDY6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuXG4vLyoqIFVuaXQtbGVzcyBgbGluZS1oZWlnaHRgIGZvciB1c2UgaW4gY29tcG9uZW50cyBsaWtlIGJ1dHRvbnMuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgIDEuNDI4NTcxNDI5ICFkZWZhdWx0OyAvLyAyMC8xNFxuLy8qKiBDb21wdXRlZCBcImxpbmUtaGVpZ2h0XCIgKGBmb250LXNpemVgICogYGxpbmUtaGVpZ2h0YCkgZm9yIHVzZSB3aXRoIGBtYXJnaW5gLCBgcGFkZGluZ2AsIGV0Yy5cbiRsaW5lLWhlaWdodC1jb21wdXRlZDogICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSkgIWRlZmF1bHQ7IC8vIH4yMHB4XG5cbi8vKiogQnkgZGVmYXVsdCwgdGhpcyBpbmhlcml0cyBmcm9tIHRoZSBgPGJvZHk+YC5cbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAxLjEgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cblxuLy89PSBJY29ub2dyYXBoeVxuLy9cbi8vIyMgU3BlY2lmeSBjdXN0b20gbG9jYXRpb24gYW5kIGZpbGVuYW1lIG9mIHRoZSBpbmNsdWRlZCBHbHlwaGljb25zIGljb24gZm9udC4gVXNlZnVsIGZvciB0aG9zZSBpbmNsdWRpbmcgQm9vdHN0cmFwIHZpYSBCb3dlci5cblxuLy8qKiBMb2FkIGZvbnRzIGZyb20gdGhpcyBkaXJlY3RvcnkuXG5cbi8vIFtjb252ZXJ0ZXJdIElmICRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIgaWYgdXNlZCwgcHJvdmlkZSBwYXRoIHJlbGF0aXZlIHRvIHRoZSBhc3NldHMgbG9hZCBwYXRoLlxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBiZWNhdXNlIHNvbWUgYXNzZXQgaGVscGVycywgc3VjaCBhcyBTcHJvY2tldHMsIGRvIG5vdCB3b3JrIHdpdGggZmlsZS1yZWxhdGl2ZSBwYXRocy5cbiRpY29uLWZvbnQtcGF0aDogaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgXCJib290c3RyYXAvXCIsIFwiLi4vZm9udHMvYm9vdHN0cmFwL1wiKSAhZGVmYXVsdDtcblxuLy8qKiBGaWxlIG5hbWUgZm9yIGFsbCBmb250IGZpbGVzLlxuJGljb24tZm9udC1uYW1lOiAgICAgICAgICBcImdseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXJcIiAhZGVmYXVsdDtcbi8vKiogRWxlbWVudCBJRCB3aXRoaW4gU1ZHIGljb24gZmlsZS5cbiRpY29uLWZvbnQtc3ZnLWlkOiAgICAgICAgXCJnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXJcIiAhZGVmYXVsdDtcblxuXG4vLz09IENvbXBvbmVudHNcbi8vXG4vLyMjIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS4gVmFsdWVzIGJhc2VkIG9uIDE0cHggdGV4dCBhbmQgMS40MjggbGluZS1oZWlnaHQgKH4yMHB4IHRvIHN0YXJ0KS5cblxuJHBhZGRpbmctYmFzZS12ZXJ0aWNhbDogICAgIDZweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDogICAxMnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1sYXJnZS12ZXJ0aWNhbDogICAgMTBweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw6ICAxNnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDogICAgNXB4ICFkZWZhdWx0O1xuJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDogIDEwcHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXhzLXZlcnRpY2FsOiAgICAgICAxcHggIWRlZmF1bHQ7XG4kcGFkZGluZy14cy1ob3Jpem9udGFsOiAgICAgNXB4ICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtbGFyZ2U6ICAgICAgICAgMS4zMzMzMzMzICFkZWZhdWx0OyAvLyBleHRyYSBkZWNpbWFscyBmb3IgV2luIDguMSBDaHJvbWVcbiRsaW5lLWhlaWdodC1zbWFsbDogICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICA0cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgNnB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgIDNweCAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8qKiBXaWR0aCBvZiB0aGUgYGJvcmRlcmAgZm9yIGdlbmVyYXRpbmcgY2FyZXRzIHRoYXQgaW5kaWNhdG9yIGRyb3Bkb3ducy5cbiRjYXJldC13aWR0aC1iYXNlOiAgICAgICAgICA0cHggIWRlZmF1bHQ7XG4vLyoqIENhcmV0cyBpbmNyZWFzZSBzbGlnaHRseSBpbiBzaXplIGZvciBsYXJnZXIgY29tcG9uZW50cy5cbiRjYXJldC13aWR0aC1sYXJnZTogICAgICAgICA1cHggIWRlZmF1bHQ7XG5cblxuLy89PSBUYWJsZXNcbi8vXG4vLyMjIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuLy8qKiBQYWRkaW5nIGZvciBgPHRoPmBzIGFuZCBgPHRkPmBzLlxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgICA4cHggIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgZm9yIGNlbGxzIGluIGAudGFibGUtY29uZGVuc2VkYC5cbiR0YWJsZS1jb25kZW5zZWQtY2VsbC1wYWRkaW5nOiAgNXB4ICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBhbGwgdGFibGVzLlxuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLXN0cmlwZWRgLlxuJHRhYmxlLWJnLWFjY2VudDogICAgICAgICAgICAgICAjZjlmOWY5ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtaG92ZXJgLlxuJHRhYmxlLWJnLWhvdmVyOiAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHRhYmxlLWJnLWFjdGl2ZTogICAgICAgICAgICAgICAkdGFibGUtYmctaG92ZXIgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciB0YWJsZSBhbmQgY2VsbCBib3JkZXJzLlxuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT0gQnV0dG9uc1xuLy9cbi8vIyMgRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgICAgbm9ybWFsICFkZWZhdWx0O1xuXG4kYnRuLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbiRidG4tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXByaW1hcnktYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1zdWNjZXNzLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tc3VjY2Vzcy1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWluZm8tY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4kYnRuLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1pbmZvLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4td2FybmluZy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbiRidG4td2FybmluZy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXdhcm5pbmctYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4kYnRuLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1kYW5nZXItYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3Jtc1xuLy9cbi8vIyNcblxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dCBkaXNhYmxlZD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgYDxpbnB1dD5gc1xuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcbiRpbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IFJlbmFtZSBgJGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGAkaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4vLyBUaGlzIGhhcyBubyBlZmZlY3Qgb24gYDxzZWxlY3Q+YHMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgaW5wdXRzIG9uIGZvY3VzXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAgICAgICAgICAgICAjNjZhZmU5ICFkZWZhdWx0O1xuXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgICAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgICAoY2VpbCgkZm9udC1zaXplLWxhcmdlICogJGxpbmUtaGVpZ2h0LWxhcmdlKSArICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtc21hbGw6ICAgICAgICAgICAgIChmbG9vcigkZm9udC1zaXplLXNtYWxsICogJGxpbmUtaGVpZ2h0LXNtYWxsKSArICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG5cbi8vKiogYC5mb3JtLWdyb3VwYCBtYXJnaW5cbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRsZWdlbmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kbGVnZW5kLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGN1cnNvciBmb3IgZm9ybSBjb250cm9scyBhbmQgYnV0dG9ucy5cbiRjdXJzb3ItZGlzYWJsZWQ6ICAgICAgICAgICAgICAgIG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG5cbi8vPT0gRHJvcGRvd25zXG4vL1xuLy8jIyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vKiogQmFja2dyb3VuZCBmb3IgdGhlIGRyb3Bkb3duIG1lbnUuXG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgLlxuJGRyb3Bkb3duLWJvcmRlcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMTUpICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgICoqZm9yIElFOCoqLlxuJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbi8vKiogRGl2aWRlciBjb2xvciBmb3IgYmV0d2VlbiBkcm9wZG93biBpdGVtcy5cbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogRHJvcGRvd24gbGluayB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbi8vKiogSG92ZXIgY29sb3IgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRncmF5LWRhcmssIDUlKSAhZGVmYXVsdDtcbi8vKiogSG92ZXIgYmFja2dyb3VuZCBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gdGV4dCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuLy8qKiBEaXNhYmxlZCBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGhlYWRlcnMgd2l0aGluIGRyb3Bkb3duIG1lbnVzLlxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogRGVwcmVjYXRlZCBgJGRyb3Bkb3duLWNhcmV0LWNvbG9yYCBhcyBvZiB2My4xLjBcbiRkcm9wZG93bi1jYXJldC1jb2xvcjogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG5cblxuLy8tLSBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG4vL1xuLy8gTm90ZTogVGhlc2UgdmFyaWFibGVzIGFyZSBub3QgZ2VuZXJhdGVkIGludG8gdGhlIEN1c3RvbWl6ZXIuXG5cbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LW5hdmJhci1maXhlZDogICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kOiAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG5cblxuLy89PSBNZWRpYSBxdWVyaWVzIGJyZWFrcG9pbnRzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIGJyZWFrcG9pbnRzIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLCBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBFeHRyYSBzbWFsbCBzY3JlZW4gLyBwaG9uZVxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4teHM6ICAgICAgICAgICAgICAgICAgNDgwcHggIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHMtbWluYCBhcyBvZiB2My4yLjBcbiRzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi14cyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1waG9uZWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXBob25lOiAgICAgICAgICAgICAgICRzY3JlZW4teHMtbWluICFkZWZhdWx0O1xuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1zbWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXNtOiAgICAgICAgICAgICAgICAgIDc2OHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXNtICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXRhYmxldGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXRhYmxldDogICAgICAgICAgICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLW1kYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbWQ6ICAgICAgICAgICAgICAgICAgOTkycHggIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbWQgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWRlc2t0b3A6ICAgICAgICAgICAgICRzY3JlZW4tbWQtbWluICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZ2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnOiAgICAgICAgICAgICAgICAgIDEyMDBweCAhZGVmYXVsdDtcbiRzY3JlZW4tbGctbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1sZyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZy1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGctZGVza3RvcDogICAgICAgICAgJHNjcmVlbi1sZy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNvIG1lZGlhIHF1ZXJpZXMgZG9uJ3Qgb3ZlcmxhcCB3aGVuIHJlcXVpcmVkLCBwcm92aWRlIGEgbWF4aW11bVxuJHNjcmVlbi14cy1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1zbS1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbWQtbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLWxnLW1pbiAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gR3JpZCBzeXN0ZW1cbi8vXG4vLyMjIERlZmluZSB5b3VyIGN1c3RvbSByZXNwb25zaXZlIGdyaWQuXG5cbi8vKiogTnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYmV0d2VlbiBjb2x1bW5zLiBHZXRzIGRpdmlkZWQgaW4gaGFsZiBmb3IgdGhlIGxlZnQgYW5kIHJpZ2h0LlxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4vLyBOYXZiYXIgY29sbGFwc2Vcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWNvbWVzIHVuY29sbGFwc2VkLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludDogICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlZ2lucyBjb2xsYXBzaW5nLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXg6ICgkZ3JpZC1mbG9hdC1icmVha3BvaW50IC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBDb250YWluZXIgc2l6ZXNcbi8vXG4vLyMjIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuJGNvbnRhaW5lci10YWJsZXQ6ICAgICAgICAgICAgICg3MjBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1zbS1taW5gIGFuZCB1cC5cbiRjb250YWluZXItc206ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXRhYmxldCAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3BcbiRjb250YWluZXItZGVza3RvcDogICAgICAgICAgICAoOTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbWQtbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLW1kOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1kZXNrdG9wICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcbiRjb250YWluZXItbGFyZ2UtZGVza3RvcDogICAgICAoMTE0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLWxnLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1sZzogICAgICAgICAgICAgICAgICRjb250YWluZXItbGFyZ2UtZGVza3RvcCAhZGVmYXVsdDtcblxuXG4vLz09IE5hdmJhclxuLy9cbi8vIyNcblxuLy8gQmFzaWNzIG9mIGEgbmF2YmFyXG4kbmF2YmFyLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICRsaW5lLWhlaWdodC1jb21wdXRlZCAhZGVmYXVsdDtcbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgKCgkbmF2YmFyLWhlaWdodCAtICRsaW5lLWhlaWdodC1jb21wdXRlZCkgLyAyKSAhZGVmYXVsdDtcbiRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDogICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgI2Y4ZjhmOCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBsaW5rc1xuJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciB0b2dnbGVcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICM4ODggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLyBJbnZlcnRlZCBuYXZiYXJcbi8vIFJlc2V0IGludmVydGVkIG5hdmJhciBiYXNpY3NcbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzIyMiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXG4kbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciB0b2dnbGVcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IE5hdnNcbi8vXG4vLyMjXG5cbi8vPT09IFNoYXJlZCBuYXYgc3R5bGVzXG4kbmF2LWxpbmstcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vPT0gVGFic1xuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG4vLz09IFBpbGxzXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2luYXRpb25cbi8vXG4vLyMjXG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXI6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnZXJcbi8vXG4vLyMjXG5cbiRwYWdlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYm9yZGVyICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuJHBhZ2VyLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24taG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwYWdlci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdlci1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuJHBhZ2VyLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy89PSBKdW1ib3Ryb25cbi8vXG4vLyMjXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1jb2xvcjogICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWZvbnQtc2l6ZTogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjUpKSAhZGVmYXVsdDtcblxuXG4vLz09IEZvcm0gc3RhdGVzIGFuZCBhbGVydHNcbi8vXG4vLyMjIERlZmluZSBjb2xvcnMgZm9yIGZvcm0gZmVlZGJhY2sgc3RhdGVzIGFuZCwgYnkgZGVmYXVsdCwgYWxlcnRzLlxuXG4kc3RhdGUtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAgICAjM2M3NjNkICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgI2RmZjBkOCAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1zdWNjZXNzLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1pbmZvLXRleHQ6ICAgICAgICAgICAgICAgICMzMTcwOGYgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1iZzogICAgICAgICAgICAgICAgICAjZDllZGY3ICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWluZm8tYmcsIC0xMCksIDclKSAhZGVmYXVsdDtcblxuJHN0YXRlLXdhcm5pbmctdGV4dDogICAgICAgICAgICAgIzhhNmQzYiAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtd2FybmluZy1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAgICAjYTk0NDQyICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1iZzogICAgICAgICAgICAgICAgI2YyZGVkZSAhZGVmYXVsdDtcbiRzdGF0ZS1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1kYW5nZXItYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuXG4vLz09IFRvb2x0aXBzXG4vL1xuLy8jI1xuXG4vLyoqIFRvb2x0aXAgbWF4IHdpZHRoXG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCB0ZXh0IGNvbG9yXG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIGJhY2tncm91bmQgY29sb3JcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcblxuLy8qKiBUb29sdGlwIGFycm93IHdpZHRoXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICA1cHggIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgYXJyb3cgY29sb3JcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuXG5cbi8vPT0gUG9wb3ZlcnNcbi8vXG4vLyMjXG5cbi8vKiogUG9wb3ZlciBib2R5IGJhY2tncm91bmQgY29sb3JcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBtYXhpbXVtIHdpZHRoXG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGJvcmRlciBjb2xvclxuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4yKSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBmYWxsYmFjayBib3JkZXIgY29sb3JcbiRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvcjogICAgICAgI2NjYyAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIHRpdGxlIGJhY2tncm91bmQgY29sb3JcbiRwb3BvdmVyLXRpdGxlLWJnOiAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGFycm93IGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgd2lkdGhcbiRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoOiAgICAgICAgICAgKCRwb3BvdmVyLWFycm93LXdpZHRoICsgMSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgICAgZmFkZV9pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIDAuMDUpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGZhbGxiYWNrIGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjogIGRhcmtlbigkcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3IsIDIwJSkgIWRlZmF1bHQ7XG5cblxuLy89PSBMYWJlbHNcbi8vXG4vLyMjXG5cbi8vKiogRGVmYXVsdCBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtZGVmYXVsdC1iZzogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogUHJpbWFyeSBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtcHJpbWFyeS1iZzogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtc3VjY2Vzcy1iZzogICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbi8vKiogSW5mbyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtaW5mby1iZzogICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbi8vKiogV2FybmluZyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtd2FybmluZy1iZzogICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbi8vKiogRGFuZ2VyIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kYW5nZXItYmc6ICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBsYWJlbCB0ZXh0IGNvbG9yXG4kbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEZWZhdWx0IHRleHQgY29sb3Igb2YgYSBsaW5rZWQgbGFiZWxcbiRsYWJlbC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBNb2RhbHNcbi8vXG4vLyMjXG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgdGl0bGVcbiRtb2RhbC10aXRsZS1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIHRpdGxlIGxpbmUtaGVpZ2h0XG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIGNvbnRlbnQgYXJlYVxuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvclxuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4yKSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3IgKipmb3IgSUU4KipcbiRtb2RhbC1jb250ZW50LWZhbGxiYWNrLWJvcmRlci1jb2xvcjogICAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuLy8qKiBNb2RhbCBiYWNrZHJvcCBiYWNrZ3JvdW5kIGNvbG9yXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBiYWNrZHJvcCBvcGFjaXR5XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAuNSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgaGVhZGVyIGJvcmRlciBjb2xvclxuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgI2U1ZTVlNSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgZm9vdGVyIGJvcmRlciBjb2xvclxuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgIDkwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgNjAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuXG4vLz09IEFsZXJ0c1xuLy9cbi8vIyMgRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nOiAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgYm9sZCAhZGVmYXVsdDtcblxuJGFsZXJ0LXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtaW5mby1iZzogICAgICAgICAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC13YXJuaW5nLWJnOiAgICAgICAgICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LWRhbmdlci1iZzogICAgICAgICAgICAgJHN0YXRlLWRhbmdlci1iZyAhZGVmYXVsdDtcbiRhbGVydC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyICFkZWZhdWx0O1xuXG5cbi8vPT0gUHJvZ3Jlc3MgYmFyc1xuLy9cbi8vIyNcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSB3aG9sZSBwcm9ncmVzcyBjb21wb25lbnRcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFByb2dyZXNzIGJhciB0ZXh0IGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBWYXJpYWJsZSBmb3Igc2V0dGluZyByb3VuZGVkIGNvcm5lcnMgb24gcHJvZ3Jlc3MgYmFyLlxuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIFN1Y2Nlc3MgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXN1Y2Nlc3MtYmc6ICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbi8vKiogV2FybmluZyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItd2FybmluZy1iZzogICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWRhbmdlci1iZzogICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuLy8qKiBJbmZvIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1pbmZvLWJnOiAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG5cblxuLy89PSBMaXN0IGdyb3VwXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb24gYC5saXN0LWdyb3VwLWl0ZW1gXG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIGAubGlzdC1ncm91cC1pdGVtYCBib3JkZXIgY29sb3JcbiRsaXN0LWdyb3VwLWJvcmRlcjogICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbi8vKiogTGlzdCBncm91cCBib3JkZXIgcmFkaXVzXG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBzaW5nbGUgbGlzdCBpdGVtcyBvbiBob3ZlclxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3Igb2YgYWN0aXZlIGxpc3QgZWxlbWVudHNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXI6ICAgICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLXRleHQtY29sb3I6ICBsaWdodGVuKCRsaXN0LWdyb3VwLWFjdGl2ZS1iZywgNDAlKSAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIG9mIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLXRleHQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1saW5rLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhvdmVyLWNvbG9yOiAgICRsaXN0LWdyb3VwLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I6ICMzMzMgIWRlZmF1bHQ7XG5cblxuLy89PSBQYW5lbHNcbi8vXG4vLyMjXG5cbiRwYW5lbC1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtYm9keS1wYWRkaW5nOiAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJHBhbmVsLWhlYWRpbmctcGFkZGluZzogICAgICAgMTBweCAxNXB4ICFkZWZhdWx0O1xuJHBhbmVsLWZvb3Rlci1wYWRkaW5nOiAgICAgICAgJHBhbmVsLWhlYWRpbmctcGFkZGluZyAhZGVmYXVsdDtcbiRwYW5lbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciBlbGVtZW50cyB3aXRoaW4gcGFuZWxzXG4kcGFuZWwtaW5uZXItYm9yZGVyOiAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJHBhbmVsLWZvb3Rlci1iZzogICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcblxuJHBhbmVsLWRlZmF1bHQtdGV4dDogICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWJvcmRlcjogICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kcGFuZWwtZGVmYXVsdC1oZWFkaW5nLWJnOiAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtcHJpbWFyeS10ZXh0OiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhbmVsLXByaW1hcnktYm9yZGVyOiAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnOiAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJHBhbmVsLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1zdWNjZXNzLWhlYWRpbmctYmc6ICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLWluZm8taGVhZGluZy1iZzogICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmc6ICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuXG5cbi8vPT0gVGh1bWJuYWlsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGltYWdlXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICA0cHggIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBiYWNrZ3JvdW5kIGNvbG9yXG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJvcmRlciBjb2xvclxuJHRodW1ibmFpbC1ib3JkZXI6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJvcmRlciByYWRpdXNcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQ3VzdG9tIHRleHQgY29sb3IgZm9yIHRodW1ibmFpbCBjYXB0aW9uc1xuJHRodW1ibmFpbC1jYXB0aW9uLWNvbG9yOiAgICAgJHRleHQtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgY2FwdGlvblxuJHRodW1ibmFpbC1jYXB0aW9uLXBhZGRpbmc6ICAgOXB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gV2VsbHNcbi8vXG4vLyMjXG5cbiR3ZWxsLWJnOiAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kd2VsbC1ib3JkZXI6ICAgICAgICAgICAgICAgICBkYXJrZW4oJHdlbGwtYmcsIDclKSAhZGVmYXVsdDtcblxuXG4vLz09IEJhZGdlc1xuLy9cbi8vIyNcblxuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogTGlua2VkIGJhZGdlIHRleHQgY29sb3Igb24gaG92ZXJcbiRiYWRnZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYmFkZ2UtYmc6ICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBCYWRnZSB0ZXh0IGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xuJGJhZGdlLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhZGdlIGJhY2tncm91bmQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWJnOiAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xuJGJhZGdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgMSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBCcmVhZGNydW1ic1xuLy9cbi8vIyNcblxuJGJyZWFkY3J1bWItcGFkZGluZy12ZXJ0aWNhbDogICA4cHggIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw6IDE1cHggIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgYmFja2dyb3VuZCBjb2xvclxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBCcmVhZGNydW1iIHRleHQgY29sb3JcbiRicmVhZGNydW1iLWNvbG9yOiAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBvZiBjdXJyZW50IHBhZ2UgaW4gdGhlIGJyZWFkY3J1bWJcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIFRleHR1YWwgc2VwYXJhdG9yIGZvciBiZXR3ZWVuIGJyZWFkY3J1bWIgZWxlbWVudHNcbiRicmVhZGNydW1iLXNlcGFyYXRvcjogICAgICAgICAgXCIvXCIgIWRlZmF1bHQ7XG5cblxuLy89PSBDYXJvdXNlbFxuLy9cbi8vIyNcblxuJGNhcm91c2VsLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKDAsMCwwLC42KSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gQ2xvc2Vcbi8vXG4vLyMjXG5cbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgMCAxcHggMCAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29kZVxuLy9cbi8vIyNcblxuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgI2M3MjU0ZSAhZGVmYXVsdDtcbiRjb2RlLWJnOiAgICAgICAgICAgICAgICAgICAgICNmOWYyZjQgIWRlZmF1bHQ7XG5cbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuXG4kcHJlLWJnOiAgICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRwcmUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLz09IFR5cGVcbi8vXG4vLyMjXG5cbi8vKiogSG9yaXpvbnRhbCBvZmZzZXQgZm9yIGZvcm1zIGFuZCBsaXN0cy5cbiRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWw6IDE4MHB4ICFkZWZhdWx0O1xuLy8qKiBUZXh0IG11dGVkIGNvbG9yXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQWJicmV2aWF0aW9ucyBhbmQgYWNyb255bXMgYm9yZGVyIGNvbG9yXG4kYWJici1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogSGVhZGluZ3Mgc21hbGwgY29sb3JcbiRoZWFkaW5ncy1zbWFsbC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIHNtYWxsIGNvbG9yXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBmb250IHNpemVcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBib3JkZXIgY29sb3JcbiRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjogICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFBhZ2UgaGVhZGVyIGJvcmRlciBjb2xvclxuJHBhZ2UtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogV2lkdGggb2YgaG9yaXpvbnRhbCBkZXNjcmlwdGlvbiBsaXN0IHRpdGxlc1xuJGRsLWhvcml6b250YWwtb2Zmc2V0OiAgICAgICAgJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbCAhZGVmYXVsdDtcbi8vKiogSG9yaXpvbnRhbCBsaW5lIGNvbG9yLlxuJGhyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiIsIi8vIExheW91dFxuLy9cblxuLy8qKiBEZWZhdWx0IHZlcnRpY2FsIHNwYWNlIGJldHdlZW4gc3RhY2tlZCBjb2x1bW5zXG4kbGF5b3V0LXN0YWNrZWQtZ3V0dGVyOiAzMHB4O1xuXG4vLyoqIEJsb2NrIGdyaWRzIGd1dHRlcnNcbiRibG9jay1ncmlkLWd1dHRlci1zbWFsbDogICAgIDQlO1xuJGJsb2NrLWdyaWQtZ3V0dGVyLW1lZGl1bTogICAgMyU7XG4kYmxvY2stZ3JpZC1ndXR0ZXItbGFyZ2U6ICAgICAyLjUlO1xuXG4vLyoqIEJsb2NrIGdyaWRzIHZlcnRpY2FsIHNwYWNlXG4kYmxvY2stZ3JpZC12ZXJ0aWNhbC1zcGFjZTogICAyMHB4OyIsIlxuLy8qKiBUeXBla2l0IGZvbnQgd2VpZ2h0c1xuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgMzAwO1xuJGZvbnQtd2VpZ2h0LXJlZ3VsYXI6ICAgNDAwO1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgNzAwO1xuJGZvbnQtd2VpZ2h0LXhib2xkOiAgICAgOTAwO1xuXG4vLyoqIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRleHQgZGlyZWN0aW9uIHNldHRpbmdzXG4kdGV4dC1kaXJlY3Rpb246IGx0cjtcbiRkZWZhdWx0LWZsb2F0OiBsZWZ0O1xuJG9wcG9zaXRlLWRpcmVjdGlvbjogcmlnaHQ7XG5AaWYgJHRleHQtZGlyZWN0aW9uID09IGx0ciB7XG4gICRkZWZhdWx0LWZsb2F0OiBsZWZ0O1xuICAkb3Bwb3NpdGUtZGlyZWN0aW9uOiByaWdodDtcbn0gQGVsc2Uge1xuICAkZGVmYXVsdC1mbG9hdDogcmlnaHQ7XG4gICRvcHBvc2l0ZS1kaXJlY3Rpb246IGxlZnQ7XG59XG5cbi8vKiogQmFzZSBGb250XG4kYmFzZS1mb250LWNvbG9yOiAgICM5MDkwOTA7XG4kYmFzZS1mb250LWZhbWlseTogIFwiUm9ib3RvXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuJGJhc2UtZm9udC13ZWlnaHQ6ICAkZm9udC13ZWlnaHQtbGlnaHQ7XG4vLyoqIFRoaXMgaXMgdGhlIGRlZmF1bHQgaHRtbCBhbmQgYm9keSBmb250LXNpemUgZm9yIHRoZSBiYXNlIHJlbSB2YWx1ZS5cbiRiYXNlLWZvbnQtc2l6ZTogICAgMTQ7XG4kYmFzZS1saW5lLWhlaWdodDogIDEuNTtcblxuLy8qKiBTdXBwb3J0IGZvciBGb3VuZGF0aW9uIHJlbS1jYWxjIG1peGluXG4kcmVtLWJhc2U6IDE0O1xuXG4vLyoqIENvbXB1dGVkIFwibGluZS1oZWlnaHRcIiAoYGZvbnQtc2l6ZWAgKiBgbGluZS1oZWlnaHRgKSBmb3IgdXNlIHdpdGggYG1hcmdpbmAsIGBwYWRkaW5nYCwgZXRjLlxuJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOiBmbG9vcigoJGJhc2UtZm9udC1zaXplICogJGJhc2UtbGluZS1oZWlnaHQpKTsgLy8gfjI0cHhcblxuJHNlY29uZGFyeS1mb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG4kaWNvbi1mb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4kZ2x5cGhpY29uLWZvbnQtZmFtaWx5OiBHbHlwaGljb25zIEhhbGZsaW5ncztcblxuLy8qKiBEbyB3ZSBuZWVkIHRvIHN1cHBvcnQgYnJvd3NlcnMgd2l0aCBubyByZW0gY2FwYWJpbGl0aWVzXG4kc3VwcG9ydC1ub24tcmVtOiB0cnVlO1xuXG4vLyoqIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBwYXJhZ3JhcGhzXG4kcGFyYWdyYXBoLWZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTtcbiRwYXJhZ3JhcGgtZm9udC13ZWlnaHQ6ICRiYXNlLWZvbnQtd2VpZ2h0O1xuJHBhcmFncmFwaC1mb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcbiRwYXJhZ3JhcGgtbGluZS1oZWlnaHQ6ICRiYXNlLWxpbmUtaGVpZ2h0O1xuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAyMHB4O1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuXG4vLyoqIEFiaWxpdHkgdG8gc2NhbGUgdXAvZG93biBzaXplIG9uIHgtc21hbGwgc2NyZWVuIHNpemVzXG4kcGFyYWdyYXBoLWZvbnQtcmVkdWN0aW9uLXNtOiAxLjI7XG4vLyoqIEFiaWxpdHkgdG8gc2NhbGUgdXAvZG93biBzaXplIG9uIG1lZGl1bSBzY3JlZW4gc2l6ZXNcbiRwYXJhZ3JhcGgtZm9udC1yZWR1Y3Rpb24tbWQ6IDEuMDc7IC8vIE1UIDE1cHhcblxuLy8qKiBTbWFsbGVyIGxlZ2FsIHBhcmFncmFwaHNcbiRwYXJhZ3JhcGgtbGVnYWwtZm9udC1zaXplOiAxNjtcblxuLy8qKiBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBoZWFkZXIgZm9udCBzdHlsZXNcbiRoZWFkZXItZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuJGhlYWRlci1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXJlZ3VsYXI7XG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbDtcbiRoZWFkZXItZm9udC1jb2xvcjogJHByaW1hcnktYmFzZS1jb2xvciAhZGVmYXVsdDtcbiRoZWFkZXItbGluZS1oZWlnaHQ6ICRiYXNlLWxpbmUtaGVpZ2h0O1xuJGhlYWRlci10b3AtbWFyZ2luOiAwO1xuJGhlYWRlci1ib3R0b20tbWFyZ2luOiAyMHB4O1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuXG4vLyoqIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGhlYWRlciBmb250IHNpemVzXG4kaDEtZm9udC1zaXplOiAyNDtcbiRoMi1mb250LXNpemU6IDIyO1xuJGgzLWZvbnQtc2l6ZTogMTY7XG4kaDQtZm9udC1zaXplOiAxNDtcbiRoNS1mb250LXNpemU6IDE0O1xuJGg2LWZvbnQtc2l6ZTogMTQ7XG5cbi8vKiogV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgaGVhZGVyIHNpemUgcmVkdWN0aW9uIG9uIHNtYWxsIHNjcmVlbnNcbi8vJGgxLWZvbnQtcmVkdWN0aW9uOiAxNDtcbiRoMS1mb250LXJlZHVjdGlvbjogMDtcbiRoMi1mb250LXJlZHVjdGlvbjogMjtcbiRoMy1mb250LXJlZHVjdGlvbjogMDtcbiRoNC1mb250LXJlZHVjdGlvbjogMDtcbiRoNS1mb250LXJlZHVjdGlvbjogMDtcbiRoNi1mb250LXJlZHVjdGlvbjogMDtcblxuLy8qKiBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgYW5jaG9yc1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjogdW5kZXJsaW5lO1xuJGFuY2hvci1mb250LWNvbG9yOiAjMGM0ZGEyO1xuJGFuY2hvci1mb250LWNvbG9yLWhvdmVyOiAjMGM0ZGEyOyAvL3NjYWxlLWNvbG9yKCRhbmNob3ItZm9udC1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XG4kYW5jaG9yLWZvbnQtY29sb3ItZGlzYWJsZWQ6ICRncmF5O1xuXG4vLyoqIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBsaXN0c1xuJGxpc3QtZm9udC1mYW1pbHk6ICRwYXJhZ3JhcGgtZm9udC1mYW1pbHk7XG4kbGlzdC1mb250LXNpemU6ICRwYXJhZ3JhcGgtZm9udC1zaXplO1xuJGxpc3QtbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZS1oZWlnaHQ7XG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxOHB4OyAvLzEuMTI1cmVtXG4kbGlzdC1vcmRlcmVkLXNpZGUtbWFyZ2luOiAyMnB4OyAvLzEuMzc1cmVtXG4kbGlzdC1zaWRlLW1hcmdpbi1uby1idWxsZXQ6IDA7XG4kbGlzdC1uZXN0ZWQtbWFyZ2luOiAxOHB4O1xuJGxpc3QtbGlua3MtbWFyZ2luOiAwO1xuJGRlZmluaXRpb24tbGlzdC1oZWFkZXItd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiRkZWZpbml0aW9uLWxpc3QtaGVhZGVyLW1hcmdpbi1ib3R0b206IDZweDsgLy8uMzc1cmVtXG4kZGVmaW5pdGlvbi1saXN0LW1hcmdpbi1ib3R0b206IDEycHg7XG5cbi8vKiogQ29udGVudCB0YWdzXG4kY29udGVudC10YWctZm9udC1zaXplOiAyMjtcbiRjb250ZW50LXRhZy1mb250LXNpemUtcmVkdWN0aW9uOiA2O1xuXG4vLyoqIEZvbnRBd2Vzb21lIExpc3QgaWNvbnNcbiRmYS1pY29uLWNvbG9yOiAkZ3JheS1saWdodDtcblxuJGJ1bGxldC1zaXplOiAzMXB4OyIsIi8vIENvbG91cnNcbi8vXG5cbi8vKiogTmV0d29ya2VycyBwYWxldHRlXG4vLyRwcmltYXJ5LWRhcmstY29sb3I6ICAgICAgICAgICMwMDYzOTQ7IC8vICpuZXR3b3JrZXJzXG4vLyRwcmltYXJ5LWJhc2UtY29sb3I6ICAgICAgICAgICMwMDc2YjA7IC8vICpuZXR3b3JrZXJzXG4vLyRwcmltYXJ5LWxpZ2h0LWNvbG9yOiAgICAgICAgICNjOGRkZTc7IC8vICpuZXR3b3JrZXJzXG4vLyRwcmltYXJ5LWxpZ2h0ZXItY29sb3I6ICAgICAgICNlNmVmZjQ7IC8vICpuZXR3b3JrZXJzXG4vL1xuLy8kc2Vjb25kYXJ5LWRhcmstY29sb3I6ICAgICAgICAjZTU5NTAwOyAvLyAqbmV0d29ya2Vyc1xuLy8kc2Vjb25kYXJ5LWJhc2UtY29sb3I6ICAgICAgICAjZjZhMDAwOyAvLyAqbmV0d29ya2Vyc1xuLy9cbi8vJGFjY2VudC1iYXNlLWNvbG9yOiAgICAgICAgICAgI2VkMWMyNDsgLy8gKm5ldHdvcmtlcnNcbiIsImJvZHl7XG4gIGZvbnQtd2VpZ2h0OjMwMDtcbn1cblxuJGhlYWRlci1mb250LWNvbG9yOiAkcHJpbWFyeS1iYXNlLWNvbG9yO1xuJGJ1bGxldC1zaXplOiAzOHB4OyIsIi8vIEFjY29yZGlvblxuLy9cblxuJGFjY29yZGlvbi1kZWZhdWx0LXRleHQ6ICAgICAgICAgICRwcmltYXJ5LWRhcmstY29sb3I7XG4kYWNjb3JkaW9uLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgJHByaW1hcnktYmFzZS1jb2xvcjtcbiRhY2NvcmRpb24tZGVmYXVsdC1oZWFkaW5nLWJnOiAgICAkcHJpbWFyeS1saWdodGVyLWNvbG9yOyIsIi8vIEJhY2sgdG8gdG9wXG4vL1xuJGJhY2stdG8tdG9wLWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ZXI7XG4kYmFjay10by10b3AtY29sb3I6ICAgICAgICAgJHByaW1hcnktYmFzZS1jb2xvcjtcbiRiYWNrLXRvLXRvcC1vcGFjaXR5OiAgICAgICAwLjg7XG4iLCIvLyBCYWNrZ3JvdW5kIGhlcm8gdGl0bGVcbi8vXG5cbiRiYWNrZ3JvdW5kLXRpdGxlLWhlcm8tYmcgIDogICAjZGZkZmRmOyIsIi8vIEJhY2tncm91bmQgdGl0bGVcbi8vXG5cbiRiYWNrZ3JvdW5kLXRpdGxlLWJnICA6ICAgI2JmYzljMzsiLCIvLyBCbG9ja3F1b3RlXG4vL1xuXG4vLyoqIEJsb2NrcXVvdGUgYmcgY29sb3VyXG4kYmxvY2txdW90ZS1iZzogICAgICAgI2U4ZjBmYTsiLCIvLyBCcmVhZGNydW1iXG4vL1xuLy8kYmNydW1iLWNoZXZyb24tdGhpY2tuZXNzOiAgICAxcHg7XG4vLyRiY3J1bWItY2hldnJvbi1jb2xvcjogICAgICAgICRncmF5O1xuLy8kYmNydW1iLWNoZXZyb24td2lkdGg6ICAgICAgICAxMHB4O1xuLy8kYmNydW1iLWNoZXZyb24taGVpZ2h0OiAgICAgICAyN3B4O1xuLy8kYmNydW1iLWNoZXZyb24tb2Zmc2V0OiAgICAgICAycHg7XG4iLCIvLyBCdXR0b25zXG4vL1xuXG4vLyoqIERlZmF1bHQgYnV0dG9uXG4kYnRuLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0OyAvLyM3NzdcbiRidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgJGdyYXkteGxpZ2h0ICFkZWZhdWx0OyAvLyNlZWVcbiRidG4tZGVmYXVsdC1ob3Zlci1iZzogICAgICAgICAgZGFya2VuKCRidG4tZGVmYXVsdC1iZywgNSUpICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWljb24tYmc6ICAgICAgICAgICAkYnRuLWRlZmF1bHQtYmcgIWRlZmF1bHQ7XG5cbi8vKiogUHJpbWFyeSBidXR0b25cbiRidG4tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1iZzogICAgICAgICAgICAgICAgJHByaW1hcnktYmFzZS1jb2xvciAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1ob3Zlci1iZzogICAgICAgICAgZGFya2VuKCRidG4tcHJpbWFyeS1iZywgNSUpICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWljb24tYmc6ICAgICAgICAgICAkYnRuLXByaW1hcnktYmcgIWRlZmF1bHQ7XG5cbi8vKiogU2Vjb25kYXJ5IGJ1dHRvblxuJGJ0bi1zZWNvbmRhcnktY29sb3I6ICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1zZWNvbmRhcnktYmc6ICAgICAgICAgICAgICAkc2Vjb25kYXJ5LWJhc2UtY29sb3IgIWRlZmF1bHQ7XG4kYnRuLXNlY29uZGFyeS1ob3Zlci1iZzogICAgICAgIGRhcmtlbigkYnRuLXNlY29uZGFyeS1iZywgNSUpICFkZWZhdWx0O1xuJGJ0bi1zZWNvbmRhcnktaWNvbi1iZzogICAgICAgICAkYnRuLXNlY29uZGFyeS1iZyAhZGVmYXVsdDtcbiRidG4tc2Vjb25kYXJ5LWJvcmRlcjogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vKiogVGVydGlhcnkgYnV0dG9uXG4kYnRuLXRlcnRpYXJ5LWNvbG9yOiAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXRlcnRpYXJ5LWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDEwJSkgIWRlZmF1bHQ7XG4kYnRuLXRlcnRpYXJ5LWhvdmVyLWJnOiAgICAgICAgIGRhcmtlbigkYnRuLXRlcnRpYXJ5LWJnLCA1JSkgIWRlZmF1bHQ7XG4kYnRuLXRlcnRpYXJ5LWljb24tYmc6ICAgICAgICAgICRidG4tdGVydGlhcnktYmcgIWRlZmF1bHQ7XG4kYnRuLXRlcnRpYXJ5LWJvcmRlcjogICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyoqIENhbmNlbCBidXR0b25cbiRidG4tY2FuY2VsLWNvbG9yOiAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kYnRuLWNhbmNlbC1iZzogICAgICAgICAgICAgICAgICRncmF5LXhsaWdodCAhZGVmYXVsdDsgLy8jZWVlXG4kYnRuLWNhbmNlbC1ob3Zlci1iZzogICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kYnRuLWNhbmNlbC1ib3JkZXI6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyoqIEJ1dHRvbiBzaXplc1xuJGJ0bi1iYXNlLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLW1lZGl1bSAhZGVmYXVsdDsgLy8gMThweFxuJGJ0bi1sZy1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLXhsYXJnZSAhZGVmYXVsdDsgLy8gMjRweFxuJGJ0bi1zbS1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7IC8vIDE0cHhcbiRidG4teHMtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbWFsbCAhZGVmYXVsdDsgLy8gMTJweFxuXG4vLyoqIEJ1dHRvbiBpY29uIGNvbG91cnNcbiRidG4taWNvbi1jb2xvcjogICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1pY29uLWNvbG9yOiAgICAgICAgJGJ0bi1kZWZhdWx0LWNvbG9yICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWljb24tY29sb3I6ICAgICAgICAkYnRuLWljb24tY29sb3IgIWRlZmF1bHQ7XG4kYnRuLXNlY29uZGFyeS1pY29uLWNvbG9yOiAgICAgICRidG4taWNvbi1jb2xvciAhZGVmYXVsdDtcbiRidG4tbGluay1pY29uLWNvbG9yOiAgICAgICAgICAgJHNlY29uZGFyeS1iYXNlLWNvbG9yICFkZWZhdWx0OyIsIi8vIENhcm91c2VsXG4vL1xuXG4vLyBzaXplIHRvIG1hdGNoIC5zbWFsbCBoZWxwZXIgY2xhc3NcbiRmb250LXNpemUtcC1jYXJvdXNlbDogICAgODUlOyIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIERvbnV0IGNoYXJ0c1xuXG4vLyBEZWZhdWx0IHdpZHRoL2hlaWdodCBvZiBkb251dCBjaGFydFxuJGRvbnV0X3NpemU6IDE3NXB4O1xuXG4vLyBEZWZhdWx0IHRoaWNrbmVzcyBvZiBkb251dCByaW5nXG4kZG9udXRfd2lkdGg6IDE4cHg7XG5cbi8vIEJhc2UgcmluZyBjb2xvdXJcbiRkb251dF9iYXNlX2NvbG91cjogJGdyYXkteGxpZ2h0OyAvLyBMaWdodCBjaGFydHNcbi8vJGRvbnV0X2Jhc2VfY29sb3VyOiAjNDY0NTQ5OyAvLyBEYXJrIGNoYXJ0c1xuXG4vLyBDZW50cmUgY2lyY2xlIGNvbG91ciwgbmVlZHMgdG8gYmUgYSBzb2xpZCBjb2xvdXJcbiRkb251dF9jZW50cmVfY29sb3VyOiB3aGl0ZTtcblxuLy8gQ29sb3VyIGZvciBwZXJjZW50YWdlIGluIHJpbmdcbi8vJGRvbnV0X3BlcmNlbnRfY29sb3VyOiAkYnJhbmRfcHJpbWFyeTsgLy8gTVRcbiRkb251dF9wZXJjZW50X2NvbG91cjogIzEyN2ViOTsgLy8gTldcblxuLy8gUGVyY2VudGFnZSB0ZXh0IGNvbG91clxuLy8kZG9udXRfdGV4dF9jb2xvdXI6ICRkb251dF9wZXJjZW50X2NvbG91cjsgLy8gTVRcbiRkb251dF90ZXh0X2NvbG91cjogIzEyN2ViOTsgLy8gTldcblxuLy8gUGVyY2VudGFnZSB0ZXh0IHNpemVcbiRkb251dF90ZXh0X3NpemU6IDQ4cHg7IiwiLy8gRHJvcGRvd24gKGFzIHVzZWQgaW4gcHJpbWFyeSBuYXZpZ2F0aW9uKVxuXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAxMDAwOyIsIi8vIEVtYWlsIGpvYnNcbi8vXG4kZW1haWwtam9icy1iZzogICAgICAgICAgICAgICAkc2Vjb25kYXJ5LWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kZW1haWwtam9icy1idG46ICAgICAgICAgICAgICAjYmM2NDA0ICFkZWZhdWx0O1xuJGVtYWlsLWpvYnMtZm9udC1zaXplLXNtOiAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS41KSkgIWRlZmF1bHQ7IC8vIDIxcHhcbiRlbWFpbC1qb2JzLWZvbnQtc2l6ZS1sZzogICAgICRmb250LXNpemUteGxhcmdlICFkZWZhdWx0O1xuLy8kZW1haWwtam9icy1kYXJrZW46ICAgICAgICAgICA3JTtcbiIsIi8vIEJsb2NrIGdyaWRcbi8vXG5cbi8vKiogQmxvY2sgdGl0bGUgb3ZlcmxheVxuJGJsb2NrLXRpdGxlLWZvbnQtY29sb3VyOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYmxvY2stdGl0bGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yKSkgIWRlZmF1bHQ7IC8vIDI2cHggMjYvMTRcbiRibG9jay10aXRsZS1mb250LXNpemUtc21hbGw6ICAgICAgICAgICAkZm9udC1zaXplLW1lZGl1bSAhZGVmYXVsdDsgLy8gMTZweFxuXG4kYmxvY2stdGl0bGUtb3ZlcmxheS1iZzogICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAxKSAhZGVmYXVsdDtcbiRibG9jay10aXRsZS1vdmVybGF5LWJnLWhvdmVyOiAgICAgICAgICAkcHJpbWFyeS1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJGJsb2NrLXRpdGxlLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRibG9jay10aXRsZS1vdmVybGF5LXBhZGRpbmctc21hbGw6ICAgICA1cHggMTBweCAhZGVmYXVsdDtcbiRibG9jay10aXRsZS1vdmVybGF5LXJhZGl1czogICAgICAgICAgICA1cHggIWRlZmF1bHQ7XG4kYmxvY2stdGl0bGUtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgNTAwICFkZWZhdWx0O1xuXG4vLyoqIEJsb2NrIHRpdGxlIG92ZXJsYXkgc3BhblxuJGJsb2NrLXRpdGxlLXNwYW4tZm9udC1zaXplOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNTcxKSkgIWRlZmF1bHQ7IC8vIDIycHggMjIvMTRcbiRibG9jay10aXRsZS1zcGFuLWZvbnQtc2l6ZS1zbWFsbDogICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7IC8vIDE0cHhcbiIsIi8vIEZsb2F0c1xuXG4vLyBEZWZhdWx0IGxlZnQgb3IgcmlnaHQgYW5kIGJvdHRvbSBtYXJnaW4gYXJvdW5kIHNwZWNpYWwgZmxvYXRlZCBlbGVtZW50c1xuLy8gaS5lLiBpbWFnZXMgb3IgdmlkZW8gdXNlZCBpbiBhIGNvbnRlbnQgcGFnZVxuJGZsb2F0cy1zcGFjaW5nOiAgIDQwcHg7IiwiLy8gRm9vdGVyIE5hdmlnYXRpb25cbi8vXG4kZm9vdGVyLW5hdi1oZWFkaW5nLWJvcmRlci1jb2xvcjogICAkc2Vjb25kYXJ5LWRhcmstY29sb3I7XG4kZm9vdGVyLW5hdi1oZWFkbGluay1jb2xvcjogICAgICAgICAkcHJpbWFyeS1kYXJrLWNvbG9yO1xuJGZvb3Rlci1uYXYtZm9udC1zaXplOiAgICAgICAgICAgICAgY2VpbCgkZm9udC1zaXplLWJhc2UgKiAwLjk1KTsgLy8gMTRweFxuXG4iLCIvLyBGb3JtIGZpbHRlciBjaGVja2JveFxuLy9cblxuJGZvcm0tZmlsdGVyLWNoZWNrYm94LWJnOiAgICAgICAgICAgICRncmF5LXhsaWdodDtcbiRmb3JtLWZpbHRlci1jaGVja2JveC1jb2xvcjogICAgICAgICAkcHJpbWFyeS1kYXJrLWNvbG9yOyIsIi8vIEZvcm0gZmlsdGVyIGlucHV0XG4vL1xuJGZvcm0tZmlsdGVyLWlucHV0LWJvcmRlcjogICAgICAgICAgICAkZ3JheS1saWdodGVyO1xuIiwiLy8gRm9ybSBmaWx0ZXIgcmFkaW9cbi8vXG5cbiRmb3JtLWZpbHRlci1yYWRpby1iZzogICAgICAgICAgICAkZ3JheS14bGlnaHQ7XG4kZm9ybS1maWx0ZXItcmFkaW8tY29sb3I6ICAgICAgICAgJHByaW1hcnktZGFyay1jb2xvcjsiLCIvLyBIZWFkZXIgaW5mb3JtYXRpb25cbi8vXG4kaGVhZGVyLWluZm8tc3RyYXBsaW5lLWNvbG9yOiAgICAgICAgICAgICAgICAgJHByaW1hcnktYmFzZS1jb2xvciAhZGVmYXVsdDtcbiRoZWFkZXItaW5mby1zdHJhcGxpbmUtY29sb3Itc206ICAgICAgICAgICAgICAkcHJpbWFyeS1iYXNlLWNvbG9yICFkZWZhdWx0O1xuJGhlYWRlci1pbmZvLXBob25lLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRwcmltYXJ5LWJhc2UtY29sb3IgIWRlZmF1bHQ7XG4kaGVhZGVyLWluZm8tZW1haWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJHByaW1hcnktYmFzZS1jb2xvciAhZGVmYXVsdDtcbiRoZWFkZXItaW5mby1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuJGhlYWRlci1pbmZvLXN0cmFwbGluZS1mb250LXNpemUtc206ICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRoZWFkZXItaW5mby1zdHJhcGxpbmUtZm9udC1zaXplLWxnOiAgICAgICAgICBmbG9vcigkZm9udC1zaXplLWJhc2UgKiAxLjI4NikgIWRlZmF1bHQ7IC8vIDE4cHhcblxuJGhlYWRlci1pbmZvLXBob25lLWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgIGZsb29yKCRmb250LXNpemUtYmFzZSAqIDEuNDI5KSAhZGVmYXVsdDsgLy8gMjBweFxuJGhlYWRlci1pbmZvLXBob25lLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgIGNlaWwoJGZvbnQtc2l6ZS1iYXNlICogMS44NTcpICFkZWZhdWx0OyAvLyAyNnB4XG5cbiRoZWFkZXItaW5mby1lbWFpbC1mb250LXNpemUtc206ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7IC8vIDE0cHhcbiRoZWFkZXItaW5mby1lbWFpbC1mb250LXNpemUtbGc6ICAgICAgICAgICAgICBmbG9vcigkZm9udC1zaXplLWJhc2UgKiAxLjI4NikgIWRlZmF1bHQ7IC8vIDE4cHgiLCIvLyBJbWFnZXNcbi8vXG5cbi8vKiogSW1hZ2UgYm9yZGVyIGNvbG91clxuJGltZy1ib3JkZXItY29sb3I6ICAgICRncmF5LWxpZ2h0ZXI7XG5cbi8vKiogSGVybyBpbWFnZSBib3R0b20gbWFyZ2luXG4kaW1nLWhlcm8tc3BhY2luZzogICAgNDBweDtcblxuIiwiLy8gTGlzdGluZ1xuLy9cblxuLy8qKiBTaG9ydGxpc3QgaWNvbiBjb2xvdXJcbiRpY29uLXNob3J0bGlzdC1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBTaG9ydGxpc3Qgc2VsZWN0ZWQgaWNvbiBjb2xvdXJcbiRpY29uLXNob3J0bGlzdC1zZWxlY3RlZC1jb2xvcjogICAkc2Vjb25kYXJ5LWJhc2UtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLS0gUHJvbW90ZWQgbGlzdGluZ1xuLy8qKiBIZWFkaW5nIGJnXG4kcHJvbW8tbGlzdGluZy1oZWFkZXItYmc6ICAgICAgICAgJHByaW1hcnktbGlnaHQtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIENvbnRlbnQgYmdcbiRwcm9tby1saXN0aW5nLWNvbnRlbnQtYmc6ICAgICAgICAkcHJpbWFyeS1saWdodGVyLWNvbG9yICFkZWZhdWx0O1xuJHByb21vLWxpc3RpbmctbGFiZWw6ICAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEpKSAhZGVmYXVsdDtcbiRwcm9tby1saXN0aW5nLWxhYmVsLXRvcDogICAgICAgICAtM3B4ICFkZWZhdWx0O1xuXG4vLy0tIFN0YW5kYXJkIGxpc3Rpbmdcbi8vKiogSGVhZGluZyBiZ1xuJGxpc3RpbmctaGVhZGVyLWJnOiAgICAgICAgICAgICAgICRncmF5LXhsaWdodCAhZGVmYXVsdDtcbiRsaXN0aW5nLWhlYWRlci1sYWJlbC1wYWRkaW5nOiAgICAuNGVtIC42ZW0gLjI1ZW0gLjZlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtbGlzdGluZy1oZWFkaW5nOiAgICAgICAyMnB4ICFkZWZhdWx0O1xuJHByb21vLWxpc3RpbmctaGVhZGVyLWNvbG9yOiAgICAgICRwcmltYXJ5LWJhc2UtY29sb3IhZGVmYXVsdDtcblxuLy8qKiBBZGQgdG8gc2hvcnRsaXN0IGljb24gYnV0dG9uXG4kYWRkLXRvLXNob3J0bGlzdC1iZzogICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRhZGQtdG8tc2hvcnRsaXN0LWNvbG9yOiAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbiRhZGQtdG8tc2hvcnRsaXN0LXBhZGRpbmc6ICAgICAgICAxNnB4ICFkZWZhdWx0O1xuXG4vLyoqIExhYmVsIGNvbG91cnNcbiRsYWJlbC1wcm9tb3RlZC1iZzogICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRsYWJlbC1qdXN0YWRkZWQtYmc6ICAgICAgICAgICRzZWNvbmRhcnktYmFzZS1jb2xvciAhZGVmYXVsdDtcbiRsYWJlbC1mZWF0dXJlZC1iZzogICAgICAgICRwcmltYXJ5LWRhcmstY29sb3IgIWRlZmF1bHQ7XG5cbiIsIi8vIE1hc29ucnkgZ3JpZHNcbi8vXG5cbi8vKiogVXNlZCBvbiBuYXJyb3dlciBzY3JlZW4gc2l6ZXMgKGdlbmVyYWxseSBzbWFsbCBhbmQgYmVsb3cpXG4kbWFzb25yeS1kZWZhdWx0LWd1dHRlcjogICAgICAgIDUlICFkZWZhdWx0O1xuXG4vLyoqIFVzZWQgb24gd2lkZXIgc2NyZWVuIHNpemVzIChnZW5lcmFsbHkgbWVkaXVtIHVwKVxuJG1hc29ucnktc21hbGwtZ3V0dGVyOiAgICAgICAgICAzJSAhZGVmYXVsdDtcblxuLy8qKiBWZXJ0aWNhbCBnYXAgYmV0d2VlbiByb3dzXG4kbWFzb25yeS1yb3ctZ2FwOiAgICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG5cbi8vKiogRGV0ZXJtaW5lIGdyaWQgaXRlbSB3aWR0aHMgdGFraW5nIGludG8gYWNjb3VudCBndXR0ZXJzIHVzZWRcbiRtYXNvbnJ5LTJ3aWRlLXdpZHRoOiAgICAgICAgICAgKDEwMCUgLyAyKSAtICgkbWFzb25yeS1kZWZhdWx0LWd1dHRlciAvIDIpICFkZWZhdWx0O1xuJG1hc29ucnktM3dpZGUtd2lkdGg6ICAgICAgICAgICAoMTAwJSAvIDMpIC0gKCgkbWFzb25yeS1zbWFsbC1ndXR0ZXIgKiAyKSAvIDMpICFkZWZhdWx0O1xuJG1hc29ucnktNHdpZGUtd2lkdGg6ICAgICAgICAgICAoMTAwJSAvIDQpIC0gKCgkbWFzb25yeS1zbWFsbC1ndXR0ZXIgKiAyKSAvIDQpICFkZWZhdWx0OyAvL0RSXG5cbiRtYXNvbnJ5LTJ3aWRlLXNwbGl0LWd1dHRlcjogICAgJG1hc29ucnktZGVmYXVsdC1ndXR0ZXIgLyAyICFkZWZhdWx0O1xuJG1hc29ucnktM3dpZGUtc3BsaXQtZ3V0dGVyOiAgICAkbWFzb25yeS1zbWFsbC1ndXR0ZXIgLyAyICFkZWZhdWx0O1xuJG1hc29ucnktNHdpZGUtc3BsaXQtZ3V0dGVyOiAgICAkbWFzb25yeS1zbWFsbC1ndXR0ZXIgLyAyICFkZWZhdWx0OyAvL0RSXG5cbi8vIFZhcmlhYmxlIGl0ZW1zIGhlaWdodHNcbi8vXG4vLyoqIExpc3Qgb2Ygc2hvcnQgaGVpZ2h0c1xuLy8kbWFzb25yeS1zaG9ydC1zY2FsZTogICAgICAgICAgICgyMDBweCwgMjMwcHgsIDI1MHB4KSAhZGVmYXVsdDtcbiRtYXNvbnJ5LXNob3J0LXNjYWxlOiAgICAgICAgICAgKDIwMHB4LCAyMzBweCwgMjUwcHgsIDIwMHB4KSAhZGVmYXVsdDsgLy9EUlxuXG4vLyoqIExpc3Qgb2YgdGFsbCBoZWlnaHRzXG4vLyRtYXNvbnJ5LXRhbGwtc2NhbGU6ICAgICAgICAgICAgKDI4MHB4LCAzNDBweCwgMzgwcHgpICFkZWZhdWx0O1xuJG1hc29ucnktdGFsbC1zY2FsZTogICAgICAgICAgICAoMjgwcHgsIDM0MHB4LCAzODBweCwgNDUwcHgpICFkZWZhdWx0OyAvL0RSXG5cbi8vKiogRm9yIG9sZGVyIGxlZ2FjeSBicm93c2VycyBub3Qgc3VwcG9ydGluZyBudGgtY2hpbGQtb2YoKSBzZWxlY3RvclxuLy8kbWFzb25yeS1kZWZhdWx0LWhlaWdodDogICAgICAgIG1hc29ucnktc2hvcnQtaGVpZ2h0KDMpICFkZWZhdWx0O1xuJG1hc29ucnktZGVmYXVsdC1oZWlnaHQ6ICAgICAgICBtYXNvbnJ5LXNob3J0LWhlaWdodCg0KSAhZGVmYXVsdDsgLy9EUlxuXG5cbiRtYXNvbnJ5LWZvbnQtc2l6ZTogICAgICAgICAgICAgJGJsb2NrLXRpdGxlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRtYXNvbnJ5LXNwYW4tZm9udC1zaXplOiAgICAgICAgJGJsb2NrLXRpdGxlLXNwYW4tZm9udC1zaXplICFkZWZhdWx0O1xuJG1hc29ucnktZm9udC1zaXplLXNtYWxsOiAgICAgICAgICAgICAkYmxvY2stdGl0bGUtZm9udC1zaXplLXNtYWxsICFkZWZhdWx0O1xuJG1hc29ucnktc3Bhbi1mb250LXNpemUtc21hbGw6ICAgICAgICAkYmxvY2stdGl0bGUtc3Bhbi1mb250LXNpemUtc21hbGwgIWRlZmF1bHQ7XG4kbWFzb25yeS1iZy1pbWc6ICAgICAgICAgICAgICAgICAgICAgICcuLi9pbWFnZXMvbWFzb25yeS9tYXNvbnJ5LTQ4MHg3MjcuanBnJyAhZGVmYXVsdDsgLy9EUiIsIi8vIE5hdnNcbi8vXG5cbi8vKiogTmF2IGxpbmsgaG92ZXIgYmcgY29sb3VyXG4kbmF2LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LXhsaWdodDtcblxuLy8qKiBTaGFyZWQgbmF2IHN0eWxlc1xuJG5hdi1saW5rLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA1cHggMTBweDtcblxuXG4vLyBUYWJzXG4vLyA9PT09PT09PT1cbi8vKiogQ29sb3Vyc1xuJG5hdi10YWJzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZTtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXkteGxpZ2h0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyO1xuJG5hdi10YWJzLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudDtcblxuLy8qKiBUZXh0XG4kbmF2LXRhYnMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5O1xuJG5hdi10YWJzLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheTtcbiRuYXYtdGFicy1hY3RpdmUtaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktZGFyaztcblxuLy8qKiBCb3JkZXJzXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5O1xuXG4vLyBTdHJ1Y3R1cmFsXG4vLyA9PT09PT09PT1cbi8vKiogRGVmYXVsdCB2ZXJ0aWNhbCBiZXR3ZWVuIHRhYnMgYW5kIHRhYiBjb250ZW50ICgwcHggZm9yIG5vIHN1c3BlbnNpb24pXG4kbmF2LXRhYnMtc3VzcGVuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgIDBweDtcblxuLy8qKiBEZWZhdWx0IGJvcmRlciBvcHRpb25zXG4kbmF2LXRhYnMtYm9yZGVyLXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDFweDtcbiRuYXYtdGFicy1jb250ZW50LWJvcmRlci1zaXplOiAgICAgICAgICAgICAgICAgICAgMXB4O1xuXG4vLyoqIERlZmF1bHQgZ3V0dGVyIHNwYWNlIGJldHdlZW4gdGFic1xuJG5hdi10YWJzLWd1dHRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwcHg7IiwiLy8gUHJpbWFyeSBuYXZpZ2F0aW9uXG4vL1xuJG5hdmlnYXRpb24tcHJpbWFyeS1iZy1zbWFsbDogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmlnYXRpb24tcHJpbWFyeS1iZy1tZWRpdW06ICAgICAgICAgICAgICAjZWVlICFkZWZhdWx0O1xuJG5hdmlnYXRpb24tcHJpbWFyeS1pY29uLWNvbG9yOiAgICAgICAgICAgICAjNjY2ICFkZWZhdWx0O1xuJG5hdmlnYXRpb24tcHJpbWFyeS1kaXZpZGVyOiAgICAgICAgICAgICAgICAnfCcgIWRlZmF1bHQ7XG4kbmF2aWdhdGlvbi1wcmltYXJ5LWRpdmlkZXItY29sb3I6ICAgICAgICAgICRwcmltYXJ5LWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2aWdhdGlvbi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgICAgICRwcmltYXJ5LWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2aWdhdGlvbi1wcmltYXJ5LWJnLWFjdGl2ZTogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2aWdhdGlvbi1wcmltYXJ5LWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kbmF2aWdhdGlvbi1wcmltYXJ5LWZvbnQtc2l6ZS1zbWFsbDogICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuNzUpKSAhZGVmYXVsdDtcbiRuYXZpZ2F0aW9uLXByaW1hcnktZm9udC1zaXplLW1lZGl1bTogICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMSkpICFkZWZhdWx0O1xuXG4kbmF2aWdhdGlvbi11c2VyLWRpdmlkZXItY29sb3I6ICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJG5hdmlnYXRpb24tdXNlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXZpZ2F0aW9uLXVzZXItYmctYWN0aXZlOiAgICAgICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cblxuJG5hdmlnYXRpb24tc3ViLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICRncmF5LXhsaWdodCAhZGVmYXVsdDtcblxuXG4vLyBAZXh0ZW5kICVoZWFkZXItaW5mby1iYXJcbi8vXG4laGVhZGVyLWluZm8tYmFyIHtcbiAgY29sb3I6ICMxZDVhODQ7XG4gIHBhZGRpbmc6IDE1cHggMDtcbn1cblxuLy8gQGV4dGVuZCAlaGVhZGVyLWxvZ29cbi8vXG4laGVhZGVyLWxvZ28ge1xuICB3aWR0aDogMTIwcHg7XG4gIG1hcmdpbjogMTJweCAxMHB4IDAgMTBweDtcbn1cbiIsIi8vIE9mZiBjYW52YXNcbi8vXG5cbi8vKiogT2ZmLWNhbnZhcyB6LWluZGV4J3NcbiR6aW5kZXgtb2ZmY2FudmFzLWJhY2tncm91bmQ6ICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1vZmZjYW52YXMtcGFuZWw6ICAgICAgICAgIDEwMTAgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCB3aWR0aCBvZiBwYXJlbnQgb2ZmLWNhbnZhcyBwYW5lbCB3aWxsIG9jY3VweVxuJG9mZmNhbnZhcy1jb250ZW50LXdpZHRoOiAgICAgICAgIDg1JSAhZGVmYXVsdDtcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG9mZiBjYW52YXMgYm9keVxuJG9mZmNhbnZhcy1oZWFkZXItcGFkZGluZzogICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBvZmYgY2FudmFzIGJvZHlcbiRvZmZjYW52YXMtYm9keS1wYWRkaW5nOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4vLyoqIEhlYWRlciBib3JkZXIgY29sb3JcbiRvZmZjYW52YXMtaGVhZGVyLWJvcmRlci1jb2xvcjogICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2Ygb2ZmIGNhbnZhcyBjb250ZW50IGFyZWFcbiRvZmZjYW52YXMtY29udGVudC1iZzogICAgICAgICAgICB3aGl0ZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZHJvcCBiYWNrZ3JvdW5kIGNvbG9yXG4kb2ZmY2FudmFzLWJhY2tkcm9wLWJnOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZHJvcCBvcGFjaXR5XG4kb2ZmY2FudmFzLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgLjQgIWRlZmF1bHQ7IiwiLy8gUGFuZWxzXG4vL1xuXG4kcGFuZWwtdGV4dC1oaWdobGlnaHQ6ICAgICAgICAgICAgJGdyYXktZGFyaztcbiRwYW5lbC1wcm9tby10ZXh0OiAgICAgICAgICAgICAgICAjZmZmO1xuXG4vLyoqIExpc3RpbmcgcGFuZWxcbiRwYW5lbC1saXN0aW5nLWJnLW1haW46ICAgICAgICAgICAkZ3JheS14bGlnaHQ7XG4kcGFuZWwtbGlzdGluZy1iZy1oZWFkOiAgICAgICAgICAgJGdyYXktbGlnaHRlcjtcblxuLy8qKiBMaXN0aW5nIHdpdGggYnV0dG9uIHBhbmVsXG4kcGFuZWwtbGlzdGluZy1idXR0LWZvbnQtc2l6ZTogICAgODUlO1xuXG4vLyoqIEFjY29yZGlvbiBwYW5lbFxuJHBhbmVsLWFjY29yZGlvbi1iZzogICAgICAgICAgICAgICNlNWVmZjQ7XG4kcGFuZWwtYWNjb3JkaW9uLWJnLWhlYWQ6ICAgICAgICAgI2M4ZGRlNztcblxuLy8qKiBKb2IgTWFuYWdlciBwYW5lbFxuJHBhbmVsLWpvYi1tYW5hZ2VyLWJnOiAgICAgICAgICAgICRwcmltYXJ5LWxpZ2h0ZXItY29sb3I7XG4kcGFuZWwtam9iLW1hbmFnZXItY29sb3I6ICAgICAgICAgJGJyYW5kLXByaW1hcnk7XG4kcGFuZWwtam9iLW1hbmFnZXItYm9yZGVyOiAgICAgICAgI2ZmZjtcbiRwYW5lbC1qb2ItbWFuYWdlci1mb290LWNvbG9yOiAgICAkcHJpbWFyeS1kYXJrLWNvbG9yO1xuXG4vLyoqIEFib3V0IHBhbmVsXG4kcGFuZWwtYWJvdXQtYmc6ICAgICAgICAgICAgICAgICAgJHByaW1hcnktbGlnaHRlci1jb2xvcjtcblxuJWhlYWRpbmctbWFyZ2luLXJlc2V0IHtcbiAgaDEsIC5oMSxcbiAgaDIsIC5oMixcbiAgaDMsIC5oMyxcbiAgaDQsIC5oNCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4iLCIvLyBTZWFyY2ggZm9ybVxuLy9cbiRzZWFyY2gtZm9ybS10ZXh0LWNvbG9yOiAgICAgICAgICB3aGl0ZTtcbiRzZWFyY2gtZm9ybS1mb250LXdlaWdodDogICAgICAgICAkZm9udC13ZWlnaHQtcmVndWxhcjsiLCIvLyBTZWFyY2ggaG9tZVxuLy9cbiRmb250LXNpemUtbGFyZ2UtaW50cm86ICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAyLjEpKSAhZGVmYXVsdDtcbiRmb250LXNpemUtbWVkaXVtLWludHJvOiAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjkpKSAhZGVmYXVsdDtcbiRmb250LXNpemUtc21hbGwtaW50cm86ICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjYpKSAhZGVmYXVsdDtcblxuXG4kc2VhcmNoLWJnLWltZzogJ2JnLXNlYXJjaC5qcGcnICFkZWZhdWx0OyIsIi8vIFNlYXJjaCBqb2Igc2VjdG9yc1xuLy9cbiRzZWFyY2gtc2VjdG9ycy10ZXh0LWNvbG9yOiAgICAgICAgICAgd2hpdGU7XG4iLCIvLyBTb2NpYWwgYnJhbmQgaWNvbnNcbi8vXG5cbi8vKiogSWNvbiBiYWNrZ3JvdW5kIGNvbG91cnMgLSBicmFuZCBvZmZpY2lhbCBjb2xvdXJzXG4kaWNvbi1mYWNlYm9vay1iZzogICAgICAgICAgICMzYjU5OTg7XG4kaWNvbi10d2l0dGVyLWJnOiAgICAgICAgICAgICM1NWFjZWU7XG4kaWNvbi1saW5rZWRpbi1iZzogICAgICAgICAgICMwMDdiYjY7XG4iLCIvLyBTcGFjaW5nXG4vL1xuJHNwYWNlcjogMTBweCAhZGVmYXVsdDsiLCIvLyBUYWJsZXNcbi8vXG4vLyBVc2VkIHRvIGN1c3RvbWlzZSB0aGUgdGFibGUgZWxlbWVudCBhbmQgYWRkIGNvbnRyb2xsYWJsZSBzZXR0aW5ncyB0b1xuLy8gb3VyIGN1c3RvbSBUYWJsZVNhdyB0aGVtZSAoc2VlIC92ZW5kb3IvZmlsYW1lbnQtdGFibGVzYXcvKS5cblxuLy8qKiBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYWxsIHRhYmxlcy5cbi8vJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgICB3aGl0ZTtcblxuLy8qKiBQYWRkaW5nIGZvciBgPHRoPmBzIGFuZCBgPHRkPmBzLlxuLy8kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAgIDhweDtcblxuLy8qKiBQYWRkaW5nIGZvciBjZWxscyBpbiBgLnRhYmxlLWNvbmRlbnNlZGAuXG4vLyR0YWJsZS1jb25kZW5zZWQtY2VsbC1wYWRkaW5nOiAgNXB4O1xuXG4vLyoqIFRleHQgbXV0ZWQgY29sb3Jcbi8vJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgICAkZ3JheTtcblxuLy8qKiBUYWJsZSBoZWFkaW5nIGNvbG9yXG4kdGFibGUtaGVhZGluZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyoqIFRhYmxlIGhlYWRpbmcgYmFja2dyb3VuZCBjb2xvclxuJHRhYmxlLWhlYWRpbmctYmc6ICAgICAgICAgICAgICAkcHJpbWFyeS1saWdodC1jb2xvciAhZGVmYXVsdDtcblxuLy8qKiBUaGlja25lc3Mgb2YgYm9yZGVyIHVuZGVyIHRoZWFkXG4vLyR0YWJsZS1oZWFkaW5nLWJvcmRlci13aWR0aDogICAgMXB4O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cbi8vJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheTsiLCIvL1xuLy8gVm9pY2Ugb2YgdGhlIFdvcmtmb3JjZSB2YXJpYWJsZXMgZm9yIE1hdGNodGVjaFxuLy9cblxuJHZvdy1zZWN0aW9uLWhlYWRpbmctYmc6ICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeTtcbiR2b3ctc2VjdGlvbi1oZWFkaW5nLWNvbG9yOiAgICAgICAgICAgd2hpdGU7XG4kdm93LXNlY3Rpb24taGVhZGluZy1mb250LXdlaWdodDogICAgIDUwMDtcblxuJHZvdy1zZWN0aW9uLWludHJvLWJnOiAgICAgICAgICAgICAgICAjM2IzYjNlO1xuJHZvdy1zZWN0aW9uLWFjY29yZGlvbi1iZzogICAgICAgICAgICAjNDY0NTQ5O1xuXG4kdm93LWhlYWRpbmctY29sb3ItZGVmYXVsdDogICAgICAgICAgIHdoaXRlO1xuJHZvdy1oZWFkaW5nLWNvbG9yLXByaW1hcnk6ICAgICAgICAgICAkYnJhbmQtcHJpbWFyeTtcbiR2b3ctaGVhZGluZy1jb2xvci1zZWNvbmRhcnk6ICAgICAgICAgJHNlY29uZGFyeS1iYXNlLWNvbG9yO1xuXG4kZ2V0LXBhdGgtdG8tYXNzZXRzOiAgICAgICAgICAgICAgICAgIFwiL3NpdGVzL2RlZmF1bHQvZmlsZXMvd3lzaXd5Zy9pbWFnZXMvdm93LzIwMTdcIjsiLCIvLyBFbWFpbCBqb2JzXG4vL1xuJGVtYWlsLWpvYnMtYmc6ICAgICAgICAgICAgICAgJHNlY29uZGFyeS1iYXNlLWNvbG9yO1xuJGVtYWlsLWpvYnMtYnRuOiAgICAgICAgICAgICAgI2E1MjY0Yztcbi8vJGVtYWlsLWpvYnMtZm9udC1zaXplLXNtOiAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS41KSkgIWRlZmF1bHQ7IC8vIDIxcHhcbi8vJGVtYWlsLWpvYnMtZm9udC1zaXplLWxnOiAgICAgJGZvbnQtc2l6ZS14bGFyZ2UgIWRlZmF1bHQ7XG4vLy8vJGVtYWlsLWpvYnMtZGFya2VuOiAgICAgICAgICAgNyU7XG4iLCIvLy8vIEJsb2NrIGdyaWRcbi8vLy9cbi8vXG4vLy8vKiogQmxvY2sgdGl0bGUgb3ZlcmxheVxuLy8kYmxvY2stdGl0bGUtZm9udC1jb2xvdXI6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vJGJsb2NrLXRpdGxlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMikpICFkZWZhdWx0OyAvLyAyNnB4IDI2LzE0XG4vLyRibG9jay10aXRsZS1mb250LXNpemUtc21hbGw6ICAgICAgICAgICAkZm9udC1zaXplLW1lZGl1bSAhZGVmYXVsdDsgLy8gMTZweFxuLy9cbiRibG9jay10aXRsZS1vdmVybGF5LWJnOiAgICAgICAgICAgICAgICAjMTI3ZWI5O1xuJGJsb2NrLXRpdGxlLW92ZXJsYXktYmctaG92ZXI6ICAgICAgICAgICRwcmltYXJ5LWJhc2UtY29sb3I7XG4vLyRibG9jay10aXRsZS1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4vLyRibG9jay10aXRsZS1vdmVybGF5LXBhZGRpbmctc21hbGw6ICAgICA1cHggMTBweCAhZGVmYXVsdDtcbi8vJGJsb2NrLXRpdGxlLW92ZXJsYXktcmFkaXVzOiAgICAgICAgICAgIDVweCAhZGVmYXVsdDtcbi8vJGJsb2NrLXRpdGxlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgIDUwMCAhZGVmYXVsdDtcbi8vXG4vLy8vKiogQmxvY2sgdGl0bGUgb3ZlcmxheSBzcGFuXG4vLyRibG9jay10aXRsZS1zcGFuLWZvbnQtc2l6ZTogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjU3MSkpICFkZWZhdWx0OyAvLyAyMnB4IDIyLzE0XG4vLyRibG9jay10aXRsZS1zcGFuLWZvbnQtc2l6ZS1zbWFsbDogICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7IC8vIDE0cHhcbiIsIi8vLy8gSGVhZGVyIGluZm9ybWF0aW9uXG4vLy8vXG4vLyRoZWFkZXItaW5mby1zdHJhcGxpbmUtY29sb3I6ICAgICAgICAgICAgICAgICAkcHJpbWFyeS1iYXNlLWNvbG9yICFkZWZhdWx0O1xuJGhlYWRlci1pbmZvLXN0cmFwbGluZS1jb2xvci1zbTogICAgICAgICAgICAgICAgI2ZmZjtcbi8vJGhlYWRlci1pbmZvLXBob25lLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRwcmltYXJ5LWJhc2UtY29sb3IgIWRlZmF1bHQ7XG4kaGVhZGVyLWluZm8tZW1haWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkcHJpbWFyeS1iYXNlLWNvbG9yO1xuJGhlYWRlci1pbmZvLWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHByaW1hcnktYmFzZS1jb2xvcjtcbi8vXG4vLyRoZWFkZXItaW5mby1zdHJhcGxpbmUtZm9udC1zaXplLXNtOiAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4vLyRoZWFkZXItaW5mby1zdHJhcGxpbmUtZm9udC1zaXplLWxnOiAgICAgICAgICBmbG9vcigkZm9udC1zaXplLWJhc2UgKiAxLjI4NikgIWRlZmF1bHQ7IC8vIDE4cHhcbi8vXG4vLyRoZWFkZXItaW5mby1waG9uZS1mb250LXNpemUtc206ICAgICAgICAgICAgICBmbG9vcigkZm9udC1zaXplLWJhc2UgKiAxLjQyOSkgIWRlZmF1bHQ7IC8vIDIwcHhcbi8vJGhlYWRlci1pbmZvLXBob25lLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgIGNlaWwoJGZvbnQtc2l6ZS1iYXNlICogMS44NTcpICFkZWZhdWx0OyAvLyAyNnB4XG4vL1xuLy8kaGVhZGVyLWluZm8tZW1haWwtZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0OyAvLyAxNHB4XG4vLyRoZWFkZXItaW5mby1lbWFpbC1mb250LXNpemUtbGc6ICAgICAgICAgICAgICBmbG9vcigkZm9udC1zaXplLWJhc2UgKiAxLjI4NikgIWRlZmF1bHQ7IC8vIDE4cHgiLCIvLy8vIExpc3Rpbmdcbi8vLy9cbi8vXG4vLy8vKiogU2hvcnRsaXN0IGljb24gY29sb3VyXG4vLyRpY29uLXNob3J0bGlzdC1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vXG4vLy8vKiogU2hvcnRsaXN0IHNlbGVjdGVkIGljb24gY29sb3VyXG4kaWNvbi1zaG9ydGxpc3Qtc2VsZWN0ZWQtY29sb3I6ICAgI2Y2YTAwMDtcbi8vXG4vLy8vLS0gUHJvbW90ZWQgbGlzdGluZ1xuLy8vLyoqIEhlYWRpbmcgYmdcbiRwcm9tby1saXN0aW5nLWhlYWRlci1iZzogICAgICAgICAjYzdkMGUxO1xuLy8vLyoqIENvbnRlbnQgYmdcbi8vJHByb21vLWxpc3RpbmctY29udGVudC1iZzogICAgICAgICRwcmltYXJ5LWxpZ2h0ZXItY29sb3IgIWRlZmF1bHQ7XG4vLyRwcm9tby1saXN0aW5nLWxhYmVsOiAgICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxKSkgIWRlZmF1bHQ7XG4vLyRwcm9tby1saXN0aW5nLWxhYmVsLXRvcDogICAgICAgICAtM3B4ICFkZWZhdWx0O1xuLy9cbi8vLy8tLSBTdGFuZGFyZCBsaXN0aW5nXG4vLy8vKiogSGVhZGluZyBiZ1xuLy8kbGlzdGluZy1oZWFkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXkteGxpZ2h0ICFkZWZhdWx0O1xuLy8kbGlzdGluZy1oZWFkZXItbGFiZWwtcGFkZGluZzogICAgLjRlbSAuNmVtIC4yNWVtIC42ZW0gIWRlZmF1bHQ7XG4vLyRmb250LXNpemUtbGlzdGluZy1oZWFkaW5nOiAgICAgICAyMnB4ICFkZWZhdWx0O1xuJHByb21vLWxpc3RpbmctaGVhZGVyLWNvbG9yOiAgICAgICAgICMxZjQ0ODc7XG4vL1xuLy8vLyoqIEFkZCB0byBzaG9ydGxpc3QgaWNvbiBidXR0b25cbi8vJGFkZC10by1zaG9ydGxpc3QtYmc6ICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyRhZGQtdG8tc2hvcnRsaXN0LWNvbG9yOiAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbi8vJGFkZC10by1zaG9ydGxpc3QtcGFkZGluZzogICAgICAgIDE2cHggIWRlZmF1bHQ7XG5cbi8vKiogTGFiZWwgY29sb3Vyc1xuLy8kbGFiZWwtcHJvbW90ZWQtYmc6ICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4vLyRsYWJlbC1qdXN0YWRkZWQtYmc6ICAgICAgICAgICRzZWNvbmRhcnktYmFzZS1jb2xvciAhZGVmYXVsdDtcbi8vJGxhYmVsLWZlYXR1cmVkLWJnOiAgICAgICAgJHByaW1hcnktZGFyay1jb2xvciAhZGVmYXVsdDsiLCIvLy8vIE1hc29ucnkgZ3JpZHNcbi8vLy9cbi8vXG4vLy8vKiogVXNlZCBvbiBuYXJyb3dlciBzY3JlZW4gc2l6ZXMgKGdlbmVyYWxseSBzbWFsbCBhbmQgYmVsb3cpXG4vLyRtYXNvbnJ5LWRlZmF1bHQtZ3V0dGVyOiAgICAgICAgNSUgIWRlZmF1bHQ7XG4vL1xuLy8vLyoqIFVzZWQgb24gd2lkZXIgc2NyZWVuIHNpemVzIChnZW5lcmFsbHkgbWVkaXVtIHVwKVxuLy8kbWFzb25yeS1zbWFsbC1ndXR0ZXI6ICAgICAgICAgIDMlICFkZWZhdWx0O1xuLy9cbi8vLy8qKiBWZXJ0aWNhbCBnYXAgYmV0d2VlbiByb3dzXG4vLyRtYXNvbnJ5LXJvdy1nYXA6ICAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbi8vXG4vLy8vKiogRGV0ZXJtaW5lIGdyaWQgaXRlbSB3aWR0aHMgdGFraW5nIGludG8gYWNjb3VudCBndXR0ZXJzIHVzZWRcbi8vJG1hc29ucnktMndpZGUtd2lkdGg6ICAgICAgICAgICAoMTAwJSAvIDIpIC0gKCRtYXNvbnJ5LWRlZmF1bHQtZ3V0dGVyIC8gMikgIWRlZmF1bHQ7XG4vLyRtYXNvbnJ5LTN3aWRlLXdpZHRoOiAgICAgICAgICAgKDEwMCUgLyAzKSAtICgoJG1hc29ucnktc21hbGwtZ3V0dGVyICogMikgLyAzKSAhZGVmYXVsdDtcbi8vJG1hc29ucnktNHdpZGUtd2lkdGg6ICAgICAgICAgICAoMTAwJSAvIDQpIC0gKCgkbWFzb25yeS1zbWFsbC1ndXR0ZXIgKiAyKSAvIDQpICFkZWZhdWx0OyAvL0RSXG4vL1xuLy8kbWFzb25yeS0yd2lkZS1zcGxpdC1ndXR0ZXI6ICAgICRtYXNvbnJ5LWRlZmF1bHQtZ3V0dGVyIC8gMiAhZGVmYXVsdDtcbi8vJG1hc29ucnktM3dpZGUtc3BsaXQtZ3V0dGVyOiAgICAkbWFzb25yeS1zbWFsbC1ndXR0ZXIgLyAyICFkZWZhdWx0O1xuLy8kbWFzb25yeS00d2lkZS1zcGxpdC1ndXR0ZXI6ICAgICRtYXNvbnJ5LXNtYWxsLWd1dHRlciAvIDIgIWRlZmF1bHQ7IC8vRFJcbi8vXG4vLy8vIFZhcmlhYmxlIGl0ZW1zIGhlaWdodHNcbi8vLy9cbi8vLy8qKiBMaXN0IG9mIHNob3J0IGhlaWdodHNcbi8vLy8kbWFzb25yeS1zaG9ydC1zY2FsZTogICAgICAgICAgICgyMDBweCwgMjMwcHgsIDI1MHB4KSAhZGVmYXVsdDtcbi8vJG1hc29ucnktc2hvcnQtc2NhbGU6ICAgICAgICAgICAoMjAwcHgsIDIzMHB4LCAyNTBweCwgMjAwcHgpICFkZWZhdWx0OyAvL0RSXG4vL1xuLy8vLyoqIExpc3Qgb2YgdGFsbCBoZWlnaHRzXG4vLy8vJG1hc29ucnktdGFsbC1zY2FsZTogICAgICAgICAgICAoMjgwcHgsIDM0MHB4LCAzODBweCkgIWRlZmF1bHQ7XG4vLyRtYXNvbnJ5LXRhbGwtc2NhbGU6ICAgICAgICAgICAgKDI4MHB4LCAzNDBweCwgMzgwcHgsIDQ1MHB4KSAhZGVmYXVsdDsgLy9EUlxuLy9cbi8vLy8qKiBGb3Igb2xkZXIgbGVnYWN5IGJyb3dzZXJzIG5vdCBzdXBwb3J0aW5nIG50aC1jaGlsZC1vZigpIHNlbGVjdG9yXG4vLy8vJG1hc29ucnktZGVmYXVsdC1oZWlnaHQ6ICAgICAgICBtYXNvbnJ5LXNob3J0LWhlaWdodCgzKSAhZGVmYXVsdDtcbi8vJG1hc29ucnktZGVmYXVsdC1oZWlnaHQ6ICAgICAgICBtYXNvbnJ5LXNob3J0LWhlaWdodCg0KSAhZGVmYXVsdDsgLy9EUiIsIi8vIFByaW1hcnkgbmF2aWdhdGlvblxuLy9cbi8vJG5hdmlnYXRpb24tcHJpbWFyeS1iZy1zbWFsbDogICAgICAgICAgICAgICAgICMxMjdlYjk7XG4vLyRuYXZpZ2F0aW9uLXByaW1hcnktYmctbWVkaXVtOiAgICAgICAgICAgICAgICAjMTI3ZWI5O1xuLy8kbmF2aWdhdGlvbi1wcmltYXJ5LWljb24tY29sb3I6ICAgICAgICAgICAgICAgI2ZmZjtcbi8vJG5hdmlnYXRpb24tcHJpbWFyeS1kaXZpZGVyOiAgICAgICAgICAgICAgICAnfCc7XG4vLyRuYXZpZ2F0aW9uLXByaW1hcnktZGl2aWRlci1jb2xvcjogICAgICAgICAgJHByaW1hcnktZGFyay1jb2xvcjtcbiRuYXZpZ2F0aW9uLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAgICAgICAjMWY0NDg3O1xuLy8kbmF2aWdhdGlvbi1wcmltYXJ5LWJnLWFjdGl2ZTogICAgICAgICAgICAgICAgIzFmNDQ4Nztcbi8vJG5hdmlnYXRpb24tcHJpbWFyeS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xuLy8kbmF2aWdhdGlvbi1wcmltYXJ5LWZvbnQtc2l6ZS1zbWFsbDogICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuNzUpKTtcbi8vJG5hdmlnYXRpb24tcHJpbWFyeS1mb250LXNpemUtbWVkaXVtOiAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxKSk7XG4vL1xuLy8kbmF2aWdhdGlvbi11c2VyLWRpdmlkZXItY29sb3I6ICAgICAgICAgICAgICAkZ3JheS1saWdodGVyO1xuLy8kbmF2aWdhdGlvbi11c2VyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgIzFmNDQ4Nztcbi8vJG5hdmlnYXRpb24tdXNlci1iZy1hY3RpdmU6ICAgICAgICAgICAgICAgICAgICMxZjQ0ODc7XG5cbi8vJG5hdmlnYXRpb24tc3ViLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICMxZjQ0ODc7XG5cbi8vXG4vL1xuLy8vLyBAZXh0ZW5kICVoZWFkZXItaW5mby1iYXJcbi8vLy9cbi8vJWhlYWRlci1pbmZvLWJhciB7XG4vLyAgY29sb3I6ICMxZDVhODQ7XG4vLyAgcGFkZGluZzogMTVweCAwO1xuLy99XG4vL1xuLy8vLyBAZXh0ZW5kICVoZWFkZXItbG9nb1xuLy8vL1xuLy8laGVhZGVyLWxvZ28ge1xuLy8gIHdpZHRoOiAxMjBweDtcbi8vICBtYXJnaW46IDEycHggMTBweCAwIDEwcHg7XG4vL31cbiIsIi8vLy8gT2ZmIGNhbnZhc1xuLy8vL1xuLy9cbi8vLy8qKiBPZmYtY2FudmFzIHotaW5kZXgnc1xuLy8kemluZGV4LW9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAgICAgMTAwMDtcbi8vJHppbmRleC1vZmZjYW52YXMtcGFuZWw6ICAgICAgICAgIDEwMTA7XG4vL1xuLy8vLyoqIERlZmF1bHQgd2lkdGggb2YgcGFyZW50IG9mZi1jYW52YXMgcGFuZWwgd2lsbCBvY2N1cHlcbi8vJG9mZmNhbnZhcy1jb250ZW50LXdpZHRoOiAgICAgICAgIDg1JTtcbi8vXG4vLy8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBvZmYgY2FudmFzIGJvZHlcbi8vJG9mZmNhbnZhcy1oZWFkZXItcGFkZGluZzogICAgICAgIDE1cHg7XG4vL1xuLy8vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgb2ZmIGNhbnZhcyBib2R5XG4vLyRvZmZjYW52YXMtYm9keS1wYWRkaW5nOiAgICAgICAgICAwO1xuLy9cbi8vLy8qKiBIZWFkZXIgYm9yZGVyIGNvbG9yXG4vLyRvZmZjYW52YXMtaGVhZGVyLWJvcmRlci1jb2xvcjogICAkZ3JheS1saWdodGVyO1xuLy9cbi8vLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIG9mZiBjYW52YXMgY29udGVudCBhcmVhXG4vLyRvZmZjYW52YXMtY29udGVudC1iZzogICAgICAgICAgICAjMTI3ZWI5O1xuLy9cbi8vLy8qKiBCYWNrZHJvcCBiYWNrZ3JvdW5kIGNvbG9yXG4vLyRvZmZjYW52YXMtYmFja2Ryb3AtYmc6ICAgICAgICAgICAjMDAwO1xuLy9cbi8vLy8qKiBCYWNrZHJvcCBvcGFjaXR5XG4vLyRvZmZjYW52YXMtYmFja2Ryb3Atb3BhY2l0eTogICAgICAuNDsiLCIvLyBTZWFyY2ggZm9ybVxuLy9cbiRzZWFyY2gtZm9ybS10ZXh0LWNvbG9yOiAgICAgICAgICB3aGl0ZTtcbiRzZWFyY2gtZm9ybS1mb250LXdlaWdodDogICAgICAgICAkZm9udC13ZWlnaHQtbGlnaHQ7IiwiLy8gU2VhcmNoIGhvbWVcbi8vXG4vLyRmb250LXNpemUtbGFyZ2UtaW50cm86ICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAyLjEpKTtcbi8vJGZvbnQtc2l6ZS1tZWRpdW0taW50cm86ICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuOSkpO1xuLy8kZm9udC1zaXplLXNtYWxsLWludHJvOiAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS42KSk7XG5cblxuJHNlYXJjaC1iZy1pbWc6ICdiZy1zZWFyY2gtbmV0d29ya2Vycy5qcGcnOyIsIi8vXG4vLyBWb2ljZSBvZiB0aGUgV29ya2ZvcmNlIHZhcmlhYmxlcyBmb3IgTmV0d29ya2Vyc1xuLy9cblxuJHZvdy1oZWFkaW5nLWNvbG9yLXNlY29uZGFyeTogICAgICAgICAjMTI3ZWI5O1xuXG4kZ2V0LXBhdGgtdG8tYXNzZXRzOiAgICAgICAgICAgICAgICAgIFwiL3NpdGVzL25ldHdvcmtlcnMvZmlsZXMvd3lzaXd5Zy9pbWFnZXMvdm93LzIwMTdcIjsiLCIvLyBBY2NvcmRpb25zXG5cbi8vIEljb24gdGhlbWUgZ2VuZXJhdG9yXG4vLyAkY2xvc2VkLWljb246IGZvbnQgY2hhcmFjdGVyIGNvZGUgZm9yIGljb24gd2hlbiBhY2NvcmRpb24gaXMgY2xvc2VkXG4vLyAkb3Blbi1pY29uOiBmb250IGNoYXJhY3RlciBjb2RlIGZvciBpY29uIHdoZW4gYWNjb3JkaW9uIGlzIG9wZW5cbkBtaXhpbiBhY2NvcmRpb24taWNvbi12YXJpYW50KCR0aGVtZS1uYW1lLCAkY2xvc2VkLWljb24sICRvcGVuLWljb24pIHtcblxuICAvLyBJY29uIHRoZW1lcyBmb3IgcGFuZWxzXG4vLyAgLnBhbmVsIHtcblxuICAgIC8vIE9wZW4gKGRlZmF1bHQpIHN0YXRlIGljb25cbiAgICAuI3skdGhlbWUtbmFtZX0ge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICRvcGVuLWljb247XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU3VwcG9ydCBmb3IgdHJpZ2dlciBlbGVtZW50IChkYXRhLXRvZ2dsZVsnY29sbGFwc2UnXSkgdG9cbiAgICAvLyBiZSB0aGUgc2FtZSBhcyB0aGUgZWxlbWVudCB3aXRoIHRoZSAkdGhlbWUtbmFtZSBjbGFzcy5cbi8vICAgICYuI3skdGhlbWUtbmFtZX0ge1xuLy8gICAgICAmOmFmdGVyIHtcbi8vICAgICAgICBjb250ZW50OiAkb3Blbi1pY29uO1xuLy8gICAgICB9XG4vLyAgICB9XG5cbiAgICAvLyBDbG9zZWQgc3RhdGUgaWNvblxuICAgIC5jb2xsYXBzZWQge1xuICAgICAgLiN7JHRoZW1lLW5hbWV9IHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJGNsb3NlZC1pY29uO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFN1cHBvcnQgZm9yIHRyaWdnZXIgZWxlbWVudCAoZGF0YS10b2dnbGVbJ2NvbGxhcHNlJ10pIHRvXG4gICAgICAvLyBiZSB0aGUgc2FtZSBhcyB0aGUgZWxlbWVudCB3aXRoIHRoZSAkdGhlbWUtbmFtZSBjbGFzcy5cbiAgICAgICYuI3skdGhlbWUtbmFtZX0ge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAkY2xvc2VkLWljb247XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbi8vICB9XG59XG4iLCIvL1xuLy8gQ29sdW1uIHdpZHRoIGNhbGN1bGF0b3Jcbi8vXG4vLyBEZXRlcm1pbmVzIHRoZSB3aWR0aCBvZiBhbiBpbmRpdmlkdWFsIGNvbHVtbiBpbiBhIG11bHRpLWNvbHVtblxuLy8gcm93LiBBIGd1dHRlciBzaXplICglKSBjYW4gYmUgcGFzc2VkLlxuLy8gR3V0dGVycyBhcmUgc3BsaXQgZWl0aGVyIHNpZGUgb2YgZWFjaCBjb2x1bW4gYW5kIGF1dG9tYXRpY2FsbHlcbi8vIHJlbW92ZWQgKHZpYSBDU1MzKSBmcm9tIHRoZSBsZWZ0IG9mIGZpcnN0IGNvbHVtbiBhbmQgcmlnaHRcbi8vIG9mIGxhc3QgY29sdW1uIGluIHJvdy5cbi8vXG4vLyArLS0tLS0tLS0tKyB8ICstLS0tLS0tLS0rIHwgKy0tLS0tLS0tLStcbi8vIHwgICAgICAgICB8IHwgfCAgICAgICAgIHwgfCB8ICAgICAgICAgfFxuLy8gfCBjb2x1bW4gIHxnfGd8IGNvbHVtbiAgfGd8Z3wgY29sdW1uICB8XG4vLyB8ICAgICAgICAgfCB8IHwgICAgICAgICB8IHwgfCAgICAgICAgIHxcbi8vICstLS0tLS0tLS0rIHwgKy0tLS0tLS0tLSsgfCArLS0tLS0tLS0tK1xuLy9cbi8vICR1c2luZ091dGVyR3V0dGVyczogU2V0IHRvIHRydWUgdG8gY2FsY3VsYXRlIHdpZHRoIHdoZW4gc3BsaXRcbi8vICAgICAgICAgICAgICAgICAgICAgZ3V0dGVycyBjYW5ub3QgYmUgYWx0ZXJlZCB3aXRoIENTUzMgc2VsZWN0b3JzLFxuLy8gICAgICAgICAgICAgICAgICAgICBpLmUuIElFOC4gUmVzdWx0cyBpbiBvdXRlciBzcGxpdCBndXR0ZXJzIGFuZFxuLy8gICAgICAgICAgICAgICAgICAgICBhIHNsaWdodGx5IG5hcnJvd2VyIGNvbHVtbiB3aWR0aCB2YWx1ZS5cbi8vXG4vLyB8ICstLS0tLS0tLSsgfCArLS0tLS0tLS0rIHwgKy0tLS0tLS0tKyB8XG4vLyB8IHwgICAgICAgIHwgfCB8ICAgICAgICB8IHwgfCAgICAgICAgfCB8XG4vLyB8Z3wgY29sdW1uIHxnfGd8IGNvbHVtbiB8Z3xnfCBjb2x1bW4gfGd8XG4vLyB8IHwgICAgICAgIHwgfCB8ICAgICAgICB8IHwgfCAgICAgICAgfCB8XG4vLyB8ICstLS0tLS0tLSsgfCArLS0tLS0tLS0rIHwgKy0tLS0tLS0tKyB8XG4vL1xuQGZ1bmN0aW9uIGJsb2NrLWdyaWQtY29sdW1uLXdpZHRoKCRudW1Db2xzLCAkZ3V0dGVyU2l6ZVBlcmNlbnRhZ2UsICR1c2luZ091dGVyR3V0dGVyczogZmFsc2UpIHtcbiAgQGlmICgkdXNpbmdPdXRlckd1dHRlcnMpIHtcbiAgICBAcmV0dXJuICgxMDAlIC8gJG51bUNvbHMpIC0gJGd1dHRlclNpemVQZXJjZW50YWdlO1xuICB9IEBlbHNlIHtcbiAgICAkdG90YWxHdXR0ZXJXaWR0aDogKCRudW1Db2xzIC0gMSkgKiAkZ3V0dGVyU2l6ZVBlcmNlbnRhZ2U7XG4gICAgQHJldHVybiAoMTAwJSAtICR0b3RhbEd1dHRlcldpZHRoKSAvICRudW1Db2xzO1xuICB9XG59XG5cbkBtaXhpbiBibG9jay1ncmlkKCRncmlkU2l6ZSwgJGd1dHRlclNpemVQZXJjZW50YWdlKSB7XG5cbiAgPiBsaSB7XG4gICAgLy8vIEZhbGxiYWNrIGZvciBsZWdhY3kgYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IG50aC1vZi10eXBlXG4gICAgd2lkdGg6IGJsb2NrLWdyaWQtY29sdW1uLXdpZHRoKCRncmlkU2l6ZSwgJGd1dHRlclNpemVQZXJjZW50YWdlLCAkdXNpbmdPdXRlckd1dHRlcnM6IHRydWUpO1xuXG4gICAgLy8gQWRqdXN0IHdpZHRoIGZvciBicm93c2VycyB0aGF0IGNhbiBmdWxseSBzdXBwb3J0IG91ciBzcGxpdCBndXR0ZXJcbiAgICAmOm50aC1vZi10eXBlKG4pIHtcbiAgICAgIHdpZHRoOiBibG9jay1ncmlkLWNvbHVtbi13aWR0aCgkZ3JpZFNpemUsICRndXR0ZXJTaXplUGVyY2VudGFnZSk7XG4gICAgfVxuXG4gICAgLy8gU3BsaXQgZ3V0dGVyXG4gICAgbWFyZ2luLWxlZnQ6ICRndXR0ZXJTaXplUGVyY2VudGFnZSAvIDI7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZ3V0dGVyU2l6ZVBlcmNlbnRhZ2UvIDI7XG5cbiAgICAvLyBSZW1vdmUgcmlnaHQgZ3V0dGVyIGZyb20gbGFzdCBjb2x1bW5cbiAgICAmOm50aC1vZi10eXBlKCN7JGdyaWRTaXplfW4rI3skZ3JpZFNpemV9KSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLy8gRm9yY2UgZ3JpZCB0byBjbGVhciBhdCBkZXNpZ25hdGlvbiBjb2x1bW4gc2l6ZVxuICAgICY6bnRoLW9mLXR5cGUoI3skZ3JpZFNpemV9bisxKSB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyAvLyBSZW1vdmUgbGVmdCBndXR0ZXIgZnJvbSBmaXJzdCBpdGVtIGluIGNvbHVtblxuICAgIH1cblxuICAgIC8vIFJlbW92ZSBib3JkZXIgZnJvbSBsYXN0IHJvdyBvZiBpdGVtcyBpbiBncmlkXG4gICAgJjpudGgtbGFzdC1vZi10eXBlKC1uKyN7JGdyaWRTaXplfSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn0iLCIvLyBCdXR0b25zXG4vL1xuXG4vLyoqIEJ1dHRvbiBpY29uIGNvbG91ciAmIGljb24gYmctY29sb3VyXG5AbWl4aW4gYnV0dG9uLWljb24tdmFyaWFudCAoJGljb24tY29sb3IsICRpY29uLWJnLWNvbG9yKSB7XG4gIGNvbG9yOiAkaWNvbi1jb2xvcjtcbiAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkaWNvbi1iZy1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRpY29uLWJnLWNvbG9yLCA1JSk7XG59XG5cbi8vKiogQnV0dG9uIGljb24gcGFkZGluZyAmIHJhZGl1c1xuQG1peGluIGJ1dHRvbi1pY29uLXBhZGRpbmcgKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMsICRib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci10b3AtcmlnaHQtcmFkaXVzO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzO1xufVxuXG4vLyoqIEJ1dHRvbiBjb2xvdXIsIGJnLWNvbG91ciAmIDpob3ZlciBiZy1jb2xvdXJcbkBtaXhpbiBidXR0b24tdmFyaWFudCgkY29sb3IsICRiZy1jb2xvciwgJGJnLWhvdmVyLWNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZy1jb2xvcjtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1ob3Zlci1jb2xvcjtcbiAgfVxufVxuXG4vL0BtaXhpbiBidXR0b24taWNvbi12YXJpYW50ICgkaWNvbi1jb2xvciwgJGljb24tYmFja2dyb3VuZCwgJGljb24tZGFya2VuOiBzZXQtaWNvbi1kYXJrbmVzcygkaWNvbi1iYWNrZ3JvdW5kKSkge1xuLy8gIGNvbG9yOiAkaWNvbi1jb2xvcjtcbi8vICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGljb24tYmFja2dyb3VuZCwgJGljb24tZGFya2VuKTtcbi8vfVxuXG4vL0BmdW5jdGlvbiBzZXQtaWNvbi1kYXJrbmVzcygkY29sb3IpIHtcbi8vICBAaWYgKChsaWdodG5lc3MoJGNvbG9yKSA+IDQ4KSBhbmQgKGxpZ2h0bmVzcygkY29sb3IpIDwgNTApKSB7XG4vLyAgICBAcmV0dXJuIDIlOyAvLyBiYWxhbmNlIG91dCBtaWQgbGV2ZWwgYnV0dG9uIGFuZCBpY29uIHRvbmVzXG4vLyAgfSBAZWxzZSBpZiAoKGxpZ2h0bmVzcygkY29sb3IpID4gMzQpIGFuZCAobGlnaHRuZXNzKCRjb2xvcikgPCA0MCkpIHtcbi8vICAgIEByZXR1cm4gNSU7IC8vIHNvZnRlbiB0aGUgZGFya2VyIGJ1dHRvbiBpY29uIGJhY2tncm91bmRcbi8vICB9IEBlbHNlIHtcbi8vICAgIEByZXR1cm4gMTAlOyAvLyBEYXJrZW4gYWxsIG90aGVyIGJ1dHRvbiBpY29uc1xuLy8gIH1cbi8vfVxuXG4iLCIvLyBEb251dCBDaGFydCBtaXhpblxuQG1peGluIGRvbnV0LWNoYXJ0KCRuYW1lLCAkcGVyYyxcbiAgJHNpemU6ICRkb251dF9zaXplLFxuICAkd2lkdGg6ICRkb251dF93aWR0aCxcbiAgJGJhc2U6ICRkb251dF9iYXNlX2NvbG91cixcbiAgJGNlbnRlcjogJGRvbnV0X2NlbnRyZV9jb2xvdXIsXG4gICRjb2xvcjogJGRvbnV0X3BlcmNlbnRfY29sb3VyLFxuICAkdGV4dENvbG9yOiAkZG9udXRfdGV4dF9jb2xvdXIsXG4gICR0ZXh0U2l6ZTogJGRvbnV0X3RleHRfc2l6ZSkge1xuXG4gICRjb2xvcjI6ICRjb2xvcjtcbiAgJGJhc2UyOiAkYmFzZTtcbiAgJGRlZzogKCRwZXJjLzEwMCozNjApK2RlZztcbiAgJGRlZzE6IDkwZGVnO1xuICAkZGVnMjogJGRlZztcblxuICAvLyBJZiBwZXJjZW50YWdlIGlzIGxlc3MgdGhhbiA1MCVcbiAgQGlmICRwZXJjIDwgNTAge1xuICAgICRiYXNlOiAkY29sb3I7XG4gICAgJGNvbG9yOiAkYmFzZTI7XG4gICAgJGNvbG9yMjogJGJhc2UyO1xuICAgICRkZWcxOiAoJHBlcmMvMTAwKjM2MCs5MCkrZGVnO1xuICAgICRkZWcyOiAwZGVnO1xuICB9XG5cbiAgLmRvbnV0LWNoYXJ0IHtcbiAgICAmI3skbmFtZX0ge1xuICAgICAgd2lkdGg6ICRzaXplO1xuICAgICAgaGVpZ2h0OiAkc2l6ZTtcbiAgICAgIGJhY2tncm91bmQ6ICRiYXNlO1xuXG4gICAgICAuc2xpY2Uge1xuICAgICAgICAmLm9uZSB7XG4gICAgICAgICAgY2xpcDogcmVjdCgwICRzaXplICRzaXplLzIgMCk7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgkZGVnMSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZzEpO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYudHdvIHtcbiAgICAgICAgICBjbGlwOiByZWN0KDAgJHNpemUvMiAkc2l6ZSAwKTtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKCRkZWcyKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVnMik7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yMjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY2hhcnQtY2VudGVyIHtcbiAgICAgICAgdG9wOiAkd2lkdGg7XG4gICAgICAgIGxlZnQ6ICR3aWR0aDtcbiAgICAgICAgd2lkdGg6ICRzaXplIC0gKCR3aWR0aCAqIDIpO1xuICAgICAgICBoZWlnaHQ6ICRzaXplIC0gKCR3aWR0aCAqIDIpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY2VudGVyO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIC8vZm9udC1zaXplOiAkdGV4dFNpemU7XG4gICAgICAgICAgZm9udC1zaXplOiA0OHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgLy9saW5lLWhlaWdodDogJHNpemUgLSAoJHdpZHRoICogMik7XG4gICAgICAgICAgLy9saW5lLWhlaWdodDogJHNpemUgLSAoJHRleHRTaXplICogMC43NSk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEyNXB4O1xuICAgICAgICAgIGNvbG9yOiAkdGV4dENvbG9yO1xuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyN7JHBlcmN9JztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRTaXplICogMC41O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1yZWd1bGFyO1xuICAgICAgICAgICAgY29udGVudDogJyUnO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSAvLyBtaXhpbiIsIi8vIEZvcm0gdmFsaWRhdGlvbiBzdGF0ZXNcbi8vXG4vLyBVc2VkIGluIGZvcm1zLmxlc3MgdG8gZ2VuZXJhdGUgdGhlIGZvcm0gdmFsaWRhdGlvbiBDU1MgZm9yIHdhcm5pbmdzLCBlcnJvcnMsXG4vLyBhbmQgc3VjY2Vzc2VzLlxuXG5AbWl4aW4gZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHRleHQtY29sb3I6ICM1NTUsICRib3JkZXItY29sb3I6ICNjY2MsICRiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1KSB7XG4gIC8vIENvbG9yIHRoZSBsYWJlbCBhbmQgaGVscCB0ZXh0XG4gIC5oZWxwLWJsb2NrLFxuICAuY29udHJvbC1sYWJlbCxcbiAgLmVycm9yLW1lc3NhZ2UsXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94LFxuICAucmFkaW8taW5saW5lLFxuICAuY2hlY2tib3gtaW5saW5lLFxuICAmLnJhZGlvIGxhYmVsLFxuICAmLmNoZWNrYm94IGxhYmVsLFxuICAmLnJhZGlvLWlubGluZSBsYWJlbCxcbiAgJi5jaGVja2JveC1pbmxpbmUgbGFiZWwgIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cbiAgLy8gU2V0IHRoZSBib3JkZXIgYW5kIGJveCBzaGFkb3cgb24gc3BlY2lmaWMgaW5wdXRzIHRvIG1hdGNoXG4gICYuc2VsZWN0LXN0eWxlLFxuICAmLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxuICAvLyBTZXQgdmFsaWRhdGlvbiBzdGF0ZXMgYWxzbyBmb3IgYWRkb25zXG4gIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgfVxuICAvLyBPcHRpb25hbCBmZWVkYmFjayBpY29uXG4gIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtYm9yZGVyLWZvY3VzYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygkY29sb3I6ICRpbnB1dC1ib3JkZXItZm9jdXMpIHtcbiAgJGNvbG9yLXJnYmE6IHJnYmEocmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKSwgLjYpO1xuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIC8vICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksIDAgMCA4cHggJGNvbG9yLXJnYmEpO1xuICB9XG59XG5cbi8vIFBsYWNlaG9sZGVyIHRleHRcbkBtaXhpbiBwbGFjZWhvbGRlcigkY29sb3I6ICRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcikge1xuICAvLyBGaXJlZm94XG4gICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgb3BhY2l0eTogMTsgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjZcbiAgfVxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxufSIsIi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBSZXRpbmEgYmFja2dyb3VuZCBpbWFnZXMgd2l0aCBmYWxsLWJhY2tcbkBtaXhpbiBpbWFnZS0xNXgoJGltYWdlLCAkd2lkdGgsICRoZWlnaHQpIHtcbiAgQG1lZGlhIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMyksXG4gICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLjYvMiksXG4gICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMyksXG4gIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjMpLFxuICAobWluLXJlc29sdXRpb246IDEuM2RwcHgpIHtcbiAgICAvKiBvbiByZXRpbmEsIHVzZSBpbWFnZSB0aGF0J3Mgc2NhbGVkIGJ5IDEuNSAqL1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaW1hZ2UpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoICRoZWlnaHQ7XG4gIH1cbn0iLCIvLyBNYXNvbnJ5IGdyaWRzXG4vL1xuXG4vLyBDYWxjdWxhdGUgY29sdW1uIHdpZHRoIGJhc2VkIG9uIGRlc2lyZWQgY29sdW1ucyBhbmQgYSBzcGVjaWZpZWQgZ3V0dGVyXG4vLyBVc2VzIGJsb2NrLWdyaWQgYmFzZWQgZnVuY3Rpb25cbkBmdW5jdGlvbiBtYXNvbnJ5LWNvbHVtbi13aWR0aCgkbnVtQ29scywgJGd1dHRlclNpemUsICR1c2luZ091dGVyR3V0dGVyczogZmFsc2UpIHtcbiAgQHJldHVybiBibG9jay1ncmlkLWNvbHVtbi13aWR0aCgkbnVtQ29scywgJGd1dHRlclNpemUsICR1c2luZ091dGVyR3V0dGVycyk7XG59XG5cbi8vIENhbGN1bGF0ZXMgdGhlIGhlaWdodCBmb3IgYSB0YWxsZXIgaXRlbVxuQGZ1bmN0aW9uIG1hc29ucnktdGFsbC1oZWlnaHQoJGluZGV4KSB7XG4gIEByZXR1cm4gbnRoKCRtYXNvbnJ5LXRhbGwtc2NhbGUsICRpbmRleCk7XG59XG5cbi8vIENhbGN1bGF0ZSB0aGUgaGVpZ2h0IGZvciBzaG9ydGVyIGl0ZW1zXG5AZnVuY3Rpb24gbWFzb25yeS1zaG9ydC1oZWlnaHQoJGluZGV4KSB7XG4gIEByZXR1cm4gbnRoKCRtYXNvbnJ5LXNob3J0LXNjYWxlLCAkaW5kZXgpO1xufVxuXG4vLyBDYWxjdWxhdGUgdGhlIHRhbGwgYW5kIHNob3J0IGRpZmZlcmVudGlhbCBhdCBhIGdpdmVuXG4vLyBzaXplIHBhaXJcbkBmdW5jdGlvbiBtYXNvbnJ5LWhlaWdodC1kaWZmKCRpbmRleCkge1xuICBAcmV0dXJuIG1hc29ucnktdGFsbC1oZWlnaHQoJGluZGV4KSAtIG1hc29ucnktc2hvcnQtaGVpZ2h0KCRpbmRleCk7XG59XG5cblxuLy8gU2V0cyBzaG9ydCBhbmQgdGFsbCBoZWlnaHRzIGZvciBpdGVtcyBhcHBlYXJpbmcgaW4gYSBtYXNvbnJ5XG4vLyBncmlkIHRoYXQgaXMgY3VycmVudGx5IDMgY29sdW1ucyB3aWRlXG4vLyBBbHNvIHByb3ZpZGVzIGEgbWVhbnMgZm9yIHNldHRpbmcgdGhlIGltYWdlIHNjYWxpbmcgcHJlZmVyZW5jZVxuQG1peGluIG1hc29ucnktZ3JpZDMtaXRlbSgkc2NhbGVJbmRleCwgJGltYWdlU2l6ZUhlaWdodEJpYXM6IGZhbHNlICkge1xuXG4gICRzaG9ydC1oZWlnaHQ6IG1hc29ucnktc2hvcnQtaGVpZ2h0KCRzY2FsZUluZGV4KTtcbiAgJHRhbGwtaGVpZ2h0OiBtYXNvbnJ5LXRhbGwtaGVpZ2h0KCRzY2FsZUluZGV4KTtcblxuICAvLyBTaG9ydCBpdGVtXG4gICY6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgaGVpZ2h0OiAkc2hvcnQtaGVpZ2h0O1xuICB9XG5cbiAgLy8gVGFsbCBpdGVtXG4gICY6bnRoLW9mLXR5cGUoZXZlbikge1xuICAgIHRvcDogJHNob3J0LWhlaWdodCAtICR0YWxsLWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0YWxsLWhlaWdodDtcblxuICAgIEBpZiAoJGltYWdlU2l6ZUhlaWdodEJpYXMpIHtcbiAgICAgIC8vIFN3aXRjaCBpbWFnZSByZXNpemluZyB0byBwcmlvcml0aXNlIGhlaWdodCBhbmQgbm90IHdpZHRoXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEFsd2F5cyBlbnN1cmUgMm5kIGl0ZW0gaXMgcm9vdGVkIHRvIHRoZSB0b3BcbiAgJjpudGgtb2YtdHlwZSgyKSB7XG4gICAgdG9wOiAwO1xuICB9XG59XG5cblxuLy8gU2V0cyBzaG9ydCBhbmQgdGFsbCBoZWlnaHRzIGZvciBpdGVtcyBhcHBlYXJpbmcgaW4gYSBtYXNvbnJ5XG4vLyBncmlkIHRoYXQgaXMgY3VycmVudGx5IDMgY29sdW1ucyB3aWRlXG4vLyBBbHNvIHByb3ZpZGVzIGEgbWVhbnMgZm9yIHNldHRpbmcgdGhlIGltYWdlIHNjYWxpbmcgcHJlZmVyZW5jZVxuQG1peGluIG1hc29ucnktZ3JpZDQtaXRlbSgkc2NhbGVJbmRleCwgJGltYWdlU2l6ZUhlaWdodEJpYXM6IGZhbHNlICkge1xuXG4gICRzaG9ydC1oZWlnaHQ6IG1hc29ucnktc2hvcnQtaGVpZ2h0KCRzY2FsZUluZGV4KTtcbiAgJHRhbGwtaGVpZ2h0OiBtYXNvbnJ5LXRhbGwtaGVpZ2h0KCRzY2FsZUluZGV4KTtcblxuICAvLyBTaG9ydCBpdGVtXG4gIC8vJjpudGgtb2YtdHlwZShvZGQpXG4gICY6bnRoLW9mLXR5cGUoMiksXG4gICY6bnRoLW9mLXR5cGUoNCksXG4gICY6bnRoLW9mLXR5cGUoNSksXG4gICY6bnRoLW9mLXR5cGUoNikge1xuICAgIGhlaWdodDogJHNob3J0LWhlaWdodDtcbiAgfVxuXG4gIC8vIFRhbGwgaXRlbVxuICAvLyY6bnRoLW9mLXR5cGUoZXZlbilcbiAgJjpudGgtb2YtdHlwZSgxKSxcbiAgJjpudGgtb2YtdHlwZSgzKSB7XG4gICAgLy90b3A6ICRzaG9ydC1oZWlnaHQgLSAkdGFsbC1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdGFsbC1oZWlnaHQ7XG5cbiAgICBAaWYgKCRpbWFnZVNpemVIZWlnaHRCaWFzKSB7XG4gICAgICAvLyBTd2l0Y2ggaW1hZ2UgcmVzaXppbmcgdG8gcHJpb3JpdGlzZSBoZWlnaHQgYW5kIG5vdCB3aWR0aFxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBBbHdheXMgZW5zdXJlIDJuZCBpdGVtIGlzIHJvb3RlZCB0byB0aGUgdG9wXG4gIC8vJjpudGgtb2YtdHlwZSgyKSB7XG4gIC8vICB0b3A6IDA7XG4gIC8vfVxufVxuXG4vLyBTZXRzIHNob3J0IGFuZCB0YWxsIGhlaWdodHMgZm9yIGl0ZW1zIGFwcGVhcmluZyBpbiBhIG1hc29ucnlcbi8vIGdyaWQgdGhhdCBpcyBjdXJyZW50bHkgMiBjb2x1bW5zIHdpZGVcbi8vIEFsc28gcHJvdmlkZXMgYSBtZWFucyBmb3Igc2V0dGluZyB0aGUgaW1hZ2Ugc2NhbGluZyBwcmVmZXJlbmNlXG4vL0BtaXhpbiBtYXNvbnJ5LWdyaWQyLWl0ZW0oJHNjYWxlSW5kZXgsICRpbWFnZVNpemVIZWlnaHRCaWFzOiBmYWxzZSApIHtcbi8vXG4vLyAgJHNob3J0LWhlaWdodDogbWFzb25yeS1zaG9ydC1oZWlnaHQoJHNjYWxlSW5kZXgpO1xuLy8gICR0YWxsLWhlaWdodDogbWFzb25yeS10YWxsLWhlaWdodCgkc2NhbGVJbmRleCk7XG4vL1xuLy8gIC8vIFNob3J0IGl0ZW1cbi8vICAmOm50aC1vZi10eXBlKDRuKzQpLFxuLy8gICY6bnRoLW9mLXR5cGUoNG4rMSkge1xuLy8gICAgaGVpZ2h0OiAkc2hvcnQtaGVpZ2h0O1xuLy8gIH1cbi8vICAmOm50aC1vZi10eXBlKDRuKzEpIHtcbi8vICAgIHRvcDogJHNob3J0LWhlaWdodCAtICR0YWxsLWhlaWdodDtcbi8vICB9XG4vL1xuLy8gIC8vIFRhbGwgaXRlbVxuLy8gICY6bnRoLW9mLXR5cGUoNG4rMiksXG4vLyAgJjpudGgtb2YtdHlwZSg0biszKSB7XG4vLyAgICB0b3A6ICRzaG9ydC1oZWlnaHQgLSAkdGFsbC1oZWlnaHQ7XG4vLyAgICBoZWlnaHQ6ICR0YWxsLWhlaWdodDtcbi8vXG4vLyAgICBAaWYgKCRpbWFnZVNpemVIZWlnaHRCaWFzKSB7XG4vLyAgICAgIC8vIFN3aXRjaCBpbWFnZSByZXNpemluZyB0byBwcmlvcml0aXNlIGhlaWdodCBhbmQgbm90IHdpZHRoXG4vLyAgICAgIGltZyB7XG4vLyAgICAgICAgd2lkdGg6IGF1dG87XG4vLyAgICAgICAgaGVpZ2h0OiAxMDAlO1xuLy8gICAgICB9XG4vLyAgICB9XG4vLyAgfVxuLy9cbi8vICAvLyBBbHdheXMgZW5zdXJlIDFzdCBhbmQgMm5kIGl0ZW1zIGFyZSByb290ZWQgdG8gdGhlIHRvcFxuLy8gICY6bnRoLW9mLXR5cGUoMSksXG4vLyAgJjpudGgtb2YtdHlwZSgyKSB7XG4vLyAgICB0b3A6IDA7XG4vLyAgfVxuLy99IiwiLy8gTWVkaWEgTGlzdGluZyBsYXlvdXRzXG5cbi8vIExhbmRzY2FwZSBsYXlvdXRcbkBtaXhpbiBsYXlvdXQtbGFuZHNjYXBlIHtcblxuICAuY29sLW1lZGlhIHtcbiAgICBAaW5jbHVkZSBncmlkLXNwYW4oNiwgMSwgJGd1dHRlcjogMjBweCk7XG4gICAgLy9saW5lLWhlaWdodDogMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLXNwYW4oMywgMSk7XG4gICAgfVxuICB9XG5cbiAgLmNvbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBncmlkLXNwYW4oNiwgNywgJGd1dHRlcjogMjBweCk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXAsICRuby1xdWVyeTogdHJ1ZSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1zcGFuKDksIDQpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQb3J0cmFpdCBsYXlvdXRcbkBtaXhpbiBsYXlvdXQtc3RhY2tlZCB7XG5cbiAgLmNvbC1tZWRpYSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1zcGFuKDEyLCAxLCAkZ3V0dGVyOiAyMHB4KTtcbiAgICAvL2xpbmUtaGVpZ2h0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAuY29sLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGdyaWQtc3BhbigxMiwgMSwgJGd1dHRlcjogMjBweCk7XG4gIH1cbn0iLCIvLyBEZWZhdWx0IHZhcmlhYmxlc1xuJHN1cHBvcnQtbm9uLXJlbTogdHJ1ZSAhZGVmYXVsdDtcblxuJWNsZWFyZml4IHtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLyBTVFJJUCBVTklUXG4vLyBJdCBzdHJpcHMgdGhlIHVuaXQgb2YgbWVhc3VyZSBhbmQgcmV0dXJucyBpdFxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuICRudW0gLyAoJG51bSAqIDAgKyAxKTtcbn1cblxuLy8gQ09OVkVSVCBUTyBSRU1cbkBmdW5jdGlvbiBjb252ZXJ0LXRvLXJlbSgkdmFsdWUsICRiYXNlLXZhbHVlOiAkcmVtLWJhc2UpIHtcbiAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlLXZhbHVlKSAqIDFyZW07XG4gIEBpZiAoJHZhbHVlID09IDByZW0pIHsgJHZhbHVlOiAwOyB9IC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQHJldHVybiAkdmFsdWU7XG59XG5cbkBmdW5jdGlvbiBkYXRhKCRhdHRyKSB7XG4gIEBpZiAkbmFtZXNwYWNlIHtcbiAgICBAcmV0dXJuICdbZGF0YS0nICsgJG5hbWVzcGFjZSArICctJyArICRhdHRyICsgJ10nO1xuICB9XG5cbiAgQHJldHVybiAnW2RhdGEtJyArICRhdHRyICsgJ10nO1xufVxuXG4vLyBSRU0gQ0FMQ1xuXG4vLyBOZXcgU3ludGF4LCBhbGxvd3MgdG8gb3B0aW9uYWxseSBjYWxjdWxhdGUgb24gYSBkaWZmZXJlbnQgYmFzZSB2YWx1ZSB0byBjb3VudGVyIGNvbXBvdW5kaW5nIGVmZmVjdCBvZiByZW0ncy5cbi8vIENhbGwgd2l0aCAxLCAyLCAzIG9yIDQgcGFyYW1ldGVycywgJ3B4JyBpcyBub3QgcmVxdWlyZWQgYnV0IHN1cHBvcnRlZDpcbi8vXG4vLyAgIHJlbS1jYWxjKDEwIDIwIDMwcHggNDApO1xuLy9cbi8vIFNwYWNlIGRlbGltaXRlZCwgaWYgeW91IHdhbnQgdG8gZGVsaW1pdCB1c2luZyBjb21tYSdzLCB3cmFwIGl0IGluIGFub3RoZXIgcGFpciBvZiBicmFja2V0c1xuLy9cbi8vICAgcmVtLWNhbGMoKDEwLCAyMCwgMzAsIDQwcHgpKTtcbi8vXG4vLyBPcHRpb25hbGx5IGNhbGwgd2l0aCBhIGRpZmZlcmVudCBiYXNlIChlZzogOHB4KSB0byBjYWxjdWxhdGUgcmVtLlxuLy9cbi8vICAgcmVtLWNhbGMoMTZweCAzMnB4IDQ4cHgsIDhweCk7XG4vL1xuLy8gSWYgeW91IHJlcXVpcmUgdG8gY29tbWEgc2VwYXJhdGUgeW91ciBsaXN0XG4vL1xuLy8gICByZW0tY2FsYygoMTZweCwgMzJweCwgNDgpLCA4cHgpO1xuXG5AZnVuY3Rpb24gcmVtLWNhbGMoJHZhbHVlcywgJGJhc2UtdmFsdWU6ICRyZW0tYmFzZSkge1xuICAkbWF4OiBsZW5ndGgoJHZhbHVlcyk7XG5cbiAgQGlmICRtYXggPT0gMSB7IEByZXR1cm4gY29udmVydC10by1yZW0obnRoKCR2YWx1ZXMsIDEpLCAkYmFzZS12YWx1ZSk7IH1cblxuICAkcmVtVmFsdWVzOiAoKTtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbWF4IHtcbiAgICAkcmVtVmFsdWVzOiBhcHBlbmQoJHJlbVZhbHVlcywgY29udmVydC10by1yZW0obnRoKCR2YWx1ZXMsICRpKSwgJGJhc2UtdmFsdWUpKTtcbiAgfVxuICBAcmV0dXJuICRyZW1WYWx1ZXM7XG59XG5cbi8vIFRoZXNlIHdpbGwgdGhyb3cgYSBkZXByZWNhdGlvbiB3YXJuaW5nIGlmIHVzZWQgd2l0aGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gZm9udC1zaXplKCRzaXplKSB7XG4gIEBpZiAkc3VwcG9ydC1ub24tcmVtIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHNpemUpICsgcHg7XG4gICAgZm9udC1zaXplOiAkdmFsdWU7XG4gIH1cbiAgZm9udC1zaXplOiByZW0tY2FsYygkc2l6ZSk7XG59XG5cbi8vIE1vcmUgZWFzaWx5IGluY2x1ZGUgYWxsIHRoZSBzdGF0ZXMgZm9yIHJlc3BvbnNpdmUtdXRpbGl0aWVzLmxlc3MuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiByZXNwb25zaXZlLXZpc2liaWxpdHkoJHBhcmVudCkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIHRhYmxlI3skcGFyZW50fSAgeyBkaXNwbGF5OiB0YWJsZTsgfVxuICB0ciN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgjeyRwYXJlbnR9LFxuICB0ZCN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIFRyYW5zaXRpb24gLSBPZmYtY2FudmFzIG1lbnVcbkBtaXhpbiBtb3ZlLXRyYW5zaXRpb24oJHZhbE9uZSwgJHZhbFR3bywgJHZhbFRocmVlKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkdmFsT25lLCAkdmFsVHdvLCAkdmFsVGhyZWUpO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHZhbE9uZSwgJHZhbFR3bywgJHZhbFRocmVlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHZhbE9uZSwgJHZhbFR3bywgJHZhbFRocmVlKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkdmFsT25lLCAkdmFsVHdvLCAkdmFsVGhyZWUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR2YWxPbmUsICR2YWxUd28sICR2YWxUaHJlZSk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG59XG5cbi8vIENyb3NzIGJyb3dzZXIgb3BhY2l0eVxuQG1peGluIG9wYWNpdHkoJG9wYWNpdHkpIHtcbiAgb3BhY2l0eTogJG9wYWNpdHk7XG4gICRvcGFjaXR5LWllOiAkb3BhY2l0eSAqIDEwMDtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PSRvcGFjaXR5LWllKTsgLy9JRThcbn1cblxuLy8gU2VtaS10cmFuc3BhcmVudCBjb2xvcnNcbkBtaXhpbiBhbHBoYS1hdHRyaWJ1dGUoJGF0dHJpYnV0ZSwgJGNvbG9yLCAkYmFja2dyb3VuZCkge1xuICAkcGVyY2VudDogYWxwaGEoJGNvbG9yKSAqIDEwMCU7XG4gICRvcGFxdWU6IG9wYWNpZnkoJGNvbG9yLCAxKTtcbiAgJHNvbGlkLWNvbG9yOiBtaXgoJG9wYXF1ZSwgJGJhY2tncm91bmQsICRwZXJjZW50KTtcbiAgI3skYXR0cmlidXRlfTogJHNvbGlkLWNvbG9yO1xuICAjeyRhdHRyaWJ1dGV9OiAkY29sb3I7XG59XG5cbi8vIEJhY2tncm91bmQgY29sb3IgbGluZWFyIGdyYWRpZW50c1xuLy9AbWl4aW4gbGluZWFyLWdyYWRpZW50KCRmcm9tQ29sb3IsICR0b0NvbG9yKSB7XG4vLyAgYmFja2dyb3VuZC1jb2xvcjogJHRvQ29sb3I7IC8qIEZhbGxiYWNrIENvbG9yICovXG4vLyAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbSgkZnJvbUNvbG9yKSwgdG8oJHRvQ29sb3IpKTsgLyogU2FmNCssIENocm9tZSAqL1xuLy8gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgJGZyb21Db2xvciwgJHRvQ29sb3IpOyAvKiBDaHJvbWUgMTArLCBTYWY1LjErLCBpT1MgNSsgKi9cbi8vICBiYWNrZ3JvdW5kLWltYWdlOiAgICAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICRmcm9tQ29sb3IsICR0b0NvbG9yKTsgLyogRkYzLjYgKi9cbi8vICBiYWNrZ3JvdW5kLWltYWdlOiAgICAgLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICRmcm9tQ29sb3IsICR0b0NvbG9yKTsgLyogSUUxMCAqL1xuLy8gIGJhY2tncm91bmQtaW1hZ2U6ICAgICAgLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgJGZyb21Db2xvciwgJHRvQ29sb3IpOyAvKiBPcGVyYSAxMS4xMCsgKi9cbi8vICBiYWNrZ3JvdW5kLWltYWdlOiAgICAgICAgIGxpbmVhci1ncmFkaWVudCh0b3AsICRmcm9tQ29sb3IsICR0b0NvbG9yKTtcbi8vICAvL2ZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KEdyYWRpZW50VHlwZT0wLFN0YXJ0Q29sb3JTdHI9JyN7JGZyb21Db2xvcn0nLCBFbmRDb2xvclN0cj0nI3skdG9Db2xvcn0nKTtcbi8vfVxuXG4vLy8gTWl4aW4gcHJpbnRpbmcgYSBsaW5lYXItZ3JhZGllbnRcbi8vLyBhcyB3ZWxsIGFzIGEgcGxhaW4gY29sb3IgZmFsbGJhY2tcbi8vLyBhbmQgdGhlIGAtd2Via2l0LWAgcHJlZml4ZWQgZGVjbGFyYXRpb25cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7S2V5d29yZCB8IEFuZ2xlfSAkZGlyZWN0aW9uIC0gTGluZWFyIGdyYWRpZW50IGRpcmVjdGlvblxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJGNvbG9yLXN0b3BzIC0gTGlzdCBvZiBjb2xvci1zdG9wcyBjb21wb3NpbmcgdGhlIGdyYWRpZW50XG5AbWl4aW4gbGluZWFyLWdyYWRpZW50KCRkaXJlY3Rpb24sICRjb2xvci1zdG9wcy4uLikge1xuICBiYWNrZ3JvdW5kOiBudGgobnRoKCRjb2xvci1zdG9wcywgMSksIDEpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWdhY3ktZGlyZWN0aW9uKCRkaXJlY3Rpb24pLCAkY29sb3Itc3RvcHMpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoJGRpcmVjdGlvbiwgJGNvbG9yLXN0b3BzKTtcbn1cblxuIiwiLy8gUGFuZWxzXG5cbkBtaXhpbiBwYW5lbC12YXJpYW50KCRib3JkZXIsICRoZWFkaW5nLXRleHQtY29sb3IsICRoZWFkaW5nLWJnLWNvbG9yLCAkaGVhZGluZy1ib3JkZXIpIHtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICYgPiAucGFuZWwtaGVhZGluZyB7XG4gICAgY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkaGVhZGluZy1ib3JkZXI7XG5cbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICAgIC5iYWRnZSB7XG4gICAgICBjb2xvcjogJGhlYWRpbmctYmctY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuICAmID4gLnBhbmVsLWZvb3RlciB7XG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUHJpbWFyeSBuYXZpZ2F0aW9uIHZhcmlhbnQgKHRoZW1lKVxuXG5AbWl4aW4gcHJpbWFyeS1uYXYtdmFyaWFudCgkaXRlbS1jb2xvciwgJGl0ZW0tYmcsICRpdGVtLWhvdmVyLWNvbG9yLCAkaXRlbS1ob3Zlci1iZywgJGl0ZW0taG92ZXItZGVjb3JhdGlvbiwgJGl0ZW0tYWN0aXZlLWNvbG9yKSB7XG4gIC50b3AtbGV2ZWwge1xuICAgIC8vIFRvcCBsZXZlbCBtZW51IGl0ZW1zXG4gICAgPiBhIHtcbiAgICAgIGNvbG9yOiAkaXRlbS1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQ6ICRpdGVtLWJnO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkaXRlbS1ob3Zlci1kZWNvcmF0aW9uO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkaXRlbS1ob3Zlci1iZztcbiAgICAgICAgY29sb3I6ICRpdGVtLWhvdmVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgICYub3BlbiB7XG4gICAgICA+IGEge1xuICAgICAgICBjb2xvcjogJGl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIvLyBTaXRlIGhlYWRlciBoZXJvIGJnXG5cbkBtaXhpbiBoZXJvLWJnLWltZygkaGVyby1iZy1pbWctdXJsLCAkaGVyby1iZy1pbWctcG9zLCAkaGVyby1iZy1pbWctc2l6ZSkge1xuICBiYWNrZ3JvdW5kOiAkaGVyby1iZy1pbWctdXJsO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkaGVyby1iZy1pbWctcG9zO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRoZXJvLWJnLWltZy1zaXplO1xufVxuIiwiLy8gVHJhbnNpdGlvbnNcblxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgLW8tdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tcHJvcGVydHkoJHRyYW5zaXRpb24tcHJvcGVydHkuLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1kZWxheSgkdHJhbnNpdGlvbi1kZWxheSkge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0cmFuc2l0aW9uLWR1cmF0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10cmFuc2Zvcm0oJHRyYW5zaXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb247XG59XG5cblxuQG1peGluIHRyYW5zbGF0ZSgkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTsgLy8gSUU5IG9ubHlcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbn0iLCIvLy8vIFNpbmd1bGFyaXR5IDEuMisgU3ludGF4XG4vL0BpbmNsdWRlIGFkZC1ncmlkKDEyKTtcbi8vQGluY2x1ZGUgYWRkLWd1dHRlcigwLjUpO1xuLy9AaW5jbHVkZSBzZ3MtY2hhbmdlKCdvdXRwdXQnLCAnaXNvbGF0aW9uJyk7IC8vIERlZmF1bHQgaW4gU2luZ3VsYXJpdHlcbi8vXG4vL2h0bWwge1xuLy8gIEBpbmNsdWRlIGJhY2tncm91bmQtZ3JpZDtcbi8vfVxuLy9cbi8vKiB7XG4vLyAgQGluY2x1ZGUgYm94LXNpemluZygnYm9yZGVyLWJveCcpO1xuLy99XG4vL1xuLy8vKiBNYWtlIEhUTUw1IGVsZW1lbnRzIGRpc3BsYXkgYmxvY2stbGV2ZWwgZm9yIGNvbnNpc3RlbnQgc3R5bGluZyAqL1xuLy8uaGVhZGVyLFxuLy8ubWFpbixcbi8vLmZvb3RlciB7XG4vLyAgZGlzcGxheTogYmxvY2s7XG4vL31cbiIsIi8vIEltYWdlc1xuLy9cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLy8gU2ltcGxlIGJvcmRlcmVkIGltYWdlc1xuLmltZy1ib3JkZXJlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRpbWctYm9yZGVyLWNvbG9yO1xufVxuXG4vLyBTY2FmZm9sZCBpbWFnZVxuLy9cbi8vIFRoZSBzY2FmZm9sZCBpbWFnZSBpcyBhIHRyYW5zcGFyZW50IHBsYWNlaG9sZGVyIHdoaWNoIGNyZWF0ZXMgYSB3aWR0aCBhbmQgaGVpZ2h0XG4vLyBzbyByZXNwb25zaXZlIGJhY2tncm91bmQgaW1hZ2VzIG9mIGRpZmZlcmVudCByYXRpb3MgbWF5IGJlIHVzZWQuXG4uaW1nLXNjYWZmb2xkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbiIsIi8vIG92ZXJ3cml0aW5nIGJvb3RzdHJhcCBkZWZhdWx0cyBkdWUgdG8gbGFjayBvZiByZXNwb25zaXZlIHN1cHBvcnRcbi5tZWRpYS1yaWdodCxcbi5tZWRpYSA+IC5wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkeHNtYWxsLXVwKSB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICB9XG59XG4vLyBvdmVyd3JpdGluZyBib290c3RyYXAgZGVmYXVsdHMgZHVlIHRvIGxhY2sgb2YgcmVzcG9uc2l2ZSBzdXBwb3J0XG4ubWVkaWEtbGVmdCxcbi5tZWRpYSA+IC5wdWxsLWxlZnQge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwO1xuICBAaW5jbHVkZSBicmVha3BvaW50KCR4c21hbGwtdXApIHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIH1cbn1cbi8vIG92ZXJ3cml0aW5nIGJvb3RzdHJhcCBkZWZhdWx0cyBhcyBjb250ZW50IGZlZWxzIHNxdWFzaGVkIHdpdGhvdXQgc3BhY2luZyBvbiBoZWFkaW5ncyBpbiBjb250ZW50IGFyZWFzIGJ5IGRlZmF1bHRcbi5tZWRpYSBoMSxcbi5tZWRpYSBoMixcbi5tZWRpYSBoMyxcbi5tZWRpYSBoNCxcbi5tZWRpYSBoNSB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59IiwiLy8gVGFibGVzXG4vL1xuXG4vLyoqIFRhYmxlIHRoZW1lc1xuLy9cbi8vIFByaW1hcnkgdGhlbWVcbi8vIFNldHMgdGhlIGRlZmF1bHQgdGFibGUgY29udGVudCBmb250IHNpemVcbi50YWJsZS1wcmltYXJ5IHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLW1lZGl1bTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAvLyBUYWJsZSBoZWFkaW5nIHN0eWxlc1xuICB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWRpbmctYmc7XG4gICAgY29sb3I6ICR0YWJsZS1oZWFkaW5nO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cblxuICAvLyBEZWZpbmVzIHRhYmxlIGJvcmRlciBjb2xvdXJzXG4gID4gdGhlYWQsXG4gID4gdGJvZHksXG4gID4gdGZvb3Qge1xuICAgID4gdHIge1xuICAgICAgPiB0aCB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHdoaXRlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc2V0cyB0aGUgbGFzdCByb3cgYm90dG9tIGJvcmRlciBjb2xvdXIgdG8gZGVmYXVsdCBjb2xvdXJcbiAgICA+IHRyOmxhc3QtY2hpbGQge1xuICAgICAgPiB0aCB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vKiogRml4ZWQgd2lkdGggY2VsbHNcbi5maXhlZC13aWR0aC0zMCB7XG4gIHRoIHtcbiAgICB3aWR0aDogMzAlO1xuICB9XG59XG5cbi5maXhlZC13aWR0aC01MCB7XG4gIHRoIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG4iLCIvKiBUeXBvZ3JhcGh5IHN0eWxpbmcgKi9cbmh0bWwge1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbn1cblxuLyogRGVmYXVsdCBoZWFkZXIgc3R5bGVzICovXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgY29sb3I6ICRoZWFkZXItZm9udC1jb2xvcjtcbiAgZm9udC13ZWlnaHQ6JGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xufVxuXG4vL292ZXJ3cml0ZSBib290c3RyYXAgaGVhZGluZyBtYXJnaW5zIGZvciBsYXJnZXIgaGVhZGluZ3NcbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbn1cblxuYm9keXtcbiAgZm9udC1zaXplOiRmb250LXNpemUtYmFzZSokcGFyYWdyYXBoLWZvbnQtcmVkdWN0aW9uLXNtO1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXApIHtcbiAgICBmb250LXNpemU6JGZvbnQtc2l6ZS1iYXNlKiRwYXJhZ3JhcGgtZm9udC1yZWR1Y3Rpb24tbWQ7XG4gIH1cbn1cblxuLyogVHlwb2dyYXBoeSByZXNldHMgKi9cbi8vdWwudW5zdHlsZWQsXG4vL29sLnVuc3R5bGVkIHtcbi8vICBtYXJnaW46IDA7XG4vLyAgcGFkZGluZzogMDtcbi8vICBsaXN0LXN0eWxlOiBub25lO1xuLy99XG5cbnAge1xuICAvL21hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDEuMDUrcHg7XG59XG5cbi8qIERlZmF1bHQgTGluayBTdHlsZXMgKi9cbmEge1xuXG4gIC8qIERpc2FibGVkIHN0YXRlIHNldHMgdGV4dCB0byBncmF5IGFuZCBudWtlcyBob3Zlci90YWIgZWZmZWN0cyAqL1xuICAmW2Rpc2FibGVkXSB7XG4gICAgY29sb3I6ICRuYXYtZGlzYWJsZWQtbGluay1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3BhY2l0eTogMC43O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvcm1zIGVycm9yc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRGVmYXVsdCBmb3JtIGVycm9yIHN0eWxpbmdcbi5oYXMtZXJyb3Ige1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtZGFuZ2VyLXRleHQsICRzdGF0ZS1kYW5nZXItdGV4dCwgJHN0YXRlLWRhbmdlci1iZyk7XG5cbiAgLy8gRXJyb3IgbWVzc2FnaW5nIHRleHRcbiAgLy8uZXJyb3ItbWVzc2FnZSB7XG4gIC8vICBAaW5jbHVkZSBmb250LXNpemUoMTIpO1xuICAvL31cbn1cblxuLmVycm9yLW1lc3NhZ2Uge1xuICBAaW5jbHVkZSBmb250LXNpemUoMTIpO1xuICBjb2xvcjogJHN0YXRlLWRhbmdlci10ZXh0O1xuICBkaXNwbGF5OiBibG9jaztcbn0iLCIuZm9ybS1jb250cm9sIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuaW5wdXQuZm9ybS1jb250cm9sLCAuZm9ybS1zZWxlY3Qge1xuICAvL2JvcmRlcjogMXB4IHNvbGlkICNkYmRiZGI7XG4gIC8vbWluLXdpZHRoOiA5MCU7XG4gIC8vbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4vLyBTZWxlY3QgYm94IHdpdGggaXRzIGRvd24gYXJyb3cgcmVwbGFjZWQuXG4uc2VsZWN0LXN0eWxlIHtcblxuICAvLyBSZXNldCBzZWxlY3QgaW5wdXQgc3R5bGluZ1xuICBzZWxlY3Qge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1vLWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIH1cblxuICBzZWxlY3Q6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBzZWxlY3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAvLyBGb3JjZSBzZWxlY3Qgd3JhcHMgdG8gdXNlIG1heGltdW0gYXZhaWxhYmxlIHdpZHRoXG4gICYuZm9ybS1zZWxlY3QtbWF4LCAuZm9ybS1zZWxlY3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc2VsZWN0IHRleHQgYW5kIGljb24gY29sb3VyXG4gIHNlbGVjdFtkaXNhYmxlZF0sXG4gIHNlbGVjdFtkaXNhYmxlZF0gfiBzcGFuIHtcbiAgICBjb2xvcjogJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyO1xuICB9XG59XG5cbi8vIElucHV0IGljb25cbi5pbnB1dC1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gU21hbGwgaW5wdXQgaWNvblxuICAmLmlucHV0LWljb24tc20ge1xuICAgIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgfVxuXG4gIC8vIExhcmdlIGlucHV0IGljb25cbiAgJi5pbnB1dC1pY29uLWxnIHtcbiAgICB3aWR0aDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIHdpdGggaWNvblxuLmhhcy1pY29uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgLy8gRW5zdXJlIGljb25zIGRvbid0IG92ZXJsYXAgdGV4dFxuICAuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAoJGlucHV0LWhlaWdodC1iYXNlICogMSk7XG4gIH1cblxuICAmLnNlbGVjdC1zdHlsZSwgLmZvcm0tc2VsZWN0IHtcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgIC8vIEVuc3VyZSBzZWxlY3QgY2FuIGNvdmVyIGljb24gc28gY2xpY2tpbmcgaWNvblxuICAgICAgLy8gdHJpZ2dlcnMgb3BlbmluZyB0aGUgc2VsZWN0XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8vIE1ha2Ugc2VsZWN0cyB3aXRoIGljb25zIGZ1bGwgd2lkdGggdG8gY292ZXIgaWNvblxuICAgIHNlbGVjdCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW5wdXQgZ3JvdXAgYWRkb24gYWRqdXN0bWVudHMgZm9yIGxhcmdlIGlucHV0c1xuLy8gQWxsb3dzIGFuIGFkZG9uIGJ0biB3aXRoIGljb24gdG8gYmUgcG9zaXRpb25lZCB2ZXJ0aWNhbGx5IGNlbnRlcmVkXG4uaW5wdXQtZ3JvdXAtbGcge1xuXG4gIC5pbnB1dC1ncm91cC1idG4ge1xuXG4gICAgLmJ0biB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBTaGFtZSBsaXN0Li4uXG4ubHQtaWUxMCB7XG5cbiAgLy8gSGlkZSBpY29ucyBvbiBzZWxlY3RzIGFzIHRoZSBkb3duIGFycm93IG9uIHNlbGVjdHNcbiAgLy8gY2Fubm90IGJlIHJlbW92ZWQgaW4gQ1NTIChlYXNpbHkgaWYgYXQgYWxsKVxuICAuaGFzLWljb24ge1xuICAgICYuc2VsZWN0LXN0eWxlIHtcbiAgICAgIC5pbnB1dC1pY29uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZSAvIDI7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLy8gMiBjb2x1bW5zIGxlZnRcbi8vXG4ucm93LTEtMiB7XG4gIEBpbmNsdWRlIG1ha2Utcm93KCAzMHB4ICk7XG4gIC8qXG4gIDIgY29sdW1uIHJvdyB3aXRoIDEgdGhpcmQgLyAyIHRoaXJkcyBzcGxpdCBzcGFucy5cbiAgRm9yIHNtYWxsIHNjcmVlbnMgdGhlIGNvbHVtbnMgYmVjb21lIHZlcnRpY2FsbHkgc3RhY2tlZFxuICBpbiB0aGUgb3JkZXIgdGhleSBhcHBlYXIgaW4gdGhlIG1hcmt1cC5cbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICB8ICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8XG4gIHwgIGNvbC0xICB8ICAgICAgIGNvbC0yICAgICAgIHxcbiAgfCAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfFxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICovXG4gID4gLmNvbC0xIHtcbiAgICBAaW5jbHVkZSBtYWtlLXhzLWNvbHVtbiggMTIgKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXAsICRuby1xdWVyeTogdHJ1ZSkge1xuICAgICAgLy9AaW5jbHVkZSBncmlkLXNwYW4oNCwgMSk7XG4gICAgICBAaW5jbHVkZSBtYWtlLW1kLWNvbHVtbiggNCwzMHB4ICk7XG4gICAgfVxuICB9XG5cbiAgPiAuY29sLTIge1xuICAgIEBpbmNsdWRlIG1ha2UteHMtY29sdW1uKCAxMiApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAvL0BpbmNsdWRlIGdyaWQtc3Bhbig4LCA1KTtcbiAgICAgIEBpbmNsdWRlIG1ha2UtbWQtY29sdW1uKCA4LDMwcHggKTtcbiAgICB9XG4gIH1cblxuICBAZXh0ZW5kICVyb3ctc3RhY2stc3BhY2luZy1tZWRpdW0tdXA7XG59IiwiLy8gMiBjb2x1bW5zIHJpZ2h0XG4vL1xuLnJvdy0yLTEge1xuICAvKlxuICAyIGNvbHVtbiByb3cgd2l0aCAyIHRoaXJkcyAvIDEgdGhpcmQgc3BsaXQgc3BhbnMuXG4gIEZvciBzbWFsbCBzY3JlZW5zIHRoZSBjb2x1bW5zIGJlY29tZSB2ZXJ0aWNhbGx5IHN0YWNrZWRcbiAgaW4gdGhlIG9yZGVyIHRoZXkgYXBwZWFyIGluIHRoZSBtYXJrdXAuXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgfFxuICB8ICAgICAgIGNvbC0xICAgICAgIHwgIGNvbC0yICB8XG4gIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAqL1xuICA+IC5jb2wtMSB7XG4gICAgQGluY2x1ZGUgbWFrZS14cy1jb2x1bW4oIDEyICk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICAgIC8vQGluY2x1ZGUgZ3JpZC1zcGFuKDgsIDEpO1xuICAgICAgQGluY2x1ZGUgbWFrZS1tZC1jb2x1bW4oIDggKTtcbiAgICB9XG4gIH1cblxuICA+IC5jb2wtMiB7XG4gICAgQGluY2x1ZGUgbWFrZS14cy1jb2x1bW4oIDEyICk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICAgIC8vQGluY2x1ZGUgZ3JpZC1zcGFuKDQsIDkpO1xuICAgICAgQGluY2x1ZGUgbWFrZS1tZC1jb2x1bW4oIDQgKTtcbiAgICB9XG4gIH1cblxuICBAZXh0ZW5kICVyb3ctc3RhY2stc3BhY2luZy1tZWRpdW0tdXA7XG59IiwiLy8gUmUtdXNhYmxlIHN0YW5kYXJkIGdyaWQgc3BhbnNcbi8vIDIgY29sdW1uc1xuLy9cbi5yb3ctMS0xIHtcbiAgLypcbiAgMiBjb2x1bW4gcm93IHdpdGggZXF1YWxseSBzcGxpdCBjb2x1bW5zLlxuICBGb3IgeHNtYWxsIHNjcmVlbnMgdGhlIGNvbHVtbnMgYmVjb21lIHZlcnRpY2FsbHkgc3RhY2tlZFxuICBpbiB0aGUgb3JkZXIgdGhleSBhcHBlYXIgaW4gdGhlIG1hcmt1cC5cbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgfCAgICAgICAgICAgICB8ICAgICAgICAgICAgIHxcbiAgfCAgICBjb2wtMSAgICB8ICAgIGNvbC0yICAgIHxcbiAgfCAgICAgICAgICAgICB8ICAgICAgICAgICAgIHxcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgKi9cblxuICA+IC5jb2wtMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyOyAvLyAxNXB4XG4gICAgcGFkZGluZy1yaWdodDogJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMjsgLy8gMTVweFxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkeHNtYWxsLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICAgIEBpbmNsdWRlIG1ha2UteHMtY29sdW1uKCA2ICk7IC8vIEJvb3RzdHJhcCBtYWtlIGNvbHVtblxuICAgIH1cblxuICAgIC8vQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXAsICRuby1xdWVyeTogdHJ1ZSkge1xuICAgIC8vICBAaW5jbHVkZSBtYWtlLXNtLWNvbHVtbiggNiApOyAvLyBCb290c3RyYXAgbWFrZSBjb2x1bW5cbiAgICAvL31cbiAgfVxuXG4gID4gLmNvbC0yIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLWd1dHRlci13aWR0aCAvIDI7IC8vIDE1cHhcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyOyAvLyAxNXB4XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR4c21hbGwtdXAsICRuby1xdWVyeTogdHJ1ZSkge1xuICAgICAgQGluY2x1ZGUgbWFrZS14cy1jb2x1bW4oIDYgKTsgLy8gQm9vdHN0cmFwIG1ha2UgY29sdW1uXG4gICAgfVxuXG4gICAgLy9AaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgLy8gIEBpbmNsdWRlIG1ha2Utc20tY29sdW1uKCA2ICk7IC8vIEJvb3RzdHJhcCBtYWtlIGNvbHVtblxuICAgIC8vfVxuICB9XG5cbiAgQGV4dGVuZCAlcm93LXN0YWNrLXNwYWNpbmcteHNtYWxsLXVwO1xufVxuXG4vLyAyIGNvbHVtbnMgb24gc21hbGwtb25seSBzY3JlZW4gc2l6ZVxuLy9cbi5yb3ctMS0xLXNtYWxsLW9ubHkge1xuICAvKlxuICAyIGNvbHVtbiByb3cgd2l0aCBlcXVhbGx5IHNwbGl0IGNvbHVtbnMuXG4gIEZvciBzbWFsbCBzY3JlZW5zIHRoZSBjb2x1bW5zIGJlY29tZSB2ZXJ0aWNhbGx5IHN0YWNrZWRcbiAgaW4gdGhlIG9yZGVyIHRoZXkgYXBwZWFyIGluIHRoZSBtYXJrdXAuXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIHwgICAgICAgICAgICAgfCAgICAgICAgICAgICB8XG4gIHwgICAgY29sLTEgICAgfCAgICBjb2wtMiAgICB8XG4gIHwgICAgICAgICAgICAgfCAgICAgICAgICAgICB8XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICovXG4gID4gLmNvbC0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLWd1dHRlci13aWR0aCAvIDI7IC8vIDE1cHhcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyOyAvLyAxNXB4XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC1vbmx5KSB7XG4gICAgICAvL0BpbmNsdWRlIGdyaWQtc3Bhbig2LCAxKTtcbiAgICAgIEBpbmNsdWRlIG1ha2Utc20tY29sdW1uKCA2ICk7XG4gICAgfVxuICB9XG5cbiAgPiAuY29sLTIge1xuICAgIHBhZGRpbmctbGVmdDogJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMjsgLy8gMTVweFxuICAgIHBhZGRpbmctcmlnaHQ6ICRncmlkLWd1dHRlci13aWR0aCAvIDI7IC8vIDE1cHhcbiAgICBtYXJnaW4tdG9wOiAkbGF5b3V0LXN0YWNrZWQtZ3V0dGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtb25seSkge1xuICAgICAgLy9AaW5jbHVkZSBncmlkLXNwYW4oNiwgNyk7XG4gICAgICBAaW5jbHVkZSBtYWtlLXNtLWNvbHVtbiggNiApO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gMiBjb2x1bW5zIG9uIG1lZGl1bSB1cCBzY3JlZW4gc2l6ZVxuLy9cbi5yb3ctMS0xLW1lZGl1bS11cCB7XG4gIC8qXG4gIDIgY29sdW1uIHJvdyB3aXRoIGVxdWFsbHkgc3BsaXQgY29sdW1ucy5cbiAgRm9yIHhzbWFsbCBhbmQgc21hbGwgc2NyZWVucyB0aGUgY29sdW1ucyBiZWNvbWUgdmVydGljYWxseSBzdGFja2VkXG4gIGluIHRoZSBvcmRlciB0aGV5IGFwcGVhciBpbiB0aGUgbWFya3VwLlxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICB8ICAgICAgICAgICAgIHwgICAgICAgICAgICAgfFxuICB8ICAgIGNvbC0xICAgIHwgICAgY29sLTIgICAgfFxuICB8ICAgICAgICAgICAgIHwgICAgICAgICAgICAgfFxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAqL1xuICA+IC5jb2wtMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyOyAvLyAxNXB4XG4gICAgcGFkZGluZy1yaWdodDogJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMjsgLy8gMTVweFxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICAgIC8vQGluY2x1ZGUgZ3JpZC1zcGFuKDYsIDEpO1xuICAgICAgQGluY2x1ZGUgbWFrZS1tZC1jb2x1bW4oIDYgKTtcbiAgICB9XG4gIH1cblxuICA+IC5jb2wtMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyOyAvLyAxNXB4XG4gICAgcGFkZGluZy1yaWdodDogJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMjsgLy8gMTVweFxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICAgIC8vQGluY2x1ZGUgZ3JpZC1zcGFuKDYsIDcpO1xuICAgICAgQGluY2x1ZGUgbWFrZS1tZC1jb2x1bW4oIDYgKTtcbiAgICB9XG4gIH1cblxuICBAZXh0ZW5kICVyb3ctc3RhY2stc3BhY2luZy1tZWRpdW0tdXA7XG59XG5cbi8vIDIgY29sdW1ucyBvbiBhbGwgc2NyZWVuIHNpemVzIGluY2x1ZGluZyB0aGUgc21hbGxlc3Rcbi8vXG4ucm93LTEtMS1hbGwge1xuICAvKlxuICAyIGNvbHVtbiByb3cgd2l0aCBlcXVhbGx5IHNwbGl0IGNvbHVtbnMuXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIHwgICAgICAgICAgICAgfCAgICAgICAgICAgICB8XG4gIHwgICAgY29sLTEgICAgfCAgICBjb2wtMiAgICB8XG4gIHwgICAgICAgICAgICAgfCAgICAgICAgICAgICB8XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICovXG4gID4gLmNvbC0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLWd1dHRlci13aWR0aCAvIDI7IC8vIDE1cHhcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyOyAvLyAxNXB4XG5cbiAgICBAaW5jbHVkZSBtYWtlLXhzLWNvbHVtbiggNiApO1xuICB9XG5cbiAgPiAuY29sLTIge1xuICAgIHBhZGRpbmctbGVmdDogJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMjsgLy8gMTVweFxuICAgIHBhZGRpbmctcmlnaHQ6ICRncmlkLWd1dHRlci13aWR0aCAvIDI7IC8vIDE1cHhcblxuICAgIEBpbmNsdWRlIG1ha2UteHMtY29sdW1uKCA2ICk7XG4gIH1cblxufSIsIi8vIDMgY29sdW1uc1xuLy9cbi5yb3ctMS0xLTEge1xuICAvKlxuICAzIGNvbHVtbiByb3cgd2l0aCBlcXVhbGx5IHNwbGl0IGNvbHVtbnMuXG4gIEZvciBzbWFsbCBzY3JlZW5zIHRoZSBjb2x1bW5zIGJlY29tZSB2ZXJ0aWNhbGx5IHN0YWNrZWRcbiAgaW4gdGhlIG9yZGVyIHRoZXkgYXBwZWFyIGluIHRoZSBtYXJrdXAuXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgfCAgICAgICAgIHwgICAgICAgICB8ICAgICAgICAgfFxuICB8ICBjb2wtMSAgfCAgY29sLTIgIHwgIGNvbC0zICB8XG4gIHwgICAgICAgICB8ICAgICAgICAgfCAgICAgICAgIHxcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAqL1xuICA+IC5jb2wtMSB7XG4gICAgQGluY2x1ZGUgbWFrZS14cy1jb2x1bW4oIDEyICk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXAsICRuby1xdWVyeTogdHJ1ZSkge1xuICAgICAgLy9AaW5jbHVkZSBncmlkLXNwYW4oNCwgMSk7XG4gICAgICBAaW5jbHVkZSBtYWtlLXhzLWNvbHVtbiggNCApO1xuICAgIH1cbiAgfVxuXG4gID4gLmNvbC0yIHtcbiAgICBAaW5jbHVkZSBtYWtlLXhzLWNvbHVtbiggMTIgKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAvL0BpbmNsdWRlIGdyaWQtc3Bhbig0LCA1KTtcbiAgICAgIEBpbmNsdWRlIG1ha2UteHMtY29sdW1uKCA0ICk7XG4gICAgfVxuICB9XG5cbiAgPiAuY29sLTMge1xuICAgIEBpbmNsdWRlIG1ha2UteHMtY29sdW1uKCAxMiApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICAgIC8vQGluY2x1ZGUgZ3JpZC1zcGFuKDQsIDkpO1xuICAgICAgQGluY2x1ZGUgbWFrZS14cy1jb2x1bW4oIDQgKTtcbiAgICB9XG4gIH1cblxuICBAZXh0ZW5kICVyb3ctc3RhY2stc3BhY2luZy1zbWFsbC11cDtcbn1cblxuLy8gMyBjb2x1bW5zIG9uIG1lZGl1bSB1cCBzY3JlZW4gc2l6ZVxuLy9cbi5yb3ctMS0xLTEtbWVkaXVtLXVwIHtcbiAgLypcbiAgMyBjb2x1bW4gcm93IHdpdGggZXF1YWxseSBzcGxpdCBjb2x1bW5zLlxuICBGb3IgbWVkaXVtIHVwIHNjcmVlbnMgdGhlIGNvbHVtbnMgYmVjb21lIHZlcnRpY2FsbHkgc3RhY2tlZFxuICBpbiB0aGUgb3JkZXIgdGhleSBhcHBlYXIgaW4gdGhlIG1hcmt1cC5cbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICB8ICAgICAgICAgfCAgICAgICAgIHwgICAgICAgICB8XG4gIHwgIGNvbC0xICB8ICBjb2wtMiAgfCAgY29sLTMgIHxcbiAgfCAgICAgICAgIHwgICAgICAgICB8ICAgICAgICAgfFxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICovXG4gID4gLmNvbC0xIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXAsICRuby1xdWVyeTogdHJ1ZSkge1xuICAgICAgLy9AaW5jbHVkZSBncmlkLXNwYW4oNCwgMSk7XG4gICAgICBAaW5jbHVkZSBtYWtlLW1kLWNvbHVtbiggNCApO1xuICAgIH1cbiAgfVxuXG4gID4gLmNvbC0yIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXAsICRuby1xdWVyeTogdHJ1ZSkge1xuICAgICAgLy9AaW5jbHVkZSBncmlkLXNwYW4oNCwgNSk7XG4gICAgICBAaW5jbHVkZSBtYWtlLW1kLWNvbHVtbiggNCApO1xuICAgIH1cbiAgfVxuXG4gID4gLmNvbC0zIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXAsICRuby1xdWVyeTogdHJ1ZSkge1xuICAgICAgLy9AaW5jbHVkZSBncmlkLXNwYW4oNCwgOSk7XG4gICAgICBAaW5jbHVkZSBtYWtlLW1kLWNvbHVtbiggNCApO1xuICAgIH1cbiAgfVxuXG4gIEBleHRlbmQgJXJvdy1zdGFjay1zcGFjaW5nLW1lZGl1bS11cDtcbn0iLCIvLyAzIGNvbHVtbnMgKDIgY29scyBvdmVyIDEgY29sKVxuLy9cbi5yb3ctMi1vdmVyLTEge1xuICAvKlxuICBGb3Igc21hbGwgc2NyZWVuczpcbiAgQmVoYXZlcyBsaWtlIGEgc3RhbmRhcmQgMyBjb2x1bW4gcm93IChyb3ctMS0xLTEpXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgfCAgICAgICAgIHwgICAgICAgICB8ICAgICAgICAgfFxuICB8ICBjb2wtMSAgfCAgY29sLTIgIHwgIGNvbC0zICB8XG4gIHwgICAgICAgICB8ICAgICAgICAgfCAgICAgICAgIHxcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gIEZvciBsYXJnZSBzY3JlZW5zIGFuZCB1cDpcbiAgQ3JlYXRlcyBhIHJvdyBmb3IgY29sdW1ucyAxIGFuZCAzIChyb3ctMS0xKSBhbmQgc3RhY2tzXG4gIHRoZXNlIGFib3ZlIGNvbHVtbiAyIGluIGl0J3Mgb3duIHJvdy5cbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICB8ICAgICAgICAgICAgICB8ICAgICAgICAgICAgICB8XG4gIHwgICAgY29sLTEgICAgIHwgICAgY29sLTMgICAgIHxcbiAgfCAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgfFxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAgfCAgICAgICAgICAgIGNvbC0yICAgICAgICAgICAgfFxuICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgKi9cbiAgPiAuY29sLTEge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwKSB7XG4gICAgICAvL0BpbmNsdWRlIGdyaWQtc3Bhbig2LCAxKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXAsICRuby1xdWVyeTogdHJ1ZSkge1xuICAgICAgLy9AaW5jbHVkZSBncmlkLXNwYW4oNCwgMSk7XG4gICAgfVxuICB9XG5cbiAgPiAuY29sLTIge1xuICAgIC8vIEdpdmUgc3BhY2UgYmV0d2VlbiByb3dzIHdoZW4gY29sIDEgJiAzIHN0YWNrZWQgYWJvdmUgY29sIDJcbiAgICBtYXJnaW4tdG9wOiAkbGF5b3V0LXN0YWNrZWQtZ3V0dGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICAgIC8vQGluY2x1ZGUgZ3JpZC1zcGFuKDEyLCAxKTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAvL0BpbmNsdWRlIGdyaWQtc3Bhbig0LCA1KTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgPiAuY29sLTMge1xuICAgIG1hcmdpbi10b3A6ICRsYXlvdXQtc3RhY2tlZC1ndXR0ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCkge1xuICAgICAgLy9AaW5jbHVkZSBncmlkLXNwYW4oNiwgNyk7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAvL0BpbmNsdWRlIGdyaWQtc3Bhbig0LCA5KTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG59IiwiLy8gNCBjb2x1bW5zXG4vL1xuLnJvdy0xLTEtMS0xIHtcblxuICAvKlxuICA0IGNvbHVtbiByb3cgd2l0aCBlcXVhbGx5IHNwbGl0IGNvbHVtbnMuXG4gIEZvciBzbWFsbCB1cCBzY3JlZW5zIHRoZSBjb2x1bW5zIGJlY29tZSB2ZXJ0aWNhbGx5IHN0YWNrZWRcbiAgaW4gdGhlIG9yZGVyIHRoZXkgYXBwZWFyIGluIHRoZSBtYXJrdXAuXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIHwgICAgICAgICB8ICAgICAgICAgfCAgICAgICAgIHwgICAgICAgICB8XG4gIHwgIGNvbC0xICB8ICBjb2wtMiAgfCAgY29sLTMgIHwgIGNvbC00ICB8XG4gIHwgICAgICAgICB8ICAgICAgICAgfCAgICAgICAgIHwgICAgICAgICB8XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICovXG5cbiAgLy8gZmxvYXRpbmcgY29sdW1uIHRvIGFsbG93IG1vcmUgdG8gYmUgYWRkZWQgZHluYW1pY2FsbHkuXG4gID4gLmNvbCB7XG4gICAgcGFkZGluZy1ib3R0b206MzBweDtcbiAgICBtYXJnaW4tdG9wOjA7XG4gICAgQGluY2x1ZGUgbWFrZS14cy1jb2x1bW4oIDEyICk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXAsICRuby1xdWVyeTogdHJ1ZSkge1xuICAgICAgJjpudGgtb2YtdHlwZSgybisxKXtcbiAgICAgICAgY2xlYXI6bGVmdDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1ha2Utc20tY29sdW1uKCA2ICk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTowO1xuICAgICAgJjpudGgtb2YtdHlwZSgybisxKXtcbiAgICAgICAgY2xlYXI6bm9uZTtcbiAgICAgIH1cbiAgICAgICY6bnRoLW9mLXR5cGUoNG4rMSl7XG4gICAgICAgIGNsZWFyOmxlZnQ7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtYWtlLW1kLWNvbHVtbiggMyApO1xuICAgIH1cbiAgfVxuXG4gID4gLmNvbC0xIHtcbiAgICBAaW5jbHVkZSBtYWtlLXhzLWNvbHVtbiggMTIgKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXAsICRuby1xdWVyeTogdHJ1ZSkge1xuICAgICAgQGluY2x1ZGUgbWFrZS1tZC1jb2x1bW4oIDMgKTtcbiAgICB9XG4gIH1cblxuICA+IC5jb2wtMiB7XG4gICAgQGluY2x1ZGUgbWFrZS14cy1jb2x1bW4oIDEyICk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICAgIEBpbmNsdWRlIG1ha2UtbWQtY29sdW1uKCAzICk7XG4gICAgfVxuICB9XG5cbiAgPiAuY29sLTMge1xuICAgIEBpbmNsdWRlIG1ha2UteHMtY29sdW1uKCAxMiApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICBAaW5jbHVkZSBtYWtlLW1kLWNvbHVtbiggMyApO1xuICAgIH1cbiAgfVxuXG4gID4gLmNvbC00IHtcbiAgICBAaW5jbHVkZSBtYWtlLXhzLWNvbHVtbiggMTIgKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXAsICRuby1xdWVyeTogdHJ1ZSkge1xuICAgICAgQGluY2x1ZGUgbWFrZS1tZC1jb2x1bW4oIDMgKTtcbiAgICB9XG4gIH1cblxuICAvLyBBZGRzIHZlcnRpY2FsIHNwYWNpbmcgd2hlbiByb3dzIHN0YWNrXG4gIEBleHRlbmQgJXJvdy1zdGFjay1zcGFjaW5nLW1lZGl1bS11cDtcbn1cbiIsIi5yb3ctMS0xLTEtMS0xLTEge1xuXG4gIC8vIEN1c3RvbSBsYXlvdXQgYmFzZWQgb24gNiBjb2x1bW4gZ3JpZFxuICAvLyAgNiBTdGFja2VkIHJvd3MgZm9yIGV4dHJhIHNtYWxsIHNjcmVlbnMgdXAuXG4gIC8vICAzIGNvbHVtbnMgc3RhY2tlZCBhYm92ZSAzIGZvciBtZWRpdW0gc2NyZWVucyB1cC5cbiAgLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gIHwgICAgIHwgICAgIHwgICAgIHxcbiAgLy8gIHwgYy0xIHwgYy0yIHwgYy0zIHxcbiAgLy8gIHwgICAgIHwgICAgIHwgICAgIHxcbiAgLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gIHwgICAgIHwgICAgIHwgICAgIHxcbiAgLy8gIHwgYy00IHwgYy01IHwgYy02IHxcbiAgLy8gIHwgICAgIHwgICAgIHwgICAgIHxcbiAgLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy9cbiAgLy8gIDYgZXF1YWwgY29sdW1ucyBmb3IgbGFyZ2Ugc2NyZWVucyBhbmQgdXAuXG4gIC8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vICB8ICAgICB8ICAgICB8ICAgICB8ICAgICB8ICAgICB8ICAgICB8XG4gIC8vICB8IGMtMSB8IGMtMiB8IGMtMyB8IGMtNCB8IGMtNSB8IGMtNiB8XG4gIC8vICB8ICAgICB8ICAgICB8ICAgICB8ICAgICB8ICAgICB8ICAgICB8XG4gIC8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgLy9AaW5jbHVkZSBsYXlvdXQoJGd1dHRlcjogMC4yKSB7XG4gICAgLmNvbC0xIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgbWFyZ2luOjA7XG5cbiAgICAgIEBpbmNsdWRlIG1ha2UteHMtY29sdW1uKCAxMiApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgICAgIC8vQGluY2x1ZGUgZ3JpZC1zcGFuKDQsIDEsICRvdXRwdXQtc3R5bGU6ICdmbG9hdCcpO1xuICAgICAgICBAaW5jbHVkZSBtYWtlLW1kLWNvbHVtbiggNCApO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICAgICAgLy9AaW5jbHVkZSBncmlkLXNwYW4oMiwgMSk7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtbGctY29sdW1uKCAyICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbC0yIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgbWFyZ2luOjA7XG5cbiAgICAgIEBpbmNsdWRlIG1ha2UteHMtY29sdW1uKCAxMiApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgICAgIC8vQGluY2x1ZGUgZ3JpZC1zcGFuKDQsIDUsICRvdXRwdXQtc3R5bGU6ICdmbG9hdCcpO1xuICAgICAgICBAaW5jbHVkZSBtYWtlLW1kLWNvbHVtbiggNCApO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICAgICAgLy9AaW5jbHVkZSBncmlkLXNwYW4oMiwgMyk7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtbGctY29sdW1uKCAyICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbC0zIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgbWFyZ2luOjA7XG5cbiAgICAgIEBpbmNsdWRlIG1ha2UteHMtY29sdW1uKCAxMiApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgICAgIC8vQGluY2x1ZGUgZ3JpZC1zcGFuKDQsIDksICRvdXRwdXQtc3R5bGU6ICdmbG9hdCcpO1xuICAgICAgICBAaW5jbHVkZSBtYWtlLW1kLWNvbHVtbiggNCApO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICAgICAgLy9AaW5jbHVkZSBncmlkLXNwYW4oMiwgNSk7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtbGctY29sdW1uKCAyICk7XG5cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29sLTQge1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICBtYXJnaW46MDtcblxuICAgICAgQGluY2x1ZGUgbWFrZS14cy1jb2x1bW4oIDEyICk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXApIHtcbiAgICAgICAgLy9AaW5jbHVkZSBncmlkLXNwYW4oNCwgMSwgJG91dHB1dC1zdHlsZTogJ2Zsb2F0Jyk7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtbWQtY29sdW1uKCA0ICk7XG4gICAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICAgICAgLy9AaW5jbHVkZSBncmlkLXNwYW4oMiwgNyk7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtbGctY29sdW1uKCAyICk7XG4gICAgICAgIHBhZGRpbmctdG9wOjA7XG4gICAgICAgIGNsZWFyOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jb2wtNSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIG1hcmdpbjowO1xuXG4gICAgICBAaW5jbHVkZSBtYWtlLXhzLWNvbHVtbiggMTIgKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgICAgICAvL0BpbmNsdWRlIGdyaWQtc3Bhbig0LCA1LCAkb3V0cHV0LXN0eWxlOiAnZmxvYXQnKTtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1tZC1jb2x1bW4oIDQgKTtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAgIC8vQGluY2x1ZGUgZ3JpZC1zcGFuKDIsIDkpO1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWxnLWNvbHVtbiggMiApO1xuICAgICAgICBwYWRkaW5nLXRvcDowO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jb2wtNiB7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIG1hcmdpbjowO1xuXG4gICAgICBAaW5jbHVkZSBtYWtlLXhzLWNvbHVtbiggMTIgKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgICAgICAvL0BpbmNsdWRlIGdyaWQtc3Bhbig0LCA5LCAkb3V0cHV0LXN0eWxlOiAnZmxvYXQnKTtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1tZC1jb2x1bW4oIDQgKTtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAgIC8vQGluY2x1ZGUgZ3JpZC1zcGFuKDIsIDExKTtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1sZy1jb2x1bW4oIDIgKTtcbiAgICAgICAgcGFkZGluZy10b3A6MDtcbiAgICAgIH1cbiAgICB9XG4gIC8vfVxuXG59XG4iLCIucm93LTEtMS0xLTEtMS0xLTEge1xuXG4gIC8vIEN1c3RvbSBsYXlvdXQgYmFzZWQgb24gNyBjb2x1bW4gZ3JpZFxuICAvLyA2IFN0YWNrZWQgcm93cyBmb3IgZXh0cmEgc21hbGwgc2NyZWVucyB1cC5cbiAgLy8gMyBjb2x1bW5zIHN0YWNrZWQgYWJvdmUgMyB0aGVuIDEgZnVsbCB3aWR0aCBmb3IgbWVkaXVtIHNjcmVlbnMgdXAuXG4gIC8vICAtLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vICB8ICAgICAgICAgICAgICAgICB8XG4gIC8vICB8ICAgICAgIGMtNyAgICAgICB8XG4gIC8vICB8ICAgICAgICAgICAgICAgICB8XG4gIC8vICAtLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vICB8ICAgICB8ICAgICB8ICAgICB8XG4gIC8vICB8IGMtMSB8IGMtMiB8IGMtMyB8XG4gIC8vICB8ICAgICB8ICAgICB8ICAgICB8XG4gIC8vICAtLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vICB8ICAgICB8ICAgICB8ICAgICB8XG4gIC8vICB8IGMtNCB8IGMtNSB8IGMtNiB8XG4gIC8vICB8ICAgICB8ICAgICB8ICAgICB8XG4gIC8vICAtLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vXG4gIC8vICA3IGVxdWFsIGNvbHVtbnMgZm9yIGxhcmdlIHNjcmVlbnMgYW5kIHVwLlxuICAvLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyAgfCAgICAgfCAgICAgfCAgICAgfCAgICAgfCAgICAgfCAgICAgfCAgICAgfFxuICAvLyAgfCBjLTEgfCBjLTIgfCBjLTMgfCBjLTQgfCBjLTUgfCBjLTYgfCBjLTcgfFxuICAvLyAgfCAgICAgfCAgICAgfCAgICAgfCAgICAgfCAgICAgfCAgICAgfCAgICAgfFxuICAvLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gIC8vQGluY2x1ZGUgbGF5b3V0KCRndXR0ZXI6IDAuMikge1xuICAgIC5jb2wtMSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIG1hcmdpbjowO1xuXG4gICAgICBAaW5jbHVkZSBtYWtlLXhzLWNvbHVtbiggMTIgKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLW1kLWNvbHVtbiggMTIgKTtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtbGctY29sdW1uKCAxLjcxICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbC0yIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgbWFyZ2luOjA7XG5cbiAgICAgIEBpbmNsdWRlIG1ha2UteHMtY29sdW1uKCAxMiApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1zbS1jb2x1bW4oIDQgKTtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtbGctY29sdW1uKCAxLjcxICk7XG4gICAgICAgIHBhZGRpbmctdG9wOjA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbC0zIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgbWFyZ2luOjA7XG5cbiAgICAgIEBpbmNsdWRlIG1ha2UteHMtY29sdW1uKCAxMiApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1zbS1jb2x1bW4oIDQgKTtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtbGctY29sdW1uKCAxLjcxICk7XG4gICAgICAgIHBhZGRpbmctdG9wOjA7XG5cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29sLTQge1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICBtYXJnaW46MDtcblxuICAgICAgQGluY2x1ZGUgbWFrZS14cy1jb2x1bW4oIDEyICk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCkge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLXNtLWNvbHVtbiggNCApO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1sZy1jb2x1bW4oIDEuNzEgKTtcbiAgICAgICAgcGFkZGluZy10b3A6MDtcbiAgICAgICAgY2xlYXI6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbC01IHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgbWFyZ2luOjA7XG5cbiAgICAgIEBpbmNsdWRlIG1ha2UteHMtY29sdW1uKCAxMiApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1zbS1jb2x1bW4oIDQgKTtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtbGctY29sdW1uKCAxLjcxICk7XG4gICAgICAgIHBhZGRpbmctdG9wOjA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbC02IHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgbWFyZ2luOjA7XG5cbiAgICAgIEBpbmNsdWRlIG1ha2UteHMtY29sdW1uKCAxMiApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1zbS1jb2x1bW4oIDQgKTtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtbGctY29sdW1uKCAxLjcxICk7XG4gICAgICAgIHBhZGRpbmctdG9wOjA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbC03IHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgbWFyZ2luOjA7XG5cbiAgICAgIEBpbmNsdWRlIG1ha2UteHMtY29sdW1uKCAxMiApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1zbS1jb2x1bW4oIDQgKTtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtbGctY29sdW1uKCAxLjcxICk7XG4gICAgICAgIHBhZGRpbmctdG9wOjA7XG4gICAgICB9XG4gICAgfVxuICAvL31cblxufVxuXG4iLCIvLyBCbG9jayBncmlkXG4vLyBCbG9jayBncmlkcyBwcm92aWRlIGEgd2F5IGZvciBldmVubHkgc3BsaXR0aW5nIGNvbnRlbnQgdGhhdCBjYW4gc3BhbiBvdmVyIG11bHRpcGxlIHJvd3Ncbi8vXG4uYmxvY2stZ3JpZCB7XG5cbiAgQGV4dGVuZCAlY2xlYXJmaXg7XG5cbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAkYmxvY2stZ3JpZC12ZXJ0aWNhbC1zcGFjZTtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vL1xuLy8gRGVmaW5lIGJsb2NrIGdyaWQgcHJlc2V0c1xuLy9cbi8vIGJsb2NrLWdyaWQtPGNvbHVtbj4tPGJyZWFrcG9pbnQ+XG5cbi8vIDIgY29sdW1uIGdyaWQgYXQgKmFsbCogYnJlYWtwb2ludHNcbi5ibG9jay1ncmlkLTIge1xuICBAaW5jbHVkZSBibG9jay1ncmlkKDIsICRibG9jay1ncmlkLWd1dHRlci1tZWRpdW0pXG59XG5cbi8vIDMgY29sdW1uIGdyaWQgYXQgKmFsbCogYnJlYWtwb2ludHNcbi5ibG9jay1ncmlkLTMge1xuICBAaW5jbHVkZSBibG9jay1ncmlkKDMsICRibG9jay1ncmlkLWd1dHRlci1tZWRpdW0pXG59XG5cbi8vIDQgY29sdW1uIGdyaWQgYXQgKmFsbCogYnJlYWtwb2ludHNcbi5ibG9jay1ncmlkLTQge1xuICBAaW5jbHVkZSBibG9jay1ncmlkKDQsICRibG9jay1ncmlkLWd1dHRlci1tZWRpdW0pXG59XG5cbi8vIDIgY29sdW1uIGF0IHhzbWFsbFxuLmJsb2NrLWdyaWQtMi14c21hbGwge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCR4c21hbGwtb25seSkge1xuICAgIEBpbmNsdWRlIGJsb2NrLWdyaWQoMiwgJGJsb2NrLWdyaWQtZ3V0dGVyLXNtYWxsKVxuICB9XG59XG4vLyAyIGNvbHVtbiBhdCBzbWFsbCBvbmx5XG4uYmxvY2stZ3JpZC0yLXNtYWxsIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtb25seSkge1xuICAgIEBpbmNsdWRlIGJsb2NrLWdyaWQoMiwgJGJsb2NrLWdyaWQtZ3V0dGVyLXNtYWxsKVxuICB9XG59XG4vLyAyIGNvbHVtbiBmb3IgbWVkaXVtIG9ubHlcbi5ibG9jay1ncmlkLTItbWVkaXVtIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLW9ubHkpIHtcbiAgICBAaW5jbHVkZSBibG9jay1ncmlkKDIsICRibG9jay1ncmlkLWd1dHRlci1tZWRpdW0pXG4gIH1cbn1cbi8vIDIgY29sdW1uIGZvciBsYXJnZSBvbmx5XG4uYmxvY2stZ3JpZC0yLWxhcmdlIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2Utb25seSwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgQGluY2x1ZGUgYmxvY2stZ3JpZCgyLCAkYmxvY2stZ3JpZC1ndXR0ZXItbWVkaXVtKVxuICB9XG59XG5cbi8vIDIgY29sdW1uIGF0IHhzbWFsbFxuLmJsb2NrLWdyaWQtMy14c21hbGwge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCR4c21hbGwtb25seSkge1xuICAgIEBpbmNsdWRlIGJsb2NrLWdyaWQoMywgJGJsb2NrLWdyaWQtZ3V0dGVyLXNtYWxsKVxuICB9XG59XG4vLyAyIGNvbHVtbiBhdCBzbWFsbCBvbmx5XG4uYmxvY2stZ3JpZC0zLXNtYWxsIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtb25seSkge1xuICAgIEBpbmNsdWRlIGJsb2NrLWdyaWQoMywgJGJsb2NrLWdyaWQtZ3V0dGVyLXNtYWxsKVxuICB9XG59XG4vLyAyIGNvbHVtbiBmb3IgbWVkaXVtIG9ubHlcbi5ibG9jay1ncmlkLTMtbWVkaXVtIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLW9ubHkpIHtcbiAgICBAaW5jbHVkZSBibG9jay1ncmlkKDMsICRibG9jay1ncmlkLWd1dHRlci1tZWRpdW0pXG4gIH1cbn1cbi8vIDIgY29sdW1uIGZvciBsYXJnZSBvbmx5XG4uYmxvY2stZ3JpZC0zLWxhcmdlIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2Utb25seSwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgQGluY2x1ZGUgYmxvY2stZ3JpZCgzLCAkYmxvY2stZ3JpZC1ndXR0ZXItbWVkaXVtKVxuICB9XG59XG5cbi8vIDQgY29sdW1uIGZvciBtZWRpdW0gb25seVxuLmJsb2NrLWdyaWQtNC1tZWRpdW0ge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tb25seSwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgQGluY2x1ZGUgYmxvY2stZ3JpZCg0LCAkYmxvY2stZ3JpZC1ndXR0ZXItbWVkaXVtKVxuICB9XG59XG5cbi8vIDMgY29sdW1uIGZvciBsYXJnZSB1cFxuLmJsb2NrLWdyaWQtMy1tZWRpdW0tdXAge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXAsICRuby1xdWVyeTogdHJ1ZSkge1xuICAgIEBpbmNsdWRlIGJsb2NrLWdyaWQoMywgJGJsb2NrLWdyaWQtZ3V0dGVyLW1lZGl1bSlcbiAgfVxufVxuLy8gMyBjb2x1bW4gZm9yIGxhcmdlIHVwXG4uYmxvY2stZ3JpZC0zLWxhcmdlLXVwIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2UtdXAsICRuby1xdWVyeTogdHJ1ZSkge1xuICAgIEBpbmNsdWRlIGJsb2NrLWdyaWQoMywgJGJsb2NrLWdyaWQtZ3V0dGVyLW1lZGl1bSlcbiAgfVxufVxuLy8gMyBjb2x1bW4gZm9yIHhsYXJnZSB1cFxuLmJsb2NrLWdyaWQtMy14bGFyZ2UtdXAge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCR4bGFyZ2UtdXAsICRuby1xdWVyeTogdHJ1ZSkge1xuICAgIEBpbmNsdWRlIGJsb2NrLWdyaWQoMywgJGJsb2NrLWdyaWQtZ3V0dGVyLW1lZGl1bSlcbiAgfVxufVxuXG4vLyA0IGNvbHVtbiBmb3IgbWVkaXVtIHVwXG4uYmxvY2stZ3JpZC00LW1lZGl1bS11cCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgQGluY2x1ZGUgYmxvY2stZ3JpZCg0LCAkYmxvY2stZ3JpZC1ndXR0ZXItbWVkaXVtKVxuICB9XG59XG4vLyA0IGNvbHVtbiBmb3IgbGFyZ2UgdXBcbi5ibG9jay1ncmlkLTQtbGFyZ2UtdXAge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCkge1xuICAgIEBpbmNsdWRlIGJsb2NrLWdyaWQoNCwgJGJsb2NrLWdyaWQtZ3V0dGVyLWxhcmdlKVxuICB9XG59XG4iLCIvLyBMYXlvdXQgc3RydWN0dXJlXG4vL1xuXG4vLyBIZWFkZXJcbi8vXG5oZWFkZXIge1xuICBwb3NpdGlvbjpyZWxhdGl2ZTsgLy8gdG8gaGlkZSBvdmVyZmxvdyBvZiBwb3NpdGlvbiBhYnNvbHV0ZWQgaGVhZGVyIGltYWdlIG9uIGhvbWVwYWdlIG9ubHlcbiAgLy9vdmVyZmxvdzpoaWRkZW47IC8vIHRvIGhpZGUgb3ZlcmZsb3cgb2YgcG9zaXRpb24gYWJzb2x1dGVkIGhlYWRlciBpbWFnZSBvbiBob21lcGFnZSBvbmx5XG59XG5cbi8vIEZvb3RlclxuLy9cbmZvb3RlciB7fVxuXG4vLyBSb3dcbi8vXG4ucm93IHtcbiAgQGV4dGVuZCAlY2xlYXJmaXg7XG4gIC8vY2xlYXI6IGJvdGg7XG59XG5cbi8vIFByb3ZpZGVzIGRlZmF1bHQgdmVydGljYWwgc3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMgd2hlbiBzdGFja2luZ1xuLy8gb2NjdXJzIGJlbG93IHRoZSBsYXJnZSBicmVha3BvaW50XG4vLyBUbyB1c2UgYWRkIHRvIGEgcm93IGNsYXNzIHVzaW5nLFxuLy8gICAgQGV4dGVuZCAlcm93LXN0YWNrLXNwYWNpbmdcbi8vXG4lcm93LXN0YWNrLXNwYWNpbmctbGFyZ2UtdXAge1xuICBkaXY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICA+IGRpdiB7XG4gICAgbWFyZ2luLXRvcDogJGxheW91dC1zdGFja2VkLWd1dHRlcjtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICA+IGRpdiB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBTYW1lIGFzIGFib3ZlIGJ1dCB1c2Ugd2hlbiBzdGFja2luZyBvY2N1cnMgYmVsb3cgdGhlIG1lZGl1bSBicmVha3BvaW50XG4lcm93LXN0YWNrLXNwYWNpbmctbWVkaXVtLXVwIHtcbiAgZGl2OmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgPiBkaXYge1xuICAgIG1hcmdpbi10b3A6ICRsYXlvdXQtc3RhY2tlZC1ndXR0ZXI7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXAsICRuby1xdWVyeTogdHJ1ZSkge1xuICAgID4gZGl2IHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIFNhbWUgYXMgYWJvdmUgYnV0IHVzZSB3aGVuIHN0YWNraW5nIG9jY3VycyBiZWxvdyB0aGUgc21hbGwgYnJlYWtwb2ludFxuJXJvdy1zdGFjay1zcGFjaW5nLXNtYWxsLXVwIHtcbiAgZGl2OmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgPiBkaXYge1xuICAgIG1hcmdpbi10b3A6ICRsYXlvdXQtc3RhY2tlZC1ndXR0ZXI7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgPiBkaXYge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gU2FtZSBhcyBhYm92ZSBidXQgdXNlIHdoZW4gc3RhY2tpbmcgb2NjdXJzIGJlbG93IHRoZSB4c21hbGwgYnJlYWtwb2ludFxuJXJvdy1zdGFjay1zcGFjaW5nLXhzbWFsbC11cCB7XG4gIGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gID4gZGl2IHtcbiAgICBtYXJnaW4tdG9wOiAkbGF5b3V0LXN0YWNrZWQtZ3V0dGVyO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkeHNtYWxsLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICA+IGRpdiB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNYWluIGNvbnRhaW5lclxuLy9cbi5tYWluIHtcbiAgc2VjdGlvbiB7XG4gICAgQGV4dGVuZCAlY2xlYXJmaXg7XG4gIH1cbn1cblxuLnJvdy1jb250YWlue1xuICBtYXJnaW4tbGVmdDowIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OjAhaW1wb3J0YW50O1xufVxuXG4vLyBDb250YWluZXIgdG8gcmVzdHJpY3Qgd2lkdGggb2Ygcm93XG4vL1xuLy8uaW5uZXIge1xuLy8gIG1hcmdpbjogMCBhdXRvO1xuLy8gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vXG4vLyAgLy8gV2UgZGVsaWJlcmF0ZWx5IGFkZFxuLy8gIHBhZGRpbmc6IDAgMTBweDtcbi8vXG4vLyAgQGV4dGVuZCAlY2xlYXJmaXg7XG4vL1xuLy8gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlLXVwKSB7XG4vLyAgICB3aWR0aDogJGxhcmdlLXdpZHRoO1xuLy8gICAgcGFkZGluZzogMCAxNXB4O1xuLy8gIH1cbi8vXG4vLyAgQGluY2x1ZGUgYnJlYWtwb2ludCgkeGxhcmdlLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbi8vICAgIHdpZHRoOiAkeGxhcmdlLXdpZHRoO1xuLy8gICAgcGFkZGluZzogMCAxNXB4O1xuLy8gIH1cbi8vfSIsIi8vIFJlLXVzYWJsZSBzdGFuZGFyZCBncmlkIHNwYW5zXG4vLyAxIGNvbHVtbnNcbi8vXG4ucm93LTEge1xuICAvKlxuICAxIGNvbHVtbiByb3cuXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gIHwgICAgICAgICAgIENvbCAxICAgICAgICAgICB8XG4gIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICovXG4gID4gLmNvbC0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLWd1dHRlci13aWR0aCAvIDI7IC8vIDE1cHhcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyOyAvLyAxNXB4XG4gIH1cbiAgQGV4dGVuZCAlcm93LXN0YWNrLXNwYWNpbmctc21hbGwtdXA7XG59XG4iLCIvLyBBY2NvcmRpb25zIGluIHBhbmVsc1xuLy9cblxuLy8gV2UgbmVlZCB0byBjYXRlciBmb3Igb3VyIGljb25zIHRoYXQgZGVub3RlIHRoZSBvcGVuIGFuZCBjbG9zZWRcbi8vIHN0YXRlIG9mIHRoZSBhY2NvcmRpb24uXG4uY29sbGFwc2UtaWNvbixcbi5hY2NvcmRpb24tdG9nZ2xlIHtcbiAgJjphZnRlciB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICB9XG59XG5cbltkYXRhLXRvZ2dsZT1cImNvbGxhcHNlXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vLyBBY2NvcmRpb25cbi5hY2NvcmRpb24ge1xuICBtYXJnaW4tbGVmdDogLSRncmlkLWd1dHRlci13aWR0aC8yO1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3JpZC1ndXR0ZXItd2lkdGgvMjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuXG4gIC8vIE1heSBtb3ZlIHRoZXNlIHN0eWxlcyB0byB0aGUgcGFuZWxzIGNvbXBvbmVudCBzYXNzXG4gIC8vIGJ1dCB0aGVzZSBzZXR0aW5ncyBhcmUgc3BlY2lmaWMgdG8gdGhlIGFjY29yZGlvblxuICAmLnBhbmVsLWdyb3VwIHtcblxuICAgIC5wYW5lbCB7XG4gICAgICBib3JkZXI6IDBweDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAgIC8vIE92ZXJyaWRlIEJvb3RzdHJhcCBtYXJnaW4tdG9wOiA1cHhcbiAgICAgICsgLnBhbmVsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgfVxuXG4gICAgICAucGFuZWwtaGVhZGluZyB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkcGFuZWwtaW5uZXItYm9yZGVyO1xuICAgICAgICBjb2xvcjogJGFjY29yZGlvbi1kZWZhdWx0LXRleHQ7XG5cbiAgICAgICAgLy8gT3ZlcnJpZGUgQm9vdHN0cmFwIHRvcCBib3JkZXJcbiAgICAgICAgLy8gQWRkZWQgYSBib3R0b20gYm9yZGVyIHRvIHBhbmVsIGNvbGxhcHNlXG4gICAgICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHksXG4gICAgICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwYW5lbC1pbm5lci1ib3JkZXI7XG4gICAgICAgICAgLmxlYWR7XG4gICAgICAgICAgICBjb2xvcjokdGV4dC1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTokZm9udC1zaXplLWxhcmdlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBhLnBhbmVsLWhlYWRpbmd7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICB9XG5cbiAgICAgIC8vIE92ZXJyaWRlIEJvb3RzdHJhcCBiYWtlZC1pbiBwYW5lbCB0aXRsZSBmb250IHNpemVcbiAgICAgIC5wYW5lbC10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS40MjgpKTsgLy8gMjBweFxuXG4gICAgICAgIC8vIEluY3JlYXNlZCB0aGUgYmFzZSBmb250IGF3ZXNvbWUgaWNvbiBzaXplIGZyb20gMThweCB0byBtYXRjaCB0aGUgcGFuZWwgdGl0bGVcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS40MjgpKTsgLy8gMjBweFxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vU2V0IGEgYmcgY29sb3VyIG9uIHRoZSBwYW5lbCBoZWFkaW5nIGNvbGxhcHNlZCBzdGF0ZVxuICAgICAgLmNvbGxhcHNlZCB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFjY29yZGlvbi1kZWZhdWx0LWhlYWRpbmctYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEFjY29yZGlvbiAtIEJvb3RzdHJhcFxuLy8uYWNjb3JkaW9uIHtcbi8vICBtYXJnaW4tbGVmdDogLSRncmlkLWd1dHRlci13aWR0aC8yO1xuLy8gIG1hcmdpbi1yaWdodDogLSRncmlkLWd1dHRlci13aWR0aC8yO1xuLy9cbi8vICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCkge1xuLy8gICAgbWFyZ2luLWxlZnQ6IDA7XG4vLyAgICBtYXJnaW4tcmlnaHQ6IDA7XG4vLyAgfVxuLy9cbi8vICAvLyBNYXkgbW92ZSB0aGVzZSBzdHlsZXMgdG8gdGhlIHBhbmVscyBjb21wb25lbnQgc2Fzc1xuLy8gIC8vIGJ1dCB0aGVzZSBzZXR0aW5ncyBhcmUgc3BlY2lmaWMgdG8gdGhlIGFjY29yZGlvblxuLy8gIC5wYW5lbC1ncm91cCB7XG4vL1xuLy8gICAgLnBhbmVsIHtcbi8vICAgICAgYm9yZGVyOiAwcHg7XG4vLyAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4vL1xuLy8gICAgICAvLyBPdmVycmlkZSBCb290c3RyYXAgbWFyZ2luLXRvcDogNXB4XG4vLyAgICAgICsgLnBhbmVsIHtcbi8vICAgICAgICBtYXJnaW4tdG9wOiAycHg7XG4vLyAgICAgIH1cbi8vXG4vLyAgICAgIC5wYW5lbC1oZWFkaW5nIHtcbi8vICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHBhbmVsLWlubmVyLWJvcmRlcjtcbi8vICAgICAgICBjb2xvcjogJGFjY29yZGlvbi1kZWZhdWx0LXRleHQ7XG4vLyAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuLy8gICAgICAgIHBhZGRpbmc6IDA7XG4vLyAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkYWNjb3JkaW9uLWRlZmF1bHQtaGVhZGluZy1iZztcbi8vXG4vLyAgICAgICAgLy8gT3ZlcnJpZGUgQm9vdHN0cmFwIHRvcCBib3JkZXJcbi8vICAgICAgICAvLyBBZGRlZCBhIGJvdHRvbSBib3JkZXIgdG8gcGFuZWwgY29sbGFwc2Vcbi8vICAgICAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5LFxuLy8gICAgICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuLy8gICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbi8vICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcGFuZWwtaW5uZXItYm9yZGVyO1xuLy9cbi8vICAgICAgICAgIC5sZWFkIHtcbi8vICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuLy8gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4vLyAgICAgICAgICB9XG4vLyAgICAgICAgfVxuLy8gICAgICB9XG4vL1xuLy8gICAgICAvL2EucGFuZWwtaGVhZGluZyB7XG4vLyAgICAgIC8vICBkaXNwbGF5OmJsb2NrO1xuLy8gICAgICAvL31cbi8vXG4vLyAgICAgIC8vIE92ZXJyaWRlIEJvb3RzdHJhcCBiYWtlZC1pbiBwYW5lbCB0aXRsZSBmb250IHNpemVcbi8vICAgICAgLnBhbmVsLXRpdGxlIHtcbi8vICAgICAgICBmb250LXNpemU6IGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNDI4KSk7IC8vIDIwcHhcbi8vXG4vLyAgICAgICAgLmFjY29yZGlvbi10b2dnbGUge1xuLy8gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFjY29yZGlvbi1kZWZhdWx0LWhlYWRpbmctYmc7XG4vLyAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbi8vICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbi8vICAgICAgICB9XG4vL1xuLy8gICAgICAgIC8vIEluY3JlYXNlZCB0aGUgYmFzZSBmb250IGF3ZXNvbWUgaWNvbiBzaXplIGZyb20gMThweCB0byBtYXRjaCB0aGUgcGFuZWwgdGl0bGVcbi8vICAgICAgICAmOjphZnRlciB7XG4vLyAgICAgICAgICBmb250LXNpemU6IGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNDI4KSk7IC8vIDIwcHhcbi8vICAgICAgICB9XG4vLyAgICAgIH1cbi8vXG4vLyAgICAgIC8vU2V0IGEgYmcgY29sb3VyIG9uIHRoZSBwYW5lbCBoZWFkaW5nIGNvbGxhcHNlZCBzdGF0ZVxuLy8gICAgICAvLy5jb2xsYXBzZWQge1xuLy8gICAgICAvLyAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuLy8gICAgICAvLyAgYmFja2dyb3VuZC1jb2xvcjogJGFjY29yZGlvbi1kZWZhdWx0LWhlYWRpbmctYmc7XG4vLyAgICAgIC8vfVxuLy8gICAgfVxuLy8gIH1cbi8vfVxuXG4vLyBJY29uIHRoZW1lcyB2YXJpYW50c1xuLy9cbi8vKiogUGx1cyBhbmQgTWludXMgaWNvbnNcbkBpbmNsdWRlIGFjY29yZGlvbi1pY29uLXZhcmlhbnQoJ2NvbGxhcHNlLWljb24tZGVmYXVsdCcsICRmYS12YXItcGx1cywgJGZhLXZhci1taW51cyk7XG5cbi8vKiogQ2hldnJvbiBkb3duIGFuZCBDaGV2cm9uIHVwXG5AaW5jbHVkZSBhY2NvcmRpb24taWNvbi12YXJpYW50KCdjb2xsYXBzZS1pY29uLWFycm93JywgJGZhLXZhci1jaGV2cm9uLWRvd24sICRmYS12YXItY2hldnJvbi11cCk7XG5cbi8vKiogYW5nbGUgZG93biBhbmQgYW5nbGUgdXBcbkBpbmNsdWRlIGFjY29yZGlvbi1pY29uLXZhcmlhbnQoJ2NvbGxhcHNlLWljb24tYW5nbGUnLCAkZmEtdmFyLWFuZ2xlLWRvd24sICRmYS12YXItYW5nbGUtdXApOyIsIi8vIEFsZXJ0c1xuLy9cblxuLmFsZXJ0IHtcblxuICBoNCB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWgzO1xuICB9XG5cbiAgcCwgdWwge1xuICAgIGNvbG9yOiAkZ3JheS1saWdodDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbWVkaXVtO1xuICB9XG59XG5cblxuXG5cblxuXG4iLCIvLyBBcnRpY2xlIGhlYWRpbmdcbi8vXG4uYXJ0aWNsZS1oZWFkaW5ne1xuICBoMXtcbiAgICBtYXJnaW4tdG9wOjA7XG4gIH1cbn1cbi5tZXRhLWF1dGhvcixcbi5tZXRhLWNhdGVnb3J5IHtcbiAgbWFyZ2luOiAwO1xufSIsIi8vIEFydGljbGUgbGlzdGluZ1xuLy9cbi5hcnRpY2xlLWxpc3Rpbmcge1xuXG4gIC8vIEEgbGlzdGluZyBtYXJrZWQgYXMgRmVhdHVyZWRcbiAgLmZlYXR1cmVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1saWdodGVyLWNvbG9yO1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICB9XG5cbiAgaDMge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn0iLCIvLyBCYWNrLXRvLXRvcCBsaW5rXG4vL1xuXG5hLmJhY2stdG8tdG9wIHtcbiAgYmFja2dyb3VuZDogJGJhY2stdG8tdG9wLWJnO1xuICBjb2xvcjogJGJhY2stdG8tdG9wLWNvbG9yO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHBhZGRpbmc6IDEwcHggMjNweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB6LWluZGV4OiAxMDA7XG4gIGRpc3BsYXk6bm9uZTtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgb3BhY2l0eTokYmFjay10by10b3Atb3BhY2l0eTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgYm90dG9tOiA0MHB4O1xuICAgIHJpZ2h0OiA0MHB4O1xuICB9XG59IiwiLy8gQmFja2dyb3VuZCBoZXJvIHRpdGxlXG4vL1xuXG4uYmFja2dyb3VuZC10aXRsZS5oZXJvIHtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC10aXRsZS1oZXJvLWJnO1xuXG4gIGgxLnRpdGxlIHtcbiAgICBwYWRkaW5nOiAxNTBweCAwIDI1cHggMDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiBmbG9vcigkZm9udC1zaXplLWgxKTtcbiAgfVxuXG4gIHAudGl0bGUge1xuICAgIHBhZGRpbmc6IDE5NnB4IDAgMjVweCAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IGZsb29yKCRmb250LXNpemUtaDEpO1xuICB9XG5cbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCR4eHNtYWxsLW9ubHkpIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDc2OHB4IGF1dG87XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KCR4c21hbGwtdXApIHtcbiAgICBoMS50aXRsZSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgfVxuXG59XG5cbiIsIi8vIEJhY2tncm91bmQgdGl0bGVcbi8vXG5cbi5iYWNrZ3JvdW5kLXRpdGxlIHtcblxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMDBweCBhdXRvO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC10aXRsZS1iZztcblxuICBoMS50aXRsZSB7XG4gICAgcGFkZGluZzogNTBweCAwIDUwcHggMDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAucm93LTEtMS0xIHtcbiAgICAmOm50aC1vZi10eXBlKDIpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuXG4gICAgLmNvbC13cmFwIHtcbiAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgaDEsIGgyLCBoMywgaDQsIHNwYW4uaGVhZGluZyB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LXdlaWdodDogMjAwO1xuICAgICAgICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB9XG4gICAgICBzcGFuLmhlYWRpbmcsIHNwYW4uZGVzYyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgIH1cbiAgICAgIHNwYW4uaGVhZGluZyB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogZmxvb3IoJGZvbnQtc2l6ZS1oMyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyogQW5pbSBlZmZlY3RzICovXG5cbiAgICAuZWZmZWN0LW9uZSB7XG4gICAgICAvLyBob3ZlciBlZmZlY3RzIGFyZW4ndCByZWxldmFudCBvbiB0b3VjaCBkZXZpY2VzXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgLy9AaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCkge1xuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zNXMsIC13ZWJraXQtdHJhbnNmb3JtIDAuMzVzO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMzVzLCB0cmFuc2Zvcm0gMC4zNXM7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNTBweCwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjUwcHgsIDApO1xuICAgICAgICAvL31cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwLjE1cztcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjE1cztcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1vZi10eXBlKDIpIHtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMDVzO1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMDVzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHAge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwLjA1cztcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA1cztcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5lZmZlY3QtdHdvIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjM1cztcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzVzO1xuICAgICAgfVxuICAgICAgaDMsIHAsIHNwYW4uaGVhZGluZywgc3Bhbi5kZXNjIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMzVzIGVhc2U7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjM1cyBlYXNlO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGgzLCBwLCBzcGFuLmhlYWRpbmcsIHNwYW4uZGVzYyB7XG4gICAgICAgICAgdG9wOiAtNXB4O1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMzVzIGVhc2U7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMzVzIGVhc2U7XG4gICAgICAgIH1cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgZGl2Om50aC1vZi10eXBlKG9kZCkgLmNvbC13cmFwIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoZGFya2VuKCRwcmltYXJ5LWJhc2UtY29sb3IsIDIwJSksIDAuNSk7XG4gICAgfVxuICAgIGRpdjpudGgtb2YtdHlwZShldmVuKSAuY29sLXdyYXAge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwMDAwLCAwLjUpO1xuICAgIH1cbiAgICBkaXY6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgICAuYmctd2hpdGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCNmZmZmZmYsIDAuOCk7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYmctdHJhbnNwYXJlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcGFkZGluZzowO1xuXG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KCR4eHNtYWxsLW9ubHkpIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMDBweCBhdXRvO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KCR4c21hbGwtdXApIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMDBweCBhdXRvO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEyMzBweCBhdXRvO1xuICAgIGgxLnRpdGxlIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC1zaXplOiBmbG9vcigkZm9udC1zaXplLWgyKTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBwYWRkaW5nOiAxMjVweCAwIDEyNXB4IDA7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgaDEudGl0bGUge1xuICAgICAgcGFkZGluZzogMTI1cHggMCAxMjVweCAwO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlLXVwKSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNjAwcHggYXV0bztcbiAgICBoMS50aXRsZSB7XG4gICAgICBwYWRkaW5nOiAxNTBweCAwIDE1MHB4IDA7XG4gICAgICBmb250LXNpemU6IGZsb29yKCRmb250LXNpemUtaDEpO1xuICAgIH1cbiAgfVxuXG59XG5cbi5iZy1wYWR7XG4gICAgJjpiZWZvcmUge1xuICAgICAgcGFkZGluZzogMTQwcHggMDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwKSB7XG4gICAgICBwYWRkaW5nOiAxNzBweCAwO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2UtdXApIHtcbiAgICAgIHBhZGRpbmc6IDIyMHB4IDA7XG4gICAgICB9XG4gICAgfVxufVxuXG4uYnJhbmQtc3RyaXAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIHBhZGRpbmc6IDVweCAwO1xuICAucm93IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgLy8gYWRqdXN0IGNvbHVtbiB3aWR0aHMgc2xpZ2h0bHkgdG8gc3VpdCB0aXRsZSBjb2x1bW4gaW4gZmlyc3QgcG9zaXRpb25cbiAgICAuY29sLTEge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgIGZvbnQtc2l6ZTogZmxvb3IoJGZvbnQtc2l6ZS1oMyk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtbGctY29sdW1uKDIpO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBmb250LXNpemU6IGZsb29yKCRmb250LXNpemUtaDYpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jb2wtMiwgLmNvbC0zLCAuY29sLTQsIC5jb2wtNSwgLmNvbC02LCAuY29sLTcge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZzogMCA2MHB4O1xuICAgICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAgICAgLy8gcmUtaW5zdGF0ZSB0aGUgLmltZy1yZXNwb25zaXZlIHByb3BlcnRpZXNcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1sZy1jb2x1bW4oMS42NSk7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgIH1cbiAgICB9XG5cblxuICB9XG59XG5cblxuIiwiLy8gQnJlYWRjcnVtYnNcbi8vXG5cbi5icmVhZGNydW1iIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBCb290c3RyYXAgbWFyZ2luXG4gIHBhZGRpbmc6IDhweCA1cHg7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXG4gID4gbGkge1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWItY29sb3I7XG4gICAgfVxuXG4gICAgKyBsaTpiZWZvcmUge1xuICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQnJvd3NlIEZlYXR1cmVkIGVsZW1lbnRzXG4vL1xuXG4uZmVhdHVyZWQtbGluayB7XG4gIGltZ3tcbiAgICBtYXJnaW46MCBhdXRvO1xuICB9XG59IiwiLy8gQnJvd3NlIEZpbHRlclxuLy9cblxuI25vbWF0Y2hlcyB7XG4gIGRpc3BsYXk6bm9uZTtcbn0iLCIvLyBCdXR0b25zXG4vL1xuXG4vLyoqIEZpbHRlciBzZWFyY2ggcmVzdWx0cyBwYWdlXG4uYnRuLXNwYWNlZCB7XG4gIHBhZGRpbmctbGVmdDogMjAlO1xuICBwYWRkaW5nLXJpZ2h0OiAyMCU7XG4gIG1hcmdpbjogMTVweCAwIDAgMTVweDtcbn1cblxuLy8qKiBEaXNhYmxlZCBkZWZhdWx0IGJ1dHRvbiBib3JkZXJcbi5idG4ge1xuICBib3JkZXI6IDA7XG59XG5cbi8vKiogT3ZlcnJpZGVzIEJvb3RzdHJhcHMgYnV0dG9uLXZhcmlhbnRcbi8vICAgY29udHJvbHMgdGhlIGNvbG91ciwgYmctY29sb3VyLCA6aG92ZXIgYmctY29sb3VyXG4uYnRuLWRlZmF1bHQge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWRlZmF1bHQtY29sb3IsICRidG4tZGVmYXVsdC1iZywgJGJ0bi1kZWZhdWx0LWhvdmVyLWJnKTtcbn1cbi5idG4tcHJpbWFyeSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tcHJpbWFyeS1jb2xvciwgJGJ0bi1wcmltYXJ5LWJnLCAkYnRuLXByaW1hcnktaG92ZXItYmcpO1xufVxuLmJ0bi1jYW5jZWwge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWNhbmNlbC1jb2xvciwgJGJ0bi1jYW5jZWwtYmcsICRidG4tY2FuY2VsLWhvdmVyLWJnKTtcbn1cbi5idG4tc2Vjb25kYXJ5IHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1zZWNvbmRhcnktY29sb3IsICRidG4tc2Vjb25kYXJ5LWJnLCAkYnRuLXNlY29uZGFyeS1ob3Zlci1iZyk7XG59XG4uYnRuLXRlcnRpYXJ5IHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi10ZXJ0aWFyeS1jb2xvciwgJGJ0bi10ZXJ0aWFyeS1iZywgJGJ0bi10ZXJ0aWFyeS1ob3Zlci1iZyk7XG59XG5cbi8vKiogT3ZlcnJpZGVzIEJvb3RzdHJhcHMgYnV0dG9uLXNpemVcbi8vICAgY29udHJvbHMgcGFkZGluZywgZm9udC1zaXplLCBsaW5lLWhlaWdodCAmIGJvcmRlciByYWRpdXNcbi5idG4ge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy1iYXNlLXZlcnRpY2FsLCAkcGFkZGluZy1iYXNlLWhvcml6b250YWwsICRidG4tYmFzZS1mb250LXNpemUsICRsaW5lLWhlaWdodC1iYXNlLCAkYnRuLWJvcmRlci1yYWRpdXMtYmFzZSk7XG59XG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRidG4tbGctZm9udC1zaXplLCAkbGluZS1oZWlnaHQtbGFyZ2UsICRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZSk7XG59XG4uYnRuLXNtIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRidG4tc20tZm9udC1zaXplLCAkbGluZS1oZWlnaHQtc21hbGwsICRidG4tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG59XG4uYnRuLXhzIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRidG4teHMtZm9udC1zaXplLCAkbGluZS1oZWlnaHQtc21hbGwsICRidG4tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG59XG5cbi8vKiogQ3VzdG9tIGJ1dHRvbiB3aXRoIGljb25cbi5idG4td2l0aC1pY29uIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgZGlzcGxheTogdGFibGU7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gT3ZlcnJpZGVzIEJvb3RzdHJhcCBkZWZhdWx0IG5vLXdyYXAgcnVsZVxuXG4gIC8vKiogUG9zaXRpb25zIHRoZSBpY29uIHRvIHRoZSBlbmQgb2YgdGhlIGJ1dHRvblxuICAmLmJ0bi1ibG9jayB7XG4gICAgLmJ0bi10ZXh0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJ1dHRvbiB0ZXh0XG4gIC5idG4tdGV4dCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG5cbiAgLy8gQnV0dG9uIHRleHQgcGFkZGluZ1xuICAmLmJ0biAuYnRuLXRleHQge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICB9XG4gICYuYnRuLWxnIC5idG4tdGV4dCB7XG4gICAgcGFkZGluZzogJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgfVxuICAmLmJ0bi1zbSAuYnRuLXRleHQge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw7XG4gIH1cblxuICAvLyBCdXR0b24gaWNvbiBhZGRvblxuICAuYnRuLWljb24ge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cblxuICAvLyBCdXR0b24gaWNvbiBzaXplXG4gICYuYnRuIC5idG4taWNvbiB7XG4gICAgZm9udC1zaXplOiBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi4yODYpKTsgLy8gMzJweCAzMi8xNFxuICB9XG4gICYuYnRuLWxnIC5idG4taWNvbiB7XG4gICAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlICogMyk7IC8vIDQycHggNDIvMTRcbiAgfVxuICAmLmJ0bi1zbSAuYnRuLWljb24ge1xuICAgIGZvbnQtc2l6ZTogY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS41NzEpKTsgLy8gMjJweCAyMi8xNFxuICB9XG4gICYuYnRuIC5mYS1zZWFyY2gge1xuICAgIGZvbnQtc2l6ZTogY2VpbCgkZm9udC1zaXplLWJhc2UvMC42KTsgLy8gMjhweFxuICB9XG5cbiAgLy8gQnV0dG9uIGljb24gcGFkZGluZyAmIGJvcmRlciByYWRpdXNcbiAgJi5idG4gLmJ0bi1pY29uIHtcbiAgICBAaW5jbHVkZSBidXR0b24taWNvbi1wYWRkaW5nKDAsICgkcGFkZGluZy1iYXNlLWhvcml6b250YWwrMiksICRib3JkZXItcmFkaXVzLWJhc2UsICRib3JkZXItcmFkaXVzLWJhc2UpO1xuICB9XG4gICYuYnRuLWxnIC5idG4taWNvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWljb24tcGFkZGluZygwLCAoJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCs0KSwgJGJvcmRlci1yYWRpdXMtbGFyZ2UsICRib3JkZXItcmFkaXVzLWxhcmdlKTtcbiAgfVxuICAmLmJ0bi1zbSAuYnRuLWljb24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1pY29uLXBhZGRpbmcoMCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGJvcmRlci1yYWRpdXMtc21hbGwsICRib3JkZXItcmFkaXVzLXNtYWxsKTtcbiAgfVxuXG4gIC8vKiogQnV0dG9uIGljb24gY29sb3VyICYgYmcgY29sb3VyXG4gICYuYnRuLWRlZmF1bHQgLmJ0bi1pY29uIHtcbiAgICBAaW5jbHVkZSBidXR0b24taWNvbi12YXJpYW50KCRidG4tZGVmYXVsdC1pY29uLWNvbG9yLCAkYnRuLWRlZmF1bHQtaWNvbi1iZyk7XG4gIH1cbiAgJi5idG4tcHJpbWFyeSAuYnRuLWljb24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1pY29uLXZhcmlhbnQoJGJ0bi1pY29uLWNvbG9yLCAkYnRuLXByaW1hcnktaWNvbi1iZyk7XG4gIH1cbiAgJi5idG4tc2Vjb25kYXJ5IC5idG4taWNvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWljb24tdmFyaWFudCgkYnRuLWljb24tY29sb3IsICRidG4tc2Vjb25kYXJ5LWljb24tYmcpO1xuICB9XG4gICYuYnRuLXRlcnRpYXJ5IC5idG4taWNvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWljb24tdmFyaWFudCgkYnRuLWljb24tY29sb3IsICRidG4tdGVydGlhcnktaWNvbi1iZyk7XG4gIH1cbn1cblxuLy8qKiBCdXR0b24gTGluayB3aXRoIGljb25cbi5idG4tbGluayB7XG5cbiAgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCB0ZXh0IHVuZGVybGluZSBvbiBidXR0b24gbGlua3NcbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLmJ0bi1pY29uIHtcbiAgICBjb2xvcjogJGJ0bi1saW5rLWljb24tY29sb3I7XG4gIH1cblxuICAvLyBCdXR0b24gaWNvbiBzaXplXG4gICYuYnRuIC5idG4taWNvbiB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlOyAvLyAxOHB4XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4OyAvLyBPdmVycmlkZXMgdGhlIGRlZmF1bHQgYnV0dG9uIGljb24gcGFkZGluZ1xuICAgIGxpbmUtaGVpZ2h0OiAwLjQ7XG4gIH1cbiAgJi5idG4tbGcgLmJ0bi1pY29uIHtcbiAgICBmb250LXNpemU6IGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNTcpKTsgLy8gMjJweCAyMi8xNFxuICAgIGxpbmUtaGVpZ2h0OiAwLjg7XG4gIH1cbiAgJi5idG4tc20gLmJ0bi1pY29uIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTsgLy8gMTRweFxuICB9XG5cbiAgLy8gT3ZlcnJpZGUgbGFyZ2UgbGluayBidXR0b24gZm9udCBzaXplXG4gICYuYnRuLWxnIHtcbiAgICBmb250LXNpemU6IGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNDI4KSk7IC8vIDIwcHggMjAvMTRcbiAgfVxufVxuXG4vLyBvdmVycmlkaW5nIGJvb3RzdHJhcHMgYnV0dG9uIGJsb2NrIHBhZGRpbmcgYXMgaXQgY2Fubm90IGJlIGRvbmUgd2l0aGluIHRoZSBib290c3RyYXAgdmFyaWFibGVzIGZpbGUuXG4uYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG4iLCIvLyBFbWFpbCBqb2JzIHBhbmVsXG4vL1xuLnBhbmVsLWVtYWlsLWpvYnMge1xuXG4gIC8vIEJhY2tncm91bmQgZ3JhZGllbnRcbiAgJi5wYW5lbC1iZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGVtYWlsLWpvYnMtYmc7XG4gICAgLy9AaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkZW1haWwtam9icy1iZyA1MCUsIGRhcmtlbigkZW1haWwtam9icy1iZywgJGVtYWlsLWpvYnMtZGFya2VuKSk7XG4gIH1cblxuICAvLyBQYW5lbCBib2R5IHBhZGRpbmdcbiAgLnBhbmVsLWJvZHkge1xuICAgIC8vcGFkZGluZzogJHBhbmVsLWJvZHktcGFkZGluZztcbiAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XG5cbiAgICAvL0BpbmNsdWRlIGJyZWFrcG9pbnQoJHhzbWFsbC11cCkge1xuICAgIC8vICBwYWRkaW5nOiAkcGFuZWwtYm9keS1wYWRkaW5nKjI7XG4gICAgLy99XG4gIH1cblxuICBsYWJlbCB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogJGVtYWlsLWpvYnMtZm9udC1zaXplLXNtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHhzbWFsbC11cCkge1xuICAgICAgZm9udC1zaXplOiAkZW1haWwtam9icy1mb250LXNpemUtbGc7XG4gICAgfVxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxuXG4gIHAge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6ICRlbWFpbC1qb2JzLWZvbnQtc2l6ZS1zbS8xLjY2OyAvLyAxNXB4XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkeHNtYWxsLXVwKSB7XG4gICAgICBmb250LXNpemU6ICRlbWFpbC1qb2JzLWZvbnQtc2l6ZS1sZy8xLjY7IC8vIDE1cHhcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cCB7XG5cbiAgICAvLyBTZXRzIHdpZHRoIHRvIGlucHV0LWdyb3VwIGlmIG5lc3RlZCBpbiByb3ctMi0xID4gY29sLTFcbiAgICAucm93LTItMSAuY29sLTEgJiB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCR4c21hbGwtdXApIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmJ0biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGVtYWlsLWpvYnMtYnRuO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgfVxufVxuIiwiIC8vIEZlYXR1cmVkIFByb2plY3RzXG4vL1xuXG4uYmxvY2stZ3JpZCB7XG5cbiAgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC8vIEJsb2NrIHRpdGxlIG92ZXJsYXkgd2l0aCByb3VuZGVkIGJnXG4gICAgLmJsb2NrLXRpdGxlLW92ZXJsYXkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgLy8gSUU4IGZhbGxiYWNrXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxvY2stdGl0bGUtb3ZlcmxheS1iZztcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYmxvY2stdGl0bGUtb3ZlcmxheS1yYWRpdXM7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJsb2NrLXRpdGxlLW92ZXJsYXktcmFkaXVzO1xuICAgICAgY29sb3I6ICRibG9jay10aXRsZS1mb250LWNvbG91cjtcbiAgICAgIGZvbnQtc2l6ZTogJGJsb2NrLXRpdGxlLWZvbnQtc2l6ZTtcbiAgICAgIHBhZGRpbmc6ICRibG9jay10aXRsZS1vdmVybGF5LXBhZGRpbmc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDUlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1heC13aWR0aDogODAlO1xuICAgIH1cbiAgfVxufVxuXG4iLCIvLyBGZWF0dXJlZCBQcm9qZWN0c1xuLy9cbi5mZWF0dXJlZC1yZWNydWl0ZXItdGl0bGV7XG4gIGgxe1xuICAgIG1heC13aWR0aDo2NSU7XG4gICAgbWFyZ2luLXRvcDowO1xuICB9XG4gIHNwYW57XG4gICAgbWFyZ2luLXRvcDoxMHB4O1xuICB9XG59XG4iLCIvLyBGaWx0ZXIgbGlzdGluZ1xuLy9cblxuLmZpbHRlci1saXN0aW5nIHtcblxuICBzZWxlY3Qge1xuICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnktbGlnaHQtY29sb3I7XG5cbiAgICAmLmlucHV0LWxnIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1pY29uIHtcbiAgICBjb2xvcjogJHByaW1hcnktYmFzZS1jb2xvcjtcbiAgfVxuXG4gIC5jb2wtMiB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHhzbWFsbC11cCkge1xuICAgIC5jb2wtMSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmNvbC0yIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxufSIsIi8vIEZpbHRlciBzZWxlY3RlZFxuLy9cblxuLmFjdGl2ZS1maWx0ZXJzIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLWxlZnQ6MDtcblxuICBsaSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktbGlnaHRlcjtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgY29sb3I6ICRwcmltYXJ5LWJhc2UtY29sb3I7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IGxlZnQ7XG5cbiAgICAvLyBBbGlnbnMgc2VhcmNoIGZpbHRlcnMgaW5saW5lIGZyb20geHNtYWxsLXVwXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkeHNtYWxsLXVwKSB7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgcGFkZGluZzogNXB4O1xuICAgIH1cblxuICAgIC8vIE5vbiB0YWJsZSBjZWxsXG4gICAgLy9hIHtcbiAgICAvLyAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIC8vICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIC8vICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAvLyAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgIC8vfVxuXG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgIGNvbG9yOmluaGVyaXQ7XG4gICAgfVxuXG4gICAgJi5maWx0ZXJzLWxhYmVsIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICBzcGFuIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFRoZSBjbGVhciBhbGwgbGluayBoYXMgYSBkaWZmZXJlbnQgYmcgY29sb3VyIHRvIHRoZSBzZWxlY3RlZCBmaWx0ZXJzXG4gICAgJi5jbGVhci1hbGwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb290ZXIgbmF2XG4vL1xuXG4uZm9vdGVyLW5hdmlnYXRpb24ge1xuXG4gIC8vIFRyaWdnZXIgZWxlbWVudCBmb3IgY29sbGFwc2VcbiAgaDQge1xuICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgY29sb3I6JHByaW1hcnktZGFyay1jb2xvcjtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZm9vdGVyLW5hdi1oZWFkaW5nLWJvcmRlci1jb2xvcjtcbiAgICBhe1xuICAgICAgY29sb3I6JGZvb3Rlci1uYXYtaGVhZGxpbmstY29sb3I7XG4gICAgfVxuICAgICYgYTpob3ZlcntcbiAgICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIE5lc3RlZCBuYXZpZ2F0aW9uIGxpc3RzXG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOjA7XG5cbiAgICBsaSB7XG4gICAgICBmb250LXNpemU6JGZvb3Rlci1uYXYtZm9udC1zaXplO1xuICAgICAgcGFkZGluZzogNHB4IDA7XG4gICAgICAvL2ZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHQ7XG5cbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkYmFzZS1mb250LWNvbG9yO1xuICAgICAgfVxuXG4gICAgICBhOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gT3ZlcnJpZGUgVVggYmVoYXZpb3VyIHdoZW4gY29sbGFwc2UgYmVoYXZpb3VyIGlzIGRpc2FibGVkXG4gIC8vIGZvciBtZWRpdW0gdXAgYnJlYWtwb2ludHMgKGFwcGxpZWQgdXNpbmcgZW5xdWlyZS5qcylcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcblxuICAgIC8vIFByZXZlbnQgY3Vyc29yIGJlaW5nIGEgcG9pbnRlciBvbiBjb2xsYXBzZSB0cmlnZ2VyIGVsZW1lbnRcbiAgICBbZGF0YS10b2dnbGU9XCJjb2xsYXBzZVwiXSB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgLy8gRW5zdXJlIGNvbGxhcHNpYmxlIGNvbnRlbnQgaXMgYWx3YXlzIHNob3duIGV4cGFuZGVkXG4gICAgLmNvbGxhcHNlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8vIEZvcmNpYmx5IGhpZGUgdGhlIGljb25zXG4gICAgLmNvbGxhcHNlLWljb24ge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFNoYW1lIGxpc3QuLi5cbi5sdC1pZTkgeyAvLyBGb3IgSUUgOCBuZXZlciBzaG93IGljb25zXG4gIC5mb290ZXItbmF2aWdhdGlvbiB7XG4gICAgLmNvbGxhcHNlLWljb24ge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb290ZXIgbGVnYWxcbi8vXG5cbi5mb290ZXItbGVnYWwge1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgcCB7XG4gICAgY29sb3I6ICRiYXNlLWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBMZWdhbCBuYXZcbiAgLmZvb3Rlci1sZWdhbC1uYXYge1xuXG4gICAgbGkge1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwifFwiO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0O1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgfVxuXG4gICAgICAvLyBOYXYgbGluayBzdHlsZXNcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGJhc2UtZm9udC1jb2xvcjtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG59XG4iLCIvLyBGYXZvdXJpdGUgSm9ic1xuLy9cbi5mb3JtLWZhdm91cml0ZS1qb2JzIHtcblxuICAvLyBBZGRzIHBhZGRpbmcgYXJvdW5kIGNoZWNrYm94ZXMgYW5kIHRyYXNoIGljb25cbiAgLnNlbGVjdCxcbiAgLnJlbW92ZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuXG59IiwiLy8gRm9ybSBmaWx0ZXIgY2hlY2tib3hcbi8vXG5cbi5maWx0ZXItY2hlY2tib3gge1xuICBiYWNrZ3JvdW5kOiAkZm9ybS1maWx0ZXItY2hlY2tib3gtYmc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMCAxMHB4O1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiAkZm9ybS1maWx0ZXItY2hlY2tib3gtY29sb3I7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgbWFyZ2luOjAgMCAxNXB4IDA7XG5cbiAgLmNoZWNrYm94IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogNXB4IDA7XG5cbiAgICBpbnB1dCB7XG4gICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3JtIGZpbHRlciBpbnB1dFxuLy9cblxuLmZpbHRlci1pbnB1dCB7XG5cbiAgaW5wdXQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRmb3JtLWZpbHRlci1pbnB1dC1ib3JkZXI7XG4gICAgLy8gc3RvcCBpZTggZmllbGRzIG92ZXJmbG93aW5nIHRoZWlyIGNvbnRhaW5lciAobm90IHBlcmZlY3QgYnV0IHNhdGlzZmFjdG9yeSB0byBtYWtlIGllOCBmdW5jdGlvbmFsKS5cbiAgICBtaW4td2lkdGg6IDkwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOjAgMCAxNXB4IDA7XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuICB9XG59IiwiLy8gRm9ybSBmaWx0ZXIgY2hlY2tib3hcbi8vXG5cbi5maWx0ZXItcmFkaW8ge1xuICBiYWNrZ3JvdW5kOiAkZm9ybS1maWx0ZXItcmFkaW8tYmc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMCAxMHB4O1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiAkZm9ybS1maWx0ZXItcmFkaW8tY29sb3I7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgbWFyZ2luOjAgMCAxNXB4IDA7XG5cbiAgLnJhZGlvIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogNXB4IDA7XG5cbiAgICBpbnB1dCB7XG4gICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgfVxuICB9XG59XG4iLCIvLyBHcmF5IGNhcm91c2VsLlxuXG4jaG9tZXBhZ2UtZ3JheS1jYXJvdXNlbCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLW9ubHkpIHtcbiAgICBkaXYuc2xpY2stdHJhY2sge1xuXG4gICAgfVxuICB9XG5cbiAgZGl2LnNsaWNrLXRyYWNrIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAuc2xpY2stZG90cyBsaSxcbiAgICAuc2xpY2stZG90czphZnRlcixcbiAgICAuc2xpY2stZG90czpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC1vbmx5KSB7XG4gICAgICAuaXRlbS5zbGljay1zbGlkZS5zbGljay1jdXJyZW50LnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCkge1xuICAgICAgLml0ZW0uc2xpY2stc2xpZGUuc2xpY2stY3VycmVudC5zbGljay1hY3RpdmUge1xuICAgICAgICAvL2hlaWdodDogMzgxcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNsaWNrLWRvdHMge1xuICAgIGJvdHRvbTogM3B4O1xuICAgICY6YmVmb3JlLCAmOmFmdGVyLCBsaSB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5wYW5lbC1ib2R5IHtcbiAgICBwYWRkaW5nOiAyNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuICB9XG5cbiAgLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCAuaXRlbS1wbGFpbiB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHhzbWFsbC1vbmx5KSB7XG4gICAgLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCAuaXRlbS1wbGFpbiB7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgfVxuXG4gICAgLmNhcm91c2VsIC5jYXJvdXNlbC1pbm5lciAuc2xpY2stcHJldiB7XG4gICAgICBsZWZ0OiAxMHB4XG4gICAgfVxuICAgIC5jYXJvdXNlbCAuY2Fyb3VzZWwtaW5uZXIgLnNsaWNrLW5leHQge1xuICAgICAgcmlnaHQ6IDEwcHhcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC1vbmx5KSB7XG4gICAgLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCAuaXRlbS1wbGFpbiB7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgfVxuXG4gICAgLmNhcm91c2VsIC5jYXJvdXNlbC1pbm5lciAuc2xpY2stcHJldiB7XG4gICAgICBsZWZ0OiAxMHB4XG4gICAgfVxuICAgIC5jYXJvdXNlbCAuY2Fyb3VzZWwtaW5uZXIgLnNsaWNrLW5leHQge1xuICAgICAgcmlnaHQ6IDEwcHhcbiAgICB9XG4gIH1cblxufVxuIiwiLy8gQSByYXJlIHVzYWdlIG9mIHRoZSBmb250LXNpemUgbWl4aW5nIHdhcyBuZWNlc3NhcnkgdG8gYWNoaWV2ZSBvdmVyc2l6ZWQgcGhvbmUsIGVtYWlsIGV0Y1xuI2hlYWRlci1pbmZvcm1hdGlvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgPiAuY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC8vIG5lZWRlZCB0byBhdm9pZCByZWJ1aWxkIG9mIHdob2xlIGFyZWEuIENtcyBpbmplY3RzIGRpdiB3aXRoIGZvbGxvd2luZyBjbGFzcy4uXG4gICAgLnJlZ2lvbi1jb250YWN0LWluZm8ge1xuICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBvcmRlcjozO1xuICAgIH1cbiAgfVxuXG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBCcmFuZCBsb2dvXG4gIC5sb2dvIHtcbiAgICBAaW5jbHVkZSBtYWtlLW1kLWNvbHVtbigzKTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gQ29tcGFueSBzdHJhcC1saW5lXG4gIC5zdHJhcGxpbmUge1xuICAgIC8vQGV4dGVuZCAlaGVhZGVyLWluZm8tYmFyO1xuICAgIGNvbG9yOiAkaGVhZGVyLWluZm8tc3RyYXBsaW5lLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJGhlYWRlci1pbmZvLXN0cmFwbGluZS1mb250LXNpemUtc207XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBAaW5jbHVkZSBtYWtlLW1kLWNvbHVtbig2KTtcblxuICAgIHBhZGRpbmctdG9wOiAyMnB4O1xuICAgIHBhZGRpbmctbGVmdDogNDBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlLXVwKSB7XG4gICAgICBmb250LXNpemU6ICRoZWFkZXItaW5mby1zdHJhcGxpbmUtZm9udC1zaXplLWxnO1xuICAgICAgcGFkZGluZy10b3A6IDI3cHg7XG4gICAgfVxuICB9XG5cbiAgLmNvbnRhY3QtaW5mbyB7XG4gICAgLy9AaW5jbHVkZSBtYWtlLW1kLWNvbHVtbigzKTtcbiAgICB3aWR0aDphdXRvO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgLnBob25lIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogJGhlYWRlci1pbmZvLXBob25lLWNvbG9yO1xuICAgICAgZm9udC1zaXplOiAkaGVhZGVyLWluZm8tcGhvbmUtZm9udC1zaXplLXNtO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCkge1xuICAgICAgICBmb250LXNpemU6ICRoZWFkZXItaW5mby1waG9uZS1mb250LXNpemUtbGc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmVtYWlsIHtcbiAgICAgIGZvbnQtc2l6ZTogJGhlYWRlci1pbmZvLWVtYWlsLWZvbnQtc2l6ZS1zbTtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLWluZm8tZW1haWwtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlLXVwKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGhlYWRlci1pbmZvLWVtYWlsLWZvbnQtc2l6ZS1sZztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZmEge1xuICAgICAgY29sb3I6ICRoZWFkZXItaW5mby1pY29uLWNvbG9yO1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgfVxuICB9XG59XG5cbi8vIHNoYW1lLCBzaGFtZSwgc2hhbWVcbi8vIGllOCBkb2Vzbid0IHN1cHBvcnQgcmVtIHZhbHVlc1xuLy8gc3RyaXBwaW5nIHVuaXRzIGRvZXNuJ3QgcHJvZHVjZSBzaW1pbGFyIHJlc3VsdHMgdG8gcmVtcyBzbyBoYXZlIHRvIHJlc2V0IHRvIGxvd2VyIHZhbHVlc1xuLmx0LWllOSAjaGVhZGVyLWluZm9ybWF0aW9uIHtcblxuICAuc3RyYXBsaW5lIHtcbiAgICAvL0BpbmNsdWRlIGZvbnQtc2l6ZSgxOCk7XG4gIH1cblxuICAuY29udGFjdC1pbmZvIHtcblxuICAgIC5waG9uZSB7XG4gICAgICAvL0BpbmNsdWRlIGZvbnQtc2l6ZSgyNSk7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlLXVwKSB7XG4gICAgICAgIC8vQGluY2x1ZGUgZm9udC1zaXplKDM1KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZW1haWwge1xuICAgICAgLy9AaW5jbHVkZSBmb250LXNpemUoMTcpO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCkge1xuICAgICAgICAvL0BpbmNsdWRlIGZvbnQtc2l6ZSgyMyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBIZXJvIEJhY2tncm91bmQgSW1hZ2UgQmxvY2tcblxuLmhlcm8tYmctaW1nIHtcblxuICAuaGVyby1iZy1pbWdfX292ZXJsYXkge1xuXG4gICAgJi0tY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IHN0YXJ0OyAvLyBsZWZ0IGFsaWducyB0ZXh0IGFzIGRlZmF1bHRcblxuICAgICAgLy8gY2VudGVyIGFsaWduIGNvbnRlbnRcbiAgICAgICYtY2VudGVyIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICAvLyAyIGNvbHVtbiBsYXlvdXRcbiAgICAgIC8vIC0gY29sdW1ucyBhcmUgc3RhY2tlZCBmb3IgbW9iaWxlXG4gICAgICAvLyAtIGNvbHVtbnMgYXJlIGFsaWduZWQgaG9yaXpvbnRhbGx5IGZvciBkZXNrdG9wXG4gICAgICAmLTItY29scyB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyAzIGNvbHVtbiBsYXlvdXRcbiAgICAgIC8vIC0gY29sdW1ucyBhcmUgc3RhY2tlZCBmb3IgbW9iaWxlXG4gICAgICAvLyAtIGNvbHVtbnMgYXJlIGFsaWduZWQgaG9yaXpvbnRhbGx5IGZvciBkZXNrdG9wXG4gICAgICAmLTMtY29scyB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1jb2wge1xuICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tY29sOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gSGVybyBCYWNrZ3JvdW5kIFZpZGVvIEJsb2NrXG5cbi5oZXJvLWJnLXZpZGVvIHtcblxuICAuaGVyby1iZy12aWRlb19fd3JhcHBlciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvLyBmaXhlZCBoZWlnaHQgZm9yIHZpZGVvcyBvbiBkZXNrdG9wXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgICBoZWlnaHQ6IDUwMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5oZXJvLWJnLXZpZGVvX19pZnJhbWUge1xuICAgIHBhZGRpbmc6IDU2LjI1JSAwIDAgMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuaGVyby1iZy12aWRlb19fb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcblxuICAgIC8vIHVzZWQgaWYgYSBpbmxpbmUgYmFja2dyb3VuZCBpbWFnZSBpcyB1c2VkXG4gICAgJi0td2l0aC1iZy1pbWcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IHN0YXJ0OyAvLyB0ZXh0IGlzIGFsaWduZWQgbGVmdCBieSBkZWZhdWx0XG5cbiAgICAgIC8vIGNlbnRlciBhbGlnbiBjb250ZW50XG4gICAgICAmLWNlbnRlciB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgLy8gMiBjb2x1bW4gbGF5b3V0XG4gICAgICAvLyAtIGNvbHVtbnMgYXJlIHN0YWNrZWQgZm9yIG1vYmlsZVxuICAgICAgLy8gLSBjb2x1bW5zIGFyZSBhbGlnbmVkIGhvcml6b250YWxseSBmb3IgZGVza3RvcFxuICAgICAgJi0yLWNvbHMge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gMyBjb2x1bW4gbGF5b3V0XG4gICAgICAvLyAtIGNvbHVtbnMgYXJlIHN0YWNrZWQgZm9yIG1vYmlsZVxuICAgICAgLy8gLSBjb2x1bW5zIGFyZSBhbGlnbmVkIGhvcml6b250YWxseSBmb3IgZGVza3RvcFxuICAgICAgJi0zLWNvbHMge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXApIHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tY29sIHtcbiAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXApIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWNvbDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEpvYiBhY3Rpb25zXG4vL1xuXG4uam9iLWFjdGlvbnMge1xuXG4gIC5jb2wtMiB7XG4gICAgbWFyZ2luLXRvcDogMDtcblxuICAgIC5saXN0LXV0aWxzIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5saXN0LXNoYXJlIHtcbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIH1cbiAgfVxufSIsIi8vIEpvYiBvcHRpb25zXG4vL1xuXG4uam9iLW9wdGlvbnMge1xuXG4gIC8vIG92ZXJyaWRlIHRoZSBiYXNlIGxheW91dCBzZXR0aW5ncyBmb3IgdGhpcyBhcmVhIG9ubHlcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLW9ubHkpIHtcbiAgICAuY29sLTEsIC5jb2wtMiB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cbiAgfVxuXG4gIC50YWJsZS1wcmltYXJ5IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLy8gU2F2ZSwgRW1haWwgJiBTTVMgc2VydmljZXNcbiAgLmxpc3QtdXRpbHMge1xuICAgIC8vZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG1hcmdpbi10b3A6MTBweDtcblxuICAgIGxpIHtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IGRhcmtlbigkYnJhbmQtcHJpbWFyeSwgMTAlKTtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcblxuICAgICAgICB9XG5cbiAgICAgICAgLmFkZC10by1zaG9ydGxpc3Qge1xuICAgICAgICAgICYuc2VsZWN0ZWQge1xuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkaWNvbi1zaG9ydGxpc3Qtc2VsZWN0ZWQtY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTb2NpYWwgaWNvbnMgcG9zaXRpb25cbiAgLmxpc3Qtc2hhcmUge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG5cbn0iLCIvLyBMaXN0aW5nIGhlYWRpbmdcbi8vXG5cbi5saXN0aW5nLWhlYWRpbmcge1xuXG4gIC5saXN0aW5nLXRpdGxlIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwKSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gIH1cblxuICAvLyBMaXN0IHV0aWxzIGluY2x1ZGVzIFJTUywgRW1haWwgYW5kIFNhdmUgc2VydmljZXNcbiAgLmxpc3QtdXRpbHMge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgbGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQ7XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgZm9udC1zaXplOiBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjU3MSkpOyAvLyAyMnB4IDIyLzE0XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwKSB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiLy8gTGlzdGluZ1xuLy9cblxuLmpvYi1saXN0aW5ncyB7XG5cbiAgLmxpc3Rpbmcge1xuXG4gICAgLy8gQSBwcm9tb3RlZCBsaXN0aW5nIHdpbGwgaW5oZXJpdCBhIGxpZ2h0LWJsdWUgYmcgdG8gaGlnaGxpZ2h0IGZyb20gYSBzdGFuZGFyZCBsaXN0aW5nXG4gICAgJi5wcm9tb3RlZCB7XG5cbiAgICAgIC5saXN0aW5nLWhlYWRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcm9tby1saXN0aW5nLWhlYWRlci1iZztcbiAgICAgIH1cblxuICAgICAgLmxpc3RpbmctY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcm9tby1saXN0aW5nLWNvbnRlbnQtYmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTGlzdGluZyBoZWFkZXIgY29udGFpbnMgdGhlIEgzLCBsYWJlbHMgYW5kIGFkZC10by1zaG9ydGxpc3QgaWNvblxuICAgIC5saXN0aW5nLWhlYWRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdGluZy1oZWFkZXItYmc7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA1NXB4OyAvLyBTdG9wcyB0aGUgdGl0bGUgYmVpbmcgb3ZlcmxhcHBlZCBieSB0aGUgYWRkLXRvLXNob3J0bGlzdCBzdGFyIGljb25cbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgIGgzIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDE1cHg7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTokZm9udC1zaXplLWxpc3RpbmctaGVhZGluZztcbiAgICAgICAgICBjb2xvcjokcHJvbW8tbGlzdGluZy1oZWFkZXItY29sb3I7XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCR4c21hbGwtdXApIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGFiZWwge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHByb21vLWxpc3RpbmctbGFiZWw7IC8vIDE2cHggMTYvMTRcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgIHBhZGRpbmc6ICRsaXN0aW5nLWhlYWRlci1sYWJlbC1wYWRkaW5nO1xuICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgIHRvcDokcHJvbW8tbGlzdGluZy1sYWJlbC10b3A7XG5cbiAgICAgICAgICArIC5sYWJlbCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNnB4OyAvLyBJbmNsdWRlcyB0aGUgNHB4IGlubGluZS1ibG9jayBzcGFjZS4gTWFyZ2luLWxlZnQgPSAxMHB4XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxhYmVsLXByb21vdGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGFiZWwtcHJvbW90ZWQtYmc7XG4gICAgICAgIH1cbiAgICAgICAgLmxhYmVsLWp1c3RhZGRlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxhYmVsLWp1c3RhZGRlZC1iZztcbiAgICAgICAgfVxuICAgICAgICAubGFiZWwtZmVhdHVyZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsYWJlbC1mZWF0dXJlZC1iZztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBBZGQgdG8gc2hvcnRsaXN0IGljb25cbiAgICAgIC5hZGQtdG8tc2hvcnRsaXN0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFkZC10by1zaG9ydGxpc3QtYmc7XG4gICAgICAgIGNvbG9yOiAkYWRkLXRvLXNob3J0bGlzdC1jb2xvcjtcbiAgICAgICAgcGFkZGluZzogJGFkZC10by1zaG9ydGxpc3QtcGFkZGluZztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCkge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGkge1xuICAgICAgICAgIGNvbG9yOiAkaWNvbi1zaG9ydGxpc3QtY29sb3I7XG4gICAgICAgICAgZm9udC1zaXplOiBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjU3MSkpOyAvLyAyMnB4IDIyLzE0XG4gICAgICAgIH1cblxuICAgICAgICAvLyBUaGUgLnNlbGVjdGVkIGNsYXNzIGFwcGxpZXMgYSBmaWxsIGNvbG91ciB0byB0aGUgaWNvbiBhZnRlciBiZWluZyBjbGlja2VkXG4gICAgICAgICYuc2VsZWN0ZWQge1xuICAgICAgICAgIGkge1xuICAgICAgICAgICAgY29sb3I6ICRpY29uLXNob3J0bGlzdC1zZWxlY3RlZC1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgIH1cblxuICAgIC5saXN0aW5nLWNvbnRlbnQge1xuICAgICAgZm9udC1zaXplOiBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjE0MikpOyAvLyAxNnB4IDE2LzE0XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuXG4gICAgICB1bCB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1kYXJrLWNvbG9yO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgIGxpIHtcblxuICAgICAgICAgIC8vIExpc3QgaWNvbnNcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS40MjgpKTsgLy8gMjBweCAyMC8xNFxuICAgICAgICAgICAgd2lkdGg6ICgxOGVtIC8gMTQpO1xuICAgICAgICAgICAgY29sb3I6ICRncmF5LW1saWdodDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBDdXN0b20gRm9udCBBd2Vzb21lIGNsYXNzZXNcbiAgICAgICAgICAmLmZhLXJlZjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJGZhLXZhci1wZW5jaWw7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gZ2VuZXJpYyByYXRlXG4gICAgICAgICAgJi5mYS1yYXRlOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAkZmEtdmFyLW1vbmV5O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuZmEtcmF0ZS1nYnA6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRmYS12YXItZ2JwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuZmEtcmF0ZS11c2Q6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRmYS12YXItdXNkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuZmEtcmF0ZS1ldXI6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRmYS12YXItZXVyO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuZmEtbG9jYXRpb246YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRmYS12YXItbWFwLW1hcmtlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbXBhbnktbG9nbyB7XG4gICAgICAgIHBhZGRpbmctdG9wOjIwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgICAgICAgIGZsb2F0OnJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cbn1cblxuXG4iLCIvLyBNYXNvbnJ5IGdyaWRcbi8vXG5cbi5tYXNvbnJ5LWdyaWQge1xuXG4gIC8vIEFkZCB2ZXJ0aWNhbCBzcGFjaW5nIGJldHdlZW4gY29sdW1ucyBhdCBzbWFsbCBvbmx5IHNjcmVlbnNcbiAgLmNvbC12LW1hcmdpbiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtb25seSkge1xuICAgICAgbWFyZ2luLXRvcDogJGdyaWQtZ3V0dGVyLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gTWFzb25yeSBibG9ja3NcbiAgLm1hc29ucnktYmxvY2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWxpZ2h0LWNvbG9yO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDIzMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXApIHtcbiAgICAgIGhlaWdodDogMTM1cHg7XG4gICAgfVxuXG4gICAgLy8gQmxvY2sgdGl0bGUgb3ZlcmxheSB3aXRoIHJvdW5kZWQgYmdcbiAgICAuYmxvY2stdGl0bGUtb3ZlcmxheSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyAvLyBJRTggZmFsbGJhY2tcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibG9jay10aXRsZS1vdmVybGF5LWJnO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRibG9jay10aXRsZS1vdmVybGF5LXJhZGl1cztcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYmxvY2stdGl0bGUtb3ZlcmxheS1yYWRpdXM7XG4gICAgICBmb250LXNpemU6ICRtYXNvbnJ5LWZvbnQtc2l6ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkYmxvY2stdGl0bGUtZm9udC13ZWlnaHQ7XG4gICAgICBjb2xvcjogJGJsb2NrLXRpdGxlLWZvbnQtY29sb3VyO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHBhZGRpbmc6ICRibG9jay10aXRsZS1vdmVybGF5LXBhZGRpbmc7XG4gICAgICBtYXgtd2lkdGg6IDkwJTtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXNpemU6ICRtYXNvbnJ5LXNwYW4tZm9udC1zaXplO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIgLmJsb2NrLXRpdGxlLW92ZXJsYXkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgLy8gSUU4IGZhbGxiYWNrXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxvY2stdGl0bGUtb3ZlcmxheS1iZy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICAvLyBNYXNvbnJ5IHRhbGwgYmxvY2tzXG4gIC5tYXNvbnJ5LWJsb2NrLXRhbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJhc2UtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXApIHtcbiAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgfVxuICB9XG5cbiAgLy8gTWFzb25yeSBiZyBpbWFnZXMgZm9yIGFsbCBtYXNvbnJ5IGJsb2Nrc1xuICAubWFzb25yeS1ibG9jay0xIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJG1hc29ucnktYmctaW1nKSBuby1yZXBlYXQgMCBjZW50ZXI7IC8vIEZhbGwtYmFjayBvcmlnaW5hbCBiZyBpbWcgc2l6ZVxuICAgIEBpbmNsdWRlIGltYWdlLTE1eCgkbWFzb25yeS1iZy1pbWcsIDQ4MHB4LCA3MjdweCk7IC8vIFJldGluYSBiZyBpbWcgQDEuNXggc2l6ZVxuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgfVxuICAubWFzb25yeS1ibG9jay0yIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJG1hc29ucnktYmctaW1nKSBuby1yZXBlYXQgMCBjZW50ZXI7IC8vIEZhbGwtYmFjayBvcmlnaW5hbCBiZyBpbWcgc2l6ZVxuICAgIEBpbmNsdWRlIGltYWdlLTE1eCgkbWFzb25yeS1iZy1pbWcsIDQ4MHB4LCA3MjdweCk7IC8vIFJldGluYSBiZyBpbWcgQDEuNXggc2l6ZVxuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgfVxuICAubWFzb25yeS1ibG9jay0zIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJG1hc29ucnktYmctaW1nKSBuby1yZXBlYXQgMCBjZW50ZXI7IC8vIEZhbGwtYmFjayBvcmlnaW5hbCBiZyBpbWcgc2l6ZVxuICAgIEBpbmNsdWRlIGltYWdlLTE1eCgkbWFzb25yeS1iZy1pbWcsIDQ4MHB4LCA3MjdweCk7IC8vIFJldGluYSBiZyBpbWcgQDEuNXggc2l6ZVxuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgfVxuICAubWFzb25yeS1ibG9jay00IHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJG1hc29ucnktYmctaW1nKSBuby1yZXBlYXQgMCBjZW50ZXI7IC8vIEZhbGwtYmFjayBvcmlnaW5hbCBiZyBpbWcgc2l6ZVxuICAgIEBpbmNsdWRlIGltYWdlLTE1eCgkbWFzb25yeS1iZy1pbWcsIDQ4MHB4LCA3MjdweCk7IC8vIFJldGluYSBiZyBpbWcgQDEuNXggc2l6ZVxuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgfVxuICAubWFzb25yeS1ibG9jay01IHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJG1hc29ucnktYmctaW1nKSBuby1yZXBlYXQgMCBjZW50ZXI7IC8vIEZhbGwtYmFjayBvcmlnaW5hbCBiZyBpbWcgc2l6ZVxuICAgIEBpbmNsdWRlIGltYWdlLTE1eCgkbWFzb25yeS1iZy1pbWcsIDQ4MHB4LCA3MjdweCk7IC8vIFJldGluYSBiZyBpbWcgQDEuNXggc2l6ZVxuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgfVxuICAubWFzb25yeS1ibG9jay02IHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJG1hc29ucnktYmctaW1nKSBuby1yZXBlYXQgMCBjZW50ZXI7IC8vIEZhbGwtYmFjayBvcmlnaW5hbCBiZyBpbWcgc2l6ZVxuICAgIEBpbmNsdWRlIGltYWdlLTE1eCgkbWFzb25yeS1iZy1pbWcsIDQ4MHB4LCA3MjdweCk7IC8vIFJldGluYSBiZyBpbWcgQDEuNXggc2l6ZVxuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgfVxufVxuXG4vLyBTbWFsbCBNYXNvbnJ5IGdyaWRcbi8vXG4ubWFzb25yeS1ncmlkLXNtYWxsIHtcblxuICAvLyBNYXNvbnJ5IGJsb2Nrc1xuICAubWFzb25yeS1ibG9jayB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXApIHtcbiAgICAgIGhlaWdodDogODVweDtcbiAgICB9XG5cbiAgICAvLyBCbG9jayB0aXRsZSBvdmVybGF5IHdpdGggcm91bmRlZCBiZyBmaWxsXG4gICAgLmJsb2NrLXRpdGxlLW92ZXJsYXkge1xuICAgICAgcGFkZGluZzogJGJsb2NrLXRpdGxlLW92ZXJsYXktcGFkZGluZztcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJG1hc29ucnktZm9udC1zaXplLXNtYWxsO1xuICAgICAgICBwYWRkaW5nOiAkYmxvY2stdGl0bGUtb3ZlcmxheS1wYWRkaW5nLXNtYWxsO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2UtdXApIHtcbiAgICAgICAgZm9udC1zaXplOiAoJG1hc29ucnktZm9udC1zaXplLXNtYWxsKzIpO1xuICAgICAgfVxuXG4gICAgICBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkbWFzb25yeS1zcGFuLWZvbnQtc2l6ZS1zbWFsbDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogKCRtYXNvbnJ5LXNwYW4tZm9udC1zaXplLXNtYWxsKzIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTWFzb25yeSB0YWxsIGJsb2Nrc1xuICAubWFzb25yeS1ibG9jay10YWxsIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICB9XG4gIH1cbn1cblxuIiwiLy8gQWx0ZXJuYXRpdmUgbmF2XG4vL1xuI25hdi1wcmltYXJ5LmFsdGVybmF0aXZlIHtcblxuICAvL2JhY2tncm91bmQ6ICRuYXZpZ2F0aW9uLWFsdC1iZy1zbWFsbDtcbiAgYmFja2dyb3VuZDogIzhhOGE4ZTtcblxuICAubG9nbyB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgLmltZy1yZXNwb25zaXZlIHtcbiAgICAgIHdpZHRoOiAxMzBweDtcbiAgICB9XG4gIH1cblxuICAmLnN0dWNrIHtcbiAgICAubG9nbyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAuaW1nLXJlc3BvbnNpdmUge1xuICAgICAgICB3aWR0aDogMTMwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5hdiB7XG4gICAgcGFkZGluZzogMCAwIDAgNXB4O1xuXG4gICAgPiBsaSB7XG5cbiAgICAgIC8vIHB1dHMgYSBkaXZpZGVyIGJldHdlZW4gbWFpbiBuYXZpZ2F0aW9uIGVsZW1lbnRzXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgLy9jb2xvcjogJG5hdmlnYXRpb24tYWx0LWNvbG9yO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgIH1cblxuICAgICAgPiBhIHtcbiAgICAgICAgLy9jb2xvcjogJG5hdmlnYXRpb24tYWx0LWNvbG9yO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiBmbG9vcigkZm9udC1zaXplLWg2KTtcbiAgICAgICAgcGFkZGluZy10b3A6IDVweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgJjpob3ZlciwgJjphY3RpdmUge1xuICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJG5hdmlnYXRpb24tYWx0LWJnLWFjdGl2ZTtcbiAgICAgICAgICAvL2JvcmRlci1jb2xvcjogJG5hdmlnYXRpb24tYWx0LWJvcmRlci1jb2xvcjtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgJi5hY3RpdmUsICYuYWN0aXZlLXRyYWlsIHtcbiAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICM2NjY7XG4gICAgICAgICAgLy9ib3JkZXItY29sb3I6ICM2NjY7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYub3BlbiB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkbmF2aWdhdGlvbi1hbHQtYmctYWN0aXZlO1xuICAgICAgICAgIC8vYm9yZGVyLWNvbG9yOiAkbmF2aWdhdGlvbi1hbHQtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWJhc2UtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAmLmNvbGxhcHNlIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cblxuICAmLnN0dWNrIHtcbiAgICAvL2JhY2tncm91bmQ6ICRuYXZpZ2F0aW9uLWFsdC1iZy1zbWFsbDtcbiAgICBiYWNrZ3JvdW5kOiAjOGE4YThlO1xuICB9XG5cbiAgLm5hdi1hcmVhIHtcbiAgICAuZmEge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG5cbiAgLnN1Yi1hcmVhIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjhmOGY4O1xuXG4gICAgLm5hdiB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICA+IGxpIHtcblxuICAgICAgICA+IGEge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgICBmb250LXNpemU6IGZsb29yKCRmb250LXNpemUtaDUpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDI1cHg7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJi5hY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWJhc2UtY29sb3I7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRncmF5LXhsaWdodDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktYmFzZS1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGdyYXkteGxpZ2h0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgICAuZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIC5jYXJldCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgICAgIHRvcDogMzNweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1iYXNlLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIHJlLWl0ZXJhdGluZyB0aGUgYm9vdHN0cmFwIGNsYXNzIGFzIG5vdCBzcGVjaWZpYyBlbm91Z2ggaW4gdGhpcyB1c2UgY2FzZS5cbiAgICAgIC5kcm9wZG93bi1tZW51LXJpZ2h0IHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cbiIsIi8vIEFsdGVybmF0aXZlIG5hdlxuLy9cbiNuYXYtcHJpbWFyeS5jbGllbnQge1xuXG4gIC5sb2dvIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAuaW1nLXJlc3BvbnNpdmUge1xuICAgICAgd2lkdGg6IDE3MHB4O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnN0dWNrIC5sb2dvIHtcbiAgICAuaW1nLXJlc3BvbnNpdmUge1xuICAgICAgd2lkdGg6IDE3MHB4O1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXApIHtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmLmNvbGxhcHNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmhvdGRvZy1uYXYge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogbGVmdDtcblxuICAgIC5mYSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLWNvbGxhcHNlIHtcblxuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAubmF2IHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgPiBsaSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgPiBhIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gICAgICB9XG4gICAgfVxuICAgICYuY29sbGFwc2V7XG4gICAgICBmbG9hdDpyaWdodDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCkge1xuXG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIC5uYXYge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgY2xlYXI6IG5vbmU7XG4gICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICAgIC5uYXYge1xuICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNvbGxhcHNlLmluLCAmLmNvbGxhcHNlLmNvbGxhcHNpbmcge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gIC5ob3Rkb2ctbmF2IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nOiA0MHB4IDVweCA0MHB4IDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2UtdXApIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLm5hdiB7XG4gICAgPiBsaSB7XG4gICAgICA+IGEge1xuICAgICAgICAvL2NvbG9yOiAkbmF2aWdhdGlvbi1hbHQtY29sb3I7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zdWItYXJlYSB7XG4gICAgYmFja2dyb3VuZDogIzAwNTA3ZjtcbiAgICAubmF2IHtcbiAgICAgID4gbGkge1xuICAgICAgICA+IGEge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlLXVwKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgLmNhcmV0IHtcbiAgICAgICAgICB0b3A6IDQ5cHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG59XG5cbiIsIi8vIFByaW1hcnkgbmF2XG4vL1xuI25hdi1wcmltYXJ5LFxuLm5hdi1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogJG5hdmlnYXRpb24tcHJpbWFyeS1iZy1zbWFsbDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRuYXZpZ2F0aW9uLXByaW1hcnktYm9yZGVyLWNvbG9yO1xuXG4gIC5zaG93bi1zdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYuc3R1Y2sge1xuICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4ICRncmF5O1xuICAgIGJhY2tncm91bmQ6ICRuYXZpZ2F0aW9uLXByaW1hcnktYmctc21hbGw7XG5cbiAgICAubG9nbyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgd2lkdGg6IDA7XG5cbiAgICAgIC5pbWctcmVzcG9uc2l2ZSB7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEzMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oaWRkZW4tc3Qge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuc2hvd24tc3Qge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgIGJhY2tncm91bmQ6ICRuYXZpZ2F0aW9uLXByaW1hcnktYmctbWVkaXVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAkbmF2aWdhdGlvbi1wcmltYXJ5LWZvbnQtc2l6ZS1zbWFsbDtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCkge1xuICAgIGZvbnQtc2l6ZTogJG5hdmlnYXRpb24tcHJpbWFyeS1mb250LXNpemUtbWVkaXVtO1xuICB9XG5cbiAgLy8uaG90ZG9nLW5hdixcbiAgLy8ubG9nbyxcbiAgLy8uc3RyYXBsaW5lIHtcbiAgLy8gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLy8gIGZsb2F0OiBsZWZ0O1xuICAvL1xuICAvLyAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgLy8gICAgZGlzcGxheTogbm9uZTtcbiAgLy8gIH1cbiAgLy99XG5cbiAgLmhvdGRvZy1uYXYge1xuICAgIHBhZGRpbmc6IDE1cHggMCAxMHB4IDA7XG5cbiAgICAuZmEge1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXhsYXJnZTtcbiAgICB9XG4gIH1cblxuICAvLyBDb21wYW55IHN0cmFwLWxpbmVcbiAgLnN0cmFwbGluZSB7XG4gICAgY29sb3I6ICRoZWFkZXItaW5mby1zdHJhcGxpbmUtY29sb3Itc207XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXApIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gQnJhbmQgbG9nb1xuICAubG9nbyB7XG4gICAgQGV4dGVuZCAlaGVhZGVyLWxvZ287XG4gIH1cblxuICAuZmEge1xuICAgIGJvdHRvbTogLTJweDtcbiAgICBjb2xvcjogJG5hdmlnYXRpb24tcHJpbWFyeS1pY29uLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogLTRweDtcbiAgfVxuXG4gIC8vLm5hdmJhci1jb2xsYXBzZSB7XG4gIC8vICBwYWRkaW5nOiAwO1xuICAvL1xuICAvLyAgJi5jb2xsYXBzZSB7XG4gIC8vICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgLy8gICAgZmxvYXQ6IGxlZnQ7XG4gIC8vXG4gIC8vICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gIC8vICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIC8vICAgIH1cbiAgLy8gIH1cbiAgLy99XG5cbiAgLm5hdiB7XG4gICAgcGFkZGluZzogMCAwIDAgNXB4O1xuXG4gICAgPiBsaSB7XG5cbiAgICAgIC8vIHB1dHMgYSBkaXZpZGVyIGJldHdlZW4gbWFpbiBuYXZpZ2F0aW9uIGVsZW1lbnRzXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29sb3I6ICRuYXZpZ2F0aW9uLXByaW1hcnktY29sb3I7XG4gICAgICAgIGNvbnRlbnQ6ICRuYXZpZ2F0aW9uLXByaW1hcnktZGl2aWRlcjtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgLTRweDtcbiAgICAgIH1cblxuICAgICAgJjpudGgtbGFzdC1jaGlsZCgyKTphZnRlcixcbiAgICAgICY6bnRoLWxhc3QtY2hpbGQoMSk6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgfVxuXG4gICAgICA+IGEge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAtNXB4O1xuICAgICAgICBjb2xvcjogJG5hdmlnYXRpb24tcHJpbWFyeS1jb2xvcjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCkge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciwgJjphY3RpdmUsICYuYWN0aXZlLCAmLmFjdGl2ZS10cmFpbCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmlnYXRpb24tcHJpbWFyeS1iZy1hY3RpdmU7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2aWdhdGlvbi1wcmltYXJ5LWJvcmRlci1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm9wZW4ge1xuICAgICAgICA+IGEge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZpZ2F0aW9uLXByaW1hcnktYmctYWN0aXZlO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJG5hdmlnYXRpb24tcHJpbWFyeS1ib3JkZXItY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBvdmVycmlkaW5nIHN0YXR1cy5zY3NzXG4gICAgLmRpc2FibGVkIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgbGVmdDogLTRweDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6JG5hdmlnYXRpb24tcHJpbWFyeS1iZy1zbWFsbDtcbiAgICAgIGF7XG4gICAgICAgIGNvbG9yOiRuYXZpZ2F0aW9uLXByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwcyBkcm9wZG93biBmb250IHNpemVzIGFyZSBzZXQgc2VwYXJhdGVseSBmcm9tIHRoZSBwYXJlbnQgbGV2ZWwgbWVudSBpdGVtcyBzbyBoYXZlIHRvIGJlIG92ZXJyaWRkZW5cbiAgICAvLyBUaGUgZm9sbG93aW5nIHJ1bGUgaXMgZXhlY3V0ZWQgYXQgcm9vdCBsZXZlbCBhbmQgb3ZlcnJpZGVzIGFsbCBkcm9wZG93bnNcbiAgICBAYXQtcm9vdCAuZHJvcGRvd24tbWVudSB7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICBwYWRkaW5nLXRvcDowO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDEycHggMTJweCByZ2JhKDAsIDAsIDAsIC4xNzUpKTtcblxuICAgICAgPiBsaSB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgICAgICAgIHBhZGRpbmctdG9wOjEwcHg7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206MTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmRpdmlkZXJ7XG4gICAgICAgIG1hcmdpbjowO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRuYXZpZ2F0aW9uLXN1Yi1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duOmhvdmVyIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC8vIFVzZXIgbmF2XG4gIC8vIFRoaXMgbmF2IGNvbnRhaW5zIHJlZ2lzdGVyLCBsb2dpbiwgZmF2b3VyaXRlIGFuZCBzaG9ydGxpc3RcbiAgLnVzZXItbmF2IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgLm5hdiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0oJGdyaWQtZ3V0dGVyLXdpZHRoLzIpO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXApIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuXG4gICAgICBmb250LXNpemU6IDFweDtcblxuICAgICAgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAkbmF2aWdhdGlvbi1wcmltYXJ5LWRpdmlkZXI7XG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNvbG9yOiAkbmF2aWdhdGlvbi11c2VyLWRpdmlkZXItY29sb3I7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodDtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1sYXN0LWNoaWxkKDEpOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXApIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRuYXZpZ2F0aW9uLXByaW1hcnktZGl2aWRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IGEge1xuICAgICAgICAgIHBhZGRpbmc6IDE4cHggMTVweCAxMXB4IDE1cHg7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRub3QtbGFyZ2UpIHtcbiAgICAgICAgICAmLmxvZ2luLXJlZ2lzdGVyIHtcbiAgICAgICAgICAgICYgYSA+IHNwYW4ge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlLXVwKSB7XG4gICAgICAgICAgJi5sb2dpbi1yZWdpc3RlciB7XG5cbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJG5hdmlnYXRpb24tcHJpbWFyeS1mb250LXNpemUtbWVkaXVtO1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAxNXB4IDE2cHggMTVweDtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZpZ2F0aW9uLXVzZXItYmc7XG5cbiAgICAgICAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2aWdhdGlvbi11c2VyLWJnLWFjdGl2ZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucmVnaXN0ZXIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJG5hdmlnYXRpb24tcHJpbWFyeS1mb250LXNpemUtc21hbGw7XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkbmF2aWdhdGlvbi1wcmltYXJ5LWZvbnQtc2l6ZS1tZWRpdW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIH1cblxuICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDE1cHggMTZweCAxNXB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2aWdhdGlvbi11c2VyLWJnO1xuXG4gICAgICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmlnYXRpb24tdXNlci1iZy1hY3RpdmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmFkZC10by1zaG9ydGxpc3Qge1xuICAgICAgICAgICYuc2VsZWN0ZWQge1xuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkaWNvbi1zaG9ydGxpc3Qtc2VsZWN0ZWQtY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gRHJvcGRvd24gc3VibWVudSBpbiBhIG5hdiBsaXN0IGl0ZW1cbiAgLy9cbiAgLmRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5mYSB7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgICBjb2xvcjogJG5hdmlnYXRpb24tcHJpbWFyeS1jb2xvcjtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIGxlZnQ6IDVweDtcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tc3VibWVudSA+IC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogLTRweDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJhY2tncm91bmQ6JG5hdmlnYXRpb24tcHJpbWFyeS1iZy1zbWFsbDtcbiAgfVxuXG4gIC5kcm9wZG93bi1zdWJtZW51ID4gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogLTJweDtcbiAgICBsZWZ0OiAxMDAlO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgfVxuXG4gIC5kcm9wZG93bi1zdWJtZW51OmhvdmVyID4gLmRyb3Bkb3duLW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8vIE1haW4gbmF2IHdpbGwgZGlzcGxheSB0aGUgb2ZmLWNhbnZhcyBuYXYgb24gYW55IHNpemUgdG91Y2ggZGV2aWNlXG4vLyBhbmQgb24gZGVza3RvcCBicm93c2VycyBiZWxvdyAxMDI1cHggaW4gd2lkdGguXG4jbmF2LXByaW1hcnkge1xuICAuaG90ZG9nLW5hdixcbiAgLmxvZ28sXG4gIC5zdHJhcGxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuXG4gIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmLmNvbGxhcHNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuaG90ZG9nLW5hdixcbiAgICAubG9nbyxcbiAgICAuc3RyYXBsaW5lIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICAmLmNvbGxhcHNlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi50b3VjaC1kZXZpY2Uge1xuICAgIC5ob3Rkb2ctbmF2LFxuICAgIC5sb2dvLFxuICAgIC5zdHJhcGxpbmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgJi5jb2xsYXBzZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIE9mZiBjYW52YXNcbi8vXG4vLyBDb250YWlucyBlbnRpcmUgcGFnZSB0byBhbGxvdyBtZW51IHRvIHNsaWRlIG9mZiBwYWdlIHdpdGhvdXQgaW5jcmVhc2luZyB0aGUgc2l0ZSB3aWR0aFxuLm9mZmNhbnZhcy13cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi5vZmZvcGVuIHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG4ub2ZmY2FudmFzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIC8vQGluY2x1ZGUgdHJhbnNsYXRlKDAsIDApO1xuXG4gICYuaW4ge1xuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgkb2ZmY2FudmFzLWNvbnRlbnQtd2lkdGgsIDApO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSg0NSUsIDApO1xuICAgIH1cbiAgfVxufVxuXG4vLyBDb250YWluIHRoZSBjb250ZW50IG9mIHRoZSBzaXRlIHNlcGVyYXRlbHkgdG8gdGhlIG9mZmNhbnZhcyBtZW51IHRvIGFsbG93IGFsaWdubWVudFxuLm9mZmNhbnZhcy1wYW5lbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogJHppbmRleC1vZmZjYW52YXMtcGFuZWw7XG4gIHRvcDogMDtcbiAgd2lkdGg6ICRvZmZjYW52YXMtY29udGVudC13aWR0aDtcbiAgbGVmdDogLSRvZmZjYW52YXMtY29udGVudC13aWR0aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG9mZmNhbnZhcy1jb250ZW50LWJnO1xuICBtYXJnaW4tdG9wOiAtOTk5OWVtO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwKSB7XG4gICAgd2lkdGg6IDQ1JTtcbiAgICBsZWZ0OiAtNDUlO1xuICB9XG59XG5cbi8vIFRoZSBoZWFkZXIgcGFydCBvZiB0aGUgb2ZmIGNhbnZhcyBwYW5lbFxuLm9mZmNhbnZhcy1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgcGFkZGluZzogJG9mZmNhbnZhcy1oZWFkZXItcGFkZGluZztcblxuICAvLyBjbG9zZSBidXR0b24gc3BlY2lmaWMgdG8gdGhlIG9mZmNhbnZhcyBtZW51XG4gIC5jbG9zZS1vYyB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDI2KTtcbiAgICBjb2xvcjogJGdyYXk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlciAuZmEge1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuICB9XG59XG5cbi8vIFRoZSBib2R5IHBhcnQgb2YgdGhlIG9mZiBjYW52YXMgcGFuZWwsIHVzdWFsbHkgY29udGFpbnMgdGhlIG1lbnUgaXRzZWxmXG4ub2ZmY2FudmFzLWJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmY2FudmFzLWNvbnRlbnQtYmc7XG4gIHBhZGRpbmc6ICRvZmZjYW52YXMtYm9keS1wYWRkaW5nO1xuXG4gIC5uYXYge1xuICAgIC5vcGVuIHtcbiAgICAgID4gYSB7XG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICAgICYuY2FyZXQ6aG92ZXIsICYuY2FyZXQ6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gID4gLm5hdmJhci1uYXYge1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHNlY29uZGFyeS1iYXNlLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICBmbG9hdDogbm9uZTtcblxuICAgIHVsIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIH1cblxuICAgID4gbGkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG5cbiAgICAgID4gYSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2Vjb25kYXJ5LWJhc2UtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQ6ICRncmF5LXhsaWdodDtcbiAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgICAmLmNhcmV0IHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgJjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgICBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tZG93bjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5sb2dpbi1yZWdpc3RlciA+IGEge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XG5cbiAgICAgICAgPiBpIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYucmVnaXN0ZXIgPiBhIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xuXG4gICAgICAgID4gaSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogI2NjYztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICYgYSAuZmEge1xuICAgICAgICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAmLm9wZW4gYSAuZmEge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgPiBsaSB7XG4gICAgICBmbG9hdDogbm9uZTtcblxuICAgICAgPiBhIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZWNvbmRhcnktYmFzZS1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyYXkteGxpZ2h0O1xuICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICB9XG5cbiAgICAgICYucmVnaXN0ZXIgPiBhIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogI2NjYztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICYgYSAuZmEge1xuICAgICAgICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAmLm9wZW4gYSAuZmEge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYSB7XG4gICAgICAgICYuY2FyZXQge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgICBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tZG93bjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYub3BlbiB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgJi5jYXJldCB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgY29udGVudDogJGZhLXZhci1jaGV2cm9uLXVwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEsIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICNjY2M7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gY2hhbmdlIGRlZmF1bHQgYm9vdHN0cmFwIGJlaGF2aW91ciBvbiByZXF1ZXN0IHRvIHdyYXAgYWxsIGxldmVsc1xuICAgIGxpIGEge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudSAuZGl2aWRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmY2FudmFzLWhlYWRlci1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG5cbn1cblxuLy8gQ29udGVudCBvdmVybGF5LCBjcmVhdGVkIGJ5IGphdmFzY3JpcHQgd2hlbiB0aGUgb2ZmY2FudmFzIGlzIGFjdGl2ZVxuLy8gU3RvcHMgaW50ZXJhY3Rpb24gd2l0aCBjb250ZW50IHdoaWxlIHRoZSBtZW51IGlzIHZpc2libGUuXG4vLyBDYW4gYmUgY2xpY2tlZCB0byBjbG9zZSBvZmZjYW52YXMgbWVudSB0b28uXG4ub2ZmY2FudmFzLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIG9wYWNpdHk6ICRvZmZjYW52YXMtYmFja2Ryb3Atb3BhY2l0eTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG9mZmNhbnZhcy1iYWNrZHJvcC1iZztcbiAgei1pbmRleDogJHppbmRleC1vZmZjYW52YXMtYmFja2dyb3VuZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vLyBTaGFtZSBsaXN0Li4uXG4ubHQtaWU5IHtcbiAgLy8gQWxsb3cgdGhlIG9mZmNhbnZhcyB3cmFwcGVyIHRvIHNjcm9sbCBob3Jpem9udGFsbHkgZm9yXG4gIC8vIGJyb3dzZXJzIChJRSA4KSB0aGF0IGFyZSBub3QgcmVzcG9uc2l2ZSAoc3VwcG9ydCBNZWRpYSBRdWVyaWVzKVxuICAvLyBhbmQgYXJlIHVzaW5nIHRoZSBCcmVha3BvaW50IG5vLXF1ZXJ5IENTUyBhcHByb2FjaC5cbiAgLm9mZmNhbnZhcy13cmFwIHtcbiAgICAvL292ZXJmbG93LXg6IHZpc2libGU7XG4gIH1cblxuICAvLyBCYXNpYyBzdXBwb3J0IGZvciBicm93c2VycyBub3Qgc3VwcG9ydGluZyB0cmFuc2xhdGUgKElFIDgpXG4gIC5vZmZjYW52YXMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuXG4gICAgJi5pbiB7XG4gICAgICBsZWZ0OiAkb2ZmY2FudmFzLWNvbnRlbnQtd2lkdGg7XG4gICAgfVxuICB9XG4gIC5vZmZjYW52YXMtYmFja2Ryb3Age1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuXG4vLyBzaGFtZVxuLmx0LWllMTAgLm9mZmNhbnZhcy13cmFwIHtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuXG5cbi8vIE92ZXJyaWRlcyBUV0JTIG5hdmJhci1uYXYgZHJvcGRvd24gbWVudXMgYmVoYXZpb3VyIHJlbW92aW5nIHRoZSBicmVha3BvaW50XG4vLyB0byBhbGxvdyB0aGUgZHJvcGRvd24gbWVudXMgZGlzcGxheSBmdWxsLXdpZHRoIGluIHRoZSBvZmYtY2FudmFzIG5hdi5cbi5vZmZjYW52YXMtcGFuZWwge1xuICAubmF2YmFyLW5hdiB7XG5cbiAgICAvLyBPdmVycmlkaW5nIHRoZSBUV0JTIGJyZWFrcG9pbnQgc28gdGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGFsbCB2aWV3cG9ydHNcbiAgICAvL0BtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheSB3aGVuIGNvbGxhcHNlZFxuICAgICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgID4gbGkgPiBhLFxuICAgICAgICAuZHJvcGRvd24taGVhZGVyIHtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDE1cHggMTVweCAyNXB4O1xuICAgICAgICB9XG4gICAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgcHg7XG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgLy99XG4gIH1cbn1cblxuLy8gT2ZmY2FudmFzIGRyb3Bkb3duIGFjdGl2ZSBzdGF0ZVxuLm9mZmNhbnZhcyB7XG4gIC5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+IGE6bm90KC5jYXJldCkge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gUHJldmlvdXMgYW5kIE5leHQgbmF2XG4vL1xuXG4ucHJldmlvdXMtbmV4dCB7XG5cbiAgLmJ0biB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuXG4gICAgLmJ0bi1pY29uIHtcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWJhc2UtY29sb3I7XG4gICAgfVxuXG4gICAgJi5idG4tcHJldiB7XG4gICAgICAuYnRuLWljb24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICB9XG4gICAgfVxuICAgICYuYnRuLW5leHQge1xuICAgICAgLmJ0bi1pY29uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLy8gQmFyIGl0c2VsZlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8qKiBPdmVycmlkZXMgQm9vdHN0cmFwIGRlZmF1bHQgc3R5bGVzXG5cbi8vIE91dGVyIGNvbnRhaW5lclxuLnByb2dyZXNzIHtcbiAgaGVpZ2h0OiAyNXB4O1xufVxuXG4vLyBCYXIgb2YgcHJvZ3Jlc3Ncbi5wcm9ncmVzcy1iYXIge1xuICBsaW5lLWhlaWdodDogMjhweDtcbn0iLCIvLyBTZWFyY2ggQmFja2dyb3VuZCBWaWRlbyBCbG9ja1xuXG4uc2VhcmNoLWJnLXZpZGVvIHtcblxuICAuc2VhcmNoLWJnLXZpZGVvX193cmFwcGVyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC8vIGZpeGVkIGhlaWdodCBmb3IgdmlkZW9zIG9uIGRlc2t0b3BcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCkge1xuICAgICAgaGVpZ2h0OiA1MDBweDtcbiAgICB9XG4gIH1cblxuICAuc2VhcmNoLWJnLXZpZGVvX19pZnJhbWUge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLy8gYmFja2dyb3VuZCBjb2xvdXIgaGlkZXMgYmFja2dyb3VuZCBpbWFnZVxuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJhc2UtY29sb3I7XG5cbiAgICAvLyBoaWRlcyB2aWRlbyBibG9jayBvbiBtb2JpbGVcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgcGFkZGluZzogNTYuMjUlIDAgMCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5zZWFyY2gtYmctdmlkZW9fX292ZXJsYXkge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwKSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJi0tY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gU2VhcmNoIGZvcm1cbi8vXG4uc2VhcmNoLWZvcm0ge1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLW1lZGl1bTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuICB9XG4gIHBhZGRpbmc6IDE1cHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGZvbnQtc2l6ZSAuOXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpKTtcblxuICAvLyBtYWtlIGFkanVzdG1lbnRzIHRvIHRoZSBmb3JtIGFmdGVyIHRoZSBmb2N1c2VkIGNsYXNzIGhhcyBiZWVuIGFkZGVkXG4gICYuZm9jdXNlZCB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCkge1xuICAgICAgZm9udC1zaXplOiBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjkpKTsgLy8gMjVweFxuXG4gICAgICBpbnB1dC5mb3JtLWNvbnRyb2wge1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cblxuICAgICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXApIHtcblxuICAgICAgICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oZm9udC1zaXplIC45cyBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSkpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMi43KSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmF1dG8td3JhcHBlciB7XG4gICAgICAgIC5kcm9wZG93biB7XG4gICAgICAgICAgdG9wOiA0M3B4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5idG4td2l0aC1pY29uLmJ0bi5idG4tc2VhcmNoIHtcbiAgICAgICAgZm9udC1zaXplOiBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjgpKTsgLy8gMjBweFxuICAgICAgICAuZmEtc2VhcmNoIHtcbiAgICAgICAgICBmb250LXNpemU6IGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDIuOCkpOyAvLyA0MHB4XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpbnB1dC5mb3JtLWNvbnRyb2wge1xuICAgIGJvcmRlcjogbm9uZTsgLy8gRGlzYWJsZWQgVFdCUyBib3JkZXJcbiAgICBib3gtc2hhZG93OiBub25lOyAvLyBEaXNhYmxlIFRXQlMgYm94LXNoYWRvd1xuICB9XG5cbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlcjogbm9uZTsgLy8gRGlzYWJsZWQgVFdCUyBib3JkZXJcbiAgICBib3gtc2hhZG93OiBub25lOyAvLyBEaXNhYmxlIFRXQlMgYm94LXNoYWRvd1xuICAgIGNvbG9yOiAkZ3JheS1saWdodDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUteGxhcmdlO1xuICB9XG5cbiAgLy8gaGlkZSB0aGUgbmFycmF0aXZlIGZvcm0gJ2xhYmVscycgb24gc21hbGxlciBzY3JlZW5zXG4gIHNwYW4uc2VhcmNoLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxuICB9XG5cbiAgYSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLW1lZGl1bTtcbiAgICBjb2xvcjogJHNlYXJjaC1mb3JtLXRleHQtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgbWFyZ2luOiAxNXB4IDAgMCAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiAkc2VhcmNoLWZvcm0tZm9udC13ZWlnaHQ7XG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogJHNlYXJjaC1mb3JtLXRleHQtY29sb3I7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gVXNlZCB0byBhbGxvdyBjZW50cmFsIGFsaWdubWVudCBvZiBmb3JtIHdpdGggb3RoZXIgZWxlbWVudHMgYWxpZ25lZCByZWxhdGl2ZSB0byB0aGUgY29udGVudFxuICAud3JhcCB7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwKSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwKSB7XG4gICAgICB3aWR0aDogMjkwcHg7XG4gICAgfVxuICB9XG5cbiAgLmF1dG8td3JhcHBlciB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwKSB7XG4gICAgICAgIHdpZHRoOiAyODVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwKSB7XG4gICAgICAgIHdpZHRoOiAyODVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmZvcm0tc2VsZWN0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICAgICAgd2lkdGg6IDI4NXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kcm9wZG93biB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiA0M3B4O1xuICAgICAgei1pbmRleDogMTAwO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDZweCA2cHggcmdiYSgwLCAwLCAwLCAuMTc1KSk7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgY29sb3I6ICRncmF5O1xuICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgLy8gQXV0b2NvbXBsZXRlIGRyb3AtZG93biBsaXN0XG4gICAgICA+IC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgLy9ib3gtc2hhZG93OiAzcHggM3B4IDNweCAkZ3JheS1kYXJrO1xuICAgICAgICBjb2xvcjogJGdyYXk7XG4gICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLW1lZGl1bTtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICA+IGxpIHtcblxuICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuXG4gICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LXhsaWdodGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgICAgIC8vIG92ZXJ3cml0ZSBib290c3RyYXBzIGRlZmF1bHQgYXV0b2NvbXBsZXRlIGJhY2tncm91bmQgY29sb3VyaW5nXG4gICAgICAgID4gLmFjdGl2ZSB7XG4gICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LXhsaWdodGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuICAuY29udHJvbC1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXApIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGNvbG9yOiAkc2VhcmNoLWZvcm0tdGV4dC1jb2xvcjtcbiAgICAgIGZvbnQtc2l6ZTogY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS45NzYpKTsgLy8gMjVweFxuICAgICAgZm9udC13ZWlnaHQ6ICRzZWFyY2gtZm9ybS1mb250LXdlaWdodDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmYXVsdCBidXR0b24gb3ZlcnJpZGVzIGZvciBzZWFyY2ggZm9ybVxuICAuYnRuLXdpdGgtaWNvbi5idG4uYnRuLXNlYXJjaCB7XG4gICAgLy8gZnVsbCB3aWR0aCBidXR0b24gb24gbW9iaWxlXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogaW5saW5lLXRhYmxlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICAvLyBGbG9hdCB0aGUgdGV4dCBsZWZ0IHRvIGFsaWduIHByb3Blcmx5IHdpdGggYnV0dG9uIGljb25cbiAgICAuYnRuLXRleHQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2UqMS4xO1xuICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gRmxvYXQgaWNvbiByaWdodCBvbiBtb2JpbGUgZHVlIHRvIG90aGVyIHByb3BlcnRpZXMgd2hlbiBtYWtpbmcgdGhpbmdzIGZ1bGwgd2lkdGhcbiAgICAuYnRuLWljb24ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgcGFkZGluZy10b3A6IDZweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2cHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCkge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5mYS1zZWFyY2gge1xuICAgICAgZm9udC1zaXplOiBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAyLjIpKTtcbiAgICAgIHBhZGRpbmctdG9wOiA3cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTFweDtcbiAgICB9XG4gIH1cblxuICAjc2VhcmNoLWxvY2F0aW9uIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC1vbmx5KSB7XG4gICAgICBtYXJnaW4tbGVmdDogMTFweDtcbiAgICB9XG4gIH1cblxufVxuXG4vLyBvdmVyd3JpdGVzIGZvciB0aGUgZ29vZ2xlIGxvY2F0aW9uIG1vZHVsZSBjaG9zZW4gZm9yIHRoZSBiYWNrIGVuZFxuLnBhYy1jb250YWluZXIge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC5wYWMtaXRlbSB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICAucGFjLWl0ZW0tcXVlcnkge1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLW1lZGl1bTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICB9XG4gIH1cbn1cbi5wYWMtbG9nbyB7XG4gICY6YWZ0ZXIge1xuICAgIHBhZGRpbmc6OHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDk1JTtcbiAgICBoZWlnaHQ6MzBweDtcbiAgfVxufVxuXG4vLyBzaGFtZSBzaGFtZVxuLmx0LWllOSAuc2VhcmNoLWZvcm0ge1xuXG4gIC5mb3JtLWlubGluZSAuZm9ybS1ncm91cCwgaW5wdXQuZm9ybS1jb250cm9sIHtcbiAgICB6b29tOiAxO1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxuICAuZm9ybS1ncm91cCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIH1cbiAgLmJ0bi1zZWNvbmRhcnkge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbiAgYSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC53cmFwIHtcbiAgICB6b29tOiAxO1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxufVxuIiwiLy8gU2VhcmNoIGpvYiBzZWN0b3JzXG4vL1xuXG4uc2VhcmNoLWpvYi1zZWN0b3JzIHtcblxuICBoMyB7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIGNvbG9yOiNmZmY7XG4gICAgbWFyZ2luLXRvcDowO1xuICB9XG5cbiAgLmxpc3Qtam9iLXNlY3RvcnMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIC8vIFBhZGRpbmcgdXNlZCBmb3IgdmVydGljYWwgYWxpZ25tZW50IGJlbG93IHNlYXJjaCBmb3JtXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTAlO1xuICAgICAgcGFkZGluZy1yaWdodDogMTAlO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXApIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIH1cblxuICAgICAgLy8gSW5jcmVhc2UgYnV0dG9uIHNpemUgZm9yIGRpZmZlcmVudCBzY3JlZW5zXG4gICAgICAuYnRuIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLW1lZGl1bTtcbiAgICAgICAgY29sb3I6ICRzZWFyY2gtc2VjdG9ycy10ZXh0LWNvbG9yO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwKSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLW1lZGl1bTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8vIFNoYXJlIGJhclxuLy9cbi5zaGFyZS1iYXIge1xuICAubGlzdC11dGlscyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjo1cHggMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXApIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5saXN0LXNoYXJlIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGxpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogNHB4O1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgLmZhLWxne1xuICAgICAgICAgIGZvbnQtc2l6ZTokZm9udC1zaXplLW1lZGl1bTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG4iLCIvLyBTb2NpYWwgYmFyXG4vL1xuXG4uc29jaWFsLWJhciB7XG5cbiAgLy8gTGFyZ2VyIFNvY2lhbCBpY29uc1xuICAubGlzdC1zaGFyZSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLW1lZGl1bTtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xuXG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogMTJweDtcbiAgICAgICAgd2lkdGg6IDQ2cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gT3ZlcnJpZGVzIGRlZmF1bHQgZm9ybSBpbnB1dCBzdHlsZXNcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgLmNvbC0yIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59IiwiLy8gU29jaWFsIGJyYW5kIGljb25zXG4vL1xuXG4ubGlzdC1zaGFyZSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBmb250LXNpemU6ICRmb250LXNpemUtbWVkaXVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgbGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDJweDtcblxuICAgIGEge1xuICAgICAgYmFja2dyb3VuZDogJGdyYXk7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAzNHB4O1xuICAgIH1cblxuICAgIC8vIFNvY2lhbCBpY29ucyBiZyBjb2xvdXJzXG4gICAgJi5mYWNlYm9vayBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpY29uLWZhY2Vib29rLWJnO1xuICAgIH1cbiAgICAmLnR3aXR0ZXIgYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaWNvbi10d2l0dGVyLWJnO1xuICAgIH1cbiAgICAmLmxpbmtlZGluIGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGljb24tbGlua2VkaW4tYmc7XG4gICAgfVxuXG4gICAgLy8gU29jaWFsIGljb25zIGJnIGNvbG91ciBvbiA6aG92ZXJcbiAgICAmIGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGdyYXktZGFyaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFN0YXRpYyBzbGlkZXJcbi8vXG5cbi5zdGF0aWMtc2xpZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgdG9wOiA3NSU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgLW8tdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgei1pbmRleDogMTAwO1xuXG4gIHNwYW4ge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDNweDtcblxuICAgIGEge1xuICAgICAgYm94LXNoYWRvdzogLTNweCAzcHggMTBweCByZ2JhKDAsMCwwLDAuNSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBVdGlsaXR5IGljb25zXG4vL1xuXG4vLyBTYXZlLCBFbWFpbCAmIFNNUyBzZXJ2aWNlc1xuLmxpc3QtdXRpbHMge1xuICAvL2ZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcblxuICBsaSB7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkZ3JheS1saWdodDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGJyYW5kLXByaW1hcnksIDEwJSk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cblxuICAgICAgaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8vIFdlbGxzXG4vL1xuLndlbGwge1xuICBib3JkZXItcmFkaXVzOiAwO1xufSIsIi8vIEFib3V0IHBhbmVsXG4vL1xuLnBhbmVsLWFib3V0IHtcbiAgYmFja2dyb3VuZDogJHBhbmVsLWFib3V0LWJnO1xuICBAZXh0ZW5kICVoZWFkaW5nLW1hcmdpbi1yZXNldDtcbiAgYm9yZGVyOiAwO1xuXG4gIC5pbWctcHJvZmlsZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICRzZWNvbmRhcnktYmFzZS1jb2xvcjtcbiAgfVxufVxuIiwiLy8gQWNjb3JkaW9uIHBhbmVsXG4vL1xuLnBhbmVsLWFjY29yZGlvbiB7XG4gIGJhY2tncm91bmQ6ICRwYW5lbC1hY2NvcmRpb24tYmc7XG4gIGJvcmRlcjogMDtcblxuICAucGFuZWwtaGVhZGluZyB7XG4gICAgYmFja2dyb3VuZDogJHBhbmVsLWFjY29yZGlvbi1iZy1oZWFkO1xuICAgIGgze1xuICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIH1cbiAgfVxuXG4gIC5wYW5lbC1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiA1cHggMDtcblxuICAgIC5wYW5lbCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAuY29sbGFwc2UtaWNvbi1hbmdsZTphZnRlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14bGFyZ2U7XG4gICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICB9XG5cbiAgICAgIC5wYW5lbC1oZWFkaW5nIHtcbiAgICAgICAgYmFja2dyb3VuZDpub25lO1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgcCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIGNvbG9yOiRsaW5rLWNvbG9yO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHQ7XG4gICAgICAgIH1cbiAgICAgICAgYS5hY2NvcmRpb24tdHJpZ2dlcntcbiAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICByaWdodDowO1xuICAgICAgICAgIHBhZGRpbmc6MTBweCAxNXB4O1xuICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICBwe2NvbG9yOiMwMDA7fVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAucGFuZWwtYm9keSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICAgIGxpIHtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgYS5wYW5lbC1oZWFkaW5ne1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gIH1cblxufSIsIi8vIEpvYiBNYW5hZ2VyIHBhbmVsXG4vL1xuLnBhbmVsLWpvYi1tYW5hZ2VyIHtcbiAgYmFja2dyb3VuZDogJHBhbmVsLWpvYi1tYW5hZ2VyLWJnO1xuICBib3JkZXI6IDA7XG5cbiAgaDMge1xuICAgIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBhbmVsLWJvZHkge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICBjb2xvcjogJHBhbmVsLWpvYi1tYW5hZ2VyLWNvbG9yO1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIEBleHRlbmQgJWhlYWRpbmctbWFyZ2luLXJlc2V0O1xuXG4gICAgLmltZy1wcm9maWxlIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAkc2Vjb25kYXJ5LWJhc2UtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLnBhbmVsLWZvb3RlciB7XG4gICAgYmFja2dyb3VuZDogJHBhbmVsLWpvYi1tYW5hZ2VyLWJnO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItY29sb3I6ICRwYW5lbC1qb2ItbWFuYWdlci1ib3JkZXI7XG5cbiAgICBwIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuXG4gICAgICBzdHJvbmcge1xuICAgICAgICBjb2xvcjogJHBhbmVsLWpvYi1tYW5hZ2VyLWZvb3QtY29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYnRuIHtcbiAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICB9XG5cbiAgICAuYnRuLXdpdGgtaWNvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG4gICAgfVxuICB9XG59IiwiLy8gTGlzdGluZyBwYW5lbFxuLy9cbi5wYW5lbC1saXN0aW5nIHtcbiAgYmFja2dyb3VuZDogJHBhbmVsLWxpc3RpbmctYmctbWFpbjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYm9yZGVyOiAwO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCAwIHJnYmEoMCwgMCwgMCwgMCkpO1xuXG4gIC8vIFBhbmVsIGhlYWRpbmdcbiAgLnBhbmVsLWhlYWRpbmcge1xuICAgIGJhY2tncm91bmQ6ICRwYW5lbC1saXN0aW5nLWJnLWhlYWQ7XG4gICAgQGV4dGVuZCAlaGVhZGluZy1tYXJnaW4tcmVzZXQ7XG4gIH1cblxuICAvLyBQYW5lbCBCb2R5IGNvbnRlbnRcbiAgLnBhbmVsLWJvZHkge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuXG4gICAgLnRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIH1cblxuICAgIC8vIFRleHQgaGlnaGxpZ2h0XG4gICAgLmhpZ2hsaWdodCB7XG4gICAgICBjb2xvcjogJHBhbmVsLXRleHQtaGlnaGxpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhbmVsIGxpc3QgZ3JvdXBcbiAgLmxpc3QtZ3JvdXAge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1tZWRpdW07XG5cbiAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiNmZmY7XG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYnRuIHtcbiAgICAuYnRuLWljb24ge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDsgLy8gT3ZlcnJpZGVzIGRlZmF1bHQgYnV0dG9uIGJvcmRlciByYWRpdXNcbiAgICB9XG4gIH1cbn1cbiIsIi8vIERlZmF1bHQgUGFuZWwgLSBPdmVyd3JpdGluZyBib290c3RyYXAgZGVmYXVsdHMgdG8gc3VpdCBvdmVyYWxsIHBhbmVsIGRlc2lnbi4gVGhpcyBpcyB0aGUgYmFzZSBwYW5lbC5cbi8vXG4ucGFuZWwge1xuICBib3gtc2hhZG93OiBub25lO1xuXG4gIC5wYW5lbC1oZWFkIHtcbiAgICBAZXh0ZW5kICVoZWFkaW5nLW1hcmdpbi1yZXNldDtcbiAgfVxuXG4gIC5wYW5lbC1ncm91cCB7XG5cbiAgICAucGFuZWwtaGVhZGluZyB7XG5cbiAgICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHksXG4gICAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQYW5lbCBiYWNrZ3JvdW5kIGNvbG91ciB0aGVtZXNcbiAgJi5wYW5lbC1iZy1kZWZhdWx0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS14bGlnaHQ7XG4gIH1cbiAgJi5wYW5lbC1iZy1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1saWdodGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gTGlzdC1ncm91cCB3aXRoIGljb25zXG4gIC5saXN0LWdyb3VwLWljb25zIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbWVkaXVtO1xuXG4gICAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS1saWdodC1jb2xvcjtcbiAgICB9XG5cbiAgICAuc3RhdHVzLWljb24ge1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgfVxuXG4gICAgICAmLnN0YXR1cy1jb21wbGV0ZTphZnRlciB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtc3VjY2VzcztcbiAgICAgICAgY29udGVudDogJGZhLXZhci1jaGVjaztcbiAgICAgIH1cbiAgICAgICYuc3RhdHVzLWluY29tcGxldGU6YWZ0ZXIge1xuICAgICAgICBjb2xvcjogJGJyYW5kLWRhbmdlcjtcbiAgICAgICAgY29udGVudDogJGZhLXZhci10aW1lcztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc21hbGwtYXV0aG9ye1xuICAgIGZvbnQtc2l6ZTokcGFuZWwtbGlzdGluZy1idXR0LWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIEJ1dHRvbnMgaW4gcGFuZWxzXG4gIC5idG4ge1xuICAgIGZvbnQtc2l6ZTogY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yKSk7IC8vIH4zNHB4O1xuICAgICYuYnRuLWJsb2NrIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IC8vIFJlbW92ZXMgZGVmYXVsdCBib3JkZXIgcmFkaXVzXG4gICAgfVxuXG4gICAgLmJ0bi10ZXh0IHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMnB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDEycHg7XG4gICAgfVxuXG4gICAgLmJ0bi1pY29uIHtcbiAgICAgIC8vZm9udC1zaXplOiBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAyLjQyKSk7IC8vIH4zNHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAxOHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMThweDtcbiAgICB9XG4gIH1cbn0iLCIucGFuZWwtaG92ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wYW5lbC1ob3Zlcixcbi5pdGVtLWhvdmVyLFxuLml0ZW0taG92ZXIgLm1hc2ssXG4uaXRlbS1pbWcsXG4uaXRlbS1pbmZvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjMwcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICBoZWlnaHQ6IDM1MHB4O1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgIGhlaWdodDogNjAwcHg7XG4gIH1cblxufVxuXG4ucm93LTEtMSB7XG4gIC5wYW5lbC1ob3ZlcixcbiAgLml0ZW0taG92ZXIsXG4gIC5pdGVtLWhvdmVyIC5tYXNrLFxuICAuaXRlbS1pbWcsXG4gIC5pdGVtLWluZm8ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMjMwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR4c21hbGwtdXApIHtcbiAgICAgIGhlaWdodDogMTcwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwKSB7XG4gICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXApIHtcbiAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlLXVwKSB7XG4gICAgICBoZWlnaHQ6IDM1MHB4O1xuICAgIH1cblxuICB9XG4gIC5pdGVtLXR5cGUtbGluZSAuaXRlbS1pbmZvIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR4c21hbGwtb25seSkge1xuICAgICAgZm9udC1zaXplOiAwLjZlbTtcbiAgICAgIC5oZWFkbGluZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5pdGVtLXR5cGUtbGluZSAuaXRlbS1pbmZvIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC1vbmx5KSB7XG4gICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgLmhlYWRsaW5lIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnJvdy0xLTEtMSB7XG4gIC5wYW5lbC1ob3ZlcixcbiAgLml0ZW0taG92ZXIsXG4gIC5pdGVtLWhvdmVyIC5tYXNrLFxuICAuaXRlbS1pbWcsXG4gIC5pdGVtLWluZm8ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTkwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR4c21hbGwtdXApIHtcbiAgICAgIGhlaWdodDogMTkwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwKSB7XG4gICAgICBoZWlnaHQ6IDE0MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tdXApIHtcbiAgICAgIGhlaWdodDogMTkwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlLXVwKSB7XG4gICAgICBoZWlnaHQ6IDIyMHB4O1xuICAgIH1cblxuICB9XG4gIC5pdGVtLXR5cGUtbGluZSAuaXRlbS1pbmZvIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC1vbmx5KSB7XG4gICAgICBmb250LXNpemU6IDAuNmVtO1xuICAgICAgLmhlYWRsaW5lIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLW9ubHkpIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICAuaGVhZGxpbmUge1xuICAgICAgICBmb250LXNpemU6IDEuNmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucm93LTEtMS0xLTEge1xuICAucGFuZWwtaG92ZXIsXG4gIC5pdGVtLWhvdmVyLFxuICAuaXRlbS1ob3ZlciAubWFzayxcbiAgLml0ZW0taW1nLFxuICAuaXRlbS1pbmZvIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDE5MHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkeHNtYWxsLXVwKSB7XG4gICAgICBoZWlnaHQ6IDE5MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCkge1xuICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgICBoZWlnaHQ6IDEzNXB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCkge1xuICAgICAgaGVpZ2h0OiAxNzBweDtcbiAgICB9XG5cbiAgfVxuICAuaXRlbS10eXBlLWxpbmUgLml0ZW0taW5mbyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLW9ubHkpIHtcbiAgICAgIGZvbnQtc2l6ZTogMC42ZW07XG4gICAgICAuaGVhZGxpbmUge1xuICAgICAgICBmb250LXNpemU6IDEuM2VtO1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCkge1xuICAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICAgIC5oZWFkbGluZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5pdGVtLWhvdmVyLFxuLml0ZW0taG92ZXIgLm1hc2ssXG4uaXRlbS1pbWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG59XG5cbi5pdGVtLXR5cGUtbGluZSB7XG4gIC5pdGVtLWhvdmVyIHtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1vdXQ7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1vdXQ7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLW91dDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAvL2Rpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG4gIC5pdGVtLWluZm8ge1xuICAgIC8vei1pbmRleDogMTA7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIC8vd2lkdGg6NTAwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgLmhlYWRsaW5lIHtcbiAgICAgIGZvbnQtc2l6ZTogZmxvb3IoJGZvbnQtc2l6ZS1oMyk7XG4gICAgfVxuICAgIC5saW5lIHtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgd2lkdGg6IDAlO1xuICAgICAgbWFyZ2luOiAxMHB4IGF1dG87XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZS1vdXQ7XG4gICAgICAtbW96LXRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlLW91dDtcbiAgICAgIC1vLXRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlLW91dDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlLW91dDtcblxuICAgIH1cbiAgICAuaW5mbyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDAgMCA1cHggMDtcbiAgICB9XG4gICAgYSB7XG4gICAgICAvL3BhZGRpbmc6MTBweCAwIDAgMDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG59XG5cbi5pdGVtLXR5cGUtbGluZSAuaXRlbS1ob3ZlciAubWFzayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJhc2UtY29sb3I7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9NTApXCI7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT01MCk7XG4gIG9wYWNpdHk6IDAuNTtcbiAgei1pbmRleDogMDtcbn1cblxuLml0ZW0tdHlwZS1saW5lIC5pdGVtLWhvdmVyOmhvdmVyIC5saW5lIHtcbiAgd2lkdGg6IDQwJTtcbn1cblxuLml0ZW0tdHlwZS1saW5lIC5pdGVtLWhvdmVyOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4uaXRlbS1pbWcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1iYXNlLWNvbG9yO1xuICB6LWluZGV4OiAwO1xuICBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbiIsIi8vIFByb21vIHBhbmVsXG4vL1xuLnBhbmVsLXByb21vIHtcbiAgYm9yZGVyOiAwO1xuICBjb2xvcjogJHBhbmVsLXByb21vLXRleHQ7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcblxuICBpbWcge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCA1cHggcmdiYSgwLCAwLCAwLCAwKSk7XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogJHBhbmVsLXByb21vLXRleHQ7XG4gIH1cbn0iLCIvLy8vIE1hc29ucnkgZ3JpZHNcbi8vLy9cbi8vXG4vLy8vIEJhc2Ugc3R5bGluZyBhbmQgY29tcG9uZW50c1xuLy8ubWFzb25yeS1ncmlkIHtcbi8vXG4vLyAgQGV4dGVuZCAlY2xlYXJmaXg7XG4vL1xuLy8gIG92ZXJmbG93OiBoaWRkZW47XG4vLyAgcG9zaXRpb246IHJlbGF0aXZlO1xuLy9cbi8vICBsaXN0LXN0eWxlOiBub25lOyAgICAgLy8gUmVtb3ZlIGxpc3QgaXRlbSBzdHlsaW5nXG4vLyAgbWFyZ2luLWxlZnQ6IDA7XG4vLyAgbWFyZ2luLWJvdHRvbTogMDsgICAgIC8vIFJlbW92ZSBkZWZhdWx0IHVsIHNwYWNpbmdcbi8vXG4vLyAgPiBsaSB7XG4vLyAgICB3aWR0aDogMTAwJTtcbi8vICAgIGRpc3BsYXk6IGJsb2NrO1xuLy8gICAgaGVpZ2h0OiBhdXRvO1xuLy8gICAgZmxvYXQ6IGxlZnQ7XG4vLyAgICBwYWRkaW5nOiAwO1xuLy8gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuLy8gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuLy8gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbi8vICAgIG1hcmdpbi10b3A6ICRtYXNvbnJ5LXJvdy1nYXA7XG4vL1xuLy8gICAgJjpmaXJzdC1jaGlsZCB7XG4vLyAgICAgIG1hcmdpbi10b3A6IDA7ICAgLy8gUmVtb3ZlIHZlcnRpY2FsIGd1dHRlciBvbiBmaXJzdCByb3dcbi8vICAgIH1cbi8vICB9XG4vL30iLCIuc2VhcmNoLWhvbWV7XG4gIC5zZWFyY2gtam9iLXNlY3RvcnN7XG4gICAgLypkaXNwbGF5Om5vbmU7Ki9cbiAgICBwYWRkaW5nLWJvdHRvbTo1MHB4O1xuICB9XG59IiwiLy9cbi8vIEdhdHRhY2EgU29sdXRpb25zIHBhZ2Vcbi8vXG4vLy5wYWdlLWNhcmVlcnMge1xuXG4uYmctaW5zdGFncmFtIHtcbiAgYmFja2dyb3VuZDogJGdyYXk7XG4gIC5zbGljay1kb3RzIHtcbiAgICBsaSwgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGdyYXk7XG4gICAgfVxuICB9XG4gIC5zbGljay1wcmV2LCAuc2xpY2stbmV4dCB7XG4gICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgY29sb3I6I2ZmZjtcbiAgICB9XG4gIH1cbn1cblxuLy99XG5cbiIsIi8vXG4vLyBHYXR0YWNhIFNvbHV0aW9ucyBwYWdlXG4vL1xuXG5cbi8vLnBhZ2Utc29sdXRpb25zIHtcblxuICAuYmctc29sLWNvbnRhY3R7XG4gICAgYmFja2dyb3VuZDogI2NiY2FjZDtcbiAgICBoMi5wYW5lLXRpdGxle1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgfVxuXG4gICAgLy8ud2ViZm9ybS1jb21wb25lbnQtLW5hbWUsIC53ZWJmb3JtLWNvbXBvbmVudC0tY29tcGFueSwgLndlYmZvcm0tY29tcG9uZW50LS1lbWFpbCwgLndlYmZvcm0tY29tcG9uZW50LS1waG9uZXtcbiAgICAvLyAgd2lkdGg6NTAlO1xuICAgIC8vICBmbG9hdDpsZWZ0O1xuICAgIC8vfVxuICAvL31cblxufVxuXG4iLCIiLCIiLCIvL1xuLy8gVGVtcGxhdGUgc3RydWN0dXJlIGZvciBvdmVyd3JpdGluZyBhIGNsaWVudCBzZWN0aW9uIG9mIHRoZSBNYXRjaHRlY2ggV2Vic2l0ZVxuLy9cblxuLnBhZ2UtZmVhdHVyZWQtcmVjcnVpdGVycyB7XG5cbiAgLy9mb250LWZhbWlseTogXCJUaW1lc05ld1JvbWFuXCIsIFRpbWVzIE5ldyBSb21hbiwgVGltZXMsIEJhc2tlcnZpbGxlLCBHZW9yZ2lhLCBzZXJpZjtcbiAgLy9mb250LWZhbWlseTogXCJHZW9yZ2lhXCIsIFRpbWVzLCBUaW1lcyBOZXcgUm9tYW4sIHNlcmlmO1xuICAvL2ZvbnQtZmFtaWx5OiBcIlZlcmRhbmFcIiwgR2VuZXZhLCBzYW5zLXNlcmlmO1xuICAvL2ZvbnQtZmFtaWx5OiBcIlRhaG9tYVwiLCBWZXJkYW5hLCBTZWdvZSwgc2Fucy1zZXJpZjtcbiAgZm9udC1mYW1pbHk6IFwiQXJpYWxcIiwgSGVsdmV0aWNhIE5ldWUsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcblxuICBjb2xvcjogIzNkMzkzNTtcblxuICAubGVhZCwgLmxlYWQtbGcge1xuICAgIGNvbG9yOiAjM2QzOTM1O1xuICB9XG5cbiAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gICAgY29sb3I6ICMwMDUwN2Y7XG4gIH1cblxuICAuYnRuLXByaW1hcnkge1xuICAgIGNvbG9yOiAjM2QzOTM1O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjNWU4NmU7XG4gICAgLmJ0bi1pY29uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigjYzVlODZlLCAyMCUpO1xuICAgICAgY29sb3I6ICMzZDM5MzU7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICMzZDM5MzU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oI2M1ZTg2ZSwgMjAlKTtcbiAgICB9XG4gICAgJjphY3RpdmUge1xuICAgICAgY29sb3I6ICMzZDM5MzU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oI2M1ZTg2ZSwgMzAlKTtcbiAgICB9XG4gIH1cblxuICAuZmlsdGVyLWxpc3Rpbmcgc2VsZWN0IHtcbiAgICBib3JkZXItY29sb3I6ICNjOGRkZTc7XG4gICAgLmJvcmRlci1ib3R0b20tZ3JheSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgICB9XG4gICAgLmJvcmRlci10b3AtZ3JheSB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgICB9XG4gIH1cblxuICAubGlzdGluZy1oZWFkaW5nIHtcbiAgICAubGlzdC11dGlscyB7XG4gICAgICBsaSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAjOTQ5Y2ExO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmpvYi1saXN0aW5ncyB7XG4gICAgLmxpc3Rpbmcge1xuICAgICAgLmxpc3RpbmctaGVhZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Q2ZDdkODtcbiAgICAgICAgaDMge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICMzZDM5MzU7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5sYWJlbC1qdXN0YWRkZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RhOTYxYTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmxhYmVsLWZlYXR1cmVkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDViODU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgICAgLmFkZC10by1zaG9ydGxpc3Qge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTQ7XG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBjb2xvcjogIzk0OWNhMTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5saXN0aW5nLWNvbnRlbnQge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgY29sb3I6ICMwMDUwN2Y7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb2xvcjogIzk0OWNhMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucHJldmlvdXMtbmV4dCB7XG4gICAgLmJ0biB7XG4gICAgICBmb250LXdlaWdodDogMTAwO1xuICAgIH1cbiAgfVxuXG4gIC5vZmZjYW52YXMtcGFuZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICB9XG5cbiAgLmJvcmRlci10b3Atb3JhbmdlIHtcbiAgICBib3JkZXItdG9wOiAzcHggc29saWQgI2U1OTUwMDtcbiAgfVxuXG4gIC5iZy1kZWZhdWx0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xuICB9XG5cbiAgLmZvb3Rlci1sZWdhbCB7XG4gICAgcCB7XG4gICAgICBjb2xvcjogIzkwOTA5MDtcbiAgICB9XG4gICAgLmZvb3Rlci1sZWdhbC1uYXYgbGkgYSB7XG4gICAgICBjb2xvcjogIzkwOTA5MDtcbiAgICB9XG4gIH1cblxuICAuYnRuLCAjc2xpZGluZy1wb3B1cCAucG9wdXAtY29udGVudCAjcG9wdXAtYnV0dG9ucyBidXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuXG4gIC5idG4tY2FuY2VsIHtcbiAgICBjb2xvcjogIzAwNzZiMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xuICB9XG5cbiAgLy8gQWNjb3JkaW9uXG4gIC5hY2NvcmRpb24ge1xuICAgICYucGFuZWwtZ3JvdXAge1xuICAgICAgLnBhbmVsIHtcbiAgICAgICAgLnBhbmVsLWhlYWRpbmcge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJHBhbmVsLWlubmVyLWJvcmRlcjtcbiAgICAgICAgICBjb2xvcjogJGFjY29yZGlvbi1kZWZhdWx0LXRleHQ7XG5cbiAgICAgICAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5LFxuICAgICAgICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkcGFuZWwtaW5uZXItYm9yZGVyO1xuICAgICAgICAgICAgLmxlYWQge1xuICAgICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucGFuZWwtdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS40MjgpKTsgLy8gMjBweFxuXG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjQyOCkpOyAvLyAyMHB4XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbGxhcHNlZCB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjb3JkaW9uLWRlZmF1bHQtaGVhZGluZy1iZztcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBhbmVsLXRpdGxle1xuICAgIGNvbG9yOiAjMDA1MDdmO1xuICB9XG5cbn1cblxuXG4iLCIucGFnZS10ZXN0IHtcbiAgLy8gQWRkIGZha2UgY29udGVudCBzdHJ1Y3R1cmUgdGhlIHNhbWUgYXMgbGF5b3V0IHBhZ2VzXG4gIC5jb25zb2xlLWNvbC13cmFwIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LXhsaWdodDtcbiAgICBib3JkZXI6IDFweCBkYXNoZWQgJGdyYXk7XG4gIH1cbiAgLy8gQWRkIGdhcCBiZXR3ZWVuIGxheW91dHMgb24gdGVzdCBwYWdlXG4gIC5yb3ctMS0yLC5yb3ctMS0xLTEtMSwucm93LTEtMS0xLTEtMS0xe1xuICAgIHBhZGRpbmctdG9wOiRncmlkLWd1dHRlci13aWR0aC8yO1xuICB9XG59IiwiLy9cbi8vIFZvaWNlIG9mIHRoZSBXb3JrZm9yY2UgcGFnZVxuLy9cblxuLy8gVGhlIGNvbnRhaW5lciBjbGFzcyBmb3IgYWxsIFZvVyBDTVMgcGFnZXNcbi52b3ctY29udGVudCB7XG5cbiAgLy8gSGVybyBpbWFnZSBjb250YWluZXJcbiAgLmhlcm8tY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAvLyBMZWFkIHBhcmFncmFwaFxuICAubGVhZCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiA5MCU7XG4gIH1cblxuICAvLyBTZWN0aW9uIGhlYWRpbmdzXG4gIC5zZWN0aW9uLWhlYWRpbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR2b3ctc2VjdGlvbi1oZWFkaW5nLWJnO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIGgyIHtcbiAgICAgIGNvbG9yOiAkdm93LXNlY3Rpb24taGVhZGluZy1jb2xvcjtcbiAgICAgIGZvbnQtc2l6ZTogKCgkZm9udC1zaXplLWJhc2UgKiAxLjUpKTsgLy8gMjJweCAyMi8xNFxuICAgICAgZm9udC13ZWlnaHQ6ICR2b3ctc2VjdGlvbi1oZWFkaW5nLWZvbnQtd2VpZ2h0O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMjBweCAwO1xuXG4gICAgICAvLyBBbGxvd3Mgd3JhcHBpbmcgb2YgbG9uZyBoZWFkaW5nc1xuICAgICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEhlYWRpbmcgYmFja2dyb3VuZCBpbWFnZXMgb24gbWVkaXVtLXVwIHZpZXdwb3J0c1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTAwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgJi5oZWFkaW5nLWJnLXBlb3BsZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKCN7JGdldC1wYXRoLXRvLWFzc2V0c30vaGVhZGVyLXBlb3BsZS5wbmcpIHJpZ2h0IGJvdHRvbSBuby1yZXBlYXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLmhlYWRpbmctYmctaGFuZHMge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgjeyRnZXQtcGF0aC10by1hc3NldHN9L2hlYWRlci1oYW5kcy5wbmcpIHJpZ2h0IGJvdHRvbSBuby1yZXBlYXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTZWN0aW9uIGNvbnRlbnRcbiAgLnNlY3Rpb24tY29udGVudCB7XG5cbiAgICAuaDMge1xuICAgICAgZm9udC1zaXplOiAoKCRmb250LXNpemUtYmFzZSAqIDEuNDIpKTsgLy8gMjBweCAyMC8xNFxuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nOiAyMHB4IDA7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogKCgkZm9udC1zaXplLWJhc2UgKiAyLjQyKSk7IC8vIDM0cHggMzQvMTRcbiAgICAgICAgcGFkZGluZzogNzBweCAwO1xuXG4gICAgICAgICYuaGVhZGluZy1iZy1nbG9iZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKCN7JGdldC1wYXRoLXRvLWFzc2V0c30vaGVhZGVyLWdsb2JlLnBuZykgbGVmdCBib3R0b20gbm8tcmVwZWF0O1xuICAgICAgICAgIHBhZGRpbmc6IDYwcHggMCA0MHB4IDIwMHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAmLmhlYWRpbmctc3R5bGUtMSB7XG4gICAgICAgICAgY29sb3I6ICR2b3ctaGVhZGluZy1jb2xvci1wcmltYXJ5O1xuICAgICAgICB9XG4gICAgICAgICYuaGVhZGluZy1zdHlsZS0yIHtcbiAgICAgICAgICBjb2xvcjogJHZvdy1oZWFkaW5nLWNvbG9yLWRlZmF1bHQ7XG4gICAgICAgIH1cbiAgICAgICAgJi5oZWFkaW5nLXN0eWxlLTMge1xuICAgICAgICAgIGNvbG9yOiAkdm93LWhlYWRpbmctY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5iZy1maWxsZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHZvdy1zZWN0aW9uLWludHJvLWJnO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFjY29yZGlvblxuICAuc2VjdGlvbi1hY2NvcmRpb24ge1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICAgIC5jb2wtMSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucGFuZWwtZ3JvdXAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgLnBhbmVsIHtcbiAgICAgICAgZm9udC1zaXplOiAoKCRmb250LXNpemUtYmFzZSAqIDIpKTsgLy8gMjhweCAyOC8xNFxuXG4gICAgICAgIC5wYW5lbC1oZWFkaW5nIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdm93LXNlY3Rpb24tYWNjb3JkaW9uLWJnO1xuICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAucGFuZWwtdGl0bGUge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogODUlO1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEFjY29yZGlvbiBjaGV2cm9uIGJhY2tncm91bmRcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdm93LXNlY3Rpb24taW50cm8tYmc7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDlweDtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgIC8vIENoZXZyb24gcG9zaXRpb25cbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gSnVtcCBNZW51XG4vL1xuLnZvdy1qdW1wLW1lbnUge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gIC8vIENlbnRlcnMgbGFiZWwgYW5kIHNlbGVjdFxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLnBhbmUtdGl0bGUge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBmb250LXNpemU6IDIycHg7XG4gIH1cblxuICAucGFuZS1jb250ZW50IHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwLCAkbm8tcXVlcnk6IHRydWUpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICBmb3JtIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDM0MHB4O1xuICAgICAgfVxuXG4gICAgICBzZWxlY3Qge1xuICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBEb251dCBjaGFydHNcbi8vXG5cbi8vIENoYXJ0ICYgdGV4dCBzaWRlLWJ5LXNpZGVcbi8vLmNoYXJ0LWdyb3VwLTIge1xuLy8gIHdpZHRoOiA5OTBweDtcbi8vXG4vLyAgLmNoYXJ0LWNvbnRhaW5lciB7XG4vLyAgICBkaXNwbGF5OiB0YWJsZTtcbi8vICAgIHdpZHRoOiAxMDAlO1xuLy8gICAgcGFkZGluZy10b3A6IDEwMHB4O1xuLy8gICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xuLy8gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuLy8gIH1cbi8vXG4vLyAgLmRvbnV0LWNoYXJ0IHtcbi8vICAgIGZsb2F0OiBsZWZ0O1xuLy8gIH1cbi8vXG4vLyAgLmRvbnV0LWNoYXJ0LXRleHQge1xuLy8gICAgY29sb3I6ICR2b3ctc2VjdGlvbi1pbnRyby1iZztcbi8vICAgIGZvbnQtc2l6ZTogMjZweDtcbi8vICAgIHBhZGRpbmctbGVmdDogMjBweDtcbi8vICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4vLyAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuLy8gIH1cbi8vfVxuXG4vLyBDaGFydCAmIHRleHQgc3RhY2tlZFxuLy8uY2hhcnQtZ3JvdXAtNCB7XG4vLyAgd2lkdGg6IDk5MHB4O1xuLy9cbi8vICAuY2hhcnQtY29udGFpbmVyIHtcbi8vICAgIHBhZGRpbmctdG9wOiAxMDBweDtcbi8vICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbi8vICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vICB9XG4vL1xuLy8gIC5kb251dC1jaGFydCB7XG4vLyAgICBtYXJnaW46IDAgYXV0byAyMHB4IGF1dG87XG4vLyAgfVxuLy9cbi8vICAuZG9udXQtY2hhcnQtdGV4dCB7XG4vLyAgICBjb2xvcjogd2hpdGU7XG4vLyAgICBkaXNwbGF5OiBibG9jaztcbi8vICAgIGZvbnQtc2l6ZTogMTRweDtcbi8vICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtcmVndWxhcjtcbi8vICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4vLyAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4vLyAgfVxuLy99XG5cbi8vIE1hdGNodGVjaCB0aGVtZSBjaGFydHNcbi8vXG5cbi8vIENoYXJ0cyBvbiB3aGl0ZSBiYWNrZ3JvdW5kXG4vL1xuLy8gRW5naW5lZXJpbmdcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctbGlnaHQtNDknLCA0OSk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWxpZ2h0LTEzJywgMTMpO1xuXG4vLyBBZXJvc3BhY2Vcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctbGlnaHQtNDInLCA0Mik7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWxpZ2h0LTknLCA5KTtcblxuLy8gQXV0b21vdGl2ZVxuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1saWdodC01MCcsIDUwKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctbGlnaHQtMTUnLCAxNSk7XG5cbi8vIFByb3BlcnR5IC8gQ29uc3RydWN0aW9uXG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWxpZ2h0LTUwJywgNTApO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1saWdodC0xNicsIDE2KTtcblxuLy8gSGlnaHdheXNcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctbGlnaHQtNDYnLCA0Nik7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWxpZ2h0LTE2JywgMTYpO1xuXG4vLyBSYWlsXG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWxpZ2h0LTU1JywgNTUpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1saWdodC04JywgOCk7XG5cbi8vIFdhdGVyIGFuZCBFbnZpcm9ubWVudFxuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1saWdodC00MicsIDQyKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctbGlnaHQtMTMnLCAxMyk7XG5cbi8vIEluZHVzdHJpYWxcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctbGlnaHQtNDcnLCA0Nyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWxpZ2h0LTYnLCA2KTtcblxuLy8gTWFyaXRpbWVcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctbGlnaHQtNTYnLCA1Nik7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWxpZ2h0LTE4JywgMTgpO1xuXG4vLyBFbmdlcmd5XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWxpZ2h0LTUyJywgNTIpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1saWdodC0xNycsIDE3KTtcblxuLy8gRW5naW5lZXJpbmcgVGVjaFxuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1saWdodC00MycsIDQzKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctbGlnaHQtMTgnLCAxOCk7XG5cbi8vIENoYXJ0cyBvbiBncmV5IGJhY2tncm91bmRcbi8vXG4vLyBFbmdpbmVlcmluZ1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTI3JywgMjcsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMjUnLCAyNSwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xMycsIDEzLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTExJywgMTEsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTM0JywgMzQsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMjknLCAyOSwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0yNCcsIDI0LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTE0JywgMTQsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG5cbi8vIEFlcm9zcGFjZVxuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTMyJywgMzIsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMjcnLCAyNywgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xNScsIDE1LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTEyJywgMTIsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTMzJywgMzMsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMjgnLCAyOCwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0yNScsIDI1LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTE0JywgMTQsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG5cbi8vIEF1dG9tb3RpdmVcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xOScsIDE5LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTE5JywgMTksICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMTQnLCAxNCwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xNCcsIDE0LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9cbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0zMycsIDMzLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTM1JywgMzUsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMTknLCAxOSwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xMycsIDEzLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuXG4vLyBQcm9wZXJ0eSAvIENvbnN0cnVjdGlvblxuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTMzJywgMzMsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMjQnLCAyNCwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xMScsIDExLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTknLCA5LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9cbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0zMScsIDMxLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTMzJywgMzMsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMjQnLCAyNCwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xMicsIDEyLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuXG4vLyBIaWdod2F5c1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTI5JywgMjksICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMTgnLCAxOCwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xNScsIDE1LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTEwJywgMTAsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTM3JywgMzcsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMjcnLCAyNywgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0yNScsIDI1LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTExJywgMTEsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG5cbi8vIFJhaWxcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0zMScsIDMxLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTIwJywgMjAsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMTgnLCAxOCwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xMCcsIDEwLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9cbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay00MicsIDQyLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTMxJywgMzEsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMTknLCAxOSwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay05JywgOSwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcblxuLy8gV2F0ZXIgYW5kIEVudmlyb25tZW50XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMzAnLCAzMCwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xNCcsIDE0LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTEzJywgMTMsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMTMnLCAxMywgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vXG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMzQnLCAzNCwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0zMScsIDMxLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTI0JywgMjQsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMTAnLCAxMCwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcblxuLy8gSW5kdXN0cmlhbFxuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTM0JywgMzQsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMjInLCAyMiwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xOCcsIDE4LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTgnLCA4LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9cbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0yMicsIDIyLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTMxJywgMzEsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMjcnLCAyNywgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0yMCcsIDIwLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuXG4vLyBNYXJpdGltZVxuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTI2JywgMjYsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMjYnLCAyNiwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xMicsIDEyLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTEwJywgMTAsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTM3JywgMzcsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMzAnLCAzMCwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0yMicsIDIyLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTExJywgMTEsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG5cbi8vIEVuZ2VyZ3lcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0yNycsIDI3LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTI2JywgMjYsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMTMnLCAxMywgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xMycsIDEzLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9cbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0zNScsIDM1LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTIzJywgMjMsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMjcnLCAyNywgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xNScsIDE1LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuXG4vLyBFbmdpbmVlcmluZyBUZWNoXG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMzInLCAzMiwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xNScsIDE1LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTEyJywgMTIsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMTAnLCAxMCwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vXG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMjQnLCAyNCwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0zNycsIDM3LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTIzJywgMjMsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMTcnLCAxNywgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcblxuXG4vLyBOZXR3b3JrZXJzIHRoZW1lIGNoYXJ0c1xuLy9cblxuLy8gT3ZlcmFsbCB0ZWNobm9sb2d5XG4vL1xuLy8gQ2hhcnRzIG9uIHdoaXRlIGJhY2tncm91bmRcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctbGlnaHQtNTQnLCA1NCk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWxpZ2h0LTE2JywgMTYpO1xuXG4vLyBDaGFydHMgb24gZ3JleSBiYWNrZ3JvdW5kXG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMjUnLCAyNSwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xNycsIDE3LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTEyJywgMTIsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMTInLCAxMiwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vXG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMzQnLCAzNCwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0zNicsIDM2LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTE5JywgMTksICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMTEnLCAxMSwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcblxuLy8gSVRcbi8vXG4vLyBDaGFydHMgb24gd2hpdGUgYmFja2dyb3VuZFxuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1saWdodC01MicsIDUyKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctbGlnaHQtMTEnLCAxMSk7XG5cbi8vIENoYXJ0cyBvbiBncmV5IGJhY2tncm91bmRcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0yMycsIDIzLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTE1JywgMTUsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMTQnLCAxNCwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xMycsIDEzLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9cbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0zMicsIDMyLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTM0JywgMzQsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMjMnLCAyMywgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xMScsIDExLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuXG4vLyBUZWxlY29tbXVuaWNhdGlvbnNcbi8vXG4vLyBDaGFydHMgb24gd2hpdGUgYmFja2dyb3VuZFxuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1saWdodC01NycsIDU3KTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctbGlnaHQtMjcnLCAyNyk7XG5cbi8vIENoYXJ0cyBvbiBncmV5IGJhY2tncm91bmRcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0yNicsIDI2LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTE4JywgMTgsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMTYnLCAxNiwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0xMycsIDEzLCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9cbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay0zNicsIDM2LCAkY2VudGVyOiAkdm93LXNlY3Rpb24taW50cm8tYmcpO1xuLy9AaW5jbHVkZSBkb251dC1jaGFydCgnLnZvdy1kYXJrLTQwJywgNDAsICRjZW50ZXI6ICR2b3ctc2VjdGlvbi1pbnRyby1iZyk7XG4vL0BpbmNsdWRlIGRvbnV0LWNoYXJ0KCcudm93LWRhcmstMTYnLCAxNiwgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcbi8vQGluY2x1ZGUgZG9udXQtY2hhcnQoJy52b3ctZGFyay03JywgNywgJGNlbnRlcjogJHZvdy1zZWN0aW9uLWludHJvLWJnKTtcblxuIiwiLy8gQWNjZXNzaWJpbGl0eVxuLy9cblxuLnNydCB7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgaGVpZ2h0OiAxcHg7XG4gIHdpZHRoOiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xufSIsIi8vIENvbXBvbmVudCBhbmltYXRpb25zXG4vL1xuXG4uZmFkZSB7XG4gIG9wYWNpdHk6IDA7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAuMTVzIGxpbmVhcik7XG4gICYuaW4ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmNvbGxhcHNlIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICAmLmluICAgICAgeyBkaXNwbGF5OiBibG9jazsgfVxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgdHImLmluIHRvIHRyLmNvbGxhcHNlLmluXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0Ym9keSYuaW4gdG8gdGJvZHkuY29sbGFwc2UuaW5cbn1cblxudHIuY29sbGFwc2UuaW4gICAgeyBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cblxudGJvZHkuY29sbGFwc2UuaW4geyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7IH1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eShoZWlnaHQsIHZpc2liaWxpdHkpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKC4zNXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbihlYXNlKTtcbn1cblxuLnNsaWRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tdHJhbnNmb3JtKCk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZHVyYXRpb24oLjVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oZWFzZSk7XG59IiwiLy8gQmFja2dyb3VuZHNcbi8vXG5cbi8vKiogU29saWQgY29sb3VyIGJhc2VkXG4uYmctZGVmYXVsdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5LXhsaWdodDtcbn1cblxuLmJnLWhlYWRlcnMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1kYXJrLWNvbG9yO1xufVxuXG4uYmctcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xufVxuXG4uYmctc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktbGlnaHQtY29sb3I7XG59XG5cbi5iZy10ZXJ0aWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWxpZ2h0ZXItY29sb3I7XG59XG5cbi5iZy1xdWF0ZXJuYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLmJnLW1lZGl1bS1ncmF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktbWxpZ2h0O1xufVxuXG4uYmctbGlnaHQtZ3JheSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWxpZ2h0ZXI7XG59XG5cbi5iZy1zZWFyY2gge1xuICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1kYXJrLWNvbG9yIHVybChcIi4uL2ltYWdlcy9iYWNrZ3JvdW5kcy8jeyRzZWFyY2gtYmctaW1nfVwiKSBuby1yZXBlYXQgMCAwO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG4uYmctcHJvbW8ge1xuICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1kYXJrLWNvbG9yO1xufVxuXG4vLyoqIFNoYW1lXG4vLy5sdC1pZTkgLmJnLXNlYXJjaCB7XG4vLyAgYmFja2dyb3VuZDogJHByaW1hcnktZGFyay1jb2xvcjtcbi8vfVxuXG4vLy5sdC1pZTkgLmJnLXByb21vIHtcbi8vICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1kYXJrLWNvbG9yO1xuLy99IiwiLmJzLWRvY3Mtc2lkZS1iYXIge1xuICAmLmFmZml4IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAyMHB4O1xuICB9XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgdG9wOjcwcHg7XG4gIC5uYXYgPiBsaSA+IGE6aG92ZXIsIC5uYXYgPiBsaSA+IGE6Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cbiAgLmRyb3Bkb3duLW1lbnV7XG4gICAgcG9zaXRpb246c3RhdGljO1xuICAgIGZsb2F0Om5vbmU7XG4gICAgYm9yZGVyOm5vbmU7XG4gICAgYm94LXNoYWRvdzpub25lO1xuICAgIG1hcmdpbi1ib3R0b206MTVweDtcbiAgICBtYXJnaW4tbGVmdDoxNXB4O1xuICAgIGJvcmRlci10b3A6MXB4IHNvbGlkICRzZWNvbmRhcnktYmFzZS1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOjA7XG4gICAgPiBsaSA+IGF7XG4gICAgICBwYWRkaW5nOjVweCAwO1xuICAgICAgJjpob3ZlcntcbiAgICAgICAgYmFja2dyb3VuZDpub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYnMtZXhhbXBsZXtcbiAgcGFkZGluZzoxMHB4IDAgMTBweCAwO1xufVxuXG4uYnMtZXhhbXBsZS1jb250cm9sLXNpemluZyBpbnB1dFt0eXBlPVwidGV4dFwiXSArIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCAuYnMtZXhhbXBsZS1jb250cm9sLXNpemluZyBzZWxlY3Qge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4uc2hvdy1ncmlkIFtjbGFzc149XCJjb2wtXCJdIHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDg2LCA2MSwgMTI0LCAuMTUpO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDg2LCA2MSwgMTI0LCAuMik7XG59XG5cbi5hZmZpeC1udWRnZSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAyMHB4O1xufSIsIi8vIEJvcmRlcnNcbi8vXG5cbi8vIERlZmF1bHQgYm9yZGVyIGZvciB2ZXJ0aWNhbGx5IGRpdmlkaW5nIHNlY3Rpb25zXG4vLyBUaGVzZSBjYW4gYmUgdXNlZCBmb3IgYW55IGNvbnRhaW5lciBvciBlbGVtZW50XG5cbi5ib3JkZXItdG9wIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRzZWNvbmRhcnktYmFzZS1jb2xvcjtcbn1cbi5ib3JkZXItYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZWNvbmRhcnktYmFzZS1jb2xvcjtcbn1cblxuLy8qKiBHcmF5XG4uYm9yZGVyLXRvcC1ncmF5IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmF5LXhsaWdodDtcbn1cbi5ib3JkZXItYm90dG9tLWdyYXkge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXkteGxpZ2h0O1xufVxuXG4vLyoqIE9yYW5nZSB0aGljayBib3JkZXJcbi5ib3JkZXItdG9wLW9yYW5nZSB7XG4gIGJvcmRlci10b3A6IDNweCBzb2xpZCAkc2Vjb25kYXJ5LWRhcmstY29sb3I7XG59XG4uYm9yZGVyLWJvdHRvbS1vcmFuZ2Uge1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJHNlY29uZGFyeS1kYXJrLWNvbG9yO1xufVxuLmJvcmRlci10aGljay1ib3R0b20tb3JhbmdlIHtcbiAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICRzZWNvbmRhcnktZGFyay1jb2xvcjtcbn1cblxuLy8qKiBBcHBsaWVzIGJvcmRlciBvbiBhbGwgc2lkZXNcbi5ib3JkZXItYWxsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJHNlY29uZGFyeS1iYXNlLWNvbG9yO1xufVxuXG4vLyBCb3JkZXIgY29sb3VyIHBhbGV0dGVzIFRPRE86IFRvIGJlIGV4dGVuZGVkIHRvIGNvbnRyb2wgYm9yZGVyIHBhbGV0dGVcbi5ib3JkZXItbGlnaHQtZ3JheSB7XG4gIGJvcmRlci1jb2xvcjogJGdyYXkteGxpZ2h0O1xufVxuLmJ0bi1ib3JkZXItcmlnaHQge1xuICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAjZmZmO1xufSIsIi8vIERvbnV0IENoYXJ0XG4vLyB3b3JrcyBhbG9uZ3NpZGUgdGhlIGRvbnV0LWNoYXJ0IG1peGluXG4uZG9udXQtY2hhcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAuc2xpY2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuY2hhcnQtY2VudGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gVG8gaGVscCBjb3Zlci11cCB0aGUgYmFja2dyb3VuZC1jb2xvciBibGVlZFxuLmRvbnV0LWNoYXJ0LWJvcmRlciB7XG4gIHBhZGRpbmc6IDVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBib3JkZXI6IDRweCBzb2xpZCB3aGl0ZTsgLy8gQ2hhcnRzIG9uIHdoaXRlIGJnXG4gIC8vYm9yZGVyOiA0cHggc29saWQgJHNlY3Rpb24taW50cm8tYmc7IC8vIENoYXJ0cyBvbiBncmV5IGJnXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICB3aWR0aDogMTc5cHg7XG4gIGhlaWdodDogMTc5cHg7XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDk4cHg7XG4gIGxlZnQ6IC0ycHg7IC8vIENoYXJ0cyBvbiB3aGl0ZSBiZ1xuICAvL2xlZnQ6IDE5cHg7IC8vIENoYXJ0cyBvbiBncmV5IGJnXG59XG5cbiIsIi8vIEltYWdlc1xuLy9cblxuLy8qKiBBcHBseSB0aGlzIGNsYXNzIHRvIGFkZCBzcGFjaW5nIGJlbG93IGhlcm8gaW1hZ2Vcbi5pbWctaGVyby1zcGFjZWQge1xuICBtYXJnaW4tYm90dG9tOiAkaW1nLWhlcm8tc3BhY2luZztcbn1cblxuLy8gUnVsZSB0byBkZXNpZ24gdGhlICdwb3dlcmVkIGJ5IGdvb2dsZScgbG9nbyBwbGFjZWQgYXQgdGhlIHRvcCBvZiB0aGUgbGlzdGluZ3MuXG5pbWcucGcge1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgLy8gZGVhbGluZyB3aXRoIHNtYWxsZXIgc2NyZWVucyB3aXRob3V0IG1lZGlhIHF1ZXJpZXMgYmVpbmcgbmVjZXNzYXJ5LlxuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMjBweDtcblxuICBAYXQtcm9vdCAubHQtaWU5ICYge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vIEltYWdlIHdpZHRoIGNsYXNzZXMgZm9yIHVzZSBpbiBDTVMgZWRpdG9yXG4vL1xuLndpZHRoLTI1LFxuLndpZHRoLTUwLFxuLndpZHRoLTc1LFxuLndpZHRoLTEwMCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCkge1xuXG4gIC8vIEltYWdlIHdpZHRocyBjbGFzc2VzIGZvciBkZXNrdG9wXG4gIC53aWR0aC0yNSB7IHdpZHRoOiAyNSU7IH1cbiAgLndpZHRoLTUwIHsgd2lkdGg6IDUwJTsgfVxuICAud2lkdGgtNzUgeyB3aWR0aDogNzUlOyB9XG4gIC53aWR0aC0xMDAgeyB3aWR0aDogMTAwJTsgfVxuXG4gIC8vIEltYWdlIGFsaWdubWVudCBjbGFzc2VzIGZvciBkZXNrdG9wXG4gIC5jb250ZW50LWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcblxuICAgICYuY2xlYXJib3RoIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgfVxuXG4gIC5jb250ZW50LXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG5cbiAgICAmLmNsZWFyYm90aCB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSG92ZXIgZWZmZWN0IGNhbiBiZSBhcHBsaWVkIGFzIGEgcm9sbC1vdmVyIGVmZmVjdFxuLmhvdmVyLWVmZmVjdCB7XG4gICYtZGVmYXVsdCB7XG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAwLjcwO1xuICAgICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTcwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEVtYmVkcyByZXNwb25zaXZlXG4vL1xuLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLyBNb2RpZmllciBjbGFzcyBmb3IgMTY6OSBhc3BlY3QgcmF0aW9cbi5lbWJlZC1yZXNwb25zaXZlLTE2Ynk5IHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbn1cblxuLy8gTW9kaWZpZXIgY2xhc3MgZm9yIDQ6MyBhc3BlY3QgcmF0aW9cbi5lbWJlZC1yZXNwb25zaXZlLTRieTMge1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHA6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cblxuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIGJvcmRlcjogMDtcbn0iLCIvLyBTaXplc1xuLy9cbi8vIFRoZXNlIGN1c3RvbSBzaXplIGNsYXNzZXMgY2FuIGJlIGFwcGxpZWQgdG8gaW1hZ2VzIGFuZCB2aWRlbyBtZWRpYSBpbiBDTVNcblxuQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXAsICRuby1xdWVyeTogdHJ1ZSkge1xuXG4gIC8vIDEvNCB3aWR0aFxuICAud2lkdGgtMjUge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cblxuICAvLyAxLzMgd2lkdGhcbiAgLndpZHRoLTMzIHtcbiAgICB3aWR0aDogMzMlO1xuICB9XG5cbiAgLy8gMS8yIHdpZHRoXG4gIC53aWR0aC01MCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC8vIDIvMyB3aWR0aFxuICAud2lkdGgtNjYge1xuICAgIHdpZHRoOiA2NiU7XG4gIH1cblxuICAvLyAzLzQgd2lkdGhcbiAgLndpZHRoLTc1IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG59XG5cbmlmcmFtZS5ob21lLXNoYXJlIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgaGVpZ2h0OiAxNTVweDtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCkge1xuICAgIGhlaWdodDogMTk3cHg7XG4gIH1cbn1cblxuIiwiLy8gTWFyZ2luIGFuZCBQYWRkaW5nXG5cbi5tLXgtYXV0byB7XG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuJHNwYWNlci14OiAkc3BhY2VyICFkZWZhdWx0O1xuJHNwYWNlci15OiAkc3BhY2VyICFkZWZhdWx0O1xuJHNwYWNlcnM6IChcbiAgICAgICAgMDogKFxuICAgICAgICAgICAgICAgIHg6IDAsXG4gICAgICAgICAgICAgICAgeTogMFxuICAgICAgICApLFxuICAgICAgICAxOiAoXG4gICAgICAgICAgICAgICAgeDogKCRzcGFjZXIteCAqIDEpLFxuICAgICAgICAgICAgICAgIHk6ICgkc3BhY2VyLXggKiAxKVxuICAgICAgICApLFxuICAgICAgICAyOiAoXG4gICAgICAgICAgICAgICAgeDogKCRzcGFjZXIteCAqIDIpLFxuICAgICAgICAgICAgICAgIHk6ICgkc3BhY2VyLXggKiAyKVxuICAgICAgICApLFxuICAgICAgICAzOiAoXG4gICAgICAgICAgICAgICAgeDogKCRzcGFjZXIteCAqIDMpLFxuICAgICAgICAgICAgICAgIHk6ICgkc3BhY2VyLXggKiAzKVxuICAgICAgICApLFxuICAgICAgICA0OiAoXG4gICAgICAgICAgICAgICAgeDogKCRzcGFjZXIteCAqIDQpLFxuICAgICAgICAgICAgICAgIHk6ICgkc3BhY2VyLXggKiA0KVxuICAgICAgICApLFxuICAgICAgICA1OiAoXG4gICAgICAgICAgICAgICAgeDogKCRzcGFjZXIteCAqIDUpLFxuICAgICAgICAgICAgICAgIHk6ICgkc3BhY2VyLXggKiA1KVxuICAgICAgICApLFxuICAgICAgICA3OiAoXG4gICAgICAgICAgICAgICAgeDogKCRzcGFjZXIteCAqIDcpLFxuICAgICAgICAgICAgICAgIHk6ICgkc3BhY2VyLXggKiA3KVxuICAgICAgICApLFxuICAgICAgICAxMDogKFxuICAgICAgICAgICAgICAgIHg6ICgkc3BhY2VyLXggKiAxMCksXG4gICAgICAgICAgICAgICAgeTogKCRzcGFjZXIteCAqIDEwKVxuICAgICAgICApXG4pICFkZWZhdWx0O1xuXG5AZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RocyBpbiAkc3BhY2VycyB7XG4gICAgJGxlbmd0aC14OiBtYXAtZ2V0KCRsZW5ndGhzLCB4KTtcbiAgICAkbGVuZ3RoLXk6IG1hcC1nZXQoJGxlbmd0aHMsIHkpO1xuXG4gICAgLy8gc3RvcCBwYWRkaW5nIGZyb20gaGFwcGVuaW5nIG9uIHNtYWxsIHNjcmVlbnNcbiAgICAuI3skYWJicmV2fS1hLSN7JHNpemV9IHtcbiAgICAgICN7JHByb3B9OiAkbGVuZ3RoLXkgMCAhaW1wb3J0YW50O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICAgICAgI3skcHJvcH06ICRsZW5ndGgteSAkbGVuZ3RoLXggIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gYSA9IEFsbCBzaWRlc1xuICAgIC4jeyRhYmJyZXZ9LXQtI3skc2l6ZX0ge1xuICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoLXkgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLiN7JGFiYnJldn0tci0jeyRzaXplfSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCkge1xuICAgICAgICAjeyRwcm9wfS1yaWdodDogJGxlbmd0aC14ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC4jeyRhYmJyZXZ9LWItI3skc2l6ZX0ge1xuICAgICAgI3skcHJvcH0tYm90dG9tOiAkbGVuZ3RoLXkgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLiN7JGFiYnJldn0tbC0jeyRzaXplfSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCkge1xuICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoLXggIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBeGVzXG4gICAgLiN7JGFiYnJldn0teC0jeyRzaXplfSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCkge1xuICAgICAgICAjeyRwcm9wfS1yaWdodDogJGxlbmd0aC14ICFpbXBvcnRhbnQ7XG4gICAgICAgICN7JHByb3B9LWxlZnQ6ICRsZW5ndGgteCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgICAuI3skYWJicmV2fS15LSN7JHNpemV9IHtcbiAgICAgICN7JHByb3B9LXRvcDogJGxlbmd0aC15ICFpbXBvcnRhbnQ7XG4gICAgICAjeyRwcm9wfS1ib3R0b206ICRsZW5ndGgteSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBQb3NpdGlvbmluZ1xuLnBvcy1mLXQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbmF2YmFyLWZpeGVkO1xufVxuXG4vLyBDZW50ZXJpbmdcbi5jZW50ZXItYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuIiwiLy8gU3RhdHVzXG4vL1xuXG4uZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBpbnB1dCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIFR5cG9ncmFwaHlcbi8vXG5cbi5tYWluLWNvbnRlbnQgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46MTBweCAwIDAgMTVweDtcbiAgcGFkZGluZzowO1xuICBsaSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCLigKJcIjtcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWRhcmstY29sb3I7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIG1hcmdpbi1sZWZ0Oi0xOHB4O1xuICAgICAgbWFyZ2luLXRvcDotM3B4O1xuICAgICAgZm9udC1zaXplOiRidWxsZXQtc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OjI1cHg7XG4gICAgfVxuICAgIHBhZGRpbmc6MCAwIDEwcHggMTBweDtcbiAgfVxufVxuXG4ubWFpbi1jb250ZW50IG9sIHtcbiAgbWFyZ2luOjEwcHggMCAwIDI1cHg7XG4gIHBhZGRpbmc6MDtcbiAgbGkge1xuICAgIHBhZGRpbmc6MCAwIDEwcHggMDtcbiAgfVxufVxuXG4vLyBJbmZvcm1hdGlvbmFsL0luc3RydWN0aW9uYWwgdGV4dFxuLnRleHQtcHJpbWFyeSB7XG4gIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbn1cblxuLy8gV2FybmluZy9FcnJvciB0ZXh0XG4udGV4dC1hY2NlbnQge1xuICBjb2xvcjogJGFjY2VudC1iYXNlLWNvbG9yO1xufVxuXG4vLyBXaGl0ZSB0ZXh0XG4udGV4dC13aGl0ZSB7XG4gIGNvbG9yOiAjZmZmIWltcG9ydGFudDtcbn1cblxuLy8gTGluayB3cmFwcGVycyB3aXRoIG5vIGRlZmF1bHQgdGV4dCBkZWNvcmF0aW9uXG4ubGluay1uby1kZWNvcmF0aW9uIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uaGVhZGluZy1ib3JkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy9tYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAvLyBPdmVycmlkZSBib3R0b20gbWFyZ2luIGlmIHVzZWQgd2l0aGluIGEgMS8zIHdpZHRoIGNvbHVtblxuICBAYXQtcm9vdCAucm93LTItMSAuY29sLTIgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZ3JheS14bGlnaHQ7XG4gICAgbWFyZ2luLXRvcDogLTFweCAhaW1wb3J0YW50O1xuXG4gICAgaDEsIGgyLCBoMywgaDQsIGg1IHtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogMCAkZ3JpZC1ndXR0ZXItd2lkdGgvMjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogLSgkZm9udC1zaXplLWgxLzEuNyk7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIGgyIHtcbiAgICAgIHRvcDogLSgkZm9udC1zaXplLWgyLzEuNyk7XG4gICAgfVxuICAgIGgzIHtcbiAgICAgIHRvcDogLSgkZm9udC1zaXplLWgzLzEuNyk7XG4gICAgfVxuICAgIGg0IHtcbiAgICAgIHRvcDogLSgkZm9udC1zaXplLWg0LzEuNik7XG4gICAgfVxuICAgIGg1IHtcbiAgICAgIHRvcDogLSgkZm9udC1zaXplLWg1LzEuNSk7XG4gICAgfVxuICB9XG59XG5cbi8vIEhvcml6b250YWwgcnVsZSBzcGFjaW5nXG4uaHItdi1tYXJnaW4tc21hbGwge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4vLyBIb3Jpem9udGFsIHJ1bGUgcGFydGlhbCB3aWR0aFxuLmhyLXBhcnRpYWwtd2lkdGgge1xuICBtYXgtd2lkdGg6IDkwcHg7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAkc2Vjb25kYXJ5LWJhc2UtY29sb3I7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4vLyBDZW50ZXIgaGVhZGluZ3Ncbi8vaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4vL1xuLy8gICYuaGVhZGluZy1jZW50ZXIge1xuLy8gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuLy8gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbi8vICB9XG4vL31cblxuLy8gU2VjdGlvbiBoZWFkaW5nXG4uc2VjdGlvbi1oZWFkaW5nIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbn1cblxuLy8gU2VjdGlvbiBsaW5rXG4uc2VjdGlvbi1saW5rIHtcbiAgcGFkZGluZzogNDBweCAwO1xuXG4gIC8vIENlbnRlcnMgbGluayBpbiBhIHNlY3Rpb24gZGl2XG4gIC5idG4tbGluayB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuLy8qKiBMZWFkIHRleHQgb3ZlcnJpZGVzIFRXQlMgZGVmYXVsdCBzdHlsZXNcbi5sZWFkIHtcbiAgY29sb3I6ICRncmF5LWxpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc2l6ZTogZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDEuMTUpKTsgLy8gMTZweFxuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXJlZ3VsYXI7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgLy9mb250LXNpemU6IGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNTcpKTsgLy8gMjJweFxuICAgIGZvbnQtc2l6ZTogY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS40MikpOyAvLyAyMHB4XG4gIH1cbn1cblxuLy8qKiBBZGRpdGlvbmFsIGxlYWQgY2xhc3MgZm9yIHNsaWdodGx5IGxhcmdlciB0ZXh0LlxuLmxlYWQtbGcge1xuICBAZXh0ZW5kIC5sZWFkO1xuICBmb250LXNpemU6IGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAxLjcpKTsgLy8gMjNweFxufVxuXG4vLyoqIEljb24gbGlzdCBkZWZhdWx0IGZvbnQgc2l6ZVxudWwuZmEtdWwge1xuICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLW1lZGl1bTtcbiAgfVxuXG4gIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgLmZhIHtcbiAgICAgIGNvbG9yOiAkZmEtaWNvbi1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8qKiBBZGRyZXNzIGRlZmF1bHQgZm9udCBzaXplXG5hZGRyZXNzIHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLW1lZGl1bTtcbn1cblxuLy8gVE9ETzogVG8gYmUgcmVtb3ZlZCBvbmx5IHRlc3RpbmcgZm9udCBmYW1pbHkgcmVuZGVyaW5nIG9uIHRoZSBmb250IHRlc3QgcGFnZVxuLy9cbi8vKiogTW9udHNlcnJhdCBmb250XG4uZm9udC1tb250c2VycmF0IHtcbiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcblxuICAmLmxpZ2h0LXdlaWdodCB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgfVxufVxuXG4vLyoqIEdlb21ldHJpYSBmb250XG4uZm9udC1nZW9tZXRyaWEge1xuICBmb250LWZhbWlseTogJ0dlb21ldHJpYScsIHNhbnMtc2VyaWY7XG5cbiAgJi5tZWRpdW0td2VpZ2h0IHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG59XG5cbi8vKiogUm9ib3RvIGZvbnRcbi5mb250LXJvYm90byB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcblxuICAmLmJvbGQtd2VpZ2h0IHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG59XG5cbi8vKiogVmVyZGFuYSBmb250XG4uZm9udC12ZXJkYW5hIHtcbiAgZm9udC1mYW1pbHk6ICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcblxuICAmLmJvbGQtd2VpZ2h0IHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG59XG5cbi8vKiogVE9ETzogVGhpcyBzaG91bGQgYmUgbW92ZWQgZnJvbSBoZXJlLi4uXG4uaG9tZS1pbnRybyB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtdXApIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGwtaW50cm87XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4wN2VtO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtLXVwKSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLW1lZGl1bS1pbnRybztcbiAgICBwYWRkaW5nLWxlZnQ6IDIwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMCU7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS11cCkge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZS1pbnRybztcbiAgfVxuXG4gIGNvbG9yOiAjZmZmO1xuXG4gIHN0cm9uZyB7XG4gICAgZm9udC1zaXplOiAxLjdlbTtcbiAgfVxufVxuIiwiLy8gUmVzcG9uc2l2ZTogVXRpbGl0eSBjbGFzc2VzXG4vL1xuXG4uc2hvdy1pbmxpbmUtdG91Y2gsXG4uc2hvdy1ibG9jay10b3VjaCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oaWRlLWlubGluZS10b3VjaCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5oaWRlLWJsb2NrLXRvdWNoIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi50b3VjaCB7XG4gIC5zaG93LWlubGluZS10b3VjaCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5zaG93LWJsb2NrLXRvdWNoIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuaGlkZS10b3VjaCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uaGlkZSB7XG4gIC8vICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC8vICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIC8vICBkaXNwbGF5OiBibG9jaztcblxuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgbGVmdDogLTk5OWVtICFpbXBvcnRhbnQ7XG59XG5cbi8vIElFMTAgaW4gV2luZG93cyAoUGhvbmUpIDhcbi8vXG4vLyBTdXBwb3J0IGZvciByZXNwb25zaXZlIHZpZXdzIHZpYSBtZWRpYSBxdWVyaWVzIGlzIGtpbmQgb2YgYm9ya2VkIGluIElFMTAsIGZvclxuLy8gU3VyZmFjZS9kZXNrdG9wIGluIHNwbGl0IHZpZXcgYW5kIGZvciBXaW5kb3dzIFBob25lIDguIFRoaXMgcGFydGljdWxhciBmaXhcbi8vIG11c3QgYmUgYWNjb21wYW5pZWQgYnkgYSBzbmlwcGV0IG9mIEphdmFTY3JpcHQgdG8gc25pZmYgdGhlIHVzZXIgYWdlbnQgYW5kXG4vLyBhcHBseSBzb21lIGNvbmRpdGlvbmFsIENTUyB0byAqb25seSogdGhlIFN1cmZhY2UvZGVza3RvcCBXaW5kb3dzIDguIExvb2sgYXRcbi8vIG91ciBHZXR0aW5nIFN0YXJ0ZWQgcGFnZSBmb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiB0aGlzIGJ1Zy5cbi8vXG4vLyBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHRoZSBmb2xsb3dpbmc6XG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTA0OTdcbi8vIERvY3M6IGh0dHA6Ly9nZXRib290c3RyYXAuY29tL2dldHRpbmctc3RhcnRlZC8jc3VwcG9ydC1pZTEwLXdpZHRoXG4vLyBTb3VyY2U6IGh0dHA6Ly90aW1rYWRsZWMuY29tLzIwMTMvMDEvd2luZG93cy1waG9uZS04LWFuZC1kZXZpY2Utd2lkdGgvXG4vLyBTb3VyY2U6IGh0dHA6Ly90aW1rYWRsZWMuY29tLzIwMTIvMTAvaWUxMC1zbmFwLW1vZGUtYW5kLXJlc3BvbnNpdmUtZGVzaWduL1xuXG5ALW1zLXZpZXdwb3J0IHtcbiAgd2lkdGg6IGRldmljZS13aWR0aDtcbn1cblxuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi52aXNpYmxlLXh4c21hbGwtYmxvY2ssXG4udmlzaWJsZS14eHNtYWxsLWlubGluZSxcbi52aXNpYmxlLXh4c21hbGwtaW5saW5lLWJsb2NrLFxuLnZpc2libGUteHNtYWxsLWJsb2NrLFxuLnZpc2libGUteHNtYWxsLWJsb2NrLXVwLFxuLnZpc2libGUteHNtYWxsLWlubGluZSxcbi52aXNpYmxlLXhzbWFsbC1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1zbWFsbC1ibG9jayxcbi52aXNpYmxlLXNtYWxsLWlubGluZSxcbi52aXNpYmxlLXNtYWxsLWlubGluZS1ibG9jayxcbi52aXNpYmxlLW1lZGl1bS1ibG9jayxcbi52aXNpYmxlLW1lZGl1bS1pbmxpbmUsXG4udmlzaWJsZS1tZWRpdW0taW5saW5lLWJsb2NrLFxuLnZpc2libGUtbGFyZ2UtYmxvY2ssXG4udmlzaWJsZS1sYXJnZS1pbmxpbmUsXG4udmlzaWJsZS1sYXJnZS1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS14bGFyZ2UtYmxvY2ssXG4udmlzaWJsZS14bGFyZ2UtaW5saW5lLFxuLnZpc2libGUteGxhcmdlLWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnZpc2libGUteHhzbWFsbC1ibG9jayB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHh4c21hbGwtb25seSkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXhzbWFsbC1ibG9jayB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHhzbWFsbC1vbmx5KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUteHNtYWxsLWJsb2NrLXVwIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkeHNtYWxsLXVwKSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUteHNtYWxsLWlubGluZSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHhzbWFsbC1vbmx5KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXhzbWFsbC1pbmxpbmUtYmxvY2sge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCR4c21hbGwtb25seSkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi52aXNpYmxlLXNtYWxsLWJsb2NrIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtb25seSkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXNtYWxsLWlubGluZSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLW9ubHkpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtc21hbGwtaW5saW5lLWJsb2NrIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwtb25seSkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi52aXNpYmxlLW1lZGl1bS1ibG9jayB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS1vbmx5KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbWVkaXVtLWlubGluZSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS1vbmx5KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLW1lZGl1bS1pbmxpbmUtYmxvY2sge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0tb25seSkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi52aXNpYmxlLWxhcmdlLWJsb2NrIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2Utb25seSwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbGFyZ2UtaW5saW5lIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2Utb25seSwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLWxhcmdlLWlubGluZS1ibG9jayB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlLW9ubHksICRuby1xdWVyeTogdHJ1ZSkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi52aXNpYmxlLXhsYXJnZS1ibG9jayB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHhsYXJnZS1vbmx5KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUteGxhcmdlLWlubGluZSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHhsYXJnZS1vbmx5KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXhsYXJnZS1pbmxpbmUtYmxvY2sge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCR4bGFyZ2Utb25seSkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQoJHhzbWFsbC1vbmx5KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXhzbWFsbCcpO1xufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC1vbmx5KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXNtYWxsJyk7XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS1vbmx5KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLW1lZGl1bScpO1xufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZS1vbmx5KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLWxhcmdlJyk7XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQoJHhsYXJnZS11cCwgJG5vLXF1ZXJ5OiB0cnVlKSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXhsYXJnZScpO1xufSIsIiNzbGlkaW5nLXBvcHVwIHtcbiAgYm9yZGVyLXRvcDoxcHggZG90dGVkICNmZmY7XG4gICYuc2xpZGluZy1wb3B1cC1ib3R0b20ge1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWRhcmstY29sb3I7XG4gIH1cbiAgLnBvcHVwLWNvbnRlbnQge1xuICAgICNwb3B1cC10ZXh0IHtcbiAgICAgIG1heC13aWR0aDo3MCU7XG4gICAgICBwYWRkaW5nLXRvcDoxMHB4O1xuICAgICAgcCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgfVxuICAgIH1cbiAgICAjcG9wdXAtYnV0dG9ucyB7XG4gICAgICBtYXgtd2lkdGg6MzAlO1xuICAgICAgYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogN3B4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOjdweDtcbiAgICAgICAgQGV4dGVuZCAuYnRuLCAuYnRuLXNtLCAuYnRuLXNlY29uZGFyeTtcbiAgICAgICAgYm94LXNoYWRvdzpub25lO1xuICAgICAgICB0ZXh0LXNoYWRvdzpub25lO1xuICAgICAgICBmb250LWZhbWlseTokZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICBiYWNrZ3JvdW5kOiRidG4tc2Vjb25kYXJ5LWhvdmVyLWJnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLyogU2xpZGVyICovXG5cbi5zbGljay1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmRyYWdnaW5nIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjdXJzb3I6IGhhbmQ7XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmLmRyYWdnaW5nIGltZyB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vIERlZmF1bHQgVmFyaWFibGVzXG5cbiRzbGljay1mb250LXBhdGg6IFwiLi4vZm9udHMvXCIgIWRlZmF1bHQ7XG4kc2xpY2stZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJHNsaWNrLWxvYWRlci1wYXRoOiBcIi4uL2ltYWdlc1wiICFkZWZhdWx0O1xuJHNsaWNrLWFycm93LWNvbG9yOiAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jb2xvcjogYmxhY2sgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNvbG9yLWhvdmVyOiAkc2Vjb25kYXJ5LWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNvbG9yLWFjdGl2ZTogJHNsaWNrLWRvdC1jb2xvci1ob3ZlciAhZGVmYXVsdDtcbiRzbGljay1wcmV2LWNoYXJhY3RlcjogJGZhLXZhci1hbmdsZS1sZWZ0ICFkZWZhdWx0O1xuJHNsaWNrLW5leHQtY2hhcmFjdGVyOiAkZmEtdmFyLWFuZ2xlLXJpZ2h0ICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jaGFyYWN0ZXI6ICRmYS12YXItY2lyY2xlICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1zaXplOiAxOCAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LWRlZmF1bHQ6IDEgIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjogMSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU6IDAuMjUgIWRlZmF1bHQ7XG4kc2xpY2stYXJyb3ctc2l6ZTogNTU7XG4kc2xpY2stYXJyb3ctb2Zmc2V0OiA1cHg7XG4kc2xpY2stYXJyb3ctb2Zmc2V0LXNtYWxsOiA1MHB4O1xuXG4kc2xpY2stZ3V0dGVyLXNpemU6IDEwcHg7XG5cbkBmdW5jdGlvbiBzbGljay1pbWFnZS11cmwoJHVybCkge1xuICAvLyAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhpbWFnZS11cmwpIHtcbiAgLy8gICAgICBAcmV0dXJuIGltYWdlLXVybCgkdXJsKTtcbiAgLy8gIH1cbiAgLy8gIEBlbHNlIHtcbiAgQHJldHVybiB1cmwoJHNsaWNrLWxvYWRlci1wYXRoICsgJHVybCk7XG4gIC8vICB9XG59XG5cbkBmdW5jdGlvbiBzbGljay1mb250LXVybCgkdXJsKSB7XG4gIEBpZiBmdW5jdGlvbi1leGlzdHMoZm9udC11cmwpIHtcbiAgICBAcmV0dXJuIGZvbnQtdXJsKCR1cmwpO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuIHVybCgkc2xpY2stZm9udC1wYXRoICsgJHVybCk7XG4gIH1cbn1cblxuLyogU2xpZGVyICovXG5cbi5jYXJvdXNlbCB7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAuY2Fyb3VzZWwtaW5uZXIge1xuICAgIHBhZGRpbmc6IDAgMzBweDtcbiAgICAuc2xpY2stcHJldiB7XG4gICAgICBsZWZ0OiAkc2xpY2stYXJyb3ctb2Zmc2V0O1xuICAgIH1cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICByaWdodDogJHNsaWNrLWFycm93LW9mZnNldDtcbiAgICB9XG4gICAgLnNsaWNrLWRvdHMge1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmNhcm91c2VsLXNtYWxsIHtcbiAgLmNhcm91c2VsLWlubmVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5jYXJvdXNlbC1zbWFsbC1hcnJvd3Mge1xuICAuY2Fyb3VzZWwtaW5uZXIge1xuICAgIHBhZGRpbmc6IDAgMzBweDtcbiAgfVxufVxuXG4uY2Fyb3VzZWwtbWVkaXVtIHtcbiAgLmNhcm91c2VsLWlubmVyIHtcbiAgICBwYWRkaW5nOiAwIDI1cHg7XG4gICAgLnNsaWNrLXByZXYge1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gICAgLnNsaWNrLW5leHQge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIC5zbGljay1kb3RzIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5jYXJvdXNlbC1pbnN0YWdyYW0ge1xuICAuc2xpY2stc2xpZGVyIHtcbiAgICAuc2xpY2stbGlzdCB7XG4gICAgICAuaXRlbSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgLy9tYXgtaGVpZ2h0OjkwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNhcm91c2VsLW9uZXNsaWRlIHtcbiAgLnNsaWNrLXNsaWRlciB7XG4gICAgLnNsaWNrLWxpc3Qge1xuICAgICAgLml0ZW0ge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIC8vbWF4LWhlaWdodDo5MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zbGljay1saXN0IHtcbiAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgYmFja2dyb3VuZDogI2ZmZiBzbGljay1pbWFnZS11cmwoXCIvYWpheC1sb2FkZXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICB9XG59XG5cbi8qIEd1dHRlcnMgKi9cblxuLnNsaWNrLXdpdGgtZ3V0dGVycyB7XG4gIC5zbGljay1zbGlkZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkc2xpY2stZ3V0dGVyLXNpemUvMjtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc2xpY2stZ3V0dGVyLXNpemUvMjtcbiAgfVxufVxuXG4vKiAqTVQgLSBzcGVjaWZpYyBzbGlkZSBpdGVtIHN0eWxpbmcgKi9cbi5zbGljay1zbGlkZXIge1xuICAmLndpdGgtYm9yZGVyIHtcbiAgICAuc2xpY2stbGlzdCB7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkZ3JheS14bGlnaHQ7XG4gICAgICAuaXRlbS1wbGFpbiB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGdyYXkteGxpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2xpY2stbGlzdCB7XG4gICAgLml0ZW0tcGxhaW4ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IC8qIGNvbHVtbiB8IHJvdyAqL1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAvL21heC1oZWlnaHQ6OTBweDtcbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtcC1jYXJvdXNlbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vKiBBcnJvd3MgKi9cblxuLnNsaWNrLXByZXYsXG4uc2xpY2stbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogI3skc2xpY2stYXJyb3ctc2l6ZX1weDtcbiAgd2lkdGg6IGF1dG87IC8vI3skc2xpY2stYXJyb3ctc2l6ZX1weDtcbiAgbGluZS1oZWlnaHQ6IDBweDtcbiAgZm9udC1zaXplOiAwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0jeyRzbGljay1hcnJvdy1zaXplIC8gMn1weDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICB9XG4gIH1cbiAgJi5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xuICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XG4gIH1cbn1cblxuLnNsaWNrLXByZXY6YmVmb3JlLCAuc2xpY2stbmV4dDpiZWZvcmUge1xuICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNsaWNrLWFycm93LXNpemUpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRzbGljay1hcnJvdy1jb2xvcjtcbiAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi5zbGljay1wcmV2IHtcbiAgbGVmdDogLSRzbGljay1hcnJvdy1vZmZzZXQtc21hbGw7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwKSB7XG4gICAgbGVmdDogLSRzbGljay1hcnJvdy1vZmZzZXQ7XG4gIH1cbiAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAtJHNsaWNrLWFycm93LW9mZnNldC1zbWFsbDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCkge1xuICAgICAgcmlnaHQ6IC0kc2xpY2stYXJyb3ctb2Zmc2V0O1xuICAgIH1cbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICBjb250ZW50OiAkc2xpY2stbmV4dC1jaGFyYWN0ZXI7XG4gICAgfVxuICB9XG59XG5cbi5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IC0kc2xpY2stYXJyb3ctb2Zmc2V0LXNtYWxsO1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbC11cCkge1xuICAgIHJpZ2h0OiAtJHNsaWNrLWFycm93LW9mZnNldDtcbiAgfVxuICBbZGlyPVwicnRsXCJdICYge1xuICAgIGxlZnQ6IC0kc2xpY2stYXJyb3ctb2Zmc2V0LXNtYWxsO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsLXVwKSB7XG4gICAgICBsZWZ0OiAtJHNsaWNrLWFycm93LW9mZnNldDtcbiAgICB9XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBJbmxpbmUgcHJldiAmIG5leHQgYnV0dG9uc1xuLnNsaWNrLWlubGluZS1wcmV2LFxuLnNsaWNrLWlubGluZS1uZXh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6ICN7JHNsaWNrLWFycm93LXNpemV9cHg7XG59XG5cbi8qIERvdHMgKi9cblxuLy8uc2xpY2stc2xpZGVyIHtcbi8vICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4vL31cblxuLy8gQ3VzdG9tIGNsYXNzIHRoYXQgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBzbGljayBjb250YWluZXIgaWZcbi8vIGRvdHMgYXJlIGVuYWJsZWQuXG4vLyBBcyBkb3RzIGFyZSBwb3NpdGlvbmVkIGFic29sdXRlbHkgYSBib3R0b20gbWFyZ2luIGlzIHJlcXVpcmVkLlxuLy8gV2l0aG91dCB0aGlzIGNsYXNzIHRoZSBzbGlkZXIgcmVtYWlucyBuZXV0cmFsIGFib3V0IGJvdHRvbSBzcGFjZS5cbi5zbGljay1oYXMtZG90cyB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG5cbi5zbGljay1kb3RzIHtcbiAgLy8gUG9zaXRpb25lZCBhYnNvbHV0ZWx5LHNvIHRoYXQgdGhleSBkbyBub3QgY29udHJpYnV0ZSB0b3dhcmRzXG4gIC8vIHRoZSBoZWlnaHQgb2YgdGhlIHNsaWRlciBhbmQgdGhlcmVmb3JlIGluZmx1ZW5jZSB0aGUgdmVydGljYWxcbiAgLy8gY2VudGVyaW5nIG9mIHRoZSBwcmV2L25leHQgYnV0dG9ucyFcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxcHggMCAwIDA7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8vIFJlc2V0IGZvciBzdGFuZGFyZCBVTHNcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJvdHRvbTogLTQ1cHg7XG4gIGhlaWdodDogNDVweDtcblxuICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHdpZHRoOiAxNXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHRvcDoxMHB4O1xuICB9XG5cbiAgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgICAgZm9udC1zaXplOiAwcHg7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBjb250ZW50OiAkc2xpY2stZG90LWNoYXJhY3RlcjtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKCRzbGljay1kb3Qtc2l6ZSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yO1xuICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yLWFjdGl2ZTtcbiAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XG4gICAgfVxuXG4gIH1cbn1cblxuLnNsaWNrLXNsaWRlciB7XG4gIC8vIFJlbW92ZXMgOmZvY3VzIHN0YXRlXG4gICo6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuLnNsaWNrLXNsaWRlIGltZy5zbGljay1sb2FkaW5nIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmpzIHtcbiAgLy8gc3RvcCBjYXJvdXNlbCBjb250ZW50IGZyb20gc2hvd2luZyBpbiBhIHdheSB0aGF0IGRvZXNuJ3QgbWFzayB0aGUgaGVpZ2h0IG9mIGVhY2ggc2xpZGUuXG4gIC8vIG9uZSBlbGVtZW50IG9mIHJlY3RpZnlpbmcgdGhlIEZPVUMgaXNzdWVzLlxuICAuY2Fyb3VzZWwtaW5uZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaGVpZ2h0OiAwO1xuICB9XG59XG5cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FvQkdBLEFBQUEsSUFBSSxDQUFDLFFBQVEsQ0FBQztFQUNaLGFBQWEsRUFBRSxJQUFJO0NBQ3BCOztBQ0xEOzs7R0FHRztBR0hIO2dDQUNnQztBQUVoQyxVQUFVO0VBQ1IsV0FBVyxFQUFFLGFBQWE7RUFDMUIsR0FBRyxFQUFFLDZEQUFnRTtFQUNyRSxHQUFHLEVBQUUsb0VBQXVFLENBQUMsMkJBQTJCLEVBQ3RHLCtEQUFrRSxDQUFDLGVBQWUsRUFDbEYsOERBQWlFLENBQUMsY0FBYyxFQUNoRiw2REFBZ0UsQ0FBQyxrQkFBa0IsRUFDbkYsZ0ZBQW1GLENBQUMsYUFBYTtFQUVuRyxXQUFXLEVBQUUsTUFBTTtFQUNuQixVQUFVLEVBQUUsTUFB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 */
