/*-----------------------------------------------------------------------------
WallBee Override
----------------------------------*/
/*color Scheme*/
/*(@line-height-computed + (@padding-base-vertical * 2) + 2);*/
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}
audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
[hidden],
template {
  display: none;
}
a {
  background-color: transparent;
}
a:active,
a:hover {
  outline: 0;
}
abbr[title] {
  border-bottom: 1px dotted;
}
b,
strong {
  font-weight: bold;
}
dfn {
  font-style: italic;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
mark {
  background: #ff0;
  color: #000;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}
img {
  border: 0;
}
svg:not(:root) {
  overflow: hidden;
}
figure {
  margin: 1em 40px;
}
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}
pre {
  overflow: auto;
}
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}
button {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}
button[disabled],
html input[disabled] {
  cursor: default;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
input {
  line-height: normal;
}
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
input[type="search"] {
  -webkit-appearance: textfield;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
legend {
  border: 0;
  padding: 0;
}
textarea {
  overflow: auto;
}
optgroup {
  font-weight: bold;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
td,
th {
  padding: 0;
}
/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  select {
    background: #fff !important;
  }
  .navbar {
    display: none;
  }
  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important;
  }
  .label {
    border: 1px solid #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #fff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important;
  }
}
@font-face {
  font-family: 'Glyphicons Halflings';
  src: url('../../font/bootstrap/fonts/glyphicons-halflings-regular.eot');
  src: url('../../font/bootstrap/fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../../font/bootstrap/fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../../font/bootstrap/fonts/glyphicons-halflings-regular.woff') format('woff'), url('../../font/bootstrap/fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../../font/bootstrap/fonts/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: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 12px;
  line-height: 1.42857143;
  color: #333333;
  background-color: #EDEDED;
}
input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
a {
  color: #174142;
  text-decoration: none;
}
a:hover,
a:focus {
  color: #030909;
  text-decoration: underline;
}
a:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
figure {
  margin: 0;
}
img {
  vertical-align: middle;
}
.img-responsive,
.thumbnail > img,
.thumbnail a > img,
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  display: block;
  max-width: 100%;
  height: auto;
}
.img-rounded {
  border-radius: 0px;
}
.img-thumbnail {
  padding: 4px;
  line-height: 1.42857143;
  background-color: #EDEDED;
  border: 1px solid #ddd;
  border-radius: 0px;
  -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: 17px;
  margin-bottom: 17px;
  border: 0;
  border-top: 1px solid #eeeeee;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}
[role="button"] {
  cursor: pointer;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: inherit;
  font-weight: 500;
  line-height: 1.1;
  color: inherit;
}
h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small,
.h1 small,
.h2 small,
.h3 small,
.h4 small,
.h5 small,
.h6 small,
h1 .small,
h2 .small,
h3 .small,
h4 .small,
h5 .small,
h6 .small,
.h1 .small,
.h2 .small,
.h3 .small,
.h4 .small,
.h5 .small,
.h6 .small {
  font-weight: normal;
  line-height: 1;
  color: #dddddd;
}
h1,
.h1,
h2,
.h2,
h3,
.h3 {
  margin-top: 17px;
  margin-bottom: 8.5px;
}
h1 small,
.h1 small,
h2 small,
.h2 small,
h3 small,
.h3 small,
h1 .small,
.h1 .small,
h2 .small,
.h2 .small,
h3 .small,
.h3 .small {
  font-size: 65%;
}
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  margin-top: 8.5px;
  margin-bottom: 8.5px;
}
h4 small,
.h4 small,
h5 small,
.h5 small,
h6 small,
.h6 small,
h4 .small,
.h4 .small,
h5 .small,
.h5 .small,
h6 .small,
.h6 .small {
  font-size: 75%;
}
h1,
.h1 {
  font-size: 31px;
}
h2,
.h2 {
  font-size: 25px;
}
h3,
.h3 {
  font-size: 21px;
}
h4,
.h4 {
  font-size: 15px;
}
h5,
.h5 {
  font-size: 12px;
}
h6,
.h6 {
  font-size: 11px;
}
p {
  margin: 0 0 8.5px;
}
.lead {
  margin-bottom: 17px;
  font-size: 13px;
  font-weight: 300;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .lead {
    font-size: 18px;
  }
}
small,
.small {
  font-size: 91%;
}
mark,
.mark {
  background-color: #fcf8e3;
  padding: 0.2em;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.text-center {
  text-align: center;
}
.text-justify {
  text-align: justify;
}
.text-nowrap {
  white-space: nowrap;
}
.text-lowercase {
  text-transform: lowercase;
}
.text-uppercase {
  text-transform: uppercase;
}
.text-capitalize {
  text-transform: capitalize;
}
.text-muted {
  color: #dddddd;
}
.text-primary {
  color: #174142;
}
a.text-primary:hover {
  color: #0a1c1c;
}
.text-success {
  color: #3c763d;
}
a.text-success:hover {
  color: #2b542c;
}
.text-info {
  color: #31708f;
}
a.text-info:hover {
  color: #245269;
}
.text-warning {
  color: #8a6d3b;
}
a.text-warning:hover {
  color: #66512c;
}
.text-danger {
  color: #a94442;
}
a.text-danger:hover {
  color: #843534;
}
.bg-primary {
  color: #fff;
  background-color: #174142;
}
a.bg-primary:hover {
  background-color: #0a1c1c;
}
.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: #fcf8e3;
}
a.bg-warning:hover {
  background-color: #f7ecb5;
}
.bg-danger {
  background-color: #f2dede;
}
a.bg-danger:hover {
  background-color: #e4b9b9;
}
.page-header {
  padding-bottom: 7.5px;
  margin: 34px 0 17px;
  border-bottom: 1px solid #eeeeee;
}
ul,
ol {
  margin-top: 0;
  margin-bottom: 8.5px;
}
ul ul,
ol ul,
ul ol,
ol ol {
  margin-bottom: 0;
}
.list-unstyled {
  padding-left: 0;
  list-style: none;
}
.list-inline {
  padding-left: 0;
  list-style: none;
  margin-left: -5px;
}
.list-inline > li {
  display: inline-block;
  padding-left: 5px;
  padding-right: 5px;
}
dl {
  margin-top: 0;
  margin-bottom: 17px;
}
dt,
dd {
  line-height: 1.42857143;
}
dt {
  font-weight: bold;
}
dd {
  margin-left: 0;
}
@media (min-width: 768px) {
  .dl-horizontal dt {
    float: left;
    width: 160px;
    clear: left;
    text-align: right;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .dl-horizontal dd {
    margin-left: 180px;
  }
}
abbr[title],
abbr[data-original-title] {
  cursor: help;
  border-bottom: 1px dotted #dddddd;
}
.initialism {
  font-size: 90%;
  text-transform: uppercase;
}
blockquote {
  padding: 8.5px 17px;
  margin: 0 0 17px;
  font-size: 15px;
  border-left: 5px solid #eeeeee;
}
blockquote p:last-child,
blockquote ul:last-child,
blockquote ol:last-child {
  margin-bottom: 0;
}
blockquote footer,
blockquote small,
blockquote .small {
  display: block;
  font-size: 80%;
  line-height: 1.42857143;
  color: #dddddd;
}
blockquote footer:before,
blockquote small:before,
blockquote .small:before {
  content: '\2014 \00A0';
}
.blockquote-reverse,
blockquote.pull-right {
  padding-right: 15px;
  padding-left: 0;
  border-right: 5px solid #eeeeee;
  border-left: 0;
  text-align: right;
}
.blockquote-reverse footer:before,
blockquote.pull-right footer:before,
.blockquote-reverse small:before,
blockquote.pull-right small:before,
.blockquote-reverse .small:before,
blockquote.pull-right .small:before {
  content: '';
}
.blockquote-reverse footer:after,
blockquote.pull-right footer:after,
.blockquote-reverse small:after,
blockquote.pull-right small:after,
.blockquote-reverse .small:after,
blockquote.pull-right .small:after {
  content: '\00A0 \2014';
}
address {
  margin-bottom: 17px;
  font-style: normal;
  line-height: 1.42857143;
}
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: 0px;
}
kbd {
  padding: 2px 4px;
  font-size: 90%;
  color: #fff;
  background-color: #333;
  border-radius: 0px;
  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: 8px;
  margin: 0 0 8.5px;
  font-size: 11px;
  line-height: 1.42857143;
  word-break: break-all;
  word-wrap: break-word;
  color: #333333;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 0px;
}
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: 10px;
  padding-right: 10px;
}
@media (min-width: 768px) {
  .container {
    width: 740px;
  }
}
@media (min-width: 992px) {
  .container {
    width: 960px;
  }
}
@media (min-width: 1200px) {
  .container {
    width: 1160px;
  }
}
.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-left: 10px;
  padding-right: 10px;
}
.row {
  margin-left: -10px;
  margin-right: -10px;
}
.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: 10px;
  padding-right: 10px;
}
.col-xs-1,
.col-xs-2,
.col-xs-3,
.col-xs-4,
.col-xs-5,
.col-xs-6,
.col-xs-7,
.col-xs-8,
.col-xs-9,
.col-xs-10,
.col-xs-11,
.col-xs-12 {
  float: left;
}
.col-xs-12 {
  width: 100%;
}
.col-xs-11 {
  width: 91.66666667%;
}
.col-xs-10 {
  width: 83.33333333%;
}
.col-xs-9 {
  width: 75%;
}
.col-xs-8 {
  width: 66.66666667%;
}
.col-xs-7 {
  width: 58.33333333%;
}
.col-xs-6 {
  width: 50%;
}
.col-xs-5 {
  width: 41.66666667%;
}
.col-xs-4 {
  width: 33.33333333%;
}
.col-xs-3 {
  width: 25%;
}
.col-xs-2 {
  width: 16.66666667%;
}
.col-xs-1 {
  width: 8.33333333%;
}
.col-xs-pull-12 {
  right: 100%;
}
.col-xs-pull-11 {
  right: 91.66666667%;
}
.col-xs-pull-10 {
  right: 83.33333333%;
}
.col-xs-pull-9 {
  right: 75%;
}
.col-xs-pull-8 {
  right: 66.66666667%;
}
.col-xs-pull-7 {
  right: 58.33333333%;
}
.col-xs-pull-6 {
  right: 50%;
}
.col-xs-pull-5 {
  right: 41.66666667%;
}
.col-xs-pull-4 {
  right: 33.33333333%;
}
.col-xs-pull-3 {
  right: 25%;
}
.col-xs-pull-2 {
  right: 16.66666667%;
}
.col-xs-pull-1 {
  right: 8.33333333%;
}
.col-xs-pull-0 {
  right: auto;
}
.col-xs-push-12 {
  left: 100%;
}
.col-xs-push-11 {
  left: 91.66666667%;
}
.col-xs-push-10 {
  left: 83.33333333%;
}
.col-xs-push-9 {
  left: 75%;
}
.col-xs-push-8 {
  left: 66.66666667%;
}
.col-xs-push-7 {
  left: 58.33333333%;
}
.col-xs-push-6 {
  left: 50%;
}
.col-xs-push-5 {
  left: 41.66666667%;
}
.col-xs-push-4 {
  left: 33.33333333%;
}
.col-xs-push-3 {
  left: 25%;
}
.col-xs-push-2 {
  left: 16.66666667%;
}
.col-xs-push-1 {
  left: 8.33333333%;
}
.col-xs-push-0 {
  left: auto;
}
.col-xs-offset-12 {
  margin-left: 100%;
}
.col-xs-offset-11 {
  margin-left: 91.66666667%;
}
.col-xs-offset-10 {
  margin-left: 83.33333333%;
}
.col-xs-offset-9 {
  margin-left: 75%;
}
.col-xs-offset-8 {
  margin-left: 66.66666667%;
}
.col-xs-offset-7 {
  margin-left: 58.33333333%;
}
.col-xs-offset-6 {
  margin-left: 50%;
}
.col-xs-offset-5 {
  margin-left: 41.66666667%;
}
.col-xs-offset-4 {
  margin-left: 33.33333333%;
}
.col-xs-offset-3 {
  margin-left: 25%;
}
.col-xs-offset-2 {
  margin-left: 16.66666667%;
}
.col-xs-offset-1 {
  margin-left: 8.33333333%;
}
.col-xs-offset-0 {
  margin-left: 0%;
}
@media (min-width: 768px) {
  .col-sm-1,
  .col-sm-2,
  .col-sm-3,
  .col-sm-4,
  .col-sm-5,
  .col-sm-6,
  .col-sm-7,
  .col-sm-8,
  .col-sm-9,
  .col-sm-10,
  .col-sm-11,
  .col-sm-12 {
    float: left;
  }
  .col-sm-12 {
    width: 100%;
  }
  .col-sm-11 {
    width: 91.66666667%;
  }
  .col-sm-10 {
    width: 83.33333333%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-8 {
    width: 66.66666667%;
  }
  .col-sm-7 {
    width: 58.33333333%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-5 {
    width: 41.66666667%;
  }
  .col-sm-4 {
    width: 33.33333333%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-2 {
    width: 16.66666667%;
  }
  .col-sm-1 {
    width: 8.33333333%;
  }
  .col-sm-pull-12 {
    right: 100%;
  }
  .col-sm-pull-11 {
    right: 91.66666667%;
  }
  .col-sm-pull-10 {
    right: 83.33333333%;
  }
  .col-sm-pull-9 {
    right: 75%;
  }
  .col-sm-pull-8 {
    right: 66.66666667%;
  }
  .col-sm-pull-7 {
    right: 58.33333333%;
  }
  .col-sm-pull-6 {
    right: 50%;
  }
  .col-sm-pull-5 {
    right: 41.66666667%;
  }
  .col-sm-pull-4 {
    right: 33.33333333%;
  }
  .col-sm-pull-3 {
    right: 25%;
  }
  .col-sm-pull-2 {
    right: 16.66666667%;
  }
  .col-sm-pull-1 {
    right: 8.33333333%;
  }
  .col-sm-pull-0 {
    right: auto;
  }
  .col-sm-push-12 {
    left: 100%;
  }
  .col-sm-push-11 {
    left: 91.66666667%;
  }
  .col-sm-push-10 {
    left: 83.33333333%;
  }
  .col-sm-push-9 {
    left: 75%;
  }
  .col-sm-push-8 {
    left: 66.66666667%;
  }
  .col-sm-push-7 {
    left: 58.33333333%;
  }
  .col-sm-push-6 {
    left: 50%;
  }
  .col-sm-push-5 {
    left: 41.66666667%;
  }
  .col-sm-push-4 {
    left: 33.33333333%;
  }
  .col-sm-push-3 {
    left: 25%;
  }
  .col-sm-push-2 {
    left: 16.66666667%;
  }
  .col-sm-push-1 {
    left: 8.33333333%;
  }
  .col-sm-push-0 {
    left: auto;
  }
  .col-sm-offset-12 {
    margin-left: 100%;
  }
  .col-sm-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-sm-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-sm-offset-9 {
    margin-left: 75%;
  }
  .col-sm-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-sm-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-sm-offset-6 {
    margin-left: 50%;
  }
  .col-sm-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-sm-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-sm-offset-3 {
    margin-left: 25%;
  }
  .col-sm-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-sm-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-sm-offset-0 {
    margin-left: 0%;
  }
}
@media (min-width: 992px) {
  .col-md-1,
  .col-md-2,
  .col-md-3,
  .col-md-4,
  .col-md-5,
  .col-md-6,
  .col-md-7,
  .col-md-8,
  .col-md-9,
  .col-md-10,
  .col-md-11,
  .col-md-12 {
    float: left;
  }
  .col-md-12 {
    width: 100%;
  }
  .col-md-11 {
    width: 91.66666667%;
  }
  .col-md-10 {
    width: 83.33333333%;
  }
  .col-md-9 {
    width: 75%;
  }
  .col-md-8 {
    width: 66.66666667%;
  }
  .col-md-7 {
    width: 58.33333333%;
  }
  .col-md-6 {
    width: 50%;
  }
  .col-md-5 {
    width: 41.66666667%;
  }
  .col-md-4 {
    width: 33.33333333%;
  }
  .col-md-3 {
    width: 25%;
  }
  .col-md-2 {
    width: 16.66666667%;
  }
  .col-md-1 {
    width: 8.33333333%;
  }
  .col-md-pull-12 {
    right: 100%;
  }
  .col-md-pull-11 {
    right: 91.66666667%;
  }
  .col-md-pull-10 {
    right: 83.33333333%;
  }
  .col-md-pull-9 {
    right: 75%;
  }
  .col-md-pull-8 {
    right: 66.66666667%;
  }
  .col-md-pull-7 {
    right: 58.33333333%;
  }
  .col-md-pull-6 {
    right: 50%;
  }
  .col-md-pull-5 {
    right: 41.66666667%;
  }
  .col-md-pull-4 {
    right: 33.33333333%;
  }
  .col-md-pull-3 {
    right: 25%;
  }
  .col-md-pull-2 {
    right: 16.66666667%;
  }
  .col-md-pull-1 {
    right: 8.33333333%;
  }
  .col-md-pull-0 {
    right: auto;
  }
  .col-md-push-12 {
    left: 100%;
  }
  .col-md-push-11 {
    left: 91.66666667%;
  }
  .col-md-push-10 {
    left: 83.33333333%;
  }
  .col-md-push-9 {
    left: 75%;
  }
  .col-md-push-8 {
    left: 66.66666667%;
  }
  .col-md-push-7 {
    left: 58.33333333%;
  }
  .col-md-push-6 {
    left: 50%;
  }
  .col-md-push-5 {
    left: 41.66666667%;
  }
  .col-md-push-4 {
    left: 33.33333333%;
  }
  .col-md-push-3 {
    left: 25%;
  }
  .col-md-push-2 {
    left: 16.66666667%;
  }
  .col-md-push-1 {
    left: 8.33333333%;
  }
  .col-md-push-0 {
    left: auto;
  }
  .col-md-offset-12 {
    margin-left: 100%;
  }
  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-md-offset-0 {
    margin-left: 0%;
  }
}
@media (min-width: 1200px) {
  .col-lg-1,
  .col-lg-2,
  .col-lg-3,
  .col-lg-4,
  .col-lg-5,
  .col-lg-6,
  .col-lg-7,
  .col-lg-8,
  .col-lg-9,
  .col-lg-10,
  .col-lg-11,
  .col-lg-12 {
    float: left;
  }
  .col-lg-12 {
    width: 100%;
  }
  .col-lg-11 {
    width: 91.66666667%;
  }
  .col-lg-10 {
    width: 83.33333333%;
  }
  .col-lg-9 {
    width: 75%;
  }
  .col-lg-8 {
    width: 66.66666667%;
  }
  .col-lg-7 {
    width: 58.33333333%;
  }
  .col-lg-6 {
    width: 50%;
  }
  .col-lg-5 {
    width: 41.66666667%;
  }
  .col-lg-4 {
    width: 33.33333333%;
  }
  .col-lg-3 {
    width: 25%;
  }
  .col-lg-2 {
    width: 16.66666667%;
  }
  .col-lg-1 {
    width: 8.33333333%;
  }
  .col-lg-pull-12 {
    right: 100%;
  }
  .col-lg-pull-11 {
    right: 91.66666667%;
  }
  .col-lg-pull-10 {
    right: 83.33333333%;
  }
  .col-lg-pull-9 {
    right: 75%;
  }
  .col-lg-pull-8 {
    right: 66.66666667%;
  }
  .col-lg-pull-7 {
    right: 58.33333333%;
  }
  .col-lg-pull-6 {
    right: 50%;
  }
  .col-lg-pull-5 {
    right: 41.66666667%;
  }
  .col-lg-pull-4 {
    right: 33.33333333%;
  }
  .col-lg-pull-3 {
    right: 25%;
  }
  .col-lg-pull-2 {
    right: 16.66666667%;
  }
  .col-lg-pull-1 {
    right: 8.33333333%;
  }
  .col-lg-pull-0 {
    right: auto;
  }
  .col-lg-push-12 {
    left: 100%;
  }
  .col-lg-push-11 {
    left: 91.66666667%;
  }
  .col-lg-push-10 {
    left: 83.33333333%;
  }
  .col-lg-push-9 {
    left: 75%;
  }
  .col-lg-push-8 {
    left: 66.66666667%;
  }
  .col-lg-push-7 {
    left: 58.33333333%;
  }
  .col-lg-push-6 {
    left: 50%;
  }
  .col-lg-push-5 {
    left: 41.66666667%;
  }
  .col-lg-push-4 {
    left: 33.33333333%;
  }
  .col-lg-push-3 {
    left: 25%;
  }
  .col-lg-push-2 {
    left: 16.66666667%;
  }
  .col-lg-push-1 {
    left: 8.33333333%;
  }
  .col-lg-push-0 {
    left: auto;
  }
  .col-lg-offset-12 {
    margin-left: 100%;
  }
  .col-lg-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-lg-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-lg-offset-9 {
    margin-left: 75%;
  }
  .col-lg-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-lg-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-lg-offset-6 {
    margin-left: 50%;
  }
  .col-lg-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-lg-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-lg-offset-3 {
    margin-left: 25%;
  }
  .col-lg-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-lg-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-lg-offset-0 {
    margin-left: 0%;
  }
}
table {
  background-color: transparent;
}
caption {
  padding-top: 8px;
  padding-bottom: 8px;
  color: #dddddd;
  text-align: left;
}
th {
  text-align: left;
}
.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 17px;
}
.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > tbody > tr > td,
.table > tfoot > tr > td {
  padding: 8px;
  line-height: 1.42857143;
  border-top: 1px solid #ddd;
}
.table > thead > tr > th {
  vertical-align: bottom;
  border-bottom: 2px solid #ddd;
}
.table > caption + thead > tr:first-child > th,
.table > colgroup + thead > tr:first-child > th,
.table > thead:first-child > tr:first-child > th,
.table > caption + thead > tr:first-child > td,
.table > colgroup + thead > tr:first-child > td,
.table > thead:first-child > tr:first-child > td {
  border-top: 0;
}
.table > tbody + tbody {
  border-top: 2px solid #ddd;
}
.table-condensed > thead > tr > th,
.table-condensed > tbody > tr > th,
.table-condensed > tfoot > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > td {
  padding: 5px;
}
.table-bordered {
  border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > tbody > tr > th,
.table-bordered > tfoot > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > tbody > tr > td,
.table-bordered > tfoot > tr > td {
  border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > thead > tr > td {
  border-bottom-width: 2px;
}
.table-striped > tbody > tr:nth-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 > tbody > tr > td.active,
.table > tfoot > tr > td.active,
.table > thead > tr > th.active,
.table > tbody > tr > th.active,
.table > tfoot > tr > th.active,
.table > thead > tr.active > td,
.table > tbody > tr.active > td,
.table > tfoot > tr.active > td,
.table > thead > tr.active > th,
.table > tbody > tr.active > th,
.table > tfoot > tr.active > th {
  background-color: #f5f5f5;
}
.table-hover > tbody > tr > td.active:hover,
.table-hover > tbody > tr > th.active:hover,
.table-hover > tbody > tr.active:hover > td,
.table-hover > tbody > tr:hover > .active,
.table-hover > tbody > tr.active:hover > th {
  background-color: #e8e8e8;
}
.table > thead > tr > td.success,
.table > tbody > tr > td.success,
.table > tfoot > tr > td.success,
.table > thead > tr > th.success,
.table > tbody > tr > th.success,
.table > tfoot > tr > th.success,
.table > thead > tr.success > td,
.table > tbody > tr.success > td,
.table > tfoot > tr.success > td,
.table > thead > tr.success > th,
.table > tbody > tr.success > th,
.table > tfoot > tr.success > th {
  background-color: #dff0d8;
}
.table-hover > tbody > tr > td.success:hover,
.table-hover > tbody > tr > th.success:hover,
.table-hover > tbody > tr.success:hover > td,
.table-hover > tbody > tr:hover > .success,
.table-hover > tbody > tr.success:hover > th {
  background-color: #d0e9c6;
}
.table > thead > tr > td.info,
.table > tbody > tr > td.info,
.table > tfoot > tr > td.info,
.table > thead > tr > th.info,
.table > tbody > tr > th.info,
.table > tfoot > tr > th.info,
.table > thead > tr.info > td,
.table > tbody > tr.info > td,
.table > tfoot > tr.info > td,
.table > thead > tr.info > th,
.table > tbody > tr.info > th,
.table > tfoot > tr.info > th {
  background-color: #d9edf7;
}
.table-hover > tbody > tr > td.info:hover,
.table-hover > tbody > tr > th.info:hover,
.table-hover > tbody > tr.info:hover > td,
.table-hover > tbody > tr:hover > .info,
.table-hover > tbody > tr.info:hover > th {
  background-color: #c4e3f3;
}
.table > thead > tr > td.warning,
.table > tbody > tr > td.warning,
.table > tfoot > tr > td.warning,
.table > thead > tr > th.warning,
.table > tbody > tr > th.warning,
.table > tfoot > tr > th.warning,
.table > thead > tr.warning > td,
.table > tbody > tr.warning > td,
.table > tfoot > tr.warning > td,
.table > thead > tr.warning > th,
.table > tbody > tr.warning > th,
.table > tfoot > tr.warning > th {
  background-color: #fcf8e3;
}
.table-hover > tbody > tr > td.warning:hover,
.table-hover > tbody > tr > th.warning:hover,
.table-hover > tbody > tr.warning:hover > td,
.table-hover > tbody > tr:hover > .warning,
.table-hover > tbody > tr.warning:hover > th {
  background-color: #faf2cc;
}
.table > thead > tr > td.danger,
.table > tbody > tr > td.danger,
.table > tfoot > tr > td.danger,
.table > thead > tr > th.danger,
.table > tbody > tr > th.danger,
.table > tfoot > tr > th.danger,
.table > thead > tr.danger > td,
.table > tbody > tr.danger > td,
.table > tfoot > tr.danger > td,
.table > thead > tr.danger > th,
.table > tbody > tr.danger > th,
.table > tfoot > tr.danger > th {
  background-color: #f2dede;
}
.table-hover > tbody > tr > td.danger:hover,
.table-hover > tbody > tr > th.danger:hover,
.table-hover > tbody > tr.danger:hover > td,
.table-hover > tbody > tr:hover > .danger,
.table-hover > tbody > tr.danger:hover > th {
  background-color: #ebcccc;
}
.table-responsive {
  overflow-x: auto;
  min-height: 0.01%;
}
@media screen and (max-width: 767px) {
  .table-responsive {
    width: 100%;
    margin-bottom: 12.75px;
    overflow-y: hidden;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    border: 1px solid #ddd;
  }
  .table-responsive > .table {
    margin-bottom: 0;
  }
  .table-responsive > .table > thead > tr > th,
  .table-responsive > .table > tbody > tr > th,
  .table-responsive > .table > tfoot > tr > th,
  .table-responsive > .table > thead > tr > td,
  .table-responsive > .table > tbody > tr > td,
  .table-responsive > .table > tfoot > tr > td {
    white-space: nowrap;
  }
  .table-responsive > .table-bordered {
    border: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:first-child,
  .table-responsive > .table-bordered > tbody > tr > th:first-child,
  .table-responsive > .table-bordered > tfoot > tr > th:first-child,
  .table-responsive > .table-bordered > thead > tr > td:first-child,
  .table-responsive > .table-bordered > tbody > tr > td:first-child,
  .table-responsive > .table-bordered > tfoot > tr > td:first-child {
    border-left: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:last-child,
  .table-responsive > .table-bordered > tbody > tr > th:last-child,
  .table-responsive > .table-bordered > tfoot > tr > th:last-child,
  .table-responsive > .table-bordered > thead > tr > td:last-child,
  .table-responsive > .table-bordered > tbody > tr > td:last-child,
  .table-responsive > .table-bordered > tfoot > tr > td:last-child {
    border-right: 0;
  }
  .table-responsive > .table-bordered > tbody > tr:last-child > th,
  .table-responsive > .table-bordered > tfoot > tr:last-child > th,
  .table-responsive > .table-bordered > tbody > tr:last-child > td,
  .table-responsive > .table-bordered > tfoot > tr:last-child > td {
    border-bottom: 0;
  }
}
fieldset {
  padding: 0;
  margin: 0;
  border: 0;
  min-width: 0;
}
legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 17px;
  font-size: 18px;
  line-height: inherit;
  color: #333333;
  border: 0;
  border-bottom: 1px solid #e5e5e5;
}
label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: bold;
}
input[type="search"] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  line-height: normal;
}
input[type="file"] {
  display: block;
}
input[type="range"] {
  display: block;
  width: 100%;
}
select[multiple],
select[size] {
  height: auto;
}
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
output {
  display: block;
  padding-top: 7px;
  font-size: 12px;
  line-height: 1.42857143;
  color: #555555;
}
.form-control {
  display: block;
  width: 100%;
  height: 26px;
  padding: 6px 12px;
  font-size: 12px;
  line-height: 1.42857143;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ddd;
  border-radius: 0px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.form-control:focus {
  border-color: #ddd;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(221, 221, 221, 0.6);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(221, 221, 221, 0.6);
}
.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.form-control:-ms-input-placeholder {
  color: #999;
}
.form-control::-webkit-input-placeholder {
  color: #999;
}
.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
  background-color: #eeeeee;
  opacity: 1;
}
.form-control[disabled],
fieldset[disabled] .form-control {
  cursor: not-allowed;
}
textarea.form-control {
  height: auto;
}
input[type="search"] {
  -webkit-appearance: none;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"],
  input[type="time"],
  input[type="datetime-local"],
  input[type="month"] {
    line-height: 26px;
  }
  input[type="date"].input-sm,
  input[type="time"].input-sm,
  input[type="datetime-local"].input-sm,
  input[type="month"].input-sm,
  .input-group-sm input[type="date"],
  .input-group-sm input[type="time"],
  .input-group-sm input[type="datetime-local"],
  .input-group-sm input[type="month"] {
    line-height: 28px;
  }
  input[type="date"].input-lg,
  input[type="time"].input-lg,
  input[type="datetime-local"].input-lg,
  input[type="month"].input-lg,
  .input-group-lg input[type="date"],
  .input-group-lg input[type="time"],
  .input-group-lg input[type="datetime-local"],
  .input-group-lg input[type="month"] {
    line-height: 42px;
  }
}
.form-group {
  margin-bottom: 15px;
}
.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px;
}
.radio label,
.checkbox label {
  min-height: 17px;
  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="checkbox"][disabled],
input[type="radio"].disabled,
input[type="checkbox"].disabled,
fieldset[disabled] input[type="radio"],
fieldset[disabled] input[type="checkbox"] {
  cursor: not-allowed;
}
.radio-inline.disabled,
.checkbox-inline.disabled,
fieldset[disabled] .radio-inline,
fieldset[disabled] .checkbox-inline {
  cursor: not-allowed;
}
.radio.disabled label,
.checkbox.disabled label,
fieldset[disabled] .radio label,
fieldset[disabled] .checkbox label {
  cursor: not-allowed;
}
.form-control-static {
  padding-top: 7px;
  padding-bottom: 7px;
  margin-bottom: 0;
  min-height: 29px;
}
.form-control-static.input-lg,
.form-control-static.input-sm {
  padding-left: 0;
  padding-right: 0;
}
.input-sm {
  height: 28px;
  padding: 5px 10px;
  font-size: 11px;
  line-height: 1.5;
  border-radius: 0px;
}
select.input-sm {
  height: 28px;
  line-height: 28px;
}
textarea.input-sm,
select[multiple].input-sm {
  height: auto;
}
.form-group-sm .form-control {
  height: 28px;
  padding: 5px 10px;
  font-size: 11px;
  line-height: 1.5;
  border-radius: 0px;
}
select.form-group-sm .form-control {
  height: 28px;
  line-height: 28px;
}
textarea.form-group-sm .form-control,
select[multiple].form-group-sm .form-control {
  height: auto;
}
.form-group-sm .form-control-static {
  height: 28px;
  padding: 5px 10px;
  font-size: 11px;
  line-height: 1.5;
  min-height: 28px;
}
.input-lg {
  height: 42px;
  padding: 10px 16px;
  font-size: 15px;
  line-height: 1.3333333;
  border-radius: 0px;
}
select.input-lg {
  height: 42px;
  line-height: 42px;
}
textarea.input-lg,
select[multiple].input-lg {
  height: auto;
}
.form-group-lg .form-control {
  height: 42px;
  padding: 10px 16px;
  font-size: 15px;
  line-height: 1.3333333;
  border-radius: 0px;
}
select.form-group-lg .form-control {
  height: 42px;
  line-height: 42px;
}
textarea.form-group-lg .form-control,
select[multiple].form-group-lg .form-control {
  height: auto;
}
.form-group-lg .form-control-static {
  height: 42px;
  padding: 10px 16px;
  font-size: 15px;
  line-height: 1.3333333;
  min-height: 32px;
}
.has-feedback {
  position: relative;
}
.has-feedback .form-control {
  padding-right: 32.5px;
}
.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: 26px;
  height: 26px;
  line-height: 26px;
  text-align: center;
  pointer-events: none;
}
.input-lg + .form-control-feedback {
  width: 42px;
  height: 42px;
  line-height: 42px;
}
.input-sm + .form-control-feedback {
  width: 28px;
  height: 28px;
  line-height: 28px;
}
.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
  color: #3c763d;
}
.has-success .form-control {
  border-color: #3c763d;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-success .form-control:focus {
  border-color: #2b542c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
}
.has-success .input-group-addon {
  color: #3c763d;
  border-color: #3c763d;
  background-color: #dff0d8;
}
.has-success .form-control-feedback {
  color: #3c763d;
}
.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
  color: #8a6d3b;
}
.has-warning .form-control {
  border-color: #8a6d3b;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-warning .form-control:focus {
  border-color: #66512c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
}
.has-warning .input-group-addon {
  color: #8a6d3b;
  border-color: #8a6d3b;
  background-color: #fcf8e3;
}
.has-warning .form-control-feedback {
  color: #8a6d3b;
}
.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
  color: #a94442;
}
.has-error .form-control {
  border-color: #a94442;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-error .form-control:focus {
  border-color: #843534;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
}
.has-error .input-group-addon {
  color: #a94442;
  border-color: #a94442;
  background-color: #f2dede;
}
.has-error .form-control-feedback {
  color: #a94442;
}
.has-feedback label ~ .form-control-feedback {
  top: 22px;
}
.has-feedback label.sr-only ~ .form-control-feedback {
  top: 0;
}
.help-block {
  display: block;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #737373;
}
@media (min-width: 768px) {
  .form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-static {
    display: inline-block;
  }
  .form-inline .input-group {
    display: inline-table;
    vertical-align: middle;
  }
  .form-inline .input-group .input-group-addon,
  .form-inline .input-group .input-group-btn,
  .form-inline .input-group .form-control {
    width: auto;
  }
  .form-inline .input-group > .form-control {
    width: 100%;
  }
  .form-inline .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio,
  .form-inline .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio label,
  .form-inline .checkbox label {
    padding-left: 0;
  }
  .form-inline .radio input[type="radio"],
  .form-inline .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .form-inline .has-feedback .form-control-feedback {
    top: 0;
  }
}
.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 7px;
}
.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 24px;
}
.form-horizontal .form-group {
  margin-left: -10px;
  margin-right: -10px;
}
@media (min-width: 768px) {
  .form-horizontal .control-label {
    text-align: right;
    margin-bottom: 0;
    padding-top: 7px;
  }
}
.form-horizontal .has-feedback .form-control-feedback {
  right: 10px;
}
@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 14.333333px;
  }
}
@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
  }
}
.btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 6px 12px;
  font-size: 12px;
  line-height: 1.42857143;
  border-radius: 0px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn.active.focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.btn:hover,
.btn:focus,
.btn.focus {
  color: #333;
  text-decoration: none;
}
.btn:active,
.btn.active {
  outline: 0;
  background-image: none;
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn.disabled,
.btn[disabled],
fieldset[disabled] .btn {
  cursor: not-allowed;
  pointer-events: none;
  opacity: 0.65;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
  box-shadow: none;
}
.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
.btn-default:hover,
.btn-default:focus,
.btn-default.focus,
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  background-image: none;
}
.btn-default.disabled,
.btn-default[disabled],
fieldset[disabled] .btn-default,
.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus,
.btn-default.disabled.focus,
.btn-default[disabled].focus,
fieldset[disabled] .btn-default.focus,
.btn-default.disabled:active,
.btn-default[disabled]:active,
fieldset[disabled] .btn-default:active,
.btn-default.disabled.active,
.btn-default[disabled].active,
fieldset[disabled] .btn-default.active {
  background-color: #fff;
  border-color: #ccc;
}
.btn-default .badge {
  color: #fff;
  background-color: #333;
}
.btn-primary {
  color: #fff;
  background-color: #174142;
  border-color: #102e2f;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary.focus,
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  color: #fff;
  background-color: #0a1c1c;
  border-color: #010202;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  background-image: none;
}
.btn-primary.disabled,
.btn-primary[disabled],
fieldset[disabled] .btn-primary,
.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled.focus,
.btn-primary[disabled].focus,
fieldset[disabled] .btn-primary.focus,
.btn-primary.disabled:active,
.btn-primary[disabled]:active,
fieldset[disabled] .btn-primary:active,
.btn-primary.disabled.active,
.btn-primary[disabled].active,
fieldset[disabled] .btn-primary.active {
  background-color: #174142;
  border-color: #102e2f;
}
.btn-primary .badge {
  color: #174142;
  background-color: #fff;
}
.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn-success:hover,
.btn-success:focus,
.btn-success.focus,
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
  background-image: none;
}
.btn-success.disabled,
.btn-success[disabled],
fieldset[disabled] .btn-success,
.btn-success.disabled:hover,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success:hover,
.btn-success.disabled:focus,
.btn-success[disabled]:focus,
fieldset[disabled] .btn-success:focus,
.btn-success.disabled.focus,
.btn-success[disabled].focus,
fieldset[disabled] .btn-success.focus,
.btn-success.disabled:active,
.btn-success[disabled]:active,
fieldset[disabled] .btn-success:active,
.btn-success.disabled.active,
.btn-success[disabled].active,
fieldset[disabled] .btn-success.active {
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn-success .badge {
  color: #5cb85c;
  background-color: #fff;
}
.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn-info:hover,
.btn-info:focus,
.btn-info.focus,
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
  background-image: none;
}
.btn-info.disabled,
.btn-info[disabled],
fieldset[disabled] .btn-info,
.btn-info.disabled:hover,
.btn-info[disabled]:hover,
fieldset[disabled] .btn-info:hover,
.btn-info.disabled:focus,
.btn-info[disabled]:focus,
fieldset[disabled] .btn-info:focus,
.btn-info.disabled.focus,
.btn-info[disabled].focus,
fieldset[disabled] .btn-info.focus,
.btn-info.disabled:active,
.btn-info[disabled]:active,
fieldset[disabled] .btn-info:active,
.btn-info.disabled.active,
.btn-info[disabled].active,
fieldset[disabled] .btn-info.active {
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn-info .badge {
  color: #5bc0de;
  background-color: #fff;
}
.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning:hover,
.btn-warning:focus,
.btn-warning.focus,
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
  background-image: none;
}
.btn-warning.disabled,
.btn-warning[disabled],
fieldset[disabled] .btn-warning,
.btn-warning.disabled:hover,
.btn-warning[disabled]:hover,
fieldset[disabled] .btn-warning:hover,
.btn-warning.disabled:focus,
.btn-warning[disabled]:focus,
fieldset[disabled] .btn-warning:focus,
.btn-warning.disabled.focus,
.btn-warning[disabled].focus,
fieldset[disabled] .btn-warning.focus,
.btn-warning.disabled:active,
.btn-warning[disabled]:active,
fieldset[disabled] .btn-warning:active,
.btn-warning.disabled.active,
.btn-warning[disabled].active,
fieldset[disabled] .btn-warning.active {
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning .badge {
  color: #f0ad4e;
  background-color: #fff;
}
.btn-danger {
  color: #fff;
  background-color: #d9272a;
  border-color: #c42225;
}
.btn-danger:hover,
.btn-danger:focus,
.btn-danger.focus,
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
  color: #fff;
  background-color: #ae1f21;
  border-color: #90191b;
}
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
  background-image: none;
}
.btn-danger.disabled,
.btn-danger[disabled],
fieldset[disabled] .btn-danger,
.btn-danger.disabled:hover,
.btn-danger[disabled]:hover,
fieldset[disabled] .btn-danger:hover,
.btn-danger.disabled:focus,
.btn-danger[disabled]:focus,
fieldset[disabled] .btn-danger:focus,
.btn-danger.disabled.focus,
.btn-danger[disabled].focus,
fieldset[disabled] .btn-danger.focus,
.btn-danger.disabled:active,
.btn-danger[disabled]:active,
fieldset[disabled] .btn-danger:active,
.btn-danger.disabled.active,
.btn-danger[disabled].active,
fieldset[disabled] .btn-danger.active {
  background-color: #d9272a;
  border-color: #c42225;
}
.btn-danger .badge {
  color: #d9272a;
  background-color: #fff;
}
.btn-link {
  color: #174142;
  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: #030909;
  text-decoration: underline;
  background-color: transparent;
}
.btn-link[disabled]:hover,
fieldset[disabled] .btn-link:hover,
.btn-link[disabled]:focus,
fieldset[disabled] .btn-link:focus {
  color: #dddddd;
  text-decoration: none;
}
.btn-lg,
.btn-group-lg > .btn {
  padding: 10px 16px;
  font-size: 15px;
  line-height: 1.3333333;
  border-radius: 0px;
}
.btn-sm,
.btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 11px;
  line-height: 1.5;
  border-radius: 0px;
}
.btn-xs,
.btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 11px;
  line-height: 1.5;
  border-radius: 0px;
}
.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: 12px;
  text-align: left;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0px;
  -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: 7.5px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}
.dropdown-menu > li > a {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 1.42857143;
  color: #333333;
  white-space: nowrap;
}
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
  text-decoration: none;
  color: #262626;
  background-color: #f5f5f5;
}
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  background-color: #174142;
}
.dropdown-menu > .disabled > a,
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
  color: #dddddd;
}
.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: 11px;
  line-height: 1.42857143;
  color: #dddddd;
  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 {
    left: auto;
    right: 0;
  }
  .navbar-right .dropdown-menu-left {
    left: 0;
    right: auto;
  }
}
.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-block;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  float: left;
}
.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover,
.btn-group > .btn:focus,
.btn-group-vertical > .btn:focus,
.btn-group > .btn:active,
.btn-group-vertical > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn.active {
  z-index: 2;
}
.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
  margin-left: -1px;
}
.btn-toolbar {
  margin-left: -5px;
}
.btn-toolbar .btn-group,
.btn-toolbar .input-group {
  float: left;
}
.btn-toolbar > .btn,
.btn-toolbar > .btn-group,
.btn-toolbar > .input-group {
  margin-left: 5px;
}
.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0;
}
.btn-group > .btn:first-child {
  margin-left: 0;
}
.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.btn-group > .btn-group {
  float: left;
}
.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}
.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0;
}
.btn-group > .btn + .dropdown-toggle {
  padding-left: 8px;
  padding-right: 8px;
}
.btn-group > .btn-lg + .dropdown-toggle {
  padding-left: 12px;
  padding-right: 12px;
}
.btn-group.open .dropdown-toggle {
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn-group.open .dropdown-toggle.btn-link {
  -webkit-box-shadow: none;
  box-shadow: none;
}
.btn .caret {
  margin-left: 0;
}
.btn-lg .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0;
}
.dropup .btn-lg .caret {
  border-width: 0 5px 5px;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%;
}
.btn-group-vertical > .btn-group > .btn {
  float: none;
}
.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0;
}
.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
  border-radius: 0;
}
.btn-group-vertical > .btn:first-child:not(:last-child) {
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-bottom-left-radius: 0px;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
}
.btn-group-justified > .btn,
.btn-group-justified > .btn-group {
  float: none;
  display: table-cell;
  width: 1%;
}
.btn-group-justified > .btn-group .btn {
  width: 100%;
}
.btn-group-justified > .btn-group .dropdown-menu {
  left: auto;
}
[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}
.input-group {
  position: relative;
  display: table;
  border-collapse: separate;
}
.input-group[class*="col-"] {
  float: none;
  padding-left: 0;
  padding-right: 0;
}
.input-group .form-control {
  position: relative;
  z-index: 2;
  float: left;
  width: 100%;
  margin-bottom: 0;
}
.input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 42px;
  padding: 10px 16px;
  font-size: 15px;
  line-height: 1.3333333;
  border-radius: 0px;
}
select.input-group-lg > .form-control,
select.input-group-lg > .input-group-addon,
select.input-group-lg > .input-group-btn > .btn {
  height: 42px;
  line-height: 42px;
}
textarea.input-group-lg > .form-control,
textarea.input-group-lg > .input-group-addon,
textarea.input-group-lg > .input-group-btn > .btn,
select[multiple].input-group-lg > .form-control,
select[multiple].input-group-lg > .input-group-addon,
select[multiple].input-group-lg > .input-group-btn > .btn {
  height: auto;
}
.input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: 28px;
  padding: 5px 10px;
  font-size: 11px;
  line-height: 1.5;
  border-radius: 0px;
}
select.input-group-sm > .form-control,
select.input-group-sm > .input-group-addon,
select.input-group-sm > .input-group-btn > .btn {
  height: 28px;
  line-height: 28px;
}
textarea.input-group-sm > .form-control,
textarea.input-group-sm > .input-group-addon,
textarea.input-group-sm > .input-group-btn > .btn,
select[multiple].input-group-sm > .form-control,
select[multiple].input-group-sm > .input-group-addon,
select[multiple].input-group-sm > .input-group-btn > .btn {
  height: auto;
}
.input-group-addon,
.input-group-btn,
.input-group .form-control {
  display: table-cell;
}
.input-group-addon:not(:first-child):not(:last-child),
.input-group-btn:not(:first-child):not(:last-child),
.input-group .form-control:not(:first-child):not(:last-child) {
  border-radius: 0;
}
.input-group-addon,
.input-group-btn {
  width: 1%;
  white-space: nowrap;
  vertical-align: middle;
}
.input-group-addon {
  padding: 6px 12px;
  font-size: 12px;
  font-weight: normal;
  line-height: 1;
  color: #555555;
  text-align: center;
  background-color: #eeeeee;
  border: 1px solid #ddd;
  border-radius: 0px;
}
.input-group-addon.input-sm {
  padding: 5px 10px;
  font-size: 11px;
  border-radius: 0px;
}
.input-group-addon.input-lg {
  padding: 10px 16px;
  font-size: 15px;
  border-radius: 0px;
}
.input-group-addon input[type="radio"],
.input-group-addon input[type="checkbox"] {
  margin-top: 0;
}
.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.input-group-addon:first-child {
  border-right: 0;
}
.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.input-group-addon:last-child {
  border-left: 0;
}
.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap;
}
.input-group-btn > .btn {
  position: relative;
}
.input-group-btn > .btn + .btn {
  margin-left: -1px;
}
.input-group-btn > .btn:hover,
.input-group-btn > .btn:focus,
.input-group-btn > .btn:active {
  z-index: 2;
}
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group {
  margin-right: -1px;
}
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group {
  margin-left: -1px;
}
.nav {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.nav > li {
  position: relative;
  display: block;
}
.nav > li > a {
  position: relative;
  display: block;
  padding: 10px 15px;
}
.nav > li > a:hover,
.nav > li > a:focus {
  text-decoration: none;
  background-color: #eeeeee;
}
.nav > li.disabled > a {
  color: #dddddd;
}
.nav > li.disabled > a:hover,
.nav > li.disabled > a:focus {
  color: #dddddd;
  text-decoration: none;
  background-color: transparent;
  cursor: not-allowed;
}
.nav .open > a,
.nav .open > a:hover,
.nav .open > a:focus {
  background-color: #eeeeee;
  border-color: #174142;
}
.nav .nav-divider {
  height: 1px;
  margin: 7.5px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}
.nav > li > a > img {
  max-width: none;
}
.nav-tabs {
  border-bottom: 1px solid #ddd;
}
.nav-tabs > li {
  float: left;
  margin-bottom: -1px;
}
.nav-tabs > li > a {
  margin-right: 2px;
  line-height: 1.42857143;
  border: 1px solid transparent;
  border-radius: 0px 0px 0 0;
}
.nav-tabs > li > a:hover {
  border-color: #eeeeee #eeeeee #ddd;
}
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
  color: #555555;
  background-color: #EDEDED;
  border: 1px solid #ddd;
  border-bottom-color: transparent;
  cursor: default;
}
.nav-tabs.nav-justified {
  width: 100%;
  border-bottom: 0;
}
.nav-tabs.nav-justified > li {
  float: none;
}
.nav-tabs.nav-justified > li > a {
  text-align: center;
  margin-bottom: 5px;
}
.nav-tabs.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}
@media (min-width: 768px) {
  .nav-tabs.nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-tabs.nav-justified > li > a {
    margin-bottom: 0;
  }
}
.nav-tabs.nav-justified > li > a {
  margin-right: 0;
  border-radius: 0px;
}
.nav-tabs.nav-justified > .active > a,
.nav-tabs.nav-justified > .active > a:hover,
.nav-tabs.nav-justified > .active > a:focus {
  border: 1px solid #ddd;
}
@media (min-width: 768px) {
  .nav-tabs.nav-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 0px 0px 0 0;
  }
  .nav-tabs.nav-justified > .active > a,
  .nav-tabs.nav-justified > .active > a:hover,
  .nav-tabs.nav-justified > .active > a:focus {
    border-bottom-color: #EDEDED;
  }
}
.nav-pills > li {
  float: left;
}
.nav-pills > li > a {
  border-radius: 0px;
}
.nav-pills > li + li {
  margin-left: 2px;
}
.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus {
  color: #fff;
  background-color: #174142;
}
.nav-stacked > li {
  float: none;
}
.nav-stacked > li + li {
  margin-top: 2px;
  margin-left: 0;
}
.nav-justified {
  width: 100%;
}
.nav-justified > li {
  float: none;
}
.nav-justified > li > a {
  text-align: center;
  margin-bottom: 5px;
}
.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}
@media (min-width: 768px) {
  .nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-justified > li > a {
    margin-bottom: 0;
  }
}
.nav-tabs-justified {
  border-bottom: 0;
}
.nav-tabs-justified > li > a {
  margin-right: 0;
  border-radius: 0px;
}
.nav-tabs-justified > .active > a,
.nav-tabs-justified > .active > a:hover,
.nav-tabs-justified > .active > a:focus {
  border: 1px solid #ddd;
}
@media (min-width: 768px) {
  .nav-tabs-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 0px 0px 0 0;
  }
  .nav-tabs-justified > .active > a,
  .nav-tabs-justified > .active > a:hover,
  .nav-tabs-justified > .active > a:focus {
    border-bottom-color: #EDEDED;
  }
}
.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: 17px;
  border: 1px solid transparent;
}
@media (min-width: 768px) {
  .navbar {
    border-radius: 0px;
  }
}
@media (min-width: 768px) {
  .navbar-header {
    float: left;
  }
}
.navbar-collapse {
  overflow-x: visible;
  padding-right: 10px;
  padding-left: 10px;
  border-top: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
  -webkit-overflow-scrolling: touch;
}
.navbar-collapse.in {
  overflow-y: auto;
}
@media (min-width: 768px) {
  .navbar-collapse {
    width: auto;
    border-top: 0;
    box-shadow: none;
  }
  .navbar-collapse.collapse {
    display: block !important;
    height: auto !important;
    padding-bottom: 0;
    overflow: visible !important;
  }
  .navbar-collapse.in {
    overflow-y: visible;
  }
  .navbar-fixed-top .navbar-collapse,
  .navbar-static-top .navbar-collapse,
  .navbar-fixed-bottom .navbar-collapse {
    padding-left: 0;
    padding-right: 0;
  }
}
.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
  max-height: 340px;
}
@media (max-device-width: 480px) and (orientation: landscape) {
  .navbar-fixed-top .navbar-collapse,
  .navbar-fixed-bottom .navbar-collapse {
    max-height: 200px;
  }
}
.container > .navbar-header,
.container-fluid > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-collapse {
  margin-right: -10px;
  margin-left: -10px;
}
@media (min-width: 768px) {
  .container > .navbar-header,
  .container-fluid > .navbar-header,
  .container > .navbar-collapse,
  .container-fluid > .navbar-collapse {
    margin-right: 0;
    margin-left: 0;
  }
}
.navbar-static-top {
  z-index: 1000;
  border-width: 0 0 1px;
}
@media (min-width: 768px) {
  .navbar-static-top {
    border-radius: 0;
  }
}
.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030;
}
@media (min-width: 768px) {
  .navbar-fixed-top,
  .navbar-fixed-bottom {
    border-radius: 0;
  }
}
.navbar-fixed-top {
  top: 0;
  border-width: 0 0 1px;
}
.navbar-fixed-bottom {
  bottom: 0;
  margin-bottom: 0;
  border-width: 1px 0 0;
}
.navbar-brand {
  float: left;
  padding: 16.5px 10px;
  font-size: 15px;
  line-height: 17px;
  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: -10px;
  }
}
.navbar-toggle {
  position: relative;
  float: right;
  margin-right: 10px;
  padding: 9px 10px;
  margin-top: 8px;
  margin-bottom: 8px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 0px;
}
.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: 8.25px -10px;
}
.navbar-nav > li > a {
  padding-top: 10px;
  padding-bottom: 10px;
  line-height: 17px;
}
@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: 17px;
  }
  .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: 16.5px;
    padding-bottom: 16.5px;
  }
}
.navbar-form {
  margin-left: -10px;
  margin-right: -10px;
  padding: 10px 10px;
  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: 12px;
  margin-bottom: 12px;
}
@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: 0px;
  border-top-left-radius: 0px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.navbar-btn {
  margin-top: 12px;
  margin-bottom: 12px;
}
.navbar-btn.btn-sm {
  margin-top: 11px;
  margin-bottom: 11px;
}
.navbar-btn.btn-xs {
  margin-top: 14px;
  margin-bottom: 14px;
}
.navbar-text {
  margin-top: 16.5px;
  margin-bottom: 16.5px;
}
@media (min-width: 768px) {
  .navbar-text {
    float: left;
    margin-left: 10px;
    margin-right: 10px;
  }
}
@media (min-width: 768px) {
  .navbar-left {
    float: left !important;
  }
  .navbar-right {
    float: right !important;
    margin-right: -10px;
  }
  .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,
fieldset[disabled] .navbar-default .btn-link:hover,
.navbar-default .btn-link[disabled]:focus,
fieldset[disabled] .navbar-default .btn-link:focus {
  color: #ccc;
}
.navbar-inverse {
  background-color: #222;
  border-color: #080808;
}
.navbar-inverse .navbar-brand {
  color: #ffffff;
}
.navbar-inverse .navbar-brand:hover,
.navbar-inverse .navbar-brand:focus {
  color: #fff;
  background-color: transparent;
}
.navbar-inverse .navbar-text {
  color: #ffffff;
}
.navbar-inverse .navbar-nav > li > a {
  color: #ffffff;
}
.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: #080808;
}
.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: #080808;
  color: #fff;
}
@media (max-width: 767px) {
  .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
    border-color: #080808;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
    background-color: #080808;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
    color: #ffffff;
  }
  .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: #080808;
  }
  .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: #ffffff;
}
.navbar-inverse .navbar-link:hover {
  color: #fff;
}
.navbar-inverse .btn-link {
  color: #ffffff;
}
.navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link:focus {
  color: #fff;
}
.navbar-inverse .btn-link[disabled]:hover,
fieldset[disabled] .navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link[disabled]:focus,
fieldset[disabled] .navbar-inverse .btn-link:focus {
  color: #444;
}
.breadcrumb {
  padding: 8px 15px;
  margin-bottom: 17px;
  list-style: none;
  background-color: #f5f5f5;
  border-radius: 0px;
}
.breadcrumb > li {
  display: inline-block;
}
.breadcrumb > li + li:before {
  content: "/\00a0";
  padding: 0 5px;
  color: #ccc;
}
.breadcrumb > .active {
  color: #dddddd;
}
.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 17px 0;
  border-radius: 0px;
}
.pagination > li {
  display: inline;
}
.pagination > li > a,
.pagination > li > span {
  position: relative;
  float: left;
  padding: 6px 12px;
  line-height: 1.42857143;
  text-decoration: none;
  color: #174142;
  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: 0px;
  border-top-left-radius: 0px;
}
.pagination > li:last-child > a,
.pagination > li:last-child > span {
  border-bottom-right-radius: 0px;
  border-top-right-radius: 0px;
}
.pagination > li > a:hover,
.pagination > li > span:hover,
.pagination > li > a:focus,
.pagination > li > span:focus {
  color: #030909;
  background-color: #eeeeee;
  border-color: #ddd;
}
.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover,
.pagination > .active > a:focus,
.pagination > .active > span:focus {
  z-index: 2;
  color: #fff;
  background-color: #174142;
  border-color: #174142;
  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: #dddddd;
  background-color: #fff;
  border-color: #ddd;
  cursor: not-allowed;
}
.pagination-lg > li > a,
.pagination-lg > li > span {
  padding: 10px 16px;
  font-size: 15px;
}
.pagination-lg > li:first-child > a,
.pagination-lg > li:first-child > span {
  border-bottom-left-radius: 0px;
  border-top-left-radius: 0px;
}
.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
  border-bottom-right-radius: 0px;
  border-top-right-radius: 0px;
}
.pagination-sm > li > a,
.pagination-sm > li > span {
  padding: 5px 10px;
  font-size: 11px;
}
.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
  border-bottom-left-radius: 0px;
  border-top-left-radius: 0px;
}
.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
  border-bottom-right-radius: 0px;
  border-top-right-radius: 0px;
}
.pager {
  padding-left: 0;
  margin: 17px 0;
  list-style: none;
  text-align: center;
}
.pager li {
  display: inline;
}
.pager li > a,
.pager li > span {
  display: inline-block;
  padding: 5px 14px;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 15px;
}
.pager li > a:hover,
.pager li > a:focus {
  text-decoration: none;
  background-color: #eeeeee;
}
.pager .next > a,
.pager .next > span {
  float: right;
}
.pager .previous > a,
.pager .previous > span {
  float: left;
}
.pager .disabled > a,
.pager .disabled > a:hover,
.pager .disabled > a:focus,
.pager .disabled > span {
  color: #dddddd;
  background-color: #fff;
  cursor: not-allowed;
}
.label {
  display: inline;
  padding: 0.2em 0.6em 0.3em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25em;
}
a.label:hover,
a.label:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
.label:empty {
  display: none;
}
.btn .label {
  position: relative;
  top: -1px;
}
.label-default {
  background-color: #dddddd;
}
.label-default[href]:hover,
.label-default[href]:focus {
  background-color: #c4c4c4;
}
.label-primary {
  background-color: #174142;
}
.label-primary[href]:hover,
.label-primary[href]:focus {
  background-color: #0a1c1c;
}
.label-success {
  background-color: #5cb85c;
}
.label-success[href]:hover,
.label-success[href]:focus {
  background-color: #449d44;
}
.label-info {
  background-color: #5bc0de;
}
.label-info[href]:hover,
.label-info[href]:focus {
  background-color: #31b0d5;
}
.label-warning {
  background-color: #f0ad4e;
}
.label-warning[href]:hover,
.label-warning[href]:focus {
  background-color: #ec971f;
}
.label-danger {
  background-color: #d9272a;
}
.label-danger[href]:hover,
.label-danger[href]:focus {
  background-color: #ae1f21;
}
.badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 11px;
  font-weight: bold;
  color: #fff;
  line-height: 1;
  vertical-align: baseline;
  white-space: nowrap;
  text-align: center;
  background-color: #dddddd;
  border-radius: 10px;
}
.badge:empty {
  display: none;
}
.btn .badge {
  position: relative;
  top: -1px;
}
.btn-xs .badge,
.btn-group-xs > .btn .badge {
  top: 0;
  padding: 1px 5px;
}
a.badge:hover,
a.badge:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
.list-group-item.active > .badge,
.nav-pills > .active > a > .badge {
  color: #174142;
  background-color: #fff;
}
.list-group-item > .badge {
  float: right;
}
.list-group-item > .badge + .badge {
  margin-right: 5px;
}
.nav-pills > li > a > .badge {
  margin-left: 3px;
}
.jumbotron {
  padding: 30px 15px;
  margin-bottom: 30px;
  color: inherit;
  background-color: #eeeeee;
}
.jumbotron h1,
.jumbotron .h1 {
  color: inherit;
}
.jumbotron p {
  margin-bottom: 15px;
  font-size: 18px;
  font-weight: 200;
}
.jumbotron > hr {
  border-top-color: #d5d5d5;
}
.container .jumbotron,
.container-fluid .jumbotron {
  border-radius: 0px;
}
.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: 54px;
  }
}
.thumbnail {
  display: block;
  padding: 4px;
  margin-bottom: 17px;
  line-height: 1.42857143;
  background-color: #EDEDED;
  border: 1px solid #ddd;
  border-radius: 0px;
  -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 {
  margin-left: auto;
  margin-right: auto;
}
a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #174142;
}
.thumbnail .caption {
  padding: 9px;
  color: #333333;
}
.alert {
  padding: 15px;
  margin-bottom: 17px;
  border: 1px solid transparent;
  border-radius: 0px;
}
.alert h4 {
  margin-top: 0;
  color: inherit;
}
.alert .alert-link {
  font-weight: bold;
}
.alert > p,
.alert > ul {
  margin-bottom: 0;
}
.alert > p + p {
  margin-top: 5px;
}
.alert-dismissable,
.alert-dismissible {
  padding-right: 35px;
}
.alert-dismissable .close,
.alert-dismissible .close {
  position: relative;
  top: -2px;
  right: -21px;
  color: inherit;
}
.alert-success {
  background-color: #dff0d8;
  border-color: #d6e9c6;
  color: #3c763d;
}
.alert-success hr {
  border-top-color: #c9e2b3;
}
.alert-success .alert-link {
  color: #2b542c;
}
.alert-info {
  background-color: #d9edf7;
  border-color: #bce8f1;
  color: #31708f;
}
.alert-info hr {
  border-top-color: #a6e1ec;
}
.alert-info .alert-link {
  color: #245269;
}
.alert-warning {
  background-color: #fcf8e3;
  border-color: #faebcc;
  color: #8a6d3b;
}
.alert-warning hr {
  border-top-color: #f7e1b5;
}
.alert-warning .alert-link {
  color: #66512c;
}
.alert-danger {
  background-color: #f2dede;
  border-color: #ebccd1;
  color: #a94442;
}
.alert-danger hr {
  border-top-color: #e4b9c0;
}
.alert-danger .alert-link {
  color: #843534;
}
@-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: 17px;
  margin-bottom: 17px;
  background-color: #f5f5f5;
  border-radius: 0px;
  -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: 11px;
  line-height: 17px;
  color: #fff;
  text-align: center;
  background-color: #174142;
  -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: #5bc0de;
}
.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: #d9272a;
}
.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: 0px;
  border-top-left-radius: 0px;
}
.list-group-item:last-child {
  margin-bottom: 0;
  border-bottom-right-radius: 0px;
  border-bottom-left-radius: 0px;
}
a.list-group-item {
  color: #555;
}
a.list-group-item .list-group-item-heading {
  color: #333;
}
a.list-group-item:hover,
a.list-group-item:focus {
  text-decoration: none;
  color: #555;
  background-color: #f5f5f5;
}
.list-group-item.disabled,
.list-group-item.disabled:hover,
.list-group-item.disabled:focus {
  background-color: #eeeeee;
  color: #dddddd;
  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: #dddddd;
}
.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
  z-index: 2;
  color: #fff;
  background-color: #174142;
  border-color: #174142;
}
.list-group-item.active .list-group-item-heading,
.list-group-item.active:hover .list-group-item-heading,
.list-group-item.active:focus .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active:hover .list-group-item-heading > small,
.list-group-item.active:focus .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small,
.list-group-item.active:hover .list-group-item-heading > .small,
.list-group-item.active:focus .list-group-item-heading > .small {
  color: inherit;
}
.list-group-item.active .list-group-item-text,
.list-group-item.active:hover .list-group-item-text,
.list-group-item.active:focus .list-group-item-text {
  color: #5ec4c7;
}
.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: #8a6d3b;
  background-color: #fcf8e3;
}
a.list-group-item-warning {
  color: #8a6d3b;
}
a.list-group-item-warning .list-group-item-heading {
  color: inherit;
}
a.list-group-item-warning:hover,
a.list-group-item-warning:focus {
  color: #8a6d3b;
  background-color: #faf2cc;
}
a.list-group-item-warning.active,
a.list-group-item-warning.active:hover,
a.list-group-item-warning.active:focus {
  color: #fff;
  background-color: #8a6d3b;
  border-color: #8a6d3b;
}
.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: 17px;
  background-color: #fff;
  border: 1px solid transparent;
  border-radius: 0px;
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}
.panel-body {
  padding: 15px;
}
.panel-heading {
  padding: 10px 15px;
  border-bottom: 1px solid transparent;
  border-top-right-radius: -1px;
  border-top-left-radius: -1px;
}
.panel-heading > .dropdown .dropdown-toggle {
  color: inherit;
}
.panel-title {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 14px;
  color: inherit;
}
.panel-title > a,
.panel-title > small,
.panel-title > .small,
.panel-title > small > a,
.panel-title > .small > a {
  color: inherit;
}
.panel-footer {
  padding: 10px 15px;
  background-color: #f5f5f5;
  border-top: 1px solid #ddd;
  border-bottom-right-radius: -1px;
  border-bottom-left-radius: -1px;
}
.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: -1px;
  border-top-left-radius: -1px;
}
.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: -1px;
  border-bottom-left-radius: -1px;
}
.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: -1px;
  border-top-left-radius: -1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
  border-top-left-radius: -1px;
  border-top-right-radius: -1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
  border-top-left-radius: -1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
  border-top-right-radius: -1px;
}
.panel > .table:last-child,
.panel > .table-responsive:last-child > .table:last-child {
  border-bottom-right-radius: -1px;
  border-bottom-left-radius: -1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
  border-bottom-left-radius: -1px;
  border-bottom-right-radius: -1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
  border-bottom-left-radius: -1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
  border-bottom-right-radius: -1px;
}
.panel > .panel-body + .table,
.panel > .panel-body + .table-responsive,
.panel > .table + .panel-body,
.panel > .table-responsive + .panel-body {
  border-top: 1px solid #ddd;
}
.panel > .table > tbody:first-child > tr:first-child th,
.panel > .table > tbody:first-child > tr:first-child td {
  border-top: 0;
}
.panel > .table-bordered,
.panel > .table-responsive > .table-bordered {
  border: 0;
}
.panel > .table-bordered > thead > tr > th:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
.panel > .table-bordered > tbody > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
.panel > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-bordered > thead > tr > td:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
.panel > .table-bordered > tbody > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
.panel > .table-bordered > tfoot > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
  border-left: 0;
}
.panel > .table-bordered > thead > tr > th:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
.panel > .table-bordered > tbody > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
.panel > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-bordered > thead > tr > td:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
.panel > .table-bordered > tbody > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
.panel > .table-bordered > tfoot > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
  border-right: 0;
}
.panel > .table-bordered > thead > tr:first-child > td,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
.panel > .table-bordered > tbody > tr:first-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
.panel > .table-bordered > thead > tr:first-child > th,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
.panel > .table-bordered > tbody > tr:first-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
  border-bottom: 0;
}
.panel > .table-bordered > tbody > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
.panel > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-bordered > tbody > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
.panel > .table-bordered > tfoot > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
  border-bottom: 0;
}
.panel > .table-responsive {
  border: 0;
  margin-bottom: 0;
}
.panel-group {
  margin-bottom: 17px;
}
.panel-group .panel {
  margin-bottom: 0;
  border-radius: 0px;
}
.panel-group .panel + .panel {
  margin-top: 5px;
}
.panel-group .panel-heading {
  border-bottom: 0;
}
.panel-group .panel-heading + .panel-collapse > .panel-body,
.panel-group .panel-heading + .panel-collapse > .list-group {
  border-top: 1px solid #ddd;
}
.panel-group .panel-footer {
  border-top: 0;
}
.panel-group .panel-footer + .panel-collapse .panel-body {
  border-bottom: 1px solid #ddd;
}
.panel-default {
  border-color: #ddd;
}
.panel-default > .panel-heading {
  color: #333333;
  background-color: #f5f5f5;
  border-color: #ddd;
}
.panel-default > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ddd;
}
.panel-default > .panel-heading .badge {
  color: #f5f5f5;
  background-color: #333333;
}
.panel-default > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #ddd;
}
.panel-primary {
  border-color: #174142;
}
.panel-primary > .panel-heading {
  color: #fff;
  background-color: #174142;
  border-color: #174142;
}
.panel-primary > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #174142;
}
.panel-primary > .panel-heading .badge {
  color: #174142;
  background-color: #fff;
}
.panel-primary > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #174142;
}
.panel-success {
  border-color: #d6e9c6;
}
.panel-success > .panel-heading {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6;
}
.panel-success > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #d6e9c6;
}
.panel-success > .panel-heading .badge {
  color: #dff0d8;
  background-color: #3c763d;
}
.panel-success > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #d6e9c6;
}
.panel-info {
  border-color: #bce8f1;
}
.panel-info > .panel-heading {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1;
}
.panel-info > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #bce8f1;
}
.panel-info > .panel-heading .badge {
  color: #d9edf7;
  background-color: #31708f;
}
.panel-info > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #bce8f1;
}
.panel-warning {
  border-color: #faebcc;
}
.panel-warning > .panel-heading {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc;
}
.panel-warning > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #faebcc;
}
.panel-warning > .panel-heading .badge {
  color: #fcf8e3;
  background-color: #8a6d3b;
}
.panel-warning > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #faebcc;
}
.panel-danger {
  border-color: #ebccd1;
}
.panel-danger > .panel-heading {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}
.panel-danger > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ebccd1;
}
.panel-danger > .panel-heading .badge {
  color: #f2dede;
  background-color: #a94442;
}
.panel-danger > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #ebccd1;
}
.embed-responsive {
  position: relative;
  display: block;
  height: 0;
  padding: 0;
  overflow: hidden;
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  border: 0;
}
.embed-responsive-16by9 {
  padding-bottom: 56.25%;
}
.embed-responsive-4by3 {
  padding-bottom: 75%;
}
.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 0px;
  -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: 0px;
}
.well-sm {
  padding: 9px;
  border-radius: 0px;
}
.close {
  float: right;
  font-size: 18px;
  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-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: 0px;
  -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.42857143px;
}
.modal-header .close {
  margin-top: -2px;
}
.modal-title {
  margin: 0;
  line-height: 1.42857143;
}
.modal-body {
  position: relative;
  padding: 15px;
}
.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5;
}
.modal-footer .btn + .btn {
  margin-left: 5px;
  margin-bottom: 0;
}
.modal-footer .btn-group .btn + .btn {
  margin-left: -1px;
}
.modal-footer .btn-block + .btn-block {
  margin-left: 0;
}
.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}
@media (min-width: 768px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto;
  }
  .modal-content {
    -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: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 11px;
  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: 0px;
}
.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: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 12px;
  font-weight: normal;
  line-height: 1.42857143;
  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: 0px;
  -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: 12px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: -1px -1px 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 {
  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 {
  text-shadow: none;
}
@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -15px;
    font-size: 30px;
  }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -15px;
  }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -15px;
  }
  .carousel-caption {
    left: 20%;
    right: 20%;
    padding-bottom: 30px;
  }
  .carousel-indicators {
    bottom: 20px;
  }
}
.clearfix:before,
.clearfix:after,
.dl-horizontal dd:before,
.dl-horizontal dd:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after,
.form-horizontal .form-group:before,
.form-horizontal .form-group:after,
.btn-toolbar:before,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:before,
.btn-group-vertical > .btn-group:after,
.nav:before,
.nav:after,
.navbar:before,
.navbar:after,
.navbar-header:before,
.navbar-header:after,
.navbar-collapse:before,
.navbar-collapse:after,
.pager:before,
.pager:after,
.panel-body:before,
.panel-body:after,
.modal-footer:before,
.modal-footer:after {
  content: " ";
  display: table;
}
.clearfix:after,
.dl-horizontal dd:after,
.container:after,
.container-fluid:after,
.row:after,
.form-horizontal .form-group:after,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:after,
.nav:after,
.navbar:after,
.navbar-header:after,
.navbar-collapse:after,
.pager:after,
.panel-body:after,
.modal-footer:after {
  clear: both;
}
.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,
.visible-sm,
.visible-md,
.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;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL2xpYi9ib290c3RyYXAvbGVzcy9ub3JtYWxpemUubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9wcmludC5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL2dseXBoaWNvbnMubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9zY2FmZm9sZGluZy5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL21peGlucy92ZW5kb3ItcHJlZml4ZXMubGVzcyIsInZhcmlhYmxlL192YXJpYWJsZXNfYm9vdHN0cmFwLmxlc3MiLCIuLi9saWIvYm9vdHN0cmFwL2xlc3MvbWl4aW5zL3RhYi1mb2N1cy5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL3RodW1ibmFpbHMubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9jYXJvdXNlbC5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL21peGlucy9pbWFnZS5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL3R5cGUubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9taXhpbnMvdGV4dC1lbXBoYXNpcy5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL21peGlucy9iYWNrZ3JvdW5kLXZhcmlhbnQubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9taXhpbnMvdGV4dC1vdmVyZmxvdy5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL2NvZGUubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9ncmlkLmxlc3MiLCIuLi9saWIvYm9vdHN0cmFwL2xlc3MvbWl4aW5zL2dyaWQubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9taXhpbnMvZ3JpZC1mcmFtZXdvcmsubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy90YWJsZXMubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9taXhpbnMvdGFibGUtcm93Lmxlc3MiLCIuLi9saWIvYm9vdHN0cmFwL2xlc3MvZm9ybXMubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9taXhpbnMvZm9ybXMubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9idXR0b25zLmxlc3MiLCIuLi9saWIvYm9vdHN0cmFwL2xlc3MvbWl4aW5zL2J1dHRvbnMubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9taXhpbnMvb3BhY2l0eS5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL2J1dHRvbi1ncm91cHMubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9jb21wb25lbnQtYW5pbWF0aW9ucy5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL2Ryb3Bkb3ducy5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL21peGlucy9uYXYtZGl2aWRlci5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL21peGlucy9yZXNldC1maWx0ZXIubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9taXhpbnMvYm9yZGVyLXJhZGl1cy5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL2lucHV0LWdyb3Vwcy5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL25hdnMubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9uYXZiYXIubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9taXhpbnMvbmF2LXZlcnRpY2FsLWFsaWduLmxlc3MiLCIuLi9saWIvYm9vdHN0cmFwL2xlc3MvdXRpbGl0aWVzLmxlc3MiLCIuLi9saWIvYm9vdHN0cmFwL2xlc3MvYnJlYWRjcnVtYnMubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9wYWdpbmF0aW9uLmxlc3MiLCIuLi9saWIvYm9vdHN0cmFwL2xlc3MvbWl4aW5zL3BhZ2luYXRpb24ubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9wYWdlci5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL2xhYmVscy5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL21peGlucy9sYWJlbHMubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9iYWRnZXMubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9qdW1ib3Ryb24ubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9hbGVydHMubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9taXhpbnMvYWxlcnRzLmxlc3MiLCIuLi9saWIvYm9vdHN0cmFwL2xlc3MvcHJvZ3Jlc3MtYmFycy5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL21peGlucy9ncmFkaWVudHMubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9taXhpbnMvcHJvZ3Jlc3MtYmFyLmxlc3MiLCIuLi9saWIvYm9vdHN0cmFwL2xlc3MvbWVkaWEubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9saXN0LWdyb3VwLmxlc3MiLCIuLi9saWIvYm9vdHN0cmFwL2xlc3MvbWl4aW5zL2xpc3QtZ3JvdXAubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9wYW5lbHMubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9taXhpbnMvcGFuZWxzLmxlc3MiLCIuLi9saWIvYm9vdHN0cmFwL2xlc3MvcmVzcG9uc2l2ZS1lbWJlZC5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL3dlbGxzLmxlc3MiLCIuLi9saWIvYm9vdHN0cmFwL2xlc3MvY2xvc2UubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9tb2RhbHMubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy90b29sdGlwLmxlc3MiLCIuLi9saWIvYm9vdHN0cmFwL2xlc3MvcG9wb3ZlcnMubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9taXhpbnMvY2xlYXJmaXgubGVzcyIsIi4uL2xpYi9ib290c3RyYXAvbGVzcy9taXhpbnMvY2VudGVyLWJsb2NrLmxlc3MiLCIuLi9saWIvYm9vdHN0cmFwL2xlc3MvbWl4aW5zL2hpZGUtdGV4dC5sZXNzIiwiLi4vbGliL2Jvb3RzdHJhcC9sZXNzL3Jlc3BvbnNpdmUtdXRpbGl0aWVzLmxlc3MiLCIuLi9saWIvYm9vdHN0cmFwL2xlc3MvbWl4aW5zL3Jlc3BvbnNpdmUtdmlzaWJpbGl0eS5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQVFBO0VBQ0UsdUJBQUE7RUFDQSwwQkFBQTtFQUNBLDhCQUFBOztBQU9GO0VBQ0UsU0FBQTs7QUFhRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtFQUNFLGNBQUE7O0FBUUY7QUFDQTtBQUNBO0FBQ0E7RUFDRSxxQkFBQTtFQUNBLHdCQUFBOztBQVFGLEtBQUssSUFBSTtFQUNQLGFBQUE7RUFDQSxTQUFBOztBQVFGO0FBQ0E7RUFDRSxhQUFBOztBQVVGO0VBQ0UsNkJBQUE7O0FBT0YsQ0FBQztBQUNELENBQUM7RUFDQyxVQUFBOztBQVVGLElBQUk7RUFDRix5QkFBQTs7QUFPRjtBQUNBO0VBQ0UsaUJBQUE7O0FBT0Y7RUFDRSxrQkFBQTs7QUFRRjtFQUNFLGNBQUE7RUFDQSxnQkFBQTs7QUFPRjtFQUNFLGdCQUFBO0VBQ0EsV0FBQTs7QUFPRjtFQUNFLGNBQUE7O0FBT0Y7QUFDQTtFQUNFLGNBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSx3QkFBQTs7QUFHRjtFQUNFLFdBQUE7O0FBR0Y7RUFDRSxlQUFBOztBQVVGO0VBQ0UsU0FBQTs7QUFPRixHQUFHLElBQUk7RUFDTCxnQkFBQTs7QUFVRjtFQUNFLGdCQUFBOztBQU9GO0VBQ0UsNEJBQUE7RUFDQSx1QkFBQTtFQUNBLFNBQUE7O0FBT0Y7RUFDRSxjQUFBOztBQU9GO0FBQ0E7QUFDQTtBQUNBO0VBQ0UsaUNBQUE7RUFDQSxjQUFBOztBQWtCRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0VBQ0UsY0FBQTtFQUNBLGFBQUE7RUFDQSxTQUFBOztBQU9GO0VBQ0UsaUJBQUE7O0FBVUY7QUFDQTtFQUNFLG9CQUFBOztBQVdGO0FBQ0EsSUFBSyxNQUFLO0FBQ1YsS0FBSztBQUNMLEtBQUs7RUFDSCwwQkFBQTtFQUNBLGVBQUE7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QVUsU0FBUyxPQUFUOztBQUNYLHdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG9CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHFCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG9CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHFCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHFCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHNCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG1CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHFCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG9CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHNCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHVCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLDJCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGVBQUM7RUFBVSxTQUFTLE9BQVQ7O0FBQ1gsZUFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxlQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG1CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG9CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHVCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG1CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGlCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGtCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGlCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHFCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHVCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGtCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHVCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHNCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLDBCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLDRCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGNBQUM7RUFBVSxTQUFTLE9BQVQ7O0FBQ1gsbUJBQUM7RUFBVSxTQUFTLE9BQVQ7O0FBQ1gsZUFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxzQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxvQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxzQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxxQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxvQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxrQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxvQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCw2QkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCw0QkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCwwQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCw0QkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxnQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxpQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxnQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxpQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxvQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxxQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxvQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxvQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxzQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxlQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGtCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGNBQUM7RUFBVSxTQUFTLE9BQVQ7O0FBQ1gsY0FBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxlQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLDJCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLCtCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLDRCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLDZCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGlDQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG9CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGlCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHNCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGlCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGtCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHFCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGlCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGVBQUM7RUFBVSxTQUFTLE9BQVQ7O0FBQ1gsZUFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxnQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxpQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxpQkFBQztFQUFVLFNBQVMsT0FBVDs7QUFDWCxlQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHNCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHVCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHNCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHNCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHNCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG1CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGtCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGlCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLHFCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG1CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG9CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLGdCQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG1CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG1CQUFDO0VBQVUsU0FBUyxPQUFUOztBQUNYLG9CQUFDO0VBQVUsU0FBUyxPQUFU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LG9CQUFBOztFQUlGO0lBQ0UsWUFBQTs7O0FvRDdQRixTQUFDO0FBQ0QsU0FBQztBbERrTUgsY0FDRSxHa0RwTUM7QWxEbU1ILGNBQ0UsR2tEbk1DO0E3Q0xILFU2Q0lHO0E3Q0pILFU2Q0tHO0E3Q2VILGdCNkNoQkc7QTdDZ0JILGdCNkNmRztBN0N3QkgsSTZDekJHO0E3Q3lCSCxJNkN4Qkc7QXhDa2ZILGdCQXFCRSxZd0N4Z0JDO0F4Q21mSCxnQkFxQkUsWXdDdmdCQztBbkNvQkgsWW1DckJHO0FuQ3FCSCxZbUNwQkc7QW5DZ0lILG1CQVdFLGFtQzVJQztBbkNpSUgsbUJBV0UsYW1DM0lDO0E1Qk5ILEk0QktHO0E1QkxILEk0Qk1HO0EzQkpILE8yQkdHO0EzQkhILE8yQklHO0EzQmdCSCxjMkJqQkc7QTNCaUJILGMyQmhCRztBM0JtQ0gsZ0IyQnBDRztBM0JvQ0gsZ0IyQm5DRztBckJUSCxNcUJRRztBckJSSCxNcUJTRztBUkNILFdRRkc7QVJFSCxXUURHO0FIMEZILGFHM0ZHO0FIMkZILGFHMUZHO0VBQ0MsU0FBUyxHQUFUO0VBQ0EsY0FBQTs7QUFFRixTQUFDO0FsRDhMSCxjQUNFLEdrRC9MQztBN0NUSCxVNkNTRztBN0NXSCxnQjZDWEc7QTdDb0JILEk2Q3BCRztBeEM4ZUgsZ0JBcUJFLFl3Q25nQkM7QW5DZ0JILFltQ2hCRztBbkM0SEgsbUJBV0UsYW1DdklDO0E1QlZILEk0QlVHO0EzQlJILE8yQlFHO0EzQllILGMyQlpHO0EzQitCSCxnQjJCL0JHO0FyQmJILE1xQmFHO0FSSEgsV1FHRztBSHNGSCxhR3RGRztFQUNDLFdBQUE7O0F6QlJKO0UwQlJFLGNBQUE7RUFDQSxpQkFBQTtFQUNBLGtCQUFBOztBMUJTRjtFQUNFLHVCQUFBOztBQUVGO0VBQ0Usc0JBQUE7O0FBUUY7RUFDRSx3QkFBQTs7QUFFRjtFQUNFLHlCQUFBOztBQUVGO0VBQ0Usa0JBQUE7O0FBRUY7RTJCekJFLFdBQUE7RUFDQSxrQkFBQTtFQUNBLGlCQUFBO0VBQ0EsNkJBQUE7RUFDQSxTQUFBOztBM0I4QkY7RUFDRSx3QkFBQTs7QUFPRjtFQUNFLGVBQUE7O0E0QmpDRjtFQUNFLG1CQUFBOztBQU1GO0FBQ0E7QUFDQTtBQUNBO0VDakJFLHdCQUFBOztBRHFCRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7RUFDRSx3QkFBQTs7QUFJQSxRQUFtQztFQUFuQztJQzdDQSx5QkFBQTs7RUFDQSxLQUFLO0lBQUssY0FBQTs7RUFDVixFQUFFO0lBQVEsa0JBQUE7O0VBQ1YsRUFBRTtFQUNGLEVBQUU7SUFBUSxtQkFBQTs7O0FEOENWLFFBQW1DO0VBQW5DO0lBQ0UseUJBQUE7OztBQUlGLFFBQW1DO0VBQW5DO0lBQ0UsMEJBQUE7OztBQUlGLFFBQW1DO0VBQW5DO0lBQ0UscUJBQUE7OztBQUtGLFFBQW1DLHVCQUFnQztFQUFuRTtJQ2xFQSx5QkFBQTs7RUFDQSxLQUFLO0lBQUssY0FBQTs7RUFDVixFQUFFO0lBQVEsa0JBQUE7O0VBQ1YsRUFBRTtFQUNGLEVBQUU7SUFBUSxtQkFBQTs7O0FEbUVWLFFBQW1DLHVCQUFnQztFQUFuRTtJQUNFLHlCQUFBOzs7QUFJRixRQUFtQyx1QkFBZ0M7RUFBbkU7SUFDRSwwQkFBQTs7O0FBSUYsUUFBbUMsdUJBQWdDO0VBQW5FO0lBQ0UscUJBQUE7OztBQUtGLFFBQW1DLHVCQUFnQztFQUFuRTtJQ3ZGQSx5QkFBQTs7RUFDQSxLQUFLO0lBQUssY0FBQTs7RUFDVixFQUFFO0lBQVEsa0JBQUE7O0VBQ1YsRUFBRTtFQUNGLEVBQUU7SUFBUSxtQkFBQTs7O0FEd0ZWLFFBQW1DLHVCQUFnQztFQUFuRTtJQUNFLHlCQUFBOzs7QUFJRixRQUFtQyx1QkFBZ0M7RUFBbkU7SUFDRSwwQkFBQTs7O0FBSUYsUUFBbUMsdUJBQWdDO0VBQW5FO0lBQ0UscUJBQUE7OztBQUtGLFFBQW1DO0VBQW5DO0lDNUdBLHlCQUFBOztFQUNBLEtBQUs7SUFBSyxjQUFBOztFQUNWLEVBQUU7SUFBUSxrQkFBQTs7RUFDVixFQUFFO0VBQ0YsRUFBRTtJQUFRLG1CQUFBOzs7QUQ2R1YsUUFBbUM7RUFBbkM7SUFDRSx5QkFBQTs7O0FBSUYsUUFBbUM7RUFBbkM7SUFDRSwwQkFBQTs7O0FBSUYsUUFBbUM7RUFBbkM7SUFDRSxxQkFBQTs7O0FBS0YsUUFBbUM7RUFBbkM7SUN6SEEsd0JBQUE7OztBRDhIQSxRQUFtQyx1QkFBZ0M7RUFBbkU7SUM5SEEsd0JBQUE7OztBRG1JQSxRQUFtQyx1QkFBZ0M7RUFBbkU7SUNuSUEsd0JBQUE7OztBRHdJQSxRQUFtQztFQUFuQztJQ3hJQSx3QkFBQTs7O0FEbUpGO0VDbkpFLHdCQUFBOztBRHNKQTtFQUFBO0lDOUpBLHlCQUFBOztFQUNBLEtBQUs7SUFBSyxjQUFBOztFQUNWLEVBQUU7SUFBUSxrQkFBQTs7RUFDVixFQUFFO0VBQ0YsRUFBRTtJQUFRLG1CQUFBOzs7QUQ4Slo7RUFDRSx3QkFBQTs7QUFFQTtFQUFBO0lBQ0UseUJBQUE7OztBQUdKO0VBQ0Usd0JBQUE7O0FBRUE7RUFBQTtJQUNFLDBCQUFBOzs7QUFHSjtFQUNFLHdCQUFBOztBQUVBO0VBQUE7SUFDRSxxQkFBQTs7O0FBS0Y7RUFBQTtJQ2pMQSx3QkFBQSIsInNvdXJjZXNDb250ZW50IjpbIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMiB8IE1JVCBMaWNlbnNlIHwgZ2l0LmlvL25vcm1hbGl6ZSAqL1xyXG5cclxuLy9cclxuLy8gMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cclxuLy8gMi4gUHJldmVudCBpT1MgdGV4dCBzaXplIGFkanVzdCBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2UsIHdpdGhvdXQgZGlzYWJsaW5nXHJcbi8vICAgIHVzZXIgem9vbS5cclxuLy9cclxuXHJcbmh0bWwge1xyXG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAxXHJcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcclxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcclxufVxyXG5cclxuLy9cclxuLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxyXG4vL1xyXG5cclxuYm9keSB7XHJcbiAgbWFyZ2luOiAwO1xyXG59XHJcblxyXG4vLyBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vL1xyXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxyXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxyXG4vLyBhbmQgRmlyZWZveC5cclxuLy8gQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cclxuLy9cclxuXHJcbmFydGljbGUsXHJcbmFzaWRlLFxyXG5kZXRhaWxzLFxyXG5maWdjYXB0aW9uLFxyXG5maWd1cmUsXHJcbmZvb3RlcixcclxuaGVhZGVyLFxyXG5oZ3JvdXAsXHJcbm1haW4sXHJcbm1lbnUsXHJcbm5hdixcclxuc2VjdGlvbixcclxuc3VtbWFyeSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi8vXHJcbi8vIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXHJcbi8vIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cclxuLy9cclxuXHJcbmF1ZGlvLFxyXG5jYW52YXMsXHJcbnByb2dyZXNzLFxyXG52aWRlbyB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXHJcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyAyXHJcbn1cclxuXHJcbi8vXHJcbi8vIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXHJcbi8vIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXHJcbi8vXHJcblxyXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgaGVpZ2h0OiAwO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXHJcbi8vIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cclxuLy9cclxuXHJcbltoaWRkZW5dLFxyXG50ZW1wbGF0ZSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLy8gTGlua3NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vXHJcbi8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxyXG4vL1xyXG5cclxuYSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEltcHJvdmUgcmVhZGFiaWxpdHkgd2hlbiBmb2N1c2VkIGFuZCBhbHNvIG1vdXNlIGhvdmVyZWQgaW4gYWxsIGJyb3dzZXJzLlxyXG4vL1xyXG5cclxuYTphY3RpdmUsXHJcbmE6aG92ZXIge1xyXG4gIG91dGxpbmU6IDA7XHJcbn1cclxuXHJcbi8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbi8vXHJcblxyXG5hYmJyW3RpdGxlXSB7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxyXG4vL1xyXG5cclxuYixcclxuc3Ryb25nIHtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxyXG4vL1xyXG5cclxuZGZuIHtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcclxuLy8gY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxyXG4vL1xyXG5cclxuaDEge1xyXG4gIGZvbnQtc2l6ZTogMmVtO1xyXG4gIG1hcmdpbjogMC42N2VtIDA7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXHJcbi8vXHJcblxyXG5tYXJrIHtcclxuICBiYWNrZ3JvdW5kOiAjZmYwO1xyXG4gIGNvbG9yOiAjMDAwO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cclxuLy9cclxuXHJcbnNtYWxsIHtcclxuICBmb250LXNpemU6IDgwJTtcclxufVxyXG5cclxuLy9cclxuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxyXG4vL1xyXG5cclxuc3ViLFxyXG5zdXAge1xyXG4gIGZvbnQtc2l6ZTogNzUlO1xyXG4gIGxpbmUtaGVpZ2h0OiAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbn1cclxuXHJcbnN1cCB7XHJcbiAgdG9wOiAtMC41ZW07XHJcbn1cclxuXHJcbnN1YiB7XHJcbiAgYm90dG9tOiAtMC4yNWVtO1xyXG59XHJcblxyXG4vLyBFbWJlZGRlZCBjb250ZW50XHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vL1xyXG4vLyBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cclxuLy9cclxuXHJcbmltZyB7XHJcbiAgYm9yZGVyOiAwO1xyXG59XHJcblxyXG4vL1xyXG4vLyBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cclxuLy9cclxuXHJcbnN2Zzpub3QoOnJvb3QpIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vLyBHcm91cGluZyBjb250ZW50XHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cclxuLy9cclxuXHJcbmZpZ3VyZSB7XHJcbiAgbWFyZ2luOiAxZW0gNDBweDtcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxyXG4vL1xyXG5cclxuaHIge1xyXG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XHJcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XHJcbiAgaGVpZ2h0OiAwO1xyXG59XHJcblxyXG4vL1xyXG4vLyBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cclxuLy9cclxuXHJcbnByZSB7XHJcbiAgb3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cclxuLy9cclxuXHJcbmNvZGUsXHJcbmtiZCxcclxucHJlLFxyXG5zYW1wIHtcclxuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XHJcbiAgZm9udC1zaXplOiAxZW07XHJcbn1cclxuXHJcbi8vIEZvcm1zXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vL1xyXG4vLyBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxyXG4vLyBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXHJcbi8vXHJcblxyXG4vL1xyXG4vLyAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXHJcbi8vICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxyXG4vLyAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxyXG4vLyAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cclxuLy9cclxuXHJcbmJ1dHRvbixcclxuaW5wdXQsXHJcbm9wdGdyb3VwLFxyXG5zZWxlY3QsXHJcbnRleHRhcmVhIHtcclxuICBjb2xvcjogaW5oZXJpdDsgLy8gMVxyXG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcclxuICBtYXJnaW46IDA7IC8vIDNcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXHJcbi8vXHJcblxyXG5idXR0b24ge1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXHJcbi8vIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXHJcbi8vIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXHJcbi8vIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cclxuLy9cclxuXHJcbmJ1dHRvbixcclxuc2VsZWN0IHtcclxuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxufVxyXG5cclxuLy9cclxuLy8gMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcclxuLy8gICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXHJcbi8vIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cclxuLy8gMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcclxuLy8gICAgYGlucHV0YCBhbmQgb3RoZXJzLlxyXG4vL1xyXG5cclxuYnV0dG9uLFxyXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8vIDFcclxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxyXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxyXG4gIGN1cnNvcjogcG9pbnRlcjsgLy8gM1xyXG59XHJcblxyXG4vL1xyXG4vLyBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxyXG4vL1xyXG5cclxuYnV0dG9uW2Rpc2FibGVkXSxcclxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xyXG4gIGN1cnNvcjogZGVmYXVsdDtcclxufVxyXG5cclxuLy9cclxuLy8gUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxyXG4vL1xyXG5cclxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxyXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cclxuLy8gdGhlIFVBIHN0eWxlc2hlZXQuXHJcbi8vXHJcblxyXG5pbnB1dCB7XHJcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcclxufVxyXG5cclxuLy9cclxuLy8gSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxyXG4vLyBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxyXG4vL1xyXG4vLyAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxyXG4vLyAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxyXG4vL1xyXG5cclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcclxuICBwYWRkaW5nOiAwOyAvLyAyXHJcbn1cclxuXHJcbi8vXHJcbi8vIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXHJcbi8vIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXHJcbi8vIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cclxuLy9cclxuXHJcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXHJcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLy9cclxuLy8gMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXHJcbi8vIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWVcclxuLy8gICAgKGluY2x1ZGUgYC1tb3pgIHRvIGZ1dHVyZS1wcm9vZikuXHJcbi8vXHJcblxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxyXG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XHJcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMlxyXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG59XHJcblxyXG4vL1xyXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cclxuLy8gU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xyXG4vLyBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXHJcbi8vXHJcblxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcbi8vXHJcbi8vIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cclxuLy9cclxuXHJcbmZpZWxkc2V0IHtcclxuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xyXG4gIG1hcmdpbjogMCAycHg7XHJcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xyXG59XHJcblxyXG4vL1xyXG4vLyAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXHJcbi8vIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cclxuLy9cclxuXHJcbmxlZ2VuZCB7XHJcbiAgYm9yZGVyOiAwOyAvLyAxXHJcbiAgcGFkZGluZzogMDsgLy8gMlxyXG59XHJcblxyXG4vL1xyXG4vLyBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxyXG4vL1xyXG5cclxudGV4dGFyZWEge1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4vL1xyXG4vLyBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXHJcbi8vIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxyXG4vL1xyXG5cclxub3B0Z3JvdXAge1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4vLyBUYWJsZXNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vXHJcbi8vIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cclxuLy9cclxuXHJcbnRhYmxlIHtcclxuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gIGJvcmRlci1zcGFjaW5nOiAwO1xyXG59XHJcblxyXG50ZCxcclxudGgge1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuIiwiLyohIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzcyAqL1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gUHJpbnQgc3R5bGVzLlxyXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDogaDVicC5jb20vclxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuQG1lZGlhIHByaW50IHtcclxuICAgICosXHJcbiAgICAqOmJlZm9yZSxcclxuICAgICo6YWZ0ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIGEsXHJcbiAgICBhOnZpc2l0ZWQge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG5cclxuICAgIGFbaHJlZl06YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xyXG4gICAgfVxyXG5cclxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcclxuICAgIC8vIG9yIHVzZSB0aGUgYGphdmFzY3JpcHQ6YCBwc2V1ZG8gcHJvdG9jb2xcclxuICAgIGFbaHJlZl49XCIjXCJdOmFmdGVyLFxyXG4gICAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgfVxyXG5cclxuICAgIHByZSxcclxuICAgIGJsb2NrcXVvdGUge1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XHJcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xyXG4gICAgfVxyXG5cclxuICAgIHRoZWFkIHtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IC8vIGg1YnAuY29tL3RcclxuICAgIH1cclxuXHJcbiAgICB0cixcclxuICAgIGltZyB7XHJcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgcCxcclxuICAgIGgyLFxyXG4gICAgaDMge1xyXG4gICAgICAgIG9ycGhhbnM6IDM7XHJcbiAgICAgICAgd2lkb3dzOiAzO1xyXG4gICAgfVxyXG5cclxuICAgIGgyLFxyXG4gICAgaDMge1xyXG4gICAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIHN0YXJ0XHJcbiAgICAvL1xyXG4gICAgLy8gQ2hyb21lIChPU1gpIGZpeCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTI0NVxyXG4gICAgLy8gT25jZSBmaXhlZCwgd2UgY2FuIGp1c3Qgc3RyYWlnaHQgdXAgcmVtb3ZlIHRoaXMuXHJcbiAgICBzZWxlY3Qge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmYgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBCb290c3RyYXAgY29tcG9uZW50c1xyXG4gICAgLm5hdmJhciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIC5idG4sXHJcbiAgICAuZHJvcHVwID4gLmJ0biB7XHJcbiAgICAgICAgPiAuY2FyZXQge1xyXG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxhYmVsIHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xyXG4gICAgfVxyXG5cclxuICAgIC50YWJsZSB7XHJcbiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICB0ZCxcclxuICAgICAgICB0aCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAudGFibGUtYm9yZGVyZWQge1xyXG4gICAgICAgIHRoLFxyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBlbmRcclxufVxyXG4iLCIvL1xyXG4vLyBHbHlwaGljb25zIGZvciBCb290c3RyYXBcclxuLy9cclxuLy8gU2luY2UgaWNvbnMgYXJlIGZvbnRzLCB0aGV5IGNhbiBiZSBwbGFjZWQgYW55d2hlcmUgdGV4dCBpcyBwbGFjZWQgYW5kIGFyZVxyXG4vLyB0aHVzIGF1dG9tYXRpY2FsbHkgc2l6ZWQgdG8gbWF0Y2ggdGhlIHN1cnJvdW5kaW5nIGNoaWxkLiBUbyB1c2UsIGNyZWF0ZSBhblxyXG4vLyBpbmxpbmUgZWxlbWVudCB3aXRoIHRoZSBhcHByb3ByaWF0ZSBjbGFzc2VzLCBsaWtlIHNvOlxyXG4vL1xyXG4vLyA8YSBocmVmPVwiI1wiPjxzcGFuIGNsYXNzPVwiZ2x5cGhpY29uIGdseXBoaWNvbi1zdGFyXCI+PC9zcGFuPiBTdGFyPC9hPlxyXG5cclxuLy8gSW1wb3J0IHRoZSBmb250c1xyXG5AZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogJ0dseXBoaWNvbnMgSGFsZmxpbmdzJztcclxuICBzcmM6IHVybCgnQHtpY29uLWZvbnQtcGF0aH1Ae2ljb24tZm9udC1uYW1lfS5lb3QnKTtcclxuICBzcmM6IHVybCgnQHtpY29uLWZvbnQtcGF0aH1Ae2ljb24tZm9udC1uYW1lfS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG4gICAgICAgdXJsKCdAe2ljb24tZm9udC1wYXRofUB7aWNvbi1mb250LW5hbWV9LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgdXJsKCdAe2ljb24tZm9udC1wYXRofUB7aWNvbi1mb250LW5hbWV9LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuICAgICAgIHVybCgnQHtpY29uLWZvbnQtcGF0aH1Ae2ljb24tZm9udC1uYW1lfS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXHJcbiAgICAgICB1cmwoJ0B7aWNvbi1mb250LXBhdGh9QHtpY29uLWZvbnQtbmFtZX0uc3ZnI0B7aWNvbi1mb250LXN2Zy1pZH0nKSBmb3JtYXQoJ3N2ZycpO1xyXG59XHJcblxyXG4vLyBDYXRjaGFsbCBiYXNlY2xhc3NcclxuLmdseXBoaWNvbiB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRvcDogMXB4O1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBmb250LWZhbWlseTogJ0dseXBoaWNvbnMgSGFsZmxpbmdzJztcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBsaW5lLWhlaWdodDogMTtcclxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG59XHJcblxyXG4vLyBJbmRpdmlkdWFsIGljb25zXHJcbi5nbHlwaGljb24tYXN0ZXJpc2sgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDJhXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBsdXMgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyYlwiOyB9IH1cclxuLmdseXBoaWNvbi1ldXJvLFxyXG4uZ2x5cGhpY29uLWV1ciAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMGFjXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW1pbnVzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMjEyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNsb3VkICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNjAxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWVudmVsb3BlICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNzA5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBlbmNpbCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNzBmXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWdsYXNzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDAxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW11c2ljICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDAyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNlYXJjaCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDAzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhlYXJ0ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXN0YXIgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXN0YXItZW1wdHkgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXVzZXIgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZpbG0gICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRoLWxhcmdlICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRoICAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDExXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRoLWxpc3QgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9rICAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlbW92ZSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXpvb20taW4gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXpvb20tb3V0ICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9mZiAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNpZ25hbCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNvZyAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRyYXNoICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhvbWUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZpbGUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRpbWUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJvYWQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWRvd25sb2FkLWFsdCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWRvd25sb2FkICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXVwbG9hZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWluYm94ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBsYXktY2lyY2xlICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlcGVhdCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlZnJlc2ggICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWxpc3QtYWx0ICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWxvY2sgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZsYWcgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhlYWRwaG9uZXMgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXZvbHVtZS1vZmYgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXZvbHVtZS1kb3duICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXZvbHVtZS11cCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXFyY29kZSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJhcmNvZGUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRhZyAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRhZ3MgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJvb2sgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJvb2ttYXJrICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXByaW50ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNhbWVyYSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZvbnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJvbGQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWl0YWxpYyAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRleHQtaGVpZ2h0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRleHQtd2lkdGggICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFsaWduLWxlZnQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFsaWduLWNlbnRlciAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFsaWduLXJpZ2h0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFsaWduLWp1c3RpZnkgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWxpc3QgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWluZGVudC1sZWZ0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWluZGVudC1yaWdodCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZhY2V0aW1lLXZpZGVvICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBpY3R1cmUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW1hcC1tYXJrZXIgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFkanVzdCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRpbnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWVkaXQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNoYXJlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNoZWNrICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW1vdmUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXN0ZXAtYmFja3dhcmQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZhc3QtYmFja3dhcmQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDcwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJhY2t3YXJkICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDcxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBsYXkgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDcyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBhdXNlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDczXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXN0b3AgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZvcndhcmQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZhc3QtZm9yd2FyZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXN0ZXAtZm9yd2FyZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWVqZWN0ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNoZXZyb24tbGVmdCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBsdXMtc2lnbiAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW1pbnVzLXNpZ24gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlbW92ZS1zaWduICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9rLXNpZ24gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWluZm8tc2lnbiAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNjcmVlbnNob3QgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlbW92ZS1jaXJjbGUgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9rLWNpcmNsZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJhbi1jaXJjbGUgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFycm93LWxlZnQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFycm93LXJpZ2h0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFycm93LXVwICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFycm93LWRvd24gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNoYXJlLWFsdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlc2l6ZS1mdWxsICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlc2l6ZS1zbWFsbCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24gICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTAxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWdpZnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTAyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWxlYWYgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTAzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZpcmUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWV5ZS1vcGVuICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWV5ZS1jbG9zZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXdhcm5pbmctc2lnbiAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBsYW5lICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNhbGVuZGFyICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJhbmRvbSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNvbW1lbnQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTExXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW1hZ25ldCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNoZXZyb24tdXAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNoZXZyb24tZG93biAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJldHdlZXQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNob3BwaW5nLWNhcnQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZvbGRlci1jbG9zZSAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZvbGRlci1vcGVuICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlc2l6ZS12ZXJ0aWNhbCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlc2l6ZS1ob3Jpem9udGFsICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhkZCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJ1bGxob3JuICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJlbGwgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNlcnRpZmljYXRlICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRodW1icy11cCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRodW1icy1kb3duICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhhbmQtcmlnaHQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhhbmQtbGVmdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhhbmQtdXAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhhbmQtZG93biAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1yaWdodCAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1sZWZ0ICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy11cCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1kb3duICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWdsb2JlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXdyZW5jaCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRhc2tzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZpbHRlciAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJyaWVmY2FzZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZ1bGxzY3JlZW4gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWRhc2hib2FyZCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBhcGVyY2xpcCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhlYXJ0LWVtcHR5ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWxpbmsgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBob25lICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXB1c2hwaW4gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXVzZCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWdicCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvcnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvcnQtYnktYWxwaGFiZXQgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvcnQtYnktYWxwaGFiZXQtYWx0ICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvcnQtYnktb3JkZXIgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvcnQtYnktb3JkZXItYWx0ICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvcnQtYnktYXR0cmlidXRlcyAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvcnQtYnktYXR0cmlidXRlcy1hbHQgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXVuY2hlY2tlZCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWV4cGFuZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNvbGxhcHNlLWRvd24gICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNvbGxhcHNlLXVwICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWxvZy1pbiAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZsYXNoICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWxvZy1vdXQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW5ldy13aW5kb3cgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlY29yZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNhdmUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9wZW4gICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNhdmVkICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWltcG9ydCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWV4cG9ydCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTcwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNlbmQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTcxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZsb3BweS1kaXNrICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTcyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZsb3BweS1zYXZlZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTczXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZsb3BweS1yZW1vdmUgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZsb3BweS1zYXZlICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZsb3BweS1vcGVuICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNyZWRpdC1jYXJkICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRyYW5zZmVyICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWN1dGxlcnkgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhlYWRlciAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNvbXByZXNzZWQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWVhcnBob25lICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBob25lLWFsdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRvd2VyICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXN0YXRzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNkLXZpZGVvICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhkLXZpZGVvICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXN1YnRpdGxlcyAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvdW5kLXN0ZXJlbyAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvdW5kLWRvbGJ5ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvdW5kLTUtMSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvdW5kLTYtMSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvdW5kLTctMSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNvcHlyaWdodC1tYXJrICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlZ2lzdHJhdGlvbi1tYXJrICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNsb3VkLWRvd25sb2FkICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNsb3VkLXVwbG9hZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRyZWUtY29uaWZlciAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRyZWUtZGVjaWR1b3VzICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNkICAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNhdmUtZmlsZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9wZW4tZmlsZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWxldmVsLXVwICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNvcHkgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBhc3RlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA2XCI7IH0gfVxyXG4vLyBUaGUgZm9sbG93aW5nIDIgR2x5cGhpY29ucyBhcmUgb21pdHRlZCBmb3IgdGhlIHRpbWUgYmVpbmcgYmVjYXVzZVxyXG4vLyB0aGV5IGN1cnJlbnRseSB1c2UgVW5pY29kZSBjb2RlcG9pbnRzIHRoYXQgYXJlIG91dHNpZGUgdGhlXHJcbi8vIEJhc2ljIE11bHRpbGluZ3VhbCBQbGFuZSAoQk1QKS4gT2xkZXIgYnVnZ3kgdmVyc2lvbnMgb2YgV2ViS2l0IGNhbid0IGhhbmRsZVxyXG4vLyBub24tQk1QIGNvZGVwb2ludHMgaW4gQ1NTIHN0cmluZyBlc2NhcGVzLCBhbmQgdGh1cyBjYW4ndCBkaXNwbGF5IHRoZXNlIHR3byBpY29ucy5cclxuLy8gTm90YWJseSwgdGhlIGJ1ZyBhZmZlY3RzIHNvbWUgb2xkZXIgdmVyc2lvbnMgb2YgdGhlIEFuZHJvaWQgQnJvd3Nlci5cclxuLy8gTW9yZSBpbmZvOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwMTA2XHJcbi8vIC5nbHlwaGljb24tZG9vciAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDFmNmFhXCI7IH0gfVxyXG4vLyAuZ2x5cGhpY29uLWtleSAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwxZjUxMVwiOyB9IH1cclxuLmdseXBoaWNvbi1hbGVydCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwOVwiOyB9IH1cclxuLmdseXBoaWNvbi1lcXVhbGl6ZXIgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxMFwiOyB9IH1cclxuLmdseXBoaWNvbi1raW5nICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxMVwiOyB9IH1cclxuLmdseXBoaWNvbi1xdWVlbiAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxMlwiOyB9IH1cclxuLmdseXBoaWNvbi1wYXduICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxM1wiOyB9IH1cclxuLmdseXBoaWNvbi1iaXNob3AgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxNFwiOyB9IH1cclxuLmdseXBoaWNvbi1rbmlnaHQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxNVwiOyB9IH1cclxuLmdseXBoaWNvbi1iYWJ5LWZvcm11bGEgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxNlwiOyB9IH1cclxuLmdseXBoaWNvbi10ZW50ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjZmYVwiOyB9IH1cclxuLmdseXBoaWNvbi1ibGFja2JvYXJkICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxOFwiOyB9IH1cclxuLmdseXBoaWNvbi1iZWQgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxOVwiOyB9IH1cclxuLmdseXBoaWNvbi1hcHBsZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjhmZlwiOyB9IH1cclxuLmdseXBoaWNvbi1lcmFzZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyMVwiOyB9IH1cclxuLmdseXBoaWNvbi1ob3VyZ2xhc3MgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjMxYlwiOyB9IH1cclxuLmdseXBoaWNvbi1sYW1wICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyM1wiOyB9IH1cclxuLmdseXBoaWNvbi1kdXBsaWNhdGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyNFwiOyB9IH1cclxuLmdseXBoaWNvbi1waWdneS1iYW5rICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyNVwiOyB9IH1cclxuLmdseXBoaWNvbi1zY2lzc29ycyAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyNlwiOyB9IH1cclxuLmdseXBoaWNvbi1iaXRjb2luICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyN1wiOyB9IH1cclxuLmdseXBoaWNvbi1idGMgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyN1wiOyB9IH1cclxuLmdseXBoaWNvbi14YnQgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyN1wiOyB9IH1cclxuLmdseXBoaWNvbi15ZW4gICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMDBhNVwiOyB9IH1cclxuLmdseXBoaWNvbi1qcHkgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMDBhNVwiOyB9IH1cclxuLmdseXBoaWNvbi1ydWJsZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjBiZFwiOyB9IH1cclxuLmdseXBoaWNvbi1ydWIgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjBiZFwiOyB9IH1cclxuLmdseXBoaWNvbi1zY2FsZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzMFwiOyB9IH1cclxuLmdseXBoaWNvbi1pY2UtbG9sbHkgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzMVwiOyB9IH1cclxuLmdseXBoaWNvbi1pY2UtbG9sbHktdGFzdGVkICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzMlwiOyB9IH1cclxuLmdseXBoaWNvbi1lZHVjYXRpb24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzM1wiOyB9IH1cclxuLmdseXBoaWNvbi1vcHRpb24taG9yaXpvbnRhbCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzNFwiOyB9IH1cclxuLmdseXBoaWNvbi1vcHRpb24tdmVydGljYWwgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzNVwiOyB9IH1cclxuLmdseXBoaWNvbi1tZW51LWhhbWJ1cmdlciAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzNlwiOyB9IH1cclxuLmdseXBoaWNvbi1tb2RhbC13aW5kb3cgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzN1wiOyB9IH1cclxuLmdseXBoaWNvbi1vaWwgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzOFwiOyB9IH1cclxuLmdseXBoaWNvbi1ncmFpbiAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzOVwiOyB9IH1cclxuLmdseXBoaWNvbi1zdW5nbGFzc2VzICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0MFwiOyB9IH1cclxuLmdseXBoaWNvbi10ZXh0LXNpemUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0MVwiOyB9IH1cclxuLmdseXBoaWNvbi10ZXh0LWNvbG9yICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0MlwiOyB9IH1cclxuLmdseXBoaWNvbi10ZXh0LWJhY2tncm91bmQgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0M1wiOyB9IH1cclxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tdG9wICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0NFwiOyB9IH1cclxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tYm90dG9tICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0NVwiOyB9IH1cclxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24taG9yaXpvbnRhbHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0NlwiOyB9IH1cclxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tbGVmdCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0N1wiOyB9IH1cclxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tdmVydGljYWwgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0OFwiOyB9IH1cclxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tcmlnaHQgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0OVwiOyB9IH1cclxuLmdseXBoaWNvbi10cmlhbmdsZS1yaWdodCAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1MFwiOyB9IH1cclxuLmdseXBoaWNvbi10cmlhbmdsZS1sZWZ0ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1MVwiOyB9IH1cclxuLmdseXBoaWNvbi10cmlhbmdsZS1ib3R0b20gICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1MlwiOyB9IH1cclxuLmdseXBoaWNvbi10cmlhbmdsZS10b3AgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1M1wiOyB9IH1cclxuLmdseXBoaWNvbi1jb25zb2xlICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1NFwiOyB9IH1cclxuLmdseXBoaWNvbi1zdXBlcnNjcmlwdCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1NVwiOyB9IH1cclxuLmdseXBoaWNvbi1zdWJzY3JpcHQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1NlwiOyB9IH1cclxuLmdseXBoaWNvbi1tZW51LWxlZnQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1N1wiOyB9IH1cclxuLmdseXBoaWNvbi1tZW51LXJpZ2h0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1OFwiOyB9IH1cclxuLmdseXBoaWNvbi1tZW51LWRvd24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1OVwiOyB9IH1cclxuLmdseXBoaWNvbi1tZW51LXVwICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI2MFwiOyB9IH1cclxuIiwiLy9cclxuLy8gU2NhZmZvbGRpbmdcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBSZXNldCB0aGUgYm94LXNpemluZ1xyXG4vL1xyXG4vLyBIZWFkcyB1cCEgVGhpcyByZXNldCBtYXkgY2F1c2UgY29uZmxpY3RzIHdpdGggc29tZSB0aGlyZC1wYXJ0eSB3aWRnZXRzLlxyXG4vLyBGb3IgcmVjb21tZW5kYXRpb25zIG9uIHJlc29sdmluZyBzdWNoIGNvbmZsaWN0cywgc2VlXHJcbi8vIGh0dHA6Ly9nZXRib290c3RyYXAuY29tL2dldHRpbmctc3RhcnRlZC8jdGhpcmQtYm94LXNpemluZ1xyXG4qIHtcclxuICAuYm94LXNpemluZyhib3JkZXItYm94KTtcclxufVxyXG4qOmJlZm9yZSxcclxuKjphZnRlciB7XHJcbiAgLmJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbn1cclxuXHJcblxyXG4vLyBCb2R5IHJlc2V0XHJcblxyXG5odG1sIHtcclxuICBmb250LXNpemU6IDEwcHg7XHJcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xyXG59XHJcblxyXG5ib2R5IHtcclxuICBmb250LWZhbWlseTogQGZvbnQtZmFtaWx5LWJhc2U7XHJcbiAgZm9udC1zaXplOiBAZm9udC1zaXplLWJhc2U7XHJcbiAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodC1iYXNlO1xyXG4gIGNvbG9yOiBAdGV4dC1jb2xvcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYm9keS1iZztcclxufVxyXG5cclxuLy8gUmVzZXQgZm9udHMgZm9yIHJlbGV2YW50IGVsZW1lbnRzXHJcbmlucHV0LFxyXG5idXR0b24sXHJcbnNlbGVjdCxcclxudGV4dGFyZWEge1xyXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxufVxyXG5cclxuXHJcbi8vIExpbmtzXHJcblxyXG5hIHtcclxuICBjb2xvcjogQGxpbmstY29sb3I7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgY29sb3I6IEBsaW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBAbGluay1ob3Zlci1kZWNvcmF0aW9uO1xyXG4gIH1cclxuXHJcbiAgJjpmb2N1cyB7XHJcbiAgICAudGFiLWZvY3VzKCk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRmlndXJlc1xyXG4vL1xyXG4vLyBXZSByZXNldCB0aGlzIGhlcmUgYmVjYXVzZSBwcmV2aW91c2x5IE5vcm1hbGl6ZSBoYWQgbm8gYGZpZ3VyZWAgbWFyZ2lucy4gVGhpc1xyXG4vLyBlbnN1cmVzIHdlIGRvbid0IGJyZWFrIGFueW9uZSdzIHVzZSBvZiB0aGUgZWxlbWVudC5cclxuXHJcbmZpZ3VyZSB7XHJcbiAgbWFyZ2luOiAwO1xyXG59XHJcblxyXG5cclxuLy8gSW1hZ2VzXHJcblxyXG5pbWcge1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbn1cclxuXHJcbi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxyXG4uaW1nLXJlc3BvbnNpdmUge1xyXG4gIC5pbWctcmVzcG9uc2l2ZSgpO1xyXG59XHJcblxyXG4vLyBSb3VuZGVkIGNvcm5lcnNcclxuLmltZy1yb3VuZGVkIHtcclxuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cy1sYXJnZTtcclxufVxyXG5cclxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xyXG4vL1xyXG4vLyBIZWFkcyB1cCEgVGhpcyBpcyBtaXhpbi1lZCBpbnRvIHRodW1ibmFpbHMubGVzcyBmb3IgYC50aHVtYm5haWxgLlxyXG4uaW1nLXRodW1ibmFpbCB7XHJcbiAgcGFkZGluZzogQHRodW1ibmFpbC1wYWRkaW5nO1xyXG4gIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAdGh1bWJuYWlsLWJnO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIEB0aHVtYm5haWwtYm9yZGVyO1xyXG4gIGJvcmRlci1yYWRpdXM6IEB0aHVtYm5haWwtYm9yZGVyLXJhZGl1cztcclxuICAudHJhbnNpdGlvbihhbGwgLjJzIGVhc2UtaW4tb3V0KTtcclxuXHJcbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXHJcbiAgLmltZy1yZXNwb25zaXZlKGlubGluZS1ibG9jayk7XHJcbn1cclxuXHJcbi8vIFBlcmZlY3QgY2lyY2xlXHJcbi5pbWctY2lyY2xlIHtcclxuICBib3JkZXItcmFkaXVzOiA1MCU7IC8vIHNldCByYWRpdXMgaW4gcGVyY2VudHNcclxufVxyXG5cclxuXHJcbi8vIEhvcml6b250YWwgcnVsZXNcclxuXHJcbmhyIHtcclxuICBtYXJnaW4tdG9wOiAgICBAbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgbWFyZ2luLWJvdHRvbTogQGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGJvcmRlcjogMDtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgQGhyLWJvcmRlcjtcclxufVxyXG5cclxuXHJcbi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzXHJcbi8vXHJcbi8vIFNlZTogaHR0cDovL2ExMXlwcm9qZWN0LmNvbS9wb3N0cy9ob3ctdG8taGlkZS1jb250ZW50L1xyXG5cclxuLnNyLW9ubHkge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB3aWR0aDogMXB4O1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIG1hcmdpbjogLTFweDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgY2xpcDogcmVjdCgwLDAsMCwwKTtcclxuICBib3JkZXI6IDA7XHJcbn1cclxuXHJcbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxyXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcclxuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxyXG5cclxuLnNyLW9ubHktZm9jdXNhYmxlIHtcclxuICAmOmFjdGl2ZSxcclxuICAmOmZvY3VzIHtcclxuICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIG1hcmdpbjogMDtcclxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgY2xpcDogYXV0bztcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBpT1MgXCJjbGlja2FibGUgZWxlbWVudHNcIiBmaXggZm9yIHJvbGU9XCJidXR0b25cIlxyXG4vL1xyXG4vLyBGaXhlcyBcImNsaWNrYWJpbGl0eVwiIGlzc3VlIChhbmQgbW9yZSBnZW5lcmFsbHksIHRoZSBmaXJpbmcgb2YgZXZlbnRzIHN1Y2ggYXMgZm9jdXMgYXMgd2VsbClcclxuLy8gZm9yIHRyYWRpdGlvbmFsbHkgbm9uLWZvY3VzYWJsZSBlbGVtZW50cyB3aXRoIHJvbGU9XCJidXR0b25cIlxyXG4vLyBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcclxuLy8gVXBzdHJlYW0gcGF0Y2ggZm9yIG5vcm1hbGl6ZS5jc3Mgc3VibWl0dGVkOiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL3B1bGwvMzc5IC0gcmVtb3ZlIHRoaXMgZml4IG9uY2UgdGhhdCBpcyBtZXJnZWRcclxuXHJcbltyb2xlPVwiYnV0dG9uXCJdIHtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn0iLCIvLyBWZW5kb3IgUHJlZml4ZXNcclxuLy9cclxuLy8gQWxsIHZlbmRvciBtaXhpbnMgYXJlIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGR1ZSB0byB0aGUgaW50cm9kdWN0aW9uIG9mXHJcbi8vIEF1dG9wcmVmaXhlciBpbiBvdXIgR3J1bnRmaWxlLiBUaGV5IHdpbGwgYmUgcmVtb3ZlZCBpbiB2NC5cclxuXHJcbi8vIC0gQW5pbWF0aW9uc1xyXG4vLyAtIEJhY2tmYWNlIHZpc2liaWxpdHlcclxuLy8gLSBCb3ggc2hhZG93XHJcbi8vIC0gQm94IHNpemluZ1xyXG4vLyAtIENvbnRlbnQgY29sdW1uc1xyXG4vLyAtIEh5cGhlbnNcclxuLy8gLSBQbGFjZWhvbGRlciB0ZXh0XHJcbi8vIC0gVHJhbnNmb3JtYXRpb25zXHJcbi8vIC0gVHJhbnNpdGlvbnNcclxuLy8gLSBVc2VyIFNlbGVjdFxyXG5cclxuXHJcbi8vIEFuaW1hdGlvbnNcclxuLmFuaW1hdGlvbihAYW5pbWF0aW9uKSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246IEBhbmltYXRpb247XHJcbiAgICAgICAtby1hbmltYXRpb246IEBhbmltYXRpb247XHJcbiAgICAgICAgICBhbmltYXRpb246IEBhbmltYXRpb247XHJcbn1cclxuLmFuaW1hdGlvbi1uYW1lKEBuYW1lKSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogQG5hbWU7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogQG5hbWU7XHJcbn1cclxuLmFuaW1hdGlvbi1kdXJhdGlvbihAZHVyYXRpb24pIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogQGR1cmF0aW9uO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiBAZHVyYXRpb247XHJcbn1cclxuLmFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oQHRpbWluZy1mdW5jdGlvbikge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogQHRpbWluZy1mdW5jdGlvbjtcclxuICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IEB0aW1pbmctZnVuY3Rpb247XHJcbn1cclxuLmFuaW1hdGlvbi1kZWxheShAZGVsYXkpIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogQGRlbGF5O1xyXG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiBAZGVsYXk7XHJcbn1cclxuLmFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQoQGl0ZXJhdGlvbi1jb3VudCkge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogQGl0ZXJhdGlvbi1jb3VudDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IEBpdGVyYXRpb24tY291bnQ7XHJcbn1cclxuLmFuaW1hdGlvbi1kaXJlY3Rpb24oQGRpcmVjdGlvbikge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogQGRpcmVjdGlvbjtcclxuICAgICAgICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246IEBkaXJlY3Rpb247XHJcbn1cclxuLmFuaW1hdGlvbi1maWxsLW1vZGUoQGZpbGwtbW9kZSkge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogQGZpbGwtbW9kZTtcclxuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IEBmaWxsLW1vZGU7XHJcbn1cclxuXHJcbi8vIEJhY2tmYWNlIHZpc2liaWxpdHlcclxuLy8gUHJldmVudCBicm93c2VycyBmcm9tIGZsaWNrZXJpbmcgd2hlbiB1c2luZyBDU1MgM0QgdHJhbnNmb3Jtcy5cclxuLy8gRGVmYXVsdCB2YWx1ZSBpcyBgdmlzaWJsZWAsIGJ1dCBjYW4gYmUgY2hhbmdlZCB0byBgaGlkZGVuYFxyXG5cclxuLmJhY2tmYWNlLXZpc2liaWxpdHkoQHZpc2liaWxpdHkpe1xyXG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogQHZpc2liaWxpdHk7XHJcbiAgICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBAdmlzaWJpbGl0eTtcclxuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IEB2aXNpYmlsaXR5O1xyXG59XHJcblxyXG4vLyBEcm9wIHNoYWRvd3NcclxuLy9cclxuLy8gTm90ZTogRGVwcmVjYXRlZCBgLmJveC1zaGFkb3coKWAgYXMgb2YgdjMuMS4wIHNpbmNlIGFsbCBvZiBCb290c3RyYXAnc1xyXG4vLyBzdXBwb3J0ZWQgYnJvd3NlcnMgdGhhdCBoYXZlIGJveCBzaGFkb3cgY2FwYWJpbGl0aWVzIG5vdyBzdXBwb3J0IGl0LlxyXG5cclxuLmJveC1zaGFkb3coQHNoYWRvdykge1xyXG4gIC13ZWJraXQtYm94LXNoYWRvdzogQHNoYWRvdzsgLy8gaU9TIDw0LjMgJiBBbmRyb2lkIDw0LjFcclxuICAgICAgICAgIGJveC1zaGFkb3c6IEBzaGFkb3c7XHJcbn1cclxuXHJcbi8vIEJveCBzaXppbmdcclxuLmJveC1zaXppbmcoQGJveG1vZGVsKSB7XHJcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBAYm94bW9kZWw7XHJcbiAgICAgLW1vei1ib3gtc2l6aW5nOiBAYm94bW9kZWw7XHJcbiAgICAgICAgICBib3gtc2l6aW5nOiBAYm94bW9kZWw7XHJcbn1cclxuXHJcbi8vIENTUzMgQ29udGVudCBDb2x1bW5zXHJcbi5jb250ZW50LWNvbHVtbnMoQGNvbHVtbi1jb3VudDsgQGNvbHVtbi1nYXA6IEBncmlkLWd1dHRlci13aWR0aCkge1xyXG4gIC13ZWJraXQtY29sdW1uLWNvdW50OiBAY29sdW1uLWNvdW50O1xyXG4gICAgIC1tb3otY29sdW1uLWNvdW50OiBAY29sdW1uLWNvdW50O1xyXG4gICAgICAgICAgY29sdW1uLWNvdW50OiBAY29sdW1uLWNvdW50O1xyXG4gIC13ZWJraXQtY29sdW1uLWdhcDogQGNvbHVtbi1nYXA7XHJcbiAgICAgLW1vei1jb2x1bW4tZ2FwOiBAY29sdW1uLWdhcDtcclxuICAgICAgICAgIGNvbHVtbi1nYXA6IEBjb2x1bW4tZ2FwO1xyXG59XHJcblxyXG4vLyBPcHRpb25hbCBoeXBoZW5hdGlvblxyXG4uaHlwaGVucyhAbW9kZTogYXV0bykge1xyXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuICAtd2Via2l0LWh5cGhlbnM6IEBtb2RlO1xyXG4gICAgIC1tb3otaHlwaGVuczogQG1vZGU7XHJcbiAgICAgIC1tcy1oeXBoZW5zOiBAbW9kZTsgLy8gSUUxMCtcclxuICAgICAgIC1vLWh5cGhlbnM6IEBtb2RlO1xyXG4gICAgICAgICAgaHlwaGVuczogQG1vZGU7XHJcbn1cclxuXHJcbi8vIFBsYWNlaG9sZGVyIHRleHRcclxuLnBsYWNlaG9sZGVyKEBjb2xvcjogQGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyKSB7XHJcbiAgLy8gRmlyZWZveFxyXG4gICY6Oi1tb3otcGxhY2Vob2xkZXIge1xyXG4gICAgY29sb3I6IEBjb2xvcjtcclxuICAgIG9wYWNpdHk6IDE7IC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2XHJcbiAgfVxyXG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgY29sb3I6IEBjb2xvcjsgfSAvLyBJbnRlcm5ldCBFeHBsb3JlciAxMCtcclxuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyICB7IGNvbG9yOiBAY29sb3I7IH0gLy8gU2FmYXJpIGFuZCBDaHJvbWVcclxufVxyXG5cclxuLy8gVHJhbnNmb3JtYXRpb25zXHJcbi5zY2FsZShAcmF0aW8pIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoQHJhdGlvKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoQHJhdGlvKTsgLy8gSUU5IG9ubHlcclxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoQHJhdGlvKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoQHJhdGlvKTtcclxufVxyXG4uc2NhbGUoQHJhdGlvWDsgQHJhdGlvWSkge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZShAcmF0aW9YLCBAcmF0aW9ZKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoQHJhdGlvWCwgQHJhdGlvWSk7IC8vIElFOSBvbmx5XHJcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKEByYXRpb1gsIEByYXRpb1kpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZShAcmF0aW9YLCBAcmF0aW9ZKTtcclxufVxyXG4uc2NhbGVYKEByYXRpbykge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoQHJhdGlvKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKEByYXRpbyk7IC8vIElFOSBvbmx5XHJcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWChAcmF0aW8pO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoQHJhdGlvKTtcclxufVxyXG4uc2NhbGVZKEByYXRpbykge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoQHJhdGlvKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKEByYXRpbyk7IC8vIElFOSBvbmx5XHJcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWShAcmF0aW8pO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoQHJhdGlvKTtcclxufVxyXG4uc2tldyhAeDsgQHkpIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goQHgpIHNrZXdZKEB5KTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2tld1goQHgpIHNrZXdZKEB5KTsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvNDg4NTsgSUU5K1xyXG4gICAgICAgLW8tdHJhbnNmb3JtOiBza2V3WChAeCkgc2tld1koQHkpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WChAeCkgc2tld1koQHkpO1xyXG59XHJcbi50cmFuc2xhdGUoQHg7IEB5KSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHkpO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoQHgsIEB5KTsgLy8gSUU5IG9ubHlcclxuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHkpO1xyXG59XHJcbi50cmFuc2xhdGUzZChAeDsgQHk7IEB6KSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKEB4LCBAeSwgQHopO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZChAeCwgQHksIEB6KTtcclxufVxyXG4ucm90YXRlKEBkZWdyZWVzKSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZShAZGVncmVlcyk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZShAZGVncmVlcyk7IC8vIElFOSBvbmx5XHJcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZShAZGVncmVlcyk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZShAZGVncmVlcyk7XHJcbn1cclxuLnJvdGF0ZVgoQGRlZ3JlZXMpIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWChAZGVncmVlcyk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVgoQGRlZ3JlZXMpOyAvLyBJRTkgb25seVxyXG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVYKEBkZWdyZWVzKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWChAZGVncmVlcyk7XHJcbn1cclxuLnJvdGF0ZVkoQGRlZ3JlZXMpIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWShAZGVncmVlcyk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVkoQGRlZ3JlZXMpOyAvLyBJRTkgb25seVxyXG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVZKEBkZWdyZWVzKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWShAZGVncmVlcyk7XHJcbn1cclxuLnBlcnNwZWN0aXZlKEBwZXJzcGVjdGl2ZSkge1xyXG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6IEBwZXJzcGVjdGl2ZTtcclxuICAgICAtbW96LXBlcnNwZWN0aXZlOiBAcGVyc3BlY3RpdmU7XHJcbiAgICAgICAgICBwZXJzcGVjdGl2ZTogQHBlcnNwZWN0aXZlO1xyXG59XHJcbi5wZXJzcGVjdGl2ZS1vcmlnaW4oQHBlcnNwZWN0aXZlKSB7XHJcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW46IEBwZXJzcGVjdGl2ZTtcclxuICAgICAtbW96LXBlcnNwZWN0aXZlLW9yaWdpbjogQHBlcnNwZWN0aXZlO1xyXG4gICAgICAgICAgcGVyc3BlY3RpdmUtb3JpZ2luOiBAcGVyc3BlY3RpdmU7XHJcbn1cclxuLnRyYW5zZm9ybS1vcmlnaW4oQG9yaWdpbikge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogQG9yaWdpbjtcclxuICAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IEBvcmlnaW47XHJcbiAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBAb3JpZ2luOyAvLyBJRTkgb25seVxyXG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogQG9yaWdpbjtcclxufVxyXG5cclxuXHJcbi8vIFRyYW5zaXRpb25zXHJcblxyXG4udHJhbnNpdGlvbihAdHJhbnNpdGlvbikge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogQHRyYW5zaXRpb247XHJcbiAgICAgICAtby10cmFuc2l0aW9uOiBAdHJhbnNpdGlvbjtcclxuICAgICAgICAgIHRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xyXG59XHJcbi50cmFuc2l0aW9uLXByb3BlcnR5KEB0cmFuc2l0aW9uLXByb3BlcnR5KSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBAdHJhbnNpdGlvbi1wcm9wZXJ0eTtcclxuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IEB0cmFuc2l0aW9uLXByb3BlcnR5O1xyXG59XHJcbi50cmFuc2l0aW9uLWRlbGF5KEB0cmFuc2l0aW9uLWRlbGF5KSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiBAdHJhbnNpdGlvbi1kZWxheTtcclxuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IEB0cmFuc2l0aW9uLWRlbGF5O1xyXG59XHJcbi50cmFuc2l0aW9uLWR1cmF0aW9uKEB0cmFuc2l0aW9uLWR1cmF0aW9uKSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiBAdHJhbnNpdGlvbi1kdXJhdGlvbjtcclxuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IEB0cmFuc2l0aW9uLWR1cmF0aW9uO1xyXG59XHJcbi50cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbihAdGltaW5nLWZ1bmN0aW9uKSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogQHRpbWluZy1mdW5jdGlvbjtcclxuICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBAdGltaW5nLWZ1bmN0aW9uO1xyXG59XHJcbi50cmFuc2l0aW9uLXRyYW5zZm9ybShAdHJhbnNpdGlvbikge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gQHRyYW5zaXRpb247XHJcbiAgICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSBAdHJhbnNpdGlvbjtcclxuICAgICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSBAdHJhbnNpdGlvbjtcclxuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSBAdHJhbnNpdGlvbjtcclxufVxyXG5cclxuXHJcbi8vIFVzZXIgc2VsZWN0XHJcbi8vIEZvciBzZWxlY3RpbmcgdGV4dCBvbiB0aGUgcGFnZVxyXG5cclxuLnVzZXItc2VsZWN0KEBzZWxlY3QpIHtcclxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBAc2VsZWN0O1xyXG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IEBzZWxlY3Q7XHJcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogQHNlbGVjdDsgLy8gSUUxMCtcclxuICAgICAgICAgIHVzZXItc2VsZWN0OiBAc2VsZWN0O1xyXG59XHJcbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuV2FsbEJlZSBPdmVycmlkZVxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuQGltcG9ydCBcIl9jb2xvci5sZXNzXCI7XHJcblxyXG4vLyBWYXJpYWJsZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vPT0gQ29sb3JzXHJcbi8vXHJcbi8vIyMgR3JheSBhbmQgYnJhbmQgY29sb3JzIGZvciB1c2UgYWNyb3NzIEJvb3RzdHJhcC5cclxuXHJcbkBncmF5LWJhc2U6ICAgICAgICAgICAgICAjMDAwO1xyXG5AZ3JheS1kYXJrZXI6ICAgICAgICAgICAgbGlnaHRlbihAZ3JheS1iYXNlLCAxMy41JSk7IC8vICMyMjJcclxuQGdyYXktZGFyazogICAgICAgICAgICAgIGxpZ2h0ZW4oQGdyYXktYmFzZSwgMjAlKTsgICAvLyAjMzMzXHJcbkBncmF5OiAgICAgICAgICAgICAgICAgICBsaWdodGVuKEBncmF5LWJhc2UsIDMzLjUlKTsgLy8gIzU1NVxyXG5AZ3JheS1saWdodDogICAgICAgICAgICAgbGlnaHRlbihAZ3JheS1iYXNlLCA4Ni43JSk7IC8vICM3NzdcclxuQGdyYXktbGlnaHRlcjogICAgICAgICAgIGxpZ2h0ZW4oQGdyYXktYmFzZSwgOTMuNSUpOyAvLyAjZWVlXHJcblxyXG5AYnJhbmQtcHJpbWFyeTogICAgICAgICAjMTc0MTQyO1xyXG5AYnJhbmQtc3VjY2VzczogICAgICAgICAjNWNiODVjO1xyXG5AYnJhbmQtaW5mbzogICAgICAgICAgICAjNWJjMGRlO1xyXG5AYnJhbmQtd2FybmluZzogICAgICAgICAjZjBhZDRlO1xyXG5AYnJhbmQtZGFuZ2VyOiAgICAgICAgICAjZDkyNzJhO1xyXG5cclxuLy89PSBTY2FmZm9sZGluZ1xyXG4vL1xyXG4vLyMjIFNldHRpbmdzIGZvciBzb21lIG9mIHRoZSBtb3N0IGdsb2JhbCBzdHlsZXMuXHJcblxyXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIGA8Ym9keT5gLlxyXG5AYm9keS1iZzogICAgICAgICAgICAgICAjRURFREVEO1xyXG4vLyoqIEdsb2JhbCB0ZXh0IGNvbG9yIG9uIGA8Ym9keT5gLlxyXG5AdGV4dC1jb2xvcjogICAgICAgICAgICBAZ3JheS1kYXJrO1xyXG5cclxuLy8qKiBHbG9iYWwgdGV4dHVhbCBsaW5rIGNvbG9yLlxyXG5AbGluay1jb2xvcjogICAgICAgICAgICBAYnJhbmQtcHJpbWFyeTtcclxuLy8qKiBMaW5rIGhvdmVyIGNvbG9yIHNldCB2aWEgYGRhcmtlbigpYCBmdW5jdGlvbi5cclxuQGxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKEBsaW5rLWNvbG9yLCAxNSUpO1xyXG4vLyoqIExpbmsgaG92ZXIgZGVjb3JhdGlvbi5cclxuQGxpbmstaG92ZXItZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cclxuXHJcbi8vPT0gVHlwb2dyYXBoeVxyXG4vL1xyXG4vLyMjIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxyXG5cclxuQGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XHJcbkBmb250LWZhbWlseS1zZXJpZjogICAgICAgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmO1xyXG4vLyoqIERlZmF1bHQgbW9ub3NwYWNlIGZvbnRzIGZvciBgPGNvZGU+YCwgYDxrYmQ+YCwgYW5kIGA8cHJlPmAuXHJcbkBmb250LWZhbWlseS1tb25vc3BhY2U6ICAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlO1xyXG5AZm9udC1mYW1pbHktYmFzZTogICAgICAgIEBmb250LWZhbWlseS1zYW5zLXNlcmlmO1xyXG5cclxuQGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAxMnB4O1xyXG5AZm9udC1zaXplLWxhcmdlOiAgICAgICAgIGNlaWwoKEBmb250LXNpemUtYmFzZSAqIDEuMjUpKTsgLy8gfjE4cHhcclxuQGZvbnQtc2l6ZS1zbWFsbDogICAgICAgICBjZWlsKChAZm9udC1zaXplLWJhc2UgKiAwLjg1KSk7IC8vIH4xMnB4XHJcblxyXG5AZm9udC1zaXplLWgxOiAgICAgICAgICAgIGZsb29yKChAZm9udC1zaXplLWJhc2UgKiAyLjYpKTsgLy8gfjM2cHhcclxuQGZvbnQtc2l6ZS1oMjogICAgICAgICAgICBmbG9vcigoQGZvbnQtc2l6ZS1iYXNlICogMi4xNSkpOyAvLyB+MzBweFxyXG5AZm9udC1zaXplLWgzOiAgICAgICAgICAgIGNlaWwoKEBmb250LXNpemUtYmFzZSAqIDEuNykpOyAvLyB+MjRweFxyXG5AZm9udC1zaXplLWg0OiAgICAgICAgICAgIGNlaWwoKEBmb250LXNpemUtYmFzZSAqIDEuMjUpKTsgLy8gfjE4cHhcclxuQGZvbnQtc2l6ZS1oNTogICAgICAgICAgICBAZm9udC1zaXplLWJhc2U7XHJcbkBmb250LXNpemUtaDY6ICAgICAgICAgICAgY2VpbCgoQGZvbnQtc2l6ZS1iYXNlICogMC44NSkpOyAvLyB+MTJweFxyXG5cclxuLy8qKiBVbml0LWxlc3MgYGxpbmUtaGVpZ2h0YCBmb3IgdXNlIGluIGNvbXBvbmVudHMgbGlrZSBidXR0b25zLlxyXG5AbGluZS1oZWlnaHQtYmFzZTogICAgICAgIDEuNDI4NTcxNDI5OyAvLyAyMC8xNFxyXG4vLyoqIENvbXB1dGVkIFwibGluZS1oZWlnaHRcIiAoYGZvbnQtc2l6ZWAgKiBgbGluZS1oZWlnaHRgKSBmb3IgdXNlIHdpdGggYG1hcmdpbmAsIGBwYWRkaW5nYCwgZXRjLlxyXG5AbGluZS1oZWlnaHQtY29tcHV0ZWQ6ICAgIGZsb29yKChAZm9udC1zaXplLWJhc2UgKiBAbGluZS1oZWlnaHQtYmFzZSkpOyAvLyB+MjBweFxyXG5cclxuLy8qKiBCeSBkZWZhdWx0LCB0aGlzIGluaGVyaXRzIGZyb20gdGhlIGA8Ym9keT5gLlxyXG5AaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgIGluaGVyaXQ7XHJcbkBoZWFkaW5ncy1mb250LXdlaWdodDogICAgNTAwO1xyXG5AaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgIDEuMTtcclxuQGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICBpbmhlcml0O1xyXG5cclxuXHJcbi8vPT0gSWNvbm9ncmFwaHlcclxuLy9cclxuLy8jIyBTcGVjaWZ5IGN1c3RvbSBsb2NhdGlvbiBhbmQgZmlsZW5hbWUgb2YgdGhlIGluY2x1ZGVkIEdseXBoaWNvbnMgaWNvbiBmb250LiBVc2VmdWwgZm9yIHRob3NlIGluY2x1ZGluZyBCb290c3RyYXAgdmlhIEJvd2VyLlxyXG5cclxuLy8qKiBMb2FkIGZvbnRzIGZyb20gdGhpcyBkaXJlY3RvcnkuXHJcbkBpY29uLWZvbnQtcGF0aDogICAgICAgICAgXCIuLi8uLi9mb250L2Jvb3RzdHJhcC9mb250cy9cIjtcclxuLy8qKiBGaWxlIG5hbWUgZm9yIGFsbCBmb250IGZpbGVzLlxyXG5AaWNvbi1mb250LW5hbWU6ICAgICAgICAgIFwiZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhclwiO1xyXG4vLyoqIEVsZW1lbnQgSUQgd2l0aGluIFNWRyBpY29uIGZpbGUuXHJcbkBpY29uLWZvbnQtc3ZnLWlkOiAgICAgICAgXCJnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXJcIjtcclxuXHJcblxyXG4vLz09IENvbXBvbmVudHNcclxuLy9cclxuLy8jIyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuIFZhbHVlcyBiYXNlZCBvbiAxNHB4IHRleHQgYW5kIDEuNDI4IGxpbmUtaGVpZ2h0ICh+MjBweCB0byBzdGFydCkuXHJcblxyXG5AcGFkZGluZy1iYXNlLXZlcnRpY2FsOiAgICAgNnB4O1xyXG5AcGFkZGluZy1iYXNlLWhvcml6b250YWw6ICAgMTJweDtcclxuXHJcbkBwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOiAgICAxMHB4O1xyXG5AcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOiAgMTZweDtcclxuXHJcbkBwYWRkaW5nLXNtYWxsLXZlcnRpY2FsOiAgICA1cHg7XHJcbkBwYWRkaW5nLXNtYWxsLWhvcml6b250YWw6ICAxMHB4O1xyXG5cclxuQHBhZGRpbmcteHMtdmVydGljYWw6ICAgICAgIDFweDtcclxuQHBhZGRpbmcteHMtaG9yaXpvbnRhbDogICAgIDVweDtcclxuXHJcbkBsaW5lLWhlaWdodC1sYXJnZTogICAgICAgICAxLjMzMzMzMzM7IC8vIGV4dHJhIGRlY2ltYWxzIGZvciBXaW4gOC4xIENocm9tZVxyXG5AbGluZS1oZWlnaHQtc21hbGw6ICAgICAgICAgMS41O1xyXG5cclxuQGJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgIDBweDsgLy9zYW5qZWV2IDRweDtcclxuQGJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgIDBweDsgLy9zYW5qZWV2IDZweDtcclxuQGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgIDBweDsgLy9zYW5qZWV2IDNweDtcclxuXHJcbi8vKiogR2xvYmFsIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cclxuQGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICNmZmY7XHJcbi8vKiogR2xvYmFsIGJhY2tncm91bmQgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxyXG5AY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgQGJyYW5kLXByaW1hcnk7XHJcblxyXG4vLyoqIFdpZHRoIG9mIHRoZSBgYm9yZGVyYCBmb3IgZ2VuZXJhdGluZyBjYXJldHMgdGhhdCBpbmRpY2F0b3IgZHJvcGRvd25zLlxyXG5AY2FyZXQtd2lkdGgtYmFzZTogICAgICAgICAgNHB4O1xyXG4vLyoqIENhcmV0cyBpbmNyZWFzZSBzbGlnaHRseSBpbiBzaXplIGZvciBsYXJnZXIgY29tcG9uZW50cy5cclxuQGNhcmV0LXdpZHRoLWxhcmdlOiAgICAgICAgIDVweDtcclxuXHJcblxyXG4vLz09IFRhYmxlc1xyXG4vL1xyXG4vLyMjIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cclxuXHJcbi8vKiogUGFkZGluZyBmb3IgYDx0aD5gcyBhbmQgYDx0ZD5gcy5cclxuQHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgICA4cHg7XHJcbi8vKiogUGFkZGluZyBmb3IgY2VsbHMgaW4gYC50YWJsZS1jb25kZW5zZWRgLlxyXG5AdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZzogIDVweDtcclxuXHJcbi8vKiogRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGFsbCB0YWJsZXMuXHJcbkB0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLXN0cmlwZWRgLlxyXG5AdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgICNmOWY5Zjk7XHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLWhvdmVyYC5cclxuQHRhYmxlLWJnLWhvdmVyOiAgICAgICAgICAgICAgICAjZjVmNWY1O1xyXG5AdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgIEB0YWJsZS1iZy1ob3ZlcjtcclxuXHJcbi8vKiogQm9yZGVyIGNvbG9yIGZvciB0YWJsZSBhbmQgY2VsbCBib3JkZXJzLlxyXG5AdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQ7XHJcblxyXG5cclxuLy89PSBCdXR0b25zXHJcbi8vXHJcbi8vIyMgRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQgYW5kIGJvcmRlciBjb2xvci5cclxuXHJcbkBidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIG5vcm1hbDtcclxuXHJcbkBidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICMzMzM7XHJcbkBidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgICNmZmY7XHJcbkBidG4tZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgICNjY2M7XHJcblxyXG5AYnRuLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAjZmZmO1xyXG5AYnRuLXByaW1hcnktYmc6ICAgICAgICAgICAgICAgICBAYnJhbmQtcHJpbWFyeTtcclxuQGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKEBidG4tcHJpbWFyeS1iZywgNSUpO1xyXG5cclxuQGJ0bi1zdWNjZXNzLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZjtcclxuQGJ0bi1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICAgQGJyYW5kLXN1Y2Nlc3M7XHJcbkBidG4tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbihAYnRuLXN1Y2Nlc3MtYmcsIDUlKTtcclxuXHJcbkBidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICNmZmY7XHJcbkBidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgIEBicmFuZC1pbmZvO1xyXG5AYnRuLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgICBkYXJrZW4oQGJ0bi1pbmZvLWJnLCA1JSk7XHJcblxyXG5AYnRuLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAjZmZmO1xyXG5AYnRuLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgICBAYnJhbmQtd2FybmluZztcclxuQGJ0bi13YXJuaW5nLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKEBidG4td2FybmluZy1iZywgNSUpO1xyXG5cclxuQGJ0bi1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgI2ZmZjtcclxuQGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgQGJyYW5kLWRhbmdlcjtcclxuQGJ0bi1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKEBidG4tZGFuZ2VyLWJnLCA1JSk7XHJcblxyXG5AYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICBAZ3JheS1saWdodDtcclxuXHJcblxyXG4vLz09IEZvcm1zXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vKiogYDxpbnB1dD5gIGJhY2tncm91bmQgY29sb3JcclxuQGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcclxuLy8qKiBgPGlucHV0IGRpc2FibGVkPmAgYmFja2dyb3VuZCBjb2xvclxyXG5AaW5wdXQtYmctZGlzYWJsZWQ6ICAgICAgICAgICAgICBAZ3JheS1saWdodGVyO1xyXG5cclxuLy8qKiBUZXh0IGNvbG9yIGZvciBgPGlucHV0PmBzXHJcbkBpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgIEBncmF5O1xyXG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcclxuQGlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgI2RkZDtcclxuXHJcbi8vIFRPRE86IFJlbmFtZSBgQGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGBAaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxyXG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcclxuLy8gVGhpcyBoYXMgbm8gZWZmZWN0IG9uIGA8c2VsZWN0PmBzIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXHJcbkBpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgIEBib3JkZXItcmFkaXVzLWJhc2U7XHJcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcclxuQGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgQGJvcmRlci1yYWRpdXMtbGFyZ2U7XHJcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcclxuQGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgQGJvcmRlci1yYWRpdXMtc21hbGw7XHJcblxyXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgaW5wdXRzIG9uIGZvY3VzXHJcbkBpbnB1dC1ib3JkZXItZm9jdXM6ICAgICAgICAgICAgIEBpbnB1dC1ib3JkZXI7IC8vQGJyYW5kLXByaW1hcnk7XHJcblxyXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcclxuQGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzk5OTtcclxuXHJcbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XHJcbkBpbnB1dC1oZWlnaHQtYmFzZTogICAgICAgICAgICAgMjZweDsgLyooQGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKEBwYWRkaW5nLWJhc2UtdmVydGljYWwgKiAyKSArIDIpOyovXHJcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxyXG5AaW5wdXQtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgICAoY2VpbChAZm9udC1zaXplLWxhcmdlICogQGxpbmUtaGVpZ2h0LWxhcmdlKSArIChAcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqIDIpICsgMik7XHJcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxyXG5AaW5wdXQtaGVpZ2h0LXNtYWxsOiAgICAgICAgICAgICAoZmxvb3IoQGZvbnQtc2l6ZS1zbWFsbCAqIEBsaW5lLWhlaWdodC1zbWFsbCkgKyAoQHBhZGRpbmctc21hbGwtdmVydGljYWwgKiAyKSArIDIpO1xyXG5cclxuLy8qKiBgLmZvcm0tZ3JvdXBgIG1hcmdpblxyXG5AZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAxNXB4O1xyXG5cclxuQGxlZ2VuZC1jb2xvcjogICAgICAgICAgICAgICAgICAgQGdyYXktZGFyaztcclxuQGxlZ2VuZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2U1ZTVlNTtcclxuXHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcclxuQGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgQGdyYXktbGlnaHRlcjtcclxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXHJcbkBpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6IEBpbnB1dC1ib3JkZXI7XHJcblxyXG4vLyoqIERpc2FibGVkIGN1cnNvciBmb3IgZm9ybSBjb250cm9scyBhbmQgYnV0dG9ucy5cclxuQGN1cnNvci1kaXNhYmxlZDogICAgICAgICAgICAgICAgbm90LWFsbG93ZWQ7XHJcblxyXG5cclxuLy89PSBEcm9wZG93bnNcclxuLy9cclxuLy8jIyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXHJcblxyXG4vLyoqIEJhY2tncm91bmQgZm9yIHRoZSBkcm9wZG93biBtZW51LlxyXG5AZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmO1xyXG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAuXHJcbkBkcm9wZG93bi1ib3JkZXI6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjE1KTtcclxuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgICoqZm9yIElFOCoqLlxyXG5AZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOiAgICAgICAjY2NjO1xyXG4vLyoqIERpdmlkZXIgY29sb3IgZm9yIGJldHdlZW4gZHJvcGRvd24gaXRlbXMuXHJcbkBkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICNlNWU1ZTU7XHJcblxyXG4vLyoqIERyb3Bkb3duIGxpbmsgdGV4dCBjb2xvci5cclxuQGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgQGdyYXktZGFyaztcclxuLy8qKiBIb3ZlciBjb2xvciBmb3IgZHJvcGRvd24gbGlua3MuXHJcbkBkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbihAZ3JheS1kYXJrLCA1JSk7XHJcbi8vKiogSG92ZXIgYmFja2dyb3VuZCBmb3IgZHJvcGRvd24gbGlua3MuXHJcbkBkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICNmNWY1ZjU7XHJcblxyXG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gdGV4dCBjb2xvci5cclxuQGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgQGNvbXBvbmVudC1hY3RpdmUtY29sb3I7XHJcbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxyXG5AZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICBAY29tcG9uZW50LWFjdGl2ZS1iZztcclxuXHJcbi8vKiogRGlzYWJsZWQgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXHJcbkBkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgIEBncmF5LWxpZ2h0O1xyXG5cclxuLy8qKiBUZXh0IGNvbG9yIGZvciBoZWFkZXJzIHdpdGhpbiBkcm9wZG93biBtZW51cy5cclxuQGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgQGdyYXktbGlnaHQ7XHJcblxyXG4vLyoqIERlcHJlY2F0ZWQgYEBkcm9wZG93bi1jYXJldC1jb2xvcmAgYXMgb2YgdjMuMS4wXHJcbkBkcm9wZG93bi1jYXJldC1jb2xvcjogICAgICAgICAgICMwMDA7XHJcblxyXG5cclxuLy8tLSBaLWluZGV4IG1hc3RlciBsaXN0XHJcbi8vXHJcbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xyXG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXHJcbi8vXHJcbi8vIE5vdGU6IFRoZXNlIHZhcmlhYmxlcyBhcmUgbm90IGdlbmVyYXRlZCBpbnRvIHRoZSBDdXN0b21pemVyLlxyXG5cclxuQHppbmRleC1uYXZiYXI6ICAgICAgICAgICAgMTAwMDtcclxuQHppbmRleC1kcm9wZG93bjogICAgICAgICAgMTAwMDtcclxuQHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgMTA2MDtcclxuQHppbmRleC10b29sdGlwOiAgICAgICAgICAgMTA3MDtcclxuQHppbmRleC1uYXZiYXItZml4ZWQ6ICAgICAgMTAzMDtcclxuQHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kOiAgMTA0MDtcclxuQHppbmRleC1tb2RhbDogICAgICAgICAgICAgMTA1MDtcclxuXHJcblxyXG4vLz09IE1lZGlhIHF1ZXJpZXMgYnJlYWtwb2ludHNcclxuLy9cclxuLy8jIyBEZWZpbmUgdGhlIGJyZWFrcG9pbnRzIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLCBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxyXG5cclxuLy8gRXh0cmEgc21hbGwgc2NyZWVuIC8gcGhvbmVcclxuLy8qKiBEZXByZWNhdGVkIGBAc2NyZWVuLXhzYCBhcyBvZiB2My4wLjFcclxuQHNjcmVlbi14czogICAgICAgICAgICAgICAgICA0ODBweDtcclxuLy8qKiBEZXByZWNhdGVkIGBAc2NyZWVuLXhzLW1pbmAgYXMgb2YgdjMuMi4wXHJcbkBzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgQHNjcmVlbi14cztcclxuLy8qKiBEZXByZWNhdGVkIGBAc2NyZWVuLXBob25lYCBhcyBvZiB2My4wLjFcclxuQHNjcmVlbi1waG9uZTogICAgICAgICAgICAgICBAc2NyZWVuLXhzLW1pbjtcclxuXHJcbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxyXG4vLyoqIERlcHJlY2F0ZWQgYEBzY3JlZW4tc21gIGFzIG9mIHYzLjAuMVxyXG5Ac2NyZWVuLXNtOiAgICAgICAgICAgICAgICAgIDc2OHB4O1xyXG5Ac2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgIEBzY3JlZW4tc207XHJcbi8vKiogRGVwcmVjYXRlZCBgQHNjcmVlbi10YWJsZXRgIGFzIG9mIHYzLjAuMVxyXG5Ac2NyZWVuLXRhYmxldDogICAgICAgICAgICAgIEBzY3JlZW4tc20tbWluO1xyXG5cclxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3BcclxuLy8qKiBEZXByZWNhdGVkIGBAc2NyZWVuLW1kYCBhcyBvZiB2My4wLjFcclxuQHNjcmVlbi1tZDogICAgICAgICAgICAgICAgICA5OTJweDtcclxuQHNjcmVlbi1tZC1taW46ICAgICAgICAgICAgICBAc2NyZWVuLW1kO1xyXG4vLyoqIERlcHJlY2F0ZWQgYEBzY3JlZW4tZGVza3RvcGAgYXMgb2YgdjMuMC4xXHJcbkBzY3JlZW4tZGVza3RvcDogICAgICAgICAgICAgQHNjcmVlbi1tZC1taW47XHJcblxyXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcclxuLy8qKiBEZXByZWNhdGVkIGBAc2NyZWVuLWxnYCBhcyBvZiB2My4wLjFcclxuQHNjcmVlbi1sZzogICAgICAgICAgICAgICAgICAxMjAwcHg7XHJcbkBzY3JlZW4tbGctbWluOiAgICAgICAgICAgICAgQHNjcmVlbi1sZztcclxuLy8qKiBEZXByZWNhdGVkIGBAc2NyZWVuLWxnLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxyXG5Ac2NyZWVuLWxnLWRlc2t0b3A6ICAgICAgICAgIEBzY3JlZW4tbGctbWluO1xyXG5cclxuLy8gU28gbWVkaWEgcXVlcmllcyBkb24ndCBvdmVybGFwIHdoZW4gcmVxdWlyZWQsIHByb3ZpZGUgYSBtYXhpbXVtXHJcbkBzY3JlZW4teHMtbWF4OiAgICAgICAgICAgICAgKEBzY3JlZW4tc20tbWluIC0gMSk7XHJcbkBzY3JlZW4tc20tbWF4OiAgICAgICAgICAgICAgKEBzY3JlZW4tbWQtbWluIC0gMSk7XHJcbkBzY3JlZW4tbWQtbWF4OiAgICAgICAgICAgICAgKEBzY3JlZW4tbGctbWluIC0gMSk7XHJcblxyXG5cclxuLy89PSBHcmlkIHN5c3RlbVxyXG4vL1xyXG4vLyMjIERlZmluZSB5b3VyIGN1c3RvbSByZXNwb25zaXZlIGdyaWQuXHJcblxyXG4vLyoqIE51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkLlxyXG5AZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgMTI7XHJcbi8vKiogUGFkZGluZyBiZXR3ZWVuIGNvbHVtbnMuIEdldHMgZGl2aWRlZCBpbiBoYWxmIGZvciB0aGUgbGVmdCBhbmQgcmlnaHQuXHJcbkBncmlkLWd1dHRlci13aWR0aDogICAgICAgICAyMHB4O1xyXG4vLyBOYXZiYXIgY29sbGFwc2VcclxuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlY29tZXMgdW5jb2xsYXBzZWQuXHJcbkBncmlkLWZsb2F0LWJyZWFrcG9pbnQ6ICAgICBAc2NyZWVuLXNtLW1pbjtcclxuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlZ2lucyBjb2xsYXBzaW5nLlxyXG5AZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heDogKEBncmlkLWZsb2F0LWJyZWFrcG9pbnQgLSAxKTtcclxuXHJcblxyXG4vLz09IENvbnRhaW5lciBzaXplc1xyXG4vL1xyXG4vLyMjIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXHJcblxyXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcclxuQGNvbnRhaW5lci10YWJsZXQ6ICAgICAgICAgICAgICg3MjBweCArIEBncmlkLWd1dHRlci13aWR0aCk7XHJcbi8vKiogRm9yIGBAc2NyZWVuLXNtLW1pbmAgYW5kIHVwLlxyXG5AY29udGFpbmVyLXNtOiAgICAgICAgICAgICAgICAgQGNvbnRhaW5lci10YWJsZXQ7XHJcblxyXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxyXG5AY29udGFpbmVyLWRlc2t0b3A6ICAgICAgICAgICAgKDk0MHB4ICsgQGdyaWQtZ3V0dGVyLXdpZHRoKTtcclxuLy8qKiBGb3IgYEBzY3JlZW4tbWQtbWluYCBhbmQgdXAuXHJcbkBjb250YWluZXItbWQ6ICAgICAgICAgICAgICAgICBAY29udGFpbmVyLWRlc2t0b3A7XHJcblxyXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcclxuQGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wOiAgICAgICgxMTQwcHggKyBAZ3JpZC1ndXR0ZXItd2lkdGgpO1xyXG4vLyoqIEZvciBgQHNjcmVlbi1sZy1taW5gIGFuZCB1cC5cclxuQGNvbnRhaW5lci1sZzogICAgICAgICAgICAgICAgIEBjb250YWluZXItbGFyZ2UtZGVza3RvcDtcclxuXHJcblxyXG4vLz09IE5hdmJhclxyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyBCYXNpY3Mgb2YgYSBuYXZiYXJcclxuQG5hdmJhci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICA1MHB4O1xyXG5AbmF2YmFyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgIEBsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuQG5hdmJhci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICBAYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG5AbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgIGZsb29yKChAZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XHJcbkBuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgKChAbmF2YmFyLWhlaWdodCAtIEBsaW5lLWhlaWdodC1jb21wdXRlZCkgLyAyKTtcclxuQG5hdmJhci1jb2xsYXBzZS1tYXgtaGVpZ2h0OiAgICAgICAzNDBweDtcclxuXHJcbkBuYXZiYXItZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgIzc3NztcclxuQG5hdmJhci1kZWZhdWx0LWJnOiAgICAgICAgICAgICAgICAjZjhmOGY4O1xyXG5AbmF2YmFyLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgIGRhcmtlbihAbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpO1xyXG5cclxuLy8gTmF2YmFyIGxpbmtzXHJcbkBuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAjNzc3O1xyXG5AbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgIzMzMztcclxuQG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xyXG5AbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgIzU1NTtcclxuQG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgIGRhcmtlbihAbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpO1xyXG5AbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgI2NjYztcclxuQG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgIHRyYW5zcGFyZW50O1xyXG5cclxuLy8gTmF2YmFyIGJyYW5kIGxhYmVsXHJcbkBuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICBAbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcclxuQG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbihAbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3IsIDEwJSk7XHJcbkBuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICB0cmFuc3BhcmVudDtcclxuXHJcbi8vIE5hdmJhciB0b2dnbGVcclxuQG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ob3Zlci1iZzogICAgICAgICAgICNkZGQ7XHJcbkBuYXZiYXItZGVmYXVsdC10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAjODg4O1xyXG5AbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgI2RkZDtcclxuXHJcblxyXG4vLyBJbnZlcnRlZCBuYXZiYXJcclxuLy8gUmVzZXQgaW52ZXJ0ZWQgbmF2YmFyIGJhc2ljc1xyXG5AbmF2YmFyLWludmVyc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oQGdyYXktbGlnaHQsIDE1JSk7XHJcbkBuYXZiYXItaW52ZXJzZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzIyMjtcclxuQG5hdmJhci1pbnZlcnNlLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICBkYXJrZW4oQG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpO1xyXG5cclxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXHJcbkBuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgbGlnaHRlbihAZ3JheS1saWdodCwgMTUlKTtcclxuQG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAjZmZmO1xyXG5AbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xyXG5AbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgIEBuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xyXG5AbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgIGRhcmtlbihAbmF2YmFyLWludmVyc2UtYmcsIDEwJSk7XHJcbkBuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIzQ0NDtcclxuQG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgICB0cmFuc3BhcmVudDtcclxuXHJcbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxyXG5AbmF2YmFyLWludmVyc2UtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgIEBuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xyXG5AbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICNmZmY7XHJcbkBuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XHJcblxyXG4vLyBJbnZlcnRlZCBuYXZiYXIgdG9nZ2xlXHJcbkBuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAgIzMzMztcclxuQG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICAjZmZmO1xyXG5AbmF2YmFyLWludmVyc2UtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgICMzMzM7XHJcblxyXG5cclxuLy89PSBOYXZzXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vPT09IFNoYXJlZCBuYXYgc3R5bGVzXHJcbkBuYXYtbGluay1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAxNXB4O1xyXG5AbmF2LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgIEBncmF5LWxpZ2h0ZXI7XHJcblxyXG5AbmF2LWRpc2FibGVkLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgIEBncmF5LWxpZ2h0O1xyXG5AbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgIEBncmF5LWxpZ2h0O1xyXG5cclxuLy89PSBUYWJzXHJcbkBuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgI2RkZDtcclxuXHJcbkBuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgQGdyYXktbGlnaHRlcjtcclxuXHJcbkBuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgQGJvZHktYmc7XHJcbkBuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgQGdyYXk7XHJcbkBuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgI2RkZDtcclxuXHJcbkBuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZDtcclxuQG5hdi10YWJzLWp1c3RpZmllZC1hY3RpdmUtbGluay1ib3JkZXItY29sb3I6ICAgICBAYm9keS1iZztcclxuXHJcbi8vPT0gUGlsbHNcclxuQG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICBAYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG5AbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgIEBjb21wb25lbnQtYWN0aXZlLWJnO1xyXG5AbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIEBjb21wb25lbnQtYWN0aXZlLWNvbG9yO1xyXG5cclxuXHJcbi8vPT0gUGFnaW5hdGlvblxyXG4vL1xyXG4vLyMjXHJcblxyXG5AcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICBAbGluay1jb2xvcjtcclxuQHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcclxuQHBhZ2luYXRpb24tYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgI2RkZDtcclxuXHJcbkBwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgIEBsaW5rLWhvdmVyLWNvbG9yO1xyXG5AcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAgICBAZ3JheS1saWdodGVyO1xyXG5AcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXI6ICAgICAgICAgICAgICAjZGRkO1xyXG5cclxuQHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZjtcclxuQHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgQGJyYW5kLXByaW1hcnk7XHJcbkBwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgIEBicmFuZC1wcmltYXJ5O1xyXG5cclxuQHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgQGdyYXktbGlnaHQ7XHJcbkBwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICNmZmY7XHJcbkBwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICNkZGQ7XHJcblxyXG5cclxuLy89PSBQYWdlclxyXG4vL1xyXG4vLyMjXHJcblxyXG5AcGFnZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAcGFnaW5hdGlvbi1iZztcclxuQHBhZ2VyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgQHBhZ2luYXRpb24tYm9yZGVyO1xyXG5AcGFnZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAxNXB4O1xyXG5cclxuQHBhZ2VyLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgQHBhZ2luYXRpb24taG92ZXItYmc7XHJcblxyXG5AcGFnZXItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgICAgICBAcGFnaW5hdGlvbi1hY3RpdmUtYmc7XHJcbkBwYWdlci1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgIEBwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcclxuXHJcbkBwYWdlci1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgIEBwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xyXG5cclxuXHJcbi8vPT0gSnVtYm90cm9uXHJcbi8vXHJcbi8vIyNcclxuXHJcbkBqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgIDMwcHg7XHJcbkBqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgIGluaGVyaXQ7XHJcbkBqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgIEBncmF5LWxpZ2h0ZXI7XHJcbkBqdW1ib3Ryb24taGVhZGluZy1jb2xvcjogICAgICAgIGluaGVyaXQ7XHJcbkBqdW1ib3Ryb24tZm9udC1zaXplOiAgICAgICAgICAgIGNlaWwoKEBmb250LXNpemUtYmFzZSAqIDEuNSkpO1xyXG5cclxuXHJcbi8vPT0gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xyXG4vL1xyXG4vLyMjIERlZmluZSBjb2xvcnMgZm9yIGZvcm0gZmVlZGJhY2sgc3RhdGVzIGFuZCwgYnkgZGVmYXVsdCwgYWxlcnRzLlxyXG5cclxuQHN0YXRlLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgICAgIzNjNzYzZDtcclxuQHN0YXRlLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgI2RmZjBkODtcclxuQHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgZGFya2VuKHNwaW4oQHN0YXRlLXN1Y2Nlc3MtYmcsIC0xMCksIDUlKTtcclxuXHJcbkBzdGF0ZS1pbmZvLXRleHQ6ICAgICAgICAgICAgICAgICMzMTcwOGY7XHJcbkBzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICNkOWVkZjc7XHJcbkBzdGF0ZS1pbmZvLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbihzcGluKEBzdGF0ZS1pbmZvLWJnLCAtMTApLCA3JSk7XHJcblxyXG5Ac3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiO1xyXG5Ac3RhdGUtd2FybmluZy1iZzogICAgICAgICAgICAgICAjZmNmOGUzO1xyXG5Ac3RhdGUtd2FybmluZy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oc3BpbihAc3RhdGUtd2FybmluZy1iZywgLTEwKSwgNSUpO1xyXG5cclxuQHN0YXRlLWRhbmdlci10ZXh0OiAgICAgICAgICAgICAgI2E5NDQ0MjtcclxuQHN0YXRlLWRhbmdlci1iZzogICAgICAgICAgICAgICAgI2YyZGVkZTtcclxuQHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKHNwaW4oQHN0YXRlLWRhbmdlci1iZywgLTEwKSwgNSUpO1xyXG5cclxuXHJcbi8vPT0gVG9vbHRpcHNcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBUb29sdGlwIG1heCB3aWR0aFxyXG5AdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAyMDBweDtcclxuLy8qKiBUb29sdGlwIHRleHQgY29sb3JcclxuQHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgI2ZmZjtcclxuLy8qKiBUb29sdGlwIGJhY2tncm91bmQgY29sb3JcclxuQHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgIzAwMDtcclxuQHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgLjk7XHJcblxyXG4vLyoqIFRvb2x0aXAgYXJyb3cgd2lkdGhcclxuQHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgNXB4O1xyXG4vLyoqIFRvb2x0aXAgYXJyb3cgY29sb3JcclxuQHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgQHRvb2x0aXAtYmc7XHJcblxyXG5cclxuLy89PSBQb3BvdmVyc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIFBvcG92ZXIgYm9keSBiYWNrZ3JvdW5kIGNvbG9yXHJcbkBwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcclxuLy8qKiBQb3BvdmVyIG1heGltdW0gd2lkdGhcclxuQHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAyNzZweDtcclxuLy8qKiBQb3BvdmVyIGJvcmRlciBjb2xvclxyXG5AcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpO1xyXG4vLyoqIFBvcG92ZXIgZmFsbGJhY2sgYm9yZGVyIGNvbG9yXHJcbkBwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvcjogICAgICAgI2NjYztcclxuXHJcbi8vKiogUG9wb3ZlciB0aXRsZSBiYWNrZ3JvdW5kIGNvbG9yXHJcbkBwb3BvdmVyLXRpdGxlLWJnOiAgICAgICAgICAgICAgICAgICAgZGFya2VuKEBwb3BvdmVyLWJnLCAzJSk7XHJcblxyXG4vLyoqIFBvcG92ZXIgYXJyb3cgd2lkdGhcclxuQHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgICAxMHB4O1xyXG4vLyoqIFBvcG92ZXIgYXJyb3cgY29sb3JcclxuQHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgICBAcG9wb3Zlci1iZztcclxuXHJcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyB3aWR0aFxyXG5AcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDogICAgICAgICAgIChAcG9wb3Zlci1hcnJvdy13aWR0aCArIDEpO1xyXG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgY29sb3JcclxuQHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgICBmYWRlaW4oQHBvcG92ZXItYm9yZGVyLWNvbG9yLCA1JSk7XHJcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBmYWxsYmFjayBjb2xvclxyXG5AcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjogIGRhcmtlbihAcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3IsIDIwJSk7XHJcblxyXG5cclxuLy89PSBMYWJlbHNcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBEZWZhdWx0IGxhYmVsIGJhY2tncm91bmQgY29sb3JcclxuQGxhYmVsLWRlZmF1bHQtYmc6ICAgICAgICAgICAgQGdyYXktbGlnaHQ7XHJcbi8vKiogUHJpbWFyeSBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXHJcbkBsYWJlbC1wcmltYXJ5LWJnOiAgICAgICAgICAgIEBicmFuZC1wcmltYXJ5O1xyXG4vLyoqIFN1Y2Nlc3MgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxyXG5AbGFiZWwtc3VjY2Vzcy1iZzogICAgICAgICAgICBAYnJhbmQtc3VjY2VzcztcclxuLy8qKiBJbmZvIGxhYmVsIGJhY2tncm91bmQgY29sb3JcclxuQGxhYmVsLWluZm8tYmc6ICAgICAgICAgICAgICAgQGJyYW5kLWluZm87XHJcbi8vKiogV2FybmluZyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXHJcbkBsYWJlbC13YXJuaW5nLWJnOiAgICAgICAgICAgIEBicmFuZC13YXJuaW5nO1xyXG4vLyoqIERhbmdlciBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXHJcbkBsYWJlbC1kYW5nZXItYmc6ICAgICAgICAgICAgIEBicmFuZC1kYW5nZXI7XHJcblxyXG4vLyoqIERlZmF1bHQgbGFiZWwgdGV4dCBjb2xvclxyXG5AbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmO1xyXG4vLyoqIERlZmF1bHQgdGV4dCBjb2xvciBvZiBhIGxpbmtlZCBsYWJlbFxyXG5AbGFiZWwtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmO1xyXG5cclxuXHJcbi8vPT0gTW9kYWxzXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XHJcbkBtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDE1cHg7XHJcblxyXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgdGl0bGVcclxuQG1vZGFsLXRpdGxlLXBhZGRpbmc6ICAgICAgICAgMTVweDtcclxuLy8qKiBNb2RhbCB0aXRsZSBsaW5lLWhlaWdodFxyXG5AbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICBAbGluZS1oZWlnaHQtYmFzZTtcclxuXHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBjb250ZW50IGFyZWFcclxuQG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xyXG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yXHJcbkBtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMik7XHJcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3IgKipmb3IgSUU4KipcclxuQG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAgICAjOTk5O1xyXG5cclxuLy8qKiBNb2RhbCBiYWNrZHJvcCBiYWNrZ3JvdW5kIGNvbG9yXHJcbkBtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICMwMDA7XHJcbi8vKiogTW9kYWwgYmFja2Ryb3Agb3BhY2l0eVxyXG5AbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAuNTtcclxuLy8qKiBNb2RhbCBoZWFkZXIgYm9yZGVyIGNvbG9yXHJcbkBtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICNlNWU1ZTU7XHJcbi8vKiogTW9kYWwgZm9vdGVyIGJvcmRlciBjb2xvclxyXG5AbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICBAbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcclxuXHJcbkBtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgIDkwMHB4O1xyXG5AbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICA2MDBweDtcclxuQG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgMzAwcHg7XHJcblxyXG5cclxuLy89PSBBbGVydHNcclxuLy9cclxuLy8jIyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cclxuXHJcbkBhbGVydC1wYWRkaW5nOiAgICAgICAgICAgICAgIDE1cHg7XHJcbkBhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgIEBib3JkZXItcmFkaXVzLWJhc2U7XHJcbkBhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgIGJvbGQ7XHJcblxyXG5AYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICBAc3RhdGUtc3VjY2Vzcy1iZztcclxuQGFsZXJ0LXN1Y2Nlc3MtdGV4dDogICAgICAgICAgQHN0YXRlLXN1Y2Nlc3MtdGV4dDtcclxuQGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgQHN0YXRlLXN1Y2Nlc3MtYm9yZGVyO1xyXG5cclxuQGFsZXJ0LWluZm8tYmc6ICAgICAgICAgICAgICAgQHN0YXRlLWluZm8tYmc7XHJcbkBhbGVydC1pbmZvLXRleHQ6ICAgICAgICAgICAgIEBzdGF0ZS1pbmZvLXRleHQ7XHJcbkBhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgIEBzdGF0ZS1pbmZvLWJvcmRlcjtcclxuXHJcbkBhbGVydC13YXJuaW5nLWJnOiAgICAgICAgICAgIEBzdGF0ZS13YXJuaW5nLWJnO1xyXG5AYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICBAc3RhdGUtd2FybmluZy10ZXh0O1xyXG5AYWxlcnQtd2FybmluZy1ib3JkZXI6ICAgICAgICBAc3RhdGUtd2FybmluZy1ib3JkZXI7XHJcblxyXG5AYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICBAc3RhdGUtZGFuZ2VyLWJnO1xyXG5AYWxlcnQtZGFuZ2VyLXRleHQ6ICAgICAgICAgICBAc3RhdGUtZGFuZ2VyLXRleHQ7XHJcbkBhbGVydC1kYW5nZXItYm9yZGVyOiAgICAgICAgIEBzdGF0ZS1kYW5nZXItYm9yZGVyO1xyXG5cclxuXHJcbi8vPT0gUHJvZ3Jlc3MgYmFyc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIHdob2xlIHByb2dyZXNzIGNvbXBvbmVudFxyXG5AcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAjZjVmNWY1O1xyXG4vLyoqIFByb2dyZXNzIGJhciB0ZXh0IGNvbG9yXHJcbkBwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICNmZmY7XHJcbi8vKiogVmFyaWFibGUgZm9yIHNldHRpbmcgcm91bmRlZCBjb3JuZXJzIG9uIHByb2dyZXNzIGJhci5cclxuQHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgQGJvcmRlci1yYWRpdXMtYmFzZTtcclxuXHJcbi8vKiogRGVmYXVsdCBwcm9ncmVzcyBiYXIgY29sb3JcclxuQHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgQGJyYW5kLXByaW1hcnk7XHJcbi8vKiogU3VjY2VzcyBwcm9ncmVzcyBiYXIgY29sb3JcclxuQHByb2dyZXNzLWJhci1zdWNjZXNzLWJnOiAgICAgQGJyYW5kLXN1Y2Nlc3M7XHJcbi8vKiogV2FybmluZyBwcm9ncmVzcyBiYXIgY29sb3JcclxuQHByb2dyZXNzLWJhci13YXJuaW5nLWJnOiAgICAgQGJyYW5kLXdhcm5pbmc7XHJcbi8vKiogRGFuZ2VyIHByb2dyZXNzIGJhciBjb2xvclxyXG5AcHJvZ3Jlc3MtYmFyLWRhbmdlci1iZzogICAgICBAYnJhbmQtZGFuZ2VyO1xyXG4vLyoqIEluZm8gcHJvZ3Jlc3MgYmFyIGNvbG9yXHJcbkBwcm9ncmVzcy1iYXItaW5mby1iZzogICAgICAgIEBicmFuZC1pbmZvO1xyXG5cclxuXHJcbi8vPT0gTGlzdCBncm91cFxyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb24gYC5saXN0LWdyb3VwLWl0ZW1gXHJcbkBsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgI2ZmZjtcclxuLy8qKiBgLmxpc3QtZ3JvdXAtaXRlbWAgYm9yZGVyIGNvbG9yXHJcbkBsaXN0LWdyb3VwLWJvcmRlcjogICAgICAgICAgICAgI2RkZDtcclxuLy8qKiBMaXN0IGdyb3VwIGJvcmRlciByYWRpdXNcclxuQGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICBAYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG5cclxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHNpbmdsZSBsaXN0IGl0ZW1zIG9uIGhvdmVyXHJcbkBsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgI2Y1ZjVmNTtcclxuLy8qKiBUZXh0IGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGl0ZW1zXHJcbkBsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgQGNvbXBvbmVudC1hY3RpdmUtY29sb3I7XHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xyXG5AbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgIEBjb21wb25lbnQtYWN0aXZlLWJnO1xyXG4vLyoqIEJvcmRlciBjb2xvciBvZiBhY3RpdmUgbGlzdCBlbGVtZW50c1xyXG5AbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyOiAgICAgIEBsaXN0LWdyb3VwLWFjdGl2ZS1iZztcclxuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBhY3RpdmUgbGlzdCBpdGVtc1xyXG5AbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjogIGxpZ2h0ZW4oQGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCA0MCUpO1xyXG5cclxuLy8qKiBUZXh0IGNvbG9yIG9mIGRpc2FibGVkIGxpc3QgaXRlbXNcclxuQGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgQGdyYXktbGlnaHQ7XHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXHJcbkBsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgIEBncmF5LWxpZ2h0ZXI7XHJcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gZGlzYWJsZWQgbGlzdCBpdGVtc1xyXG5AbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOiBAbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcclxuXHJcbkBsaXN0LWdyb3VwLWxpbmstY29sb3I6ICAgICAgICAgIzU1NTtcclxuQGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjogICBAbGlzdC1ncm91cC1saW5rLWNvbG9yO1xyXG5AbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I6ICMzMzM7XHJcblxyXG5cclxuLy89PSBQYW5lbHNcclxuLy9cclxuLy8jI1xyXG5cclxuQHBhbmVsLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZjtcclxuQHBhbmVsLWJvZHktcGFkZGluZzogICAgICAgICAgMTVweDtcclxuQHBhbmVsLWhlYWRpbmctcGFkZGluZzogICAgICAgMTBweCAxNXB4O1xyXG5AcGFuZWwtZm9vdGVyLXBhZGRpbmc6ICAgICAgICBAcGFuZWwtaGVhZGluZy1wYWRkaW5nO1xyXG5AcGFuZWwtYm9yZGVyLXJhZGl1czogICAgICAgICBAYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG5cclxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGVsZW1lbnRzIHdpdGhpbiBwYW5lbHNcclxuQHBhbmVsLWlubmVyLWJvcmRlcjogICAgICAgICAgI2RkZDtcclxuQHBhbmVsLWZvb3Rlci1iZzogICAgICAgICAgICAgI2Y1ZjVmNTtcclxuXHJcbkBwYW5lbC1kZWZhdWx0LXRleHQ6ICAgICAgICAgIEBncmF5LWRhcms7XHJcbkBwYW5lbC1kZWZhdWx0LWJvcmRlcjogICAgICAgICNkZGQ7XHJcbkBwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICNmNWY1ZjU7XHJcblxyXG5AcGFuZWwtcHJpbWFyeS10ZXh0OiAgICAgICAgICAjZmZmO1xyXG5AcGFuZWwtcHJpbWFyeS1ib3JkZXI6ICAgICAgICBAYnJhbmQtcHJpbWFyeTtcclxuQHBhbmVsLXByaW1hcnktaGVhZGluZy1iZzogICAgQGJyYW5kLXByaW1hcnk7XHJcblxyXG5AcGFuZWwtc3VjY2Vzcy10ZXh0OiAgICAgICAgICBAc3RhdGUtc3VjY2Vzcy10ZXh0O1xyXG5AcGFuZWwtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICBAc3RhdGUtc3VjY2Vzcy1ib3JkZXI7XHJcbkBwYW5lbC1zdWNjZXNzLWhlYWRpbmctYmc6ICAgIEBzdGF0ZS1zdWNjZXNzLWJnO1xyXG5cclxuQHBhbmVsLWluZm8tdGV4dDogICAgICAgICAgICAgQHN0YXRlLWluZm8tdGV4dDtcclxuQHBhbmVsLWluZm8tYm9yZGVyOiAgICAgICAgICAgQHN0YXRlLWluZm8tYm9yZGVyO1xyXG5AcGFuZWwtaW5mby1oZWFkaW5nLWJnOiAgICAgICBAc3RhdGUtaW5mby1iZztcclxuXHJcbkBwYW5lbC13YXJuaW5nLXRleHQ6ICAgICAgICAgIEBzdGF0ZS13YXJuaW5nLXRleHQ7XHJcbkBwYW5lbC13YXJuaW5nLWJvcmRlcjogICAgICAgIEBzdGF0ZS13YXJuaW5nLWJvcmRlcjtcclxuQHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZzogICAgQHN0YXRlLXdhcm5pbmctYmc7XHJcblxyXG5AcGFuZWwtZGFuZ2VyLXRleHQ6ICAgICAgICAgICBAc3RhdGUtZGFuZ2VyLXRleHQ7XHJcbkBwYW5lbC1kYW5nZXItYm9yZGVyOiAgICAgICAgIEBzdGF0ZS1kYW5nZXItYm9yZGVyO1xyXG5AcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmc6ICAgICBAc3RhdGUtZGFuZ2VyLWJnO1xyXG5cclxuXHJcbi8vPT0gVGh1bWJuYWlsc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgaW1hZ2VcclxuQHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgNHB4O1xyXG4vLyoqIFRodW1ibmFpbCBiYWNrZ3JvdW5kIGNvbG9yXHJcbkB0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgIEBib2R5LWJnO1xyXG4vLyoqIFRodW1ibmFpbCBib3JkZXIgY29sb3JcclxuQHRodW1ibmFpbC1ib3JkZXI6ICAgICAgICAgICAgI2RkZDtcclxuLy8qKiBUaHVtYm5haWwgYm9yZGVyIHJhZGl1c1xyXG5AdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICBAYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG5cclxuLy8qKiBDdXN0b20gdGV4dCBjb2xvciBmb3IgdGh1bWJuYWlsIGNhcHRpb25zXHJcbkB0aHVtYm5haWwtY2FwdGlvbi1jb2xvcjogICAgIEB0ZXh0LWNvbG9yO1xyXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgY2FwdGlvblxyXG5AdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZzogICA5cHg7XHJcblxyXG5cclxuLy89PSBXZWxsc1xyXG4vL1xyXG4vLyMjXHJcblxyXG5Ad2VsbC1iZzogICAgICAgICAgICAgICAgICAgICAjZjVmNWY1O1xyXG5Ad2VsbC1ib3JkZXI6ICAgICAgICAgICAgICAgICBkYXJrZW4oQHdlbGwtYmcsIDclKTtcclxuXHJcblxyXG4vLz09IEJhZGdlc1xyXG4vL1xyXG4vLyMjXHJcblxyXG5AYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmO1xyXG4vLyoqIExpbmtlZCBiYWRnZSB0ZXh0IGNvbG9yIG9uIGhvdmVyXHJcbkBiYWRnZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmY7XHJcbkBiYWRnZS1iZzogICAgICAgICAgICAgICAgICAgIEBncmF5LWxpZ2h0O1xyXG5cclxuLy8qKiBCYWRnZSB0ZXh0IGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xyXG5AYmFkZ2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICBAbGluay1jb2xvcjtcclxuLy8qKiBCYWRnZSBiYWNrZ3JvdW5kIGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xyXG5AYmFkZ2UtYWN0aXZlLWJnOiAgICAgICAgICAgICAjZmZmO1xyXG5cclxuQGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZDtcclxuQGJhZGdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgMTtcclxuQGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgMTBweDtcclxuXHJcblxyXG4vLz09IEJyZWFkY3J1bWJzXHJcbi8vXHJcbi8vIyNcclxuXHJcbkBicmVhZGNydW1iLXBhZGRpbmctdmVydGljYWw6ICAgOHB4O1xyXG5AYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw6IDE1cHg7XHJcbi8vKiogQnJlYWRjcnVtYiBiYWNrZ3JvdW5kIGNvbG9yXHJcbkBicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNTtcclxuLy8qKiBCcmVhZGNydW1iIHRleHQgY29sb3JcclxuQGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgICAgICAjY2NjO1xyXG4vLyoqIFRleHQgY29sb3Igb2YgY3VycmVudCBwYWdlIGluIHRoZSBicmVhZGNydW1iXHJcbkBicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgQGdyYXktbGlnaHQ7XHJcbi8vKiogVGV4dHVhbCBzZXBhcmF0b3IgZm9yIGJldHdlZW4gYnJlYWRjcnVtYiBlbGVtZW50c1xyXG5AYnJlYWRjcnVtYi1zZXBhcmF0b3I6ICAgICAgICAgIFwiL1wiO1xyXG5cclxuXHJcbi8vPT0gQ2Fyb3VzZWxcclxuLy9cclxuLy8jI1xyXG5cclxuQGNhcm91c2VsLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKDAsMCwwLC42KTtcclxuXHJcbkBjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xyXG5AY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgMTUlO1xyXG5AY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgLjU7XHJcbkBjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAyMHB4O1xyXG5cclxuQGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICNmZmY7XHJcbkBjYXJvdXNlbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAjZmZmO1xyXG5cclxuQGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmY7XHJcblxyXG5cclxuLy89PSBDbG9zZVxyXG4vL1xyXG4vLyMjXHJcblxyXG5AY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkO1xyXG5AY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAjMDAwO1xyXG5AY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAwIDFweCAwICNmZmY7XHJcblxyXG5cclxuLy89PSBDb2RlXHJcbi8vXHJcbi8vIyNcclxuXHJcbkBjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICNjNzI1NGU7XHJcbkBjb2RlLWJnOiAgICAgICAgICAgICAgICAgICAgICNmOWYyZjQ7XHJcblxyXG5Aa2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAjZmZmO1xyXG5Aa2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAjMzMzO1xyXG5cclxuQHByZS1iZzogICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNTtcclxuQHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgQGdyYXktZGFyaztcclxuQHByZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2NjYztcclxuQHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgMzQwcHg7XHJcblxyXG5cclxuLy89PSBUeXBlXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vKiogSG9yaXpvbnRhbCBvZmZzZXQgZm9yIGZvcm1zIGFuZCBsaXN0cy5cclxuQGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbDogMTgwcHg7XHJcbi8vKiogVGV4dCBtdXRlZCBjb2xvclxyXG5AdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICBAZ3JheS1saWdodDtcclxuLy8qKiBBYmJyZXZpYXRpb25zIGFuZCBhY3JvbnltcyBib3JkZXIgY29sb3JcclxuQGFiYnItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgQGdyYXktbGlnaHQ7XHJcbi8vKiogSGVhZGluZ3Mgc21hbGwgY29sb3JcclxuQGhlYWRpbmdzLXNtYWxsLWNvbG9yOiAgICAgICAgQGdyYXktbGlnaHQ7XHJcbi8vKiogQmxvY2txdW90ZSBzbWFsbCBjb2xvclxyXG5AYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICBAZ3JheS1saWdodDtcclxuLy8qKiBCbG9ja3F1b3RlIGZvbnQgc2l6ZVxyXG5AYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAoQGZvbnQtc2l6ZS1iYXNlICogMS4yNSk7XHJcbi8vKiogQmxvY2txdW90ZSBib3JkZXIgY29sb3JcclxuQGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAgICAgQGdyYXktbGlnaHRlcjtcclxuLy8qKiBQYWdlIGhlYWRlciBib3JkZXIgY29sb3JcclxuQHBhZ2UtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgQGdyYXktbGlnaHRlcjtcclxuLy8qKiBXaWR0aCBvZiBob3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3QgdGl0bGVzXHJcbkBkbC1ob3Jpem9udGFsLW9mZnNldDogICAgICAgIEBjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWw7XHJcbi8vKiogSG9yaXpvbnRhbCBsaW5lIGNvbG9yLlxyXG5AaHItYm9yZGVyOiAgICAgICAgICAgICAgICAgICBAZ3JheS1saWdodGVyO1xyXG4iLCIvLyBXZWJLaXQtc3R5bGUgZm9jdXNcclxuXHJcbi50YWItZm9jdXMoKSB7XHJcbiAgLy8gRGVmYXVsdFxyXG4gIG91dGxpbmU6IHRoaW4gZG90dGVkO1xyXG4gIC8vIFdlYktpdFxyXG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcclxuICBvdXRsaW5lLW9mZnNldDogLTJweDtcclxufVxyXG4iLCIvL1xyXG4vLyBUaHVtYm5haWxzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gTWl4aW4gYW5kIGFkanVzdCB0aGUgcmVndWxhciBpbWFnZSBjbGFzc1xyXG4udGh1bWJuYWlsIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nOiBAdGh1bWJuYWlsLXBhZGRpbmc7XHJcbiAgbWFyZ2luLWJvdHRvbTogQGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAdGh1bWJuYWlsLWJnO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIEB0aHVtYm5haWwtYm9yZGVyO1xyXG4gIGJvcmRlci1yYWRpdXM6IEB0aHVtYm5haWwtYm9yZGVyLXJhZGl1cztcclxuICAudHJhbnNpdGlvbihib3JkZXIgLjJzIGVhc2UtaW4tb3V0KTtcclxuXHJcbiAgPiBpbWcsXHJcbiAgYSA+IGltZyB7XHJcbiAgICAmOmV4dGVuZCguaW1nLXJlc3BvbnNpdmUpO1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgfVxyXG5cclxuICAvLyBBZGQgYSBob3ZlciBzdGF0ZSBmb3IgbGlua2VkIHZlcnNpb25zIG9ubHlcclxuICBhJjpob3ZlcixcclxuICBhJjpmb2N1cyxcclxuICBhJi5hY3RpdmUge1xyXG4gICAgYm9yZGVyLWNvbG9yOiBAbGluay1jb2xvcjtcclxuICB9XHJcblxyXG4gIC8vIEltYWdlIGNhcHRpb25zXHJcbiAgLmNhcHRpb24ge1xyXG4gICAgcGFkZGluZzogQHRodW1ibmFpbC1jYXB0aW9uLXBhZGRpbmc7XHJcbiAgICBjb2xvcjogQHRodW1ibmFpbC1jYXB0aW9uLWNvbG9yO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBDYXJvdXNlbFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIFdyYXBwZXIgZm9yIHRoZSBzbGlkZSBjb250YWluZXIgYW5kIGluZGljYXRvcnNcclxuLmNhcm91c2VsIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5jYXJvdXNlbC1pbm5lciB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgd2lkdGg6IDEwMCU7XHJcblxyXG4gID4gLml0ZW0ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC50cmFuc2l0aW9uKC42cyBlYXNlLWluLW91dCBsZWZ0KTtcclxuXHJcbiAgICAvLyBBY2NvdW50IGZvciBqYW5raXR1ZGUgb24gaW1hZ2VzXHJcbiAgICA+IGltZyxcclxuICAgID4gYSA+IGltZyB7XHJcbiAgICAgICY6ZXh0ZW5kKC5pbWctcmVzcG9uc2l2ZSk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFdlYktpdCBDU1MzIHRyYW5zZm9ybXMgZm9yIHN1cHBvcnRlZCBkZXZpY2VzXHJcbiAgICBAbWVkaWEgYWxsIGFuZCAodHJhbnNmb3JtLTNkKSwgKC13ZWJraXQtdHJhbnNmb3JtLTNkKSB7XHJcbiAgICAgIC50cmFuc2l0aW9uLXRyYW5zZm9ybSh+JzAuNnMgZWFzZS1pbi1vdXQnKTtcclxuICAgICAgLmJhY2tmYWNlLXZpc2liaWxpdHkofidoaWRkZW4nKTtcclxuICAgICAgLnBlcnNwZWN0aXZlKDEwMDApO1xyXG5cclxuICAgICAgJi5uZXh0LFxyXG4gICAgICAmLmFjdGl2ZS5yaWdodCB7XHJcbiAgICAgICAgLnRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIH1cclxuICAgICAgJi5wcmV2LFxyXG4gICAgICAmLmFjdGl2ZS5sZWZ0IHtcclxuICAgICAgICAudHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIH1cclxuICAgICAgJi5uZXh0LmxlZnQsXHJcbiAgICAgICYucHJldi5yaWdodCxcclxuICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgIC50cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICA+IC5hY3RpdmUsXHJcbiAgPiAubmV4dCxcclxuICA+IC5wcmV2IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbiAgPiAuYWN0aXZlIHtcclxuICAgIGxlZnQ6IDA7XHJcbiAgfVxyXG5cclxuICA+IC5uZXh0LFxyXG4gID4gLnByZXYge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICA+IC5uZXh0IHtcclxuICAgIGxlZnQ6IDEwMCU7XHJcbiAgfVxyXG4gID4gLnByZXYge1xyXG4gICAgbGVmdDogLTEwMCU7XHJcbiAgfVxyXG4gID4gLm5leHQubGVmdCxcclxuICA+IC5wcmV2LnJpZ2h0IHtcclxuICAgIGxlZnQ6IDA7XHJcbiAgfVxyXG5cclxuICA+IC5hY3RpdmUubGVmdCB7XHJcbiAgICBsZWZ0OiAtMTAwJTtcclxuICB9XHJcbiAgPiAuYWN0aXZlLnJpZ2h0IHtcclxuICAgIGxlZnQ6IDEwMCU7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmNhcm91c2VsLWNvbnRyb2wge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICBib3R0b206IDA7XHJcbiAgd2lkdGg6IEBjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xyXG4gIC5vcGFjaXR5KEBjYXJvdXNlbC1jb250cm9sLW9wYWNpdHkpO1xyXG4gIGZvbnQtc2l6ZTogQGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplO1xyXG4gIGNvbG9yOiBAY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdGV4dC1zaGFkb3c6IEBjYXJvdXNlbC10ZXh0LXNoYWRvdztcclxuICAvLyBXZSBjYW4ndCBoYXZlIHRoaXMgdHJhbnNpdGlvbiBoZXJlIGJlY2F1c2UgV2ViS2l0IGNhbmNlbHMgdGhlIGNhcm91c2VsXHJcbiAgLy8gYW5pbWF0aW9uIGlmIHlvdSB0cmlwIHRoaXMgd2hpbGUgaW4gdGhlIG1pZGRsZSBvZiBhbm90aGVyIGFuaW1hdGlvbi5cclxuXHJcbiAgLy8gU2V0IGdyYWRpZW50cyBmb3IgYmFja2dyb3VuZHNcclxuICAmLmxlZnQge1xyXG4gICAgI2dyYWRpZW50ID4gLmhvcml6b250YWwoQHN0YXJ0LWNvbG9yOiByZ2JhKDAsMCwwLC41KTsgQGVuZC1jb2xvcjogcmdiYSgwLDAsMCwuMDAwMSkpO1xyXG4gIH1cclxuICAmLnJpZ2h0IHtcclxuICAgIGxlZnQ6IGF1dG87XHJcbiAgICByaWdodDogMDtcclxuICAgICNncmFkaWVudCA+IC5ob3Jpem9udGFsKEBzdGFydC1jb2xvcjogcmdiYSgwLDAsMCwuMDAwMSk7IEBlbmQtY29sb3I6IHJnYmEoMCwwLDAsLjUpKTtcclxuICB9XHJcblxyXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICBjb2xvcjogQGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAub3BhY2l0eSguOSk7XHJcbiAgfVxyXG5cclxuICAvLyBUb2dnbGVzXHJcbiAgLmljb24tcHJldixcclxuICAuaWNvbi1uZXh0LFxyXG4gIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LFxyXG4gIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHotaW5kZXg6IDU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgfVxyXG4gIC5pY29uLXByZXYsXHJcbiAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQge1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gIH1cclxuICAuaWNvbi1uZXh0LFxyXG4gIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCB7XHJcbiAgICByaWdodDogNTAlO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICB9XHJcbiAgLmljb24tcHJldixcclxuICAuaWNvbi1uZXh0IHtcclxuICAgIHdpZHRoOiAgMjBweDtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICBmb250LWZhbWlseTogc2VyaWY7XHJcbiAgfVxyXG5cclxuXHJcbiAgLmljb24tcHJldiB7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICdcXDIwMzknOy8vIFNJTkdMRSBMRUZULVBPSU5USU5HIEFOR0xFIFFVT1RBVElPTiBNQVJLIChVKzIwMzkpXHJcbiAgICB9XHJcbiAgfVxyXG4gIC5pY29uLW5leHQge1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiAnXFwyMDNhJzsvLyBTSU5HTEUgUklHSFQtUE9JTlRJTkcgQU5HTEUgUVVPVEFUSU9OIE1BUksgKFUrMjAzQSlcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzXHJcbi8vXHJcbi8vIEFkZCBhbiB1bm9yZGVyZWQgbGlzdCB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhIGxpc3QgaXRlbSBmb3IgZWFjaFxyXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxyXG5cclxuLmNhcm91c2VsLWluZGljYXRvcnMge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBib3R0b206IDEwcHg7XHJcbiAgbGVmdDogNTAlO1xyXG4gIHotaW5kZXg6IDE1O1xyXG4gIHdpZHRoOiA2MCU7XHJcbiAgbWFyZ2luLWxlZnQ6IC0zMCU7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICBsaSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB3aWR0aDogIDEwcHg7XHJcbiAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICBtYXJnaW46IDFweDtcclxuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCBAY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgLy8gSUU4LTkgaGFjayBmb3IgZXZlbnQgaGFuZGxpbmdcclxuICAgIC8vXHJcbiAgICAvLyBJbnRlcm5ldCBFeHBsb3JlciA4LTkgZG9lcyBub3Qgc3VwcG9ydCBjbGlja3Mgb24gZWxlbWVudHMgd2l0aG91dCBhIHNldFxyXG4gICAgLy8gYGJhY2tncm91bmQtY29sb3JgLiBXZSBjYW5ub3QgdXNlIGBmaWx0ZXJgIHNpbmNlIHRoYXQncyBub3Qgdmlld2VkIGFzIGFcclxuICAgIC8vIGJhY2tncm91bmQgY29sb3IgYnkgdGhlIGJyb3dzZXIuIFRodXMsIGEgaGFjayBpcyBuZWVkZWQuXHJcbiAgICAvLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI0ludGVybmV0X0V4cGxvcmVyXHJcbiAgICAvL1xyXG4gICAgLy8gRm9yIElFOCwgd2Ugc2V0IHNvbGlkIGJsYWNrIGFzIGl0IGRvZXNuJ3Qgc3VwcG9ydCBgcmdiYSgpYC4gRm9yIElFOSwgd2VcclxuICAgIC8vIHNldCBhbHBoYSB0cmFuc3BhcmVuY3kgZm9yIHRoZSBiZXN0IHJlc3VsdHMgcG9zc2libGUuXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwIFxcOTsgLy8gSUU4XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDApOyAvLyBJRTlcclxuICB9XHJcbiAgLmFjdGl2ZSB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICB3aWR0aDogIDEycHg7XHJcbiAgICBoZWlnaHQ6IDEycHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcclxuICB9XHJcbn1cclxuXHJcbi8vIE9wdGlvbmFsIGNhcHRpb25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEhpZGRlbiBieSBkZWZhdWx0IGZvciBzbWFsbGVyIHZpZXdwb3J0c1xyXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGxlZnQ6IDE1JTtcclxuICByaWdodDogMTUlO1xyXG4gIGJvdHRvbTogMjBweDtcclxuICB6LWluZGV4OiAxMDtcclxuICBwYWRkaW5nLXRvcDogMjBweDtcclxuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICBjb2xvcjogQGNhcm91c2VsLWNhcHRpb24tY29sb3I7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHRleHQtc2hhZG93OiBAY2Fyb3VzZWwtdGV4dC1zaGFkb3c7XHJcbiAgJiAuYnRuIHtcclxuICAgIHRleHQtc2hhZG93OiBub25lOyAvLyBObyBzaGFkb3cgZm9yIGJ1dHRvbiBlbGVtZW50cyBpbiBjYXJvdXNlbC1jYXB0aW9uXHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gU2NhbGUgdXAgY29udHJvbHMgZm9yIHRhYmxldHMgYW5kIHVwXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IEBzY3JlZW4tc20tbWluKSB7XHJcblxyXG4gIC8vIFNjYWxlIHVwIHRoZSBjb250cm9scyBhIHNtaWRnZVxyXG4gIC5jYXJvdXNlbC1jb250cm9sIHtcclxuICAgIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LFxyXG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxyXG4gICAgLmljb24tcHJldixcclxuICAgIC5pY29uLW5leHQge1xyXG4gICAgICB3aWR0aDogMzBweDtcclxuICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICBtYXJnaW4tdG9wOiAtMTVweDtcclxuICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgfVxyXG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXHJcbiAgICAuaWNvbi1wcmV2IHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xyXG4gICAgfVxyXG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxyXG4gICAgLmljb24tbmV4dCB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogLTE1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBTaG93IGFuZCBsZWZ0IGFsaWduIHRoZSBjYXB0aW9uc1xyXG4gIC5jYXJvdXNlbC1jYXB0aW9uIHtcclxuICAgIGxlZnQ6IDIwJTtcclxuICAgIHJpZ2h0OiAyMCU7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuICB9XHJcblxyXG4gIC8vIE1vdmUgdXAgdGhlIGluZGljYXRvcnNcclxuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XHJcbiAgICBib3R0b206IDIwcHg7XHJcbiAgfVxyXG59XHJcbiIsIi8vIEltYWdlIE1peGluc1xyXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2VcclxuLy8gLSBSZXRpbmEgaW1hZ2VcclxuXHJcblxyXG4vLyBSZXNwb25zaXZlIGltYWdlXHJcbi8vXHJcbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXHJcbi5pbWctcmVzcG9uc2l2ZShAZGlzcGxheTogYmxvY2spIHtcclxuICBkaXNwbGF5OiBAZGlzcGxheTtcclxuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XHJcbiAgaGVpZ2h0OiBhdXRvOyAvLyBQYXJ0IDI6IFNjYWxlIHRoZSBoZWlnaHQgYWNjb3JkaW5nIHRvIHRoZSB3aWR0aCwgb3RoZXJ3aXNlIHlvdSBnZXQgc3RyZXRjaGluZ1xyXG59XHJcblxyXG5cclxuLy8gUmV0aW5hIGltYWdlXHJcbi8vXHJcbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS4gTm90ZSB0aGF0IHRoZVxyXG4vLyBzcGVsbGluZyBvZiBgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvYCBpcyBpbnRlbnRpb25hbC5cclxuLmltZy1yZXRpbmEoQGZpbGUtMXg7IEBmaWxlLTJ4OyBAd2lkdGgtMXg7IEBoZWlnaHQtMXgpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJAe2ZpbGUtMXh9XCIpO1xyXG5cclxuICBAbWVkaWFcclxuICBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXHJcbiAgb25seSBzY3JlZW4gYW5kICggICBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLzEpLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcclxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSxcclxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIkB7ZmlsZS0yeH1cIik7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IEB3aWR0aC0xeCBAaGVpZ2h0LTF4O1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBUeXBvZ3JhcGh5XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gSGVhZGluZ3NcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcclxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XHJcbiAgZm9udC1mYW1pbHk6IEBoZWFkaW5ncy1mb250LWZhbWlseTtcclxuICBmb250LXdlaWdodDogQGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xyXG4gIGxpbmUtaGVpZ2h0OiBAaGVhZGluZ3MtbGluZS1oZWlnaHQ7XHJcbiAgY29sb3I6IEBoZWFkaW5ncy1jb2xvcjtcclxuXHJcbiAgc21hbGwsXHJcbiAgLnNtYWxsIHtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIGNvbG9yOiBAaGVhZGluZ3Mtc21hbGwtY29sb3I7XHJcbiAgfVxyXG59XHJcblxyXG5oMSwgLmgxLFxyXG5oMiwgLmgyLFxyXG5oMywgLmgzIHtcclxuICBtYXJnaW4tdG9wOiBAbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgbWFyZ2luLWJvdHRvbTogKEBsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xyXG5cclxuICBzbWFsbCxcclxuICAuc21hbGwge1xyXG4gICAgZm9udC1zaXplOiA2NSU7XHJcbiAgfVxyXG59XHJcbmg0LCAuaDQsXHJcbmg1LCAuaDUsXHJcbmg2LCAuaDYge1xyXG4gIG1hcmdpbi10b3A6IChAbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcclxuICBtYXJnaW4tYm90dG9tOiAoQGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XHJcblxyXG4gIHNtYWxsLFxyXG4gIC5zbWFsbCB7XHJcbiAgICBmb250LXNpemU6IDc1JTtcclxuICB9XHJcbn1cclxuXHJcbmgxLCAuaDEgeyBmb250LXNpemU6IEBmb250LXNpemUtaDE7IH1cclxuaDIsIC5oMiB7IGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1oMjsgfVxyXG5oMywgLmgzIHsgZm9udC1zaXplOiBAZm9udC1zaXplLWgzOyB9XHJcbmg0LCAuaDQgeyBmb250LXNpemU6IEBmb250LXNpemUtaDQ7IH1cclxuaDUsIC5oNSB7IGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1oNTsgfVxyXG5oNiwgLmg2IHsgZm9udC1zaXplOiBAZm9udC1zaXplLWg2OyB9XHJcblxyXG5cclxuLy8gQm9keSB0ZXh0XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbnAge1xyXG4gIG1hcmdpbjogMCAwIChAbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcclxufVxyXG5cclxuLmxlYWQge1xyXG4gIG1hcmdpbi1ib3R0b206IEBsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBmb250LXNpemU6IGZsb29yKChAZm9udC1zaXplLWJhc2UgKiAxLjE1KSk7XHJcbiAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICBsaW5lLWhlaWdodDogMS40O1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1zbS1taW4pIHtcclxuICAgIGZvbnQtc2l6ZTogKEBmb250LXNpemUtYmFzZSAqIDEuNSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRW1waGFzaXMgJiBtaXNjXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIEV4OiAoMTJweCBzbWFsbCBmb250IC8gMTRweCBiYXNlIGZvbnQpICogMTAwJSA9IGFib3V0IDg1JVxyXG5zbWFsbCxcclxuLnNtYWxsIHtcclxuICBmb250LXNpemU6IGZsb29yKCgxMDAlICogQGZvbnQtc2l6ZS1zbWFsbCAvIEBmb250LXNpemUtYmFzZSkpO1xyXG59XHJcblxyXG5tYXJrLFxyXG4ubWFyayB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogQHN0YXRlLXdhcm5pbmctYmc7XHJcbiAgcGFkZGluZzogLjJlbTtcclxufVxyXG5cclxuLy8gQWxpZ25tZW50XHJcbi50ZXh0LWxlZnQgICAgICAgICAgIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxyXG4udGV4dC1yaWdodCAgICAgICAgICB7IHRleHQtYWxpZ246IHJpZ2h0OyB9XHJcbi50ZXh0LWNlbnRlciAgICAgICAgIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XHJcbi50ZXh0LWp1c3RpZnkgICAgICAgIHsgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxyXG4udGV4dC1ub3dyYXAgICAgICAgICB7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cclxuXHJcbi8vIFRyYW5zZm9ybWF0aW9uXHJcbi50ZXh0LWxvd2VyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTsgfVxyXG4udGV4dC11cHBlcmNhc2UgICAgICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cclxuLnRleHQtY2FwaXRhbGl6ZSAgICAgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxyXG5cclxuLy8gQ29udGV4dHVhbCBjb2xvcnNcclxuLnRleHQtbXV0ZWQge1xyXG4gIGNvbG9yOiBAdGV4dC1tdXRlZDtcclxufVxyXG4udGV4dC1wcmltYXJ5IHtcclxuICAudGV4dC1lbXBoYXNpcy12YXJpYW50KEBicmFuZC1wcmltYXJ5KTtcclxufVxyXG4udGV4dC1zdWNjZXNzIHtcclxuICAudGV4dC1lbXBoYXNpcy12YXJpYW50KEBzdGF0ZS1zdWNjZXNzLXRleHQpO1xyXG59XHJcbi50ZXh0LWluZm8ge1xyXG4gIC50ZXh0LWVtcGhhc2lzLXZhcmlhbnQoQHN0YXRlLWluZm8tdGV4dCk7XHJcbn1cclxuLnRleHQtd2FybmluZyB7XHJcbiAgLnRleHQtZW1waGFzaXMtdmFyaWFudChAc3RhdGUtd2FybmluZy10ZXh0KTtcclxufVxyXG4udGV4dC1kYW5nZXIge1xyXG4gIC50ZXh0LWVtcGhhc2lzLXZhcmlhbnQoQHN0YXRlLWRhbmdlci10ZXh0KTtcclxufVxyXG5cclxuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xyXG4vLyBGb3Igbm93IHdlJ2xsIGxlYXZlIHRoZXNlIGFsb25nc2lkZSB0aGUgdGV4dCBjbGFzc2VzIHVudGlsIHY0IHdoZW4gd2UgY2FuXHJcbi8vIHNhZmVseSBzaGlmdCB0aGluZ3MgYXJvdW5kIChwZXIgU2VtVmVyIHJ1bGVzKS5cclxuLmJnLXByaW1hcnkge1xyXG4gIC8vIEdpdmVuIHRoZSBjb250cmFzdCBoZXJlLCB0aGlzIGlzIHRoZSBvbmx5IGNsYXNzIHRvIGhhdmUgaXRzIGNvbG9yIGludmVydGVkXHJcbiAgLy8gYXV0b21hdGljYWxseS5cclxuICBjb2xvcjogI2ZmZjtcclxuICAuYmctdmFyaWFudChAYnJhbmQtcHJpbWFyeSk7XHJcbn1cclxuLmJnLXN1Y2Nlc3Mge1xyXG4gIC5iZy12YXJpYW50KEBzdGF0ZS1zdWNjZXNzLWJnKTtcclxufVxyXG4uYmctaW5mbyB7XHJcbiAgLmJnLXZhcmlhbnQoQHN0YXRlLWluZm8tYmcpO1xyXG59XHJcbi5iZy13YXJuaW5nIHtcclxuICAuYmctdmFyaWFudChAc3RhdGUtd2FybmluZy1iZyk7XHJcbn1cclxuLmJnLWRhbmdlciB7XHJcbiAgLmJnLXZhcmlhbnQoQHN0YXRlLWRhbmdlci1iZyk7XHJcbn1cclxuXHJcblxyXG4vLyBQYWdlIGhlYWRlclxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4ucGFnZS1oZWFkZXIge1xyXG4gIHBhZGRpbmctYm90dG9tOiAoKEBsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpIC0gMSk7XHJcbiAgbWFyZ2luOiAoQGxpbmUtaGVpZ2h0LWNvbXB1dGVkICogMikgMCBAbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEBwYWdlLWhlYWRlci1ib3JkZXItY29sb3I7XHJcbn1cclxuXHJcblxyXG4vLyBMaXN0c1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBVbm9yZGVyZWQgYW5kIE9yZGVyZWQgbGlzdHNcclxudWwsXHJcbm9sIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IChAbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcclxuICB1bCxcclxuICBvbCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLy8gTGlzdCBvcHRpb25zXHJcblxyXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcclxuLmxpc3QtdW5zdHlsZWQge1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xyXG4ubGlzdC1pbmxpbmUge1xyXG4gIC5saXN0LXVuc3R5bGVkKCk7XHJcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XHJcblxyXG4gID4gbGkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBEZXNjcmlwdGlvbiBMaXN0c1xyXG5kbCB7XHJcbiAgbWFyZ2luLXRvcDogMDsgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdFxyXG4gIG1hcmdpbi1ib3R0b206IEBsaW5lLWhlaWdodC1jb21wdXRlZDtcclxufVxyXG5kdCxcclxuZGQge1xyXG4gIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcclxufVxyXG5kdCB7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuZGQge1xyXG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyBVbmRvIGJyb3dzZXIgZGVmYXVsdFxyXG59XHJcblxyXG4vLyBIb3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3RzXHJcbi8vXHJcbi8vIERlZmF1bHRzIHRvIGJlaW5nIHN0YWNrZWQgd2l0aG91dCBhbnkgb2YgdGhlIGJlbG93IHN0eWxlcyBhcHBsaWVkLCB1bnRpbCB0aGVcclxuLy8gZ3JpZCBicmVha3BvaW50IGlzIHJlYWNoZWQgKGRlZmF1bHQgb2Ygfjc2OHB4KS5cclxuXHJcbi5kbC1ob3Jpem9udGFsIHtcclxuICBkZCB7XHJcbiAgICAmOmV4dGVuZCguY2xlYXJmaXggYWxsKTsgLy8gQ2xlYXIgdGhlIGZsb2F0ZWQgYGR0YCBpZiBhbiBlbXB0eSBgZGRgIGlzIHByZXNlbnRcclxuICB9XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgICBkdCB7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICB3aWR0aDogKEBkbC1ob3Jpem9udGFsLW9mZnNldCAtIDIwKTtcclxuICAgICAgY2xlYXI6IGxlZnQ7XHJcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAudGV4dC1vdmVyZmxvdygpO1xyXG4gICAgfVxyXG4gICAgZGQge1xyXG4gICAgICBtYXJnaW4tbGVmdDogQGRsLWhvcml6b250YWwtb2Zmc2V0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIE1pc2NcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gQWJicmV2aWF0aW9ucyBhbmQgYWNyb255bXNcclxuYWJiclt0aXRsZV0sXHJcbi8vIEFkZCBkYXRhLSogYXR0cmlidXRlIHRvIGhlbHAgb3V0IG91ciB0b29sdGlwIHBsdWdpbiwgcGVyIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvNTI1N1xyXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHtcclxuICBjdXJzb3I6IGhlbHA7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCBAYWJici1ib3JkZXItY29sb3I7XHJcbn1cclxuLmluaXRpYWxpc20ge1xyXG4gIGZvbnQtc2l6ZTogOTAlO1xyXG4gIC50ZXh0LXVwcGVyY2FzZSgpO1xyXG59XHJcblxyXG4vLyBCbG9ja3F1b3Rlc1xyXG5ibG9ja3F1b3RlIHtcclxuICBwYWRkaW5nOiAoQGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgQGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIG1hcmdpbjogMCAwIEBsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBmb250LXNpemU6IEBibG9ja3F1b3RlLWZvbnQtc2l6ZTtcclxuICBib3JkZXItbGVmdDogNXB4IHNvbGlkIEBibG9ja3F1b3RlLWJvcmRlci1jb2xvcjtcclxuXHJcbiAgcCxcclxuICB1bCxcclxuICBvbCB7XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gTm90ZTogRGVwcmVjYXRlZCBzbWFsbCBhbmQgLnNtYWxsIGFzIG9mIHYzLjEuMFxyXG4gIC8vIENvbnRleHQ6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NjBcclxuICBmb290ZXIsXHJcbiAgc21hbGwsXHJcbiAgLnNtYWxsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC1zaXplOiA4MCU7IC8vIGJhY2sgdG8gZGVmYXVsdCBmb250LXNpemVcclxuICAgIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcclxuICAgIGNvbG9yOiBAYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICdcXDIwMTQgXFwwMEEwJzsgLy8gZW0gZGFzaCwgbmJzcFxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gT3Bwb3NpdGUgYWxpZ25tZW50IG9mIGJsb2NrcXVvdGVcclxuLy9cclxuLy8gSGVhZHMgdXA6IGBibG9ja3F1b3RlLnB1bGwtcmlnaHRgIGhhcyBiZWVuIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMS4wLlxyXG4uYmxvY2txdW90ZS1yZXZlcnNlLFxyXG5ibG9ja3F1b3RlLnB1bGwtcmlnaHQge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIGJvcmRlci1yaWdodDogNXB4IHNvbGlkIEBibG9ja3F1b3RlLWJvcmRlci1jb2xvcjtcclxuICBib3JkZXItbGVmdDogMDtcclxuICB0ZXh0LWFsaWduOiByaWdodDtcclxuXHJcbiAgLy8gQWNjb3VudCBmb3IgY2l0YXRpb25cclxuICBmb290ZXIsXHJcbiAgc21hbGwsXHJcbiAgLnNtYWxsIHtcclxuICAgICY6YmVmb3JlIHsgY29udGVudDogJyc7IH1cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiAnXFwwMEEwIFxcMjAxNCc7IC8vIG5ic3AsIGVtIGRhc2hcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIEFkZHJlc3Nlc1xyXG5hZGRyZXNzIHtcclxuICBtYXJnaW4tYm90dG9tOiBAbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcclxufVxyXG4iLCIvLyBUeXBvZ3JhcGh5XHJcblxyXG4udGV4dC1lbXBoYXNpcy12YXJpYW50KEBjb2xvcikge1xyXG4gIGNvbG9yOiBAY29sb3I7XHJcbiAgYSY6aG92ZXIge1xyXG4gICAgY29sb3I6IGRhcmtlbihAY29sb3IsIDEwJSk7XHJcbiAgfVxyXG59XHJcbiIsIi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcclxuXHJcbi5iZy12YXJpYW50KEBjb2xvcikge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvcjtcclxuICBhJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGNvbG9yLCAxMCUpO1xyXG4gIH1cclxufVxyXG4iLCIvLyBUZXh0IG92ZXJmbG93XHJcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcclxuXHJcbi50ZXh0LW92ZXJmbG93KCkge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG4iLCIvL1xyXG4vLyBDb2RlIChpbmxpbmUgYW5kIGJsb2NrKVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIElubGluZSBhbmQgYmxvY2sgY29kZSBzdHlsZXNcclxuY29kZSxcclxua2JkLFxyXG5wcmUsXHJcbnNhbXAge1xyXG4gIGZvbnQtZmFtaWx5OiBAZm9udC1mYW1pbHktbW9ub3NwYWNlO1xyXG59XHJcblxyXG4vLyBJbmxpbmUgY29kZVxyXG5jb2RlIHtcclxuICBwYWRkaW5nOiAycHggNHB4O1xyXG4gIGZvbnQtc2l6ZTogOTAlO1xyXG4gIGNvbG9yOiBAY29kZS1jb2xvcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29kZS1iZztcclxuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG59XHJcblxyXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxyXG5rYmQge1xyXG4gIHBhZGRpbmc6IDJweCA0cHg7XHJcbiAgZm9udC1zaXplOiA5MCU7XHJcbiAgY29sb3I6IEBrYmQtY29sb3I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogQGtiZC1iZztcclxuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cy1zbWFsbDtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggMCByZ2JhKDAsMCwwLC4yNSk7XHJcblxyXG4gIGtiZCB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgZm9udC1zaXplOiAxMDAlO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQmxvY2tzIG9mIGNvZGVcclxucHJlIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nOiAoKEBsaW5lLWhlaWdodC1jb21wdXRlZCAtIDEpIC8gMik7XHJcbiAgbWFyZ2luOiAwIDAgKEBsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xyXG4gIGZvbnQtc2l6ZTogKEBmb250LXNpemUtYmFzZSAtIDEpOyAvLyAxNHB4IHRvIDEzcHhcclxuICBsaW5lLWhlaWdodDogQGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuICBjb2xvcjogQHByZS1jb2xvcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcHJlLWJnO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIEBwcmUtYm9yZGVyLWNvbG9yO1xyXG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWJhc2U7XHJcblxyXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXHJcbiAgY29kZSB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxyXG4ucHJlLXNjcm9sbGFibGUge1xyXG4gIG1heC1oZWlnaHQ6IEBwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xyXG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcclxufVxyXG4iLCIvL1xyXG4vLyBHcmlkIHN5c3RlbVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIENvbnRhaW5lciB3aWR0aHNcclxuLy9cclxuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxyXG5cclxuLmNvbnRhaW5lciB7XHJcbiAgLmNvbnRhaW5lci1maXhlZCgpO1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1zbS1taW4pIHtcclxuICAgIHdpZHRoOiBAY29udGFpbmVyLXNtO1xyXG4gIH1cclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1tZC1taW4pIHtcclxuICAgIHdpZHRoOiBAY29udGFpbmVyLW1kO1xyXG4gIH1cclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1sZy1taW4pIHtcclxuICAgIHdpZHRoOiBAY29udGFpbmVyLWxnO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEZsdWlkIGNvbnRhaW5lclxyXG4vL1xyXG4vLyBVdGlsaXplcyB0aGUgbWl4aW4gbWVhbnQgZm9yIGZpeGVkIHdpZHRoIGNvbnRhaW5lcnMsIGJ1dCB3aXRob3V0IGFueSBkZWZpbmVkXHJcbi8vIHdpZHRoIGZvciBmbHVpZCwgZnVsbCB3aWR0aCBsYXlvdXRzLlxyXG5cclxuLmNvbnRhaW5lci1mbHVpZCB7XHJcbiAgLmNvbnRhaW5lci1maXhlZCgpO1xyXG59XHJcblxyXG5cclxuLy8gUm93XHJcbi8vXHJcbi8vIFJvd3MgY29udGFpbiBhbmQgY2xlYXIgdGhlIGZsb2F0cyBvZiB5b3VyIGNvbHVtbnMuXHJcblxyXG4ucm93IHtcclxuICAubWFrZS1yb3coKTtcclxufVxyXG5cclxuXHJcbi8vIENvbHVtbnNcclxuLy9cclxuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xyXG5cclxuLm1ha2UtZ3JpZC1jb2x1bW5zKCk7XHJcblxyXG5cclxuLy8gRXh0cmEgc21hbGwgZ3JpZFxyXG4vL1xyXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgZXh0cmEgc21hbGwgZGV2aWNlcyBsaWtlXHJcbi8vIHNtYXJ0cGhvbmVzLlxyXG5cclxuLm1ha2UtZ3JpZCh4cyk7XHJcblxyXG5cclxuLy8gU21hbGwgZ3JpZFxyXG4vL1xyXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIHNtYWxsIGRldmljZSByYW5nZSwgZnJvbSBwaG9uZXNcclxuLy8gdG8gdGFibGV0cy5cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikge1xyXG4gIC5tYWtlLWdyaWQoc20pO1xyXG59XHJcblxyXG5cclxuLy8gTWVkaXVtIGdyaWRcclxuLy9cclxuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBkZXNrdG9wIGRldmljZSByYW5nZS5cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLW1kLW1pbikge1xyXG4gIC5tYWtlLWdyaWQobWQpO1xyXG59XHJcblxyXG5cclxuLy8gTGFyZ2UgZ3JpZFxyXG4vL1xyXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIGxhcmdlIGRlc2t0b3AgZGV2aWNlIHJhbmdlLlxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbGctbWluKSB7XHJcbiAgLm1ha2UtZ3JpZChsZyk7XHJcbn1cclxuIiwiLy8gR3JpZCBzeXN0ZW1cclxuLy9cclxuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxyXG5cclxuLy8gQ2VudGVyZWQgY29udGFpbmVyIGVsZW1lbnRcclxuLmNvbnRhaW5lci1maXhlZChAZ3V0dGVyOiBAZ3JpZC1ndXR0ZXItd2lkdGgpIHtcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgcGFkZGluZy1sZWZ0OiAgKEBndXR0ZXIgLyAyKTtcclxuICBwYWRkaW5nLXJpZ2h0OiAoQGd1dHRlciAvIDIpO1xyXG4gICY6ZXh0ZW5kKC5jbGVhcmZpeCBhbGwpO1xyXG59XHJcblxyXG4vLyBDcmVhdGVzIGEgd3JhcHBlciBmb3IgYSBzZXJpZXMgb2YgY29sdW1uc1xyXG4ubWFrZS1yb3coQGd1dHRlcjogQGdyaWQtZ3V0dGVyLXdpZHRoKSB7XHJcbiAgbWFyZ2luLWxlZnQ6ICAoQGd1dHRlciAvIC0yKTtcclxuICBtYXJnaW4tcmlnaHQ6IChAZ3V0dGVyIC8gLTIpO1xyXG4gICY6ZXh0ZW5kKC5jbGVhcmZpeCBhbGwpO1xyXG59XHJcblxyXG4vLyBHZW5lcmF0ZSB0aGUgZXh0cmEgc21hbGwgY29sdW1uc1xyXG4ubWFrZS14cy1jb2x1bW4oQGNvbHVtbnM7IEBndXR0ZXI6IEBncmlkLWd1dHRlci13aWR0aCkge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBmbG9hdDogbGVmdDtcclxuICB3aWR0aDogcGVyY2VudGFnZSgoQGNvbHVtbnMgLyBAZ3JpZC1jb2x1bW5zKSk7XHJcbiAgbWluLWhlaWdodDogMXB4O1xyXG4gIHBhZGRpbmctbGVmdDogIChAZ3V0dGVyIC8gMik7XHJcbiAgcGFkZGluZy1yaWdodDogKEBndXR0ZXIgLyAyKTtcclxufVxyXG4ubWFrZS14cy1jb2x1bW4tb2Zmc2V0KEBjb2x1bW5zKSB7XHJcbiAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKEBjb2x1bW5zIC8gQGdyaWQtY29sdW1ucykpO1xyXG59XHJcbi5tYWtlLXhzLWNvbHVtbi1wdXNoKEBjb2x1bW5zKSB7XHJcbiAgbGVmdDogcGVyY2VudGFnZSgoQGNvbHVtbnMgLyBAZ3JpZC1jb2x1bW5zKSk7XHJcbn1cclxuLm1ha2UteHMtY29sdW1uLXB1bGwoQGNvbHVtbnMpIHtcclxuICByaWdodDogcGVyY2VudGFnZSgoQGNvbHVtbnMgLyBAZ3JpZC1jb2x1bW5zKSk7XHJcbn1cclxuXHJcbi8vIEdlbmVyYXRlIHRoZSBzbWFsbCBjb2x1bW5zXHJcbi5tYWtlLXNtLWNvbHVtbihAY29sdW1uczsgQGd1dHRlcjogQGdyaWQtZ3V0dGVyLXdpZHRoKSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1pbi1oZWlnaHQ6IDFweDtcclxuICBwYWRkaW5nLWxlZnQ6ICAoQGd1dHRlciAvIDIpO1xyXG4gIHBhZGRpbmctcmlnaHQ6IChAZ3V0dGVyIC8gMik7XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoQGNvbHVtbnMgLyBAZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbi5tYWtlLXNtLWNvbHVtbi1vZmZzZXQoQGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1zbS1taW4pIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKChAY29sdW1ucyAvIEBncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuLm1ha2Utc20tY29sdW1uLXB1c2goQGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1zbS1taW4pIHtcclxuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKEBjb2x1bW5zIC8gQGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG4ubWFrZS1zbS1jb2x1bW4tcHVsbChAY29sdW1ucykge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikge1xyXG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKEBjb2x1bW5zIC8gQGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gR2VuZXJhdGUgdGhlIG1lZGl1bSBjb2x1bW5zXHJcbi5tYWtlLW1kLWNvbHVtbihAY29sdW1uczsgQGd1dHRlcjogQGdyaWQtZ3V0dGVyLXdpZHRoKSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1pbi1oZWlnaHQ6IDFweDtcclxuICBwYWRkaW5nLWxlZnQ6ICAoQGd1dHRlciAvIDIpO1xyXG4gIHBhZGRpbmctcmlnaHQ6IChAZ3V0dGVyIC8gMik7XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLW1kLW1pbikge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoQGNvbHVtbnMgLyBAZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbi5tYWtlLW1kLWNvbHVtbi1vZmZzZXQoQGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1tZC1taW4pIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKChAY29sdW1ucyAvIEBncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuLm1ha2UtbWQtY29sdW1uLXB1c2goQGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1tZC1taW4pIHtcclxuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKEBjb2x1bW5zIC8gQGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG4ubWFrZS1tZC1jb2x1bW4tcHVsbChAY29sdW1ucykge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLW1kLW1pbikge1xyXG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKEBjb2x1bW5zIC8gQGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gR2VuZXJhdGUgdGhlIGxhcmdlIGNvbHVtbnNcclxuLm1ha2UtbGctY29sdW1uKEBjb2x1bW5zOyBAZ3V0dGVyOiBAZ3JpZC1ndXR0ZXItd2lkdGgpIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWluLWhlaWdodDogMXB4O1xyXG4gIHBhZGRpbmctbGVmdDogIChAZ3V0dGVyIC8gMik7XHJcbiAgcGFkZGluZy1yaWdodDogKEBndXR0ZXIgLyAyKTtcclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbGctbWluKSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHdpZHRoOiBwZXJjZW50YWdlKChAY29sdW1ucyAvIEBncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuLm1ha2UtbGctY29sdW1uLW9mZnNldChAY29sdW1ucykge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLWxnLW1pbikge1xyXG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKEBjb2x1bW5zIC8gQGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG4ubWFrZS1sZy1jb2x1bW4tcHVzaChAY29sdW1ucykge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLWxnLW1pbikge1xyXG4gICAgbGVmdDogcGVyY2VudGFnZSgoQGNvbHVtbnMgLyBAZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbi5tYWtlLWxnLWNvbHVtbi1wdWxsKEBjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbGctbWluKSB7XHJcbiAgICByaWdodDogcGVyY2VudGFnZSgoQGNvbHVtbnMgLyBAZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cclxuLy9cclxuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXHJcbi8vIGFueSB2YWx1ZSBvZiBgQGdyaWQtY29sdW1uc2AuXHJcblxyXG4ubWFrZS1ncmlkLWNvbHVtbnMoKSB7XHJcbiAgLy8gQ29tbW9uIHN0eWxlcyBmb3IgYWxsIHNpemVzIG9mIGdyaWQgY29sdW1ucywgd2lkdGhzIDEtMTJcclxuICAuY29sKEBpbmRleCkgeyAvLyBpbml0aWFsXHJcbiAgICBAaXRlbTogflwiLmNvbC14cy1Ae2luZGV4fSwgLmNvbC1zbS1Ae2luZGV4fSwgLmNvbC1tZC1Ae2luZGV4fSwgLmNvbC1sZy1Ae2luZGV4fVwiO1xyXG4gICAgLmNvbCgoQGluZGV4ICsgMSksIEBpdGVtKTtcclxuICB9XHJcbiAgLmNvbChAaW5kZXgsIEBsaXN0KSB3aGVuIChAaW5kZXggPTwgQGdyaWQtY29sdW1ucykgeyAvLyBnZW5lcmFsOyBcIj08XCIgaXNuJ3QgYSB0eXBvXHJcbiAgICBAaXRlbTogflwiLmNvbC14cy1Ae2luZGV4fSwgLmNvbC1zbS1Ae2luZGV4fSwgLmNvbC1tZC1Ae2luZGV4fSwgLmNvbC1sZy1Ae2luZGV4fVwiO1xyXG4gICAgLmNvbCgoQGluZGV4ICsgMSksIH5cIkB7bGlzdH0sIEB7aXRlbX1cIik7XHJcbiAgfVxyXG4gIC5jb2woQGluZGV4LCBAbGlzdCkgd2hlbiAoQGluZGV4ID4gQGdyaWQtY29sdW1ucykgeyAvLyB0ZXJtaW5hbFxyXG4gICAgQHtsaXN0fSB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gY29sbGFwc2luZyB3aGVuIGVtcHR5XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDFweDtcclxuICAgICAgLy8gSW5uZXIgZ3V0dGVyIHZpYSBwYWRkaW5nXHJcbiAgICAgIHBhZGRpbmctbGVmdDogIChAZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcclxuICAgICAgcGFkZGluZy1yaWdodDogKEBncmlkLWd1dHRlci13aWR0aCAvIDIpO1xyXG4gICAgfVxyXG4gIH1cclxuICAuY29sKDEpOyAvLyBraWNrc3RhcnQgaXRcclxufVxyXG5cclxuLmZsb2F0LWdyaWQtY29sdW1ucyhAY2xhc3MpIHtcclxuICAuY29sKEBpbmRleCkgeyAvLyBpbml0aWFsXHJcbiAgICBAaXRlbTogflwiLmNvbC1Ae2NsYXNzfS1Ae2luZGV4fVwiO1xyXG4gICAgLmNvbCgoQGluZGV4ICsgMSksIEBpdGVtKTtcclxuICB9XHJcbiAgLmNvbChAaW5kZXgsIEBsaXN0KSB3aGVuIChAaW5kZXggPTwgQGdyaWQtY29sdW1ucykgeyAvLyBnZW5lcmFsXHJcbiAgICBAaXRlbTogflwiLmNvbC1Ae2NsYXNzfS1Ae2luZGV4fVwiO1xyXG4gICAgLmNvbCgoQGluZGV4ICsgMSksIH5cIkB7bGlzdH0sIEB7aXRlbX1cIik7XHJcbiAgfVxyXG4gIC5jb2woQGluZGV4LCBAbGlzdCkgd2hlbiAoQGluZGV4ID4gQGdyaWQtY29sdW1ucykgeyAvLyB0ZXJtaW5hbFxyXG4gICAgQHtsaXN0fSB7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgfVxyXG4gIH1cclxuICAuY29sKDEpOyAvLyBraWNrc3RhcnQgaXRcclxufVxyXG5cclxuLmNhbGMtZ3JpZC1jb2x1bW4oQGluZGV4LCBAY2xhc3MsIEB0eXBlKSB3aGVuIChAdHlwZSA9IHdpZHRoKSBhbmQgKEBpbmRleCA+IDApIHtcclxuICAuY29sLUB7Y2xhc3N9LUB7aW5kZXh9IHtcclxuICAgIHdpZHRoOiBwZXJjZW50YWdlKChAaW5kZXggLyBAZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbi5jYWxjLWdyaWQtY29sdW1uKEBpbmRleCwgQGNsYXNzLCBAdHlwZSkgd2hlbiAoQHR5cGUgPSBwdXNoKSBhbmQgKEBpbmRleCA+IDApIHtcclxuICAuY29sLUB7Y2xhc3N9LXB1c2gtQHtpbmRleH0ge1xyXG4gICAgbGVmdDogcGVyY2VudGFnZSgoQGluZGV4IC8gQGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG4uY2FsYy1ncmlkLWNvbHVtbihAaW5kZXgsIEBjbGFzcywgQHR5cGUpIHdoZW4gKEB0eXBlID0gcHVzaCkgYW5kIChAaW5kZXggPSAwKSB7XHJcbiAgLmNvbC1Ae2NsYXNzfS1wdXNoLTAge1xyXG4gICAgbGVmdDogYXV0bztcclxuICB9XHJcbn1cclxuLmNhbGMtZ3JpZC1jb2x1bW4oQGluZGV4LCBAY2xhc3MsIEB0eXBlKSB3aGVuIChAdHlwZSA9IHB1bGwpIGFuZCAoQGluZGV4ID4gMCkge1xyXG4gIC5jb2wtQHtjbGFzc30tcHVsbC1Ae2luZGV4fSB7XHJcbiAgICByaWdodDogcGVyY2VudGFnZSgoQGluZGV4IC8gQGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG4uY2FsYy1ncmlkLWNvbHVtbihAaW5kZXgsIEBjbGFzcywgQHR5cGUpIHdoZW4gKEB0eXBlID0gcHVsbCkgYW5kIChAaW5kZXggPSAwKSB7XHJcbiAgLmNvbC1Ae2NsYXNzfS1wdWxsLTAge1xyXG4gICAgcmlnaHQ6IGF1dG87XHJcbiAgfVxyXG59XHJcbi5jYWxjLWdyaWQtY29sdW1uKEBpbmRleCwgQGNsYXNzLCBAdHlwZSkgd2hlbiAoQHR5cGUgPSBvZmZzZXQpIHtcclxuICAuY29sLUB7Y2xhc3N9LW9mZnNldC1Ae2luZGV4fSB7XHJcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoQGluZGV4IC8gQGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQmFzaWMgbG9vcGluZyBpbiBMRVNTXHJcbi5sb29wLWdyaWQtY29sdW1ucyhAaW5kZXgsIEBjbGFzcywgQHR5cGUpIHdoZW4gKEBpbmRleCA+PSAwKSB7XHJcbiAgLmNhbGMtZ3JpZC1jb2x1bW4oQGluZGV4LCBAY2xhc3MsIEB0eXBlKTtcclxuICAvLyBuZXh0IGl0ZXJhdGlvblxyXG4gIC5sb29wLWdyaWQtY29sdW1ucygoQGluZGV4IC0gMSksIEBjbGFzcywgQHR5cGUpO1xyXG59XHJcblxyXG4vLyBDcmVhdGUgZ3JpZCBmb3Igc3BlY2lmaWMgY2xhc3NcclxuLm1ha2UtZ3JpZChAY2xhc3MpIHtcclxuICAuZmxvYXQtZ3JpZC1jb2x1bW5zKEBjbGFzcyk7XHJcbiAgLmxvb3AtZ3JpZC1jb2x1bW5zKEBncmlkLWNvbHVtbnMsIEBjbGFzcywgd2lkdGgpO1xyXG4gIC5sb29wLWdyaWQtY29sdW1ucyhAZ3JpZC1jb2x1bW5zLCBAY2xhc3MsIHB1bGwpO1xyXG4gIC5sb29wLWdyaWQtY29sdW1ucyhAZ3JpZC1jb2x1bW5zLCBAY2xhc3MsIHB1c2gpO1xyXG4gIC5sb29wLWdyaWQtY29sdW1ucyhAZ3JpZC1jb2x1bW5zLCBAY2xhc3MsIG9mZnNldCk7XHJcbn1cclxuIiwiLy9cclxuLy8gVGFibGVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxudGFibGUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IEB0YWJsZS1iZztcclxufVxyXG5jYXB0aW9uIHtcclxuICBwYWRkaW5nLXRvcDogQHRhYmxlLWNlbGwtcGFkZGluZztcclxuICBwYWRkaW5nLWJvdHRvbTogQHRhYmxlLWNlbGwtcGFkZGluZztcclxuICBjb2xvcjogQHRleHQtbXV0ZWQ7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG50aCB7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG5cclxuXHJcbi8vIEJhc2VsaW5lIHN0eWxlc1xyXG5cclxuLnRhYmxlIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgbWFyZ2luLWJvdHRvbTogQGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIC8vIENlbGxzXHJcbiAgPiB0aGVhZCxcclxuICA+IHRib2R5LFxyXG4gID4gdGZvb3Qge1xyXG4gICAgPiB0ciB7XHJcbiAgICAgID4gdGgsXHJcbiAgICAgID4gdGQge1xyXG4gICAgICAgIHBhZGRpbmc6IEB0YWJsZS1jZWxsLXBhZGRpbmc7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodC1iYXNlO1xyXG4gICAgICAgIC8vdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgQHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAvLyBCb3R0b20gYWxpZ24gZm9yIGNvbHVtbiBoZWFkaW5nc1xyXG4gID4gdGhlYWQgPiB0ciA+IHRoIHtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgQHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICB9XHJcbiAgLy8gUmVtb3ZlIHRvcCBib3JkZXIgZnJvbSB0aGVhZCBieSBkZWZhdWx0XHJcbiAgPiBjYXB0aW9uICsgdGhlYWQsXHJcbiAgPiBjb2xncm91cCArIHRoZWFkLFxyXG4gID4gdGhlYWQ6Zmlyc3QtY2hpbGQge1xyXG4gICAgPiB0cjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgID4gdGgsXHJcbiAgICAgID4gdGQge1xyXG4gICAgICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLy8gQWNjb3VudCBmb3IgbXVsdGlwbGUgdGJvZHkgaW5zdGFuY2VzXHJcbiAgPiB0Ym9keSArIHRib2R5IHtcclxuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCBAdGFibGUtYm9yZGVyLWNvbG9yO1xyXG4gIH1cclxuXHJcbiAgLy8gTmVzdGluZ1xyXG4gIC8vIC50YWJsZSB7XHJcbiAgLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiBAYm9keS1iZztcclxuICAvLyB9XHJcbn1cclxuXHJcblxyXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXHJcblxyXG4udGFibGUtY29uZGVuc2VkIHtcclxuICA+IHRoZWFkLFxyXG4gID4gdGJvZHksXHJcbiAgPiB0Zm9vdCB7XHJcbiAgICA+IHRyIHtcclxuICAgICAgPiB0aCxcclxuICAgICAgPiB0ZCB7XHJcbiAgICAgICAgcGFkZGluZzogQHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBCb3JkZXJlZCB2ZXJzaW9uXHJcbi8vXHJcbi8vIEFkZCBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cclxuXHJcbi50YWJsZS1ib3JkZXJlZCB7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgQHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICA+IHRoZWFkLFxyXG4gID4gdGJvZHksXHJcbiAgPiB0Zm9vdCB7XHJcbiAgICA+IHRyIHtcclxuICAgICAgPiB0aCxcclxuICAgICAgPiB0ZCB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgQHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICA+IHRoZWFkID4gdHIge1xyXG4gICAgPiB0aCxcclxuICAgID4gdGQge1xyXG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gWmVicmEtc3RyaXBpbmdcclxuLy9cclxuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcclxuXHJcbi50YWJsZS1zdHJpcGVkIHtcclxuICA+IHRib2R5ID4gdHI6bnRoLW9mLXR5cGUob2RkKSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAdGFibGUtYmctYWNjZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEhvdmVyIGVmZmVjdFxyXG4vL1xyXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXHJcblxyXG4udGFibGUtaG92ZXIge1xyXG4gID4gdGJvZHkgPiB0cjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAdGFibGUtYmctaG92ZXI7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gVGFibGUgY2VsbCBzaXppbmdcclxuLy9cclxuLy8gUmVzZXQgZGVmYXVsdCB0YWJsZSBiZWhhdmlvclxyXG5cclxudGFibGUgY29sW2NsYXNzKj1cImNvbC1cIl0ge1xyXG4gIHBvc2l0aW9uOiBzdGF0aWM7IC8vIFByZXZlbnQgYm9yZGVyIGhpZGluZyBpbiBGaXJlZm94IGFuZCBJRTktMTEgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjIzKVxyXG4gIGZsb2F0OiBub25lO1xyXG4gIGRpc3BsYXk6IHRhYmxlLWNvbHVtbjtcclxufVxyXG50YWJsZSB7XHJcbiAgdGQsXHJcbiAgdGgge1xyXG4gICAgJltjbGFzcyo9XCJjb2wtXCJdIHtcclxuICAgICAgcG9zaXRpb246IHN0YXRpYzsgLy8gUHJldmVudCBib3JkZXIgaGlkaW5nIGluIEZpcmVmb3ggYW5kIElFOS0xMSAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2MjMpXHJcbiAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFRhYmxlIGJhY2tncm91bmRzXHJcbi8vXHJcbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XHJcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXHJcblxyXG4vLyBHZW5lcmF0ZSB0aGUgY29udGV4dHVhbCB2YXJpYW50c1xyXG4udGFibGUtcm93LXZhcmlhbnQoYWN0aXZlOyBAdGFibGUtYmctYWN0aXZlKTtcclxuLnRhYmxlLXJvdy12YXJpYW50KHN1Y2Nlc3M7IEBzdGF0ZS1zdWNjZXNzLWJnKTtcclxuLnRhYmxlLXJvdy12YXJpYW50KGluZm87IEBzdGF0ZS1pbmZvLWJnKTtcclxuLnRhYmxlLXJvdy12YXJpYW50KHdhcm5pbmc7IEBzdGF0ZS13YXJuaW5nLWJnKTtcclxuLnRhYmxlLXJvdy12YXJpYW50KGRhbmdlcjsgQHN0YXRlLWRhbmdlci1iZyk7XHJcblxyXG5cclxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcclxuLy9cclxuLy8gV3JhcCB5b3VyIHRhYmxlcyBpbiBgLnRhYmxlLXJlc3BvbnNpdmVgIGFuZCB3ZSdsbCBtYWtlIHRoZW0gbW9iaWxlIGZyaWVuZGx5XHJcbi8vIGJ5IGVuYWJsaW5nIGhvcml6b250YWwgc2Nyb2xsaW5nLiBPbmx5IGFwcGxpZXMgPDc2OHB4LiBFdmVyeXRoaW5nIGFib3ZlIHRoYXRcclxuLy8gd2lsbCBkaXNwbGF5IG5vcm1hbGx5LlxyXG5cclxuLnRhYmxlLXJlc3BvbnNpdmUge1xyXG4gIG92ZXJmbG93LXg6IGF1dG87XHJcbiAgbWluLWhlaWdodDogMC4wMSU7IC8vIFdvcmthcm91bmQgZm9yIElFOSBidWcgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE0ODM3KVxyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBAc2NyZWVuLXhzLW1heCkge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAoQGxpbmUtaGVpZ2h0LWNvbXB1dGVkICogMC43NSk7XHJcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XHJcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIEB0YWJsZS1ib3JkZXItY29sb3I7XHJcblxyXG4gICAgLy8gVGlnaHRlbiB1cCBzcGFjaW5nXHJcbiAgICA+IC50YWJsZSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgICAvLyBFbnN1cmUgdGhlIGNvbnRlbnQgZG9lc24ndCB3cmFwXHJcbiAgICAgID4gdGhlYWQsXHJcbiAgICAgID4gdGJvZHksXHJcbiAgICAgID4gdGZvb3Qge1xyXG4gICAgICAgID4gdHIge1xyXG4gICAgICAgICAgPiB0aCxcclxuICAgICAgICAgID4gdGQge1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIFNwZWNpYWwgb3ZlcnJpZGVzIGZvciB0aGUgYm9yZGVyZWQgdGFibGVzXHJcbiAgICA+IC50YWJsZS1ib3JkZXJlZCB7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuXHJcbiAgICAgIC8vIE51a2UgdGhlIGFwcHJvcHJpYXRlIGJvcmRlcnMgc28gdGhhdCB0aGUgcGFyZW50IGNhbiBoYW5kbGUgdGhlbVxyXG4gICAgICA+IHRoZWFkLFxyXG4gICAgICA+IHRib2R5LFxyXG4gICAgICA+IHRmb290IHtcclxuICAgICAgICA+IHRyIHtcclxuICAgICAgICAgID4gdGg6Zmlyc3QtY2hpbGQsXHJcbiAgICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICA+IHRoOmxhc3QtY2hpbGQsXHJcbiAgICAgICAgICA+IHRkOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBPbmx5IG51a2UgdGhlIGxhc3Qgcm93J3MgYm90dG9tLWJvcmRlciBpbiBgdGJvZHlgIGFuZCBgdGZvb3RgIHNpbmNlXHJcbiAgICAgIC8vIGNoYW5jZXMgYXJlIHRoZXJlIHdpbGwgYmUgb25seSBvbmUgYHRyYCBpbiBhIGB0aGVhZGAgYW5kIHRoYXQgd291bGRcclxuICAgICAgLy8gcmVtb3ZlIHRoZSBib3JkZXIgYWx0b2dldGhlci5cclxuICAgICAgPiB0Ym9keSxcclxuICAgICAgPiB0Zm9vdCB7XHJcbiAgICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgID4gdGgsXHJcbiAgICAgICAgICA+IHRkIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIFRhYmxlc1xyXG5cclxuLnRhYmxlLXJvdy12YXJpYW50KEBzdGF0ZTsgQGJhY2tncm91bmQpIHtcclxuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxyXG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXHJcbiAgLnRhYmxlID4gdGhlYWQgPiB0cixcclxuICAudGFibGUgPiB0Ym9keSA+IHRyLFxyXG4gIC50YWJsZSA+IHRmb290ID4gdHIge1xyXG4gICAgPiB0ZC5Ae3N0YXRlfSxcclxuICAgID4gdGguQHtzdGF0ZX0sXHJcbiAgICAmLkB7c3RhdGV9ID4gdGQsXHJcbiAgICAmLkB7c3RhdGV9ID4gdGgge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmFja2dyb3VuZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcclxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cclxuICAudGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyIHtcclxuICAgID4gdGQuQHtzdGF0ZX06aG92ZXIsXHJcbiAgICA+IHRoLkB7c3RhdGV9OmhvdmVyLFxyXG4gICAgJi5Ae3N0YXRlfTpob3ZlciA+IHRkLFxyXG4gICAgJjpob3ZlciA+IC5Ae3N0YXRlfSxcclxuICAgICYuQHtzdGF0ZX06aG92ZXIgPiB0aCB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAYmFja2dyb3VuZCwgNSUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBGb3Jtc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIE5vcm1hbGl6ZSBub24tY29udHJvbHNcclxuLy9cclxuLy8gUmVzdHlsZSBhbmQgYmFzZWxpbmUgbm9uLWNvbnRyb2wgZm9ybSBlbGVtZW50cy5cclxuXHJcbmZpZWxkc2V0IHtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMDtcclxuICBib3JkZXI6IDA7XHJcbiAgLy8gQ2hyb21lIGFuZCBGaXJlZm94IHNldCBhIGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxyXG4gIC8vIHNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGl0IGJlaGF2ZXMgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cclxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OS5cclxuICBtaW4td2lkdGg6IDA7XHJcbn1cclxuXHJcbmxlZ2VuZCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcGFkZGluZzogMDtcclxuICBtYXJnaW4tYm90dG9tOiBAbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgZm9udC1zaXplOiAoQGZvbnQtc2l6ZS1iYXNlICogMS41KTtcclxuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxuICBjb2xvcjogQGxlZ2VuZC1jb2xvcjtcclxuICBib3JkZXI6IDA7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEBsZWdlbmQtYm9yZGVyLWNvbG9yO1xyXG59XHJcblxyXG5sYWJlbCB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIG1heC13aWR0aDogMTAwJTsgLy8gRm9yY2UgSUU4IHRvIHdyYXAgbG9uZyBjb250ZW50IChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMzE0MSlcclxuICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcblxyXG4vLyBOb3JtYWxpemUgZm9ybSBjb250cm9sc1xyXG4vL1xyXG4vLyBXaGlsZSBtb3N0IG9mIG91ciBmb3JtIHN0eWxlcyByZXF1aXJlIGV4dHJhIGNsYXNzZXMsIHNvbWUgYmFzaWMgbm9ybWFsaXphdGlvblxyXG4vLyBpcyByZXF1aXJlZCB0byBlbnN1cmUgb3B0aW11bSBkaXNwbGF5IHdpdGggb3Igd2l0aG91dCB0aG9zZSBjbGFzc2VzIHRvIGJldHRlclxyXG4vLyBhZGRyZXNzIGJyb3dzZXIgaW5jb25zaXN0ZW5jaWVzLlxyXG5cclxuLy8gT3ZlcnJpZGUgY29udGVudC1ib3ggaW4gTm9ybWFsaXplICgqIGlzbid0IHNwZWNpZmljIGVub3VnaClcclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XHJcbiAgLmJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbn1cclxuXHJcbi8vIFBvc2l0aW9uIHJhZGlvcyBhbmQgY2hlY2tib3hlcyBiZXR0ZXJcclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gIG1hcmdpbjogNHB4IDAgMDtcclxuICBtYXJnaW4tdG9wOiAxcHggXFw5OyAvLyBJRTgtOVxyXG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbi8vIFNldCB0aGUgaGVpZ2h0IG9mIGZpbGUgY29udHJvbHMgdG8gbWF0Y2ggdGV4dCBpbnB1dHNcclxuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4vLyBNYWtlIHJhbmdlIGlucHV0cyBiZWhhdmUgbGlrZSB0ZXh0dWFsIGZvcm0gY29udHJvbHNcclxuaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLy8gTWFrZSBtdWx0aXBsZSBzZWxlY3QgZWxlbWVudHMgaGVpZ2h0IG5vdCBmaXhlZFxyXG5zZWxlY3RbbXVsdGlwbGVdLFxyXG5zZWxlY3Rbc2l6ZV0ge1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLy8gRm9jdXMgZm9yIGZpbGUsIHJhZGlvLCBhbmQgY2hlY2tib3hcclxuaW5wdXRbdHlwZT1cImZpbGVcIl06Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpmb2N1cyxcclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzIHtcclxuICAudGFiLWZvY3VzKCk7XHJcbn1cclxuXHJcbi8vIEFkanVzdCBvdXRwdXQgZWxlbWVudFxyXG5vdXRwdXQge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmctdG9wOiAoQHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xyXG4gIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1iYXNlO1xyXG4gIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcclxuICBjb2xvcjogQGlucHV0LWNvbG9yO1xyXG59XHJcblxyXG5cclxuLy8gQ29tbW9uIGZvcm0gY29udHJvbHNcclxuLy9cclxuLy8gU2hhcmVkIHNpemUgYW5kIHR5cGUgcmVzZXRzIGZvciBmb3JtIGNvbnRyb2xzLiBBcHBseSBgLmZvcm0tY29udHJvbGAgdG8gYW55XHJcbi8vIG9mIHRoZSBmb2xsb3dpbmcgZm9ybSBjb250cm9sczpcclxuLy9cclxuLy8gc2VsZWN0XHJcbi8vIHRleHRhcmVhXHJcbi8vIGlucHV0W3R5cGU9XCJ0ZXh0XCJdXHJcbi8vIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXVxyXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl1cclxuLy8gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJkYXRlXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJtb250aFwiXVxyXG4vLyBpbnB1dFt0eXBlPVwidGltZVwiXVxyXG4vLyBpbnB1dFt0eXBlPVwid2Vla1wiXVxyXG4vLyBpbnB1dFt0eXBlPVwibnVtYmVyXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJlbWFpbFwiXVxyXG4vLyBpbnB1dFt0eXBlPVwidXJsXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJzZWFyY2hcIl1cclxuLy8gaW5wdXRbdHlwZT1cInRlbFwiXVxyXG4vLyBpbnB1dFt0eXBlPVwiY29sb3JcIl1cclxuXHJcbi5mb3JtLWNvbnRyb2wge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogQGlucHV0LWhlaWdodC1iYXNlOyAvLyBNYWtlIGlucHV0cyBhdCBsZWFzdCB0aGUgaGVpZ2h0IG9mIHRoZWlyIGJ1dHRvbiBjb3VudGVycGFydCAoYmFzZSBsaW5lLWhlaWdodCArIHBhZGRpbmcgKyBib3JkZXIpXHJcbiAgcGFkZGluZzogQHBhZGRpbmctYmFzZS12ZXJ0aWNhbCBAcGFkZGluZy1iYXNlLWhvcml6b250YWw7XHJcbiAgZm9udC1zaXplOiBAZm9udC1zaXplLWJhc2U7XHJcbiAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodC1iYXNlO1xyXG4gIGNvbG9yOiBAaW5wdXQtY29sb3I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogQGlucHV0LWJnO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcclxuICBib3JkZXI6IDFweCBzb2xpZCBAaW5wdXQtYm9yZGVyO1xyXG4gIGJvcmRlci1yYWRpdXM6IEBpbnB1dC1ib3JkZXItcmFkaXVzOyAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiA8c2VsZWN0PnMgaW4gQ1NTLlxyXG4gIC5ib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpKTtcclxuICAudHJhbnNpdGlvbih+XCJib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgLjE1cywgYm94LXNoYWRvdyBlYXNlLWluLW91dCAuMTVzXCIpO1xyXG5cclxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXHJcbiAgLmZvcm0tY29udHJvbC1mb2N1cygpO1xyXG5cclxuICAvLyBQbGFjZWhvbGRlclxyXG4gIC5wbGFjZWhvbGRlcigpO1xyXG5cclxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xyXG4gIC8vXHJcbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcclxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxyXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cclxuICAmW2Rpc2FibGVkXSxcclxuICAmW3JlYWRvbmx5XSxcclxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW5wdXQtYmctZGlzYWJsZWQ7XHJcbiAgICBvcGFjaXR5OiAxOyAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1XHJcbiAgfVxyXG5cclxuICAmW2Rpc2FibGVkXSxcclxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XHJcbiAgICBjdXJzb3I6IEBjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgfVxyXG5cclxuICAvLyBSZXNldCBoZWlnaHQgZm9yIGB0ZXh0YXJlYWBzXHJcbiAgdGV4dGFyZWEmIHtcclxuICAgIGhlaWdodDogYXV0bztcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBTZWFyY2ggaW5wdXRzIGluIGlPU1xyXG4vL1xyXG4vLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXHJcbi8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxyXG4vLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXHJcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXHJcblxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcblxyXG4vLyBTcGVjaWFsIHN0eWxlcyBmb3IgaU9TIHRlbXBvcmFsIGlucHV0c1xyXG4vL1xyXG4vLyBJbiBNb2JpbGUgU2FmYXJpLCBzZXR0aW5nIGBkaXNwbGF5OiBibG9ja2Agb24gdGVtcG9yYWwgaW5wdXRzIGNhdXNlcyB0aGVcclxuLy8gdGV4dCB3aXRoaW4gdGhlIGlucHV0IHRvIGJlY29tZSB2ZXJ0aWNhbGx5IG1pc2FsaWduZWQuIEFzIGEgd29ya2Fyb3VuZCwgd2VcclxuLy8gc2V0IGEgcGl4ZWwgbGluZS1oZWlnaHQgdGhhdCBtYXRjaGVzIHRoZSBnaXZlbiBoZWlnaHQgb2YgdGhlIGlucHV0LCBidXQgb25seVxyXG4vLyBmb3IgU2FmYXJpLiBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTg0OFxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMCkge1xyXG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxyXG4gIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxyXG4gIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcclxuICBpbnB1dFt0eXBlPVwibW9udGhcIl0ge1xyXG4gICAgbGluZS1oZWlnaHQ6IEBpbnB1dC1oZWlnaHQtYmFzZTtcclxuXHJcbiAgICAmLmlucHV0LXNtLFxyXG4gICAgLmlucHV0LWdyb3VwLXNtICYge1xyXG4gICAgICBsaW5lLWhlaWdodDogQGlucHV0LWhlaWdodC1zbWFsbDtcclxuICAgIH1cclxuXHJcbiAgICAmLmlucHV0LWxnLFxyXG4gICAgLmlucHV0LWdyb3VwLWxnICYge1xyXG4gICAgICBsaW5lLWhlaWdodDogQGlucHV0LWhlaWdodC1sYXJnZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBGb3JtIGdyb3Vwc1xyXG4vL1xyXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXHJcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXHJcblxyXG4uZm9ybS1ncm91cCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogQGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcclxufVxyXG5cclxuXHJcbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xyXG4vL1xyXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxyXG5cclxuLnJhZGlvLFxyXG4uY2hlY2tib3gge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblxyXG4gIGxhYmVsIHtcclxuICAgIG1pbi1oZWlnaHQ6IEBsaW5lLWhlaWdodC1jb21wdXRlZDsgLy8gRW5zdXJlIHRoZSBpbnB1dCBkb2Vzbid0IGp1bXAgd2hlbiB0aGVyZSBpcyBubyB0ZXh0XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbn1cclxuLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuLnJhZGlvLWlubGluZSBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXHJcbi5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXHJcbi5jaGVja2JveC1pbmxpbmUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xyXG4gIG1hcmdpbi10b3A6IDRweCBcXDk7XHJcbn1cclxuXHJcbi5yYWRpbyArIC5yYWRpbyxcclxuLmNoZWNrYm94ICsgLmNoZWNrYm94IHtcclxuICBtYXJnaW4tdG9wOiAtNXB4OyAvLyBNb3ZlIHVwIHNpYmxpbmcgcmFkaW9zIG9yIGNoZWNrYm94ZXMgZm9yIHRpZ2h0ZXIgc3BhY2luZ1xyXG59XHJcblxyXG4vLyBSYWRpb3MgYW5kIGNoZWNrYm94ZXMgb24gc2FtZSBsaW5lXHJcbi5yYWRpby1pbmxpbmUsXHJcbi5jaGVja2JveC1pbmxpbmUge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG4ucmFkaW8taW5saW5lICsgLnJhZGlvLWlubGluZSxcclxuLmNoZWNrYm94LWlubGluZSArIC5jaGVja2JveC1pbmxpbmUge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IC8vIHNwYWNlIG91dCBjb25zZWN1dGl2ZSBpbmxpbmUgY29udHJvbHNcclxufVxyXG5cclxuLy8gQXBwbHkgc2FtZSBkaXNhYmxlZCBjdXJzb3IgdHdlYWsgYXMgZm9yIGlucHV0c1xyXG4vLyBTb21lIHNwZWNpYWwgY2FyZSBpcyBuZWVkZWQgYmVjYXVzZSA8bGFiZWw+cyBkb24ndCBpbmhlcml0IHRoZWlyIHBhcmVudCdzIGBjdXJzb3JgLlxyXG4vL1xyXG4vLyBOb3RlOiBOZWl0aGVyIHJhZGlvcyBub3IgY2hlY2tib3hlcyBjYW4gYmUgcmVhZG9ubHkuXHJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAmW2Rpc2FibGVkXSxcclxuICAmLmRpc2FibGVkLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgIGN1cnNvcjogQGN1cnNvci1kaXNhYmxlZDtcclxuICB9XHJcbn1cclxuLy8gVGhlc2UgY2xhc3NlcyBhcmUgdXNlZCBkaXJlY3RseSBvbiA8bGFiZWw+c1xyXG4ucmFkaW8taW5saW5lLFxyXG4uY2hlY2tib3gtaW5saW5lIHtcclxuICAmLmRpc2FibGVkLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgIGN1cnNvcjogQGN1cnNvci1kaXNhYmxlZDtcclxuICB9XHJcbn1cclxuLy8gVGhlc2UgY2xhc3NlcyBhcmUgdXNlZCBvbiBlbGVtZW50cyB3aXRoIDxsYWJlbD4gZGVzY2VuZGFudHNcclxuLnJhZGlvLFxyXG4uY2hlY2tib3gge1xyXG4gICYuZGlzYWJsZWQsXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgbGFiZWwge1xyXG4gICAgICBjdXJzb3I6IEBjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gU3RhdGljIGZvcm0gY29udHJvbCB0ZXh0XHJcbi8vXHJcbi8vIEFwcGx5IGNsYXNzIHRvIGEgYHBgIGVsZW1lbnQgdG8gbWFrZSBhbnkgc3RyaW5nIG9mIHRleHQgYWxpZ24gd2l0aCBsYWJlbHMgaW5cclxuLy8gYSBob3Jpem9udGFsIGZvcm0gbGF5b3V0LlxyXG5cclxuLmZvcm0tY29udHJvbC1zdGF0aWMge1xyXG4gIC8vIFNpemUgaXQgYXBwcm9wcmlhdGVseSBuZXh0IHRvIHJlYWwgZm9ybSBjb250cm9sc1xyXG4gIHBhZGRpbmctdG9wOiAoQHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xyXG4gIHBhZGRpbmctYm90dG9tOiAoQHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xyXG4gIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBmcm9tIGBwYFxyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgbWluLWhlaWdodDogKEBsaW5lLWhlaWdodC1jb21wdXRlZCArIEBmb250LXNpemUtYmFzZSk7XHJcblxyXG4gICYuaW5wdXQtbGcsXHJcbiAgJi5pbnB1dC1zbSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEZvcm0gY29udHJvbCBzaXppbmdcclxuLy9cclxuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcclxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cclxuLy9cclxuLy8gVGhlIGAuZm9ybS1ncm91cC0qIGZvcm0tY29udHJvbGAgdmFyaWF0aW9ucyBhcmUgc2FkbHkgZHVwbGljYXRlZCB0byBhdm9pZCB0aGVcclxuLy8gaXNzdWUgZG9jdW1lbnRlZCBpbiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE1MDc0LlxyXG5cclxuLmlucHV0LXNtIHtcclxuICAuaW5wdXQtc2l6ZShAaW5wdXQtaGVpZ2h0LXNtYWxsOyBAcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDsgQHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDsgQGZvbnQtc2l6ZS1zbWFsbDsgQGxpbmUtaGVpZ2h0LXNtYWxsOyBAaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbn1cclxuLmZvcm0tZ3JvdXAtc20ge1xyXG4gIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgLmlucHV0LXNpemUoQGlucHV0LWhlaWdodC1zbWFsbDsgQHBhZGRpbmctc21hbGwtdmVydGljYWw7IEBwYWRkaW5nLXNtYWxsLWhvcml6b250YWw7IEBmb250LXNpemUtc21hbGw7IEBsaW5lLWhlaWdodC1zbWFsbDsgQGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gIH1cclxuICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XHJcbiAgICBoZWlnaHQ6IEBpbnB1dC1oZWlnaHQtc21hbGw7XHJcbiAgICBwYWRkaW5nOiBAcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCBAcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xyXG4gICAgZm9udC1zaXplOiBAZm9udC1zaXplLXNtYWxsO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodC1zbWFsbDtcclxuICAgIG1pbi1oZWlnaHQ6IChAbGluZS1oZWlnaHQtY29tcHV0ZWQgKyBAZm9udC1zaXplLXNtYWxsKTtcclxuICB9XHJcbn1cclxuXHJcbi5pbnB1dC1sZyB7XHJcbiAgLmlucHV0LXNpemUoQGlucHV0LWhlaWdodC1sYXJnZTsgQHBhZGRpbmctbGFyZ2UtdmVydGljYWw7IEBwYWRkaW5nLWxhcmdlLWhvcml6b250YWw7IEBmb250LXNpemUtbGFyZ2U7IEBsaW5lLWhlaWdodC1sYXJnZTsgQGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2UpO1xyXG59XHJcbi5mb3JtLWdyb3VwLWxnIHtcclxuICAuZm9ybS1jb250cm9sIHtcclxuICAgIC5pbnB1dC1zaXplKEBpbnB1dC1oZWlnaHQtbGFyZ2U7IEBwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOyBAcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOyBAZm9udC1zaXplLWxhcmdlOyBAbGluZS1oZWlnaHQtbGFyZ2U7IEBpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlKTtcclxuICB9XHJcbiAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xyXG4gICAgaGVpZ2h0OiBAaW5wdXQtaGVpZ2h0LWxhcmdlO1xyXG4gICAgcGFkZGluZzogQHBhZGRpbmctbGFyZ2UtdmVydGljYWwgQHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcclxuICAgIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1sYXJnZTtcclxuICAgIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtbGFyZ2U7XHJcbiAgICBtaW4taGVpZ2h0OiAoQGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgQGZvbnQtc2l6ZS1sYXJnZSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRm9ybSBjb250cm9sIGZlZWRiYWNrIHN0YXRlc1xyXG4vL1xyXG4vLyBBcHBseSBjb250ZXh0dWFsIGFuZCBzZW1hbnRpYyBzdGF0ZXMgdG8gaW5kaXZpZHVhbCBmb3JtIGNvbnRyb2xzLlxyXG5cclxuLmhhcy1mZWVkYmFjayB7XHJcbiAgLy8gRW5hYmxlIGFic29sdXRlIHBvc2l0aW9uaW5nXHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAvLyBFbnN1cmUgaWNvbnMgZG9uJ3Qgb3ZlcmxhcCB0ZXh0XHJcbiAgLmZvcm0tY29udHJvbCB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAoQGlucHV0LWhlaWdodC1iYXNlICogMS4yNSk7XHJcbiAgfVxyXG59XHJcbi8vIEZlZWRiYWNrIGljb24gKHJlcXVpcmVzIC5nbHlwaGljb24gY2xhc3NlcylcclxuLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICByaWdodDogMDtcclxuICB6LWluZGV4OiAyOyAvLyBFbnN1cmUgaWNvbiBpcyBhYm92ZSBpbnB1dCBncm91cHNcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogQGlucHV0LWhlaWdodC1iYXNlO1xyXG4gIGhlaWdodDogQGlucHV0LWhlaWdodC1iYXNlO1xyXG4gIGxpbmUtaGVpZ2h0OiBAaW5wdXQtaGVpZ2h0LWJhc2U7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcbi5pbnB1dC1sZyArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xyXG4gIHdpZHRoOiBAaW5wdXQtaGVpZ2h0LWxhcmdlO1xyXG4gIGhlaWdodDogQGlucHV0LWhlaWdodC1sYXJnZTtcclxuICBsaW5lLWhlaWdodDogQGlucHV0LWhlaWdodC1sYXJnZTtcclxufVxyXG4uaW5wdXQtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcclxuICB3aWR0aDogQGlucHV0LWhlaWdodC1zbWFsbDtcclxuICBoZWlnaHQ6IEBpbnB1dC1oZWlnaHQtc21hbGw7XHJcbiAgbGluZS1oZWlnaHQ6IEBpbnB1dC1oZWlnaHQtc21hbGw7XHJcbn1cclxuXHJcbi8vIEZlZWRiYWNrIHN0YXRlc1xyXG4uaGFzLXN1Y2Nlc3Mge1xyXG4gIC5mb3JtLWNvbnRyb2wtdmFsaWRhdGlvbihAc3RhdGUtc3VjY2Vzcy10ZXh0OyBAc3RhdGUtc3VjY2Vzcy10ZXh0OyBAc3RhdGUtc3VjY2Vzcy1iZyk7XHJcbn1cclxuLmhhcy13YXJuaW5nIHtcclxuICAuZm9ybS1jb250cm9sLXZhbGlkYXRpb24oQHN0YXRlLXdhcm5pbmctdGV4dDsgQHN0YXRlLXdhcm5pbmctdGV4dDsgQHN0YXRlLXdhcm5pbmctYmcpO1xyXG59XHJcbi5oYXMtZXJyb3Ige1xyXG4gIC5mb3JtLWNvbnRyb2wtdmFsaWRhdGlvbihAc3RhdGUtZGFuZ2VyLXRleHQ7IEBzdGF0ZS1kYW5nZXItdGV4dDsgQHN0YXRlLWRhbmdlci1iZyk7XHJcbn1cclxuXHJcbi8vIFJlcG9zaXRpb24gZmVlZGJhY2sgaWNvbiBpZiBpbnB1dCBoYXMgdmlzaWJsZSBsYWJlbCBhYm92ZVxyXG4uaGFzLWZlZWRiYWNrIGxhYmVsIHtcclxuXHJcbiAgJiB+IC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xyXG4gICAgIHRvcDogKEBsaW5lLWhlaWdodC1jb21wdXRlZCArIDUpOyAvLyBIZWlnaHQgb2YgdGhlIGBsYWJlbGAgYW5kIGl0cyBtYXJnaW5cclxuICB9XHJcbiAgJi5zci1vbmx5IH4gLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XHJcbiAgICAgdG9wOiAwO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEhlbHAgdGV4dFxyXG4vL1xyXG4vLyBBcHBseSB0byBhbnkgZWxlbWVudCB5b3Ugd2lzaCB0byBjcmVhdGUgbGlnaHQgdGV4dCBmb3IgcGxhY2VtZW50IGltbWVkaWF0ZWx5XHJcbi8vIGJlbG93IGEgZm9ybSBjb250cm9sLiBVc2UgZm9yIGdlbmVyYWwgaGVscCwgZm9ybWF0dGluZywgb3IgaW5zdHJ1Y3Rpb25hbCB0ZXh0LlxyXG5cclxuLmhlbHAtYmxvY2sge1xyXG4gIGRpc3BsYXk6IGJsb2NrOyAvLyBhY2NvdW50IGZvciBhbnkgZWxlbWVudCB1c2luZyBoZWxwLWJsb2NrXHJcbiAgbWFyZ2luLXRvcDogNXB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgY29sb3I6IGxpZ2h0ZW4oQHRleHQtY29sb3IsIDI1JSk7IC8vIGxpZ2h0ZW4gdGhlIHRleHQgc29tZSBmb3IgY29udHJhc3RcclxufVxyXG5cclxuXHJcbi8vIElubGluZSBmb3Jtc1xyXG4vL1xyXG4vLyBNYWtlIGZvcm1zIGFwcGVhciBpbmxpbmUoLWJsb2NrKSBieSBhZGRpbmcgdGhlIGAuZm9ybS1pbmxpbmVgIGNsYXNzLiBJbmxpbmVcclxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXHJcbi8vIHZpZXdwb3J0cyByZWFjaCA8NzY4cHguXHJcbi8vXHJcbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2ZcclxuLy8gZGVmYXVsdCBIVE1MIGZvcm0gY29udHJvbHMgYW5kIG91ciBjdXN0b20gZm9ybSBjb250cm9scyAoZS5nLiwgaW5wdXQgZ3JvdXBzKS5cclxuLy9cclxuLy8gSGVhZHMgdXAhIFRoaXMgaXMgbWl4aW4tZWQgaW50byBgLm5hdmJhci1mb3JtYCBpbiBuYXZiYXJzLmxlc3MuXHJcblxyXG4uZm9ybS1pbmxpbmUge1xyXG5cclxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1zbS1taW4pIHtcclxuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxyXG4gICAgLmZvcm0tZ3JvdXAge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gSW4gbmF2YmFyLWZvcm0sIGFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXHJcbiAgICAuZm9ybS1jb250cm9sIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB3aWR0aDogYXV0bzsgLy8gUHJldmVudCBsYWJlbHMgZnJvbSBzdGFja2luZyBhYm92ZSBpbnB1dHMgaW4gYC5mb3JtLWdyb3VwYFxyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIE1ha2Ugc3RhdGljIGNvbnRyb2xzIGJlaGF2ZSBsaWtlIHJlZ3VsYXIgb25lc1xyXG4gICAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLmlucHV0LWdyb3VwIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLXRhYmxlO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cclxuICAgICAgLmlucHV0LWdyb3VwLWFkZG9uLFxyXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuLFxyXG4gICAgICAuZm9ybS1jb250cm9sIHtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIElucHV0IGdyb3VwcyBuZWVkIHRoYXQgMTAwJSB3aWR0aCB0aG91Z2hcclxuICAgIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAuY29udHJvbC1sYWJlbCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIG9uIHJhZGlvcy9jaGVja2JveGVzIHRoYXQgd2VyZSB1c2VkIGZvciBzdGFja2luZywgYW5kXHJcbiAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cclxuICAgIC5yYWRpbyxcclxuICAgIC5jaGVja2JveCB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHJcbiAgICAgIGxhYmVsIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5yYWRpbyBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXHJcbiAgICAuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBSZS1vdmVycmlkZSB0aGUgZmVlZGJhY2sgaWNvbi5cclxuICAgIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XHJcbiAgICAgIHRvcDogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBIb3Jpem9udGFsIGZvcm1zXHJcbi8vXHJcbi8vIEhvcml6b250YWwgZm9ybXMgYXJlIGJ1aWx0IG9uIGdyaWQgY2xhc3NlcyBhbmQgYWxsb3cgeW91IHRvIGNyZWF0ZSBmb3JtcyB3aXRoXHJcbi8vIGxhYmVscyBvbiB0aGUgbGVmdCBhbmQgaW5wdXRzIG9uIHRoZSByaWdodC5cclxuXHJcbi5mb3JtLWhvcml6b250YWwge1xyXG5cclxuICAvLyBDb25zaXN0ZW50IHZlcnRpY2FsIGFsaWdubWVudCBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXNcclxuICAvL1xyXG4gIC8vIExhYmVscyBhbHNvIGdldCBzb21lIHJlc2V0IHN0eWxlcywgYnV0IHRoYXQgaXMgc2NvcGVkIHRvIGEgbWVkaWEgcXVlcnkgYmVsb3cuXHJcbiAgLnJhZGlvLFxyXG4gIC5jaGVja2JveCxcclxuICAucmFkaW8taW5saW5lLFxyXG4gIC5jaGVja2JveC1pbmxpbmUge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBwYWRkaW5nLXRvcDogKEBwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTsgLy8gRGVmYXVsdCBwYWRkaW5nIHBsdXMgYSBib3JkZXJcclxuICB9XHJcbiAgLy8gQWNjb3VudCBmb3IgcGFkZGluZyB3ZSdyZSBhZGRpbmcgdG8gZW5zdXJlIHRoZSBhbGlnbm1lbnQgYW5kIG9mIGhlbHAgdGV4dFxyXG4gIC8vIGFuZCBvdGhlciBjb250ZW50IGJlbG93IGl0ZW1zXHJcbiAgLnJhZGlvLFxyXG4gIC5jaGVja2JveCB7XHJcbiAgICBtaW4taGVpZ2h0OiAoQGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKEBwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKSk7XHJcbiAgfVxyXG5cclxuICAvLyBNYWtlIGZvcm0gZ3JvdXBzIGJlaGF2ZSBsaWtlIHJvd3NcclxuICAuZm9ybS1ncm91cCB7XHJcbiAgICAubWFrZS1yb3coKTtcclxuICB9XHJcblxyXG4gIC8vIFJlc2V0IHNwYWNpbmcgYW5kIHJpZ2h0IGFsaWduIGxhYmVscywgYnV0IHNjb3BlIHRvIG1lZGlhIHF1ZXJpZXMgc28gdGhhdFxyXG4gIC8vIGxhYmVscyBvbiBuYXJyb3cgdmlld3BvcnRzIHN0YWNrIHRoZSBzYW1lIGFzIGEgZGVmYXVsdCBmb3JtIGV4YW1wbGUuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tc20tbWluKSB7XHJcbiAgICAuY29udHJvbC1sYWJlbCB7XHJcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICBwYWRkaW5nLXRvcDogKEBwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTsgLy8gRGVmYXVsdCBwYWRkaW5nIHBsdXMgYSBib3JkZXJcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIFZhbGlkYXRpb24gc3RhdGVzXHJcbiAgLy9cclxuICAvLyBSZXBvc2l0aW9uIHRoZSBpY29uIGJlY2F1c2UgaXQncyBub3cgd2l0aGluIGEgZ3JpZCBjb2x1bW4gYW5kIGNvbHVtbnMgaGF2ZVxyXG4gIC8vIGBwb3NpdGlvbjogcmVsYXRpdmU7YCBvbiB0aGVtLiBBbHNvIGFjY291bnRzIGZvciB0aGUgZ3JpZCBndXR0ZXIgcGFkZGluZy5cclxuICAuaGFzLWZlZWRiYWNrIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xyXG4gICAgcmlnaHQ6IChAZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcclxuICB9XHJcblxyXG4gIC8vIEZvcm0gZ3JvdXAgc2l6ZXNcclxuICAvL1xyXG4gIC8vIFF1aWNrIHV0aWxpdHkgY2xhc3MgZm9yIGFwcGx5aW5nIGAuaW5wdXQtbGdgIGFuZCBgLmlucHV0LXNtYCBzdHlsZXMgdG8gdGhlXHJcbiAgLy8gaW5wdXRzIGFuZCBsYWJlbHMgd2l0aGluIGEgYC5mb3JtLWdyb3VwYC5cclxuICAuZm9ybS1ncm91cC1sZyB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1zbS1taW4pIHtcclxuICAgICAgLmNvbnRyb2wtbGFiZWwge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAoKEBwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICogQGxpbmUtaGVpZ2h0LWxhcmdlKSArIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5mb3JtLWdyb3VwLXNtIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikge1xyXG4gICAgICAuY29udHJvbC1sYWJlbCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IChAcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCArIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIEZvcm0gdmFsaWRhdGlvbiBzdGF0ZXNcclxuLy9cclxuLy8gVXNlZCBpbiBmb3Jtcy5sZXNzIHRvIGdlbmVyYXRlIHRoZSBmb3JtIHZhbGlkYXRpb24gQ1NTIGZvciB3YXJuaW5ncywgZXJyb3JzLFxyXG4vLyBhbmQgc3VjY2Vzc2VzLlxyXG5cclxuLmZvcm0tY29udHJvbC12YWxpZGF0aW9uKEB0ZXh0LWNvbG9yOiAjNTU1OyBAYm9yZGVyLWNvbG9yOiAjY2NjOyBAYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNSkge1xyXG4gIC8vIENvbG9yIHRoZSBsYWJlbCBhbmQgaGVscCB0ZXh0XHJcbiAgLmhlbHAtYmxvY2ssXHJcbiAgLmNvbnRyb2wtbGFiZWwsXHJcbiAgLnJhZGlvLFxyXG4gIC5jaGVja2JveCxcclxuICAucmFkaW8taW5saW5lLFxyXG4gIC5jaGVja2JveC1pbmxpbmUsXHJcbiAgJi5yYWRpbyBsYWJlbCxcclxuICAmLmNoZWNrYm94IGxhYmVsLFxyXG4gICYucmFkaW8taW5saW5lIGxhYmVsLFxyXG4gICYuY2hlY2tib3gtaW5saW5lIGxhYmVsICB7XHJcbiAgICBjb2xvcjogQHRleHQtY29sb3I7XHJcbiAgfVxyXG4gIC8vIFNldCB0aGUgYm9yZGVyIGFuZCBib3ggc2hhZG93IG9uIHNwZWNpZmljIGlucHV0cyB0byBtYXRjaFxyXG4gIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgYm9yZGVyLWNvbG9yOiBAYm9yZGVyLWNvbG9yO1xyXG4gICAgLmJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpOyAvLyBSZWRlY2xhcmUgc28gdHJhbnNpdGlvbnMgd29ya1xyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKEBib3JkZXItY29sb3IsIDEwJSk7XHJcbiAgICAgIEBzaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgNnB4IGxpZ2h0ZW4oQGJvcmRlci1jb2xvciwgMjAlKTtcclxuICAgICAgLmJveC1zaGFkb3coQHNoYWRvdyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIFNldCB2YWxpZGF0aW9uIHN0YXRlcyBhbHNvIGZvciBhZGRvbnNcclxuICAuaW5wdXQtZ3JvdXAtYWRkb24ge1xyXG4gICAgY29sb3I6IEB0ZXh0LWNvbG9yO1xyXG4gICAgYm9yZGVyLWNvbG9yOiBAYm9yZGVyLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGJhY2tncm91bmQtY29sb3I7XHJcbiAgfVxyXG4gIC8vIE9wdGlvbmFsIGZlZWRiYWNrIGljb25cclxuICAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcclxuICAgIGNvbG9yOiBAdGV4dC1jb2xvcjtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcclxuLy9cclxuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcclxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGBAaW5wdXQtYm9yZGVyLWZvY3VzYCB2YXJpYWJsZS5cclxuLy9cclxuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXHJcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXHJcbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcclxuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxyXG4vL1xyXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXHJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cclxuLmZvcm0tY29udHJvbC1mb2N1cyhAY29sb3I6IEBpbnB1dC1ib3JkZXItZm9jdXMpIHtcclxuICBAY29sb3ItcmdiYTogcmdiYShyZWQoQGNvbG9yKSwgZ3JlZW4oQGNvbG9yKSwgYmx1ZShAY29sb3IpLCAuNik7XHJcbiAgJjpmb2N1cyB7XHJcbiAgICBib3JkZXItY29sb3I6IEBjb2xvcjtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICAuYm94LXNoYWRvdyh+XCJpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwgMCAwIDhweCBAe2NvbG9yLXJnYmF9XCIpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xyXG4vL1xyXG4vLyBSZWxhdGl2ZSB0ZXh0IHNpemUsIHBhZGRpbmcsIGFuZCBib3JkZXItcmFkaWkgY2hhbmdlcyBmb3IgZm9ybSBjb250cm9scy4gRm9yXHJcbi8vIGhvcml6b250YWwgc2l6aW5nLCB3cmFwIGNvbnRyb2xzIGluIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy4gYDxzZWxlY3Q+YFxyXG4vLyBlbGVtZW50IGdldHMgc3BlY2lhbCBsb3ZlIGJlY2F1c2UgaXQncyBzcGVjaWFsLCBhbmQgdGhhdCdzIGEgZmFjdCFcclxuLmlucHV0LXNpemUoQGlucHV0LWhlaWdodDsgQHBhZGRpbmctdmVydGljYWw7IEBwYWRkaW5nLWhvcml6b250YWw7IEBmb250LXNpemU7IEBsaW5lLWhlaWdodDsgQGJvcmRlci1yYWRpdXMpIHtcclxuICBoZWlnaHQ6IEBpbnB1dC1oZWlnaHQ7XHJcbiAgcGFkZGluZzogQHBhZGRpbmctdmVydGljYWwgQHBhZGRpbmctaG9yaXpvbnRhbDtcclxuICBmb250LXNpemU6IEBmb250LXNpemU7XHJcbiAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodDtcclxuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cztcclxuXHJcbiAgc2VsZWN0JiB7XHJcbiAgICBoZWlnaHQ6IEBpbnB1dC1oZWlnaHQ7XHJcbiAgICBsaW5lLWhlaWdodDogQGlucHV0LWhlaWdodDtcclxuICB9XHJcblxyXG4gIHRleHRhcmVhJixcclxuICBzZWxlY3RbbXVsdGlwbGVdJiB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIEJ1dHRvbnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBCYXNlIHN0eWxlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmJ0biB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIEZvciBpbnB1dC5idG5cclxuICBmb250LXdlaWdodDogQGJ0bi1mb250LXdlaWdodDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MvaXNzdWVzLzIxNFxyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgLmJ1dHRvbi1zaXplKEBwYWRkaW5nLWJhc2UtdmVydGljYWw7IEBwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDsgQGZvbnQtc2l6ZS1iYXNlOyBAbGluZS1oZWlnaHQtYmFzZTsgQGJvcmRlci1yYWRpdXMtYmFzZSk7XHJcbiAgLnVzZXItc2VsZWN0KG5vbmUpO1xyXG5cclxuICAmLFxyXG4gICY6YWN0aXZlLFxyXG4gICYuYWN0aXZlIHtcclxuICAgICY6Zm9jdXMsXHJcbiAgICAmLmZvY3VzIHtcclxuICAgICAgLnRhYi1mb2N1cygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzLFxyXG4gICYuZm9jdXMge1xyXG4gICAgY29sb3I6IEBidG4tZGVmYXVsdC1jb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcblxyXG4gICY6YWN0aXZlLFxyXG4gICYuYWN0aXZlIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gICAgLmJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkpO1xyXG4gIH1cclxuXHJcbiAgJi5kaXNhYmxlZCxcclxuICAmW2Rpc2FibGVkXSxcclxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XHJcbiAgICBjdXJzb3I6IEBjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3NcclxuICAgIC5vcGFjaXR5KC42NSk7XHJcbiAgICAuYm94LXNoYWRvdyhub25lKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmJ0bi1kZWZhdWx0IHtcclxuICAuYnV0dG9uLXZhcmlhbnQoQGJ0bi1kZWZhdWx0LWNvbG9yOyBAYnRuLWRlZmF1bHQtYmc7IEBidG4tZGVmYXVsdC1ib3JkZXIpO1xyXG59XHJcbi5idG4tcHJpbWFyeSB7XHJcbiAgLmJ1dHRvbi12YXJpYW50KEBidG4tcHJpbWFyeS1jb2xvcjsgQGJ0bi1wcmltYXJ5LWJnOyBAYnRuLXByaW1hcnktYm9yZGVyKTtcclxufVxyXG4vLyBTdWNjZXNzIGFwcGVhcnMgYXMgZ3JlZW5cclxuLmJ0bi1zdWNjZXNzIHtcclxuICAuYnV0dG9uLXZhcmlhbnQoQGJ0bi1zdWNjZXNzLWNvbG9yOyBAYnRuLXN1Y2Nlc3MtYmc7IEBidG4tc3VjY2Vzcy1ib3JkZXIpO1xyXG59XHJcbi8vIEluZm8gYXBwZWFycyBhcyBibHVlLWdyZWVuXHJcbi5idG4taW5mbyB7XHJcbiAgLmJ1dHRvbi12YXJpYW50KEBidG4taW5mby1jb2xvcjsgQGJ0bi1pbmZvLWJnOyBAYnRuLWluZm8tYm9yZGVyKTtcclxufVxyXG4vLyBXYXJuaW5nIGFwcGVhcnMgYXMgb3JhbmdlXHJcbi5idG4td2FybmluZyB7XHJcbiAgLmJ1dHRvbi12YXJpYW50KEBidG4td2FybmluZy1jb2xvcjsgQGJ0bi13YXJuaW5nLWJnOyBAYnRuLXdhcm5pbmctYm9yZGVyKTtcclxufVxyXG4vLyBEYW5nZXIgYW5kIGVycm9yIGFwcGVhciBhcyByZWRcclxuLmJ0bi1kYW5nZXIge1xyXG4gIC5idXR0b24tdmFyaWFudChAYnRuLWRhbmdlci1jb2xvcjsgQGJ0bi1kYW5nZXItYmc7IEBidG4tZGFuZ2VyLWJvcmRlcik7XHJcbn1cclxuXHJcblxyXG4vLyBMaW5rIGJ1dHRvbnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcclxuLmJ0bi1saW5rIHtcclxuICBjb2xvcjogQGxpbmstY29sb3I7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBib3JkZXItcmFkaXVzOiAwO1xyXG5cclxuICAmLFxyXG4gICY6YWN0aXZlLFxyXG4gICYuYWN0aXZlLFxyXG4gICZbZGlzYWJsZWRdLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgLmJveC1zaGFkb3cobm9uZSk7XHJcbiAgfVxyXG4gICYsXHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzLFxyXG4gICY6YWN0aXZlIHtcclxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBjb2xvcjogQGxpbmstaG92ZXItY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IEBsaW5rLWhvdmVyLWRlY29yYXRpb247XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICB9XHJcbiAgJltkaXNhYmxlZF0sXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBjb2xvcjogQGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gQnV0dG9uIFNpemVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uYnRuLWxnIHtcclxuICAvLyBsaW5lLWhlaWdodDogZW5zdXJlIGV2ZW4tbnVtYmVyZWQgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIGxhcmdlIGlucHV0XHJcbiAgLmJ1dHRvbi1zaXplKEBwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOyBAcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOyBAZm9udC1zaXplLWxhcmdlOyBAbGluZS1oZWlnaHQtbGFyZ2U7IEBib3JkZXItcmFkaXVzLWxhcmdlKTtcclxufVxyXG4uYnRuLXNtIHtcclxuICAvLyBsaW5lLWhlaWdodDogZW5zdXJlIHByb3BlciBoZWlnaHQgb2YgYnV0dG9uIG5leHQgdG8gc21hbGwgaW5wdXRcclxuICAuYnV0dG9uLXNpemUoQHBhZGRpbmctc21hbGwtdmVydGljYWw7IEBwYWRkaW5nLXNtYWxsLWhvcml6b250YWw7IEBmb250LXNpemUtc21hbGw7IEBsaW5lLWhlaWdodC1zbWFsbDsgQGJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG59XHJcbi5idG4teHMge1xyXG4gIC5idXR0b24tc2l6ZShAcGFkZGluZy14cy12ZXJ0aWNhbDsgQHBhZGRpbmcteHMtaG9yaXpvbnRhbDsgQGZvbnQtc2l6ZS1zbWFsbDsgQGxpbmUtaGVpZ2h0LXNtYWxsOyBAYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbn1cclxuXHJcblxyXG4vLyBCbG9jayBidXR0b25cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5idG4tYmxvY2sge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vLyBWZXJ0aWNhbGx5IHNwYWNlIG91dCBtdWx0aXBsZSBibG9jayBidXR0b25zXHJcbi5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcclxuICBtYXJnaW4tdG9wOiA1cHg7XHJcbn1cclxuXHJcbi8vIFNwZWNpZmljaXR5IG92ZXJyaWRlc1xyXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxyXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXHJcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xyXG4gICYuYnRuLWJsb2NrIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxufVxyXG4iLCIvLyBCdXR0b24gdmFyaWFudHNcclxuLy9cclxuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxyXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcclxuXHJcbi5idXR0b24tdmFyaWFudChAY29sb3I7IEBiYWNrZ3JvdW5kOyBAYm9yZGVyKSB7XHJcbiAgY29sb3I6IEBjb2xvcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmFja2dyb3VuZDtcclxuICBib3JkZXItY29sb3I6IEBib3JkZXI7XHJcblxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyxcclxuICAmLmZvY3VzLFxyXG4gICY6YWN0aXZlLFxyXG4gICYuYWN0aXZlLFxyXG4gIC5vcGVuID4gLmRyb3Bkb3duLXRvZ2dsZSYge1xyXG4gICAgY29sb3I6IEBjb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAYmFja2dyb3VuZCwgMTAlKTtcclxuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbihAYm9yZGVyLCAxMiUpO1xyXG4gIH1cclxuICAmOmFjdGl2ZSxcclxuICAmLmFjdGl2ZSxcclxuICAub3BlbiA+IC5kcm9wZG93bi10b2dnbGUmIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbiAgfVxyXG4gICYuZGlzYWJsZWQsXHJcbiAgJltkaXNhYmxlZF0sXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgJixcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJi5mb2N1cyxcclxuICAgICY6YWN0aXZlLFxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmFja2dyb3VuZDtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogQGJvcmRlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5iYWRnZSB7XHJcbiAgICBjb2xvcjogQGJhY2tncm91bmQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3I7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBCdXR0b24gc2l6ZXNcclxuLmJ1dHRvbi1zaXplKEBwYWRkaW5nLXZlcnRpY2FsOyBAcGFkZGluZy1ob3Jpem9udGFsOyBAZm9udC1zaXplOyBAbGluZS1oZWlnaHQ7IEBib3JkZXItcmFkaXVzKSB7XHJcbiAgcGFkZGluZzogQHBhZGRpbmctdmVydGljYWwgQHBhZGRpbmctaG9yaXpvbnRhbDtcclxuICBmb250LXNpemU6IEBmb250LXNpemU7XHJcbiAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodDtcclxuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cztcclxufVxyXG4iLCIvLyBPcGFjaXR5XHJcblxyXG4ub3BhY2l0eShAb3BhY2l0eSkge1xyXG4gIG9wYWNpdHk6IEBvcGFjaXR5O1xyXG4gIC8vIElFOCBmaWx0ZXJcclxuICBAb3BhY2l0eS1pZTogKEBvcGFjaXR5ICogMTAwKTtcclxuICBmaWx0ZXI6IH5cImFscGhhKG9wYWNpdHk9QHtvcGFjaXR5LWllfSlcIjtcclxufVxyXG4iLCIvL1xyXG4vLyBCdXR0b24gZ3JvdXBzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cclxuLmJ0bi1ncm91cCxcclxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxyXG4gID4gLmJ0biB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjphY3RpdmUsXHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXHJcbi5idG4tZ3JvdXAge1xyXG4gIC5idG4gKyAuYnRuLFxyXG4gIC5idG4gKyAuYnRuLWdyb3VwLFxyXG4gIC5idG4tZ3JvdXAgKyAuYnRuLFxyXG4gIC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xyXG4gIH1cclxufVxyXG5cclxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxyXG4uYnRuLXRvb2xiYXIge1xyXG4gIG1hcmdpbi1sZWZ0OiAtNXB4OyAvLyBPZmZzZXQgdGhlIGZpcnN0IGNoaWxkJ3MgbWFyZ2luXHJcbiAgJjpleHRlbmQoLmNsZWFyZml4IGFsbCk7XHJcblxyXG4gIC5idG4tZ3JvdXAsXHJcbiAgLmlucHV0LWdyb3VwIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gIH1cclxuICA+IC5idG4sXHJcbiAgPiAuYnRuLWdyb3VwLFxyXG4gID4gLmlucHV0LWdyb3VwIHtcclxuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uYnRuLWdyb3VwID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxufVxyXG5cclxuLy8gU2V0IGNvcm5lcnMgaW5kaXZpZHVhbCBiZWNhdXNlIHNvbWV0aW1lcyBhIHNpbmdsZSBidXR0b24gY2FuIGJlIGluIGEgLmJ0bi1ncm91cCBhbmQgd2UgbmVlZCA6Zmlyc3QtY2hpbGQgYW5kIDpsYXN0LWNoaWxkIHRvIGJvdGggbWF0Y2hcclxuLmJ0bi1ncm91cCA+IC5idG46Zmlyc3QtY2hpbGQge1xyXG4gIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICY6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSkge1xyXG4gICAgLmJvcmRlci1yaWdodC1yYWRpdXMoMCk7XHJcbiAgfVxyXG59XHJcbi8vIE5lZWQgLmRyb3Bkb3duLXRvZ2dsZSBzaW5jZSA6bGFzdC1jaGlsZCBkb2Vzbid0IGFwcGx5IGdpdmVuIGEgLmRyb3Bkb3duLW1lbnUgaW1tZWRpYXRlbHkgYWZ0ZXIgaXRcclxuLmJ0bi1ncm91cCA+IC5idG46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcclxuLmJ0bi1ncm91cCA+IC5kcm9wZG93bi10b2dnbGU6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gIC5ib3JkZXItbGVmdC1yYWRpdXMoMCk7XHJcbn1cclxuXHJcbi8vIEN1c3RvbSBlZGl0cyBmb3IgaW5jbHVkaW5nIGJ0bi1ncm91cHMgd2l0aGluIGJ0bi1ncm91cHMgKHVzZWZ1bCBmb3IgaW5jbHVkaW5nIGRyb3Bkb3duIGJ1dHRvbnMgd2l0aGluIGEgYnRuLWdyb3VwKVxyXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cCB7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbn1cclxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbn1cclxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgPiAuYnRuOmxhc3QtY2hpbGQsXHJcbiAgPiAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIC5ib3JkZXItcmlnaHQtcmFkaXVzKDApO1xyXG4gIH1cclxufVxyXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bjpmaXJzdC1jaGlsZCB7XHJcbiAgLmJvcmRlci1sZWZ0LXJhZGl1cygwKTtcclxufVxyXG5cclxuLy8gT24gYWN0aXZlIGFuZCBvcGVuLCBkb24ndCBzaG93IG91dGxpbmVcclxuLmJ0bi1ncm91cCAuZHJvcGRvd24tdG9nZ2xlOmFjdGl2ZSxcclxuLmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGUge1xyXG4gIG91dGxpbmU6IDA7XHJcbn1cclxuXHJcblxyXG4vLyBTaXppbmdcclxuLy9cclxuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXHJcblxyXG4uYnRuLWdyb3VwLXhzID4gLmJ0biB7ICY6ZXh0ZW5kKC5idG4teHMpOyB9XHJcbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgJjpleHRlbmQoLmJ0bi1zbSk7IH1cclxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyAmOmV4dGVuZCguYnRuLWxnKTsgfVxyXG5cclxuXHJcbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gR2l2ZSB0aGUgbGluZSBiZXR3ZWVuIGJ1dHRvbnMgc29tZSBkZXB0aFxyXG4uYnRuLWdyb3VwID4gLmJ0biArIC5kcm9wZG93bi10b2dnbGUge1xyXG4gIHBhZGRpbmctbGVmdDogOHB4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcclxufVxyXG4uYnRuLWdyb3VwID4gLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUge1xyXG4gIHBhZGRpbmctbGVmdDogMTJweDtcclxuICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xyXG59XHJcblxyXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcclxuLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBhbmQgc2V0IHRoZSBzYW1lIGluc2V0IHNoYWRvdyBhcyB0aGUgOmFjdGl2ZSBzdGF0ZVxyXG4uYnRuLWdyb3VwLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgLmJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkpO1xyXG5cclxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXHJcbiAgJi5idG4tbGluayB7XHJcbiAgICAuYm94LXNoYWRvdyhub25lKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBSZXBvc2l0aW9uIHRoZSBjYXJldFxyXG4uYnRuIC5jYXJldCB7XHJcbiAgbWFyZ2luLWxlZnQ6IDA7XHJcbn1cclxuLy8gQ2FyZXRzIGluIG90aGVyIGJ1dHRvbiBzaXplc1xyXG4uYnRuLWxnIC5jYXJldCB7XHJcbiAgYm9yZGVyLXdpZHRoOiBAY2FyZXQtd2lkdGgtbGFyZ2UgQGNhcmV0LXdpZHRoLWxhcmdlIDA7XHJcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcclxufVxyXG4vLyBVcHNpZGUgZG93biBjYXJldHMgZm9yIC5kcm9wdXBcclxuLmRyb3B1cCAuYnRuLWxnIC5jYXJldCB7XHJcbiAgYm9yZGVyLXdpZHRoOiAwIEBjYXJldC13aWR0aC1sYXJnZSBAY2FyZXQtd2lkdGgtbGFyZ2U7XHJcbn1cclxuXHJcblxyXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5idG4tZ3JvdXAtdmVydGljYWwge1xyXG4gID4gLmJ0bixcclxuICA+IC5idG4tZ3JvdXAsXHJcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZsb2F0OiBub25lO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICAvLyBDbGVhciBmbG9hdHMgc28gZHJvcGRvd24gbWVudXMgY2FuIGJlIHByb3Blcmx5IHBsYWNlZFxyXG4gID4gLmJ0bi1ncm91cCB7XHJcbiAgICAmOmV4dGVuZCguY2xlYXJmaXggYWxsKTtcclxuICAgID4gLmJ0biB7XHJcbiAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiAuYnRuICsgLmJ0bixcclxuICA+IC5idG4gKyAuYnRuLWdyb3VwLFxyXG4gID4gLmJ0bi1ncm91cCArIC5idG4sXHJcbiAgPiAuYnRuLWdyb3VwICsgLmJ0bi1ncm91cCB7XHJcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB7XHJcbiAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgfVxyXG4gICY6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogQGJvcmRlci1yYWRpdXMtYmFzZTtcclxuICAgIC5ib3JkZXItYm90dG9tLXJhZGl1cygwKTtcclxuICB9XHJcbiAgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWJhc2U7XHJcbiAgICAuYm9yZGVyLXRvcC1yYWRpdXMoMCk7XHJcbiAgfVxyXG59XHJcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcclxuICBib3JkZXItcmFkaXVzOiAwO1xyXG59XHJcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gID4gLmJ0bjpsYXN0LWNoaWxkLFxyXG4gID4gLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgICAuYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XHJcbiAgfVxyXG59XHJcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcclxuICAuYm9yZGVyLXRvcC1yYWRpdXMoMCk7XHJcbn1cclxuXHJcblxyXG4vLyBKdXN0aWZpZWQgYnV0dG9uIGdyb3Vwc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uYnRuLWdyb3VwLWp1c3RpZmllZCB7XHJcbiAgZGlzcGxheTogdGFibGU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcclxuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xyXG4gID4gLmJ0bixcclxuICA+IC5idG4tZ3JvdXAge1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgd2lkdGg6IDElO1xyXG4gIH1cclxuICA+IC5idG4tZ3JvdXAgLmJ0biB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gID4gLmJ0bi1ncm91cCAuZHJvcGRvd24tbWVudSB7XHJcbiAgICBsZWZ0OiBhdXRvO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIENoZWNrYm94IGFuZCByYWRpbyBvcHRpb25zXHJcbi8vXHJcbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXHJcbi8vIGByZXF1aXJlZGAgYXR0cmlidXRlLCB3ZSBoYXZlIHRvIFwiaGlkZVwiIHRoZSBpbnB1dHMgdmlhIGBjbGlwYC4gV2UgY2Fubm90IHVzZVxyXG4vLyBgZGlzcGxheTogbm9uZTtgIG9yIGB2aXNpYmlsaXR5OiBoaWRkZW47YCBhcyB0aGF0IGFsc28gaGlkZXMgdGhlIHBvcG92ZXIuXHJcbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXHJcbi8vIGNlcnRhaW4gY2FzZXMgd2hpY2ggaXMgcHJldmVudGVkIGJ5IHVzaW5nIGBjbGlwYCBhbmQgYHBvaW50ZXItZXZlbnRzYC5cclxuLy8gVGhpcyB3YXksIHdlIGVuc3VyZSBhIERPTSBlbGVtZW50IGlzIHZpc2libGUgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgZnJvbS5cclxuLy9cclxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEyNzk0IGFuZFxyXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xNDU1OSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cclxuXHJcbltkYXRhLXRvZ2dsZT1cImJ1dHRvbnNcIl0ge1xyXG4gID4gLmJ0bixcclxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcclxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgY2xpcDogcmVjdCgwLDAsMCwwKTtcclxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIENvbXBvbmVudCBhbmltYXRpb25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBIZWFkcyB1cCFcclxuLy9cclxuLy8gV2UgZG9uJ3QgdXNlIHRoZSBgLm9wYWNpdHkoKWAgbWl4aW4gaGVyZSBzaW5jZSBpdCBjYXVzZXMgYSBidWcgd2l0aCB0ZXh0XHJcbi8vIGZpZWxkcyBpbiBJRTctOC4gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zNTUyLlxyXG5cclxuLmZhZGUge1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgLnRyYW5zaXRpb24ob3BhY2l0eSAuMTVzIGxpbmVhcik7XHJcbiAgJi5pbiB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxufVxyXG5cclxuLmNvbGxhcHNlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAmLmluICAgICAgeyBkaXNwbGF5OiBibG9jazsgfVxyXG4gIHRyJi5pbiAgICB7IGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxyXG4gIHRib2R5Ji5pbiB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cDsgfVxyXG59XHJcblxyXG4uY29sbGFwc2luZyB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGhlaWdodDogMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIC50cmFuc2l0aW9uLXByb3BlcnR5KH5cImhlaWdodCwgdmlzaWJpbGl0eVwiKTtcclxuICAudHJhbnNpdGlvbi1kdXJhdGlvbiguMzVzKTtcclxuICAudHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oZWFzZSk7XHJcbn1cclxuIiwiLy9cclxuLy8gRHJvcGRvd24gbWVudXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBEcm9wZG93biBhcnJvdy9jYXJldFxyXG4uY2FyZXQge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbiAgbWFyZ2luLWxlZnQ6IDJweDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIGJvcmRlci10b3A6ICAgQGNhcmV0LXdpZHRoLWJhc2UgZGFzaGVkO1xyXG4gIGJvcmRlci1yaWdodDogQGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLWxlZnQ6ICBAY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGRpdilcclxuLmRyb3B1cCxcclxuLmRyb3Bkb3duIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi8vIFByZXZlbnQgdGhlIGZvY3VzIG9uIHRoZSBkcm9wZG93biB0b2dnbGUgd2hlbiBjbG9zaW5nIGRyb3Bkb3duc1xyXG4uZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcclxuICBvdXRsaW5lOiAwO1xyXG59XHJcblxyXG4vLyBUaGUgZHJvcGRvd24gbWVudSAodWwpXHJcbi5kcm9wZG93bi1tZW51IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAxMDAlO1xyXG4gIGxlZnQ6IDA7XHJcbiAgei1pbmRleDogQHppbmRleC1kcm9wZG93bjtcclxuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIG1pbi13aWR0aDogMTYwcHg7XHJcbiAgcGFkZGluZzogNXB4IDA7XHJcbiAgbWFyZ2luOiAycHggMCAwOyAvLyBvdmVycmlkZSBkZWZhdWx0IHVsXHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICBmb250LXNpemU6IEBmb250LXNpemUtYmFzZTtcclxuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXHJcbiAgYmFja2dyb3VuZC1jb2xvcjogQGRyb3Bkb3duLWJnO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIEBkcm9wZG93bi1mYWxsYmFjay1ib3JkZXI7IC8vIElFOCBmYWxsYmFja1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIEBkcm9wZG93bi1ib3JkZXI7XHJcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlci1yYWRpdXMtYmFzZTtcclxuICAuYm94LXNoYWRvdygwIDZweCAxMnB4IHJnYmEoMCwwLDAsLjE3NSkpO1xyXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XHJcblxyXG4gIC8vIEFsaWducyB0aGUgZHJvcGRvd24gbWVudSB0byByaWdodFxyXG4gIC8vXHJcbiAgLy8gRGVwcmVjYXRlZCBhcyBvZiAzLjEuMCBpbiBmYXZvciBvZiBgLmRyb3Bkb3duLW1lbnUtW2Rpcl1gXHJcbiAgJi5wdWxsLXJpZ2h0IHtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbGVmdDogYXV0bztcclxuICB9XHJcblxyXG4gIC8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiB0aGUgZHJvcGRvd25cclxuICAuZGl2aWRlciB7XHJcbiAgICAubmF2LWRpdmlkZXIoQGRyb3Bkb3duLWRpdmlkZXItYmcpO1xyXG4gIH1cclxuXHJcbiAgLy8gTGlua3Mgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XHJcbiAgPiBsaSA+IGEge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwYWRkaW5nOiAzcHggMjBweDtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcclxuICAgIGNvbG9yOiBAZHJvcGRvd24tbGluay1jb2xvcjtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xyXG4gIH1cclxufVxyXG5cclxuLy8gSG92ZXIvRm9jdXMgc3RhdGVcclxuLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEge1xyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjb2xvcjogQGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAZHJvcGRvd24tbGluay1ob3Zlci1iZztcclxuICB9XHJcbn1cclxuXHJcbi8vIEFjdGl2ZSBzdGF0ZVxyXG4uZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhIHtcclxuICAmLFxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBjb2xvcjogQGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IEBkcm9wZG93bi1saW5rLWFjdGl2ZS1iZztcclxuICB9XHJcbn1cclxuXHJcbi8vIERpc2FibGVkIHN0YXRlXHJcbi8vXHJcbi8vIEdyYXkgb3V0IHRleHQgYW5kIGVuc3VyZSB0aGUgaG92ZXIvZm9jdXMgc3RhdGUgcmVtYWlucyBncmF5XHJcblxyXG4uZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGEge1xyXG4gICYsXHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIGNvbG9yOiBAZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcclxuICB9XHJcblxyXG4gIC8vIE51a2UgaG92ZXIvZm9jdXMgZWZmZWN0c1xyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRcclxuICAgIC5yZXNldC1maWx0ZXIoKTtcclxuICAgIGN1cnNvcjogQGN1cnNvci1kaXNhYmxlZDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE9wZW4gc3RhdGUgZm9yIHRoZSBkcm9wZG93blxyXG4ub3BlbiB7XHJcbiAgLy8gU2hvdyB0aGUgbWVudVxyXG4gID4gLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAvLyBSZW1vdmUgdGhlIG91dGxpbmUgd2hlbiA6Zm9jdXMgaXMgdHJpZ2dlcmVkXHJcbiAgPiBhIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNZW51IHBvc2l0aW9uaW5nXHJcbi8vXHJcbi8vIEFkZCBleHRyYSBjbGFzcyB0byBgLmRyb3Bkb3duLW1lbnVgIHRvIGZsaXAgdGhlIGFsaWdubWVudCBvZiB0aGUgZHJvcGRvd25cclxuLy8gbWVudSB3aXRoIHRoZSBwYXJlbnQuXHJcbi5kcm9wZG93bi1tZW51LXJpZ2h0IHtcclxuICBsZWZ0OiBhdXRvOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIGAuZHJvcGRvd24tbWVudWBcclxuICByaWdodDogMDtcclxufVxyXG4vLyBXaXRoIHYzLCB3ZSBlbmFibGVkIGF1dG8tZmxpcHBpbmcgaWYgeW91IGhhdmUgYSBkcm9wZG93biB3aXRoaW4gYSByaWdodFxyXG4vLyBhbGlnbmVkIG5hdiBjb21wb25lbnQuIFRvIGVuYWJsZSB0aGUgdW5kb2luZyBvZiB0aGF0LCB3ZSBwcm92aWRlIGFuIG92ZXJyaWRlXHJcbi8vIHRvIHJlc3RvcmUgdGhlIGRlZmF1bHQgZHJvcGRvd24gbWVudSBhbGlnbm1lbnQuXHJcbi8vXHJcbi8vIFRoaXMgaXMgb25seSBmb3IgbGVmdC1hbGlnbmluZyBhIGRyb3Bkb3duIG1lbnUgd2l0aGluIGEgYC5uYXZiYXItcmlnaHRgIG9yXHJcbi8vIGAucHVsbC1yaWdodGAgbmF2IGNvbXBvbmVudC5cclxuLmRyb3Bkb3duLW1lbnUtbGVmdCB7XHJcbiAgbGVmdDogMDtcclxuICByaWdodDogYXV0bztcclxufVxyXG5cclxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXHJcbi5kcm9wZG93bi1oZWFkZXIge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmc6IDNweCAyMHB4O1xyXG4gIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1zbWFsbDtcclxuICBsaW5lLWhlaWdodDogQGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgY29sb3I6IEBkcm9wZG93bi1oZWFkZXItY29sb3I7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxyXG59XHJcblxyXG4vLyBCYWNrZHJvcCB0byBjYXRjaCBib2R5IGNsaWNrcyBvbiBtb2JpbGUsIGV0Yy5cclxuLmRyb3Bkb3duLWJhY2tkcm9wIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgbGVmdDogMDtcclxuICByaWdodDogMDtcclxuICBib3R0b206IDA7XHJcbiAgdG9wOiAwO1xyXG4gIHotaW5kZXg6IChAemluZGV4LWRyb3Bkb3duIC0gMTApO1xyXG59XHJcblxyXG4vLyBSaWdodCBhbGlnbmVkIGRyb3Bkb3duc1xyXG4ucHVsbC1yaWdodCA+IC5kcm9wZG93bi1tZW51IHtcclxuICByaWdodDogMDtcclxuICBsZWZ0OiBhdXRvO1xyXG59XHJcblxyXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcclxuLy9cclxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LCBicm8uXHJcbi8vIFRPRE86IGFic3RyYWN0IHRoaXMgc28gdGhhdCB0aGUgbmF2YmFyIGZpeGVkIHN0eWxlcyBhcmUgbm90IHBsYWNlZCBoZXJlP1xyXG5cclxuLmRyb3B1cCxcclxuLm5hdmJhci1maXhlZC1ib3R0b20gLmRyb3Bkb3duIHtcclxuICAvLyBSZXZlcnNlIHRoZSBjYXJldFxyXG4gIC5jYXJldCB7XHJcbiAgICBib3JkZXItdG9wOiAwO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogQGNhcmV0LXdpZHRoLWJhc2Ugc29saWQ7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gIH1cclxuICAvLyBEaWZmZXJlbnQgcG9zaXRpb25pbmcgZm9yIGJvdHRvbSB1cCBtZW51XHJcbiAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgdG9wOiBhdXRvO1xyXG4gICAgYm90dG9tOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIENvbXBvbmVudCBhbGlnbm1lbnRcclxuLy9cclxuLy8gUmVpdGVyYXRlIHBlciBuYXZiYXIubGVzcyBhbmQgdGhlIG1vZGlmaWVkIGNvbXBvbmVudCBhbGlnbm1lbnQgdGhlcmUuXHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogQGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gIC5uYXZiYXItcmlnaHQge1xyXG4gICAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAuZHJvcGRvd24tbWVudS1yaWdodCgpO1xyXG4gICAgfVxyXG4gICAgLy8gTmVjZXNzYXJ5IGZvciBvdmVycmlkZXMgb2YgdGhlIGRlZmF1bHQgcmlnaHQgYWxpZ25lZCBtZW51LlxyXG4gICAgLy8gV2lsbCByZW1vdmUgY29tZSB2NCBpbiBhbGwgbGlrZWxpaG9vZC5cclxuICAgIC5kcm9wZG93bi1tZW51LWxlZnQge1xyXG4gICAgICAuZHJvcGRvd24tbWVudS1sZWZ0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcclxuLy9cclxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXHJcblxyXG4ubmF2LWRpdmlkZXIoQGNvbG9yOiAjZTVlNWU1KSB7XHJcbiAgaGVpZ2h0OiAxcHg7XHJcbiAgbWFyZ2luOiAoKEBsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpIC0gMSkgMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvcjtcclxufVxyXG4iLCIvLyBSZXNldCBmaWx0ZXJzIGZvciBJRVxyXG4vL1xyXG4vLyBXaGVuIHlvdSBuZWVkIHRvIHJlbW92ZSBhIGdyYWRpZW50IGJhY2tncm91bmQsIGRvIG5vdCBmb3JnZXQgdG8gdXNlIHRoaXMgdG8gcmVzZXRcclxuLy8gdGhlIElFIGZpbHRlciBmb3IgSUU5IGFuZCBiZWxvdy5cclxuXHJcbi5yZXNldC1maWx0ZXIoKSB7XHJcbiAgZmlsdGVyOiBlKCUoXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKVwiKSk7XHJcbn1cclxuIiwiLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xyXG5cclxuLmJvcmRlci10b3AtcmFkaXVzKEByYWRpdXMpIHtcclxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogQHJhZGl1cztcclxuICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogQHJhZGl1cztcclxufVxyXG4uYm9yZGVyLXJpZ2h0LXJhZGl1cyhAcmFkaXVzKSB7XHJcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IEByYWRpdXM7XHJcbiAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IEByYWRpdXM7XHJcbn1cclxuLmJvcmRlci1ib3R0b20tcmFkaXVzKEByYWRpdXMpIHtcclxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogQHJhZGl1cztcclxuICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogQHJhZGl1cztcclxufVxyXG4uYm9yZGVyLWxlZnQtcmFkaXVzKEByYWRpdXMpIHtcclxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBAcmFkaXVzO1xyXG4gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IEByYWRpdXM7XHJcbn1cclxuIiwiLy9cclxuLy8gSW5wdXQgZ3JvdXBzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBCYXNlIHN0eWxlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5pbnB1dC1ncm91cCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZHJvcGRvd25zXHJcbiAgZGlzcGxheTogdGFibGU7XHJcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTsgLy8gcHJldmVudCBpbnB1dCBncm91cHMgZnJvbSBpbmhlcml0aW5nIGJvcmRlciBzdHlsZXMgZnJvbSB0YWJsZSBjZWxscyB3aGVuIHBsYWNlZCB3aXRoaW4gYSB0YWJsZVxyXG5cclxuICAvLyBVbmRvIHBhZGRpbmcgYW5kIGZsb2F0IG9mIGdyaWQgY2xhc3Nlc1xyXG4gICZbY2xhc3MqPVwiY29sLVwiXSB7XHJcbiAgICBmbG9hdDogbm9uZTtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgfVxyXG5cclxuICAuZm9ybS1jb250cm9sIHtcclxuICAgIC8vIEVuc3VyZSB0aGF0IHRoZSBpbnB1dCBpcyBhbHdheXMgYWJvdmUgdGhlICphcHBlbmRlZCogYWRkb24gYnV0dG9uIGZvclxyXG4gICAgLy8gcHJvcGVyIGJvcmRlciBjb2xvcnMuXHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG5cclxuICAgIC8vIElFOSBmdWJhcnMgdGhlIHBsYWNlaG9sZGVyIGF0dHJpYnV0ZSBpbiB0ZXh0IGlucHV0cyBhbmQgdGhlIGFycm93cyBvblxyXG4gICAgLy8gc2VsZWN0IGVsZW1lbnRzIGluIGlucHV0IGdyb3Vwcy4gVG8gZml4IGl0LCB3ZSBmbG9hdCB0aGUgaW5wdXQuIERldGFpbHM6XHJcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTYxI2lzc3VlY29tbWVudC0yODkzNjg1NVxyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcblxyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLy8gU2l6aW5nIG9wdGlvbnNcclxuLy9cclxuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxyXG4vLyBtYW5pcHVsYXRpb24uXHJcblxyXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxyXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb24sXHJcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHtcclxuICAuaW5wdXQtbGcoKTtcclxufVxyXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxyXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYWRkb24sXHJcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHtcclxuICAuaW5wdXQtc20oKTtcclxufVxyXG5cclxuXHJcbi8vIERpc3BsYXkgYXMgdGFibGUtY2VsbFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5pbnB1dC1ncm91cC1hZGRvbixcclxuLmlucHV0LWdyb3VwLWJ0bixcclxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xyXG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcblxyXG4gICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gIH1cclxufVxyXG4vLyBBZGRvbiBhbmQgYWRkb24gd3JhcHBlciBmb3IgYnV0dG9uc1xyXG4uaW5wdXQtZ3JvdXAtYWRkb24sXHJcbi5pbnB1dC1ncm91cC1idG4ge1xyXG4gIHdpZHRoOiAxJTtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIE1hdGNoIHRoZSBpbnB1dHNcclxufVxyXG5cclxuLy8gVGV4dCBpbnB1dCBncm91cHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uaW5wdXQtZ3JvdXAtYWRkb24ge1xyXG4gIHBhZGRpbmc6IEBwYWRkaW5nLWJhc2UtdmVydGljYWwgQHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xyXG4gIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1iYXNlO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgY29sb3I6IEBpbnB1dC1jb2xvcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogQGlucHV0LWdyb3VwLWFkZG9uLWJnO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIEBpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I7XHJcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlci1yYWRpdXMtYmFzZTtcclxuXHJcbiAgLy8gU2l6aW5nXHJcbiAgJi5pbnB1dC1zbSB7XHJcbiAgICBwYWRkaW5nOiBAcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCBAcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xyXG4gICAgZm9udC1zaXplOiBAZm9udC1zaXplLXNtYWxsO1xyXG4gICAgYm9yZGVyLXJhZGl1czogQGJvcmRlci1yYWRpdXMtc21hbGw7XHJcbiAgfVxyXG4gICYuaW5wdXQtbGcge1xyXG4gICAgcGFkZGluZzogQHBhZGRpbmctbGFyZ2UtdmVydGljYWwgQHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcclxuICAgIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1sYXJnZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWxhcmdlO1xyXG4gIH1cclxuXHJcbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxyXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICB9XHJcbn1cclxuXHJcbi8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xyXG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpmaXJzdC1jaGlsZCxcclxuLmlucHV0LWdyb3VwLWFkZG9uOmZpcnN0LWNoaWxkLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bixcclxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4tZ3JvdXAgPiAuYnRuLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmRyb3Bkb3duLXRvZ2dsZSxcclxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcclxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XHJcbiAgLmJvcmRlci1yaWdodC1yYWRpdXMoMCk7XHJcbn1cclxuLmlucHV0LWdyb3VwLWFkZG9uOmZpcnN0LWNoaWxkIHtcclxuICBib3JkZXItcmlnaHQ6IDA7XHJcbn1cclxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6bGFzdC1jaGlsZCxcclxuLmlucHV0LWdyb3VwLWFkZG9uOmxhc3QtY2hpbGQsXHJcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4sXHJcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXAgPiAuYnRuLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuZHJvcGRvd24tdG9nZ2xlLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcclxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcclxuICAuYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xyXG59XHJcbi5pbnB1dC1ncm91cC1hZGRvbjpsYXN0LWNoaWxkIHtcclxuICBib3JkZXItbGVmdDogMDtcclxufVxyXG5cclxuLy8gQnV0dG9uIGlucHV0IGdyb3Vwc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5pbnB1dC1ncm91cC1idG4ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAvLyBKYW5raWx5IHByZXZlbnQgaW5wdXQgYnV0dG9uIGdyb3VwcyBmcm9tIHdyYXBwaW5nIHdpdGggYHdoaXRlLXNwYWNlYCBhbmRcclxuICAvLyBgZm9udC1zaXplYCBpbiBjb21iaW5hdGlvbiB3aXRoIGBpbmxpbmUtYmxvY2tgIG9uIGJ1dHRvbnMuXHJcbiAgZm9udC1zaXplOiAwO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblxyXG4gIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3Igc3BhY2luZywgcG9zaXRpb24gZm9yIGJyaW5naW5nIGhvdmVyZWQvZm9jdXNlZC9hY3RpdmVkXHJcbiAgLy8gZWxlbWVudCBhYm92ZSB0aGUgc2libGluZ3MuXHJcbiAgPiAuYnRuIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICsgLmJ0biB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xyXG4gICAgfVxyXG4gICAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgYnV0dG9uIHRvIHRoZSBmcm9udFxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMsXHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBOZWdhdGl2ZSBtYXJnaW4gdG8gb25seSBoYXZlIGEgMXB4IGJvcmRlciBiZXR3ZWVuIHRoZSB0d29cclxuICAmOmZpcnN0LWNoaWxkIHtcclxuICAgID4gLmJ0bixcclxuICAgID4gLmJ0bi1ncm91cCB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogLTFweDtcclxuICAgIH1cclxuICB9XHJcbiAgJjpsYXN0LWNoaWxkIHtcclxuICAgID4gLmJ0bixcclxuICAgID4gLmJ0bi1ncm91cCB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBOYXZzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gQmFzZSBjbGFzc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLm5hdiB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgdWwvb2xcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICY6ZXh0ZW5kKC5jbGVhcmZpeCBhbGwpO1xyXG5cclxuICA+IGxpIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgID4gYSB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBhZGRpbmc6IEBuYXYtbGluay1wYWRkaW5nO1xyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdi1saW5rLWhvdmVyLWJnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gRGlzYWJsZWQgc3RhdGUgc2V0cyB0ZXh0IHRvIGdyYXkgYW5kIG51a2VzIGhvdmVyL3RhYiBlZmZlY3RzXHJcbiAgICAmLmRpc2FibGVkID4gYSB7XHJcbiAgICAgIGNvbG9yOiBAbmF2LWRpc2FibGVkLWxpbmstY29sb3I7XHJcblxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogQG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBjdXJzb3I6IEBjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIE9wZW4gZHJvcGRvd25zXHJcbiAgLm9wZW4gPiBhIHtcclxuICAgICYsXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXYtbGluay1ob3Zlci1iZztcclxuICAgICAgYm9yZGVyLWNvbG9yOiBAbGluay1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIE5hdiBkaXZpZGVycyAoZGVwcmVjYXRlZCB3aXRoIHYzLjAuMSlcclxuICAvL1xyXG4gIC8vIFRoaXMgc2hvdWxkIGhhdmUgYmVlbiByZW1vdmVkIGluIHYzIHdpdGggdGhlIGRyb3BwaW5nIG9mIGAubmF2LWxpc3RgLCBidXRcclxuICAvLyB3ZSBtaXNzZWQgaXQuIFdlIGRvbid0IGN1cnJlbnRseSBzdXBwb3J0IHRoaXMgYW55d2hlcmUsIGJ1dCBpbiB0aGUgaW50ZXJlc3RcclxuICAvLyBvZiBtYWludGFpbmluZyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IGluIGNhc2UgeW91IHVzZSBpdCwgaXQncyBkZXByZWNhdGVkLlxyXG4gIC5uYXYtZGl2aWRlciB7XHJcbiAgICAubmF2LWRpdmlkZXIoKTtcclxuICB9XHJcblxyXG4gIC8vIFByZXZlbnQgSUU4IGZyb20gbWlzcGxhY2luZyBpbWdzXHJcbiAgLy9cclxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvaXNzdWVzLzk4NCNpc3N1ZWNvbW1lbnQtMzk4NTk4OVxyXG4gID4gbGkgPiBhID4gaW1nIHtcclxuICAgIG1heC13aWR0aDogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBUYWJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIEdpdmUgdGhlIHRhYnMgc29tZXRoaW5nIHRvIHNpdCBvblxyXG4ubmF2LXRhYnMge1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xyXG4gID4gbGkge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAvLyBNYWtlIHRoZSBsaXN0LWl0ZW1zIG92ZXJsYXkgdGhlIGJvdHRvbSBib3JkZXJcclxuICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XHJcblxyXG4gICAgLy8gQWN0dWFsIHRhYnMgKGFzIGxpbmtzKVxyXG4gICAgPiBhIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQtYmFzZTtcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWJhc2UgQGJvcmRlci1yYWRpdXMtYmFzZSAwIDA7XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogQG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yIEBuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvciBAbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQWN0aXZlIHN0YXRlLCBhbmQgaXRzIDpob3ZlciB0byBvdmVycmlkZSBub3JtYWwgOmhvdmVyXHJcbiAgICAmLmFjdGl2ZSA+IGEge1xyXG4gICAgICAmLFxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogQG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZztcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBAbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAvLyBwdWxsaW5nIHRoaXMgaW4gbWFpbmx5IGZvciBsZXNzIHNob3J0aGFuZFxyXG4gICYubmF2LWp1c3RpZmllZCB7XHJcbiAgICAubmF2LWp1c3RpZmllZCgpO1xyXG4gICAgLm5hdi10YWJzLWp1c3RpZmllZCgpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFBpbGxzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLm5hdi1waWxscyB7XHJcbiAgPiBsaSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuXHJcbiAgICAvLyBMaW5rcyByZW5kZXJlZCBhcyBwaWxsc1xyXG4gICAgPiBhIHtcclxuICAgICAgYm9yZGVyLXJhZGl1czogQG5hdi1waWxscy1ib3JkZXItcmFkaXVzO1xyXG4gICAgfVxyXG4gICAgKyBsaSB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQWN0aXZlIHN0YXRlXHJcbiAgICAmLmFjdGl2ZSA+IGEge1xyXG4gICAgICAmLFxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogQG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gU3RhY2tlZCBwaWxsc1xyXG4ubmF2LXN0YWNrZWQge1xyXG4gID4gbGkge1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICArIGxpIHtcclxuICAgICAgbWFyZ2luLXRvcDogMnB4O1xyXG4gICAgICBtYXJnaW4tbGVmdDogMDsgLy8gbm8gbmVlZCBmb3IgdGhpcyBnYXAgYmV0d2VlbiBuYXYgaXRlbXNcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBOYXYgdmFyaWF0aW9uc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gSnVzdGlmaWVkIG5hdiBsaW5rc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4ubmF2LWp1c3RpZmllZCB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcblxyXG4gID4gbGkge1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICA+IGEge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gID4gLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHtcclxuICAgIHRvcDogYXV0bztcclxuICAgIGxlZnQ6IGF1dG87XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1zbS1taW4pIHtcclxuICAgID4gbGkge1xyXG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgICB3aWR0aDogMSU7XHJcbiAgICAgID4gYSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gTW92ZSBib3JkZXJzIHRvIGFuY2hvcnMgaW5zdGVhZCBvZiBib3R0b20gb2YgbGlzdFxyXG4vL1xyXG4vLyBNaXhpbiBmb3IgYWRkaW5nIG9uIHRvcCB0aGUgc2hhcmVkIGAubmF2LWp1c3RpZmllZGAgc3R5bGVzIGZvciBvdXIgdGFic1xyXG4ubmF2LXRhYnMtanVzdGlmaWVkIHtcclxuICBib3JkZXItYm90dG9tOiAwO1xyXG5cclxuICA+IGxpID4gYSB7XHJcbiAgICAvLyBPdmVycmlkZSBtYXJnaW4gZnJvbSAubmF2LXRhYnNcclxuICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWJhc2U7XHJcbiAgfVxyXG5cclxuICA+IC5hY3RpdmUgPiBhLFxyXG4gID4gLmFjdGl2ZSA+IGE6aG92ZXIsXHJcbiAgPiAuYWN0aXZlID4gYTpmb2N1cyB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCBAbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tc20tbWluKSB7XHJcbiAgICA+IGxpID4gYSB7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cy1iYXNlIEBib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xyXG4gICAgfVxyXG4gICAgPiAuYWN0aXZlID4gYSxcclxuICAgID4gLmFjdGl2ZSA+IGE6aG92ZXIsXHJcbiAgICA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcclxuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogQG5hdi10YWJzLWp1c3RpZmllZC1hY3RpdmUtbGluay1ib3JkZXItY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gVGFiYmFibGUgdGFic1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcclxuLnRhYi1jb250ZW50IHtcclxuICA+IC50YWItcGFuZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICA+IC5hY3RpdmUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRHJvcGRvd25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIFNwZWNpZmljIGRyb3Bkb3duc1xyXG4ubmF2LXRhYnMgLmRyb3Bkb3duLW1lbnUge1xyXG4gIC8vIG1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxyXG4gIG1hcmdpbi10b3A6IC0xcHg7XHJcbiAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcclxuICAuYm9yZGVyLXRvcC1yYWRpdXMoMCk7XHJcbn1cclxuIiwiLy9cclxuLy8gTmF2YmFyc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIFdyYXBwZXIgYW5kIGJhc2UgY2xhc3NcclxuLy9cclxuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcclxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXHJcblxyXG4ubmF2YmFyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWluLWhlaWdodDogQG5hdmJhci1oZWlnaHQ7IC8vIEVuc3VyZSBhIG5hdmJhciBhbHdheXMgc2hvd3MgKGUuZy4sIHdpdGhvdXQgYSAubmF2YmFyLWJyYW5kIGluIGNvbGxhcHNlZCBtb2RlKVxyXG4gIG1hcmdpbi1ib3R0b206IEBuYXZiYXItbWFyZ2luLWJvdHRvbTtcclxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHJcbiAgLy8gUHJldmVudCBmbG9hdHMgZnJvbSBicmVha2luZyB0aGUgbmF2YmFyXHJcbiAgJjpleHRlbmQoLmNsZWFyZml4IGFsbCk7XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiBAbmF2YmFyLWJvcmRlci1yYWRpdXM7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gTmF2YmFyIGhlYWRpbmdcclxuLy9cclxuLy8gR3JvdXBzIGAubmF2YmFyLWJyYW5kYCBhbmQgYC5uYXZiYXItdG9nZ2xlYCBpbnRvIGEgc2luZ2xlIGNvbXBvbmVudCBmb3IgZWFzeVxyXG4vLyBzdHlsaW5nIG9mIHJlc3BvbnNpdmUgYXNwZWN0cy5cclxuXHJcbi5uYXZiYXItaGVhZGVyIHtcclxuICAmOmV4dGVuZCguY2xlYXJmaXggYWxsKTtcclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIE5hdmJhciBjb2xsYXBzZSAoYm9keSlcclxuLy9cclxuLy8gR3JvdXAgeW91ciBuYXZiYXIgY29udGVudCBpbnRvIHRoaXMgZm9yIGVhc3kgY29sbGFwc2luZyBhbmQgZXhwYW5kaW5nIGFjcm9zc1xyXG4vLyB2YXJpb3VzIGRldmljZSBzaXplcy4gQnkgZGVmYXVsdCwgdGhpcyBjb250ZW50IGlzIGNvbGxhcHNlZCB3aGVuIDw3NjhweCwgYnV0XHJcbi8vIHdpbGwgZXhwYW5kIHBhc3QgdGhhdCBmb3IgYSBob3Jpem9udGFsIGRpc3BsYXkuXHJcbi8vXHJcbi8vIFRvIHN0YXJ0IChvbiBtb2JpbGUgZGV2aWNlcykgdGhlIG5hdmJhciBsaW5rcywgZm9ybXMsIGFuZCBidXR0b25zIGFyZSBzdGFja2VkXHJcbi8vIHZlcnRpY2FsbHkgYW5kIGluY2x1ZGUgYSBgbWF4LWhlaWdodGAgdG8gb3ZlcmZsb3cgaW4gY2FzZSB5b3UgaGF2ZSB0b28gbXVjaFxyXG4vLyBjb250ZW50IGZvciB0aGUgdXNlcidzIHZpZXdwb3J0LlxyXG5cclxuLm5hdmJhci1jb2xsYXBzZSB7XHJcbiAgb3ZlcmZsb3cteDogdmlzaWJsZTtcclxuICBwYWRkaW5nLXJpZ2h0OiBAbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuICBwYWRkaW5nLWxlZnQ6ICBAbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKTtcclxuICAmOmV4dGVuZCguY2xlYXJmaXggYWxsKTtcclxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcblxyXG4gICYuaW4ge1xyXG4gICAgb3ZlcmZsb3cteTogYXV0bztcclxuICB9XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG5cclxuICAgICYuY29sbGFwc2Uge1xyXG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgc2V0dGluZ1xyXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICYuaW4ge1xyXG4gICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFVuZG8gdGhlIGNvbGxhcHNlIHNpZGUgcGFkZGluZyBmb3IgbmF2YmFycyB3aXRoIGNvbnRhaW5lcnMgdG8gZW5zdXJlXHJcbiAgICAvLyBhbGlnbm1lbnQgb2YgcmlnaHQtYWxpZ25lZCBjb250ZW50cy5cclxuICAgIC5uYXZiYXItZml4ZWQtdG9wICYsXHJcbiAgICAubmF2YmFyLXN0YXRpYy10b3AgJixcclxuICAgIC5uYXZiYXItZml4ZWQtYm90dG9tICYge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubmF2YmFyLWZpeGVkLXRvcCxcclxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xyXG4gIC5uYXZiYXItY29sbGFwc2Uge1xyXG4gICAgbWF4LWhlaWdodDogQG5hdmJhci1jb2xsYXBzZS1tYXgtaGVpZ2h0O1xyXG5cclxuICAgIEBtZWRpYSAobWF4LWRldmljZS13aWR0aDogQHNjcmVlbi14cy1taW4pIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xyXG4gICAgICBtYXgtaGVpZ2h0OiAyMDBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBCb3RoIG5hdmJhciBoZWFkZXIgYW5kIGNvbGxhcHNlXHJcbi8vXHJcbi8vIFdoZW4gYSBjb250YWluZXIgaXMgcHJlc2VudCwgY2hhbmdlIHRoZSBiZWhhdmlvciBvZiB0aGUgaGVhZGVyIGFuZCBjb2xsYXBzZS5cclxuXHJcbi5jb250YWluZXIsXHJcbi5jb250YWluZXItZmx1aWQge1xyXG4gID4gLm5hdmJhci1oZWFkZXIsXHJcbiAgPiAubmF2YmFyLWNvbGxhcHNlIHtcclxuICAgIG1hcmdpbi1yaWdodDogLUBuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gICAgbWFyZ2luLWxlZnQ6ICAtQG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IEBncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICBtYXJnaW4tbGVmdDogIDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy9cclxuLy8gTmF2YmFyIGFsaWdubWVudCBvcHRpb25zXHJcbi8vXHJcbi8vIERpc3BsYXkgdGhlIG5hdmJhciBhY3Jvc3MgdGhlIGVudGlyZXR5IG9mIHRoZSBwYWdlIG9yIGZpeGVkIGl0IHRvIHRoZSB0b3Agb3JcclxuLy8gYm90dG9tIG9mIHRoZSBwYWdlLlxyXG5cclxuLy8gU3RhdGljIHRvcCAodW5maXhlZCwgYnV0IDEwMCUgd2lkZSkgbmF2YmFyXHJcbi5uYXZiYXItc3RhdGljLXRvcCB7XHJcbiAgei1pbmRleDogQHppbmRleC1uYXZiYXI7XHJcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4O1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogQGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICB9XHJcbn1cclxuXHJcbi8vIEZpeCB0aGUgdG9wL2JvdHRvbSBuYXZiYXJzIHdoZW4gc2NyZWVuIHJlYWwgZXN0YXRlIHN1cHBvcnRzIGl0XHJcbi5uYXZiYXItZml4ZWQtdG9wLFxyXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgei1pbmRleDogQHppbmRleC1uYXZiYXItZml4ZWQ7XHJcblxyXG4gIC8vIFVuZG8gdGhlIHJvdW5kZWQgY29ybmVyc1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gIH1cclxufVxyXG4ubmF2YmFyLWZpeGVkLXRvcCB7XHJcbiAgdG9wOiAwO1xyXG4gIGJvcmRlci13aWR0aDogMCAwIDFweDtcclxufVxyXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XHJcbiAgYm90dG9tOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG92ZXJyaWRlIC5uYXZiYXIgZGVmYXVsdHNcclxuICBib3JkZXItd2lkdGg6IDFweCAwIDA7XHJcbn1cclxuXHJcblxyXG4vLyBCcmFuZC9wcm9qZWN0IG5hbWVcclxuXHJcbi5uYXZiYXItYnJhbmQge1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIHBhZGRpbmc6IEBuYXZiYXItcGFkZGluZy12ZXJ0aWNhbCBAbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuICBmb250LXNpemU6IEBmb250LXNpemUtbGFyZ2U7XHJcbiAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBoZWlnaHQ6IEBuYXZiYXItaGVpZ2h0O1xyXG5cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxuXHJcbiAgPiBpbWcge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogQGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gICAgLm5hdmJhciA+IC5jb250YWluZXIgJixcclxuICAgIC5uYXZiYXIgPiAuY29udGFpbmVyLWZsdWlkICYge1xyXG4gICAgICBtYXJnaW4tbGVmdDogLUBuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIE5hdmJhciB0b2dnbGVcclxuLy9cclxuLy8gQ3VzdG9tIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIGAubmF2YmFyLWNvbGxhcHNlYCwgcG93ZXJlZCBieSB0aGUgY29sbGFwc2VcclxuLy8gSmF2YVNjcmlwdCBwbHVnaW4uXHJcblxyXG4ubmF2YmFyLXRvZ2dsZSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGZsb2F0OiByaWdodDtcclxuICBtYXJnaW4tcmlnaHQ6IEBuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gIHBhZGRpbmc6IDlweCAxMHB4O1xyXG4gIC5uYXZiYXItdmVydGljYWwtYWxpZ24oMzRweCk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MvaXNzdWVzLzIxNFxyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWJhc2U7XHJcblxyXG4gIC8vIFdlIHJlbW92ZSB0aGUgYG91dGxpbmVgIGhlcmUsIGJ1dCBsYXRlciBjb21wZW5zYXRlIGJ5IGF0dGFjaGluZyBgOmhvdmVyYFxyXG4gIC8vIHN0eWxlcyB0byBgOmZvY3VzYC5cclxuICAmOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgfVxyXG5cclxuICAvLyBCYXJzXHJcbiAgLmljb24tYmFyIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IDIycHg7XHJcbiAgICBoZWlnaHQ6IDJweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcclxuICB9XHJcbiAgLmljb24tYmFyICsgLmljb24tYmFyIHtcclxuICAgIG1hcmdpbi10b3A6IDRweDtcclxuICB9XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIE5hdmJhciBuYXYgbGlua3NcclxuLy9cclxuLy8gQnVpbGRzIG9uIHRvcCBvZiB0aGUgYC5uYXZgIGNvbXBvbmVudHMgd2l0aCBpdHMgb3duIG1vZGlmaWVyIGNsYXNzIHRvIG1ha2VcclxuLy8gdGhlIG5hdiB0aGUgZnVsbCBoZWlnaHQgb2YgdGhlIGhvcml6b250YWwgbmF2IChhYm92ZSA3NjhweCkuXHJcblxyXG4ubmF2YmFyLW5hdiB7XHJcbiAgbWFyZ2luOiAoQG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsIC8gMikgLUBuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG5cclxuICA+IGxpID4gYSB7XHJcbiAgICBwYWRkaW5nLXRvcDogICAgMTBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICB9XHJcblxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiBAZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xyXG4gICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheSB3aGVuIGNvbGxhcHNlZFxyXG4gICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICBib3JkZXI6IDA7XHJcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgID4gbGkgPiBhLFxyXG4gICAgICAuZHJvcGRvd24taGVhZGVyIHtcclxuICAgICAgICBwYWRkaW5nOiA1cHggMTVweCA1cHggMjVweDtcclxuICAgICAgfVxyXG4gICAgICA+IGxpID4gYSB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIFVuY29sbGFwc2UgdGhlIG5hdlxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICA+IGxpIHtcclxuICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgID4gYSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6ICAgIEBuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogQG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gTmF2YmFyIGZvcm1cclxuLy9cclxuLy8gRXh0ZW5zaW9uIG9mIHRoZSBgLmZvcm0taW5saW5lYCB3aXRoIHNvbWUgZXh0cmEgZmxhdm9yIGZvciBvcHRpbXVtIGRpc3BsYXkgaW5cclxuLy8gb3VyIG5hdmJhcnMuXHJcblxyXG4ubmF2YmFyLWZvcm0ge1xyXG4gIG1hcmdpbi1sZWZ0OiAtQG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgbWFyZ2luLXJpZ2h0OiAtQG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgcGFkZGluZzogMTBweCBAbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIEBzaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSksIDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSk7XHJcbiAgLmJveC1zaGFkb3coQHNoYWRvdyk7XHJcblxyXG4gIC8vIE1peGluIGJlaGF2aW9yIGZvciBvcHRpbXVtIGRpc3BsYXlcclxuICAuZm9ybS1pbmxpbmUoKTtcclxuXHJcbiAgLmZvcm0tZ3JvdXAge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IEBncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuXHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gVmVydGljYWxseSBjZW50ZXIgaW4gZXhwYW5kZWQsIGhvcml6b250YWwgbmF2YmFyXHJcbiAgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbihAaW5wdXQtaGVpZ2h0LWJhc2UpO1xyXG5cclxuICAvLyBVbmRvIDEwMCUgd2lkdGggZm9yIHB1bGwgY2xhc3Nlc1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIGJvcmRlcjogMDtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgIC5ib3gtc2hhZG93KG5vbmUpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIERyb3Bkb3duIG1lbnVzXHJcblxyXG4vLyBNZW51IHBvc2l0aW9uIGFuZCBtZW51IGNhcmV0c1xyXG4ubmF2YmFyLW5hdiA+IGxpID4gLmRyb3Bkb3duLW1lbnUge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbiAgLmJvcmRlci10b3AtcmFkaXVzKDApO1xyXG59XHJcbi8vIE1lbnUgcG9zaXRpb24gYW5kIG1lbnUgY2FyZXQgc3VwcG9ydCBmb3IgZHJvcHVwcyB2aWEgZXh0cmEgZHJvcHVwIGNsYXNzXHJcbi5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXZiYXItbmF2ID4gbGkgPiAuZHJvcGRvd24tbWVudSB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAuYm9yZGVyLXRvcC1yYWRpdXMoQG5hdmJhci1ib3JkZXItcmFkaXVzKTtcclxuICAuYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XHJcbn1cclxuXHJcblxyXG4vLyBCdXR0b25zIGluIG5hdmJhcnNcclxuLy9cclxuLy8gVmVydGljYWxseSBjZW50ZXIgYSBidXR0b24gd2l0aGluIGEgbmF2YmFyICh3aGVuICpub3QqIGluIGEgZm9ybSkuXHJcblxyXG4ubmF2YmFyLWJ0biB7XHJcbiAgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbihAaW5wdXQtaGVpZ2h0LWJhc2UpO1xyXG5cclxuICAmLmJ0bi1zbSB7XHJcbiAgICAubmF2YmFyLXZlcnRpY2FsLWFsaWduKEBpbnB1dC1oZWlnaHQtc21hbGwpO1xyXG4gIH1cclxuICAmLmJ0bi14cyB7XHJcbiAgICAubmF2YmFyLXZlcnRpY2FsLWFsaWduKDIyKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBUZXh0IGluIG5hdmJhcnNcclxuLy9cclxuLy8gQWRkIGEgY2xhc3MgdG8gbWFrZSBhbnkgZWxlbWVudCBwcm9wZXJseSBhbGlnbiBpdHNlbGYgdmVydGljYWxseSB3aXRoaW4gdGhlIG5hdmJhcnMuXHJcblxyXG4ubmF2YmFyLXRleHQge1xyXG4gIC5uYXZiYXItdmVydGljYWwtYWxpZ24oQGxpbmUtaGVpZ2h0LWNvbXB1dGVkKTtcclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWFyZ2luLWxlZnQ6IEBuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBAbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBDb21wb25lbnQgYWxpZ25tZW50XHJcbi8vXHJcbi8vIFJlcHVycG9zZSB0aGUgcHVsbCB1dGlsaXRpZXMgYXMgdGhlaXIgb3duIG5hdmJhciB1dGlsaXRpZXMgdG8gYXZvaWQgc3BlY2lmaWNpdHlcclxuLy8gaXNzdWVzIHdpdGggcGFyZW50cyBhbmQgY2hhaW5pbmcuIE9ubHkgZG8gdGhpcyB3aGVuIHRoZSBuYXZiYXIgaXMgdW5jb2xsYXBzZWRcclxuLy8gdGhvdWdoIHNvIHRoYXQgbmF2YmFyIGNvbnRlbnRzIHByb3Blcmx5IHN0YWNrIGFuZCBhbGlnbiBpbiBtb2JpbGUuXHJcbi8vXHJcbi8vIERlY2xhcmVkIGFmdGVyIHRoZSBuYXZiYXIgY29tcG9uZW50cyB0byBlbnN1cmUgbW9yZSBzcGVjaWZpY2l0eSBvbiB0aGUgbWFyZ2lucy5cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiBAZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgLm5hdmJhci1sZWZ0ICB7IC5wdWxsLWxlZnQoKTsgfVxyXG4gIC5uYXZiYXItcmlnaHQge1xyXG4gICAgLnB1bGwtcmlnaHQoKTtcclxuICAgIG1hcmdpbi1yaWdodDogLUBuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG5cclxuICAgIH4gLm5hdmJhci1yaWdodCB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBBbHRlcm5hdGUgbmF2YmFyc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gRGVmYXVsdCBuYXZiYXJcclxuLm5hdmJhci1kZWZhdWx0IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtYmc7XHJcbiAgYm9yZGVyLWNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtYm9yZGVyO1xyXG5cclxuICAubmF2YmFyLWJyYW5kIHtcclxuICAgIGNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItY29sb3I7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1iZztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5uYXZiYXItdGV4dCB7XHJcbiAgICBjb2xvcjogQG5hdmJhci1kZWZhdWx0LWNvbG9yO1xyXG4gIH1cclxuXHJcbiAgLm5hdmJhci1uYXYge1xyXG4gICAgPiBsaSA+IGEge1xyXG4gICAgICBjb2xvcjogQG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XHJcblxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogQG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgID4gLmFjdGl2ZSA+IGEge1xyXG4gICAgICAmLFxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogQG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiAuZGlzYWJsZWQgPiBhIHtcclxuICAgICAgJixcclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6IEBuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubmF2YmFyLXRvZ2dsZSB7XHJcbiAgICBib3JkZXItY29sb3I6IEBuYXZiYXItZGVmYXVsdC10b2dnbGUtYm9yZGVyLWNvbG9yO1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWhvdmVyLWJnO1xyXG4gICAgfVxyXG4gICAgLmljb24tYmFyIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5uYXZiYXItY29sbGFwc2UsXHJcbiAgLm5hdmJhci1mb3JtIHtcclxuICAgIGJvcmRlci1jb2xvcjogQG5hdmJhci1kZWZhdWx0LWJvcmRlcjtcclxuICB9XHJcblxyXG4gIC8vIERyb3Bkb3duIG1lbnUgaXRlbXNcclxuICAubmF2YmFyLW5hdiB7XHJcbiAgICAvLyBSZW1vdmUgYmFja2dyb3VuZCBjb2xvciBmcm9tIG9wZW4gZHJvcGRvd25cclxuICAgID4gLm9wZW4gPiBhIHtcclxuICAgICAgJixcclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnO1xyXG4gICAgICAgIGNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogQGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcclxuICAgICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheSB3aGVuIGNvbGxhcHNlZFxyXG4gICAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgPiBsaSA+IGEge1xyXG4gICAgICAgICAgY29sb3I6IEBuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xyXG4gICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogQG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICA+IC5hY3RpdmUgPiBhIHtcclxuICAgICAgICAgICYsXHJcbiAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgPiAuZGlzYWJsZWQgPiBhIHtcclxuICAgICAgICAgICYsXHJcbiAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8gTGlua3MgaW4gbmF2YmFyc1xyXG4gIC8vXHJcbiAgLy8gQWRkIGEgY2xhc3MgdG8gZW5zdXJlIGxpbmtzIG91dHNpZGUgdGhlIG5hdmJhciBuYXYgYXJlIGNvbG9yZWQgY29ycmVjdGx5LlxyXG5cclxuICAubmF2YmFyLWxpbmsge1xyXG4gICAgY29sb3I6IEBuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5idG4tbGluayB7XHJcbiAgICBjb2xvcjogQG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiBAbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcclxuICAgIH1cclxuICAgICZbZGlzYWJsZWRdLFxyXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogQG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIEludmVyc2UgbmF2YmFyXHJcblxyXG4ubmF2YmFyLWludmVyc2Uge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXItaW52ZXJzZS1iZztcclxuICBib3JkZXItY29sb3I6IEBuYXZiYXItaW52ZXJzZS1ib3JkZXI7XHJcblxyXG4gIC5uYXZiYXItYnJhbmQge1xyXG4gICAgY29sb3I6IEBuYXZiYXItaW52ZXJzZS1icmFuZC1jb2xvcjtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgY29sb3I6IEBuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWJnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5hdmJhci10ZXh0IHtcclxuICAgIGNvbG9yOiBAbmF2YmFyLWludmVyc2UtY29sb3I7XHJcbiAgfVxyXG5cclxuICAubmF2YmFyLW5hdiB7XHJcbiAgICA+IGxpID4gYSB7XHJcbiAgICAgIGNvbG9yOiBAbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcclxuXHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiBAbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiAuYWN0aXZlID4gYSB7XHJcbiAgICAgICYsXHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiBAbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICA+IC5kaXNhYmxlZCA+IGEge1xyXG4gICAgICAmLFxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogQG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIERhcmtlbiB0aGUgcmVzcG9uc2l2ZSBuYXYgdG9nZ2xlXHJcbiAgLm5hdmJhci10b2dnbGUge1xyXG4gICAgYm9yZGVyLWNvbG9yOiBAbmF2YmFyLWludmVyc2UtdG9nZ2xlLWJvcmRlci1jb2xvcjtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ob3Zlci1iZztcclxuICAgIH1cclxuICAgIC5pY29uLWJhciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubmF2YmFyLWNvbGxhcHNlLFxyXG4gIC5uYXZiYXItZm9ybSB7XHJcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbihAbmF2YmFyLWludmVyc2UtYmcsIDclKTtcclxuICB9XHJcblxyXG4gIC8vIERyb3Bkb3duc1xyXG4gIC5uYXZiYXItbmF2IHtcclxuICAgID4gLm9wZW4gPiBhIHtcclxuICAgICAgJixcclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnO1xyXG4gICAgICAgIGNvbG9yOiBAbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogQGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcclxuICAgICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheVxyXG4gICAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgPiAuZHJvcGRvd24taGVhZGVyIHtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogQG5hdmJhci1pbnZlcnNlLWJvcmRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmRpdmlkZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdmJhci1pbnZlcnNlLWJvcmRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgPiBsaSA+IGEge1xyXG4gICAgICAgICAgY29sb3I6IEBuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xyXG4gICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogQG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICA+IC5hY3RpdmUgPiBhIHtcclxuICAgICAgICAgICYsXHJcbiAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBAbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgPiAuZGlzYWJsZWQgPiBhIHtcclxuICAgICAgICAgICYsXHJcbiAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBAbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubmF2YmFyLWxpbmsge1xyXG4gICAgY29sb3I6IEBuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiBAbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5idG4tbGluayB7XHJcbiAgICBjb2xvcjogQG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiBAbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcclxuICAgIH1cclxuICAgICZbZGlzYWJsZWRdLFxyXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogQG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gTmF2YmFyIHZlcnRpY2FsIGFsaWduXHJcbi8vXHJcbi8vIFZlcnRpY2FsbHkgY2VudGVyIGVsZW1lbnRzIGluIHRoZSBuYXZiYXIuXHJcbi8vIEV4YW1wbGU6IGFuIGVsZW1lbnQgaGFzIGEgaGVpZ2h0IG9mIDMwcHgsIHNvIHdyaXRlIG91dCBgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbigzMHB4KTtgIHRvIGNhbGN1bGF0ZSB0aGUgYXBwcm9wcmlhdGUgdG9wIG1hcmdpbi5cclxuXHJcbi5uYXZiYXItdmVydGljYWwtYWxpZ24oQGVsZW1lbnQtaGVpZ2h0KSB7XHJcbiAgbWFyZ2luLXRvcDogKChAbmF2YmFyLWhlaWdodCAtIEBlbGVtZW50LWhlaWdodCkgLyAyKTtcclxuICBtYXJnaW4tYm90dG9tOiAoKEBuYXZiYXItaGVpZ2h0IC0gQGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xyXG59XHJcbiIsIi8vXHJcbi8vIFV0aWxpdHkgY2xhc3Nlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEZsb2F0c1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uY2xlYXJmaXgge1xyXG4gIC5jbGVhcmZpeCgpO1xyXG59XHJcbi5jZW50ZXItYmxvY2sge1xyXG4gIC5jZW50ZXItYmxvY2soKTtcclxufVxyXG4ucHVsbC1yaWdodCB7XHJcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XHJcbn1cclxuLnB1bGwtbGVmdCB7XHJcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbi8vIFRvZ2dsaW5nIGNvbnRlbnRcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gTm90ZTogRGVwcmVjYXRlZCAuaGlkZSBpbiBmYXZvciBvZiAuaGlkZGVuIG9yIC5zci1vbmx5IChhcyBhcHByb3ByaWF0ZSkgaW4gdjMuMC4xXHJcbi5oaWRlIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuLnNob3cge1xyXG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbn1cclxuLmludmlzaWJsZSB7XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG59XHJcbi50ZXh0LWhpZGUge1xyXG4gIC50ZXh0LWhpZGUoKTtcclxufVxyXG5cclxuXHJcbi8vIEhpZGUgZnJvbSBzY3JlZW5yZWFkZXJzIGFuZCBicm93c2Vyc1xyXG4vL1xyXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXHJcblxyXG4uaGlkZGVuIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG4vLyBGb3IgQWZmaXggcGx1Z2luXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5hZmZpeCB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG59XHJcbiIsIi8vXHJcbi8vIEJyZWFkY3J1bWJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLmJyZWFkY3J1bWIge1xyXG4gIHBhZGRpbmc6IEBicmVhZGNydW1iLXBhZGRpbmctdmVydGljYWwgQGJyZWFkY3J1bWItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gIG1hcmdpbi1ib3R0b206IEBsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IEBicmVhZGNydW1iLWJnO1xyXG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWJhc2U7XHJcblxyXG4gID4gbGkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuICAgICsgbGk6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogXCJAe2JyZWFkY3J1bWItc2VwYXJhdG9yfVxcMDBhMFwiOyAvLyBVbmljb2RlIHNwYWNlIGFkZGVkIHNpbmNlIGlubGluZS1ibG9jayBtZWFucyBub24tY29sbGFwc2luZyB3aGl0ZS1zcGFjZVxyXG4gICAgICBwYWRkaW5nOiAwIDVweDtcclxuICAgICAgY29sb3I6IEBicmVhZGNydW1iLWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiAuYWN0aXZlIHtcclxuICAgIGNvbG9yOiBAYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIFBhZ2luYXRpb24gKG11bHRpcGxlIHBhZ2VzKVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4ucGFnaW5hdGlvbiB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBtYXJnaW46IEBsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xyXG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWJhc2U7XHJcblxyXG4gID4gbGkge1xyXG4gICAgZGlzcGxheTogaW5saW5lOyAvLyBSZW1vdmUgbGlzdC1zdHlsZSBhbmQgYmxvY2stbGV2ZWwgZGVmYXVsdHNcclxuICAgID4gYSxcclxuICAgID4gc3BhbiB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgZmxvYXQ6IGxlZnQ7IC8vIENvbGxhcHNlIHdoaXRlLXNwYWNlXHJcbiAgICAgIHBhZGRpbmc6IEBwYWRkaW5nLWJhc2UtdmVydGljYWwgQHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgY29sb3I6IEBwYWdpbmF0aW9uLWNvbG9yO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAcGFnaW5hdGlvbi1iZztcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgQHBhZ2luYXRpb24tYm9yZGVyO1xyXG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcclxuICAgIH1cclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICA+IGEsXHJcbiAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgLmJvcmRlci1sZWZ0LXJhZGl1cyhAYm9yZGVyLXJhZGl1cy1iYXNlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgPiBhLFxyXG4gICAgICA+IHNwYW4ge1xyXG4gICAgICAgIC5ib3JkZXItcmlnaHQtcmFkaXVzKEBib3JkZXItcmFkaXVzLWJhc2UpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICA+IGxpID4gYSxcclxuICA+IGxpID4gc3BhbiB7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiBAcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQHBhZ2luYXRpb24taG92ZXItYmc7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogQHBhZ2luYXRpb24taG92ZXItYm9yZGVyO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiAuYWN0aXZlID4gYSxcclxuICA+IC5hY3RpdmUgPiBzcGFuIHtcclxuICAgICYsXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgIGNvbG9yOiBAcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBwYWdpbmF0aW9uLWFjdGl2ZS1iZztcclxuICAgICAgYm9yZGVyLWNvbG9yOiBAcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyO1xyXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICA+IC5kaXNhYmxlZCB7XHJcbiAgICA+IHNwYW4sXHJcbiAgICA+IHNwYW46aG92ZXIsXHJcbiAgICA+IHNwYW46Zm9jdXMsXHJcbiAgICA+IGEsXHJcbiAgICA+IGE6aG92ZXIsXHJcbiAgICA+IGE6Zm9jdXMge1xyXG4gICAgICBjb2xvcjogQHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBwYWdpbmF0aW9uLWRpc2FibGVkLWJnO1xyXG4gICAgICBib3JkZXItY29sb3I6IEBwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjtcclxuICAgICAgY3Vyc29yOiBAY3Vyc29yLWRpc2FibGVkO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gU2l6aW5nXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBMYXJnZVxyXG4ucGFnaW5hdGlvbi1sZyB7XHJcbiAgLnBhZ2luYXRpb24tc2l6ZShAcGFkZGluZy1sYXJnZS12ZXJ0aWNhbDsgQHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDsgQGZvbnQtc2l6ZS1sYXJnZTsgQGJvcmRlci1yYWRpdXMtbGFyZ2UpO1xyXG59XHJcblxyXG4vLyBTbWFsbFxyXG4ucGFnaW5hdGlvbi1zbSB7XHJcbiAgLnBhZ2luYXRpb24tc2l6ZShAcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDsgQHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDsgQGZvbnQtc2l6ZS1zbWFsbDsgQGJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG59XHJcbiIsIi8vIFBhZ2luYXRpb25cclxuXHJcbi5wYWdpbmF0aW9uLXNpemUoQHBhZGRpbmctdmVydGljYWw7IEBwYWRkaW5nLWhvcml6b250YWw7IEBmb250LXNpemU7IEBib3JkZXItcmFkaXVzKSB7XHJcbiAgPiBsaSB7XHJcbiAgICA+IGEsXHJcbiAgICA+IHNwYW4ge1xyXG4gICAgICBwYWRkaW5nOiBAcGFkZGluZy12ZXJ0aWNhbCBAcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gICAgICBmb250LXNpemU6IEBmb250LXNpemU7XHJcbiAgICB9XHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgPiBhLFxyXG4gICAgICA+IHNwYW4ge1xyXG4gICAgICAgIC5ib3JkZXItbGVmdC1yYWRpdXMoQGJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICA+IGEsXHJcbiAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgLmJvcmRlci1yaWdodC1yYWRpdXMoQGJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIFBhZ2VyIHBhZ2luYXRpb25cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4ucGFnZXIge1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBtYXJnaW46IEBsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICY6ZXh0ZW5kKC5jbGVhcmZpeCBhbGwpO1xyXG4gIGxpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgID4gYSxcclxuICAgID4gc3BhbiB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgcGFkZGluZzogNXB4IDE0cHg7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBwYWdlci1iZztcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgQHBhZ2VyLWJvcmRlcjtcclxuICAgICAgYm9yZGVyLXJhZGl1czogQHBhZ2VyLWJvcmRlci1yYWRpdXM7XHJcbiAgICB9XHJcblxyXG4gICAgPiBhOmhvdmVyLFxyXG4gICAgPiBhOmZvY3VzIHtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAcGFnZXItaG92ZXItYmc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubmV4dCB7XHJcbiAgICA+IGEsXHJcbiAgICA+IHNwYW4ge1xyXG4gICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucHJldmlvdXMge1xyXG4gICAgPiBhLFxyXG4gICAgPiBzcGFuIHtcclxuICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZGlzYWJsZWQge1xyXG4gICAgPiBhLFxyXG4gICAgPiBhOmhvdmVyLFxyXG4gICAgPiBhOmZvY3VzLFxyXG4gICAgPiBzcGFuIHtcclxuICAgICAgY29sb3I6IEBwYWdlci1kaXNhYmxlZC1jb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQHBhZ2VyLWJnO1xyXG4gICAgICBjdXJzb3I6IEBjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIExhYmVsc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmxhYmVsIHtcclxuICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgcGFkZGluZzogLjJlbSAuNmVtIC4zZW07XHJcbiAgZm9udC1zaXplOiA3NSU7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgY29sb3I6IEBsYWJlbC1jb2xvcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbiAgYm9yZGVyLXJhZGl1czogLjI1ZW07XHJcblxyXG4gIC8vIEFkZCBob3ZlciBlZmZlY3RzLCBidXQgb25seSBmb3IgbGlua3NcclxuICBhJiB7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiBAbGFiZWwtbGluay1ob3Zlci1jb2xvcjtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBFbXB0eSBsYWJlbHMgY29sbGFwc2UgYXV0b21hdGljYWxseSAobm90IGF2YWlsYWJsZSBpbiBJRTgpXHJcbiAgJjplbXB0eSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLy8gUXVpY2sgZml4IGZvciBsYWJlbHMgaW4gYnV0dG9uc1xyXG4gIC5idG4gJiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6IC0xcHg7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBDb2xvcnNcclxuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgbGFiZWxzIGdldCBkYXJrZXIgb24gOmhvdmVyKVxyXG5cclxuLmxhYmVsLWRlZmF1bHQge1xyXG4gIC5sYWJlbC12YXJpYW50KEBsYWJlbC1kZWZhdWx0LWJnKTtcclxufVxyXG5cclxuLmxhYmVsLXByaW1hcnkge1xyXG4gIC5sYWJlbC12YXJpYW50KEBsYWJlbC1wcmltYXJ5LWJnKTtcclxufVxyXG5cclxuLmxhYmVsLXN1Y2Nlc3Mge1xyXG4gIC5sYWJlbC12YXJpYW50KEBsYWJlbC1zdWNjZXNzLWJnKTtcclxufVxyXG5cclxuLmxhYmVsLWluZm8ge1xyXG4gIC5sYWJlbC12YXJpYW50KEBsYWJlbC1pbmZvLWJnKTtcclxufVxyXG5cclxuLmxhYmVsLXdhcm5pbmcge1xyXG4gIC5sYWJlbC12YXJpYW50KEBsYWJlbC13YXJuaW5nLWJnKTtcclxufVxyXG5cclxuLmxhYmVsLWRhbmdlciB7XHJcbiAgLmxhYmVsLXZhcmlhbnQoQGxhYmVsLWRhbmdlci1iZyk7XHJcbn1cclxuIiwiLy8gTGFiZWxzXHJcblxyXG4ubGFiZWwtdmFyaWFudChAY29sb3IpIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3I7XHJcblxyXG4gICZbaHJlZl0ge1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGNvbG9yLCAxMCUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBCYWRnZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBCYXNlIGNsYXNzXHJcbi5iYWRnZSB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIG1pbi13aWR0aDogMTBweDtcclxuICBwYWRkaW5nOiAzcHggN3B4O1xyXG4gIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1zbWFsbDtcclxuICBmb250LXdlaWdodDogQGJhZGdlLWZvbnQtd2VpZ2h0O1xyXG4gIGNvbG9yOiBAYmFkZ2UtY29sb3I7XHJcbiAgbGluZS1oZWlnaHQ6IEBiYWRnZS1saW5lLWhlaWdodDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogQGJhZGdlLWJnO1xyXG4gIGJvcmRlci1yYWRpdXM6IEBiYWRnZS1ib3JkZXItcmFkaXVzO1xyXG5cclxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseSAobm90IGF2YWlsYWJsZSBpbiBJRTgpXHJcbiAgJjplbXB0eSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xyXG4gIC5idG4gJiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6IC0xcHg7XHJcbiAgfVxyXG5cclxuICAuYnRuLXhzICYsXHJcbiAgLmJ0bi1ncm91cC14cyA+IC5idG4gJiB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBwYWRkaW5nOiAxcHggNXB4O1xyXG4gIH1cclxuXHJcbiAgLy8gSG92ZXIgc3RhdGUsIGJ1dCBvbmx5IGZvciBsaW5rc1xyXG4gIGEmIHtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgY29sb3I6IEBiYWRnZS1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEFjY291bnQgZm9yIGJhZGdlcyBpbiBuYXZzXHJcbiAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgPiAmLFxyXG4gIC5uYXYtcGlsbHMgPiAuYWN0aXZlID4gYSA+ICYge1xyXG4gICAgY29sb3I6IEBiYWRnZS1hY3RpdmUtY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmFkZ2UtYWN0aXZlLWJnO1xyXG4gIH1cclxuXHJcbiAgLmxpc3QtZ3JvdXAtaXRlbSA+ICYge1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gIH1cclxuXHJcbiAgLmxpc3QtZ3JvdXAtaXRlbSA+ICYgKyAmIHtcclxuICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gIH1cclxuXHJcbiAgLm5hdi1waWxscyA+IGxpID4gYSA+ICYge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDNweDtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gSnVtYm90cm9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLmp1bWJvdHJvbiB7XHJcbiAgcGFkZGluZzogQGp1bWJvdHJvbi1wYWRkaW5nIChAanVtYm90cm9uLXBhZGRpbmcgLyAyKTtcclxuICBtYXJnaW4tYm90dG9tOiBAanVtYm90cm9uLXBhZGRpbmc7XHJcbiAgY29sb3I6IEBqdW1ib3Ryb24tY29sb3I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogQGp1bWJvdHJvbi1iZztcclxuXHJcbiAgaDEsXHJcbiAgLmgxIHtcclxuICAgIGNvbG9yOiBAanVtYm90cm9uLWhlYWRpbmctY29sb3I7XHJcbiAgfVxyXG5cclxuICBwIHtcclxuICAgIG1hcmdpbi1ib3R0b206IChAanVtYm90cm9uLXBhZGRpbmcgLyAyKTtcclxuICAgIGZvbnQtc2l6ZTogQGp1bWJvdHJvbi1mb250LXNpemU7XHJcbiAgICBmb250LXdlaWdodDogMjAwO1xyXG4gIH1cclxuXHJcbiAgPiBociB7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oQGp1bWJvdHJvbi1iZywgMTAlKTtcclxuICB9XHJcblxyXG4gIC5jb250YWluZXIgJixcclxuICAuY29udGFpbmVyLWZsdWlkICYge1xyXG4gICAgYm9yZGVyLXJhZGl1czogQGJvcmRlci1yYWRpdXMtbGFyZ2U7IC8vIE9ubHkgcm91bmQgY29ybmVycyBhdCBoaWdoZXIgcmVzb2x1dGlvbnMgaWYgY29udGFpbmVkIGluIGEgY29udGFpbmVyXHJcbiAgfVxyXG5cclxuICAuY29udGFpbmVyIHtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IEBzY3JlZW4tc20tbWluKSB7XHJcbiAgICBwYWRkaW5nOiAoQGp1bWJvdHJvbi1wYWRkaW5nICogMS42KSAwO1xyXG5cclxuICAgIC5jb250YWluZXIgJixcclxuICAgIC5jb250YWluZXItZmx1aWQgJiB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogIChAanVtYm90cm9uLXBhZGRpbmcgKiAyKTtcclxuICAgICAgcGFkZGluZy1yaWdodDogKEBqdW1ib3Ryb24tcGFkZGluZyAqIDIpO1xyXG4gICAgfVxyXG5cclxuICAgIGgxLFxyXG4gICAgLmgxIHtcclxuICAgICAgZm9udC1zaXplOiAoQGZvbnQtc2l6ZS1iYXNlICogNC41KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gQWxlcnRzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gQmFzZSBzdHlsZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmFsZXJ0IHtcclxuICBwYWRkaW5nOiBAYWxlcnQtcGFkZGluZztcclxuICBtYXJnaW4tYm90dG9tOiBAbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLXJhZGl1czogQGFsZXJ0LWJvcmRlci1yYWRpdXM7XHJcblxyXG4gIC8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXHJcbiAgaDQge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICAgIC8vIFNwZWNpZmllZCBmb3IgdGhlIGg0IHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nIEBoZWFkaW5ncy1jb2xvclxyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgfVxyXG5cclxuICAvLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xyXG4gIC5hbGVydC1saW5rIHtcclxuICAgIGZvbnQtd2VpZ2h0OiBAYWxlcnQtbGluay1mb250LXdlaWdodDtcclxuICB9XHJcblxyXG4gIC8vIEltcHJvdmUgYWxpZ25tZW50IGFuZCBzcGFjaW5nIG9mIGlubmVyIGNvbnRlbnRcclxuICA+IHAsXHJcbiAgPiB1bCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxuXHJcbiAgPiBwICsgcCB7XHJcbiAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcclxuLy9cclxuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXHJcblxyXG4uYWxlcnQtZGlzbWlzc2FibGUsIC8vIFRoZSBtaXNzcGVsbGVkIC5hbGVydC1kaXNtaXNzYWJsZSB3YXMgZGVwcmVjYXRlZCBpbiAzLjIuMC5cclxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcclxuICBwYWRkaW5nLXJpZ2h0OiAoQGFsZXJ0LXBhZGRpbmcgKyAyMCk7XHJcblxyXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXHJcbiAgLmNsb3NlIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogLTJweDtcclxuICAgIHJpZ2h0OiAtMjFweDtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gIH1cclxufVxyXG5cclxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xyXG4vL1xyXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxyXG5cclxuLmFsZXJ0LXN1Y2Nlc3Mge1xyXG4gIC5hbGVydC12YXJpYW50KEBhbGVydC1zdWNjZXNzLWJnOyBAYWxlcnQtc3VjY2Vzcy1ib3JkZXI7IEBhbGVydC1zdWNjZXNzLXRleHQpO1xyXG59XHJcblxyXG4uYWxlcnQtaW5mbyB7XHJcbiAgLmFsZXJ0LXZhcmlhbnQoQGFsZXJ0LWluZm8tYmc7IEBhbGVydC1pbmZvLWJvcmRlcjsgQGFsZXJ0LWluZm8tdGV4dCk7XHJcbn1cclxuXHJcbi5hbGVydC13YXJuaW5nIHtcclxuICAuYWxlcnQtdmFyaWFudChAYWxlcnQtd2FybmluZy1iZzsgQGFsZXJ0LXdhcm5pbmctYm9yZGVyOyBAYWxlcnQtd2FybmluZy10ZXh0KTtcclxufVxyXG5cclxuLmFsZXJ0LWRhbmdlciB7XHJcbiAgLmFsZXJ0LXZhcmlhbnQoQGFsZXJ0LWRhbmdlci1iZzsgQGFsZXJ0LWRhbmdlci1ib3JkZXI7IEBhbGVydC1kYW5nZXItdGV4dCk7XHJcbn1cclxuIiwiLy8gQWxlcnRzXHJcblxyXG4uYWxlcnQtdmFyaWFudChAYmFja2dyb3VuZDsgQGJvcmRlcjsgQHRleHQtY29sb3IpIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmFja2dyb3VuZDtcclxuICBib3JkZXItY29sb3I6IEBib3JkZXI7XHJcbiAgY29sb3I6IEB0ZXh0LWNvbG9yO1xyXG5cclxuICBociB7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oQGJvcmRlciwgNSUpO1xyXG4gIH1cclxuICAuYWxlcnQtbGluayB7XHJcbiAgICBjb2xvcjogZGFya2VuKEB0ZXh0LWNvbG9yLCAxMCUpO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBQcm9ncmVzcyBiYXJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gQmFyIGFuaW1hdGlvbnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gV2ViS2l0XHJcbkAtd2Via2l0LWtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XHJcbiAgZnJvbSAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0MHB4IDA7IH1cclxuICB0byAgICB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxyXG59XHJcblxyXG4vLyBTcGVjIGFuZCBJRTEwK1xyXG5Aa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcclxuICBmcm9tICB7IGJhY2tncm91bmQtcG9zaXRpb246IDQwcHggMDsgfVxyXG4gIHRvICAgIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XHJcbn1cclxuXHJcblxyXG4vLyBCYXIgaXRzZWxmXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIE91dGVyIGNvbnRhaW5lclxyXG4ucHJvZ3Jlc3Mge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgaGVpZ2h0OiBAbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgbWFyZ2luLWJvdHRvbTogQGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IEBwcm9ncmVzcy1iZztcclxuICBib3JkZXItcmFkaXVzOiBAcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cztcclxuICAuYm94LXNoYWRvdyhpbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwuMSkpO1xyXG59XHJcblxyXG4vLyBCYXIgb2YgcHJvZ3Jlc3NcclxuLnByb2dyZXNzLWJhciB7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgd2lkdGg6IDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBmb250LXNpemU6IEBmb250LXNpemUtc21hbGw7XHJcbiAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBjb2xvcjogQHByb2dyZXNzLWJhci1jb2xvcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogQHByb2dyZXNzLWJhci1iZztcclxuICAuYm94LXNoYWRvdyhpbnNldCAwIC0xcHggMCByZ2JhKDAsMCwwLC4xNSkpO1xyXG4gIC50cmFuc2l0aW9uKHdpZHRoIC42cyBlYXNlKTtcclxufVxyXG5cclxuLy8gU3RyaXBlZCBiYXJzXHJcbi8vXHJcbi8vIGAucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyYCBpcyBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBpbiBmYXZvciBvZiB0aGVcclxuLy8gYC5wcm9ncmVzcy1iYXItc3RyaXBlZGAgY2xhc3MsIHdoaWNoIHlvdSBqdXN0IGFkZCB0byBhbiBleGlzdGluZ1xyXG4vLyBgLnByb2dyZXNzLWJhcmAuXHJcbi5wcm9ncmVzcy1zdHJpcGVkIC5wcm9ncmVzcy1iYXIsXHJcbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XHJcbiAgI2dyYWRpZW50ID4gLnN0cmlwZWQoKTtcclxuICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggNDBweDtcclxufVxyXG5cclxuLy8gQ2FsbCBhbmltYXRpb24gZm9yIHRoZSBhY3RpdmUgb25lXHJcbi8vXHJcbi8vIGAucHJvZ3Jlc3MuYWN0aXZlIC5wcm9ncmVzcy1iYXJgIGlzIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGluIGZhdm9yIG9mIHRoZVxyXG4vLyBgLnByb2dyZXNzLWJhci5hY3RpdmVgIGFwcHJvYWNoLlxyXG4ucHJvZ3Jlc3MuYWN0aXZlIC5wcm9ncmVzcy1iYXIsXHJcbi5wcm9ncmVzcy1iYXIuYWN0aXZlIHtcclxuICAuYW5pbWF0aW9uKHByb2dyZXNzLWJhci1zdHJpcGVzIDJzIGxpbmVhciBpbmZpbml0ZSk7XHJcbn1cclxuXHJcblxyXG4vLyBWYXJpYXRpb25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5wcm9ncmVzcy1iYXItc3VjY2VzcyB7XHJcbiAgLnByb2dyZXNzLWJhci12YXJpYW50KEBwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZyk7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1iYXItaW5mbyB7XHJcbiAgLnByb2dyZXNzLWJhci12YXJpYW50KEBwcm9ncmVzcy1iYXItaW5mby1iZyk7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1iYXItd2FybmluZyB7XHJcbiAgLnByb2dyZXNzLWJhci12YXJpYW50KEBwcm9ncmVzcy1iYXItd2FybmluZy1iZyk7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1iYXItZGFuZ2VyIHtcclxuICAucHJvZ3Jlc3MtYmFyLXZhcmlhbnQoQHByb2dyZXNzLWJhci1kYW5nZXItYmcpO1xyXG59XHJcbiIsIi8vIEdyYWRpZW50c1xyXG5cclxuI2dyYWRpZW50IHtcclxuXHJcbiAgLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XHJcbiAgLy9cclxuICAvLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxyXG4gIC8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXHJcbiAgLmhvcml6b250YWwoQHN0YXJ0LWNvbG9yOiAjNTU1OyBAZW5kLWNvbG9yOiAjMzMzOyBAc3RhcnQtcGVyY2VudDogMCU7IEBlbmQtcGVyY2VudDogMTAwJSkge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgQHN0YXJ0LWNvbG9yIEBzdGFydC1wZXJjZW50LCBAZW5kLWNvbG9yIEBlbmQtcGVyY2VudCk7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsIEBzdGFydC1jb2xvciBAc3RhcnQtcGVyY2VudCwgQGVuZC1jb2xvciBAZW5kLXBlcmNlbnQpOyAvLyBPcGVyYSAxMlxyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCBAc3RhcnQtY29sb3IgQHN0YXJ0LXBlcmNlbnQsIEBlbmQtY29sb3IgQGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4gICAgZmlsdGVyOiBlKCUoXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nJWQnLCBlbmRDb2xvcnN0cj0nJWQnLCBHcmFkaWVudFR5cGU9MSlcIixhcmdiKEBzdGFydC1jb2xvciksYXJnYihAZW5kLWNvbG9yKSkpOyAvLyBJRTkgYW5kIGRvd25cclxuICB9XHJcblxyXG4gIC8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cclxuICAvL1xyXG4gIC8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXHJcbiAgLy8gQ29sb3Igc3RvcHMgYXJlIG5vdCBhdmFpbGFibGUgaW4gSUU5IGFuZCBiZWxvdy5cclxuICAudmVydGljYWwoQHN0YXJ0LWNvbG9yOiAjNTU1OyBAZW5kLWNvbG9yOiAjMzMzOyBAc3RhcnQtcGVyY2VudDogMCU7IEBlbmQtcGVyY2VudDogMTAwJSkge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCBAc3RhcnQtY29sb3IgQHN0YXJ0LXBlcmNlbnQsIEBlbmQtY29sb3IgQGVuZC1wZXJjZW50KTsgIC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0LWNvbG9yIEBzdGFydC1wZXJjZW50LCBAZW5kLWNvbG9yIEBlbmQtcGVyY2VudCk7ICAvLyBPcGVyYSAxMlxyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgQHN0YXJ0LWNvbG9yIEBzdGFydC1wZXJjZW50LCBAZW5kLWNvbG9yIEBlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuICAgIGZpbHRlcjogZSglKFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyVkJywgZW5kQ29sb3JzdHI9JyVkJywgR3JhZGllbnRUeXBlPTApXCIsYXJnYihAc3RhcnQtY29sb3IpLGFyZ2IoQGVuZC1jb2xvcikpKTsgLy8gSUU5IGFuZCBkb3duXHJcbiAgfVxyXG5cclxuICAuZGlyZWN0aW9uYWwoQHN0YXJ0LWNvbG9yOiAjNTU1OyBAZW5kLWNvbG9yOiAjMzMzOyBAZGVnOiA0NWRlZykge1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoQGRlZywgQHN0YXJ0LWNvbG9yLCBAZW5kLWNvbG9yKTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoQGRlZywgQHN0YXJ0LWNvbG9yLCBAZW5kLWNvbG9yKTsgLy8gT3BlcmEgMTJcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChAZGVnLCBAc3RhcnQtY29sb3IsIEBlbmQtY29sb3IpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXHJcbiAgfVxyXG4gIC5ob3Jpem9udGFsLXRocmVlLWNvbG9ycyhAc3RhcnQtY29sb3I6ICMwMGIzZWU7IEBtaWQtY29sb3I6ICM3YTQzYjY7IEBjb2xvci1zdG9wOiA1MCU7IEBlbmQtY29sb3I6ICNjMzMyNWYpIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIEBzdGFydC1jb2xvciwgQG1pZC1jb2xvciBAY29sb3Itc3RvcCwgQGVuZC1jb2xvcik7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgQHN0YXJ0LWNvbG9yLCBAbWlkLWNvbG9yIEBjb2xvci1zdG9wLCBAZW5kLWNvbG9yKTtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgQHN0YXJ0LWNvbG9yLCBAbWlkLWNvbG9yIEBjb2xvci1zdG9wLCBAZW5kLWNvbG9yKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBmaWx0ZXI6IGUoJShcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSclZCcsIGVuZENvbG9yc3RyPSclZCcsIEdyYWRpZW50VHlwZT0xKVwiLGFyZ2IoQHN0YXJ0LWNvbG9yKSxhcmdiKEBlbmQtY29sb3IpKSk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXHJcbiAgfVxyXG4gIC52ZXJ0aWNhbC10aHJlZS1jb2xvcnMoQHN0YXJ0LWNvbG9yOiAjMDBiM2VlOyBAbWlkLWNvbG9yOiAjN2E0M2I2OyBAY29sb3Itc3RvcDogNTAlOyBAZW5kLWNvbG9yOiAjYzMzMjVmKSB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChAc3RhcnQtY29sb3IsIEBtaWQtY29sb3IgQGNvbG9yLXN0b3AsIEBlbmQtY29sb3IpO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KEBzdGFydC1jb2xvciwgQG1pZC1jb2xvciBAY29sb3Itc3RvcCwgQGVuZC1jb2xvcik7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoQHN0YXJ0LWNvbG9yLCBAbWlkLWNvbG9yIEBjb2xvci1zdG9wLCBAZW5kLWNvbG9yKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBmaWx0ZXI6IGUoJShcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSclZCcsIGVuZENvbG9yc3RyPSclZCcsIEdyYWRpZW50VHlwZT0wKVwiLGFyZ2IoQHN0YXJ0LWNvbG9yKSxhcmdiKEBlbmQtY29sb3IpKSk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXHJcbiAgfVxyXG4gIC5yYWRpYWwoQGlubmVyLWNvbG9yOiAjNTU1OyBAb3V0ZXItY29sb3I6ICMzMzMpIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgQGlubmVyLWNvbG9yLCBAb3V0ZXItY29sb3IpO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgQGlubmVyLWNvbG9yLCBAb3V0ZXItY29sb3IpO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICB9XHJcbiAgLnN0cmlwZWQoQGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4xNSk7IEBhbmdsZTogNDVkZWcpIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KEBhbmdsZSwgQGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIEBjb2xvciA1MCUsIEBjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KEBhbmdsZSwgQGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIEBjb2xvciA1MCUsIEBjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KEBhbmdsZSwgQGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIEBjb2xvciA1MCUsIEBjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xyXG4gIH1cclxufVxyXG4iLCIvLyBQcm9ncmVzcyBiYXJzXHJcblxyXG4ucHJvZ3Jlc3MtYmFyLXZhcmlhbnQoQGNvbG9yKSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yO1xyXG5cclxuICAvLyBEZXByZWNhdGVkIHBhcmVudCBjbGFzcyByZXF1aXJlbWVudCBhcyBvZiB2My4yLjBcclxuICAucHJvZ3Jlc3Mtc3RyaXBlZCAmIHtcclxuICAgICNncmFkaWVudCA+IC5zdHJpcGVkKCk7XHJcbiAgfVxyXG59XHJcbiIsIi5tZWRpYSB7XHJcbiAgLy8gUHJvcGVyIHNwYWNpbmcgYmV0d2VlbiBpbnN0YW5jZXMgb2YgLm1lZGlhXHJcbiAgbWFyZ2luLXRvcDogMTVweDtcclxuXHJcbiAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLm1lZGlhLFxyXG4ubWVkaWEtYm9keSB7XHJcbiAgem9vbTogMTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ubWVkaWEtYm9keSB7XHJcbiAgd2lkdGg6IDEwMDAwcHg7XHJcbn1cclxuXHJcbi5tZWRpYS1vYmplY3Qge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4ubWVkaWEtcmlnaHQsXHJcbi5tZWRpYSA+IC5wdWxsLXJpZ2h0IHtcclxuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbn1cclxuXHJcbi5tZWRpYS1sZWZ0LFxyXG4ubWVkaWEgPiAucHVsbC1sZWZ0IHtcclxuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG59XHJcblxyXG4ubWVkaWEtbGVmdCxcclxuLm1lZGlhLXJpZ2h0LFxyXG4ubWVkaWEtYm9keSB7XHJcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG59XHJcblxyXG4ubWVkaWEtbWlkZGxlIHtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG4ubWVkaWEtYm90dG9tIHtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xyXG59XHJcblxyXG4vLyBSZXNldCBtYXJnaW5zIG9uIGhlYWRpbmdzIGZvciB0aWdodGVyIGRlZmF1bHQgc3BhY2luZ1xyXG4ubWVkaWEtaGVhZGluZyB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbn1cclxuXHJcbi8vIE1lZGlhIGxpc3QgdmFyaWF0aW9uXHJcbi8vXHJcbi8vIFVuZG8gZGVmYXVsdCB1bC9vbCBzdHlsZXNcclxuLm1lZGlhLWxpc3Qge1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcbiIsIi8vXHJcbi8vIExpc3QgZ3JvdXBzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gQmFzZSBjbGFzc1xyXG4vL1xyXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxyXG5cclxuLmxpc3QtZ3JvdXAge1xyXG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxyXG59XHJcblxyXG5cclxuLy8gSW5kaXZpZHVhbCBsaXN0IGl0ZW1zXHJcbi8vXHJcbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cclxuXHJcbi5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nOiAxMHB4IDE1cHg7XHJcbiAgLy8gUGxhY2UgdGhlIGJvcmRlciBvbiB0aGUgbGlzdCBpdGVtcyBhbmQgbmVnYXRpdmUgbWFyZ2luIHVwIGZvciBiZXR0ZXIgc3R5bGluZ1xyXG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogQGxpc3QtZ3JvdXAtYmc7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgQGxpc3QtZ3JvdXAtYm9yZGVyO1xyXG5cclxuICAvLyBSb3VuZCB0aGUgZmlyc3QgYW5kIGxhc3QgaXRlbXNcclxuICAmOmZpcnN0LWNoaWxkIHtcclxuICAgIC5ib3JkZXItdG9wLXJhZGl1cyhAbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcclxuICB9XHJcbiAgJjpsYXN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAuYm9yZGVyLWJvdHRvbS1yYWRpdXMoQGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gTGlua2VkIGxpc3QgaXRlbXNcclxuLy9cclxuLy8gVXNlIGFuY2hvciBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgbGlua2VkIGxpc3QgaXRlbXMuXHJcbi8vIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2hvd2luZyBzZWxlY3RlZCBpdGVtcy5cclxuXHJcbmEubGlzdC1ncm91cC1pdGVtIHtcclxuICBjb2xvcjogQGxpc3QtZ3JvdXAtbGluay1jb2xvcjtcclxuXHJcbiAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcclxuICAgIGNvbG9yOiBAbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I7XHJcbiAgfVxyXG5cclxuICAvLyBIb3ZlciBzdGF0ZVxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjb2xvcjogQGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IEBsaXN0LWdyb3VwLWhvdmVyLWJnO1xyXG4gIH1cclxufVxyXG5cclxuLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgLy8gRGlzYWJsZWQgc3RhdGVcclxuICAmLmRpc2FibGVkLFxyXG4gICYuZGlzYWJsZWQ6aG92ZXIsXHJcbiAgJi5kaXNhYmxlZDpmb2N1cyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbGlzdC1ncm91cC1kaXNhYmxlZC1iZztcclxuICAgIGNvbG9yOiBAbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcclxuICAgIGN1cnNvcjogQGN1cnNvci1kaXNhYmxlZDtcclxuXHJcbiAgICAvLyBGb3JjZSBjb2xvciB0byBpbmhlcml0IGZvciBjdXN0b20gY29udGVudFxyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcclxuICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICB9XHJcbiAgICAubGlzdC1ncm91cC1pdGVtLXRleHQge1xyXG4gICAgICBjb2xvcjogQGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEFjdGl2ZSBjbGFzcyBvbiBpdGVtIGl0c2VsZiwgbm90IHBhcmVudFxyXG4gICYuYWN0aXZlLFxyXG4gICYuYWN0aXZlOmhvdmVyLFxyXG4gICYuYWN0aXZlOmZvY3VzIHtcclxuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXHJcbiAgICBjb2xvcjogQGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGxpc3QtZ3JvdXAtYWN0aXZlLWJnO1xyXG4gICAgYm9yZGVyLWNvbG9yOiBAbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyO1xyXG5cclxuICAgIC8vIEZvcmNlIGNvbG9yIHRvIGluaGVyaXQgZm9yIGN1c3RvbSBjb250ZW50XHJcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsXHJcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcgPiBzbWFsbCxcclxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IC5zbWFsbCB7XHJcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgfVxyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcclxuICAgICAgY29sb3I6IEBsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIENvbnRleHR1YWwgdmFyaWFudHNcclxuLy9cclxuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cclxuLy8gT3JnYW5pemF0aW9uYWxseSwgdGhpcyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIGA6aG92ZXJgIHN0YXRlcy5cclxuXHJcbi5saXN0LWdyb3VwLWl0ZW0tdmFyaWFudChzdWNjZXNzOyBAc3RhdGUtc3VjY2Vzcy1iZzsgQHN0YXRlLXN1Y2Nlc3MtdGV4dCk7XHJcbi5saXN0LWdyb3VwLWl0ZW0tdmFyaWFudChpbmZvOyBAc3RhdGUtaW5mby1iZzsgQHN0YXRlLWluZm8tdGV4dCk7XHJcbi5saXN0LWdyb3VwLWl0ZW0tdmFyaWFudCh3YXJuaW5nOyBAc3RhdGUtd2FybmluZy1iZzsgQHN0YXRlLXdhcm5pbmctdGV4dCk7XHJcbi5saXN0LWdyb3VwLWl0ZW0tdmFyaWFudChkYW5nZXI7IEBzdGF0ZS1kYW5nZXItYmc7IEBzdGF0ZS1kYW5nZXItdGV4dCk7XHJcblxyXG5cclxuLy8gQ3VzdG9tIGNvbnRlbnQgb3B0aW9uc1xyXG4vL1xyXG4vLyBFeHRyYSBjbGFzc2VzIGZvciBjcmVhdGluZyB3ZWxsLWZvcm1hdHRlZCBjb250ZW50IHdpdGhpbiBgLmxpc3QtZ3JvdXAtaXRlbWBzLlxyXG5cclxuLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDVweDtcclxufVxyXG4ubGlzdC1ncm91cC1pdGVtLXRleHQge1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgbGluZS1oZWlnaHQ6IDEuMztcclxufVxyXG4iLCIvLyBMaXN0IEdyb3Vwc1xyXG5cclxuLmxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KEBzdGF0ZTsgQGJhY2tncm91bmQ7IEBjb2xvcikge1xyXG4gIC5saXN0LWdyb3VwLWl0ZW0tQHtzdGF0ZX0ge1xyXG4gICAgY29sb3I6IEBjb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IEBiYWNrZ3JvdW5kO1xyXG5cclxuICAgIGEmIHtcclxuICAgICAgY29sb3I6IEBjb2xvcjtcclxuXHJcbiAgICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XHJcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiBAY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBiYWNrZ3JvdW5kLCA1JSk7XHJcbiAgICAgIH1cclxuICAgICAgJi5hY3RpdmUsXHJcbiAgICAgICYuYWN0aXZlOmhvdmVyLFxyXG4gICAgICAmLmFjdGl2ZTpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogQGNvbG9yO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIFBhbmVsc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEJhc2UgY2xhc3NcclxuLnBhbmVsIHtcclxuICBtYXJnaW4tYm90dG9tOiBAbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogQHBhbmVsLWJnO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1yYWRpdXM6IEBwYW5lbC1ib3JkZXItcmFkaXVzO1xyXG4gIC5ib3gtc2hhZG93KDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNSkpO1xyXG59XHJcblxyXG4vLyBQYW5lbCBjb250ZW50c1xyXG4ucGFuZWwtYm9keSB7XHJcbiAgcGFkZGluZzogQHBhbmVsLWJvZHktcGFkZGluZztcclxuICAmOmV4dGVuZCguY2xlYXJmaXggYWxsKTtcclxufVxyXG5cclxuLy8gT3B0aW9uYWwgaGVhZGluZ1xyXG4ucGFuZWwtaGVhZGluZyB7XHJcbiAgcGFkZGluZzogQHBhbmVsLWhlYWRpbmctcGFkZGluZztcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgLmJvcmRlci10b3AtcmFkaXVzKChAcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcclxuXHJcbiAgPiAuZHJvcGRvd24gLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICB9XHJcbn1cclxuXHJcbi8vIFdpdGhpbiBoZWFkaW5nLCBzdHJpcCBhbnkgYGgqYCB0YWcgb2YgaXRzIGRlZmF1bHQgbWFyZ2lucyBmb3Igc3BhY2luZy5cclxuLnBhbmVsLXRpdGxlIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgZm9udC1zaXplOiBjZWlsKChAZm9udC1zaXplLWJhc2UgKiAxLjEyNSkpO1xyXG4gIGNvbG9yOiBpbmhlcml0O1xyXG5cclxuICA+IGEsXHJcbiAgPiBzbWFsbCxcclxuICA+IC5zbWFsbCxcclxuICA+IHNtYWxsID4gYSxcclxuICA+IC5zbWFsbCA+IGEge1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBPcHRpb25hbCBmb290ZXIgKHN0YXlzIGdyYXkgaW4gZXZlcnkgbW9kaWZpZXIgY2xhc3MpXHJcbi5wYW5lbC1mb290ZXIge1xyXG4gIHBhZGRpbmc6IEBwYW5lbC1mb290ZXItcGFkZGluZztcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcGFuZWwtZm9vdGVyLWJnO1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBAcGFuZWwtaW5uZXItYm9yZGVyO1xyXG4gIC5ib3JkZXItYm90dG9tLXJhZGl1cygoQHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XHJcbn1cclxuXHJcblxyXG4vLyBMaXN0IGdyb3VwcyBpbiBwYW5lbHNcclxuLy9cclxuLy8gQnkgZGVmYXVsdCwgc3BhY2Ugb3V0IGxpc3QgZ3JvdXAgY29udGVudCBmcm9tIHBhbmVsIGhlYWRpbmdzIHRvIGFjY291bnQgZm9yXHJcbi8vIGFueSBraW5kIG9mIGN1c3RvbSBjb250ZW50IGJldHdlZW4gdGhlIHR3by5cclxuXHJcbi5wYW5lbCB7XHJcbiAgPiAubGlzdC1ncm91cCxcclxuICA+IC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgICAgIGJvcmRlci13aWR0aDogMXB4IDA7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQWRkIGJvcmRlciB0b3AgcmFkaXVzIGZvciBmaXJzdCBvbmVcclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBib3JkZXItdG9wOiAwO1xyXG4gICAgICAgIC5ib3JkZXItdG9wLXJhZGl1cygoQHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIEFkZCBib3JkZXIgYm90dG9tIHJhZGl1cyBmb3IgbGFzdCBvbmVcclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICAuYm9yZGVyLWJvdHRvbS1yYWRpdXMoKEBwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8vIENvbGxhcHNlIHNwYWNlIGJldHdlZW4gd2hlbiB0aGVyZSdzIG5vIGFkZGl0aW9uYWwgY29udGVudC5cclxuLnBhbmVsLWhlYWRpbmcgKyAubGlzdC1ncm91cCB7XHJcbiAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XHJcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xyXG4gIH1cclxufVxyXG4ubGlzdC1ncm91cCArIC5wYW5lbC1mb290ZXIge1xyXG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XHJcbn1cclxuXHJcbi8vIFRhYmxlcyBpbiBwYW5lbHNcclxuLy9cclxuLy8gUGxhY2UgYSBub24tYm9yZGVyZWQgYC50YWJsZWAgd2l0aGluIGEgcGFuZWwgKG5vdCB3aXRoaW4gYSBgLnBhbmVsLWJvZHlgKSBhbmRcclxuLy8gd2F0Y2ggaXQgZ28gZnVsbCB3aWR0aC5cclxuXHJcbi5wYW5lbCB7XHJcbiAgPiAudGFibGUsXHJcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSxcclxuICA+IC5wYW5lbC1jb2xsYXBzZSA+IC50YWJsZSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgIGNhcHRpb24ge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IEBwYW5lbC1ib2R5LXBhZGRpbmc7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IEBwYW5lbC1ib2R5LXBhZGRpbmc7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXHJcbiAgPiAudGFibGU6Zmlyc3QtY2hpbGQsXHJcbiAgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCB7XHJcbiAgICAuYm9yZGVyLXRvcC1yYWRpdXMoKEBwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xyXG5cclxuICAgID4gdGhlYWQ6Zmlyc3QtY2hpbGQsXHJcbiAgICA+IHRib2R5OmZpcnN0LWNoaWxkIHtcclxuICAgICAgPiB0cjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogKEBwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IChAcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xyXG5cclxuICAgICAgICB0ZDpmaXJzdC1jaGlsZCxcclxuICAgICAgICB0aDpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAoQHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGQ6bGFzdC1jaGlsZCxcclxuICAgICAgICB0aDpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAoQHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLy8gQWRkIGJvcmRlciBib3R0b20gcmFkaXVzIGZvciBsYXN0IG9uZVxyXG4gID4gLnRhYmxlOmxhc3QtY2hpbGQsXHJcbiAgPiAudGFibGUtcmVzcG9uc2l2ZTpsYXN0LWNoaWxkID4gLnRhYmxlOmxhc3QtY2hpbGQge1xyXG4gICAgLmJvcmRlci1ib3R0b20tcmFkaXVzKChAcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcclxuXHJcbiAgICA+IHRib2R5Omxhc3QtY2hpbGQsXHJcbiAgICA+IHRmb290Omxhc3QtY2hpbGQge1xyXG4gICAgICA+IHRyOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IChAcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAoQHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcclxuXHJcbiAgICAgICAgdGQ6Zmlyc3QtY2hpbGQsXHJcbiAgICAgICAgdGg6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogKEBwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRkOmxhc3QtY2hpbGQsXHJcbiAgICAgICAgdGg6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogKEBwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gID4gLnBhbmVsLWJvZHkgKyAudGFibGUsXHJcbiAgPiAucGFuZWwtYm9keSArIC50YWJsZS1yZXNwb25zaXZlLFxyXG4gID4gLnRhYmxlICsgLnBhbmVsLWJvZHksXHJcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSArIC5wYW5lbC1ib2R5IHtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBAdGFibGUtYm9yZGVyLWNvbG9yO1xyXG4gIH1cclxuICA+IC50YWJsZSA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGgsXHJcbiAgPiAudGFibGUgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRkIHtcclxuICAgIGJvcmRlci10b3A6IDA7XHJcbiAgfVxyXG4gID4gLnRhYmxlLWJvcmRlcmVkLFxyXG4gID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQge1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgPiB0aGVhZCxcclxuICAgID4gdGJvZHksXHJcbiAgICA+IHRmb290IHtcclxuICAgICAgPiB0ciB7XHJcbiAgICAgICAgPiB0aDpmaXJzdC1jaGlsZCxcclxuICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICA+IHRoOmxhc3QtY2hpbGQsXHJcbiAgICAgICAgPiB0ZDpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgID4gdGhlYWQsXHJcbiAgICA+IHRib2R5IHtcclxuICAgICAgPiB0cjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgPiB0ZCxcclxuICAgICAgICA+IHRoIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICA+IHRib2R5LFxyXG4gICAgPiB0Zm9vdCB7XHJcbiAgICAgID4gdHI6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgPiB0ZCxcclxuICAgICAgICA+IHRoIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gID4gLnRhYmxlLXJlc3BvbnNpdmUge1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBDb2xsYXBzYWJsZSBwYW5lbHMgKGFrYSwgYWNjb3JkaW9uKVxyXG4vL1xyXG4vLyBXcmFwIGEgc2VyaWVzIG9mIHBhbmVscyBpbiBgLnBhbmVsLWdyb3VwYCB0byB0dXJuIHRoZW0gaW50byBhbiBhY2NvcmRpb24gd2l0aFxyXG4vLyB0aGUgaGVscCBvZiBvdXIgY29sbGFwc2UgSmF2YVNjcmlwdCBwbHVnaW4uXHJcblxyXG4ucGFuZWwtZ3JvdXAge1xyXG4gIG1hcmdpbi1ib3R0b206IEBsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuXHJcbiAgLy8gVGlnaHRlbiB1cCBtYXJnaW4gc28gaXQncyBvbmx5IGJldHdlZW4gcGFuZWxzXHJcbiAgLnBhbmVsIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiBAcGFuZWwtYm9yZGVyLXJhZGl1cztcclxuXHJcbiAgICArIC5wYW5lbCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5wYW5lbC1oZWFkaW5nIHtcclxuICAgIGJvcmRlci1ib3R0b206IDA7XHJcblxyXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSxcclxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xyXG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgQHBhbmVsLWlubmVyLWJvcmRlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5wYW5lbC1mb290ZXIge1xyXG4gICAgYm9yZGVyLXRvcDogMDtcclxuICAgICsgLnBhbmVsLWNvbGxhcHNlIC5wYW5lbC1ib2R5IHtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEBwYW5lbC1pbm5lci1ib3JkZXI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zXHJcbi5wYW5lbC1kZWZhdWx0IHtcclxuICAucGFuZWwtdmFyaWFudChAcGFuZWwtZGVmYXVsdC1ib3JkZXI7IEBwYW5lbC1kZWZhdWx0LXRleHQ7IEBwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc7IEBwYW5lbC1kZWZhdWx0LWJvcmRlcik7XHJcbn1cclxuLnBhbmVsLXByaW1hcnkge1xyXG4gIC5wYW5lbC12YXJpYW50KEBwYW5lbC1wcmltYXJ5LWJvcmRlcjsgQHBhbmVsLXByaW1hcnktdGV4dDsgQHBhbmVsLXByaW1hcnktaGVhZGluZy1iZzsgQHBhbmVsLXByaW1hcnktYm9yZGVyKTtcclxufVxyXG4ucGFuZWwtc3VjY2VzcyB7XHJcbiAgLnBhbmVsLXZhcmlhbnQoQHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOyBAcGFuZWwtc3VjY2Vzcy10ZXh0OyBAcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnOyBAcGFuZWwtc3VjY2Vzcy1ib3JkZXIpO1xyXG59XHJcbi5wYW5lbC1pbmZvIHtcclxuICAucGFuZWwtdmFyaWFudChAcGFuZWwtaW5mby1ib3JkZXI7IEBwYW5lbC1pbmZvLXRleHQ7IEBwYW5lbC1pbmZvLWhlYWRpbmctYmc7IEBwYW5lbC1pbmZvLWJvcmRlcik7XHJcbn1cclxuLnBhbmVsLXdhcm5pbmcge1xyXG4gIC5wYW5lbC12YXJpYW50KEBwYW5lbC13YXJuaW5nLWJvcmRlcjsgQHBhbmVsLXdhcm5pbmctdGV4dDsgQHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZzsgQHBhbmVsLXdhcm5pbmctYm9yZGVyKTtcclxufVxyXG4ucGFuZWwtZGFuZ2VyIHtcclxuICAucGFuZWwtdmFyaWFudChAcGFuZWwtZGFuZ2VyLWJvcmRlcjsgQHBhbmVsLWRhbmdlci10ZXh0OyBAcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmc7IEBwYW5lbC1kYW5nZXItYm9yZGVyKTtcclxufVxyXG4iLCIvLyBQYW5lbHNcclxuXHJcbi5wYW5lbC12YXJpYW50KEBib3JkZXI7IEBoZWFkaW5nLXRleHQtY29sb3I7IEBoZWFkaW5nLWJnLWNvbG9yOyBAaGVhZGluZy1ib3JkZXIpIHtcclxuICBib3JkZXItY29sb3I6IEBib3JkZXI7XHJcblxyXG4gICYgPiAucGFuZWwtaGVhZGluZyB7XHJcbiAgICBjb2xvcjogQGhlYWRpbmctdGV4dC1jb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IEBoZWFkaW5nLWJnLWNvbG9yO1xyXG4gICAgYm9yZGVyLWNvbG9yOiBAaGVhZGluZy1ib3JkZXI7XHJcblxyXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XHJcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IEBib3JkZXI7XHJcbiAgICB9XHJcbiAgICAuYmFkZ2Uge1xyXG4gICAgICBjb2xvcjogQGhlYWRpbmctYmctY29sb3I7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBoZWFkaW5nLXRleHQtY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYgPiAucGFuZWwtZm9vdGVyIHtcclxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xyXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiBAYm9yZGVyO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBFbWJlZHMgcmVzcG9uc2l2ZVxyXG4vL1xyXG4vLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cclxuXHJcbi5lbWJlZC1yZXNwb25zaXZlIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSxcclxuICBpZnJhbWUsXHJcbiAgZW1iZWQsXHJcbiAgb2JqZWN0LFxyXG4gIHZpZGVvIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJvcmRlcjogMDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE1vZGlmaWVyIGNsYXNzIGZvciAxNjo5IGFzcGVjdCByYXRpb1xyXG4uZW1iZWQtcmVzcG9uc2l2ZS0xNmJ5OSB7XHJcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcclxufVxyXG5cclxuLy8gTW9kaWZpZXIgY2xhc3MgZm9yIDQ6MyBhc3BlY3QgcmF0aW9cclxuLmVtYmVkLXJlc3BvbnNpdmUtNGJ5MyB7XHJcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcclxufVxyXG4iLCIvL1xyXG4vLyBXZWxsc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEJhc2UgY2xhc3NcclxuLndlbGwge1xyXG4gIG1pbi1oZWlnaHQ6IDIwcHg7XHJcbiAgcGFkZGluZzogMTlweDtcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6IEB3ZWxsLWJnO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIEB3ZWxsLWJvcmRlcjtcclxuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG4gIC5ib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNSkpO1xyXG4gIGJsb2NrcXVvdGUge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjZGRkO1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLC4xNSk7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBTaXplc1xyXG4ud2VsbC1sZyB7XHJcbiAgcGFkZGluZzogMjRweDtcclxuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cy1sYXJnZTtcclxufVxyXG4ud2VsbC1zbSB7XHJcbiAgcGFkZGluZzogOXB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLXNtYWxsO1xyXG59XHJcbiIsIi8vXHJcbi8vIENsb3NlIGljb25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLmNsb3NlIHtcclxuICBmbG9hdDogcmlnaHQ7XHJcbiAgZm9udC1zaXplOiAoQGZvbnQtc2l6ZS1iYXNlICogMS41KTtcclxuICBmb250LXdlaWdodDogQGNsb3NlLWZvbnQtd2VpZ2h0O1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIGNvbG9yOiBAY2xvc2UtY29sb3I7XHJcbiAgdGV4dC1zaGFkb3c6IEBjbG9zZS10ZXh0LXNoYWRvdztcclxuICAub3BhY2l0eSguMik7XHJcblxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBjb2xvcjogQGNsb3NlLWNvbG9yO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgLm9wYWNpdHkoLjUpO1xyXG4gIH1cclxuXHJcbiAgLy8gQWRkaXRpb25hbCBwcm9wZXJ0aWVzIGZvciBidXR0b24gdmVyc2lvblxyXG4gIC8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxyXG4gIC8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxyXG4gIC8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxyXG4gIGJ1dHRvbiYge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBNb2RhbHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIC5tb2RhbC1vcGVuICAgICAgLSBib2R5IGNsYXNzIGZvciBraWxsaW5nIHRoZSBzY3JvbGxcclxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXHJcbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxyXG4vLyAubW9kYWwtY29udGVudCAgIC0gYWN0dWFsIG1vZGFsIHcvIGJnIGFuZCBjb3JuZXJzIGFuZCBzaGl0XHJcblxyXG4vLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcclxuLm1vZGFsLW9wZW4ge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxyXG4ubW9kYWwge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHotaW5kZXg6IEB6aW5kZXgtbW9kYWw7XHJcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xyXG5cclxuICAvLyBQcmV2ZW50IENocm9tZSBvbiBXaW5kb3dzIGZyb20gYWRkaW5nIGEgZm9jdXMgb3V0bGluZS4gRm9yIGRldGFpbHMsIHNlZVxyXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxyXG4gIG91dGxpbmU6IDA7XHJcblxyXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXHJcbiAgJi5mYWRlIC5tb2RhbC1kaWFsb2cge1xyXG4gICAgLy8udHJhbnNsYXRlKDAsIC0yNSUpO1xyXG4gICAgLy8udHJhbnNpdGlvbi10cmFuc2Zvcm0oflwiMC4zcyBlYXNlLW91dFwiKTtcclxuICB9XHJcbiAgJi5pbiAubW9kYWwtZGlhbG9nIHsgXHJcbiAgICAvLy50cmFuc2xhdGUoMCwgMCkgXHJcbiAgfVxyXG59XHJcbi5tb2RhbC1vcGVuIC5tb2RhbCB7XHJcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gIG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xyXG4ubW9kYWwtZGlhbG9nIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgbWFyZ2luOiAxMHB4O1xyXG59XHJcblxyXG4vLyBBY3R1YWwgbW9kYWxcclxuLm1vZGFsLWNvbnRlbnQge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAbW9kYWwtY29udGVudC1iZztcclxuICBib3JkZXI6IDFweCBzb2xpZCBAbW9kYWwtY29udGVudC1mYWxsYmFjay1ib3JkZXItY29sb3I7IC8vb2xkIGJyb3dzZXJzIGZhbGxiYWNrIChpZTggZXRjKVxyXG4gIGJvcmRlcjogMXB4IHNvbGlkIEBtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcclxuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cy1sYXJnZTtcclxuICAuYm94LXNoYWRvdygwIDNweCA5cHggcmdiYSgwLDAsMCwuNSkpO1xyXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XHJcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcclxuICBvdXRsaW5lOiAwO1xyXG59XHJcblxyXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXHJcbi5tb2RhbC1iYWNrZHJvcCB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogMDtcclxuICByaWdodDogMDtcclxuICBib3R0b206IDA7XHJcbiAgbGVmdDogMDtcclxuICB6LWluZGV4OiBAemluZGV4LW1vZGFsLWJhY2tncm91bmQ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogQG1vZGFsLWJhY2tkcm9wLWJnO1xyXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXHJcbiAgJi5mYWRlIHsgLm9wYWNpdHkoMCk7IH1cclxuICAmLmluIHsgLm9wYWNpdHkoQG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkpOyB9XHJcbn1cclxuXHJcbi8vIE1vZGFsIGhlYWRlclxyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3NcclxuLm1vZGFsLWhlYWRlciB7XHJcbiAgcGFkZGluZzogQG1vZGFsLXRpdGxlLXBhZGRpbmc7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEBtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yO1xyXG4gIG1pbi1oZWlnaHQ6IChAbW9kYWwtdGl0bGUtcGFkZGluZyArIEBtb2RhbC10aXRsZS1saW5lLWhlaWdodCk7XHJcbn1cclxuLy8gQ2xvc2UgaWNvblxyXG4ubW9kYWwtaGVhZGVyIC5jbG9zZSB7XHJcbiAgbWFyZ2luLXRvcDogLTJweDtcclxufVxyXG5cclxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXHJcbi5tb2RhbC10aXRsZSB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIGxpbmUtaGVpZ2h0OiBAbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ7XHJcbn1cclxuXHJcbi8vIE1vZGFsIGJvZHlcclxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxyXG4ubW9kYWwtYm9keSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHBhZGRpbmc6IEBtb2RhbC1pbm5lci1wYWRkaW5nO1xyXG59XHJcblxyXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxyXG4ubW9kYWwtZm9vdGVyIHtcclxuICBwYWRkaW5nOiBAbW9kYWwtaW5uZXItcGFkZGluZztcclxuICB0ZXh0LWFsaWduOiByaWdodDsgLy8gcmlnaHQgYWxpZ24gYnV0dG9uc1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBAbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcclxuICAmOmV4dGVuZCguY2xlYXJmaXggYWxsKTsgLy8gY2xlYXIgaXQgaW4gY2FzZSBmb2xrcyB1c2UgLnB1bGwtKiBjbGFzc2VzIG9uIGJ1dHRvbnNcclxuXHJcbiAgLy8gUHJvcGVybHkgc3BhY2Ugb3V0IGJ1dHRvbnNcclxuICAuYnRuICsgLmJ0biB7XHJcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gYWNjb3VudCBmb3IgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB3aGljaCBnZXRzIHRoZSBib3R0b20gbWFyZ2luIGxpa2UgYWxsIG90aGVyIGlucHV0c1xyXG4gIH1cclxuICAvLyBidXQgb3ZlcnJpZGUgdGhhdCBmb3IgYnV0dG9uIGdyb3Vwc1xyXG4gIC5idG4tZ3JvdXAgLmJ0biArIC5idG4ge1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XHJcbiAgfVxyXG4gIC8vIGFuZCBvdmVycmlkZSBpdCBmb3IgYmxvY2sgYnV0dG9ucyBhcyB3ZWxsXHJcbiAgLmJ0bi1ibG9jayArIC5idG4tYmxvY2sge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcclxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAtOTk5OXB4O1xyXG4gIHdpZHRoOiA1MHB4O1xyXG4gIGhlaWdodDogNTBweDtcclxuICBvdmVyZmxvdzogc2Nyb2xsO1xyXG59XHJcblxyXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcclxuQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tc20tbWluKSB7XHJcbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xyXG4gIC5tb2RhbC1kaWFsb2cge1xyXG4gICAgd2lkdGg6IEBtb2RhbC1tZDtcclxuICAgIG1hcmdpbjogMzBweCBhdXRvO1xyXG4gIH1cclxuICAubW9kYWwtY29udGVudCB7XHJcbiAgICAuYm94LXNoYWRvdygwIDVweCAxNXB4IHJnYmEoMCwwLDAsLjUpKTtcclxuICB9XHJcblxyXG4gIC8vIE1vZGFsIHNpemVzXHJcbiAgLm1vZGFsLXNtIHsgd2lkdGg6IEBtb2RhbC1zbTsgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1tZC1taW4pIHtcclxuICAubW9kYWwtbGcgeyB3aWR0aDogQG1vZGFsLWxnOyB9XHJcbn1cclxuIiwiLy9cclxuLy8gVG9vbHRpcHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBCYXNlIGNsYXNzXHJcbi50b29sdGlwIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgei1pbmRleDogQHppbmRleC10b29sdGlwO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIC8vIFJlc2V0IGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyBnaXZlbiBuZXcgaW5zZXJ0aW9uIG1ldGhvZFxyXG4gIGZvbnQtZmFtaWx5OiBAZm9udC1mYW1pbHktYmFzZTtcclxuICBmb250LXNpemU6IEBmb250LXNpemUtc21hbGw7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBsaW5lLWhlaWdodDogMS40O1xyXG4gIC5vcGFjaXR5KDApO1xyXG5cclxuICAmLmluICAgICB7IC5vcGFjaXR5KEB0b29sdGlwLW9wYWNpdHkpOyB9XHJcbiAgJi50b3AgICAgeyBtYXJnaW4tdG9wOiAgLTNweDsgcGFkZGluZzogQHRvb2x0aXAtYXJyb3ctd2lkdGggMDsgfVxyXG4gICYucmlnaHQgIHsgbWFyZ2luLWxlZnQ6ICAzcHg7IHBhZGRpbmc6IDAgQHRvb2x0aXAtYXJyb3ctd2lkdGg7IH1cclxuICAmLmJvdHRvbSB7IG1hcmdpbi10b3A6ICAgM3B4OyBwYWRkaW5nOiBAdG9vbHRpcC1hcnJvdy13aWR0aCAwOyB9XHJcbiAgJi5sZWZ0ICAgeyBtYXJnaW4tbGVmdDogLTNweDsgcGFkZGluZzogMCBAdG9vbHRpcC1hcnJvdy13aWR0aDsgfVxyXG59XHJcblxyXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XHJcbi50b29sdGlwLWlubmVyIHtcclxuICBtYXgtd2lkdGg6IEB0b29sdGlwLW1heC13aWR0aDtcclxuICBwYWRkaW5nOiAzcHggOHB4O1xyXG4gIGNvbG9yOiBAdG9vbHRpcC1jb2xvcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IEB0b29sdGlwLWJnO1xyXG4gIGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWJhc2U7XHJcbn1cclxuXHJcbi8vIEFycm93c1xyXG4udG9vbHRpcC1hcnJvdyB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAwO1xyXG4gIGhlaWdodDogMDtcclxuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbn1cclxuLy8gTm90ZTogRGVwcmVjYXRlZCAudG9wLWxlZnQsIC50b3AtcmlnaHQsIC5ib3R0b20tbGVmdCwgYW5kIC5ib3R0b20tcmlnaHQgYXMgb2YgdjMuMy4xXHJcbi50b29sdGlwIHtcclxuICAmLnRvcCAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICBtYXJnaW4tbGVmdDogLUB0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLXdpZHRoOiBAdG9vbHRpcC1hcnJvdy13aWR0aCBAdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogQHRvb2x0aXAtYXJyb3ctY29sb3I7XHJcbiAgfVxyXG4gICYudG9wLWxlZnQgLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgcmlnaHQ6IEB0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLUB0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLXdpZHRoOiBAdG9vbHRpcC1hcnJvdy13aWR0aCBAdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogQHRvb2x0aXAtYXJyb3ctY29sb3I7XHJcbiAgfVxyXG4gICYudG9wLXJpZ2h0IC50b29sdGlwLWFycm93IHtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IEB0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLUB0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLXdpZHRoOiBAdG9vbHRpcC1hcnJvdy13aWR0aCBAdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogQHRvb2x0aXAtYXJyb3ctY29sb3I7XHJcbiAgfVxyXG4gICYucmlnaHQgLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgbWFyZ2luLXRvcDogLUB0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLXdpZHRoOiBAdG9vbHRpcC1hcnJvdy13aWR0aCBAdG9vbHRpcC1hcnJvdy13aWR0aCBAdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xyXG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiBAdG9vbHRpcC1hcnJvdy1jb2xvcjtcclxuICB9XHJcbiAgJi5sZWZ0IC50b29sdGlwLWFycm93IHtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBtYXJnaW4tdG9wOiAtQHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItd2lkdGg6IEB0b29sdGlwLWFycm93LXdpZHRoIDAgQHRvb2x0aXAtYXJyb3ctd2lkdGggQHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItbGVmdC1jb2xvcjogQHRvb2x0aXAtYXJyb3ctY29sb3I7XHJcbiAgfVxyXG4gICYuYm90dG9tIC50b29sdGlwLWFycm93IHtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtQHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItd2lkdGg6IDAgQHRvb2x0aXAtYXJyb3ctd2lkdGggQHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBAdG9vbHRpcC1hcnJvdy1jb2xvcjtcclxuICB9XHJcbiAgJi5ib3R0b20tbGVmdCAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogQHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBtYXJnaW4tdG9wOiAtQHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItd2lkdGg6IDAgQHRvb2x0aXAtYXJyb3ctd2lkdGggQHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBAdG9vbHRpcC1hcnJvdy1jb2xvcjtcclxuICB9XHJcbiAgJi5ib3R0b20tcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogQHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBtYXJnaW4tdG9wOiAtQHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItd2lkdGg6IDAgQHRvb2x0aXAtYXJyb3ctd2lkdGggQHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBAdG9vbHRpcC1hcnJvdy1jb2xvcjtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gUG9wb3ZlcnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4ucG9wb3ZlciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHotaW5kZXg6IEB6aW5kZXgtcG9wb3ZlcjtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIG1heC13aWR0aDogQHBvcG92ZXItbWF4LXdpZHRoO1xyXG4gIHBhZGRpbmc6IDFweDtcclxuICAvLyBSZXNldCBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgZ2l2ZW4gbmV3IGluc2VydGlvbiBtZXRob2RcclxuICBmb250LWZhbWlseTogQGZvbnQtZmFtaWx5LWJhc2U7XHJcbiAgZm9udC1zaXplOiBAZm9udC1zaXplLWJhc2U7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBsaW5lLWhlaWdodDogQGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcG9wb3Zlci1iZztcclxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIEBwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvcjtcclxuICBib3JkZXI6IDFweCBzb2xpZCBAcG9wb3Zlci1ib3JkZXItY29sb3I7XHJcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlci1yYWRpdXMtbGFyZ2U7XHJcbiAgLmJveC1zaGFkb3coMCA1cHggMTBweCByZ2JhKDAsMCwwLC4yKSk7XHJcblxyXG4gIC8vIE92ZXJyaWRlcyBmb3IgcHJvcGVyIGluc2VydGlvblxyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcblxyXG4gIC8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xyXG4gICYudG9wICAgICB7IG1hcmdpbi10b3A6IC1AcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxyXG4gICYucmlnaHQgICB7IG1hcmdpbi1sZWZ0OiBAcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxyXG4gICYuYm90dG9tICB7IG1hcmdpbi10b3A6IEBwb3BvdmVyLWFycm93LXdpZHRoOyB9XHJcbiAgJi5sZWZ0ICAgIHsgbWFyZ2luLWxlZnQ6IC1AcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxyXG59XHJcblxyXG4ucG9wb3Zlci10aXRsZSB7XHJcbiAgbWFyZ2luOiAwOyAvLyByZXNldCBoZWFkaW5nIG1hcmdpblxyXG4gIHBhZGRpbmc6IDhweCAxNHB4O1xyXG4gIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1iYXNlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IEBwb3BvdmVyLXRpdGxlLWJnO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZW4oQHBvcG92ZXItdGl0bGUtYmcsIDUlKTtcclxuICBib3JkZXItcmFkaXVzOiAoQGJvcmRlci1yYWRpdXMtbGFyZ2UgLSAxKSAoQGJvcmRlci1yYWRpdXMtbGFyZ2UgLSAxKSAwIDA7XHJcbn1cclxuXHJcbi5wb3BvdmVyLWNvbnRlbnQge1xyXG4gIHBhZGRpbmc6IDlweCAxNHB4O1xyXG59XHJcblxyXG4vLyBBcnJvd3NcclxuLy9cclxuLy8gLmFycm93IGlzIG91dGVyLCAuYXJyb3c6YWZ0ZXIgaXMgaW5uZXJcclxuXHJcbi5wb3BvdmVyID4gLmFycm93IHtcclxuICAmLFxyXG4gICY6YWZ0ZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMDtcclxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gIH1cclxufVxyXG4ucG9wb3ZlciA+IC5hcnJvdyB7XHJcbiAgYm9yZGVyLXdpZHRoOiBAcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcclxufVxyXG4ucG9wb3ZlciA+IC5hcnJvdzphZnRlciB7XHJcbiAgYm9yZGVyLXdpZHRoOiBAcG9wb3Zlci1hcnJvdy13aWR0aDtcclxuICBjb250ZW50OiBcIlwiO1xyXG59XHJcblxyXG4ucG9wb3ZlciB7XHJcbiAgJi50b3AgPiAuYXJyb3cge1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC1AcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcclxuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiBAcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjsgLy8gSUU4IGZhbGxiYWNrXHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiBAcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcclxuICAgIGJvdHRvbTogLUBwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICBib3R0b206IDFweDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC1AcG9wb3Zlci1hcnJvdy13aWR0aDtcclxuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcclxuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogQHBvcG92ZXItYXJyb3ctY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYucmlnaHQgPiAuYXJyb3cge1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiAtQHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XHJcbiAgICBtYXJnaW4tdG9wOiAtQHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XHJcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcclxuICAgIGJvcmRlci1yaWdodC1jb2xvcjogQHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xyXG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiBAcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgbGVmdDogMXB4O1xyXG4gICAgICBib3R0b206IC1AcG9wb3Zlci1hcnJvdy13aWR0aDtcclxuICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XHJcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogQHBvcG92ZXItYXJyb3ctY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuYm90dG9tID4gLmFycm93IHtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtQHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XHJcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogQHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogQHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XHJcbiAgICB0b3A6IC1AcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgdG9wOiAxcHg7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtQHBvcG92ZXItYXJyb3ctd2lkdGg7XHJcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IEBwb3BvdmVyLWFycm93LWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5sZWZ0ID4gLmFycm93IHtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgcmlnaHQ6IC1AcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcclxuICAgIG1hcmdpbi10b3A6IC1AcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcclxuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcclxuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiBAcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjsgLy8gSUU4IGZhbGxiYWNrXHJcbiAgICBib3JkZXItbGVmdC1jb2xvcjogQHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgIHJpZ2h0OiAxcHg7XHJcbiAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcclxuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IEBwb3BvdmVyLWFycm93LWNvbG9yO1xyXG4gICAgICBib3R0b206IC1AcG9wb3Zlci1hcnJvdy13aWR0aDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gQ2xlYXJmaXhcclxuLy9cclxuLy8gRm9yIG1vZGVybiBicm93c2Vyc1xyXG4vLyAxLiBUaGUgc3BhY2UgY29udGVudCBpcyBvbmUgd2F5IHRvIGF2b2lkIGFuIE9wZXJhIGJ1ZyB3aGVuIHRoZVxyXG4vLyAgICBjb250ZW50ZWRpdGFibGUgYXR0cmlidXRlIGlzIGluY2x1ZGVkIGFueXdoZXJlIGVsc2UgaW4gdGhlIGRvY3VtZW50LlxyXG4vLyAgICBPdGhlcndpc2UgaXQgY2F1c2VzIHNwYWNlIHRvIGFwcGVhciBhdCB0aGUgdG9wIGFuZCBib3R0b20gb2YgZWxlbWVudHNcclxuLy8gICAgdGhhdCBhcmUgY2xlYXJmaXhlZC5cclxuLy8gMi4gVGhlIHVzZSBvZiBgdGFibGVgIHJhdGhlciB0aGFuIGBibG9ja2AgaXMgb25seSBuZWNlc3NhcnkgaWYgdXNpbmdcclxuLy8gICAgYDpiZWZvcmVgIHRvIGNvbnRhaW4gdGhlIHRvcC1tYXJnaW5zIG9mIGNoaWxkIGVsZW1lbnRzLlxyXG4vL1xyXG4vLyBTb3VyY2U6IGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrL1xyXG5cclxuLmNsZWFyZml4KCkge1xyXG4gICY6YmVmb3JlLFxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCIgXCI7IC8vIDFcclxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAyXHJcbiAgfVxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgfVxyXG59XHJcbiIsIi8vIENlbnRlci1hbGlnbiBhIGJsb2NrIGxldmVsIGVsZW1lbnRcclxuXHJcbi5jZW50ZXItYmxvY2soKSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG59XHJcbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxyXG4vL1xyXG4vLyBIZWFkcyB1cCEgdjMgbGF1bmNoZWQgd2l0aCB3aXRoIG9ubHkgYC5oaWRlLXRleHQoKWAsIGJ1dCBwZXIgb3VyIHBhdHRlcm4gZm9yXHJcbi8vIG1peGlucyBiZWluZyByZXVzZWQgYXMgY2xhc3NlcyB3aXRoIHRoZSBzYW1lIG5hbWUsIHRoaXMgZG9lc24ndCBob2xkIHVwLiBBc1xyXG4vLyBvZiB2My4wLjEgd2UgaGF2ZSBhZGRlZCBgLnRleHQtaGlkZSgpYCBhbmQgZGVwcmVjYXRlZCBgLmhpZGUtdGV4dCgpYC5cclxuLy9cclxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9jb21taXQvYWEwMzk2ZWFlNzU3XHJcblxyXG4vLyBEZXByZWNhdGVkIGFzIG9mIHYzLjAuMSAod2lsbCBiZSByZW1vdmVkIGluIHY0KVxyXG4uaGlkZS10ZXh0KCkge1xyXG4gIGZvbnQ6IH5cIjAvMFwiIGE7XHJcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIHRleHQtc2hhZG93OiBub25lO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogMDtcclxufVxyXG5cclxuLy8gTmV3IG1peGluIHRvIHVzZSBhcyBvZiB2My4wLjFcclxuLnRleHQtaGlkZSgpIHtcclxuICAuaGlkZS10ZXh0KCk7XHJcbn1cclxuIiwiLy9cclxuLy8gUmVzcG9uc2l2ZTogVXRpbGl0eSBjbGFzc2VzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gSUUxMCBpbiBXaW5kb3dzIChQaG9uZSkgOFxyXG4vL1xyXG4vLyBTdXBwb3J0IGZvciByZXNwb25zaXZlIHZpZXdzIHZpYSBtZWRpYSBxdWVyaWVzIGlzIGtpbmQgb2YgYm9ya2VkIGluIElFMTAsIGZvclxyXG4vLyBTdXJmYWNlL2Rlc2t0b3AgaW4gc3BsaXQgdmlldyBhbmQgZm9yIFdpbmRvd3MgUGhvbmUgOC4gVGhpcyBwYXJ0aWN1bGFyIGZpeFxyXG4vLyBtdXN0IGJlIGFjY29tcGFuaWVkIGJ5IGEgc25pcHBldCBvZiBKYXZhU2NyaXB0IHRvIHNuaWZmIHRoZSB1c2VyIGFnZW50IGFuZFxyXG4vLyBhcHBseSBzb21lIGNvbmRpdGlvbmFsIENTUyB0byAqb25seSogdGhlIFN1cmZhY2UvZGVza3RvcCBXaW5kb3dzIDguIExvb2sgYXRcclxuLy8gb3VyIEdldHRpbmcgU3RhcnRlZCBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIG9uIHRoaXMgYnVnLlxyXG4vL1xyXG4vLyBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHRoZSBmb2xsb3dpbmc6XHJcbi8vXHJcbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwNDk3XHJcbi8vIERvY3M6IGh0dHA6Ly9nZXRib290c3RyYXAuY29tL2dldHRpbmctc3RhcnRlZC8jc3VwcG9ydC1pZTEwLXdpZHRoXHJcbi8vIFNvdXJjZTogaHR0cDovL3RpbWthZGxlYy5jb20vMjAxMy8wMS93aW5kb3dzLXBob25lLTgtYW5kLWRldmljZS13aWR0aC9cclxuLy8gU291cmNlOiBodHRwOi8vdGlta2FkbGVjLmNvbS8yMDEyLzEwL2llMTAtc25hcC1tb2RlLWFuZC1yZXNwb25zaXZlLWRlc2lnbi9cclxuXHJcbkAtbXMtdmlld3BvcnQge1xyXG4gIHdpZHRoOiBkZXZpY2Utd2lkdGg7XHJcbn1cclxuXHJcblxyXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xyXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXhzLCAudmlzaWJsZS1zbSwgLnZpc2libGUtbWQsIGFuZCAudmlzaWJsZS1sZyBhcyBvZiB2My4yLjBcclxuLnZpc2libGUteHMsXHJcbi52aXNpYmxlLXNtLFxyXG4udmlzaWJsZS1tZCxcclxuLnZpc2libGUtbGcge1xyXG4gIC5yZXNwb25zaXZlLWludmlzaWJpbGl0eSgpO1xyXG59XHJcblxyXG4udmlzaWJsZS14cy1ibG9jayxcclxuLnZpc2libGUteHMtaW5saW5lLFxyXG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2ssXHJcbi52aXNpYmxlLXNtLWJsb2NrLFxyXG4udmlzaWJsZS1zbS1pbmxpbmUsXHJcbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayxcclxuLnZpc2libGUtbWQtYmxvY2ssXHJcbi52aXNpYmxlLW1kLWlubGluZSxcclxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrLFxyXG4udmlzaWJsZS1sZy1ibG9jayxcclxuLnZpc2libGUtbGctaW5saW5lLFxyXG4udmlzaWJsZS1sZy1pbmxpbmUtYmxvY2sge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnZpc2libGUteHMge1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiBAc2NyZWVuLXhzLW1heCkge1xyXG4gICAgLnJlc3BvbnNpdmUtdmlzaWJpbGl0eSgpO1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS14cy1ibG9jayB7XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IEBzY3JlZW4teHMtbWF4KSB7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS14cy1pbmxpbmUge1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiBAc2NyZWVuLXhzLW1heCkge1xyXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLXhzLWlubGluZS1ibG9jayB7XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IEBzY3JlZW4teHMtbWF4KSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbi52aXNpYmxlLXNtIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiBAc2NyZWVuLXNtLW1heCkge1xyXG4gICAgLnJlc3BvbnNpdmUtdmlzaWJpbGl0eSgpO1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1zbS1ibG9jayB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogQHNjcmVlbi1zbS1tYXgpIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLXNtLWlubGluZSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogQHNjcmVlbi1zbS1tYXgpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2sge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6IEBzY3JlZW4tc20tbWF4KSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbi52aXNpYmxlLW1kIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiBAc2NyZWVuLW1kLW1heCkge1xyXG4gICAgLnJlc3BvbnNpdmUtdmlzaWJpbGl0eSgpO1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1tZC1ibG9jayB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogQHNjcmVlbi1tZC1tYXgpIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLW1kLWlubGluZSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogQHNjcmVlbi1tZC1tYXgpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1tZC1pbmxpbmUtYmxvY2sge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6IEBzY3JlZW4tbWQtbWF4KSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbi52aXNpYmxlLWxnIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1sZy1taW4pIHtcclxuICAgIC5yZXNwb25zaXZlLXZpc2liaWxpdHkoKTtcclxuICB9XHJcbn1cclxuLnZpc2libGUtbGctYmxvY2sge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLWxnLW1pbikge1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUtbGctaW5saW5lIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1sZy1taW4pIHtcclxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1sZy1pbmxpbmUtYmxvY2sge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLWxnLW1pbikge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4uaGlkZGVuLXhzIHtcclxuICBAbWVkaWEgKG1heC13aWR0aDogQHNjcmVlbi14cy1tYXgpIHtcclxuICAgIC5yZXNwb25zaXZlLWludmlzaWJpbGl0eSgpO1xyXG4gIH1cclxufVxyXG4uaGlkZGVuLXNtIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiBAc2NyZWVuLXNtLW1heCkge1xyXG4gICAgLnJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCk7XHJcbiAgfVxyXG59XHJcbi5oaWRkZW4tbWQge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6IEBzY3JlZW4tbWQtbWF4KSB7XHJcbiAgICAucmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoKTtcclxuICB9XHJcbn1cclxuLmhpZGRlbi1sZyB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbGctbWluKSB7XHJcbiAgICAucmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBQcmludCB1dGlsaXRpZXNcclxuLy9cclxuLy8gTWVkaWEgcXVlcmllcyBhcmUgcGxhY2VkIG9uIHRoZSBpbnNpZGUgdG8gYmUgbWl4aW4tZnJpZW5kbHkuXHJcblxyXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXByaW50IGFzIG9mIHYzLjIuMFxyXG4udmlzaWJsZS1wcmludCB7XHJcbiAgLnJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCk7XHJcblxyXG4gIEBtZWRpYSBwcmludCB7XHJcbiAgICAucmVzcG9uc2l2ZS12aXNpYmlsaXR5KCk7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLXByaW50LWJsb2NrIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gIEBtZWRpYSBwcmludCB7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1wcmludC1pbmxpbmUge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgQG1lZGlhIHByaW50IHtcclxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1wcmludC1pbmxpbmUtYmxvY2sge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgQG1lZGlhIHByaW50IHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuLmhpZGRlbi1wcmludCB7XHJcbiAgQG1lZGlhIHByaW50IHtcclxuICAgIC5yZXNwb25zaXZlLWludmlzaWJpbGl0eSgpO1xyXG4gIH1cclxufVxyXG4iLCIvLyBSZXNwb25zaXZlIHV0aWxpdGllc1xyXG5cclxuLy9cclxuLy8gTW9yZSBlYXNpbHkgaW5jbHVkZSBhbGwgdGhlIHN0YXRlcyBmb3IgcmVzcG9uc2l2ZS11dGlsaXRpZXMubGVzcy5cclxuLnJlc3BvbnNpdmUtdmlzaWJpbGl0eSgpIHtcclxuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gIHRhYmxlJiAgeyBkaXNwbGF5OiB0YWJsZTsgfVxyXG4gIHRyJiAgICAgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxyXG4gIHRoJixcclxuICB0ZCYgICAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XHJcbn1cclxuXHJcbi5yZXNwb25zaXZlLWludmlzaWJpbGl0eSgpIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuIl0sImZpbGUiOiJib290c3RyYXAuY3NzIn0= */
