@charset "UTF-8";
/** * Default Variables. * * Modify this file to provide default Bootstrap Framework variables. The * Bootstrap Framework will not override any variables defined here because it * uses the `!default` flag which will only set their default if not already * defined here. * * You can copy existing variables directly from the following file: * ./THEMENAME/bootstrap/assets/stylesheets/bootstrap/_variables.scss */
@import url("https://fonts.googleapis.com/css?family=Abril+Fatface|Poppins:400,400i,500,500i,600,600i,700,700i,800,800i,900,900i|Teko:300,400,500,600,700|Lora:400,400i,700,700i|Playfair+Display:400,400i,700,700i,900,900i|Rufina:400,700");
/* $font-size-h1: floor(($font-size-base * 2.6)) !default;
// ~36px $font-size-h2: floor(($font-size-base * 2.15)) !default;
// ~30px*/
/*! * Bootstrap v3.3.6 (http://getbootstrap.com) * Copyright 2011-2015 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
   font-family: sans-serif;
   -ms-text-size-adjust: 100%;
   -webkit-text-size-adjust: 100%;
}
body {
   margin: 0;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
   display: block;
}
audio, canvas, progress, video {
   display: inline-block;
   vertical-align: baseline;
}
audio:not([controls]) {
   display: none;
   height: 0;
}
[hidden], template {
   display: none;
}
a {
   background-color: transparent;
}
a:active, a:hover {
   outline: 0;
}
abbr[title] {
   border-bottom: 1px dotted;
}
b, strong {
   font-weight: bold;
}
dfn {
   font-style: italic;
}
h1 {
   font-size: 2em;
   margin: 0.67em 0;
}
mark {
   background: #ff0;
   color: #000;
}
small {
   font-size: 80%;
}
sub, sup {
   font-size: 75%;
   line-height: 0;
   position: relative;
   vertical-align: baseline;
}
sup {
   top: -0.5em;
}
sub {
   bottom: -0.25em;
}
img {
   border: 0;
}
svg:not(:root) {
   overflow: hidden;
}
figure {
   margin: 1em 40px;
}
hr {
   box-sizing: content-box;
   height: 0;
}
pre {
   overflow: auto;
}
code, kbd, pre, samp {
   font-family: monospace, monospace;
   font-size: 1em;
}
button, input, optgroup, select, textarea {
   color: inherit;
   font: inherit;
   margin: 0;
}
button {
   overflow: visible;
}
button, select {
   text-transform: none;
}
button, html input[type="button"], input[type="reset"], input[type="submit"] {
   -webkit-appearance: button;
   cursor: pointer;
}
button[disabled], html input[disabled] {
   cursor: default;
}
button::-moz-focus-inner, input::-moz-focus-inner {
   border: 0;
   padding: 0;
}
input {
   line-height: normal;
}
input[type="checkbox"], input[type="radio"] {
   box-sizing: border-box;
   padding: 0;
}
input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button {
   height: auto;
}
input[type="search"] {
   -webkit-appearance: textfield;
   box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
   -webkit-appearance: none;
}
fieldset {
   border: 1px solid #c0c0c0;
   margin: 0 2px;
   padding: 0.35em 0.625em 0.75em;
}
legend {
   border: 0;
   padding: 0;
}
textarea {
   overflow: auto;
}
optgroup {
   font-weight: bold;
}
table {
   border-collapse: collapse;
   border-spacing: 0;
}
td, th {
   padding: 0;
}
/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
   *, *:before, *:after {
       background: transparent !important;
       color: #000 !important;
       box-shadow: none !important;
       text-shadow: none !important;
  }
   a, a:visited {
       text-decoration: underline;
  }
   a[href]:after {
       content: " (" attr(href) ")";
  }
   abbr[title]:after {
       content: " (" attr(title) ")";
  }
   a[href^="#"]:after, a[href^="javascript:"]:after {
       content: "";
  }
   pre, blockquote {
       border: 1px solid #999;
       page-break-inside: avoid;
  }
   thead {
       display: table-header-group;
  }
   tr, img {
       page-break-inside: avoid;
  }
   img {
       max-width: 100% !important;
  }
   p, h2, h3 {
       orphans: 3;
       widows: 3;
  }
   h2, h3 {
       page-break-after: avoid;
  }
   .navbar {
       display: none;
  }
   .btn > .caret, .dropup > .btn > .caret {
       border-top-color: #000 !important;
  }
   .label {
       border: 1px solid #000;
  }
   .table {
       border-collapse: collapse !important;
  }
   .table td, .table th {
       background-color: #fff !important;
  }
   .table-bordered th, .table-bordered td {
       border: 1px solid #ddd !important;
  }
}
@font-face {
   font-family: 'Glyphicons Halflings';
   src: url("../bootstrap/assets/fonts/bootstrap/glyphicons-halflings-regular.eot");
   src: url("../bootstrap/assets/fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../bootstrap/assets/fonts/bootstrap/glyphicons-halflings-regular.woff2") format("woff2"), url("../bootstrap/assets/fonts/bootstrap/glyphicons-halflings-regular.woff") format("woff"), url("../bootstrap/assets/fonts/bootstrap/glyphicons-halflings-regular.ttf") format("truetype"), url("../bootstrap/assets/fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg");
}
.glyphicon {
   position: relative;
   top: 1px;
   display: inline-block;
   font-family: 'Glyphicons Halflings';
   font-style: normal;
   font-weight: normal;
   line-height: 1;
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
}
.glyphicon-asterisk:before {
   content: "\002a";
}
.glyphicon-plus:before {
   content: "\002b";
}
.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: "Poppins", Helvetica, Arial, sans-serif;
   font-size: 14px;
   line-height: 1.75;
   color: #333333;
   background-color: #fff;
}
input, button, select, textarea {
   font-family: inherit;
   font-size: inherit;
   line-height: inherit;
}
a {
   color: #ff1a4b;
   text-decoration: none;
}
a:hover, a:focus {
   color: #cd002c;
   text-decoration: none;
}
a:focus {
   outline: thin dotted;
   outline: 5px auto -webkit-focus-ring-color;
   outline-offset: -2px;
}
figure {
   margin: 0;
}
img {
   vertical-align: middle;
}
.img-responsive {
   display: block;
   max-width: 100%;
   height: auto;
}
.img-rounded {
   border-radius: 6px;
}
.img-thumbnail {
   padding: 4px;
   line-height: 1.75;
   background-color: #fff;
   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: 24px;
   margin-bottom: 24px;
   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: "Playfair Display", "Times New Roman", Times, serif;
   font-weight: 500;
   line-height: 1.3;
   color: #222222;
}
h1 small, h1 .small, h2 small, h2 .small, h3 small, h3 .small, h4 small, h4 .small, h5 small, h5 .small, h6 small, h6 .small, .h1 small, .h1 .small, .h2 small, .h2 .small, .h3 small, .h3 .small, .h4 small, .h4 .small, .h5 small, .h5 .small, .h6 small, .h6 .small {
   font-weight: normal;
   line-height: 1;
   color: #777777;
}
h1, .h1, h2, .h2, h3, .h3 {
   margin-top: 24px;
   margin-bottom: 12px;
}
h1 small, h1 .small, .h1 small, .h1 .small, h2 small, h2 .small, .h2 small, .h2 .small, h3 small, h3 .small, .h3 small, .h3 .small {
   font-size: 65%;
}
h4, .h4, h5, .h5, h6, .h6 {
   margin-top: 12px;
   margin-bottom: 12px;
}
h4 small, h4 .small, .h4 small, .h4 .small, h5 small, h5 .small, .h5 small, .h5 .small, h6 small, h6 .small, .h6 small, .h6 .small {
   font-size: 75%;
}
h1, .h1 {
   font-size: 50px;
}
h2, .h2 {
   font-size: 28px;
}
h3, .h3 {
   font-size: 24px;
}
h4, .h4 {
   font-size: 18px;
}
h5, .h5 {
   font-size: 14px;
}
h6, .h6 {
   font-size: 12px;
}
p {
   margin: 0 0 12px;
}
.lead {
   margin-bottom: 24px;
   font-size: 16px;
   font-weight: 300;
   line-height: 1.4;
}
@media (min-width: 768px) {
   .lead {
       font-size: 21px;
  }
}
small, .small {
   font-size: 85%;
}
mark, .mark {
   background-color: #fcf8e3;
   padding: .2em;
}
.text-left {
   text-align: left;
}
.text-right {
   text-align: right;
}
.text-center {
   text-align: center;
}
.text-justify {
   text-align: justify;
}
.text-nowrap {
   white-space: nowrap;
}
.text-lowercase {
   text-transform: lowercase;
}
.text-uppercase, .initialism {
   text-transform: uppercase;
}
.text-capitalize {
   text-transform: capitalize;
}
.text-muted {
   color: #777777;
}
.text-primary {
   color: #ff1a4b;
}
a.text-primary:hover, a.text-primary:focus {
   color: #e60031;
}
.text-success {
   color: #3c763d;
}
a.text-success:hover, a.text-success:focus {
   color: #2b542c;
}
.text-info {
   color: #31708f;
}
a.text-info:hover, a.text-info:focus {
   color: #245269;
}
.text-warning {
   color: #8a6d3b;
}
a.text-warning:hover, a.text-warning:focus {
   color: #66512c;
}
.text-danger {
   color: #a94442;
}
a.text-danger:hover, a.text-danger:focus {
   color: #843534;
}
.bg-primary {
   color: #fff;
}
.bg-primary {
   background-color: #ff1a4b;
}
a.bg-primary:hover, a.bg-primary:focus {
   background-color: #e60031;
}
.bg-success {
   background-color: #dff0d8;
}
a.bg-success:hover, a.bg-success:focus {
   background-color: #c1e2b3;
}
.bg-info {
   background-color: #d9edf7;
}
a.bg-info:hover, a.bg-info:focus {
   background-color: #afd9ee;
}
.bg-warning {
   background-color: #fcf8e3;
}
a.bg-warning:hover, a.bg-warning:focus {
   background-color: #f7ecb5;
}
.bg-danger {
   background-color: #f2dede;
}
a.bg-danger:hover, a.bg-danger:focus {
   background-color: #e4b9b9;
}
.page-header {
   padding-bottom: 11px;
   margin: 48px 0 24px;
   border-bottom: 1px solid #eeeeee;
}
ul, ol {
   margin-top: 0;
   margin-bottom: 12px;
}
ul ul, ul ol, ol ul, ol ol {
   margin-bottom: 0;
}
.list-unstyled {
   padding-left: 0;
   list-style: none;
}
.list-inline {
   padding-left: 0;
   list-style: none;
   margin-left: -5px;
}
.list-inline > li {
   display: inline-block;
   padding-left: 5px;
   padding-right: 5px;
}
dl {
   margin-top: 0;
   margin-bottom: 24px;
}
dt, dd {
   line-height: 1.75;
}
dt {
   font-weight: bold;
}
dd {
   margin-left: 0;
}
.dl-horizontal dd:before, .dl-horizontal dd:after {
   content: " ";
   display: table;
}
.dl-horizontal dd:after {
   clear: both;
}
@media (min-width: 768px) {
   .dl-horizontal dt {
       float: left;
       width: 160px;
       clear: left;
       text-align: right;
       overflow: hidden;
       text-overflow: ellipsis;
       white-space: nowrap;
  }
   .dl-horizontal dd {
       margin-left: 180px;
  }
}
abbr[title], abbr[data-original-title] {
   cursor: help;
   border-bottom: 1px dotted #777777;
}
.initialism {
   font-size: 90%;
}
blockquote {
   padding: 12px 24px;
   margin: 0 0 24px;
   font-size: 17.5px;
   border-left: 5px solid #eeeeee;
}
blockquote p:last-child, blockquote ul:last-child, blockquote ol:last-child {
   margin-bottom: 0;
}
blockquote footer, blockquote small, blockquote .small {
   display: block;
   font-size: 80%;
   line-height: 1.75;
   color: #777777;
}
blockquote footer:before, blockquote small:before, blockquote .small:before {
   content: '\2014 \00A0';
}
.blockquote-reverse, blockquote.pull-right {
   padding-right: 15px;
   padding-left: 0;
   border-right: 5px solid #eeeeee;
   border-left: 0;
   text-align: right;
}
.blockquote-reverse footer:before, .blockquote-reverse small:before, .blockquote-reverse .small:before, blockquote.pull-right footer:before, blockquote.pull-right small:before, blockquote.pull-right .small:before {
   content: '';
}
.blockquote-reverse footer:after, .blockquote-reverse small:after, .blockquote-reverse .small:after, blockquote.pull-right footer:after, blockquote.pull-right small:after, blockquote.pull-right .small:after {
   content: '\00A0 \2014';
}
address {
   margin-bottom: 24px;
   font-style: normal;
   line-height: 1.75;
}
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: 3px;
   box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
}
kbd kbd {
   padding: 0;
   font-size: 100%;
   font-weight: bold;
   box-shadow: none;
}
pre {
   display: block;
   padding: 11.5px;
   margin: 0 0 12px;
   font-size: 13px;
   line-height: 1.75;
   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: 15px;
   padding-right: 15px;
}
.container:before, .container:after {
   content: " ";
   display: table;
}
.container:after {
   clear: both;
}
@media (min-width: 768px) {
   .container {
       width: 750px;
  }
}
@media (min-width: 992px) {
   .container {
       width: 970px;
  }
}
@media (min-width: 1200px) {
   .container {
       width: 1170px;
  }
}
.container-fluid {
   margin-right: auto;
   margin-left: auto;
   padding-left: 15px;
   padding-right: 15px;
}
.container-fluid:before, .container-fluid:after {
   content: " ";
   display: table;
}
.container-fluid:after {
   clear: both;
}
.row {
   margin-left: -15px;
   margin-right: -15px;
}
.row:before, .row:after {
   content: " ";
   display: table;
}
.row:after {
   clear: both;
}
.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
   position: relative;
   min-height: 1px;
   padding-left: 15px;
   padding-right: 15px;
}
.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
   float: left;
}
.col-xs-1 {
   width: 8.33333%;
}
.col-xs-2 {
   width: 16.66667%;
}
.col-xs-3 {
   width: 25%;
}
.col-xs-4 {
   width: 33.33333%;
}
.col-xs-5 {
   width: 41.66667%;
}
.col-xs-6 {
   width: 50%;
}
.col-xs-7 {
   width: 58.33333%;
}
.col-xs-8 {
   width: 66.66667%;
}
.col-xs-9 {
   width: 75%;
}
.col-xs-10 {
   width: 83.33333%;
}
.col-xs-11 {
   width: 91.66667%;
}
.col-xs-12 {
   width: 100%;
}
.col-xs-pull-0 {
   right: auto;
}
.col-xs-pull-1 {
   right: 8.33333%;
}
.col-xs-pull-2 {
   right: 16.66667%;
}
.col-xs-pull-3 {
   right: 25%;
}
.col-xs-pull-4 {
   right: 33.33333%;
}
.col-xs-pull-5 {
   right: 41.66667%;
}
.col-xs-pull-6 {
   right: 50%;
}
.col-xs-pull-7 {
   right: 58.33333%;
}
.col-xs-pull-8 {
   right: 66.66667%;
}
.col-xs-pull-9 {
   right: 75%;
}
.col-xs-pull-10 {
   right: 83.33333%;
}
.col-xs-pull-11 {
   right: 91.66667%;
}
.col-xs-pull-12 {
   right: 100%;
}
.col-xs-push-0 {
   left: auto;
}
.col-xs-push-1 {
   left: 8.33333%;
}
.col-xs-push-2 {
   left: 16.66667%;
}
.col-xs-push-3 {
   left: 25%;
}
.col-xs-push-4 {
   left: 33.33333%;
}
.col-xs-push-5 {
   left: 41.66667%;
}
.col-xs-push-6 {
   left: 50%;
}
.col-xs-push-7 {
   left: 58.33333%;
}
.col-xs-push-8 {
   left: 66.66667%;
}
.col-xs-push-9 {
   left: 75%;
}
.col-xs-push-10 {
   left: 83.33333%;
}
.col-xs-push-11 {
   left: 91.66667%;
}
.col-xs-push-12 {
   left: 100%;
}
.col-xs-offset-0 {
   margin-left: 0%;
}
.col-xs-offset-1 {
   margin-left: 8.33333%;
}
.col-xs-offset-2 {
   margin-left: 16.66667%;
}
.col-xs-offset-3 {
   margin-left: 25%;
}
.col-xs-offset-4 {
   margin-left: 33.33333%;
}
.col-xs-offset-5 {
   margin-left: 41.66667%;
}
.col-xs-offset-6 {
   margin-left: 50%;
}
.col-xs-offset-7 {
   margin-left: 58.33333%;
}
.col-xs-offset-8 {
   margin-left: 66.66667%;
}
.col-xs-offset-9 {
   margin-left: 75%;
}
.col-xs-offset-10 {
   margin-left: 83.33333%;
}
.col-xs-offset-11 {
   margin-left: 91.66667%;
}
.col-xs-offset-12 {
   margin-left: 100%;
}
@media (min-width: 768px) {
   .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
       float: left;
  }
   .col-sm-1 {
       width: 8.33333%;
  }
   .col-sm-2 {
       width: 16.66667%;
  }
   .col-sm-3 {
       width: 25%;
  }
   .col-sm-4 {
       width: 33.33333%;
  }
   .col-sm-5 {
       width: 41.66667%;
  }
   .col-sm-6 {
       width: 50%;
  }
   .col-sm-7 {
       width: 58.33333%;
  }
   .col-sm-8 {
       width: 66.66667%;
  }
   .col-sm-9 {
       width: 75%;
  }
   .col-sm-10 {
       width: 83.33333%;
  }
   .col-sm-11 {
       width: 91.66667%;
  }
   .col-sm-12 {
       width: 100%;
  }
   .col-sm-pull-0 {
       right: auto;
  }
   .col-sm-pull-1 {
       right: 8.33333%;
  }
   .col-sm-pull-2 {
       right: 16.66667%;
  }
   .col-sm-pull-3 {
       right: 25%;
  }
   .col-sm-pull-4 {
       right: 33.33333%;
  }
   .col-sm-pull-5 {
       right: 41.66667%;
  }
   .col-sm-pull-6 {
       right: 50%;
  }
   .col-sm-pull-7 {
       right: 58.33333%;
  }
   .col-sm-pull-8 {
       right: 66.66667%;
  }
   .col-sm-pull-9 {
       right: 75%;
  }
   .col-sm-pull-10 {
       right: 83.33333%;
  }
   .col-sm-pull-11 {
       right: 91.66667%;
  }
   .col-sm-pull-12 {
       right: 100%;
  }
   .col-sm-push-0 {
       left: auto;
  }
   .col-sm-push-1 {
       left: 8.33333%;
  }
   .col-sm-push-2 {
       left: 16.66667%;
  }
   .col-sm-push-3 {
       left: 25%;
  }
   .col-sm-push-4 {
       left: 33.33333%;
  }
   .col-sm-push-5 {
       left: 41.66667%;
  }
   .col-sm-push-6 {
       left: 50%;
  }
   .col-sm-push-7 {
       left: 58.33333%;
  }
   .col-sm-push-8 {
       left: 66.66667%;
  }
   .col-sm-push-9 {
       left: 75%;
  }
   .col-sm-push-10 {
       left: 83.33333%;
  }
   .col-sm-push-11 {
       left: 91.66667%;
  }
   .col-sm-push-12 {
       left: 100%;
  }
   .col-sm-offset-0 {
       margin-left: 0%;
  }
   .col-sm-offset-1 {
       margin-left: 8.33333%;
  }
   .col-sm-offset-2 {
       margin-left: 16.66667%;
  }
   .col-sm-offset-3 {
       margin-left: 25%;
  }
   .col-sm-offset-4 {
       margin-left: 33.33333%;
  }
   .col-sm-offset-5 {
       margin-left: 41.66667%;
  }
   .col-sm-offset-6 {
       margin-left: 50%;
  }
   .col-sm-offset-7 {
       margin-left: 58.33333%;
  }
   .col-sm-offset-8 {
       margin-left: 66.66667%;
  }
   .col-sm-offset-9 {
       margin-left: 75%;
  }
   .col-sm-offset-10 {
       margin-left: 83.33333%;
  }
   .col-sm-offset-11 {
       margin-left: 91.66667%;
  }
   .col-sm-offset-12 {
       margin-left: 100%;
  }
}
@media (min-width: 992px) {
   .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
       float: left;
  }
   .col-md-1 {
       width: 8.33333%;
  }
   .col-md-2 {
       width: 16.66667%;
  }
   .col-md-3 {
       width: 25%;
  }
   .col-md-4 {
       width: 33.33333%;
  }
   .col-md-5 {
       width: 41.66667%;
  }
   .col-md-6 {
       width: 50%;
  }
   .col-md-7 {
       width: 58.33333%;
  }
   .col-md-8 {
       width: 66.66667%;
  }
   .col-md-9 {
       width: 75%;
  }
   .col-md-10 {
       width: 83.33333%;
  }
   .col-md-11 {
       width: 91.66667%;
  }
   .col-md-12 {
       width: 100%;
  }
   .col-md-pull-0 {
       right: auto;
  }
   .col-md-pull-1 {
       right: 8.33333%;
  }
   .col-md-pull-2 {
       right: 16.66667%;
  }
   .col-md-pull-3 {
       right: 25%;
  }
   .col-md-pull-4 {
       right: 33.33333%;
  }
   .col-md-pull-5 {
       right: 41.66667%;
  }
   .col-md-pull-6 {
       right: 50%;
  }
   .col-md-pull-7 {
       right: 58.33333%;
  }
   .col-md-pull-8 {
       right: 66.66667%;
  }
   .col-md-pull-9 {
       right: 75%;
  }
   .col-md-pull-10 {
       right: 83.33333%;
  }
   .col-md-pull-11 {
       right: 91.66667%;
  }
   .col-md-pull-12 {
       right: 100%;
  }
   .col-md-push-0 {
       left: auto;
  }
   .col-md-push-1 {
       left: 8.33333%;
  }
   .col-md-push-2 {
       left: 16.66667%;
  }
   .col-md-push-3 {
       left: 25%;
  }
   .col-md-push-4 {
       left: 33.33333%;
  }
   .col-md-push-5 {
       left: 41.66667%;
  }
   .col-md-push-6 {
       left: 50%;
  }
   .col-md-push-7 {
       left: 58.33333%;
  }
   .col-md-push-8 {
       left: 66.66667%;
  }
   .col-md-push-9 {
       left: 75%;
  }
   .col-md-push-10 {
       left: 83.33333%;
  }
   .col-md-push-11 {
       left: 91.66667%;
  }
   .col-md-push-12 {
       left: 100%;
  }
   .col-md-offset-0 {
       margin-left: 0%;
  }
   .col-md-offset-1 {
       margin-left: 8.33333%;
  }
   .col-md-offset-2 {
       margin-left: 16.66667%;
  }
   .col-md-offset-3 {
       margin-left: 25%;
  }
   .col-md-offset-4 {
       margin-left: 33.33333%;
  }
   .col-md-offset-5 {
       margin-left: 41.66667%;
  }
   .col-md-offset-6 {
       margin-left: 50%;
  }
   .col-md-offset-7 {
       margin-left: 58.33333%;
  }
   .col-md-offset-8 {
       margin-left: 66.66667%;
  }
   .col-md-offset-9 {
       margin-left: 75%;
  }
   .col-md-offset-10 {
       margin-left: 83.33333%;
  }
   .col-md-offset-11 {
       margin-left: 91.66667%;
  }
   .col-md-offset-12 {
       margin-left: 100%;
  }
}
@media (min-width: 1200px) {
   .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
       float: left;
  }
   .col-lg-1 {
       width: 8.33333%;
  }
   .col-lg-2 {
       width: 16.66667%;
  }
   .col-lg-3 {
       width: 25%;
  }
   .col-lg-4 {
       width: 33.33333%;
  }
   .col-lg-5 {
       width: 41.66667%;
  }
   .col-lg-6 {
       width: 50%;
  }
   .col-lg-7 {
       width: 58.33333%;
  }
   .col-lg-8 {
       width: 66.66667%;
  }
   .col-lg-9 {
       width: 75%;
  }
   .col-lg-10 {
       width: 83.33333%;
  }
   .col-lg-11 {
       width: 91.66667%;
  }
   .col-lg-12 {
       width: 100%;
  }
   .col-lg-pull-0 {
       right: auto;
  }
   .col-lg-pull-1 {
       right: 8.33333%;
  }
   .col-lg-pull-2 {
       right: 16.66667%;
  }
   .col-lg-pull-3 {
       right: 25%;
  }
   .col-lg-pull-4 {
       right: 33.33333%;
  }
   .col-lg-pull-5 {
       right: 41.66667%;
  }
   .col-lg-pull-6 {
       right: 50%;
  }
   .col-lg-pull-7 {
       right: 58.33333%;
  }
   .col-lg-pull-8 {
       right: 66.66667%;
  }
   .col-lg-pull-9 {
       right: 75%;
  }
   .col-lg-pull-10 {
       right: 83.33333%;
  }
   .col-lg-pull-11 {
       right: 91.66667%;
  }
   .col-lg-pull-12 {
       right: 100%;
  }
   .col-lg-push-0 {
       left: auto;
  }
   .col-lg-push-1 {
       left: 8.33333%;
  }
   .col-lg-push-2 {
       left: 16.66667%;
  }
   .col-lg-push-3 {
       left: 25%;
  }
   .col-lg-push-4 {
       left: 33.33333%;
  }
   .col-lg-push-5 {
       left: 41.66667%;
  }
   .col-lg-push-6 {
       left: 50%;
  }
   .col-lg-push-7 {
       left: 58.33333%;
  }
   .col-lg-push-8 {
       left: 66.66667%;
  }
   .col-lg-push-9 {
       left: 75%;
  }
   .col-lg-push-10 {
       left: 83.33333%;
  }
   .col-lg-push-11 {
       left: 91.66667%;
  }
   .col-lg-push-12 {
       left: 100%;
  }
   .col-lg-offset-0 {
       margin-left: 0%;
  }
   .col-lg-offset-1 {
       margin-left: 8.33333%;
  }
   .col-lg-offset-2 {
       margin-left: 16.66667%;
  }
   .col-lg-offset-3 {
       margin-left: 25%;
  }
   .col-lg-offset-4 {
       margin-left: 33.33333%;
  }
   .col-lg-offset-5 {
       margin-left: 41.66667%;
  }
   .col-lg-offset-6 {
       margin-left: 50%;
  }
   .col-lg-offset-7 {
       margin-left: 58.33333%;
  }
   .col-lg-offset-8 {
       margin-left: 66.66667%;
  }
   .col-lg-offset-9 {
       margin-left: 75%;
  }
   .col-lg-offset-10 {
       margin-left: 83.33333%;
  }
   .col-lg-offset-11 {
       margin-left: 91.66667%;
  }
   .col-lg-offset-12 {
       margin-left: 100%;
  }
}
table {
   background-color: transparent;
}
caption {
   padding-top: 8px;
   padding-bottom: 8px;
   color: #777777;
   text-align: left;
}
th {
   text-align: left;
}
.table {
   width: 100%;
   max-width: 100%;
   margin-bottom: 24px;
}
.table > thead > tr > th, .table > thead > tr > td, .table > tbody > tr > th, .table > tbody > tr > td, .table > tfoot > tr > th, .table > tfoot > tr > td {
   padding: 8px;
   line-height: 1.75;
   vertical-align: top;
   border-top: 1px solid #ddd;
}
.table > thead > tr > th {
   vertical-align: bottom;
   border-bottom: 2px solid #ddd;
}
.table > caption + thead > tr:first-child > th, .table > caption + thead > tr:first-child > td, .table > colgroup + thead > tr:first-child > th, .table > colgroup + thead > tr:first-child > td, .table > thead:first-child > tr:first-child > th, .table > thead:first-child > tr:first-child > td {
   border-top: 0;
}
.table > tbody + tbody {
   border-top: 2px solid #ddd;
}
.table .table {
   background-color: #fff;
}
.table-condensed > thead > tr > th, .table-condensed > thead > tr > td, .table-condensed > tbody > tr > th, .table-condensed > tbody > tr > td, .table-condensed > tfoot > tr > th, .table-condensed > tfoot > tr > td {
   padding: 5px;
}
.table-bordered {
   border: 1px solid #ddd;
}
.table-bordered > thead > tr > th, .table-bordered > thead > tr > td, .table-bordered > tbody > tr > th, .table-bordered > tbody > tr > td, .table-bordered > tfoot > tr > th, .table-bordered > tfoot > tr > td {
   border: 1px solid #ddd;
}
.table-bordered > thead > tr > th, .table-bordered > thead > tr > td {
   border-bottom-width: 2px;
}
.table-striped > tbody > tr:nth-of-type(odd) {
   background-color: #f9f9f9;
}
.table-hover > tbody > tr:hover {
   background-color: #f5f5f5;
}
table col[class*="col-"] {
   position: static;
   float: none;
   display: table-column;
}
table td[class*="col-"], table th[class*="col-"] {
   position: static;
   float: none;
   display: table-cell;
}
.table > thead > tr > td.active, .table > thead > tr > th.active, .table > thead > tr.active > td, .table > thead > tr.active > th, .table > tbody > tr > td.active, .table > tbody > tr > th.active, .table > tbody > tr.active > td, .table > tbody > tr.active > th, .table > tfoot > tr > td.active, .table > tfoot > tr > th.active, .table > tfoot > tr.active > td, .table > tfoot > tr.active > th {
   background-color: #f5f5f5;
}
.table-hover > tbody > tr > td.active:hover, .table-hover > tbody > tr > th.active:hover, .table-hover > tbody > tr.active:hover > td, .table-hover > tbody > tr:hover > .active, .table-hover > tbody > tr.active:hover > th {
   background-color: #e8e8e8;
}
.table > thead > tr > td.success, .table > thead > tr > th.success, .table > thead > tr.success > td, .table > thead > tr.success > th, .table > tbody > tr > td.success, .table > tbody > tr > th.success, .table > tbody > tr.success > td, .table > tbody > tr.success > th, .table > tfoot > tr > td.success, .table > tfoot > tr > th.success, .table > tfoot > tr.success > td, .table > tfoot > tr.success > th {
   background-color: #dff0d8;
}
.table-hover > tbody > tr > td.success:hover, .table-hover > tbody > tr > th.success:hover, .table-hover > tbody > tr.success:hover > td, .table-hover > tbody > tr:hover > .success, .table-hover > tbody > tr.success:hover > th {
   background-color: #d0e9c6;
}
.table > thead > tr > td.info, .table > thead > tr > th.info, .table > thead > tr.info > td, .table > thead > tr.info > th, .table > tbody > tr > td.info, .table > tbody > tr > th.info, .table > tbody > tr.info > td, .table > tbody > tr.info > th, .table > tfoot > tr > td.info, .table > tfoot > tr > th.info, .table > tfoot > tr.info > td, .table > tfoot > tr.info > th {
   background-color: #d9edf7;
}
.table-hover > tbody > tr > td.info:hover, .table-hover > tbody > tr > th.info:hover, .table-hover > tbody > tr.info:hover > td, .table-hover > tbody > tr:hover > .info, .table-hover > tbody > tr.info:hover > th {
   background-color: #c4e3f3;
}
.table > thead > tr > td.warning, .table > thead > tr > th.warning, .table > thead > tr.warning > td, .table > thead > tr.warning > th, .table > tbody > tr > td.warning, .table > tbody > tr > th.warning, .table > tbody > tr.warning > td, .table > tbody > tr.warning > th, .table > tfoot > tr > td.warning, .table > tfoot > tr > th.warning, .table > tfoot > tr.warning > td, .table > tfoot > tr.warning > th {
   background-color: #fcf8e3;
}
.table-hover > tbody > tr > td.warning:hover, .table-hover > tbody > tr > th.warning:hover, .table-hover > tbody > tr.warning:hover > td, .table-hover > tbody > tr:hover > .warning, .table-hover > tbody > tr.warning:hover > th {
   background-color: #faf2cc;
}
.table > thead > tr > td.danger, .table > thead > tr > th.danger, .table > thead > tr.danger > td, .table > thead > tr.danger > th, .table > tbody > tr > td.danger, .table > tbody > tr > th.danger, .table > tbody > tr.danger > td, .table > tbody > tr.danger > th, .table > tfoot > tr > td.danger, .table > tfoot > tr > th.danger, .table > tfoot > tr.danger > td, .table > tfoot > tr.danger > th {
   background-color: #f2dede;
}
.table-hover > tbody > tr > td.danger:hover, .table-hover > tbody > tr > th.danger:hover, .table-hover > tbody > tr.danger:hover > td, .table-hover > tbody > tr:hover > .danger, .table-hover > tbody > tr.danger:hover > th {
   background-color: #ebcccc;
}
.table-responsive {
   overflow-x: auto;
   min-height: 0.01%;
}
@media screen and (max-width: 767px) {
   .table-responsive {
       width: 100%;
       margin-bottom: 18px;
       overflow-y: hidden;
       -ms-overflow-style: -ms-autohiding-scrollbar;
       border: 1px solid #ddd;
  }
   .table-responsive > .table {
       margin-bottom: 0;
  }
   .table-responsive > .table > thead > tr > th, .table-responsive > .table > thead > tr > td, .table-responsive > .table > tbody > tr > th, .table-responsive > .table > tbody > tr > td, .table-responsive > .table > tfoot > tr > th, .table-responsive > .table > tfoot > tr > td {
       white-space: nowrap;
  }
   .table-responsive > .table-bordered {
       border: 0;
  }
   .table-responsive > .table-bordered > thead > tr > th:first-child, .table-responsive > .table-bordered > thead > tr > td:first-child, .table-responsive > .table-bordered > tbody > tr > th:first-child, .table-responsive > .table-bordered > tbody > tr > td:first-child, .table-responsive > .table-bordered > tfoot > tr > th:first-child, .table-responsive > .table-bordered > tfoot > tr > td:first-child {
       border-left: 0;
  }
   .table-responsive > .table-bordered > thead > tr > th:last-child, .table-responsive > .table-bordered > thead > tr > td:last-child, .table-responsive > .table-bordered > tbody > tr > th:last-child, .table-responsive > .table-bordered > tbody > tr > td:last-child, .table-responsive > .table-bordered > tfoot > tr > th:last-child, .table-responsive > .table-bordered > tfoot > tr > td:last-child {
       border-right: 0;
  }
   .table-responsive > .table-bordered > tbody > tr:last-child > th, .table-responsive > .table-bordered > tbody > tr:last-child > td, .table-responsive > .table-bordered > tfoot > tr:last-child > th, .table-responsive > .table-bordered > tfoot > tr:last-child > td {
       border-bottom: 0;
  }
}
fieldset {
   padding: 0;
   margin: 0;
   border: 0;
   min-width: 0;
}
legend {
   display: block;
   width: 100%;
   padding: 0;
   margin-bottom: 24px;
   font-size: 21px;
   line-height: inherit;
   color: #333333;
   border: 0;
   border-bottom: 1px solid #e5e5e5;
}
label {
   display: inline-block;
   max-width: 100%;
   margin-bottom: 5px;
   font-weight: bold;
}
input[type="search"] {
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
}
input[type="radio"], input[type="checkbox"] {
   margin: 4px 0 0;
   margin-top: 1px \9;
   line-height: normal;
}
input[type="file"] {
   display: block;
}
input[type="range"] {
   display: block;
   width: 100%;
}
select[multiple], select[size] {
   height: auto;
}
input[type="file"]:focus, input[type="radio"]:focus, input[type="checkbox"]:focus {
   outline: thin dotted;
   outline: 5px auto -webkit-focus-ring-color;
   outline-offset: -2px;
}
output {
   display: block;
   padding-top: 7px;
   font-size: 14px;
   line-height: 1.75;
   color: #555555;
}
.form-control {
   display: block;
   width: 100%;
   height: 38px;
   padding: 6px 12px;
   font-size: 14px;
   line-height: 1.75;
   color: #555555;
   background-color: #fff;
   background-image: none;
   border: 1px solid #ccc;
   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 0.15s, box-shadow ease-in-out 0.15s;
   -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
   transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
.form-control:focus {
   border-color: #66afe9;
   outline: 0;
   -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
   box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.form-control::-moz-placeholder {
   color: #999;
   opacity: 1;
}
.form-control:-ms-input-placeholder {
   color: #999;
}
.form-control::-webkit-input-placeholder {
   color: #999;
}
.form-control::-ms-expand {
   border: 0;
   background-color: transparent;
}
.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control {
   background-color: #eeeeee;
   opacity: 1;
}
.form-control[disabled], fieldset[disabled] .form-control {
   cursor: not-allowed;
}
textarea.form-control {
   height: auto;
}
input[type="search"] {
   -webkit-appearance: none;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
   input[type="date"].form-control, input[type="time"].form-control, input[type="datetime-local"].form-control, input[type="month"].form-control {
       line-height: 38px;
  }
   input[type="date"].input-sm, .input-group-sm > input.form-control[type="date"], .input-group-sm > input.input-group-addon[type="date"], .input-group-sm > .input-group-btn > input.btn[type="date"], .input-group-sm input[type="date"], input[type="time"].input-sm, .input-group-sm > input.form-control[type="time"], .input-group-sm > input.input-group-addon[type="time"], .input-group-sm > .input-group-btn > input.btn[type="time"], .input-group-sm input[type="time"], input[type="datetime-local"].input-sm, .input-group-sm > input.form-control[type="datetime-local"], .input-group-sm > input.input-group-addon[type="datetime-local"], .input-group-sm > .input-group-btn > input.btn[type="datetime-local"], .input-group-sm input[type="datetime-local"], input[type="month"].input-sm, .input-group-sm > input.form-control[type="month"], .input-group-sm > input.input-group-addon[type="month"], .input-group-sm > .input-group-btn > input.btn[type="month"], .input-group-sm input[type="month"] {
       line-height: 30px;
  }
   input[type="date"].input-lg, .input-group-lg > input.form-control[type="date"], .input-group-lg > input.input-group-addon[type="date"], .input-group-lg > .input-group-btn > input.btn[type="date"], .input-group-lg input[type="date"], input[type="time"].input-lg, .input-group-lg > input.form-control[type="time"], .input-group-lg > input.input-group-addon[type="time"], .input-group-lg > .input-group-btn > input.btn[type="time"], .input-group-lg input[type="time"], input[type="datetime-local"].input-lg, .input-group-lg > input.form-control[type="datetime-local"], .input-group-lg > input.input-group-addon[type="datetime-local"], .input-group-lg > .input-group-btn > input.btn[type="datetime-local"], .input-group-lg input[type="datetime-local"], input[type="month"].input-lg, .input-group-lg > input.form-control[type="month"], .input-group-lg > input.input-group-addon[type="month"], .input-group-lg > .input-group-btn > input.btn[type="month"], .input-group-lg input[type="month"] {
       line-height: 46px;
  }
}
.form-group {
   margin-bottom: 15px;
}
.radio, .checkbox {
   position: relative;
   display: block;
   margin-top: 10px;
   margin-bottom: 10px;
}
.radio label, .checkbox label {
   min-height: 24px;
   padding-left: 20px;
   margin-bottom: 0;
   font-weight: normal;
   cursor: pointer;
}
.radio input[type="radio"], .radio-inline input[type="radio"], .checkbox input[type="checkbox"], .checkbox-inline input[type="checkbox"] {
   position: absolute;
   margin-left: -20px;
   margin-top: 4px \9;
}
.radio + .radio, .checkbox + .checkbox {
   margin-top: -5px;
}
.radio-inline, .checkbox-inline {
   position: relative;
   display: inline-block;
   padding-left: 20px;
   margin-bottom: 0;
   vertical-align: middle;
   font-weight: normal;
   cursor: pointer;
}
.radio-inline + .radio-inline, .checkbox-inline + .checkbox-inline {
   margin-top: 0;
   margin-left: 10px;
}
input[type="radio"][disabled], input[type="radio"].disabled, fieldset[disabled] input[type="radio"], input[type="checkbox"][disabled], input[type="checkbox"].disabled, fieldset[disabled] input[type="checkbox"] {
   cursor: not-allowed;
}
.radio-inline.disabled, fieldset[disabled] .radio-inline, .checkbox-inline.disabled, fieldset[disabled] .checkbox-inline {
   cursor: not-allowed;
}
.radio.disabled label, fieldset[disabled] .radio label, .checkbox.disabled label, fieldset[disabled] .checkbox label {
   cursor: not-allowed;
}
.form-control-static {
   padding-top: 7px;
   padding-bottom: 7px;
   margin-bottom: 0;
   min-height: 38px;
}
.form-control-static.input-lg, .input-group-lg > .form-control-static.form-control, .input-group-lg > .form-control-static.input-group-addon, .input-group-lg > .input-group-btn > .form-control-static.btn, .form-control-static.input-sm, .input-group-sm > .form-control-static.form-control, .input-group-sm > .form-control-static.input-group-addon, .input-group-sm > .input-group-btn > .form-control-static.btn {
   padding-left: 0;
   padding-right: 0;
}
.input-sm, .input-group-sm > .form-control, .input-group-sm > .input-group-addon, .input-group-sm > .input-group-btn > .btn {
   height: 30px;
   padding: 5px 10px;
   font-size: 12px;
   line-height: 1.5;
   border-radius: 3px;
}
select.input-sm, .input-group-sm > select.form-control, .input-group-sm > select.input-group-addon, .input-group-sm > .input-group-btn > select.btn {
   height: 30px;
   line-height: 30px;
}
textarea.input-sm, .input-group-sm > textarea.form-control, .input-group-sm > textarea.input-group-addon, .input-group-sm > .input-group-btn > textarea.btn, select[multiple].input-sm, .input-group-sm > select.form-control[multiple], .input-group-sm > select.input-group-addon[multiple], .input-group-sm > .input-group-btn > select.btn[multiple] {
   height: auto;
}
.form-group-sm .form-control {
   height: 30px;
   padding: 5px 10px;
   font-size: 12px;
   line-height: 1.5;
   border-radius: 3px;
}
.form-group-sm select.form-control {
   height: 30px;
   line-height: 30px;
}
.form-group-sm textarea.form-control, .form-group-sm select[multiple].form-control {
   height: auto;
}
.form-group-sm .form-control-static {
   height: 30px;
   min-height: 36px;
   padding: 6px 10px;
   font-size: 12px;
   line-height: 1.5;
}
.input-lg, .input-group-lg > .form-control, .input-group-lg > .input-group-addon, .input-group-lg > .input-group-btn > .btn {
   height: 46px;
   padding: 10px 16px;
   font-size: 18px;
   line-height: 1.33333;
   border-radius: 6px;
}
select.input-lg, .input-group-lg > select.form-control, .input-group-lg > select.input-group-addon, .input-group-lg > .input-group-btn > select.btn {
   height: 46px;
   line-height: 46px;
}
textarea.input-lg, .input-group-lg > textarea.form-control, .input-group-lg > textarea.input-group-addon, .input-group-lg > .input-group-btn > textarea.btn, select[multiple].input-lg, .input-group-lg > select.form-control[multiple], .input-group-lg > select.input-group-addon[multiple], .input-group-lg > .input-group-btn > select.btn[multiple] {
   height: auto;
}
.form-group-lg .form-control {
   height: 46px;
   padding: 10px 16px;
   font-size: 18px;
   line-height: 1.33333;
   border-radius: 6px;
}
.form-group-lg select.form-control {
   height: 46px;
   line-height: 46px;
}
.form-group-lg textarea.form-control, .form-group-lg select[multiple].form-control {
   height: auto;
}
.form-group-lg .form-control-static {
   height: 46px;
   min-height: 42px;
   padding: 11px 16px;
   font-size: 18px;
   line-height: 1.33333;
}
.has-feedback {
   position: relative;
}
.has-feedback .form-control {
   padding-right: 47.5px;
}
.form-control-feedback {
   position: absolute;
   top: 0;
   right: 0;
   z-index: 2;
   display: block;
   width: 38px;
   height: 38px;
   line-height: 38px;
   text-align: center;
   pointer-events: none;
}
.input-lg + .form-control-feedback, .input-group-lg > .form-control + .form-control-feedback, .input-group-lg > .input-group-addon + .form-control-feedback, .input-group-lg > .input-group-btn > .btn + .form-control-feedback, .input-group-lg + .form-control-feedback, .form-group-lg .form-control + .form-control-feedback {
   width: 46px;
   height: 46px;
   line-height: 46px;
}
.input-sm + .form-control-feedback, .input-group-sm > .form-control + .form-control-feedback, .input-group-sm > .input-group-addon + .form-control-feedback, .input-group-sm > .input-group-btn > .btn + .form-control-feedback, .input-group-sm + .form-control-feedback, .form-group-sm .form-control + .form-control-feedback {
   width: 30px;
   height: 30px;
   line-height: 30px;
}
.has-success .help-block, .has-success .control-label, .has-success .radio, .has-success .checkbox, .has-success .radio-inline, .has-success .checkbox-inline, .has-success.radio label, .has-success.checkbox label, .has-success.radio-inline label, .has-success.checkbox-inline label {
   color: #3c763d;
}
.has-success .form-control {
   border-color: #3c763d;
   -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
   box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-success .form-control:focus {
   border-color: #2b542c;
   -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
   box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
}
.has-success .input-group-addon {
   color: #3c763d;
   border-color: #3c763d;
   background-color: #dff0d8;
}
.has-success .form-control-feedback {
   color: #3c763d;
}
.has-warning .help-block, .has-warning .control-label, .has-warning .radio, .has-warning .checkbox, .has-warning .radio-inline, .has-warning .checkbox-inline, .has-warning.radio label, .has-warning.checkbox label, .has-warning.radio-inline label, .has-warning.checkbox-inline label {
   color: #8a6d3b;
}
.has-warning .form-control {
   border-color: #8a6d3b;
   -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
   box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-warning .form-control:focus {
   border-color: #66512c;
   -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
   box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
}
.has-warning .input-group-addon {
   color: #8a6d3b;
   border-color: #8a6d3b;
   background-color: #fcf8e3;
}
.has-warning .form-control-feedback {
   color: #8a6d3b;
}
.has-error .help-block, .has-error .control-label, .has-error .radio, .has-error .checkbox, .has-error .radio-inline, .has-error .checkbox-inline, .has-error.radio label, .has-error.checkbox label, .has-error.radio-inline label, .has-error.checkbox-inline label {
   color: #a94442;
}
.has-error .form-control {
   border-color: #a94442;
   -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
   box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-error .form-control:focus {
   border-color: #843534;
   -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
   box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
}
.has-error .input-group-addon {
   color: #a94442;
   border-color: #a94442;
   background-color: #f2dede;
}
.has-error .form-control-feedback {
   color: #a94442;
}
.has-feedback label ~ .form-control-feedback {
   top: 29px;
}
.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: 31px;
}
.form-horizontal .form-group {
   margin-left: -15px;
   margin-right: -15px;
}
.form-horizontal .form-group:before, .form-horizontal .form-group:after {
   content: " ";
   display: table;
}
.form-horizontal .form-group:after {
   clear: both;
}
@media (min-width: 768px) {
   .form-horizontal .control-label {
       text-align: right;
       margin-bottom: 0;
       padding-top: 7px;
  }
}
.form-horizontal .has-feedback .form-control-feedback {
   right: 15px;
}
@media (min-width: 768px) {
   .form-horizontal .form-group-lg .control-label {
       padding-top: 11px;
       font-size: 18px;
  }
}
@media (min-width: 768px) {
   .form-horizontal .form-group-sm .control-label {
       padding-top: 6px;
       font-size: 12px;
  }
}
.btn {
   display: inline-block;
   margin-bottom: 0;
   font-weight: normal;
   text-align: center;
   vertical-align: middle;
   touch-action: manipulation;
   cursor: pointer;
   background-image: none;
   border: 1px solid transparent;
   white-space: nowrap;
   padding: 6px 12px;
   font-size: 14px;
   line-height: 1.75;
   border-radius: 0px;
   -webkit-user-select: none;
   -moz-user-select: none;
   -ms-user-select: none;
   user-select: none;
}
.btn:focus, .btn.focus, .btn:active:focus, .btn:active.focus, .btn.active:focus, .btn.active.focus {
   outline: thin dotted;
   outline: 5px auto -webkit-focus-ring-color;
   outline-offset: -2px;
}
.btn:hover, .btn:focus, .btn.focus {
   color: #333;
   text-decoration: none;
}
.btn:active, .btn.active {
   outline: 0;
   background-image: none;
   -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
   box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn.disabled, .btn[disabled], fieldset[disabled] .btn {
   cursor: not-allowed;
   opacity: 0.65;
   filter: alpha(opacity=65);
   -webkit-box-shadow: none;
   box-shadow: none;
}
a.btn.disabled, fieldset[disabled] a.btn {
   pointer-events: none;
}
.btn-default {
   color: #333;
   background-color: #fff;
   border-color: #ccc;
}
.btn-default:focus, .btn-default.focus {
   color: #333;
   background-color: #e6e6e6;
   border-color: #8c8c8c;
}
.btn-default:hover {
   color: #333;
   background-color: #e6e6e6;
   border-color: #adadad;
}
.btn-default:active, .btn-default.active, .open > .btn-default.dropdown-toggle {
   color: #333;
   background-color: #e6e6e6;
   border-color: #adadad;
}
.btn-default:active:hover, .btn-default:active:focus, .btn-default:active.focus, .btn-default.active:hover, .btn-default.active:focus, .btn-default.active.focus, .open > .btn-default.dropdown-toggle:hover, .open > .btn-default.dropdown-toggle:focus, .open > .btn-default.dropdown-toggle.focus {
   color: #333;
   background-color: #d4d4d4;
   border-color: #8c8c8c;
}
.btn-default:active, .btn-default.active, .open > .btn-default.dropdown-toggle {
   background-image: none;
}
.btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled.focus, .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled].focus, fieldset[disabled] .btn-default:hover, fieldset[disabled] .btn-default:focus, fieldset[disabled] .btn-default.focus {
   background-color: #fff;
   border-color: #ccc;
}
.btn-default .badge {
   color: #fff;
   background-color: #333;
}
.btn-primary {
   color: #fff;
   background-color: #ff1a4b;
   border-color: #ff0137;
}
.btn-primary:focus, .btn-primary.focus {
   color: #fff;
   background-color: #e60031;
   border-color: #80001b;
}
.btn-primary:hover {
   color: #fff;
   background-color: #e60031;
   border-color: #c2002a;
}
.btn-primary:active, .btn-primary.active, .open > .btn-primary.dropdown-toggle {
   color: #fff;
   background-color: #e60031;
   border-color: #c2002a;
}
.btn-primary:active:hover, .btn-primary:active:focus, .btn-primary:active.focus, .btn-primary.active:hover, .btn-primary.active:focus, .btn-primary.active.focus, .open > .btn-primary.dropdown-toggle:hover, .open > .btn-primary.dropdown-toggle:focus, .open > .btn-primary.dropdown-toggle.focus {
   color: #fff;
   background-color: #c2002a;
   border-color: #80001b;
}
.btn-primary:active, .btn-primary.active, .open > .btn-primary.dropdown-toggle {
   background-image: none;
}
.btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus, fieldset[disabled] .btn-primary:hover, fieldset[disabled] .btn-primary:focus, fieldset[disabled] .btn-primary.focus {
   background-color: #ff1a4b;
   border-color: #ff0137;
}
.btn-primary .badge {
   color: #ff1a4b;
   background-color: #fff;
}
.btn-success {
   color: #fff;
   background-color: #5cb85c;
   border-color: #4cae4c;
}
.btn-success:focus, .btn-success.focus {
   color: #fff;
   background-color: #449d44;
   border-color: #255625;
}
.btn-success:hover {
   color: #fff;
   background-color: #449d44;
   border-color: #398439;
}
.btn-success:active, .btn-success.active, .open > .btn-success.dropdown-toggle {
   color: #fff;
   background-color: #449d44;
   border-color: #398439;
}
.btn-success:active:hover, .btn-success:active:focus, .btn-success:active.focus, .btn-success.active:hover, .btn-success.active:focus, .btn-success.active.focus, .open > .btn-success.dropdown-toggle:hover, .open > .btn-success.dropdown-toggle:focus, .open > .btn-success.dropdown-toggle.focus {
   color: #fff;
   background-color: #398439;
   border-color: #255625;
}
.btn-success:active, .btn-success.active, .open > .btn-success.dropdown-toggle {
   background-image: none;
}
.btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus, fieldset[disabled] .btn-success:hover, fieldset[disabled] .btn-success:focus, fieldset[disabled] .btn-success.focus {
   background-color: #5cb85c;
   border-color: #4cae4c;
}
.btn-success .badge {
   color: #5cb85c;
   background-color: #fff;
}
.btn-info {
   color: #fff;
   background-color: #5bc0de;
   border-color: #46b8da;
}
.btn-info:focus, .btn-info.focus {
   color: #fff;
   background-color: #31b0d5;
   border-color: #1b6d85;
}
.btn-info:hover {
   color: #fff;
   background-color: #31b0d5;
   border-color: #269abc;
}
.btn-info:active, .btn-info.active, .open > .btn-info.dropdown-toggle {
   color: #fff;
   background-color: #31b0d5;
   border-color: #269abc;
}
.btn-info:active:hover, .btn-info:active:focus, .btn-info:active.focus, .btn-info.active:hover, .btn-info.active:focus, .btn-info.active.focus, .open > .btn-info.dropdown-toggle:hover, .open > .btn-info.dropdown-toggle:focus, .open > .btn-info.dropdown-toggle.focus {
   color: #fff;
   background-color: #269abc;
   border-color: #1b6d85;
}
.btn-info:active, .btn-info.active, .open > .btn-info.dropdown-toggle {
   background-image: none;
}
.btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled].focus, fieldset[disabled] .btn-info:hover, fieldset[disabled] .btn-info:focus, fieldset[disabled] .btn-info.focus {
   background-color: #5bc0de;
   border-color: #46b8da;
}
.btn-info .badge {
   color: #5bc0de;
   background-color: #fff;
}
.btn-warning {
   color: #fff;
   background-color: #f0ad4e;
   border-color: #eea236;
}
.btn-warning:focus, .btn-warning.focus {
   color: #fff;
   background-color: #ec971f;
   border-color: #985f0d;
}
.btn-warning:hover {
   color: #fff;
   background-color: #ec971f;
   border-color: #d58512;
}
.btn-warning:active, .btn-warning.active, .open > .btn-warning.dropdown-toggle {
   color: #fff;
   background-color: #ec971f;
   border-color: #d58512;
}
.btn-warning:active:hover, .btn-warning:active:focus, .btn-warning:active.focus, .btn-warning.active:hover, .btn-warning.active:focus, .btn-warning.active.focus, .open > .btn-warning.dropdown-toggle:hover, .open > .btn-warning.dropdown-toggle:focus, .open > .btn-warning.dropdown-toggle.focus {
   color: #fff;
   background-color: #d58512;
   border-color: #985f0d;
}
.btn-warning:active, .btn-warning.active, .open > .btn-warning.dropdown-toggle {
   background-image: none;
}
.btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled].focus, fieldset[disabled] .btn-warning:hover, fieldset[disabled] .btn-warning:focus, fieldset[disabled] .btn-warning.focus {
   background-color: #f0ad4e;
   border-color: #eea236;
}
.btn-warning .badge {
   color: #f0ad4e;
   background-color: #fff;
}
.btn-danger {
   color: #fff;
   background-color: #d9534f;
   border-color: #d43f3a;
}
.btn-danger:focus, .btn-danger.focus {
   color: #fff;
   background-color: #c9302c;
   border-color: #761c19;
}
.btn-danger:hover {
   color: #fff;
   background-color: #c9302c;
   border-color: #ac2925;
}
.btn-danger:active, .btn-danger.active, .open > .btn-danger.dropdown-toggle {
   color: #fff;
   background-color: #c9302c;
   border-color: #ac2925;
}
.btn-danger:active:hover, .btn-danger:active:focus, .btn-danger:active.focus, .btn-danger.active:hover, .btn-danger.active:focus, .btn-danger.active.focus, .open > .btn-danger.dropdown-toggle:hover, .open > .btn-danger.dropdown-toggle:focus, .open > .btn-danger.dropdown-toggle.focus {
   color: #fff;
   background-color: #ac2925;
   border-color: #761c19;
}
.btn-danger:active, .btn-danger.active, .open > .btn-danger.dropdown-toggle {
   background-image: none;
}
.btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled].focus, fieldset[disabled] .btn-danger:hover, fieldset[disabled] .btn-danger:focus, fieldset[disabled] .btn-danger.focus {
   background-color: #d9534f;
   border-color: #d43f3a;
}
.btn-danger .badge {
   color: #d9534f;
   background-color: #fff;
}
.btn-link {
   color: #ff1a4b;
   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: #cd002c;
   text-decoration: none;
   background-color: transparent;
}
.btn-link[disabled]:hover, .btn-link[disabled]:focus, fieldset[disabled] .btn-link:hover, fieldset[disabled] .btn-link:focus {
   color: #777777;
   text-decoration: none;
}
.btn-lg, .btn-group-lg > .btn {
   padding: 10px 16px;
   font-size: 18px;
   line-height: 1.33333;
   border-radius: 6px;
}
.btn-sm, .btn-group-sm > .btn {
   padding: 5px 10px;
   font-size: 12px;
   line-height: 1.5;
   border-radius: 3px;
}
.btn-xs, .btn-group-xs > .btn {
   padding: 1px 5px;
   font-size: 12px;
   line-height: 1.5;
   border-radius: 3px;
}
.btn-block {
   display: block;
   width: 100%;
}
.btn-block + .btn-block {
   margin-top: 5px;
}
input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="button"].btn-block {
   width: 100%;
}
.fade {
   opacity: 0;
   -webkit-transition: opacity 0.15s linear;
   -o-transition: opacity 0.15s linear;
   transition: opacity 0.15s linear;
}
.fade.in {
   opacity: 1;
}
.collapse {
   display: none;
}
.collapse.in {
   display: block;
}
tr.collapse.in {
   display: table-row;
}
tbody.collapse.in {
   display: table-row-group;
}
.collapsing {
   position: relative;
   height: 0;
   overflow: hidden;
   -webkit-transition-property: height, visibility;
   transition-property: height, visibility;
   -webkit-transition-duration: 0.35s;
   transition-duration: 0.35s;
   -webkit-transition-timing-function: ease;
   transition-timing-function: ease;
}
.caret {
   display: inline-block;
   width: 0;
   height: 0;
   margin-left: 2px;
   vertical-align: middle;
   border-top: 4px dashed;
   border-top: 4px solid \9;
   border-right: 4px solid transparent;
   border-left: 4px solid transparent;
}
.dropup, .dropdown {
   position: relative;
}
.dropdown-toggle:focus {
   outline: 0;
}
.dropdown-menu {
   position: absolute;
   top: 100%;
   left: 0;
   z-index: 1000;
   display: none;
   float: left;
   min-width: 160px;
   padding: 5px 0;
   margin: 2px 0 0;
   list-style: none;
   font-size: 14px;
   text-align: left;
   background-color: #fff;
   border: 1px solid #ccc;
   border: 1px solid rgba(0, 0, 0, 0.15);
   border-radius: 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: 11px 0;
   overflow: hidden;
   background-color: #e5e5e5;
}
.dropdown-menu > li > a {
   display: block;
   padding: 3px 20px;
   clear: both;
   font-weight: normal;
   line-height: 1.75;
   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: #ff1a4b;
}
.dropdown-menu > .disabled > a, .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
   color: #777777;
}
.dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
   text-decoration: none;
   background-color: transparent;
   background-image: none;
   filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
   cursor: not-allowed;
}
.open > .dropdown-menu {
   display: block;
}
.open > a {
   outline: 0;
}
.dropdown-menu-right {
   left: auto;
   right: 0;
}
.dropdown-menu-left {
   left: 0;
   right: auto;
}
.dropdown-header {
   display: block;
   padding: 3px 20px;
   font-size: 12px;
   line-height: 1.75;
   color: #777777;
   white-space: nowrap;
}
.dropdown-backdrop {
   position: fixed;
   left: 0;
   right: 0;
   bottom: 0;
   top: 0;
   z-index: 990;
}
.pull-right > .dropdown-menu {
   right: 0;
   left: auto;
}
.dropup .caret, .navbar-fixed-bottom .dropdown .caret {
   border-top: 0;
   border-bottom: 4px dashed;
   border-bottom: 4px solid \9;
   content: "";
}
.dropup .dropdown-menu, .navbar-fixed-bottom .dropdown .dropdown-menu {
   top: auto;
   bottom: 100%;
   margin-bottom: 2px;
}
@media (min-width: 768px) {
   .navbar-right .dropdown-menu {
       right: 0;
       left: auto;
  }
   .navbar-right .dropdown-menu-left {
       left: 0;
       right: auto;
  }
}
.btn-group, .btn-group-vertical {
   position: relative;
   display: inline-block;
   vertical-align: middle;
}
.btn-group > .btn, .btn-group-vertical > .btn {
   position: relative;
   float: left;
}
.btn-group > .btn:hover, .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active, .btn-group-vertical > .btn:hover, .btn-group-vertical > .btn:focus, .btn-group-vertical > .btn:active, .btn-group-vertical > .btn.active {
   z-index: 2;
}
.btn-group .btn + .btn, .btn-group .btn + .btn-group, .btn-group .btn-group + .btn, .btn-group .btn-group + .btn-group {
   margin-left: -1px;
}
.btn-toolbar {
   margin-left: -5px;
}
.btn-toolbar:before, .btn-toolbar:after {
   content: " ";
   display: table;
}
.btn-toolbar:after {
   clear: both;
}
.btn-toolbar .btn, .btn-toolbar .btn-group, .btn-toolbar .input-group {
   float: left;
}
.btn-toolbar > .btn, .btn-toolbar > .btn-group, .btn-toolbar > .input-group {
   margin-left: 5px;
}
.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
   border-radius: 0;
}
.btn-group > .btn:first-child {
   margin-left: 0;
}
.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
   border-bottom-right-radius: 0;
   border-top-right-radius: 0;
}
.btn-group > .btn:last-child:not(:first-child), .btn-group > .dropdown-toggle:not(:first-child) {
   border-bottom-left-radius: 0;
   border-top-left-radius: 0;
}
.btn-group > .btn-group {
   float: left;
}
.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
   border-radius: 0;
}
.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child, .btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
   border-bottom-right-radius: 0;
   border-top-right-radius: 0;
}
.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
   border-bottom-left-radius: 0;
   border-top-left-radius: 0;
}
.btn-group .dropdown-toggle:active, .btn-group.open .dropdown-toggle {
   outline: 0;
}
.btn-group > .btn + .dropdown-toggle {
   padding-left: 8px;
   padding-right: 8px;
}
.btn-group > .btn-lg + .dropdown-toggle, .btn-group-lg.btn-group > .btn + .dropdown-toggle {
   padding-left: 12px;
   padding-right: 12px;
}
.btn-group.open .dropdown-toggle {
   -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
   box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn-group.open .dropdown-toggle.btn-link {
   -webkit-box-shadow: none;
   box-shadow: none;
}
.btn .caret {
   margin-left: 0;
}
.btn-lg .caret, .btn-group-lg > .btn .caret {
   border-width: 5px 5px 0;
   border-bottom-width: 0;
}
.dropup .btn-lg .caret, .dropup .btn-group-lg > .btn .caret {
   border-width: 0 5px 5px;
}
.btn-group-vertical > .btn, .btn-group-vertical > .btn-group, .btn-group-vertical > .btn-group > .btn {
   display: block;
   float: none;
   width: 100%;
   max-width: 100%;
}
.btn-group-vertical > .btn-group:before, .btn-group-vertical > .btn-group:after {
   content: " ";
   display: table;
}
.btn-group-vertical > .btn-group:after {
   clear: both;
}
.btn-group-vertical > .btn-group > .btn {
   float: none;
}
.btn-group-vertical > .btn + .btn, .btn-group-vertical > .btn + .btn-group, .btn-group-vertical > .btn-group + .btn, .btn-group-vertical > .btn-group + .btn-group {
   margin-top: -1px;
   margin-left: 0;
}
.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
   border-radius: 0;
}
.btn-group-vertical > .btn:first-child:not(:last-child) {
   border-top-right-radius: 0px;
   border-top-left-radius: 0px;
   border-bottom-right-radius: 0;
   border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:last-child:not(:first-child) {
   border-top-right-radius: 0;
   border-top-left-radius: 0;
   border-bottom-right-radius: 0px;
   border-bottom-left-radius: 0px;
}
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
   border-radius: 0;
}
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, .btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
   border-bottom-right-radius: 0;
   border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
   border-top-right-radius: 0;
   border-top-left-radius: 0;
}
.btn-group-justified {
   display: table;
   width: 100%;
   table-layout: fixed;
   border-collapse: separate;
}
.btn-group-justified > .btn, .btn-group-justified > .btn-group {
   float: none;
   display: table-cell;
   width: 1%;
}
.btn-group-justified > .btn-group .btn {
   width: 100%;
}
.btn-group-justified > .btn-group .dropdown-menu {
   left: auto;
}
[data-toggle="buttons"] > .btn input[type="radio"], [data-toggle="buttons"] > .btn input[type="checkbox"], [data-toggle="buttons"] > .btn-group > .btn input[type="radio"], [data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
   position: absolute;
   clip: rect(0, 0, 0, 0);
   pointer-events: none;
}
.input-group {
   position: relative;
   display: table;
   border-collapse: separate;
}
.input-group[class*="col-"] {
   float: none;
   padding-left: 0;
   padding-right: 0;
}
.input-group .form-control {
   position: relative;
   z-index: 2;
   float: left;
   width: 100%;
   margin-bottom: 0;
}
.input-group .form-control:focus {
   z-index: 3;
}
.input-group-addon, .input-group-btn, .input-group .form-control {
   display: table-cell;
}
.input-group-addon:not(:first-child):not(:last-child), .input-group-btn:not(:first-child):not(:last-child), .input-group .form-control:not(:first-child):not(:last-child) {
   border-radius: 0;
}
.input-group-addon, .input-group-btn {
   width: 1%;
   white-space: nowrap;
   vertical-align: middle;
}
.input-group-addon {
   padding: 6px 12px;
   font-size: 14px;
   font-weight: normal;
   line-height: 1;
   color: #555555;
   text-align: center;
   background-color: #eeeeee;
   border: 1px solid #ccc;
   border-radius: 0px;
}
.input-group-addon.input-sm, .input-group-sm > .input-group-addon, .input-group-sm > .input-group-btn > .input-group-addon.btn {
   padding: 5px 10px;
   font-size: 12px;
   border-radius: 3px;
}
.input-group-addon.input-lg, .input-group-lg > .input-group-addon, .input-group-lg > .input-group-btn > .input-group-addon.btn {
   padding: 10px 16px;
   font-size: 18px;
   border-radius: 6px;
}
.input-group-addon input[type="radio"], .input-group-addon input[type="checkbox"] {
   margin-top: 0;
}
.input-group .form-control:first-child, .input-group-addon:first-child, .input-group-btn:first-child > .btn, .input-group-btn:first-child > .btn-group > .btn, .input-group-btn:first-child > .dropdown-toggle, .input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), .input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
   border-bottom-right-radius: 0;
   border-top-right-radius: 0;
}
.input-group-addon:first-child {
   border-right: 0;
}
.input-group .form-control:last-child, .input-group-addon:last-child, .input-group-btn:last-child > .btn, .input-group-btn:last-child > .btn-group > .btn, .input-group-btn:last-child > .dropdown-toggle, .input-group-btn:first-child > .btn:not(:first-child), .input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
   border-bottom-left-radius: 0;
   border-top-left-radius: 0;
}
.input-group-addon:last-child {
   border-left: 0;
}
.input-group-btn {
   position: relative;
   font-size: 0;
   white-space: nowrap;
}
.input-group-btn > .btn {
   position: relative;
}
.input-group-btn > .btn + .btn {
   margin-left: -1px;
}
.input-group-btn > .btn:hover, .input-group-btn > .btn:focus, .input-group-btn > .btn:active {
   z-index: 2;
}
.input-group-btn:first-child > .btn, .input-group-btn:first-child > .btn-group {
   margin-right: -1px;
}
.input-group-btn:last-child > .btn, .input-group-btn:last-child > .btn-group {
   z-index: 2;
   margin-left: -1px;
}
.nav {
   margin-bottom: 0;
   padding-left: 0;
   list-style: none;
}
.nav:before, .nav:after {
   content: " ";
   display: table;
}
.nav:after {
   clear: both;
}
.nav > li {
   position: relative;
   display: block;
}
.nav > li > a {
   position: relative;
   display: block;
   padding: 10px 15px;
}
.nav > li > a:hover, .nav > li > a:focus {
   text-decoration: none;
   background-color: #eeeeee;
}
.nav > li.disabled > a {
   color: #777777;
}
.nav > li.disabled > a:hover, .nav > li.disabled > a:focus {
   color: #777777;
   text-decoration: none;
   background-color: transparent;
   cursor: not-allowed;
}
.nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
   background-color: #eeeeee;
   border-color: #ff1a4b;
}
.nav .nav-divider {
   height: 1px;
   margin: 11px 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.75;
   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: #fff;
   border: 1px solid #ddd;
   border-bottom-color: transparent;
   cursor: default;
}
.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: #ff1a4b;
}
.nav-stacked > li {
   float: none;
}
.nav-stacked > li + li {
   margin-top: 2px;
   margin-left: 0;
}
.nav-justified, .nav-tabs.nav-justified {
   width: 100%;
}
.nav-justified > li, .nav-tabs.nav-justified > li {
   float: none;
}
.nav-justified > li > a, .nav-tabs.nav-justified > li > a {
   text-align: center;
   margin-bottom: 5px;
}
.nav-justified > .dropdown .dropdown-menu {
   top: auto;
   left: auto;
}
@media (min-width: 768px) {
   .nav-justified > li, .nav-tabs.nav-justified > li {
       display: table-cell;
       width: 1%;
  }
   .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
       margin-bottom: 0;
  }
}
.nav-tabs-justified, .nav-tabs.nav-justified {
   border-bottom: 0;
}
.nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
   margin-right: 0;
   border-radius: 0px;
}
.nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a, .nav-tabs-justified > .active > a:hover, .nav-tabs.nav-justified > .active > a:hover, .nav-tabs-justified > .active > a:focus, .nav-tabs.nav-justified > .active > a:focus {
   border: 1px solid #ddd;
}
@media (min-width: 768px) {
   .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
       border-bottom: 1px solid #ddd;
       border-radius: 0px 0px 0 0;
  }
   .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a, .nav-tabs-justified > .active > a:hover, .nav-tabs.nav-justified > .active > a:hover, .nav-tabs-justified > .active > a:focus, .nav-tabs.nav-justified > .active > a:focus {
       border-bottom-color: #fff;
  }
}
.tab-content > .tab-pane {
   display: none;
}
.tab-content > .active {
   display: block;
}
.nav-tabs .dropdown-menu {
   margin-top: -1px;
   border-top-right-radius: 0;
   border-top-left-radius: 0;
}
.navbar {
   position: relative;
   min-height: 50px;
   margin-bottom: 24px;
   border: 1px solid transparent;
}
.navbar:before, .navbar:after {
   content: " ";
   display: table;
}
.navbar:after {
   clear: both;
}
@media (min-width: 768px) {
   .navbar {
       border-radius: 0;
  }
}
.navbar-header:before, .navbar-header:after {
   content: " ";
   display: table;
}
.navbar-header:after {
   clear: both;
}
@media (min-width: 768px) {
   .navbar-header {
       float: left;
  }
}
.navbar-collapse {
   overflow-x: visible;
   padding-right: 15px;
   padding-left: 15px;
   border-top: 1px solid transparent;
   box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
   -webkit-overflow-scrolling: touch;
}
.navbar-collapse:before, .navbar-collapse:after {
   content: " ";
   display: table;
}
.navbar-collapse:after {
   clear: both;
}
.navbar-collapse.in {
   overflow-y: auto;
}
@media (min-width: 768px) {
   .navbar-collapse {
       width: auto;
       border-top: 0;
       box-shadow: none;
  }
   .navbar-collapse.collapse {
       display: block !important;
       height: auto !important;
       padding-bottom: 0;
       overflow: visible !important;
  }
   .navbar-collapse.in {
       overflow-y: visible;
  }
   .navbar-fixed-top .navbar-collapse, .navbar-static-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse {
       padding-left: 0;
       padding-right: 0;
  }
}
.navbar-fixed-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse {
   max-height: 340px;
}
@media (max-device-width: 480px) and (orientation: landscape) {
   .navbar-fixed-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse {
       max-height: 200px;
  }
}
.container > .navbar-header, .container > .navbar-collapse, .container-fluid > .navbar-header, .container-fluid > .navbar-collapse {
   margin-right: -15px;
   margin-left: -15px;
}
@media (min-width: 768px) {
   .container > .navbar-header, .container > .navbar-collapse, .container-fluid > .navbar-header, .container-fluid > .navbar-collapse {
       margin-right: 0;
       margin-left: 0;
  }
}
.navbar-static-top {
   z-index: 1000;
   border-width: 0 0 1px;
}
@media (min-width: 768px) {
   .navbar-static-top {
       border-radius: 0;
  }
}
.navbar-fixed-top, .navbar-fixed-bottom {
   position: fixed;
   right: 0;
   left: 0;
   z-index: 1030;
}
@media (min-width: 768px) {
   .navbar-fixed-top, .navbar-fixed-bottom {
       border-radius: 0;
  }
}
.navbar-fixed-top {
   top: 0;
   border-width: 0 0 1px;
}
.navbar-fixed-bottom {
   bottom: 0;
   margin-bottom: 0;
   border-width: 1px 0 0;
}
.navbar-brand {
   float: left;
   padding: 13px 15px;
   font-size: 18px;
   line-height: 24px;
   height: 50px;
}
.navbar-brand:hover, .navbar-brand:focus {
   text-decoration: none;
}
.navbar-brand > img {
   display: block;
}
@media (min-width: 768px) {
   .navbar > .container .navbar-brand, .navbar > .container-fluid .navbar-brand {
       margin-left: -15px;
  }
}
.navbar-toggle {
   position: relative;
   float: right;
   margin-right: 15px;
   padding: 9px 10px;
   margin-top: 8px;
   margin-bottom: 8px;
   background-color: transparent;
   background-image: none;
   border: 1px solid transparent;
   border-radius: 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: 6.5px -15px;
}
.navbar-nav > li > a {
   padding-top: 10px;
   padding-bottom: 10px;
   line-height: 24px;
}
@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: 24px;
  }
   .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: 13px;
       padding-bottom: 13px;
  }
}
.navbar-form {
   margin-left: -15px;
   margin-right: -15px;
   padding: 10px 15px;
   border-top: 1px solid transparent;
   border-bottom: 1px solid transparent;
   -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
   box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
   margin-top: 6px;
   margin-bottom: 6px;
}
@media (min-width: 768px) {
   .navbar-form .form-group {
       display: inline-block;
       margin-bottom: 0;
       vertical-align: middle;
  }
   .navbar-form .form-control {
       display: inline-block;
       width: auto;
       vertical-align: middle;
  }
   .navbar-form .form-control-static {
       display: inline-block;
  }
   .navbar-form .input-group {
       display: inline-table;
       vertical-align: middle;
  }
   .navbar-form .input-group .input-group-addon, .navbar-form .input-group .input-group-btn, .navbar-form .input-group .form-control {
       width: auto;
  }
   .navbar-form .input-group > .form-control {
       width: 100%;
  }
   .navbar-form .control-label {
       margin-bottom: 0;
       vertical-align: middle;
  }
   .navbar-form .radio, .navbar-form .checkbox {
       display: inline-block;
       margin-top: 0;
       margin-bottom: 0;
       vertical-align: middle;
  }
   .navbar-form .radio label, .navbar-form .checkbox label {
       padding-left: 0;
  }
   .navbar-form .radio input[type="radio"], .navbar-form .checkbox input[type="checkbox"] {
       position: relative;
       margin-left: 0;
  }
   .navbar-form .has-feedback .form-control-feedback {
       top: 0;
  }
}
@media (max-width: 767px) {
   .navbar-form .form-group {
       margin-bottom: 5px;
  }
   .navbar-form .form-group:last-child {
       margin-bottom: 0;
  }
}
@media (min-width: 768px) {
   .navbar-form {
       width: auto;
       border: 0;
       margin-left: 0;
       margin-right: 0;
       padding-top: 0;
       padding-bottom: 0;
       -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: 0;
   border-top-left-radius: 0;
   border-bottom-right-radius: 0;
   border-bottom-left-radius: 0;
}
.navbar-btn {
   margin-top: 6px;
   margin-bottom: 6px;
}
.navbar-btn.btn-sm, .btn-group-sm > .navbar-btn.btn {
   margin-top: 10px;
   margin-bottom: 10px;
}
.navbar-btn.btn-xs, .btn-group-xs > .navbar-btn.btn {
   margin-top: 14px;
   margin-bottom: 14px;
}
.navbar-text {
   margin-top: 13px;
   margin-bottom: 13px;
}
@media (min-width: 768px) {
   .navbar-text {
       float: left;
       margin-left: 15px;
       margin-right: 15px;
  }
}
@media (min-width: 768px) {
   .navbar-left {
       float: left !important;
  }
   .navbar-right {
       float: right !important;
       margin-right: -15px;
  }
   .navbar-right ~ .navbar-right {
       margin-right: 0;
  }
}
.navbar-default {
   background-color: transparent;
   border-color: transparent;
}
.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: transparent;
}
.navbar-default .navbar-nav > .disabled > a, .navbar-default .navbar-nav > .disabled > a:hover, .navbar-default .navbar-nav > .disabled > a:focus {
   color: #ccc;
   background-color: transparent;
}
.navbar-default .navbar-toggle {
   border-color: #ddd;
}
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
   background-color: #ddd;
}
.navbar-default .navbar-toggle .icon-bar {
   background-color: #888;
}
.navbar-default .navbar-collapse, .navbar-default .navbar-form {
   border-color: transparent;
}
.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
   background-color: transparent;
   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: transparent;
  }
   .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
       color: #ccc;
       background-color: transparent;
  }
}
.navbar-default .navbar-link {
   color: #777;
}
.navbar-default .navbar-link:hover {
   color: #333;
}
.navbar-default .btn-link {
   color: #777;
}
.navbar-default .btn-link:hover, .navbar-default .btn-link:focus {
   color: #333;
}
.navbar-default .btn-link[disabled]:hover, .navbar-default .btn-link[disabled]:focus, fieldset[disabled] .navbar-default .btn-link:hover, fieldset[disabled] .navbar-default .btn-link:focus {
   color: #ccc;
}
.navbar-inverse {
   background-color: #222;
   border-color: #090909;
}
.navbar-inverse .navbar-brand {
   color: #9d9d9d;
}
.navbar-inverse .navbar-brand:hover, .navbar-inverse .navbar-brand:focus {
   color: #fff;
   background-color: transparent;
}
.navbar-inverse .navbar-text {
   color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a {
   color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a:hover, .navbar-inverse .navbar-nav > li > a:focus {
   color: #fff;
   background-color: transparent;
}
.navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus {
   color: #fff;
   background-color: #090909;
}
.navbar-inverse .navbar-nav > .disabled > a, .navbar-inverse .navbar-nav > .disabled > a:hover, .navbar-inverse .navbar-nav > .disabled > a:focus {
   color: #444;
   background-color: transparent;
}
.navbar-inverse .navbar-toggle {
   border-color: #333;
}
.navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus {
   background-color: #333;
}
.navbar-inverse .navbar-toggle .icon-bar {
   background-color: #fff;
}
.navbar-inverse .navbar-collapse, .navbar-inverse .navbar-form {
   border-color: #101010;
}
.navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus {
   background-color: #090909;
   color: #fff;
}
@media (max-width: 767px) {
   .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
       border-color: #090909;
  }
   .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
       background-color: #090909;
  }
   .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
       color: #9d9d9d;
  }
   .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
       color: #fff;
       background-color: transparent;
  }
   .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
       color: #fff;
       background-color: #090909;
  }
   .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
       color: #444;
       background-color: transparent;
  }
}
.navbar-inverse .navbar-link {
   color: #9d9d9d;
}
.navbar-inverse .navbar-link:hover {
   color: #fff;
}
.navbar-inverse .btn-link {
   color: #9d9d9d;
}
.navbar-inverse .btn-link:hover, .navbar-inverse .btn-link:focus {
   color: #fff;
}
.navbar-inverse .btn-link[disabled]:hover, .navbar-inverse .btn-link[disabled]:focus, fieldset[disabled] .navbar-inverse .btn-link:hover, fieldset[disabled] .navbar-inverse .btn-link:focus {
   color: #444;
}
.breadcrumb {
   padding: 8px 15px;
   margin-bottom: 24px;
   list-style: none;
   background-color: #f5f5f5;
   border-radius: 0px;
}
.breadcrumb > li {
   display: inline-block;
}
.breadcrumb > li + li:before {
   content: "/ ";
   padding: 0 5px;
   color: #ccc;
}
.breadcrumb > .active {
   color: #777777;
}
.pagination {
   display: inline-block;
   padding-left: 0;
   margin: 24px 0;
   border-radius: 0px;
}
.pagination > li {
   display: inline;
}
.pagination > li > a, .pagination > li > span {
   position: relative;
   float: left;
   padding: 6px 12px;
   line-height: 1.75;
   text-decoration: none;
   color: #ff1a4b;
   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 > a:focus, .pagination > li > span:hover, .pagination > li > span:focus {
   z-index: 2;
   color: #cd002c;
   background-color: #eeeeee;
   border-color: #ddd;
}
.pagination > .active > a, .pagination > .active > a:hover, .pagination > .active > a:focus, .pagination > .active > span, .pagination > .active > span:hover, .pagination > .active > span:focus {
   z-index: 3;
   color: #fff;
   background-color: #ff1a4b;
   border-color: #ff1a4b;
   cursor: default;
}
.pagination > .disabled > span, .pagination > .disabled > span:hover, .pagination > .disabled > span:focus, .pagination > .disabled > a, .pagination > .disabled > a:hover, .pagination > .disabled > a:focus {
   color: #777777;
   background-color: #fff;
   border-color: #ddd;
   cursor: not-allowed;
}
.pagination-lg > li > a, .pagination-lg > li > span {
   padding: 10px 16px;
   font-size: 18px;
   line-height: 1.33333;
}
.pagination-lg > li:first-child > a, .pagination-lg > li:first-child > span {
   border-bottom-left-radius: 6px;
   border-top-left-radius: 6px;
}
.pagination-lg > li:last-child > a, .pagination-lg > li:last-child > span {
   border-bottom-right-radius: 6px;
   border-top-right-radius: 6px;
}
.pagination-sm > li > a, .pagination-sm > li > span {
   padding: 5px 10px;
   font-size: 12px;
   line-height: 1.5;
}
.pagination-sm > li:first-child > a, .pagination-sm > li:first-child > span {
   border-bottom-left-radius: 3px;
   border-top-left-radius: 3px;
}
.pagination-sm > li:last-child > a, .pagination-sm > li:last-child > span {
   border-bottom-right-radius: 3px;
   border-top-right-radius: 3px;
}
.pager {
   padding-left: 0;
   margin: 24px 0;
   list-style: none;
   text-align: center;
}
.pager:before, .pager:after {
   content: " ";
   display: table;
}
.pager:after {
   clear: both;
}
.pager li {
   display: inline;
}
.pager li > a, .pager li > span {
   display: inline-block;
   padding: 5px 14px;
   background-color: #fff;
   border: 1px solid #ddd;
   border-radius: 15px;
}
.pager li > a:hover, .pager li > a:focus {
   text-decoration: none;
   background-color: #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: #777777;
   background-color: #fff;
   cursor: not-allowed;
}
.label {
   display: inline;
   padding: .2em .6em .3em;
   font-size: 75%;
   font-weight: bold;
   line-height: 1;
   color: #fff;
   text-align: center;
   white-space: nowrap;
   vertical-align: baseline;
   border-radius: .25em;
}
.label:empty {
   display: none;
}
.btn .label {
   position: relative;
   top: -1px;
}
a.label:hover, a.label:focus {
   color: #fff;
   text-decoration: none;
   cursor: pointer;
}
.label-default {
   background-color: #777777;
}
.label-default[href]:hover, .label-default[href]:focus {
   background-color: #5e5e5e;
}
.label-primary {
   background-color: #ff1a4b;
}
.label-primary[href]:hover, .label-primary[href]:focus {
   background-color: #e60031;
}
.label-success {
   background-color: #5cb85c;
}
.label-success[href]:hover, .label-success[href]:focus {
   background-color: #449d44;
}
.label-info {
   background-color: #5bc0de;
}
.label-info[href]:hover, .label-info[href]:focus {
   background-color: #31b0d5;
}
.label-warning {
   background-color: #f0ad4e;
}
.label-warning[href]:hover, .label-warning[href]:focus {
   background-color: #ec971f;
}
.label-danger {
   background-color: #d9534f;
}
.label-danger[href]:hover, .label-danger[href]:focus {
   background-color: #c9302c;
}
.badge {
   display: inline-block;
   min-width: 10px;
   padding: 3px 7px;
   font-size: 12px;
   font-weight: bold;
   color: #fff;
   line-height: 1;
   vertical-align: middle;
   white-space: nowrap;
   text-align: center;
   background-color: #777777;
   border-radius: 10px;
}
.badge:empty {
   display: none;
}
.btn .badge {
   position: relative;
   top: -1px;
}
.btn-xs .badge, .btn-group-xs > .btn .badge, .btn-group-xs > .btn .badge {
   top: 0;
   padding: 1px 5px;
}
.list-group-item.active > .badge, .nav-pills > .active > a > .badge {
   color: #ff1a4b;
   background-color: #fff;
}
.list-group-item > .badge {
   float: right;
}
.list-group-item > .badge + .badge {
   margin-right: 5px;
}
.nav-pills > li > a > .badge {
   margin-left: 3px;
}
a.badge:hover, a.badge:focus {
   color: #fff;
   text-decoration: none;
   cursor: pointer;
}
.jumbotron {
   padding-top: 30px;
   padding-bottom: 30px;
   margin-bottom: 30px;
   color: inherit;
   background-color: #eeeeee;
}
.jumbotron h1, .jumbotron .h1 {
   color: inherit;
}
.jumbotron p {
   margin-bottom: 15px;
   font-size: 21px;
   font-weight: 200;
}
.jumbotron > hr {
   border-top-color: #d5d5d5;
}
.container .jumbotron, .container-fluid .jumbotron {
   border-radius: 6px;
   padding-left: 15px;
   padding-right: 15px;
}
.jumbotron .container {
   max-width: 100%;
}
@media screen and (min-width: 768px) {
   .jumbotron {
       padding-top: 48px;
       padding-bottom: 48px;
  }
   .container .jumbotron, .container-fluid .jumbotron {
       padding-left: 60px;
       padding-right: 60px;
  }
   .jumbotron h1, .jumbotron .h1 {
       font-size: 63px;
  }
}
.thumbnail {
   display: block;
   padding: 4px;
   margin-bottom: 24px;
   line-height: 1.75;
   background-color: #fff;
   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 {
   display: block;
   max-width: 100%;
   height: auto;
   margin-left: auto;
   margin-right: auto;
}
.thumbnail .caption {
   padding: 9px;
   color: #333333;
}
a.thumbnail:hover, a.thumbnail:focus, a.thumbnail.active {
   border-color: #ff1a4b;
}
.alert {
   padding: 15px;
   margin-bottom: 24px;
   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: 24px;
   margin-bottom: 24px;
   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: 12px;
   line-height: 24px;
   color: #fff;
   text-align: center;
   background-color: #ff1a4b;
   -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: #d9534f;
}
.progress-striped .progress-bar-danger {
   background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
   background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
   background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.media {
   margin-top: 15px;
}
.media:first-child {
   margin-top: 0;
}
.media, .media-body {
   zoom: 1;
   overflow: hidden;
}
.media-body {
   width: 10000px;
}
.media-object {
   display: block;
}
.media-object.img-thumbnail {
   max-width: none;
}
.media-right, .media > .pull-right {
   padding-left: 10px;
}
.media-left, .media > .pull-left {
   padding-right: 10px;
}
.media-left, .media-right, .media-body {
   display: table-cell;
   vertical-align: top;
}
.media-middle {
   vertical-align: middle;
}
.media-bottom {
   vertical-align: bottom;
}
.media-heading {
   margin-top: 0;
   margin-bottom: 5px;
}
.media-list {
   padding-left: 0;
   list-style: none;
}
.list-group {
   margin-bottom: 20px;
   padding-left: 0;
}
.list-group-item {
   position: relative;
   display: block;
   padding: 10px 15px;
   margin-bottom: -1px;
   background-color: #fff;
   border: 1px solid #ddd;
}
.list-group-item:first-child {
   border-top-right-radius: 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, button.list-group-item {
   color: #555;
}
a.list-group-item .list-group-item-heading, button.list-group-item .list-group-item-heading {
   color: #333;
}
a.list-group-item:hover, a.list-group-item:focus, button.list-group-item:hover, button.list-group-item:focus {
   text-decoration: none;
   color: #555;
   background-color: #f5f5f5;
}
button.list-group-item {
   width: 100%;
   text-align: left;
}
.list-group-item.disabled, .list-group-item.disabled:hover, .list-group-item.disabled:focus {
   background-color: #eeeeee;
   color: #777777;
   cursor: not-allowed;
}
.list-group-item.disabled .list-group-item-heading, .list-group-item.disabled:hover .list-group-item-heading, .list-group-item.disabled:focus .list-group-item-heading {
   color: inherit;
}
.list-group-item.disabled .list-group-item-text, .list-group-item.disabled:hover .list-group-item-text, .list-group-item.disabled:focus .list-group-item-text {
   color: #777777;
}
.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus {
   z-index: 2;
   color: #fff;
   background-color: #ff1a4b;
   border-color: #ff1a4b;
}
.list-group-item.active .list-group-item-heading, .list-group-item.active .list-group-item-heading > small, .list-group-item.active .list-group-item-heading > .small, .list-group-item.active:hover .list-group-item-heading, .list-group-item.active:hover .list-group-item-heading > small, .list-group-item.active:hover .list-group-item-heading > .small, .list-group-item.active:focus .list-group-item-heading, .list-group-item.active:focus .list-group-item-heading > small, .list-group-item.active:focus .list-group-item-heading > .small {
   color: inherit;
}
.list-group-item.active .list-group-item-text, .list-group-item.active:hover .list-group-item-text, .list-group-item.active:focus .list-group-item-text {
   color: #ffe6eb;
}
.list-group-item-success {
   color: #3c763d;
   background-color: #dff0d8;
}
a.list-group-item-success, button.list-group-item-success {
   color: #3c763d;
}
a.list-group-item-success .list-group-item-heading, button.list-group-item-success .list-group-item-heading {
   color: inherit;
}
a.list-group-item-success:hover, a.list-group-item-success:focus, button.list-group-item-success:hover, button.list-group-item-success:focus {
   color: #3c763d;
   background-color: #d0e9c6;
}
a.list-group-item-success.active, a.list-group-item-success.active:hover, a.list-group-item-success.active:focus, button.list-group-item-success.active, button.list-group-item-success.active:hover, button.list-group-item-success.active:focus {
   color: #fff;
   background-color: #3c763d;
   border-color: #3c763d;
}
.list-group-item-info {
   color: #31708f;
   background-color: #d9edf7;
}
a.list-group-item-info, button.list-group-item-info {
   color: #31708f;
}
a.list-group-item-info .list-group-item-heading, button.list-group-item-info .list-group-item-heading {
   color: inherit;
}
a.list-group-item-info:hover, a.list-group-item-info:focus, button.list-group-item-info:hover, button.list-group-item-info:focus {
   color: #31708f;
   background-color: #c4e3f3;
}
a.list-group-item-info.active, a.list-group-item-info.active:hover, a.list-group-item-info.active:focus, button.list-group-item-info.active, button.list-group-item-info.active:hover, button.list-group-item-info.active:focus {
   color: #fff;
   background-color: #31708f;
   border-color: #31708f;
}
.list-group-item-warning {
   color: #8a6d3b;
   background-color: #fcf8e3;
}
a.list-group-item-warning, button.list-group-item-warning {
   color: #8a6d3b;
}
a.list-group-item-warning .list-group-item-heading, button.list-group-item-warning .list-group-item-heading {
   color: inherit;
}
a.list-group-item-warning:hover, a.list-group-item-warning:focus, button.list-group-item-warning:hover, button.list-group-item-warning:focus {
   color: #8a6d3b;
   background-color: #faf2cc;
}
a.list-group-item-warning.active, a.list-group-item-warning.active:hover, a.list-group-item-warning.active:focus, button.list-group-item-warning.active, button.list-group-item-warning.active:hover, button.list-group-item-warning.active:focus {
   color: #fff;
   background-color: #8a6d3b;
   border-color: #8a6d3b;
}
.list-group-item-danger {
   color: #a94442;
   background-color: #f2dede;
}
a.list-group-item-danger, button.list-group-item-danger {
   color: #a94442;
}
a.list-group-item-danger .list-group-item-heading, button.list-group-item-danger .list-group-item-heading {
   color: inherit;
}
a.list-group-item-danger:hover, a.list-group-item-danger:focus, button.list-group-item-danger:hover, button.list-group-item-danger:focus {
   color: #a94442;
   background-color: #ebcccc;
}
a.list-group-item-danger.active, a.list-group-item-danger.active:hover, a.list-group-item-danger.active:focus, button.list-group-item-danger.active, button.list-group-item-danger.active:hover, button.list-group-item-danger.active:focus {
   color: #fff;
   background-color: #a94442;
   border-color: #a94442;
}
.list-group-item-heading {
   margin-top: 0;
   margin-bottom: 5px;
}
.list-group-item-text {
   margin-bottom: 0;
   line-height: 1.3;
}
.panel {
   margin-bottom: 24px;
   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-body:before, .panel-body:after {
   content: " ";
   display: table;
}
.panel-body:after {
   clear: both;
}
.panel-heading {
   padding: 10px 15px;
   border-bottom: 1px solid transparent;
   border-top-right-radius: -1px;
   border-top-left-radius: -1px;
}
.panel-heading > .dropdown .dropdown-toggle {
   color: inherit;
}
.panel-title {
   margin-top: 0;
   margin-bottom: 0;
   font-size: 16px;
   color: inherit;
}
.panel-title > a, .panel-title > small, .panel-title > .small, .panel-title > small > a, .panel-title > .small > a {
   color: inherit;
}
.panel-footer {
   padding: 10px 15px;
   background-color: #f5f5f5;
   border-top: 1px solid #ddd;
   border-bottom-right-radius: -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 > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
   border-top-right-radius: 0;
   border-top-left-radius: 0;
}
.panel-heading + .list-group .list-group-item:first-child {
   border-top-width: 0;
}
.list-group + .panel-footer {
   border-top-width: 0;
}
.panel > .table, .panel > .table-responsive > .table, .panel > .panel-collapse > .table {
   margin-bottom: 0;
}
.panel > .table caption, .panel > .table-responsive > .table caption, .panel > .panel-collapse > .table caption {
   padding-left: 15px;
   padding-right: 15px;
}
.panel > .table:first-child, .panel > .table-responsive:first-child > .table:first-child {
   border-top-right-radius: -1px;
   border-top-left-radius: -1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child, .panel > .table:first-child > tbody:first-child > tr:first-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
   border-top-left-radius: -1px;
   border-top-right-radius: -1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:first-child, .panel > .table:first-child > thead:first-child > tr:first-child th:first-child, .panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, .panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
   border-top-left-radius: -1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:last-child, .panel > .table:first-child > thead:first-child > tr:first-child th:last-child, .panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, .panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
   border-top-right-radius: -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:last-child > tfoot:last-child > tr:last-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
   border-bottom-left-radius: -1px;
   border-bottom-right-radius: -1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, .panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, .panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, .panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
   border-bottom-left-radius: -1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, .panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, .panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, .panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
   border-bottom-right-radius: -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-bordered > thead > tr > td:first-child, .panel > .table-bordered > tbody > tr > th:first-child, .panel > .table-bordered > tbody > tr > td:first-child, .panel > .table-bordered > tfoot > tr > th:first-child, .panel > .table-bordered > tfoot > tr > td:first-child, .panel > .table-responsive > .table-bordered > thead > tr > th:first-child, .panel > .table-responsive > .table-bordered > thead > tr > td:first-child, .panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, .panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, .panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, .panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
   border-left: 0;
}
.panel > .table-bordered > thead > tr > th:last-child, .panel > .table-bordered > thead > tr > td:last-child, .panel > .table-bordered > tbody > tr > th:last-child, .panel > .table-bordered > tbody > tr > td:last-child, .panel > .table-bordered > tfoot > tr > th:last-child, .panel > .table-bordered > tfoot > tr > td:last-child, .panel > .table-responsive > .table-bordered > thead > tr > th:last-child, .panel > .table-responsive > .table-bordered > thead > tr > td:last-child, .panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, .panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, .panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, .panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
   border-right: 0;
}
.panel > .table-bordered > thead > tr:first-child > td, .panel > .table-bordered > thead > tr:first-child > th, .panel > .table-bordered > tbody > tr:first-child > td, .panel > .table-bordered > tbody > tr:first-child > th, .panel > .table-responsive > .table-bordered > thead > tr:first-child > td, .panel > .table-responsive > .table-bordered > thead > tr:first-child > th, .panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, .panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
   border-bottom: 0;
}
.panel > .table-bordered > tbody > tr:last-child > td, .panel > .table-bordered > tbody > tr:last-child > th, .panel > .table-bordered > tfoot > tr:last-child > td, .panel > .table-bordered > tfoot > tr:last-child > th, .panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, .panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
   border-bottom: 0;
}
.panel > .table-responsive {
   border: 0;
   margin-bottom: 0;
}
.panel-group {
   margin-bottom: 24px;
}
.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: #ff1a4b;
}
.panel-primary > .panel-heading {
   color: #fff;
   background-color: #ff1a4b;
   border-color: #ff1a4b;
}
.panel-primary > .panel-heading + .panel-collapse > .panel-body {
   border-top-color: #ff1a4b;
}
.panel-primary > .panel-heading .badge {
   color: #ff1a4b;
   background-color: #fff;
}
.panel-primary > .panel-footer + .panel-collapse > .panel-body {
   border-bottom-color: #ff1a4b;
}
.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: 6px;
}
.well-sm {
   padding: 9px;
   border-radius: 3px;
}
.close {
   float: right;
   font-size: 21px;
   font-weight: bold;
   line-height: 1;
   color: #000;
   text-shadow: 0 1px 0 #fff;
   opacity: 0.2;
   filter: alpha(opacity=20);
}
.close:hover, .close:focus {
   color: #000;
   text-decoration: none;
   cursor: pointer;
   opacity: 0.5;
   filter: alpha(opacity=50);
}
button.close {
   padding: 0;
   cursor: pointer;
   background: transparent;
   border: 0;
   -webkit-appearance: none;
}
.modal-open {
   overflow: hidden;
}
.modal {
   display: none;
   overflow: hidden;
   position: fixed;
   top: 0;
   right: 0;
   bottom: 0;
   left: 0;
   z-index: 1050;
   -webkit-overflow-scrolling: touch;
   outline: 0;
}
.modal.fade .modal-dialog {
   -webkit-transform: translate(0, -25%);
   -ms-transform: translate(0, -25%);
   -o-transform: translate(0, -25%);
   transform: translate(0, -25%);
   -webkit-transition: -webkit-transform 0.3s ease-out;
   -moz-transition: -moz-transform 0.3s ease-out;
   -o-transition: -o-transform 0.3s ease-out;
   transition: transform 0.3s ease-out;
}
.modal.in .modal-dialog {
   -webkit-transform: translate(0, 0);
   -ms-transform: translate(0, 0);
   -o-transform: translate(0, 0);
   transform: translate(0, 0);
}
.modal-open .modal {
   overflow-x: hidden;
   overflow-y: auto;
}
.modal-dialog {
   position: relative;
   width: auto;
   margin: 10px;
}
.modal-content {
   position: relative;
   background-color: #fff;
   border: 1px solid #999;
   border: 1px solid rgba(0, 0, 0, 0.2);
   border-radius: 6px;
   -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
   box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
   background-clip: padding-box;
   outline: 0;
}
.modal-backdrop {
   position: fixed;
   top: 0;
   right: 0;
   bottom: 0;
   left: 0;
   z-index: 1040;
   background-color: #000;
}
.modal-backdrop.fade {
   opacity: 0;
   filter: alpha(opacity=0);
}
.modal-backdrop.in {
   opacity: 0.5;
   filter: alpha(opacity=50);
}
.modal-header {
   padding: 15px;
   border-bottom: 1px solid #e5e5e5;
}
.modal-header:before, .modal-header:after {
   content: " ";
   display: table;
}
.modal-header:after {
   clear: both;
}
.modal-header .close {
   margin-top: -2px;
}
.modal-title {
   margin: 0;
   line-height: 1.75;
}
.modal-body {
   position: relative;
   padding: 15px;
}
.modal-footer {
   padding: 15px;
   text-align: right;
   border-top: 1px solid #e5e5e5;
}
.modal-footer:before, .modal-footer:after {
   content: " ";
   display: table;
}
.modal-footer:after {
   clear: both;
}
.modal-footer .btn + .btn {
   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: "Poppins", Helvetica, Arial, sans-serif;
   font-style: normal;
   font-weight: normal;
   letter-spacing: normal;
   line-break: auto;
   line-height: 1.75;
   text-align: left;
   text-align: start;
   text-decoration: none;
   text-shadow: none;
   text-transform: none;
   white-space: normal;
   word-break: normal;
   word-spacing: normal;
   word-wrap: normal;
   font-size: 12px;
   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;
   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: "Poppins", Helvetica, Arial, sans-serif;
   font-style: normal;
   font-weight: normal;
   letter-spacing: normal;
   line-break: auto;
   line-height: 1.75;
   text-align: left;
   text-align: start;
   text-decoration: none;
   text-shadow: none;
   text-transform: none;
   white-space: normal;
   word-break: normal;
   word-spacing: normal;
   word-wrap: normal;
   font-size: 14px;
   background-color: #fff;
   background-clip: padding-box;
   border: 1px solid #ccc;
   border: 1px solid transparent;
   border-radius: 6px;
   -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
   box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}
.popover.top {
   margin-top: -10px;
}
.popover.right {
   margin-left: 10px;
}
.popover.bottom {
   margin-top: 10px;
}
.popover.left {
   margin-left: -10px;
}
.popover-title {
   margin: 0;
   padding: 8px 14px;
   font-size: 14px;
   background-color: #f7f7f7;
   border-bottom: 1px solid #ebebeb;
   border-radius: 5px 5px 0 0;
}
.popover-content {
   padding: 9px 14px;
}
.popover > .arrow, .popover > .arrow:after {
   position: absolute;
   display: block;
   width: 0;
   height: 0;
   border-color: transparent;
   border-style: solid;
}
.popover > .arrow {
   border-width: 11px;
}
.popover > .arrow:after {
   border-width: 10px;
   content: "";
}
.popover.top > .arrow {
   left: 50%;
   margin-left: -11px;
   border-bottom-width: 0;
   border-top-color: #999999;
   border-top-color: rgba(0, 0, 0, 0.05);
   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.05);
}
.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.05);
   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.05);
}
.popover.left > .arrow:after {
   content: " ";
   right: 1px;
   border-right-width: 0;
   border-left-color: #fff;
   bottom: -10px;
}
.carousel {
   position: relative;
}
.carousel-inner {
   position: relative;
   overflow: hidden;
   width: 100%;
}
.carousel-inner > .item {
   display: none;
   position: relative;
   -webkit-transition: 0.6s ease-in-out left;
   -o-transition: 0.6s ease-in-out left;
   transition: 0.6s ease-in-out left;
}
.carousel-inner > .item > img, .carousel-inner > .item > a > img {
   display: block;
   max-width: 100%;
   height: auto;
   line-height: 1;
}

/* Motor reserva HOME */
.full-width {
   width: 100%;
}
#motorReserva {
   height: 50px;
}
#motorReserva, #motorReserva > div {
   display: flex;
   flex-direction: row;
   align-items: center;
}
#motorReserva > div {
   height: 100%;
   padding-left: 10px;
}
#motorReserva img {
   width: 20px;
   margin: 0 5px;
   filter: invert(22%) sepia(82%) saturate(4525%) hue-rotate(338deg) brightness(112%) contrast(105%);
}
#motorReserva .reserva {
   width: 20%;
   margin: 0;
   padding: 0 25px;
   font-family: 'Teko';
   font-weight: 300;
   font-size: 28px;
   border: none;
   color: #fff;
   background-color: #ff1a4b;
}
#motorReserva .reserva:hover {
   background-color: #cd002c;
}
#motorReserva input {
   text-align: center;
   height: 100%;
}
#motorReserva #datein, 
#motorReserva #dateout,
#motorReserva #prom,
#motorReserva #adultos,
#motorReserva #ninos {
   border: none;
   background: none;
   color: #ff1a4b;
}
#motorReserva input::placeholder {
   color: #ff1a4b;
   opacity: 1;
}
#motorReserva .date-selector {
   width: 45%;
   background-color: rgba(255, 26, 75, 0.1);
   padding-left: 50px;
}
#motorReserva .persons {
   width: 30%;
   background-color: rgba(255, 26, 75, 0.15);
}
#motorReserva .persons label {
   margin: 0;
   color: #ff1a4b;
}
#motorReserva .persons select {
   margin: 0 10px;
   padding: 0 5px;
   height: 100%;
}
#motorReserva .persons img {
   margin-right: 10px;
}
#motorReserva .prom-code {
   width: 25%;
   background-color: rgba(255, 26, 75, 0.2);
}
#motorReserva #datein,
#motorReserva #dateout {
   width: 50%;
   cursor: pointer;
}
#motorReserva .persons > div {
   width: 50%;
   display: flex;
   justify-content: center;
}
#motorReserva #prom {
   width: 170px;
}
#motorReserva input::-webkit-outer-spin-button,
#motorReserva input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
#motorReserva input[type=number] {
   -moz-appearance: textfield;
   width: 40px;
}

@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: 1000px;
       -moz-perspective: 1000px;
       perspective: 1000px;
  }
   .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: 66px;
   opacity: 1;
   filter: alpha(opacity=100);
   font-size: 14px;
   color: #fff;
   text-align: center;
   text-shadow: none;
   background-color: rgba(0, 0, 0, 0);
}
.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%;
   margin-top: -10px;
   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;
   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 transparent;
   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: none;
}
.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: 21px;
       height: 21px;
       margin-top: -7px;
       font-size: 21px;
  }
   .carousel-control .glyphicon-chevron-left, .carousel-control .icon-prev {
       margin-left: -7px;
  }
   .carousel-control .glyphicon-chevron-right, .carousel-control .icon-next {
       margin-right: -7px;
  }
   .carousel-caption {
       left: 20%;
       right: 20%;
       padding-bottom: 30px;
  }
   .carousel-indicators {
       bottom: 20px;
  }
}
.clearfix:before, .filter-wrapper:before, .clearfix:after, .filter-wrapper:after {
   content: " ";
   display: table;
}
.clearfix:after, .filter-wrapper:after {
   clear: both;
}
.center-block {
   display: block;
   margin-left: auto;
   margin-right: auto;
}
.pull-right {
   float: right !important;
}
.pull-left {
   float: left !important;
}
.hide {
   display: none !important;
}
.show {
   display: block !important;
}
.invisible {
   visibility: hidden;
}
.text-hide {
   font: 0/0 a;
   color: transparent;
   text-shadow: none;
   background-color: transparent;
   border: 0;
}
.hidden {
   display: none !important;
}
.affix {
   position: fixed;
}
@-ms-viewport {
   width: device-width;
}
.visible-xs {
   display: none !important;
}
.visible-sm {
   display: none !important;
}
.visible-md {
   display: none !important;
}
.visible-lg {
   display: none !important;
}
.visible-xs-block, .visible-xs-inline, .visible-xs-inline-block, .visible-sm-block, .visible-sm-inline, .visible-sm-inline-block, .visible-md-block, .visible-md-inline, .visible-md-inline-block, .visible-lg-block, .visible-lg-inline, .visible-lg-inline-block {
   display: none !important;
}
@media (max-width: 767px) {
   .visible-xs {
       display: block !important;
  }
   table.visible-xs {
       display: table !important;
  }
   tr.visible-xs {
       display: table-row !important;
  }
   th.visible-xs, td.visible-xs {
       display: table-cell !important;
  }
}
@media (max-width: 767px) {
   .visible-xs-block {
       display: block !important;
  }
}
@media (max-width: 767px) {
   .visible-xs-inline {
       display: inline !important;
  }
}
@media (max-width: 767px) {
   .visible-xs-inline-block {
       display: inline-block !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
   .visible-sm {
       display: block !important;
  }
   table.visible-sm {
       display: table !important;
  }
   tr.visible-sm {
       display: table-row !important;
  }
   th.visible-sm, td.visible-sm {
       display: table-cell !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
   .visible-sm-block {
       display: block !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
   .visible-sm-inline {
       display: inline !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
   .visible-sm-inline-block {
       display: inline-block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
   .visible-md {
       display: block !important;
  }
   table.visible-md {
       display: table !important;
  }
   tr.visible-md {
       display: table-row !important;
  }
   th.visible-md, td.visible-md {
       display: table-cell !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
   .visible-md-block {
       display: block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
   .visible-md-inline {
       display: inline !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
   .visible-md-inline-block {
       display: inline-block !important;
  }
}
@media (min-width: 1200px) {
   .visible-lg {
       display: block !important;
  }
   table.visible-lg {
       display: table !important;
  }
   tr.visible-lg {
       display: table-row !important;
  }
   th.visible-lg, td.visible-lg {
       display: table-cell !important;
  }
}
@media (min-width: 1200px) {
   .visible-lg-block {
       display: block !important;
  }
}
@media (min-width: 1200px) {
   .visible-lg-inline {
       display: inline !important;
  }
}
@media (min-width: 1200px) {
   .visible-lg-inline-block {
       display: inline-block !important;
  }
}
@media (max-width: 767px) {
   .hidden-xs {
       display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
   .hidden-sm {
       display: none !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
   .hidden-md {
       display: none !important;
  }
}
@media (min-width: 1200px) {
   .hidden-lg {
       display: none !important;
  }
}
.visible-print {
   display: none !important;
}
@media print {
   .visible-print {
       display: block !important;
  }
   table.visible-print {
       display: table !important;
  }
   tr.visible-print {
       display: table-row !important;
  }
   th.visible-print, td.visible-print {
       display: table-cell !important;
  }
}
.visible-print-block {
   display: none !important;
}
@media print {
   .visible-print-block {
       display: block !important;
  }
}
.visible-print-inline {
   display: none !important;
}
@media print {
   .visible-print-inline {
       display: inline !important;
  }
}
.visible-print-inline-block {
   display: none !important;
}
@media print {
   .visible-print-inline-block {
       display: inline-block !important;
  }
}
@media print {
   .hidden-print {
       display: none !important;
  }
}
/** * Alert styling. */
.alert-sm {
   padding: 5px 10px;
}
.alert a {
   font-weight: bold;
}
.alert-success a, .alert-success a:hover, .alert-success a:focus {
   color: #2b542c;
}
.alert-info a, .alert-info a:hover, .alert-info a:focus {
   color: #245269;
}
.alert-warning a, .alert-warning a:hover, .alert-warning a:focus {
   color: #66512c;
}
.alert-danger a, .alert-danger a:hover, .alert-danger a:focus {
   color: #843534;
}
/** * AJAX (throbber) styling. */
@keyframes glyphicon-spin {
   0% {
       transform: rotate(0deg);
  }
   100% {
       transform: rotate(359deg);
  }
}
.glyphicon-spin {
   display: inline-block;
   animation: glyphicon-spin 1s infinite linear;
}
a .glyphicon-spin {
   display: inline-block;
   text-decoration: none;
}
html.js .btn .ajax-throbber {
   margin-left: .5em;
   margin-right: -.25em;
}
html.js .form-item .input-group-addon .glyphicon {
   color: #777777;
   opacity: .5;
   transition: 150ms color, 150ms opacity;
}
html.js .form-item .input-group-addon .glyphicon.glyphicon-spin {
   color: #ff1a4b;
   opacity: 1;
}
html.js .form-item .input-group-addon .input-group-addon {
   background-color: white;
}
html.js .ajax-new-content:empty {
   display: none !important;
}
/** * $file * Visual styles for fields. */
.field--label {
   font-weight: bold;
}
.field--label-inline .field--label, .field--label-inline .field--items {
   float: left;
  /*LTR*/
}
.field--label-inline .field--label, .field--label-inline > .field--item, .field--label-inline .field--items {
   padding-right: 0.5em;
}
[dir="rtl"] .field--label-inline .field--label, [dir="rtl"] .field--label-inline .field--items {
   padding-left: 0.5em;
   padding-right: 0;
   float: right;
  /*RTL*/
}
.field--label-inline .field--label::after {
   content: ':';
}
/** * File (and Image Widget) styles. */
.file {
   display: table;
   font-size: 75%;
   font-weight: 700;
   margin: 5px 0;
   width: 100%;
}
.file > span {
   background: #fff;
   color: #ff1a4b;
   border-bottom: 1px solid #ccc;
   border-top: 1px solid #ccc;
}
.file > span:first-child {
   border-left: 1px solid #ccc;
}
.file > span:last-child {
   border-right: 1px solid #ccc;
}
.file > .tabledrag-changed {
   background: #fcf8e3;
   border-radius: 0;
   color: #8a6d3b;
   display: table-cell;
   padding: 0 1em;
   top: 0;
   vertical-align: middle;
   border-left: 1px solid inherit;
}
.file > .tabledrag-changed, .file > .tabledrag-changed:last-child {
   border: 1px solid #f7e1b5;
}
.file-icon {
   display: table-cell;
   font-size: 150%;
   padding: .25em .5em;
   text-align: center;
   vertical-align: middle;
}
.file-link {
   display: table-cell;
   vertical-align: middle;
   width: 100%;
}
.file-link a, .file-link a:hover, .file-link a:focus, .file-link a:active {
   color: inherit;
}
.file-size {
   display: table-cell;
   padding: 0 1em;
   text-align: right;
   white-space: pre;
   vertical-align: middle;
}
.image-widget.row {
   overflow: hidden;
}
/** * Filter styles. */
.filter-wrapper {
   background-color: #fff;
   border: 1px solid #ddd;
   border-top: 0;
   border-radius: 0 0 0px 0px;
   box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
   margin-bottom: 0;
   padding: 10px;
   height: 51px;
}
.filter-help {
   float: right;
   line-height: 1;
   margin: .5em 0 0;
}
.nav.nav-tabs.filter-formats {
   margin-bottom: 15px;
}
/** * Form styles. */
table .checkbox.form-no-label, table .radio.form-no-label {
   margin-bottom: 0;
   margin-top: 0;
}
.select-wrapper {
   display: inline-block;
   position: relative;
   width: 100%;
}
.form-inline .select-wrapper {
   width: auto;
}
.input-group .select-wrapper {
   display: table-cell;
}
.input-group .select-wrapper:first-child .form-control:first-child {
   border-bottom-left-radius: 0px;
   border-top-left-radius: 0px;
}
.input-group .select-wrapper:last-child .form-control:first-child {
   border-bottom-right-radius: 0px;
   border-top-right-radius: 0px;
}
.select-wrapper select {
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
   line-height: 1;
   padding-right: 2em;
}
.select-wrapper select::-ms-expand {
   opacity: 0;
}
.select-wrapper:after {
   color: #ff1a4b;
   content: '▼';
   font-style: normal;
   font-weight: 400;
   line-height: 1;
   margin-top: -.5em;
   padding-right: .5em;
   pointer-events: none;
   position: absolute;
   right: 0;
   top: 50%;
   z-index: 10;
}
.has-glyphicons .select-wrapper:after {
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   content: '\e114';
   display: inline-block;
   font-family: 'Glyphicons Halflings';
}
.has-error .select-wrapper:after {
   color: #a94442;
}
.has-success .select-wrapper:after {
   color: #3c763d;
}
.has-warning .select-wrapper:after {
   color: #8a6d3b;
}
.form-required:after {
   background-image: url(../images/required.svg);
   background-size: 10px 7px;
   content: "";
   display: inline-block;
   line-height: 1;
   height: 7px;
   width: 10px;
}
.form-actions .btn, .form-actions .btn-group {
   margin-right: 10px;
}
.form-actions .btn-group .btn {
   margin-right: 0;
}
/** * Icon styles. */
a.icon-before .glyphicon, a .glyphicon.icon-before {
   margin-right: .25em;
}
a.icon-after .glyphicon, a .glyphicon.icon-after {
   margin-left: .25em;
}
.btn.icon-before .glyphicon, .btn .glyphicon.icon-before {
   margin-left: -.25em;
   margin-right: .25em;
}
.btn.icon-after .glyphicon, .btn .glyphicon.icon-after {
   margin-left: .25em;
   margin-right: -.25em;
}
/** * Navbar styling. */
body {
   position: relative;
}
body.navbar-is-static-top {
   margin-top: 0;
}
body.navbar-is-fixed-top {
   margin-top: 65px;
}
body.navbar-is-fixed-bottom {
   padding-bottom: 65px;
}
@media screen and (min-width: 768px) {
   body {
       margin-top: 15px;
  }
}
@media screen and (max-width: 767px) {
   body.toolbar-vertical.navbar-is-fixed-top .toolbar-bar, body.toolbar-vertical.navbar-is-fixed-bottom .toolbar-bar {
       position: fixed;
  }
   body.toolbar-vertical.navbar-is-fixed-top header, body.toolbar-vertical.navbar-is-fixed-bottom header {
       z-index: 500;
  }
   body.toolbar-vertical.navbar-is-fixed-top header {
       top: 39px;
  }
}
@media screen and (min-width: 768px) {
   .navbar.container {
       max-width: 720px;
  }
}
@media screen and (min-width: 992px) {
   .navbar.container {
       max-width: 940px;
  }
}
@media screen and (min-width: 1200px) {
   .navbar.container {
       max-width: 1140px;
  }
}
.navbar .logo {
   margin-right: -15px;
   padding-left: 15px;
   padding-right: 15px;
}
@media screen and (min-width: 768px) {
   .navbar .logo {
       margin-right: 0;
       padding-left: 0;
  }
}
/** * Node styling. */
.is-unpublished {
   background-color: #fff4f4;
}
.node-preview-container {
   margin-top: -15px;
}
.node-preview-form-select {
   padding: 15px;
}
/** * Panel styling. */
.panel-title {
   display: block;
   margin: -10px -15px;
   padding: 10px 15px;
}
.panel-title, .panel-title:hover, .panel-title:focus, .panel-title:hover:focus {
   color: inherit;
}
.panel-title:focus, .panel-title:hover {
   text-decoration: none;
}
/** * Progress bar styles. */
.progress-wrapper {
   margin-bottom: 15px;
}
.progress-wrapper:last-child .progress {
   margin-bottom: 5px;
}
.progress-wrapper .message {
   font-weight: 700;
   margin-bottom: 5px;
}
.progress-wrapper .percentage, .progress-wrapper .progress-label {
   font-size: 12px;
}
.progress-wrapper .progress-bar {
   min-width: 2em;
}
/** * Table drag styles. */
.tabledrag-toggle-weight {
   float: right;
   margin: 1px 2px 1px 10px;
}
.tabledrag-changed-warning {
   margin: 0;
   overflow: hidden;
}
.tabledrag-handle {
   color: #777777;
   cursor: move;
   float: left;
   font-size: 125%;
   line-height: 1;
   margin: -10px 0 0 -10px;
   padding: 10px;
}
.tabledrag-handle:hover, .tabledrag-handle:focus {
   color: #ff1a4b;
}
.indentation {
   float: left;
  /* LTR */
   height: 1.7em;
   margin: -0.4em 0.2em -0.4em -0.4em;
  /* LTR */
   padding: 0.42em 0 0.42em 0.6em;
  /* LTR */
   width: 20px;
}
[dir="rtl"] .indentation {
   float: right;
   margin: -0.4em -0.4em -0.4em 0.2em;
   padding: 0.42em 0.6em 0.42em 0;
}
/** * Tabs and local action styles. */
.local-actions {
   margin: 10px 0 10px -5px;
}
.tabs--secondary {
   margin: 10px 0 5px;
}
/** * Missing Bootstrap 2 tab styling. * $see http://stackoverflow.com/questions/18432577/stacked-tabs-in-bootstrap-3 * $see http://bootply.com/74926 */
.tabbable {
   margin-bottom: 20px;
}
.tabs-below > .nav-tabs, .tabs-left > .nav-tabs, .tabs-right > .nav-tabs {
   border-bottom: 0;
}
.tabs-below > .nav-tabs .summary, .tabs-left > .nav-tabs .summary, .tabs-right > .nav-tabs .summary {
   color: #777777;
   font-size: 12px;
}
.tab-pane > .panel-heading {
   display: none;
}
.tab-content > .active {
   display: block;
}
.tabs-below > .nav-tabs {
   border-top: 1px solid #ddd;
}
.tabs-below > .nav-tabs > li {
   margin-top: -1px;
   margin-bottom: 0;
}
.tabs-below > .nav-tabs > li > a {
   border-radius: 0 0 0px 0px;
}
.tabs-below > .nav-tabs > li > a:hover, .tabs-below > .nav-tabs > li > a:focus {
   border-top-color: #ddd;
   border-bottom-color: transparent;
}
.tabs-below > .nav-tabs > .active > a, .tabs-below > .nav-tabs > .active > a:hover, .tabs-below > .nav-tabs > .active > a:focus {
   border-color: transparent #ddd #ddd #ddd;
}
.tabs-left > .nav-tabs, .tabs-right > .nav-tabs {
   padding-bottom: 20px;
   width: 220px;
}
.tabs-left > .nav-tabs > li, .tabs-right > .nav-tabs > li {
   float: none;
}
.tabs-left > .nav-tabs > li:focus, .tabs-right > .nav-tabs > li:focus {
   outline: 0;
}
.tabs-left > .nav-tabs > li > a, .tabs-right > .nav-tabs > li > a {
   margin-right: 0;
   margin-bottom: 3px;
}
.tabs-left > .nav-tabs > li > a:focus, .tabs-right > .nav-tabs > li > a:focus {
   outline: 0;
}
.tabs-left > .tab-content, .tabs-right > .tab-content {
   border-radius: 0 0px 0px 0px;
   border: 1px solid #ddd;
   box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
   overflow: hidden;
   padding: 10px 15px;
}
.tabs-left > .nav-tabs {
   float: left;
   margin-right: -1px;
}
.tabs-left > .nav-tabs > li > a {
   border-radius: 0px 0 0 0px;
}
.tabs-left > .nav-tabs > li > a:hover, .tabs-left > .nav-tabs > li > a:focus {
   border-color: #eeeeee #ddd #eeeeee #eeeeee;
}
.tabs-left > .nav-tabs > .active > a, .tabs-left > .nav-tabs > .active > a:hover, .tabs-left > .nav-tabs > .active > a:focus {
   border-color: #ddd transparent #ddd #ddd;
   box-shadow: -1px 1px 1px rgba(0, 0, 0, 0.05);
}
.tabs-right > .nav-tabs {
   float: right;
   margin-left: -1px;
}
.tabs-right > .nav-tabs > li > a {
   border-radius: 0 0px 0px 0;
}
.tabs-right > .nav-tabs > li > a:hover, .tabs-right > .nav-tabs > li > a:focus {
   border-color: #eeeeee #eeeeee #eeeeee #ddd;
   box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.05);
}
.tabs-right > .nav-tabs > .active > a, .tabs-right > .nav-tabs > .active > a:hover, .tabs-right > .nav-tabs > .active > a:focus {
   border-color: #ddd #ddd #ddd transparent;
}
/** * Toolbar module styling. */
body.toolbar-fixed .toolbar-oriented .toolbar-bar {
   z-index: 1031;
}
body.toolbar-fixed .navbar-fixed-top {
   top: 39px;
}
body.toolbar-fixed.toolbar-horizontal.toolbar-tray-open .navbar-fixed-top {
   top: 79px;
}
body.toolbar-fixed.toolbar-vertical.toolbar-tray-open .navbar-fixed-top {
   left: 240px;
}
body.toolbar-fixed.toolbar-vertical.toolbar-tray-open.toolbar-fixed {
   margin-left: 240px;
}
body.toolbar-fixed.toolbar-vertical.toolbar-tray-open.toolbar-fixed .toolbar-tray {
   padding-bottom: 40px;
}
body.toolbar-fixed.toolbar-vertical.toolbar-tray-open.toolbar-fixed .toolbar-tray, body.toolbar-fixed.toolbar-vertical.toolbar-tray-open.toolbar-fixed .toolbar-tray > .toolbar-lining:before {
   width: 240px;
}
body.toolbar-loading {
   margin-top: 0;
}
body.toolbar-loading.toolbar {
   margin-bottom: 15px;
}
/** * jQuery UI autocomplete widget style overrides. * * $todo Remove once jQuery UI is no longer used? */
.ui-autocomplete {
   background: #fff;
   background-clip: padding-box;
   border: 1px solid #ccc;
   border: 1px solid rgba(0, 0, 0, 0.15);
   border-radius: 0px;
   box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
   color: inherit;
   font-family: "Poppins", Helvetica, Arial, sans-serif;
   font-size: 14px;
   list-style: none;
   min-width: 160px;
   padding: 5px 0;
   text-align: left;
   z-index: 1000;
}
.ui-autocomplete .ui-menu-item {
   border: 0;
   border-radius: 0;
   clear: both;
   color: #333333;
   cursor: pointer;
   display: block;
   font-weight: normal;
   line-height: 1.75;
   margin: 0;
   outline: 0;
   padding: 3px 20px;
   text-decoration: none;
   white-space: nowrap;
}
.ui-autocomplete .ui-menu-item.ui-state-hover {
   background: #f5f5f5;
   color: #262626;
}
.ui-autocomplete .ui-menu-item.ui-state-active, .ui-autocomplete .ui-menu-item.ui-state-focus {
   background: #ff1a4b;
   color: #fff;
}
ol, ul {
   padding-left: 1.5em;
}
.popover ol:last-child, .popover ul:last-child {
   margin-bottom: 0;
}
.page-header {
   margin-top: 0;
}
.footer {
  /* margin-top: 45px;
   padding-top: 35px;
   padding-bottom: 36px;
   border-top: 1px solid #E5E5E5;
   */
}
p:last-child, .form-group:last-child, .panel:last-child {
   margin-bottom: 0;
}
.region-help > .glyphicon {
   font-size: 18px;
   float: left;
   margin: -0.05em 0.5em 0 0;
}
.region-help .block {
   overflow: hidden;
}
.help-block, .control-group .help-inline {
   color: #777777;
   font-size: 12px;
   margin: 5px 0 10px;
   padding: 0;
}
.help-block:first-child, .control-group .help-inline:first-child {
   margin-top: 0;
}
/*ul.list {
   background-color:$gray-light;
   li.item {
       text-transform:uppercase;
       color: $brand-primary;
       &:hover {
           color: lighten($brand-primary, 10%);
      }
  }
}
*/
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
   font-family: "Poppins", Helvetica, Arial, sans-serif;
   font-weight: 700;
}
h1, .h1, h2, .h2, h3, .h3 {
   margin-top: 0;
   margin-bottom: 20px;
   font-weight: 900;
}
h2, .h2 {
   font-size: 20px;
}
@media (min-width: 768px) {
   h2, .h2 {
       font-size: 22px;
  }
}
@media (min-width: 1200px) {
   h2, .h2 {
       font-size: 28px;
  }
}
*:focus {
   outline: none !important;
}
*:active {
   box-shadow: none !important;
}
.path-user .header {
   position: relative;
}
.nav > li > a:hover, .nav > li > a:focus {
   background: transparent;
}
.button {
   font-family: "Teko";
}
.pager li > a {
   border-radius: 50%;
   border: none;
   color: #fff;
   background: #ff1a4b;
   font-weight: bold;
   height: 40px;
   width: 40px;
   text-align: center;
   line-height: 40px;
   padding: 0;
}
.pager li > a:hover {
   background: #cd002c;
}
.carousel-control .glyphicon-chevron-left, .carousel-control .glyphicon-chevron-right, .carousel-control .icon-prev, .carousel-control .icon-next {
   margin-top: -3px;
}
.popover {
   box-shadow: none;
   border-radius: 15px;
}
.carousel-control.left, .carousel-control.right {
   background: none;
}
.carousel-inner {
   background: #000;
}
.carousel-inner .img-responsive {
   opacity: 1;
}
.carousel-inner .carousel-caption {
   padding-bottom: 0;
   padding-top: 0;
   bottom: 50%;
   -ms-transform: translateY(50%);
   -webkit-transform: translateY(50%);
   transform: translateY(50%);
}
/* .container-wide {
   max-width: 1340px;
   margin-left: auto;
   margin-right: auto;
   overflow: hidden;
}
*/
.big-area {
   padding-top: 50px;
}
@media (min-width: 768px) {
   .big-area {
       padding-top: 80px;
  }
}
@media (min-width: 1200px) {
   .big-area {
       padding-top: 100px;
  }
}
@media (min-width: 1200px) {
   .big-area {
       padding-top: 110px;
  }
}
.intro-text {
   text-align: center;
  /* padding-bottom:20px;
   */
}
.separator:after {
   height: 40px;
   width: 1px;
   background-color: #dfdfdf;
   margin: 0 auto;
   margin-top: 30px;
   margin-bottom: 30px;
}
.btn-std {
   font-family: 'Teko';
   font-weight: 300;
   background: url(../images/icon-button.png) no-repeat center right;
   padding-right: 28px;
   background-size: 18px;
   font-size: 28px;
}
.btn {
   border: none;
}
.carousel-indicators li {
   background: rgba(255, 255, 255, 0.4);
}
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button {
   font-family: "Poppins", Helvetica, Arial, sans-serif !important;
}
/* GENERIC - HOME */

.info-covid-mobile {

  background: #ff1a4b;

}

.info-covid-mobile a {
  display: block;
  padding: 7px;
  background: rgba(0,0,0,.1);
  color: #fff;
  font-size: 12px;
  text-align: center;
}

@media (min-width: 480px) {
   .info-covid-mobile {

       display: none;
  }
}

body {
   margin-top: 0;
}
body .ui-datepicker.ui-corner-all {
   border-radius: 0;
}
body .ui-datepicker.ui-widget-content {
   border: 0;
}
body .ui-datepicker.ui-widget {
   font-family: "Poppins", Helvetica, Arial, sans-serif;
}
body .ui-datepicker .ui-widget-header {
   border-color: #fff;
   background: #f2f2f2;
   font-family: "Playfair Display", "Times New Roman", Times, serif;
   color: #ff1a4b;
   text-transform: uppercase;
   font-weight: 900;
}
body .ui-datepicker .ui-datepicker-calendar td a {
   text-align: center;
}
body .ui-datepicker .ui-datepicker-calendar td a:hover {
   color: #ff1a4b;
}
body .ui-datepicker .ui-datepicker-calendar th {
   color: #bbb;
}
body .ui-datepicker .ui-widget-content {
   border-color: #f2f2f2;
}
body .ui-datepicker .ui-state-default, body .ui-datepicker .ui-widget-content .ui-state-default, body .ui-datepicker .ui-widget-header .ui-state-default {
   border: none;
   background: #f2f2f2;
}
body #menuModal {
   background-color: rgba(255, 255, 255, 0.25);
}
body #menuModal .modal-dialog {
   margin: 0;
   padding-bottom: 60px;
   background-color: rgba(255, 255, 255, 0.8);
   text-align: center;
   width: 100%;
}
body #menuModal .modal-dialog .modal-content {
   box-shadow: none;
   border-radius: none;
   background-color: transparent;
   border: none;
}
body #menuModal .modal-dialog .modal-content .modal-header {
   border-bottom: none;
}
body #menuModal .modal-dialog .modal-content .modal-header .close {
   font-size: 50px;
   opacity: 1;
   font-weight: normal;
}
@media (min-width: 768px) {
   body #menuModal .modal-dialog .modal-content .modal-body {
       width: 600px;
       margin: 0 auto;
  }
}
body #menuModal .modal-dialog .modal-content .modal-body li {
   font-size: 30px;
}
body #menuModal .modal-dialog .modal-content .modal-body li a {
   font-family: "Playfair Display", "Times New Roman", Times, serif;
   font-weight: 900;
}
body #menuModal .modal-dialog .modal-content .modal-body li a:hover {
   background-color: transparent;
}
body .header {
   padding: 10px 30px;
   margin-bottom: 0;
   background: #ff1a4b;
   -webkit-transition: .8s;
   transition: .8s;
}
@media (min-width: 768px) {
   body .header {
       padding: 20px 30px;
  }
}
@media (min-width: 992px) {
   body .header {
       position: absolute;
       width: 100%;
       z-index: 1;
       background-color: transparent;
  }
}
body .header .logo-bcn {
   margin-left: -15px;
  /* margin-right: 0;
   margin-left: 0;
   padding-left: 0;
   padding-right: 0;
   */
}
body .header .logo-bcn .name.navbar-brand {
   display: none;
}
body .header .logo-bcn .logo {
   margin-right: 0;
   padding-left: 0;
   padding-right: 0;
}
body .header .logo-bcn .logo img {
   width: 130px;
}
@media (min-width: 768px) {
   body .header .logo-bcn .logo img {
       width: 200px;
  }
}
body .header .navbar-header .language-switcher-language-url {
   float: left;
   display: none;
}
@media (min-width: 600px) {
   body .header .navbar-header .language-switcher-language-url {
       display: block;
  }
}
body .header .navbar-header .language-switcher-language-url ul {
   list-style: none;
}
body .header .navbar-header .language-switcher-language-url ul li {
   float: left;
   margin-left: 10px;
}
body .header .navbar-header .language-switcher-language-url ul li a {
   color: #fff;
   font-weight: 600;
   padding-top: 9px;
   padding-bottom: 9px;
   display: block;
}
body .header .navbar-header #block-menuheaderright {
   float: left;
   margin-left: 10px;
}
@media (min-width: 768px) {
   body .header .navbar-header #block-menuheaderright {
       margin-left: 30px;
  }
}
body .header .navbar-header #block-menuheaderright .menu {
   float: left;
   margin: 0;
}
body .header .navbar-header #block-menuheaderright .menu li {
   margin-left: 10px;
   margin-top: 4px;
   margin-bottom: 4px;
   border-radius: 50%;
   float: left;
}
@media (min-width: 768px) {
   body .header .navbar-header #block-menuheaderright .menu li {
       padding: 4px;
       border: 2px solid #fff;
       margin-left: 15px;
       margin-top: 0;
       margin-bottom: 0;
  }
}
body .header .navbar-header #block-menuheaderright .menu li a {
   text-indent: -99999px;
   background-repeat: no-repeat;
   background-color: #fff;
   border-radius: 50%;
   background-position: center;
   background-size: 14px;
   width: 30px;
   height: 30px;
   padding: 0;
}
@media (min-width: 768px) {
   body .header .navbar-header #block-menuheaderright .menu li a {
       background-size: 14px;
  }
}
body .header .navbar-header #block-menuheaderright .menu li.location a {
   background-image: url(../images/location-access-header.png);
}
body .header .navbar-header #block-menuheaderright .menu li.tel-popover a {
   background-image: url(../images/telephone-access-header.png);
}
body .header .navbar-header #block-infocovid {
   float: left;
   margin-left: 10px;
   display: none;
}
@media (min-width: 768px) {
   body .header .navbar-header #block-infocovid {
       margin-left: 30px;
      
  }
}
@media (min-width: 480px) {
   body .header .navbar-header #block-infocovid {

       display: block;
  }
}
body .header .navbar-header #block-infocovid .menu {
   float: left;
   margin: 0;
}
body .header .navbar-header #block-infocovid .menu li {
}
body .header .navbar-header #block-infocovid .menu li a {

   border: 3px solid rgba(255,255,255,.3);
   padding: 4px 14px;
   border-radius: 5px;
   font-weight: 600;
   color:#ff1a4b;
   background: #fff;
   font-size: 12px;
}
@media (min-width: 992px) {
   body .header .navbar-header #block-infocovid .menu li a {
    background: #ff1a4b;
    color: #fff;
  }
}

body .header .navbar-header .btn-menu {
   text-indent: -99999px;
   background: url(../images/icon-menu.png) no-repeat;
   background-size: 30px;
   width: 30px;
   height: 30px;
   margin-top: 4px;
   margin-bottom: 4px;
   margin-left: 20px;
   display: block;
   padding: 0;
   float: left;
}
@media (min-width: 768px) {
   body .header .navbar-header .btn-menu {
       margin-left: 30px;
  }
}
body .title-area {
   padding-top: 220px;
   background-repeat: no-repeat;
   background-size: cover;
   background-position: center;
   background-image: url(../images/title-sections-images/hotel-section-bg.jpg);
   text-align: center;
}
@media (min-width: 992px) {
   body .title-area {
       padding-top: 300px;
  }
}
body .title-area .block-region-top {
   margin-bottom: 30px;
   padding-left: 20px;
   padding-right: 20px;
}
@media (min-width: 768px) {
   body .title-area .block-region-top {
       margin-bottom: 60px;
  }
}
@media (min-width: 992px) {
   body .title-area .block-region-top {
       margin-bottom: 100px;
  }
}
body .title-area .block-region-top h1 {
   color: #fff;
   margin-bottom: 7px;
   font-size: 30px;
}
@media (min-width: 768px) {
   body .title-area .block-region-top h1 {
       font-size: 38px;
  }
}
@media (min-width: 992px) {
   body .title-area .block-region-top h1 {
       font-size: 50px;
  }
}
body .title-area .block-region-top h2 {
   color: #fff;
   margin-bottom: 0;
   font-family: "Poppins", Helvetica, Arial, sans-serif;
   font-size: 14px;
   font-weight: 600;
}
@media (min-width: 768px) {
   body .title-area .block-region-top h2 {
       font-size: 16px;
  }
}
@media (min-width: 992px) {
   body .title-area .block-region-top h2 {
       font-size: 20px;
  }
}
body .bs-region--top {
   position: relative;
}
body .bs-region--top .home-slider .carousel-inner {
  /*.overlay {
       position: absolute;
       left:0;
       right:0;
       top:0;
       bottom:0;
       background: -moz-linear-gradient(top, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0.5) 1%, rgba(0,0,0,0) 30%, rgba(0,0,0,0) 70%, rgba(0,0,0,0.5) 100%);
       background: -webkit-linear-gradient(top, rgba(0,0,0,0.5) 0%,rgba(0,0,0,0.5) 1%,rgba(0,0,0,0) 30%,rgba(0,0,0,0) 70%,rgba(0,0,0,0.5) 100%);
       background: linear-gradient(to bottom, rgba(0,0,0,0.5) 0%,rgba(0,0,0,0.5) 1%,rgba(0,0,0,0) 30%,rgba(0,0,0,0) 70%,rgba(0,0,0,0.5) 100%);
       filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#80000000', endColorstr='#80000000',GradientType=0 );
  }
   */
}
body .bs-region--top .home-slider .carousel-inner .carousel-caption h2 {
   font-size: 22px;
   margin-bottom: 0;
   color: #fff;
}
@media (min-width: 992px) {
   body .bs-region--top .home-slider .carousel-inner .carousel-caption h2 {
       font-size: 30px;
  }
}
@media (min-width: 1200px) {
   body .bs-region--top .home-slider .carousel-inner .carousel-caption h2 {
       font-size: 58px;
  }
}
body .bs-region--top #block-formreserva {
   background: rgba(255, 255, 255, 0.93);
   -webkit-transition: .8s;
   transition: .8s;
}
@media (min-width: 992px) {
   body .bs-region--top #block-formreserva {
       position: absolute;
       bottom: 0;
       width: 100%;
  }
}
body .bs-region--top #block-formreserva.affix {
   top: 0;
   width: 100%;
   z-index: 6;
   background: #fff;
   position: fixed !important;
   bottom: auto;
   box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
body .bs-region--top #block-formreserva .book-benefits {
   position: relative;
   padding-left: 15px;
}
body .bs-region--top #block-formreserva .book-benefits .btn {
   font-family: "Playfair Display", "Times New Roman", Times, serif;
   text-indent: -99999px;
   font-weight: 900;
   color: #ff1a4b;
   background: transparent;
   font-size: 18px;
   padding: 0;
   line-height: 44px;
   padding-left: 26px;
   background: url(../images/benefits-icon.png) no-repeat center left;
   background-size: 20px;
   min-height: 20px;
}
@media (min-width: 992px) {
   body .bs-region--top #block-formreserva .book-benefits .btn {
       text-indent: 0;
  }
}
body .bs-region--top #block-formreserva .book-benefits #collapseBenefits {
   position: absolute;
   min-width: 300px;
   z-index: 2;
   width: 100%;
   background: #fff;
   box-shadow: 0 20px 10px -15px rgba(0, 0, 0, 0.1);
}
@media (min-width: 992px) {
   body .bs-region--top #block-formreserva .book-benefits #collapseBenefits {
       min-width: auto;
  }
}
body .bs-region--top #block-formreserva .book-benefits #collapseBenefits .list-group {
   text-align: left;
   color: #ff1a4b;
   padding-top: 15px;
}
body .bs-region--top #block-formreserva .book-benefits #collapseBenefits .list-group .list-group-item {
   border: none;
}
body .bs-region--top #block-formreserva .book-benefits #collapseBenefits .list-group .list-group-item img {
   max-width: 30px;
   padding-right: 7px;
}
body .bs-region--top #block-formreserva .booking-form-mobile {
   padding-right: 30px;
   padding-left: 15px;
}
body .bs-region--top #block-formreserva .booking-form-mobile a {
   border: none;
   font-family: Teko;
   font-weight: 300;
   padding-right: 28px;
   background-size: 18px;
   font-size: 26px;
   height: 44px;
   line-height: 44px;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 {
  /* span {
       padding:0 5px;
       line-height: 2;
       border-bottom: 1px solid rgba(0,0,0,.4);
       height: 40px;
       margin-left: 5px;
  }
   */
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 > input, body .bs-region--top #block-formreserva #formAvailability #mirai_be0 > select {
   border: none;
  /*border-bottom: 1px solid rgba(0,0,0,.4);
   */
   float: left;
   padding: 0 15px;
   line-height: 44px;
   height: 44px;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be1 {
   display: none;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be2 {
   max-width: 110px;
   background: rgba(255, 26, 75, 0.1);
   color: #ff1a4b;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be2::-webkit-input-placeholder {
   color: #ff1a4b;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be2::-moz-placeholder {
   color: #ff1a4b;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be2:-ms-input-placeholder {
   color: #ff1a4b;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be2:-moz-placeholder {
   color: #ff1a4b;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be3 {
   display: none;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be4 {
   background: rgba(255, 26, 75, 0.2);
   color: #ff1a4b;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be5 {
   display: none;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be6 {
   max-width: 180px;
   background: rgba(255, 26, 75, 0.3);
   color: #ff1a4b;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be6::-webkit-input-placeholder {
   color: #ff1a4b;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be6::-moz-placeholder {
   color: #ff1a4b;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be6:-ms-input-placeholder {
   color: #ff1a4b;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be6:-moz-placeholder {
   color: #ff1a4b;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be10 {
   display: none;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be7 {
   display: inline-block;
   padding-right: 30px;
   padding-left: 15px;
   background: #ff1a4b;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be7 input {
   border: none;
   font-family: Teko;
   font-weight: 300;
   color: #fff;
   background: url(../images/icon-button-white.png) no-repeat center right;
   padding-right: 28px;
   padding-top: 0;
   padding-bottom: 0;
   background-size: 18px;
   font-size: 26px;
   height: 44px;
   line-height: 44px;
}
body .bs-region--top #block-formreserva #formAvailability #mirai_be0 #mirai_be8 {
   display: none;
}
body .bs-region--main .rooms-access .paragraph--type--bp-columns__2col {
   overflow: hidden;
   padding-left: 7px;
   padding-right: 7px;
   margin-bottom: 7px;
}
@media (min-width: 768px) {
   body .bs-region--main .rooms-access .paragraph--type--bp-columns__2col {
       margin-bottom: 0;
  }
}
@media (min-width: 1200px) {
   body .bs-region--main .rooms-access .paragraph--type--bp-columns__2col {
       padding-left: 15px;
       padding-right: 15px;
  }
}
body .bs-region--main .rooms-access .title-access {
   position: absolute;
   z-index: 1;
   padding: 30px;
}
@media (min-width: 768px) {
   body .bs-region--main .rooms-access .title-access {
       padding: 20px;
  }
}
@media (min-width: 1200px) {
   body .bs-region--main .rooms-access .title-access {
       padding: 30px;
  }
}
body .bs-region--main .rooms-access .title-access a {
   color: #fff;
}
body .bs-region--main .rooms-access .title-access .btn-std {
   background-image: url(../images/icon-button-white.png);
}
body .bs-region--main .rooms-access .title-access h2 {
   margin-bottom: 5px;
}
body .bs-region--main .rooms-access .title-access h2 a {
   display: block;
}
body .bs-region--main .rooms-access .carousel .carousel-indicators {
   display: none;
}
body .bs-region--main .rooms-access .carousel .carousel-control {
   top: auto;
   height: 80px;
}
body .bs-region--main .sections-access .paragraph--type--bp-columns__4col {
   padding-left: 7px;
   padding-right: 7px;
   margin-bottom: 7px;
}
@media (min-width: 768px) {
   body .bs-region--main .sections-access .paragraph--type--bp-columns__4col {
       margin-bottom: 0;
  }
}
@media (min-width: 1200px) {
   body .bs-region--main .sections-access .paragraph--type--bp-columns__4col {
       padding-left: 15px;
       padding-right: 15px;
  }
}
body .bs-region--main .sections-access .access-bg {
   background-color: #000;
   -webkit-filter: grayscale(100%);
   filter: grayscale(100%);
   -webkit-transition: .2s;
   transition: .2s;
}
body .bs-region--main .sections-access .access-bg:hover {
   -webkit-filter: grayscale(0%);
   filter: grayscale(0%);
}
body .bs-region--main .sections-access .access-bg .paragraph__column .block-title {
   position: absolute;
   z-index: 1;
   margin-bottom: 0;
   font-size: 14px;
   font-weight: 600;
}
@media (min-width: 768px) {
   body .bs-region--main .sections-access .access-bg .paragraph__column .block-title {
       font-size: 16px;
  }
}
@media (min-width: 1200px) {
   body .bs-region--main .sections-access .access-bg .paragraph__column .block-title {
       font-size: 18px;
  }
}
body .bs-region--main .sections-access .access-bg .paragraph__column .block-title a {
   color: #fff;
   padding: 30px;
   display: block;
   font-weight: 600;
}
@media (min-width: 768px) {
   body .bs-region--main .sections-access .access-bg .paragraph__column .block-title a {
       padding: 15px;
  }
}
@media (min-width: 992px) {
   body .bs-region--main .sections-access .access-bg .paragraph__column .block-title a {
       padding: 20px;
  }
}
@media (min-width: 1200px) {
   body .bs-region--main .sections-access .access-bg .paragraph__column .block-title a {
       padding: 30px;
  }
}
body .bs-region--main .sections-access .access-bg .paragraph__column > a div {
   background-size: cover;
   background-position: center center;
   opacity: 1;
}
body .bs-region--main .sections-access .access-1 .paragraph__column > a div {
   padding-bottom: 250px;
}
@media (min-width: 992px) {
   body .bs-region--main .sections-access .access-1 .paragraph__column > a div {
       padding-bottom: 660px;
  }
}
body .bs-region--main .sections-access .access-2 .paragraph__column > a div {
   padding-bottom: 250px;
}
@media (min-width: 992px) {
   body .bs-region--main .sections-access .access-2 .paragraph__column > a div {
       padding-bottom: 560px;
  }
}
body .bs-region--main .sections-access .access-3 .paragraph__column > a div {
   padding-bottom: 250px;
}
@media (min-width: 992px) {
   body .bs-region--main .sections-access .access-3 .paragraph__column > a div {
       padding-bottom: 700px;
  }
}
body .bs-region--main .sections-access .access-4 .paragraph__column > a div {
   padding-bottom: 250px;
}
@media (min-width: 992px) {
   body .bs-region--main .sections-access .access-4 .paragraph__column > a div {
       padding-bottom: 620px;
  }
}
body .bs-region--main .feat-locations .paragraph--type--bp-columns__4col {
   padding-left: 7px;
   padding-right: 7px;
   margin-bottom: 7px;
}
@media (min-width: 768px) {
   body .bs-region--main .feat-locations .paragraph--type--bp-columns__4col {
       margin-bottom: 0;
  }
}
@media (min-width: 1200px) {
   body .bs-region--main .feat-locations .paragraph--type--bp-columns__4col {
       padding-left: 15px;
       padding-right: 15px;
  }
}
body .bs-region--main .feat-locations .feat-location {
   background: #000;
}
body .bs-region--main .feat-locations .feat-location .paragraph__column .block-title {
   position: absolute;
   z-index: 1;
   margin-bottom: 0;
   font-size: 14px;
   font-weight: 600;
}
@media (min-width: 768px) {
   body .bs-region--main .feat-locations .feat-location .paragraph__column .block-title {
       font-size: 16px;
  }
}
@media (min-width: 1200px) {
   body .bs-region--main .feat-locations .feat-location .paragraph__column .block-title {
       font-size: 18px;
  }
}
body .bs-region--main .feat-locations .feat-location .paragraph__column .block-title a {
   color: #fff;
   padding: 30px;
   display: block;
   font-weight: 600;
}
@media (min-width: 768px) {
   body .bs-region--main .feat-locations .feat-location .paragraph__column .block-title a {
       padding: 15px;
  }
}
@media (min-width: 992px) {
   body .bs-region--main .feat-locations .feat-location .paragraph__column .block-title a {
       padding: 20px;
  }
}
@media (min-width: 1200px) {
   body .bs-region--main .feat-locations .feat-location .paragraph__column .block-title a {
       padding: 30px;
  }
}
body .bs-region--main .feat-locations .feat-location .paragraph__column > a div {
   background-size: cover;
   opacity: 1;
   padding-bottom: 250px;
}
@media (min-width: 992px) {
   body .bs-region--main .feat-locations .feat-location .paragraph__column > a div {
       padding-bottom: 500px;
  }
}
body .bs-region--main .feat-locations .feat-location .paragraph__column .card {
   background: #fff;
   padding: 20px;
}
body .footer-wrapper {
   padding-top: 50px;
   background: url(../images/footer-bg.jpg) no-repeat center top;
   background-size: cover;
}
@media (min-width: 992px) {
   body .footer-wrapper {
       margin-top: 50px;
       padding-top: 200px;
  }
}
@media (min-width: 1200px) {
   body .footer-wrapper {
       padding-top: 100px;
       padding-top: 450px;
  }
}
body .footer-wrapper .footer {
   padding: 15px;
   max-width: 1340px;
   margin-left: auto;
   margin-right: auto;
   overflow: hidden;
   background-color: #fff;
}
@media (min-width: 768px) {
   body .footer-wrapper .footer {
       padding: 10px;
  }
}
@media (min-width: 992px) {
   body .footer-wrapper .footer {
       padding: 40px;
  }
}
body .footer-wrapper .footer .footer-block {
   padding: 30px;
  /* color: rgba(255,255,255,.55);
   */
}
body .footer-wrapper .footer .footer-block h4 {
   margin: 0 0 25px 0;
   font-weight: 900;
  /* color: rgba(255,255,255,.75);
   */
}
body .footer-wrapper .footer .footer-block a {
   font-weight: 800;
}
body .footer-wrapper .footer .footer-block .field--name-field-link {
   margin: 15px 0;
}
body .footer-wrapper .footer .footer-block.footer_1 .telefon {
   font-size: 22px;
}
@media (min-width: 768px) {
   body .footer-wrapper .footer .footer-block.footer_1 .telefon {
       font-size: 16px;
  }
}
@media (min-width: 992px) {
   body .footer-wrapper .footer .footer-block.footer_1 .telefon {
       font-size: 22px;
  }
}
body .footer-wrapper .footer .footer-block.footer_2 a {
   background-position: left center;
   background-repeat: no-repeat;
   background-size: 24px;
   display: block;
   padding-left: 40px;
   padding-top: 10px;
   padding-bottom: 10px;
}
body .footer-wrapper .footer .footer-block.footer_2 a.facebook {
   background-image: url(../images/facebook-social-footer.png);
}
body .footer-wrapper .footer .footer-block.footer_2 a.twitter {
   background-image: url(../images/instagram-social-footer.png);
}
body .footer-wrapper .footer .footer-block.footer_4 a {
   background: url(../images/go-top-button.png) top center no-repeat;
   background-size: 100px;
   color: #000;
   display: block;
   font-weight: normal;
   padding-top: 120px;
   text-align: center;
   font-family: "Playfair Display", "Times New Roman", Times, serif;
   font-weight: 900;
   font-style: italic;
   -webkit-transition: 1s;
   transition: 1s;
}
body .footer-last-wrapper .footer-last {
   padding: 15px;
   max-width: 1340px;
   margin-left: auto;
   margin-right: auto;
   overflow: hidden;
   border-top: 1px solid rgba(0, 0, 0, 0.1);
   text-transform: uppercase;
   font-size: 12px;
}
@media (min-width: 768px) {
   body .footer-last-wrapper .footer-last {
       padding: 10px;
  }
}
@media (min-width: 992px) {
   body .footer-last-wrapper .footer-last {
       padding: 40px;
  }
}
body .footer-last-wrapper .footer-last #block-firmaatoom {
   float: left;
   padding: 30px;
}
body .footer-last-wrapper .footer-last #block-firmaatoom a {
   font-weight: 900;
}
body .footer-last-wrapper .footer-last #block-footermenu {
   float: right;
   padding: 30px;
}
body .footer-last-wrapper .footer-last #block-footermenu li {
   float: left;
   margin-left: 20px;
}
body .footer-last-wrapper .footer-last #block-footermenu li a {
   padding: 0;
}
/* L'HOTEL */
.node-4 .title-area {
   background-image: url(../images/title-sections-images/hotel-section-bg.jpg);
}
.node-4 .bs-region--main .amenities {
   text-align: center;
   color: #ff1a4b;
   font-weight: 400;
}
.node-4 .bs-region--main .amenities .paragraph--type--characteristics:nth-child(6n+1) {
   clear: both;
}
.node-4 .bs-region--main .amenities .paragraph--type--characteristics {
   margin-bottom: 40px;
}
.node-4 .bs-region--main .amenities .paragraph--type--characteristics .field--name-field-media-image img {
   display: inline-block;
   max-width: 60px;
   margin-bottom: 7px;
}
.node-4 .bs-region--main .hotel-desc-wrapper {
   background: url(../images/title-section-image.jpg) no-repeat fixed;
   background-size: cover;
}
.node-4 .bs-region--main .hotel-desc-wrapper .paragraph__column {
   padding-bottom: 0;
}
.node-4 .bs-region--main .hotel-desc-wrapper .paragraph__column .hotel-desc {
   text-align: center;
   background: #fff;
   padding-left: 30px;
   padding-right: 30px;
}
.node-4 .bs-region--main .hotel-desc-wrapper .paragraph__column .hotel-desc p:first-child {
   font-size: 16px;
}
.node-4 .bs-region--main .hotel-desc-wrapper .paragraph__column .hotel-desc p:first-child strong {
   color: #ff1a4b;
}
@media (min-width: 768px) {
   .node-4 .bs-region--main .hotel-desc-wrapper .paragraph__column .hotel-desc {
       padding-left: 50px;
       padding-right: 50px;
  }
}
@media (min-width: 992px) {
   .node-4 .bs-region--main .hotel-desc-wrapper .paragraph__column .hotel-desc {
       padding-left: 80px;
       padding-right: 80px;
  }
}
/* LLISTAT APARTAMENTS */
.node-8 .title-area, .node-163 .title-area {
   background-image: url(../images/title-sections-images/hab-apart-section-bg.jpg);
}
.node-8 .bs-region--main .view-apartments-rooms-list .room, .node-163 .bs-region--main .view-apartments-rooms-list .room {
   margin-bottom: 15px;
}
.node-8 .bs-region--main .view-apartments-rooms-list .room .title-access, .node-163 .bs-region--main .view-apartments-rooms-list .room .title-access {
   width: 100%;
   padding: 20px;
   background-color: #eee;
}
@media (min-width: 992px) {
   .node-8 .bs-region--main .view-apartments-rooms-list .room .title-access, .node-163 .bs-region--main .view-apartments-rooms-list .room .title-access {
       position: absolute;
       z-index: 2;
       background-color: transparent;
       padding: 30px;
  }
}
@media (min-width: 992px) {
   .node-8 .bs-region--main .view-apartments-rooms-list .room .title-access a, .node-163 .bs-region--main .view-apartments-rooms-list .room .title-access a {
       color: #fff;
  }
}
.node-8 .bs-region--main .view-apartments-rooms-list .room .title-access h2, .node-163 .bs-region--main .view-apartments-rooms-list .room .title-access h2 {
   margin-bottom: 5px;
}
.node-8 .bs-region--main .view-apartments-rooms-list .room .title-access h2 a, .node-163 .bs-region--main .view-apartments-rooms-list .room .title-access h2 a {
   display: inline-block;
   background: url(../images/icon-button.png) no-repeat center right;
   background-size: 18px;
   padding-right: 28px;
}
@media (min-width: 992px) {
   .node-8 .bs-region--main .view-apartments-rooms-list .room .title-access h2 a, .node-163 .bs-region--main .view-apartments-rooms-list .room .title-access h2 a {
       background-image: url(../images/icon-button-white.png);
  }
}
.node-8 .bs-region--main .view-apartments-rooms-list .room .title-access span, .node-163 .bs-region--main .view-apartments-rooms-list .room .title-access span {
   font-size: 14px;
   font-weight: 500;
}
@media (min-width: 992px) {
   .node-8 .bs-region--main .view-apartments-rooms-list .room .title-access span, .node-163 .bs-region--main .view-apartments-rooms-list .room .title-access span {
       font-size: 20px;
  }
}
.node-8 .bs-region--main .view-apartments-rooms-list .room .room-link, .node-163 .bs-region--main .view-apartments-rooms-list .room .room-link {
   padding: 20px;
   background-color: #eee;
}
@media (min-width: 992px) {
   .node-8 .bs-region--main .view-apartments-rooms-list .room .room-link, .node-163 .bs-region--main .view-apartments-rooms-list .room .room-link {
       position: absolute;
       z-index: 2;
       bottom: 0;
       padding: 5px 20px;
       background-color: #fff;
  }
}
.node-8 .bs-region--main .view-apartments-rooms-list .room .room-link .btn-std, .node-163 .bs-region--main .view-apartments-rooms-list .room .room-link .btn-std {
   display: block;
}
/* DETALL APARTAMENTS */
.page-node-type-apartments-rooms .title-area {
   background-image: url(../images/title-sections-images/hab-apart-section-bg.jpg);
}
.page-node-type-apartments-rooms .bs-region--main .benefits .benefit {
   margin-bottom: 40px;
}
.page-node-type-apartments-rooms .bs-region--main .benefits .benefit .field--name-field-media-image img {
   display: inline-block;
}
.page-node-type-apartments-rooms .bs-region--main .hab-desc {
   font-size: 18px;
   color: #ff1a4b;
}
@media (min-width: 768px) {
   .page-node-type-apartments-rooms .bs-region--main .hab-desc {
       font-size: 20px;
  }
}
@media (min-width: 992px) {
   .page-node-type-apartments-rooms .bs-region--main .hab-desc {
       font-size: 24px;
  }
}
.page-node-type-apartments-rooms .bs-region--main .hab-amenities {
   background: url(../images/hab-amenities-icon.png) no-repeat center top;
   background-size: 40px;
   padding-top: 60px;
}
.page-node-type-apartments-rooms .bs-region--main .hab-amenities .hab-amenitie {
   display: inline-block;
   font-weight: 600;
   margin-bottom: 10px;
}
.page-node-type-apartments-rooms .bs-region--main .book-button .btn-std {
   font-size: 26px;
}
@media (min-width: 768px) {
   .page-node-type-apartments-rooms .bs-region--main .book-button .btn-std {
       font-size: 32px;
  }
}
@media (min-width: 1200px) {
   .page-node-type-apartments-rooms .bs-region--main .book-button .btn-std {
       font-size: 48px;
  }
}
/* PROMOCIONS */
.node-6 .title-area {
   background-image: url(../images/title-sections-images/promotions-section-bg.jpg);
}
.node-6 .bs-region--main .promotions-wrapper {
   background: url(../images/title-section-image.jpg) no-repeat fixed;
   background-size: cover;
}
.node-6 .bs-region--main .promotions-wrapper .paragraph__column {
   padding-bottom: 0;
}
.node-6 .bs-region--main .promotions-wrapper .paragraph__column .promotions-list {
   text-align: center;
   background: #fff;
   padding-left: 30px;
   padding-left: 80px;
   padding-right: 80px;
}
.node-6 .bs-region--main .promotions-wrapper .paragraph__column .promotions-list .promotion .field--type-link {
   margin-top: 15px;
}
.node-6 .bs-region--main .promotions-wrapper .paragraph__column .promotions-list .promotion .field--type-image {
   display: inline-block;
   margin-bottom: 15px;
   padding: 15px;
   border-radius: 50%;
   border: 8px solid rgba(0, 0, 0, 0.08);
}
.node-6 .bs-region--main .promotions-wrapper .paragraph__column .promotions-list .promotion .field--type-image img {
   display: inline-block;
   max-width: 50px;
}
/* BENEFITS */
.benefits-area h2 {
   color: #ff1a4b;
}
.benefits-area .benefit-direct {
   margin-bottom: 40px;
   text-align: center;
   color: #ff1a4b;
   font-weight: 700;
}
@media (min-width: 768px) {
   .benefits-area .benefit-direct {
       margin-bottom: 0;
  }
}
.benefits-area .benefit-direct img {
   display: inline-block;
   margin-bottom: 10px;
}
/* LOCALITZACIÓ */
.node-11 .title-area {
   background-image: url(../images/title-sections-images/location-section-bg.jpg);
}
/* GALERIA */
.node-15 .title-area {
   background-image: url(../images/title-sections-images/gallery-section-bg.jpg);
}
.node-15 .bs-region--main .field--item.col-lg-2.col-md-3.col-sm-4 {
   padding-left: 7px;
   padding-right: 7px;
   margin-bottom: 7px;
}
@media (min-width: 768px) {
   .node-15 .bs-region--main .field--item.col-lg-2.col-md-3.col-sm-4 {
       margin-bottom: 14px;
  }
}
/* WHAT'S ON */
.page-node-type-article .title-area {
   background-image: url(../images/title-sections-images/whatson-section-bg.jpg);
}
.page-node-type-article .bs-region--left {
   margin-bottom: 15px;
}
.page-node-type-article .bs-region--right .location-event {
   font-family: "Playfair Display", "Times New Roman", Times, serif;
   font-weight: 900;
   color: #777777;
   font-style: italic;
}
.node-14 .title-area {
   background-image: url(../images/title-sections-images/whatson-section-bg.jpg);
}
.node-14 .bs-region--main .posts-wrapper {
  /* background: #f7f7f7;
   background: rgb(255,255,255);
   background: -moz-linear-gradient(top, rgba(255,255,255,1) 1%, rgba(230,230,230,1) 20%, rgba(230,230,230,1) 80%, rgba(255,255,255,1) 100%);
   background: -webkit-linear-gradient(top, rgba(255,255,255,1) 1%,rgba(230,230,230,1) 20%,rgba(230,230,230,1) 80%,rgba(255,255,255,1) 100%);
   background: linear-gradient(to bottom, rgba(255,255,255,1) 1%,rgba(230,230,230,1) 20%,rgba(230,230,230,1) 80%,rgba(255,255,255,1) 100%);
   filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff',GradientType=0 );
   */
}
.node-14 .bs-region--main .posts-wrapper .view-filters {
   text-align: center;
}
.node-14 .bs-region--main .posts-wrapper .view-filters .bef-exposed-form .form--inline > .form-item {
   float: none;
}
.node-14 .bs-region--main .posts-wrapper .view-filters .form-item-categoria {
   margin-bottom: 20px;
}
.node-14 .bs-region--main .posts-wrapper .view-filters .form-item-categoria .form-group {
   padding: 0 10px;
   font-weight: 700;
}
.node-14 .bs-region--main .posts-wrapper .col {
   -webkit-transition: .2s;
   transition: .2s;
   padding-left: 7px;
   padding-right: 7px;
   margin-bottom: 14px;
}
.node-14 .bs-region--main .posts-wrapper .col:hover .views-field-field-image img {
   opacity: 1;
}
.node-14 .bs-region--main .posts-wrapper .col:hover .info {
   color: #fff;
}
.node-14 .bs-region--main .posts-wrapper .col:hover .info h2 a {
   color: #fff;
}
.node-14 .bs-region--main .posts-wrapper .col:hover .info .btn-std {
   margin-top: 30px;
   color: #fff;
   background-image: url(../images/icon-button-white.png);
}
.node-14 .bs-region--main .posts-wrapper .col .views-field-field-image {
   background: #ff1a4b;
}
.node-14 .bs-region--main .posts-wrapper .col .views-field-field-image img {
   opacity: .9;
   -webkit-transition: .2s;
   transition: .2s;
}
.node-14 .bs-region--main .posts-wrapper .col .info {
   padding: 20px 20px 15px 20px;
   background: #ff1a4b;
   color: rgba(255, 255, 255, 0.7);
   -webkit-transition: .2s;
   transition: .2s;
}
.node-14 .bs-region--main .posts-wrapper .col .info h2 {
   font-size: 18px;
   margin-bottom: 5px;
}
.node-14 .bs-region--main .posts-wrapper .col .info h2 a {
   font-family: "Playfair Display", "Times New Roman", Times, serif;
   font-weight: 900;
   color: #222222;
   color: rgba(255, 255, 255, 0.7);
   -webkit-transition: .2s;
   transition: .2s;
}
.node-14 .bs-region--main .posts-wrapper .col .info .btn-std {
   margin-top: 30px;
   color: #fff;
   background-image: url(../images/icon-button-white.png);
}

/* COVID SECTION */

.node-199 .title-area {
   background-image: url(../images/title-sections-images/covid-section-bg.jpg);
}

.covid-section-row { }



.covid-section-row .paragraph--type--icona-text { text-align: center; padding: 15px;}

@media (min-width: 768px) {
   .covid-section-row .paragraph--type--icona-text {
      
  }
}

.covid-section-row .paragraph--type--icona-text .field--name-field-icon { 

  display: inline-block;
  padding: 5px;
  border-radius: 50%;
  border: 8px solid rgba(255,26,75,0.08);

}

.covid-section-row .paragraph--type--icona-text .field--name-field-icon .field--type-image { 

/*  background: rgba(0,0,0,0.08);*/
padding: 15px;
/*  border-radius: 50%;*/

}



.covid-section-row .paragraph--type--icona-text .field--name-field-icon img { 

max-width: 50px;

}

.covid-section-row .paragraph--type--icona-text .field--name-bp-text {}


/* Start Custom CSS 2024 */
li.info-covid,
.info-covid-mobile {
   display: none;
}
@media(max-width: 768px) {
   .carousel-inner .item {
      height: 200px !important;
   }
   .carousel-inner .item img {
      height: 100% !important;
   }
}

/* End Custom CSS 2024 */

/* Extra small devices (phones, less than 768px) */
/* No media query since this is the default in Bootstrap */
/* Small devices (tablets, 768px and up) */
@media (min-width: 768px) {
   .paragraph.paragraph--width--tiny > .paragraph__column {
       width: 66.66666667%;
       margin-left: 16.66666667%;
  }
   .paragraph.paragraph--width--medium > .paragraph__column {
       width: 83.33333333%;
       margin-left: 8.33333333%;
  }
   .paragraph.paragraph--width--narrow > .paragraph__column {
       width: 66.66666667%;
       margin-left: 16.66666667%;
  }



}
/* Medium devices (desktops, 992px and up) */
@media (min-width: 992px) {
   .paragraph.paragraph--width--tiny > .paragraph__column {
       width: 50%;
       margin-left: 25%;
  }
}
/* Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
   .paragraph.paragraph--width--tiny > .paragraph__column {
       width: 33.33333333%;
       margin-left: 33.33333333%;
  }
   .paragraph.paragraph--width--narrow > .paragraph__column {
       width: 50%;
       margin-left: 25%;
  }
   .paragraph.paragraph--width--medium > .paragraph__column {
       width: 66.66666667%;
       margin-left: 16.66666667%;
  }
}

/* Ajustos 2025 --------------------------------------------------------------- */
.node-297 .title-area .block-region-top > section:last-child h2,
.node-296 .title-area .block-region-top > section:last-child h2,
.node-298 .title-area .block-region-top > section:last-child h2 {
   margin-bottom: 30px !important;
}
.node-296 .separator:after,
.node-297 .separator:after,
.node-298 .separator:after {
   content: none !important;
}
/* Home */
.node-295 .big-area {
   padding-top: 30px !important;
}
.node-295 .paragraph--id--1156 {
   margin-bottom: 50px;
   display: flex;
   justify-content: center;
}
@media (min-width: 992px) {
   .node-295 .sections-access .paragraph__column > a div {
      padding-bottom: 500px !important;
   }
}
.node-295 .paragraph--id--1156 > .paragraph__column {
   display: flex;
   flex-wrap: wrap;
   max-width: 700px;
   margin: 0 !important;
}
.node-295 .paragraph--id--1156 > .paragraph__column > div:first-child {
   display: flex;
   align-items: center;
   padding: 0;
}
@media (max-width: 764px) {
   .node-295 .paragraph--id--1156 {
      padding: 0 20px;
   }
   .node-295 .paragraph--id--1156 > .paragraph__column > div:first-child {
      margin-bottom: 20px;
   }
   .node-295 .paragraph--id--1156 > .paragraph__column > div:not(:first-child) {
      width: 33.33%;
   }
}
.node-295 .paragraph--id--1156 > .paragraph__column .paragraph__column {
   display: flex;
   flex-direction: column;
   align-items: center;
}
.node-295 .paragraph--id--1156 > .paragraph__column .paragraph__column img {
   width: 80px;
   margin-bottom: 14px;
}
.node-295 .paragraph--id--1152 p {
   color: #ff1a4b;
   font-size: 22px;
   font-family: "Playfair Display", "Times New Roman", Times, serif;
   font-weight: bold;
}
.node-295 .paragraph--id--1156 > .paragraph__column .paragraph__column h2 {
   text-align: center;
   color: #ff1a4b;
   font-family: "Poppins", Helvetica, Arial, sans-serif;
   font-weight: 700;
   font-size: 14px;
   line-height: 20px;
}
/* Promociones */
.node-296 .paragraph--id--1047 > .paragraph__column,
.node-296 .paragraph--id--1144 > .paragraph__column,
.node-296 .paragraph--id--1147 > .paragraph__column {
   display: flex;
   align-items: center;
}
.node-296 .paragraph__column img {
   height: 100%;
   object-fit: cover;
}
.node-296 .paragraph--id--1047 > .paragraph__column {
   display: flex;
   align-items: stretch;
}
.node-296 .paragraph--id--1047 > .paragraph__column .paragraph--type--bp-columns__2col {
   display: flex;
   align-items: center;
}
.node-296 .paragraph--id--1047 > .paragraph__column .paragraph--type--bp-columns__2col:first-child div {
   height: 100%;
}
.node-296 .paragraph--id--1168 > .paragraph__column {
   display: flex;
   flex-direction: column;
   gap: 30px;
}
.node-296 .paragraph--id--1018 {
   margin-bottom: 50px;
}
@media (max-width: 767px) {
   .node-296 .paragraph--id--1022 .paragraph--type--bp-columns > .paragraph__column {
      flex-wrap: wrap;
   }
   .node-296  .paragraph--id--1144 > .paragraph__column {
      flex-direction: column-reverse;
   }
   .node-296 .paragraph--id--1022 .paragraph--type--bp-columns .paragraph--type--bp-columns__2col {
      width: 100%;
      margin-bottom: 20px;
   }
}

/* Que Ofrecemos? */
.node-297 .bs-region--main .amenities {
   text-align: center;
   color: #ff1a4b;
   font-weight: 400;
}
.node-297 .bs-region--main .amenities .paragraph--type--characteristics {
   margin-bottom: 40px;
}
.node-297 .bs-region--main .amenities .paragraph--type--characteristics .field--name-field-media-image img {
   display: inline-block;
   max-width: 60px;
   margin-bottom: 7px;
}
.node-297 .paragraph--id--1066 img {
   max-height: 500px;
   height: 100%;
   object-fit: cover;
}
.node-297 .paragraph--id--1066 .paragraph--type--bp-columns__2col {
   display: flex;
   align-items: center;
}
.node-297 .paragraph--id--1066 .paragraph--type--bp-columns__2col:last-child div {
   height: 100%;
}
.node-297 .paragraph--id--1066 > .paragraph__column {
   display: flex;
}
@media (max-width: 767px) {
   .node-297 .paragraph--id--1066 > .paragraph__column > div {
      width: 100% !important;
   }
   .node-297 .paragraph--id--1066 > .paragraph__column {
      flex-wrap: wrap;
      gap: 50px;
   }
   .node-297 .paragraph--id--1066 > .paragraph__column > div:first-child {
      padding: 0 40px;

   }
   .node-297 .paragraph--id--1066 img {
      max-height: 300px;
   }

}
/* Habitaciones */
.node-298 #views-bootstrap-apartments-rooms-list-block-1 > div {
   margin-bottom: 50px;
}

/*# sourceMappingURL=data:application/json;
charset=utf8;
base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiX2RlZmF1bHQtdmFyaWFibGVzLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL19ib290c3RyYXAuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL192YXJpYWJsZXMuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19taXhpbnMuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9faGlkZS10ZXh0LnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX29wYWNpdHkuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9faW1hZ2Uuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fbGFiZWxzLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LWZpbHRlci5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19yZXNpemUuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcmVzcG9uc2l2ZS12aXNpYmlsaXR5LnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3NpemUuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGFiLWZvY3VzLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL190ZXh0LW92ZXJmbG93LnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3ZlbmRvci1wcmVmaXhlcy5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19hbGVydHMuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fYnV0dG9ucy5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19wYW5lbHMuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2Zvcm1zLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3Byb2dyZXNzLWJhci5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2NlbnRlci1ibG9jay5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19uYXYtdmVydGljYWwtYWxpZ24uc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fZ3JpZC5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX25vcm1hbGl6ZS5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3ByaW50LnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fZ2x5cGhpY29ucy5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3NjYWZmb2xkaW5nLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdHlwZS5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2NvZGUuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19ncmlkLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdGFibGVzLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fZm9ybXMuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19idXR0b25zLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fY29tcG9uZW50LWFuaW1hdGlvbnMuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19kcm9wZG93bnMuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19idXR0b24tZ3JvdXBzLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9faW5wdXQtZ3JvdXBzLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbmF2cy5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX25hdmJhci5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2JyZWFkY3J1bWJzLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3BhZ2VyLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbGFiZWxzLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fYmFkZ2VzLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fanVtYm90cm9uLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdGh1bWJuYWlscy5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2FsZXJ0cy5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3Byb2dyZXNzLWJhcnMuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19tZWRpYS5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2xpc3QtZ3JvdXAuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wYW5lbHMuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fd2VsbHMuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19jbG9zZS5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX21vZGFscy5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3Rvb2x0aXAuc2NzcyIsIi4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wb3BvdmVycy5zY3NzIiwiLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2Nhcm91c2VsLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdXRpbGl0aWVzLnNjc3MiLCIuLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcmVzcG9uc2l2ZS11dGlsaXRpZXMuc2NzcyIsIl9vdmVycmlkZXMuc2NzcyIsImNvbXBvbmVudC9fYWxlcnQuc2NzcyIsImNvbXBvbmVudC9fYWpheC5zY3NzIiwiY29tcG9uZW50L19maWVsZC5zY3NzIiwiY29tcG9uZW50L19maWxlLnNjc3MiLCJjb21wb25lbnQvX2ZpbHRlci5zY3NzIiwiY29tcG9uZW50L19mb3JtLnNjc3MiLCJjb21wb25lbnQvX2ljb24uc2NzcyIsImNvbXBvbmVudC9fbmF2YmFyLnNjc3MiLCJjb21wb25lbnQvX25vZGUuc2NzcyIsImNvbXBvbmVudC9fcGFuZWwuc2NzcyIsImNvbXBvbmVudC9fcHJvZ3Jlc3MtYmFyLnNjc3MiLCJjb21wb25lbnQvX3RhYmxlLWRyYWcuc2NzcyIsImNvbXBvbmVudC9fdGFicy5zY3NzIiwiY29tcG9uZW50L190b29sYmFyLnNjc3MiLCJqcXVlcnktdWkvX2F1dG9jb21wbGV0ZS5zY3NzIiwiX2F0b29tLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gRGVmYXVsdCB2YXJpYWJsZXMuXG5AaW1wb3J0IFwiZGVmYXVsdC12YXJpYWJsZXNcIjtcblxuLy8gQm9vdHN0cmFwIEZyYW1ld29yay5cbkBpbXBvcnQgJy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwJztcblxuLy8gQmFzZS10aGVtZSBvdmVycmlkZXMuXG5AaW1wb3J0ICdvdmVycmlkZXMnO1xuXG5AaW1wb3J0ICdhdG9vbSc7XG5cbiIsIi8qKlxuICogRGVmYXVsdCBWYXJpYWJsZXMuXG4gKlxuICogTW9kaWZ5IHRoaXMgZmlsZSB0byBwcm92aWRlIGRlZmF1bHQgQm9vdHN0cmFwIEZyYW1ld29yayB2YXJpYWJsZXMuIFRoZVxuICogQm9vdHN0cmFwIEZyYW1ld29yayB3aWxsIG5vdCBvdmVycmlkZSBhbnkgdmFyaWFibGVzIGRlZmluZWQgaGVyZSBiZWNhdXNlIGl0XG4gKiB1c2VzIHRoZSBgIWRlZmF1bHRgIGZsYWcgd2hpY2ggd2lsbCBvbmx5IHNldCB0aGVpciBkZWZhdWx0IGlmIG5vdCBhbHJlYWR5XG4gKiBkZWZpbmVkIGhlcmUuXG4gKlxuICogWW91IGNhbiBjb3B5IGV4aXN0aW5nIHZhcmlhYmxlcyBkaXJlY3RseSBmcm9tIHRoZSBmb2xsb3dpbmcgZmlsZTpcbiAqIC4vVEhFTUVOQU1FL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL192YXJpYWJsZXMuc2Nzc1xuICovXG5cbi8vIFNldCB0aGUgcHJvcGVyIGRpcmVjdG9yeSBmb3IgdGhlIEJvb3RzdHJhcCBHbHlwaGljb24gZm9udC5cbiRpY29uLWZvbnQtcGF0aDogJy4uL2Jvb3RzdHJhcC9hc3NldHMvZm9udHMvYm9vdHN0cmFwLyc7XG5cbiRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXI6IGZhbHNlICFkZWZhdWx0O1xuLy9cbi8vIFZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLz09IENvbG9yc1xuLy9cbi8vIyMgR3JheSBhbmQgYnJhbmQgY29sb3JzIGZvciB1c2UgYWNyb3NzIEJvb3RzdHJhcC5cblxuJGdyYXktYmFzZTogICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kZ3JheS1kYXJrZXI6ICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAxMy41JSkgIWRlZmF1bHQ7IC8vICMyMjJcbiRncmF5LWRhcms6ICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDIwJSkgIWRlZmF1bHQ7ICAgLy8gIzMzM1xuJGdyYXk6ICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMzMuNSUpICFkZWZhdWx0OyAvLyAjNTU1XG4kZ3JheS1saWdodDogICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA0Ni43JSkgIWRlZmF1bHQ7IC8vICM3NzdcbiRncmF5LWxpZ2h0ZXI6ICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDkzLjUlKSAhZGVmYXVsdDsgLy8gI2VlZVxuJGRhcmstdHJhbnNwYXJlbnQ6ICAgICAgIHJnYmEoMCwwLDAsLjMpO1xuJGJyYW5kLXRyYW5zcGFyZW50OiAgICAgIHJnYmEoMjAwLDAsNTIsLjQpO1xuXG4vLyRicmFuZC1wcmltYXJ5OiAgICAgICAgIGRhcmtlbigjNDI4YmNhLCA2LjUlKSAhZGVmYXVsdDsgLy8gIzMzN2FiN1xuJGJyYW5kLXByaW1hcnk6ICAgICAgICAgI2ZmMWE0YiAhZGVmYXVsdDtcbiRicmFuZC1zdWNjZXNzOiAgICAgICAgICM1Y2I4NWMgIWRlZmF1bHQ7XG4kYnJhbmQtaW5mbzogICAgICAgICAgICAjNWJjMGRlICFkZWZhdWx0O1xuJGJyYW5kLXdhcm5pbmc6ICAgICAgICAgI2YwYWQ0ZSAhZGVmYXVsdDtcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgICNkOTUzNGYgIWRlZmF1bHQ7XG5cblxuLy89PSBTY2FmZm9sZGluZ1xuLy9cbi8vIyMgU2V0dGluZ3MgZm9yIHNvbWUgb2YgdGhlIG1vc3QgZ2xvYmFsIHN0eWxlcy5cblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGJvZHk+YC5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCB0ZXh0IGNvbG9yIG9uIGA8Ym9keT5gLlxuJHRleHQtY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgdGV4dHVhbCBsaW5rIGNvbG9yLlxuJGxpbmstY29sb3I6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIExpbmsgaG92ZXIgY29sb3Igc2V0IHZpYSBgZGFya2VuKClgIGZ1bmN0aW9uLlxuJGxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGRlY29yYXRpb24uXG4vLyRsaW5rLWhvdmVyLWRlY29yYXRpb246IHVuZGVybGluZSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG5cblxuLy89PSBUeXBvZ3JhcGh5XG4vL1xuLy8jIyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1BYnJpbCtGYXRmYWNlfFBvcHBpbnM6NDAwLDQwMGksNTAwLDUwMGksNjAwLDYwMGksNzAwLDcwMGksODAwLDgwMGksOTAwLDkwMGl8VGVrbzozMDAsNDAwLDUwMCw2MDAsNzAwfExvcmE6NDAwLDQwMGksNzAwLDcwMGl8UGxheWZhaXIrRGlzcGxheTo0MDAsNDAwaSw3MDAsNzAwaSw5MDAsOTAwaXxSdWZpbmE6NDAwLDcwMCcpO1xuXG5cblxuXG4vLyRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICBcIlBvcHBpbnNcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbi8vJGZvbnQtZmFtaWx5LXNlcmlmOiAgICAgICBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgIFwiUGxheWZhaXIgRGlzcGxheVwiLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgbW9ub3NwYWNlIGZvbnRzIGZvciBgPGNvZGU+YCwgYDxrYmQ+YCwgYW5kIGA8cHJlPmAuXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgMTRweCAhZGVmYXVsdDtcbiRmb250LXNpemUtbGFyZ2U6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1zbWFsbDogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cblxuJGZvbnQtc2l6ZS1oMTogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMy42KSkgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWgyOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyKSkgIWRlZmF1bHQ7XG4vKiAkZm9udC1zaXplLWgxOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjYpKSAhZGVmYXVsdDsgLy8gfjM2cHhcbiRmb250LXNpemUtaDI6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuMTUpKSAhZGVmYXVsdDsgLy8gfjMwcHgqL1xuJGZvbnQtc2l6ZS1oMzogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjcpKSAhZGVmYXVsdDsgLy8gfjI0cHhcbiRmb250LXNpemUtaDQ6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1oNTogICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg2OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHggXG5cbi8vKiogVW5pdC1sZXNzIGBsaW5lLWhlaWdodGAgZm9yIHVzZSBpbiBjb21wb25lbnRzIGxpa2UgYnV0dG9ucy5cbi8vJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAxLjQyODU3MTQyOSAhZGVmYXVsdDsgLy8gMjAvMTRcbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgMS43NSAhZGVmYXVsdDtcbi8vKiogQ29tcHV0ZWQgXCJsaW5lLWhlaWdodFwiIChgZm9udC1zaXplYCAqIGBsaW5lLWhlaWdodGApIGZvciB1c2Ugd2l0aCBgbWFyZ2luYCwgYHBhZGRpbmdgLCBldGMuXG4kbGluZS1oZWlnaHQtY29tcHV0ZWQ6ICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSkpICFkZWZhdWx0OyAvLyB+MjBweFxuXG4vLyoqIEJ5IGRlZmF1bHQsIHRoaXMgaW5oZXJpdHMgZnJvbSB0aGUgYDxib2R5PmAuXG4vLyRoZWFkaW5ncy1mb250LWZhbWlseTogICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgJGZvbnQtZmFtaWx5LXNlcmlmICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgIDEuMyAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgJGdyYXktZGFya2VyICFkZWZhdWx0O1xuXG5cbi8vPT0gSWNvbm9ncmFwaHlcbi8vXG4vLyMjIFNwZWNpZnkgY3VzdG9tIGxvY2F0aW9uIGFuZCBmaWxlbmFtZSBvZiB0aGUgaW5jbHVkZWQgR2x5cGhpY29ucyBpY29uIGZvbnQuIFVzZWZ1bCBmb3IgdGhvc2UgaW5jbHVkaW5nIEJvb3RzdHJhcCB2aWEgQm93ZXIuXG5cbi8vKiogTG9hZCBmb250cyBmcm9tIHRoaXMgZGlyZWN0b3J5LlxuXG4vLyBbY29udmVydGVyXSBJZiAkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyIGlmIHVzZWQsIHByb3ZpZGUgcGF0aCByZWxhdGl2ZSB0byB0aGUgYXNzZXRzIGxvYWQgcGF0aC5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgYmVjYXVzZSBzb21lIGFzc2V0IGhlbHBlcnMsIHN1Y2ggYXMgU3Byb2NrZXRzLCBkbyBub3Qgd29yayB3aXRoIGZpbGUtcmVsYXRpdmUgcGF0aHMuXG4kaWNvbi1mb250LXBhdGg6IGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIFwiYm9vdHN0cmFwL1wiLCBcIi4uL2ZvbnRzL2Jvb3RzdHJhcC9cIikgIWRlZmF1bHQ7XG5cbi8vKiogRmlsZSBuYW1lIGZvciBhbGwgZm9udCBmaWxlcy5cbiRpY29uLWZvbnQtbmFtZTogICAgICAgICAgXCJnbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyXCIgIWRlZmF1bHQ7XG4vLyoqIEVsZW1lbnQgSUQgd2l0aGluIFNWRyBpY29uIGZpbGUuXG4kaWNvbi1mb250LXN2Zy1pZDogICAgICAgIFwiZ2x5cGhpY29uc19oYWxmbGluZ3NyZWd1bGFyXCIgIWRlZmF1bHQ7XG5cblxuLy89PSBDb21wb25lbnRzXG4vL1xuLy8jIyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuIFZhbHVlcyBiYXNlZCBvbiAxNHB4IHRleHQgYW5kIDEuNDI4IGxpbmUtaGVpZ2h0ICh+MjBweCB0byBzdGFydCkuXG5cbiRwYWRkaW5nLWJhc2UtdmVydGljYWw6ICAgICA2cHggIWRlZmF1bHQ7XG4kcGFkZGluZy1iYXNlLWhvcml6b250YWw6ICAgMTJweCAhZGVmYXVsdDtcblxuJHBhZGRpbmctbGFyZ2UtdmVydGljYWw6ICAgIDEwcHggIWRlZmF1bHQ7XG4kcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOiAgMTZweCAhZGVmYXVsdDtcblxuJHBhZGRpbmctc21hbGwtdmVydGljYWw6ICAgIDVweCAhZGVmYXVsdDtcbiRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw6ICAxMHB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy14cy12ZXJ0aWNhbDogICAgICAgMXB4ICFkZWZhdWx0O1xuJHBhZGRpbmcteHMtaG9yaXpvbnRhbDogICAgIDVweCAhZGVmYXVsdDtcblxuJGxpbmUtaGVpZ2h0LWxhcmdlOiAgICAgICAgIDEuMzMzMzMzMyAhZGVmYXVsdDsgLy8gZXh0cmEgZGVjaW1hbHMgZm9yIFdpbiA4LjEgQ2hyb21lXG4kbGluZS1oZWlnaHQtc21hbGw6ICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4vLyRib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICA0cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1iYXNlOiAgICAgICAgMHB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgIDZweCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAzcHggIWRlZmF1bHQ7XG5cbi8vKiogR2xvYmFsIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgYmFja2dyb3VuZCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vKiogV2lkdGggb2YgdGhlIGBib3JkZXJgIGZvciBnZW5lcmF0aW5nIGNhcmV0cyB0aGF0IGluZGljYXRvciBkcm9wZG93bnMuXG4kY2FyZXQtd2lkdGgtYmFzZTogICAgICAgICAgNHB4ICFkZWZhdWx0O1xuLy8qKiBDYXJldHMgaW5jcmVhc2Ugc2xpZ2h0bHkgaW4gc2l6ZSBmb3IgbGFyZ2VyIGNvbXBvbmVudHMuXG4kY2FyZXQtd2lkdGgtbGFyZ2U6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVGFibGVzXG4vL1xuLy8jIyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbi8vKiogUGFkZGluZyBmb3IgYDx0aD5gcyBhbmQgYDx0ZD5gcy5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgICAgOHB4ICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGZvciBjZWxscyBpbiBgLnRhYmxlLWNvbmRlbnNlZGAuXG4kdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZzogIDVweCAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYWxsIHRhYmxlcy5cbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1zdHJpcGVkYC5cbiR0YWJsZS1iZy1hY2NlbnQ6ICAgICAgICAgICAgICAgI2Y5ZjlmOSAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLWhvdmVyYC5cbiR0YWJsZS1iZy1ob3ZlcjogICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR0YWJsZS1iZy1hY3RpdmU6ICAgICAgICAgICAgICAgJHRhYmxlLWJnLWhvdmVyICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09IEJ1dHRvbnNcbi8vXG4vLyMjIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIG5vcm1hbCAhZGVmYXVsdDtcblxuJGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4kYnRuLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1wcmltYXJ5LWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXN1Y2Nlc3MtYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1pbmZvLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICAgZGFya2VuKCRidG4taW5mby1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi13YXJuaW5nLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRhbmdlci1iZzogICAgICAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKCRidG4tZGFuZ2VyLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuXG4vLz09IEZvcm1zXG4vL1xuLy8jI1xuXG4vLyoqIGA8aW5wdXQ+YCBiYWNrZ3JvdW5kIGNvbG9yXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBgPGlucHV0IGRpc2FibGVkPmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnLWRpc2FibGVkOiAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIGZvciBgPGlucHV0PmBzXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dD5gIGJvcmRlciBjb2xvclxuJGlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuLy8gVE9ETzogUmVuYW1lIGAkaW5wdXQtYm9yZGVyLXJhZGl1c2AgdG8gYCRpbnB1dC1ib3JkZXItcmFkaXVzLWJhc2VgIGluIHY0XG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbi8vIFRoaXMgaGFzIG5vIGVmZmVjdCBvbiBgPHNlbGVjdD5gcyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuLy8qKiBTbWFsbCBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciBpbnB1dHMgb24gZm9jdXNcbiRpbnB1dC1ib3JkZXItZm9jdXM6ICAgICAgICAgICAgICM2NmFmZTkgIWRlZmF1bHQ7XG5cbi8vKiogUGxhY2Vob2xkZXIgdGV4dCBjb2xvclxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtYmFzZTogICAgICAgICAgICAgICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtbGFyZ2U6ICAgICAgICAgICAgIChjZWlsKCRmb250LXNpemUtbGFyZ2UgKiAkbGluZS1oZWlnaHQtbGFyZ2UpICsgKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1zbWFsbDogICAgICAgICAgICAgKGZsb29yKCRmb250LXNpemUtc21hbGwgKiAkbGluZS1oZWlnaHQtc21hbGwpICsgKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcblxuLy8qKiBgLmZvcm0tZ3JvdXBgIG1hcmdpblxuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgMTVweCAhZGVmYXVsdDtcblxuJGxlZ2VuZC1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRsZWdlbmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXIgIWRlZmF1bHQ7XG5cbi8vKiogRGlzYWJsZWQgY3Vyc29yIGZvciBmb3JtIGNvbnRyb2xzIGFuZCBidXR0b25zLlxuJGN1cnNvci1kaXNhYmxlZDogICAgICAgICAgICAgICAgbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cblxuLy89PSBEcm9wZG93bnNcbi8vXG4vLyMjIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuLy8qKiBCYWNrZ3JvdW5kIGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAuXG4kZHJvcGRvd24tYm9yZGVyOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4xNSkgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAgKipmb3IgSUU4KiouXG4kZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOiAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBEaXZpZGVyIGNvbG9yIGZvciBiZXR3ZWVuIGRyb3Bkb3duIGl0ZW1zLlxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgI2U1ZTVlNSAhZGVmYXVsdDtcblxuLy8qKiBEcm9wZG93biBsaW5rIHRleHQgY29sb3IuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBjb2xvciBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGdyYXktZGFyaywgNSUpICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBiYWNrZ3JvdW5kIGZvciBkcm9wZG93biBsaW5rcy5cbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgaGVhZGVycyB3aXRoaW4gZHJvcGRvd24gbWVudXMuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBEZXByZWNhdGVkIGAkZHJvcGRvd24tY2FyZXQtY29sb3JgIGFzIG9mIHYzLjEuMFxuJGRyb3Bkb3duLWNhcmV0LWNvbG9yOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcblxuXG4vLy0tIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cbi8vXG4vLyBOb3RlOiBUaGVzZSB2YXJpYWJsZXMgYXJlIG5vdCBnZW5lcmF0ZWQgaW50byB0aGUgQ3VzdG9taXplci5cblxuJHppbmRleC1uYXZiYXI6ICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtbmF2YmFyLWZpeGVkOiAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tncm91bmQ6ICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcblxuXG4vLz09IE1lZGlhIHF1ZXJpZXMgYnJlYWtwb2ludHNcbi8vXG4vLyMjIERlZmluZSB0aGUgYnJlYWtwb2ludHMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIEV4dHJhIHNtYWxsIHNjcmVlbiAvIHBob25lXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHNgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi14czogICAgICAgICAgICAgICAgICA0ODBweCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14cy1taW5gIGFzIG9mIHYzLjIuMFxuJHNjcmVlbi14cy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXhzICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXBob25lYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tcGhvbmU6ICAgICAgICAgICAgICAgJHNjcmVlbi14cy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXNtYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tc206ICAgICAgICAgICAgICAgICAgNzY4cHggIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tc20gIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tdGFibGV0YCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tdGFibGV0OiAgICAgICAgICAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG5cbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbWRgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1tZDogICAgICAgICAgICAgICAgICA5OTJweCAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1tZCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tZGVza3RvcDogICAgICAgICAgICAgJHNjcmVlbi1tZC1taW4gIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGc6ICAgICAgICAgICAgICAgICAgMTIwMHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1sZy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLWxnICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1sZy1kZXNrdG9wOiAgICAgICAgICAkc2NyZWVuLWxnLW1pbiAhZGVmYXVsdDtcblxuLy8gU28gbWVkaWEgcXVlcmllcyBkb24ndCBvdmVybGFwIHdoZW4gcmVxdWlyZWQsIHByb3ZpZGUgYSBtYXhpbXVtXG4kc2NyZWVuLXhzLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLXNtLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1tZC1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbGctbWluIC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBHcmlkIHN5c3RlbVxuLy9cbi8vIyMgRGVmaW5lIHlvdXIgY3VzdG9tIHJlc3BvbnNpdmUgZ3JpZC5cblxuLy8qKiBOdW1iZXIgb2YgY29sdW1ucyBpbiB0aGUgZ3JpZC5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBiZXR3ZWVuIGNvbHVtbnMuIEdldHMgZGl2aWRlZCBpbiBoYWxmIGZvciB0aGUgbGVmdCBhbmQgcmlnaHQuXG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgMzBweDtcbi8vIE5hdmJhciBjb2xsYXBzZVxuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlY29tZXMgdW5jb2xsYXBzZWQuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50OiAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVnaW5zIGNvbGxhcHNpbmcuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heDogKCRncmlkLWZsb2F0LWJyZWFrcG9pbnQgLSAxKSAhZGVmYXVsdDtcblxuXG4vLz09IENvbnRhaW5lciBzaXplc1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XG4kY29udGFpbmVyLXRhYmxldDogICAgICAgICAgICAgKDcyMHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLXNtLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1zbTogICAgICAgICAgICAgICAgICRjb250YWluZXItdGFibGV0ICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuJGNvbnRhaW5lci1kZXNrdG9wOiAgICAgICAgICAgICg5NDBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1tZC1taW5gIGFuZCB1cC5cbiRjb250YWluZXItbWQ6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWRlc2t0b3AgIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wOiAgICAgICgxMTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbGctbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLWxnOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wICFkZWZhdWx0O1xuXG5cbi8vPT0gTmF2YmFyXG4vL1xuLy8jI1xuXG4vLyBCYXNpY3Mgb2YgYSBuYXZiYXJcbiRuYXZiYXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcbiRuYXZiYXItbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICFkZWZhdWx0O1xuLy8kbmF2YmFyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgIGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSkgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICgoJG5hdmJhci1oZWlnaHQgLSAkbGluZS1oZWlnaHQtY29tcHV0ZWQpIC8gMikgIWRlZmF1bHQ7XG4kbmF2YmFyLWNvbGxhcHNlLW1heC1oZWlnaHQ6ICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4vLyRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgI2Y4ZjhmOCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4vLyRuYXZiYXItZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgbGlua3NcbiRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAjNzc3ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbi8vJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciB0b2dnbGVcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICM4ODggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09PSBJbnZlcnRlZCBuYXZiYXJcbi8vIFJlc2V0IGludmVydGVkIG5hdmJhciBiYXNpY3NcbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzIyMiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXG4kbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciB0b2dnbGVcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IE5hdnNcbi8vXG4vLyMjXG5cbi8vPT09IFNoYXJlZCBuYXYgc3R5bGVzXG4kbmF2LWxpbmstcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vPT0gVGFic1xuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG4vLz09IFBpbGxzXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2luYXRpb25cbi8vXG4vLyMjXG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXI6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnZXJcbi8vXG4vLyMjXG5cbiRwYWdlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYm9yZGVyICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuJHBhZ2VyLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24taG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwYWdlci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdlci1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuJHBhZ2VyLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy89PSBKdW1ib3Ryb25cbi8vXG4vLyMjXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1jb2xvcjogICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWZvbnQtc2l6ZTogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjUpKSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1mb250LXNpemU6ICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDQuNSkpICFkZWZhdWx0O1xuXG5cbi8vPT0gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xuLy9cbi8vIyMgRGVmaW5lIGNvbG9ycyBmb3IgZm9ybSBmZWVkYmFjayBzdGF0ZXMgYW5kLCBieSBkZWZhdWx0LCBhbGVydHMuXG5cbiRzdGF0ZS1zdWNjZXNzLXRleHQ6ICAgICAgICAgICAgICMzYzc2M2QgIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAjZGZmMGQ4ICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXN1Y2Nlc3MtYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWluZm8tdGV4dDogICAgICAgICAgICAgICAgIzMxNzA4ZiAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICNkOWVkZjcgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtaW5mby1iZywgLTEwKSwgNyUpICFkZWZhdWx0O1xuXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS13YXJuaW5nLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1kYW5nZXItdGV4dDogICAgICAgICAgICAgICNhOTQ0NDIgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAjZjJkZWRlICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWRhbmdlci1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG5cbi8vPT0gVG9vbHRpcHNcbi8vXG4vLyMjXG5cbi8vKiogVG9vbHRpcCBtYXggd2lkdGhcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIHRleHQgY29sb3JcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgYmFja2dyb3VuZCBjb2xvclxuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuXG4vLyoqIFRvb2x0aXAgYXJyb3cgd2lkdGhcbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgIDVweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBhcnJvdyBjb2xvclxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBQb3BvdmVyc1xuLy9cbi8vIyNcblxuLy8qKiBQb3BvdmVyIGJvZHkgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG1heGltdW0gd2lkdGhcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYm9yZGVyIGNvbG9yXG4vLyRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGZhbGxiYWNrIGJvcmRlciBjb2xvclxuJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgdGl0bGUgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItdGl0bGUtYmc6ICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg6ICAgICAgICAgICAoJHBvcG92ZXItYXJyb3ctd2lkdGggKyAxKSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgICBmYWRlX2luKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgMC4wNSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgZmFsbGJhY2sgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOiAgZGFya2VuKCRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvciwgMjAlKSAhZGVmYXVsdDtcblxuXG4vLz09IExhYmVsc1xuLy9cbi8vIyNcblxuLy8qKiBEZWZhdWx0IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kZWZhdWx0LWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBQcmltYXJ5IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1wcmltYXJ5LWJnOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBJbmZvIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1pbmZvLWJnOiAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC13YXJuaW5nLWJnOiAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRhbmdlci1iZzogICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGxhYmVsIHRleHQgY29sb3JcbiRsYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgdGV4dCBjb2xvciBvZiBhIGxpbmtlZCBsYWJlbFxuJGxhYmVsLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IE1vZGFsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCB0aXRsZVxuJG1vZGFsLXRpdGxlLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgdGl0bGUgbGluZS1oZWlnaHRcbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgY29udGVudCBhcmVhXG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yXG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvciAqKmZvciBJRTgqKlxuJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG4vLyoqIE1vZGFsIGJhY2tkcm9wIGJhY2tncm91bmQgY29sb3JcbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGJhY2tkcm9wIG9wYWNpdHlcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgIC41ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAjZTVlNWU1ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBmb290ZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgOTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICA2MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmc6ICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICBib2xkICFkZWZhdWx0O1xuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLy89PSBQcm9ncmVzcyBiYXJzXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIHdob2xlIHByb2dyZXNzIGNvbXBvbmVudFxuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogUHJvZ3Jlc3MgYmFyIHRleHQgY29sb3JcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFZhcmlhYmxlIGZvciBzZXR0aW5nIHJvdW5kZWQgY29ybmVycyBvbiBwcm9ncmVzcyBiYXIuXG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZzogICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci13YXJuaW5nLWJnOiAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnOiAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4vLyoqIEluZm8gcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWluZm8tYmc6ICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcblxuXG4vLz09IExpc3QgZ3JvdXBcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvbiBgLmxpc3QtZ3JvdXAtaXRlbWBcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYC5saXN0LWdyb3VwLWl0ZW1gIGJvcmRlciBjb2xvclxuJGxpc3QtZ3JvdXAtYm9yZGVyOiAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBMaXN0IGdyb3VwIGJvcmRlciByYWRpdXNcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHNpbmdsZSBsaXN0IGl0ZW1zIG9uIGhvdmVyXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBvZiBhY3RpdmUgbGlzdCBlbGVtZW50c1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjogICAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjogIGxpZ2h0ZW4oJGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCA0MCUpICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWxpbmstY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I6ICAgJGxpc3QtZ3JvdXAtbGluay1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjogIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IFBhbmVsc1xuLy9cbi8vIyNcblxuJHBhbmVsLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1ib2R5LXBhZGRpbmc6ICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtaGVhZGluZy1wYWRkaW5nOiAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLXBhZGRpbmc6ICAgICAgICAkcGFuZWwtaGVhZGluZy1wYWRkaW5nICFkZWZhdWx0O1xuJHBhbmVsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGVsZW1lbnRzIHdpdGhpbiBwYW5lbHNcbiRwYW5lbC1pbm5lci1ib3JkZXI6ICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1wcmltYXJ5LXRleHQ6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1ib3JkZXI6ICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFuZWwtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZzogICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1oZWFkaW5nLWJnOiAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmc6ICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItaGVhZGluZy1iZzogICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBUaHVtYm5haWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgaW1hZ2VcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJhY2tncm91bmQgY29sb3JcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIGNvbG9yXG4kdGh1bWJuYWlsLWJvcmRlcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIHJhZGl1c1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBDdXN0b20gdGV4dCBjb2xvciBmb3IgdGh1bWJuYWlsIGNhcHRpb25zXG4kdGh1bWJuYWlsLWNhcHRpb24tY29sb3I6ICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBjYXB0aW9uXG4kdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZzogICA5cHggIWRlZmF1bHQ7XG5cblxuLy89PSBXZWxsc1xuLy9cbi8vIyNcblxuJHdlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR3ZWxsLWJvcmRlcjogICAgICAgICAgICAgICAgIGRhcmtlbigkd2VsbC1iZywgNyUpICFkZWZhdWx0O1xuXG5cbi8vPT0gQmFkZ2VzXG4vL1xuLy8jI1xuXG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBMaW5rZWQgYmFkZ2UgdGV4dCBjb2xvciBvbiBob3ZlclxuJGJhZGdlLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRiYWRnZS1iZzogICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIEJhZGdlIHRleHQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFkZ2UgYmFja2dyb3VuZCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAxICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgMTBweCAhZGVmYXVsdDtcblxuXG4vLz09IEJyZWFkY3J1bWJzXG4vL1xuLy8jI1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsOiAgIDhweCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmctaG9yaXpvbnRhbDogMTVweCAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiBiYWNrZ3JvdW5kIGNvbG9yXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgdGV4dCBjb2xvclxuJGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIG9mIGN1cnJlbnQgcGFnZSBpbiB0aGUgYnJlYWRjcnVtYlxuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogVGV4dHVhbCBzZXBhcmF0b3IgZm9yIGJldHdlZW4gYnJlYWRjcnVtYiBlbGVtZW50c1xuJGJyZWFkY3J1bWItc2VwYXJhdG9yOiAgICAgICAgICBcIi9cIiAhZGVmYXVsdDtcblxuXG4vLz09IENhcm91c2VsXG4vL1xuLy8jI1xuXG4vLyRjYXJvdXNlbC10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgwLDAsMCwuNikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgNjZweCAhZGVmYXVsdDtcbi8vJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgIDEgIWRlZmF1bHQ7XG4vLyRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8kY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDbG9zZVxuLy9cbi8vIyNcblxuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAwIDFweCAwICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDb2RlXG4vL1xuLy8jI1xuXG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAjYzcyNTRlICFkZWZhdWx0O1xuJGNvZGUtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y5ZjJmNCAhZGVmYXVsdDtcblxuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cbiRwcmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHByZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwZVxuLy9cbi8vIyNcblxuLy8qKiBIb3Jpem9udGFsIG9mZnNldCBmb3IgZm9ybXMgYW5kIGxpc3RzLlxuJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbDogMTgwcHggIWRlZmF1bHQ7XG4vLyoqIFRleHQgbXV0ZWQgY29sb3JcbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBBYmJyZXZpYXRpb25zIGFuZCBhY3JvbnltcyBib3JkZXIgY29sb3JcbiRhYmJyLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBIZWFkaW5ncyBzbWFsbCBjb2xvclxuJGhlYWRpbmdzLXNtYWxsLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgc21hbGwgY29sb3JcbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGZvbnQgc2l6ZVxuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGJvcmRlciBjb2xvclxuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogUGFnZSBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kcGFnZS1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBXaWR0aCBvZiBob3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3QgdGl0bGVzXG4kZGwtaG9yaXpvbnRhbC1vZmZzZXQ6ICAgICAgICAkY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCAuZGwtaG9yaXpvbnRhbCBiZWNvbWVzIGhvcml6b250YWxcbiRkbC1ob3Jpem9udGFsLWJyZWFrcG9pbnQ6ICAgICRncmlkLWZsb2F0LWJyZWFrcG9pbnQgIWRlZmF1bHQ7XG4vLyoqIEhvcml6b250YWwgbGluZSBjb2xvci5cbiRoci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4iLCIvKiFcbiAqIEJvb3RzdHJhcCB2My4zLjYgKGh0dHA6Ly9nZXRib290c3RyYXAuY29tKVxuICogQ29weXJpZ2h0IDIwMTEtMjAxNSBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxuICovXG5cbi8vIENvcmUgdmFyaWFibGVzIGFuZCBtaXhpbnNcbkBpbXBvcnQgXCJib290c3RyYXAvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL21peGluc1wiO1xuXG4vLyBSZXNldCBhbmQgZGVwZW5kZW5jaWVzXG5AaW1wb3J0IFwiYm9vdHN0cmFwL25vcm1hbGl6ZVwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wcmludFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9nbHlwaGljb25zXCI7XG5cbi8vIENvcmUgQ1NTXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3NjYWZmb2xkaW5nXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3R5cGVcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvY29kZVwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9ncmlkXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3RhYmxlc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9mb3Jtc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9idXR0b25zXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJib290c3RyYXAvY29tcG9uZW50LWFuaW1hdGlvbnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvZHJvcGRvd25zXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2J1dHRvbi1ncm91cHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvaW5wdXQtZ3JvdXBzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL25hdnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbmF2YmFyXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2JyZWFkY3J1bWJzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcGFnZXJcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbGFiZWxzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2JhZGdlc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9qdW1ib3Ryb25cIjtcbkBpbXBvcnQgXCJib290c3RyYXAvdGh1bWJuYWlsc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9hbGVydHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcHJvZ3Jlc3MtYmFyc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9tZWRpYVwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3BhbmVsc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9yZXNwb25zaXZlLWVtYmVkXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3dlbGxzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2Nsb3NlXCI7XG5cbi8vIENvbXBvbmVudHMgdy8gSmF2YVNjcmlwdFxuQGltcG9ydCBcImJvb3RzdHJhcC9tb2RhbHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvdG9vbHRpcFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wb3BvdmVyc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9jYXJvdXNlbFwiO1xuXG4vLyBVdGlsaXR5IGNsYXNzZXNcbkBpbXBvcnQgXCJib290c3RyYXAvdXRpbGl0aWVzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3Jlc3BvbnNpdmUtdXRpbGl0aWVzXCI7XG4iLCIkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyOiBmYWxzZSAhZGVmYXVsdDtcbi8vXG4vLyBWYXJpYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy89PSBDb2xvcnNcbi8vXG4vLyMjIEdyYXkgYW5kIGJyYW5kIGNvbG9ycyBmb3IgdXNlIGFjcm9zcyBCb290c3RyYXAuXG5cbiRncmF5LWJhc2U6ICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJGdyYXktZGFya2VyOiAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMTMuNSUpICFkZWZhdWx0OyAvLyAjMjIyXG4kZ3JheS1kYXJrOiAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAyMCUpICFkZWZhdWx0OyAgIC8vICMzMzNcbiRncmF5OiAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDMzLjUlKSAhZGVmYXVsdDsgLy8gIzU1NVxuJGdyYXktbGlnaHQ6ICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgNDYuNyUpICFkZWZhdWx0OyAvLyAjNzc3XG4kZ3JheS1saWdodGVyOiAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA5My41JSkgIWRlZmF1bHQ7IC8vICNlZWVcblxuJGJyYW5kLXByaW1hcnk6ICAgICAgICAgZGFya2VuKCM0MjhiY2EsIDYuNSUpICFkZWZhdWx0OyAvLyAjMzM3YWI3XG4kYnJhbmQtc3VjY2VzczogICAgICAgICAjNWNiODVjICFkZWZhdWx0O1xuJGJyYW5kLWluZm86ICAgICAgICAgICAgIzViYzBkZSAhZGVmYXVsdDtcbiRicmFuZC13YXJuaW5nOiAgICAgICAgICNmMGFkNGUgIWRlZmF1bHQ7XG4kYnJhbmQtZGFuZ2VyOiAgICAgICAgICAjZDk1MzRmICFkZWZhdWx0O1xuXG5cbi8vPT0gU2NhZmZvbGRpbmdcbi8vXG4vLyMjIFNldHRpbmdzIGZvciBzb21lIG9mIHRoZSBtb3N0IGdsb2JhbCBzdHlsZXMuXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgYDxib2R5PmAuXG4kYm9keS1iZzogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgdGV4dCBjb2xvciBvbiBgPGJvZHk+YC5cbiR0ZXh0LWNvbG9yOiAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG5cbi8vKiogR2xvYmFsIHRleHR1YWwgbGluayBjb2xvci5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGNvbG9yIHNldCB2aWEgYGRhcmtlbigpYCBmdW5jdGlvbi5cbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbi8vKiogTGluayBob3ZlciBkZWNvcmF0aW9uLlxuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogdW5kZXJsaW5lICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwb2dyYXBoeVxuLy9cbi8vIyMgRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiAgICAgICBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgbW9ub3NwYWNlIGZvbnRzIGZvciBgPGNvZGU+YCwgYDxrYmQ+YCwgYW5kIGA8cHJlPmAuXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgMTRweCAhZGVmYXVsdDtcbiRmb250LXNpemUtbGFyZ2U6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1zbWFsbDogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbiRmb250LXNpemUtaDE6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuNikpICFkZWZhdWx0OyAvLyB+MzZweFxuJGZvbnQtc2l6ZS1oMjogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi4xNSkpICFkZWZhdWx0OyAvLyB+MzBweFxuJGZvbnQtc2l6ZS1oMzogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjcpKSAhZGVmYXVsdDsgLy8gfjI0cHhcbiRmb250LXNpemUtaDQ6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1oNTogICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg2OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcblxuLy8qKiBVbml0LWxlc3MgYGxpbmUtaGVpZ2h0YCBmb3IgdXNlIGluIGNvbXBvbmVudHMgbGlrZSBidXR0b25zLlxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAxLjQyODU3MTQyOSAhZGVmYXVsdDsgLy8gMjAvMTRcbi8vKiogQ29tcHV0ZWQgXCJsaW5lLWhlaWdodFwiIChgZm9udC1zaXplYCAqIGBsaW5lLWhlaWdodGApIGZvciB1c2Ugd2l0aCBgbWFyZ2luYCwgYHBhZGRpbmdgLCBldGMuXG4kbGluZS1oZWlnaHQtY29tcHV0ZWQ6ICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSkpICFkZWZhdWx0OyAvLyB+MjBweFxuXG4vLyoqIEJ5IGRlZmF1bHQsIHRoaXMgaW5oZXJpdHMgZnJvbSB0aGUgYDxib2R5PmAuXG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgMS4xICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuXG5cbi8vPT0gSWNvbm9ncmFwaHlcbi8vXG4vLyMjIFNwZWNpZnkgY3VzdG9tIGxvY2F0aW9uIGFuZCBmaWxlbmFtZSBvZiB0aGUgaW5jbHVkZWQgR2x5cGhpY29ucyBpY29uIGZvbnQuIFVzZWZ1bCBmb3IgdGhvc2UgaW5jbHVkaW5nIEJvb3RzdHJhcCB2aWEgQm93ZXIuXG5cbi8vKiogTG9hZCBmb250cyBmcm9tIHRoaXMgZGlyZWN0b3J5LlxuXG4vLyBbY29udmVydGVyXSBJZiAkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyIGlmIHVzZWQsIHByb3ZpZGUgcGF0aCByZWxhdGl2ZSB0byB0aGUgYXNzZXRzIGxvYWQgcGF0aC5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgYmVjYXVzZSBzb21lIGFzc2V0IGhlbHBlcnMsIHN1Y2ggYXMgU3Byb2NrZXRzLCBkbyBub3Qgd29yayB3aXRoIGZpbGUtcmVsYXRpdmUgcGF0aHMuXG4kaWNvbi1mb250LXBhdGg6IGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIFwiYm9vdHN0cmFwL1wiLCBcIi4uL2ZvbnRzL2Jvb3RzdHJhcC9cIikgIWRlZmF1bHQ7XG5cbi8vKiogRmlsZSBuYW1lIGZvciBhbGwgZm9udCBmaWxlcy5cbiRpY29uLWZvbnQtbmFtZTogICAgICAgICAgXCJnbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyXCIgIWRlZmF1bHQ7XG4vLyoqIEVsZW1lbnQgSUQgd2l0aGluIFNWRyBpY29uIGZpbGUuXG4kaWNvbi1mb250LXN2Zy1pZDogICAgICAgIFwiZ2x5cGhpY29uc19oYWxmbGluZ3NyZWd1bGFyXCIgIWRlZmF1bHQ7XG5cblxuLy89PSBDb21wb25lbnRzXG4vL1xuLy8jIyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuIFZhbHVlcyBiYXNlZCBvbiAxNHB4IHRleHQgYW5kIDEuNDI4IGxpbmUtaGVpZ2h0ICh+MjBweCB0byBzdGFydCkuXG5cbiRwYWRkaW5nLWJhc2UtdmVydGljYWw6ICAgICA2cHggIWRlZmF1bHQ7XG4kcGFkZGluZy1iYXNlLWhvcml6b250YWw6ICAgMTJweCAhZGVmYXVsdDtcblxuJHBhZGRpbmctbGFyZ2UtdmVydGljYWw6ICAgIDEwcHggIWRlZmF1bHQ7XG4kcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOiAgMTZweCAhZGVmYXVsdDtcblxuJHBhZGRpbmctc21hbGwtdmVydGljYWw6ICAgIDVweCAhZGVmYXVsdDtcbiRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw6ICAxMHB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy14cy12ZXJ0aWNhbDogICAgICAgMXB4ICFkZWZhdWx0O1xuJHBhZGRpbmcteHMtaG9yaXpvbnRhbDogICAgIDVweCAhZGVmYXVsdDtcblxuJGxpbmUtaGVpZ2h0LWxhcmdlOiAgICAgICAgIDEuMzMzMzMzMyAhZGVmYXVsdDsgLy8gZXh0cmEgZGVjaW1hbHMgZm9yIFdpbiA4LjEgQ2hyb21lXG4kbGluZS1oZWlnaHQtc21hbGw6ICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1cy1iYXNlOiAgICAgICAgNHB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgIDZweCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAzcHggIWRlZmF1bHQ7XG5cbi8vKiogR2xvYmFsIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgYmFja2dyb3VuZCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vKiogV2lkdGggb2YgdGhlIGBib3JkZXJgIGZvciBnZW5lcmF0aW5nIGNhcmV0cyB0aGF0IGluZGljYXRvciBkcm9wZG93bnMuXG4kY2FyZXQtd2lkdGgtYmFzZTogICAgICAgICAgNHB4ICFkZWZhdWx0O1xuLy8qKiBDYXJldHMgaW5jcmVhc2Ugc2xpZ2h0bHkgaW4gc2l6ZSBmb3IgbGFyZ2VyIGNvbXBvbmVudHMuXG4kY2FyZXQtd2lkdGgtbGFyZ2U6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVGFibGVzXG4vL1xuLy8jIyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbi8vKiogUGFkZGluZyBmb3IgYDx0aD5gcyBhbmQgYDx0ZD5gcy5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgICAgOHB4ICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGZvciBjZWxscyBpbiBgLnRhYmxlLWNvbmRlbnNlZGAuXG4kdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZzogIDVweCAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYWxsIHRhYmxlcy5cbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1zdHJpcGVkYC5cbiR0YWJsZS1iZy1hY2NlbnQ6ICAgICAgICAgICAgICAgI2Y5ZjlmOSAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLWhvdmVyYC5cbiR0YWJsZS1iZy1ob3ZlcjogICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR0YWJsZS1iZy1hY3RpdmU6ICAgICAgICAgICAgICAgJHRhYmxlLWJnLWhvdmVyICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09IEJ1dHRvbnNcbi8vXG4vLyMjIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIG5vcm1hbCAhZGVmYXVsdDtcblxuJGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4kYnRuLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1wcmltYXJ5LWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXN1Y2Nlc3MtYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1pbmZvLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICAgZGFya2VuKCRidG4taW5mby1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi13YXJuaW5nLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRhbmdlci1iZzogICAgICAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKCRidG4tZGFuZ2VyLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuXG4vLz09IEZvcm1zXG4vL1xuLy8jI1xuXG4vLyoqIGA8aW5wdXQ+YCBiYWNrZ3JvdW5kIGNvbG9yXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBgPGlucHV0IGRpc2FibGVkPmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnLWRpc2FibGVkOiAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIGZvciBgPGlucHV0PmBzXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dD5gIGJvcmRlciBjb2xvclxuJGlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuLy8gVE9ETzogUmVuYW1lIGAkaW5wdXQtYm9yZGVyLXJhZGl1c2AgdG8gYCRpbnB1dC1ib3JkZXItcmFkaXVzLWJhc2VgIGluIHY0XG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbi8vIFRoaXMgaGFzIG5vIGVmZmVjdCBvbiBgPHNlbGVjdD5gcyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuLy8qKiBTbWFsbCBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciBpbnB1dHMgb24gZm9jdXNcbiRpbnB1dC1ib3JkZXItZm9jdXM6ICAgICAgICAgICAgICM2NmFmZTkgIWRlZmF1bHQ7XG5cbi8vKiogUGxhY2Vob2xkZXIgdGV4dCBjb2xvclxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtYmFzZTogICAgICAgICAgICAgICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtbGFyZ2U6ICAgICAgICAgICAgIChjZWlsKCRmb250LXNpemUtbGFyZ2UgKiAkbGluZS1oZWlnaHQtbGFyZ2UpICsgKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1zbWFsbDogICAgICAgICAgICAgKGZsb29yKCRmb250LXNpemUtc21hbGwgKiAkbGluZS1oZWlnaHQtc21hbGwpICsgKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcblxuLy8qKiBgLmZvcm0tZ3JvdXBgIG1hcmdpblxuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgMTVweCAhZGVmYXVsdDtcblxuJGxlZ2VuZC1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRsZWdlbmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXIgIWRlZmF1bHQ7XG5cbi8vKiogRGlzYWJsZWQgY3Vyc29yIGZvciBmb3JtIGNvbnRyb2xzIGFuZCBidXR0b25zLlxuJGN1cnNvci1kaXNhYmxlZDogICAgICAgICAgICAgICAgbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cblxuLy89PSBEcm9wZG93bnNcbi8vXG4vLyMjIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuLy8qKiBCYWNrZ3JvdW5kIGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAuXG4kZHJvcGRvd24tYm9yZGVyOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4xNSkgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAgKipmb3IgSUU4KiouXG4kZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOiAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBEaXZpZGVyIGNvbG9yIGZvciBiZXR3ZWVuIGRyb3Bkb3duIGl0ZW1zLlxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgI2U1ZTVlNSAhZGVmYXVsdDtcblxuLy8qKiBEcm9wZG93biBsaW5rIHRleHQgY29sb3IuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBjb2xvciBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGdyYXktZGFyaywgNSUpICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBiYWNrZ3JvdW5kIGZvciBkcm9wZG93biBsaW5rcy5cbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgaGVhZGVycyB3aXRoaW4gZHJvcGRvd24gbWVudXMuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBEZXByZWNhdGVkIGAkZHJvcGRvd24tY2FyZXQtY29sb3JgIGFzIG9mIHYzLjEuMFxuJGRyb3Bkb3duLWNhcmV0LWNvbG9yOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcblxuXG4vLy0tIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cbi8vXG4vLyBOb3RlOiBUaGVzZSB2YXJpYWJsZXMgYXJlIG5vdCBnZW5lcmF0ZWQgaW50byB0aGUgQ3VzdG9taXplci5cblxuJHppbmRleC1uYXZiYXI6ICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtbmF2YmFyLWZpeGVkOiAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tncm91bmQ6ICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcblxuXG4vLz09IE1lZGlhIHF1ZXJpZXMgYnJlYWtwb2ludHNcbi8vXG4vLyMjIERlZmluZSB0aGUgYnJlYWtwb2ludHMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIEV4dHJhIHNtYWxsIHNjcmVlbiAvIHBob25lXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHNgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi14czogICAgICAgICAgICAgICAgICA0ODBweCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14cy1taW5gIGFzIG9mIHYzLjIuMFxuJHNjcmVlbi14cy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXhzICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXBob25lYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tcGhvbmU6ICAgICAgICAgICAgICAgJHNjcmVlbi14cy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXNtYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tc206ICAgICAgICAgICAgICAgICAgNzY4cHggIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tc20gIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tdGFibGV0YCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tdGFibGV0OiAgICAgICAgICAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG5cbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbWRgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1tZDogICAgICAgICAgICAgICAgICA5OTJweCAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1tZCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tZGVza3RvcDogICAgICAgICAgICAgJHNjcmVlbi1tZC1taW4gIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGc6ICAgICAgICAgICAgICAgICAgMTIwMHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1sZy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLWxnICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1sZy1kZXNrdG9wOiAgICAgICAgICAkc2NyZWVuLWxnLW1pbiAhZGVmYXVsdDtcblxuLy8gU28gbWVkaWEgcXVlcmllcyBkb24ndCBvdmVybGFwIHdoZW4gcmVxdWlyZWQsIHByb3ZpZGUgYSBtYXhpbXVtXG4kc2NyZWVuLXhzLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLXNtLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1tZC1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbGctbWluIC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBHcmlkIHN5c3RlbVxuLy9cbi8vIyMgRGVmaW5lIHlvdXIgY3VzdG9tIHJlc3BvbnNpdmUgZ3JpZC5cblxuLy8qKiBOdW1iZXIgb2YgY29sdW1ucyBpbiB0aGUgZ3JpZC5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBiZXR3ZWVuIGNvbHVtbnMuIEdldHMgZGl2aWRlZCBpbiBoYWxmIGZvciB0aGUgbGVmdCBhbmQgcmlnaHQuXG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgMzBweCAhZGVmYXVsdDtcbi8vIE5hdmJhciBjb2xsYXBzZVxuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlY29tZXMgdW5jb2xsYXBzZWQuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50OiAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVnaW5zIGNvbGxhcHNpbmcuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heDogKCRncmlkLWZsb2F0LWJyZWFrcG9pbnQgLSAxKSAhZGVmYXVsdDtcblxuXG4vLz09IENvbnRhaW5lciBzaXplc1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XG4kY29udGFpbmVyLXRhYmxldDogICAgICAgICAgICAgKDcyMHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLXNtLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1zbTogICAgICAgICAgICAgICAgICRjb250YWluZXItdGFibGV0ICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuJGNvbnRhaW5lci1kZXNrdG9wOiAgICAgICAgICAgICg5NDBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1tZC1taW5gIGFuZCB1cC5cbiRjb250YWluZXItbWQ6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWRlc2t0b3AgIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wOiAgICAgICgxMTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbGctbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLWxnOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wICFkZWZhdWx0O1xuXG5cbi8vPT0gTmF2YmFyXG4vL1xuLy8jI1xuXG4vLyBCYXNpY3Mgb2YgYSBuYXZiYXJcbiRuYXZiYXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcbiRuYXZiYXItbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICFkZWZhdWx0O1xuJG5hdmJhci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICBmbG9vcigoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAoKCRuYXZiYXItaGVpZ2h0IC0gJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKSAvIDIpICFkZWZhdWx0O1xuJG5hdmJhci1jb2xsYXBzZS1tYXgtaGVpZ2h0OiAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuJG5hdmJhci1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAjNzc3ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJnOiAgICAgICAgICAgICAgICAjZjhmOGY4ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIGxpbmtzXG4kbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIGJyYW5kIGxhYmVsXG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvciwgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIHRvZ2dsZVxuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ob3Zlci1iZzogICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWljb24tYmFyLWJnOiAgICAgICAgIzg4OCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT09IEludmVydGVkIG5hdmJhclxuLy8gUmVzZXQgaW52ZXJ0ZWQgbmF2YmFyIGJhc2ljc1xuJG5hdmJhci1pbnZlcnNlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWxpZ2h0LCAxNSUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAjMjIyICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgbGlua3NcbiRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGJyYW5kIGxhYmVsXG4kbmF2YmFyLWludmVyc2UtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIHRvZ2dsZVxuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ob3Zlci1iZzogICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICAjMzMzICFkZWZhdWx0O1xuXG5cbi8vPT0gTmF2c1xuLy9cbi8vIyNcblxuLy89PT0gU2hhcmVkIG5hdiBzdHlsZXNcbiRuYXYtbGluay1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAxNXB4ICFkZWZhdWx0O1xuJG5hdi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4kbmF2LWRpc2FibGVkLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy89PSBUYWJzXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgICNkZGQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXYtdGFicy1qdXN0aWZpZWQtYWN0aXZlLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG5cbi8vPT0gUGlsbHNcbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnaW5hdGlvblxuLy9cbi8vIyNcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBQYWdlclxuLy9cbi8vIyNcblxuJHBhZ2VyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYmcgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kcGFnZXItaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHBhZ2VyLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG4kcGFnZXItZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IEp1bWJvdHJvblxuLy9cbi8vIyNcblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWNvbG9yOiAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tZm9udC1zaXplOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNSkpICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWZvbnQtc2l6ZTogICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogNC41KSkgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3JtIHN0YXRlcyBhbmQgYWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgY29sb3JzIGZvciBmb3JtIGZlZWRiYWNrIHN0YXRlcyBhbmQsIGJ5IGRlZmF1bHQsIGFsZXJ0cy5cblxuJHN0YXRlLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgICAgIzNjNzYzZCAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICNkZmYwZDggIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtc3VjY2Vzcy1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICAgICAjMzE3MDhmICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgI2Q5ZWRmNyAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1pbmZvLWJnLCAtMTApLCA3JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS13YXJuaW5nLXRleHQ6ICAgICAgICAgICAgICM4YTZkM2IgIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1iZzogICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXdhcm5pbmctYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWRhbmdlci10ZXh0OiAgICAgICAgICAgICAgI2E5NDQ0MiAhZGVmYXVsdDtcbiRzdGF0ZS1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICNmMmRlZGUgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtZGFuZ2VyLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cblxuLy89PSBUb29sdGlwc1xuLy9cbi8vIyNcblxuLy8qKiBUb29sdGlwIG1heCB3aWR0aFxuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgdGV4dCBjb2xvclxuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBiYWNrZ3JvdW5kIGNvbG9yXG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG5cbi8vKiogVG9vbHRpcCBhcnJvdyB3aWR0aFxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIGFycm93IGNvbG9yXG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuXG4vLz09IFBvcG92ZXJzXG4vL1xuLy8jI1xuXG4vLyoqIFBvcG92ZXIgYm9keSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgbWF4aW11bSB3aWR0aFxuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBib3JkZXIgY29sb3JcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgZmFsbGJhY2sgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciB0aXRsZSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci10aXRsZS1iZzogICAgICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgYXJyb3cgd2lkdGhcbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDogICAgICAgICAgICgkcG9wb3Zlci1hcnJvdy13aWR0aCArIDEpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICAgIGZhZGVfaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAwLjA1KSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBmYWxsYmFjayBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I6ICBkYXJrZW4oJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuXG5cbi8vPT0gTGFiZWxzXG4vL1xuLy8jI1xuXG4vLyoqIERlZmF1bHQgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRlZmF1bHQtYmc6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIFByaW1hcnkgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXByaW1hcnktYmc6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIFN1Y2Nlc3MgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4vLyoqIEluZm8gbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWluZm8tYmc6ICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4vLyoqIFdhcm5pbmcgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXdhcm5pbmctYmc6ICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgbGFiZWwgdGV4dCBjb2xvclxuJGxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIGEgbGlua2VkIGxhYmVsXG4kbGFiZWwtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gTW9kYWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIHRpdGxlXG4kbW9kYWwtdGl0bGUtcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCB0aXRsZSBsaW5lLWhlaWdodFxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBjb250ZW50IGFyZWFcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3JcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yICoqZm9yIElFOCoqXG4kbW9kYWwtY29udGVudC1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogTW9kYWwgYmFja2Ryb3AgYmFja2dyb3VuZCBjb2xvclxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgYmFja2Ryb3Agb3BhY2l0eVxuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgLjUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGhlYWRlciBib3JkZXIgY29sb3JcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICNlNWU1ZTUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGZvb3RlciBib3JkZXIgY29sb3JcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICA5MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgIDYwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBBbGVydHNcbi8vXG4vLyMjIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZzogICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgIGJvbGQgIWRlZmF1bHQ7XG5cbiRhbGVydC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LWluZm8tYmc6ICAgICAgICAgICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XG4kYWxlcnQtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtd2FybmluZy1iZzogICAgICAgICAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1kYW5nZXItYmc6ICAgICAgICAgICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcblxuXG4vLz09IFByb2dyZXNzIGJhcnNcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgd2hvbGUgcHJvZ3Jlc3MgY29tcG9uZW50XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBQcm9ncmVzcyBiYXIgdGV4dCBjb2xvclxuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVmFyaWFibGUgZm9yIHNldHRpbmcgcm91bmRlZCBjb3JuZXJzIG9uIHByb2dyZXNzIGJhci5cbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1zdWNjZXNzLWJnOiAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4vLyoqIFdhcm5pbmcgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXdhcm5pbmctYmc6ICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbi8vKiogRGFuZ2VyIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1kYW5nZXItYmc6ICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbi8vKiogSW5mbyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItaW5mby1iZzogICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuXG5cbi8vPT0gTGlzdCBncm91cFxuLy9cbi8vIyNcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9uIGAubGlzdC1ncm91cC1pdGVtYFxuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBgLmxpc3QtZ3JvdXAtaXRlbWAgYm9yZGVyIGNvbG9yXG4kbGlzdC1ncm91cC1ib3JkZXI6ICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4vLyoqIExpc3QgZ3JvdXAgYm9yZGVyIHJhZGl1c1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2Ygc2luZ2xlIGxpc3QgaXRlbXMgb24gaG92ZXJcbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogQm9yZGVyIGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGVsZW1lbnRzXG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyOiAgICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yOiAgbGlnaHRlbigkbGlzdC1ncm91cC1hY3RpdmUtYmcsIDQwJSkgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtbGluay1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjogICAkbGlzdC1ncm91cC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1oZWFkaW5nLWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFuZWxzXG4vL1xuLy8jI1xuXG4kcGFuZWwtYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhbmVsLWJvZHktcGFkZGluZzogICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRwYW5lbC1oZWFkaW5nLXBhZGRpbmc6ICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRwYW5lbC1mb290ZXItcGFkZGluZzogICAgICAgICRwYW5lbC1oZWFkaW5nLXBhZGRpbmcgIWRlZmF1bHQ7XG4kcGFuZWwtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgZWxlbWVudHMgd2l0aGluIHBhbmVsc1xuJHBhbmVsLWlubmVyLWJvcmRlcjogICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1mb290ZXItYmc6ICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1kZWZhdWx0LXRleHQ6ICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcGFuZWwtZGVmYXVsdC1ib3JkZXI6ICAgICAgICAjZGRkICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtaGVhZGluZy1iZzogICAgI2Y1ZjVmNSAhZGVmYXVsdDtcblxuJHBhbmVsLXByaW1hcnktdGV4dDogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWJvcmRlcjogICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhbmVsLXByaW1hcnktaGVhZGluZy1iZzogICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYW5lbC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1pbmZvLWhlYWRpbmctYmc6ICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZzogICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnOiAgICAgJHN0YXRlLWRhbmdlci1iZyAhZGVmYXVsdDtcblxuXG4vLz09IFRodW1ibmFpbHNcbi8vXG4vLyMjXG5cbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBpbWFnZVxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgNHB4ICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYmFja2dyb3VuZCBjb2xvclxuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBib3JkZXIgY29sb3JcbiR0aHVtYm5haWwtYm9yZGVyOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBib3JkZXIgcmFkaXVzXG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEN1c3RvbSB0ZXh0IGNvbG9yIGZvciB0aHVtYm5haWwgY2FwdGlvbnNcbiR0aHVtYm5haWwtY2FwdGlvbi1jb2xvcjogICAgICR0ZXh0LWNvbG9yICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGNhcHRpb25cbiR0aHVtYm5haWwtY2FwdGlvbi1wYWRkaW5nOiAgIDlweCAhZGVmYXVsdDtcblxuXG4vLz09IFdlbGxzXG4vL1xuLy8jI1xuXG4kd2VsbC1iZzogICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHdlbGwtYm9yZGVyOiAgICAgICAgICAgICAgICAgZGFya2VuKCR3ZWxsLWJnLCA3JSkgIWRlZmF1bHQ7XG5cblxuLy89PSBCYWRnZXNcbi8vXG4vLyMjXG5cbiRiYWRnZS1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIExpbmtlZCBiYWRnZSB0ZXh0IGNvbG9yIG9uIGhvdmVyXG4kYmFkZ2UtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xuJGJhZGdlLWJnOiAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogQmFkZ2UgdGV4dCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBCYWRnZSBiYWNrZ3JvdW5kIGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xuJGJhZGdlLWFjdGl2ZS1iZzogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1saW5lLWhlaWdodDogICAgICAgICAgIDEgIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAxMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQnJlYWRjcnVtYnNcbi8vXG4vLyMjXG5cbiRicmVhZGNydW1iLXBhZGRpbmctdmVydGljYWw6ICAgOHB4ICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy1ob3Jpem9udGFsOiAxNXB4ICFkZWZhdWx0O1xuLy8qKiBCcmVhZGNydW1iIGJhY2tncm91bmQgY29sb3JcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiB0ZXh0IGNvbG9yXG4kYnJlYWRjcnVtYi1jb2xvcjogICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgY3VycmVudCBwYWdlIGluIHRoZSBicmVhZGNydW1iXG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBUZXh0dWFsIHNlcGFyYXRvciBmb3IgYmV0d2VlbiBicmVhZGNydW1iIGVsZW1lbnRzXG4kYnJlYWRjcnVtYi1zZXBhcmF0b3I6ICAgICAgICAgIFwiL1wiICFkZWZhdWx0O1xuXG5cbi8vPT0gQ2Fyb3VzZWxcbi8vXG4vLyMjXG5cbiRjYXJvdXNlbC10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgwLDAsMCwuNikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENsb3NlXG4vL1xuLy8jI1xuXG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgIDAgMXB4IDAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENvZGVcbi8vXG4vLyMjXG5cbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICNjNzI1NGUgIWRlZmF1bHQ7XG4kY29kZS1iZzogICAgICAgICAgICAgICAgICAgICAjZjlmMmY0ICFkZWZhdWx0O1xuXG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuJHByZS1iZzogICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcHJlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBUeXBlXG4vL1xuLy8jI1xuXG4vLyoqIEhvcml6b250YWwgb2Zmc2V0IGZvciBmb3JtcyBhbmQgbGlzdHMuXG4kY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsOiAxODBweCAhZGVmYXVsdDtcbi8vKiogVGV4dCBtdXRlZCBjb2xvclxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEFiYnJldmlhdGlvbnMgYW5kIGFjcm9ueW1zIGJvcmRlciBjb2xvclxuJGFiYnItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEhlYWRpbmdzIHNtYWxsIGNvbG9yXG4kaGVhZGluZ3Mtc21hbGwtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBzbWFsbCBjb2xvclxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgZm9udCBzaXplXG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgYm9yZGVyIGNvbG9yXG4kYmxvY2txdW90ZS1ib3JkZXItY29sb3I6ICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBQYWdlIGhlYWRlciBib3JkZXIgY29sb3JcbiRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFdpZHRoIG9mIGhvcml6b250YWwgZGVzY3JpcHRpb24gbGlzdCB0aXRsZXNcbiRkbC1ob3Jpem9udGFsLW9mZnNldDogICAgICAgICRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWwgIWRlZmF1bHQ7XG4vLyoqIFBvaW50IGF0IHdoaWNoIC5kbC1ob3Jpem9udGFsIGJlY29tZXMgaG9yaXpvbnRhbFxuJGRsLWhvcml6b250YWwtYnJlYWtwb2ludDogICAgJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAhZGVmYXVsdDtcbi8vKiogSG9yaXpvbnRhbCBsaW5lIGNvbG9yLlxuJGhyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiIsIi8vIE1peGluc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0IFwibWl4aW5zL2hpZGUtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy9vcGFjaXR5XCI7XG5AaW1wb3J0IFwibWl4aW5zL2ltYWdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xhYmVsc1wiO1xuQGltcG9ydCBcIm1peGlucy9yZXNldC1maWx0ZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc3BvbnNpdmUtdmlzaWJpbGl0eVwiO1xuQGltcG9ydCBcIm1peGlucy9zaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYi1mb2N1c1wiO1xuQGltcG9ydCBcIm1peGlucy9yZXNldC10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtZW1waGFzaXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1vdmVyZmxvd1wiO1xuQGltcG9ydCBcIm1peGlucy92ZW5kb3ItcHJlZml4ZXNcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcIm1peGlucy9hbGVydHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYnV0dG9uc1wiO1xuQGltcG9ydCBcIm1peGlucy9wYW5lbHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIm1peGlucy9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi1kaXZpZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zvcm1zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Byb2dyZXNzLWJhclwiO1xuQGltcG9ydCBcIm1peGlucy90YWJsZS1yb3dcIjtcblxuLy8gU2tpbnNcbkBpbXBvcnQgXCJtaXhpbnMvYmFja2dyb3VuZC12YXJpYW50XCI7XG5AaW1wb3J0IFwibWl4aW5zL2JvcmRlci1yYWRpdXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JhZGllbnRzXCI7XG5cbi8vIExheW91dFxuQGltcG9ydCBcIm1peGlucy9jbGVhcmZpeFwiO1xuQGltcG9ydCBcIm1peGlucy9jZW50ZXItYmxvY2tcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LXZlcnRpY2FsLWFsaWduXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWQtZnJhbWV3b3JrXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWRcIjtcbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuLy9cbi8vIEhlYWRzIHVwISB2MyBsYXVuY2hlZCB3aXRoIG9ubHkgYC5oaWRlLXRleHQoKWAsIGJ1dCBwZXIgb3VyIHBhdHRlcm4gZm9yXG4vLyBtaXhpbnMgYmVpbmcgcmV1c2VkIGFzIGNsYXNzZXMgd2l0aCB0aGUgc2FtZSBuYW1lLCB0aGlzIGRvZXNuJ3QgaG9sZCB1cC4gQXNcbi8vIG9mIHYzLjAuMSB3ZSBoYXZlIGFkZGVkIGAudGV4dC1oaWRlKClgIGFuZCBkZXByZWNhdGVkIGAuaGlkZS10ZXh0KClgLlxuLy9cbi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvY29tbWl0L2FhMDM5NmVhZTc1N1xuXG4vLyBEZXByZWNhdGVkIGFzIG9mIHYzLjAuMSAoaGFzIGJlZW4gcmVtb3ZlZCBpbiB2NClcbkBtaXhpbiBoaWRlLXRleHQoKSB7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBOZXcgbWl4aW4gdG8gdXNlIGFzIG9mIHYzLjAuMVxuQG1peGluIHRleHQtaGlkZSgpIHtcbiAgQGluY2x1ZGUgaGlkZS10ZXh0O1xufVxuIiwiLy8gT3BhY2l0eVxuXG5AbWl4aW4gb3BhY2l0eSgkb3BhY2l0eSkge1xuICBvcGFjaXR5OiAkb3BhY2l0eTtcbiAgLy8gSUU4IGZpbHRlclxuICAkb3BhY2l0eS1pZTogKCRvcGFjaXR5ICogMTAwKTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PSRvcGFjaXR5LWllKTtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuQG1peGluIGltZy1yZXNwb25zaXZlKCRkaXNwbGF5OiBibG9jaykge1xuICBkaXNwbGF5OiAkZGlzcGxheTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBoZWlnaHQ6IGF1dG87IC8vIFBhcnQgMjogU2NhbGUgdGhlIGhlaWdodCBhY2NvcmRpbmcgdG8gdGhlIHdpZHRoLCBvdGhlcndpc2UgeW91IGdldCBzdHJldGNoaW5nXG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLiBOb3RlIHRoYXQgdGhlXG4vLyBzcGVsbGluZyBvZiBgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvYCBpcyBpbnRlbnRpb25hbC5cbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWltYWdlLXBhdGgoXCIjeyRmaWxlLTF4fVwiKSwgXCIjeyRmaWxlLTF4fVwiKSk7XG5cbiAgQG1lZGlhXG4gIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggICBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMi8xKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDJkcHB4KSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMnh9XCIpLCBcIiN7JGZpbGUtMnh9XCIpKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xuICB9XG59XG4iLCIvLyBMYWJlbHNcblxuQG1peGluIGxhYmVsLXZhcmlhbnQoJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICAmW2hyZWZdIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJlc2V0IGZpbHRlcnMgZm9yIElFXG4vL1xuLy8gV2hlbiB5b3UgbmVlZCB0byByZW1vdmUgYSBncmFkaWVudCBiYWNrZ3JvdW5kLCBkbyBub3QgZm9yZ2V0IHRvIHVzZSB0aGlzIHRvIHJlc2V0XG4vLyB0aGUgSUUgZmlsdGVyIGZvciBJRTkgYW5kIGJlbG93LlxuXG5AbWl4aW4gcmVzZXQtZmlsdGVyKCkge1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkID0gZmFsc2UpO1xufVxuIiwiLy8gUmVzaXplIGFueXRoaW5nXG5cbkBtaXhpbiByZXNpemFibGUoJGRpcmVjdGlvbikge1xuICByZXNpemU6ICRkaXJlY3Rpb247IC8vIE9wdGlvbnM6IGhvcml6b250YWwsIHZlcnRpY2FsLCBib3RoXG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcbn1cbiIsIi8vIFJlc3BvbnNpdmUgdXRpbGl0aWVzXG5cbi8vXG4vLyBNb3JlIGVhc2lseSBpbmNsdWRlIGFsbCB0aGUgc3RhdGVzIGZvciByZXNwb25zaXZlLXV0aWxpdGllcy5sZXNzLlxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZSN7JHBhcmVudH0gIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0ciN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgjeyRwYXJlbnR9LFxuICB0ZCN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBTaXppbmcgc2hvcnRjdXRzXG5cbkBtaXhpbiBzaXplKCR3aWR0aCwgJGhlaWdodCkge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG59XG5cbkBtaXhpbiBzcXVhcmUoJHNpemUpIHtcbiAgQGluY2x1ZGUgc2l6ZSgkc2l6ZSwgJHNpemUpO1xufVxuIiwiLy8gV2ViS2l0LXN0eWxlIGZvY3VzXG5cbkBtaXhpbiB0YWItZm9jdXMoKSB7XG4gIC8vIERlZmF1bHRcbiAgb3V0bGluZTogdGhpbiBkb3R0ZWQ7XG4gIC8vIFdlYktpdFxuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQoKSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC13cmFwOiBub3JtYWw7XG59XG4iLCIvLyBUeXBvZ3JhcGh5XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuICBhI3skcGFyZW50fTpob3ZlcixcbiAgYSN7JHBhcmVudH06Zm9jdXMge1xuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBUZXh0IG92ZXJmbG93XG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LW92ZXJmbG93KCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIFZlbmRvciBQcmVmaXhlc1xuLy9cbi8vIEFsbCB2ZW5kb3IgbWl4aW5zIGFyZSBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBkdWUgdG8gdGhlIGludHJvZHVjdGlvbiBvZlxuLy8gQXV0b3ByZWZpeGVyIGluIG91ciBHcnVudGZpbGUuIFRoZXkgaGF2ZSBiZWVuIHJlbW92ZWQgaW4gdjQuXG5cbi8vIC0gQW5pbWF0aW9uc1xuLy8gLSBCYWNrZmFjZSB2aXNpYmlsaXR5XG4vLyAtIEJveCBzaGFkb3dcbi8vIC0gQm94IHNpemluZ1xuLy8gLSBDb250ZW50IGNvbHVtbnNcbi8vIC0gSHlwaGVuc1xuLy8gLSBQbGFjZWhvbGRlciB0ZXh0XG4vLyAtIFRyYW5zZm9ybWF0aW9uc1xuLy8gLSBUcmFuc2l0aW9uc1xuLy8gLSBVc2VyIFNlbGVjdFxuXG5cbi8vIEFuaW1hdGlvbnNcbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbiAgICAgICAtby1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1uYW1lKCRuYW1lKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbn1cbkBtaXhpbiBhbmltYXRpb24tZHVyYXRpb24oJGR1cmF0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1kZWxheSgkZGVsYXkpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbiAgICAgICAgICBhbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbn1cbkBtaXhpbiBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50KCRpdGVyYXRpb24tY291bnQpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xuICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1maWxsLW1vZGUoJGZpbGwtbW9kZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG4gICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcbn1cblxuLy8gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gUHJldmVudCBicm93c2VycyBmcm9tIGZsaWNrZXJpbmcgd2hlbiB1c2luZyBDU1MgM0QgdHJhbnNmb3Jtcy5cbi8vIERlZmF1bHQgdmFsdWUgaXMgYHZpc2libGVgLCBidXQgY2FuIGJlIGNoYW5nZWQgdG8gYGhpZGRlbmBcblxuQG1peGluIGJhY2tmYWNlLXZpc2liaWxpdHkoJHZpc2liaWxpdHkpIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbiAgICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbn1cblxuLy8gRHJvcCBzaGFkb3dzXG4vL1xuLy8gTm90ZTogRGVwcmVjYXRlZCBgLmJveC1zaGFkb3coKWAgYXMgb2YgdjMuMS4wIHNpbmNlIGFsbCBvZiBCb290c3RyYXAnc1xuLy8gc3VwcG9ydGVkIGJyb3dzZXJzIHRoYXQgaGF2ZSBib3ggc2hhZG93IGNhcGFiaWxpdGllcyBub3cgc3VwcG9ydCBpdC5cblxuQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICAtd2Via2l0LWJveC1zaGFkb3c6ICRzaGFkb3c7IC8vIGlPUyA8NC4zICYgQW5kcm9pZCA8NC4xXG4gICAgICAgICAgYm94LXNoYWRvdzogJHNoYWRvdztcbn1cblxuLy8gQm94IHNpemluZ1xuQG1peGluIGJveC1zaXppbmcoJGJveG1vZGVsKSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgICAtbW96LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgICAgICBib3gtc2l6aW5nOiAkYm94bW9kZWw7XG59XG5cbi8vIENTUzMgQ29udGVudCBDb2x1bW5zXG5AbWl4aW4gY29udGVudC1jb2x1bW5zKCRjb2x1bW4tY291bnQsICRjb2x1bW4tZ2FwOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLXdlYmtpdC1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gICAgIC1tb3otY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAgICAgIGNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgLXdlYmtpdC1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbiAgICAgLW1vei1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbiAgICAgICAgICBjb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbn1cblxuLy8gT3B0aW9uYWwgaHlwaGVuYXRpb25cbkBtaXhpbiBoeXBoZW5zKCRtb2RlOiBhdXRvKSB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiAkbW9kZTtcbiAgICAgLW1vei1oeXBoZW5zOiAkbW9kZTtcbiAgICAgIC1tcy1oeXBoZW5zOiAkbW9kZTsgLy8gSUUxMCtcbiAgICAgICAtby1oeXBoZW5zOiAkbW9kZTtcbiAgICAgICAgICBoeXBoZW5zOiAkbW9kZTtcbn1cblxuLy8gUGxhY2Vob2xkZXIgdGV4dFxuQG1peGluIHBsYWNlaG9sZGVyKCRjb2xvcjogJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyKSB7XG4gIC8vIEZpcmVmb3hcbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBvcGFjaXR5OiAxOyAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNlxuICB9XG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBJbnRlcm5ldCBFeHBsb3JlciAxMCtcbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciAgeyBjb2xvcjogJGNvbG9yOyB9IC8vIFNhZmFyaSBhbmQgQ2hyb21lXG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uc1xuQG1peGluIHNjYWxlKCRyYXRpby4uLikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbn1cblxuQG1peGluIHNjYWxlWCgkcmF0aW8pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xufVxuQG1peGluIHNjYWxlWSgkcmF0aW8pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xufVxuQG1peGluIHNrZXcoJHgsICR5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvNDg4NTsgSUU5K1xuICAgICAgIC1vLXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG59XG5AbWl4aW4gdHJhbnNsYXRlKCR4LCAkeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG59XG5AbWl4aW4gdHJhbnNsYXRlM2QoJHgsICR5LCAkeikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcbn1cbkBtaXhpbiByb3RhdGUoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG59XG5AbWl4aW4gcm90YXRlWCgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG59XG5AbWl4aW4gcm90YXRlWSgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG59XG5AbWl4aW4gcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgICAgICAgIHBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG59XG5AbWl4aW4gcGVyc3BlY3RpdmUtb3JpZ2luKCRwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xuICAgICAtbW96LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xuICAgICAgICAgIHBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xufVxuQG1peGluIHRyYW5zZm9ybS1vcmlnaW4oJG9yaWdpbikge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luOyAvLyBJRTkgb25seVxuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG59XG5cblxuLy8gVHJhbnNpdGlvbnNcblxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICAgICAtby10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXByb3BlcnR5KCR0cmFuc2l0aW9uLXByb3BlcnR5Li4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1kZWxheSgkdHJhbnNpdGlvbi1kZWxheSkge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xufVxuQG1peGluIHRyYW5zaXRpb24tZHVyYXRpb24oJHRyYW5zaXRpb24tZHVyYXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10cmFuc2Zvcm0oJHRyYW5zaXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xufVxuXG5cbi8vIFVzZXIgc2VsZWN0XG4vLyBGb3Igc2VsZWN0aW5nIHRleHQgb24gdGhlIHBhZ2VcblxuQG1peGluIHVzZXItc2VsZWN0KCRzZWxlY3QpIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogJHNlbGVjdDtcbiAgICAgLW1vei11c2VyLXNlbGVjdDogJHNlbGVjdDtcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogJHNlbGVjdDsgLy8gSUUxMCtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogJHNlbGVjdDtcbn1cbiIsIi8vIEFsZXJ0c1xuXG5AbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJHRleHQtY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuXG4gIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xuICB9XG4gIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogZGFya2VuKCR0ZXh0LWNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRjb2xvciwgJGJhY2tncm91bmQsICRib3JkZXIpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5vcGVuID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAxMiUpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTclKTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAyNSUpO1xuICAgIH1cbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5vcGVuID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG5cbiAgLmJhZGdlIHtcbiAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG59XG4iLCIvLyBQYW5lbHNcblxuQG1peGluIHBhbmVsLXZhcmlhbnQoJGJvcmRlciwgJGhlYWRpbmctdGV4dC1jb2xvciwgJGhlYWRpbmctYmctY29sb3IsICRoZWFkaW5nLWJvcmRlcikge1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJiA+IC5wYW5lbC1oZWFkaW5nIHtcbiAgICBjb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRoZWFkaW5nLWJvcmRlcjtcblxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgfVxuICB9XG4gICYgPiAucGFuZWwtZm9vdGVyIHtcbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG59XG4iLCIvLyBQYWdpbmF0aW9uXG5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgPiBsaSB7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmLCBidXR0b24mIHRvIGEubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSwgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX1cbiAgfVxuXG4gIGEubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICB9XG4gICAgJi5hY3RpdmUsXG4gICAgJi5hY3RpdmU6aG92ZXIsXG4gICAgJi5hY3RpdmU6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogI2U1ZTVlNSkge1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpIC0gMSkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xufVxuIiwiLy8gRm9ybSB2YWxpZGF0aW9uIHN0YXRlc1xuLy9cbi8vIFVzZWQgaW4gZm9ybXMubGVzcyB0byBnZW5lcmF0ZSB0aGUgZm9ybSB2YWxpZGF0aW9uIENTUyBmb3Igd2FybmluZ3MsIGVycm9ycyxcbi8vIGFuZCBzdWNjZXNzZXMuXG5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkdGV4dC1jb2xvcjogIzU1NSwgJGJvcmRlci1jb2xvcjogI2NjYywgJGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjUpIHtcbiAgLy8gQ29sb3IgdGhlIGxhYmVsIGFuZCBoZWxwIHRleHRcbiAgLmhlbHAtYmxvY2ssXG4gIC5jb250cm9sLWxhYmVsLFxuICAucmFkaW8sXG4gIC5jaGVja2JveCxcbiAgLnJhZGlvLWlubGluZSxcbiAgLmNoZWNrYm94LWlubGluZSxcbiAgJi5yYWRpbyBsYWJlbCxcbiAgJi5jaGVja2JveCBsYWJlbCxcbiAgJi5yYWRpby1pbmxpbmUgbGFiZWwsXG4gICYuY2hlY2tib3gtaW5saW5lIGxhYmVsICB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB9XG4gIC8vIFNldCB0aGUgYm9yZGVyIGFuZCBib3ggc2hhZG93IG9uIHNwZWNpZmljIGlucHV0cyB0byBtYXRjaFxuICAuZm9ybS1jb250cm9sIHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSk7IC8vIFJlZGVjbGFyZSBzbyB0cmFuc2l0aW9ucyB3b3JrXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLWNvbG9yLCAxMCUpO1xuICAgICAgJHNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksIDAgMCA2cHggbGlnaHRlbigkYm9yZGVyLWNvbG9yLCAyMCUpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkc2hhZG93KTtcbiAgICB9XG4gIH1cbiAgLy8gU2V0IHZhbGlkYXRpb24gc3RhdGVzIGFsc28gZm9yIGFkZG9uc1xuICAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XG4gIH1cbiAgLy8gT3B0aW9uYWwgZmVlZGJhY2sgaWNvblxuICAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtYm9yZGVyLWZvY3VzYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygkY29sb3I6ICRpbnB1dC1ib3JkZXItZm9jdXMpIHtcbiAgJGNvbG9yLXJnYmE6IHJnYmEocmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKSwgLjYpO1xuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksIDAgMCA4cHggJGNvbG9yLXJnYmEpO1xuICB9XG59XG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBSZWxhdGl2ZSB0ZXh0IHNpemUsIHBhZGRpbmcsIGFuZCBib3JkZXItcmFkaWkgY2hhbmdlcyBmb3IgZm9ybSBjb250cm9scy4gRm9yXG4vLyBob3Jpem9udGFsIHNpemluZywgd3JhcCBjb250cm9scyBpbiB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuIGA8c2VsZWN0PmBcbi8vIGVsZW1lbnQgZ2V0cyBzcGVjaWFsIGxvdmUgYmVjYXVzZSBpdCdzIHNwZWNpYWwsIGFuZCB0aGF0J3MgYSBmYWN0IVxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gaW5wdXQtc2l6ZSgkcGFyZW50LCAkaW5wdXQtaGVpZ2h0LCAkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICAjeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIHNlbGVjdCN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gIHRleHRhcmVhI3skcGFyZW50fSxcbiAgc2VsZWN0W211bHRpcGxlXSN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuIiwiLy8gUHJvZ3Jlc3MgYmFyc1xuXG5AbWl4aW4gcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICAvLyBEZXByZWNhdGVkIHBhcmVudCBjbGFzcyByZXF1aXJlbWVudCBhcyBvZiB2My4yLjBcbiAgLnByb2dyZXNzLXN0cmlwZWQgJiB7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZDtcbiAgfVxufVxuIiwiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZSA+IHRoZWFkID4gdHIsXG4gIC50YWJsZSA+IHRib2R5ID4gdHIsXG4gIC50YWJsZSA+IHRmb290ID4gdHIge1xuICAgID4gdGQuI3skc3RhdGV9LFxuICAgID4gdGguI3skc3RhdGV9LFxuICAgICYuI3skc3RhdGV9ID4gdGQsXG4gICAgJi4jeyRzdGF0ZX0gPiB0aCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyIHtcbiAgICA+IHRkLiN7JHN0YXRlfTpob3ZlcixcbiAgICA+IHRoLiN7JHN0YXRlfTpob3ZlcixcbiAgICAmLiN7JHN0YXRlfTpob3ZlciA+IHRkLFxuICAgICY6aG92ZXIgPiAuI3skc3RhdGV9LFxuICAgICYuI3skc3RhdGV9OmhvdmVyID4gdGgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxuICBhI3skcGFyZW50fTpob3ZlcixcbiAgYSN7JHBhcmVudH06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbiIsIi8vIEdyYWRpZW50c1xuXG5cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXG5AbWl4aW4gZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93blxufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0wKTsgLy8gSUU5IGFuZCBkb3duXG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xufVxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0xKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcbn1cbkBtaXhpbiBncmFkaWVudC12ZXJ0aWNhbC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogIzU1NSwgJG91dGVyLWNvbG9yOiAjMzMzKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCIvLyBDbGVhcmZpeFxuLy9cbi8vIEZvciBtb2Rlcm4gYnJvd3NlcnNcbi8vIDEuIFRoZSBzcGFjZSBjb250ZW50IGlzIG9uZSB3YXkgdG8gYXZvaWQgYW4gT3BlcmEgYnVnIHdoZW4gdGhlXG4vLyAgICBjb250ZW50ZWRpdGFibGUgYXR0cmlidXRlIGlzIGluY2x1ZGVkIGFueXdoZXJlIGVsc2UgaW4gdGhlIGRvY3VtZW50LlxuLy8gICAgT3RoZXJ3aXNlIGl0IGNhdXNlcyBzcGFjZSB0byBhcHBlYXIgYXQgdGhlIHRvcCBhbmQgYm90dG9tIG9mIGVsZW1lbnRzXG4vLyAgICB0aGF0IGFyZSBjbGVhcmZpeGVkLlxuLy8gMi4gVGhlIHVzZSBvZiBgdGFibGVgIHJhdGhlciB0aGFuIGBibG9ja2AgaXMgb25seSBuZWNlc3NhcnkgaWYgdXNpbmdcbi8vICAgIGA6YmVmb3JlYCB0byBjb250YWluIHRoZSB0b3AtbWFyZ2lucyBvZiBjaGlsZCBlbGVtZW50cy5cbi8vXG4vLyBTb3VyY2U6IGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrL1xuXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjsgLy8gMVxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAyXG4gIH1cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cbiIsIi8vIENlbnRlci1hbGlnbiBhIGJsb2NrIGxldmVsIGVsZW1lbnRcblxuQG1peGluIGNlbnRlci1ibG9jaygpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4iLCIvLyBOYXZiYXIgdmVydGljYWwgYWxpZ25cbi8vXG4vLyBWZXJ0aWNhbGx5IGNlbnRlciBlbGVtZW50cyBpbiB0aGUgbmF2YmFyLlxuLy8gRXhhbXBsZTogYW4gZWxlbWVudCBoYXMgYSBoZWlnaHQgb2YgMzBweCwgc28gd3JpdGUgb3V0IGAubmF2YmFyLXZlcnRpY2FsLWFsaWduKDMwcHgpO2AgdG8gY2FsY3VsYXRlIHRoZSBhcHByb3ByaWF0ZSB0b3AgbWFyZ2luLlxuXG5AbWl4aW4gbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRlbGVtZW50LWhlaWdodCkge1xuICBtYXJnaW4tdG9wOiAoKCRuYXZiYXItaGVpZ2h0IC0gJGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAoKCRuYXZiYXItaGVpZ2h0IC0gJGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xufVxuIiwiLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkaTogMSwgJGxpc3Q6IFwiLmNvbC14cy0jeyRpfSwgLmNvbC1zbS0jeyRpfSwgLmNvbC1tZC0jeyRpfSwgLmNvbC1sZy0jeyRpfVwiKSB7XG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIjtcbiAgfVxuICAjeyRsaXN0fSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGNvbGxhcHNpbmcgd2hlbiBlbXB0eVxuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICAvLyBJbm5lciBndXR0ZXIgdmlhIHBhZGRpbmdcbiAgICBwYWRkaW5nLWxlZnQ6ICBjZWlsKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gICAgcGFkZGluZy1yaWdodDogZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcbiAgfVxufVxuXG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcywgJGk6IDEsICRsaXN0OiBcIi5jb2wtI3skY2xhc3N9LSN7JGl9XCIpIHtcbiAgQGZvciAkaSBmcm9tICgxICsgMSkgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAkbGlzdDogXCIjeyRsaXN0fSwgLmNvbC0jeyRjbGFzc30tI3skaX1cIjtcbiAgfVxuICAjeyRsaXN0fSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuXG5AbWl4aW4gY2FsYy1ncmlkLWNvbHVtbigkaW5kZXgsICRjbGFzcywgJHR5cGUpIHtcbiAgQGlmICgkdHlwZSA9PSB3aWR0aCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tI3skaW5kZXh9IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVzaCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0jeyRpbmRleH0ge1xuICAgICAgbGVmdDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID09IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdXNoLTAge1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA+IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdWxsLSN7JGluZGV4fSB7XG4gICAgICByaWdodDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1bGwpIGFuZCAoJGluZGV4ID09IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdWxsLTAge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gb2Zmc2V0KSB7XG4gICAgLmNvbC0jeyRjbGFzc30tb2Zmc2V0LSN7JGluZGV4fSB7XG4gICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGxvb3AtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zLCAkY2xhc3MsICR0eXBlKSB7XG4gIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgIEBpbmNsdWRlIGNhbGMtZ3JpZC1jb2x1bW4oJGksICRjbGFzcywgJHR5cGUpO1xuICB9XG59XG5cblxuLy8gQ3JlYXRlIGdyaWQgZm9yIHNwZWNpZmljIGNsYXNzXG5AbWl4aW4gbWFrZS1ncmlkKCRjbGFzcykge1xuICBAaW5jbHVkZSBmbG9hdC1ncmlkLWNvbHVtbnMoJGNsYXNzKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCB3aWR0aCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgcHVsbCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgcHVzaCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgb2Zmc2V0KTtcbn1cbiIsIi8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG4vLyBDZW50ZXJlZCBjb250YWluZXIgZWxlbWVudFxuQG1peGluIGNvbnRhaW5lci1maXhlZCgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAgZmxvb3IoKCRndXR0ZXIgLyAyKSk7XG4gIHBhZGRpbmctcmlnaHQ6IGNlaWwoKCRndXR0ZXIgLyAyKSk7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBDcmVhdGVzIGEgd3JhcHBlciBmb3IgYSBzZXJpZXMgb2YgY29sdW1uc1xuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBtYXJnaW4tbGVmdDogIGNlaWwoKCRndXR0ZXIgLyAtMikpO1xuICBtYXJnaW4tcmlnaHQ6IGZsb29yKCgkZ3V0dGVyIC8gLTIpKTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBleHRyYSBzbWFsbCBjb2x1bW5zXG5AbWl4aW4gbWFrZS14cy1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBzbWFsbCBjb2x1bW5zXG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBtZWRpdW0gY29sdW1uc1xuQG1peGluIG1ha2UtbWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuXG4vLyBHZW5lcmF0ZSB0aGUgbGFyZ2UgY29sdW1uc1xuQG1peGluIG1ha2UtbGctY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vL1xuLy8gMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbi8vIDIuIFByZXZlbnQgaU9TIGFuZCBJRSB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIGRldmljZSBvcmllbnRhdGlvbiBjaGFuZ2UsXG4vLyAgICB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb20uXG4vL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDFcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG59XG5cbi8vXG4vLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG4vL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLyBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4vLyBhbmQgRmlyZWZveC5cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4vL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4vLyAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4vL1xuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyAyXG59XG5cbi8vXG4vLyBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuLy8gUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbi8vXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbi8vIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbi8vXG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBMaW5rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuLy9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vL1xuLy8gSW1wcm92ZSByZWFkYWJpbGl0eSBvZiBmb2N1c2VkIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgYWxzbyBpbiBhblxuLy8gYWN0aXZlL2hvdmVyIHN0YXRlLlxuLy9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gVGV4dC1sZXZlbCBzZW1hbnRpY3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4vL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4vLyBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbi8vXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbi8vIEVtYmVkZGVkIGNvbnRlbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbi8vXG5cbmltZyB7XG4gIGJvcmRlcjogMDtcbn1cblxuLy9cbi8vIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuLy9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLyBHcm91cGluZyBjb250ZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4vL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vL1xuLy8gQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuLy9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vL1xuLy8gQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLy9cbi8vIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLy8gRm9ybXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuLy8gc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxuLy9cblxuLy9cbi8vIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbi8vICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuLy8gMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbi8vIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDFcbiAgZm9udDogaW5oZXJpdDsgLy8gMlxuICBtYXJnaW46IDA7IC8vIDNcbn1cblxuLy9cbi8vIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuLy9cblxuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4vLyBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuLy8gQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cbi8vIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbi8vXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2Bcbi8vICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuLy8gMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuLy8gMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbi8vICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbi8vXG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG4gIGN1cnNvcjogcG9pbnRlcjsgLy8gM1xufVxuXG4vL1xuLy8gUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbi8vXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLy9cbi8vIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbi8vXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuLy8gdGhlIFVBIHN0eWxlc2hlZXQuXG4vL1xuXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8vXG4vLyBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4vLyBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxuLy9cbi8vIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4vLyAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuLy9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG59XG5cbi8vXG4vLyBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuLy8gYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbi8vIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbi8vXG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vL1xuLy8gMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4vLyAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLzJcbn1cblxuLy9cbi8vIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuLy8gU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xuLy8gcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuLy9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4vL1xuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbi8vIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbi8vXG5cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG59XG5cbi8vXG4vLyBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxuLy9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLy9cbi8vIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbi8vIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuLy9cblxub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLy8gVGFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuLy9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7XG59XG4iLCIvKiEgU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9ibG9iL21hc3Rlci9zcmMvY3NzL21haW4uY3NzICovXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmludCBzdHlsZXMuXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDogaDVicC5jb20vclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQG1lZGlhIHByaW50IHtcbiAgICAqLFxuICAgICo6YmVmb3JlLFxuICAgICo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgIGFbaHJlZl06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgICB9XG5cbiAgICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgICB9XG5cbiAgICAvLyBEb24ndCBzaG93IGxpbmtzIHRoYXQgYXJlIGZyYWdtZW50IGlkZW50aWZpZXJzLFxuICAgIC8vIG9yIHVzZSB0aGUgYGphdmFzY3JpcHQ6YCBwc2V1ZG8gcHJvdG9jb2xcbiAgICBhW2hyZWZePVwiI1wiXTphZnRlcixcbiAgICBhW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cblxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHRoZWFkIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyAvLyBoNWJwLmNvbS90XG4gICAgfVxuXG4gICAgdHIsXG4gICAgaW1nIHtcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgICBvcnBoYW5zOiAzO1xuICAgICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxuXG4gICAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcbiAgICAubmF2YmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmJ0bixcbiAgICAuZHJvcHVwID4gLmJ0biB7XG4gICAgICAgID4gLmNhcmV0IHtcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubGFiZWwge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuICAgIH1cblxuICAgIC50YWJsZSB7XG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcblxuICAgICAgICB0ZCxcbiAgICAgICAgdGgge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgIHRoLFxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBlbmRcbn1cbiIsIi8vXG4vLyBHbHlwaGljb25zIGZvciBCb290c3RyYXBcbi8vXG4vLyBTaW5jZSBpY29ucyBhcmUgZm9udHMsIHRoZXkgY2FuIGJlIHBsYWNlZCBhbnl3aGVyZSB0ZXh0IGlzIHBsYWNlZCBhbmQgYXJlXG4vLyB0aHVzIGF1dG9tYXRpY2FsbHkgc2l6ZWQgdG8gbWF0Y2ggdGhlIHN1cnJvdW5kaW5nIGNoaWxkLiBUbyB1c2UsIGNyZWF0ZSBhblxuLy8gaW5saW5lIGVsZW1lbnQgd2l0aCB0aGUgYXBwcm9wcmlhdGUgY2xhc3NlcywgbGlrZSBzbzpcbi8vXG4vLyA8YSBocmVmPVwiI1wiPjxzcGFuIGNsYXNzPVwiZ2x5cGhpY29uIGdseXBoaWNvbi1zdGFyXCI+PC9zcGFuPiBTdGFyPC9hPlxuXG5AYXQtcm9vdCB7XG4gIC8vIEltcG9ydCB0aGUgZm9udHNcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdHbHlwaGljb25zIEhhbGZsaW5ncyc7XG4gICAgc3JjOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5lb3QnKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5lb3QnKSk7XG4gICAgc3JjOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5lb3Q/I2llZml4JyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90PyNpZWZpeCcpKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmMicpLCAnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LndvZmYyJykpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgIHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aCgnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LndvZmYnKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmJykpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICAgdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0udHRmJyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0udHRmJykpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICAgIHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aCgnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnN2ZyMjeyRpY29uLWZvbnQtc3ZnLWlkfScpLCAnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnN2ZyMjeyRpY29uLWZvbnQtc3ZnLWlkfScpKSBmb3JtYXQoJ3N2ZycpO1xuICB9XG59XG5cbi8vIENhdGNoYWxsIGJhc2VjbGFzc1xuLmdseXBoaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICdHbHlwaGljb25zIEhhbGZsaW5ncyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4vLyBJbmRpdmlkdWFsIGljb25zXG4uZ2x5cGhpY29uLWFzdGVyaXNrICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwwMDJhXCI7IH0gfVxuLmdseXBoaWNvbi1wbHVzICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMDAyYlwiOyB9IH1cbi5nbHlwaGljb24tZXVybyxcbi5nbHlwaGljb24tZXVyICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIwYWNcIjsgfSB9XG4uZ2x5cGhpY29uLW1pbnVzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMjEyXCI7IH0gfVxuLmdseXBoaWNvbi1jbG91ZCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjYwMVwiOyB9IH1cbi5nbHlwaGljb24tZW52ZWxvcGUgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI3MDlcIjsgfSB9XG4uZ2x5cGhpY29uLXBlbmNpbCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNzBmXCI7IH0gfVxuLmdseXBoaWNvbi1nbGFzcyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwMVwiOyB9IH1cbi5nbHlwaGljb24tbXVzaWMgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDJcIjsgfSB9XG4uZ2x5cGhpY29uLXNlYXJjaCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDAzXCI7IH0gfVxuLmdseXBoaWNvbi1oZWFydCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwNVwiOyB9IH1cbi5nbHlwaGljb24tc3RhciAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDZcIjsgfSB9XG4uZ2x5cGhpY29uLXN0YXItZW1wdHkgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA3XCI7IH0gfVxuLmdseXBoaWNvbi11c2VyICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwOFwiOyB9IH1cbi5nbHlwaGljb24tZmlsbSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDlcIjsgfSB9XG4uZ2x5cGhpY29uLXRoLWxhcmdlICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEwXCI7IH0gfVxuLmdseXBoaWNvbi10aCAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxMVwiOyB9IH1cbi5nbHlwaGljb24tdGgtbGlzdCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTJcIjsgfSB9XG4uZ2x5cGhpY29uLW9rICAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEzXCI7IH0gfVxuLmdseXBoaWNvbi1yZW1vdmUgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxNFwiOyB9IH1cbi5nbHlwaGljb24tem9vbS1pbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTVcIjsgfSB9XG4uZ2x5cGhpY29uLXpvb20tb3V0ICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE2XCI7IH0gfVxuLmdseXBoaWNvbi1vZmYgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxN1wiOyB9IH1cbi5nbHlwaGljb24tc2lnbmFsICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMThcIjsgfSB9XG4uZ2x5cGhpY29uLWNvZyAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE5XCI7IH0gfVxuLmdseXBoaWNvbi10cmFzaCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyMFwiOyB9IH1cbi5nbHlwaGljb24taG9tZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjFcIjsgfSB9XG4uZ2x5cGhpY29uLWZpbGUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIyXCI7IH0gfVxuLmdseXBoaWNvbi10aW1lICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyM1wiOyB9IH1cbi5nbHlwaGljb24tcm9hZCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjRcIjsgfSB9XG4uZ2x5cGhpY29uLWRvd25sb2FkLWFsdCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI1XCI7IH0gfVxuLmdseXBoaWNvbi1kb3dubG9hZCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyNlwiOyB9IH1cbi5nbHlwaGljb24tdXBsb2FkICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjdcIjsgfSB9XG4uZ2x5cGhpY29uLWluYm94ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI4XCI7IH0gfVxuLmdseXBoaWNvbi1wbGF5LWNpcmNsZSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyOVwiOyB9IH1cbi5nbHlwaGljb24tcmVwZWF0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzBcIjsgfSB9XG4uZ2x5cGhpY29uLXJlZnJlc2ggICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMxXCI7IH0gfVxuLmdseXBoaWNvbi1saXN0LWFsdCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzMlwiOyB9IH1cbi5nbHlwaGljb24tbG9jayAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzNcIjsgfSB9XG4uZ2x5cGhpY29uLWZsYWcgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM0XCI7IH0gfVxuLmdseXBoaWNvbi1oZWFkcGhvbmVzICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzNVwiOyB9IH1cbi5nbHlwaGljb24tdm9sdW1lLW9mZiAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzZcIjsgfSB9XG4uZ2x5cGhpY29uLXZvbHVtZS1kb3duICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM3XCI7IH0gfVxuLmdseXBoaWNvbi12b2x1bWUtdXAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzOFwiOyB9IH1cbi5nbHlwaGljb24tcXJjb2RlICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzlcIjsgfSB9XG4uZ2x5cGhpY29uLWJhcmNvZGUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQwXCI7IH0gfVxuLmdseXBoaWNvbi10YWcgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0MVwiOyB9IH1cbi5nbHlwaGljb24tdGFncyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDJcIjsgfSB9XG4uZ2x5cGhpY29uLWJvb2sgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQzXCI7IH0gfVxuLmdseXBoaWNvbi1ib29rbWFyayAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0NFwiOyB9IH1cbi5nbHlwaGljb24tcHJpbnQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDVcIjsgfSB9XG4uZ2x5cGhpY29uLWNhbWVyYSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ2XCI7IH0gfVxuLmdseXBoaWNvbi1mb250ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0N1wiOyB9IH1cbi5nbHlwaGljb24tYm9sZCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDhcIjsgfSB9XG4uZ2x5cGhpY29uLWl0YWxpYyAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ5XCI7IH0gfVxuLmdseXBoaWNvbi10ZXh0LWhlaWdodCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1MFwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC13aWR0aCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTFcIjsgfSB9XG4uZ2x5cGhpY29uLWFsaWduLWxlZnQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUyXCI7IH0gfVxuLmdseXBoaWNvbi1hbGlnbi1jZW50ZXIgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1M1wiOyB9IH1cbi5nbHlwaGljb24tYWxpZ24tcmlnaHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTRcIjsgfSB9XG4uZ2x5cGhpY29uLWFsaWduLWp1c3RpZnkgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU1XCI7IH0gfVxuLmdseXBoaWNvbi1saXN0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1NlwiOyB9IH1cbi5nbHlwaGljb24taW5kZW50LWxlZnQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTdcIjsgfSB9XG4uZ2x5cGhpY29uLWluZGVudC1yaWdodCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU4XCI7IH0gfVxuLmdseXBoaWNvbi1mYWNldGltZS12aWRlbyAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1OVwiOyB9IH1cbi5nbHlwaGljb24tcGljdHVyZSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjBcIjsgfSB9XG4uZ2x5cGhpY29uLW1hcC1tYXJrZXIgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYyXCI7IH0gfVxuLmdseXBoaWNvbi1hZGp1c3QgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2M1wiOyB9IH1cbi5nbHlwaGljb24tdGludCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjRcIjsgfSB9XG4uZ2x5cGhpY29uLWVkaXQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY1XCI7IH0gfVxuLmdseXBoaWNvbi1zaGFyZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2NlwiOyB9IH1cbi5nbHlwaGljb24tY2hlY2sgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjdcIjsgfSB9XG4uZ2x5cGhpY29uLW1vdmUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY4XCI7IH0gfVxuLmdseXBoaWNvbi1zdGVwLWJhY2t3YXJkICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2OVwiOyB9IH1cbi5nbHlwaGljb24tZmFzdC1iYWNrd2FyZCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzBcIjsgfSB9XG4uZ2x5cGhpY29uLWJhY2t3YXJkICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDcxXCI7IH0gfVxuLmdseXBoaWNvbi1wbGF5ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3MlwiOyB9IH1cbi5nbHlwaGljb24tcGF1c2UgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzNcIjsgfSB9XG4uZ2x5cGhpY29uLXN0b3AgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc0XCI7IH0gfVxuLmdseXBoaWNvbi1mb3J3YXJkICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3NVwiOyB9IH1cbi5nbHlwaGljb24tZmFzdC1mb3J3YXJkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzZcIjsgfSB9XG4uZ2x5cGhpY29uLXN0ZXAtZm9yd2FyZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc3XCI7IH0gfVxuLmdseXBoaWNvbi1lamVjdCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3OFwiOyB9IH1cbi5nbHlwaGljb24tY2hldnJvbi1sZWZ0ICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzlcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgwXCI7IH0gfVxuLmdseXBoaWNvbi1wbHVzLXNpZ24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4MVwiOyB9IH1cbi5nbHlwaGljb24tbWludXMtc2lnbiAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODJcIjsgfSB9XG4uZ2x5cGhpY29uLXJlbW92ZS1zaWduICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgzXCI7IH0gfVxuLmdseXBoaWNvbi1vay1zaWduICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4NFwiOyB9IH1cbi5nbHlwaGljb24tcXVlc3Rpb24tc2lnbiAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODVcIjsgfSB9XG4uZ2x5cGhpY29uLWluZm8tc2lnbiAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg2XCI7IH0gfVxuLmdseXBoaWNvbi1zY3JlZW5zaG90ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4N1wiOyB9IH1cbi5nbHlwaGljb24tcmVtb3ZlLWNpcmNsZSAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODhcIjsgfSB9XG4uZ2x5cGhpY29uLW9rLWNpcmNsZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg5XCI7IH0gfVxuLmdseXBoaWNvbi1iYW4tY2lyY2xlICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5MFwiOyB9IH1cbi5nbHlwaGljb24tYXJyb3ctbGVmdCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTFcIjsgfSB9XG4uZ2x5cGhpY29uLWFycm93LXJpZ2h0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkyXCI7IH0gfVxuLmdseXBoaWNvbi1hcnJvdy11cCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5M1wiOyB9IH1cbi5nbHlwaGljb24tYXJyb3ctZG93biAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTRcIjsgfSB9XG4uZ2x5cGhpY29uLXNoYXJlLWFsdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk1XCI7IH0gfVxuLmdseXBoaWNvbi1yZXNpemUtZnVsbCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5NlwiOyB9IH1cbi5nbHlwaGljb24tcmVzaXplLXNtYWxsICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTdcIjsgfSB9XG4uZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24gICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTAxXCI7IH0gfVxuLmdseXBoaWNvbi1naWZ0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwMlwiOyB9IH1cbi5nbHlwaGljb24tbGVhZiAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDNcIjsgfSB9XG4uZ2x5cGhpY29uLWZpcmUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA0XCI7IH0gfVxuLmdseXBoaWNvbi1leWUtb3BlbiAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwNVwiOyB9IH1cbi5nbHlwaGljb24tZXllLWNsb3NlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDZcIjsgfSB9XG4uZ2x5cGhpY29uLXdhcm5pbmctc2lnbiAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA3XCI7IH0gfVxuLmdseXBoaWNvbi1wbGFuZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwOFwiOyB9IH1cbi5nbHlwaGljb24tY2FsZW5kYXIgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDlcIjsgfSB9XG4uZ2x5cGhpY29uLXJhbmRvbSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEwXCI7IH0gfVxuLmdseXBoaWNvbi1jb21tZW50ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExMVwiOyB9IH1cbi5nbHlwaGljb24tbWFnbmV0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTJcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZXZyb24tdXAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEzXCI7IH0gfVxuLmdseXBoaWNvbi1jaGV2cm9uLWRvd24gICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExNFwiOyB9IH1cbi5nbHlwaGljb24tcmV0d2VldCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTVcIjsgfSB9XG4uZ2x5cGhpY29uLXNob3BwaW5nLWNhcnQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE2XCI7IH0gfVxuLmdseXBoaWNvbi1mb2xkZXItY2xvc2UgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExN1wiOyB9IH1cbi5nbHlwaGljb24tZm9sZGVyLW9wZW4gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMThcIjsgfSB9XG4uZ2x5cGhpY29uLXJlc2l6ZS12ZXJ0aWNhbCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE5XCI7IH0gfVxuLmdseXBoaWNvbi1yZXNpemUtaG9yaXpvbnRhbCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyMFwiOyB9IH1cbi5nbHlwaGljb24taGRkICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjFcIjsgfSB9XG4uZ2x5cGhpY29uLWJ1bGxob3JuICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIyXCI7IH0gfVxuLmdseXBoaWNvbi1iZWxsICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyM1wiOyB9IH1cbi5nbHlwaGljb24tY2VydGlmaWNhdGUgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjRcIjsgfSB9XG4uZ2x5cGhpY29uLXRodW1icy11cCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI1XCI7IH0gfVxuLmdseXBoaWNvbi10aHVtYnMtZG93biAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyNlwiOyB9IH1cbi5nbHlwaGljb24taGFuZC1yaWdodCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjdcIjsgfSB9XG4uZ2x5cGhpY29uLWhhbmQtbGVmdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI4XCI7IH0gfVxuLmdseXBoaWNvbi1oYW5kLXVwICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyOVwiOyB9IH1cbi5nbHlwaGljb24taGFuZC1kb3duICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzBcIjsgfSB9XG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1yaWdodCAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMxXCI7IH0gfVxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctbGVmdCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzMlwiOyB9IH1cbi5nbHlwaGljb24tY2lyY2xlLWFycm93LXVwICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzNcIjsgfSB9XG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1kb3duICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM0XCI7IH0gfVxuLmdseXBoaWNvbi1nbG9iZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzNVwiOyB9IH1cbi5nbHlwaGljb24td3JlbmNoICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzZcIjsgfSB9XG4uZ2x5cGhpY29uLXRhc2tzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM3XCI7IH0gfVxuLmdseXBoaWNvbi1maWx0ZXIgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzOFwiOyB9IH1cbi5nbHlwaGljb24tYnJpZWZjYXNlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzlcIjsgfSB9XG4uZ2x5cGhpY29uLWZ1bGxzY3JlZW4gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQwXCI7IH0gfVxuLmdseXBoaWNvbi1kYXNoYm9hcmQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0MVwiOyB9IH1cbi5nbHlwaGljb24tcGFwZXJjbGlwICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDJcIjsgfSB9XG4uZ2x5cGhpY29uLWhlYXJ0LWVtcHR5ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQzXCI7IH0gfVxuLmdseXBoaWNvbi1saW5rICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0NFwiOyB9IH1cbi5nbHlwaGljb24tcGhvbmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDVcIjsgfSB9XG4uZ2x5cGhpY29uLXB1c2hwaW4gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ2XCI7IH0gfVxuLmdseXBoaWNvbi11c2QgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0OFwiOyB9IH1cbi5nbHlwaGljb24tZ2JwICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDlcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUwXCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LWFscGhhYmV0ICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1MVwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1hbHBoYWJldC1hbHQgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTJcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktb3JkZXIgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUzXCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LW9yZGVyLWFsdCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1NFwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1hdHRyaWJ1dGVzICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTVcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktYXR0cmlidXRlcy1hbHQgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU2XCI7IH0gfVxuLmdseXBoaWNvbi11bmNoZWNrZWQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1N1wiOyB9IH1cbi5nbHlwaGljb24tZXhwYW5kICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNThcIjsgfSB9XG4uZ2x5cGhpY29uLWNvbGxhcHNlLWRvd24gICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU5XCI7IH0gfVxuLmdseXBoaWNvbi1jb2xsYXBzZS11cCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2MFwiOyB9IH1cbi5nbHlwaGljb24tbG9nLWluICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjFcIjsgfSB9XG4uZ2x5cGhpY29uLWZsYXNoICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYyXCI7IH0gfVxuLmdseXBoaWNvbi1sb2ctb3V0ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2M1wiOyB9IH1cbi5nbHlwaGljb24tbmV3LXdpbmRvdyAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjRcIjsgfSB9XG4uZ2x5cGhpY29uLXJlY29yZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY1XCI7IH0gfVxuLmdseXBoaWNvbi1zYXZlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2NlwiOyB9IH1cbi5nbHlwaGljb24tb3BlbiAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjdcIjsgfSB9XG4uZ2x5cGhpY29uLXNhdmVkICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY4XCI7IH0gfVxuLmdseXBoaWNvbi1pbXBvcnQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2OVwiOyB9IH1cbi5nbHlwaGljb24tZXhwb3J0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzBcIjsgfSB9XG4uZ2x5cGhpY29uLXNlbmQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTcxXCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktZGlzayAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3MlwiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LXNhdmVkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzNcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1yZW1vdmUgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc0XCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktc2F2ZSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3NVwiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LW9wZW4gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzZcIjsgfSB9XG4uZ2x5cGhpY29uLWNyZWRpdC1jYXJkICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc3XCI7IH0gfVxuLmdseXBoaWNvbi10cmFuc2ZlciAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3OFwiOyB9IH1cbi5nbHlwaGljb24tY3V0bGVyeSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzlcIjsgfSB9XG4uZ2x5cGhpY29uLWhlYWRlciAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgwXCI7IH0gfVxuLmdseXBoaWNvbi1jb21wcmVzc2VkICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4MVwiOyB9IH1cbi5nbHlwaGljb24tZWFycGhvbmUgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODJcIjsgfSB9XG4uZ2x5cGhpY29uLXBob25lLWFsdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgzXCI7IH0gfVxuLmdseXBoaWNvbi10b3dlciAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4NFwiOyB9IH1cbi5nbHlwaGljb24tc3RhdHMgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODVcIjsgfSB9XG4uZ2x5cGhpY29uLXNkLXZpZGVvICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg2XCI7IH0gfVxuLmdseXBoaWNvbi1oZC12aWRlbyAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4N1wiOyB9IH1cbi5nbHlwaGljb24tc3VidGl0bGVzICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODhcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLXN0ZXJlbyAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg5XCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC1kb2xieSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5MFwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtNS0xICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTFcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLTYtMSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkyXCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC03LTEgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5M1wiOyB9IH1cbi5nbHlwaGljb24tY29weXJpZ2h0LW1hcmsgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTRcIjsgfSB9XG4uZ2x5cGhpY29uLXJlZ2lzdHJhdGlvbi1tYXJrICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk1XCI7IH0gfVxuLmdseXBoaWNvbi1jbG91ZC1kb3dubG9hZCAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5N1wiOyB9IH1cbi5nbHlwaGljb24tY2xvdWQtdXBsb2FkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOThcIjsgfSB9XG4uZ2x5cGhpY29uLXRyZWUtY29uaWZlciAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk5XCI7IH0gfVxuLmdseXBoaWNvbi10cmVlLWRlY2lkdW91cyAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwMFwiOyB9IH1cbi5nbHlwaGljb24tY2QgICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDFcIjsgfSB9XG4uZ2x5cGhpY29uLXNhdmUtZmlsZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAyXCI7IH0gfVxuLmdseXBoaWNvbi1vcGVuLWZpbGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwM1wiOyB9IH1cbi5nbHlwaGljb24tbGV2ZWwtdXAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDRcIjsgfSB9XG4uZ2x5cGhpY29uLWNvcHkgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA1XCI7IH0gfVxuLmdseXBoaWNvbi1wYXN0ZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwNlwiOyB9IH1cbi8vIFRoZSBmb2xsb3dpbmcgMiBHbHlwaGljb25zIGFyZSBvbWl0dGVkIGZvciB0aGUgdGltZSBiZWluZyBiZWNhdXNlXG4vLyB0aGV5IGN1cnJlbnRseSB1c2UgVW5pY29kZSBjb2RlcG9pbnRzIHRoYXQgYXJlIG91dHNpZGUgdGhlXG4vLyBCYXNpYyBNdWx0aWxpbmd1YWwgUGxhbmUgKEJNUCkuIE9sZGVyIGJ1Z2d5IHZlcnNpb25zIG9mIFdlYktpdCBjYW4ndCBoYW5kbGVcbi8vIG5vbi1CTVAgY29kZXBvaW50cyBpbiBDU1Mgc3RyaW5nIGVzY2FwZXMsIGFuZCB0aHVzIGNhbid0IGRpc3BsYXkgdGhlc2UgdHdvIGljb25zLlxuLy8gTm90YWJseSwgdGhlIGJ1ZyBhZmZlY3RzIHNvbWUgb2xkZXIgdmVyc2lvbnMgb2YgdGhlIEFuZHJvaWQgQnJvd3Nlci5cbi8vIE1vcmUgaW5mbzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMDEwNlxuLy8gLmdseXBoaWNvbi1kb29yICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMWY2YWFcIjsgfSB9XG4vLyAuZ2x5cGhpY29uLWtleSAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwxZjUxMVwiOyB9IH1cbi5nbHlwaGljb24tYWxlcnQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDlcIjsgfSB9XG4uZ2x5cGhpY29uLWVxdWFsaXplciAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjEwXCI7IH0gfVxuLmdseXBoaWNvbi1raW5nICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxMVwiOyB9IH1cbi5nbHlwaGljb24tcXVlZW4gICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTJcIjsgfSB9XG4uZ2x5cGhpY29uLXBhd24gICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjEzXCI7IH0gfVxuLmdseXBoaWNvbi1iaXNob3AgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxNFwiOyB9IH1cbi5nbHlwaGljb24ta25pZ2h0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTVcIjsgfSB9XG4uZ2x5cGhpY29uLWJhYnktZm9ybXVsYSAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE2XCI7IH0gfVxuLmdseXBoaWNvbi10ZW50ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjZmYVwiOyB9IH1cbi5nbHlwaGljb24tYmxhY2tib2FyZCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMThcIjsgfSB9XG4uZ2x5cGhpY29uLWJlZCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE5XCI7IH0gfVxuLmdseXBoaWNvbi1hcHBsZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjhmZlwiOyB9IH1cbi5nbHlwaGljb24tZXJhc2UgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjFcIjsgfSB9XG4uZ2x5cGhpY29uLWhvdXJnbGFzcyAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMzFiXCI7IH0gfVxuLmdseXBoaWNvbi1sYW1wICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyM1wiOyB9IH1cbi5nbHlwaGljb24tZHVwbGljYXRlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjRcIjsgfSB9XG4uZ2x5cGhpY29uLXBpZ2d5LWJhbmsgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI1XCI7IH0gfVxuLmdseXBoaWNvbi1zY2lzc29ycyAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyNlwiOyB9IH1cbi5nbHlwaGljb24tYml0Y29pbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjdcIjsgfSB9XG4uZ2x5cGhpY29uLWJ0YyAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI3XCI7IH0gfVxuLmdseXBoaWNvbi14YnQgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyN1wiOyB9IH1cbi5nbHlwaGljb24teWVuICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDAwYTVcIjsgfSB9XG4uZ2x5cGhpY29uLWpweSAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwwMGE1XCI7IH0gfVxuLmdseXBoaWNvbi1ydWJsZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjBiZFwiOyB9IH1cbi5nbHlwaGljb24tcnViICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIwYmRcIjsgfSB9XG4uZ2x5cGhpY29uLXNjYWxlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMwXCI7IH0gfVxuLmdseXBoaWNvbi1pY2UtbG9sbHkgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzMVwiOyB9IH1cbi5nbHlwaGljb24taWNlLWxvbGx5LXRhc3RlZCAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzJcIjsgfSB9XG4uZ2x5cGhpY29uLWVkdWNhdGlvbiAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMzXCI7IH0gfVxuLmdseXBoaWNvbi1vcHRpb24taG9yaXpvbnRhbCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzNFwiOyB9IH1cbi5nbHlwaGljb24tb3B0aW9uLXZlcnRpY2FsICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzVcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtaGFtYnVyZ2VyICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM2XCI7IH0gfVxuLmdseXBoaWNvbi1tb2RhbC13aW5kb3cgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzN1wiOyB9IH1cbi5nbHlwaGljb24tb2lsICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzhcIjsgfSB9XG4uZ2x5cGhpY29uLWdyYWluICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM5XCI7IH0gfVxuLmdseXBoaWNvbi1zdW5nbGFzc2VzICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0MFwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC1zaXplICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDFcIjsgfSB9XG4uZ2x5cGhpY29uLXRleHQtY29sb3IgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQyXCI7IH0gfVxuLmdseXBoaWNvbi10ZXh0LWJhY2tncm91bmQgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0M1wiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLXRvcCAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDRcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1ib3R0b20gICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ1XCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24taG9yaXpvbnRhbHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0NlwiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLWxlZnQgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDdcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi12ZXJ0aWNhbCAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ4XCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tcmlnaHQgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0OVwiOyB9IH1cbi5nbHlwaGljb24tdHJpYW5nbGUtcmlnaHQgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTBcIjsgfSB9XG4uZ2x5cGhpY29uLXRyaWFuZ2xlLWxlZnQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjUxXCI7IH0gfVxuLmdseXBoaWNvbi10cmlhbmdsZS1ib3R0b20gICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1MlwiOyB9IH1cbi5nbHlwaGljb24tdHJpYW5nbGUtdG9wICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTNcIjsgfSB9XG4uZ2x5cGhpY29uLWNvbnNvbGUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU0XCI7IH0gfVxuLmdseXBoaWNvbi1zdXBlcnNjcmlwdCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1NVwiOyB9IH1cbi5nbHlwaGljb24tc3Vic2NyaXB0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTZcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtbGVmdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU3XCI7IH0gfVxuLmdseXBoaWNvbi1tZW51LXJpZ2h0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1OFwiOyB9IH1cbi5nbHlwaGljb24tbWVudS1kb3duICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTlcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtdXAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjYwXCI7IH0gfVxuIiwiLy9cbi8vIFNjYWZmb2xkaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIFJlc2V0IHRoZSBib3gtc2l6aW5nXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgcmVzZXQgbWF5IGNhdXNlIGNvbmZsaWN0cyB3aXRoIHNvbWUgdGhpcmQtcGFydHkgd2lkZ2V0cy5cbi8vIEZvciByZWNvbW1lbmRhdGlvbnMgb24gcmVzb2x2aW5nIHN1Y2ggY29uZmxpY3RzLCBzZWVcbi8vIGh0dHA6Ly9nZXRib290c3RyYXAuY29tL2dldHRpbmctc3RhcnRlZC8jdGhpcmQtYm94LXNpemluZ1xuKiB7XG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG59XG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xufVxuXG5cbi8vIEJvZHkgcmVzZXRcblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xufVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xufVxuXG4vLyBSZXNldCBmb250cyBmb3IgcmVsZXZhbnQgZWxlbWVudHNcbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuXG4vLyBMaW5rc1xuXG5hIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIHRhYi1mb2N1cztcbiAgfVxufVxuXG5cbi8vIEZpZ3VyZXNcbi8vXG4vLyBXZSByZXNldCB0aGlzIGhlcmUgYmVjYXVzZSBwcmV2aW91c2x5IE5vcm1hbGl6ZSBoYWQgbm8gYGZpZ3VyZWAgbWFyZ2lucy4gVGhpc1xuLy8gZW5zdXJlcyB3ZSBkb24ndCBicmVhayBhbnlvbmUncyB1c2Ugb2YgdGhlIGVsZW1lbnQuXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuXG4vLyBJbWFnZXNcblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4uaW1nLXJlc3BvbnNpdmUge1xuICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcbn1cblxuLy8gUm91bmRlZCBjb3JuZXJzXG4uaW1nLXJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbn1cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLy9cbi8vIEhlYWRzIHVwISBUaGlzIGlzIG1peGluLWVkIGludG8gdGh1bWJuYWlscy5sZXNzIGZvciBgLnRodW1ibmFpbGAuXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMnMgZWFzZS1pbi1vdXQpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZShpbmxpbmUtYmxvY2spO1xufVxuXG4vLyBQZXJmZWN0IGNpcmNsZVxuLmltZy1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7IC8vIHNldCByYWRpdXMgaW4gcGVyY2VudHNcbn1cblxuXG4vLyBIb3Jpem9udGFsIHJ1bGVzXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogICAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRoci1ib3JkZXI7XG59XG5cblxuLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHA6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cblxuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuLnNyLW9ubHktZm9jdXNhYmxlIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICB9XG59XG5cblxuLy8gaU9TIFwiY2xpY2thYmxlIGVsZW1lbnRzXCIgZml4IGZvciByb2xlPVwiYnV0dG9uXCJcbi8vXG4vLyBGaXhlcyBcImNsaWNrYWJpbGl0eVwiIGlzc3VlIChhbmQgbW9yZSBnZW5lcmFsbHksIHRoZSBmaXJpbmcgb2YgZXZlbnRzIHN1Y2ggYXMgZm9jdXMgYXMgd2VsbClcbi8vIGZvciB0cmFkaXRpb25hbGx5IG5vbi1mb2N1c2FibGUgZWxlbWVudHMgd2l0aCByb2xlPVwiYnV0dG9uXCJcbi8vIHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG5bcm9sZT1cImJ1dHRvblwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiIsIi8vXG4vLyBUeXBvZ3JhcGh5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEhlYWRpbmdzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcblxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAkaGVhZGluZ3Mtc21hbGwtY29sb3I7XG4gIH1cbn1cblxuaDEsIC5oMSxcbmgyLCAuaDIsXG5oMywgLmgzIHtcbiAgbWFyZ2luLXRvcDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG5cbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA2NSU7XG4gIH1cbn1cbmg0LCAuaDQsXG5oNSwgLmg1LFxuaDYsIC5oNiB7XG4gIG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICB9XG59XG5cbmgxLCAuaDEgeyBmb250LXNpemU6ICRmb250LXNpemUtaDE7IH1cbmgyLCAuaDIgeyBmb250LXNpemU6ICRmb250LXNpemUtaDI7IH1cbmgzLCAuaDMgeyBmb250LXNpemU6ICRmb250LXNpemUtaDM7IH1cbmg0LCAuaDQgeyBmb250LXNpemU6ICRmb250LXNpemUtaDQ7IH1cbmg1LCAuaDUgeyBmb250LXNpemU6ICRmb250LXNpemUtaDU7IH1cbmg2LCAuaDYgeyBmb250LXNpemU6ICRmb250LXNpemUtaDY7IH1cblxuXG4vLyBCb2R5IHRleHRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxucCB7XG4gIG1hcmdpbjogMCAwICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcbn1cblxuLmxlYWQge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc2l6ZTogZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDEuMTUpKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgKiAxLjUpO1xuICB9XG59XG5cblxuLy8gRW1waGFzaXMgJiBtaXNjXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEV4OiAoMTJweCBzbWFsbCBmb250IC8gMTRweCBiYXNlIGZvbnQpICogMTAwJSA9IGFib3V0IDg1JVxuc21hbGwsXG4uc21hbGwge1xuICBmb250LXNpemU6IGZsb29yKCgxMDAlICogJGZvbnQtc2l6ZS1zbWFsbCAvICRmb250LXNpemUtYmFzZSkpO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RhdGUtd2FybmluZy1iZztcbiAgcGFkZGluZzogLjJlbTtcbn1cblxuLy8gQWxpZ25tZW50XG4udGV4dC1sZWZ0ICAgICAgICAgICB7IHRleHQtYWxpZ246IGxlZnQ7IH1cbi50ZXh0LXJpZ2h0ICAgICAgICAgIHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbi50ZXh0LWNlbnRlciAgICAgICAgIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4udGV4dC1qdXN0aWZ5ICAgICAgICB7IHRleHQtYWxpZ246IGp1c3RpZnk7IH1cbi50ZXh0LW5vd3JhcCAgICAgICAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuLnRleHQtbG93ZXJjYXNlICAgICAgeyB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlOyB9XG4udGV4dC11cHBlcmNhc2UgICAgICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbi50ZXh0LWNhcGl0YWxpemUgICAgIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cblxuLy8gQ29udGV4dHVhbCBjb2xvcnNcbi50ZXh0LW11dGVkIHtcbiAgY29sb3I6ICR0ZXh0LW11dGVkO1xufVxuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXByaW1hcnknLCAkYnJhbmQtcHJpbWFyeSk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtc3VjY2VzcycsICRzdGF0ZS1zdWNjZXNzLXRleHQpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LWluZm8nLCAkc3RhdGUtaW5mby10ZXh0KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC13YXJuaW5nJywgJHN0YXRlLXdhcm5pbmctdGV4dCk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtZGFuZ2VyJywgJHN0YXRlLWRhbmdlci10ZXh0KTtcblxuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuLy8gRm9yIG5vdyB3ZSdsbCBsZWF2ZSB0aGVzZSBhbG9uZ3NpZGUgdGhlIHRleHQgY2xhc3NlcyB1bnRpbCB2NCB3aGVuIHdlIGNhblxuLy8gc2FmZWx5IHNoaWZ0IHRoaW5ncyBhcm91bmQgKHBlciBTZW1WZXIgcnVsZXMpLlxuLmJnLXByaW1hcnkge1xuICAvLyBHaXZlbiB0aGUgY29udHJhc3QgaGVyZSwgdGhpcyBpcyB0aGUgb25seSBjbGFzcyB0byBoYXZlIGl0cyBjb2xvciBpbnZlcnRlZFxuICAvLyBhdXRvbWF0aWNhbGx5LlxuICBjb2xvcjogI2ZmZjtcbn1cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1wcmltYXJ5JywgJGJyYW5kLXByaW1hcnkpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctc3VjY2VzcycsICRzdGF0ZS1zdWNjZXNzLWJnKTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLWluZm8nLCAkc3RhdGUtaW5mby1iZyk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy13YXJuaW5nJywgJHN0YXRlLXdhcm5pbmctYmcpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctZGFuZ2VyJywgJHN0YXRlLWRhbmdlci1iZyk7XG5cblxuLy8gUGFnZSBoZWFkZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnBhZ2UtaGVhZGVyIHtcbiAgcGFkZGluZy1ib3R0b206ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgLSAxKTtcbiAgbWFyZ2luOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICogMikgMCAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcGFnZS1oZWFkZXItYm9yZGVyLWNvbG9yO1xufVxuXG5cbi8vIExpc3RzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFVub3JkZXJlZCBhbmQgT3JkZXJlZCBsaXN0c1xudWwsXG5vbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcbiAgdWwsXG4gIG9sIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vIExpc3Qgb3B0aW9uc1xuXG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgZnJvbSBgLmxpc3QtdW5zdHlsZWRgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGFzIGBAbWl4aW4gbGlzdC11bnN0eWxlZGAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xufVxuXG5cbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXG4ubGlzdC1pbmxpbmUge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xuICBtYXJnaW4tbGVmdDogLTVweDtcblxuICA+IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xuICB9XG59XG5cbi8vIERlc2NyaXB0aW9uIExpc3RzXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7IC8vIFJlbW92ZSBicm93c2VyIGRlZmF1bHRcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xufVxuZHQsXG5kZCB7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbn1cbmR0IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5kZCB7XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyBVbmRvIGJyb3dzZXIgZGVmYXVsdFxufVxuXG4vLyBIb3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3RzXG4vL1xuLy8gRGVmYXVsdHMgdG8gYmVpbmcgc3RhY2tlZCB3aXRob3V0IGFueSBvZiB0aGUgYmVsb3cgc3R5bGVzIGFwcGxpZWQsIHVudGlsIHRoZVxuLy8gZ3JpZCBicmVha3BvaW50IGlzIHJlYWNoZWQgKGRlZmF1bHQgb2Ygfjc2OHB4KS5cblxuLmRsLWhvcml6b250YWwge1xuICBkZCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7IC8vIENsZWFyIHRoZSBmbG9hdGVkIGBkdGAgaWYgYW4gZW1wdHkgYGRkYCBpcyBwcmVzZW50XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGRsLWhvcml6b250YWwtYnJlYWtwb2ludCkge1xuICAgIGR0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6ICgkZGwtaG9yaXpvbnRhbC1vZmZzZXQgLSAyMCk7XG4gICAgICBjbGVhcjogbGVmdDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgQGluY2x1ZGUgdGV4dC1vdmVyZmxvdztcbiAgICB9XG4gICAgZGQge1xuICAgICAgbWFyZ2luLWxlZnQ6ICRkbC1ob3Jpem9udGFsLW9mZnNldDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBNaXNjXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEFiYnJldmlhdGlvbnMgYW5kIGFjcm9ueW1zXG5hYmJyW3RpdGxlXSxcbi8vIEFkZCBkYXRhLSogYXR0cmlidXRlIHRvIGhlbHAgb3V0IG91ciB0b29sdGlwIHBsdWdpbiwgcGVyIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvNTI1N1xuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7XG4gIGN1cnNvcjogaGVscDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAkYWJici1ib3JkZXItY29sb3I7XG59XG4uaW5pdGlhbGlzbSB7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBAZXh0ZW5kIC50ZXh0LXVwcGVyY2FzZTtcbn1cblxuLy8gQmxvY2txdW90ZXNcbmJsb2NrcXVvdGUge1xuICBwYWRkaW5nOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBtYXJnaW46IDAgMCAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc2l6ZTogJGJsb2NrcXVvdGUtZm9udC1zaXplO1xuICBib3JkZXItbGVmdDogNXB4IHNvbGlkICRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjtcblxuICBwLFxuICB1bCxcbiAgb2wge1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIE5vdGU6IERlcHJlY2F0ZWQgc21hbGwgYW5kIC5zbWFsbCBhcyBvZiB2My4xLjBcbiAgLy8gQ29udGV4dDogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY2MFxuICBmb290ZXIsXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogODAlOyAvLyBiYWNrIHRvIGRlZmF1bHQgZm9udC1zaXplXG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDIwMTQgXFwwMEEwJzsgLy8gZW0gZGFzaCwgbmJzcFxuICAgIH1cbiAgfVxufVxuXG4vLyBPcHBvc2l0ZSBhbGlnbm1lbnQgb2YgYmxvY2txdW90ZVxuLy9cbi8vIEhlYWRzIHVwOiBgYmxvY2txdW90ZS5wdWxsLXJpZ2h0YCBoYXMgYmVlbiBkZXByZWNhdGVkIGFzIG9mIHYzLjEuMC5cbi5ibG9ja3F1b3RlLXJldmVyc2UsXG5ibG9ja3F1b3RlLnB1bGwtcmlnaHQge1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGJvcmRlci1yaWdodDogNXB4IHNvbGlkICRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gIC8vIEFjY291bnQgZm9yIGNpdGF0aW9uXG4gIGZvb3RlcixcbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgJjpiZWZvcmUgeyBjb250ZW50OiAnJzsgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ1xcMDBBMCBcXDIwMTQnOyAvLyBuYnNwLCBlbSBkYXNoXG4gICAgfVxuICB9XG59XG5cbi8vIEFkZHJlc3Nlc1xuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG59XG4iLCIvL1xuLy8gQ29kZSAoaW5saW5lIGFuZCBibG9jaylcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSW5saW5lIGFuZCBibG9jayBjb2RlIHN0eWxlc1xuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbn1cblxuLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBwYWRkaW5nOiAycHggNHB4O1xuICBmb250LXNpemU6IDkwJTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbn1cblxuLy8gVXNlciBpbnB1dCB0eXBpY2FsbHkgZW50ZXJlZCB2aWEga2V5Ym9hcmRcbmtiZCB7XG4gIHBhZGRpbmc6IDJweCA0cHg7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc21hbGw7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTFweCAwIHJnYmEoMCwwLDAsLjI1KTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtIDEpIC8gMik7XG4gIG1hcmdpbjogMCAwICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcbiAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlIC0gMSk7IC8vIDE0cHggdG8gMTNweFxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBjb2xvcjogJHByZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByZS1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJHByZS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6ICRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG4iLCIvL1xuLy8gR3JpZCBzeXN0ZW1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuLmNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lci1maXhlZDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICB3aWR0aDogJGNvbnRhaW5lci1zbTtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICB3aWR0aDogJGNvbnRhaW5lci1tZDtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICB3aWR0aDogJGNvbnRhaW5lci1sZztcbiAgfVxufVxuXG5cbi8vIEZsdWlkIGNvbnRhaW5lclxuLy9cbi8vIFV0aWxpemVzIHRoZSBtaXhpbiBtZWFudCBmb3IgZml4ZWQgd2lkdGggY29udGFpbmVycywgYnV0IHdpdGhvdXQgYW55IGRlZmluZWRcbi8vIHdpZHRoIGZvciBmbHVpZCwgZnVsbCB3aWR0aCBsYXlvdXRzLlxuXG4uY29udGFpbmVyLWZsdWlkIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyLWZpeGVkO1xufVxuXG5cbi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiBhbmQgY2xlYXIgdGhlIGZsb2F0cyBvZiB5b3VyIGNvbHVtbnMuXG5cbi5yb3cge1xuICBAaW5jbHVkZSBtYWtlLXJvdztcbn1cblxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucztcblxuXG4vLyBFeHRyYSBzbWFsbCBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIGV4dHJhIHNtYWxsIGRldmljZXMgbGlrZVxuLy8gc21hcnRwaG9uZXMuXG5cbkBpbmNsdWRlIG1ha2UtZ3JpZCh4cyk7XG5cblxuLy8gU21hbGwgZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgc21hbGwgZGV2aWNlIHJhbmdlLCBmcm9tIHBob25lc1xuLy8gdG8gdGFibGV0cy5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChzbSk7XG59XG5cblxuLy8gTWVkaXVtIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIGRlc2t0b3AgZGV2aWNlIHJhbmdlLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKG1kKTtcbn1cblxuXG4vLyBMYXJnZSBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBsYXJnZSBkZXNrdG9wIGRldmljZSByYW5nZS5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChsZyk7XG59XG4iLCIvL1xuLy8gVGFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnO1xufVxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxudGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5cbi8vIEJhc2VsaW5lIHN0eWxlc1xuXG4udGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIC8vIENlbGxzXG4gID4gdGhlYWQsXG4gID4gdGJvZHksXG4gID4gdGZvb3Qge1xuICAgID4gdHIge1xuICAgICAgPiB0aCxcbiAgICAgID4gdGQge1xuICAgICAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBCb3R0b20gYWxpZ24gZm9yIGNvbHVtbiBoZWFkaW5nc1xuICA+IHRoZWFkID4gdHIgPiB0aCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuICAvLyBSZW1vdmUgdG9wIGJvcmRlciBmcm9tIHRoZWFkIGJ5IGRlZmF1bHRcbiAgPiBjYXB0aW9uICsgdGhlYWQsXG4gID4gY29sZ3JvdXAgKyB0aGVhZCxcbiAgPiB0aGVhZDpmaXJzdC1jaGlsZCB7XG4gICAgPiB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIEFjY291bnQgZm9yIG11bHRpcGxlIHRib2R5IGluc3RhbmNlc1xuICA+IHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gTmVzdGluZ1xuICAudGFibGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xuICB9XG59XG5cblxuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuXG4udGFibGUtY29uZGVuc2VkIHtcbiAgPiB0aGVhZCxcbiAgPiB0Ym9keSxcbiAgPiB0Zm9vdCB7XG4gICAgPiB0ciB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIHBhZGRpbmc6ICR0YWJsZS1jb25kZW5zZWQtY2VsbC1wYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJvcmRlcmVkIHZlcnNpb25cbi8vXG4vLyBBZGQgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gID4gdGhlYWQsXG4gID4gdGJvZHksXG4gID4gdGZvb3Qge1xuICAgID4gdHIge1xuICAgICAgPiB0aCxcbiAgICAgID4gdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IHRoZWFkID4gdHIge1xuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gWmVicmEtc3RyaXBpbmdcbi8vXG4vLyBEZWZhdWx0IHplYnJhLXN0cmlwZSBzdHlsZXMgKGFsdGVybmF0aW5nIGdyYXkgYW5kIHRyYW5zcGFyZW50IGJhY2tncm91bmRzKVxuXG4udGFibGUtc3RyaXBlZCB7XG4gID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZShvZGQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmctYWNjZW50O1xuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICA+IHRib2R5ID4gdHI6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZy1ob3ZlcjtcbiAgfVxufVxuXG5cbi8vIFRhYmxlIGNlbGwgc2l6aW5nXG4vL1xuLy8gUmVzZXQgZGVmYXVsdCB0YWJsZSBiZWhhdmlvclxuXG50YWJsZSBjb2xbY2xhc3MqPVwiY29sLVwiXSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7IC8vIFByZXZlbnQgYm9yZGVyIGhpZGluZyBpbiBGaXJlZm94IGFuZCBJRTktMTEgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjIzKVxuICBmbG9hdDogbm9uZTtcbiAgZGlzcGxheTogdGFibGUtY29sdW1uO1xufVxudGFibGUge1xuICB0ZCxcbiAgdGgge1xuICAgICZbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljOyAvLyBQcmV2ZW50IGJvcmRlciBoaWRpbmcgaW4gRmlyZWZveCBhbmQgSUU5LTExIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTYyMylcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJsZSBiYWNrZ3JvdW5kc1xuLy9cbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4vLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuXG4vLyBHZW5lcmF0ZSB0aGUgY29udGV4dHVhbCB2YXJpYW50c1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ2FjdGl2ZScsICR0YWJsZS1iZy1hY3RpdmUpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ3N1Y2Nlc3MnLCAkc3RhdGUtc3VjY2Vzcy1iZyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnaW5mbycsICRzdGF0ZS1pbmZvLWJnKTtcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCd3YXJuaW5nJywgJHN0YXRlLXdhcm5pbmctYmcpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ2RhbmdlcicsICRzdGF0ZS1kYW5nZXItYmcpO1xuXG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gV3JhcCB5b3VyIHRhYmxlcyBpbiBgLnRhYmxlLXJlc3BvbnNpdmVgIGFuZCB3ZSdsbCBtYWtlIHRoZW0gbW9iaWxlIGZyaWVuZGx5XG4vLyBieSBlbmFibGluZyBob3Jpem9udGFsIHNjcm9sbGluZy4gT25seSBhcHBsaWVzIDw3NjhweC4gRXZlcnl0aGluZyBhYm92ZSB0aGF0XG4vLyB3aWxsIGRpc3BsYXkgbm9ybWFsbHkuXG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgbWluLWhlaWdodDogMC4wMSU7IC8vIFdvcmthcm91bmQgZm9yIElFOSBidWcgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE0ODM3KVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAqIDAuNzUpO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gICAgLy8gVGlnaHRlbiB1cCBzcGFjaW5nXG4gICAgPiAudGFibGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgLy8gRW5zdXJlIHRoZSBjb250ZW50IGRvZXNuJ3Qgd3JhcFxuICAgICAgPiB0aGVhZCxcbiAgICAgID4gdGJvZHksXG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0ciB7XG4gICAgICAgICAgPiB0aCxcbiAgICAgICAgICA+IHRkIHtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU3BlY2lhbCBvdmVycmlkZXMgZm9yIHRoZSBib3JkZXJlZCB0YWJsZXNcbiAgICA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICBib3JkZXI6IDA7XG5cbiAgICAgIC8vIE51a2UgdGhlIGFwcHJvcHJpYXRlIGJvcmRlcnMgc28gdGhhdCB0aGUgcGFyZW50IGNhbiBoYW5kbGUgdGhlbVxuICAgICAgPiB0aGVhZCxcbiAgICAgID4gdGJvZHksXG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0ciB7XG4gICAgICAgICAgPiB0aDpmaXJzdC1jaGlsZCxcbiAgICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgICAgPiB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gT25seSBudWtlIHRoZSBsYXN0IHJvdydzIGJvdHRvbS1ib3JkZXIgaW4gYHRib2R5YCBhbmQgYHRmb290YCBzaW5jZVxuICAgICAgLy8gY2hhbmNlcyBhcmUgdGhlcmUgd2lsbCBiZSBvbmx5IG9uZSBgdHJgIGluIGEgYHRoZWFkYCBhbmQgdGhhdCB3b3VsZFxuICAgICAgLy8gcmVtb3ZlIHRoZSBib3JkZXIgYWx0b2dldGhlci5cbiAgICAgID4gdGJvZHksXG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICA+IHRoLFxuICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEZvcm1zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIE5vcm1hbGl6ZSBub24tY29udHJvbHNcbi8vXG4vLyBSZXN0eWxlIGFuZCBiYXNlbGluZSBub24tY29udHJvbCBmb3JtIGVsZW1lbnRzLlxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xuICAvLyBDaHJvbWUgYW5kIEZpcmVmb3ggc2V0IGEgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4gIC8vIHNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGl0IGJlaGF2ZXMgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTkuXG4gIG1pbi13aWR0aDogMDtcbn1cblxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogJGxlZ2VuZC1jb2xvcjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxlZ2VuZC1ib3JkZXItY29sb3I7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIEZvcmNlIElFOCB0byB3cmFwIGxvbmcgY29udGVudCAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTMxNDEpXG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cblxuLy8gTm9ybWFsaXplIGZvcm0gY29udHJvbHNcbi8vXG4vLyBXaGlsZSBtb3N0IG9mIG91ciBmb3JtIHN0eWxlcyByZXF1aXJlIGV4dHJhIGNsYXNzZXMsIHNvbWUgYmFzaWMgbm9ybWFsaXphdGlvblxuLy8gaXMgcmVxdWlyZWQgdG8gZW5zdXJlIG9wdGltdW0gZGlzcGxheSB3aXRoIG9yIHdpdGhvdXQgdGhvc2UgY2xhc3NlcyB0byBiZXR0ZXJcbi8vIGFkZHJlc3MgYnJvd3NlciBpbmNvbnNpc3RlbmNpZXMuXG5cbi8vIE92ZXJyaWRlIGNvbnRlbnQtYm94IGluIE5vcm1hbGl6ZSAoKiBpc24ndCBzcGVjaWZpYyBlbm91Z2gpXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbn1cblxuLy8gUG9zaXRpb24gcmFkaW9zIGFuZCBjaGVja2JveGVzIGJldHRlclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgbWFyZ2luOiA0cHggMCAwO1xuICBtYXJnaW4tdG9wOiAxcHggXFw5OyAvLyBJRTgtOVxuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG5pbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBNYWtlIHJhbmdlIGlucHV0cyBiZWhhdmUgbGlrZSB0ZXh0dWFsIGZvcm0gY29udHJvbHNcbmlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gTWFrZSBtdWx0aXBsZSBzZWxlY3QgZWxlbWVudHMgaGVpZ2h0IG5vdCBmaXhlZFxuc2VsZWN0W211bHRpcGxlXSxcbnNlbGVjdFtzaXplXSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gRm9jdXMgZm9yIGZpbGUsIHJhZGlvLCBhbmQgY2hlY2tib3hcbmlucHV0W3R5cGU9XCJmaWxlXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzIHtcbiAgQGluY2x1ZGUgdGFiLWZvY3VzO1xufVxuXG4vLyBBZGp1c3Qgb3V0cHV0IGVsZW1lbnRcbm91dHB1dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbn1cblxuXG4vLyBDb21tb24gZm9ybSBjb250cm9sc1xuLy9cbi8vIFNoYXJlZCBzaXplIGFuZCB0eXBlIHJlc2V0cyBmb3IgZm9ybSBjb250cm9scy4gQXBwbHkgYC5mb3JtLWNvbnRyb2xgIHRvIGFueVxuLy8gb2YgdGhlIGZvbGxvd2luZyBmb3JtIGNvbnRyb2xzOlxuLy9cbi8vIHNlbGVjdFxuLy8gdGV4dGFyZWFcbi8vIGlucHV0W3R5cGU9XCJ0ZXh0XCJdXG4vLyBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl1cbi8vIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXVxuLy8gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZVwiXVxuLy8gaW5wdXRbdHlwZT1cIm1vbnRoXCJdXG4vLyBpbnB1dFt0eXBlPVwidGltZVwiXVxuLy8gaW5wdXRbdHlwZT1cIndlZWtcIl1cbi8vIGlucHV0W3R5cGU9XCJudW1iZXJcIl1cbi8vIGlucHV0W3R5cGU9XCJlbWFpbFwiXVxuLy8gaW5wdXRbdHlwZT1cInVybFwiXVxuLy8gaW5wdXRbdHlwZT1cInNlYXJjaFwiXVxuLy8gaW5wdXRbdHlwZT1cInRlbFwiXVxuLy8gaW5wdXRbdHlwZT1cImNvbG9yXCJdXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlOyAvLyBNYWtlIGlucHV0cyBhdCBsZWFzdCB0aGUgaGVpZ2h0IG9mIHRoZWlyIGJ1dHRvbiBjb3VudGVycGFydCAoYmFzZSBsaW5lLWhlaWdodCArIHBhZGRpbmcgKyBib3JkZXIpXG4gIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcbiAgYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXM7IC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIDxzZWxlY3Q+cyBpbiBDU1MuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlci1jb2xvciBlYXNlLWluLW91dCAuMTVzLCBib3gtc2hhZG93IGVhc2UtaW4tb3V0IC4xNXMpO1xuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLWZvY3VzO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gIEBpbmNsdWRlIHBsYWNlaG9sZGVyO1xuXG4gIC8vIFVuc3R5bGUgdGhlIGNhcmV0IG9uIGA8c2VsZWN0PmBzIGluIElFMTArLlxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICZbZGlzYWJsZWRdLFxuICAmW3JlYWRvbmx5XSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZy1kaXNhYmxlZDtcbiAgICBvcGFjaXR5OiAxOyAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1XG4gIH1cblxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0ZXh0YXJlYSYgdG8gdGV4dGFyZWEuZm9ybS1jb250cm9sXG59XG5cbi8vIFJlc2V0IGhlaWdodCBmb3IgYHRleHRhcmVhYHNcbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vLyBTZWFyY2ggaW5wdXRzIGluIGlPU1xuLy9cbi8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbi8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuXG4vLyBTcGVjaWFsIHN0eWxlcyBmb3IgaU9TIHRlbXBvcmFsIGlucHV0c1xuLy9cbi8vIEluIE1vYmlsZSBTYWZhcmksIHNldHRpbmcgYGRpc3BsYXk6IGJsb2NrYCBvbiB0ZW1wb3JhbCBpbnB1dHMgY2F1c2VzIHRoZVxuLy8gdGV4dCB3aXRoaW4gdGhlIGlucHV0IHRvIGJlY29tZSB2ZXJ0aWNhbGx5IG1pc2FsaWduZWQuIEFzIGEgd29ya2Fyb3VuZCwgd2Vcbi8vIHNldCBhIHBpeGVsIGxpbmUtaGVpZ2h0IHRoYXQgbWF0Y2hlcyB0aGUgZ2l2ZW4gaGVpZ2h0IG9mIHRoZSBpbnB1dCwgYnV0IG9ubHlcbi8vIGZvciBTYWZhcmkuIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5ODQ4XG4vL1xuLy8gTm90ZSB0aGF0IGFzIG9mIDguMywgaU9TIGRvZXNuJ3Qgc3VwcG9ydCBgZGF0ZXRpbWVgIG9yIGB3ZWVrYC5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMCkge1xuICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4gIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdIHtcbiAgICAmLmZvcm0tY29udHJvbCB7XG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlO1xuICAgIH1cblxuICAgICYuaW5wdXQtc20sXG4gICAgLmlucHV0LWdyb3VwLXNtICYge1xuICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gICAgfVxuXG4gICAgJi5pbnB1dC1sZyxcbiAgICAuaW5wdXQtZ3JvdXAtbGcgJiB7XG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGb3JtIGdyb3Vwc1xuLy9cbi8vIERlc2lnbmVkIHRvIGhlbHAgd2l0aCB0aGUgb3JnYW5pemF0aW9uIGFuZCBzcGFjaW5nIG9mIHZlcnRpY2FsIGZvcm1zLiBGb3Jcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4ucmFkaW8sXG4uY2hlY2tib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gIGxhYmVsIHtcbiAgICBtaW4taGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7IC8vIEVuc3VyZSB0aGUgaW5wdXQgZG9lc24ndCBqdW1wIHdoZW4gdGhlcmUgaXMgbm8gdGV4dFxuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4ucmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuLnJhZGlvLWlubGluZSBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4uY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuLmNoZWNrYm94LWlubGluZSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgbWFyZ2luLXRvcDogNHB4IFxcOTtcbn1cblxuLnJhZGlvICsgLnJhZGlvLFxuLmNoZWNrYm94ICsgLmNoZWNrYm94IHtcbiAgbWFyZ2luLXRvcDogLTVweDsgLy8gTW92ZSB1cCBzaWJsaW5nIHJhZGlvcyBvciBjaGVja2JveGVzIGZvciB0aWdodGVyIHNwYWNpbmdcbn1cblxuLy8gUmFkaW9zIGFuZCBjaGVja2JveGVzIG9uIHNhbWUgbGluZVxuLnJhZGlvLWlubGluZSxcbi5jaGVja2JveC1pbmxpbmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ucmFkaW8taW5saW5lICsgLnJhZGlvLWlubGluZSxcbi5jaGVja2JveC1pbmxpbmUgKyAuY2hlY2tib3gtaW5saW5lIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IC8vIHNwYWNlIG91dCBjb25zZWN1dGl2ZSBpbmxpbmUgY29udHJvbHNcbn1cblxuLy8gQXBwbHkgc2FtZSBkaXNhYmxlZCBjdXJzb3IgdHdlYWsgYXMgZm9yIGlucHV0c1xuLy8gU29tZSBzcGVjaWFsIGNhcmUgaXMgbmVlZGVkIGJlY2F1c2UgPGxhYmVsPnMgZG9uJ3QgaW5oZXJpdCB0aGVpciBwYXJlbnQncyBgY3Vyc29yYC5cbi8vXG4vLyBOb3RlOiBOZWl0aGVyIHJhZGlvcyBub3IgY2hlY2tib3hlcyBjYW4gYmUgcmVhZG9ubHkuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxufVxuLy8gVGhlc2UgY2xhc3NlcyBhcmUgdXNlZCBkaXJlY3RseSBvbiA8bGFiZWw+c1xuLnJhZGlvLWlubGluZSxcbi5jaGVja2JveC1pbmxpbmUge1xuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG59XG4vLyBUaGVzZSBjbGFzc2VzIGFyZSB1c2VkIG9uIGVsZW1lbnRzIHdpdGggPGxhYmVsPiBkZXNjZW5kYW50c1xuLnJhZGlvLFxuLmNoZWNrYm94IHtcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGxhYmVsIHtcbiAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTdGF0aWMgZm9ybSBjb250cm9sIHRleHRcbi8vXG4vLyBBcHBseSBjbGFzcyB0byBhIGBwYCBlbGVtZW50IHRvIG1ha2UgYW55IHN0cmluZyBvZiB0ZXh0IGFsaWduIHdpdGggbGFiZWxzIGluXG4vLyBhIGhvcml6b250YWwgZm9ybSBsYXlvdXQuXG5cbi5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgLy8gU2l6ZSBpdCBhcHByb3ByaWF0ZWx5IG5leHQgdG8gcmVhbCBmb3JtIGNvbnRyb2xzXG4gIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xuICBwYWRkaW5nLWJvdHRvbTogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTtcbiAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIGZyb20gYHBgXG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAkZm9udC1zaXplLWJhc2UpO1xuXG4gICYuaW5wdXQtbGcsXG4gICYuaW5wdXQtc20ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFRoZSBgLmZvcm0tZ3JvdXAtKiBmb3JtLWNvbnRyb2xgIHZhcmlhdGlvbnMgYXJlIHNhZGx5IGR1cGxpY2F0ZWQgdG8gYXZvaWQgdGhlXG4vLyBpc3N1ZSBkb2N1bWVudGVkIGluIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTUwNzQuXG5cbkBpbmNsdWRlIGlucHV0LXNpemUoJy5pbnB1dC1zbScsICRpbnB1dC1oZWlnaHQtc21hbGwsICRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkbGluZS1oZWlnaHQtc21hbGwsICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsKTtcbi5mb3JtLWdyb3VwLXNtIHtcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtc21hbGw7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw7XG4gIH1cbiAgc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICB9XG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbiAgc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAkZm9udC1zaXplLXNtYWxsKTtcbiAgICBwYWRkaW5nOiAoJHBhZGRpbmctc21hbGwtdmVydGljYWwgKyAxKSAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtYWxsO1xuICB9XG59XG5cbkBpbmNsdWRlIGlucHV0LXNpemUoJy5pbnB1dC1sZycsICRpbnB1dC1oZWlnaHQtbGFyZ2UsICRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWxhcmdlLCAkbGluZS1oZWlnaHQtbGFyZ2UsICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlKTtcbi5mb3JtLWdyb3VwLWxnIHtcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtbGFyZ2U7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIH1cbiAgc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICB9XG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbiAgc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICAgIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAkZm9udC1zaXplLWxhcmdlKTtcbiAgICBwYWRkaW5nOiAoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgKyAxKSAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWxhcmdlO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIGZlZWRiYWNrIHN0YXRlc1xuLy9cbi8vIEFwcGx5IGNvbnRleHR1YWwgYW5kIHNlbWFudGljIHN0YXRlcyB0byBpbmRpdmlkdWFsIGZvcm0gY29udHJvbHMuXG5cbi5oYXMtZmVlZGJhY2sge1xuICAvLyBFbmFibGUgYWJzb2x1dGUgcG9zaXRpb25pbmdcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC8vIEVuc3VyZSBpY29ucyBkb24ndCBvdmVybGFwIHRleHRcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgcGFkZGluZy1yaWdodDogKCRpbnB1dC1oZWlnaHQtYmFzZSAqIDEuMjUpO1xuICB9XG59XG4vLyBGZWVkYmFjayBpY29uIChyZXF1aXJlcyAuZ2x5cGhpY29uIGNsYXNzZXMpXG4uZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAyOyAvLyBFbnN1cmUgaWNvbiBpcyBhYm92ZSBpbnB1dCBncm91cHNcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LWJhc2U7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmlucHV0LWxnICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcbi5pbnB1dC1ncm91cC1sZyArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uZm9ybS1ncm91cC1sZyAuZm9ybS1jb250cm9sICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xufVxuLmlucHV0LXNtICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcbi5pbnB1dC1ncm91cC1zbSArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uZm9ybS1ncm91cC1zbSAuZm9ybS1jb250cm9sICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xufVxuXG4vLyBGZWVkYmFjayBzdGF0ZXNcbi5oYXMtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRzdGF0ZS1zdWNjZXNzLXRleHQsICRzdGF0ZS1zdWNjZXNzLXRleHQsICRzdGF0ZS1zdWNjZXNzLWJnKTtcbn1cbi5oYXMtd2FybmluZyB7XG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRzdGF0ZS13YXJuaW5nLXRleHQsICRzdGF0ZS13YXJuaW5nLXRleHQsICRzdGF0ZS13YXJuaW5nLWJnKTtcbn1cbi5oYXMtZXJyb3Ige1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtZGFuZ2VyLXRleHQsICRzdGF0ZS1kYW5nZXItdGV4dCwgJHN0YXRlLWRhbmdlci1iZyk7XG59XG5cbi8vIFJlcG9zaXRpb24gZmVlZGJhY2sgaWNvbiBpZiBpbnB1dCBoYXMgdmlzaWJsZSBsYWJlbCBhYm92ZVxuLmhhcy1mZWVkYmFjayBsYWJlbCB7XG5cbiAgJiB+IC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgIHRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArIDUpOyAvLyBIZWlnaHQgb2YgdGhlIGBsYWJlbGAgYW5kIGl0cyBtYXJnaW5cbiAgfVxuICAmLnNyLW9ubHkgfiAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICB0b3A6IDA7XG4gIH1cbn1cblxuXG4vLyBIZWxwIHRleHRcbi8vXG4vLyBBcHBseSB0byBhbnkgZWxlbWVudCB5b3Ugd2lzaCB0byBjcmVhdGUgbGlnaHQgdGV4dCBmb3IgcGxhY2VtZW50IGltbWVkaWF0ZWx5XG4vLyBiZWxvdyBhIGZvcm0gY29udHJvbC4gVXNlIGZvciBnZW5lcmFsIGhlbHAsIGZvcm1hdHRpbmcsIG9yIGluc3RydWN0aW9uYWwgdGV4dC5cblxuLmhlbHAtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jazsgLy8gYWNjb3VudCBmb3IgYW55IGVsZW1lbnQgdXNpbmcgaGVscC1ibG9ja1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGNvbG9yOiBsaWdodGVuKCR0ZXh0LWNvbG9yLCAyNSUpOyAvLyBsaWdodGVuIHRoZSB0ZXh0IHNvbWUgZm9yIGNvbnRyYXN0XG59XG5cblxuLy8gSW5saW5lIGZvcm1zXG4vL1xuLy8gTWFrZSBmb3JtcyBhcHBlYXIgaW5saW5lKC1ibG9jaykgYnkgYWRkaW5nIHRoZSBgLmZvcm0taW5saW5lYCBjbGFzcy4gSW5saW5lXG4vLyBmb3JtcyBiZWdpbiBzdGFja2VkIG9uIGV4dHJhIHNtYWxsIChtb2JpbGUpIGRldmljZXMgYW5kIHRoZW4gZ28gaW5saW5lIHdoZW5cbi8vIHZpZXdwb3J0cyByZWFjaCA8NzY4cHguXG4vL1xuLy8gUmVxdWlyZXMgd3JhcHBpbmcgaW5wdXRzIGFuZCBsYWJlbHMgd2l0aCBgLmZvcm0tZ3JvdXBgIGZvciBwcm9wZXIgZGlzcGxheSBvZlxuLy8gZGVmYXVsdCBIVE1MIGZvcm0gY29udHJvbHMgYW5kIG91ciBjdXN0b20gZm9ybSBjb250cm9scyAoZS5nLiwgaW5wdXQgZ3JvdXBzKS5cbi8vXG4vLyBIZWFkcyB1cCEgVGhpcyBpcyBtaXhpbi1lZCBpbnRvIGAubmF2YmFyLWZvcm1gIGluIG5hdmJhcnMubGVzcy5cblxuLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGZyb20gYC5mb3JtLWlubGluZWAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuQG1peGluIGZvcm0taW5saW5lIHtcblxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgLy8gSW5saW5lLWJsb2NrIGFsbCB0aGUgdGhpbmdzIGZvciBcImlubGluZVwiXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gSW4gbmF2YmFyLWZvcm0sIGFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bzsgLy8gUHJldmVudCBsYWJlbHMgZnJvbSBzdGFja2luZyBhYm92ZSBpbnB1dHMgaW4gYC5mb3JtLWdyb3VwYFxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBNYWtlIHN0YXRpYyBjb250cm9scyBiZWhhdmUgbGlrZSByZWd1bGFyIG9uZXNcbiAgICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS10YWJsZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgIC5pbnB1dC1ncm91cC1hZGRvbixcbiAgICAgIC5pbnB1dC1ncm91cC1idG4sXG4gICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSW5wdXQgZ3JvdXBzIG5lZWQgdGhhdCAxMDAlIHdpZHRoIHRob3VnaFxuICAgIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIG9uIHJhZGlvcy9jaGVja2JveGVzIHRoYXQgd2VyZSB1c2VkIGZvciBzdGFja2luZywgYW5kXG4gICAgLy8gdGhlbiB1bmRvIHRoZSBmbG9hdGluZyBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgdG8gbWF0Y2guXG4gICAgLnJhZGlvLFxuICAgIC5jaGVja2JveCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAucmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAgIC5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLy8gUmUtb3ZlcnJpZGUgdGhlIGZlZWRiYWNrIGljb24uXG4gICAgLmhhcy1mZWVkYmFjayAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG4gIH1cbn1cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhcyBgQG1peGluIGZvcm0taW5saW5lYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XG4uZm9ybS1pbmxpbmUge1xuICBAaW5jbHVkZSBmb3JtLWlubGluZTtcbn1cblxuXG5cbi8vIEhvcml6b250YWwgZm9ybXNcbi8vXG4vLyBIb3Jpem9udGFsIGZvcm1zIGFyZSBidWlsdCBvbiBncmlkIGNsYXNzZXMgYW5kIGFsbG93IHlvdSB0byBjcmVhdGUgZm9ybXMgd2l0aFxuLy8gbGFiZWxzIG9uIHRoZSBsZWZ0IGFuZCBpbnB1dHMgb24gdGhlIHJpZ2h0LlxuXG4uZm9ybS1ob3Jpem9udGFsIHtcblxuICAvLyBDb25zaXN0ZW50IHZlcnRpY2FsIGFsaWdubWVudCBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXNcbiAgLy9cbiAgLy8gTGFiZWxzIGFsc28gZ2V0IHNvbWUgcmVzZXQgc3R5bGVzLCBidXQgdGhhdCBpcyBzY29wZWQgdG8gYSBtZWRpYSBxdWVyeSBiZWxvdy5cbiAgLnJhZGlvLFxuICAuY2hlY2tib3gsXG4gIC5yYWRpby1pbmxpbmUsXG4gIC5jaGVja2JveC1pbmxpbmUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTsgLy8gRGVmYXVsdCBwYWRkaW5nIHBsdXMgYSBib3JkZXJcbiAgfVxuICAvLyBBY2NvdW50IGZvciBwYWRkaW5nIHdlJ3JlIGFkZGluZyB0byBlbnN1cmUgdGhlIGFsaWdubWVudCBhbmQgb2YgaGVscCB0ZXh0XG4gIC8vIGFuZCBvdGhlciBjb250ZW50IGJlbG93IGl0ZW1zXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94IHtcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKSk7XG4gIH1cblxuICAvLyBNYWtlIGZvcm0gZ3JvdXBzIGJlaGF2ZSBsaWtlIHJvd3NcbiAgLmZvcm0tZ3JvdXAge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93O1xuICB9XG5cbiAgLy8gUmVzZXQgc3BhY2luZyBhbmQgcmlnaHQgYWxpZ24gbGFiZWxzLCBidXQgc2NvcGUgdG8gbWVkaWEgcXVlcmllcyBzbyB0aGF0XG4gIC8vIGxhYmVscyBvbiBuYXJyb3cgdmlld3BvcnRzIHN0YWNrIHRoZSBzYW1lIGFzIGEgZGVmYXVsdCBmb3JtIGV4YW1wbGUuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpOyAvLyBEZWZhdWx0IHBhZGRpbmcgcGx1cyBhIGJvcmRlclxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbGlkYXRpb24gc3RhdGVzXG4gIC8vXG4gIC8vIFJlcG9zaXRpb24gdGhlIGljb24gYmVjYXVzZSBpdCdzIG5vdyB3aXRoaW4gYSBncmlkIGNvbHVtbiBhbmQgY29sdW1ucyBoYXZlXG4gIC8vIGBwb3NpdGlvbjogcmVsYXRpdmU7YCBvbiB0aGVtLiBBbHNvIGFjY291bnRzIGZvciB0aGUgZ3JpZCBndXR0ZXIgcGFkZGluZy5cbiAgLmhhcy1mZWVkYmFjayAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICByaWdodDogZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcbiAgfVxuXG4gIC8vIEZvcm0gZ3JvdXAgc2l6ZXNcbiAgLy9cbiAgLy8gUXVpY2sgdXRpbGl0eSBjbGFzcyBmb3IgYXBwbHlpbmcgYC5pbnB1dC1sZ2AgYW5kIGAuaW5wdXQtc21gIHN0eWxlcyB0byB0aGVcbiAgLy8gaW5wdXRzIGFuZCBsYWJlbHMgd2l0aGluIGEgYC5mb3JtLWdyb3VwYC5cbiAgLmZvcm0tZ3JvdXAtbGcge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICsgMSk7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm0tZ3JvdXAtc20ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICsgMSk7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCdXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2Ugc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBGb3IgaW5wdXQuYnRuXG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLWJhc2UtdmVydGljYWwsICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1iYXNlLCAkbGluZS1oZWlnaHQtYmFzZSwgJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICBAaW5jbHVkZSB1c2VyLXNlbGVjdChub25lKTtcblxuICAmLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBAaW5jbHVkZSB0YWItZm9jdXM7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6ICRidG4tZGVmYXVsdC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgM3B4IDVweCByZ2JhKDAsMCwwLC4xMjUpKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIEBpbmNsdWRlIG9wYWNpdHkoLjY1KTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEuYnRuXG59XG5cbmEuYnRuIHtcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyAvLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tZGVmYXVsdCB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tZGVmYXVsdC1jb2xvciwgJGJ0bi1kZWZhdWx0LWJnLCAkYnRuLWRlZmF1bHQtYm9yZGVyKTtcbn1cbi5idG4tcHJpbWFyeSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tcHJpbWFyeS1jb2xvciwgJGJ0bi1wcmltYXJ5LWJnLCAkYnRuLXByaW1hcnktYm9yZGVyKTtcbn1cbi8vIFN1Y2Nlc3MgYXBwZWFycyBhcyBncmVlblxuLmJ0bi1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1zdWNjZXNzLWNvbG9yLCAkYnRuLXN1Y2Nlc3MtYmcsICRidG4tc3VjY2Vzcy1ib3JkZXIpO1xufVxuLy8gSW5mbyBhcHBlYXJzIGFzIGJsdWUtZ3JlZW5cbi5idG4taW5mbyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4taW5mby1jb2xvciwgJGJ0bi1pbmZvLWJnLCAkYnRuLWluZm8tYm9yZGVyKTtcbn1cbi8vIFdhcm5pbmcgYXBwZWFycyBhcyBvcmFuZ2Vcbi5idG4td2FybmluZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4td2FybmluZy1jb2xvciwgJGJ0bi13YXJuaW5nLWJnLCAkYnRuLXdhcm5pbmctYm9yZGVyKTtcbn1cbi8vIERhbmdlciBhbmQgZXJyb3IgYXBwZWFyIGFzIHJlZFxuLmJ0bi1kYW5nZXIge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWRhbmdlci1jb2xvciwgJGJ0bi1kYW5nZXItYmcsICRidG4tZGFuZ2VyLWJvcmRlcik7XG59XG5cblxuLy8gTGluayBidXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgJixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJ1dHRvbiBTaXplc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1sZyB7XG4gIC8vIGxpbmUtaGVpZ2h0OiBlbnN1cmUgZXZlbi1udW1iZXJlZCBoZWlnaHQgb2YgYnV0dG9uIG5leHQgdG8gbGFyZ2UgaW5wdXRcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRmb250LXNpemUtbGFyZ2UsICRsaW5lLWhlaWdodC1sYXJnZSwgJGJ0bi1ib3JkZXItcmFkaXVzLWxhcmdlKTtcbn1cbi5idG4tc20ge1xuICAvLyBsaW5lLWhlaWdodDogZW5zdXJlIHByb3BlciBoZWlnaHQgb2YgYnV0dG9uIG5leHQgdG8gc21hbGwgaW5wdXRcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsKTtcbn1cbi5idG4teHMge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy14cy12ZXJ0aWNhbCwgJHBhZGRpbmcteHMtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkYnRuLWJvcmRlci1yYWRpdXMtc21hbGwpO1xufVxuXG5cbi8vIEJsb2NrIGJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xuLmJ0bi1ibG9jayArIC5idG4tYmxvY2sge1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbi8vIFNwZWNpZmljaXR5IG92ZXJyaWRlc1xuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAmLmJ0bi1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb21wb25lbnQgYW5pbWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSGVhZHMgdXAhXG4vL1xuLy8gV2UgZG9uJ3QgdXNlIHRoZSBgLm9wYWNpdHkoKWAgbWl4aW4gaGVyZSBzaW5jZSBpdCBjYXVzZXMgYSBidWcgd2l0aCB0ZXh0XG4vLyBmaWVsZHMgaW4gSUU3LTguIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzU1Mi5cblxuLmZhZGUge1xuICBvcGFjaXR5OiAwO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgLjE1cyBsaW5lYXIpO1xuICAmLmluIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgJi5pbiAgICAgIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIHRyJi5pbiB0byB0ci5jb2xsYXBzZS5pblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgdGJvZHkmLmluIHRvIHRib2R5LmNvbGxhcHNlLmluXG59XG5cbnRyLmNvbGxhcHNlLmluICAgIHsgZGlzcGxheTogdGFibGUtcm93OyB9XG5cbnRib2R5LmNvbGxhcHNlLmluIHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwOyB9XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tcHJvcGVydHkoaGVpZ2h0LCB2aXNpYmlsaXR5KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbiguMzVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oZWFzZSk7XG59XG4iLCIvL1xuLy8gRHJvcGRvd24gbWVudXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gRHJvcGRvd24gYXJyb3cvY2FyZXRcbi5jYXJldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXRvcDogICAkY2FyZXQtd2lkdGgtYmFzZSBkYXNoZWQ7XG4gIGJvcmRlci10b3A6ICAgJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgXFw5OyAvLyBJRThcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGRpdilcbi5kcm9wdXAsXG4uZHJvcGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8vIFByZXZlbnQgdGhlIGZvY3VzIG9uIHRoZSBkcm9wZG93biB0b2dnbGUgd2hlbiBjbG9zaW5nIGRyb3Bkb3duc1xuLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51ICh1bClcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6IDE2MHB4O1xuICBwYWRkaW5nOiA1cHggMDtcbiAgbWFyZ2luOiAycHggMCAwOyAvLyBvdmVycmlkZSBkZWZhdWx0IHVsXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjsgLy8gSUU4IGZhbGxiYWNrXG4gIGJvcmRlcjogMXB4IHNvbGlkICRkcm9wZG93bi1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCA2cHggMTJweCByZ2JhKDAsMCwwLC4xNzUpKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcblxuICAvLyBBbGlnbnMgdGhlIGRyb3Bkb3duIG1lbnUgdG8gcmlnaHRcbiAgLy9cbiAgLy8gRGVwcmVjYXRlZCBhcyBvZiAzLjEuMCBpbiBmYXZvciBvZiBgLmRyb3Bkb3duLW1lbnUtW2Rpcl1gXG4gICYucHVsbC1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gIC8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiB0aGUgZHJvcGRvd25cbiAgLmRpdmlkZXIge1xuICAgIEBpbmNsdWRlIG5hdi1kaXZpZGVyKCRkcm9wZG93bi1kaXZpZGVyLWJnKTtcbiAgfVxuXG4gIC8vIExpbmtzIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuICA+IGxpID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogM3B4IDIwcHg7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICB9XG59XG5cbi8vIEhvdmVyL0ZvY3VzIHN0YXRlXG4uZHJvcGRvd24tbWVudSA+IGxpID4gYSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG4gIH1cbn1cblxuLy8gQWN0aXZlIHN0YXRlXG4uZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtYmc7XG4gIH1cbn1cblxuLy8gRGlzYWJsZWQgc3RhdGVcbi8vXG4vLyBHcmF5IG91dCB0ZXh0IGFuZCBlbnN1cmUgdGhlIGhvdmVyL2ZvY3VzIHN0YXRlIHJlbWFpbnMgZ3JheVxuXG4uZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGEge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gIH1cblxuICAvLyBOdWtlIGhvdmVyL2ZvY3VzIGVmZmVjdHNcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRcbiAgICBAaW5jbHVkZSByZXNldC1maWx0ZXI7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG59XG5cbi8vIE9wZW4gc3RhdGUgZm9yIHRoZSBkcm9wZG93blxuLm9wZW4ge1xuICAvLyBTaG93IHRoZSBtZW51XG4gID4gLmRyb3Bkb3duLW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBvdXRsaW5lIHdoZW4gOmZvY3VzIGlzIHRyaWdnZXJlZFxuICA+IGEge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8gTWVudSBwb3NpdGlvbmluZ1xuLy9cbi8vIEFkZCBleHRyYSBjbGFzcyB0byBgLmRyb3Bkb3duLW1lbnVgIHRvIGZsaXAgdGhlIGFsaWdubWVudCBvZiB0aGUgZHJvcGRvd25cbi8vIG1lbnUgd2l0aCB0aGUgcGFyZW50LlxuLmRyb3Bkb3duLW1lbnUtcmlnaHQge1xuICBsZWZ0OiBhdXRvOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIGAuZHJvcGRvd24tbWVudWBcbiAgcmlnaHQ6IDA7XG59XG4vLyBXaXRoIHYzLCB3ZSBlbmFibGVkIGF1dG8tZmxpcHBpbmcgaWYgeW91IGhhdmUgYSBkcm9wZG93biB3aXRoaW4gYSByaWdodFxuLy8gYWxpZ25lZCBuYXYgY29tcG9uZW50LiBUbyBlbmFibGUgdGhlIHVuZG9pbmcgb2YgdGhhdCwgd2UgcHJvdmlkZSBhbiBvdmVycmlkZVxuLy8gdG8gcmVzdG9yZSB0aGUgZGVmYXVsdCBkcm9wZG93biBtZW51IGFsaWdubWVudC5cbi8vXG4vLyBUaGlzIGlzIG9ubHkgZm9yIGxlZnQtYWxpZ25pbmcgYSBkcm9wZG93biBtZW51IHdpdGhpbiBhIGAubmF2YmFyLXJpZ2h0YCBvclxuLy8gYC5wdWxsLXJpZ2h0YCBuYXYgY29tcG9uZW50LlxuLmRyb3Bkb3duLW1lbnUtbGVmdCB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogM3B4IDIwcHg7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBCYWNrZHJvcCB0byBjYXRjaCBib2R5IGNsaWNrcyBvbiBtb2JpbGUsIGV0Yy5cbi5kcm9wZG93bi1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAoJHppbmRleC1kcm9wZG93biAtIDEwKTtcbn1cblxuLy8gUmlnaHQgYWxpZ25lZCBkcm9wZG93bnNcbi5wdWxsLXJpZ2h0ID4gLmRyb3Bkb3duLW1lbnUge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXG4vL1xuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LCBicm8uXG4vLyBUT0RPOiBhYnN0cmFjdCB0aGlzIHNvIHRoYXQgdGhlIG5hdmJhciBmaXhlZCBzdHlsZXMgYXJlIG5vdCBwbGFjZWQgaGVyZT9cblxuLmRyb3B1cCxcbi5uYXZiYXItZml4ZWQtYm90dG9tIC5kcm9wZG93biB7XG4gIC8vIFJldmVyc2UgdGhlIGNhcmV0XG4gIC5jYXJldCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGgtYmFzZSBkYXNoZWQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgXFw5OyAvLyBJRThcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG4gIC8vIERpZmZlcmVudCBwb3NpdGlvbmluZyBmb3IgYm90dG9tIHVwIG1lbnVcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICB9XG59XG5cblxuLy8gQ29tcG9uZW50IGFsaWdubWVudFxuLy9cbi8vIFJlaXRlcmF0ZSBwZXIgbmF2YmFyLmxlc3MgYW5kIHRoZSBtb2RpZmllZCBjb21wb25lbnQgYWxpZ25tZW50IHRoZXJlLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAubmF2YmFyLXJpZ2h0IHtcbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICByaWdodDogMDsgbGVmdDogYXV0bztcbiAgICB9XG4gICAgLy8gTmVjZXNzYXJ5IGZvciBvdmVycmlkZXMgb2YgdGhlIGRlZmF1bHQgcmlnaHQgYWxpZ25lZCBtZW51LlxuICAgIC8vIFdpbGwgcmVtb3ZlIGNvbWUgdjQgaW4gYWxsIGxpa2VsaWhvb2QuXG4gICAgLmRyb3Bkb3duLW1lbnUtbGVmdCB7XG4gICAgICBsZWZ0OiAwOyByaWdodDogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCdXR0b24gZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gIH1cbn1cblxuLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuLmJ0bi1ncm91cCB7XG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmJ0bi1ncm91cCxcbiAgLmJ0bi1ncm91cCArIC5idG4sXG4gIC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBtYXJnaW4tbGVmdDogLTVweDsgLy8gT2Zmc2V0IHRoZSBmaXJzdCBjaGlsZCdzIG1hcmdpblxuICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAuYnRuLFxuICAuYnRuLWdyb3VwLFxuICAuaW5wdXQtZ3JvdXAge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwLFxuICA+IC5pbnB1dC1ncm91cCB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgfVxufVxuXG4uYnRuLWdyb3VwID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIFNldCBjb3JuZXJzIGluZGl2aWR1YWwgYmVjYXVzZSBzb21ldGltZXMgYSBzaW5nbGUgYnV0dG9uIGNhbiBiZSBpbiBhIC5idG4tZ3JvdXAgYW5kIHdlIG5lZWQgOmZpcnN0LWNoaWxkIGFuZCA6bGFzdC1jaGlsZCB0byBib3RoIG1hdGNoXG4uYnRuLWdyb3VwID4gLmJ0bjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAmOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG59XG4vLyBOZWVkIC5kcm9wZG93bi10b2dnbGUgc2luY2UgOmxhc3QtY2hpbGQgZG9lc24ndCBhcHBseSBnaXZlbiBhIC5kcm9wZG93bi1tZW51IGltbWVkaWF0ZWx5IGFmdGVyIGl0XG4uYnRuLWdyb3VwID4gLmJ0bjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmJ0bi1ncm91cCA+IC5kcm9wZG93bi10b2dnbGU6bm90KDpmaXJzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG5cbi8vIEN1c3RvbSBlZGl0cyBmb3IgaW5jbHVkaW5nIGJ0bi1ncm91cHMgd2l0aGluIGJ0bi1ncm91cHMgKHVzZWZ1bCBmb3IgaW5jbHVkaW5nIGRyb3Bkb3duIGJ1dHRvbnMgd2l0aGluIGEgYnRuLWdyb3VwKVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXAge1xuICBmbG9hdDogbGVmdDtcbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICA+IC5idG46bGFzdC1jaGlsZCxcbiAgPiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG59XG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bjpmaXJzdC1jaGlsZCB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cblxuLy8gT24gYWN0aXZlIGFuZCBvcGVuLCBkb24ndCBzaG93IG91dGxpbmVcbi5idG4tZ3JvdXAgLmRyb3Bkb3duLXRvZ2dsZTphY3RpdmUsXG4uYnRuLWdyb3VwLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIG91dGxpbmU6IDA7XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAteHMgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXhzOyB9XG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cblxuXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEdpdmUgdGhlIGxpbmUgYmV0d2VlbiBidXR0b25zIHNvbWUgZGVwdGhcbi5idG4tZ3JvdXAgPiAuYnRuICsgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBhZGRpbmctbGVmdDogOHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG59XG4uYnRuLWdyb3VwID4gLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUge1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG59XG5cbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxuLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBhbmQgc2V0IHRoZSBzYW1lIGluc2V0IHNoYWRvdyBhcyB0aGUgOmFjdGl2ZSBzdGF0ZVxuLmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGUge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgM3B4IDVweCByZ2JhKDAsMCwwLC4xMjUpKTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vLyBSZXBvc2l0aW9uIHRoZSBjYXJldFxuLmJ0biAuY2FyZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi8vIENhcmV0cyBpbiBvdGhlciBidXR0b24gc2l6ZXNcbi5idG4tbGcgLmNhcmV0IHtcbiAgYm9yZGVyLXdpZHRoOiAkY2FyZXQtd2lkdGgtbGFyZ2UgJGNhcmV0LXdpZHRoLWxhcmdlIDA7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG59XG4vLyBVcHNpZGUgZG93biBjYXJldHMgZm9yIC5kcm9wdXBcbi5kcm9wdXAgLmJ0bi1sZyAuY2FyZXQge1xuICBib3JkZXItd2lkdGg6IDAgJGNhcmV0LXdpZHRoLWxhcmdlICRjYXJldC13aWR0aC1sYXJnZTtcbn1cblxuXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCxcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gQ2xlYXIgZmxvYXRzIHNvIGRyb3Bkb3duIG1lbnVzIGNhbiBiZSBwcm9wZXJseSBwbGFjZWRcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICA+IC5idG4ge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgPiAuYnRuICsgLmJ0bixcbiAgPiAuYnRuICsgLmJ0bi1ncm91cCxcbiAgPiAuYnRuLWdyb3VwICsgLmJ0bixcbiAgPiAuYnRuLWdyb3VwICsgLmJ0bi1ncm91cCB7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB7XG4gICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICAmOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRidG4tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRidG4tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgfVxufVxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gID4gLmJ0bjpsYXN0LWNoaWxkLFxuICA+IC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bjpmaXJzdC1jaGlsZCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xufVxuXG5cbi8vIEp1c3RpZmllZCBidXR0b24gZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tZ3JvdXAtanVzdGlmaWVkIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB3aWR0aDogMSU7XG4gIH1cbiAgPiAuYnRuLWdyb3VwIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAuYnRuLWdyb3VwIC5kcm9wZG93bi1tZW51IHtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3ggYW5kIHJhZGlvIG9wdGlvbnNcbi8vXG4vLyBJbiBvcmRlciB0byBzdXBwb3J0IHRoZSBicm93c2VyJ3MgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrLCBwb3dlcmVkIGJ5IHRoZVxuLy8gYHJlcXVpcmVkYCBhdHRyaWJ1dGUsIHdlIGhhdmUgdG8gXCJoaWRlXCIgdGhlIGlucHV0cyB2aWEgYGNsaXBgLiBXZSBjYW5ub3QgdXNlXG4vLyBgZGlzcGxheTogbm9uZTtgIG9yIGB2aXNpYmlsaXR5OiBoaWRkZW47YCBhcyB0aGF0IGFsc28gaGlkZXMgdGhlIHBvcG92ZXIuXG4vLyBTaW1wbHkgdmlzdWFsbHkgaGlkaW5nIHRoZSBpbnB1dHMgdmlhIGBvcGFjaXR5YCB3b3VsZCBsZWF2ZSB0aGVtIGNsaWNrYWJsZSBpblxuLy8gY2VydGFpbiBjYXNlcyB3aGljaCBpcyBwcmV2ZW50ZWQgYnkgdXNpbmcgYGNsaXBgIGFuZCBgcG9pbnRlci1ldmVudHNgLlxuLy8gVGhpcyB3YXksIHdlIGVuc3VyZSBhIERPTSBlbGVtZW50IGlzIHZpc2libGUgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgZnJvbS5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTI3OTQgYW5kXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xNDU1OSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cblxuW2RhdGEtdG9nZ2xlPVwiYnV0dG9uc1wiXSB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjbGlwOiByZWN0KDAsMCwwLDApO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gSW5wdXQgZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBCYXNlIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZHJvcGRvd25zXG4gIGRpc3BsYXk6IHRhYmxlO1xuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlOyAvLyBwcmV2ZW50IGlucHV0IGdyb3VwcyBmcm9tIGluaGVyaXRpbmcgYm9yZGVyIHN0eWxlcyBmcm9tIHRhYmxlIGNlbGxzIHdoZW4gcGxhY2VkIHdpdGhpbiBhIHRhYmxlXG5cbiAgLy8gVW5kbyBwYWRkaW5nIGFuZCBmbG9hdCBvZiBncmlkIGNsYXNzZXNcbiAgJltjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIC8vIEVuc3VyZSB0aGF0IHRoZSBpbnB1dCBpcyBhbHdheXMgYWJvdmUgdGhlICphcHBlbmRlZCogYWRkb24gYnV0dG9uIGZvclxuICAgIC8vIHByb3BlciBib3JkZXIgY29sb3JzLlxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgLy8gSUU5IGZ1YmFycyB0aGUgcGxhY2Vob2xkZXIgYXR0cmlidXRlIGluIHRleHQgaW5wdXRzIGFuZCB0aGUgYXJyb3dzIG9uXG4gICAgLy8gc2VsZWN0IGVsZW1lbnRzIGluIGlucHV0IGdyb3Vwcy4gVG8gZml4IGl0LCB3ZSBmbG9hdCB0aGUgaW5wdXQuIERldGFpbHM6XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU2MSNpc3N1ZWNvbW1lbnQtMjg5MzY4NTVcbiAgICBmbG9hdDogbGVmdDtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cbiAgfVxufVxuXG4vLyBTaXppbmcgb3B0aW9uc1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHtcbiAgQGV4dGVuZCAuaW5wdXQtbGc7XG59XG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xuICBAZXh0ZW5kIC5pbnB1dC1zbTtcbn1cblxuXG4vLyBEaXNwbGF5IGFzIHRhYmxlLWNlbGxcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1idG4sXG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cbiAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG4vLyBBZGRvbiBhbmQgYWRkb24gd3JhcHBlciBmb3IgYnV0dG9uc1xuLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWJ0biB7XG4gIHdpZHRoOiAxJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gTWF0Y2ggdGhlIGlucHV0c1xufVxuXG4vLyBUZXh0IGlucHV0IGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgcGFkZGluZzogJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAkcGFkZGluZy1iYXNlLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzO1xuXG4gIC8vIFNpemluZ1xuICAmLmlucHV0LXNtIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbDtcbiAgfVxuICAmLmlucHV0LWxnIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgfVxuXG4gIC8vIE51a2UgZGVmYXVsdCBtYXJnaW5zIGZyb20gY2hlY2tib3hlcyBhbmQgcmFkaW9zIHRvIHZlcnRpY2FsbHkgY2VudGVyIHdpdGhpbi5cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpmaXJzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1hZGRvbjpmaXJzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4tZ3JvdXAgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5kcm9wZG93bi10b2dnbGUsXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG59XG4uaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpsYXN0LWNoaWxkLFxuLmlucHV0LWdyb3VwLWFkZG9uOmxhc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bi1ncm91cCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuZHJvcGRvd24tdG9nZ2xlLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG4uaW5wdXQtZ3JvdXAtYWRkb246bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG4vLyBCdXR0b24gaW5wdXQgZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAtYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBKYW5raWx5IHByZXZlbnQgaW5wdXQgYnV0dG9uIGdyb3VwcyBmcm9tIHdyYXBwaW5nIHdpdGggYHdoaXRlLXNwYWNlYCBhbmRcbiAgLy8gYGZvbnQtc2l6ZWAgaW4gY29tYmluYXRpb24gd2l0aCBgaW5saW5lLWJsb2NrYCBvbiBidXR0b25zLlxuICBmb250LXNpemU6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBzcGFjaW5nLCBwb3NpdGlvbiBmb3IgYnJpbmdpbmcgaG92ZXJlZC9mb2N1c2VkL2FjdGl2ZWRcbiAgLy8gZWxlbWVudCBhYm92ZSB0aGUgc2libGluZ3MuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICsgLmJ0biB7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICB9XG4gICAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgYnV0dG9uIHRvIHRoZSBmcm9udFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgfVxuXG4gIC8vIE5lZ2F0aXZlIG1hcmdpbiB0byBvbmx5IGhhdmUgYSAxcHggYm9yZGVyIGJldHdlZW4gdGhlIHR3b1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICA+IC5idG4sXG4gICAgPiAuYnRuLWdyb3VwIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTFweDtcbiAgICB9XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICA+IC5idG4sXG4gICAgPiAuYnRuLWdyb3VwIHtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBOYXZzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5uYXYge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgdWwvb2xcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgPiBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgPiBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmc7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1saW5rLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0YXRlIHNldHMgdGV4dCB0byBncmF5IGFuZCBudWtlcyBob3Zlci90YWIgZWZmZWN0c1xuICAgICYuZGlzYWJsZWQgPiBhIHtcbiAgICAgIGNvbG9yOiAkbmF2LWRpc2FibGVkLWxpbmstY29sb3I7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIE9wZW4gZHJvcGRvd25zXG4gIC5vcGVuID4gYSB7XG4gICAgJixcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1saW5rLWhvdmVyLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbGluay1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBOYXYgZGl2aWRlcnMgKGRlcHJlY2F0ZWQgd2l0aCB2My4wLjEpXG4gIC8vXG4gIC8vIFRoaXMgc2hvdWxkIGhhdmUgYmVlbiByZW1vdmVkIGluIHYzIHdpdGggdGhlIGRyb3BwaW5nIG9mIGAubmF2LWxpc3RgLCBidXRcbiAgLy8gd2UgbWlzc2VkIGl0LiBXZSBkb24ndCBjdXJyZW50bHkgc3VwcG9ydCB0aGlzIGFueXdoZXJlLCBidXQgaW4gdGhlIGludGVyZXN0XG4gIC8vIG9mIG1haW50YWluaW5nIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgaW4gY2FzZSB5b3UgdXNlIGl0LCBpdCdzIGRlcHJlY2F0ZWQuXG4gIC5uYXYtZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgbmF2LWRpdmlkZXI7XG4gIH1cblxuICAvLyBQcmV2ZW50IElFOCBmcm9tIG1pc3BsYWNpbmcgaW1nc1xuICAvL1xuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvaXNzdWVzLzk4NCNpc3N1ZWNvbW1lbnQtMzk4NTk4OVxuICA+IGxpID4gYSA+IGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5cblxuLy8gVGFic1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBHaXZlIHRoZSB0YWJzIHNvbWV0aGluZyB0byBzaXQgb25cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuICA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICAvLyBNYWtlIHRoZSBsaXN0LWl0ZW1zIG92ZXJsYXkgdGhlIGJvdHRvbSBib3JkZXJcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuXG4gICAgLy8gQWN0dWFsIHRhYnMgKGFzIGxpbmtzKVxuICAgID4gYSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlIDAgMDtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvciAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGUsIGFuZCBpdHMgOmhvdmVyIHRvIG92ZXJyaWRlIG5vcm1hbCA6aG92ZXJcbiAgICAmLmFjdGl2ZSA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBwdWxsaW5nIHRoaXMgaW4gbWFpbmx5IGZvciBsZXNzIHNob3J0aGFuZFxuICAmLm5hdi1qdXN0aWZpZWQge1xuICAgIEBleHRlbmQgLm5hdi1qdXN0aWZpZWQ7XG4gICAgQGV4dGVuZCAubmF2LXRhYnMtanVzdGlmaWVkO1xuICB9XG59XG5cblxuLy8gUGlsbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5uYXYtcGlsbHMge1xuICA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcblxuICAgIC8vIExpbmtzIHJlbmRlcmVkIGFzIHBpbGxzXG4gICAgPiBhIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cztcbiAgICB9XG4gICAgKyBsaSB7XG4gICAgICBtYXJnaW4tbGVmdDogMnB4O1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgICYuYWN0aXZlID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTdGFja2VkIHBpbGxzXG4ubmF2LXN0YWNrZWQge1xuICA+IGxpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICArIGxpIHtcbiAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyAvLyBubyBuZWVkIGZvciB0aGlzIGdhcCBiZXR3ZWVuIG5hdiBpdGVtc1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdiB2YXJpYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBKdXN0aWZpZWQgbmF2IGxpbmtzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiBsaSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgPiBhIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB9XG4gIH1cblxuICA+IC5kcm9wZG93biAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICA+IGEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBNb3ZlIGJvcmRlcnMgdG8gYW5jaG9ycyBpbnN0ZWFkIG9mIGJvdHRvbSBvZiBsaXN0XG4vL1xuLy8gTWl4aW4gZm9yIGFkZGluZyBvbiB0b3AgdGhlIHNoYXJlZCBgLm5hdi1qdXN0aWZpZWRgIHN0eWxlcyBmb3Igb3VyIHRhYnNcbi5uYXYtdGFicy1qdXN0aWZpZWQge1xuICBib3JkZXItYm90dG9tOiAwO1xuXG4gID4gbGkgPiBhIHtcbiAgICAvLyBPdmVycmlkZSBtYXJnaW4gZnJvbSAubmF2LXRhYnNcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgfVxuXG4gID4gLmFjdGl2ZSA+IGEsXG4gID4gLmFjdGl2ZSA+IGE6aG92ZXIsXG4gID4gLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAwIDA7XG4gICAgfVxuICAgID4gLmFjdGl2ZSA+IGEsXG4gICAgPiAuYWN0aXZlID4gYTpob3ZlcixcbiAgICA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRuYXYtdGFicy1qdXN0aWZpZWQtYWN0aXZlLWxpbmstYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG4udGFiLWNvbnRlbnQge1xuICA+IC50YWItcGFuZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cblxuLy8gRHJvcGRvd25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFNwZWNpZmljIGRyb3Bkb3duc1xuLm5hdi10YWJzIC5kcm9wZG93bi1tZW51IHtcbiAgLy8gbWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xufVxuIiwiLy9cbi8vIE5hdmJhcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gV3JhcHBlciBhbmQgYmFzZSBjbGFzc1xuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogJG5hdmJhci1oZWlnaHQ7IC8vIEVuc3VyZSBhIG5hdmJhciBhbHdheXMgc2hvd3MgKGUuZy4sIHdpdGhvdXQgYSAubmF2YmFyLWJyYW5kIGluIGNvbGxhcHNlZCBtb2RlKVxuICBtYXJnaW4tYm90dG9tOiAkbmF2YmFyLW1hcmdpbi1ib3R0b207XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gIC8vIFByZXZlbnQgZmxvYXRzIGZyb20gYnJlYWtpbmcgdGhlIG5hdmJhclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGJvcmRlci1yYWRpdXM6ICRuYXZiYXItYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBoZWFkaW5nXG4vL1xuLy8gR3JvdXBzIGAubmF2YmFyLWJyYW5kYCBhbmQgYC5uYXZiYXItdG9nZ2xlYCBpbnRvIGEgc2luZ2xlIGNvbXBvbmVudCBmb3IgZWFzeVxuLy8gc3R5bGluZyBvZiByZXNwb25zaXZlIGFzcGVjdHMuXG5cbi5uYXZiYXItaGVhZGVyIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBjb2xsYXBzZSAoYm9keSlcbi8vXG4vLyBHcm91cCB5b3VyIG5hdmJhciBjb250ZW50IGludG8gdGhpcyBmb3IgZWFzeSBjb2xsYXBzaW5nIGFuZCBleHBhbmRpbmcgYWNyb3NzXG4vLyB2YXJpb3VzIGRldmljZSBzaXplcy4gQnkgZGVmYXVsdCwgdGhpcyBjb250ZW50IGlzIGNvbGxhcHNlZCB3aGVuIDw3NjhweCwgYnV0XG4vLyB3aWxsIGV4cGFuZCBwYXN0IHRoYXQgZm9yIGEgaG9yaXpvbnRhbCBkaXNwbGF5LlxuLy9cbi8vIFRvIHN0YXJ0IChvbiBtb2JpbGUgZGV2aWNlcykgdGhlIG5hdmJhciBsaW5rcywgZm9ybXMsIGFuZCBidXR0b25zIGFyZSBzdGFja2VkXG4vLyB2ZXJ0aWNhbGx5IGFuZCBpbmNsdWRlIGEgYG1heC1oZWlnaHRgIHRvIG92ZXJmbG93IGluIGNhc2UgeW91IGhhdmUgdG9vIG11Y2hcbi8vIGNvbnRlbnQgZm9yIHRoZSB1c2VyJ3Mgdmlld3BvcnQuXG5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBvdmVyZmxvdy14OiB2aXNpYmxlO1xuICBwYWRkaW5nLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgcGFkZGluZy1sZWZ0OiAgJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAmLmluIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAmLmNvbGxhcHNlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IHNldHRpbmdcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi5pbiB7XG4gICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8vIFVuZG8gdGhlIGNvbGxhcHNlIHNpZGUgcGFkZGluZyBmb3IgbmF2YmFycyB3aXRoIGNvbnRhaW5lcnMgdG8gZW5zdXJlXG4gICAgLy8gYWxpZ25tZW50IG9mIHJpZ2h0LWFsaWduZWQgY29udGVudHMuXG4gICAgLm5hdmJhci1maXhlZC10b3AgJixcbiAgICAubmF2YmFyLXN0YXRpYy10b3AgJixcbiAgICAubmF2YmFyLWZpeGVkLWJvdHRvbSAmIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5uYXZiYXItZml4ZWQtdG9wLFxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xuICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBtYXgtaGVpZ2h0OiAkbmF2YmFyLWNvbGxhcHNlLW1heC1oZWlnaHQ7XG5cbiAgICBAbWVkaWEgKG1heC1kZXZpY2Utd2lkdGg6ICRzY3JlZW4teHMtbWluKSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJvdGggbmF2YmFyIGhlYWRlciBhbmQgY29sbGFwc2Vcbi8vXG4vLyBXaGVuIGEgY29udGFpbmVyIGlzIHByZXNlbnQsIGNoYW5nZSB0aGUgYmVoYXZpb3Igb2YgdGhlIGhlYWRlciBhbmQgY29sbGFwc2UuXG5cbi5jb250YWluZXIsXG4uY29udGFpbmVyLWZsdWlkIHtcbiAgPiAubmF2YmFyLWhlYWRlcixcbiAgPiAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBtYXJnaW4tbGVmdDogIC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogIDA7XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIE5hdmJhciBhbGlnbm1lbnQgb3B0aW9uc1xuLy9cbi8vIERpc3BsYXkgdGhlIG5hdmJhciBhY3Jvc3MgdGhlIGVudGlyZXR5IG9mIHRoZSBwYWdlIG9yIGZpeGVkIGl0IHRvIHRoZSB0b3Agb3Jcbi8vIGJvdHRvbSBvZiB0aGUgcGFnZS5cblxuLy8gU3RhdGljIHRvcCAodW5maXhlZCwgYnV0IDEwMCUgd2lkZSkgbmF2YmFyXG4ubmF2YmFyLXN0YXRpYy10b3Age1xuICB6LWluZGV4OiAkemluZGV4LW5hdmJhcjtcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuXG4vLyBGaXggdGhlIHRvcC9ib3R0b20gbmF2YmFycyB3aGVuIHNjcmVlbiByZWFsIGVzdGF0ZSBzdXBwb3J0cyBpdFxuLm5hdmJhci1maXhlZC10b3AsXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbmF2YmFyLWZpeGVkO1xuXG4gIC8vIFVuZG8gdGhlIHJvdW5kZWQgY29ybmVyc1xuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cbi5uYXZiYXItZml4ZWQtdG9wIHtcbiAgdG9wOiAwO1xuICBib3JkZXItd2lkdGg6IDAgMCAxcHg7XG59XG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gb3ZlcnJpZGUgLm5hdmJhciBkZWZhdWx0c1xuICBib3JkZXItd2lkdGg6IDFweCAwIDA7XG59XG5cblxuLy8gQnJhbmQvcHJvamVjdCBuYW1lXG5cbi5uYXZiYXItYnJhbmQge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGhlaWdodDogJG5hdmJhci1oZWlnaHQ7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgPiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICAubmF2YmFyID4gLmNvbnRhaW5lciAmLFxuICAgIC5uYXZiYXIgPiAuY29udGFpbmVyLWZsdWlkICYge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdG9nZ2xlXG4vL1xuLy8gQ3VzdG9tIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIGAubmF2YmFyLWNvbGxhcHNlYCwgcG93ZXJlZCBieSB0aGUgY29sbGFwc2Vcbi8vIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4ubmF2YmFyLXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBwYWRkaW5nOiA5cHggMTBweDtcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKDM0cHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MvaXNzdWVzLzIxNFxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcblxuICAvLyBXZSByZW1vdmUgdGhlIGBvdXRsaW5lYCBoZXJlLCBidXQgbGF0ZXIgY29tcGVuc2F0ZSBieSBhdHRhY2hpbmcgYDpob3ZlcmBcbiAgLy8gc3R5bGVzIHRvIGA6Zm9jdXNgLlxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgLy8gQmFyc1xuICAuaWNvbi1iYXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAyMnB4O1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgfVxuICAuaWNvbi1iYXIgKyAuaWNvbi1iYXIge1xuICAgIG1hcmdpbi10b3A6IDRweDtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXYgbGlua3Ncbi8vXG4vLyBCdWlsZHMgb24gdG9wIG9mIHRoZSBgLm5hdmAgY29tcG9uZW50cyB3aXRoIGl0cyBvd24gbW9kaWZpZXIgY2xhc3MgdG8gbWFrZVxuLy8gdGhlIG5hdiB0aGUgZnVsbCBoZWlnaHQgb2YgdGhlIGhvcml6b250YWwgbmF2IChhYm92ZSA3NjhweCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgbWFyZ2luOiAoJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsIC8gMikgKC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbCk7XG5cbiAgPiBsaSA+IGEge1xuICAgIHBhZGRpbmctdG9wOiAgICAxMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcbiAgICAvLyBEcm9wZG93bnMgZ2V0IGN1c3RvbSBkaXNwbGF5IHdoZW4gY29sbGFwc2VkXG4gICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgPiBsaSA+IGEsXG4gICAgICAuZHJvcGRvd24taGVhZGVyIHtcbiAgICAgICAgcGFkZGluZzogNXB4IDE1cHggNXB4IDI1cHg7XG4gICAgICB9XG4gICAgICA+IGxpID4gYSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBVbmNvbGxhcHNlIHRoZSBuYXZcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDA7XG5cbiAgICA+IGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgPiBhIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICAgICRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgZm9ybVxuLy9cbi8vIEV4dGVuc2lvbiBvZiB0aGUgYC5mb3JtLWlubGluZWAgd2l0aCBzb21lIGV4dHJhIGZsYXZvciBmb3Igb3B0aW11bSBkaXNwbGF5IGluXG4vLyBvdXIgbmF2YmFycy5cblxuLm5hdmJhci1mb3JtIHtcbiAgbWFyZ2luLWxlZnQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgbWFyZ2luLXJpZ2h0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIHBhZGRpbmc6IDEwcHggJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAkc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjEpLCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjEpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRzaGFkb3cpO1xuXG4gIC8vIE1peGluIGJlaGF2aW9yIGZvciBvcHRpbXVtIGRpc3BsYXlcbiAgQGluY2x1ZGUgZm9ybS1pbmxpbmU7XG5cbiAgLmZvcm0tZ3JvdXAge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsbHkgY2VudGVyIGluIGV4cGFuZGVkLCBob3Jpem9udGFsIG5hdmJhclxuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGlucHV0LWhlaWdodC1iYXNlKTtcblxuICAvLyBVbmRvIDEwMCUgd2lkdGggZm9yIHB1bGwgY2xhc3Nlc1xuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vIERyb3Bkb3duIG1lbnVzXG5cbi8vIE1lbnUgcG9zaXRpb24gYW5kIG1lbnUgY2FyZXRzXG4ubmF2YmFyLW5hdiA+IGxpID4gLmRyb3Bkb3duLW1lbnUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbn1cbi8vIE1lbnUgcG9zaXRpb24gYW5kIG1lbnUgY2FyZXQgc3VwcG9ydCBmb3IgZHJvcHVwcyB2aWEgZXh0cmEgZHJvcHVwIGNsYXNzXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSAubmF2YmFyLW5hdiA+IGxpID4gLmRyb3Bkb3duLW1lbnUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbmF2YmFyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbn1cblxuXG4vLyBCdXR0b25zIGluIG5hdmJhcnNcbi8vXG4vLyBWZXJ0aWNhbGx5IGNlbnRlciBhIGJ1dHRvbiB3aXRoaW4gYSBuYXZiYXIgKHdoZW4gKm5vdCogaW4gYSBmb3JtKS5cblxuLm5hdmJhci1idG4ge1xuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGlucHV0LWhlaWdodC1iYXNlKTtcblxuICAmLmJ0bi1zbSB7XG4gICAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRpbnB1dC1oZWlnaHQtc21hbGwpO1xuICB9XG4gICYuYnRuLXhzIHtcbiAgICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oMjIpO1xuICB9XG59XG5cblxuLy8gVGV4dCBpbiBuYXZiYXJzXG4vL1xuLy8gQWRkIGEgY2xhc3MgdG8gbWFrZSBhbnkgZWxlbWVudCBwcm9wZXJseSBhbGlnbiBpdHNlbGYgdmVydGljYWxseSB3aXRoaW4gdGhlIG5hdmJhcnMuXG5cbi5uYXZiYXItdGV4dCB7XG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkbGluZS1oZWlnaHQtY29tcHV0ZWQpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIH1cbn1cblxuXG4vLyBDb21wb25lbnQgYWxpZ25tZW50XG4vL1xuLy8gUmVwdXJwb3NlIHRoZSBwdWxsIHV0aWxpdGllcyBhcyB0aGVpciBvd24gbmF2YmFyIHV0aWxpdGllcyB0byBhdm9pZCBzcGVjaWZpY2l0eVxuLy8gaXNzdWVzIHdpdGggcGFyZW50cyBhbmQgY2hhaW5pbmcuIE9ubHkgZG8gdGhpcyB3aGVuIHRoZSBuYXZiYXIgaXMgdW5jb2xsYXBzZWRcbi8vIHRob3VnaCBzbyB0aGF0IG5hdmJhciBjb250ZW50cyBwcm9wZXJseSBzdGFjayBhbmQgYWxpZ24gaW4gbW9iaWxlLlxuLy9cbi8vIERlY2xhcmVkIGFmdGVyIHRoZSBuYXZiYXIgY29tcG9uZW50cyB0byBlbnN1cmUgbW9yZSBzcGVjaWZpY2l0eSBvbiB0aGUgbWFyZ2lucy5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgLm5hdmJhci1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG4gIC5uYXZiYXItcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcblxuICAgIH4gLm5hdmJhci1yaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIG5hdmJhcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIERlZmF1bHQgbmF2YmFyXG4ubmF2YmFyLWRlZmF1bHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYmc7XG4gIGJvcmRlci1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJvcmRlcjtcblxuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuYWN0aXZlID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc7XG4gICAgICB9XG4gICAgfVxuICAgID4gLmRpc2FibGVkID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlIHtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGVmYXVsdC10b2dnbGUtYm9yZGVyLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWhvdmVyLWJnO1xuICAgIH1cbiAgICAuaWNvbi1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZztcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLWNvbGxhcHNlLFxuICAubmF2YmFyLWZvcm0ge1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJvcmRlcjtcbiAgfVxuXG4gIC8vIERyb3Bkb3duIG1lbnUgaXRlbXNcbiAgLm5hdmJhci1uYXYge1xuICAgIC8vIFJlbW92ZSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gb3BlbiBkcm9wZG93blxuICAgID4gLm9wZW4gPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZztcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcbiAgICAgIC8vIERyb3Bkb3ducyBnZXQgY3VzdG9tIGRpc3BsYXkgd2hlbiBjb2xsYXBzZWRcbiAgICAgIC5vcGVuIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgPiBsaSA+IGEge1xuICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gLmFjdGl2ZSA+IGEge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gLmRpc2FibGVkID4gYSB7XG4gICAgICAgICAgJixcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAvLyBMaW5rcyBpbiBuYXZiYXJzXG4gIC8vXG4gIC8vIEFkZCBhIGNsYXNzIHRvIGVuc3VyZSBsaW5rcyBvdXRzaWRlIHRoZSBuYXZiYXIgbmF2IGFyZSBjb2xvcmVkIGNvcnJlY3RseS5cblxuICAubmF2YmFyLWxpbmsge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuYnRuLWxpbmsge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgICAmW2Rpc2FibGVkXSxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gSW52ZXJzZSBuYXZiYXJcblxuLm5hdmJhci1pbnZlcnNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJnO1xuICBib3JkZXItY29sb3I6ICRuYXZiYXItaW52ZXJzZS1ib3JkZXI7XG5cbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1icmFuZC1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZztcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtY29sb3I7XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICAgID4gLmFjdGl2ZSA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBEYXJrZW4gdGhlIHJlc3BvbnNpdmUgbmF2IHRvZ2dsZVxuICAubmF2YmFyLXRvZ2dsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtdG9nZ2xlLWJvcmRlci1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ob3Zlci1iZztcbiAgICB9XG4gICAgLmljb24tYmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1jb2xsYXBzZSxcbiAgLm5hdmJhci1mb3JtIHtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDclKTtcbiAgfVxuXG4gIC8vIERyb3Bkb3duc1xuICAubmF2YmFyLW5hdiB7XG4gICAgPiAub3BlbiA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnO1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheVxuICAgICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICA+IC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJvcmRlcjtcbiAgICAgICAgfVxuICAgICAgICAuZGl2aWRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJvcmRlcjtcbiAgICAgICAgfVxuICAgICAgICA+IGxpID4gYSB7XG4gICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuYWN0aXZlID4gYSB7XG4gICAgICAgICAgJixcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubmF2YmFyLWxpbmsge1xuICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuYnRuLWxpbmsge1xuICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgICAmW2Rpc2FibGVkXSxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCcmVhZGNydW1ic1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uYnJlYWRjcnVtYiB7XG4gIHBhZGRpbmc6ICRicmVhZGNydW1iLXBhZGRpbmctdmVydGljYWwgJGJyZWFkY3J1bWItcGFkZGluZy1ob3Jpem9udGFsO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmVhZGNydW1iLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICsgbGk6YmVmb3JlIHtcbiAgICAgIC8vIFtjb252ZXJ0ZXJdIFdvcmthcm91bmQgZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL2xpYnNhc3MvaXNzdWVzLzExMTVcbiAgICAgICRuYnNwOiBcIlxcMDBhMFwiO1xuICAgICAgY29udGVudDogXCIjeyRicmVhZGNydW1iLXNlcGFyYXRvcn0jeyRuYnNwfVwiOyAvLyBVbmljb2RlIHNwYWNlIGFkZGVkIHNpbmNlIGlubGluZS1ibG9jayBtZWFucyBub24tY29sbGFwc2luZyB3aGl0ZS1zcGFjZVxuICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgPiAuYWN0aXZlIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yO1xuICB9XG59XG4iLCIvL1xuLy8gUGFnaW5hdGlvbiAobXVsdGlwbGUgcGFnZXMpXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQgMDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcblxuICA+IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7IC8vIFJlbW92ZSBsaXN0LXN0eWxlIGFuZCBibG9jay1sZXZlbCBkZWZhdWx0c1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxvYXQ6IGxlZnQ7IC8vIENvbGxhcHNlIHdoaXRlLXNwYWNlXG4gICAgICBwYWRkaW5nOiAkcGFkZGluZy1iYXNlLXZlcnRpY2FsICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWJnO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgfVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgID4gYSxcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgPiBsaSA+IGEsXG4gID4gbGkgPiBzcGFuIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXI7XG4gICAgfVxuICB9XG5cbiAgPiAuYWN0aXZlID4gYSxcbiAgPiAuYWN0aXZlID4gc3BhbiB7XG4gICAgJixcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYmc7XG4gICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuICB9XG5cbiAgPiAuZGlzYWJsZWQge1xuICAgID4gc3BhbixcbiAgICA+IHNwYW46aG92ZXIsXG4gICAgPiBzcGFuOmZvY3VzLFxuICAgID4gYSxcbiAgICA+IGE6aG92ZXIsXG4gICAgPiBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXI7XG4gICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG59XG5cbi8vIFNpemluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gTGFyZ2Vcbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWxhcmdlLCAkbGluZS1oZWlnaHQtbGFyZ2UsICRib3JkZXItcmFkaXVzLWxhcmdlKTtcbn1cblxuLy8gU21hbGxcbi5wYWdpbmF0aW9uLXNtIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkbGluZS1oZWlnaHQtc21hbGwsICRib3JkZXItcmFkaXVzLXNtYWxsKTtcbn1cbiIsIi8vXG4vLyBQYWdlciBwYWdpbmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5wYWdlciB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQgMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICA+IGEsXG4gICAgPiBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDVweCAxNHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2VyLWJnO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHBhZ2VyLWJvcmRlcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRwYWdlci1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgID4gYTpob3ZlcixcbiAgICA+IGE6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2VyLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uZXh0IHtcbiAgICA+IGEsXG4gICAgPiBzcGFuIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cblxuICAucHJldmlvdXMge1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuICB9XG5cbiAgLmRpc2FibGVkIHtcbiAgICA+IGEsXG4gICAgPiBhOmhvdmVyLFxuICAgID4gYTpmb2N1cyxcbiAgICA+IHNwYW4ge1xuICAgICAgY29sb3I6ICRwYWdlci1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdlci1iZztcbiAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBMYWJlbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgcGFkZGluZzogLjJlbSAuNmVtIC4zZW07XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkbGFiZWwtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBib3JkZXItcmFkaXVzOiAuMjVlbTtcblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYgdG8gYS5sYWJlbFxuXG4gIC8vIEVtcHR5IGxhYmVscyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5IChub3QgYXZhaWxhYmxlIGluIElFOClcbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIFF1aWNrIGZpeCBmb3IgbGFiZWxzIGluIGJ1dHRvbnNcbiAgLmJ0biAmIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMXB4O1xuICB9XG59XG5cbi8vIEFkZCBob3ZlciBlZmZlY3RzLCBidXQgb25seSBmb3IgbGlua3NcbmEubGFiZWwge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGxhYmVsLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4vLyBDb2xvcnNcbi8vIENvbnRleHR1YWwgdmFyaWF0aW9ucyAobGlua2VkIGxhYmVscyBnZXQgZGFya2VyIG9uIDpob3ZlcilcblxuLmxhYmVsLWRlZmF1bHQge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1kZWZhdWx0LWJnKTtcbn1cblxuLmxhYmVsLXByaW1hcnkge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1wcmltYXJ5LWJnKTtcbn1cblxuLmxhYmVsLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1zdWNjZXNzLWJnKTtcbn1cblxuLmxhYmVsLWluZm8ge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1pbmZvLWJnKTtcbn1cblxuLmxhYmVsLXdhcm5pbmcge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC13YXJuaW5nLWJnKTtcbn1cblxuLmxhYmVsLWRhbmdlciB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLWRhbmdlci1iZyk7XG59XG4iLCIvL1xuLy8gQmFkZ2VzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAxMHB4O1xuICBwYWRkaW5nOiAzcHggN3B4O1xuICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkYmFkZ2UtY29sb3I7XG4gIGxpbmUtaGVpZ2h0OiAkYmFkZ2UtbGluZS1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhZGdlLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYmFkZ2UtYm9yZGVyLXJhZGl1cztcblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseSAobm90IGF2YWlsYWJsZSBpbiBJRTgpXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXG4gIC5idG4gJiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTFweDtcbiAgfVxuXG4gIC5idG4teHMgJixcbiAgLmJ0bi1ncm91cC14cyA+IC5idG4gJiB7XG4gICAgdG9wOiAwO1xuICAgIHBhZGRpbmc6IDFweCA1cHg7XG4gIH1cblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYgdG8gYS5iYWRnZVxuXG4gIC8vIEFjY291bnQgZm9yIGJhZGdlcyBpbiBuYXZzXG4gIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlID4gJixcbiAgLm5hdi1waWxscyA+IC5hY3RpdmUgPiBhID4gJiB7XG4gICAgY29sb3I6ICRiYWRnZS1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhZGdlLWFjdGl2ZS1iZztcbiAgfVxuXG4gIC5saXN0LWdyb3VwLWl0ZW0gPiAmIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cblxuICAubGlzdC1ncm91cC1pdGVtID4gJiArICYge1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICB9XG5cbiAgLm5hdi1waWxscyA+IGxpID4gYSA+ICYge1xuICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gIH1cbn1cblxuLy8gSG92ZXIgc3RhdGUsIGJ1dCBvbmx5IGZvciBsaW5rc1xuYS5iYWRnZSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkYmFkZ2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4iLCIvL1xuLy8gSnVtYm90cm9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5qdW1ib3Ryb24ge1xuICBwYWRkaW5nLXRvcDogICAgJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAkanVtYm90cm9uLXBhZGRpbmc7XG4gIGNvbG9yOiAkanVtYm90cm9uLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkanVtYm90cm9uLWJnO1xuXG4gIGgxLFxuICAuaDEge1xuICAgIGNvbG9yOiAkanVtYm90cm9uLWhlYWRpbmctY29sb3I7XG4gIH1cblxuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAoJGp1bWJvdHJvbi1wYWRkaW5nIC8gMik7XG4gICAgZm9udC1zaXplOiAkanVtYm90cm9uLWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogMjAwO1xuICB9XG5cbiAgPiBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRqdW1ib3Ryb24tYmcsIDEwJSk7XG4gIH1cblxuICAuY29udGFpbmVyICYsXG4gIC5jb250YWluZXItZmx1aWQgJiB7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7IC8vIE9ubHkgcm91bmQgY29ybmVycyBhdCBoaWdoZXIgcmVzb2x1dGlvbnMgaWYgY29udGFpbmVkIGluIGEgY29udGFpbmVyXG4gICAgcGFkZGluZy1sZWZ0OiAgKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICAgIHBhZGRpbmctcmlnaHQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgfVxuXG4gIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcGFkZGluZy10b3A6ICAgICgkanVtYm90cm9uLXBhZGRpbmcgKiAxLjYpO1xuICAgIHBhZGRpbmctYm90dG9tOiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMS42KTtcblxuICAgIC5jb250YWluZXIgJixcbiAgICAuY29udGFpbmVyLWZsdWlkICYge1xuICAgICAgcGFkZGluZy1sZWZ0OiAgKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpO1xuICAgICAgcGFkZGluZy1yaWdodDogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpO1xuICAgIH1cblxuICAgIGgxLFxuICAgIC5oMSB7XG4gICAgICBmb250LXNpemU6ICRqdW1ib3Ryb24taGVhZGluZy1mb250LXNpemU7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gVGh1bWJuYWlsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBNaXhpbiBhbmQgYWRqdXN0IHRoZSByZWd1bGFyIGltYWdlIGNsYXNzXG4udGh1bWJuYWlsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR0aHVtYm5haWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYm9yZGVyIC4ycyBlYXNlLWluLW91dCk7XG5cbiAgPiBpbWcsXG4gIGEgPiBpbWcge1xuICAgIEBpbmNsdWRlIGltZy1yZXNwb25zaXZlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJjpob3ZlciwgYSY6Zm9jdXMsIGEmLmFjdGl2ZSB0byBhLnRodW1ibmFpbDpob3ZlciwgYS50aHVtYm5haWw6Zm9jdXMsIGEudGh1bWJuYWlsLmFjdGl2ZVxuXG4gIC8vIEltYWdlIGNhcHRpb25zXG4gIC5jYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAkdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZztcbiAgICBjb2xvcjogJHRodW1ibmFpbC1jYXB0aW9uLWNvbG9yO1xuICB9XG59XG5cbi8vIEFkZCBhIGhvdmVyIHN0YXRlIGZvciBsaW5rZWQgdmVyc2lvbnMgb25seVxuYS50aHVtYm5haWw6aG92ZXIsXG5hLnRodW1ibmFpbDpmb2N1cyxcbmEudGh1bWJuYWlsLmFjdGl2ZSB7XG4gIGJvcmRlci1jb2xvcjogJGxpbmstY29sb3I7XG59XG4iLCIvL1xuLy8gQWxlcnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2Ugc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5hbGVydCB7XG4gIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAkYWxlcnQtYm9yZGVyLXJhZGl1cztcblxuICAvLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xuICBoNCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICAvLyBTcGVjaWZpZWQgZm9yIHRoZSBoNCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4gIC5hbGVydC1saW5rIHtcbiAgICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG4gIH1cblxuICAvLyBJbXByb3ZlIGFsaWdubWVudCBhbmQgc3BhY2luZyBvZiBpbm5lciBjb250ZW50XG4gID4gcCxcbiAgPiB1bCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gID4gcCArIHAge1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgfVxufVxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NhYmxlLCAvLyBUaGUgbWlzc3BlbGxlZCAuYWxlcnQtZGlzbWlzc2FibGUgd2FzIGRlcHJlY2F0ZWQgaW4gMy4yLjAuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAoJGFsZXJ0LXBhZGRpbmcgKyAyMCk7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMnB4O1xuICAgIHJpZ2h0OiAtMjFweDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBBbHRlcm5hdGUgc3R5bGVzXG4vL1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydC5cblxuLmFsZXJ0LXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1zdWNjZXNzLWJnLCAkYWxlcnQtc3VjY2Vzcy1ib3JkZXIsICRhbGVydC1zdWNjZXNzLXRleHQpO1xufVxuXG4uYWxlcnQtaW5mbyB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LWluZm8tYmcsICRhbGVydC1pbmZvLWJvcmRlciwgJGFsZXJ0LWluZm8tdGV4dCk7XG59XG5cbi5hbGVydC13YXJuaW5nIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtd2FybmluZy1iZywgJGFsZXJ0LXdhcm5pbmctYm9yZGVyLCAkYWxlcnQtd2FybmluZy10ZXh0KTtcbn1cblxuLmFsZXJ0LWRhbmdlciB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LWRhbmdlci1iZywgJGFsZXJ0LWRhbmdlci1ib3JkZXIsICRhbGVydC1kYW5nZXItdGV4dCk7XG59XG4iLCIvL1xuLy8gUHJvZ3Jlc3MgYmFyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXIgYW5pbWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBXZWJLaXRcbkAtd2Via2l0LWtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gIGZyb20gIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogNDBweCAwOyB9XG4gIHRvICAgIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG59XG5cbi8vIFNwZWMgYW5kIElFMTArXG5Aa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgZnJvbSAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0MHB4IDA7IH1cbiAgdG8gICAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbn1cblxuXG4vLyBCYXIgaXRzZWxmXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE91dGVyIGNvbnRhaW5lclxuLnByb2dyZXNzIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJnO1xuICBib3JkZXItcmFkaXVzOiAkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cztcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwuMSkpO1xufVxuXG4vLyBCYXIgb2YgcHJvZ3Jlc3Ncbi5wcm9ncmVzcy1iYXIge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iZztcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIC0xcHggMCByZ2JhKDAsMCwwLC4xNSkpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHdpZHRoIC42cyBlYXNlKTtcbn1cblxuLy8gU3RyaXBlZCBiYXJzXG4vL1xuLy8gYC5wcm9ncmVzcy1zdHJpcGVkIC5wcm9ncmVzcy1iYXJgIGlzIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGluIGZhdm9yIG9mIHRoZVxuLy8gYC5wcm9ncmVzcy1iYXItc3RyaXBlZGAgY2xhc3MsIHdoaWNoIHlvdSBqdXN0IGFkZCB0byBhbiBleGlzdGluZ1xuLy8gYC5wcm9ncmVzcy1iYXJgLlxuLnByb2dyZXNzLXN0cmlwZWQgLnByb2dyZXNzLWJhcixcbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQ7XG4gIGJhY2tncm91bmQtc2l6ZTogNDBweCA0MHB4O1xufVxuXG4vLyBDYWxsIGFuaW1hdGlvbiBmb3IgdGhlIGFjdGl2ZSBvbmVcbi8vXG4vLyBgLnByb2dyZXNzLmFjdGl2ZSAucHJvZ3Jlc3MtYmFyYCBpcyBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBpbiBmYXZvciBvZiB0aGVcbi8vIGAucHJvZ3Jlc3MtYmFyLmFjdGl2ZWAgYXBwcm9hY2guXG4ucHJvZ3Jlc3MuYWN0aXZlIC5wcm9ncmVzcy1iYXIsXG4ucHJvZ3Jlc3MtYmFyLmFjdGl2ZSB7XG4gIEBpbmNsdWRlIGFuaW1hdGlvbihwcm9ncmVzcy1iYXItc3RyaXBlcyAycyBsaW5lYXIgaW5maW5pdGUpO1xufVxuXG5cbi8vIFZhcmlhdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnByb2dyZXNzLWJhci1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJHByb2dyZXNzLWJhci1zdWNjZXNzLWJnKTtcbn1cblxuLnByb2dyZXNzLWJhci1pbmZvIHtcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJHByb2dyZXNzLWJhci1pbmZvLWJnKTtcbn1cblxuLnByb2dyZXNzLWJhci13YXJuaW5nIHtcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJHByb2dyZXNzLWJhci13YXJuaW5nLWJnKTtcbn1cblxuLnByb2dyZXNzLWJhci1kYW5nZXIge1xuICBAaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCgkcHJvZ3Jlc3MtYmFyLWRhbmdlci1iZyk7XG59XG4iLCIubWVkaWEge1xuICAvLyBQcm9wZXIgc3BhY2luZyBiZXR3ZWVuIGluc3RhbmNlcyBvZiAubWVkaWFcbiAgbWFyZ2luLXRvcDogMTVweDtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5tZWRpYSxcbi5tZWRpYS1ib2R5IHtcbiAgem9vbTogMTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm1lZGlhLWJvZHkge1xuICB3aWR0aDogMTAwMDBweDtcbn1cblxuLm1lZGlhLW9iamVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIC8vIEZpeCBjb2xsYXBzZSBpbiB3ZWJraXQgZnJvbSBtYXgtd2lkdGg6IDEwMCUgYW5kIGRpc3BsYXk6IHRhYmxlLWNlbGwuXG4gICYuaW1nLXRodW1ibmFpbCB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5cbi5tZWRpYS1yaWdodCxcbi5tZWRpYSA+IC5wdWxsLXJpZ2h0IHtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xufVxuXG4ubWVkaWEtbGVmdCxcbi5tZWRpYSA+IC5wdWxsLWxlZnQge1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuXG4ubWVkaWEtbGVmdCxcbi5tZWRpYS1yaWdodCxcbi5tZWRpYS1ib2R5IHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLm1lZGlhLW1pZGRsZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5tZWRpYS1ib3R0b20ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIGhlYWRpbmdzIGZvciB0aWdodGVyIGRlZmF1bHQgc3BhY2luZ1xuLm1lZGlhLWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi8vIE1lZGlhIGxpc3QgdmFyaWF0aW9uXG4vL1xuLy8gVW5kbyBkZWZhdWx0IHVsL29sIHN0eWxlc1xuLm1lZGlhLWxpc3Qge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvL1xuLy8gTGlzdCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIC8vIFBsYWNlIHRoZSBib3JkZXIgb24gdGhlIGxpc3QgaXRlbXMgYW5kIG5lZ2F0aXZlIG1hcmdpbiB1cCBmb3IgYmV0dGVyIHN0eWxpbmdcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRsaXN0LWdyb3VwLWJvcmRlcjtcblxuICAvLyBSb3VuZCB0aGUgZmlyc3QgYW5kIGxhc3QgaXRlbXNcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG59XG5cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZSBpdGVtcy5cbi8vIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2hvd2luZyBzZWxlY3RlZCBpdGVtcy5cblxuYS5saXN0LWdyb3VwLWl0ZW0sXG5idXR0b24ubGlzdC1ncm91cC1pdGVtIHtcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWxpbmstY29sb3I7XG5cbiAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtbGluay1oZWFkaW5nLWNvbG9yO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG59XG5cbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0ge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICYuZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQ6aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG5cbiAgICAvLyBGb3JjZSBjb2xvciB0byBpbmhlcml0IGZvciBjdXN0b20gY29udGVudFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFjdGl2ZSBjbGFzcyBvbiBpdGVtIGl0c2VsZiwgbm90IHBhcmVudFxuICAmLmFjdGl2ZSxcbiAgJi5hY3RpdmU6aG92ZXIsXG4gICYuYWN0aXZlOmZvY3VzIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjtcblxuICAgIC8vIEZvcmNlIGNvbG9yIHRvIGluaGVyaXQgZm9yIGN1c3RvbSBjb250ZW50XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IHNtYWxsLFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IC5zbWFsbCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KHN1Y2Nlc3MsICRzdGF0ZS1zdWNjZXNzLWJnLCAkc3RhdGUtc3VjY2Vzcy10ZXh0KTtcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KGluZm8sICRzdGF0ZS1pbmZvLWJnLCAkc3RhdGUtaW5mby10ZXh0KTtcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KHdhcm5pbmcsICRzdGF0ZS13YXJuaW5nLWJnLCAkc3RhdGUtd2FybmluZy10ZXh0KTtcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KGRhbmdlciwgJHN0YXRlLWRhbmdlci1iZywgJHN0YXRlLWRhbmdlci10ZXh0KTtcblxuXG4vLyBDdXN0b20gY29udGVudCBvcHRpb25zXG4vL1xuLy8gRXh0cmEgY2xhc3NlcyBmb3IgY3JlYXRpbmcgd2VsbC1mb3JtYXR0ZWQgY29udGVudCB3aXRoaW4gYC5saXN0LWdyb3VwLWl0ZW1gcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cbiIsIi8vXG4vLyBQYW5lbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLnBhbmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFuZWwtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAkcGFuZWwtYm9yZGVyLXJhZGl1cztcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDFweCAxcHggcmdiYSgwLDAsMCwuMDUpKTtcbn1cblxuLy8gUGFuZWwgY29udGVudHNcbi5wYW5lbC1ib2R5IHtcbiAgcGFkZGluZzogJHBhbmVsLWJvZHktcGFkZGluZztcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi8vIE9wdGlvbmFsIGhlYWRpbmdcbi5wYW5lbC1oZWFkaW5nIHtcbiAgcGFkZGluZzogJHBhbmVsLWhlYWRpbmctcGFkZGluZztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG5cbiAgPiAuZHJvcGRvd24gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gV2l0aGluIGhlYWRpbmcsIHN0cmlwIGFueSBgaCpgIHRhZyBvZiBpdHMgZGVmYXVsdCBtYXJnaW5zIGZvciBzcGFjaW5nLlxuLnBhbmVsLXRpdGxlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjEyNSkpO1xuICBjb2xvcjogaW5oZXJpdDtcblxuICA+IGEsXG4gID4gc21hbGwsXG4gID4gLnNtYWxsLFxuICA+IHNtYWxsID4gYSxcbiAgPiAuc21hbGwgPiBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBPcHRpb25hbCBmb290ZXIgKHN0YXlzIGdyYXkgaW4gZXZlcnkgbW9kaWZpZXIgY2xhc3MpXG4ucGFuZWwtZm9vdGVyIHtcbiAgcGFkZGluZzogJHBhbmVsLWZvb3Rlci1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFuZWwtZm9vdGVyLWJnO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJHBhbmVsLWlubmVyLWJvcmRlcjtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xufVxuXG5cbi8vIExpc3QgZ3JvdXBzIGluIHBhbmVsc1xuLy9cbi8vIEJ5IGRlZmF1bHQsIHNwYWNlIG91dCBsaXN0IGdyb3VwIGNvbnRlbnQgZnJvbSBwYW5lbCBoZWFkaW5ncyB0byBhY2NvdW50IGZvclxuLy8gYW55IGtpbmQgb2YgY3VzdG9tIGNvbnRlbnQgYmV0d2VlbiB0aGUgdHdvLlxuXG4ucGFuZWwge1xuICA+IC5saXN0LWdyb3VwLFxuICA+IC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICBib3JkZXItd2lkdGg6IDFweCAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB9XG5cbiAgICAvLyBBZGQgYm9yZGVyIHRvcCByYWRpdXMgZm9yIGZpcnN0IG9uZVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBZGQgYm9yZGVyIGJvdHRvbSByYWRpdXMgZm9yIGxhc3Qgb25lXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgPiAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxufVxuLy8gQ29sbGFwc2Ugc3BhY2UgYmV0d2VlbiB3aGVuIHRoZXJlJ3Mgbm8gYWRkaXRpb25hbCBjb250ZW50LlxuLnBhbmVsLWhlYWRpbmcgKyAubGlzdC1ncm91cCB7XG4gIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gIH1cbn1cbi5saXN0LWdyb3VwICsgLnBhbmVsLWZvb3RlciB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG59XG5cbi8vIFRhYmxlcyBpbiBwYW5lbHNcbi8vXG4vLyBQbGFjZSBhIG5vbi1ib3JkZXJlZCBgLnRhYmxlYCB3aXRoaW4gYSBwYW5lbCAobm90IHdpdGhpbiBhIGAucGFuZWwtYm9keWApIGFuZFxuLy8gd2F0Y2ggaXQgZ28gZnVsbCB3aWR0aC5cblxuLnBhbmVsIHtcbiAgPiAudGFibGUsXG4gID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUsXG4gID4gLnBhbmVsLWNvbGxhcHNlID4gLnRhYmxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgY2FwdGlvbiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRwYW5lbC1ib2R5LXBhZGRpbmc7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFuZWwtYm9keS1wYWRkaW5nO1xuICAgIH1cbiAgfVxuICAvLyBBZGQgYm9yZGVyIHRvcCByYWRpdXMgZm9yIGZpcnN0IG9uZVxuICA+IC50YWJsZTpmaXJzdC1jaGlsZCxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuXG4gICAgPiB0aGVhZDpmaXJzdC1jaGlsZCxcbiAgICA+IHRib2R5OmZpcnN0LWNoaWxkIHtcbiAgICAgID4gdHI6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuXG4gICAgICAgIHRkOmZpcnN0LWNoaWxkLFxuICAgICAgICB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgICAgdGQ6bGFzdC1jaGlsZCxcbiAgICAgICAgdGg6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIEFkZCBib3JkZXIgYm90dG9tIHJhZGl1cyBmb3IgbGFzdCBvbmVcbiAgPiAudGFibGU6bGFzdC1jaGlsZCxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZTpsYXN0LWNoaWxkID4gLnRhYmxlOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcblxuICAgID4gdGJvZHk6bGFzdC1jaGlsZCxcbiAgICA+IHRmb290Omxhc3QtY2hpbGQge1xuICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcblxuICAgICAgICB0ZDpmaXJzdC1jaGlsZCxcbiAgICAgICAgdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICB9XG4gICAgICAgIHRkOmxhc3QtY2hpbGQsXG4gICAgICAgIHRoOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IC5wYW5lbC1ib2R5ICsgLnRhYmxlLFxuICA+IC5wYW5lbC1ib2R5ICsgLnRhYmxlLXJlc3BvbnNpdmUsXG4gID4gLnRhYmxlICsgLnBhbmVsLWJvZHksXG4gID4gLnRhYmxlLXJlc3BvbnNpdmUgKyAucGFuZWwtYm9keSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cbiAgPiAudGFibGUgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRoLFxuICA+IC50YWJsZSA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbiAgPiAudGFibGUtYm9yZGVyZWQsXG4gID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgICA+IHRoZWFkLFxuICAgID4gdGJvZHksXG4gICAgPiB0Zm9vdCB7XG4gICAgICA+IHRyIHtcbiAgICAgICAgPiB0aDpmaXJzdC1jaGlsZCxcbiAgICAgICAgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgPiB0aDpsYXN0LWNoaWxkLFxuICAgICAgICA+IHRkOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICA+IHRoZWFkLFxuICAgID4gdGJvZHkge1xuICAgICAgPiB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgPiB0Ym9keSxcbiAgICA+IHRmb290IHtcbiAgICAgID4gdHI6bGFzdC1jaGlsZCB7XG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgPiAudGFibGUtcmVzcG9uc2l2ZSB7XG4gICAgYm9yZGVyOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuXG4vLyBDb2xsYXBzYWJsZSBwYW5lbHMgKGFrYSwgYWNjb3JkaW9uKVxuLy9cbi8vIFdyYXAgYSBzZXJpZXMgb2YgcGFuZWxzIGluIGAucGFuZWwtZ3JvdXBgIHRvIHR1cm4gdGhlbSBpbnRvIGFuIGFjY29yZGlvbiB3aXRoXG4vLyB0aGUgaGVscCBvZiBvdXIgY29sbGFwc2UgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi5wYW5lbC1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcblxuICAvLyBUaWdodGVuIHVwIG1hcmdpbiBzbyBpdCdzIG9ubHkgYmV0d2VlbiBwYW5lbHNcbiAgLnBhbmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRwYW5lbC1ib3JkZXItcmFkaXVzO1xuXG4gICAgKyAucGFuZWwge1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIH1cbiAgfVxuXG4gIC5wYW5lbC1oZWFkaW5nIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSxcbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkcGFuZWwtaW5uZXItYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gIC5wYW5lbC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgKyAucGFuZWwtY29sbGFwc2UgLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwYW5lbC1pbm5lci1ib3JkZXI7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zXG4ucGFuZWwtZGVmYXVsdCB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLWRlZmF1bHQtYm9yZGVyLCAkcGFuZWwtZGVmYXVsdC10ZXh0LCAkcGFuZWwtZGVmYXVsdC1oZWFkaW5nLWJnLCAkcGFuZWwtZGVmYXVsdC1ib3JkZXIpO1xufVxuLnBhbmVsLXByaW1hcnkge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1wcmltYXJ5LWJvcmRlciwgJHBhbmVsLXByaW1hcnktdGV4dCwgJHBhbmVsLXByaW1hcnktaGVhZGluZy1iZywgJHBhbmVsLXByaW1hcnktYm9yZGVyKTtcbn1cbi5wYW5lbC1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtc3VjY2Vzcy1ib3JkZXIsICRwYW5lbC1zdWNjZXNzLXRleHQsICRwYW5lbC1zdWNjZXNzLWhlYWRpbmctYmcsICRwYW5lbC1zdWNjZXNzLWJvcmRlcik7XG59XG4ucGFuZWwtaW5mbyB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLWluZm8tYm9yZGVyLCAkcGFuZWwtaW5mby10ZXh0LCAkcGFuZWwtaW5mby1oZWFkaW5nLWJnLCAkcGFuZWwtaW5mby1ib3JkZXIpO1xufVxuLnBhbmVsLXdhcm5pbmcge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC13YXJuaW5nLWJvcmRlciwgJHBhbmVsLXdhcm5pbmctdGV4dCwgJHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZywgJHBhbmVsLXdhcm5pbmctYm9yZGVyKTtcbn1cbi5wYW5lbC1kYW5nZXIge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1kYW5nZXItYm9yZGVyLCAkcGFuZWwtZGFuZ2VyLXRleHQsICRwYW5lbC1kYW5nZXItaGVhZGluZy1iZywgJHBhbmVsLWRhbmdlci1ib3JkZXIpO1xufVxuIiwiLy8gRW1iZWRzIHJlc3BvbnNpdmVcbi8vXG4vLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSxcbiAgaWZyYW1lLFxuICBlbWJlZCxcbiAgb2JqZWN0LFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi8vIE1vZGlmaWVyIGNsYXNzIGZvciAxNjo5IGFzcGVjdCByYXRpb1xuLmVtYmVkLXJlc3BvbnNpdmUtMTZieTkge1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xufVxuXG4vLyBNb2RpZmllciBjbGFzcyBmb3IgNDozIGFzcGVjdCByYXRpb1xuLmVtYmVkLXJlc3BvbnNpdmUtNGJ5MyB7XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG59XG4iLCIvL1xuLy8gV2VsbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLndlbGwge1xuICBtaW4taGVpZ2h0OiAyMHB4O1xuICBwYWRkaW5nOiAxOXB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2VsbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJHdlbGwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNSkpO1xuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXItY29sb3I6ICNkZGQ7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLC4xNSk7XG4gIH1cbn1cblxuLy8gU2l6ZXNcbi53ZWxsLWxnIHtcbiAgcGFkZGluZzogMjRweDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG59XG4ud2VsbC1zbSB7XG4gIHBhZGRpbmc6IDlweDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc21hbGw7XG59XG4iLCIvL1xuLy8gQ2xvc2UgaWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmNsb3NlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgKiAxLjUpO1xuICBmb250LXdlaWdodDogJGNsb3NlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgdGV4dC1zaGFkb3c6ICRjbG9zZS10ZXh0LXNoYWRvdztcbiAgQGluY2x1ZGUgb3BhY2l0eSguMik7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIEBpbmNsdWRlIG9wYWNpdHkoLjUpO1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGJ1dHRvbiYgdG8gYnV0dG9uLmNsb3NlXG59XG5cbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcbmJ1dHRvbi5jbG9zZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuIiwiLy9cbi8vIE1vZGFsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHNoaXRcblxuLy8gS2lsbCB0aGUgc2Nyb2xsIG9uIHRoZSBib2R5XG4ubW9kYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAvLyBQcmV2ZW50IENocm9tZSBvbiBXaW5kb3dzIGZyb20gYWRkaW5nIGEgZm9jdXMgb3V0bGluZS4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDk1MS5cbiAgb3V0bGluZTogMDtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAmLmZhZGUgLm1vZGFsLWRpYWxvZyB7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlKDAsIC0yNSUpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tdHJhbnNmb3JtKDAuM3MgZWFzZS1vdXQpO1xuICB9XG4gICYuaW4gLm1vZGFsLWRpYWxvZyB7IEBpbmNsdWRlIHRyYW5zbGF0ZSgwLCAwKSB9XG59XG4ubW9kYWwtb3BlbiAubW9kYWwge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMTBweDtcbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRtb2RhbC1jb250ZW50LWZhbGxiYWNrLWJvcmRlci1jb2xvcjsgLy9vbGQgYnJvd3NlcnMgZmFsbGJhY2sgKGllOCBldGMpXG4gIGJvcmRlcjogMXB4IHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCAzcHggOXB4IHJnYmEoMCwwLDAsLjUpKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2dyb3VuZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBAaW5jbHVkZSBvcGFjaXR5KDApOyB9XG4gICYuaW4geyBAaW5jbHVkZSBvcGFjaXR5KCRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5KTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRtb2RhbC10aXRsZS1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuLy8gQ2xvc2UgaWNvblxuLm1vZGFsLWhlYWRlciAuY2xvc2Uge1xuICBtYXJnaW4tdG9wOiAtMnB4O1xufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xuICB0ZXh0LWFsaWduOiByaWdodDsgLy8gcmlnaHQgYWxpZ24gYnV0dG9uc1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGNsZWFyZml4OyAvLyBjbGVhciBpdCBpbiBjYXNlIGZvbGtzIHVzZSAucHVsbC0qIGNsYXNzZXMgb24gYnV0dG9uc1xuXG4gIC8vIFByb3Blcmx5IHNwYWNlIG91dCBidXR0b25zXG4gIC5idG4gKyAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIGFjY291bnQgZm9yIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0gd2hpY2ggZ2V0cyB0aGUgYm90dG9tIG1hcmdpbiBsaWtlIGFsbCBvdGhlciBpbnB1dHNcbiAgfVxuICAvLyBidXQgb3ZlcnJpZGUgdGhhdCBmb3IgYnV0dG9uIGdyb3Vwc1xuICAuYnRuLWdyb3VwIC5idG4gKyAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgfVxuICAvLyBhbmQgb3ZlcnJpZGUgaXQgZm9yIGJsb2NrIGJ1dHRvbnMgYXMgd2VsbFxuICAuYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICB3aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogMzBweCBhdXRvO1xuICB9XG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgNXB4IDE1cHggcmdiYSgwLDAsMCwuNSkpO1xuICB9XG5cbiAgLy8gTW9kYWwgc2l6ZXNcbiAgLm1vZGFsLXNtIHsgd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgLm1vZGFsLWxnIHsgd2lkdGg6ICRtb2RhbC1sZzsgfVxufVxuIiwiLy9cbi8vIFRvb2x0aXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQ7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcblxuICBAaW5jbHVkZSBvcGFjaXR5KDApO1xuXG4gICYuaW4gICAgIHsgQGluY2x1ZGUgb3BhY2l0eSgkdG9vbHRpcC1vcGFjaXR5KTsgfVxuICAmLnRvcCAgICB7IG1hcmdpbi10b3A6ICAtM3B4OyBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwOyB9XG4gICYucmlnaHQgIHsgbWFyZ2luLWxlZnQ6ICAzcHg7IHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGg7IH1cbiAgJi5ib3R0b20geyBtYXJnaW4tdG9wOiAgIDNweDsgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctd2lkdGggMDsgfVxuICAmLmxlZnQgICB7IG1hcmdpbi1sZWZ0OiAtM3B4OyBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LXdpZHRoOyB9XG59XG5cbi8vIFdyYXBwZXIgZm9yIHRoZSB0b29sdGlwIGNvbnRlbnRcbi50b29sdGlwLWlubmVyIHtcbiAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6IDNweCA4cHg7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbn1cblxuLy8gQXJyb3dzXG4udG9vbHRpcC1hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbn1cbi8vIE5vdGU6IERlcHJlY2F0ZWQgLnRvcC1sZWZ0LCAudG9wLXJpZ2h0LCAuYm90dG9tLWxlZnQsIGFuZCAuYm90dG9tLXJpZ2h0IGFzIG9mIHYzLjMuMVxuLnRvb2x0aXAge1xuICAmLnRvcCAudG9vbHRpcC1hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLnRvcC1sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1ib3R0b206IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi50b3AtcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tYm90dG9tOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYucmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYubGVmdCAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5ib3R0b20gLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5ib3R0b20tbGVmdCAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYuYm90dG9tLXJpZ2h0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxufVxuIiwiLy9cbi8vIFBvcG92ZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5wb3BvdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtcG9wb3ZlcjtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6IDFweDtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgcG9wb3ZlcnMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0O1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yO1xuICBib3JkZXI6IDFweCBzb2xpZCAkcG9wb3Zlci1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgNXB4IDEwcHggcmdiYSgwLDAsMCwuMikpO1xuXG4gIC8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuICAmLnRvcCAgICAgeyBtYXJnaW4tdG9wOiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7IH1cbiAgJi5yaWdodCAgIHsgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LXdpZHRoOyB9XG4gICYuYm90dG9tICB7IG1hcmdpbi10b3A6ICRwb3BvdmVyLWFycm93LXdpZHRoOyB9XG4gICYubGVmdCAgICB7IG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7IH1cbn1cblxuLnBvcG92ZXItdGl0bGUge1xuICBtYXJnaW46IDA7IC8vIHJlc2V0IGhlYWRpbmcgbWFyZ2luXG4gIHBhZGRpbmc6IDhweCAxNHB4O1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItdGl0bGUtYmc7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZW4oJHBvcG92ZXItdGl0bGUtYmcsIDUlKTtcbiAgYm9yZGVyLXJhZGl1czogKCRib3JkZXItcmFkaXVzLWxhcmdlIC0gMSkgKCRib3JkZXItcmFkaXVzLWxhcmdlIC0gMSkgMCAwO1xufVxuXG4ucG9wb3Zlci1jb250ZW50IHtcbiAgcGFkZGluZzogOXB4IDE0cHg7XG59XG5cbi8vIEFycm93c1xuLy9cbi8vIC5hcnJvdyBpcyBvdXRlciwgLmFycm93OmFmdGVyIGlzIGlubmVyXG5cbi5wb3BvdmVyID4gLmFycm93IHtcbiAgJixcbiAgJjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIH1cbn1cbi5wb3BvdmVyID4gLmFycm93IHtcbiAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbn1cbi5wb3BvdmVyID4gLmFycm93OmFmdGVyIHtcbiAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLnBvcG92ZXIge1xuICAmLnRvcCA+IC5hcnJvdyB7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjsgLy8gSUU4IGZhbGxiYWNrXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgYm90dG9tOiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGJvdHRvbTogMXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJi5yaWdodCA+IC5hcnJvdyB7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIG1hcmdpbi10b3A6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOyAvLyBJRTggZmFsbGJhY2tcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBsZWZ0OiAxcHg7XG4gICAgICBib3R0b206IC0kcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJi5ib3R0b20gPiAuYXJyb3cge1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIHRvcDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICB0b3A6IDFweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG5cbiAgJi5sZWZ0ID4gLmFycm93IHtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIG1hcmdpbi10b3A6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOyAvLyBJRTggZmFsbGJhY2tcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIHJpZ2h0OiAxcHg7XG4gICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgICBib3R0b206IC0kcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBDYXJvdXNlbFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBXcmFwcGVyIGZvciB0aGUgc2xpZGUgY29udGFpbmVyIGFuZCBpbmRpY2F0b3JzXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAuaXRlbSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbiguNnMgZWFzZS1pbi1vdXQgbGVmdCk7XG5cbiAgICAvLyBBY2NvdW50IGZvciBqYW5raXR1ZGUgb24gaW1hZ2VzXG4gICAgPiBpbWcsXG4gICAgPiBhID4gaW1nIHtcbiAgICAgIEBpbmNsdWRlIGltZy1yZXNwb25zaXZlO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgLy8gV2ViS2l0IENTUzMgdHJhbnNmb3JtcyBmb3Igc3VwcG9ydGVkIGRldmljZXNcbiAgICBAbWVkaWEgYWxsIGFuZCAodHJhbnNmb3JtLTNkKSwgKC13ZWJraXQtdHJhbnNmb3JtLTNkKSB7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXRyYW5zZm9ybSgwLjZzIGVhc2UtaW4tb3V0KTtcbiAgICAgIEBpbmNsdWRlIGJhY2tmYWNlLXZpc2liaWxpdHkoaGlkZGVuKTtcbiAgICAgIEBpbmNsdWRlIHBlcnNwZWN0aXZlKDEwMDBweCk7XG5cbiAgICAgICYubmV4dCxcbiAgICAgICYuYWN0aXZlLnJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgICAmLnByZXYsXG4gICAgICAmLmFjdGl2ZS5sZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgICAgJi5uZXh0LmxlZnQsXG4gICAgICAmLnByZXYucmlnaHQsXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gID4gLmFjdGl2ZSxcbiAgPiAubmV4dCxcbiAgPiAucHJldiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICA+IC5hY3RpdmUge1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICA+IC5uZXh0LFxuICA+IC5wcmV2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAubmV4dCB7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuICA+IC5wcmV2IHtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgfVxuICA+IC5uZXh0LmxlZnQsXG4gID4gLnByZXYucmlnaHQge1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICA+IC5hY3RpdmUubGVmdCB7XG4gICAgbGVmdDogLTEwMCU7XG4gIH1cbiAgPiAuYWN0aXZlLnJpZ2h0IHtcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG5cbn1cblxuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmNhcm91c2VsLWNvbnRyb2wge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIEBpbmNsdWRlIG9wYWNpdHkoJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eSk7XG4gIGZvbnQtc2l6ZTogJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1zaGFkb3c6ICRjYXJvdXNlbC10ZXh0LXNoYWRvdztcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTsgLy8gRml4IElFOSBjbGljay10aHJ1IGJ1Z1xuICAvLyBXZSBjYW4ndCBoYXZlIHRoaXMgdHJhbnNpdGlvbiBoZXJlIGJlY2F1c2UgV2ViS2l0IGNhbmNlbHMgdGhlIGNhcm91c2VsXG4gIC8vIGFuaW1hdGlvbiBpZiB5b3UgdHJpcCB0aGlzIHdoaWxlIGluIHRoZSBtaWRkbGUgb2YgYW5vdGhlciBhbmltYXRpb24uXG5cbiAgLy8gU2V0IGdyYWRpZW50cyBmb3IgYmFja2dyb3VuZHNcbiAgJi5sZWZ0IHtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogcmdiYSgwLDAsMCwuNSksICRlbmQtY29sb3I6IHJnYmEoMCwwLDAsLjAwMDEpKTtcbiAgfVxuICAmLnJpZ2h0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWhvcml6b250YWwoJHN0YXJ0LWNvbG9yOiByZ2JhKDAsMCwwLC4wMDAxKSwgJGVuZC1jb2xvcjogcmdiYSgwLDAsMCwuNSkpO1xuICB9XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIG9wYWNpdHkoLjkpO1xuICB9XG5cbiAgLy8gVG9nZ2xlc1xuICAuaWNvbi1wcmV2LFxuICAuaWNvbi1uZXh0LFxuICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCxcbiAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLmljb24tcHJldixcbiAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQge1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIH1cbiAgLmljb24tbmV4dCxcbiAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0IHtcbiAgICByaWdodDogNTAlO1xuICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gIH1cbiAgLmljb24tcHJldixcbiAgLmljb24tbmV4dCB7XG4gICAgd2lkdGg6ICAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmb250LWZhbWlseTogc2VyaWY7XG4gIH1cblxuXG4gIC5pY29uLXByZXYge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDIwMzknOy8vIFNJTkdMRSBMRUZULVBPSU5USU5HIEFOR0xFIFFVT1RBVElPTiBNQVJLIChVKzIwMzkpXG4gICAgfVxuICB9XG4gIC5pY29uLW5leHQge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDIwM2EnOy8vIFNJTkdMRSBSSUdIVC1QT0lOVElORyBBTkdMRSBRVU9UQVRJT04gTUFSSyAoVSsyMDNBKVxuICAgIH1cbiAgfVxufVxuXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwc1xuLy9cbi8vIEFkZCBhbiB1bm9yZGVyZWQgbGlzdCB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhIGxpc3QgaXRlbSBmb3IgZWFjaFxuLy8gc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTBweDtcbiAgbGVmdDogNTAlO1xuICB6LWluZGV4OiAxNTtcbiAgd2lkdGg6IDYwJTtcbiAgbWFyZ2luLWxlZnQ6IC0zMCU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6ICAxMHB4O1xuICAgIGhlaWdodDogMTBweDtcbiAgICBtYXJnaW46IDFweDtcbiAgICB0ZXh0LWluZGVudDogLTk5OXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjYXJvdXNlbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgLy8gSUU4LTkgaGFjayBmb3IgZXZlbnQgaGFuZGxpbmdcbiAgICAvL1xuICAgIC8vIEludGVybmV0IEV4cGxvcmVyIDgtOSBkb2VzIG5vdCBzdXBwb3J0IGNsaWNrcyBvbiBlbGVtZW50cyB3aXRob3V0IGEgc2V0XG4gICAgLy8gYGJhY2tncm91bmQtY29sb3JgLiBXZSBjYW5ub3QgdXNlIGBmaWx0ZXJgIHNpbmNlIHRoYXQncyBub3Qgdmlld2VkIGFzIGFcbiAgICAvLyBiYWNrZ3JvdW5kIGNvbG9yIGJ5IHRoZSBicm93c2VyLiBUaHVzLCBhIGhhY2sgaXMgbmVlZGVkLlxuICAgIC8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjSW50ZXJuZXRfRXhwbG9yZXJcbiAgICAvL1xuICAgIC8vIEZvciBJRTgsIHdlIHNldCBzb2xpZCBibGFjayBhcyBpdCBkb2Vzbid0IHN1cHBvcnQgYHJnYmEoKWAuIEZvciBJRTksIHdlXG4gICAgLy8gc2V0IGFscGhhIHRyYW5zcGFyZW5jeSBmb3IgdGhlIGJlc3QgcmVzdWx0cyBwb3NzaWJsZS5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwIFxcOTsgLy8gSUU4XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwKTsgLy8gSUU5XG4gIH1cbiAgLmFjdGl2ZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAgMTJweDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gIH1cbn1cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBIaWRkZW4gYnkgZGVmYXVsdCBmb3Igc21hbGxlciB2aWV3cG9ydHNcbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxNSU7XG4gIHJpZ2h0OiAxNSU7XG4gIGJvdHRvbTogMjBweDtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtc2hhZG93OiAkY2Fyb3VzZWwtdGV4dC1zaGFkb3c7XG4gICYgLmJ0biB7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7IC8vIE5vIHNoYWRvdyBmb3IgYnV0dG9uIGVsZW1lbnRzIGluIGNhcm91c2VsLWNhcHRpb25cbiAgfVxufVxuXG5cbi8vIFNjYWxlIHVwIGNvbnRyb2xzIGZvciB0YWJsZXRzIGFuZCB1cFxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcblxuICAvLyBTY2FsZSB1cCB0aGUgY29udHJvbHMgYSBzbWlkZ2VcbiAgLmNhcm91c2VsLWNvbnRyb2wge1xuICAgIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LFxuICAgIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCxcbiAgICAuaWNvbi1wcmV2LFxuICAgIC5pY29uLW5leHQge1xuICAgICAgd2lkdGg6ICgkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemUgKiAxLjUpO1xuICAgICAgaGVpZ2h0OiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplICogMS41KTtcbiAgICAgIG1hcmdpbi10b3A6ICgkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemUgLyAtMik7XG4gICAgICBmb250LXNpemU6ICgkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemUgKiAxLjUpO1xuICAgIH1cbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCxcbiAgICAuaWNvbi1wcmV2IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplIC8gLTIpO1xuICAgIH1cbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQsXG4gICAgLmljb24tbmV4dCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICgkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemUgLyAtMik7XG4gICAgfVxuICB9XG5cbiAgLy8gU2hvdyBhbmQgbGVmdCBhbGlnbiB0aGUgY2FwdGlvbnNcbiAgLmNhcm91c2VsLWNhcHRpb24ge1xuICAgIGxlZnQ6IDIwJTtcbiAgICByaWdodDogMjAlO1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgLy8gTW92ZSB1cCB0aGUgaW5kaWNhdG9yc1xuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gICAgYm90dG9tOiAyMHB4O1xuICB9XG59XG4iLCIvL1xuLy8gVXRpbGl0eSBjbGFzc2VzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEZsb2F0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uY2xlYXJmaXgge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cbi5jZW50ZXItYmxvY2sge1xuICBAaW5jbHVkZSBjZW50ZXItYmxvY2s7XG59XG4ucHVsbC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuLnB1bGwtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gVG9nZ2xpbmcgY29udGVudFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBOb3RlOiBEZXByZWNhdGVkIC5oaWRlIGluIGZhdm9yIG9mIC5oaWRkZW4gb3IgLnNyLW9ubHkgKGFzIGFwcHJvcHJpYXRlKSBpbiB2My4wLjFcbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLnNob3cge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi50ZXh0LWhpZGUge1xuICBAaW5jbHVkZSB0ZXh0LWhpZGU7XG59XG5cblxuLy8gSGlkZSBmcm9tIHNjcmVlbnJlYWRlcnMgYW5kIGJyb3dzZXJzXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5cbi8vIEZvciBBZmZpeCBwbHVnaW5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmFmZml4IHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuIiwiLy9cbi8vIFJlc3BvbnNpdmU6IFV0aWxpdHkgY2xhc3Nlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBJRTEwIGluIFdpbmRvd3MgKFBob25lKSA4XG4vL1xuLy8gU3VwcG9ydCBmb3IgcmVzcG9uc2l2ZSB2aWV3cyB2aWEgbWVkaWEgcXVlcmllcyBpcyBraW5kIG9mIGJvcmtlZCBpbiBJRTEwLCBmb3Jcbi8vIFN1cmZhY2UvZGVza3RvcCBpbiBzcGxpdCB2aWV3IGFuZCBmb3IgV2luZG93cyBQaG9uZSA4LiBUaGlzIHBhcnRpY3VsYXIgZml4XG4vLyBtdXN0IGJlIGFjY29tcGFuaWVkIGJ5IGEgc25pcHBldCBvZiBKYXZhU2NyaXB0IHRvIHNuaWZmIHRoZSB1c2VyIGFnZW50IGFuZFxuLy8gYXBwbHkgc29tZSBjb25kaXRpb25hbCBDU1MgdG8gKm9ubHkqIHRoZSBTdXJmYWNlL2Rlc2t0b3AgV2luZG93cyA4LiBMb29rIGF0XG4vLyBvdXIgR2V0dGluZyBTdGFydGVkIHBhZ2UgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhpcyBidWcuXG4vL1xuLy8gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgZm9sbG93aW5nOlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwNDk3XG4vLyBEb2NzOiBodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbS9nZXR0aW5nLXN0YXJ0ZWQvI3N1cHBvcnQtaWUxMC13aWR0aFxuLy8gU291cmNlOiBodHRwOi8vdGlta2FkbGVjLmNvbS8yMDEzLzAxL3dpbmRvd3MtcGhvbmUtOC1hbmQtZGV2aWNlLXdpZHRoL1xuLy8gU291cmNlOiBodHRwOi8vdGlta2FkbGVjLmNvbS8yMDEyLzEwL2llMTAtc25hcC1tb2RlLWFuZC1yZXNwb25zaXZlLWRlc2lnbi9cblxuQGF0LXJvb3Qge1xuICBALW1zLXZpZXdwb3J0IHtcbiAgICB3aWR0aDogZGV2aWNlLXdpZHRoO1xuICB9XG59XG5cblxuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vIE5vdGU6IERlcHJlY2F0ZWQgLnZpc2libGUteHMsIC52aXNpYmxlLXNtLCAudmlzaWJsZS1tZCwgYW5kIC52aXNpYmxlLWxnIGFzIG9mIHYzLjIuMFxuXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUteHMnKTtcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1zbScpO1xuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLW1kJyk7XG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcblxuLnZpc2libGUteHMtYmxvY2ssXG4udmlzaWJsZS14cy1pbmxpbmUsXG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1zbS1ibG9jayxcbi52aXNpYmxlLXNtLWlubGluZSxcbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayxcbi52aXNpYmxlLW1kLWJsb2NrLFxuLnZpc2libGUtbWQtaW5saW5lLFxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtbGctYmxvY2ssXG4udmlzaWJsZS1sZy1pbmxpbmUsXG4udmlzaWJsZS1sZy1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXhzJyk7XG59XG4udmlzaWJsZS14cy1ibG9jayB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXhzLWlubGluZSB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2sge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXNtJyk7XG59XG4udmlzaWJsZS1zbS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtc20taW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtc20taW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLW1kJyk7XG59XG4udmlzaWJsZS1tZC1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbWQtaW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1sZycpO1xufVxuLnZpc2libGUtbGctYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1sZy1pbmxpbmUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXhzJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXNtJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLW1kJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1sZycpO1xufVxuXG5cbi8vIFByaW50IHV0aWxpdGllc1xuLy9cbi8vIE1lZGlhIHF1ZXJpZXMgYXJlIHBsYWNlZCBvbiB0aGUgaW5zaWRlIHRvIGJlIG1peGluLWZyaWVuZGx5LlxuXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXByaW50IGFzIG9mIHYzLjIuMFxuXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtcHJpbnQnKTtcblxuQG1lZGlhIHByaW50IHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1wcmludCcpO1xufVxuLnZpc2libGUtcHJpbnQtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1wcmludC1pbmxpbmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQtaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50IHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tcHJpbnQnKTtcbn1cbiIsIi8vIEB0b2RvIHRoZXNlIHNob3VsZCBiZSB0aGVpciBvd24gQ1NTIGZpbGVzIGFuZCBvbmx5IGluY2x1ZGVkIHdoZW5cbi8vIHNwZWNpZmljIERydXBhbCBsaWJyYXJpZXMgYXJlIHVzZWQuXG5AaW1wb3J0IFwiY29tcG9uZW50L2FsZXJ0XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50L2FqYXhcIjtcbkBpbXBvcnQgXCJjb21wb25lbnQvZmllbGRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnQvZmlsZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudC9maWx0ZXJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnQvZm9ybVwiO1xuQGltcG9ydCBcImNvbXBvbmVudC9pY29uXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50L25hdmJhclwiO1xuQGltcG9ydCBcImNvbXBvbmVudC9ub2RlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50L3BhbmVsXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50L3Byb2dyZXNzLWJhclwiO1xuQGltcG9ydCBcImNvbXBvbmVudC90YWJsZS1kcmFnXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50L3RhYnNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnQvdG9vbGJhclwiO1xuXG4vLyBqUXVlcnkgVUkgc3R5bGUgb3ZlcnJpZGVzLlxuQGltcG9ydCBcImpxdWVyeS11aS9hdXRvY29tcGxldGVcIjtcblxub2wsIHVsIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcbiAgLnBvcG92ZXIgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vIFBhZ2UgaGVhZGVyLlxuLnBhZ2UtaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLy8gRm9vdGVyLlxuLmZvb3RlciB7XG4vKiAgIG1hcmdpbi10b3A6IDQ1cHg7XG4gIHBhZGRpbmctdG9wOiAzNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzZweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNFNUU1RTU7ICovXG59XG5cbi8vIFBhcmFncmFwaHMuXG5wOmxhc3QtY2hpbGQsXG4uZm9ybS1ncm91cDpsYXN0LWNoaWxkLFxuLnBhbmVsOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vLyBIZWxwIHJlZ2lvbi5cbi5yZWdpb24taGVscCB7XG4gID4gLmdseXBoaWNvbiB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogLTAuMDVlbSAwLjVlbSAwIDA7XG4gIH1cbiAgLmJsb2NrIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cblxuLmhlbHAtYmxvY2ssIC5jb250cm9sLWdyb3VwIC5oZWxwLWlubGluZSB7XG4gIGNvbG9yOiAkZ3JheS1saWdodDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBtYXJnaW46IDVweCAwIDEwcHg7XG4gIHBhZGRpbmc6IDA7XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cbiIsIi8qKlxuICogQWxlcnQgc3R5bGluZy5cbiAqL1xuLmFsZXJ0LXNtIHtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG59XG5cbi8vIFRyZWF0IGFsbCBsaW5rcyBpbnNpZGUgYWxlcnQgYXMgLmFsZXJ0LWxpbmtcbi5hbGVydCBhIHtcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xufVxuLmFsZXJ0LXN1Y2Nlc3Mge1xuICBhLCBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICBjb2xvcjogZGFya2VuKCRhbGVydC1zdWNjZXNzLXRleHQsIDEwJSk7XG4gIH1cbn1cbi5hbGVydC1pbmZvIHtcbiAgYSwgYTpob3ZlciwgYTpmb2N1cyB7XG4gICAgY29sb3I6IGRhcmtlbigkYWxlcnQtaW5mby10ZXh0LCAxMCUpO1xuICB9XG59XG4uYWxlcnQtd2FybmluZyB7XG4gIGEsIGE6aG92ZXIsIGE6Zm9jdXMge1xuICAgIGNvbG9yOiBkYXJrZW4oJGFsZXJ0LXdhcm5pbmctdGV4dCwgMTAlKTtcbiAgfVxufVxuLmFsZXJ0LWRhbmdlciB7XG4gIGEsIGE6aG92ZXIsIGE6Zm9jdXMge1xuICAgIGNvbG9yOiBkYXJrZW4oJGFsZXJ0LWRhbmdlci10ZXh0LCAxMCUpO1xuICB9XG59XG4iLCIvKipcbiAqIEFKQVggKHRocm9iYmVyKSBzdHlsaW5nLlxuICovXG5cbi8vICR0b2RvIFRoaXMgc2hvdWxkIHByb2JhYmx5IGJlIGl0J3Mgb3duIG1peGluL2NvbXBvbmVudD9cbkBrZXlmcmFtZXMgZ2x5cGhpY29uLXNwaW4ge1xuICAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpOyB9XG59XG4uZ2x5cGhpY29uLXNwaW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGFuaW1hdGlvbjogZ2x5cGhpY29uLXNwaW4gMXMgaW5maW5pdGUgbGluZWFyO1xufVxuYSAuZ2x5cGhpY29uLXNwaW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuaHRtbC5qcyB7XG4gIC5idG4gLmFqYXgtdGhyb2JiZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAuNWVtO1xuICAgIG1hcmdpbi1yaWdodDogLS4yNWVtO1xuICB9XG5cbiAgLmZvcm0taXRlbSAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgIC5nbHlwaGljb24ge1xuICAgICAgY29sb3I6ICRncmF5LWxpZ2h0O1xuICAgICAgb3BhY2l0eTogLjU7XG4gICAgICB0cmFuc2l0aW9uOiAxNTBtcyBjb2xvciwgMTUwbXMgb3BhY2l0eTtcbiAgICAgICYuZ2x5cGhpY29uLXNwaW4ge1xuICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICAgIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4gICAgfVxuICB9XG5cbiAgLy8gSGlkZSBlbXB0eSB3cmFwcGVycyBmcm9tIEFKQVgvRmllbGQgQVBJcy5cbiAgLmFqYXgtbmV3LWNvbnRlbnQ6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLyoqXG4gKiAkZmlsZVxuICogVmlzdWFsIHN0eWxlcyBmb3IgZmllbGRzLlxuICovXG5cbi5maWVsZC0tbGFiZWwge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5maWVsZC0tbGFiZWwtaW5saW5lIC5maWVsZC0tbGFiZWwsXG4uZmllbGQtLWxhYmVsLWlubGluZSAuZmllbGQtLWl0ZW1zIHtcbiAgZmxvYXQ6IGxlZnQ7IC8qTFRSKi9cbn1cbi5maWVsZC0tbGFiZWwtaW5saW5lIC5maWVsZC0tbGFiZWwsXG4uZmllbGQtLWxhYmVsLWlubGluZSA+IC5maWVsZC0taXRlbSxcbi5maWVsZC0tbGFiZWwtaW5saW5lIC5maWVsZC0taXRlbXMge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbn1cbltkaXI9XCJydGxcIl0gLmZpZWxkLS1sYWJlbC1pbmxpbmUgLmZpZWxkLS1sYWJlbCxcbltkaXI9XCJydGxcIl0gLmZpZWxkLS1sYWJlbC1pbmxpbmUgLmZpZWxkLS1pdGVtcyB7XG4gIHBhZGRpbmctbGVmdDogMC41ZW07XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIGZsb2F0OiByaWdodDsgLypSVEwqL1xufVxuLmZpZWxkLS1sYWJlbC1pbmxpbmUgLmZpZWxkLS1sYWJlbDo6YWZ0ZXIge1xuICBjb250ZW50OiAnOic7XG59XG4iLCIvKipcbiAqIEZpbGUgKGFuZCBJbWFnZSBXaWRnZXQpIHN0eWxlcy5cbiAqL1xuLmZpbGUge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbjogNXB4IDA7XG4gIHdpZHRoOiAxMDAlO1xuICA+IHNwYW4ge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyO1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGlucHV0LWJvcmRlcjtcbiAgICB9XG4gIH1cbiAgPiAudGFibGVkcmFnLWNoYW5nZWQge1xuICAgICYsICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZW4oJGFsZXJ0LXdhcm5pbmctYm9yZGVyLCA1JSk7XG4gICAgfVxuICAgIGJhY2tncm91bmQ6ICRhbGVydC13YXJuaW5nLWJnO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgY29sb3I6ICRhbGVydC13YXJuaW5nLXRleHQ7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICBwYWRkaW5nOiAwIDFlbTtcbiAgICB0b3A6IDA7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGluaGVyaXQ7XG4gIH1cbn1cbi5maWxlLWljb24ge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICBmb250LXNpemU6IDE1MCU7XG4gIHBhZGRpbmc6IC4yNWVtIC41ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi5maWxlLWxpbmsge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMTAwJTtcbiAgYSwgYTpob3ZlciwgYTpmb2N1cywgYTphY3RpdmUge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG4uZmlsZS1zaXplIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgcGFkZGluZzogMCAxZW07XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB3aGl0ZS1zcGFjZTogcHJlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uaW1hZ2Utd2lkZ2V0LnJvdyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4iLCIvKipcbiAqIEZpbHRlciBzdHlsZXMuXG4gKi9cblxuLy8gTWltaWMgLnBhbmVsLWRlZmF1bHQgc3R5bGluZy5cbi5maWx0ZXItd3JhcHBlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJHBhbmVsLWRlZmF1bHQtYm9yZGVyO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmFkaXVzOiAwIDAgJHBhbmVsLWJvcmRlci1yYWRpdXMgJHBhbmVsLWJvcmRlci1yYWRpdXM7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNSk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGhlaWdodDogNTFweDtcbiAgQGV4dGVuZCAuY2xlYXJmaXg7XG59XG4uZmlsdGVyLWhlbHAge1xuICBmbG9hdDogcmlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW46IC41ZW0gMCAwO1xufVxuXG4vLyBGdWxsIGxpc3QgcGFnZS5cbi5uYXYubmF2LXRhYnMuZmlsdGVyLWZvcm1hdHMge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuIiwiLyoqXG4gKiBGb3JtIHN0eWxlcy5cbiAqL1xuXG4vLyBDaGVja2JveGVzIC8gcmFkaW8gYnV0dG9ucy5cbi5jaGVja2JveCwgLnJhZGlvIHtcbiAgLy8gUmVtb3ZlIHRvcC9ib3R0b20gbWFyZ2lucyB3aGVuIGluIHRhYmxlIGNvbnRleHQsIGJlY2F1c2UgdGhpcyBpcyBtb3N0XG4gIC8vIGxpa2VseSBhIHRhYmxlc2VsZWN0IGNoZWNrYm94IGVsZW1lbnQuXG4gIHRhYmxlICYuZm9ybS1uby1sYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi8vIEJyb3dzZXJzIGRvIG5vdCByZWNvZ25pemUgcHNldWRvIDphZnRlciBzZWxlY3RvcnMsIHdlIG11c3QgY3JlYXRlIGEgd3JhcHBlclxuLy8gYXJvdW5kIHRoZSBzZWxlY3QgZWxlbWVudCB0byBzdHlsZSBpdCBwcm9wZXJseS5cbi8vICRzZWUgaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3EvMjExMDM1NDJcbi5zZWxlY3Qtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgLmZvcm0taW5saW5lICYge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5pbnB1dC1ncm91cCAmIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICAgICY6Zmlyc3QtY2hpbGQgLmZvcm0tY29udHJvbDpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCAuZm9ybS1jb250cm9sOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG4gICAgfVxuICB9XG4gIHNlbGVjdCB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHBhZGRpbmctcmlnaHQ6IDJlbTtcbiAgICAmOjotbXMtZXhwYW5kIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICBjb250ZW50OiAn4pa8JztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW4tdG9wOiAtLjVlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAuNWVtO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICB6LWluZGV4OiAxMDtcblxuICAgIC8vIFVzZSBhIG1vcmUgc3R5bGlzaCBpY29uIGlmIHRoZSB0aGVtZSB1c2VzIGdseXBoaWNvbnMuXG4gICAgLmhhcy1nbHlwaGljb25zICYge1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgY29udGVudDogJ1xcZTExNCc7IC8vIC5nbHlwaGljb24tY2hldnJvbi1kb3duXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LWZhbWlseTogJ0dseXBoaWNvbnMgSGFsZmxpbmdzJztcbiAgICB9XG4gICAgLmhhcy1lcnJvciAmIHtcbiAgICAgIGNvbG9yOiAkc3RhdGUtZGFuZ2VyLXRleHQ7XG4gICAgfVxuICAgIC5oYXMtc3VjY2VzcyAmIHtcbiAgICAgIGNvbG9yOiAkc3RhdGUtc3VjY2Vzcy10ZXh0O1xuICAgIH1cbiAgICAuaGFzLXdhcm5pbmcgJiB7XG4gICAgICBjb2xvcjogJHN0YXRlLXdhcm5pbmctdGV4dDtcbiAgICB9XG4gIH1cbn1cblxuLy8gVXNlIENTUy9TVkcgaW1hZ2UgZm9yIHJlcXVpcmVkIG1hcmsuXG4vLyBAc2VlIGh0dHBzOi8vd3d3LmRydXBhbC5vcmcvbm9kZS8yMTUyMjE3XG4vLyBAc2VlIGh0dHBzOi8vd3d3LmRydXBhbC5vcmcvbm9kZS8yMjc0NjMxXG4uZm9ybS1yZXF1aXJlZDphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvcmVxdWlyZWQuc3ZnKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMHB4IDdweDtcbiAgY29udGVudDpcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OjE7XG4gIGhlaWdodDogN3B4O1xuICB3aWR0aDogMTBweDtcbn1cblxuLy8gRm9ybSBhY3Rpb24gYnV0dG9ucy5cbi5mb3JtLWFjdGlvbnMge1xuICAuYnRuLCAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cbiAgLmJ0bi1ncm91cCB7XG4gICAgLmJ0biB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIEljb24gc3R5bGVzLlxuICovXG5hIHtcbiAgJi5pY29uLWJlZm9yZSAuZ2x5cGhpY29uLFxuICAmIC5nbHlwaGljb24uaWNvbi1iZWZvcmUge1xuICAgIG1hcmdpbi1yaWdodDogLjI1ZW07XG4gIH1cbiAgJi5pY29uLWFmdGVyIC5nbHlwaGljb24sXG4gICYgLmdseXBoaWNvbi5pY29uLWFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogLjI1ZW07XG4gIH1cbn1cblxuLmJ0biB7XG4gICYuaWNvbi1iZWZvcmUgLmdseXBoaWNvbixcbiAgJiAuZ2x5cGhpY29uLmljb24tYmVmb3JlIHtcbiAgICBtYXJnaW4tbGVmdDogLS4yNWVtO1xuICAgIG1hcmdpbi1yaWdodDogLjI1ZW07XG4gIH1cbiAgJi5pY29uLWFmdGVyIC5nbHlwaGljb24sXG4gICYgLmdseXBoaWNvbi5pY29uLWFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogLjI1ZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtLjI1ZW07XG4gIH1cbn1cbiIsIi8qKlxuICogTmF2YmFyIHN0eWxpbmcuXG4gKi9cbiRtb2JpbGU6ICAgICAgICAgIFwic2NyZWVuIGFuZCAobWF4LXdpZHRoOiAjeyRzY3JlZW4teHMtbWF4fSlcIjtcbiR0YWJsZXQ6ICAgICAgICAgIFwic2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyRzY3JlZW4tc20tbWlufSlcIjtcbiRub3JtYWw6ICAgICAgICAgIFwic2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyRzY3JlZW4tbWQtbWlufSlcIjtcbiR3aWRlOiAgICAgICAgICAgIFwic2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyRzY3JlZW4tbGctbWlufSlcIjtcbiRncmlkLWJyZWFrcG9pbnQ6IFwic2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyRncmlkLWZsb2F0LWJyZWFrcG9pbnR9KVwiO1xuXG5ib2R5IHtcbiAgLy8gRml4IGhvcml6b250YWwgc2Nyb2xsaW5nIG9uIGlPUyBkZXZpY2VzLlxuICAvLyBodHRwczovL3d3dy5kcnVwYWwub3JnL25vZGUvMTg3MDA3NlxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJi5uYXZiYXItaXMtc3RhdGljLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAmLm5hdmJhci1pcy1maXhlZC10b3Age1xuICAgIG1hcmdpbi10b3A6ICgkbmF2YmFyLWhlaWdodCArICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cbiAgJi5uYXZiYXItaXMtZml4ZWQtYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogKCRuYXZiYXItaGVpZ2h0ICsgKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcbiAgfVxuXG4gIEBtZWRpYSAjeyR0YWJsZXR9IHtcbiAgICBtYXJnaW4tdG9wOiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XG4gIH1cbiAgQG1lZGlhICN7JG1vYmlsZX0ge1xuICAgICYudG9vbGJhci12ZXJ0aWNhbCB7XG4gICAgICAmLm5hdmJhci1pcy1maXhlZC10b3AsXG4gICAgICAmLm5hdmJhci1pcy1maXhlZC1ib3R0b20ge1xuICAgICAgICAudG9vbGJhci1iYXIge1xuICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgfVxuICAgICAgICBoZWFkZXIge1xuICAgICAgICAgIHotaW5kZXg6IDUwMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLy8gRGVmYXVsdCB0b29sYmFyIGZpeGVkIGhlaWdodCB2YWx1ZS5cbiAgICAgIC8vIEBzZWUgY29yZS9tb2R1bGVzL3Rvb2xiYXIvY3NzL3Rvb2xiYXIuaWNvbnMudGhlbWUuY3NzQDI2MVxuICAgICAgJi5uYXZiYXItaXMtZml4ZWQtdG9wIGhlYWRlciB7XG4gICAgICAgIHRvcDogMzlweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5uYXZiYXIuY29udGFpbmVyIHtcbiAgQG1lZGlhICN7JHRhYmxldH0ge1xuICAgIG1heC13aWR0aDogKCgkY29udGFpbmVyLXNtIC0gJGdyaWQtZ3V0dGVyLXdpZHRoKSk7XG4gIH1cbiAgQG1lZGlhICN7JG5vcm1hbH0ge1xuICAgIG1heC13aWR0aDogKCgkY29udGFpbmVyLW1kIC0gJGdyaWQtZ3V0dGVyLXdpZHRoKSk7XG4gIH1cbiAgQG1lZGlhICN7JHdpZGV9IHtcbiAgICBtYXgtd2lkdGg6ICgoJGNvbnRhaW5lci1sZyAtICRncmlkLWd1dHRlci13aWR0aCkpO1xuICB9XG59XG5cbi8vIEJyYW5kaW5nLlxuLm5hdmJhciAubG9nbyB7XG4gIG1hcmdpbi1yaWdodDogLSgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgcGFkZGluZy1sZWZ0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgQG1lZGlhICN7JGdyaWQtYnJlYWtwb2ludH0ge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuIiwiLyoqXG4gKiBOb2RlIHN0eWxpbmcuXG4gKi9cblxuLmlzLXVucHVibGlzaGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjRmNDtcbn1cblxuLm5vZGUtcHJldmlldy1jb250YWluZXIge1xuICBtYXJnaW4tdG9wOiAtKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xufVxuXG4ubm9kZS1wcmV2aWV3LWZvcm0tc2VsZWN0IHtcbiAgcGFkZGluZzogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xufVxuIiwiLyoqXG4gKiBQYW5lbCBzdHlsaW5nLlxuICovXG4ucGFuZWwtdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAtMTBweCAtMTVweDtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICAmLCAmOmhvdmVyLCAmOmZvY3VzLCAmOmhvdmVyOmZvY3VzIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxuICAmOmZvY3VzLCAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cbiIsIi8qKlxuICogUHJvZ3Jlc3MgYmFyIHN0eWxlcy5cbiAqL1xuLnByb2dyZXNzLXdyYXBwZXIge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xuXG4gICY6bGFzdC1jaGlsZCAucHJvZ3Jlc3Mge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxuXG4gIC5tZXNzYWdlIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxuXG4gIC5wZXJjZW50YWdlLFxuICAucHJvZ3Jlc3MtbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgfVxuXG4gIC5wcm9ncmVzcy1iYXIge1xuICAgIG1pbi13aWR0aDogMmVtO1xuICB9XG5cbn1cbiIsIi8qKlxuICogVGFibGUgZHJhZyBzdHlsZXMuXG4gKi9cbi50YWJsZWRyYWctdG9nZ2xlLXdlaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAxcHggMnB4IDFweCAxMHB4O1xufVxuLnRhYmxlZHJhZy1jaGFuZ2VkLXdhcm5pbmcge1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4udGFibGVkcmFnLWhhbmRsZSB7XG4gIGNvbG9yOiAkZ3JheS1saWdodDtcbiAgY3Vyc29yOiBtb3ZlO1xuICBmbG9hdDogbGVmdDtcbiAgZm9udC1zaXplOiAxMjUlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luOiAtMTBweCAwIDAgLTEwcHg7XG4gIHBhZGRpbmc6IDEwcHg7XG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgfVxufVxuLmluZGVudGF0aW9uIHtcbiAgZmxvYXQ6IGxlZnQ7IC8qIExUUiAqL1xuICBoZWlnaHQ6IDEuN2VtO1xuICBtYXJnaW46IC0wLjRlbSAwLjJlbSAtMC40ZW0gLTAuNGVtOyAvKiBMVFIgKi9cbiAgcGFkZGluZzogMC40MmVtIDAgMC40MmVtIDAuNmVtOyAvKiBMVFIgKi9cbiAgd2lkdGg6IDIwcHg7XG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogLTAuNGVtIC0wLjRlbSAtMC40ZW0gMC4yZW07XG4gICAgcGFkZGluZzogMC40MmVtIDAuNmVtIDAuNDJlbSAwO1xuICB9XG59XG4iLCIvKipcbiAqIFRhYnMgYW5kIGxvY2FsIGFjdGlvbiBzdHlsZXMuXG4gKi9cbi5sb2NhbC1hY3Rpb25zIHtcbiAgbWFyZ2luOiAxMHB4IDAgMTBweCAtNXB4O1xufVxuLnRhYnMtLXNlY29uZGFyeSB7XG4gIG1hcmdpbjogMTBweCAwIDVweDtcbn1cblxuLyoqXG4gKiBNaXNzaW5nIEJvb3RzdHJhcCAyIHRhYiBzdHlsaW5nLlxuICogJHNlZSBodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE4NDMyNTc3L3N0YWNrZWQtdGFicy1pbi1ib290c3RyYXAtM1xuICogJHNlZSBodHRwOi8vYm9vdHBseS5jb20vNzQ5MjZcbiAqL1xuLnRhYmJhYmxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi50YWJzLWJlbG93LCAudGFicy1sZWZ0LCAudGFicy1yaWdodCB7XG4gID4gLm5hdi10YWJzIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIC5zdW1tYXJ5IHtcbiAgICAgIGNvbG9yOiAkbmF2LWRpc2FibGVkLWxpbmstY29sb3I7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgfVxuICB9XG59XG4udGFiLXBhbmUgPiAucGFuZWwtaGVhZGluZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4udGFiLWNvbnRlbnQgPiAuYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIEJlbG93LlxuLnRhYnMtYmVsb3cge1xuICA+IC5uYXYtdGFicyB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgPiBsaSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgID4gYSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2U7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgPiAuYWN0aXZlIHtcbiAgICAgID4gYSxcbiAgICAgID4gYTpob3ZlcixcbiAgICAgID4gYTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJG5hdi10YWJzLWJvcmRlci1jb2xvciAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIExlZnQgYW5kIHJpZ2h0IHRhYnMuXG4udGFicy1sZWZ0LFxuLnRhYnMtcmlnaHQge1xuICA+IC5uYXYtdGFicyB7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgd2lkdGg6IDIyMHB4O1xuICAgID4gbGkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICAgIH1cbiAgICAgID4gYSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gLnRhYi1jb250ZW50IHtcbiAgICBib3JkZXItcmFkaXVzOiAwICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA1KTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgfVxufVxuXG4vLyBMZWZ0IHRhYnMuXG4udGFicy1sZWZ0IHtcbiAgPiAubmF2LXRhYnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogLTFweDtcbiAgICA+IGxpID4gYSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlIDAgMCAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvciAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvciAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICAgID4gLmFjdGl2ZSA+IGEsXG4gICAgPiAuYWN0aXZlID4gYTpob3ZlcixcbiAgICA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWJvcmRlci1jb2xvciB0cmFuc3BhcmVudCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgICBib3gtc2hhZG93OiAtMXB4IDFweCAxcHggcmdiYSgwLDAsMCwuMDUpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSaWdodCB0YWJzLlxuLnRhYnMtcmlnaHQge1xuICA+IC5uYXYtdGFicyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlIDA7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvciAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMXB4IDFweCAxcHggcmdiYSgwLDAsMCwuMDUpO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhLFxuICAgID4gLmFjdGl2ZSA+IGE6aG92ZXIsXG4gICAgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1ib3JkZXItY29sb3IgJG5hdi10YWJzLWJvcmRlci1jb2xvciAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yIHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBUb29sYmFyIG1vZHVsZSBzdHlsaW5nLlxuICovXG5cbiR0b29sYmFyLXdpZHRoOiAyNDBweDtcblxuYm9keS50b29sYmFyLWZpeGVkIHtcblxuICAvLyBGaXggei1pbmRleC5cbiAgLnRvb2xiYXItb3JpZW50ZWQgLnRvb2xiYXItYmFyIHtcbiAgICB6LWluZGV4OiAoJHppbmRleC1uYXZiYXItZml4ZWQgKyAxKTtcbiAgfVxuXG4gIC5uYXZiYXItZml4ZWQtdG9wIHtcbiAgICB0b3A6IDM5cHg7XG4gIH1cblxuICAvLyBIb3Jpem9udGFsLlxuICAmLnRvb2xiYXItaG9yaXpvbnRhbC50b29sYmFyLXRyYXktb3BlbiAubmF2YmFyLWZpeGVkLXRvcCB7XG4gICAgdG9wOiA3OXB4O1xuICB9XG5cbiAgLy8gVmVydGljYWwgT3Blbi5cbiAgJi50b29sYmFyLXZlcnRpY2FsLnRvb2xiYXItdHJheS1vcGVuIHtcblxuICAgIC5uYXZiYXItZml4ZWQtdG9wIHtcbiAgICAgIGxlZnQ6ICR0b29sYmFyLXdpZHRoO1xuICAgIH1cblxuICAgICYudG9vbGJhci1maXhlZCB7XG4gICAgICBtYXJnaW4tbGVmdDogJHRvb2xiYXItd2lkdGg7XG5cbiAgICAgIC50b29sYmFyLXRyYXkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICAgICAgJiwgPiAudG9vbGJhci1saW5pbmc6YmVmb3JlIHtcbiAgICAgICAgICB3aWR0aDogJHRvb2xiYXItd2lkdGg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuLy8gUmVtb3ZlIGZsaWNraW5nLlxuYm9keS50b29sYmFyLWxvYWRpbmcge1xuXG4gIG1hcmdpbi10b3A6IDA7XG5cbiAgJi50b29sYmFyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XG4gIH1cbn1cbiIsIi8qKlxuICogalF1ZXJ5IFVJIGF1dG9jb21wbGV0ZSB3aWRnZXQgc3R5bGUgb3ZlcnJpZGVzLlxuICpcbiAqICR0b2RvIFJlbW92ZSBvbmNlIGpRdWVyeSBVSSBpcyBubyBsb25nZXIgdXNlZD9cbiAqL1xuXG4vLyBNaW1pY3MgLmRyb3Bkb3duLW1lbnUgc3R5bGVzLlxuLnVpLWF1dG9jb21wbGV0ZSB7XG4gIGJhY2tncm91bmQ6ICRkcm9wZG93bi1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgJGRyb3Bkb3duLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgYm94LXNoYWRvdzogMCA2cHggMTJweCByZ2JhKDAsMCwwLC4xNzUpO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWluLXdpZHRoOiAxNjBweDtcbiAgcGFkZGluZzogNXB4IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG5cbiAgLnVpLW1lbnUtaXRlbSB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICBtYXJnaW46IDA7XG4gICAgb3V0bGluZTogMDtcbiAgICBwYWRkaW5nOiAzcHggMjBweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICYudWktc3RhdGUtaG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJi51aS1zdGF0ZS1hY3RpdmUsICYudWktc3RhdGUtZm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnO1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG5cbiAgfVxuXG59XG4iLCJcclxuLyp1bC5saXN0IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiRncmF5LWxpZ2h0O1xyXG5cclxuXHRsaS5pdGVtIHtcclxuXHRcdHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxuXHRcdGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcclxuXHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0Y29sb3I6IGxpZ2h0ZW4oJGJyYW5kLXByaW1hcnksIDEwJSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiovXHJcblxyXG5oMSBhLCBoMiBhLCBoMyBhLCBoNCBhLCBoNSBhLCBoNiBhIHsgZm9udC1mYW1pbHk6JGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7IGZvbnQtd2VpZ2h0OjcwMDsgfVxyXG5cclxuXHJcbmgxLCAuaDEsIGgyLCAuaDIsIGgzLCAuaDMgeyBtYXJnaW4tdG9wOjA7IG1hcmdpbi1ib3R0b206IDIwcHg7IGZvbnQtd2VpZ2h0OjkwMDt9XHJcblxyXG5oMiwgLmgyIHsgZm9udC1zaXplOiAyMHB4O1xyXG5cclxuXHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHsgXHJcblx0XHRmb250LXNpemU6IDIycHg7IFxyXG5cdH1cclxuXHJcblx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7IFxyXG5cdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLWgyO1xyXG5cdH1cclxufVxyXG5cclxuKjpmb2N1cyB7IG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDt9XHJcbio6YWN0aXZlIHsgYm94LXNoYWRvdzpub25lICFpbXBvcnRhbnQ7fVxyXG5cclxuLnBhdGgtdXNlciAuaGVhZGVyIHsgcG9zaXRpb246IHJlbGF0aXZlO31cclxuXHJcbi5uYXYgPiBsaSA+IGE6aG92ZXIsIC5uYXYgPiBsaSA+IGE6Zm9jdXMgeyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDt9XHJcblxyXG4uYnV0dG9uIHsgZm9udC1mYW1pbHk6XCJUZWtvXCI7fVxyXG5cclxuLnBhZ2VyIGxpID4gYSB7IGJvcmRlci1yYWRpdXM6IDUwJTsgYm9yZGVyOm5vbmU7IGNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeTsgZm9udC13ZWlnaHQ6IGJvbGQ7IGhlaWdodDogNDBweDsgd2lkdGg6IDQwcHg7IHRleHQtYWxpZ246IGNlbnRlcjsgbGluZS1oZWlnaHQ6IDQwcHg7IHBhZGRpbmc6IDA7IH1cclxuLnBhZ2VyIGxpID4gYTpob3ZlciB7IGJhY2tncm91bmQ6ICRsaW5rLWhvdmVyLWNvbG9yO31cclxuXHJcbi5jYXJvdXNlbC1jb250cm9sIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LCAuY2Fyb3VzZWwtY29udHJvbCAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQsIC5jYXJvdXNlbC1jb250cm9sIC5pY29uLXByZXYsIC5jYXJvdXNlbC1jb250cm9sIC5pY29uLW5leHQgeyBtYXJnaW4tdG9wOiAtM3B4O31cclxuXHJcbi5wb3BvdmVyIHsgYm94LXNoYWRvdzogbm9uZTsgYm9yZGVyLXJhZGl1czogMTVweDt9XHJcblxyXG4uY2Fyb3VzZWwtY29udHJvbC5sZWZ0LCAuY2Fyb3VzZWwtY29udHJvbC5yaWdodCB7IGJhY2tncm91bmQ6bm9uZTt9XHJcblxyXG4uY2Fyb3VzZWwtaW5uZXIgeyBiYWNrZ3JvdW5kOiMwMDA7XHJcblxyXG5cdC5pbWctcmVzcG9uc2l2ZSB7IG9wYWNpdHk6MTt9XHJcblxyXG5cdC5jYXJvdXNlbC1jYXB0aW9uIHsgcGFkZGluZy1ib3R0b206MDsgcGFkZGluZy10b3A6MDsgYm90dG9tOjUwJTsgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpOyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpOyAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSk7IH1cclxufVxyXG5cclxuLyogLmNvbnRhaW5lci13aWRlIHsgbWF4LXdpZHRoOiAxMzQwcHg7IG1hcmdpbi1sZWZ0OiBhdXRvOyBtYXJnaW4tcmlnaHQ6IGF1dG87IG92ZXJmbG93OiBoaWRkZW47IH0gKi9cclxuXHJcbi5iaWctYXJlYSB7IHBhZGRpbmctdG9wOiA1MHB4O1xyXG5cclxuXHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHsgXHJcblx0XHRwYWRkaW5nLXRvcDogODBweDtcclxuXHR9XHJcblxyXG5cdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikgeyBcclxuXHRcdHBhZGRpbmctdG9wOiAxMDBweDtcclxuXHR9XHJcblxyXG5cdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikgeyBcclxuXHRcdHBhZGRpbmctdG9wOiAxMTBweDtcclxuXHR9XHJcbn1cclxuXHJcbi5pbnRyby10ZXh0IHsgdGV4dC1hbGlnbjpjZW50ZXI7IC8qIHBhZGRpbmctYm90dG9tOjIwcHg7ICAqL31cclxuXHJcbi5zZXBhcmF0b3I6YWZ0ZXIgeyBoZWlnaHQ6NDBweDsgd2lkdGg6IDFweDsgYmFja2dyb3VuZC1jb2xvcjojZGZkZmRmOyBtYXJnaW46MCBhdXRvOyBtYXJnaW4tdG9wOjMwcHg7IG1hcmdpbi1ib3R0b206MzBweDt9XHJcblxyXG4uYnRuLXN0ZCB7IGZvbnQtZmFtaWx5OidUZWtvJzsgZm9udC13ZWlnaHQ6MzAwOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb24tYnV0dG9uLnBuZykgbm8tcmVwZWF0IGNlbnRlciByaWdodDsgcGFkZGluZy1yaWdodDoyOHB4OyBiYWNrZ3JvdW5kLXNpemU6IDE4cHg7IGZvbnQtc2l6ZToyOHB4OyB9XHJcblxyXG4uYnRuIHsgYm9yZGVyOm5vbmU7fVxyXG5cclxuLmNhcm91c2VsLWluZGljYXRvcnMgbGkgeyBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LC40KTt9XHJcblxyXG5cclxuLnVpLXdpZGdldCBpbnB1dCwgLnVpLXdpZGdldCBzZWxlY3QsIC51aS13aWRnZXQgdGV4dGFyZWEsIC51aS13aWRnZXQgYnV0dG9uIHsgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFpbXBvcnRhbnQ7fVxyXG5cclxuLyogR0VORVJJQyAtIEhPTUUgKi9cclxuXHJcbmJvZHkgeyBtYXJnaW4tdG9wOiAwO1xyXG5cclxuXHQudWktZGF0ZXBpY2tlciB7XHJcblxyXG5cdFx0Ji51aS1jb3JuZXItYWxsIHsgYm9yZGVyLXJhZGl1czogMDt9XHJcblx0XHQmLnVpLXdpZGdldC1jb250ZW50IHsgYm9yZGVyOjA7fVxyXG5cdFx0Ji51aS13aWRnZXQgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7fVxyXG5cclxuXHRcdC51aS13aWRnZXQtaGVhZGVyIHsgYm9yZGVyLWNvbG9yOiNmZmY7IGJhY2tncm91bmQ6I2YyZjJmMjsgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zZXJpZjsgY29sb3I6ICRicmFuZC1wcmltYXJ5OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBmb250LXdlaWdodDogOTAwOyB9XHJcblxyXG5cdFx0LnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgIHsgXHJcblxyXG5cclxuXHRcdFx0dGQge1xyXG5cdFx0XHRcdGEgeyB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG5cdFx0XHRcdCY6aG92ZXIgeyBjb2xvcjogJGJyYW5kLXByaW1hcnk7fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0dGh7Y29sb3I6ICNiYmI7fVxyXG5cclxuXHRcdH1cclxuXHJcblx0XHQudWktd2lkZ2V0LWNvbnRlbnQgeyBib3JkZXItY29sb3I6ICNmMmYyZjI7IH1cclxuXHJcblx0XHQudWktc3RhdGUtZGVmYXVsdCwgLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1kZWZhdWx0LCAudWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtZGVmYXVsdCB7IGJvcmRlcjpub25lOyBiYWNrZ3JvdW5kOiAjZjJmMmYyO31cclxuXHJcblxyXG5cclxuXHR9XHJcblxyXG5cclxuXHQjbWVudU1vZGFsIHtcclxuXHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjI1KTtcclxuXHJcblx0XHQubW9kYWwtZGlhbG9nIHtcclxuXHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogNjBweDtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC44KTtcclxuXHJcblx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdFx0XHR3aWR0aDoxMDAlO1xyXG5cclxuXHRcdFx0Lm1vZGFsLWNvbnRlbnQge1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdGJveC1zaGFkb3c6bm9uZTsgYm9yZGVyLXJhZGl1czpub25lOyBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyBib3JkZXI6bm9uZTtcclxuXHRcdFx0XHRcclxuXHRcdFx0XHQubW9kYWwtaGVhZGVyIHtib3JkZXItYm90dG9tOm5vbmU7XHJcblx0XHRcdFx0XHQuY2xvc2UgeyBmb250LXNpemU6IDUwcHg7IG9wYWNpdHk6IDE7IGZvbnQtd2VpZ2h0OiBub3JtYWw7fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRcclxuXHRcdFx0XHQubW9kYWwtYm9keSB7XHJcblxyXG5cdFx0XHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7IFxyXG5cdFx0XHRcdFx0XHRcdHdpZHRoOjYwMHB4OyBtYXJnaW46IDAgYXV0bztcclxuXHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRsaSB7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTozMHB4O1xyXG5cclxuXHRcdFx0XHRcdFx0YSB7IGZvbnQtZmFtaWx5OiRmb250LWZhbWlseS1zZXJpZjsgZm9udC13ZWlnaHQ6IDkwMDtcclxuXHJcblx0XHRcdFx0XHRcdFx0Jjpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuaGVhZGVyIHsgcGFkZGluZzogMTBweCAzMHB4OyBtYXJnaW4tYm90dG9tOjA7IGJhY2tncm91bmQ6JGJyYW5kLXByaW1hcnk7IC13ZWJraXQtdHJhbnNpdGlvbjogLjhzOyB0cmFuc2l0aW9uOiAuOHM7XHJcblxyXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7IFxyXG5cdFx0XHRwYWRkaW5nOiAyMHB4IDMwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7IFxyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOjEwMCU7IHotaW5kZXg6MTsgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsgXHJcblx0XHR9XHJcblxyXG5cdFx0LmxvZ28tYmNuIHtcclxuXHRcdFx0bWFyZ2luLWxlZnQ6IC0xNXB4O1xyXG5cdFx0XHQvKiBtYXJnaW4tcmlnaHQ6IDA7IG1hcmdpbi1sZWZ0OiAwOyBwYWRkaW5nLWxlZnQ6IDA7IHBhZGRpbmctcmlnaHQ6IDA7ICovXHJcblx0XHRcdC5uYW1lLm5hdmJhci1icmFuZCB7IGRpc3BsYXk6bm9uZTt9XHJcblxyXG5cdFx0XHQubG9nbyB7XHJcblx0XHRcdFx0IFxyXG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMDsgcGFkZGluZy1sZWZ0OiAwOyBwYWRkaW5nLXJpZ2h0OiAwO1xyXG5cclxuXHRcdFx0XHRpbWcgeyB3aWR0aDoxMzBweDtcclxuXHRcdFx0XHRcclxuXHRcdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgeyBcclxuXHRcdFx0XHRcdFx0d2lkdGg6MjAwcHg7XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQubmF2YmFyLWhlYWRlciB7XHJcblx0XHRcdC5sYW5ndWFnZS1zd2l0Y2hlci1sYW5ndWFnZS11cmwge1xyXG5cdFx0XHRcdGZsb2F0OmxlZnQ7IGRpc3BsYXk6IG5vbmU7XHJcblxyXG5cdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgeyBcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0dWwge1xyXG5cclxuXHRcdFx0XHRcdGxpc3Qtc3R5bGU6bm9uZTtcclxuXHJcblx0XHRcdFx0XHRsaSB7XHJcblx0XHRcdFx0XHRcdGZsb2F0OmxlZnQ7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OjEwcHg7XHJcblxyXG5cdFx0XHRcdFx0XHRhIHtcclxuXHRcdFx0XHRcdFx0XHRjb2xvcjojZmZmOyBmb250LXdlaWdodDo2MDA7IHBhZGRpbmctdG9wOiA5cHg7IHBhZGRpbmctYm90dG9tOiA5cHg7IGRpc3BsYXk6YmxvY2s7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0I2Jsb2NrLW1lbnVoZWFkZXJyaWdodCB7XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0ZmxvYXQ6bGVmdDsgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcblxyXG5cdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgeyBcclxuIFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMzBweDtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdCAubWVudSB7XHJcblxyXG5cdFx0XHRcdCBcdGZsb2F0OmxlZnQ7IG1hcmdpbjogMDtcclxuXHJcblx0XHRcdFx0XHRsaSB7IG1hcmdpbi1sZWZ0OjEwcHg7IG1hcmdpbi10b3A6IDRweDsgbWFyZ2luLWJvdHRvbTogNHB4OyBib3JkZXItcmFkaXVzOjUwJTsgZmxvYXQ6IGxlZnQ7XHJcblxyXG5cdFx0XHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHsgXHJcbiBcdFx0XHRcdFx0XHRcdCAgcGFkZGluZzo0cHg7IGJvcmRlcjoycHggc29saWQgI2ZmZjsgbWFyZ2luLWxlZnQ6MTVweDsgbWFyZ2luLXRvcDogMDsgbWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0YSB7IHRleHQtaW5kZW50Oi05OTk5OXB4OyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7IGJvcmRlci1yYWRpdXM6NTAlOyBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcjsgYmFja2dyb3VuZC1zaXplOjE0cHg7IHdpZHRoOjMwcHg7IGhlaWdodDozMHB4OyBwYWRkaW5nOjA7XHJcblxyXG5cdFx0XHRcdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgeyBcclxuXHQgXHRcdFx0XHRcdFx0XHQgYmFja2dyb3VuZC1zaXplOjE0cHg7IFxyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdCYubG9jYXRpb24ge1xyXG5cclxuXHRcdFx0XHRcdFx0XHRhIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2xvY2F0aW9uLWFjY2Vzcy1oZWFkZXIucG5nKTt9XHJcblx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdCYudGVsLXBvcG92ZXIge1xyXG5cclxuXHRcdFx0XHRcdFx0XHRhIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3RlbGVwaG9uZS1hY2Nlc3MtaGVhZGVyLnBuZyk7fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQuYnRuLW1lbnUge1xyXG5cclxuXHRcdFx0XHR0ZXh0LWluZGVudDotOTk5OTlweDsgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLW1lbnUucG5nKSBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTozMHB4OyB3aWR0aDozMHB4OyBoZWlnaHQ6MzBweDsgbWFyZ2luLXRvcDo0cHg7IG1hcmdpbi1ib3R0b206NHB4OyBtYXJnaW4tbGVmdDoyMHB4OyBkaXNwbGF5OmJsb2NrOyBwYWRkaW5nOjA7IGZsb2F0OmxlZnQ7XHJcblxyXG5cdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgeyBcclxuXHRcdFx0XHRcdFx0IG1hcmdpbi1sZWZ0OiA0NXB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblxyXG5cdC50aXRsZS1hcmVhIHtcclxuXHJcblx0XHRwYWRkaW5nLXRvcDogMjIwcHg7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTpjb3ZlcjsgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3RpdGxlLXNlY3Rpb25zLWltYWdlcy9ob3RlbC1zZWN0aW9uLWJnLmpwZyk7IHRleHQtYWxpZ246Y2VudGVyO1xyXG5cclxuXHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgeyBcclxuXHRcdFx0cGFkZGluZy10b3A6IDMwMHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdC5ibG9jay1yZWdpb24tdG9wIHsgbWFyZ2luLWJvdHRvbTogMzBweDsgcGFkZGluZy1sZWZ0OiAyMHB4OyBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG5cclxuXHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7IFxyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDYwcHg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgeyBcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxMDBweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0aDEgeyBjb2xvcjojZmZmOyBtYXJnaW4tYm90dG9tOjdweDsgZm9udC1zaXplOiAzMHB4O1xyXG5cclxuXHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7IFxyXG5cdFx0XHRcdGZvbnQtc2l6ZTozOHB4OyBcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7IFxyXG5cdFx0XHRcdGZvbnQtc2l6ZTokZm9udC1zaXplLWgxOyBcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0aDIgeyBjb2xvcjogI2ZmZjsgbWFyZ2luLWJvdHRvbTowOyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7IGZvbnQtc2l6ZToxNHB4OyBmb250LXdlaWdodDo2MDA7XHJcblxyXG5cdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHsgXHJcblx0XHRcdFx0IGZvbnQtc2l6ZToxNnB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHsgXHJcblx0XHRcdFx0IGZvbnQtc2l6ZToyMHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHR9XHJcblxyXG5cdFx0fVxyXG5cclxuXHR9XHJcblxyXG5cdC5icy1yZWdpb24tLXRvcCB7XHJcblxyXG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XHJcblxyXG5cdFx0LmhvbWUtc2xpZGVyIHtcclxuXHJcblx0XHRcdC5jYXJvdXNlbC1pbm5lciB7XHJcblxyXG5cdFx0XHRcdC8qLm92ZXJsYXkgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6MDsgcmlnaHQ6MDsgdG9wOjA7IGJvdHRvbTowO1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsMCwwLDAuNSkgMCUsIHJnYmEoMCwwLDAsMC41KSAxJSwgcmdiYSgwLDAsMCwwKSAzMCUsIHJnYmEoMCwwLDAsMCkgNzAlLCByZ2JhKDAsMCwwLDAuNSkgMTAwJSk7IFxyXG5cdFx0XHRcdFx0YmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsMCwwLDAuNSkgMCUscmdiYSgwLDAsMCwwLjUpIDElLHJnYmEoMCwwLDAsMCkgMzAlLHJnYmEoMCwwLDAsMCkgNzAlLHJnYmEoMCwwLDAsMC41KSAxMDAlKTsgXHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsMCwwLDAuNSkgMCUscmdiYSgwLDAsMCwwLjUpIDElLHJnYmEoMCwwLDAsMCkgMzAlLHJnYmEoMCwwLDAsMCkgNzAlLHJnYmEoMCwwLDAsMC41KSAxMDAlKTsgXHJcblx0XHRcdFx0XHRmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzgwMDAwMDAwJywgZW5kQ29sb3JzdHI9JyM4MDAwMDAwMCcsR3JhZGllbnRUeXBlPTAgKTtcclxuXHRcdFx0XHR9ICovXHJcblxyXG5cdFx0XHRcdC5jYXJvdXNlbC1jYXB0aW9uIHtcclxuXHJcblx0XHRcdFx0XHRoMiB7IFxyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDIycHg7IG1hcmdpbi1ib3R0b206MDsgY29sb3I6ICNmZmY7XHJcblxyXG5cdFx0XHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHsgXHJcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOjMwcHg7IFxyXG5cdFx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHsgXHJcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOjU4cHg7IFxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCNibG9jay1mb3JtcmVzZXJ2YSB7XHJcblxyXG5cdFx0XHRiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjkzKTsgLXdlYmtpdC10cmFuc2l0aW9uOiAuOHM7IHRyYW5zaXRpb246IC44cztcclxuXHJcblx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgeyBcclxuXHRcdFx0XHRcdCBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogMDsgd2lkdGg6IDEwMCU7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCYuYWZmaXggeyB0b3A6MDsgd2lkdGg6MTAwJTsgei1pbmRleDo2OyBiYWNrZ3JvdW5kOiAkYm9keS1iZzsgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7IGJvdHRvbTogYXV0bzsgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgwLDAsMCwuMSk7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5ib29rLWJlbmVmaXRzIHtcclxuXHJcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcblxyXG5cdFx0XHRcdC5idG4geyBmb250LWZhbWlseTokZm9udC1mYW1pbHktc2VyaWY7IHRleHQtaW5kZW50OiAtOTk5OTlweDsgZm9udC13ZWlnaHQ6IDkwMDsgY29sb3I6JGJyYW5kLXByaW1hcnk7IGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7IGZvbnQtc2l6ZToyMHB4OyBwYWRkaW5nOjA7IGxpbmUtaGVpZ2h0OiA0NHB4OyBwYWRkaW5nLWxlZnQ6IDI2cHg7IGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYmVuZWZpdHMtaWNvbi5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgbGVmdDsgYmFja2dyb3VuZC1zaXplOiAyMHB4OyBtaW4taGVpZ2h0OiAyMHB4O1xyXG5cclxuXHRcdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgeyBcclxuXHRcdFx0XHRcdFx0dGV4dC1pbmRlbnQ6IDA7XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0I2NvbGxhcHNlQmVuZWZpdHMge1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlOyBtaW4td2lkdGg6IDMwMHB4OyB6LWluZGV4OjI7IHdpZHRoOjEwMCU7IGJhY2tncm91bmQ6ICNmZmY7IGJveC1zaGFkb3c6IDAgMjBweCAxMHB4IC0xNXB4IHJnYmEoMCwwLDAsLjEpO1xyXG5cclxuXHRcdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgeyBcclxuXHRcdFx0XHRcdFx0bWluLXdpZHRoOiBhdXRvO1xyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdC5saXN0LWdyb3VwIHtcclxuXHJcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7IGNvbG9yOiAkYnJhbmQtcHJpbWFyeTsgcGFkZGluZy10b3A6IDE1cHg7IFxyXG5cclxuXHRcdFx0XHRcdFx0Lmxpc3QtZ3JvdXAtaXRlbSB7XHJcblxyXG5cdFx0XHRcdFx0XHRcdGJvcmRlcjpub25lO1xyXG5cclxuXHRcdFx0XHRcdFx0XHRpbWcgeyBtYXgtd2lkdGg6IDMwcHg7IHBhZGRpbmctcmlnaHQ6IDdweDt9XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblxyXG5cdFx0XHQuYm9va2luZy1mb3JtLW1vYmlsZSB7IHBhZGRpbmctcmlnaHQ6IDMwcHg7IHBhZGRpbmctbGVmdDogMTVweDtcclxuXHRcdFx0XHRhIHsgYm9yZGVyOiBub25lOyBmb250LWZhbWlseTpUZWtvOyBmb250LXdlaWdodDogMzAwOyBwYWRkaW5nLXJpZ2h0OjI4cHg7IGJhY2tncm91bmQtc2l6ZTogMThweDsgZm9udC1zaXplOjI2cHg7IGhlaWdodDogNDRweDsgbGluZS1oZWlnaHQ6IDQ0cHg7fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQjZm9ybUF2YWlsYWJpbGl0eSB7XHJcblxyXG5cclxuXHJcblx0XHRcdFx0I21pcmFpX2JlMCB7XHJcblx0XHRcdFx0XHQ+IGlucHV0LCA+IHNlbGVjdCB7ICBib3JkZXI6bm9uZTsgLypib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLDAsMCwuNCk7ICovIGZsb2F0OiBsZWZ0OyBwYWRkaW5nOiAwIDE1cHg7IGxpbmUtaGVpZ2h0OiA0NHB4OyBoZWlnaHQ6IDQ0cHg7fSBcclxuXHRcdFx0XHRcdC8qIHNwYW4geyBwYWRkaW5nOjAgNXB4OyBsaW5lLWhlaWdodDogMjsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwwLDAsLjQpOyBoZWlnaHQ6IDQwcHg7IG1hcmdpbi1sZWZ0OiA1cHg7ICB9ICovXHJcblx0XHRcdFx0XHQjbWlyYWlfYmUxIHsgZGlzcGxheTogbm9uZTt9XHJcblx0XHRcdFx0XHQjbWlyYWlfYmUyIHsgbWF4LXdpZHRoOjExMHB4OyBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNiw3NSwuMSk7IGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcclxuXHRcdFx0XHRcdFx0Jjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IFxyXG5cdFx0XHRcdFx0XHQgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0Jjo6LW1vei1wbGFjZWhvbGRlciB7XHJcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICRicmFuZC1wcmltYXJ5O1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdCY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcclxuXHRcdFx0XHRcdFx0ICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdCY6LW1vei1wbGFjZWhvbGRlciB7XHJcblx0XHRcdFx0XHRcdCAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdCNtaXJhaV9iZTMgeyBkaXNwbGF5OiBub25lO31cclxuXHRcdFx0XHRcdCNtaXJhaV9iZTQgeyBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNiw3NSwuMik7IGNvbG9yOiAkYnJhbmQtcHJpbWFyeTt9XHJcblx0XHRcdFx0XHQjbWlyYWlfYmU1IHsgZGlzcGxheTogbm9uZTt9XHJcblx0XHRcdFx0XHQjbWlyYWlfYmU2IHsgbWF4LXdpZHRoOjE4MHB4OyBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNiw3NSwuMyk7IGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcclxuXHJcblx0XHRcdFx0XHRcdCY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyBcclxuXHRcdFx0XHRcdFx0ICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdCY6Oi1tb3otcGxhY2Vob2xkZXIge1xyXG5cdFx0XHRcdFx0XHRcdGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHQmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XHJcblx0XHRcdFx0XHRcdCAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHQmOi1tb3otcGxhY2Vob2xkZXIge1xyXG5cdFx0XHRcdFx0XHQgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdCNtaXJhaV9iZTEwIHsgZGlzcGxheTpub25lO31cclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0I21pcmFpX2JlNyB7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyBwYWRkaW5nLXJpZ2h0OiAzMHB4OyBwYWRkaW5nLWxlZnQ6IDE1cHg7IGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5O1xyXG5cdFx0XHRcdFx0XHRpbnB1dCB7IGJvcmRlcjogbm9uZTsgZm9udC1mYW1pbHk6VGVrbzsgZm9udC13ZWlnaHQ6IDMwMDsgY29sb3I6I2ZmZjsgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLWJ1dHRvbi13aGl0ZS5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQ7IHBhZGRpbmctcmlnaHQ6MjhweDsgcGFkZGluZy10b3A6IDA7IHBhZGRpbmctYm90dG9tOiAwOyBiYWNrZ3JvdW5kLXNpemU6IDE4cHg7IGZvbnQtc2l6ZToyNnB4OyBoZWlnaHQ6IDQ0cHg7IGxpbmUtaGVpZ2h0OiA0NHB4O31cclxuXHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHQjbWlyYWlfYmU4IHtkaXNwbGF5Om5vbmU7fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cdFxyXG5cclxuXHQuYnMtcmVnaW9uLS1tYWluIHtcclxuXHJcblx0XHQucm9vbXMtYWNjZXNzIHtcclxuXHJcblx0XHRcdFx0IC5wYXJhZ3JhcGgtLXR5cGUtLWJwLWNvbHVtbnNfXzJjb2wge1xyXG5cdFx0XHRcdCBcdFxyXG5cdFx0XHRcdCBcdG92ZXJmbG93OiBoaWRkZW47IHBhZGRpbmctbGVmdDogN3B4OyBwYWRkaW5nLXJpZ2h0OiA3cHg7IG1hcmdpbi1ib3R0b206IDdweDtcclxuXHJcblx0XHRcdFx0IFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7IFxyXG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQgXHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHsgXHJcblx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMTVweDsgcGFkZGluZy1yaWdodDogMTVweDsgXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0IH1cclxuXHJcblx0XHRcdFx0LnRpdGxlLWFjY2VzcyB7XHJcblx0XHRcdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTsgei1pbmRleDogMTsgcGFkZGluZzogMzBweDtcclxuXHJcblx0XHRcdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgeyBcclxuXHRcdFx0XHRcdFx0XHRwYWRkaW5nOiAyMHB4O1xyXG5cdFx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHsgXHJcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogMzBweDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdGEgeyBjb2xvcjojZmZmO31cclxuXHJcblx0XHRcdFx0XHQuYnRuLXN0ZCB7IGJhY2tncm91bmQtaW1hZ2U6dXJsKC4uL2ltYWdlcy9pY29uLWJ1dHRvbi13aGl0ZS5wbmcpO31cclxuXHJcblx0XHRcdFx0XHRoMiB7XHJcblxyXG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjVweDtcclxuXHJcblx0XHRcdFx0XHRcdGEgeyBkaXNwbGF5OmJsb2NrOyB9XHJcblxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0LmNhcm91c2VsIHtcclxuXHRcdFx0XHRcdC5jYXJvdXNlbC1pbmRpY2F0b3JzIHsgZGlzcGxheTpub25lOyB9XHJcblx0XHRcdFx0XHQuY2Fyb3VzZWwtY29udHJvbCB7IHRvcDphdXRvOyBoZWlnaHQ6IDgwcHg7IH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcclxuXHJcblx0XHR9XHJcblxyXG5cdFx0LnNlY3Rpb25zLWFjY2VzcyB7XHJcblxyXG5cdFx0XHQucGFyYWdyYXBoLS10eXBlLS1icC1jb2x1bW5zX180Y29sIHtcclxuXHRcdFx0IFx0cGFkZGluZy1sZWZ0OiA3cHg7IHBhZGRpbmctcmlnaHQ6IDdweDsgbWFyZ2luLWJvdHRvbTogN3B4O1xyXG5cclxuXHRcdFx0IFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7IFxyXG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdCBcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikgeyBcclxuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDE1cHg7IHBhZGRpbmctcmlnaHQ6IDE1cHg7IFxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0LmFjY2Vzcy1iZyB7XHJcblxyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICMwMDA7XHJcblx0XHRcdFx0LXdlYmtpdC1maWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTsgZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XHJcblx0XHRcdFx0LXdlYmtpdC10cmFuc2l0aW9uOiAuMnM7IHRyYW5zaXRpb246IC4ycztcclxuXHRcdFx0XHQmOmhvdmVyIHsgLXdlYmtpdC1maWx0ZXI6IGdyYXlzY2FsZSgwJSk7IGZpbHRlcjogZ3JheXNjYWxlKDAlKTsgfVxyXG5cclxuXHJcblxyXG5cdFx0XHRcdC5wYXJhZ3JhcGhfX2NvbHVtbiB7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdC5ibG9jay10aXRsZSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgei1pbmRleDoxOyBtYXJnaW4tYm90dG9tOjA7IGZvbnQtc2l6ZToxNHB4OyBmb250LXdlaWdodDogNjAwO1xyXG5cclxuXHRcdFx0XHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7IFxyXG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTZweDsgXHJcblx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikgeyBcclxuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDE4cHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdGEgeyBjb2xvcjojZmZmOyBwYWRkaW5nOiAzMHB4OyBkaXNwbGF5OmJsb2NrOyBmb250LXdlaWdodDogNjAwO1xyXG5cclxuXHRcdFx0XHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHsgXHJcblx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nOiAxNXB4O1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7IFxyXG5cdFx0XHRcdFx0XHRcdFx0cGFkZGluZzogMjBweDtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikgeyBcclxuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDMwcHg7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0PiBhIHtcclxuXHJcblx0XHRcdFx0XHRcdGRpdiB7IGJhY2tncm91bmQtc2l6ZTpjb3ZlcjsgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgb3BhY2l0eToxOyB9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5hY2Nlc3MtMSB7XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0LnBhcmFncmFwaF9fY29sdW1uIHtcclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0PiBhIHtcclxuXHJcblx0XHRcdFx0XHRcdGRpdiB7XHJcblxyXG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiAyNTBweDtcclxuXHJcblx0XHRcdFx0XHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHsgXHJcblx0XHRcdFx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiA2NjBweDsgXHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0LmFjY2Vzcy0yIHtcclxuXHRcdFx0XHRcclxuXHRcdFx0XHQucGFyYWdyYXBoX19jb2x1bW4ge1xyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHQ+IGEge1xyXG5cclxuXHRcdFx0XHRcdFx0ZGl2IHtcclxuXHJcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206IDI1MHB4O1xyXG5cclxuXHRcdFx0XHRcdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgeyBcclxuXHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206IDU2MHB4OyBcclxuXHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQuYWNjZXNzLTMge1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdC5wYXJhZ3JhcGhfX2NvbHVtbiB7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdD4gYSB7XHJcblxyXG5cdFx0XHRcdFx0XHRkaXYge1xyXG5cclxuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMjUwcHg7XHJcblxyXG5cdFx0XHRcdFx0XHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7IFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogNzAwcHg7IFxyXG5cdFx0XHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQuYWNjZXNzLTQge1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdC5wYXJhZ3JhcGhfX2NvbHVtbiB7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdD4gYSB7XHJcblxyXG5cdFx0XHRcdFx0XHRkaXYge1xyXG5cclxuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMjUwcHg7XHJcblxyXG5cdFx0XHRcdFx0XHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7IFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogNjIwcHg7IFxyXG5cdFx0XHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC5mZWF0LWxvY2F0aW9ucyB7IFxyXG5cclxuXHRcdFx0LnBhcmFncmFwaC0tdHlwZS0tYnAtY29sdW1uc19fNGNvbCB7XHJcblx0XHRcdCBcdHBhZGRpbmctbGVmdDogN3B4OyBwYWRkaW5nLXJpZ2h0OiA3cHg7IG1hcmdpbi1ib3R0b206IDdweDtcclxuXHJcblx0XHRcdCBcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgeyBcclxuXHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHQgXHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHsgXHJcblx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMTVweDsgcGFkZGluZy1yaWdodDogMTVweDsgXHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQuZmVhdC1sb2NhdGlvbiB7XHJcblxyXG5cdFx0XHRcdGJhY2tncm91bmQ6ICMwMDA7XHJcblxyXG5cdFx0XHRcdC5wYXJhZ3JhcGhfX2NvbHVtbiB7XHJcblxyXG5cdFx0XHRcdFx0LmJsb2NrLXRpdGxlIHsgcG9zaXRpb246IGFic29sdXRlOyB6LWluZGV4OjE7IG1hcmdpbi1ib3R0b206MDsgZm9udC1zaXplOjE0cHg7IGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0XHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHsgXHJcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxNnB4OyBcclxuXHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7IFxyXG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMThweDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0YSB7IGNvbG9yOiNmZmY7IHBhZGRpbmc6IDMwcHg7IGRpc3BsYXk6YmxvY2s7IGZvbnQtd2VpZ2h0OiA2MDA7XHJcblxyXG5cdFx0XHRcdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgeyBcclxuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDE1cHg7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHsgXHJcblx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nOiAyMHB4O1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7IFxyXG5cdFx0XHRcdFx0XHRcdFx0cGFkZGluZzogMzBweDtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0PiBhIHtcclxuXHJcblx0XHRcdFx0XHRcdGRpdiB7IGJhY2tncm91bmQtc2l6ZTpjb3Zlcjsgb3BhY2l0eToxOyBwYWRkaW5nLWJvdHRvbTogMjUwcHg7XHJcblxyXG5cdFx0XHRcdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgeyBcclxuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiA1MDBweDsgXHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0LmNhcmQgeyBiYWNrZ3JvdW5kOiAjZmZmOyBwYWRkaW5nOiAyMHB4O31cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cdFxyXG5cdFx0fVxyXG5cclxuXHR9XHJcblxyXG5cclxuXHQuZm9vdGVyLXdyYXBwZXIgeyBwYWRkaW5nLXRvcDogNTBweDsgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9mb290ZXItYmcuanBnKSBuby1yZXBlYXQgY2VudGVyIHRvcDsgYmFja2dyb3VuZC1zaXplOmNvdmVyOyBcclxuXHJcblx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHsgXHJcblx0XHRcdG1hcmdpbi10b3A6IDUwcHg7IHBhZGRpbmctdG9wOiAyMDBweDtcclxuXHRcdH1cclxuXHJcblx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHsgXHJcblx0XHRcdHBhZGRpbmctdG9wOiAxMDBweDsgcGFkZGluZy10b3A6IDQ1MHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdC5mb290ZXIgeyBwYWRkaW5nOiAxNXB4OyBtYXgtd2lkdGg6IDEzNDBweDsgbWFyZ2luLWxlZnQ6IGF1dG87IG1hcmdpbi1yaWdodDogYXV0bzsgb3ZlcmZsb3c6IGhpZGRlbjsgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XHJcblxyXG5cclxuXHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7IFxyXG5cdFx0XHRcdCBwYWRkaW5nOiAxMHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHsgXHJcblx0XHRcdFx0IHBhZGRpbmc6IDQwcHg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5mb290ZXItYmxvY2sgeyBwYWRkaW5nOjMwcHg7IC8qIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC41NSk7ICovXHJcblx0XHRcdFx0XHJcblx0XHRcdFx0aDQgeyBtYXJnaW46MCAwIDI1cHggMDsgZm9udC13ZWlnaHQ6OTAwOyAvKiBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNzUpOyAqL31cclxuXHJcblx0XHRcdFx0YSB7IGZvbnQtd2VpZ2h0OjgwMDt9XHJcblxyXG5cdFx0XHRcdC5maWVsZC0tbmFtZS1maWVsZC1saW5rIHsgbWFyZ2luOjE1cHggMDt9XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0Ji5mb290ZXJfMSB7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdC50ZWxlZm9uIHsgZm9udC1zaXplOiAyMnB4O1xyXG5cclxuXHRcdFx0XHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7IFxyXG5cdFx0XHRcdFx0XHRcdCBmb250LXNpemU6IDE2cHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgeyBcclxuXHRcdFx0XHRcdFx0XHQgZm9udC1zaXplOiAyMnB4O1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQmLmZvb3Rlcl8yIHtcclxuXHRcdFx0XHRcdGEge1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjsgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgYmFja2dyb3VuZC1zaXplOjI0cHg7IGRpc3BsYXk6YmxvY2s7IHBhZGRpbmctbGVmdDo0MHB4OyBwYWRkaW5nLXRvcDoxMHB4OyBwYWRkaW5nLWJvdHRvbToxMHB4O1xyXG5cdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdFx0Ji5mYWNlYm9vayB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvZmFjZWJvb2stc29jaWFsLWZvb3Rlci5wbmcpOyB9XHJcblx0XHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0XHQmLnR3aXR0ZXIgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2luc3RhZ3JhbS1zb2NpYWwtZm9vdGVyLnBuZyk7IH1cclxuXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQmLmZvb3Rlcl80IHtcclxuXHRcdFx0XHRcdGEgeyBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2dvLXRvcC1idXR0b24ucG5nKSB0b3AgY2VudGVyIG5vLXJlcGVhdDsgYmFja2dyb3VuZC1zaXplOjEwMHB4OyBjb2xvcjojMDAwOyBkaXNwbGF5OmJsb2NrOyBmb250LXdlaWdodDpub3JtYWw7IHBhZGRpbmctdG9wOjEyMHB4OyB0ZXh0LWFsaWduOmNlbnRlcjsgZm9udC1mYW1pbHk6JGZvbnQtZmFtaWx5LXNlcmlmOyBmb250LXdlaWdodDogOTAwOyBmb250LXN0eWxlOml0YWxpYzsgLXdlYmtpdC10cmFuc2l0aW9uOiAxczsgdHJhbnNpdGlvbjogMXM7IH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5mb290ZXItbGFzdC13cmFwcGVyIHtcclxuXHRcdC5mb290ZXItbGFzdCB7XHJcblxyXG5cdFx0XHRwYWRkaW5nOiAxNXB4OyBtYXgtd2lkdGg6IDEzNDBweDsgbWFyZ2luLWxlZnQ6IGF1dG87IG1hcmdpbi1yaWdodDogYXV0bzsgb3ZlcmZsb3c6IGhpZGRlbjsgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEpOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBmb250LXNpemU6IDEycHg7XHJcblxyXG5cclxuXHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7IFxyXG5cdFx0XHRcdCBwYWRkaW5nOiAxMHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHsgXHJcblx0XHRcdFx0IHBhZGRpbmc6IDQwcHg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCNibG9jay1maXJtYWF0b29tIHtcclxuXHJcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7IHBhZGRpbmc6IDMwcHg7XHJcblxyXG5cdFx0XHRcdGEgeyBmb250LXdlaWdodDogOTAwO31cclxuXHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCNibG9jay1mb290ZXJtZW51IHtcclxuXHJcblx0XHRcdFx0ZmxvYXQ6IHJpZ2h0O1xyXG5cclxuXHRcdFx0XHRwYWRkaW5nOiAzMHB4O1xyXG5cclxuXHRcdFx0XHRsaSB7IGZsb2F0OiBsZWZ0OyBtYXJnaW4tbGVmdDogMjBweDtcclxuXHRcdFx0XHRcdGEgeyBwYWRkaW5nOiAwO31cclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHR9XHJcblxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcblxyXG4vKiBMJ0hPVEVMICovXHJcblxyXG4ubm9kZS00IHtcclxuXHJcblx0LnRpdGxlLWFyZWEgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3RpdGxlLXNlY3Rpb25zLWltYWdlcy9ob3RlbC1zZWN0aW9uLWJnLmpwZyk7IH1cclxuXHJcblx0LmJzLXJlZ2lvbi0tbWFpbiB7XHJcblx0XHQuYW1lbml0aWVzIHsgXHJcblxyXG5cdFx0XHR0ZXh0LWFsaWduOmNlbnRlcjsgY29sb3I6JGJyYW5kLXByaW1hcnk7IGZvbnQtd2VpZ2h0OiA0MDA7IFxyXG5cclxuXHJcblx0XHRcdC5wYXJhZ3JhcGgtLXR5cGUtLWNoYXJhY3RlcmlzdGljczpudGgtY2hpbGQoNm4rMSkgeyBjbGVhcjogYm90aDt9XHJcblxyXG5cdFx0XHQucGFyYWdyYXBoLS10eXBlLS1jaGFyYWN0ZXJpc3RpY3Mge1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblxyXG5cdFx0XHRcdC5maWVsZC0tbmFtZS1maWVsZC1tZWRpYS1pbWFnZSB7XHJcblx0XHRcdFx0XHRpbWcge1xyXG5cdFx0XHRcdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jazsgbWF4LXdpZHRoOiA2MHB4OyBtYXJnaW4tYm90dG9tOiA3cHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0LmhvdGVsLWRlc2Mtd3JhcHBlciB7XHJcblx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvdGl0bGUtc2VjdGlvbi1pbWFnZS5qcGcpIG5vLXJlcGVhdCBmaXhlZDsgYmFja2dyb3VuZC1zaXplOmNvdmVyO1xyXG5cclxuXHRcdFx0LnBhcmFncmFwaF9fY29sdW1uIHsgcGFkZGluZy1ib3R0b206MDtcclxuXHJcblx0XHRcdFx0LmhvdGVsLWRlc2MgeyB0ZXh0LWFsaWduOmNlbnRlcjsgYmFja2dyb3VuZDojZmZmOyBwYWRkaW5nLWxlZnQ6MzBweDsgcGFkZGluZy1yaWdodDozMHB4O1xyXG5cclxuXHRcdFx0XHRcdHA6Zmlyc3QtY2hpbGQgeyBmb250LXNpemU6IDE2cHg7XHJcblx0XHRcdFx0XHRcdHN0cm9uZyB7IGNvbG9yOiAkYnJhbmQtcHJpbWFyeTt9XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgeyBcclxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDo1MHB4OyBwYWRkaW5nLXJpZ2h0OjUwcHg7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHsgXHJcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6ODBweDsgcGFkZGluZy1yaWdodDo4MHB4O1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyogTExJU1RBVCBBUEFSVEFNRU5UUyAqL1xyXG5cclxuLm5vZGUtOCwgLm5vZGUtMTYzIHtcclxuXHJcblx0LnRpdGxlLWFyZWEgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3RpdGxlLXNlY3Rpb25zLWltYWdlcy9oYWItYXBhcnQtc2VjdGlvbi1iZy5qcGcpOyB9XHJcblxyXG5cdC5icy1yZWdpb24tLW1haW4ge1xyXG5cclxuXHRcdC52aWV3LWFwYXJ0bWVudHMtcm9vbXMtbGlzdCB7XHJcblx0XHRcdC5yb29tIHtcclxuXHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbToxNXB4O1xyXG5cclxuXHRcdFx0XHQudGl0bGUtYWNjZXNzIHtcclxuXHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTsgcGFkZGluZzogMjBweDsgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcclxuXHJcblx0XHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHsgXHJcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTsgei1pbmRleDoyOyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgcGFkZGluZzogMzBweDtcclxuXHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRhIHsgXHJcblx0XHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHsgXHJcblx0XHRcdFx0XHRcdFx0Y29sb3I6I2ZmZjtcclxuXHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0aDIge1xyXG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTo1cHg7XHJcblx0XHRcdFx0XHRhIHsgZGlzcGxheTppbmxpbmUtYmxvY2s7IGJhY2tncm91bmQ6dXJsKC4uL2ltYWdlcy9pY29uLWJ1dHRvbi5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQ7IGJhY2tncm91bmQtc2l6ZTogMThweDsgcGFkZGluZy1yaWdodDoyOHB4O1xyXG5cdFx0XHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHsgXHJcblx0XHRcdFx0XHRcdFx0IGJhY2tncm91bmQtaW1hZ2U6dXJsKC4uL2ltYWdlcy9pY29uLWJ1dHRvbi13aGl0ZS5wbmcpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdHNwYW4geyBmb250LXNpemU6IDE0cHg7IGZvbnQtd2VpZ2h0OjUwMDtcclxuXHJcblx0XHRcdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgeyBcclxuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDIwcHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQucm9vbS1saW5rIHtcclxuXHJcblx0XHRcdFx0XHRwYWRkaW5nOiAyMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xyXG5cclxuXHRcdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgeyBcclxuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlOyB6LWluZGV4OjI7IGJvdHRvbTogMDsgcGFkZGluZzogNXB4IDIwcHg7IGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdC5idG4tc3RkIHsgZGlzcGxheTogYmxvY2s7IH1cclxuXHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qIERFVEFMTCBBUEFSVEFNRU5UUyAqL1xyXG5cclxuXHJcbi5wYWdlLW5vZGUtdHlwZS1hcGFydG1lbnRzLXJvb21zIHtcclxuXHJcblx0LnRpdGxlLWFyZWEgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3RpdGxlLXNlY3Rpb25zLWltYWdlcy9oYWItYXBhcnQtc2VjdGlvbi1iZy5qcGcpOyB9XHJcblxyXG5cdC5icy1yZWdpb24tLW1haW4ge1xyXG5cclxuXHRcdC5iZW5lZml0cyB7XHJcblx0XHRcdC5iZW5lZml0IHtcclxuXHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHJcblx0XHRcdFx0LmZpZWxkLS1uYW1lLWZpZWxkLW1lZGlhLWltYWdlIHtcclxuXHRcdFx0XHRcdGltZyB7ZGlzcGxheTogaW5saW5lLWJsb2NrO31cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblxyXG5cdFx0LmhhYi1kZXNjIHtcclxuXHRcdFx0Zm9udC1zaXplOiAxOHB4OyBjb2xvcjogJGJyYW5kLXByaW1hcnk7XHJcblxyXG5cdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgeyBcclxuXHRcdFx0XHRcdCBmb250LXNpemU6IDIwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgeyBcclxuXHRcdFx0XHRcdCBmb250LXNpemU6IDI0cHg7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdH1cclxuXHJcblx0XHQuaGFiLWFtZW5pdGllcyB7XHJcblxyXG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2hhYi1hbWVuaXRpZXMtaWNvbi5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgdG9wOyBiYWNrZ3JvdW5kLXNpemU6IDQwcHg7IHBhZGRpbmctdG9wOiA2MHB4O1xyXG5cclxuXHRcdFx0LmhhYi1hbWVuaXRpZSB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgZm9udC13ZWlnaHQ6IDYwMDsgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxyXG5cdFx0fVxyXG5cdFx0LmJvb2stYnV0dG9uIHtcclxuXHJcblx0XHRcdC5idG4tc3RkIHsgZm9udC1zaXplOjI2cHg7XHJcblxyXG5cdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgeyBcclxuXHRcdFx0XHRcdCBmb250LXNpemU6MzJweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7IFxyXG5cdFx0XHRcdFx0IGZvbnQtc2l6ZTo0OHB4O1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKiBQUk9NT0NJT05TICovXHJcblxyXG5cclxuLm5vZGUtNiB7XHJcblxyXG5cdC50aXRsZS1hcmVhIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy90aXRsZS1zZWN0aW9ucy1pbWFnZXMvcHJvbW90aW9ucy1zZWN0aW9uLWJnLmpwZyk7IH1cclxuXHJcblx0LmJzLXJlZ2lvbi0tbWFpbiB7XHJcblxyXG5cdFx0LnByb21vdGlvbnMtd3JhcHBlciB7XHJcblxyXG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3RpdGxlLXNlY3Rpb24taW1hZ2UuanBnKSBuby1yZXBlYXQgZml4ZWQ7IGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcclxuXHJcblx0XHRcdC5wYXJhZ3JhcGhfX2NvbHVtbiB7IHBhZGRpbmctYm90dG9tOjA7XHJcblxyXG5cdFx0XHRcdC5wcm9tb3Rpb25zLWxpc3QgeyB0ZXh0LWFsaWduOmNlbnRlcjsgYmFja2dyb3VuZDojZmZmOyBwYWRkaW5nLWxlZnQ6MzBweDsgcGFkZGluZy1sZWZ0OjgwcHg7IHBhZGRpbmctcmlnaHQ6ODBweDtcclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0LnByb21vdGlvbiAge1xyXG5cdFx0XHRcdFx0XHQuZmllbGQtLXR5cGUtbGluayB7IG1hcmdpbi10b3A6IDE1cHg7fVxyXG5cclxuXHRcdFx0XHRcdFx0LmZpZWxkLS10eXBlLWltYWdlIHtcclxuXHRcdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbi1ib3R0b206IDE1cHg7IHBhZGRpbmc6IDE1cHg7IGJvcmRlci1yYWRpdXM6IDUwJTsgYm9yZGVyOiA4cHggc29saWQgcmdiYSgwLDAsMCwuMDgpOyBcclxuXHJcblx0XHRcdFx0XHRcdFx0aW1nIHsgZGlzcGxheTppbmxpbmUtYmxvY2s7IG1heC13aWR0aDogNTBweDt9XHJcblx0XHRcdFx0XHR9XHR9XHJcblxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0fVxyXG59XHJcblxyXG4vKiBCRU5FRklUUyAqL1xyXG5cclxuXHJcbi5iZW5lZml0cy1hcmVhIHtcclxuXHJcblx0aDIgeyBjb2xvcjogJGJyYW5kLXByaW1hcnk7IH1cclxuXHQuYmVuZWZpdC1kaXJlY3Qge1xyXG5cclxuXHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRjb2xvcjogJGJyYW5kLXByaW1hcnk7XHJcblx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cclxuXHJcblx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgeyBcclxuXHRcdFx0XHRcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0XHR9XHJcblxyXG5cclxuXHRcdGltZyB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxyXG5cdH1cclxuXHJcbn1cclxuXHJcbi8qIExPQ0FMSVRaQUNJw5MgKi9cclxuXHJcblxyXG4ubm9kZS0xMSB7XHJcblxyXG5cdC50aXRsZS1hcmVhIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy90aXRsZS1zZWN0aW9ucy1pbWFnZXMvbG9jYXRpb24tc2VjdGlvbi1iZy5qcGcpOyB9XHJcblxyXG5cdC5icy1yZWdpb24tLW1haW4ge1xyXG5cclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKiBHQUxFUklBICovXHJcblxyXG5cclxuLm5vZGUtMTUge1xyXG5cclxuXHQudGl0bGUtYXJlYSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvdGl0bGUtc2VjdGlvbnMtaW1hZ2VzL2dhbGxlcnktc2VjdGlvbi1iZy5qcGcpOyB9XHJcblxyXG5cdC5icy1yZWdpb24tLW1haW4ge1xyXG5cclxuXHRcdC5maWVsZC0taXRlbS5jb2wtbGctMi5jb2wtbWQtMy5jb2wtc20tNCB7IHBhZGRpbmctbGVmdDogN3B4OyBwYWRkaW5nLXJpZ2h0OiA3cHg7IG1hcmdpbi1ib3R0b206IDdweDtcclxuXHJcblx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgeyBcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxNHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0fVxyXG5cclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKiBXSEFUJ1MgT04gKi9cclxuXHJcblxyXG4ucGFnZS1ub2RlLXR5cGUtYXJ0aWNsZSB7XHJcblxyXG5cdC50aXRsZS1hcmVhIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy90aXRsZS1zZWN0aW9ucy1pbWFnZXMvd2hhdHNvbi1zZWN0aW9uLWJnLmpwZyk7IH1cclxuXHJcblx0LmJzLXJlZ2lvbi0tbGVmdCB7XHJcblxyXG5cdFx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHJcblx0fVxyXG5cclxuXHQuYnMtcmVnaW9uLS1yaWdodCB7XHJcblxyXG5cdFx0LmxvY2F0aW9uLWV2ZW50IHsgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zZXJpZjsgZm9udC13ZWlnaHQ6IDkwMDsgY29sb3I6ICRncmF5LWxpZ2h0OyBmb250LXN0eWxlOiBpdGFsaWM7IH1cclxuXHJcblx0fVxyXG5cclxufVxyXG5cclxuXHJcbi5ub2RlLTE0IHtcclxuXHJcblx0LnRpdGxlLWFyZWEgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3RpdGxlLXNlY3Rpb25zLWltYWdlcy93aGF0c29uLXNlY3Rpb24tYmcuanBnKTsgfVxyXG5cclxuXHQuYnMtcmVnaW9uLS1tYWluIHtcclxuXHJcblx0XHQucG9zdHMtd3JhcHBlciB7XHJcblxyXG4vKiBcdFx0XHRiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiByZ2IoMjU1LDI1NSwyNTUpOyBcclxuXHRcdFx0YmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwyNTUsMjU1LDEpIDElLCByZ2JhKDIzMCwyMzAsMjMwLDEpIDIwJSwgcmdiYSgyMzAsMjMwLDIzMCwxKSA4MCUsIHJnYmEoMjU1LDI1NSwyNTUsMSkgMTAwJSk7XHJcblx0XHRcdGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwxKSAxJSxyZ2JhKDIzMCwyMzAsMjMwLDEpIDIwJSxyZ2JhKDIzMCwyMzAsMjMwLDEpIDgwJSxyZ2JhKDI1NSwyNTUsMjU1LDEpIDEwMCUpO1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDI1NSwyNTUsMjU1LDEpIDElLHJnYmEoMjMwLDIzMCwyMzAsMSkgMjAlLHJnYmEoMjMwLDIzMCwyMzAsMSkgODAlLHJnYmEoMjU1LDI1NSwyNTUsMSkgMTAwJSk7IFxyXG5cdFx0XHRmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nI2ZmZmZmZicsIGVuZENvbG9yc3RyPScjZmZmZmZmJyxHcmFkaWVudFR5cGU9MCApOyBcclxuXHRcdFx0ICovXHJcblxyXG5cdFx0XHQudmlldy1maWx0ZXJzIHtcclxuXHJcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuXHRcdFx0XHQuYmVmLWV4cG9zZWQtZm9ybSAuZm9ybS0taW5saW5lID4gLmZvcm0taXRlbSB7IGZsb2F0OiBub25lO31cclxuXHJcblx0XHRcdFx0LmZvcm0taXRlbS1jYXRlZ29yaWEgeyBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdFx0XHRcdFx0LmZvcm0tZ3JvdXAgeyBwYWRkaW5nOiAwIDEwcHg7IGZvbnQtd2VpZ2h0OiA3MDA7IH1cclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHR9XHJcblxyXG5cclxuXHJcblx0XHRcdC5jb2wge1xyXG5cclxuXHRcdFx0XHQgLXdlYmtpdC10cmFuc2l0aW9uOiAuMnM7IHRyYW5zaXRpb246IC4ycztcclxuXHRcdFx0IFx0XHJcblx0XHRcdFx0Jjpob3ZlciB7XHJcblxyXG5cdFx0XHRcdFx0LnZpZXdzLWZpZWxkLWZpZWxkLWltYWdlIHtcclxuXHJcblx0XHRcdFx0IFx0XHRpbWcgeyBvcGFjaXR5OiAxOyB9XHJcblxyXG5cdFx0XHQgXHRcdH1cclxuXHJcblx0XHRcdCBcdFx0LmluZm8geyBjb2xvcjojZmZmO1xyXG5cclxuXHRcdFx0XHRcdFx0aDIge1xyXG5cclxuXHRcdFx0XHRcdFx0XHRhIHsgY29sb3I6I2ZmZjsgfVxyXG5cdFx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0XHQuYnRuLXN0ZCB7IG1hcmdpbi10b3A6IDMwcHg7IGNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWltYWdlOnVybCguLi9pbWFnZXMvaWNvbi1idXR0b24td2hpdGUucG5nKTt9XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdCBcdHBhZGRpbmctbGVmdDogN3B4OyBwYWRkaW5nLXJpZ2h0OiA3cHg7IG1hcmdpbi1ib3R0b206IDE0cHg7XHJcblx0XHRcdFx0XHJcblx0XHRcdCBcdC52aWV3cy1maWVsZC1maWVsZC1pbWFnZSB7XHJcblxyXG5cdFx0XHQgXHRcdGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5O1xyXG5cclxuXHRcdFx0IFx0XHRpbWcgeyBvcGFjaXR5OiAuOTsgLXdlYmtpdC10cmFuc2l0aW9uOiAuMnM7IHRyYW5zaXRpb246IC4yczt9XHJcblxyXG5cdFx0XHQgXHR9XHJcblxyXG5cdFx0XHRcdC5pbmZvIHsgcGFkZGluZzogMjBweCAyMHB4IDE1cHggMjBweDsgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7IGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC43KTsgLXdlYmtpdC10cmFuc2l0aW9uOiAuMnM7IHRyYW5zaXRpb246IC4ycztcclxuXHJcblx0XHRcdFx0XHRoMiB7IGZvbnQtc2l6ZTogMThweDsgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG5cclxuXHRcdFx0XHRcdFx0YSB7IGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2VyaWY7IGZvbnQtd2VpZ2h0OiA5MDA7IGNvbG9yOiAkZ3JheS1kYXJrZXI7IGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC43KTsgLXdlYmtpdC10cmFuc2l0aW9uOiAuMnM7IHRyYW5zaXRpb246IC4yczt9XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0LmJ0bi1zdGQgeyBtYXJnaW4tdG9wOiAzMHB4OyBjb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1pbWFnZTp1cmwoLi4vaW1hZ2VzL2ljb24tYnV0dG9uLXdoaXRlLnBuZyk7fVxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdH1cclxuXHJcblx0XHR9XHJcblxyXG5cdH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcbi8qIEV4dHJhIHNtYWxsIGRldmljZXMgKHBob25lcywgbGVzcyB0aGFuIDc2OHB4KSAqL1xyXG4vKiBObyBtZWRpYSBxdWVyeSBzaW5jZSB0aGlzIGlzIHRoZSBkZWZhdWx0IGluIEJvb3RzdHJhcCAqL1xyXG5cclxuLyogU21hbGwgZGV2aWNlcyAodGFibGV0cywgNzY4cHggYW5kIHVwKSAqL1xyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuXHRcclxuXHQucGFyYWdyYXBoLnBhcmFncmFwaC0td2lkdGgtLXRpbnk+LnBhcmFncmFwaF9fY29sdW1uIHsgd2lkdGg6NjYuNjY2NjY2NjclOyBtYXJnaW4tbGVmdDoxNi42NjY2NjY2NyU7fSBcclxuXHQucGFyYWdyYXBoLnBhcmFncmFwaC0td2lkdGgtLW1lZGl1bT4ucGFyYWdyYXBoX19jb2x1bW4ge3dpZHRoOjgzLjMzMzMzMzMzJTsgbWFyZ2luLWxlZnQ6OC4zMzMzMzMzMyU7fVxyXG5cdC5wYXJhZ3JhcGgucGFyYWdyYXBoLS13aWR0aC0tbmFycm93Pi5wYXJhZ3JhcGhfX2NvbHVtbiAge3dpZHRoOjY2LjY2NjY2NjY3JTsgbWFyZ2luLWxlZnQ6MTYuNjY2NjY2NjclOyB9XHJcblxyXG4gfVxyXG5cclxuLyogTWVkaXVtIGRldmljZXMgKGRlc2t0b3BzLCA5OTJweCBhbmQgdXApICovXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xyXG5cdFxyXG5cdC5wYXJhZ3JhcGgucGFyYWdyYXBoLS13aWR0aC0tdGlueT4ucGFyYWdyYXBoX19jb2x1bW4geyB3aWR0aDo1MCU7IG1hcmdpbi1sZWZ0OjI1JTt9XHJcblxyXG59XHJcblxyXG4vKiBMYXJnZSBkZXZpY2VzIChsYXJnZSBkZXNrdG9wcywgMTIwMHB4IGFuZCB1cCkgKi9cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7IFxyXG5cclxuXHQucGFyYWdyYXBoLnBhcmFncmFwaC0td2lkdGgtLXRpbnk+LnBhcmFncmFwaF9fY29sdW1uIHsgd2lkdGg6MzMuMzMzMzMzMzMlOyBtYXJnaW4tbGVmdDozMy4zMzMzMzMzMyU7fVxyXG5cdC5wYXJhZ3JhcGgucGFyYWdyYXBoLS13aWR0aC0tbmFycm93Pi5wYXJhZ3JhcGhfX2NvbHVtbiAge3dpZHRoOjUwJTsgbWFyZ2luLWxlZnQ6MjUlOyB9XHJcblx0LnBhcmFncmFwaC5wYXJhZ3JhcGgtLXdpZHRoLS1tZWRpdW0+LnBhcmFncmFwaF9fY29sdW1uIHt3aWR0aDo2Ni42NjY2NjY2NyU7IG1hcmdpbi1sZWZ0OjE2LjY2NjY2NjY3JTt9XHJcblxyXG5cclxuIH0gIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUNBQTs7Ozs7Ozs7OztHQVVHO0FBc0RILE9BQU8sQ0FBQyxxT0FBSTtBQW9CWjs4RUFDOEU7QUNyRjlFOzs7O0dBSUc7QWlDSkgsNEVBQTRFO0FBUTVFLEFBQUEsSUFBSSxDQUFDO0VBQ0gsV0FBVyxFQUFFLFVBQVU7RUFDdkIsb0JBQW9CLEVBQUUsSUFBSTtFQUMxQix3QkFBd0IsRUFBRSxJQUFJLEdBQy9COztBQU1ELEFBQUEsSUFBSSxDQUFDO0VBQ0gsTUFBTSxFQUFFLENBQUMsR0FDVjs7QUFZRCxBQUFBLE9BQU87QUFDUCxLQUFLO0FBQ0wsT0FBTztBQUNQLFVBQVU7QUFDVixNQUFNO0FBQ04sTUFBTTtBQUNOLE1BQU07QUFDTixNQUFNO0FBQ04sSUFBSTtBQUNKLElBQUk7QUFDSixHQUFHO0FBQ0gsT0FBTztBQUNQLE9BQU8sQ0FBQztFQUNOLE9BQU8sRUFBRSxLQUFLLEdBQ2Y7O0FBT0QsQUFBQSxLQUFLO0FBQ0wsTUFBTTtBQUNOLFFBQVE7QUFDUixLQUFLLENBQUM7RUFDSixPQUFPLEVBQUUsWUFBWTtFQUNyQixjQUFjLEVBQUUsUUFBUSxHQUN6Qjs7QUFPRCxBQUFBLEtBQUssQUFBQSxJQUFLLEVBQUEsQUFBQSxRQUFDLEFBQUEsR0FBVztFQUNwQixPQUFPLEVBQUUsSUFBSTtFQUNiLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7O0NBT0QsQUFBQSxBQUFBLE1BQUMsQUFBQTtBQUNELFFBQVEsQ0FBQztFQUNQLE9BQU8sRUFBRSxJQUFJLEdBQ2Q7O0FBU0QsQUFBQSxDQUFDLENBQUM7RUFDQSxnQkFBZ0IsRUFBRSxXQUFXLEdBQzlCOztBQU9ELEFBQUEsQ0FBQyxBQUFBLE9BQU87QUFDUixDQUFDLEFBQUEsTUFBTSxDQUFDO0VBQ04sT0FBTyxFQUFFLENBQUMsR0FD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 */
