@charset "UTF-8";
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

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

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

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

[hidden],
template {
  display: none; }

a {
  background-color: transparent; }

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

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

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

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

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

small {
  font-size: 80%; }

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; }

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

figure {
  margin: 1em 40px; }

hr {
  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; }
  select {
    background: #fff !important; }
  .navbar {
    display: none; }
  .btn > .caret, .custom-style .result_nav a > .caret, .custom-style .result_nav span > .caret,
  .dropup > .btn > .caret,
  .custom-style .result_nav .dropup > a > .caret,
  .custom-style .result_nav .dropup > span > .caret {
    border-top-color: #000 !important; }
  .label {
    border: 1px solid #000; }
  .table {
    border-collapse: collapse !important; }
    .table td,
    .table th {
      background-color: #fff !important; }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important; } }

@font-face {
  font-family: 'Glyphicons Halflings';
  src: url("../fonts/bootstrap/glyphicons-halflings-regular.eot");
  src: url("../fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/bootstrap/glyphicons-halflings-regular.woff2") format("woff2"), url("../fonts/bootstrap/glyphicons-halflings-regular.woff") format("woff"), url("../fonts/bootstrap/glyphicons-halflings-regular.ttf") format("truetype"), url("../fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg"); }

.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: 'Glyphicons Halflings';
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.glyphicon-asterisk:before {
  content: "\2a"; }

.glyphicon-plus:before {
  content: "\2b"; }

.glyphicon-euro:before,
.glyphicon-eur:before {
  content: "\20ac"; }

.glyphicon-minus:before {
  content: "\2212"; }

.glyphicon-cloud:before {
  content: "\2601"; }

.glyphicon-envelope:before {
  content: "\2709"; }

.glyphicon-pencil:before {
  content: "\270f"; }

.glyphicon-glass:before {
  content: "\e001"; }

.glyphicon-music:before {
  content: "\e002"; }

.glyphicon-search:before {
  content: "\e003"; }

.glyphicon-heart:before {
  content: "\e005"; }

.glyphicon-star:before {
  content: "\e006"; }

.glyphicon-star-empty:before {
  content: "\e007"; }

.glyphicon-user:before {
  content: "\e008"; }

.glyphicon-film:before {
  content: "\e009"; }

.glyphicon-th-large:before {
  content: "\e010"; }

.glyphicon-th:before {
  content: "\e011"; }

.glyphicon-th-list:before {
  content: "\e012"; }

.glyphicon-ok:before {
  content: "\e013"; }

.glyphicon-remove:before {
  content: "\e014"; }

.glyphicon-zoom-in:before {
  content: "\e015"; }

.glyphicon-zoom-out:before {
  content: "\e016"; }

.glyphicon-off:before {
  content: "\e017"; }

.glyphicon-signal:before {
  content: "\e018"; }

.glyphicon-cog:before {
  content: "\e019"; }

.glyphicon-trash:before {
  content: "\e020"; }

.glyphicon-home:before {
  content: "\e021"; }

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

.glyphicon-time:before {
  content: "\e023"; }

.glyphicon-road:before {
  content: "\e024"; }

.glyphicon-download-alt:before {
  content: "\e025"; }

.glyphicon-download:before {
  content: "\e026"; }

.glyphicon-upload:before {
  content: "\e027"; }

.glyphicon-inbox:before {
  content: "\e028"; }

.glyphicon-play-circle:before {
  content: "\e029"; }

.glyphicon-repeat:before {
  content: "\e030"; }

.glyphicon-refresh:before {
  content: "\e031"; }

.glyphicon-list-alt:before {
  content: "\e032"; }

.glyphicon-lock:before {
  content: "\e033"; }

.glyphicon-flag:before {
  content: "\e034"; }

.glyphicon-headphones:before {
  content: "\e035"; }

.glyphicon-volume-off:before {
  content: "\e036"; }

.glyphicon-volume-down:before {
  content: "\e037"; }

.glyphicon-volume-up:before {
  content: "\e038"; }

.glyphicon-qrcode:before {
  content: "\e039"; }

.glyphicon-barcode:before {
  content: "\e040"; }

.glyphicon-tag:before {
  content: "\e041"; }

.glyphicon-tags:before {
  content: "\e042"; }

.glyphicon-book:before {
  content: "\e043"; }

.glyphicon-bookmark:before {
  content: "\e044"; }

.glyphicon-print:before {
  content: "\e045"; }

.glyphicon-camera:before {
  content: "\e046"; }

.glyphicon-font:before {
  content: "\e047"; }

.glyphicon-bold:before {
  content: "\e048"; }

.glyphicon-italic:before {
  content: "\e049"; }

.glyphicon-text-height:before {
  content: "\e050"; }

.glyphicon-text-width:before {
  content: "\e051"; }

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

.glyphicon-align-center:before {
  content: "\e053"; }

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

.glyphicon-align-justify:before {
  content: "\e055"; }

.glyphicon-list:before {
  content: "\e056"; }

.glyphicon-indent-left:before {
  content: "\e057"; }

.glyphicon-indent-right:before {
  content: "\e058"; }

.glyphicon-facetime-video:before {
  content: "\e059"; }

.glyphicon-picture:before {
  content: "\e060"; }

.glyphicon-map-marker:before {
  content: "\e062"; }

.glyphicon-adjust:before {
  content: "\e063"; }

.glyphicon-tint:before {
  content: "\e064"; }

.glyphicon-edit:before {
  content: "\e065"; }

.glyphicon-share:before {
  content: "\e066"; }

.glyphicon-check:before {
  content: "\e067"; }

.glyphicon-move:before {
  content: "\e068"; }

.glyphicon-step-backward:before {
  content: "\e069"; }

.glyphicon-fast-backward:before {
  content: "\e070"; }

.glyphicon-backward:before {
  content: "\e071"; }

.glyphicon-play:before {
  content: "\e072"; }

.glyphicon-pause:before {
  content: "\e073"; }

.glyphicon-stop:before {
  content: "\e074"; }

.glyphicon-forward:before {
  content: "\e075"; }

.glyphicon-fast-forward:before {
  content: "\e076"; }

.glyphicon-step-forward:before {
  content: "\e077"; }

.glyphicon-eject:before {
  content: "\e078"; }

.glyphicon-chevron-left:before {
  content: "\e079"; }

.glyphicon-chevron-right:before {
  content: "\e080"; }

.glyphicon-plus-sign:before {
  content: "\e081"; }

.glyphicon-minus-sign:before {
  content: "\e082"; }

.glyphicon-remove-sign:before {
  content: "\e083"; }

.glyphicon-ok-sign:before {
  content: "\e084"; }

.glyphicon-question-sign:before {
  content: "\e085"; }

.glyphicon-info-sign:before {
  content: "\e086"; }

.glyphicon-screenshot:before {
  content: "\e087"; }

.glyphicon-remove-circle:before {
  content: "\e088"; }

.glyphicon-ok-circle:before {
  content: "\e089"; }

.glyphicon-ban-circle:before {
  content: "\e090"; }

.glyphicon-arrow-left:before {
  content: "\e091"; }

.glyphicon-arrow-right:before {
  content: "\e092"; }

.glyphicon-arrow-up:before {
  content: "\e093"; }

.glyphicon-arrow-down:before {
  content: "\e094"; }

.glyphicon-share-alt:before {
  content: "\e095"; }

.glyphicon-resize-full:before {
  content: "\e096"; }

.glyphicon-resize-small:before {
  content: "\e097"; }

.glyphicon-exclamation-sign:before {
  content: "\e101"; }

.glyphicon-gift:before {
  content: "\e102"; }

.glyphicon-leaf:before {
  content: "\e103"; }

.glyphicon-fire:before {
  content: "\e104"; }

.glyphicon-eye-open:before {
  content: "\e105"; }

.glyphicon-eye-close:before {
  content: "\e106"; }

.glyphicon-warning-sign:before {
  content: "\e107"; }

.glyphicon-plane:before {
  content: "\e108"; }

.glyphicon-calendar:before {
  content: "\e109"; }

.glyphicon-random:before {
  content: "\e110"; }

.glyphicon-comment:before {
  content: "\e111"; }

.glyphicon-magnet:before {
  content: "\e112"; }

.glyphicon-chevron-up:before {
  content: "\e113"; }

.glyphicon-chevron-down:before {
  content: "\e114"; }

.glyphicon-retweet:before {
  content: "\e115"; }

.glyphicon-shopping-cart:before {
  content: "\e116"; }

.glyphicon-folder-close:before {
  content: "\e117"; }

.glyphicon-folder-open:before {
  content: "\e118"; }

.glyphicon-resize-vertical:before {
  content: "\e119"; }

.glyphicon-resize-horizontal:before {
  content: "\e120"; }

.glyphicon-hdd:before {
  content: "\e121"; }

.glyphicon-bullhorn:before {
  content: "\e122"; }

.glyphicon-bell:before {
  content: "\e123"; }

.glyphicon-certificate:before {
  content: "\e124"; }

.glyphicon-thumbs-up:before {
  content: "\e125"; }

.glyphicon-thumbs-down:before {
  content: "\e126"; }

.glyphicon-hand-right:before {
  content: "\e127"; }

.glyphicon-hand-left:before {
  content: "\e128"; }

.glyphicon-hand-up:before {
  content: "\e129"; }

.glyphicon-hand-down:before {
  content: "\e130"; }

.glyphicon-circle-arrow-right:before {
  content: "\e131"; }

.glyphicon-circle-arrow-left:before {
  content: "\e132"; }

.glyphicon-circle-arrow-up:before {
  content: "\e133"; }

.glyphicon-circle-arrow-down:before {
  content: "\e134"; }

.glyphicon-globe:before {
  content: "\e135"; }

.glyphicon-wrench:before {
  content: "\e136"; }

.glyphicon-tasks:before {
  content: "\e137"; }

.glyphicon-filter:before {
  content: "\e138"; }

.glyphicon-briefcase:before {
  content: "\e139"; }

.glyphicon-fullscreen:before {
  content: "\e140"; }

.glyphicon-dashboard:before {
  content: "\e141"; }

.glyphicon-paperclip:before {
  content: "\e142"; }

.glyphicon-heart-empty:before {
  content: "\e143"; }

.glyphicon-link:before {
  content: "\e144"; }

.glyphicon-phone:before {
  content: "\e145"; }

.glyphicon-pushpin:before {
  content: "\e146"; }

.glyphicon-usd:before {
  content: "\e148"; }

.glyphicon-gbp:before {
  content: "\e149"; }

.glyphicon-sort:before {
  content: "\e150"; }

.glyphicon-sort-by-alphabet:before {
  content: "\e151"; }

.glyphicon-sort-by-alphabet-alt:before {
  content: "\e152"; }

.glyphicon-sort-by-order:before {
  content: "\e153"; }

.glyphicon-sort-by-order-alt:before {
  content: "\e154"; }

.glyphicon-sort-by-attributes:before {
  content: "\e155"; }

.glyphicon-sort-by-attributes-alt:before {
  content: "\e156"; }

.glyphicon-unchecked:before {
  content: "\e157"; }

.glyphicon-expand:before {
  content: "\e158"; }

.glyphicon-collapse-down:before {
  content: "\e159"; }

.glyphicon-collapse-up:before {
  content: "\e160"; }

.glyphicon-log-in:before {
  content: "\e161"; }

.glyphicon-flash:before {
  content: "\e162"; }

.glyphicon-log-out:before {
  content: "\e163"; }

.glyphicon-new-window:before {
  content: "\e164"; }

.glyphicon-record:before {
  content: "\e165"; }

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

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

.glyphicon-saved:before {
  content: "\e168"; }

.glyphicon-import:before {
  content: "\e169"; }

.glyphicon-export:before {
  content: "\e170"; }

.glyphicon-send:before {
  content: "\e171"; }

.glyphicon-floppy-disk:before {
  content: "\e172"; }

.glyphicon-floppy-saved:before {
  content: "\e173"; }

.glyphicon-floppy-remove:before {
  content: "\e174"; }

.glyphicon-floppy-save:before {
  content: "\e175"; }

.glyphicon-floppy-open:before {
  content: "\e176"; }

.glyphicon-credit-card:before {
  content: "\e177"; }

.glyphicon-transfer:before {
  content: "\e178"; }

.glyphicon-cutlery:before {
  content: "\e179"; }

.glyphicon-header:before {
  content: "\e180"; }

.glyphicon-compressed:before {
  content: "\e181"; }

.glyphicon-earphone:before {
  content: "\e182"; }

.glyphicon-phone-alt:before {
  content: "\e183"; }

.glyphicon-tower:before {
  content: "\e184"; }

.glyphicon-stats:before {
  content: "\e185"; }

.glyphicon-sd-video:before {
  content: "\e186"; }

.glyphicon-hd-video:before {
  content: "\e187"; }

.glyphicon-subtitles:before {
  content: "\e188"; }

.glyphicon-sound-stereo:before {
  content: "\e189"; }

.glyphicon-sound-dolby:before {
  content: "\e190"; }

.glyphicon-sound-5-1:before {
  content: "\e191"; }

.glyphicon-sound-6-1:before {
  content: "\e192"; }

.glyphicon-sound-7-1:before {
  content: "\e193"; }

.glyphicon-copyright-mark:before {
  content: "\e194"; }

.glyphicon-registration-mark:before {
  content: "\e195"; }

.glyphicon-cloud-download:before {
  content: "\e197"; }

.glyphicon-cloud-upload:before {
  content: "\e198"; }

.glyphicon-tree-conifer:before {
  content: "\e199"; }

.glyphicon-tree-deciduous:before {
  content: "\e200"; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.glyphicon-ruble: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"; }

* {
  box-sizing: border-box; }

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

html {
  font-size: 10px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

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

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

a {
  color: #337ab7;
  text-decoration: none; }
  a:hover, a:focus {
    color: #23527c;
    text-decoration: underline; }
  a:focus {
    outline: thin dotted;
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px; }

figure {
  margin: 0; }

img {
  vertical-align: middle; }

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

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

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

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

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

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

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

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

h1, .h1,
h2, .h2,
h3, .h3 {
  margin-top: 20px;
  margin-bottom: 10px; }
  h1 small,
  h1 .small, .h1 small,
  .h1 .small,
  h2 small,
  h2 .small, .h2 small,
  .h2 .small,
  h3 small,
  h3 .small, .h3 small,
  .h3 .small {
    font-size: 65%; }

h4, .h4,
h5, .h5,
h6, .h6 {
  margin-top: 10px;
  margin-bottom: 10px; }
  h4 small,
  h4 .small, .h4 small,
  .h4 .small,
  h5 small,
  h5 .small, .h5 small,
  .h5 .small,
  h6 small,
  h6 .small, .h6 small,
  .h6 .small {
    font-size: 75%; }

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

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

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

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

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

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

p {
  margin: 0 0 10px; }

.lead {
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.4; }
  @media (min-width: 768px) {
    .lead {
      font-size: 21px; } }

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

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

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

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

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

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

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

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

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

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

.text-muted {
  color: #777777; }

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

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

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

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

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

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

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

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

.text-danger {
  color: #a94442; }

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

.bg-primary {
  color: #fff; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

dt,
dd {
  line-height: 1.42857; }

dt {
  font-weight: bold; }

dd {
  margin-left: 0; }

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

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

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

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

.initialism {
  font-size: 90%;
  text-transform: uppercase; }

blockquote {
  padding: 10px 20px;
  margin: 0 0 20px;
  font-size: 17.5px;
  border-left: 5px solid #eeeeee; }
  blockquote p:last-child,
  blockquote ul:last-child,
  blockquote ol:last-child {
    margin-bottom: 0; }
  blockquote footer,
  blockquote small,
  blockquote .small {
    display: block;
    font-size: 80%;
    line-height: 1.42857;
    color: #777777; }
    blockquote footer:before,
    blockquote small:before,
    blockquote .small:before {
      content: '\2014 \00A0'; }

.blockquote-reverse,
blockquote.pull-right {
  padding-right: 15px;
  padding-left: 0;
  border-right: 5px solid #eeeeee;
  border-left: 0;
  text-align: right; }
  .blockquote-reverse footer:before,
  .blockquote-reverse small:before,
  .blockquote-reverse .small:before,
  blockquote.pull-right footer:before,
  blockquote.pull-right small:before,
  blockquote.pull-right .small:before {
    content: ''; }
  .blockquote-reverse footer:after,
  .blockquote-reverse small:after,
  .blockquote-reverse .small:after,
  blockquote.pull-right footer:after,
  blockquote.pull-right small:after,
  blockquote.pull-right .small:after {
    content: '\00A0 \2014'; }

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

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

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

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

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

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

.container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px; }
  .container:before, .container:after {
    content: " ";
    display: table; }
  .container:after {
    clear: both; }
  @media (min-width: 768px) {
    .container {
      width: 750px; } }
  @media (min-width: 992px) {
    .container {
      width: 970px; } }
  @media (min-width: 1200px) {
    .container {
      width: 1170px; } }

.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px; }
  .container-fluid:before, .container-fluid:after {
    content: " ";
    display: table; }
  .container-fluid:after {
    clear: both; }

.row {
  margin-left: -15px;
  margin-right: -15px; }
  .row:before, .row:after {
    content: " ";
    display: table; }
  .row:after {
    clear: both; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

table {
  background-color: transparent; }

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

th {
  text-align: left; }

.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 20px; }
  .table > thead > tr > th,
  .table > thead > tr > td,
  .table > tbody > tr > th,
  .table > tbody > tr > td,
  .table > tfoot > tr > th,
  .table > tfoot > tr > td {
    padding: 8px;
    line-height: 1.42857;
    vertical-align: top;
    border-top: 1px solid #ddd; }
  .table > thead > tr > th {
    vertical-align: bottom;
    border-bottom: 2px solid #ddd; }
  .table > caption + thead > tr:first-child > th,
  .table > caption + thead > tr:first-child > td,
  .table > colgroup + thead > tr:first-child > th,
  .table > colgroup + thead > tr:first-child > td,
  .table > thead:first-child > tr:first-child > th,
  .table > thead:first-child > tr:first-child > td {
    border-top: 0; }
  .table > tbody + tbody {
    border-top: 2px solid #ddd; }
  .table .table {
    background-color: #fff; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.form-control {
  display: block;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; }
  .form-control:focus {
    border-color: #66afe9;
    outline: 0;
    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[disabled], .form-control[readonly],
  fieldset[disabled] .form-control {
    cursor: not-allowed;
    background-color: #eeeeee;
    opacity: 1; }

textarea.form-control {
  height: auto; }

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

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"],
  input[type="time"],
  input[type="datetime-local"],
  input[type="month"] {
    line-height: 34px; }
    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: 20px;
    padding-left: 20px;
    margin-bottom: 0;
    font-weight: normal;
    cursor: pointer; }

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

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

.radio-inline,
.checkbox-inline {
  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; }
  .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, .custom-style .result_nav .input-group-lg > .input-group-btn > a.form-control-static, .custom-style .result_nav .input-group-lg > .input-group-btn > span.form-control-static, .form-control-static.input-sm, .input-group-sm > .form-control-static.form-control,
  .input-group-sm > .form-control-static.input-group-addon,
  .input-group-sm > .input-group-btn > .form-control-static.btn, .custom-style .result_nav .input-group-sm > .input-group-btn > a.form-control-static, .custom-style .result_nav .input-group-sm > .input-group-btn > span.form-control-static {
    padding-left: 0;
    padding-right: 0; }

.input-sm, .input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn, .custom-style .result_nav .input-group-sm > .input-group-btn > a, .custom-style .result_nav .input-group-sm > .input-group-btn > span {
  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;
  padding: 5px 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, .custom-style .result_nav .input-group-lg > .input-group-btn > a, .custom-style .result_nav .input-group-lg > .input-group-btn > span {
  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;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333; }

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

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

.input-lg + .form-control-feedback, .input-group-lg > .form-control + .form-control-feedback, .input-group-lg > .input-group-addon + .form-control-feedback, .input-group-lg > .input-group-btn > .btn + .form-control-feedback, .custom-style .result_nav .input-group-lg > .input-group-btn > a + .form-control-feedback, .custom-style .result_nav .input-group-lg > .input-group-btn > span + .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, .custom-style .result_nav .input-group-sm > .input-group-btn > a + .form-control-feedback, .custom-style .result_nav .input-group-sm > .input-group-btn > span + .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;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-success .form-control:focus {
    border-color: #2b542c;
    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;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-warning .form-control:focus {
    border-color: #66512c;
    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;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-error .form-control:focus {
    border-color: #843534;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; }

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

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

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

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

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

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

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

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

.form-horizontal .form-group {
  margin-left: -15px;
  margin-right: -15px; }
  .form-horizontal .form-group:before, .form-horizontal .form-group:after {
    content: " ";
    display: table; }
  .form-horizontal .form-group:after {
    clear: both; }

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

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

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

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

.btn, .custom-style .result_nav a, .custom-style .result_nav span {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  .btn:focus, .custom-style .result_nav a:focus, .custom-style .result_nav span:focus, .btn.focus, .custom-style .result_nav a.focus, .custom-style .result_nav span.focus, .btn:active:focus, .custom-style .result_nav a:active:focus, .custom-style .result_nav span:active:focus, .btn:active.focus, .custom-style .result_nav a:active.focus, .custom-style .result_nav span:active.focus, .btn.active:focus, .custom-style .result_nav a.active:focus, .custom-style .result_nav span.active:focus, .btn.active.focus, .custom-style .result_nav a.active.focus, .custom-style .result_nav span.active.focus {
    outline: thin dotted;
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px; }
  .btn:hover, .custom-style .result_nav a:hover, .custom-style .result_nav span:hover, .btn:focus, .custom-style .result_nav a:focus, .custom-style .result_nav span:focus, .btn.focus, .custom-style .result_nav a.focus, .custom-style .result_nav span.focus {
    color: #333;
    text-decoration: none; }
  .btn:active, .custom-style .result_nav a:active, .custom-style .result_nav span:active, .btn.active, .custom-style .result_nav a.active, .custom-style .result_nav span.active {
    outline: 0;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
  .btn.disabled, .custom-style .result_nav a.disabled, .custom-style .result_nav span.disabled, .btn[disabled], .custom-style .result_nav a[disabled], .custom-style .result_nav span[disabled],
  fieldset[disabled] .btn,
  fieldset[disabled] .custom-style .result_nav a,
  .custom-style .result_nav fieldset[disabled] a,
  fieldset[disabled] .custom-style .result_nav span,
  .custom-style .result_nav fieldset[disabled] span {
    cursor: not-allowed;
    pointer-events: none;
    opacity: 0.65;
    filter: alpha(opacity=65);
    box-shadow: none; }

.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc; }
  .btn-default:hover, .btn-default:focus, .btn-default.focus, .btn-default:active, .btn-default.active,
  .open > .btn-default.dropdown-toggle {
    color: #333;
    background-color: #e6e6e6;
    border-color: #adadad; }
  .btn-default:active, .btn-default.active,
  .open > .btn-default.dropdown-toggle {
    background-image: none; }
  .btn-default.disabled, .btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled.focus, .btn-default.disabled:active, .btn-default.disabled.active, .btn-default[disabled], .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled].focus, .btn-default[disabled]:active, .btn-default[disabled].active,
  fieldset[disabled] .btn-default,
  fieldset[disabled] .btn-default:hover,
  fieldset[disabled] .btn-default:focus,
  fieldset[disabled] .btn-default.focus,
  fieldset[disabled] .btn-default:active,
  fieldset[disabled] .btn-default.active {
    background-color: #fff;
    border-color: #ccc; }
  .btn-default .badge {
    color: #fff;
    background-color: #333; }

.btn-primary {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4; }
  .btn-primary:hover, .btn-primary:focus, .btn-primary.focus, .btn-primary:active, .btn-primary.active,
  .open > .btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #286090;
    border-color: #204d74; }
  .btn-primary:active, .btn-primary.active,
  .open > .btn-primary.dropdown-toggle {
    background-image: none; }
  .btn-primary.disabled, .btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary.disabled:active, .btn-primary.disabled.active, .btn-primary[disabled], .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus, .btn-primary[disabled]:active, .btn-primary[disabled].active,
  fieldset[disabled] .btn-primary,
  fieldset[disabled] .btn-primary:hover,
  fieldset[disabled] .btn-primary:focus,
  fieldset[disabled] .btn-primary.focus,
  fieldset[disabled] .btn-primary:active,
  fieldset[disabled] .btn-primary.active {
    background-color: #337ab7;
    border-color: #2e6da4; }
  .btn-primary .badge {
    color: #337ab7;
    background-color: #fff; }

.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c; }
  .btn-success:hover, .btn-success:focus, .btn-success.focus, .btn-success:active, .btn-success.active,
  .open > .btn-success.dropdown-toggle {
    color: #fff;
    background-color: #449d44;
    border-color: #398439; }
  .btn-success:active, .btn-success.active,
  .open > .btn-success.dropdown-toggle {
    background-image: none; }
  .btn-success.disabled, .btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success.disabled:active, .btn-success.disabled.active, .btn-success[disabled], .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus, .btn-success[disabled]:active, .btn-success[disabled].active,
  fieldset[disabled] .btn-success,
  fieldset[disabled] .btn-success:hover,
  fieldset[disabled] .btn-success:focus,
  fieldset[disabled] .btn-success.focus,
  fieldset[disabled] .btn-success:active,
  fieldset[disabled] .btn-success.active {
    background-color: #5cb85c;
    border-color: #4cae4c; }
  .btn-success .badge {
    color: #5cb85c;
    background-color: #fff; }

.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da; }
  .btn-info:hover, .btn-info:focus, .btn-info.focus, .btn-info:active, .btn-info.active,
  .open > .btn-info.dropdown-toggle {
    color: #fff;
    background-color: #31b0d5;
    border-color: #269abc; }
  .btn-info:active, .btn-info.active,
  .open > .btn-info.dropdown-toggle {
    background-image: none; }
  .btn-info.disabled, .btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info.disabled:active, .btn-info.disabled.active, .btn-info[disabled], .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled].focus, .btn-info[disabled]:active, .btn-info[disabled].active,
  fieldset[disabled] .btn-info,
  fieldset[disabled] .btn-info:hover,
  fieldset[disabled] .btn-info:focus,
  fieldset[disabled] .btn-info.focus,
  fieldset[disabled] .btn-info:active,
  fieldset[disabled] .btn-info.active {
    background-color: #5bc0de;
    border-color: #46b8da; }
  .btn-info .badge {
    color: #5bc0de;
    background-color: #fff; }

.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236; }
  .btn-warning:hover, .btn-warning:focus, .btn-warning.focus, .btn-warning:active, .btn-warning.active,
  .open > .btn-warning.dropdown-toggle {
    color: #fff;
    background-color: #ec971f;
    border-color: #d58512; }
  .btn-warning:active, .btn-warning.active,
  .open > .btn-warning.dropdown-toggle {
    background-image: none; }
  .btn-warning.disabled, .btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning.disabled:active, .btn-warning.disabled.active, .btn-warning[disabled], .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled].focus, .btn-warning[disabled]:active, .btn-warning[disabled].active,
  fieldset[disabled] .btn-warning,
  fieldset[disabled] .btn-warning:hover,
  fieldset[disabled] .btn-warning:focus,
  fieldset[disabled] .btn-warning.focus,
  fieldset[disabled] .btn-warning:active,
  fieldset[disabled] .btn-warning.active {
    background-color: #f0ad4e;
    border-color: #eea236; }
  .btn-warning .badge {
    color: #f0ad4e;
    background-color: #fff; }

.btn-danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a; }
  .btn-danger:hover, .btn-danger:focus, .btn-danger.focus, .btn-danger:active, .btn-danger.active,
  .open > .btn-danger.dropdown-toggle {
    color: #fff;
    background-color: #c9302c;
    border-color: #ac2925; }
  .btn-danger:active, .btn-danger.active,
  .open > .btn-danger.dropdown-toggle {
    background-image: none; }
  .btn-danger.disabled, .btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger.disabled:active, .btn-danger.disabled.active, .btn-danger[disabled], .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled].focus, .btn-danger[disabled]:active, .btn-danger[disabled].active,
  fieldset[disabled] .btn-danger,
  fieldset[disabled] .btn-danger:hover,
  fieldset[disabled] .btn-danger:focus,
  fieldset[disabled] .btn-danger.focus,
  fieldset[disabled] .btn-danger:active,
  fieldset[disabled] .btn-danger.active {
    background-color: #d9534f;
    border-color: #d43f3a; }
  .btn-danger .badge {
    color: #d9534f;
    background-color: #fff; }

.btn-link {
  color: #337ab7;
  font-weight: normal;
  border-radius: 0; }
  .btn-link, .btn-link:active, .btn-link.active, .btn-link[disabled],
  fieldset[disabled] .btn-link {
    background-color: transparent;
    box-shadow: none; }
  .btn-link, .btn-link:hover, .btn-link:focus, .btn-link:active {
    border-color: transparent; }
  .btn-link:hover, .btn-link:focus {
    color: #23527c;
    text-decoration: underline;
    background-color: transparent; }
  .btn-link[disabled]:hover, .btn-link[disabled]:focus,
  fieldset[disabled] .btn-link:hover,
  fieldset[disabled] .btn-link:focus {
    color: #777777;
    text-decoration: none; }

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

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

.btn-xs, .btn-group-xs > .btn, .custom-style .result_nav .btn-group-xs > a, .custom-style .result_nav .btn-group-xs > span {
  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;
  transition: opacity 0.15s linear; }
  .fade.in {
    opacity: 1; }

.collapse {
  display: none;
  visibility: hidden; }
  .collapse.in {
    display: block;
    visibility: visible; }

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

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

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

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

.dropup,
.dropdown {
  position: relative; }

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

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  list-style: none;
  font-size: 14px;
  text-align: left;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background-clip: padding-box; }
  .dropdown-menu.pull-right {
    right: 0;
    left: auto; }
  .dropdown-menu .divider {
    height: 1px;
    margin: 9px 0;
    overflow: hidden;
    background-color: #e5e5e5; }
  .dropdown-menu > li > a {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: normal;
    line-height: 1.42857;
    color: #333333;
    white-space: nowrap; }

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

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

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

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

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

.open > a {
  outline: 0; }

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

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

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

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

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

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

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

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

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-block;
  vertical-align: middle; }
  .btn-group > .btn, .custom-style .result_nav .btn-group > a, .custom-style .result_nav .btn-group > span,
  .btn-group-vertical > .btn,
  .custom-style .result_nav .btn-group-vertical > a,
  .custom-style .result_nav .btn-group-vertical > span {
    position: relative;
    float: left; }
    .btn-group > .btn:hover, .custom-style .result_nav .btn-group > a:hover, .custom-style .result_nav .btn-group > span:hover, .btn-group > .btn:focus, .custom-style .result_nav .btn-group > a:focus, .custom-style .result_nav .btn-group > span:focus, .btn-group > .btn:active, .custom-style .result_nav .btn-group > a:active, .custom-style .result_nav .btn-group > span:active, .btn-group > .btn.active, .custom-style .result_nav .btn-group > a.active, .custom-style .result_nav .btn-group > span.active,
    .btn-group-vertical > .btn:hover,
    .custom-style .result_nav .btn-group-vertical > a:hover,
    .custom-style .result_nav .btn-group-vertical > span:hover,
    .btn-group-vertical > .btn:focus,
    .custom-style .result_nav .btn-group-vertical > a:focus,
    .custom-style .result_nav .btn-group-vertical > span:focus,
    .btn-group-vertical > .btn:active,
    .custom-style .result_nav .btn-group-vertical > a:active,
    .custom-style .result_nav .btn-group-vertical > span:active,
    .btn-group-vertical > .btn.active,
    .custom-style .result_nav .btn-group-vertical > a.active,
    .custom-style .result_nav .btn-group-vertical > span.active {
      z-index: 2; }

.btn-group .btn + .btn, .btn-group .custom-style .result_nav a + .btn, .custom-style .result_nav .btn-group a + .btn, .btn-group .custom-style .result_nav span + .btn, .custom-style .result_nav .btn-group span + .btn, .btn-group .custom-style .result_nav .btn + a, .custom-style .result_nav .btn-group .btn + a, .btn-group .custom-style .result_nav a + a, .custom-style .result_nav .btn-group a + a, .btn-group .custom-style .result_nav span + a, .custom-style .result_nav .btn-group span + a, .btn-group .custom-style .result_nav .btn + span, .custom-style .result_nav .btn-group .btn + span, .btn-group .custom-style .result_nav a + span, .custom-style .result_nav .btn-group a + span, .btn-group .custom-style .result_nav span + span, .custom-style .result_nav .btn-group span + span,
.btn-group .btn + .btn-group,
.btn-group .custom-style .result_nav a + .btn-group,
.custom-style .result_nav .btn-group a + .btn-group,
.btn-group .custom-style .result_nav span + .btn-group,
.custom-style .result_nav .btn-group span + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .custom-style .result_nav .btn-group + a,
.custom-style .result_nav .btn-group .btn-group + a,
.btn-group .custom-style .result_nav .btn-group + span,
.custom-style .result_nav .btn-group .btn-group + span,
.btn-group .btn-group + .btn-group {
  margin-left: -1px; }

.btn-toolbar {
  margin-left: -5px; }
  .btn-toolbar:before, .btn-toolbar:after {
    content: " ";
    display: table; }
  .btn-toolbar:after {
    clear: both; }
  .btn-toolbar .btn-group,
  .btn-toolbar .input-group {
    float: left; }
  .btn-toolbar > .btn, .custom-style .result_nav .btn-toolbar > a, .custom-style .result_nav .btn-toolbar > span,
  .btn-toolbar > .btn-group,
  .btn-toolbar > .input-group {
    margin-left: 5px; }

.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle), .custom-style .result_nav .btn-group > a:not(:first-child):not(:last-child):not(.dropdown-toggle), .custom-style .result_nav .btn-group > span:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0; }

.btn-group > .btn:first-child, .custom-style .result_nav .btn-group > a:first-child, .custom-style .result_nav .btn-group > span:first-child {
  margin-left: 0; }
  .btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle), .custom-style .result_nav .btn-group > a:first-child:not(:last-child):not(.dropdown-toggle), .custom-style .result_nav .btn-group > span: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), .custom-style .result_nav .btn-group > a:last-child:not(:first-child), .custom-style .result_nav .btn-group > span: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, .custom-style .result_nav .btn-group > .btn-group:not(:first-child):not(:last-child) > a, .custom-style .result_nav .btn-group > .btn-group:not(:first-child):not(:last-child) > span {
  border-radius: 0; }

.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child, .custom-style .result_nav .btn-group > .btn-group:first-child:not(:last-child) > a:last-child, .custom-style .result_nav .btn-group > .btn-group:first-child:not(:last-child) > span: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, .custom-style .result_nav .btn-group > .btn-group:last-child:not(:first-child) > a:first-child, .custom-style .result_nav .btn-group > .btn-group:last-child:not(:first-child) > span: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, .custom-style .result_nav .btn-group > a + .dropdown-toggle, .custom-style .result_nav .btn-group > span + .dropdown-toggle {
  padding-left: 8px;
  padding-right: 8px; }

.btn-group > .btn-lg + .dropdown-toggle, .btn-group-lg.btn-group > .btn + .dropdown-toggle, .custom-style .result_nav .btn-group-lg.btn-group > a + .dropdown-toggle, .custom-style .result_nav .btn-group-lg.btn-group > span + .dropdown-toggle {
  padding-left: 12px;
  padding-right: 12px; }

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

.btn .caret, .custom-style .result_nav a .caret, .custom-style .result_nav span .caret {
  margin-left: 0; }

.btn-lg .caret, .btn-group-lg > .btn .caret, .custom-style .result_nav .btn-group-lg > a .caret, .custom-style .result_nav .btn-group-lg > span .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0; }

.dropup .btn-lg .caret, .dropup .btn-group-lg > .btn .caret, .dropup .custom-style .result_nav .btn-group-lg > a .caret, .custom-style .result_nav .dropup .btn-group-lg > a .caret, .dropup .custom-style .result_nav .btn-group-lg > span .caret, .custom-style .result_nav .dropup .btn-group-lg > span .caret {
  border-width: 0 5px 5px; }


.btn-group-vertical > .btn,
.custom-style .result_nav .btn-group-vertical > a,
.custom-style .result_nav .btn-group-vertical > span,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn,
.custom-style .result_nav .btn-group-vertical > .btn-group > a,
.custom-style .result_nav .btn-group-vertical > .btn-group > span {
  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,
.custom-style .result_nav .btn-group-vertical > .btn-group > a,
.custom-style .result_nav .btn-group-vertical > .btn-group > span {
  float: none; }

.btn-group-vertical > .btn + .btn, .custom-style .result_nav .btn-group-vertical > a + .btn, .custom-style .result_nav .btn-group-vertical > span + .btn, .custom-style .result_nav .btn-group-vertical > .btn + a, .custom-style .result_nav .btn-group-vertical > a + a, .custom-style .result_nav .btn-group-vertical > span + a, .custom-style .result_nav .btn-group-vertical > .btn + span, .custom-style .result_nav .btn-group-vertical > a + span, .custom-style .result_nav .btn-group-vertical > span + span,
.btn-group-vertical > .btn + .btn-group,
.custom-style .result_nav .btn-group-vertical > a + .btn-group,
.custom-style .result_nav .btn-group-vertical > span + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.custom-style .result_nav .btn-group-vertical > .btn-group + a,
.custom-style .result_nav .btn-group-vertical > .btn-group + span,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0; }

.btn-group-vertical > .btn:not(:first-child):not(:last-child), .custom-style .result_nav .btn-group-vertical > a:not(:first-child):not(:last-child), .custom-style .result_nav .btn-group-vertical > span:not(:first-child):not(:last-child) {
  border-radius: 0; }

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

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

.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn, .custom-style .result_nav .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > a, .custom-style .result_nav .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > span {
  border-radius: 0; }

.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, .custom-style .result_nav .btn-group-vertical > .btn-group:first-child:not(:last-child) > a:last-child, .custom-style .result_nav .btn-group-vertical > .btn-group:first-child:not(:last-child) > span: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, .custom-style .result_nav .btn-group-vertical > .btn-group:last-child:not(:first-child) > a:first-child, .custom-style .result_nav .btn-group-vertical > .btn-group:last-child:not(:first-child) > span: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, .custom-style .result_nav .btn-group-justified > a, .custom-style .result_nav .btn-group-justified > span,
  .btn-group-justified > .btn-group {
    float: none;
    display: table-cell;
    width: 1%; }
  .btn-group-justified > .btn-group .btn, .btn-group-justified > .btn-group .custom-style .result_nav a, .custom-style .result_nav .btn-group-justified > .btn-group a, .btn-group-justified > .btn-group .custom-style .result_nav span, .custom-style .result_nav .btn-group-justified > .btn-group span {
    width: 100%; }
  .btn-group-justified > .btn-group .dropdown-menu {
    left: auto; }

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

.input-group {
  position: relative;
  display: table;
  border-collapse: separate; }
  .input-group[class*="col-"] {
    float: none;
    padding-left: 0;
    padding-right: 0; }
  .input-group .form-control {
    position: relative;
    z-index: 2;
    float: left;
    width: 100%;
    margin-bottom: 0; }

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

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

.input-group-addon {
  padding: 6px 12px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  color: #555555;
  text-align: center;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  border-radius: 4px; }
  .input-group-addon.input-sm,
  .input-group-sm > .input-group-addon,
  .input-group-sm > .input-group-btn > .input-group-addon.btn, .custom-style .result_nav .input-group-sm > .input-group-btn > a.input-group-addon, .custom-style .result_nav .input-group-sm > .input-group-btn > span.input-group-addon {
    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, .custom-style .result_nav .input-group-lg > .input-group-btn > a.input-group-addon, .custom-style .result_nav .input-group-lg > .input-group-btn > span.input-group-addon {
    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,
.custom-style .result_nav .input-group-btn:first-child > a,
.custom-style .result_nav .input-group-btn:first-child > span,
.input-group-btn:first-child > .btn-group > .btn,
.custom-style .result_nav .input-group-btn:first-child > .btn-group > a,
.custom-style .result_nav .input-group-btn:first-child > .btn-group > span,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.custom-style .result_nav .input-group-btn:last-child > a:not(:last-child):not(.dropdown-toggle),
.custom-style .result_nav .input-group-btn:last-child > span:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn,
.custom-style .result_nav .input-group-btn:last-child > .btn-group:not(:last-child) > a,
.custom-style .result_nav .input-group-btn:last-child > .btn-group:not(:last-child) > span {
  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,
.custom-style .result_nav .input-group-btn:last-child > a,
.custom-style .result_nav .input-group-btn:last-child > span,
.input-group-btn:last-child > .btn-group > .btn,
.custom-style .result_nav .input-group-btn:last-child > .btn-group > a,
.custom-style .result_nav .input-group-btn:last-child > .btn-group > span,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.custom-style .result_nav .input-group-btn:first-child > a:not(:first-child),
.custom-style .result_nav .input-group-btn:first-child > span:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn,
.custom-style .result_nav .input-group-btn:first-child > .btn-group:not(:first-child) > a,
.custom-style .result_nav .input-group-btn:first-child > .btn-group:not(:first-child) > span {
  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, .custom-style .result_nav .input-group-btn > a, .custom-style .result_nav .input-group-btn > span {
    position: relative; }
    .input-group-btn > .btn + .btn, .custom-style .result_nav .input-group-btn > a + .btn, .custom-style .result_nav .input-group-btn > span + .btn, .custom-style .result_nav .input-group-btn > .btn + a, .custom-style .result_nav .input-group-btn > a + a, .custom-style .result_nav .input-group-btn > span + a, .custom-style .result_nav .input-group-btn > .btn + span, .custom-style .result_nav .input-group-btn > a + span, .custom-style .result_nav .input-group-btn > span + span {
      margin-left: -1px; }
    .input-group-btn > .btn:hover, .custom-style .result_nav .input-group-btn > a:hover, .custom-style .result_nav .input-group-btn > span:hover, .input-group-btn > .btn:focus, .custom-style .result_nav .input-group-btn > a:focus, .custom-style .result_nav .input-group-btn > span:focus, .input-group-btn > .btn:active, .custom-style .result_nav .input-group-btn > a:active, .custom-style .result_nav .input-group-btn > span:active {
      z-index: 2; }
  
  .input-group-btn:first-child > .btn,
  .custom-style .result_nav .input-group-btn:first-child > a,
  .custom-style .result_nav .input-group-btn:first-child > span,
  .input-group-btn:first-child > .btn-group {
    margin-right: -1px; }
  
  .input-group-btn:last-child > .btn,
  .custom-style .result_nav .input-group-btn:last-child > a,
  .custom-style .result_nav .input-group-btn:last-child > span,
  .input-group-btn:last-child > .btn-group {
    margin-left: -1px; }

.nav {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none; }
  .nav:before, .nav:after {
    content: " ";
    display: table; }
  .nav:after {
    clear: both; }
  .nav > li {
    position: relative;
    display: block; }
    .nav > li > a {
      position: relative;
      display: block;
      padding: 10px 15px; }
      .nav > li > a:hover, .nav > li > a:focus {
        text-decoration: none;
        background-color: #eeeeee; }
    .nav > li.disabled > a {
      color: #777777; }
      .nav > li.disabled > a:hover, .nav > li.disabled > a:focus {
        color: #777777;
        text-decoration: none;
        background-color: transparent;
        cursor: not-allowed; }
  .nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
    background-color: #eeeeee;
    border-color: #337ab7; }
  .nav .nav-divider {
    height: 1px;
    margin: 9px 0;
    overflow: hidden;
    background-color: #e5e5e5; }
  .nav > li > a > img {
    max-width: none; }

.nav-tabs {
  border-bottom: 1px solid #ddd; }
  .nav-tabs > li {
    float: left;
    margin-bottom: -1px; }
    .nav-tabs > li > a {
      margin-right: 2px;
      line-height: 1.42857;
      border: 1px solid transparent;
      border-radius: 4px 4px 0 0; }
      .nav-tabs > li > a:hover {
        border-color: #eeeeee #eeeeee #ddd; }
    .nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
      color: #555555;
      background-color: #fff;
      border: 1px solid #ddd;
      border-bottom-color: transparent;
      cursor: default; }

.nav-pills > li {
  float: left; }
  .nav-pills > li > a {
    border-radius: 4px; }
  .nav-pills > li + li {
    margin-left: 2px; }
  .nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
    color: #fff;
    background-color: #337ab7; }

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

.nav-justified, .nav-tabs.nav-justified {
  width: 100%; }
  .nav-justified > li, .nav-tabs.nav-justified > li {
    float: none; }
    .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
      text-align: center;
      margin-bottom: 5px; }
  .nav-justified > .dropdown .dropdown-menu {
    top: auto;
    left: auto; }
  @media (min-width: 768px) {
    .nav-justified > li, .nav-tabs.nav-justified > li {
      display: table-cell;
      width: 1%; }
      .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
        margin-bottom: 0; } }

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

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

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

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

.navbar {
  position: relative;
  min-height: 50px;
  margin-bottom: 20px;
  border: 1px solid transparent; }
  .navbar:before, .navbar:after {
    content: " ";
    display: table; }
  .navbar:after {
    clear: both; }
  @media (min-width: 768px) {
    .navbar {
      border-radius: 4px; } }

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

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

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

.navbar-collapse {
  overflow-x: visible;
  padding-right: 15px;
  padding-left: 15px;
  border-top: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
  -webkit-overflow-scrolling: touch; }
  .navbar-collapse:before, .navbar-collapse:after {
    content: " ";
    display: table; }
  .navbar-collapse:after {
    clear: both; }
  .navbar-collapse.in {
    overflow-y: auto; }
  @media (min-width: 768px) {
    .navbar-collapse {
      width: auto;
      border-top: 0;
      box-shadow: none; }
      .navbar-collapse.collapse {
        display: block !important;
        visibility: visible !important;
        height: auto !important;
        padding-bottom: 0;
        overflow: visible !important; }
      .navbar-collapse.in {
        overflow-y: visible; }
      .navbar-fixed-top .navbar-collapse,
      .navbar-static-top .navbar-collapse,
      .navbar-fixed-bottom .navbar-collapse {
        padding-left: 0;
        padding-right: 0; } }

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

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

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

.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030; }
  @media (min-width: 768px) {
    .navbar-fixed-top,
    .navbar-fixed-bottom {
      border-radius: 0; } }

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

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

.navbar-brand {
  float: left;
  padding: 15px 15px;
  font-size: 18px;
  line-height: 20px;
  height: 50px; }
  .navbar-brand:hover, .navbar-brand:focus {
    text-decoration: none; }
  .navbar-brand > img {
    display: block; }
  @media (min-width: 768px) {
    .navbar > .container .navbar-brand,
    .navbar > .container-fluid .navbar-brand {
      margin-left: -15px; } }

.navbar-toggle {
  position: relative;
  float: right;
  margin-right: 15px;
  padding: 9px 10px;
  margin-top: 8px;
  margin-bottom: 8px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px; }
  .navbar-toggle:focus {
    outline: 0; }
  .navbar-toggle .icon-bar {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 1px; }
  .navbar-toggle .icon-bar + .icon-bar {
    margin-top: 4px; }
  @media (min-width: 768px) {
    .navbar-toggle {
      display: none; } }

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

.navbar-form {
  margin-left: -15px;
  margin-right: -15px;
  padding: 10px 15px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  margin-top: 8px;
  margin-bottom: 8px; }
  @media (min-width: 768px) {
    .navbar-form .form-group {
      display: inline-block;
      margin-bottom: 0;
      vertical-align: middle; }
    .navbar-form .form-control {
      display: inline-block;
      width: auto;
      vertical-align: middle; }
    .navbar-form .form-control-static {
      display: inline-block; }
    .navbar-form .input-group {
      display: inline-table;
      vertical-align: middle; }
      .navbar-form .input-group .input-group-addon,
      .navbar-form .input-group .input-group-btn,
      .navbar-form .input-group .form-control {
        width: auto; }
    .navbar-form .input-group > .form-control {
      width: 100%; }
    .navbar-form .control-label {
      margin-bottom: 0;
      vertical-align: middle; }
    .navbar-form .radio,
    .navbar-form .checkbox {
      display: inline-block;
      margin-top: 0;
      margin-bottom: 0;
      vertical-align: middle; }
      .navbar-form .radio label,
      .navbar-form .checkbox label {
        padding-left: 0; }
    .navbar-form .radio input[type="radio"],
    .navbar-form .checkbox input[type="checkbox"] {
      position: relative;
      margin-left: 0; }
    .navbar-form .has-feedback .form-control-feedback {
      top: 0; } }
  @media (max-width: 767px) {
    .navbar-form .form-group {
      margin-bottom: 5px; }
      .navbar-form .form-group:last-child {
        margin-bottom: 0; } }
  @media (min-width: 768px) {
    .navbar-form {
      width: auto;
      border: 0;
      margin-left: 0;
      margin-right: 0;
      padding-top: 0;
      padding-bottom: 0;
      box-shadow: none; } }

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

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

.navbar-btn {
  margin-top: 8px;
  margin-bottom: 8px; }
  .navbar-btn.btn-sm, .btn-group-sm > .navbar-btn.btn, .custom-style .result_nav .btn-group-sm > a.navbar-btn, .custom-style .result_nav .btn-group-sm > span.navbar-btn {
    margin-top: 10px;
    margin-bottom: 10px; }
  .navbar-btn.btn-xs, .btn-group-xs > .navbar-btn.btn, .custom-style .result_nav .btn-group-xs > a.navbar-btn, .custom-style .result_nav .btn-group-xs > span.navbar-btn {
    margin-top: 14px;
    margin-bottom: 14px; }

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

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

.navbar-default {
  background-color: #f8f8f8;
  border-color: #e7e7e7; }
  .navbar-default .navbar-brand {
    color: #777; }
    .navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {
      color: #5e5e5e;
      background-color: transparent; }
  .navbar-default .navbar-text {
    color: #777; }
  .navbar-default .navbar-nav > li > a {
    color: #777; }
    .navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
      color: #333;
      background-color: transparent; }
  .navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus {
    color: #555;
    background-color: #e7e7e7; }
  .navbar-default .navbar-nav > .disabled > a, .navbar-default .navbar-nav > .disabled > a:hover, .navbar-default .navbar-nav > .disabled > a:focus {
    color: #ccc;
    background-color: transparent; }
  .navbar-default .navbar-toggle {
    border-color: #ddd; }
    .navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
      background-color: #ddd; }
    .navbar-default .navbar-toggle .icon-bar {
      background-color: #888; }
  .navbar-default .navbar-collapse,
  .navbar-default .navbar-form {
    border-color: #e7e7e7; }
  .navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
    background-color: #e7e7e7;
    color: #555; }
  @media (max-width: 767px) {
    .navbar-default .navbar-nav .open .dropdown-menu > li > a {
      color: #777; }
      .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
        color: #333;
        background-color: transparent; }
    .navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
      color: #555;
      background-color: #e7e7e7; }
    .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
      color: #ccc;
      background-color: transparent; } }
  .navbar-default .navbar-link {
    color: #777; }
    .navbar-default .navbar-link:hover {
      color: #333; }
  .navbar-default .btn-link {
    color: #777; }
    .navbar-default .btn-link:hover, .navbar-default .btn-link:focus {
      color: #333; }
    .navbar-default .btn-link[disabled]:hover, .navbar-default .btn-link[disabled]:focus,
    fieldset[disabled] .navbar-default .btn-link:hover,
    fieldset[disabled] .navbar-default .btn-link:focus {
      color: #ccc; }

.navbar-inverse {
  background-color: #222;
  border-color: #090909; }
  .navbar-inverse .navbar-brand {
    color: #9d9d9d; }
    .navbar-inverse .navbar-brand:hover, .navbar-inverse .navbar-brand:focus {
      color: #fff;
      background-color: transparent; }
  .navbar-inverse .navbar-text {
    color: #9d9d9d; }
  .navbar-inverse .navbar-nav > li > a {
    color: #9d9d9d; }
    .navbar-inverse .navbar-nav > li > a:hover, .navbar-inverse .navbar-nav > li > a:focus {
      color: #fff;
      background-color: transparent; }
  .navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus {
    color: #fff;
    background-color: #090909; }
  .navbar-inverse .navbar-nav > .disabled > a, .navbar-inverse .navbar-nav > .disabled > a:hover, .navbar-inverse .navbar-nav > .disabled > a:focus {
    color: #444;
    background-color: transparent; }
  .navbar-inverse .navbar-toggle {
    border-color: #333; }
    .navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus {
      background-color: #333; }
    .navbar-inverse .navbar-toggle .icon-bar {
      background-color: #fff; }
  .navbar-inverse .navbar-collapse,
  .navbar-inverse .navbar-form {
    border-color: #101010; }
  .navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus {
    background-color: #090909;
    color: #fff; }
  @media (max-width: 767px) {
    .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
      border-color: #090909; }
    .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
      background-color: #090909; }
    .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
      color: #9d9d9d; }
      .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
        color: #fff;
        background-color: transparent; }
    .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
      color: #fff;
      background-color: #090909; }
    .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
      color: #444;
      background-color: transparent; } }
  .navbar-inverse .navbar-link {
    color: #9d9d9d; }
    .navbar-inverse .navbar-link:hover {
      color: #fff; }
  .navbar-inverse .btn-link {
    color: #9d9d9d; }
    .navbar-inverse .btn-link:hover, .navbar-inverse .btn-link:focus {
      color: #fff; }
    .navbar-inverse .btn-link[disabled]:hover, .navbar-inverse .btn-link[disabled]:focus,
    fieldset[disabled] .navbar-inverse .btn-link:hover,
    fieldset[disabled] .navbar-inverse .btn-link:focus {
      color: #444; }

.breadcrumb {
  padding: 8px 15px;
  margin-bottom: 20px;
  list-style: none;
  background-color: #f5f5f5;
  border-radius: 4px; }
  .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: 20px 0;
  border-radius: 4px; }
  .pagination > li {
    display: inline; }
    .pagination > li > a,
    .pagination > li > span {
      position: relative;
      float: left;
      padding: 6px 12px;
      line-height: 1.42857;
      text-decoration: none;
      color: #337ab7;
      background-color: #fff;
      border: 1px solid #ddd;
      margin-left: -1px; }
    .pagination > li:first-child > a,
    .pagination > li:first-child > span {
      margin-left: 0;
      border-bottom-left-radius: 4px;
      border-top-left-radius: 4px; }
    .pagination > li:last-child > a,
    .pagination > li:last-child > span {
      border-bottom-right-radius: 4px;
      border-top-right-radius: 4px; }
  .pagination > li > a:hover, .pagination > li > a:focus,
  .pagination > li > span:hover,
  .pagination > li > span:focus {
    color: #23527c;
    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: 2;
    color: #fff;
    background-color: #337ab7;
    border-color: #337ab7;
    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; }

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

.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px; }

.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px; }

.pager {
  padding-left: 0;
  margin: 20px 0;
  list-style: none;
  text-align: center; }
  .pager:before, .pager:after {
    content: " ";
    display: table; }
  .pager:after {
    clear: both; }
  .pager li {
    display: inline; }
    .pager li > a,
    .pager li > span {
      display: inline-block;
      padding: 5px 14px;
      background-color: #fff;
      border: 1px solid #ddd;
      border-radius: 15px; }
    .pager li > a:hover,
    .pager li > a:focus {
      text-decoration: none;
      background-color: #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, .custom-style .result_nav a .label, .custom-style .result_nav span .label {
    position: relative;
    top: -1px; }

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

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

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

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

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

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

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

.badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  line-height: 1;
  vertical-align: baseline;
  white-space: nowrap;
  text-align: center;
  background-color: #777777;
  border-radius: 10px; }
  .badge:empty {
    display: none; }
  .btn .badge, .custom-style .result_nav a .badge, .custom-style .result_nav span .badge {
    position: relative;
    top: -1px; }
  .btn-xs .badge, .btn-group-xs > .btn .badge, .custom-style .result_nav .btn-group-xs > a .badge, .custom-style .result_nav .btn-group-xs > span .badge {
    top: 0;
    padding: 1px 5px; }
  .list-group-item.active > .badge,
  .nav-pills > .active > a > .badge {
    color: #337ab7;
    background-color: #fff; }
  .list-group-item > .badge {
    float: right; }
  .list-group-item > .badge + .badge {
    margin-right: 5px; }
  .nav-pills > li > a > .badge {
    margin-left: 3px; }

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

.jumbotron {
  padding: 30px 15px;
  margin-bottom: 30px;
  color: inherit;
  background-color: #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; }
  .jumbotron .container {
    max-width: 100%; }
  @media screen and (min-width: 768px) {
    .jumbotron {
      padding: 48px 0; }
      .container .jumbotron,
      .container-fluid .jumbotron {
        padding-left: 60px;
        padding-right: 60px; }
      .jumbotron h1,
      .jumbotron .h1 {
        font-size: 63px; } }

.thumbnail {
  display: block;
  padding: 4px;
  margin-bottom: 20px;
  line-height: 1.42857;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  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: #337ab7; }

.alert {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid transparent;
  border-radius: 4px; }
  .alert h4 {
    margin-top: 0;
    color: inherit; }
  .alert .alert-link {
    font-weight: bold; }
  .alert > p,
  .alert > ul {
    margin-bottom: 0; }
  .alert > p + p {
    margin-top: 5px; }

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

.alert-success {
  background-color: #dff0d8;
  border-color: #d6e9c6;
  color: #3c763d; }
  .alert-success hr {
    border-top-color: #c9e2b3; }
  .alert-success .alert-link {
    color: #2b542c; }

.alert-info {
  background-color: #d9edf7;
  border-color: #bce8f1;
  color: #31708f; }
  .alert-info hr {
    border-top-color: #a6e1ec; }
  .alert-info .alert-link {
    color: #245269; }

.alert-warning {
  background-color: #fcf8e3;
  border-color: #faebcc;
  color: #8a6d3b; }
  .alert-warning hr {
    border-top-color: #f7e1b5; }
  .alert-warning .alert-link {
    color: #66512c; }

.alert-danger {
  background-color: #f2dede;
  border-color: #ebccd1;
  color: #a94442; }
  .alert-danger hr {
    border-top-color: #e4b9c0; }
  .alert-danger .alert-link {
    color: #843534; }

@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 40px 0; }
  to {
    background-position: 0 0; } }

@keyframes progress-bar-stripes {
  from {
    background-position: 40px 0; }
  to {
    background-position: 0 0; } }

.progress {
  overflow: hidden;
  height: 20px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border-radius: 4px;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); }

.progress-bar {
  float: left;
  width: 0%;
  height: 100%;
  font-size: 12px;
  line-height: 20px;
  color: #fff;
  text-align: center;
  background-color: #337ab7;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  transition: width 0.6s ease; }

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

.progress-bar-success {
  background-color: #5cb85c; }
  .progress-striped .progress-bar-success {
    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: 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: 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: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

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

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

.media-body {
  width: 10000px; }

.media-object {
  display: block; }

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

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

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

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

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

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

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

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

.list-group-item {
  position: relative;
  display: block;
  padding: 10px 15px;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid #ddd; }
  .list-group-item:first-child {
    border-top-right-radius: 4px;
    border-top-left-radius: 4px; }
  .list-group-item:last-child {
    margin-bottom: 0;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px; }

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

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

.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus {
  z-index: 2;
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7; }
  .list-group-item.active .list-group-item-heading,
  .list-group-item.active .list-group-item-heading > small,
  .list-group-item.active .list-group-item-heading > .small, .list-group-item.active:hover .list-group-item-heading,
  .list-group-item.active:hover .list-group-item-heading > small,
  .list-group-item.active:hover .list-group-item-heading > .small, .list-group-item.active:focus .list-group-item-heading,
  .list-group-item.active:focus .list-group-item-heading > small,
  .list-group-item.active:focus .list-group-item-heading > .small {
    color: inherit; }
  .list-group-item.active .list-group-item-text, .list-group-item.active:hover .list-group-item-text, .list-group-item.active:focus .list-group-item-text {
    color: #c7ddef; }

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

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

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

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

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

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

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

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

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

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

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

.panel-body {
  padding: 15px; }
  .panel-body:before, .panel-body:after {
    content: " ";
    display: table; }
  .panel-body:after {
    clear: both; }

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

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

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

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

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

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

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

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

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

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

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

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

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

.panel-group {
  margin-bottom: 20px; }
  .panel-group .panel {
    margin-bottom: 0;
    border-radius: 4px; }
    .panel-group .panel + .panel {
      margin-top: 5px; }
  .panel-group .panel-heading {
    border-bottom: 0; }
    .panel-group .panel-heading + .panel-collapse > .panel-body,
    .panel-group .panel-heading + .panel-collapse > .list-group {
      border-top: 1px solid #ddd; }
  .panel-group .panel-footer {
    border-top: 0; }
    .panel-group .panel-footer + .panel-collapse .panel-body {
      border-bottom: 1px solid #ddd; }

.panel-default {
  border-color: #ddd; }
  .panel-default > .panel-heading {
    color: #333333;
    background-color: #f5f5f5;
    border-color: #ddd; }
    .panel-default > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #ddd; }
    .panel-default > .panel-heading .badge {
      color: #f5f5f5;
      background-color: #333333; }
  .panel-default > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #ddd; }

.panel-primary {
  border-color: #337ab7; }
  .panel-primary > .panel-heading {
    color: #fff;
    background-color: #337ab7;
    border-color: #337ab7; }
    .panel-primary > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #337ab7; }
    .panel-primary > .panel-heading .badge {
      color: #337ab7;
      background-color: #fff; }
  .panel-primary > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #337ab7; }

.panel-success {
  border-color: #d6e9c6; }
  .panel-success > .panel-heading {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #d6e9c6; }
    .panel-success > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #d6e9c6; }
    .panel-success > .panel-heading .badge {
      color: #dff0d8;
      background-color: #3c763d; }
  .panel-success > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #d6e9c6; }

.panel-info {
  border-color: #bce8f1; }
  .panel-info > .panel-heading {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bce8f1; }
    .panel-info > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #bce8f1; }
    .panel-info > .panel-heading .badge {
      color: #d9edf7;
      background-color: #31708f; }
  .panel-info > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #bce8f1; }

.panel-warning {
  border-color: #faebcc; }
  .panel-warning > .panel-heading {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #faebcc; }
    .panel-warning > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #faebcc; }
    .panel-warning > .panel-heading .badge {
      color: #fcf8e3;
      background-color: #8a6d3b; }
  .panel-warning > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #faebcc; }

.panel-danger {
  border-color: #ebccd1; }
  .panel-danger > .panel-heading {
    color: #a94442;
    background-color: #f2dede;
    border-color: #ebccd1; }
    .panel-danger > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #ebccd1; }
    .panel-danger > .panel-heading .badge {
      color: #f2dede;
      background-color: #a94442; }
  .panel-danger > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #ebccd1; }

.embed-responsive {
  position: relative;
  display: block;
  height: 0;
  padding: 0;
  overflow: hidden; }
  .embed-responsive .embed-responsive-item,
  .embed-responsive iframe,
  .embed-responsive embed,
  .embed-responsive object,
  .embed-responsive video {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    border: 0; }
  .embed-responsive.embed-responsive-16by9 {
    padding-bottom: 56.25%; }
  .embed-responsive.embed-responsive-4by3 {
    padding-bottom: 75%; }

.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
  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: 1040;
  -webkit-overflow-scrolling: touch;
  outline: 0; }
  .modal.fade .modal-dialog {
    -webkit-transform: translate(0, -25%);
    transform: translate(0, -25%);
    transition: -webkit-transform 0.3s ease-out;
    transition: transform 0.3s ease-out; }
  .modal.in .modal-dialog {
    -webkit-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;
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  background-clip: padding-box;
  outline: 0; }

.modal-backdrop {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  background-color: #000; }
  .modal-backdrop.fade {
    opacity: 0;
    filter: alpha(opacity=0); }
  .modal-backdrop.in {
    opacity: 0.5;
    filter: alpha(opacity=50); }

.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5;
  min-height: 16.42857px; }

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

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

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

.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5; }
  .modal-footer:before, .modal-footer:after {
    content: " ";
    display: table; }
  .modal-footer:after {
    clear: both; }
  .modal-footer .btn + .btn, .modal-footer .custom-style .result_nav a + .btn, .custom-style .result_nav .modal-footer a + .btn, .modal-footer .custom-style .result_nav span + .btn, .custom-style .result_nav .modal-footer span + .btn, .modal-footer .custom-style .result_nav .btn + a, .custom-style .result_nav .modal-footer .btn + a, .modal-footer .custom-style .result_nav a + a, .custom-style .result_nav .modal-footer a + a, .modal-footer .custom-style .result_nav span + a, .custom-style .result_nav .modal-footer span + a, .modal-footer .custom-style .result_nav .btn + span, .custom-style .result_nav .modal-footer .btn + span, .modal-footer .custom-style .result_nav a + span, .custom-style .result_nav .modal-footer a + span, .modal-footer .custom-style .result_nav span + span, .custom-style .result_nav .modal-footer span + span {
    margin-left: 5px;
    margin-bottom: 0; }
  .modal-footer .btn-group .btn + .btn, .modal-footer .btn-group .custom-style .result_nav a + .btn, .custom-style .result_nav .modal-footer .btn-group a + .btn, .modal-footer .btn-group .custom-style .result_nav span + .btn, .custom-style .result_nav .modal-footer .btn-group span + .btn, .modal-footer .btn-group .custom-style .result_nav .btn + a, .custom-style .result_nav .modal-footer .btn-group .btn + a, .modal-footer .btn-group .custom-style .result_nav a + a, .custom-style .result_nav .modal-footer .btn-group a + a, .modal-footer .btn-group .custom-style .result_nav span + a, .custom-style .result_nav .modal-footer .btn-group span + a, .modal-footer .btn-group .custom-style .result_nav .btn + span, .custom-style .result_nav .modal-footer .btn-group .btn + span, .modal-footer .btn-group .custom-style .result_nav a + span, .custom-style .result_nav .modal-footer .btn-group a + span, .modal-footer .btn-group .custom-style .result_nav span + span, .custom-style .result_nav .modal-footer .btn-group span + span {
    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 {
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); }
  .modal-sm {
    width: 300px; } }

@media (min-width: 992px) {
  .modal-lg {
    width: 900px; } }

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  visibility: visible;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 12px;
  font-weight: normal;
  line-height: 1.4;
  opacity: 0;
  filter: alpha(opacity=0); }
  .tooltip.in {
    opacity: 0.9;
    filter: alpha(opacity=90); }
  .tooltip.top {
    margin-top: -3px;
    padding: 5px 0; }
  .tooltip.right {
    margin-left: 3px;
    padding: 0 5px; }
  .tooltip.bottom {
    margin-top: 3px;
    padding: 5px 0; }
  .tooltip.left {
    margin-left: -3px;
    padding: 0 5px; }

.tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: #fff;
  text-align: center;
  text-decoration: none;
  background-color: #000;
  border-radius: 4px; }

.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid; }

.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000; }

.tooltip.top-left .tooltip-arrow {
  bottom: 0;
  right: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000; }

.tooltip.top-right .tooltip-arrow {
  bottom: 0;
  left: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000; }

.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-width: 5px 5px 5px 0;
  border-right-color: #000; }

.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 5px;
  border-left-color: #000; }

.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000; }

.tooltip.bottom-left .tooltip-arrow {
  top: 0;
  right: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000; }

.tooltip.bottom-right .tooltip-arrow {
  top: 0;
  left: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000; }

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: none;
  max-width: 276px;
  padding: 1px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.42857;
  text-align: left;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  white-space: normal; }
  .popover.top {
    margin-top: -10px; }
  .popover.right {
    margin-left: 10px; }
  .popover.bottom {
    margin-top: 10px; }
  .popover.left {
    margin-left: -10px; }

.popover-title {
  margin: 0;
  padding: 8px 14px;
  font-size: 14px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: 5px 5px 0 0; }

.popover-content {
  padding: 9px 14px; }

.popover > .arrow, .popover > .arrow:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid; }

.popover > .arrow {
  border-width: 11px; }

.popover > .arrow:after {
  border-width: 10px;
  content: ""; }

.popover.top > .arrow {
  left: 50%;
  margin-left: -11px;
  border-bottom-width: 0;
  border-top-color: #999999;
  border-top-color: rgba(0, 0, 0, 0.25);
  bottom: -11px; }
  .popover.top > .arrow:after {
    content: " ";
    bottom: 1px;
    margin-left: -10px;
    border-bottom-width: 0;
    border-top-color: #fff; }

.popover.right > .arrow {
  top: 50%;
  left: -11px;
  margin-top: -11px;
  border-left-width: 0;
  border-right-color: #999999;
  border-right-color: rgba(0, 0, 0, 0.25); }
  .popover.right > .arrow:after {
    content: " ";
    left: 1px;
    bottom: -10px;
    border-left-width: 0;
    border-right-color: #fff; }

.popover.bottom > .arrow {
  left: 50%;
  margin-left: -11px;
  border-top-width: 0;
  border-bottom-color: #999999;
  border-bottom-color: rgba(0, 0, 0, 0.25);
  top: -11px; }
  .popover.bottom > .arrow:after {
    content: " ";
    top: 1px;
    margin-left: -10px;
    border-top-width: 0;
    border-bottom-color: #fff; }

.popover.left > .arrow {
  top: 50%;
  right: -11px;
  margin-top: -11px;
  border-right-width: 0;
  border-left-color: #999999;
  border-left-color: rgba(0, 0, 0, 0.25); }
  .popover.left > .arrow:after {
    content: " ";
    right: 1px;
    border-right-width: 0;
    border-left-color: #fff;
    bottom: -10px; }

.carousel {
  position: relative; }

.carousel-inner {
  position: relative;
  overflow: hidden;
  width: 100%; }
  .carousel-inner > .item {
    display: none;
    position: relative;
    transition: 0.6s ease-in-out left; }
    .carousel-inner > .item > img,
    .carousel-inner > .item > a > img {
      display: block;
      max-width: 100%;
      height: auto;
      line-height: 1; }
    @media all and (transform-3d), (-webkit-transform-3d) {
      .carousel-inner > .item {
        transition: -webkit-transform 0.6s ease-in-out;
        transition: transform 0.6s ease-in-out;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        -webkit-perspective: 1000;
        perspective: 1000; }
        .carousel-inner > .item.next, .carousel-inner > .item.active.right {
          -webkit-transform: translate3d(100%, 0, 0);
          transform: translate3d(100%, 0, 0);
          left: 0; }
        .carousel-inner > .item.prev, .carousel-inner > .item.active.left {
          -webkit-transform: translate3d(-100%, 0, 0);
          transform: translate3d(-100%, 0, 0);
          left: 0; }
        .carousel-inner > .item.next.left, .carousel-inner > .item.prev.right, .carousel-inner > .item.active {
          -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
          left: 0; } }
  .carousel-inner > .active,
  .carousel-inner > .next,
  .carousel-inner > .prev {
    display: block; }
  .carousel-inner > .active {
    left: 0; }
  .carousel-inner > .next,
  .carousel-inner > .prev {
    position: absolute;
    top: 0;
    width: 100%; }
  .carousel-inner > .next {
    left: 100%; }
  .carousel-inner > .prev {
    left: -100%; }
  .carousel-inner > .next.left,
  .carousel-inner > .prev.right {
    left: 0; }
  .carousel-inner > .active.left {
    left: -100%; }
  .carousel-inner > .active.right {
    left: 100%; }

.carousel-control {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 15%;
  opacity: 0.5;
  filter: alpha(opacity=50);
  font-size: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); }
  .carousel-control.left {
    background-image: 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: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); }
  .carousel-control:hover, .carousel-control:focus {
    outline: 0;
    color: #fff;
    text-decoration: none;
    opacity: 0.9;
    filter: alpha(opacity=90); }
  .carousel-control .icon-prev,
  .carousel-control .icon-next,
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right {
    position: absolute;
    top: 50%;
    z-index: 5;
    display: inline-block; }
  .carousel-control .icon-prev,
  .carousel-control .glyphicon-chevron-left {
    left: 50%;
    margin-left: -10px; }
  .carousel-control .icon-next,
  .carousel-control .glyphicon-chevron-right {
    right: 50%;
    margin-right: -10px; }
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 20px;
    height: 20px;
    margin-top: -10px;
    line-height: 1;
    font-family: serif; }
  .carousel-control .icon-prev:before {
    content: '\2039'; }
  .carousel-control .icon-next:before {
    content: '\203a'; }

.carousel-indicators {
  position: absolute;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  margin-left: -30%;
  padding-left: 0;
  list-style: none;
  text-align: center; }
  .carousel-indicators li {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 1px;
    text-indent: -999px;
    border: 1px solid #fff;
    border-radius: 10px;
    cursor: pointer;
    background-color: #000 \9;
    background-color: rgba(0, 0, 0, 0); }
  .carousel-indicators .active {
    margin: 0;
    width: 12px;
    height: 12px;
    background-color: #fff; }

.carousel-caption {
  position: absolute;
  left: 15%;
  right: 15%;
  bottom: 20px;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); }
  .carousel-caption .btn, .carousel-caption .custom-style .result_nav a, .custom-style .result_nav .carousel-caption a, .carousel-caption .custom-style .result_nav span, .custom-style .result_nav .carousel-caption span {
    text-shadow: none; }

@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -15px;
    font-size: 30px; }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -15px; }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -15px; }
  .carousel-caption {
    left: 20%;
    right: 20%;
    padding-bottom: 30px; }
  .carousel-indicators {
    bottom: 20px; } }

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

.clearfix:after {
  clear: both; }

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

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

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

.hide {
  display: none !important; }

.show {
  display: block !important; }

.invisible {
  visibility: hidden; }

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

.hidden {
  display: none !important;
  visibility: hidden !important; }

.affix {
  position: fixed; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.bootblue {
  color: #049cdb !important; }

.bootgreen {
  color: #46a546 !important; }

.bootred {
  color: #9d261d !important; }

.bootred_bg, .bootred-bg {
  background-color: #9d261d; }

.bootyellow {
  color: #ffe40d !important; }

.bootorange {
  color: #f89406 !important; }

.bootblack {
  color: #373737 !important; }

.bootgray {
  color: #999 !important; }

.bootgray_bg, .bootgray-bg {
  background-color: #999; }

.hush {
  display: none; }

.editable, .non-editable {
  display: block;
  word-break: keep-all;
  padding: 3px 2px; }
  .editable *, .non-editable * {
    width: 100%; }

.editable {
  cursor: pointer;
  background: #fff; }

hr {
  border-top: 1px solid #CACACA; }

.admin_pic_wrapper {
  float: left; }
  .admin_pic_wrapper img {
    height: 160px;
    border: 6px solid #f5f5f5;
    border-radius: 2px;
    margin: 0 5px 5px 0;
    box-shadow: 0 1px 1px #999; }
    .admin_pic_wrapper img:hover {
      opacity: .85; }

.notification {
  padding: 16px;
  background: #fff;
  border: 1px solid #ddd;
  font-size: 16px;
  line-height: 1.3; }
  .notification h1 {
    color: #999;
    font-style: italic;
    text-align: center;
    margin: 0 auto;
    font-size: 26px;
    margin: 0px 0 6px; }

.jdpicker_w .date_selector {
  margin: 0 !important;
  border-color: #cccccc !important;
  padding: 15px;
  width: 242px; }

.jdpicker_w .date_selector table {
  -o-box-shadow: 0 0 0 #ffffff;
  box-shadow: 0 0 0 #ffffff; }

.jdpicker_w .date_selector td.selectable_day,
.jdpicker_w .date_selector tr.selectable_week td {
  background: #fff;
  border-color: #bee192; }

.jdpicker_w .date_selector td.today {
  background: #dbeec2; }

.jdpicker_w .date_selector tr.selectable_week.hover td,
.jdpicker_w .date_selector td.selectable_day.hover {
  background: #72a333; }

.jdpicker_w .date_selector td.selected,
.jdpicker_w .date_selector tr.selected td {
  background: #72a333;
  color: #fff;
  text-shadow: none; }

.navbar-default {
  background-color: #262626;
  border-color: #222;
  border-radius: 0;
  border-top: 2px solid #f00; }

body {
  background-color: #F5F5F5; }

.navbar-default .navbar-nav > li > a, .navbar-default .navbar-text {
  color: #C4C4C4; }

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

.menu-navigation-container ul {
  padding-left: 0; }
  .menu-navigation-container ul li {
    display: inline-block; }

/*Menu Trigger Styles*/
.menu-navigation-container .mobile-dropdown {
  display: none; }

.menu-navigation-container .menu-trigger {
  display: none; }

@media screen and (max-width: 767px) {
  .menu-navigation-container {
    width: 100%;
    display: none;
    float: left; }
    .menu-navigation-container .menu {
      padding: 0;
      width: 100%;
      list-style-type: none; }
      .menu-navigation-container .menu li {
        width: 100%; }
    .menu-navigation-container .mobile-dropdown {
      display: block;
      color: white;
      background: #3333ff;
      position: absolute;
      right: 0;
      top: 0;
      bottom: 0;
      width: 40px;
      text-align: center;
      font-size: 27px;
      font-size: 2.25rem; }
      .menu-navigation-container .mobile-dropdown .vert, .menu-navigation-container .mobile-dropdown .hor {
        display: inline-block;
        vertical-align: middle;
        width: 15px;
        height: 3px;
        background: white;
        margin-left: 5px;
        transition: all .4s;
        margin: -5px 0 0; }
      .menu-navigation-container .mobile-dropdown .hor {
        margin-left: -15px; }
      .menu-navigation-container .mobile-dropdown .vert {
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg); }
      .menu-navigation-container .mobile-dropdown.active .hor {
        -webkit-transform: rotate(-180deg);
        transform: rotate(-180deg); }
      .menu-navigation-container .mobile-dropdown.active .vert {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg); }
  .trigger-wrap {
    width: 43px;
    padding: 5px 0; }
  .menu-trigger {
    width: 37px;
    position: relative;
    display: block;
    margin: 0 auto; }
    .menu-trigger .top, .menu-trigger .middle, .menu-trigger .bottom {
      width: 100%;
      height: 6px;
      background: blue;
      display: block;
      margin: 3px 0;
      transition: all .3s; }
    .menu-trigger.active .bottom {
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
      width: 24px;
      height: 4px;
      top: 27px;
      margin-left: 14px; }
    .menu-trigger.active .top {
      position: relative;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      top: 15px;
      width: 24px;
      height: 4px;
      left: -1px; }
    .menu-trigger.active .middle {
      position: relative;
      -webkit-transform: rotate(90deg);
      transform: rotate(90deg);
      width: 28px;
      left: 4px;
      top: 0px;
      height: 4px; }
  .race_browser.form-group {
    text-align: center;
    width: 100%; }
  #results_search_form {
    width: 100%;
    text-align: center;
    background: #000; }
  #search_reset {
    display: none !important; }
  .results-table {
    margin-left: -18px; }
    .results-table th, .results-table th * {
      text-orientation: sideways; } }

img {
  max-width: 100%;
  height: auto; }

.top_facebook_button {
  position: absolute;
  top: 0;
  right: 0; }
  .top_facebook_button a, .top_facebook_button a:hover {
    font-size: 18px;
    text-decoration: none; }
  .top_facebook_button span {
    display: inline-block;
    margin-top: 6px; }
  .top_facebook_button img {
    width: 25px;
    margin-top: -6px; }

/*Site Styles*/
.custom-style * {
  transition: all 0.1s ease-out;
  transition-property: background, border, text-decoration;
  outline: 0; }

.custom-style h1 {
  font-size: 28px;
  margin: 0;
  margin-bottom: 18px;
  letter-spacing: -1px;
  line-height: 0.9; }
  .custom-style h1 small {
    font-size: 22px; }

.custom-style h2 {
  margin-bottom: 2px;
  padding-left: 1%;
  font-size: 26px; }

.custom-style .pagination {
  display: block;
  margin: 0; }

.custom-style .race_title_link {
  text-decoration: none;
  font-weight: bold; }

.custom-style #results_search_form {
  float: right;
  padding: 7px;
  margin-bottom: 15px;
  border-radius: 5px;
  margin-top: -7px; }
  .custom-style #results_search_form .form-group {
    margin-bottom: 0; }

.custom-style .race_browser {
  float: left;
  padding: 7px;
  margin-bottom: 15px;
  border-radius: 5px;
  margin-top: -7px;
  padding-left: 16px; }
  .custom-style .race_browser i {
    font-size: 24px;
    vertical-align: top;
    margin-top: 4px; }
    .custom-style .race_browser i.glyphicon-align-right {
      margin-right: 4px; }
    .custom-style .race_browser i.glyphicon-menu-right {
      margin-left: -3px;
      margin-right: -2px; }
  .custom-style .race_browser select {
    cursor: pointer;
    display: inline-block;
    width: auto;
    font-weight: bold;
    background: rgba(255, 255, 255, 0.96); }

.custom-style .result_nav {
  margin-bottom: 4px;
  margin-top: 4px; }
  .custom-style .result_nav a, .custom-style .result_nav span {
    font-size: 19px;
    font-weight: bold;
    padding-left: 4px;
    padding-right: 4px; }
    .custom-style .result_nav a.btn-primary, .custom-style .result_nav span.btn-primary {
      padding-left: 15px;
      padding-right: 15px;
      padding-top: 7px; }
    .custom-style .result_nav a i, .custom-style .result_nav span i {
      font-size: 17px; }
  .custom-style .result_nav span {
    cursor: auto; }
  .custom-style .result_nav .glyphicon-menu-right {
    margin-top: 14px;
    vertical-align: top; }
  .custom-style .result_nav ._mid_separator {
    margin-right: 7px; }

.custom-style #search_reset {
  display: none;
  font-size: 20px;
  padding: 0;
  margin-top: 4px;
  float: right;
  margin-right: 5px; }

.custom-style #search_input {
  background: rgba(255, 255, 255, 0.96);
  width: 280px;
  display: inline-block; }

.custom-style #search_submit {
  padding: 0; }
  .custom-style #search_submit i {
    font-size: 20px;
    margin: -4px 0 0;
    padding: 8px; }

.custom-style .thumbnail_main {
  display: inline-block;
  width: 130px;
  height: 130px;
  margin: 0 5px 12px 0;
  border: 3px solid #fff;
  border-radius: 180px;
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.6);
  text-align: right;
  background-position: center 20%;
  background-size: cover; }
  .custom-style .thumbnail_main span {
    display: inline-block;
    margin-top: -4px;
    width: 32px;
    height: 32px;
    font-size: 20px;
    background: #fff;
    border-radius: 80px;
    box-shadow: -1px 1px 3px rgba(0, 0, 0, 0.4);
    text-align: center;
    padding-top: 4px;
    position: relative;
    z-index: 1; }
  .custom-style .thumbnail_main:hover {
    background-position: center 18%; }
  .custom-style .thumbnail_main.thumbnail_small {
    width: 100px;
    height: 100px;
    border: 2px solid #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5); }
    .custom-style .thumbnail_main.thumbnail_small span {
      width: 30px;
      height: 30px;
      font-size: 18px; }
  .custom-style .thumbnail_main.thumbnail_video span {
    padding-top: 4px;
    padding-left: 3px; }
  .custom-style .thumbnail_main.thumbnail_video span.video_button {
    margin-top: -21px;
    width: 109px;
    height: 109px;
    font-size: 52px;
    border-radius: 180px;
    text-align: center;
    padding: 28px 28px;
    margin-right: 7px;
    z-index: 0;
    position: relative; }

.custom-style .pic_preview {
  width: 50%;
  float: left;
  text-align: center; }
  .custom-style .pic_preview img {
    border: 5px solid #fff;
    border-radius: 2px;
    width: 90%;
    margin-top: 5%;
    max-width: 500px; }

.custom-style .pic_pricing {
  width: 40%;
  float: left;
  padding-top: 40px;
  font-size: 20px;
  line-height: 1.4;
  letter-spacing: 0;
  font-weight: normal; }
  .custom-style .pic_pricing .pic_price_line {
    line-height: 1.1;
    margin: 8px 20px 8px 0; }
  .custom-style .pic_pricing .pic_stripe_form {
    margin-top: 5px;
    min-height: 40px; }
  .custom-style .pic_pricing .pic_sales {
    margin-top: 20px;
    font-size: 16px; }
  .custom-style .pic_pricing ul.pic_sales_list {
    margin-left: -24px;
    margin-top: -6px; }
    .custom-style .pic_pricing ul.pic_sales_list li {
      font-size: 16px !important; }

.custom-style .table th {
  padding: 0;
  width: 0%;
  background: #ddd; }
  .custom-style .table th span.non-a {
    display: block;
    padding: 8px 8px;
    min-width: 45px; }
  .custom-style .table th a {
    display: block;
    padding: 8px 0;
    min-width: 48px; }
    .custom-style .table th a .sort_arrow {
      padding-left: 4px; }

.custom-style .table a:hover {
  text-decoration: none; }

.custom-style .table input[type="checkbox"] {
  margin: 10px; }

.custom-style .table td {
  cursor: pointer;
  background-color: transparent; }

.custom-style.custom-nycruns {
  color: #fff; }
  .custom-style.custom-nycruns h1 small {
    color: #7495a0; }
  .custom-style.custom-nycruns .race_title_link {
    color: #fff; }
  .custom-style.custom-nycruns .result_nav a {
    color: #52c2e6; }
  .custom-style.custom-nycruns .result_nav a.btn-primary {
    background: rgba(25, 138, 175, 0.25);
    border-color: rgba(25, 138, 175, 0.5); }
    .custom-style.custom-nycruns .result_nav a.btn-primary:hover {
      background: rgba(25, 138, 175, 0.2); }
    .custom-style.custom-nycruns .result_nav a.btn-primary.active {
      background: #198aaf;
      border-color: #198aaf; }
  .custom-style.custom-nycruns .result_nav span {
    color: #fff !important; }
  .custom-style.custom-nycruns #race_history_link i {
    vertical-align: top;
    font-size: 16px;
    padding-top: 4px; }
  .custom-style.custom-nycruns #results_search_form,
  .custom-style.custom-nycruns .race_browser,
  .custom-style.custom-nycruns .something_else {
    background: #20414c; }
  .custom-style.custom-nycruns #search_reset {
    color: #66848f; }
  .custom-style.custom-nycruns .btn-primary {
    background: #198aaf;
    border-color: #1c9cc5;
    outline-color: #5fc6e8;
    color: #fff !important; }
  .custom-style.custom-nycruns .btn-primary:hover {
    background: #1c9cc5;
    border-color: #1ea6d3; }
  .custom-style.custom-nycruns select {
    color: #111; }
  .custom-style.custom-nycruns .thumbnail_main:hover {
    border-color: #5fc6e8; }
    .custom-style.custom-nycruns .thumbnail_main:hover span {
      background: #5fc6e8;
      color: #fff; }
  .custom-style.custom-nycruns .thumbnail_main.thumbnail_video span.video_button {
    background: #020a0c;
    color: #fff; }
    .custom-style.custom-nycruns .thumbnail_main.thumbnail_video span.video_button:hover {
      background: #1faddc;
      color: #fff; }
  .custom-style.custom-nycruns table.results_table {
    background: #0b3b4b;
    box-shadow: 0 0 2px #010608;
    text-shadow: 0 1px 1px #010608; }
    .custom-style.custom-nycruns table.results_table a {
      color: #52c2e6; }
      .custom-style.custom-nycruns table.results_table a:hover {
        color: #76ceeb; }
  .custom-style.custom-nycruns .table {
    background: #0b3b4b;
    box-shadow: 0 0 2px #010608; }
    .custom-style.custom-nycruns .table th {
      background: #082d39;
      border-color: #06222c !important; }
      .custom-style.custom-nycruns .table th span.non-a {
        display: block;
        padding: 8px 0;
        min-width: 45px;
        color: #f2f2f2; }
      .custom-style.custom-nycruns .table th a:hover {
        background-color: #09313d !important;
        color: #fff; }
      .custom-style.custom-nycruns .table th a .sort_arrow {
        color: #fff !important; }
    .custom-style.custom-nycruns .table td {
      color: #fff;
      border-color: #06222c !important;
      padding: 8px 4px; }
    .custom-style.custom-nycruns .table tr:hover {
      background-color: #0e4d61; }
    .custom-style.custom-nycruns .table a {
      color: #a4d2e1; }
  .custom-style.custom-nycruns table.lap-info {
    background: #09313d; }
    .custom-style.custom-nycruns table.lap-info th, .custom-style.custom-nycruns table.lap-info td {
      border: 1px dotted #3a839b; }

table.results_table {
  width: 100%; }
  table.results_table th, table.results_table td {
    font-weight: normal;
    vertical-align: top;
    font-size: 26px;
    letter-spacing: -1px;
    line-height: 0.9;
    padding-bottom: 30px; }
  table.results_table th {
    text-align: right;
    padding-right: 10px; }
  table.results_table small {
    font-weight: normal;
    font-size: 18px; }
  table.results_table td {
    font-weight: bold;
    padding-top: 1px; }
    table.results_table td span.finish_general {
      display: inline-block;
      padding: 9px 14px;
      border: 2px solid;
      border-radius: 3px;
      margin-top: -10px; }
  table.results_table tr.finished_row th, table.results_table tr.finished_row td {
    padding-top: 8px; }
  table.results_table tr.finished_row .finished_row_header i {
    font-size: 26px;
    margin-top: -3px;
    vertical-align: top;
    margin-right: 3px; }
  table.results_table table.rank_general {
    margin-bottom: 25px; }
    table.results_table table.rank_general td {
      text-align: center;
      padding-right: 22px;
      font-size: 30px;
      line-height: 0.85;
      padding-bottom: 0;
      word-spacing: 1px; }
      table.results_table table.rank_general td .group_general {
        display: block;
        padding: 2px 14px 0px; }
  table.results_table table.lap-info {
    margin-top: 8px;
    border-radius: 3px;
    margin-bottom: 2px; }
    table.results_table table.lap-info th, table.results_table table.lap-info td {
      font-size: 16px;
      letter-spacing: 0;
      padding: 8px 8px;
      font-weight: normal; }
    table.results_table table.lap-info th {
      font-weight: bold; }
  table.results_table ._photography-thumbnails-side-td {
    width: 18%;
    text-align: center;
    border-left: 1px dotted;
    padding-top: 45px;
    font-weight: normal; }

.custom-style.custom-nycruns3 {
  color: #333;
  padding: 60px 40px 40px;
  background: #fff; }
  @media screen and (max-width: 991px) {
    .custom-style.custom-nycruns3 {
      font-size: 14px;
      padding: 48px 18px 40px; } }
  .custom-style.custom-nycruns3 * {
    font-family: 'mr-eaves-modern', sans-serif;
    text-shadow: none;
    text-transform: uppercase;
    line-height: 1.2;
    font-weight: bold;
    letter-spacing: 2px;
    word-spacing: 2px; }
    .custom-style.custom-nycruns3 *.glyphicon {
      font-family: 'Glyphicons Halflings';
      font-weight: normal; }
  @media screen and (max-width: 991px) {
    .custom-style.custom-nycruns3 h1 {
      font-size: 20px;
      margin-top: 20px; } }
  .custom-style.custom-nycruns3 h1 small {
    color: #869498; }
    @media screen and (max-width: 991px) {
      .custom-style.custom-nycruns3 h1 small {
        font-size: 14px;
        margin-top: 2px;
        display: block; } }
  .custom-style.custom-nycruns3 .top_facebook_button {
    top: 20px;
    right: 18px; }
  .custom-style.custom-nycruns3 #search_submit i {
    font-size: 15px; }
  .custom-style.custom-nycruns3 .race_title_link {
    color: #333; }
  @media screen and (max-width: 991px) {
    .custom-style.custom-nycruns3 .result_nav {
      line-height: 2; }
      .custom-style.custom-nycruns3 .result_nav a, .custom-style.custom-nycruns3 .result_nav span {
        font-size: 14px;
        padding: 3px; }
        .custom-style.custom-nycruns3 .result_nav a.btn-primary, .custom-style.custom-nycruns3 .result_nav span.btn-primary {
          padding: 3px 9px;
          margin-left: -4px; }
        .custom-style.custom-nycruns3 .result_nav a i, .custom-style.custom-nycruns3 .result_nav span i {
          font-size: 12px; }
      .custom-style.custom-nycruns3 .result_nav .glyphicon-menu-right {
        margin-top: 6px;
        vertical-align: top;
        font-size: 14px; } }
  .custom-style.custom-nycruns3 .result_nav a {
    color: #198aaf; }
  .custom-style.custom-nycruns3 .result_nav a._race {
    color: #198aaf; }
  .custom-style.custom-nycruns3 .result_nav a.btn-primary {
    background: #198aaf;
    border-color: #198aaf;
    border-radius: 0;
    color: #fff !important; }
    .custom-style.custom-nycruns3 .result_nav a.btn-primary:hover {
      background: rgba(25, 138, 175, 0.9); }
    .custom-style.custom-nycruns3 .result_nav a.btn-primary.active {
      background: #198aaf;
      border-color: #198aaf; }
  .custom-style.custom-nycruns3 .result_nav span {
    color: #333 !important; }
  .custom-style.custom-nycruns3 #race_history_link i {
    vertical-align: top;
    font-size: 16px;
    padding-top: 4px; }
  .custom-style.custom-nycruns3 .thumbnail_main {
    width: 95px;
    height: 95px; }
  .custom-style.custom-nycruns3 #results_search_form,
  .custom-style.custom-nycruns3 .race_browser,
  .custom-style.custom-nycruns3 .something_else {
    background: #eee; }
  .custom-style.custom-nycruns3 #search_reset {
    color: #66848f; }
  .custom-style.custom-nycruns3 .btn-primary {
    background: #198aaf;
    border-color: #198aaf;
    outline-color: #198aaf;
    border-radius: 0;
    color: #fff !important; }
  .custom-style.custom-nycruns3 .btn-primary:hover {
    background: #1c9cc5;
    border-color: #1c9cc5; }
  .custom-style.custom-nycruns3 select {
    color: #111; }
  .custom-style.custom-nycruns3 .thumbnail_main:hover {
    border-color: #1faddc; }
    .custom-style.custom-nycruns3 .thumbnail_main:hover span {
      background: #198aaf;
      color: #fff; }
  .custom-style.custom-nycruns3 .thumbnail_main.thumbnail_video {
    position: relative; }
    .custom-style.custom-nycruns3 .thumbnail_main.thumbnail_video span.video_button {
      background: #dbdbdb;
      color: #333;
      height: 86px;
      width: 86px;
      margin-top: 1px;
      font-size: 36px;
      margin-left: 2px;
      padding: 25px 0 0 6px;
      margin-bottom: -31px;
      position: absolute;
      left: 0;
      top: 0; }
      .custom-style.custom-nycruns3 .thumbnail_main.thumbnail_video span.video_button:hover {
        background: #1faddc;
        color: #fff; }
  @media screen and (max-width: 991px) {
    .custom-style.custom-nycruns3 table.results_table th {
      padding-right: 5px; }
    .custom-style.custom-nycruns3 table.results_table th, .custom-style.custom-nycruns3 table.results_table td {
      font-size: 14px;
      padding-bottom: 0px; }
      .custom-style.custom-nycruns3 table.results_table th small, .custom-style.custom-nycruns3 table.results_table td small {
        font-size: 12px;
        font-weight: normal; }
      .custom-style.custom-nycruns3 table.results_table th span.finish_general, .custom-style.custom-nycruns3 table.results_table td span.finish_general {
        margin-top: 10px; }
      .custom-style.custom-nycruns3 table.results_table th.finished_row_header, .custom-style.custom-nycruns3 table.results_table td.finished_row_header {
        padding-top: 29px; }
        .custom-style.custom-nycruns3 table.results_table th.finished_row_header i, .custom-style.custom-nycruns3 table.results_table td.finished_row_header i {
          display: none; }
      .custom-style.custom-nycruns3 table.results_table th._pace-header, .custom-style.custom-nycruns3 table.results_table td._pace-header {
        padding-bottom: 20px; }
      .custom-style.custom-nycruns3 table.results_table th .finish_general, .custom-style.custom-nycruns3 table.results_table td .finish_general {
        margin-bottom: 3px;
        font-size: 16px; }
      .custom-style.custom-nycruns3 table.results_table th .group_general, .custom-style.custom-nycruns3 table.results_table td .group_general {
        margin-bottom: 5px;
        font-size: 18px; }
      .custom-style.custom-nycruns3 table.results_table th._race-history-td a, .custom-style.custom-nycruns3 table.results_table td._race-history-td a {
        display: block;
        margin-bottom: -10px; }
    .custom-style.custom-nycruns3 table.results_table .lap-info {
      width: 100%;
      margin-top: -7px;
      margin-bottom: 22px; }
      .custom-style.custom-nycruns3 table.results_table .lap-info td, .custom-style.custom-nycruns3 table.results_table .lap-info th {
        padding: 8px 4px; } }
  @media screen and (max-width: 991px) {
    .custom-style.custom-nycruns3 table.results_table.media_table table, .custom-style.custom-nycruns3 table.results_table.media_table tbody, .custom-style.custom-nycruns3 table.results_table.media_table tr, .custom-style.custom-nycruns3 table.results_table.media_table td {
      display: block;
      width: 100%; }
    .custom-style.custom-nycruns3 table.results_table.media_table ._photography-thumbnails-side-td {
      border-left: 0;
      margin-bottom: 20px; }
    .custom-style.custom-nycruns3 table.results_table.media_table .pic_preview, .custom-style.custom-nycruns3 table.results_table.media_table .pic_pricing {
      width: 100%;
      float: none;
      text-align: center; }
      .custom-style.custom-nycruns3 table.results_table.media_table .pic_preview img, .custom-style.custom-nycruns3 table.results_table.media_table .pic_pricing img {
        width: 95%;
        border-color: #f8f8f8;
        box-shadow: 0 1px 2px #ccc; }
    .custom-style.custom-nycruns3 table.results_table.media_table .pic_pricing {
      font-size: 14px;
      margin-top: -15px;
      font-weight: normal; }
      .custom-style.custom-nycruns3 table.results_table.media_table .pic_pricing b {
        font-size: 16px; } }
  .custom-style.custom-nycruns3 table.results_table .rank_general td small {
    margin-bottom: 0; }
    @media screen and (max-width: 991px) {
      .custom-style.custom-nycruns3 table.results_table .rank_general td small {
        margin-bottom: -3px; } }
  .custom-style.custom-nycruns3 table.results_table.race_history_view tr:first-child {
    display: none; }
  .custom-style.custom-nycruns3 table.results_table.race_history_view > tbody > tr > th {
    display: none; }
  .custom-style.custom-nycruns3 table.results_table a {
    color: #198aaf;
    display: inline-block;
    font-size: 16px; }
    .custom-style.custom-nycruns3 table.results_table a:hover {
      color: #1faddc; }
  .custom-style.custom-nycruns3 table.results_table small {
    display: inline-block;
    margin-bottom: 18px;
    font-size: 14px; }
    @media screen and (max-width: 991px) {
      .custom-style.custom-nycruns3 table.results_table small ._hspacer {
        display: none; }
      .custom-style.custom-nycruns3 table.results_table small ._text {
        display: block; } }
  .custom-style.custom-nycruns3 .table {
    background: #fff;
    box-shadow: 0 0 2px #d9d9d9; }
    .custom-style.custom-nycruns3 .table th {
      background: whitesmoke;
      border-color: #fff !important; }
      .custom-style.custom-nycruns3 .table th span.non-a {
        display: block;
        padding: 8px 0;
        min-width: 45px;
        color: #262626; }
      .custom-style.custom-nycruns3 .table th a:hover {
        background-color: #f7f7f7 !important;
        color: #333; }
      .custom-style.custom-nycruns3 .table th a .sort_arrow {
        color: #333 !important; }
    .custom-style.custom-nycruns3 .table td {
      color: #333;
      border-color: #fff !important;
      padding: 8px 4px; }
    .custom-style.custom-nycruns3 .table tr:hover {
      background-color: white; }
    .custom-style.custom-nycruns3 .table a {
      color: #a4d2e1; }
  .custom-style.custom-nycruns3 table.lap-info {
    background: #f7f7f7; }
    .custom-style.custom-nycruns3 table.lap-info th, .custom-style.custom-nycruns3 table.lap-info td {
      border: 1px dotted white; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19ub3JtYWxpemUuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcHJpbnQuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fZ2x5cGhpY29ucy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19zY2FmZm9sZGluZy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdmVuZG9yLXByZWZpeGVzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3ZhcmlhYmxlcy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGFiLWZvY3VzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19pbWFnZS5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL190eXBlLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL190ZXh0LW92ZXJmbG93LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2NvZGUuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fZ3JpZC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fZ3JpZC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdGFibGVzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fZm9ybXMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2Zvcm1zLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2J1dHRvbnMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX29wYWNpdHkuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fY29tcG9uZW50LWFuaW1hdGlvbnMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fZHJvcGRvd25zLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcmVzZXQtZmlsdGVyLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2J1dHRvbi1ncm91cHMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9faW5wdXQtZ3JvdXBzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX25hdnMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbmF2YmFyLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19uYXYtdmVydGljYWwtYWxpZ24uc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fYnJlYWRjcnVtYnMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wYWdlci5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19sYWJlbHMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2xhYmVscy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19iYWRnZXMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fanVtYm90cm9uLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3RodW1ibmFpbHMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fYWxlcnRzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19hbGVydHMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcHJvZ3Jlc3MtYmFycy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19wcm9ncmVzcy1iYXIuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbWVkaWEuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbGlzdC1ncm91cC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wYW5lbHMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3BhbmVscy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3dlbGxzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2Nsb3NlLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX21vZGFscy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL190b29sdGlwLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3BvcG92ZXJzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2Nhcm91c2VsLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3V0aWxpdGllcy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9ib290c3RyYXAtc2Fzcy1vZmZpY2lhbC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fY2VudGVyLWJsb2NrLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC1zYXNzLW9mZmljaWFsL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19oaWRlLXRleHQuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcmVzcG9uc2l2ZS11dGlsaXRpZXMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvYm9vdHN0cmFwLXNhc3Mtb2ZmaWNpYWwvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc3BvbnNpdmUtdmlzaWJpbGl0eS5zY3NzIiwibWFpbi5zY3NzIiwiX2N1c3RvbS1ueWNydW5zMy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGtCQUFpQjtBQ0FqQiw2REFBNEQ7QUFRNUQ7RUFDRSx5QkFBdUI7RUFDdkIsNEJBQTBCO0VBQzFCLGdDQUE4QixFQUMvQjs7QUFNRDtFQUNF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Q25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBU25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQy9CO0VBQVcsa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUMvQjtFQUFXLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDL0I7RUFBVyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQUNuRTtFQUErQyxrQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0Msa0JBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGtCQUFnQixFQUFJOztBQ2xTbkU7RUNrRVUsd0JEakVzQixFQUMvQjs7QUFDRDs7RUMrRFUsd0JEN0RzQixFQUMvQjs7QUhSRDtFR2NFLGlCQUFlO0VBQ2YsK0NBQTBDLEVBQzNDOztBSE5EO0VHU0UsNkRFa0JzRTtFRmpCdEUsaUJFdUI0QjtFRnRCNUIsc0JFa0NtQztFRmpDbkMsZ0JFbEIrQztFRm1CL0Msd0JFRjBCLEVGRzNCOztBQUdEOzs7O0VBSUUsc0JBQW9CO0VBQ3BCLG9CQUFrQjtFQUNsQixzQkFBb0IsRUFDckI7O0FIOENEO0VHeENFLGdCRS9CMkM7RUZnQzNDLHVCQUFxQixFQVd0QjtFQWJEO0lBTUksZ0JFakI0QztJRmtCNUMsNEJFaEI2QixFRmlCOUI7RUFFRDtJR3JEQSxzQkFBb0I7SUFFcEIsNENBQTBDO0lBQzFDLHNCQUFvQixFSG9EbkI7O0FIK0lIO0VHcklFLFdBQVMsRUFDVjs7QUhpSEQ7RUczR0Usd0JBQXNCLEVBQ3ZCOztBQUdEO0VJdkVFLGdCQURtQztFQUVuQyxpQkFBZTtFQUNmLGNBQVksRUp1RWI7O0FBR0Q7RUFDRSxvQkV3QjZCLEVGdkI5Qjs7QUFLRDtFQUNFLGNFc29CK0I7RUZyb0IvQixzQkUvQm1DO0VGZ0NuQyx3QkVsRTBCO0VGbUUxQix3QkV1b0JnQztFRnRvQmhDLG9CRVk2QjtFRDhFckIsa0NEekYrQjtFSXpGdkMsdUJKNEZvQztFSTNGcEMsaUJBQWU7RUFDZixjQUFZLEVKMkZiOztBQUdEO0VBQ0Usb0JBQWtCLEVBQ25COztBSHVHRDtFR2pHRSxrQkVoRG9FO0VGaURwRSxxQkVqRG9FO0VGa0RwRSxXQUFTO0VBQ1QsK0JFckdpRCxFRnNHbEQ7O0FBT0Q7RUFDRSxvQkFBa0I7RUFDbEIsWUFBVTtFQUNWLGFBQVc7RUFDWCxjQUFZO0VBQ1osWUFBVTtFQUNWLGtCQUFnQjtFQUNoQix3QkFBbUI7RUFDbkIsV0FBUyxFQUNWOztBQU9DO0VBRUUsa0JBQWdCO0VBQ2hCLGFBQVc7RUFDWCxjQUFZO0VBQ1osV0FBUztFQUNULG1CQUFpQjtFQUNqQixZQUFVLEVBQ1g7O0FLNUlIOztFQUVFLHNCSDBEK0I7RUd6RC9CLGtCSDBEMkI7RUd6RDNCLGtCSDBEMkI7RUd6RDNCLGdCSDBEK0IsRUdsRGhDO0VBYkQ7Ozs7Ozs7Ozs7Ozs7O0lBU0kscUJBQW1CO0lBQ25CLGdCQUFjO0lBQ2QsZ0JITCtDLEVHTWhEOztBQUdIOzs7RUFHRSxrQkh1Q29FO0VHdENwRSxxQkFBMEMsRUFNM0M7RUFKQzs7Ozs7Ozs7O0lBRUUsZ0JBQWMsRUFDZjs7QUFFSDs7O0VBR0Usa0JBQXVDO0VBQ3ZDLHFCQUEwQyxFQU0zQztFQVZEOzs7Ozs7Ozs7SUFRSSxnQkFBYyxFQUNmOztBQUdIO0VBQVUsaUJIUzhDLEVHVGxCOztBQUN0QztFQUFVLGlCSFMrQyxFR1RuQjs7QUFDdEM7RUFBVSxpQkhTNkMsRUdUakI7O0FBQ3RDO0VBQVUsaUJIUzhDLEVHVGxCOztBQUN0QztFQUFVLGlCSENvQixFR0RROztBQUN0QztFQUFVLGlCSFM4QyxFR1RsQjs7QUFNdEM7RUFDRSxrQkFBdUMsRUFDeEM7O0FBRUQ7RUFDRSxxQkhHb0U7RUdGcEUsaUJBQTBDO0VBQzFDLGtCQUFnQjtFQUNoQixrQkFBZ0IsRUFLakI7RUFIQztJQU5GO01BT0ksaUJBQWtDLEVBRXJDLEVBQUE7O0FBT0Q7O0VBRUUsZ0JBQTZELEVBQzlEOztBQUVEOztFQUVFLDJCSGthc0M7RUdqYXRDLGVBQWEsRUFDZDs7QUFHRDtFQUF1QixrQkFBZ0IsRUFBSTs7QUFDM0M7RUFBdUIsbUJBQWlCLEVBQUk7O0FBQzVDO0VBQXVCLG9CQUFrQixFQUFJOztBQUM3QztFQUF1QixxQkFBbUIsRUFBSTs7QUFDOUM7RUFBdUIscUJBQW1CLEVBQUk7O0FBRzlDO0VBQXVCLDJCQUF5QixFQUFJOztBQUNwRDtFQUF1QiwyQkFBeUIsRUFBSTs7QUFDcEQ7RUFBdUIsNEJBQTBCLEVBQUk7O0FBR3JEO0VBQ0UsZ0JIeEZpRCxFR3lGbEQ7O0FDbkdDO0VBQ0UsZ0JKWXlDLEVJWDFDOztBQUNEO0VBQ0UsZ0JBQTBCLEVBQzNCOztBQUxEO0VBQ0UsZ0JKd2VvQyxFSXZlckM7O0FBQ0Q7RUFDRSxnQkFBMEIsRUFDM0I7O0FBTEQ7RUFDRSxnQko0ZW9DLEVJM2VyQzs7QUFDRDtFQUNFLGdCQUEwQixFQUMzQjs7QUFMRDtFQUNFLGdCSmdmb0MsRUkvZXJDOztBQUNEO0VBQ0UsZ0JBQTBCLEVBQzNCOztBQUxEO0VBQ0UsZ0JKb2ZvQyxFSW5mckM7O0FBQ0Q7RUFDRSxnQkFBMEIsRUFDM0I7O0FENkdIO0VBR0UsYUFBVyxFQUNaOztBQUpEO0VFakhJLDJCTFl5QyxFS1gxQzs7QUFDRDtFQUNFLDJCQUFxQyxFQUN0Qzs7QUFMRDtFQUNFLDJCTHllb0MsRUt4ZXJDOztBQUNEO0VBQ0UsMkJBQXFDLEVBQ3RDOztBQUxEO0VBQ0UsMkJMNmVvQyxFSzVlckM7O0FBQ0Q7RUFDRSwyQkFBcUMsRUFDdEM7O0FBTEQ7RUFDRSwyQkxpZm9DLEVLaGZyQzs7QUFDRDtFQUNFLDJCQUFxQyxFQUN0Qzs7QUFMRDtFQUNFLDJCTHFmb0MsRUtwZnJDOztBQUNEO0VBQ0UsMkJBQXFDLEVBQ3RDOztBRmdJSDtFQUNFLHFCQUFpRDtFQUNqRCxxQkgxRW9FO0VHMkVwRSxrQ0g3SGlELEVHOEhsRDs7QUFPRDs7RUFFRSxlQUFhO0VBQ2IscUJBQTBDLEVBSzNDO0VBSkM7Ozs7SUFFRSxrQkFBZ0IsRUFDakI7O0FBV0g7RUFKRSxpQkFBZTtFQUNmLGtCQUFnQixFQUtqQjs7QUFJRDtFQVZFLGlCQUFlO0VBQ2Ysa0JBQWdCO0VBV2hCLG1CQUFpQixFQU9sQjtFQVREO0lBS0ksdUJBQXFCO0lBQ3JCLG1CQUFpQjtJQUNqQixvQkFBa0IsRUFDbkI7O0FBSUg7RUFDRSxlQUFhO0VBQ2IscUJIekhvRSxFRzBIckU7O0FBQ0Q7O0VBRUUsc0JIL0htQyxFR2dJcEM7O0FBQ0Q7RUFDRSxtQkFBaUIsRUFDbEI7O0FBQ0Q7RUFDRSxnQkFBYyxFQUNmOztBR3hMQztFQUVFLGNBQVk7RUFDWixnQkFBYyxFQUNmOztBSDJMSDtFR3pMSSxhQUFXLEVBQ1o7O0FINkxEO0VBTEY7SUFPTSxhQUFXO0lBQ1gsY0FBbUM7SUFDbkMsYUFBVztJQUNYLG1CQUFpQjtJSWxOckIsa0JBQWdCO0lBQ2hCLHlCQUF1QjtJQUN2QixxQkFBbUIsRUprTmhCO0VBQ0Q7SUFDRSxvQkhpbkI2QixFR2huQjlCLEVBQUE7O0FBU0w7O0VBR0UsY0FBWTtFQUNaLG1DSDFOaUQsRUcyTmxEOztBQUNEO0VBQ0UsZ0JBQWM7RUFDZCwyQkFBeUIsRUFDMUI7O0FBR0Q7RUFDRSxvQkhoTG9FO0VHaUxwRSxrQkhqTG9FO0VHa0xwRSxtQkhrbUJvRDtFR2ptQnBELGdDSHJPaUQsRUc2UGxEO0VBbkJHOzs7SUFDRSxrQkFBZ0IsRUFDakI7RUFYTDs7O0lBbUJJLGdCQUFjO0lBQ2QsZ0JBQWM7SUFDZCxzQkh0TWlDO0lHdU1qQyxnQkh4UCtDLEVHNlBoRDtJQTNCSDs7O01BeUJNLHdCQUFzQixFQUN2Qjs7QUFPTDs7RUFFRSxxQkFBbUI7RUFDbkIsaUJBQWU7RUFDZixpQ0h0UWlEO0VHdVFqRCxnQkFBYztFQUNkLG1CQUFpQixFQVdsQjtFQWpCRDs7Ozs7O0lBWWUsYUFBVyxFQUFJO0VBQzFCOzs7Ozs7SUFDRSx3QkFBc0IsRUFDdkI7O0FBS0w7RUFDRSxxQkhyT29FO0VHc09wRSxvQkFBa0I7RUFDbEIsc0JIek9tQyxFRzBPcEM7O0FSckVEOzs7O0VhMU5FLGdFUnNDeUUsRVFyQzFFOztBQUdEO0VBQ0Usa0JBQWdCO0VBQ2hCLGdCQUFjO0VBQ2QsZ0JSeXlCbUM7RVF4eUJuQywyQlJ5eUJtQztFUXh5Qm5DLG9CUjBGNkIsRVF6RjlCOztBQUdEO0VBQ0Usa0JBQWdCO0VBQ2hCLGdCQUFjO0VBQ2QsYVJteUJnQztFUWx5QmhDLHdCUm15QmdDO0VRbHlCaEMsb0JSbUY2QjtFUWxGN0IsZ0RBQTBDLEVBUTNDO0VBTkM7SUFDRSxZQUFVO0lBQ1YsaUJBQWU7SUFDZixtQkFBaUI7SUFDakIsa0JBQWdCLEVBQ2pCOztBYndMSDtFYW5MRSxnQkFBYztFQUNkLGdCQUEwQztFQUMxQyxrQkFBdUM7RUFDdkMsaUJBQWdDO0VBQ2hDLHNCUmtCbUM7RVFqQm5DLHVCQUFxQjtFQUNyQix1QkFBcUI7RUFDckIsZ0JScEMrQztFUXFDL0MsMkJSK3dCbUM7RVE5d0JuQyx3QlJneEJnQztFUS93QmhDLG9CUjBENkIsRVEvQzlCO0VBdEJEO0lBZUksWUFBVTtJQUNWLG9CQUFrQjtJQUNsQixnQkFBYztJQUNkLHVCQUFxQjtJQUNyQiwrQkFBNkI7SUFDN0Isa0JBQWdCLEVBQ2pCOztBQUlIO0VBQ0UsbUJSaXdCaUM7RVFod0JqQyxvQkFBa0IsRUFDbkI7O0FDM0REO0VDSEUsb0JBQWtCO0VBQ2xCLG1CQUFpQjtFQUNqQixvQkFBNEI7RUFDNUIscUJBQTRCLEVEWTdCO0VBWkQ7SUhNSSxjQUFZO0lBQ1osZ0JBQWMsRUFDZjtFQUNEO0lBQ0UsYUFBVyxFQUNaO0VHUkQ7SUFIRjtNQUlJLGNUa1V1RCxFUzFUMUQsRUFBQTtFQU5DO0lBTkY7TUFPSSxjVG9VdUQsRVMvVDFELEVBQUE7RUFIQztJQVRGO01BVUksZVRzVXdELEVTcFUzRCxFQUFBOztBQVFEO0VDdkJFLG9CQUFrQjtFQUNsQixtQkFBaUI7RUFDakIsb0JBQTRCO0VBQzVCLHFCQUE0QixFRHNCN0I7RUhsQkM7SUFFRSxjQUFZO0lBQ1osZ0JBQWMsRUFDZjtFR1lIO0lIVkksYUFBVyxFQUNaOztBR2tCSDtFQ3ZCRSxvQkFBNEI7RUFDNUIscUJBQTRCLEVEd0I3QjtFSDNCQztJQUVFLGNBQVk7SUFDWixnQkFBYyxFQUNmO0VHcUJIO0lIbkJJLGFBQVcsRUFDWjs7QUtWRDtFQUNFLG9CQUFrQjtFQUVsQixpQkFBZTtFQUVmLG9CQUF1QztFQUN2QyxxQkFBdUMsRUFDeEM7O0FBU0Q7RUFDRSxhQUFXLEVBQ1o7O0FBTUM7RUFDRSxpQkFBMkMsRUFDNUM7O0FBRkQ7RUFDRSxrQkFBMkMsRUFDNUM7O0FBRkQ7RUFDRSxZQUEyQyxFQUM1Qzs7QUFGRDtFQUNFLGtCQUEyQyxFQUM1Qzs7QUFGRDtFQUNFLGtCQUEyQyxFQUM1Qzs7QUFGRDtFQUNFLFlBQTJDLEVBQzVDOztBQUZEO0VBQ0Usa0JBQTJDLEVBQzVDOztBQUZEO0VBQ0Usa0JBQTJDLEVBQzVDOztBQUZEO0VBQ0UsWUFBMkMsRUFDNUM7O0FBRkQ7RUFDRSxrQkFBMkMsRUFDNUM7O0FBRkQ7RUFDRSxrQkFBMkMsRUFDNUM7O0FBRkQ7RUFDRSxhQUEyQyxFQUM1Qzs7QUFrQkQ7RUFDRSxhQUFXLEVBQ1o7O0FBUEQ7RUFDRSxpQkFBMkMsRUFDNUM7O0FBRkQ7RUFDRSxrQkFBMkMsRUFDNUM7O0FBRkQ7RUFDRSxZQUEyQyxFQUM1Qzs7QUFGRDtFQUNFLGtCQUEyQyxFQUM1Qzs7QUFGRDtFQUNFLGtCQUEyQyxFQUM1Qzs7QUFGRDtFQUNFLFlBQTJDLEVBQzVDOztBQUZEO0VBQ0Usa0JBQTJDLEVBQzVDOztBQUZEO0VBQ0Usa0JBQTJDLEVBQzVDOztBQUZEO0VBQ0UsWUFBMkMsRUFDNUM7O0FBRkQ7RUFDRSxrQkFBMkMsRUFDNUM7O0FBRkQ7RUFDRSxrQkFBMkMsRUFDNUM7O0FBRkQ7RUFDRSxhQUEyQyxFQUM1Qzs7QUFQRDtFQUNFLFlBQVUsRUFDWDs7QUFQRDtFQUNFLGdCQUEwQyxFQUMzQzs7QUFGRDtFQUNFLGlCQUEwQyxFQUMzQzs7QUFGRDtFQUNFLFdBQTBDLEVBQzNDOztBQUZEO0VBQ0UsaUJBQTBDLEVBQzNDOztBQUZEO0VBQ0UsaUJBQTBDLEVBQzNDOztBQUZEO0VBQ0UsV0FBMEMsRUFDM0M7O0FBRkQ7RUFDRSxpQkFBMEMsRUFDM0M7O0FBRkQ7RUFDRSxpQkFBMEMsRUFDM0M7O0FBRkQ7RUFDRSxXQUEwQyxFQUMzQzs7QUFGRDtFQUNFLGlCQUEwQyxFQUMzQzs7QUFGRDtFQUNFLGlCQUEwQyxFQUMzQzs7QUFGRDtFQUNFLFlBQTBDLEVBQzNDOztBQWtCRDtFQUNFLGlCQUFpRCxFQUNsRDs7QUFGRDtFQUNFLHVCQUFpRCxFQUNsRDs7QUFGRDtFQUNFLHdCQUFpRCxFQUNsRDs7QUFGRDtFQUNFLGtCQUFpRCxFQUNsRDs7QUFGRDtFQUNFLHdCQUFpRCxFQUNsRDs7QUFGRDtFQUNFLHdCQUFpRCxFQUNsRDs7QUFGRDtFQUNFLGtCQUFpRCxFQUNsRDs7QUFGRDtFQUNFLHdCQUFpRCxFQUNsRDs7QUFGRDtFQUNFLHdCQUFpRCxFQUNsRDs7QUFGRDtFQUNFLGtCQUFpRCxFQUNsRDs7QUFGRDtFQUNFLHdCQUFpRCxFQUNsRDs7QUFGRDtFQUNFLHdCQUFpRCxFQUNsRDs7QUFGRDtFQUNFLG1CQUFpRCxFQUNsRDs7QUZFTDtFRXJDRTtJQUNFLGFBQVcsRUFDWjtFQU1DO0lBQ0UsaUJBQTJDLEVBQzVDO0VBRkQ7SUFDRSxrQkFBMkMsRUFDNUM7RUFGRDtJQUNFLFlBQTJDLEVBQzVDO0VBRkQ7SUFDRSxrQkFBMkMsRUFDNUM7RUFGRDtJQUNFLGtCQUEyQyxFQUM1QztFQUZEO0lBQ0UsWUFBMkMsRUFDNUM7RUFGRDtJQUNFLGtCQUEyQyxFQUM1QztFQUZEO0lBQ0Usa0JBQTJDLEVBQzVDO0VBRkQ7SUFDRSxZQUEyQyxFQUM1QztFQUZEO0lBQ0Usa0JBQTJDLEVBQzVDO0VBRkQ7SUFDRSxrQkFBMkMsRUFDNUM7RUFGRDtJQUNFLGFBQTJDLEVBQzVDO0VBa0JEO0lBQ0UsYUFBVyxFQUNaO0VBUEQ7SUFDRSxpQkFBMkMsRUFDNUM7RUFGRDtJQUNFLGtCQUEyQyxFQUM1QztFQUZEO0lBQ0UsWUFBMkMsRUFDNUM7RUFGRDtJQUNFLGtCQUEyQyxFQUM1QztFQUZEO0lBQ0Usa0JBQTJDLEVBQzVDO0VBRkQ7SUFDRSxZQUEyQyxFQUM1QztFQUZEO0lBQ0Usa0JBQTJDLEVBQzVDO0VBRkQ7SUFDRSxrQkFBMkMsRUFDNUM7RUFGRDtJQUNFLFlBQTJDLEVBQzVDO0VBRkQ7SUFDRSxrQkFBMkMsRUFDNUM7RUFGRDtJQUNFLGtCQUEyQyxFQUM1QztFQUZEO0lBQ0UsYUFBMkMsRUFDNUM7RUFQRDtJQUNFLFlBQVUsRUFDWDtFQVBEO0lBQ0UsZ0JBQTBDLEVBQzNDO0VBRkQ7SUFDRSxpQkFBMEMsRUFDM0M7RUFGRDtJQUNFLFdBQTBDLEVBQzNDO0VBRkQ7SUFDRSxpQkFBMEMsRUFDM0M7RUFGRDtJQUNFLGlCQUEwQyxFQUMzQztFQUZEO0lBQ0Us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LHVCQUFxQjtFQUNyQixvQkFBa0I7RUFDbEIsa0JBQWdCO0VBQ2hCLHdCQUFzQjtFQUN0QixxQkFBbUI7RUFDbkIsaUJBQWUsRUFDaEI7O0FBQ0Q7O0VBRUUsZUFBYTtFQUNiLG1CQUFpQixFQUNsQjs7QUFNRDs7Ozs7O0VBS0kscUJkekN3QyxFYzBDekM7O0FBS0Q7Ozs7O0VBRUUscUJkakR3QyxFY2tEekM7O0FBT0M7Ozs7O0VBQ0UscUJkMURzQyxFYzJEdkM7O0FBVUw7RUFFRSxrQkFBeUM7RUFDekMscUJBQTRDO0VBRTVDLGtCQUFnQixFQU9qQjtFQVpEOzs7OztJQVNJLGlCQUFlO0lBQ2Ysa0JBQWdCLEVBQ2pCOztBQ3pPRDs7O0VBQ0UsY2Y2SStHO0VlNUkvRyxtQmY2QjRCO0VlNUI1QixpQmZwQm9EO0VlcUJwRCxrQmZpQzJCO0VlaEMzQixvQmZvQzJCLEVlbkM1Qjs7QUFFRDs7O0VBQ0UsY2ZxSStHO0VlcEkvRyxtQmZvSStHLEVlbkloSDs7QUFFRDs7Ozs7OztFQUVFLGNBQVksRUFDYjs7QURzT0g7RUNyUEksY2Y2SStHO0VlNUkvRyxtQmY2QjRCO0VlNUI1QixpQmZwQm9EO0VlcUJwRCxrQmZpQzJCO0VlaEMzQixvQmZvQzJCLEVlbkM1Qjs7QURnUEg7RUM3T0ksY2ZxSStHO0VlcEkvRyxtQmZvSStHLEVlbkloSDs7QUFFRDs7RUFFRSxjQUFZLEVBQ2I7O0FEME9EO0VBQ0UsY2Q3RytHO0VjOEcvRyxtQmQ3TjRCO0VjOE41QixpQmQ5UW9EO0VjK1FwRCxrQmR6TjJCLEVjME41Qjs7QUMvUEQ7OztFQUNFLGNmMkk4RztFZTFJOUcsb0JmMEI0QjtFZXpCNUIsaUJmckJvRDtFZXNCcEQsc0JmZ0NpQztFZS9CakMsb0JmbUMyQixFZWxDNUI7O0FBRUQ7OztFQUNFLGNmbUk4RztFZWxJOUcsbUJma0k4RyxFZWpJL0c7O0FBRUQ7Ozs7Ozs7RUFFRSxjQUFZLEVBQ2I7O0FEbVBIO0VDbFFJLGNmMkk4RztFZTFJOUcsb0JmMEI0QjtFZXpCNUIsaUJmckJvRDtFZXNCcEQsc0JmZ0NpQztFZS9CakMsb0JmbUMyQixFZWxDNUI7O0FBRUQ7RUFDRSxjZm1JOEc7RWVsSTlHLG1CZmtJOEcsRWVqSS9HOztBRHdQSDs7RUNwUEksY0FBWSxFQUNiOztBRG1QSDtFQUtJLGNkNUg4RztFYzZIOUcsb0JkN080QjtFYzhPNUIsaUJkNVJvRDtFYzZScEQsc0Jkdk9pQyxFY3dPbEM7O0FBUUg7RUFFRSxvQkFBa0IsRUFNbkI7RUFSRDtJQU1JLHVCQUEwQyxFQUMzQzs7QUFHSDtFQUNFLG9CQUFrQjtFQUNsQixRQUFNO0VBQ04sVUFBUTtFQUNSLFlBQVU7RUFDVixnQkFBYztFQUNkLGFkMUp5RjtFYzJKekYsY2QzSnlGO0VjNEp6RixtQmQ1SnlGO0VjNkp6RixvQkFBa0I7RUFDbEIsc0JBQW9CLEVBQ3JCOztBQUNEO0VBQ0UsYWQvSmdIO0VjZ0toSCxjZGhLZ0g7RWNpS2hILG1CZGpLZ0gsRWNrS2pIOztBQUNEO0VBQ0UsYWRsS2lIO0VjbUtqSCxjZG5LaUg7RWNvS2pILG1CZHBLaUgsRWNxS2xIOztBQUdEOzs7Ozs7Ozs7O0VDM1dJLGdCZjRkb0MsRWUzZHJDOztBRDBXSDtFQ3ZXSSx1QmZ3ZG9DO0VEeGE5QixrRGdCL0M4QyxFQU1yRDtFQUxDO0lBQ0UsdUJBQXdDO0loQjZDcEMsbUVnQjVDMEUsRUFFL0U7O0FBR0g7RUFDRSxnQmY4Y29DO0VlN2NwQyx1QmY2Y29DO0VlNWNwQywyQmY2Y29DLEVlNWNyQzs7QUQwVkg7RUN2VkksZ0Jmd2NvQyxFZXZjckM7O0FEeVZIOzs7Ozs7Ozs7O0VDOVdJLGdCZm9lb0MsRWVuZXJDOztBRDZXSDtFQzFXSSx1QmZnZW9DO0VEaGI5QixrRGdCL0M4QyxFQU1yRDtFRG1XSDtJQ3ZXTSx1QkFBd0M7SWhCNkNwQyxtRWdCNUMwRSxFQUUvRTs7QUFHSDtFQUNFLGdCZnNkb0M7RWVyZHBDLHVCZnFkb0M7RWVwZHBDLDJCZnFkb0MsRWVwZHJDOztBQUVEO0VBQ0UsZ0JmZ2RvQyxFZS9jckM7O0FBL0JEOzs7Ozs7Ozs7O0VBVUUsZ0Jmd2VvQyxFZXZlckM7O0FBRUQ7RUFDRSx1QmZvZW9DO0VEcGI5QixrRGdCL0M4QyxFQU1yRDtFRHNXSDtJQzFXTSx1QkFBd0M7SWhCNkNwQyxtRWdCNUMwRSxFQUUvRTs7QUR1V0w7RUNuV0ksZ0JmMGRvQztFZXpkcEMsdUJmeWRvQztFZXhkcEMsMkJmeWRvQyxFZXhkckM7O0FBRUQ7RUFDRSxnQmZvZG9DLEVlbmRyQzs7QURtV0Q7RUFDRyxXQUFnQyxFQUNsQzs7QUFKSDtFQU1LLFFBQU0sRUFDUjs7QUFTSDtFQUNFLGdCQUFjO0VBQ2QsaUJBQWU7RUFDZixxQkFBbUI7RUFDbkIsZ0JBQWdDLEVBQ2pDOztBQWtCQztFQW1FRjtJQWhFTSx1QkFBcUI7SUFDckIsa0JBQWdCO0lBQ2hCLHdCQUFzQixFQUN2QjtFQUdEO0lBQ0UsdUJBQXFCO0lBQ3JCLGFBQVc7SUFDWCx3QkFBc0IsRUFDdkI7RUFzREw7SUFsRE0sdUJBQXFCLEVBQ3RCO0VBRUQ7SUFDRSx1QkFBcUI7SUFDckIsd0JBQXNCLEVBT3ZCO0lBc0NMOzs7TUF4Q1EsYUFBVyxFQUNaO0VBdUNQO0lBbENNLGFBQVcsRUFDWjtFQWlDTDtJQTlCTSxrQkFBZ0I7SUFDaEIsd0JBQXNCLEVBQ3ZCO0VBSUQ7O0lBRUUsdUJBQXFCO0lBQ3JCLGVBQWE7SUFDYixrQkFBZ0I7SUFDaEIsd0JBQXNCLEVBS3ZCO0lBY0w7O01BaEJRLGlCQUFlLEVBQ2hCO0VBRUg7O0lBRUUsb0JBQWtCO0lBQ2xCLGdCQUFjLEVBQ2Y7RUFHRDtJQUNFLFFBQU0sRUFDUCxFQUFBOztBQWVMOzs7O0VBU0ksZUFBYTtFQUNiLGtCQUFnQjtFQUNoQixrQkFBeUMsRUFDMUM7O0FBR0Q7O0VBRUUsa0JBQWtFLEVBQ25FOztBQUdEO0VKbGdCQSxvQkFBNEI7RUFDNUIscUJBQTRCLEVJbWdCM0I7RUF2Qkg7SVI3ZUksY0FBWTtJQUNaLGdCQUFjLEVBQ2Y7RVEyZUg7SVJ6ZUksYUFBVyxFQUNaOztBUW1nQkQ7RUFDRTtJQUNFLG1CQUFpQjtJQUNqQixrQkFBZ0I7SUFDaEIsa0JBQXlDLEVBQzFDLEVBQUE7O0FBaENMO0VBd0NJLGFBQStCLEVBQ2hDOztBQU9DO0VBaERKO0lBa0RRLHlCQUFpRSxFQUNsRSxFQUFBOztBQUlIO0VBQ0U7SUFDRSxrQkFBMEMsRUFDM0MsRUFBQTs7QUU5aUJQO0VBQ0UsdUJBQXFCO0VBQ3JCLGtCQUFnQjtFQUNoQixxQmhCMElxQztFZ0J6SXJDLG9CQUFrQjtFQUNsQix3QkFBc0I7RUFDdEIsZ0NBQTBCO0VBQTFCLDRCQUEwQjtFQUMxQixpQkFBZTtFQUNmLHdCQUFzQjtFQUN0QiwrQkFBNkI7RUFDN0IscUJBQW1CO0VDNkJuQixtQmpCZ0Q4QjtFaUIvQzlCLGlCakJHNEI7RWlCRjVCLHNCakJjbUM7RWlCYm5DLG9CakIyRDZCO0VENEc3QiwyQmlCck15QjtFakJzTXRCLHdCaUJ0TXNCO0VqQnVNckIsdUJpQnZNcUI7RWpCd01qQixtQmlCeE1pQixFQWlDMUI7RUE1Qkc7SWZyQkYsc0JBQW9CO0lBRXBCLDRDQUEwQztJQUMxQyxzQkFBb0IsRWVxQmpCO0VBR0g7SUFHRSxhaEJxSGlDO0lnQnBIakMsdUJBQXFCLEVBQ3RCO0VBNUJIO0lBZ0NJLFlBQVU7SUFDVix3QkFBc0I7SWpCNEJoQixrRGlCM0I4QyxFQUNyRDtFQUVEOzs7Ozs7SUFHRSxxQmhCK0t3QztJZ0I5S3hDLHNCQUFvQjtJRTlDdEIsZUYrQ3NCO0lFNUN0QiwyQkFBa0M7SW5CK0QxQixrQmlCbEJrQixFQUN6Qjs7QUFPSDtFQ3JERSxhakJpSm1DO0VpQmhKbkMsd0JqQmlKbUM7RWlCaEpuQyxvQmpCaUptQyxFZ0I1RnBDO0VDbkRDOztJQU1FLGFqQnVJaUM7SWlCdElqQywyQkFBMEM7SUFDdEMsdUJBQWtDLEVBQ3ZDO0VEd0NIOztJQ3BDSSx3QkFBc0IsRUFDdkI7RURtQ0g7Ozs7Ozs7SUN6Qk0sd0JqQnNIK0I7SWlCckgzQixvQmpCc0gyQixFaUJySGhDO0VBR0g7SUFDRSxhakJnSGlDO0lpQi9HakMsd0JqQjhHaUMsRWlCN0dsQzs7QURvQkg7RUN4REUsYWpCcUptQztFaUJwSm5DLDJCakJVMkM7RWlCVDNDLHVCakJxSjBELEVnQjdGM0Q7RUN0REM7O0lBTUUsYWpCMklpQztJaUIxSWpDLDJCQUEwQztJQUN0Qyx1QkFBa0MsRUFDdkM7RUFDRDs7SUFHRSx3QkFBc0IsRUFDdkI7RUFJQzs7Ozs7OztJQU1FLDJCakJqQnVDO0lpQmtCbkMsdUJqQjBIa0QsRWlCekh2RDtFRDBCTDtJQ3RCSSxnQmpCdkJ5QztJaUJ3QnpDLHdCakJrSGlDLEVpQmpIbEM7O0FEd0JIO0VDNURFLGFqQnlKbUM7RWlCeEpuQywyQmpCVzZCO0VpQlY3Qix1QmpCeUowRCxFZ0I3RjNEO0VBRkQ7O0lDbERJLGFqQitJaUM7SWlCOUlqQywyQkFBMEM7SUFDdEMsdUJBQWtDLEVBQ3ZDO0VEK0NIOztJQzNDSSx3QkFBc0IsRUFDdkI7RUFJQzs7Ozs7OztJQU1FLDJCakJoQnlCO0lpQmlCckIsdUJqQjhIa0QsRWlCN0h2RDtFRDhCTDtJQzFCSSxnQmpCdEIyQjtJaUJ1QjNCLHdCakJzSGlDLEVpQnJIbEM7O0FENEJIO0VDaEVFLGFqQjZKbUM7RWlCNUpuQywyQmpCWTZCO0VpQlg3Qix1QmpCNkp1RCxFZ0I3RnhEO0VDOURDOztJQU1FLGFqQm1KaUM7SWlCbEpqQywyQkFBMEM7SUFDdEMsdUJBQWtDLEVBQ3ZDO0VEbURIOztJQy9DSSx3QkFBc0IsRUFDdkI7RUQ4Q0g7Ozs7Ozs7SUNwQ00sMkJqQmZ5QjtJaUJnQnJCLHVCakJrSStDLEVpQmpJcEQ7RUFHSDtJQUNFLGdCakJyQjJCO0lpQnNCM0Isd0JqQjBIaUMsRWlCekhsQzs7QURnQ0g7RUNwRUUsYWpCaUttQztFaUJoS25DLDJCakJhNkI7RWlCWjdCLHVCakJpSzBELEVnQjdGM0Q7RUNsRUM7O0lBTUUsYWpCdUppQztJaUJ0SmpDLDJCQUEwQztJQUN0Qyx1QkFBa0MsRUFDdkM7RUFDRDs7SUFHRSx3QkFBc0IsRUFDdkI7RUFJQzs7Ozs7OztJQU1FLDJCakJkeUI7SWlCZXJCLHVCakJzSWtELEVpQnJJdkQ7RURzQ0w7SUNsQ0ksZ0JqQnBCMkI7SWlCcUIzQix3QmpCOEhpQyxFaUI3SGxDOztBRG9DSDtFQ3hFRSxhakJxS21DO0VpQnBL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RUE5SEM7SUFDRSxhM0JuQzJDLEUyQnlDNUM7SUFMQztNQUVFLGdCM0I1QjZFO00yQjZCN0UsK0IzQjVCZ0QsRTJCNkJqRDtFQVZMO0lBY0ksYTNCakRtQyxFMkJrRHBDO0VBR0M7SUFDRSxhM0JqRHlDLEUyQndEMUM7SUExQkw7TUF1QlEsYTNCcER1QztNMkJxRHZDLCtCM0JwRDhDLEUyQnFEL0M7RUFHRDtJQUdFLGEzQjFEdUM7STJCMkR2QywyQjNCMURtRSxFMkIyRHBFO0VBR0Q7SUFHRSxhM0JoRXVDO0kyQmlFdkMsK0IzQmhFOEMsRTJCaUUvQztFQXpDUDtJQThDSSxvQjNCNUQyQyxFMkJvRTVDO0lBdERIO01BaURNLHdCM0JqRXlDLEUyQmtFMUM7SUFsREw7TUFvRE0sd0IzQm5FeUMsRTJCb0UxQztFQUdIOztJQUVFLHVCM0IzRitELEUyQjRGaEU7RUEzREg7SUFvRVEsMkIzQjlGbUU7STJCK0ZuRSxhM0JoR3VDLEUyQmlHeEM7RUFHSDtJQXpFSjtNQTZFVSxhM0IzR3FDLEUyQmlIdEM7TUFuRlQ7UUFnRlksYTNCN0dtQztRMkI4R25DLCtCM0I3RzBDLEUyQjhHM0M7SUFHRDtNQUdFLGEzQm5IbUM7TTJCb0huQywyQjNCbkgrRCxFMkJvSGhFO0lBMUZYO01BZ0dZLGEzQnpIbUM7TTJCMEhuQywrQjNCekgwQyxFMkIwSDNDLEVBQUE7RUFsR1g7SUE4R0ksYTNCNUkyQyxFMkJnSjVDO0lBbEhIO01BZ0hNLGEzQjdJeUMsRTJCOEkxQztFQUdIO0lBQ0UsYTNCbkoyQyxFMkIrSjVDO0lBWEM7TUFFRSxhM0JySnlDLEUyQnNKMUM7SUF6SEw7OztNQThIUSxhM0J2SnVDLEUyQndKeEM7O0FBT1A7RUFDRSx3QjNCL0k4QztFMkJnSjlDLHVCM0IvSXlFLEUyQmdSMUU7RUEvSEM7SUFDRSxnQjNCL0lpRSxFMkJxSmxFO0lBWEg7TUFRTSxhM0J4STBDO00yQnlJMUMsK0IzQnhJaUQsRTJCeUlsRDtFQVZMO0lBY0ksZ0IzQjdKaUUsRTJCOEpsRTtFQWZIO0lBbUJNLGdCM0I3SitELEUyQm9LaEU7SUFMQztNQUVFLGEzQmhLd0M7TTJCaUt4QywrQjNCaEsrQyxFMkJpS2hEO0VBekJQO0lBK0JRLGEzQnhLd0M7STJCeUt4QywyQjNCdEttRSxFMkJ1S3BFO0VBR0Q7SUFHRSxhM0I1S3dDO0kyQjZLeEMsK0IzQjVLK0MsRTJCNktoRDtFQXpDUDtJQStDSSxvQjNCeks0QyxFMkJpTDdDO0lBdkRIO01Ba0RNLHdCM0I5SzBDLEUyQitLM0M7SUFDRDtNQUNFLHdCM0JoTDBDLEUyQmlMM0M7RUFHSDs7SUFFRSx1QkFBNEMsRUFDN0M7RUE1REg7SUFvRVEsMkIzQjFNbUU7STJCMk1uRSxhM0I5TXdDLEUyQitNekM7RUFHSDtJQUdJO01BQ0UsdUIzQjFOaUUsRTJCMk5sRTtJQTlFVDtNQWdGVSwyQjNCN05pRSxFMkI4TmxFO0lBakZUO01BbUZVLGdCM0I3TjJELEUyQm1PNUQ7TUFMQztRQUVFLGEzQi9Ob0M7UTJCZ09wQywrQjNCL04yQyxFMkJnTzVDO0lBeEZYO01BOEZZLGEzQnZPb0M7TTJCd09wQywyQjNCck8rRCxFMkJzT2hFO0lBaEdYO01Bc0dZLGEzQjNPb0M7TTJCNE9wQywrQjNCM08yQyxFMkI0TzVDLEVBQUE7RUFNVDtJQUNFLGdCM0J6UGlFLEUyQjZQbEU7SUFIQztNQUNFLGEzQjFQMEMsRTJCMlAzQztFQWxITDtJQXNISSxnQjNCaFFpRSxFMkI0UWxFO0lBbElIO01BeUhNLGEzQmxRMEMsRTJCbVEzQztJQTFITDs7O01BK0hRLGEzQnBRd0MsRTJCcVF6Qzs7QUU5b0JQO0VBQ0UsbUI3QjJ3QmtDO0U2QjF3QmxDLHFCN0IwRG9FO0U2QnpEcEUsa0JBQWdCO0VBQ2hCLDJCN0Iwd0JxQztFNkJ6d0JyQyxvQjdCbUc2QixFNkJwRjlCO0VBcEJEO0lBUUksdUJBQXFCLEVBT3RCO0lBZkg7TUFXTSxlQUF3QztNQUN4QyxnQkFBYztNQUNkLGE3Qm13QjhCLEU2Qmx3Qi9CO0VBR0g7SUFDRSxnQjdCVCtDLEU2QlVoRDs7QUNyQkg7RUFDRSx1QkFBcUI7RUFDckIsaUJBQWU7RUFDZixnQkFBK0I7RUFDL0Isb0I5QnNHNkIsRThCbkM5QjtFQXZFRDtJQU9JLGlCQUFlLEVBMEJoQjtJQWpDSDs7TUFVTSxvQkFBa0I7TUFDbEIsYUFBVztNQUNYLG1COUJnRjBCO004Qi9FMUIsc0I5QitDK0I7TThCOUMvQix1QkFBcUI7TUFDckIsZ0I5QkR1QztNOEJFdkMsd0I5QjJhcUM7TThCMWFyQyx3QjlCMmFxQztNOEIxYXJDLG1CQUFpQixFQUNsQjtJQW5CTDs7TUF1QlEsZ0JBQWM7TU5YcEIsZ0N4QjhGNkI7TXdCN0YxQiw2QnhCNkYwQixFOEJqRnhCO0lBR0Q7O01OeEJKLGlDeEJzRzZCO013QnJHMUIsOEJ4QnFHMEIsRThCM0V4QjtFQU1IOzs7SUFFRSxnQjlCTjBDO0k4Qk8xQywyQjlCNUI2QztJOEI2QjdDLG9COUJ1WnFDLEU4QnRadEM7RUExQ0w7Ozs7SUFrRE0sWUFBVTtJQUNWLGE5QitZcUM7SThCOVlyQywyQjlCdEN1QztJOEJ1Q3ZDLHVCOUJ2Q3VDO0k4QndDdkMsaUJBQWUsRUFDaEI7RUFJRDs7Ozs7O0lBTUUsZ0I5QnRENkM7SThCdUQ3Qyx3QjlCcVlxQztJOEJwWXJDLG9COUJxWXFDO0k4QnBZckMscUI5QndKc0MsRThCdkp2Qzs7QUFRTDs7RUMxRU0sb0IvQjRGMEI7RStCM0YxQixpQi9CNkNrRCxFK0I1Q25EOztBRHdFTDs7RU5qRUUsZ0N4QitGNkI7RXdCOUYxQiw2QnhCOEYwQixFK0JqR3hCOztBRG1FUDs7RU56RUUsaUN4QnVHNkI7RXdCdEcxQiw4QnhCc0cwQixFK0IzRnhCOztBQWZIOztFQUVFLG1CL0IrRjBCO0UrQjlGMUIsaUIvQjhDa0QsRStCN0NuRDs7QUFFQzs7RVBLSixnQ3hCZ0c2QjtFd0IvRjFCLDZCeEIrRjBCLEUrQmxHeEI7O0FBR0Q7O0VQVEosaUN4QndHNkI7RXdCdkcxQiw4QnhCdUcwQixFK0I1RnhCOztBQ2RQO0VBQ0UsaUJBQWU7RUFDZixnQkFBK0I7RUFDL0Isa0JBQWdCO0VBQ2hCLG9CQUFrQixFQTRDbkI7RUFoREQ7STFCVUksY0FBWTtJQUNaLGdCQUFjLEVBQ2Y7RUFDRDtJQUNF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O0VBTUQ7Ozs7Ozs7O0lBRUUsa0JBQWdCLEVBQ2pCOztBQWpHVDtFQXNHSSxXQUFTO0VBQ1Qsa0JBQWdCLEVBQ2pCOztBQVNIO0VBQ0UscUI5Q3ZKb0UsRThDa0xyRTtFQTVCRDtJQUtJLGtCQUFnQjtJQUNoQixvQjlDaEgyQixFOENxSDVCO0lBWEg7TUFTTSxpQkFBZSxFQUNoQjtFQVZMO0lBY0ksa0JBQWdCLEVBTWpCO0lBcEJIOztNQWtCTSw0QjlDeWQ0QixFOEN4ZDdCO0VBbkJMO0lBdUJJLGVBQWEsRUFJZDtJQUhDO01BQ0UsK0I5Q2tkNEIsRThDamQ3Qjs7QUFNTDtFQ3BQRSxvQi9DbXNCZ0MsRThDN2NqQztFQ3BQQztJQUNFLGdCL0NNNkM7SStDTDdDLDJCL0Nnc0JpQztJK0MvckJqQyxvQi9DOHJCOEIsRStDcnJCL0I7SURzT0g7TUM1T00sd0IvQzJyQjRCLEUrQzFyQjdCO0lEMk9MO01Dek9NLGdCL0N5ckIrQjtNK0N4ckIvQiwyQi9DSDJDLEUrQ0k1QztFQUdEO0lBQ0UsMkIvQ2tyQjRCLEUrQ2pyQjdCOztBRHFPTDtFQ3ZQRSx1Qi9DYzJDLEU4QzJPNUM7RUFGRDtJQ3BQSSxhL0Ntc0I4QjtJK0Nsc0I5QiwyQi9DVXlDO0krQ1R6Qyx1Qi9DU3lDLEUrQ0ExQztJQVBDO01BQ0UsMkIvQ011QyxFK0NMeEM7SUQ4T0w7TUM1T00sZ0IvQ0d1QztNK0NGdkMsd0IvQzByQjRCLEUrQ3pyQjdCO0VEME9MO0lDdE9NLDhCL0NIdUMsRStDSXhDOztBRHdPTDtFQzFQRSx1Qi9DNGU2RSxFOENoUDlFO0VBRkQ7SUN2UEksZ0IvQ3Vlb0M7SStDdGVwQywyQi9DdWVvQztJK0N0ZXBDLHVCL0N1ZTJFLEUrQzlkNUU7SUFQQztNQUNFLDJCL0NvZXlFLEUrQ25lMUU7SURpUEw7TUMvT00sZ0IvQ2dla0M7TStDL2RsQywyQi9DOGRrQyxFK0M3ZG5DO0VENk9MO0lDek9NLDhCL0MyZHlFLEUrQzFkMUU7O0FEMk9MO0VDN1BFLHVCL0NnZjBFLEU4Q2pQM0U7RUFGRDtJQzFQSSxnQi9DMmVvQztJK0MxZXBDLDJCL0MyZW9DO0krQzFlcEMsdUIvQzJld0UsRStDbGV6RTtJRCtPSDtNQ3JQTSwyQi9Dd2VzRSxFK0N2ZXZFO0lEb1BMO01DbFBNLGdCL0NvZWtDO00rQ25lbEMsMkIvQ2tla0MsRStDamVuQztFRGdQTDtJQzVPTSw4Qi9DK2RzRSxFK0M5ZHZFOztBRDhPTDtFQ2hRRSx1Qi9Db2Y2RSxFOENsUDlFO0VDaFFDO0lBQ0UsZ0IvQytlb0M7SStDOWVwQywyQi9DK2VvQztJK0M5ZXBDLHVCL0MrZTJFLEUrQ3RlNUU7SURrUEg7TUN4UE0sMkIvQzRleUUsRStDM2UxRTtJRHVQTDtNQ3JQTSxnQi9Dd2VrQztNK0N2ZWxDLDJCL0NzZWtDLEUrQ3JlbkM7RURtUEw7SUMvT00sOEIvQ21leUUsRStDbGUxRTs7QURpUEw7RUNuUUUsdUIvQ3dmNEUsRThDblA3RTtFQ25RQztJQUNFLGdCL0NtZm9DO0krQ2xmcEMsMkIvQ21mb0M7SStDbGZwQyx1Qi9DbWYwRSxFK0MxZTNFO0lEcVBIO01DM1BNLDJCL0NnZndFLEUrQy9lekU7SUFDRDtNQUNFLGdCL0M0ZWtDO00rQzNlbEMsMkIvQzBla0MsRStDemVuQztFRHNQTDtJQ2xQTSw4Qi9DdWV3RSxFK0N0ZXpFOztBQ2pCTDtFQUNFLG9CQUFrQjtFQUNsQixnQkFBYztFQUNkLFdBQVM7RUFDVCxZQUFVO0VBQ1Ysa0JBQWdCLEVBeUJqQjtFQXZCQzs7Ozs7SUFLRSxvQkFBa0I7SUFDbEIsUUFBTTtJQUNOLFNBQU87SUFDUCxXQUFTO0lBQ1QsY0FBWTtJQUNaLGFBQVc7SUFDWCxXQUFTLEVBQ1Y7RUFuQkg7SUF1Qkksd0JBQXNCLEVBQ3ZCO0VBR0Q7SUFDRSxxQkFBbUIsRUFDcEI7O0FDM0JIO0VBQ0Usa0JBQWdCO0VBQ2hCLGVBQWE7RUFDYixxQkFBbUI7RUFDbkIsMkJqRDJ1Qm1DO0VpRDF1Qm5DLDJCakQydUJnRDtFaUQxdUJoRCxvQmpEaUc2QjtFRHhDckIsaURrRHhEMkMsRUFLcEQ7RUFKQztJQUNFLG9CQUFrQjtJQUNsQixtQ0FBNkIsRUFDOUI7O0FBSUg7RUFDRSxlQUFh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QVBBO1FBQ0MsaUJBQWUsRUFDZixFQUFBO0VBV0Y7SUFDQyxrQkFBZ0IsRUFLaEI7SUFIQTtNQXhTTDtRQXlTTSxxQkFBbUIsRUFFcEIsRUFBQTtFQUtGO0lBQ0MsZUFBYSxFQUNiO0VBRUQ7SUFDQyxlQUFhLEVBQ2I7RUFHRjtJQUNDLGdCQUFjO0lBQ2QsdUJBQXFCO0lBRXJCLGlCQUFlLEVBS2Y7SUFsVUg7TUFnVUksZ0JBQTRCLEVBQzVCO0VBalVKO0lBcVVHLHVCQUFxQjtJQUNyQixxQkFBbUI7SUFDbkIsaUJBQWUsRUFXZjtJQVRBO01BQ0M7UUFDQyxlQUFhLEVBQ2I7TUE1VUw7UUErVUssZ0JBQWMsRUFDZCxFQUFBO0VBaFZMO0lBc1ZFLGtCQXBWWTtJQXFWWiw2QkFBd0MsRUF1Q3hDO0lBOVhGO01BMFZHLHdCQUErQjtNQUMvQiwrQkFBc0MsRUFvQnRDO01BbEJBO1FBQ0MsZ0JBQWM7UUFDZCxnQkFBYztRQUNkLGlCQUFjO1FBQ2QsZ0JBQTBCLEVBQzFCO01BbFdKO1FBc1dLLHNDQUE2RDtRQUM3RCxhQXRXUyxFQXVXVDtNQXhXTDtRQTJXSyx3QkFBeUIsRUFDekI7SUE1V0w7TUFrWEcsYUFqWFc7TUFrWFgsK0JBQXNDO01BQ3RDLGtCQUFnQixFQUNoQjtJQXJYSDtNQXdYRyx5QkFBc0MsRUFDdEM7SUFFRDtNQUNDLGdCQUE2QyxFQUM3QztFQTdYSDtJQWlZRSxxQkFBK0IsRUFLL0I7SUF0WUY7TUFvWUcsMEJBQXlELEVBQ3pEIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOltudWxsLCIvKiEgbm9ybWFsaXplLmNzcyB2My4wLjIgfCBNSVQgTGljZW5zZSB8IGdpdC5pby9ub3JtYWxpemUgKi9cclxuXHJcbi8vXHJcbi8vIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXHJcbi8vIDIuIFByZXZlbnQgaU9TIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlLCB3aXRob3V0IGRpc2FibGluZ1xyXG4vLyAgICB1c2VyIHpvb20uXHJcbi8vXHJcblxyXG5odG1sIHtcclxuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLy8gMVxyXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXHJcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXHJcbn1cclxuXHJcbi8vXHJcbi8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi5cclxuLy9cclxuXHJcbmJvZHkge1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuLy8gSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy9cclxuLy8gQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cclxuLy8gQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTFcclxuLy8gYW5kIEZpcmVmb3guXHJcbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXHJcbi8vXHJcblxyXG5hcnRpY2xlLFxyXG5hc2lkZSxcclxuZGV0YWlscyxcclxuZmlnY2FwdGlvbixcclxuZmlndXJlLFxyXG5mb290ZXIsXHJcbmhlYWRlcixcclxuaGdyb3VwLFxyXG5tYWluLFxyXG5tZW51LFxyXG5uYXYsXHJcbnNlY3Rpb24sXHJcbnN1bW1hcnkge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4vL1xyXG4vLyAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxyXG4vLyAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXHJcbi8vXHJcblxyXG5hdWRpbyxcclxuY2FudmFzLFxyXG5wcm9ncmVzcyxcclxudmlkZW8ge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gMVxyXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gMlxyXG59XHJcblxyXG4vL1xyXG4vLyBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxyXG4vLyBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxyXG4vL1xyXG5cclxuYXVkaW86bm90KFtjb250cm9sc10pIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGhlaWdodDogMDtcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxyXG4vLyBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXHJcbi8vXHJcblxyXG5baGlkZGVuXSxcclxudGVtcGxhdGUge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8vIExpbmtzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vL1xyXG4vLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cclxuLy9cclxuXHJcbmEge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4vL1xyXG4vLyBJbXByb3ZlIHJlYWRhYmlsaXR5IHdoZW4gZm9jdXNlZCBhbmQgYWxzbyBtb3VzZSBob3ZlcmVkIGluIGFsbCBicm93c2Vycy5cclxuLy9cclxuXHJcbmE6YWN0aXZlLFxyXG5hOmhvdmVyIHtcclxuICBvdXRsaW5lOiAwO1xyXG59XHJcblxyXG4vLyBUZXh0LWxldmVsIHNlbWFudGljc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxyXG4vL1xyXG5cclxuYWJiclt0aXRsZV0ge1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cclxuLy9cclxuXHJcbmIsXHJcbnN0cm9uZyB7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cclxuLy9cclxuXHJcbmRmbiB7XHJcbiAgZm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXHJcbi8vIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cclxuLy9cclxuXHJcbmgxIHtcclxuICBmb250LXNpemU6IDJlbTtcclxuICBtYXJnaW46IDAuNjdlbSAwO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxyXG4vL1xyXG5cclxubWFyayB7XHJcbiAgYmFja2dyb3VuZDogI2ZmMDtcclxuICBjb2xvcjogIzAwMDtcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXHJcbi8vXHJcblxyXG5zbWFsbCB7XHJcbiAgZm9udC1zaXplOiA4MCU7XHJcbn1cclxuXHJcbi8vXHJcbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cclxuLy9cclxuXHJcbnN1Yixcclxuc3VwIHtcclxuICBmb250LXNpemU6IDc1JTtcclxuICBsaW5lLWhlaWdodDogMDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG59XHJcblxyXG5zdXAge1xyXG4gIHRvcDogLTAuNWVtO1xyXG59XHJcblxyXG5zdWIge1xyXG4gIGJvdHRvbTogLTAuMjVlbTtcclxufVxyXG5cclxuLy8gRW1iZWRkZWQgY29udGVudFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy9cclxuLy8gUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXHJcbi8vXHJcblxyXG5pbWcge1xyXG4gIGJvcmRlcjogMDtcclxufVxyXG5cclxuLy9cclxuLy8gQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuXHJcbi8vXHJcblxyXG5zdmc6bm90KDpyb290KSB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLy8gR3JvdXBpbmcgY29udGVudFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXHJcbi8vXHJcblxyXG5maWd1cmUge1xyXG4gIG1hcmdpbjogMWVtIDQwcHg7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cclxuLy9cclxuXHJcbmhyIHtcclxuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG4gIGhlaWdodDogMDtcclxufVxyXG5cclxuLy9cclxuLy8gQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXHJcbi8vXHJcblxyXG5wcmUge1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXHJcbi8vXHJcblxyXG5jb2RlLFxyXG5rYmQsXHJcbnByZSxcclxuc2FtcCB7XHJcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xyXG4gIGZvbnQtc2l6ZTogMWVtO1xyXG59XHJcblxyXG4vLyBGb3Jtc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy9cclxuLy8gS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcclxuLy8gc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxyXG4vL1xyXG5cclxuLy9cclxuLy8gMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxyXG4vLyAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cclxuLy8gMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cclxuLy8gMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbi8vXHJcblxyXG5idXR0b24sXHJcbmlucHV0LFxyXG5vcHRncm91cCxcclxuc2VsZWN0LFxyXG50ZXh0YXJlYSB7XHJcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDFcclxuICBmb250OiBpbmhlcml0OyAvLyAyXHJcbiAgbWFyZ2luOiAwOyAvLyAzXHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxyXG4vL1xyXG5cclxuYnV0dG9uIHtcclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxyXG4vLyBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxyXG4vLyBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxyXG4vLyBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXHJcbi8vXHJcblxyXG5idXR0b24sXHJcbnNlbGVjdCB7XHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbn1cclxuXHJcbi8vXHJcbi8vIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXHJcbi8vICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxyXG4vLyAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXHJcbi8vIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXHJcbi8vICAgIGBpbnB1dGAgYW5kIG90aGVycy5cclxuLy9cclxuXHJcbmJ1dHRvbixcclxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXHJcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcclxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcclxuICBjdXJzb3I6IHBvaW50ZXI7IC8vIDNcclxufVxyXG5cclxuLy9cclxuLy8gUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cclxuLy9cclxuXHJcbmJ1dHRvbltkaXNhYmxlZF0sXHJcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcclxuICBjdXJzb3I6IGRlZmF1bHQ7XHJcbn1cclxuXHJcbi8vXHJcbi8vIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cclxuLy9cclxuXHJcbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcclxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xyXG4gIGJvcmRlcjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXHJcbi8vIHRoZSBVQSBzdHlsZXNoZWV0LlxyXG4vL1xyXG5cclxuaW5wdXQge1xyXG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cclxuLy8gRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cclxuLy9cclxuLy8gMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cclxuLy8gMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cclxuLy9cclxuXHJcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXHJcbiAgcGFkZGluZzogMDsgLy8gMlxyXG59XHJcblxyXG4vL1xyXG4vLyBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxyXG4vLyBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxyXG4vLyBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXHJcbi8vXHJcblxyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi8vXHJcbi8vIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxyXG4vLyAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lXHJcbi8vICAgIChpbmNsdWRlIGAtbW96YCB0byBmdXR1cmUtcHJvb2YpLlxyXG4vL1xyXG5cclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcclxuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDJcclxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxufVxyXG5cclxuLy9cclxuLy8gUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXHJcbi8vIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcclxuLy8gcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxyXG4vL1xyXG5cclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG59XHJcblxyXG4vL1xyXG4vLyBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXHJcbi8vXHJcblxyXG5maWVsZHNldCB7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcclxuICBtYXJnaW46IDAgMnB4O1xyXG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcclxufVxyXG5cclxuLy9cclxuLy8gMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxyXG4vLyAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXHJcbi8vXHJcblxyXG5sZWdlbmQge1xyXG4gIGJvcmRlcjogMDsgLy8gMVxyXG4gIHBhZGRpbmc6IDA7IC8vIDJcclxufVxyXG5cclxuLy9cclxuLy8gUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cclxuLy9cclxuXHJcbnRleHRhcmVhIHtcclxuICBvdmVyZmxvdzogYXV0bztcclxufVxyXG5cclxuLy9cclxuLy8gRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxyXG4vLyBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cclxuLy9cclxuXHJcbm9wdGdyb3VwIHtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLy8gVGFibGVzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vL1xyXG4vLyBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXHJcbi8vXHJcblxyXG50YWJsZSB7XHJcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxuICBib3JkZXItc3BhY2luZzogMDtcclxufVxyXG5cclxudGQsXHJcbnRoIHtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcbiIsIi8qISBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2Jsb2IvbWFzdGVyL3NyYy9jc3MvbWFpbi5jc3MgKi9cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIFByaW50IHN0eWxlcy5cclxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6IGg1YnAuY29tL3JcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbkBtZWRpYSBwcmludCB7XHJcbiAgICAqLFxyXG4gICAgKjpiZWZvcmUsXHJcbiAgICAqOmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3NcclxuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICBhLFxyXG4gICAgYTp2aXNpdGVkIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxuXHJcbiAgICBhW2hyZWZdOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcclxuICAgIH1cclxuXHJcbiAgICBhYmJyW3RpdGxlXTphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXHJcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXHJcbiAgICBhW2hyZWZePVwiI1wiXTphZnRlcixcclxuICAgIGFbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgIH1cclxuXHJcbiAgICBwcmUsXHJcbiAgICBibG9ja3F1b3RlIHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xyXG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcclxuICAgIH1cclxuXHJcbiAgICB0aGVhZCB7XHJcbiAgICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyAvLyBoNWJwLmNvbS90XHJcbiAgICB9XHJcblxyXG4gICAgdHIsXHJcbiAgICBpbWcge1xyXG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIHAsXHJcbiAgICBoMixcclxuICAgIGgzIHtcclxuICAgICAgICBvcnBoYW5zOiAzO1xyXG4gICAgICAgIHdpZG93czogMztcclxuICAgIH1cclxuXHJcbiAgICBoMixcclxuICAgIGgzIHtcclxuICAgICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxyXG4gICAgLy9cclxuICAgIC8vIENocm9tZSAoT1NYKSBmaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTEyNDVcclxuICAgIC8vIE9uY2UgZml4ZWQsIHdlIGNhbiBqdXN0IHN0cmFpZ2h0IHVwIHJlbW92ZSB0aGlzLlxyXG4gICAgc2VsZWN0IHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcclxuICAgIC5uYXZiYXIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAuYnRuLFxyXG4gICAgLmRyb3B1cCA+IC5idG4ge1xyXG4gICAgICAgID4gLmNhcmV0IHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogIzAwMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5sYWJlbCB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcclxuICAgIH1cclxuXHJcbiAgICAudGFibGUge1xyXG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgdGQsXHJcbiAgICAgICAgdGgge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcclxuICAgICAgICB0aCxcclxuICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXHJcbn1cclxuIiwiLy9cclxuLy8gR2x5cGhpY29ucyBmb3IgQm9vdHN0cmFwXHJcbi8vXHJcbi8vIFNpbmNlIGljb25zIGFyZSBmb250cywgdGhleSBjYW4gYmUgcGxhY2VkIGFueXdoZXJlIHRleHQgaXMgcGxhY2VkIGFuZCBhcmVcclxuLy8gdGh1cyBhdXRvbWF0aWNhbGx5IHNpemVkIHRvIG1hdGNoIHRoZSBzdXJyb3VuZGluZyBjaGlsZC4gVG8gdXNlLCBjcmVhdGUgYW5cclxuLy8gaW5saW5lIGVsZW1lbnQgd2l0aCB0aGUgYXBwcm9wcmlhdGUgY2xhc3NlcywgbGlrZSBzbzpcclxuLy9cclxuLy8gPGEgaHJlZj1cIiNcIj48c3BhbiBjbGFzcz1cImdseXBoaWNvbiBnbHlwaGljb24tc3RhclwiPjwvc3Bhbj4gU3RhcjwvYT5cclxuXHJcbi8vIEltcG9ydCB0aGUgZm9udHNcclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6ICdHbHlwaGljb25zIEhhbGZsaW5ncyc7XHJcbiAgc3JjOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5lb3QnKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5lb3QnKSk7XHJcbiAgc3JjOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5lb3Q/I2llZml4JyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90PyNpZWZpeCcpKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcbiAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmMicpLCAnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LndvZmYyJykpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgIHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aCgnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LndvZmYnKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmJykpIGZvcm1hdCgnd29mZicpLFxyXG4gICAgICAgdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0udHRmJyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0udHRmJykpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuICAgICAgIHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aCgnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnN2ZyMjeyRpY29uLWZvbnQtc3ZnLWlkfScpLCAnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnN2ZyMjeyRpY29uLWZvbnQtc3ZnLWlkfScpKSBmb3JtYXQoJ3N2ZycpO1xyXG59XHJcblxyXG4vLyBDYXRjaGFsbCBiYXNlY2xhc3NcclxuLmdseXBoaWNvbiB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRvcDogMXB4O1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBmb250LWZhbWlseTogJ0dseXBoaWNvbnMgSGFsZmxpbmdzJztcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBsaW5lLWhlaWdodDogMTtcclxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG59XHJcblxyXG4vLyBJbmRpdmlkdWFsIGljb25zXHJcbi5nbHlwaGljb24tYXN0ZXJpc2sgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDJhXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBsdXMgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyYlwiOyB9IH1cclxuLmdseXBoaWNvbi1ldXJvLFxyXG4uZ2x5cGhpY29uLWV1ciAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMGFjXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW1pbnVzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMjEyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNsb3VkICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNjAxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWVudmVsb3BlICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNzA5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBlbmNpbCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNzBmXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWdsYXNzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDAxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW11c2ljICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDAyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNlYXJjaCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDAzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhlYXJ0ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXN0YXIgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXN0YXItZW1wdHkgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXVzZXIgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZpbG0gICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRoLWxhcmdlICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRoICAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDExXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRoLWxpc3QgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9rICAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlbW92ZSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXpvb20taW4gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXpvb20tb3V0ICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9mZiAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNpZ25hbCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNvZyAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRyYXNoICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhvbWUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZpbGUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRpbWUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJvYWQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWRvd25sb2FkLWFsdCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWRvd25sb2FkICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXVwbG9hZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWluYm94ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBsYXktY2lyY2xlICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlcGVhdCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlZnJlc2ggICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWxpc3QtYWx0ICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWxvY2sgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZsYWcgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhlYWRwaG9uZXMgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXZvbHVtZS1vZmYgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXZvbHVtZS1kb3duICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXZvbHVtZS11cCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXFyY29kZSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJhcmNvZGUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRhZyAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRhZ3MgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJvb2sgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJvb2ttYXJrICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXByaW50ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNhbWVyYSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZvbnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJvbGQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWl0YWxpYyAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRleHQtaGVpZ2h0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRleHQtd2lkdGggICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFsaWduLWxlZnQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFsaWduLWNlbnRlciAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFsaWduLXJpZ2h0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFsaWduLWp1c3RpZnkgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWxpc3QgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWluZGVudC1sZWZ0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWluZGVudC1yaWdodCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZhY2V0aW1lLXZpZGVvICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBpY3R1cmUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW1hcC1tYXJrZXIgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFkanVzdCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRpbnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWVkaXQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNoYXJlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNoZWNrICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW1vdmUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXN0ZXAtYmFja3dhcmQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZhc3QtYmFja3dhcmQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDcwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJhY2t3YXJkICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDcxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBsYXkgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDcyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBhdXNlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDczXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXN0b3AgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZvcndhcmQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZhc3QtZm9yd2FyZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXN0ZXAtZm9yd2FyZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWVqZWN0ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNoZXZyb24tbGVmdCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBsdXMtc2lnbiAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW1pbnVzLXNpZ24gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlbW92ZS1zaWduICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9rLXNpZ24gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWluZm8tc2lnbiAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNjcmVlbnNob3QgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlbW92ZS1jaXJjbGUgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9rLWNpcmNsZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJhbi1jaXJjbGUgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFycm93LWxlZnQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFycm93LXJpZ2h0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFycm93LXVwICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFycm93LWRvd24gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNoYXJlLWFsdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlc2l6ZS1mdWxsICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlc2l6ZS1zbWFsbCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24gICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTAxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWdpZnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTAyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWxlYWYgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTAzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZpcmUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWV5ZS1vcGVuICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWV5ZS1jbG9zZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXdhcm5pbmctc2lnbiAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBsYW5lICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNhbGVuZGFyICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJhbmRvbSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNvbW1lbnQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTExXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW1hZ25ldCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNoZXZyb24tdXAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNoZXZyb24tZG93biAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJldHdlZXQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNob3BwaW5nLWNhcnQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZvbGRlci1jbG9zZSAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZvbGRlci1vcGVuICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlc2l6ZS12ZXJ0aWNhbCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlc2l6ZS1ob3Jpem9udGFsICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhkZCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJ1bGxob3JuICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJlbGwgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNlcnRpZmljYXRlICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRodW1icy11cCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRodW1icy1kb3duICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhhbmQtcmlnaHQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhhbmQtbGVmdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhhbmQtdXAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhhbmQtZG93biAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1yaWdodCAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1sZWZ0ICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy11cCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1kb3duICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWdsb2JlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXdyZW5jaCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRhc2tzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZpbHRlciAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJyaWVmY2FzZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZ1bGxzY3JlZW4gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWRhc2hib2FyZCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBhcGVyY2xpcCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhlYXJ0LWVtcHR5ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWxpbmsgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBob25lICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXB1c2hwaW4gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXVzZCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWdicCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvcnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvcnQtYnktYWxwaGFiZXQgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvcnQtYnktYWxwaGFiZXQtYWx0ICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvcnQtYnktb3JkZXIgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvcnQtYnktb3JkZXItYWx0ICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvcnQtYnktYXR0cmlidXRlcyAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvcnQtYnktYXR0cmlidXRlcy1hbHQgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXVuY2hlY2tlZCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWV4cGFuZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNvbGxhcHNlLWRvd24gICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNvbGxhcHNlLXVwICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWxvZy1pbiAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZsYXNoICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWxvZy1vdXQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW5ldy13aW5kb3cgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlY29yZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNhdmUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9wZW4gICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNhdmVkICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWltcG9ydCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWV4cG9ydCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTcwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNlbmQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTcxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZsb3BweS1kaXNrICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTcyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZsb3BweS1zYXZlZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTczXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZsb3BweS1yZW1vdmUgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZsb3BweS1zYXZlICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWZsb3BweS1vcGVuICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNyZWRpdC1jYXJkICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRyYW5zZmVyICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWN1dGxlcnkgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhlYWRlciAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNvbXByZXNzZWQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWVhcnBob25lICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBob25lLWFsdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRvd2VyICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXN0YXRzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNkLXZpZGVvICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhkLXZpZGVvICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXN1YnRpdGxlcyAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvdW5kLXN0ZXJlbyAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvdW5kLWRvbGJ5ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvdW5kLTUtMSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvdW5kLTYtMSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNvdW5kLTctMSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNvcHlyaWdodC1tYXJrICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJlZ2lzdHJhdGlvbi1tYXJrICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNsb3VkLWRvd25sb2FkICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNsb3VkLXVwbG9hZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRyZWUtY29uaWZlciAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRyZWUtZGVjaWR1b3VzICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNkICAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNhdmUtZmlsZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9wZW4tZmlsZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWxldmVsLXVwICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNvcHkgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBhc3RlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA2XCI7IH0gfVxyXG4vLyBUaGUgZm9sbG93aW5nIDIgR2x5cGhpY29ucyBhcmUgb21pdHRlZCBmb3IgdGhlIHRpbWUgYmVpbmcgYmVjYXVzZVxyXG4vLyB0aGV5IGN1cnJlbnRseSB1c2UgVW5pY29kZSBjb2RlcG9pbnRzIHRoYXQgYXJlIG91dHNpZGUgdGhlXHJcbi8vIEJhc2ljIE11bHRpbGluZ3VhbCBQbGFuZSAoQk1QKS4gT2xkZXIgYnVnZ3kgdmVyc2lvbnMgb2YgV2ViS2l0IGNhbid0IGhhbmRsZVxyXG4vLyBub24tQk1QIGNvZGVwb2ludHMgaW4gQ1NTIHN0cmluZyBlc2NhcGVzLCBhbmQgdGh1cyBjYW4ndCBkaXNwbGF5IHRoZXNlIHR3byBpY29ucy5cclxuLy8gTm90YWJseSwgdGhlIGJ1ZyBhZmZlY3RzIHNvbWUgb2xkZXIgdmVyc2lvbnMgb2YgdGhlIEFuZHJvaWQgQnJvd3Nlci5cclxuLy8gTW9yZSBpbmZvOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwMTA2XHJcbi8vIC5nbHlwaGljb24tZG9vciAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDFmNmFhXCI7IH0gfVxyXG4vLyAuZ2x5cGhpY29uLWtleSAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwxZjUxMVwiOyB9IH1cclxuLmdseXBoaWNvbi1hbGVydCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwOVwiOyB9IH1cclxuLmdseXBoaWNvbi1lcXVhbGl6ZXIgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxMFwiOyB9IH1cclxuLmdseXBoaWNvbi1raW5nICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxMVwiOyB9IH1cclxuLmdseXBoaWNvbi1xdWVlbiAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxMlwiOyB9IH1cclxuLmdseXBoaWNvbi1wYXduICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxM1wiOyB9IH1cclxuLmdseXBoaWNvbi1iaXNob3AgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxNFwiOyB9IH1cclxuLmdseXBoaWNvbi1rbmlnaHQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxNVwiOyB9IH1cclxuLmdseXBoaWNvbi1iYWJ5LWZvcm11bGEgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxNlwiOyB9IH1cclxuLmdseXBoaWNvbi10ZW50ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjZmYVwiOyB9IH1cclxuLmdseXBoaWNvbi1ibGFja2JvYXJkICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxOFwiOyB9IH1cclxuLmdseXBoaWNvbi1iZWQgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxOVwiOyB9IH1cclxuLmdseXBoaWNvbi1hcHBsZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjhmZlwiOyB9IH1cclxuLmdseXBoaWNvbi1lcmFzZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyMVwiOyB9IH1cclxuLmdseXBoaWNvbi1ob3VyZ2xhc3MgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjMxYlwiOyB9IH1cclxuLmdseXBoaWNvbi1sYW1wICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyM1wiOyB9IH1cclxuLmdseXBoaWNvbi1kdXBsaWNhdGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyNFwiOyB9IH1cclxuLmdseXBoaWNvbi1waWdneS1iYW5rICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyNVwiOyB9IH1cclxuLmdseXBoaWNvbi1zY2lzc29ycyAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyNlwiOyB9IH1cclxuLmdseXBoaWNvbi1iaXRjb2luICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyN1wiOyB9IH1cclxuLmdseXBoaWNvbi15ZW4gICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMDBhNVwiOyB9IH1cclxuLmdseXBoaWNvbi1ydWJsZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjBiZFwiOyB9IH1cclxuLmdseXBoaWNvbi1zY2FsZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzMFwiOyB9IH1cclxuLmdseXBoaWNvbi1pY2UtbG9sbHkgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzMVwiOyB9IH1cclxuLmdseXBoaWNvbi1pY2UtbG9sbHktdGFzdGVkICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzMlwiOyB9IH1cclxuLmdseXBoaWNvbi1lZHVjYXRpb24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzM1wiOyB9IH1cclxuLmdseXBoaWNvbi1vcHRpb24taG9yaXpvbnRhbCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzNFwiOyB9IH1cclxuLmdseXBoaWNvbi1vcHRpb24tdmVydGljYWwgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzNVwiOyB9IH1cclxuLmdseXBoaWNvbi1tZW51LWhhbWJ1cmdlciAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzNlwiOyB9IH1cclxuLmdseXBoaWNvbi1tb2RhbC13aW5kb3cgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzN1wiOyB9IH1cclxuLmdseXBoaWNvbi1vaWwgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzOFwiOyB9IH1cclxuLmdseXBoaWNvbi1ncmFpbiAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzOVwiOyB9IH1cclxuLmdseXBoaWNvbi1zdW5nbGFzc2VzICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0MFwiOyB9IH1cclxuLmdseXBoaWNvbi10ZXh0LXNpemUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0MVwiOyB9IH1cclxuLmdseXBoaWNvbi10ZXh0LWNvbG9yICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0MlwiOyB9IH1cclxuLmdseXBoaWNvbi10ZXh0LWJhY2tncm91bmQgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0M1wiOyB9IH1cclxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tdG9wICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0NFwiOyB9IH1cclxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tYm90dG9tICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0NVwiOyB9IH1cclxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24taG9yaXpvbnRhbHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0NlwiOyB9IH1cclxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tbGVmdCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0N1wiOyB9IH1cclxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tdmVydGljYWwgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0OFwiOyB9IH1cclxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tcmlnaHQgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0OVwiOyB9IH1cclxuLmdseXBoaWNvbi10cmlhbmdsZS1yaWdodCAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1MFwiOyB9IH1cclxuLmdseXBoaWNvbi10cmlhbmdsZS1sZWZ0ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1MVwiOyB9IH1cclxuLmdseXBoaWNvbi10cmlhbmdsZS1ib3R0b20gICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1MlwiOyB9IH1cclxuLmdseXBoaWNvbi10cmlhbmdsZS10b3AgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1M1wiOyB9IH1cclxuLmdseXBoaWNvbi1jb25zb2xlICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1NFwiOyB9IH1cclxuLmdseXBoaWNvbi1zdXBlcnNjcmlwdCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1NVwiOyB9IH1cclxuLmdseXBoaWNvbi1zdWJzY3JpcHQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1NlwiOyB9IH1cclxuLmdseXBoaWNvbi1tZW51LWxlZnQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1N1wiOyB9IH1cclxuLmdseXBoaWNvbi1tZW51LXJpZ2h0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1OFwiOyB9IH1cclxuLmdseXBoaWNvbi1tZW51LWRvd24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1OVwiOyB9IH1cclxuLmdseXBoaWNvbi1tZW51LXVwICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI2MFwiOyB9IH1cclxuIiwiLy9cclxuLy8gU2NhZmZvbGRpbmdcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBSZXNldCB0aGUgYm94LXNpemluZ1xyXG4vL1xyXG4vLyBIZWFkcyB1cCEgVGhpcyByZXNldCBtYXkgY2F1c2UgY29uZmxpY3RzIHdpdGggc29tZSB0aGlyZC1wYXJ0eSB3aWRnZXRzLlxyXG4vLyBGb3IgcmVjb21tZW5kYXRpb25zIG9uIHJlc29sdmluZyBzdWNoIGNvbmZsaWN0cywgc2VlXHJcbi8vIGh0dHA6Ly9nZXRib290c3RyYXAuY29tL2dldHRpbmctc3RhcnRlZC8jdGhpcmQtYm94LXNpemluZ1xyXG4qIHtcclxuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xyXG59XHJcbio6YmVmb3JlLFxyXG4qOmFmdGVyIHtcclxuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xyXG59XHJcblxyXG5cclxuLy8gQm9keSByZXNldFxyXG5cclxuaHRtbCB7XHJcbiAgZm9udC1zaXplOiAxMHB4O1xyXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLDAsMCwwKTtcclxufVxyXG5cclxuYm9keSB7XHJcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcclxuICBjb2xvcjogJHRleHQtY29sb3I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XHJcbn1cclxuXHJcbi8vIFJlc2V0IGZvbnRzIGZvciByZWxldmFudCBlbGVtZW50c1xyXG5pbnB1dCxcclxuYnV0dG9uLFxyXG5zZWxlY3QsXHJcbnRleHRhcmVhIHtcclxuICBmb250LWZhbWlseTogaW5oZXJpdDtcclxuICBmb250LXNpemU6IGluaGVyaXQ7XHJcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbn1cclxuXHJcblxyXG4vLyBMaW5rc1xyXG5cclxuYSB7XHJcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcclxuICB9XHJcblxyXG4gICY6Zm9jdXMge1xyXG4gICAgQGluY2x1ZGUgdGFiLWZvY3VzO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEZpZ3VyZXNcclxuLy9cclxuLy8gV2UgcmVzZXQgdGhpcyBoZXJlIGJlY2F1c2UgcHJldmlvdXNseSBOb3JtYWxpemUgaGFkIG5vIGBmaWd1cmVgIG1hcmdpbnMuIFRoaXNcclxuLy8gZW5zdXJlcyB3ZSBkb24ndCBicmVhayBhbnlvbmUncyB1c2Ugb2YgdGhlIGVsZW1lbnQuXHJcblxyXG5maWd1cmUge1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuXHJcbi8vIEltYWdlc1xyXG5cclxuaW1nIHtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG4vLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcclxuLmltZy1yZXNwb25zaXZlIHtcclxuICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcclxufVxyXG5cclxuLy8gUm91bmRlZCBjb3JuZXJzXHJcbi5pbWctcm91bmRlZCB7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XHJcbn1cclxuXHJcbi8vIEltYWdlIHRodW1ibmFpbHNcclxuLy9cclxuLy8gSGVhZHMgdXAhIFRoaXMgaXMgbWl4aW4tZWQgaW50byB0aHVtYm5haWxzLmxlc3MgZm9yIGAudGh1bWJuYWlsYC5cclxuLmltZy10aHVtYm5haWwge1xyXG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcclxuICBib3JkZXI6IDFweCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlcjtcclxuICBib3JkZXItcmFkaXVzOiAkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UtaW4tb3V0KTtcclxuXHJcbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXHJcbiAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmUoaW5saW5lLWJsb2NrKTtcclxufVxyXG5cclxuLy8gUGVyZmVjdCBjaXJjbGVcclxuLmltZy1jaXJjbGUge1xyXG4gIGJvcmRlci1yYWRpdXM6IDUwJTsgLy8gc2V0IHJhZGl1cyBpbiBwZXJjZW50c1xyXG59XHJcblxyXG5cclxuLy8gSG9yaXpvbnRhbCBydWxlc1xyXG5cclxuaHIge1xyXG4gIG1hcmdpbi10b3A6ICAgICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaHItYm9yZGVyO1xyXG59XHJcblxyXG5cclxuLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcclxuLy9cclxuLy8gU2VlOiBodHRwOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnQvXHJcblxyXG4uc3Itb25seSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxcHg7XHJcbiAgaGVpZ2h0OiAxcHg7XHJcbiAgbWFyZ2luOiAtMXB4O1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBjbGlwOiByZWN0KDAsMCwwLDApO1xyXG4gIGJvcmRlcjogMDtcclxufVxyXG5cclxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXHJcbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxyXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXHJcblxyXG4uc3Itb25seS1mb2N1c2FibGUge1xyXG4gICY6YWN0aXZlLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICBjbGlwOiBhdXRvO1xyXG4gIH1cclxufVxyXG4iLCIvLyBWZW5kb3IgUHJlZml4ZXNcclxuLy9cclxuLy8gQWxsIHZlbmRvciBtaXhpbnMgYXJlIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGR1ZSB0byB0aGUgaW50cm9kdWN0aW9uIG9mXHJcbi8vIEF1dG9wcmVmaXhlciBpbiBvdXIgR3J1bnRmaWxlLiBUaGV5IHdpbGwgYmUgcmVtb3ZlZCBpbiB2NC5cclxuXHJcbi8vIC0gQW5pbWF0aW9uc1xyXG4vLyAtIEJhY2tmYWNlIHZpc2liaWxpdHlcclxuLy8gLSBCb3ggc2hhZG93XHJcbi8vIC0gQm94IHNpemluZ1xyXG4vLyAtIENvbnRlbnQgY29sdW1uc1xyXG4vLyAtIEh5cGhlbnNcclxuLy8gLSBQbGFjZWhvbGRlciB0ZXh0XHJcbi8vIC0gVHJhbnNmb3JtYXRpb25zXHJcbi8vIC0gVHJhbnNpdGlvbnNcclxuLy8gLSBVc2VyIFNlbGVjdFxyXG5cclxuXHJcbi8vIEFuaW1hdGlvbnNcclxuQG1peGluIGFuaW1hdGlvbigkYW5pbWF0aW9uKSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246ICRhbmltYXRpb247XHJcbiAgICAgICAtby1hbmltYXRpb246ICRhbmltYXRpb247XHJcbiAgICAgICAgICBhbmltYXRpb246ICRhbmltYXRpb247XHJcbn1cclxuQG1peGluIGFuaW1hdGlvbi1uYW1lKCRuYW1lKSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogJG5hbWU7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogJG5hbWU7XHJcbn1cclxuQG1peGluIGFuaW1hdGlvbi1kdXJhdGlvbigkZHVyYXRpb24pIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XHJcbn1cclxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcclxuICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XHJcbn1cclxuQG1peGluIGFuaW1hdGlvbi1kZWxheSgkZGVsYXkpIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogJGRlbGF5O1xyXG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XHJcbn1cclxuQG1peGluIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQoJGl0ZXJhdGlvbi1jb3VudCkge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XHJcbn1cclxuQG1peGluIGFuaW1hdGlvbi1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcclxuICAgICAgICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XHJcbn1cclxuQG1peGluIGFuaW1hdGlvbi1maWxsLW1vZGUoJGZpbGwtbW9kZSkge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcclxuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XHJcbn1cclxuXHJcbi8vIEJhY2tmYWNlIHZpc2liaWxpdHlcclxuLy8gUHJldmVudCBicm93c2VycyBmcm9tIGZsaWNrZXJpbmcgd2hlbiB1c2luZyBDU1MgM0QgdHJhbnNmb3Jtcy5cclxuLy8gRGVmYXVsdCB2YWx1ZSBpcyBgdmlzaWJsZWAsIGJ1dCBjYW4gYmUgY2hhbmdlZCB0byBgaGlkZGVuYFxyXG5cclxuQG1peGluIGJhY2tmYWNlLXZpc2liaWxpdHkoJHZpc2liaWxpdHkpe1xyXG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XHJcbiAgICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcclxuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xyXG59XHJcblxyXG4vLyBEcm9wIHNoYWRvd3NcclxuLy9cclxuLy8gTm90ZTogRGVwcmVjYXRlZCBgLmJveC1zaGFkb3coKWAgYXMgb2YgdjMuMS4wIHNpbmNlIGFsbCBvZiBCb290c3RyYXAnc1xyXG4vLyBzdXBwb3J0ZWQgYnJvd3NlcnMgdGhhdCBoYXZlIGJveCBzaGFkb3cgY2FwYWJpbGl0aWVzIG5vdyBzdXBwb3J0IGl0LlxyXG5cclxuQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xyXG4gIC13ZWJraXQtYm94LXNoYWRvdzogJHNoYWRvdzsgLy8gaU9TIDw0LjMgJiBBbmRyb2lkIDw0LjFcclxuICAgICAgICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XHJcbn1cclxuXHJcbi8vIEJveCBzaXppbmdcclxuQG1peGluIGJveC1zaXppbmcoJGJveG1vZGVsKSB7XHJcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XHJcbiAgICAgLW1vei1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XHJcbiAgICAgICAgICBib3gtc2l6aW5nOiAkYm94bW9kZWw7XHJcbn1cclxuXHJcbi8vIENTUzMgQ29udGVudCBDb2x1bW5zXHJcbkBtaXhpbiBjb250ZW50LWNvbHVtbnMoJGNvbHVtbi1jb3VudCwgJGNvbHVtbi1nYXA6ICRncmlkLWd1dHRlci13aWR0aCkge1xyXG4gIC13ZWJraXQtY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xyXG4gICAgIC1tb3otY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xyXG4gICAgICAgICAgY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xyXG4gIC13ZWJraXQtY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XHJcbiAgICAgLW1vei1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcclxuICAgICAgICAgIGNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xyXG59XHJcblxyXG4vLyBPcHRpb25hbCBoeXBoZW5hdGlvblxyXG5AbWl4aW4gaHlwaGVucygkbW9kZTogYXV0bykge1xyXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuICAtd2Via2l0LWh5cGhlbnM6ICRtb2RlO1xyXG4gICAgIC1tb3otaHlwaGVuczogJG1vZGU7XHJcbiAgICAgIC1tcy1oeXBoZW5zOiAkbW9kZTsgLy8gSUUxMCtcclxuICAgICAgIC1vLWh5cGhlbnM6ICRtb2RlO1xyXG4gICAgICAgICAgaHlwaGVuczogJG1vZGU7XHJcbn1cclxuXHJcbi8vIFBsYWNlaG9sZGVyIHRleHRcclxuQG1peGluIHBsYWNlaG9sZGVyKCRjb2xvcjogJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyKSB7XHJcbiAgLy8gRmlyZWZveFxyXG4gICY6Oi1tb3otcGxhY2Vob2xkZXIge1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuICAgIG9wYWNpdHk6IDE7IC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2XHJcbiAgfVxyXG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBJbnRlcm5ldCBFeHBsb3JlciAxMCtcclxuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyICB7IGNvbG9yOiAkY29sb3I7IH0gLy8gU2FmYXJpIGFuZCBDaHJvbWVcclxufVxyXG5cclxuLy8gVHJhbnNmb3JtYXRpb25zXHJcbkBtaXhpbiBzY2FsZSgkcmF0aW8uLi4pIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTsgLy8gSUU5IG9ubHlcclxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcclxufVxyXG5cclxuQG1peGluIHNjYWxlWCgkcmF0aW8pIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pOyAvLyBJRTkgb25seVxyXG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XHJcbn1cclxuQG1peGluIHNjYWxlWSgkcmF0aW8pIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pOyAvLyBJRTkgb25seVxyXG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XHJcbn1cclxuQG1peGluIHNrZXcoJHgsICR5KSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzQ4ODU7IElFOStcclxuICAgICAgIC1vLXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcclxufVxyXG5AbWl4aW4gdHJhbnNsYXRlKCR4LCAkeSkge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7IC8vIElFOSBvbmx5XHJcbiAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcclxufVxyXG5AbWl4aW4gdHJhbnNsYXRlM2QoJHgsICR5LCAkeikge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XHJcbn1cclxuQG1peGluIHJvdGF0ZSgkZGVncmVlcykge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxyXG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xyXG59XHJcbkBtaXhpbiByb3RhdGVYKCRkZWdyZWVzKSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcclxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xyXG59XHJcbkBtaXhpbiByb3RhdGVZKCRkZWdyZWVzKSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcclxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xyXG59XHJcbkBtaXhpbiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHtcclxuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XHJcbiAgICAgLW1vei1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xyXG4gICAgICAgICAgcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcclxufVxyXG5AbWl4aW4gcGVyc3BlY3RpdmUtb3JpZ2luKCRwZXJzcGVjdGl2ZSkge1xyXG4gIC13ZWJraXQtcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XHJcbiAgICAgLW1vei1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcclxuICAgICAgICAgIHBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xyXG59XHJcbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW4pIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XHJcbiAgICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjsgLy8gSUU5IG9ubHlcclxuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XHJcbn1cclxuXHJcblxyXG4vLyBUcmFuc2l0aW9uc1xyXG5cclxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcclxuICAtd2Via2l0LXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xyXG4gICAgICAgLW8tdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxufVxyXG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkdHJhbnNpdGlvbi1wcm9wZXJ0eS4uLikge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcclxufVxyXG5AbWl4aW4gdHJhbnNpdGlvbi1kZWxheSgkdHJhbnNpdGlvbi1kZWxheSkge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcclxufVxyXG5AbWl4aW4gdHJhbnNpdGlvbi1kdXJhdGlvbigkdHJhbnNpdGlvbi1kdXJhdGlvbi4uLikge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XHJcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcclxufVxyXG5AbWl4aW4gdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XHJcbiAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcclxufVxyXG5AbWl4aW4gdHJhbnNpdGlvbi10cmFuc2Zvcm0oJHRyYW5zaXRpb24uLi4pIHtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xyXG4gICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gJHRyYW5zaXRpb247XHJcbiAgICAgICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gJHRyYW5zaXRpb247XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb247XHJcbn1cclxuXHJcblxyXG4vLyBVc2VyIHNlbGVjdFxyXG4vLyBGb3Igc2VsZWN0aW5nIHRleHQgb24gdGhlIHBhZ2VcclxuXHJcbkBtaXhpbiB1c2VyLXNlbGVjdCgkc2VsZWN0KSB7XHJcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogJHNlbGVjdDtcclxuICAgICAtbW96LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xyXG4gICAgICAtbXMtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7IC8vIElFMTArXHJcbiAgICAgICAgICB1c2VyLXNlbGVjdDogJHNlbGVjdDtcclxufVxyXG4iLCIkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyOiBmYWxzZSAhZGVmYXVsdDtcclxuLy9cclxuLy8gVmFyaWFibGVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy89PSBDb2xvcnNcclxuLy9cclxuLy8jIyBHcmF5IGFuZCBicmFuZCBjb2xvcnMgZm9yIHVzZSBhY3Jvc3MgQm9vdHN0cmFwLlxyXG5cclxuJGdyYXktYmFzZTogICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XHJcbiRncmF5LWRhcmtlcjogICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDEzLjUlKSAhZGVmYXVsdDsgLy8gIzIyMlxyXG4kZ3JheS1kYXJrOiAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAyMCUpICFkZWZhdWx0OyAgIC8vICMzMzNcclxuJGdyYXk6ICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMzMuNSUpICFkZWZhdWx0OyAvLyAjNTU1XHJcbiRncmF5LWxpZ2h0OiAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDQ2LjclKSAhZGVmYXVsdDsgLy8gIzc3N1xyXG4kZ3JheS1saWdodGVyOiAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA5My41JSkgIWRlZmF1bHQ7IC8vICNlZWVcclxuXHJcbiRicmFuZC1wcmltYXJ5OiAgICAgICAgIGRhcmtlbigjNDI4YmNhLCA2LjUlKSAhZGVmYXVsdDsgLy8gIzMzN2FiN1xyXG4kYnJhbmQtc3VjY2VzczogICAgICAgICAjNWNiODVjICFkZWZhdWx0O1xyXG4kYnJhbmQtaW5mbzogICAgICAgICAgICAjNWJjMGRlICFkZWZhdWx0O1xyXG4kYnJhbmQtd2FybmluZzogICAgICAgICAjZjBhZDRlICFkZWZhdWx0O1xyXG4kYnJhbmQtZGFuZ2VyOiAgICAgICAgICAjZDk1MzRmICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gU2NhZmZvbGRpbmdcclxuLy9cclxuLy8jIyBTZXR0aW5ncyBmb3Igc29tZSBvZiB0aGUgbW9zdCBnbG9iYWwgc3R5bGVzLlxyXG5cclxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGJvZHk+YC5cclxuJGJvZHktYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuLy8qKiBHbG9iYWwgdGV4dCBjb2xvciBvbiBgPGJvZHk+YC5cclxuJHRleHQtY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcclxuXHJcbi8vKiogR2xvYmFsIHRleHR1YWwgbGluayBjb2xvci5cclxuJGxpbmstY29sb3I6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XHJcbi8vKiogTGluayBob3ZlciBjb2xvciBzZXQgdmlhIGBkYXJrZW4oKWAgZnVuY3Rpb24uXHJcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcclxuLy8qKiBMaW5rIGhvdmVyIGRlY29yYXRpb24uXHJcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246IHVuZGVybGluZSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IFR5cG9ncmFwaHlcclxuLy9cclxuLy8jIyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cclxuXHJcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xyXG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgIEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZiAhZGVmYXVsdDtcclxuLy8qKiBEZWZhdWx0IG1vbm9zcGFjZSBmb250cyBmb3IgYDxjb2RlPmAsIGA8a2JkPmAsIGFuZCBgPHByZT5gLlxyXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcclxuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcclxuXHJcbiRmb250LXNpemUtYmFzZTogICAgICAgICAgMTRweCAhZGVmYXVsdDtcclxuJGZvbnQtc2l6ZS1sYXJnZTogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XHJcbiRmb250LXNpemUtc21hbGw6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxyXG5cclxuJGZvbnQtc2l6ZS1oMTogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi42KSkgIWRlZmF1bHQ7IC8vIH4zNnB4XHJcbiRmb250LXNpemUtaDI6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuMTUpKSAhZGVmYXVsdDsgLy8gfjMwcHhcclxuJGZvbnQtc2l6ZS1oMzogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjcpKSAhZGVmYXVsdDsgLy8gfjI0cHhcclxuJGZvbnQtc2l6ZS1oNDogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XHJcbiRmb250LXNpemUtaDU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xyXG4kZm9udC1zaXplLWg2OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcclxuXHJcbi8vKiogVW5pdC1sZXNzIGBsaW5lLWhlaWdodGAgZm9yIHVzZSBpbiBjb21wb25lbnRzIGxpa2UgYnV0dG9ucy5cclxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAxLjQyODU3MTQyOSAhZGVmYXVsdDsgLy8gMjAvMTRcclxuLy8qKiBDb21wdXRlZCBcImxpbmUtaGVpZ2h0XCIgKGBmb250LXNpemVgICogYGxpbmUtaGVpZ2h0YCkgZm9yIHVzZSB3aXRoIGBtYXJnaW5gLCBgcGFkZGluZ2AsIGV0Yy5cclxuJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOiAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UpKSAhZGVmYXVsdDsgLy8gfjIwcHhcclxuXHJcbi8vKiogQnkgZGVmYXVsdCwgdGhpcyBpbmhlcml0cyBmcm9tIHRoZSBgPGJvZHk+YC5cclxuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICBpbmhlcml0ICFkZWZhdWx0O1xyXG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgIDUwMCAhZGVmYXVsdDtcclxuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAxLjEgIWRlZmF1bHQ7XHJcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IEljb25vZ3JhcGh5XHJcbi8vXHJcbi8vIyMgU3BlY2lmeSBjdXN0b20gbG9jYXRpb24gYW5kIGZpbGVuYW1lIG9mIHRoZSBpbmNsdWRlZCBHbHlwaGljb25zIGljb24gZm9udC4gVXNlZnVsIGZvciB0aG9zZSBpbmNsdWRpbmcgQm9vdHN0cmFwIHZpYSBCb3dlci5cclxuXHJcbi8vKiogTG9hZCBmb250cyBmcm9tIHRoaXMgZGlyZWN0b3J5LlxyXG5cclxuLy8gW2NvbnZlcnRlcl0gSWYgJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciBpZiB1c2VkLCBwcm92aWRlIHBhdGggcmVsYXRpdmUgdG8gdGhlIGFzc2V0cyBsb2FkIHBhdGguXHJcbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgYmVjYXVzZSBzb21lIGFzc2V0IGhlbHBlcnMsIHN1Y2ggYXMgU3Byb2NrZXRzLCBkbyBub3Qgd29yayB3aXRoIGZpbGUtcmVsYXRpdmUgcGF0aHMuXHJcbiRpY29uLWZvbnQtcGF0aDogaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgXCJib290c3RyYXAvXCIsIFwiLi4vZm9udHMvYm9vdHN0cmFwL1wiKSAhZGVmYXVsdDtcclxuXHJcbi8vKiogRmlsZSBuYW1lIGZvciBhbGwgZm9udCBmaWxlcy5cclxuJGljb24tZm9udC1uYW1lOiAgICAgICAgICBcImdseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXJcIiAhZGVmYXVsdDtcclxuLy8qKiBFbGVtZW50IElEIHdpdGhpbiBTVkcgaWNvbiBmaWxlLlxyXG4kaWNvbi1mb250LXN2Zy1pZDogICAgICAgIFwiZ2x5cGhpY29uc19oYWxmbGluZ3NyZWd1bGFyXCIgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBDb21wb25lbnRzXHJcbi8vXHJcbi8vIyMgRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLiBWYWx1ZXMgYmFzZWQgb24gMTRweCB0ZXh0IGFuZCAxLjQyOCBsaW5lLWhlaWdodCAofjIwcHggdG8gc3RhcnQpLlxyXG5cclxuJHBhZGRpbmctYmFzZS12ZXJ0aWNhbDogICAgIDZweCAhZGVmYXVsdDtcclxuJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsOiAgIDEycHggIWRlZmF1bHQ7XHJcblxyXG4kcGFkZGluZy1sYXJnZS12ZXJ0aWNhbDogICAgMTBweCAhZGVmYXVsdDtcclxuJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDogIDE2cHggIWRlZmF1bHQ7XHJcblxyXG4kcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDogICAgNXB4ICFkZWZhdWx0O1xyXG4kcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsOiAgMTBweCAhZGVmYXVsdDtcclxuXHJcbiRwYWRkaW5nLXhzLXZlcnRpY2FsOiAgICAgICAxcHggIWRlZmF1bHQ7XHJcbiRwYWRkaW5nLXhzLWhvcml6b250YWw6ICAgICA1cHggIWRlZmF1bHQ7XHJcblxyXG4kbGluZS1oZWlnaHQtbGFyZ2U6ICAgICAgICAgMS4zMzMzMzMzICFkZWZhdWx0OyAvLyBleHRyYSBkZWNpbWFscyBmb3IgV2luIDguMSBDaHJvbWVcclxuJGxpbmUtaGVpZ2h0LXNtYWxsOiAgICAgICAgIDEuNSAhZGVmYXVsdDtcclxuXHJcbiRib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICA0cHggIWRlZmF1bHQ7XHJcbiRib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICA2cHggIWRlZmF1bHQ7XHJcbiRib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAzcHggIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEdsb2JhbCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXHJcbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAjZmZmICFkZWZhdWx0O1xyXG4vLyoqIEdsb2JhbCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cclxuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBXaWR0aCBvZiB0aGUgYGJvcmRlcmAgZm9yIGdlbmVyYXRpbmcgY2FyZXRzIHRoYXQgaW5kaWNhdG9yIGRyb3Bkb3ducy5cclxuJGNhcmV0LXdpZHRoLWJhc2U6ICAgICAgICAgIDRweCAhZGVmYXVsdDtcclxuLy8qKiBDYXJldHMgaW5jcmVhc2Ugc2xpZ2h0bHkgaW4gc2l6ZSBmb3IgbGFyZ2VyIGNvbXBvbmVudHMuXHJcbiRjYXJldC13aWR0aC1sYXJnZTogICAgICAgICA1cHggIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBUYWJsZXNcclxuLy9cclxuLy8jIyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXHJcblxyXG4vLyoqIFBhZGRpbmcgZm9yIGA8dGg+YHMgYW5kIGA8dGQ+YHMuXHJcbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgICAgOHB4ICFkZWZhdWx0O1xyXG4vLyoqIFBhZGRpbmcgZm9yIGNlbGxzIGluIGAudGFibGUtY29uZGVuc2VkYC5cclxuJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc6ICA1cHggIWRlZmF1bHQ7XHJcblxyXG4vLyoqIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBhbGwgdGFibGVzLlxyXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xyXG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1zdHJpcGVkYC5cclxuJHRhYmxlLWJnLWFjY2VudDogICAgICAgICAgICAgICAjZjlmOWY5ICFkZWZhdWx0O1xyXG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1ob3ZlcmAuXHJcbiR0YWJsZS1iZy1ob3ZlcjogICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcclxuJHRhYmxlLWJnLWFjdGl2ZTogICAgICAgICAgICAgICAkdGFibGUtYmctaG92ZXIgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cclxuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gQnV0dG9uc1xyXG4vL1xyXG4vLyMjIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgY29sb3IuXHJcblxyXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XHJcblxyXG4kYnRuLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xyXG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kYnRuLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xyXG5cclxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGJ0bi1wcmltYXJ5LWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XHJcbiRidG4tcHJpbWFyeS1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXByaW1hcnktYmcsIDUlKSAhZGVmYXVsdDtcclxuXHJcbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRidG4tc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xyXG4kYnRuLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1zdWNjZXNzLWJnLCA1JSkgIWRlZmF1bHQ7XHJcblxyXG4kYnRuLWluZm8tY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kYnRuLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcclxuJGJ0bi1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICAgZGFya2VuKCRidG4taW5mby1iZywgNSUpICFkZWZhdWx0O1xyXG5cclxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XHJcbiRidG4td2FybmluZy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXdhcm5pbmctYmcsIDUlKSAhZGVmYXVsdDtcclxuXHJcbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRidG4tZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XHJcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkYnRuLWRhbmdlci1iZywgNSUpICFkZWZhdWx0O1xyXG5cclxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBGb3Jtc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIGA8aW5wdXQ+YCBiYWNrZ3JvdW5kIGNvbG9yXHJcbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbi8vKiogYDxpbnB1dCBkaXNhYmxlZD5gIGJhY2tncm91bmQgY29sb3JcclxuJGlucHV0LWJnLWRpc2FibGVkOiAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcclxuXHJcbi8vKiogVGV4dCBjb2xvciBmb3IgYDxpbnB1dD5gc1xyXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcclxuLy8qKiBgPGlucHV0PmAgYm9yZGVyIGNvbG9yXHJcbiRpbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XHJcblxyXG4vLyBUT0RPOiBSZW5hbWUgYCRpbnB1dC1ib3JkZXItcmFkaXVzYCB0byBgJGlucHV0LWJvcmRlci1yYWRpdXMtYmFzZWAgaW4gdjRcclxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXHJcbi8vIFRoaXMgaGFzIG5vIGVmZmVjdCBvbiBgPHNlbGVjdD5gcyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxyXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xyXG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXHJcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xyXG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXHJcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xyXG5cclxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGlucHV0cyBvbiBmb2N1c1xyXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAgICAgICAgICAgICAjNjZhZmU5ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBQbGFjZWhvbGRlciB0ZXh0IGNvbG9yXHJcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogICAgICAgICM5OTkgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxyXG4kaW5wdXQtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgICAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xyXG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcclxuJGlucHV0LWhlaWdodC1sYXJnZTogICAgICAgICAgICAgKGNlaWwoJGZvbnQtc2l6ZS1sYXJnZSAqICRsaW5lLWhlaWdodC1sYXJnZSkgKyAoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xyXG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcclxuJGlucHV0LWhlaWdodC1zbWFsbDogICAgICAgICAgICAgKGZsb29yKCRmb250LXNpemUtc21hbGwgKiAkbGluZS1oZWlnaHQtc21hbGwpICsgKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcclxuXHJcbiRsZWdlbmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XHJcbiRsZWdlbmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXHJcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XHJcbi8vKiogQm9yZGVyIGNvbG9yIGZvciB0ZXh0dWFsIGlucHV0IGFkZG9uc1xyXG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyICFkZWZhdWx0O1xyXG5cclxuLy8qKiBEaXNhYmxlZCBjdXJzb3IgZm9yIGZvcm0gY29udHJvbHMgYW5kIGJ1dHRvbnMuXHJcbiRjdXJzb3ItZGlzYWJsZWQ6ICAgICAgICAgICAgICAgIG5vdC1hbGxvd2VkICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gRHJvcGRvd25zXHJcbi8vXHJcbi8vIyMgRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxyXG5cclxuLy8qKiBCYWNrZ3JvdW5kIGZvciB0aGUgZHJvcGRvd24gbWVudS5cclxuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgLlxyXG4kZHJvcGRvd24tYm9yZGVyOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4xNSkgIWRlZmF1bHQ7XHJcbi8vKiogRHJvcGRvd24gbWVudSBgYm9yZGVyLWNvbG9yYCAqKmZvciBJRTgqKi5cclxuJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjogICAgICAgI2NjYyAhZGVmYXVsdDtcclxuLy8qKiBEaXZpZGVyIGNvbG9yIGZvciBiZXR3ZWVuIGRyb3Bkb3duIGl0ZW1zLlxyXG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBEcm9wZG93biBsaW5rIHRleHQgY29sb3IuXHJcbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XHJcbi8vKiogSG92ZXIgY29sb3IgZm9yIGRyb3Bkb3duIGxpbmtzLlxyXG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGdyYXktZGFyaywgNSUpICFkZWZhdWx0O1xyXG4vLyoqIEhvdmVyIGJhY2tncm91bmQgZm9yIGRyb3Bkb3duIGxpbmtzLlxyXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIHRleHQgY29sb3IuXHJcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xyXG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cclxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIERpc2FibGVkIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxyXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuXHJcbi8vKiogVGV4dCBjb2xvciBmb3IgaGVhZGVycyB3aXRoaW4gZHJvcGRvd24gbWVudXMuXHJcbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBEZXByZWNhdGVkIGAkZHJvcGRvd24tY2FyZXQtY29sb3JgIGFzIG9mIHYzLjEuMFxyXG4kZHJvcGRvd24tY2FyZXQtY29sb3I6ICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vLS0gWi1pbmRleCBtYXN0ZXIgbGlzdFxyXG4vL1xyXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcclxuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxyXG4vL1xyXG4vLyBOb3RlOiBUaGVzZSB2YXJpYWJsZXMgYXJlIG5vdCBnZW5lcmF0ZWQgaW50byB0aGUgQ3VzdG9taXplci5cclxuXHJcbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XHJcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XHJcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XHJcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XHJcbiR6aW5kZXgtbmF2YmFyLWZpeGVkOiAgICAgIDEwMzAgIWRlZmF1bHQ7XHJcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBNZWRpYSBxdWVyaWVzIGJyZWFrcG9pbnRzXHJcbi8vXHJcbi8vIyMgRGVmaW5lIHRoZSBicmVha3BvaW50cyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSwgYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cclxuXHJcbi8vIEV4dHJhIHNtYWxsIHNjcmVlbiAvIHBob25lXHJcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14c2AgYXMgb2YgdjMuMC4xXHJcbiRzY3JlZW4teHM6ICAgICAgICAgICAgICAgICAgNDgwcHggIWRlZmF1bHQ7XHJcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14cy1taW5gIGFzIG9mIHYzLjIuMFxyXG4kc2NyZWVuLXhzLW1pbjogICAgICAgICAgICAgICRzY3JlZW4teHMgIWRlZmF1bHQ7XHJcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1waG9uZWAgYXMgb2YgdjMuMC4xXHJcbiRzY3JlZW4tcGhvbmU6ICAgICAgICAgICAgICAgJHNjcmVlbi14cy1taW4gIWRlZmF1bHQ7XHJcblxyXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcclxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXNtYCBhcyBvZiB2My4wLjFcclxuJHNjcmVlbi1zbTogICAgICAgICAgICAgICAgICA3NjhweCAhZGVmYXVsdDtcclxuJHNjcmVlbi1zbS1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXNtICFkZWZhdWx0O1xyXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tdGFibGV0YCBhcyBvZiB2My4wLjFcclxuJHNjcmVlbi10YWJsZXQ6ICAgICAgICAgICAgICAkc2NyZWVuLXNtLW1pbiAhZGVmYXVsdDtcclxuXHJcbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXHJcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1tZGAgYXMgb2YgdjMuMC4xXHJcbiRzY3JlZW4tbWQ6ICAgICAgICAgICAgICAgICAgOTkycHggIWRlZmF1bHQ7XHJcbiRzY3JlZW4tbWQtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1tZCAhZGVmYXVsdDtcclxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxyXG4kc2NyZWVuLWRlc2t0b3A6ICAgICAgICAgICAgICRzY3JlZW4tbWQtbWluICFkZWZhdWx0O1xyXG5cclxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXHJcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZ2AgYXMgb2YgdjMuMC4xXHJcbiRzY3JlZW4tbGc6ICAgICAgICAgICAgICAgICAgMTIwMHB4ICFkZWZhdWx0O1xyXG4kc2NyZWVuLWxnLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbGcgIWRlZmF1bHQ7XHJcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZy1kZXNrdG9wYCBhcyBvZiB2My4wLjFcclxuJHNjcmVlbi1sZy1kZXNrdG9wOiAgICAgICAgICAkc2NyZWVuLWxnLW1pbiAhZGVmYXVsdDtcclxuXHJcbi8vIFNvIG1lZGlhIHF1ZXJpZXMgZG9uJ3Qgb3ZlcmxhcCB3aGVuIHJlcXVpcmVkLCBwcm92aWRlIGEgbWF4aW11bVxyXG4kc2NyZWVuLXhzLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLXNtLW1pbiAtIDEpICFkZWZhdWx0O1xyXG4kc2NyZWVuLXNtLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLW1kLW1pbiAtIDEpICFkZWZhdWx0O1xyXG4kc2NyZWVuLW1kLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLWxnLW1pbiAtIDEpICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gR3JpZCBzeXN0ZW1cclxuLy9cclxuLy8jIyBEZWZpbmUgeW91ciBjdXN0b20gcmVzcG9uc2l2ZSBncmlkLlxyXG5cclxuLy8qKiBOdW1iZXIgb2YgY29sdW1ucyBpbiB0aGUgZ3JpZC5cclxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xyXG4vLyoqIFBhZGRpbmcgYmV0d2VlbiBjb2x1bW5zLiBHZXRzIGRpdmlkZWQgaW4gaGFsZiBmb3IgdGhlIGxlZnQgYW5kIHJpZ2h0LlxyXG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgMzBweCAhZGVmYXVsdDtcclxuLy8gTmF2YmFyIGNvbGxhcHNlXHJcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWNvbWVzIHVuY29sbGFwc2VkLlxyXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50OiAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XHJcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWdpbnMgY29sbGFwc2luZy5cclxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXg6ICgkZ3JpZC1mbG9hdC1icmVha3BvaW50IC0gMSkgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBDb250YWluZXIgc2l6ZXNcclxuLy9cclxuLy8jIyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxyXG5cclxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XHJcbiRjb250YWluZXItdGFibGV0OiAgICAgICAgICAgICAoNzIwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xyXG4vLyoqIEZvciBgJHNjcmVlbi1zbS1taW5gIGFuZCB1cC5cclxuJGNvbnRhaW5lci1zbTogICAgICAgICAgICAgICAgICRjb250YWluZXItdGFibGV0ICFkZWZhdWx0O1xyXG5cclxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3BcclxuJGNvbnRhaW5lci1kZXNrdG9wOiAgICAgICAgICAgICg5NDBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XHJcbi8vKiogRm9yIGAkc2NyZWVuLW1kLW1pbmAgYW5kIHVwLlxyXG4kY29udGFpbmVyLW1kOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1kZXNrdG9wICFkZWZhdWx0O1xyXG5cclxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXHJcbiRjb250YWluZXItbGFyZ2UtZGVza3RvcDogICAgICAoMTE0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcclxuLy8qKiBGb3IgYCRzY3JlZW4tbGctbWluYCBhbmQgdXAuXHJcbiRjb250YWluZXItbGc6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWxhcmdlLWRlc2t0b3AgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBOYXZiYXJcclxuLy9cclxuLy8jI1xyXG5cclxuLy8gQmFzaWNzIG9mIGEgbmF2YmFyXHJcbiRuYXZiYXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcclxuJG5hdmJhci1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAkbGluZS1oZWlnaHQtY29tcHV0ZWQgIWRlZmF1bHQ7XHJcbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcclxuJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICBmbG9vcigoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpICFkZWZhdWx0O1xyXG4kbmF2YmFyLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICgoJG5hdmJhci1oZWlnaHQgLSAkbGluZS1oZWlnaHQtY29tcHV0ZWQpIC8gMikgIWRlZmF1bHQ7XHJcbiRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDogICAgICAgMzQwcHggIWRlZmF1bHQ7XHJcblxyXG4kbmF2YmFyLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgI2Y4ZjhmOCAhZGVmYXVsdDtcclxuJG5hdmJhci1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcclxuXHJcbi8vIE5hdmJhciBsaW5rc1xyXG4kbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcclxuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcclxuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcclxuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcclxuXHJcbi8vIE5hdmJhciBicmFuZCBsYWJlbFxyXG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3IgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xyXG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XHJcblxyXG4vLyBOYXZiYXIgdG9nZ2xlXHJcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWljb24tYmFyLWJnOiAgICAgICAgIzg4OCAhZGVmYXVsdDtcclxuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gSW52ZXJ0ZWQgbmF2YmFyXHJcbi8vIFJlc2V0IGludmVydGVkIG5hdmJhciBiYXNpY3NcclxuJG5hdmJhci1pbnZlcnNlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWxpZ2h0LCAxNSUpICFkZWZhdWx0O1xyXG4kbmF2YmFyLWludmVyc2UtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICMyMjIgIWRlZmF1bHQ7XHJcbiRuYXZiYXItaW52ZXJzZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcclxuXHJcbi8vIEludmVydGVkIG5hdmJhciBsaW5rc1xyXG4kbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XHJcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcclxuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcclxuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpICFkZWZhdWx0O1xyXG4kbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICM0NDQgIWRlZmF1bHQ7XHJcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XHJcblxyXG4vLyBJbnZlcnRlZCBuYXZiYXIgYnJhbmQgbGFiZWxcclxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvciAhZGVmYXVsdDtcclxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xyXG5cclxuLy8gSW52ZXJ0ZWQgbmF2YmFyIHRvZ2dsZVxyXG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWhvdmVyLWJnOiAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XHJcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICAjMzMzICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gTmF2c1xyXG4vL1xyXG4vLyMjXHJcblxyXG4vLz09PSBTaGFyZWQgbmF2IHN0eWxlc1xyXG4kbmF2LWxpbmstcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcclxuJG5hdi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG5cclxuJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuJG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuXHJcbi8vPT0gVGFic1xyXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcblxyXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XHJcblxyXG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xyXG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xyXG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgICNkZGQgIWRlZmF1bHQ7XHJcblxyXG4kbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcbiRuYXYtdGFicy1qdXN0aWZpZWQtYWN0aXZlLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XHJcblxyXG4vLz09IFBpbGxzXHJcbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcclxuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcclxuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IFBhZ2luYXRpb25cclxuLy9cclxuLy8jI1xyXG5cclxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcblxyXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcclxuXHJcbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcclxuXHJcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXI6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gUGFnZXJcclxuLy9cclxuLy8jI1xyXG5cclxuJHBhZ2VyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYmcgIWRlZmF1bHQ7XHJcbiRwYWdlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJvcmRlciAhZGVmYXVsdDtcclxuJHBhZ2VyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcclxuXHJcbiRwYWdlci1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWhvdmVyLWJnICFkZWZhdWx0O1xyXG5cclxuJHBhZ2VyLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xyXG4kcGFnZXItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kcGFnZXItZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IEp1bWJvdHJvblxyXG4vL1xyXG4vLyMjXHJcblxyXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xyXG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xyXG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG4kanVtYm90cm9uLWhlYWRpbmctY29sb3I6ICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xyXG4kanVtYm90cm9uLWZvbnQtc2l6ZTogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjUpKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IEZvcm0gc3RhdGVzIGFuZCBhbGVydHNcclxuLy9cclxuLy8jIyBEZWZpbmUgY29sb3JzIGZvciBmb3JtIGZlZWRiYWNrIHN0YXRlcyBhbmQsIGJ5IGRlZmF1bHQsIGFsZXJ0cy5cclxuXHJcbiRzdGF0ZS1zdWNjZXNzLXRleHQ6ICAgICAgICAgICAgICMzYzc2M2QgIWRlZmF1bHQ7XHJcbiRzdGF0ZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICNkZmYwZDggIWRlZmF1bHQ7XHJcbiRzdGF0ZS1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1zdWNjZXNzLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XHJcblxyXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICAgICAjMzE3MDhmICFkZWZhdWx0O1xyXG4kc3RhdGUtaW5mby1iZzogICAgICAgICAgICAgICAgICAjZDllZGY3ICFkZWZhdWx0O1xyXG4kc3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtaW5mby1iZywgLTEwKSwgNyUpICFkZWZhdWx0O1xyXG5cclxuJHN0YXRlLXdhcm5pbmctdGV4dDogICAgICAgICAgICAgIzhhNmQzYiAhZGVmYXVsdDtcclxuJHN0YXRlLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcclxuJHN0YXRlLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXdhcm5pbmctYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcclxuXHJcbiRzdGF0ZS1kYW5nZXItdGV4dDogICAgICAgICAgICAgICNhOTQ0NDIgIWRlZmF1bHQ7XHJcbiRzdGF0ZS1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICNmMmRlZGUgIWRlZmF1bHQ7XHJcbiRzdGF0ZS1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1kYW5nZXItYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IFRvb2x0aXBzXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vKiogVG9vbHRpcCBtYXggd2lkdGhcclxuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XHJcbi8vKiogVG9vbHRpcCB0ZXh0IGNvbG9yXHJcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbi8vKiogVG9vbHRpcCBiYWNrZ3JvdW5kIGNvbG9yXHJcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XHJcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBUb29sdGlwIGFycm93IHdpZHRoXHJcbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgIDVweCAhZGVmYXVsdDtcclxuLy8qKiBUb29sdGlwIGFycm93IGNvbG9yXHJcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gUG9wb3ZlcnNcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBQb3BvdmVyIGJvZHkgYmFja2dyb3VuZCBjb2xvclxyXG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbi8vKiogUG9wb3ZlciBtYXhpbXVtIHdpZHRoXHJcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XHJcbi8vKiogUG9wb3ZlciBib3JkZXIgY29sb3JcclxuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4yKSAhZGVmYXVsdDtcclxuLy8qKiBQb3BvdmVyIGZhbGxiYWNrIGJvcmRlciBjb2xvclxyXG4kcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIFBvcG92ZXIgdGl0bGUgYmFja2dyb3VuZCBjb2xvclxyXG4kcG9wb3Zlci10aXRsZS1iZzogICAgICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xyXG5cclxuLy8qKiBQb3BvdmVyIGFycm93IHdpZHRoXHJcbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcclxuLy8qKiBQb3BvdmVyIGFycm93IGNvbG9yXHJcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgd2lkdGhcclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg6ICAgICAgICAgICAoJHBvcG92ZXItYXJyb3ctd2lkdGggKyAxKSAhZGVmYXVsdDtcclxuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGNvbG9yXHJcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgICAgZmFkZV9pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIDAuMDUpICFkZWZhdWx0O1xyXG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgZmFsbGJhY2sgY29sb3JcclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I6ICBkYXJrZW4oJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yLCAyMCUpICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gTGFiZWxzXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vKiogRGVmYXVsdCBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXHJcbiRsYWJlbC1kZWZhdWx0LWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4vLyoqIFByaW1hcnkgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxyXG4kbGFiZWwtcHJpbWFyeS1iZzogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcclxuLy8qKiBTdWNjZXNzIGxhYmVsIGJhY2tncm91bmQgY29sb3JcclxuJGxhYmVsLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XHJcbi8vKiogSW5mbyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXHJcbiRsYWJlbC1pbmZvLWJnOiAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xyXG4vLyoqIFdhcm5pbmcgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxyXG4kbGFiZWwtd2FybmluZy1iZzogICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcclxuLy8qKiBEYW5nZXIgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxyXG4kbGFiZWwtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xyXG5cclxuLy8qKiBEZWZhdWx0IGxhYmVsIHRleHQgY29sb3JcclxuJGxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuLy8qKiBEZWZhdWx0IHRleHQgY29sb3Igb2YgYSBsaW5rZWQgbGFiZWxcclxuJGxhYmVsLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IE1vZGFsc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxyXG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIHRpdGxlXHJcbiRtb2RhbC10aXRsZS1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XHJcbi8vKiogTW9kYWwgdGl0bGUgbGluZS1oZWlnaHRcclxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgY29udGVudCBhcmVhXHJcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvclxyXG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xyXG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yICoqZm9yIElFOCoqXHJcbiRtb2RhbC1jb250ZW50LWZhbGxiYWNrLWJvcmRlci1jb2xvcjogICAgICAgICAgIzk5OSAhZGVmYXVsdDtcclxuXHJcbi8vKiogTW9kYWwgYmFja2Ryb3AgYmFja2dyb3VuZCBjb2xvclxyXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xyXG4vLyoqIE1vZGFsIGJhY2tkcm9wIG9wYWNpdHlcclxuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgLjUgIWRlZmF1bHQ7XHJcbi8vKiogTW9kYWwgaGVhZGVyIGJvcmRlciBjb2xvclxyXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAjZTVlNWU1ICFkZWZhdWx0O1xyXG4vLyoqIE1vZGFsIGZvb3RlciBib3JkZXIgY29sb3JcclxuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICA5MDBweCAhZGVmYXVsdDtcclxuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgNjAwcHggIWRlZmF1bHQ7XHJcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gQWxlcnRzXHJcbi8vXHJcbi8vIyMgRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXHJcblxyXG4kYWxlcnQtcGFkZGluZzogICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xyXG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xyXG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICBib2xkICFkZWZhdWx0O1xyXG5cclxuJGFsZXJ0LXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XHJcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XHJcbiRhbGVydC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcclxuXHJcbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xyXG4kYWxlcnQtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xyXG4kYWxlcnQtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XHJcblxyXG4kYWxlcnQtd2FybmluZy1iZzogICAgICAgICAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcclxuJGFsZXJ0LXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcclxuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xyXG5cclxuJGFsZXJ0LWRhbmdlci1iZzogICAgICAgICAgICAgJHN0YXRlLWRhbmdlci1iZyAhZGVmYXVsdDtcclxuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xyXG4kYWxlcnQtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IFByb2dyZXNzIGJhcnNcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSB3aG9sZSBwcm9ncmVzcyBjb21wb25lbnRcclxuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcclxuLy8qKiBQcm9ncmVzcyBiYXIgdGV4dCBjb2xvclxyXG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4vLyoqIFZhcmlhYmxlIGZvciBzZXR0aW5nIHJvdW5kZWQgY29ybmVycyBvbiBwcm9ncmVzcyBiYXIuXHJcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIERlZmF1bHQgcHJvZ3Jlc3MgYmFyIGNvbG9yXHJcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xyXG4vLyoqIFN1Y2Nlc3MgcHJvZ3Jlc3MgYmFyIGNvbG9yXHJcbiRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZzogICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xyXG4vLyoqIFdhcm5pbmcgcHJvZ3Jlc3MgYmFyIGNvbG9yXHJcbiRwcm9ncmVzcy1iYXItd2FybmluZy1iZzogICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xyXG4vLyoqIERhbmdlciBwcm9ncmVzcyBiYXIgY29sb3JcclxuJHByb2dyZXNzLWJhci1kYW5nZXItYmc6ICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcclxuLy8qKiBJbmZvIHByb2dyZXNzIGJhciBjb2xvclxyXG4kcHJvZ3Jlc3MtYmFyLWluZm8tYmc6ICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IExpc3QgZ3JvdXBcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9uIGAubGlzdC1ncm91cC1pdGVtYFxyXG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbi8vKiogYC5saXN0LWdyb3VwLWl0ZW1gIGJvcmRlciBjb2xvclxyXG4kbGlzdC1ncm91cC1ib3JkZXI6ICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcbi8vKiogTGlzdCBncm91cCBib3JkZXIgcmFkaXVzXHJcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcclxuXHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBzaW5nbGUgbGlzdCBpdGVtcyBvbiBob3ZlclxyXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XHJcbi8vKiogVGV4dCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xyXG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xyXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcclxuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcclxuLy8qKiBCb3JkZXIgY29sb3Igb2YgYWN0aXZlIGxpc3QgZWxlbWVudHNcclxuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjogICAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XHJcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gYWN0aXZlIGxpc3QgaXRlbXNcclxuJGxpc3QtZ3JvdXAtYWN0aXZlLXRleHQtY29sb3I6ICBsaWdodGVuKCRsaXN0LWdyb3VwLWFjdGl2ZS1iZywgNDAlKSAhZGVmYXVsdDtcclxuXHJcbi8vKiogVGV4dCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXHJcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xyXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGRpc2FibGVkIGxpc3QgaXRlbXNcclxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kbGlzdC1ncm91cC1saW5rLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XHJcbiRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I6ICAgJGxpc3QtZ3JvdXAtbGluay1jb2xvciAhZGVmYXVsdDtcclxuJGxpc3QtZ3JvdXAtbGluay1oZWFkaW5nLWNvbG9yOiAjMzMzICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gUGFuZWxzXHJcbi8vXHJcbi8vIyNcclxuXHJcbiRwYW5lbC1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRwYW5lbC1ib2R5LXBhZGRpbmc6ICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XHJcbiRwYW5lbC1oZWFkaW5nLXBhZGRpbmc6ICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcclxuJHBhbmVsLWZvb3Rlci1wYWRkaW5nOiAgICAgICAgJHBhbmVsLWhlYWRpbmctcGFkZGluZyAhZGVmYXVsdDtcclxuJHBhbmVsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcclxuXHJcbi8vKiogQm9yZGVyIGNvbG9yIGZvciBlbGVtZW50cyB3aXRoaW4gcGFuZWxzXHJcbiRwYW5lbC1pbm5lci1ib3JkZXI6ICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcbiRwYW5lbC1mb290ZXItYmc6ICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XHJcblxyXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xyXG4kcGFuZWwtZGVmYXVsdC1ib3JkZXI6ICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG4kcGFuZWwtZGVmYXVsdC1oZWFkaW5nLWJnOiAgICAjZjVmNWY1ICFkZWZhdWx0O1xyXG5cclxuJHBhbmVsLXByaW1hcnktdGV4dDogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJHBhbmVsLXByaW1hcnktYm9yZGVyOiAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XHJcbiRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xyXG5cclxuJHBhbmVsLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcclxuJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xyXG4kcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcclxuXHJcbiRwYW5lbC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XHJcbiRwYW5lbC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcclxuJHBhbmVsLWluZm8taGVhZGluZy1iZzogICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XHJcblxyXG4kcGFuZWwtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xyXG4kcGFuZWwtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XHJcbiRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmc6ICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xyXG5cclxuJHBhbmVsLWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xyXG4kcGFuZWwtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcclxuJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnOiAgICAgJHN0YXRlLWRhbmdlci1iZyAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IFRodW1ibmFpbHNcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGltYWdlXHJcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgIDRweCAhZGVmYXVsdDtcclxuLy8qKiBUaHVtYm5haWwgYmFja2dyb3VuZCBjb2xvclxyXG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcclxuLy8qKiBUaHVtYm5haWwgYm9yZGVyIGNvbG9yXHJcbiR0aHVtYm5haWwtYm9yZGVyOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcbi8vKiogVGh1bWJuYWlsIGJvcmRlciByYWRpdXNcclxuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcclxuXHJcbi8vKiogQ3VzdG9tIHRleHQgY29sb3IgZm9yIHRodW1ibmFpbCBjYXB0aW9uc1xyXG4kdGh1bWJuYWlsLWNhcHRpb24tY29sb3I6ICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcclxuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGNhcHRpb25cclxuJHRodW1ibmFpbC1jYXB0aW9uLXBhZGRpbmc6ICAgOXB4ICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gV2VsbHNcclxuLy9cclxuLy8jI1xyXG5cclxuJHdlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcclxuJHdlbGwtYm9yZGVyOiAgICAgICAgICAgICAgICAgZGFya2VuKCR3ZWxsLWJnLCA3JSkgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBCYWRnZXNcclxuLy9cclxuLy8jI1xyXG5cclxuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuLy8qKiBMaW5rZWQgYmFkZ2UgdGV4dCBjb2xvciBvbiBob3ZlclxyXG4kYmFkZ2UtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xyXG4kYmFkZ2UtYmc6ICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuXHJcbi8vKiogQmFkZ2UgdGV4dCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcclxuJGJhZGdlLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XHJcbi8vKiogQmFkZ2UgYmFja2dyb3VuZCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcclxuJGJhZGdlLWFjdGl2ZS1iZzogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuXHJcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XHJcbiRiYWRnZS1saW5lLWhlaWdodDogICAgICAgICAgIDEgIWRlZmF1bHQ7XHJcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgIDEwcHggIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBCcmVhZGNydW1ic1xyXG4vL1xyXG4vLyMjXHJcblxyXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsOiAgIDhweCAhZGVmYXVsdDtcclxuJGJyZWFkY3J1bWItcGFkZGluZy1ob3Jpem9udGFsOiAxNXB4ICFkZWZhdWx0O1xyXG4vLyoqIEJyZWFkY3J1bWIgYmFja2dyb3VuZCBjb2xvclxyXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XHJcbi8vKiogQnJlYWRjcnVtYiB0ZXh0IGNvbG9yXHJcbiRicmVhZGNydW1iLWNvbG9yOiAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcclxuLy8qKiBUZXh0IGNvbG9yIG9mIGN1cnJlbnQgcGFnZSBpbiB0aGUgYnJlYWRjcnVtYlxyXG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4vLyoqIFRleHR1YWwgc2VwYXJhdG9yIGZvciBiZXR3ZWVuIGJyZWFkY3J1bWIgZWxlbWVudHNcclxuJGJyZWFkY3J1bWItc2VwYXJhdG9yOiAgICAgICAgICBcIi9cIiAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IENhcm91c2VsXHJcbi8vXHJcbi8vIyNcclxuXHJcbiRjYXJvdXNlbC10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgwLDAsMCwuNikgIWRlZmF1bHQ7XHJcblxyXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgIC41ICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcclxuXHJcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuXHJcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gQ2xvc2VcclxuLy9cclxuLy8jI1xyXG5cclxuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcclxuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcclxuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgMCAxcHggMCAjZmZmICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gQ29kZVxyXG4vL1xyXG4vLyMjXHJcblxyXG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAjYzcyNTRlICFkZWZhdWx0O1xyXG4kY29kZS1iZzogICAgICAgICAgICAgICAgICAgICAjZjlmMmY0ICFkZWZhdWx0O1xyXG5cclxuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcclxuXHJcbiRwcmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XHJcbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XHJcbiRwcmUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XHJcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgIDM0MHB4ICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gVHlwZVxyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIEhvcml6b250YWwgb2Zmc2V0IGZvciBmb3JtcyBhbmQgbGlzdHMuXHJcbiRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWw6IDE4MHB4ICFkZWZhdWx0O1xyXG4vLyoqIFRleHQgbXV0ZWQgY29sb3JcclxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcbi8vKiogQWJicmV2aWF0aW9ucyBhbmQgYWNyb255bXMgYm9yZGVyIGNvbG9yXHJcbiRhYmJyLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4vLyoqIEhlYWRpbmdzIHNtYWxsIGNvbG9yXHJcbiRoZWFkaW5ncy1zbWFsbC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG4vLyoqIEJsb2NrcXVvdGUgc21hbGwgY29sb3JcclxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcbi8vKiogQmxvY2txdW90ZSBmb250IHNpemVcclxuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xyXG4vLyoqIEJsb2NrcXVvdGUgYm9yZGVyIGNvbG9yXHJcbiRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjogICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XHJcbi8vKiogUGFnZSBoZWFkZXIgYm9yZGVyIGNvbG9yXHJcbiRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XHJcbi8vKiogV2lkdGggb2YgaG9yaXpvbnRhbCBkZXNjcmlwdGlvbiBsaXN0IHRpdGxlc1xyXG4kZGwtaG9yaXpvbnRhbC1vZmZzZXQ6ICAgICAgICAkY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsICFkZWZhdWx0O1xyXG4vLyoqIEhvcml6b250YWwgbGluZSBjb2xvci5cclxuJGhyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcclxuIiwiLy8gV2ViS2l0LXN0eWxlIGZvY3VzXHJcblxyXG5AbWl4aW4gdGFiLWZvY3VzKCkge1xyXG4gIC8vIERlZmF1bHRcclxuICBvdXRsaW5lOiB0aGluIGRvdHRlZDtcclxuICAvLyBXZWJLaXRcclxuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XHJcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XHJcbn1cclxuIiwiLy8gSW1hZ2UgTWl4aW5zXHJcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxyXG4vLyAtIFJldGluYSBpbWFnZVxyXG5cclxuXHJcbi8vIFJlc3BvbnNpdmUgaW1hZ2VcclxuLy9cclxuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cclxuQG1peGluIGltZy1yZXNwb25zaXZlKCRkaXNwbGF5OiBibG9jaykge1xyXG4gIGRpc3BsYXk6ICRkaXNwbGF5O1xyXG4gIG1heC13aWR0aDogMTAwJTsgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcclxuICBoZWlnaHQ6IGF1dG87IC8vIFBhcnQgMjogU2NhbGUgdGhlIGhlaWdodCBhY2NvcmRpbmcgdG8gdGhlIHdpZHRoLCBvdGhlcndpc2UgeW91IGdldCBzdHJldGNoaW5nXHJcbn1cclxuXHJcblxyXG4vLyBSZXRpbmEgaW1hZ2VcclxuLy9cclxuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLiBOb3RlIHRoYXQgdGhlXHJcbi8vIHNwZWxsaW5nIG9mIGBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW9gIGlzIGludGVudGlvbmFsLlxyXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWltYWdlLXBhdGgoXCIjeyRmaWxlLTF4fVwiKSwgXCIjeyRmaWxlLTF4fVwiKSk7XHJcblxyXG4gIEBtZWRpYVxyXG4gIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcclxuICBvbmx5IHNjcmVlbiBhbmQgKCAgIG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMiksXHJcbiAgb25seSBzY3JlZW4gYW5kICggICAgIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIvMSksXHJcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAyZHBweCkge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMnh9XCIpLCBcIiN7JGZpbGUtMnh9XCIpKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIFR5cG9ncmFwaHlcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBIZWFkaW5nc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxyXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcclxuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xyXG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XHJcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcclxuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xyXG5cclxuICBzbWFsbCxcclxuICAuc21hbGwge1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgY29sb3I6ICRoZWFkaW5ncy1zbWFsbC1jb2xvcjtcclxuICB9XHJcbn1cclxuXHJcbmgxLCAuaDEsXHJcbmgyLCAuaDIsXHJcbmgzLCAuaDMge1xyXG4gIG1hcmdpbi10b3A6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XHJcblxyXG4gIHNtYWxsLFxyXG4gIC5zbWFsbCB7XHJcbiAgICBmb250LXNpemU6IDY1JTtcclxuICB9XHJcbn1cclxuaDQsIC5oNCxcclxuaDUsIC5oNSxcclxuaDYsIC5oNiB7XHJcbiAgbWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xyXG4gIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcclxuXHJcbiAgc21hbGwsXHJcbiAgLnNtYWxsIHtcclxuICAgIGZvbnQtc2l6ZTogNzUlO1xyXG4gIH1cclxufVxyXG5cclxuaDEsIC5oMSB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMTsgfVxyXG5oMiwgLmgyIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgyOyB9XHJcbmgzLCAuaDMgeyBmb250LXNpemU6ICRmb250LXNpemUtaDM7IH1cclxuaDQsIC5oNCB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNDsgfVxyXG5oNSwgLmg1IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg1OyB9XHJcbmg2LCAuaDYgeyBmb250LXNpemU6ICRmb250LXNpemUtaDY7IH1cclxuXHJcblxyXG4vLyBCb2R5IHRleHRcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxucCB7XHJcbiAgbWFyZ2luOiAwIDAgKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xyXG59XHJcblxyXG4ubGVhZCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGZvbnQtc2l6ZTogZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDEuMTUpKTtcclxuICBmb250LXdlaWdodDogMzAwO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gICAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlICogMS41KTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBFbXBoYXNpcyAmIG1pc2NcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gRXg6ICgxMnB4IHNtYWxsIGZvbnQgLyAxNHB4IGJhc2UgZm9udCkgKiAxMDAlID0gYWJvdXQgODUlXHJcbnNtYWxsLFxyXG4uc21hbGwge1xyXG4gIGZvbnQtc2l6ZTogZmxvb3IoKDEwMCUgKiAkZm9udC1zaXplLXNtYWxsIC8gJGZvbnQtc2l6ZS1iYXNlKSk7XHJcbn1cclxuXHJcbm1hcmssXHJcbi5tYXJrIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RhdGUtd2FybmluZy1iZztcclxuICBwYWRkaW5nOiAuMmVtO1xyXG59XHJcblxyXG4vLyBBbGlnbm1lbnRcclxuLnRleHQtbGVmdCAgICAgICAgICAgeyB0ZXh0LWFsaWduOiBsZWZ0OyB9XHJcbi50ZXh0LXJpZ2h0ICAgICAgICAgIHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cclxuLnRleHQtY2VudGVyICAgICAgICAgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cclxuLnRleHQtanVzdGlmeSAgICAgICAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XHJcbi50ZXh0LW5vd3JhcCAgICAgICAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxyXG5cclxuLy8gVHJhbnNmb3JtYXRpb25cclxuLnRleHQtbG93ZXJjYXNlICAgICAgeyB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlOyB9XHJcbi50ZXh0LXVwcGVyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxyXG4udGV4dC1jYXBpdGFsaXplICAgICB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XHJcblxyXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xyXG4udGV4dC1tdXRlZCB7XHJcbiAgY29sb3I6ICR0ZXh0LW11dGVkO1xyXG59XHJcblxyXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXByaW1hcnknLCAkYnJhbmQtcHJpbWFyeSk7XHJcblxyXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXN1Y2Nlc3MnLCAkc3RhdGUtc3VjY2Vzcy10ZXh0KTtcclxuXHJcbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtaW5mbycsICRzdGF0ZS1pbmZvLXRleHQpO1xyXG5cclxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC13YXJuaW5nJywgJHN0YXRlLXdhcm5pbmctdGV4dCk7XHJcblxyXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LWRhbmdlcicsICRzdGF0ZS1kYW5nZXItdGV4dCk7XHJcblxyXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXHJcbi8vIEZvciBub3cgd2UnbGwgbGVhdmUgdGhlc2UgYWxvbmdzaWRlIHRoZSB0ZXh0IGNsYXNzZXMgdW50aWwgdjQgd2hlbiB3ZSBjYW5cclxuLy8gc2FmZWx5IHNoaWZ0IHRoaW5ncyBhcm91bmQgKHBlciBTZW1WZXIgcnVsZXMpLlxyXG4uYmctcHJpbWFyeSB7XHJcbiAgLy8gR2l2ZW4gdGhlIGNvbnRyYXN0IGhlcmUsIHRoaXMgaXMgdGhlIG9ubHkgY2xhc3MgdG8gaGF2ZSBpdHMgY29sb3IgaW52ZXJ0ZWRcclxuICAvLyBhdXRvbWF0aWNhbGx5LlxyXG4gIGNvbG9yOiAjZmZmO1xyXG59XHJcbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1wcmltYXJ5JywgJGJyYW5kLXByaW1hcnkpO1xyXG5cclxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXN1Y2Nlc3MnLCAkc3RhdGUtc3VjY2Vzcy1iZyk7XHJcblxyXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctaW5mbycsICRzdGF0ZS1pbmZvLWJnKTtcclxuXHJcbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy13YXJuaW5nJywgJHN0YXRlLXdhcm5pbmctYmcpO1xyXG5cclxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLWRhbmdlcicsICRzdGF0ZS1kYW5nZXItYmcpO1xyXG5cclxuXHJcbi8vIFBhZ2UgaGVhZGVyXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5wYWdlLWhlYWRlciB7XHJcbiAgcGFkZGluZy1ib3R0b206ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgLSAxKTtcclxuICBtYXJnaW46ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKiAyKSAwICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHBhZ2UtaGVhZGVyLWJvcmRlci1jb2xvcjtcclxufVxyXG5cclxuXHJcbi8vIExpc3RzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIFVub3JkZXJlZCBhbmQgT3JkZXJlZCBsaXN0c1xyXG51bCxcclxub2wge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xyXG4gIHVsLFxyXG4gIG9sIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBMaXN0IG9wdGlvbnNcclxuXHJcbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBmcm9tIGAubGlzdC11bnN0eWxlZGAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxyXG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGFzIGBAbWl4aW4gbGlzdC11bnN0eWxlZGAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxyXG4ubGlzdC11bnN0eWxlZCB7XHJcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcclxufVxyXG5cclxuXHJcbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXHJcbi5saXN0LWlubGluZSB7XHJcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcclxuICBtYXJnaW4tbGVmdDogLTVweDtcclxuXHJcbiAgPiBsaSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcclxuICB9XHJcbn1cclxuXHJcbi8vIERlc2NyaXB0aW9uIExpc3RzXHJcbmRsIHtcclxuICBtYXJnaW4tdG9wOiAwOyAvLyBSZW1vdmUgYnJvd3NlciBkZWZhdWx0XHJcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG59XHJcbmR0LFxyXG5kZCB7XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG59XHJcbmR0IHtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5kZCB7XHJcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XHJcbn1cclxuXHJcbi8vIEhvcml6b250YWwgZGVzY3JpcHRpb24gbGlzdHNcclxuLy9cclxuLy8gRGVmYXVsdHMgdG8gYmVpbmcgc3RhY2tlZCB3aXRob3V0IGFueSBvZiB0aGUgYmVsb3cgc3R5bGVzIGFwcGxpZWQsIHVudGlsIHRoZVxyXG4vLyBncmlkIGJyZWFrcG9pbnQgaXMgcmVhY2hlZCAoZGVmYXVsdCBvZiB+NzY4cHgpLlxyXG5cclxuLmRsLWhvcml6b250YWwge1xyXG4gIGRkIHtcclxuICAgIEBpbmNsdWRlIGNsZWFyZml4OyAvLyBDbGVhciB0aGUgZmxvYXRlZCBgZHRgIGlmIGFuIGVtcHR5IGBkZGAgaXMgcHJlc2VudFxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAgIGR0IHtcclxuICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgIHdpZHRoOiAoJGRsLWhvcml6b250YWwtb2Zmc2V0IC0gMjApO1xyXG4gICAgICBjbGVhcjogbGVmdDtcclxuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgIEBpbmNsdWRlIHRleHQtb3ZlcmZsb3c7XHJcbiAgICB9XHJcbiAgICBkZCB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAkZGwtaG9yaXpvbnRhbC1vZmZzZXQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gTWlzY1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBBYmJyZXZpYXRpb25zIGFuZCBhY3Jvbnltc1xyXG5hYmJyW3RpdGxlXSxcclxuLy8gQWRkIGRhdGEtKiBhdHRyaWJ1dGUgdG8gaGVscCBvdXQgb3VyIHRvb2x0aXAgcGx1Z2luLCBwZXIgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy81MjU3XHJcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0ge1xyXG4gIGN1cnNvcjogaGVscDtcclxuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICRhYmJyLWJvcmRlci1jb2xvcjtcclxufVxyXG4uaW5pdGlhbGlzbSB7XHJcbiAgZm9udC1zaXplOiA5MCU7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuLy8gQmxvY2txdW90ZXNcclxuYmxvY2txdW90ZSB7XHJcbiAgcGFkZGluZzogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBtYXJnaW46IDAgMCAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgZm9udC1zaXplOiAkYmxvY2txdW90ZS1mb250LXNpemU7XHJcbiAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAkYmxvY2txdW90ZS1ib3JkZXItY29sb3I7XHJcblxyXG4gIHAsXHJcbiAgdWwsXHJcbiAgb2wge1xyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIE5vdGU6IERlcHJlY2F0ZWQgc21hbGwgYW5kIC5zbWFsbCBhcyBvZiB2My4xLjBcclxuICAvLyBDb250ZXh0OiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjYwXHJcbiAgZm9vdGVyLFxyXG4gIHNtYWxsLFxyXG4gIC5zbWFsbCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtc2l6ZTogODAlOyAvLyBiYWNrIHRvIGRlZmF1bHQgZm9udC1zaXplXHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgICBjb2xvcjogJGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiAnXFwyMDE0IFxcMDBBMCc7IC8vIGVtIGRhc2gsIG5ic3BcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIE9wcG9zaXRlIGFsaWdubWVudCBvZiBibG9ja3F1b3RlXHJcbi8vXHJcbi8vIEhlYWRzIHVwOiBgYmxvY2txdW90ZS5wdWxsLXJpZ2h0YCBoYXMgYmVlbiBkZXByZWNhdGVkIGFzIG9mIHYzLjEuMC5cclxuLmJsb2NrcXVvdGUtcmV2ZXJzZSxcclxuYmxvY2txdW90ZS5wdWxsLXJpZ2h0IHtcclxuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCAkYmxvY2txdW90ZS1ib3JkZXItY29sb3I7XHJcbiAgYm9yZGVyLWxlZnQ6IDA7XHJcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcblxyXG4gIC8vIEFjY291bnQgZm9yIGNpdGF0aW9uXHJcbiAgZm9vdGVyLFxyXG4gIHNtYWxsLFxyXG4gIC5zbWFsbCB7XHJcbiAgICAmOmJlZm9yZSB7IGNvbnRlbnQ6ICcnOyB9XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogJ1xcMDBBMCBcXDIwMTQnOyAvLyBuYnNwLCBlbSBkYXNoXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBBZGRyZXNzZXNcclxuYWRkcmVzcyB7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbn1cclxuIiwiLy8gVHlwb2dyYXBoeVxyXG5cclxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXHJcbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XHJcbiAgI3skcGFyZW50fSB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gIH1cclxuICBhI3skcGFyZW50fTpob3ZlciB7XHJcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcclxuICB9XHJcbn1cclxuIiwiLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xyXG5cclxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXHJcbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xyXG4gICN7JHBhcmVudH0ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gIH1cclxuICBhI3skcGFyZW50fTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xyXG4gIH1cclxufVxyXG4iLCIvLyBDbGVhcmZpeFxyXG4vL1xyXG4vLyBGb3IgbW9kZXJuIGJyb3dzZXJzXHJcbi8vIDEuIFRoZSBzcGFjZSBjb250ZW50IGlzIG9uZSB3YXkgdG8gYXZvaWQgYW4gT3BlcmEgYnVnIHdoZW4gdGhlXHJcbi8vICAgIGNvbnRlbnRlZGl0YWJsZSBhdHRyaWJ1dGUgaXMgaW5jbHVkZWQgYW55d2hlcmUgZWxzZSBpbiB0aGUgZG9jdW1lbnQuXHJcbi8vICAgIE90aGVyd2lzZSBpdCBjYXVzZXMgc3BhY2UgdG8gYXBwZWFyIGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBlbGVtZW50c1xyXG4vLyAgICB0aGF0IGFyZSBjbGVhcmZpeGVkLlxyXG4vLyAyLiBUaGUgdXNlIG9mIGB0YWJsZWAgcmF0aGVyIHRoYW4gYGJsb2NrYCBpcyBvbmx5IG5lY2Vzc2FyeSBpZiB1c2luZ1xyXG4vLyAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXHJcbi8vXHJcbi8vIFNvdXJjZTogaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svXHJcblxyXG5AbWl4aW4gY2xlYXJmaXgoKSB7XHJcbiAgJjpiZWZvcmUsXHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIiBcIjsgLy8gMVxyXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDJcclxuICB9XHJcbiAgJjphZnRlciB7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICB9XHJcbn1cclxuIiwiLy8gVGV4dCBvdmVyZmxvd1xyXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXHJcblxyXG5AbWl4aW4gdGV4dC1vdmVyZmxvdygpIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuIiwiLy9cclxuLy8gQ29kZSAoaW5saW5lIGFuZCBibG9jaylcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBJbmxpbmUgYW5kIGJsb2NrIGNvZGUgc3R5bGVzXHJcbmNvZGUsXHJcbmtiZCxcclxucHJlLFxyXG5zYW1wIHtcclxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcclxufVxyXG5cclxuLy8gSW5saW5lIGNvZGVcclxuY29kZSB7XHJcbiAgcGFkZGluZzogMnB4IDRweDtcclxuICBmb250LXNpemU6IDkwJTtcclxuICBjb2xvcjogJGNvZGUtY29sb3I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmc7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcclxufVxyXG5cclxuLy8gVXNlciBpbnB1dCB0eXBpY2FsbHkgZW50ZXJlZCB2aWEga2V5Ym9hcmRcclxua2JkIHtcclxuICBwYWRkaW5nOiAycHggNHB4O1xyXG4gIGZvbnQtc2l6ZTogOTAlO1xyXG4gIGNvbG9yOiAka2JkLWNvbG9yO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc21hbGw7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgcmdiYSgwLDAsMCwuMjUpO1xyXG5cclxuICBrYmQge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGZvbnQtc2l6ZTogMTAwJTtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi8vIEJsb2NrcyBvZiBjb2RlXHJcbnByZSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZzogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAxKSAvIDIpO1xyXG4gIG1hcmdpbjogMCAwICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcclxuICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgLSAxKTsgLy8gMTRweCB0byAxM3B4XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcbiAgY29sb3I6ICRwcmUtY29sb3I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByZS1iZztcclxuICBib3JkZXI6IDFweCBzb2xpZCAkcHJlLWJvcmRlci1jb2xvcjtcclxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG5cclxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xyXG4gIGNvZGUge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcclxuLnByZS1zY3JvbGxhYmxlIHtcclxuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcclxuICBvdmVyZmxvdy15OiBzY3JvbGw7XHJcbn1cclxuIiwiLy9cclxuLy8gR3JpZCBzeXN0ZW1cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBDb250YWluZXIgd2lkdGhzXHJcbi8vXHJcbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cclxuXHJcbi5jb250YWluZXIge1xyXG4gIEBpbmNsdWRlIGNvbnRhaW5lci1maXhlZDtcclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICB3aWR0aDogJGNvbnRhaW5lci1zbTtcclxuICB9XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcbiAgICB3aWR0aDogJGNvbnRhaW5lci1tZDtcclxuICB9XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XHJcbiAgICB3aWR0aDogJGNvbnRhaW5lci1sZztcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBGbHVpZCBjb250YWluZXJcclxuLy9cclxuLy8gVXRpbGl6ZXMgdGhlIG1peGluIG1lYW50IGZvciBmaXhlZCB3aWR0aCBjb250YWluZXJzLCBidXQgd2l0aG91dCBhbnkgZGVmaW5lZFxyXG4vLyB3aWR0aCBmb3IgZmx1aWQsIGZ1bGwgd2lkdGggbGF5b3V0cy5cclxuXHJcbi5jb250YWluZXItZmx1aWQge1xyXG4gIEBpbmNsdWRlIGNvbnRhaW5lci1maXhlZDtcclxufVxyXG5cclxuXHJcbi8vIFJvd1xyXG4vL1xyXG4vLyBSb3dzIGNvbnRhaW4gYW5kIGNsZWFyIHRoZSBmbG9hdHMgb2YgeW91ciBjb2x1bW5zLlxyXG5cclxuLnJvdyB7XHJcbiAgQGluY2x1ZGUgbWFrZS1yb3c7XHJcbn1cclxuXHJcblxyXG4vLyBDb2x1bW5zXHJcbi8vXHJcbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcclxuXHJcbkBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zO1xyXG5cclxuXHJcbi8vIEV4dHJhIHNtYWxsIGdyaWRcclxuLy9cclxuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIGV4dHJhIHNtYWxsIGRldmljZXMgbGlrZVxyXG4vLyBzbWFydHBob25lcy5cclxuXHJcbkBpbmNsdWRlIG1ha2UtZ3JpZCh4cyk7XHJcblxyXG5cclxuLy8gU21hbGwgZ3JpZFxyXG4vL1xyXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIHNtYWxsIGRldmljZSByYW5nZSwgZnJvbSBwaG9uZXNcclxuLy8gdG8gdGFibGV0cy5cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChzbSk7XHJcbn1cclxuXHJcblxyXG4vLyBNZWRpdW0gZ3JpZFxyXG4vL1xyXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIGRlc2t0b3AgZGV2aWNlIHJhbmdlLlxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKG1kKTtcclxufVxyXG5cclxuXHJcbi8vIExhcmdlIGdyaWRcclxuLy9cclxuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBsYXJnZSBkZXNrdG9wIGRldmljZSByYW5nZS5cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xyXG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChsZyk7XHJcbn1cclxuIiwiLy8gR3JpZCBzeXN0ZW1cclxuLy9cclxuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxyXG5cclxuLy8gQ2VudGVyZWQgY29udGFpbmVyIGVsZW1lbnRcclxuQG1peGluIGNvbnRhaW5lci1maXhlZCgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcclxuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG59XHJcblxyXG4vLyBDcmVhdGVzIGEgd3JhcHBlciBmb3IgYSBzZXJpZXMgb2YgY29sdW1uc1xyXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XHJcbiAgbWFyZ2luLWxlZnQ6ICAoJGd1dHRlciAvIC0yKTtcclxuICBtYXJnaW4tcmlnaHQ6ICgkZ3V0dGVyIC8gLTIpO1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG59XHJcblxyXG4vLyBHZW5lcmF0ZSB0aGUgZXh0cmEgc21hbGwgY29sdW1uc1xyXG5AbWl4aW4gbWFrZS14cy1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBmbG9hdDogbGVmdDtcclxuICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgbWluLWhlaWdodDogMXB4O1xyXG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XHJcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcclxufVxyXG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XHJcbiAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG59XHJcbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XHJcbiAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbn1cclxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcclxuICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbn1cclxuXHJcbi8vIEdlbmVyYXRlIHRoZSBzbWFsbCBjb2x1bW5zXHJcbkBtaXhpbiBtYWtlLXNtLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1pbi1oZWlnaHQ6IDFweDtcclxuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xyXG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gR2VuZXJhdGUgdGhlIG1lZGl1bSBjb2x1bW5zXHJcbkBtaXhpbiBtYWtlLW1kLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1pbi1oZWlnaHQ6IDFweDtcclxuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xyXG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuQG1peGluIG1ha2UtbWQtY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcclxuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xyXG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gR2VuZXJhdGUgdGhlIGxhcmdlIGNvbHVtbnNcclxuQG1peGluIG1ha2UtbGctY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWluLWhlaWdodDogMXB4O1xyXG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XHJcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuQG1peGluIG1ha2UtbGctY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xyXG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xyXG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XHJcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cclxuLy9cclxuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXHJcbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXHJcblxyXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xyXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGk6IDEsICRsaXN0OiBcIi5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIikge1xyXG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XHJcbiAgICAkbGlzdDogXCIjeyRsaXN0fSwgLmNvbC14cy0jeyRpfSwgLmNvbC1zbS0jeyRpfSwgLmNvbC1tZC0jeyRpfSwgLmNvbC1sZy0jeyRpfVwiO1xyXG4gIH1cclxuICAjeyRsaXN0fSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcclxuICAgIG1pbi1oZWlnaHQ6IDFweDtcclxuICAgIC8vIElubmVyIGd1dHRlciB2aWEgcGFkZGluZ1xyXG4gICAgcGFkZGluZy1sZWZ0OiAgKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xyXG4gICAgcGFkZGluZy1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXHJcbkBtaXhpbiBmbG9hdC1ncmlkLWNvbHVtbnMoJGNsYXNzLCAkaTogMSwgJGxpc3Q6IFwiLmNvbC0jeyRjbGFzc30tI3skaX1cIikge1xyXG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XHJcbiAgICAkbGlzdDogXCIjeyRsaXN0fSwgLmNvbC0jeyRjbGFzc30tI3skaX1cIjtcclxuICB9XHJcbiAgI3skbGlzdH0ge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuQG1peGluIGNhbGMtZ3JpZC1jb2x1bW4oJGluZGV4LCAkY2xhc3MsICR0eXBlKSB7XHJcbiAgQGlmICgkdHlwZSA9PSB3aWR0aCkgYW5kICgkaW5kZXggPiAwKSB7XHJcbiAgICAuY29sLSN7JGNsYXNzfS0jeyRpbmRleH0ge1xyXG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xyXG4gICAgfVxyXG4gIH1cclxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID4gMCkge1xyXG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0jeyRpbmRleH0ge1xyXG4gICAgICBsZWZ0OiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpZiAoJHR5cGUgPT0gcHVzaCkgYW5kICgkaW5kZXggPT0gMCkge1xyXG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0wIHtcclxuICAgICAgbGVmdDogYXV0bztcclxuICAgIH1cclxuICB9XHJcbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA+IDApIHtcclxuICAgIC5jb2wtI3skY2xhc3N9LXB1bGwtI3skaW5kZXh9IHtcclxuICAgICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcclxuICAgIH1cclxuICB9XHJcbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA9PSAwKSB7XHJcbiAgICAuY29sLSN7JGNsYXNzfS1wdWxsLTAge1xyXG4gICAgICByaWdodDogYXV0bztcclxuICAgIH1cclxuICB9XHJcbiAgQGlmICgkdHlwZSA9PSBvZmZzZXQpIHtcclxuICAgIC5jb2wtI3skY2xhc3N9LW9mZnNldC0jeyRpbmRleH0ge1xyXG4gICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcclxuQG1peGluIGxvb3AtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zLCAkY2xhc3MsICR0eXBlKSB7XHJcbiAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkY29sdW1ucyB7XHJcbiAgICBAaW5jbHVkZSBjYWxjLWdyaWQtY29sdW1uKCRpLCAkY2xhc3MsICR0eXBlKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBDcmVhdGUgZ3JpZCBmb3Igc3BlY2lmaWMgY2xhc3NcclxuQG1peGluIG1ha2UtZ3JpZCgkY2xhc3MpIHtcclxuICBAaW5jbHVkZSBmbG9hdC1ncmlkLWNvbHVtbnMoJGNsYXNzKTtcclxuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHdpZHRoKTtcclxuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1bGwpO1xyXG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgcHVzaCk7XHJcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCBvZmZzZXQpO1xyXG59XHJcbiIsIi8vXHJcbi8vIFRhYmxlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbnRhYmxlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmc7XHJcbn1cclxuY2FwdGlvbiB7XHJcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XHJcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmc7XHJcbiAgY29sb3I6ICR0ZXh0LW11dGVkO1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxudGgge1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcblxyXG4vLyBCYXNlbGluZSBzdHlsZXNcclxuXHJcbi50YWJsZSB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICAvLyBDZWxsc1xyXG4gID4gdGhlYWQsXHJcbiAgPiB0Ym9keSxcclxuICA+IHRmb290IHtcclxuICAgID4gdHIge1xyXG4gICAgICA+IHRoLFxyXG4gICAgICA+IHRkIHtcclxuICAgICAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIEJvdHRvbSBhbGlnbiBmb3IgY29sdW1uIGhlYWRpbmdzXHJcbiAgPiB0aGVhZCA+IHRyID4gdGgge1xyXG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcclxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG4gIH1cclxuICAvLyBSZW1vdmUgdG9wIGJvcmRlciBmcm9tIHRoZWFkIGJ5IGRlZmF1bHRcclxuICA+IGNhcHRpb24gKyB0aGVhZCxcclxuICA+IGNvbGdyb3VwICsgdGhlYWQsXHJcbiAgPiB0aGVhZDpmaXJzdC1jaGlsZCB7XHJcbiAgICA+IHRyOmZpcnN0LWNoaWxkIHtcclxuICAgICAgPiB0aCxcclxuICAgICAgPiB0ZCB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAvLyBBY2NvdW50IGZvciBtdWx0aXBsZSB0Ym9keSBpbnN0YW5jZXNcclxuICA+IHRib2R5ICsgdGJvZHkge1xyXG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XHJcbiAgfVxyXG5cclxuICAvLyBOZXN0aW5nXHJcbiAgLnRhYmxlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcclxuXHJcbi50YWJsZS1jb25kZW5zZWQge1xyXG4gID4gdGhlYWQsXHJcbiAgPiB0Ym9keSxcclxuICA+IHRmb290IHtcclxuICAgID4gdHIge1xyXG4gICAgICA+IHRoLFxyXG4gICAgICA+IHRkIHtcclxuICAgICAgICBwYWRkaW5nOiAkdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEJvcmRlcmVkIHZlcnNpb25cclxuLy9cclxuLy8gQWRkIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxyXG5cclxuLnRhYmxlLWJvcmRlcmVkIHtcclxuICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG4gID4gdGhlYWQsXHJcbiAgPiB0Ym9keSxcclxuICA+IHRmb290IHtcclxuICAgID4gdHIge1xyXG4gICAgICA+IHRoLFxyXG4gICAgICA+IHRkIHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gID4gdGhlYWQgPiB0ciB7XHJcbiAgICA+IHRoLFxyXG4gICAgPiB0ZCB7XHJcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBaZWJyYS1zdHJpcGluZ1xyXG4vL1xyXG4vLyBEZWZhdWx0IHplYnJhLXN0cmlwZSBzdHlsZXMgKGFsdGVybmF0aW5nIGdyYXkgYW5kIHRyYW5zcGFyZW50IGJhY2tncm91bmRzKVxyXG5cclxuLnRhYmxlLXN0cmlwZWQge1xyXG4gID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZShvZGQpIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZy1hY2NlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gSG92ZXIgZWZmZWN0XHJcbi8vXHJcbi8vIFBsYWNlZCBoZXJlIHNpbmNlIGl0IGhhcyB0byBjb21lIGFmdGVyIHRoZSBwb3RlbnRpYWwgemVicmEgc3RyaXBpbmdcclxuXHJcbi50YWJsZS1ob3ZlciB7XHJcbiAgPiB0Ym9keSA+IHRyOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZy1ob3ZlcjtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBUYWJsZSBjZWxsIHNpemluZ1xyXG4vL1xyXG4vLyBSZXNldCBkZWZhdWx0IHRhYmxlIGJlaGF2aW9yXHJcblxyXG50YWJsZSBjb2xbY2xhc3MqPVwiY29sLVwiXSB7XHJcbiAgcG9zaXRpb246IHN0YXRpYzsgLy8gUHJldmVudCBib3JkZXIgaGlkaW5nIGluIEZpcmVmb3ggYW5kIElFOS0xMSAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2MjMpXHJcbiAgZmxvYXQ6IG5vbmU7XHJcbiAgZGlzcGxheTogdGFibGUtY29sdW1uO1xyXG59XHJcbnRhYmxlIHtcclxuICB0ZCxcclxuICB0aCB7XHJcbiAgICAmW2NsYXNzKj1cImNvbC1cIl0ge1xyXG4gICAgICBwb3NpdGlvbjogc3RhdGljOyAvLyBQcmV2ZW50IGJvcmRlciBoaWRpbmcgaW4gRmlyZWZveCBhbmQgSUU5LTExIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTYyMylcclxuICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gVGFibGUgYmFja2dyb3VuZHNcclxuLy9cclxuLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcclxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cclxuXHJcbi8vIEdlbmVyYXRlIHRoZSBjb250ZXh0dWFsIHZhcmlhbnRzXHJcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCdhY3RpdmUnLCAkdGFibGUtYmctYWN0aXZlKTtcclxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ3N1Y2Nlc3MnLCAkc3RhdGUtc3VjY2Vzcy1iZyk7XHJcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCdpbmZvJywgJHN0YXRlLWluZm8tYmcpO1xyXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnd2FybmluZycsICRzdGF0ZS13YXJuaW5nLWJnKTtcclxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ2RhbmdlcicsICRzdGF0ZS1kYW5nZXItYmcpO1xyXG5cclxuXHJcbi8vIFJlc3BvbnNpdmUgdGFibGVzXHJcbi8vXHJcbi8vIFdyYXAgeW91ciB0YWJsZXMgaW4gYC50YWJsZS1yZXNwb25zaXZlYCBhbmQgd2UnbGwgbWFrZSB0aGVtIG1vYmlsZSBmcmllbmRseVxyXG4vLyBieSBlbmFibGluZyBob3Jpem9udGFsIHNjcm9sbGluZy4gT25seSBhcHBsaWVzIDw3NjhweC4gRXZlcnl0aGluZyBhYm92ZSB0aGF0XHJcbi8vIHdpbGwgZGlzcGxheSBub3JtYWxseS5cclxuXHJcbi50YWJsZS1yZXNwb25zaXZlIHtcclxuICBvdmVyZmxvdy14OiBhdXRvO1xyXG4gIG1pbi1oZWlnaHQ6IDAuMDElOyAvLyBXb3JrYXJvdW5kIGZvciBJRTkgYnVnIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNDgzNylcclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAqIDAuNzUpO1xyXG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xyXG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG5cclxuICAgIC8vIFRpZ2h0ZW4gdXAgc3BhY2luZ1xyXG4gICAgPiAudGFibGUge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgICAgLy8gRW5zdXJlIHRoZSBjb250ZW50IGRvZXNuJ3Qgd3JhcFxyXG4gICAgICA+IHRoZWFkLFxyXG4gICAgICA+IHRib2R5LFxyXG4gICAgICA+IHRmb290IHtcclxuICAgICAgICA+IHRyIHtcclxuICAgICAgICAgID4gdGgsXHJcbiAgICAgICAgICA+IHRkIHtcclxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBTcGVjaWFsIG92ZXJyaWRlcyBmb3IgdGhlIGJvcmRlcmVkIHRhYmxlc1xyXG4gICAgPiAudGFibGUtYm9yZGVyZWQge1xyXG4gICAgICBib3JkZXI6IDA7XHJcblxyXG4gICAgICAvLyBOdWtlIHRoZSBhcHByb3ByaWF0ZSBib3JkZXJzIHNvIHRoYXQgdGhlIHBhcmVudCBjYW4gaGFuZGxlIHRoZW1cclxuICAgICAgPiB0aGVhZCxcclxuICAgICAgPiB0Ym9keSxcclxuICAgICAgPiB0Zm9vdCB7XHJcbiAgICAgICAgPiB0ciB7XHJcbiAgICAgICAgICA+IHRoOmZpcnN0LWNoaWxkLFxyXG4gICAgICAgICAgPiB0ZDpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgPiB0aDpsYXN0LWNoaWxkLFxyXG4gICAgICAgICAgPiB0ZDpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gT25seSBudWtlIHRoZSBsYXN0IHJvdydzIGJvdHRvbS1ib3JkZXIgaW4gYHRib2R5YCBhbmQgYHRmb290YCBzaW5jZVxyXG4gICAgICAvLyBjaGFuY2VzIGFyZSB0aGVyZSB3aWxsIGJlIG9ubHkgb25lIGB0cmAgaW4gYSBgdGhlYWRgIGFuZCB0aGF0IHdvdWxkXHJcbiAgICAgIC8vIHJlbW92ZSB0aGUgYm9yZGVyIGFsdG9nZXRoZXIuXHJcbiAgICAgID4gdGJvZHksXHJcbiAgICAgID4gdGZvb3Qge1xyXG4gICAgICAgID4gdHI6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICA+IHRoLFxyXG4gICAgICAgICAgPiB0ZCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBUYWJsZXNcclxuXHJcbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XHJcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcclxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxyXG4gIC50YWJsZSA+IHRoZWFkID4gdHIsXHJcbiAgLnRhYmxlID4gdGJvZHkgPiB0cixcclxuICAudGFibGUgPiB0Zm9vdCA+IHRyIHtcclxuICAgID4gdGQuI3skc3RhdGV9LFxyXG4gICAgPiB0aC4jeyRzdGF0ZX0sXHJcbiAgICAmLiN7JHN0YXRlfSA+IHRkLFxyXG4gICAgJi4jeyRzdGF0ZX0gPiB0aCB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxyXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxyXG4gIC50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIge1xyXG4gICAgPiB0ZC4jeyRzdGF0ZX06aG92ZXIsXHJcbiAgICA+IHRoLiN7JHN0YXRlfTpob3ZlcixcclxuICAgICYuI3skc3RhdGV9OmhvdmVyID4gdGQsXHJcbiAgICAmOmhvdmVyID4gLiN7JHN0YXRlfSxcclxuICAgICYuI3skc3RhdGV9OmhvdmVyID4gdGgge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gRm9ybXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBOb3JtYWxpemUgbm9uLWNvbnRyb2xzXHJcbi8vXHJcbi8vIFJlc3R5bGUgYW5kIGJhc2VsaW5lIG5vbi1jb250cm9sIGZvcm0gZWxlbWVudHMuXHJcblxyXG5maWVsZHNldCB7XHJcbiAgcGFkZGluZzogMDtcclxuICBtYXJnaW46IDA7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIC8vIENocm9tZSBhbmQgRmlyZWZveCBzZXQgYSBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcclxuICAvLyBzbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBpdCBiZWhhdmVzIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXHJcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTkuXHJcbiAgbWluLXdpZHRoOiAwO1xyXG59XHJcblxyXG5sZWdlbmQge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XHJcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgY29sb3I6ICRsZWdlbmQtY29sb3I7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGVnZW5kLWJvcmRlci1jb2xvcjtcclxufVxyXG5cclxubGFiZWwge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBtYXgtd2lkdGg6IDEwMCU7IC8vIEZvcmNlIElFOCB0byB3cmFwIGxvbmcgY29udGVudCAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTMxNDEpXHJcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG5cclxuLy8gTm9ybWFsaXplIGZvcm0gY29udHJvbHNcclxuLy9cclxuLy8gV2hpbGUgbW9zdCBvZiBvdXIgZm9ybSBzdHlsZXMgcmVxdWlyZSBleHRyYSBjbGFzc2VzLCBzb21lIGJhc2ljIG5vcm1hbGl6YXRpb25cclxuLy8gaXMgcmVxdWlyZWQgdG8gZW5zdXJlIG9wdGltdW0gZGlzcGxheSB3aXRoIG9yIHdpdGhvdXQgdGhvc2UgY2xhc3NlcyB0byBiZXR0ZXJcclxuLy8gYWRkcmVzcyBicm93c2VyIGluY29uc2lzdGVuY2llcy5cclxuXHJcbi8vIE92ZXJyaWRlIGNvbnRlbnQtYm94IGluIE5vcm1hbGl6ZSAoKiBpc24ndCBzcGVjaWZpYyBlbm91Z2gpXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xyXG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbn1cclxuXHJcbi8vIFBvc2l0aW9uIHJhZGlvcyBhbmQgY2hlY2tib3hlcyBiZXR0ZXJcclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gIG1hcmdpbjogNHB4IDAgMDtcclxuICBtYXJnaW4tdG9wOiAxcHggXFw5OyAvLyBJRTgtOVxyXG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbi8vIFNldCB0aGUgaGVpZ2h0IG9mIGZpbGUgY29udHJvbHMgdG8gbWF0Y2ggdGV4dCBpbnB1dHNcclxuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4vLyBNYWtlIHJhbmdlIGlucHV0cyBiZWhhdmUgbGlrZSB0ZXh0dWFsIGZvcm0gY29udHJvbHNcclxuaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLy8gTWFrZSBtdWx0aXBsZSBzZWxlY3QgZWxlbWVudHMgaGVpZ2h0IG5vdCBmaXhlZFxyXG5zZWxlY3RbbXVsdGlwbGVdLFxyXG5zZWxlY3Rbc2l6ZV0ge1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLy8gRm9jdXMgZm9yIGZpbGUsIHJhZGlvLCBhbmQgY2hlY2tib3hcclxuaW5wdXRbdHlwZT1cImZpbGVcIl06Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpmb2N1cyxcclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzIHtcclxuICBAaW5jbHVkZSB0YWItZm9jdXM7XHJcbn1cclxuXHJcbi8vIEFkanVzdCBvdXRwdXQgZWxlbWVudFxyXG5vdXRwdXQge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcclxuICBjb2xvcjogJGlucHV0LWNvbG9yO1xyXG59XHJcblxyXG5cclxuLy8gQ29tbW9uIGZvcm0gY29udHJvbHNcclxuLy9cclxuLy8gU2hhcmVkIHNpemUgYW5kIHR5cGUgcmVzZXRzIGZvciBmb3JtIGNvbnRyb2xzLiBBcHBseSBgLmZvcm0tY29udHJvbGAgdG8gYW55XHJcbi8vIG9mIHRoZSBmb2xsb3dpbmcgZm9ybSBjb250cm9sczpcclxuLy9cclxuLy8gc2VsZWN0XHJcbi8vIHRleHRhcmVhXHJcbi8vIGlucHV0W3R5cGU9XCJ0ZXh0XCJdXHJcbi8vIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXVxyXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl1cclxuLy8gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJkYXRlXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJtb250aFwiXVxyXG4vLyBpbnB1dFt0eXBlPVwidGltZVwiXVxyXG4vLyBpbnB1dFt0eXBlPVwid2Vla1wiXVxyXG4vLyBpbnB1dFt0eXBlPVwibnVtYmVyXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJlbWFpbFwiXVxyXG4vLyBpbnB1dFt0eXBlPVwidXJsXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJzZWFyY2hcIl1cclxuLy8gaW5wdXRbdHlwZT1cInRlbFwiXVxyXG4vLyBpbnB1dFt0eXBlPVwiY29sb3JcIl1cclxuXHJcbi5mb3JtLWNvbnRyb2wge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlOyAvLyBNYWtlIGlucHV0cyBhdCBsZWFzdCB0aGUgaGVpZ2h0IG9mIHRoZWlyIGJ1dHRvbiBjb3VudGVycGFydCAoYmFzZSBsaW5lLWhlaWdodCArIHBhZGRpbmcgKyBib3JkZXIpXHJcbiAgcGFkZGluZzogJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAkcGFkZGluZy1iYXNlLWhvcml6b250YWw7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcclxuICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzOyAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiA8c2VsZWN0PnMgaW4gQ1NTLlxyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpO1xyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IC4xNXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgLjE1cyk7XHJcblxyXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cclxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXM7XHJcblxyXG4gIC8vIFBsYWNlaG9sZGVyXHJcbiAgQGluY2x1ZGUgcGxhY2Vob2xkZXI7XHJcblxyXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXHJcbiAgLy9cclxuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxyXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXHJcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxyXG4gICZbZGlzYWJsZWRdLFxyXG4gICZbcmVhZG9ubHldLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZy1kaXNhYmxlZDtcclxuICAgIG9wYWNpdHk6IDE7IC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTVcclxuICB9XHJcblxyXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0ZXh0YXJlYSYgdG8gdGV4dGFyZWEuZm9ybS1jb250cm9sXHJcbn1cclxuXHJcbi8vIFJlc2V0IGhlaWdodCBmb3IgYHRleHRhcmVhYHNcclxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcblxyXG4vLyBTZWFyY2ggaW5wdXRzIGluIGlPU1xyXG4vL1xyXG4vLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXHJcbi8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxyXG4vLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXHJcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXHJcblxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcblxyXG4vLyBTcGVjaWFsIHN0eWxlcyBmb3IgaU9TIHRlbXBvcmFsIGlucHV0c1xyXG4vL1xyXG4vLyBJbiBNb2JpbGUgU2FmYXJpLCBzZXR0aW5nIGBkaXNwbGF5OiBibG9ja2Agb24gdGVtcG9yYWwgaW5wdXRzIGNhdXNlcyB0aGVcclxuLy8gdGV4dCB3aXRoaW4gdGhlIGlucHV0IHRvIGJlY29tZSB2ZXJ0aWNhbGx5IG1pc2FsaWduZWQuIEFzIGEgd29ya2Fyb3VuZCwgd2VcclxuLy8gc2V0IGEgcGl4ZWwgbGluZS1oZWlnaHQgdGhhdCBtYXRjaGVzIHRoZSBnaXZlbiBoZWlnaHQgb2YgdGhlIGlucHV0LCBidXQgb25seVxyXG4vLyBmb3IgU2FmYXJpLiBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTg0OFxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMCkge1xyXG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxyXG4gIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxyXG4gIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcclxuICBpbnB1dFt0eXBlPVwibW9udGhcIl0ge1xyXG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcclxuXHJcbiAgICAmLmlucHV0LXNtLFxyXG4gICAgLmlucHV0LWdyb3VwLXNtICYge1xyXG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcclxuICAgIH1cclxuXHJcbiAgICAmLmlucHV0LWxnLFxyXG4gICAgLmlucHV0LWdyb3VwLWxnICYge1xyXG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBGb3JtIGdyb3Vwc1xyXG4vL1xyXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXHJcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXHJcblxyXG4uZm9ybS1ncm91cCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxufVxyXG5cclxuXHJcbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xyXG4vL1xyXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxyXG5cclxuLnJhZGlvLFxyXG4uY2hlY2tib3gge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblxyXG4gIGxhYmVsIHtcclxuICAgIG1pbi1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDsgLy8gRW5zdXJlIHRoZSBpbnB1dCBkb2Vzbid0IGp1bXAgd2hlbiB0aGVyZSBpcyBubyB0ZXh0XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbn1cclxuLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuLnJhZGlvLWlubGluZSBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXHJcbi5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXHJcbi5jaGVja2JveC1pbmxpbmUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xyXG4gIG1hcmdpbi10b3A6IDRweCBcXDk7XHJcbn1cclxuXHJcbi5yYWRpbyArIC5yYWRpbyxcclxuLmNoZWNrYm94ICsgLmNoZWNrYm94IHtcclxuICBtYXJnaW4tdG9wOiAtNXB4OyAvLyBNb3ZlIHVwIHNpYmxpbmcgcmFkaW9zIG9yIGNoZWNrYm94ZXMgZm9yIHRpZ2h0ZXIgc3BhY2luZ1xyXG59XHJcblxyXG4vLyBSYWRpb3MgYW5kIGNoZWNrYm94ZXMgb24gc2FtZSBsaW5lXHJcbi5yYWRpby1pbmxpbmUsXHJcbi5jaGVja2JveC1pbmxpbmUge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbi5yYWRpby1pbmxpbmUgKyAucmFkaW8taW5saW5lLFxyXG4uY2hlY2tib3gtaW5saW5lICsgLmNoZWNrYm94LWlubGluZSB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tbGVmdDogMTBweDsgLy8gc3BhY2Ugb3V0IGNvbnNlY3V0aXZlIGlubGluZSBjb250cm9sc1xyXG59XHJcblxyXG4vLyBBcHBseSBzYW1lIGRpc2FibGVkIGN1cnNvciB0d2VhayBhcyBmb3IgaW5wdXRzXHJcbi8vIFNvbWUgc3BlY2lhbCBjYXJlIGlzIG5lZWRlZCBiZWNhdXNlIDxsYWJlbD5zIGRvbid0IGluaGVyaXQgdGhlaXIgcGFyZW50J3MgYGN1cnNvcmAuXHJcbi8vXHJcbi8vIE5vdGU6IE5laXRoZXIgcmFkaW9zIG5vciBjaGVja2JveGVzIGNhbiBiZSByZWFkb25seS5cclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICZbZGlzYWJsZWRdLFxyXG4gICYuZGlzYWJsZWQsXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xyXG4gIH1cclxufVxyXG4vLyBUaGVzZSBjbGFzc2VzIGFyZSB1c2VkIGRpcmVjdGx5IG9uIDxsYWJlbD5zXHJcbi5yYWRpby1pbmxpbmUsXHJcbi5jaGVja2JveC1pbmxpbmUge1xyXG4gICYuZGlzYWJsZWQsXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xyXG4gIH1cclxufVxyXG4vLyBUaGVzZSBjbGFzc2VzIGFyZSB1c2VkIG9uIGVsZW1lbnRzIHdpdGggPGxhYmVsPiBkZXNjZW5kYW50c1xyXG4ucmFkaW8sXHJcbi5jaGVja2JveCB7XHJcbiAgJi5kaXNhYmxlZCxcclxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBTdGF0aWMgZm9ybSBjb250cm9sIHRleHRcclxuLy9cclxuLy8gQXBwbHkgY2xhc3MgdG8gYSBgcGAgZWxlbWVudCB0byBtYWtlIGFueSBzdHJpbmcgb2YgdGV4dCBhbGlnbiB3aXRoIGxhYmVscyBpblxyXG4vLyBhIGhvcml6b250YWwgZm9ybSBsYXlvdXQuXHJcblxyXG4uZm9ybS1jb250cm9sLXN0YXRpYyB7XHJcbiAgLy8gU2l6ZSBpdCBhcHByb3ByaWF0ZWx5IG5leHQgdG8gcmVhbCBmb3JtIGNvbnRyb2xzXHJcbiAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XHJcbiAgcGFkZGluZy1ib3R0b206ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XHJcbiAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIGZyb20gYHBgXHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgJi5pbnB1dC1sZyxcclxuICAmLmlucHV0LXNtIHtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xyXG4vL1xyXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxyXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxyXG4vL1xyXG4vLyBUaGUgYC5mb3JtLWdyb3VwLSogZm9ybS1jb250cm9sYCB2YXJpYXRpb25zIGFyZSBzYWRseSBkdXBsaWNhdGVkIHRvIGF2b2lkIHRoZVxyXG4vLyBpc3N1ZSBkb2N1bWVudGVkIGluIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTUwNzQuXHJcblxyXG5AaW5jbHVkZSBpbnB1dC1zaXplKCcuaW5wdXQtc20nLCAkaW5wdXQtaGVpZ2h0LXNtYWxsLCAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbi5mb3JtLWdyb3VwLXNtIHtcclxuXHJcbiAgQGluY2x1ZGUgaW5wdXQtc2l6ZSgnLmZvcm0tY29udHJvbCcsICRpbnB1dC1oZWlnaHQtc21hbGwsICRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkbGluZS1oZWlnaHQtc21hbGwsICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuXHJcbiAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xyXG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xyXG4gICAgcGFkZGluZzogJHBhZGRpbmctc21hbGwtdmVydGljYWwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcclxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtc21hbGw7XHJcbiAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBpbnB1dC1zaXplKCcuaW5wdXQtbGcnLCAkaW5wdXQtaGVpZ2h0LWxhcmdlLCAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1sYXJnZSwgJGxpbmUtaGVpZ2h0LWxhcmdlLCAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZSk7XHJcbi5mb3JtLWdyb3VwLWxnIHtcclxuXHJcbiAgQGluY2x1ZGUgaW5wdXQtc2l6ZSgnLmZvcm0tY29udHJvbCcsICRpbnB1dC1oZWlnaHQtbGFyZ2UsICRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWxhcmdlLCAkbGluZS1oZWlnaHQtbGFyZ2UsICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlKTtcclxuXHJcbiAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xyXG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xyXG4gICAgcGFkZGluZzogJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcclxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtbGFyZ2U7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRm9ybSBjb250cm9sIGZlZWRiYWNrIHN0YXRlc1xyXG4vL1xyXG4vLyBBcHBseSBjb250ZXh0dWFsIGFuZCBzZW1hbnRpYyBzdGF0ZXMgdG8gaW5kaXZpZHVhbCBmb3JtIGNvbnRyb2xzLlxyXG5cclxuLmhhcy1mZWVkYmFjayB7XHJcbiAgLy8gRW5hYmxlIGFic29sdXRlIHBvc2l0aW9uaW5nXHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAvLyBFbnN1cmUgaWNvbnMgZG9uJ3Qgb3ZlcmxhcCB0ZXh0XHJcbiAgLmZvcm0tY29udHJvbCB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAoJGlucHV0LWhlaWdodC1iYXNlICogMS4yNSk7XHJcbiAgfVxyXG59XHJcbi8vIEZlZWRiYWNrIGljb24gKHJlcXVpcmVzIC5nbHlwaGljb24gY2xhc3NlcylcclxuLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICByaWdodDogMDtcclxuICB6LWluZGV4OiAyOyAvLyBFbnN1cmUgaWNvbiBpcyBhYm92ZSBpbnB1dCBncm91cHNcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogJGlucHV0LWhlaWdodC1iYXNlO1xyXG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlO1xyXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcbi5pbnB1dC1sZyArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xyXG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xyXG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcclxuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcclxufVxyXG4uaW5wdXQtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcclxuICB3aWR0aDogJGlucHV0LWhlaWdodC1zbWFsbDtcclxuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XHJcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XHJcbn1cclxuXHJcbi8vIEZlZWRiYWNrIHN0YXRlc1xyXG4uaGFzLXN1Y2Nlc3Mge1xyXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRzdGF0ZS1zdWNjZXNzLXRleHQsICRzdGF0ZS1zdWNjZXNzLXRleHQsICRzdGF0ZS1zdWNjZXNzLWJnKTtcclxufVxyXG4uaGFzLXdhcm5pbmcge1xyXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRzdGF0ZS13YXJuaW5nLXRleHQsICRzdGF0ZS13YXJuaW5nLXRleHQsICRzdGF0ZS13YXJuaW5nLWJnKTtcclxufVxyXG4uaGFzLWVycm9yIHtcclxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtZGFuZ2VyLXRleHQsICRzdGF0ZS1kYW5nZXItdGV4dCwgJHN0YXRlLWRhbmdlci1iZyk7XHJcbn1cclxuXHJcbi8vIFJlcG9zaXRpb24gZmVlZGJhY2sgaWNvbiBpZiBpbnB1dCBoYXMgdmlzaWJsZSBsYWJlbCBhYm92ZVxyXG4uaGFzLWZlZWRiYWNrIGxhYmVsIHtcclxuXHJcbiAgJiB+IC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xyXG4gICAgIHRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArIDUpOyAvLyBIZWlnaHQgb2YgdGhlIGBsYWJlbGAgYW5kIGl0cyBtYXJnaW5cclxuICB9XHJcbiAgJi5zci1vbmx5IH4gLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XHJcbiAgICAgdG9wOiAwO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEhlbHAgdGV4dFxyXG4vL1xyXG4vLyBBcHBseSB0byBhbnkgZWxlbWVudCB5b3Ugd2lzaCB0byBjcmVhdGUgbGlnaHQgdGV4dCBmb3IgcGxhY2VtZW50IGltbWVkaWF0ZWx5XHJcbi8vIGJlbG93IGEgZm9ybSBjb250cm9sLiBVc2UgZm9yIGdlbmVyYWwgaGVscCwgZm9ybWF0dGluZywgb3IgaW5zdHJ1Y3Rpb25hbCB0ZXh0LlxyXG5cclxuLmhlbHAtYmxvY2sge1xyXG4gIGRpc3BsYXk6IGJsb2NrOyAvLyBhY2NvdW50IGZvciBhbnkgZWxlbWVudCB1c2luZyBoZWxwLWJsb2NrXHJcbiAgbWFyZ2luLXRvcDogNXB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgY29sb3I6IGxpZ2h0ZW4oJHRleHQtY29sb3IsIDI1JSk7IC8vIGxpZ2h0ZW4gdGhlIHRleHQgc29tZSBmb3IgY29udHJhc3RcclxufVxyXG5cclxuXHJcbi8vIElubGluZSBmb3Jtc1xyXG4vL1xyXG4vLyBNYWtlIGZvcm1zIGFwcGVhciBpbmxpbmUoLWJsb2NrKSBieSBhZGRpbmcgdGhlIGAuZm9ybS1pbmxpbmVgIGNsYXNzLiBJbmxpbmVcclxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXHJcbi8vIHZpZXdwb3J0cyByZWFjaCA8NzY4cHguXHJcbi8vXHJcbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2ZcclxuLy8gZGVmYXVsdCBIVE1MIGZvcm0gY29udHJvbHMgYW5kIG91ciBjdXN0b20gZm9ybSBjb250cm9scyAoZS5nLiwgaW5wdXQgZ3JvdXBzKS5cclxuLy9cclxuLy8gSGVhZHMgdXAhIFRoaXMgaXMgbWl4aW4tZWQgaW50byBgLm5hdmJhci1mb3JtYCBpbiBuYXZiYXJzLmxlc3MuXHJcblxyXG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgZnJvbSBgLmZvcm0taW5saW5lYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XHJcbkBtaXhpbiBmb3JtLWlubGluZSB7XHJcblxyXG4gIC8vIEtpY2sgaW4gdGhlIGlubGluZVxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gICAgLy8gSW5saW5lLWJsb2NrIGFsbCB0aGUgdGhpbmdzIGZvciBcImlubGluZVwiXHJcbiAgICAuZm9ybS1ncm91cCB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBJbiBuYXZiYXItZm9ybSwgYWxsb3cgZm9sa3MgdG8gKm5vdCogdXNlIGAuZm9ybS1ncm91cGBcclxuICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHdpZHRoOiBhdXRvOyAvLyBQcmV2ZW50IGxhYmVscyBmcm9tIHN0YWNraW5nIGFib3ZlIGlucHV0cyBpbiBgLmZvcm0tZ3JvdXBgXHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXHJcbiAgICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAuaW5wdXQtZ3JvdXAge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcblxyXG4gICAgICAuaW5wdXQtZ3JvdXAtYWRkb24sXHJcbiAgICAgIC5pbnB1dC1ncm91cC1idG4sXHJcbiAgICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gSW5wdXQgZ3JvdXBzIG5lZWQgdGhhdCAxMDAlIHdpZHRoIHRob3VnaFxyXG4gICAgLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250cm9sLWxhYmVsIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gb24gcmFkaW9zL2NoZWNrYm94ZXMgdGhhdCB3ZXJlIHVzZWQgZm9yIHN0YWNraW5nLCBhbmRcclxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxyXG4gICAgLnJhZGlvLFxyXG4gICAgLmNoZWNrYm94IHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cclxuICAgICAgbGFiZWwge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuICAgIC5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFJlLW92ZXJyaWRlIHRoZSBmZWVkYmFjayBpY29uLlxyXG4gICAgLmhhcy1mZWVkYmFjayAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYXMgYEBtaXhpbiBmb3JtLWlubGluZWAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxyXG4uZm9ybS1pbmxpbmUge1xyXG4gIEBpbmNsdWRlIGZvcm0taW5saW5lO1xyXG59XHJcblxyXG5cclxuXHJcbi8vIEhvcml6b250YWwgZm9ybXNcclxuLy9cclxuLy8gSG9yaXpvbnRhbCBmb3JtcyBhcmUgYnVpbHQgb24gZ3JpZCBjbGFzc2VzIGFuZCBhbGxvdyB5b3UgdG8gY3JlYXRlIGZvcm1zIHdpdGhcclxuLy8gbGFiZWxzIG9uIHRoZSBsZWZ0IGFuZCBpbnB1dHMgb24gdGhlIHJpZ2h0LlxyXG5cclxuLmZvcm0taG9yaXpvbnRhbCB7XHJcblxyXG4gIC8vIENvbnNpc3RlbnQgdmVydGljYWwgYWxpZ25tZW50IG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlc1xyXG4gIC8vXHJcbiAgLy8gTGFiZWxzIGFsc28gZ2V0IHNvbWUgcmVzZXQgc3R5bGVzLCBidXQgdGhhdCBpcyBzY29wZWQgdG8gYSBtZWRpYSBxdWVyeSBiZWxvdy5cclxuICAucmFkaW8sXHJcbiAgLmNoZWNrYm94LFxyXG4gIC5yYWRpby1pbmxpbmUsXHJcbiAgLmNoZWNrYm94LWlubGluZSB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpOyAvLyBEZWZhdWx0IHBhZGRpbmcgcGx1cyBhIGJvcmRlclxyXG4gIH1cclxuICAvLyBBY2NvdW50IGZvciBwYWRkaW5nIHdlJ3JlIGFkZGluZyB0byBlbnN1cmUgdGhlIGFsaWdubWVudCBhbmQgb2YgaGVscCB0ZXh0XHJcbiAgLy8gYW5kIG90aGVyIGNvbnRlbnQgYmVsb3cgaXRlbXNcclxuICAucmFkaW8sXHJcbiAgLmNoZWNrYm94IHtcclxuICAgIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpKTtcclxuICB9XHJcblxyXG4gIC8vIE1ha2UgZm9ybSBncm91cHMgYmVoYXZlIGxpa2Ugcm93c1xyXG4gIC5mb3JtLWdyb3VwIHtcclxuICAgIEBpbmNsdWRlIG1ha2Utcm93O1xyXG4gIH1cclxuXHJcbiAgLy8gUmVzZXQgc3BhY2luZyBhbmQgcmlnaHQgYWxpZ24gbGFiZWxzLCBidXQgc2NvcGUgdG8gbWVkaWEgcXVlcmllcyBzbyB0aGF0XHJcbiAgLy8gbGFiZWxzIG9uIG5hcnJvdyB2aWV3cG9ydHMgc3RhY2sgdGhlIHNhbWUgYXMgYSBkZWZhdWx0IGZvcm0gZXhhbXBsZS5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgIC5jb250cm9sLWxhYmVsIHtcclxuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpOyAvLyBEZWZhdWx0IHBhZGRpbmcgcGx1cyBhIGJvcmRlclxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gVmFsaWRhdGlvbiBzdGF0ZXNcclxuICAvL1xyXG4gIC8vIFJlcG9zaXRpb24gdGhlIGljb24gYmVjYXVzZSBpdCdzIG5vdyB3aXRoaW4gYSBncmlkIGNvbHVtbiBhbmQgY29sdW1ucyBoYXZlXHJcbiAgLy8gYHBvc2l0aW9uOiByZWxhdGl2ZTtgIG9uIHRoZW0uIEFsc28gYWNjb3VudHMgZm9yIHRoZSBncmlkIGd1dHRlciBwYWRkaW5nLlxyXG4gIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XHJcbiAgICByaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xyXG4gIH1cclxuXHJcbiAgLy8gRm9ybSBncm91cCBzaXplc1xyXG4gIC8vXHJcbiAgLy8gUXVpY2sgdXRpbGl0eSBjbGFzcyBmb3IgYXBwbHlpbmcgYC5pbnB1dC1sZ2AgYW5kIGAuaW5wdXQtc21gIHN0eWxlcyB0byB0aGVcclxuICAvLyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoaW4gYSBgLmZvcm0tZ3JvdXBgLlxyXG4gIC5mb3JtLWdyb3VwLWxnIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gICAgICAuY29udHJvbC1sYWJlbCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6ICgoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgKiAkbGluZS1oZWlnaHQtbGFyZ2UpICsgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmZvcm0tZ3JvdXAtc20ge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICAgIC5jb250cm9sLWxhYmVsIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICsgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gRm9ybSB2YWxpZGF0aW9uIHN0YXRlc1xyXG4vL1xyXG4vLyBVc2VkIGluIGZvcm1zLmxlc3MgdG8gZ2VuZXJhdGUgdGhlIGZvcm0gdmFsaWRhdGlvbiBDU1MgZm9yIHdhcm5pbmdzLCBlcnJvcnMsXHJcbi8vIGFuZCBzdWNjZXNzZXMuXHJcblxyXG5AbWl4aW4gZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHRleHQtY29sb3I6ICM1NTUsICRib3JkZXItY29sb3I6ICNjY2MsICRiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1KSB7XHJcbiAgLy8gQ29sb3IgdGhlIGxhYmVsIGFuZCBoZWxwIHRleHRcclxuICAuaGVscC1ibG9jayxcclxuICAuY29udHJvbC1sYWJlbCxcclxuICAucmFkaW8sXHJcbiAgLmNoZWNrYm94LFxyXG4gIC5yYWRpby1pbmxpbmUsXHJcbiAgLmNoZWNrYm94LWlubGluZSxcclxuICAmLnJhZGlvIGxhYmVsLFxyXG4gICYuY2hlY2tib3ggbGFiZWwsXHJcbiAgJi5yYWRpby1pbmxpbmUgbGFiZWwsXHJcbiAgJi5jaGVja2JveC1pbmxpbmUgbGFiZWwgIHtcclxuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcclxuICB9XHJcbiAgLy8gU2V0IHRoZSBib3JkZXIgYW5kIGJveCBzaGFkb3cgb24gc3BlY2lmaWMgaW5wdXRzIHRvIG1hdGNoXHJcbiAgLmZvcm0tY29udHJvbCB7XHJcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpKTsgLy8gUmVkZWNsYXJlIHNvIHRyYW5zaXRpb25zIHdvcmtcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLWNvbG9yLCAxMCUpO1xyXG4gICAgICAkc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwgMCAwIDZweCBsaWdodGVuKCRib3JkZXItY29sb3IsIDIwJSk7XHJcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHNoYWRvdyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIFNldCB2YWxpZGF0aW9uIHN0YXRlcyBhbHNvIGZvciBhZGRvbnNcclxuICAuaW5wdXQtZ3JvdXAtYWRkb24ge1xyXG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XHJcbiAgfVxyXG4gIC8vIE9wdGlvbmFsIGZlZWRiYWNrIGljb25cclxuICAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcclxuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcclxuLy9cclxuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcclxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtYm9yZGVyLWZvY3VzYCB2YXJpYWJsZS5cclxuLy9cclxuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXHJcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXHJcbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcclxuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxyXG4vL1xyXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXHJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cclxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygkY29sb3I6ICRpbnB1dC1ib3JkZXItZm9jdXMpIHtcclxuICAkY29sb3ItcmdiYTogcmdiYShyZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpLCAuNik7XHJcbiAgJjpmb2N1cyB7XHJcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgOHB4ICRjb2xvci1yZ2JhKTtcclxuICB9XHJcbn1cclxuXHJcbi8vIEZvcm0gY29udHJvbCBzaXppbmdcclxuLy9cclxuLy8gUmVsYXRpdmUgdGV4dCBzaXplLCBwYWRkaW5nLCBhbmQgYm9yZGVyLXJhZGlpIGNoYW5nZXMgZm9yIGZvcm0gY29udHJvbHMuIEZvclxyXG4vLyBob3Jpem9udGFsIHNpemluZywgd3JhcCBjb250cm9scyBpbiB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuIGA8c2VsZWN0PmBcclxuLy8gZWxlbWVudCBnZXRzIHNwZWNpYWwgbG92ZSBiZWNhdXNlIGl0J3Mgc3BlY2lhbCwgYW5kIHRoYXQncyBhIGZhY3QhXHJcbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xyXG5AbWl4aW4gaW5wdXQtc2l6ZSgkcGFyZW50LCAkaW5wdXQtaGVpZ2h0LCAkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xyXG4gICN7JHBhcmVudH0ge1xyXG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xyXG4gICAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcclxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcclxuICB9XHJcblxyXG4gIHNlbGVjdCN7JHBhcmVudH0ge1xyXG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xyXG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XHJcbiAgfVxyXG5cclxuICB0ZXh0YXJlYSN7JHBhcmVudH0sXHJcbiAgc2VsZWN0W211bHRpcGxlXSN7JHBhcmVudH0ge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBCdXR0b25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gQmFzZSBzdHlsZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5idG4ge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBGb3IgaW5wdXQuYnRuXHJcbiAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcclxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLWJhc2UtdmVydGljYWwsICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1iYXNlLCAkbGluZS1oZWlnaHQtYmFzZSwgJGJvcmRlci1yYWRpdXMtYmFzZSk7XHJcbiAgQGluY2x1ZGUgdXNlci1zZWxlY3Qobm9uZSk7XHJcblxyXG4gICYsXHJcbiAgJjphY3RpdmUsXHJcbiAgJi5hY3RpdmUge1xyXG4gICAgJjpmb2N1cyxcclxuICAgICYuZm9jdXMge1xyXG4gICAgICBAaW5jbHVkZSB0YWItZm9jdXM7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMsXHJcbiAgJi5mb2N1cyB7XHJcbiAgICBjb2xvcjogJGJ0bi1kZWZhdWx0LWNvbG9yO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxuXHJcbiAgJjphY3RpdmUsXHJcbiAgJi5hY3RpdmUge1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgM3B4IDVweCByZ2JhKDAsMCwwLC4xMjUpKTtcclxuICB9XHJcblxyXG4gICYuZGlzYWJsZWQsXHJcbiAgJltkaXNhYmxlZF0sXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IC8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzXHJcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC42NSk7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEFsdGVybmF0ZSBidXR0b25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uYnRuLWRlZmF1bHQge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tZGVmYXVsdC1jb2xvciwgJGJ0bi1kZWZhdWx0LWJnLCAkYnRuLWRlZmF1bHQtYm9yZGVyKTtcclxufVxyXG4uYnRuLXByaW1hcnkge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tcHJpbWFyeS1jb2xvciwgJGJ0bi1wcmltYXJ5LWJnLCAkYnRuLXByaW1hcnktYm9yZGVyKTtcclxufVxyXG4vLyBTdWNjZXNzIGFwcGVhcnMgYXMgZ3JlZW5cclxuLmJ0bi1zdWNjZXNzIHtcclxuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXN1Y2Nlc3MtY29sb3IsICRidG4tc3VjY2Vzcy1iZywgJGJ0bi1zdWNjZXNzLWJvcmRlcik7XHJcbn1cclxuLy8gSW5mbyBhcHBlYXJzIGFzIGJsdWUtZ3JlZW5cclxuLmJ0bi1pbmZvIHtcclxuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWluZm8tY29sb3IsICRidG4taW5mby1iZywgJGJ0bi1pbmZvLWJvcmRlcik7XHJcbn1cclxuLy8gV2FybmluZyBhcHBlYXJzIGFzIG9yYW5nZVxyXG4uYnRuLXdhcm5pbmcge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4td2FybmluZy1jb2xvciwgJGJ0bi13YXJuaW5nLWJnLCAkYnRuLXdhcm5pbmctYm9yZGVyKTtcclxufVxyXG4vLyBEYW5nZXIgYW5kIGVycm9yIGFwcGVhciBhcyByZWRcclxuLmJ0bi1kYW5nZXIge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tZGFuZ2VyLWNvbG9yLCAkYnRuLWRhbmdlci1iZywgJGJ0bi1kYW5nZXItYm9yZGVyKTtcclxufVxyXG5cclxuXHJcbi8vIExpbmsgYnV0dG9uc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xyXG4uYnRuLWxpbmsge1xyXG4gIGNvbG9yOiAkbGluay1jb2xvcjtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcblxyXG4gICYsXHJcbiAgJjphY3RpdmUsXHJcbiAgJi5hY3RpdmUsXHJcbiAgJltkaXNhYmxlZF0sXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xyXG4gIH1cclxuICAmLFxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyxcclxuICAmOmFjdGl2ZSB7XHJcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIH1cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG4gICZbZGlzYWJsZWRdLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEJ1dHRvbiBTaXplc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmJ0bi1sZyB7XHJcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBldmVuLW51bWJlcmVkIGhlaWdodCBvZiBidXR0b24gbmV4dCB0byBsYXJnZSBpbnB1dFxyXG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWxhcmdlLCAkbGluZS1oZWlnaHQtbGFyZ2UsICRib3JkZXItcmFkaXVzLWxhcmdlKTtcclxufVxyXG4uYnRuLXNtIHtcclxuICAvLyBsaW5lLWhlaWdodDogZW5zdXJlIHByb3BlciBoZWlnaHQgb2YgYnV0dG9uIG5leHQgdG8gc21hbGwgaW5wdXRcclxuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbn1cclxuLmJ0bi14cyB7XHJcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmcteHMtdmVydGljYWwsICRwYWRkaW5nLXhzLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG59XHJcblxyXG5cclxuLy8gQmxvY2sgYnV0dG9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uYnRuLWJsb2NrIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xyXG4uYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XHJcbiAgbWFyZ2luLXRvcDogNXB4O1xyXG59XHJcblxyXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcclxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcclxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxyXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcclxuICAmLmJ0bi1ibG9jayB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXHJcbi8vXHJcbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcclxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXHJcblxyXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlcikge1xyXG4gIGNvbG9yOiAkY29sb3I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG5cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMsXHJcbiAgJi5mb2N1cyxcclxuICAmOmFjdGl2ZSxcclxuICAmLmFjdGl2ZSxcclxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcclxuICB9XHJcbiAgJjphY3RpdmUsXHJcbiAgJi5hY3RpdmUsXHJcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gIH1cclxuICAmLmRpc2FibGVkLFxyXG4gICZbZGlzYWJsZWRdLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgICYsXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICYuZm9jdXMsXHJcbiAgICAmOmFjdGl2ZSxcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYmFkZ2Uge1xyXG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQnV0dG9uIHNpemVzXHJcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xyXG4gIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XHJcbn1cclxuIiwiLy8gT3BhY2l0eVxyXG5cclxuQG1peGluIG9wYWNpdHkoJG9wYWNpdHkpIHtcclxuICBvcGFjaXR5OiAkb3BhY2l0eTtcclxuICAvLyBJRTggZmlsdGVyXHJcbiAgJG9wYWNpdHktaWU6ICgkb3BhY2l0eSAqIDEwMCk7XHJcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PSRvcGFjaXR5LWllKTtcclxufVxyXG4iLCIvL1xyXG4vLyBDb21wb25lbnQgYW5pbWF0aW9uc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gSGVhZHMgdXAhXHJcbi8vXHJcbi8vIFdlIGRvbid0IHVzZSB0aGUgYC5vcGFjaXR5KClgIG1peGluIGhlcmUgc2luY2UgaXQgY2F1c2VzIGEgYnVnIHdpdGggdGV4dFxyXG4vLyBmaWVsZHMgaW4gSUU3LTguIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzU1Mi5cclxuXHJcbi5mYWRlIHtcclxuICBvcGFjaXR5OiAwO1xyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAuMTVzIGxpbmVhcik7XHJcbiAgJi5pbiB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxufVxyXG5cclxuLmNvbGxhcHNlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHJcbiAgJi5pbiAgICAgIHsgZGlzcGxheTogYmxvY2s7IHZpc2liaWxpdHk6IHZpc2libGU7IH1cclxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgdHImLmluIHRvIHRyLmNvbGxhcHNlLmluXHJcbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIHRib2R5Ji5pbiB0byB0Ym9keS5jb2xsYXBzZS5pblxyXG59XHJcblxyXG50ci5jb2xsYXBzZS5pbiAgICB7IGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxyXG5cclxudGJvZHkuY29sbGFwc2UuaW4geyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7IH1cclxuXHJcbi5jb2xsYXBzaW5nIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eShoZWlnaHQsIHZpc2liaWxpdHkpO1xyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZHVyYXRpb24oLjM1cyk7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oZWFzZSk7XHJcbn1cclxuIiwiLy9cclxuLy8gRHJvcGRvd24gbWVudXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBEcm9wZG93biBhcnJvdy9jYXJldFxyXG4uY2FyZXQge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbiAgbWFyZ2luLWxlZnQ6IDJweDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIGJvcmRlci10b3A6ICAgJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQ7XHJcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItbGVmdDogICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4vLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoZGl2KVxyXG4uZHJvcHVwLFxyXG4uZHJvcGRvd24ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLy8gUHJldmVudCB0aGUgZm9jdXMgb24gdGhlIGRyb3Bkb3duIHRvZ2dsZSB3aGVuIGNsb3NpbmcgZHJvcGRvd25zXHJcbi5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xyXG4gIG91dGxpbmU6IDA7XHJcbn1cclxuXHJcbi8vIFRoZSBkcm9wZG93biBtZW51ICh1bClcclxuLmRyb3Bkb3duLW1lbnUge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDEwMCU7XHJcbiAgbGVmdDogMDtcclxuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xyXG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgbWluLXdpZHRoOiAxNjBweDtcclxuICBwYWRkaW5nOiA1cHggMDtcclxuICBtYXJnaW46IDJweCAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjsgLy8gSUU4IGZhbGxiYWNrXHJcbiAgYm9yZGVyOiAxcHggc29saWQgJGRyb3Bkb3duLWJvcmRlcjtcclxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCA2cHggMTJweCByZ2JhKDAsMCwwLC4xNzUpKTtcclxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xyXG5cclxuICAvLyBBbGlnbnMgdGhlIGRyb3Bkb3duIG1lbnUgdG8gcmlnaHRcclxuICAvL1xyXG4gIC8vIERlcHJlY2F0ZWQgYXMgb2YgMy4xLjAgaW4gZmF2b3Igb2YgYC5kcm9wZG93bi1tZW51LVtkaXJdYFxyXG4gICYucHVsbC1yaWdodCB7XHJcbiAgICByaWdodDogMDtcclxuICAgIGxlZnQ6IGF1dG87XHJcbiAgfVxyXG5cclxuICAvLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gdGhlIGRyb3Bkb3duXHJcbiAgLmRpdmlkZXIge1xyXG4gICAgQGluY2x1ZGUgbmF2LWRpdmlkZXIoJGRyb3Bkb3duLWRpdmlkZXItYmcpO1xyXG4gIH1cclxuXHJcbiAgLy8gTGlua3Mgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XHJcbiAgPiBsaSA+IGEge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwYWRkaW5nOiAzcHggMjBweDtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcclxuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xyXG4gIH1cclxufVxyXG5cclxuLy8gSG92ZXIvRm9jdXMgc3RhdGVcclxuLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEge1xyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcclxuICB9XHJcbn1cclxuXHJcbi8vIEFjdGl2ZSBzdGF0ZVxyXG4uZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhIHtcclxuICAmLFxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZztcclxuICB9XHJcbn1cclxuXHJcbi8vIERpc2FibGVkIHN0YXRlXHJcbi8vXHJcbi8vIEdyYXkgb3V0IHRleHQgYW5kIGVuc3VyZSB0aGUgaG92ZXIvZm9jdXMgc3RhdGUgcmVtYWlucyBncmF5XHJcblxyXG4uZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGEge1xyXG4gICYsXHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcclxuICB9XHJcblxyXG4gIC8vIE51a2UgaG92ZXIvZm9jdXMgZWZmZWN0c1xyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRcclxuICAgIEBpbmNsdWRlIHJlc2V0LWZpbHRlcjtcclxuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE9wZW4gc3RhdGUgZm9yIHRoZSBkcm9wZG93blxyXG4ub3BlbiB7XHJcbiAgLy8gU2hvdyB0aGUgbWVudVxyXG4gID4gLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAvLyBSZW1vdmUgdGhlIG91dGxpbmUgd2hlbiA6Zm9jdXMgaXMgdHJpZ2dlcmVkXHJcbiAgPiBhIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNZW51IHBvc2l0aW9uaW5nXHJcbi8vXHJcbi8vIEFkZCBleHRyYSBjbGFzcyB0byBgLmRyb3Bkb3duLW1lbnVgIHRvIGZsaXAgdGhlIGFsaWdubWVudCBvZiB0aGUgZHJvcGRvd25cclxuLy8gbWVudSB3aXRoIHRoZSBwYXJlbnQuXHJcbi5kcm9wZG93bi1tZW51LXJpZ2h0IHtcclxuICBsZWZ0OiBhdXRvOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIGAuZHJvcGRvd24tbWVudWBcclxuICByaWdodDogMDtcclxufVxyXG4vLyBXaXRoIHYzLCB3ZSBlbmFibGVkIGF1dG8tZmxpcHBpbmcgaWYgeW91IGhhdmUgYSBkcm9wZG93biB3aXRoaW4gYSByaWdodFxyXG4vLyBhbGlnbmVkIG5hdiBjb21wb25lbnQuIFRvIGVuYWJsZSB0aGUgdW5kb2luZyBvZiB0aGF0LCB3ZSBwcm92aWRlIGFuIG92ZXJyaWRlXHJcbi8vIHRvIHJlc3RvcmUgdGhlIGRlZmF1bHQgZHJvcGRvd24gbWVudSBhbGlnbm1lbnQuXHJcbi8vXHJcbi8vIFRoaXMgaXMgb25seSBmb3IgbGVmdC1hbGlnbmluZyBhIGRyb3Bkb3duIG1lbnUgd2l0aGluIGEgYC5uYXZiYXItcmlnaHRgIG9yXHJcbi8vIGAucHVsbC1yaWdodGAgbmF2IGNvbXBvbmVudC5cclxuLmRyb3Bkb3duLW1lbnUtbGVmdCB7XHJcbiAgbGVmdDogMDtcclxuICByaWdodDogYXV0bztcclxufVxyXG5cclxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXHJcbi5kcm9wZG93bi1oZWFkZXIge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmc6IDNweCAyMHB4O1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgY29sb3I6ICRkcm9wZG93bi1oZWFkZXItY29sb3I7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxyXG59XHJcblxyXG4vLyBCYWNrZHJvcCB0byBjYXRjaCBib2R5IGNsaWNrcyBvbiBtb2JpbGUsIGV0Yy5cclxuLmRyb3Bkb3duLWJhY2tkcm9wIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgbGVmdDogMDtcclxuICByaWdodDogMDtcclxuICBib3R0b206IDA7XHJcbiAgdG9wOiAwO1xyXG4gIHotaW5kZXg6ICgkemluZGV4LWRyb3Bkb3duIC0gMTApO1xyXG59XHJcblxyXG4vLyBSaWdodCBhbGlnbmVkIGRyb3Bkb3duc1xyXG4ucHVsbC1yaWdodCA+IC5kcm9wZG93bi1tZW51IHtcclxuICByaWdodDogMDtcclxuICBsZWZ0OiBhdXRvO1xyXG59XHJcblxyXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcclxuLy9cclxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LCBicm8uXHJcbi8vIFRPRE86IGFic3RyYWN0IHRoaXMgc28gdGhhdCB0aGUgbmF2YmFyIGZpeGVkIHN0eWxlcyBhcmUgbm90IHBsYWNlZCBoZXJlP1xyXG5cclxuLmRyb3B1cCxcclxuLm5hdmJhci1maXhlZC1ib3R0b20gLmRyb3Bkb3duIHtcclxuICAvLyBSZXZlcnNlIHRoZSBjYXJldFxyXG4gIC5jYXJldCB7XHJcbiAgICBib3JkZXItdG9wOiAwO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQ7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gIH1cclxuICAvLyBEaWZmZXJlbnQgcG9zaXRpb25pbmcgZm9yIGJvdHRvbSB1cCBtZW51XHJcbiAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgdG9wOiBhdXRvO1xyXG4gICAgYm90dG9tOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIENvbXBvbmVudCBhbGlnbm1lbnRcclxuLy9cclxuLy8gUmVpdGVyYXRlIHBlciBuYXZiYXIubGVzcyBhbmQgdGhlIG1vZGlmaWVkIGNvbXBvbmVudCBhbGlnbm1lbnQgdGhlcmUuXHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gIC5uYXZiYXItcmlnaHQge1xyXG4gICAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICByaWdodDogMDsgbGVmdDogYXV0bztcclxuICAgIH1cclxuICAgIC8vIE5lY2Vzc2FyeSBmb3Igb3ZlcnJpZGVzIG9mIHRoZSBkZWZhdWx0IHJpZ2h0IGFsaWduZWQgbWVudS5cclxuICAgIC8vIFdpbGwgcmVtb3ZlIGNvbWUgdjQgaW4gYWxsIGxpa2VsaWhvb2QuXHJcbiAgICAuZHJvcGRvd24tbWVudS1sZWZ0IHtcclxuICAgICAgbGVmdDogMDsgcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcclxuLy9cclxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXHJcblxyXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAjZTVlNWU1KSB7XHJcbiAgaGVpZ2h0OiAxcHg7XHJcbiAgbWFyZ2luOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpIC0gMSkgMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxufVxyXG4iLCIvLyBSZXNldCBmaWx0ZXJzIGZvciBJRVxyXG4vL1xyXG4vLyBXaGVuIHlvdSBuZWVkIHRvIHJlbW92ZSBhIGdyYWRpZW50IGJhY2tncm91bmQsIGRvIG5vdCBmb3JnZXQgdG8gdXNlIHRoaXMgdG8gcmVzZXRcclxuLy8gdGhlIElFIGZpbHRlciBmb3IgSUU5IGFuZCBiZWxvdy5cclxuXHJcbkBtaXhpbiByZXNldC1maWx0ZXIoKSB7XHJcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTtcclxufVxyXG4iLCIvL1xyXG4vLyBCdXR0b24gZ3JvdXBzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cclxuLmJ0bi1ncm91cCxcclxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxyXG4gID4gLmJ0biB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjphY3RpdmUsXHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXHJcbi5idG4tZ3JvdXAge1xyXG4gIC5idG4gKyAuYnRuLFxyXG4gIC5idG4gKyAuYnRuLWdyb3VwLFxyXG4gIC5idG4tZ3JvdXAgKyAuYnRuLFxyXG4gIC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xyXG4gIH1cclxufVxyXG5cclxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxyXG4uYnRuLXRvb2xiYXIge1xyXG4gIG1hcmdpbi1sZWZ0OiAtNXB4OyAvLyBPZmZzZXQgdGhlIGZpcnN0IGNoaWxkJ3MgbWFyZ2luXHJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcblxyXG4gIC5idG4tZ3JvdXAsXHJcbiAgLmlucHV0LWdyb3VwIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gIH1cclxuICA+IC5idG4sXHJcbiAgPiAuYnRuLWdyb3VwLFxyXG4gID4gLmlucHV0LWdyb3VwIHtcclxuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uYnRuLWdyb3VwID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxufVxyXG5cclxuLy8gU2V0IGNvcm5lcnMgaW5kaXZpZHVhbCBiZWNhdXNlIHNvbWV0aW1lcyBhIHNpbmdsZSBidXR0b24gY2FuIGJlIGluIGEgLmJ0bi1ncm91cCBhbmQgd2UgbmVlZCA6Zmlyc3QtY2hpbGQgYW5kIDpsYXN0LWNoaWxkIHRvIGJvdGggbWF0Y2hcclxuLmJ0bi1ncm91cCA+IC5idG46Zmlyc3QtY2hpbGQge1xyXG4gIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICY6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSkge1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcclxuICB9XHJcbn1cclxuLy8gTmVlZCAuZHJvcGRvd24tdG9nZ2xlIHNpbmNlIDpsYXN0LWNoaWxkIGRvZXNuJ3QgYXBwbHkgZ2l2ZW4gYSAuZHJvcGRvd24tbWVudSBpbW1lZGlhdGVseSBhZnRlciBpdFxyXG4uYnRuLWdyb3VwID4gLmJ0bjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxyXG4uYnRuLWdyb3VwID4gLmRyb3Bkb3duLXRvZ2dsZTpub3QoOmZpcnN0LWNoaWxkKSB7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xyXG59XHJcblxyXG4vLyBDdXN0b20gZWRpdHMgZm9yIGluY2x1ZGluZyBidG4tZ3JvdXBzIHdpdGhpbiBidG4tZ3JvdXBzICh1c2VmdWwgZm9yIGluY2x1ZGluZyBkcm9wZG93biBidXR0b25zIHdpdGhpbiBhIGJ0bi1ncm91cClcclxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXAge1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG59XHJcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcclxuICBib3JkZXItcmFkaXVzOiAwO1xyXG59XHJcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gID4gLmJ0bjpsYXN0LWNoaWxkLFxyXG4gID4gLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xyXG4gIH1cclxufVxyXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bjpmaXJzdC1jaGlsZCB7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xyXG59XHJcblxyXG4vLyBPbiBhY3RpdmUgYW5kIG9wZW4sIGRvbid0IHNob3cgb3V0bGluZVxyXG4uYnRuLWdyb3VwIC5kcm9wZG93bi10b2dnbGU6YWN0aXZlLFxyXG4uYnRuLWdyb3VwLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgb3V0bGluZTogMDtcclxufVxyXG5cclxuXHJcbi8vIFNpemluZ1xyXG4vL1xyXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cclxuXHJcbi5idG4tZ3JvdXAteHMgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXhzOyB9XHJcbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XHJcbi5idG4tZ3JvdXAtbGcgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLWxnOyB9XHJcblxyXG5cclxuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBHaXZlIHRoZSBsaW5lIGJldHdlZW4gYnV0dG9ucyBzb21lIGRlcHRoXHJcbi5idG4tZ3JvdXAgPiAuYnRuICsgLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XHJcbiAgcGFkZGluZy1yaWdodDogOHB4O1xyXG59XHJcbi5idG4tZ3JvdXAgPiAuYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XHJcbn1cclxuXHJcbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxyXG4vLyBSZW1vdmUgdGhlIGdyYWRpZW50IGFuZCBzZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXHJcbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgM3B4IDVweCByZ2JhKDAsMCwwLC4xMjUpKTtcclxuXHJcbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxyXG4gICYuYnRuLWxpbmsge1xyXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBSZXBvc2l0aW9uIHRoZSBjYXJldFxyXG4uYnRuIC5jYXJldCB7XHJcbiAgbWFyZ2luLWxlZnQ6IDA7XHJcbn1cclxuLy8gQ2FyZXRzIGluIG90aGVyIGJ1dHRvbiBzaXplc1xyXG4uYnRuLWxnIC5jYXJldCB7XHJcbiAgYm9yZGVyLXdpZHRoOiAkY2FyZXQtd2lkdGgtbGFyZ2UgJGNhcmV0LXdpZHRoLWxhcmdlIDA7XHJcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcclxufVxyXG4vLyBVcHNpZGUgZG93biBjYXJldHMgZm9yIC5kcm9wdXBcclxuLmRyb3B1cCAuYnRuLWxnIC5jYXJldCB7XHJcbiAgYm9yZGVyLXdpZHRoOiAwICRjYXJldC13aWR0aC1sYXJnZSAkY2FyZXQtd2lkdGgtbGFyZ2U7XHJcbn1cclxuXHJcblxyXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5idG4tZ3JvdXAtdmVydGljYWwge1xyXG4gID4gLmJ0bixcclxuICA+IC5idG4tZ3JvdXAsXHJcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZsb2F0OiBub25lO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICAvLyBDbGVhciBmbG9hdHMgc28gZHJvcGRvd24gbWVudXMgY2FuIGJlIHByb3Blcmx5IHBsYWNlZFxyXG4gID4gLmJ0bi1ncm91cCB7XHJcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgID4gLmJ0biB7XHJcbiAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiAuYnRuICsgLmJ0bixcclxuICA+IC5idG4gKyAuYnRuLWdyb3VwLFxyXG4gID4gLmJ0bi1ncm91cCArIC5idG4sXHJcbiAgPiAuYnRuLWdyb3VwICsgLmJ0bi1ncm91cCB7XHJcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB7XHJcbiAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgfVxyXG4gICY6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xyXG4gIH1cclxuICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcclxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xyXG4gIH1cclxufVxyXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxufVxyXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcclxuICA+IC5idG46bGFzdC1jaGlsZCxcclxuICA+IC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XHJcbiAgfVxyXG59XHJcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcclxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcclxufVxyXG5cclxuXHJcbi8vIEp1c3RpZmllZCBidXR0b24gZ3JvdXBzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5idG4tZ3JvdXAtanVzdGlmaWVkIHtcclxuICBkaXNwbGF5OiB0YWJsZTtcclxuICB3aWR0aDogMTAwJTtcclxuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xyXG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XHJcbiAgPiAuYnRuLFxyXG4gID4gLmJ0bi1ncm91cCB7XHJcbiAgICBmbG9hdDogbm9uZTtcclxuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgICB3aWR0aDogMSU7XHJcbiAgfVxyXG4gID4gLmJ0bi1ncm91cCAuYnRuIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgPiAuYnRuLWdyb3VwIC5kcm9wZG93bi1tZW51IHtcclxuICAgIGxlZnQ6IGF1dG87XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gQ2hlY2tib3ggYW5kIHJhZGlvIG9wdGlvbnNcclxuLy9cclxuLy8gSW4gb3JkZXIgdG8gc3VwcG9ydCB0aGUgYnJvd3NlcidzIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFjaywgcG93ZXJlZCBieSB0aGVcclxuLy8gYHJlcXVpcmVkYCBhdHRyaWJ1dGUsIHdlIGhhdmUgdG8gXCJoaWRlXCIgdGhlIGlucHV0cyB2aWEgYGNsaXBgLiBXZSBjYW5ub3QgdXNlXHJcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cclxuLy8gU2ltcGx5IHZpc3VhbGx5IGhpZGluZyB0aGUgaW5wdXRzIHZpYSBgb3BhY2l0eWAgd291bGQgbGVhdmUgdGhlbSBjbGlja2FibGUgaW5cclxuLy8gY2VydGFpbiBjYXNlcyB3aGljaCBpcyBwcmV2ZW50ZWQgYnkgdXNpbmcgYGNsaXBgIGFuZCBgcG9pbnRlci1ldmVudHNgLlxyXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxyXG4vL1xyXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTI3OTQgYW5kXHJcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxyXG5cclxuW2RhdGEtdG9nZ2xlPVwiYnV0dG9uc1wiXSB7XHJcbiAgPiAuYnRuLFxyXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xyXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxyXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBjbGlwOiByZWN0KDAsMCwwLDApO1xyXG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xyXG5cclxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcclxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcclxuICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcclxufVxyXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XHJcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XHJcbiAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XHJcbn1cclxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcclxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcclxuICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcclxufVxyXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcclxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xyXG4gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XHJcbn1cclxuIiwiLy9cclxuLy8gSW5wdXQgZ3JvdXBzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBCYXNlIHN0eWxlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5pbnB1dC1ncm91cCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZHJvcGRvd25zXHJcbiAgZGlzcGxheTogdGFibGU7XHJcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTsgLy8gcHJldmVudCBpbnB1dCBncm91cHMgZnJvbSBpbmhlcml0aW5nIGJvcmRlciBzdHlsZXMgZnJvbSB0YWJsZSBjZWxscyB3aGVuIHBsYWNlZCB3aXRoaW4gYSB0YWJsZVxyXG5cclxuICAvLyBVbmRvIHBhZGRpbmcgYW5kIGZsb2F0IG9mIGdyaWQgY2xhc3Nlc1xyXG4gICZbY2xhc3MqPVwiY29sLVwiXSB7XHJcbiAgICBmbG9hdDogbm9uZTtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgfVxyXG5cclxuICAuZm9ybS1jb250cm9sIHtcclxuICAgIC8vIEVuc3VyZSB0aGF0IHRoZSBpbnB1dCBpcyBhbHdheXMgYWJvdmUgdGhlICphcHBlbmRlZCogYWRkb24gYnV0dG9uIGZvclxyXG4gICAgLy8gcHJvcGVyIGJvcmRlciBjb2xvcnMuXHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG5cclxuICAgIC8vIElFOSBmdWJhcnMgdGhlIHBsYWNlaG9sZGVyIGF0dHJpYnV0ZSBpbiB0ZXh0IGlucHV0cyBhbmQgdGhlIGFycm93cyBvblxyXG4gICAgLy8gc2VsZWN0IGVsZW1lbnRzIGluIGlucHV0IGdyb3Vwcy4gVG8gZml4IGl0LCB3ZSBmbG9hdCB0aGUgaW5wdXQuIERldGFpbHM6XHJcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTYxI2lzc3VlY29tbWVudC0yODkzNjg1NVxyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcblxyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLy8gU2l6aW5nIG9wdGlvbnNcclxuLy9cclxuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxyXG4vLyBtYW5pcHVsYXRpb24uXHJcblxyXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxyXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb24sXHJcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHtcclxuICBAZXh0ZW5kIC5pbnB1dC1sZztcclxufVxyXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxyXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYWRkb24sXHJcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHtcclxuICBAZXh0ZW5kIC5pbnB1dC1zbTtcclxufVxyXG5cclxuXHJcbi8vIERpc3BsYXkgYXMgdGFibGUtY2VsbFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5pbnB1dC1ncm91cC1hZGRvbixcclxuLmlucHV0LWdyb3VwLWJ0bixcclxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xyXG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcblxyXG4gICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gIH1cclxufVxyXG4vLyBBZGRvbiBhbmQgYWRkb24gd3JhcHBlciBmb3IgYnV0dG9uc1xyXG4uaW5wdXQtZ3JvdXAtYWRkb24sXHJcbi5pbnB1dC1ncm91cC1idG4ge1xyXG4gIHdpZHRoOiAxJTtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIE1hdGNoIHRoZSBpbnB1dHNcclxufVxyXG5cclxuLy8gVGV4dCBpbnB1dCBncm91cHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uaW5wdXQtZ3JvdXAtYWRkb24ge1xyXG4gIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcclxuXHJcbiAgLy8gU2l6aW5nXHJcbiAgJi5pbnB1dC1zbSB7XHJcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc21hbGw7XHJcbiAgfVxyXG4gICYuaW5wdXQtbGcge1xyXG4gICAgcGFkZGluZzogJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlO1xyXG4gIH1cclxuXHJcbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxyXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICB9XHJcbn1cclxuXHJcbi8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xyXG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpmaXJzdC1jaGlsZCxcclxuLmlucHV0LWdyb3VwLWFkZG9uOmZpcnN0LWNoaWxkLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bixcclxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4tZ3JvdXAgPiAuYnRuLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmRyb3Bkb3duLXRvZ2dsZSxcclxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcclxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcclxufVxyXG4uaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQge1xyXG4gIGJvcmRlci1yaWdodDogMDtcclxufVxyXG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpsYXN0LWNoaWxkLFxyXG4uaW5wdXQtZ3JvdXAtYWRkb246bGFzdC1jaGlsZCxcclxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bixcclxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bi1ncm91cCA+IC5idG4sXHJcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5kcm9wZG93bi10b2dnbGUsXHJcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xyXG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcclxufVxyXG4uaW5wdXQtZ3JvdXAtYWRkb246bGFzdC1jaGlsZCB7XHJcbiAgYm9yZGVyLWxlZnQ6IDA7XHJcbn1cclxuXHJcbi8vIEJ1dHRvbiBpbnB1dCBncm91cHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uaW5wdXQtZ3JvdXAtYnRuIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgLy8gSmFua2lseSBwcmV2ZW50IGlucHV0IGJ1dHRvbiBncm91cHMgZnJvbSB3cmFwcGluZyB3aXRoIGB3aGl0ZS1zcGFjZWAgYW5kXHJcbiAgLy8gYGZvbnQtc2l6ZWAgaW4gY29tYmluYXRpb24gd2l0aCBgaW5saW5lLWJsb2NrYCBvbiBidXR0b25zLlxyXG4gIGZvbnQtc2l6ZTogMDtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cclxuICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIHNwYWNpbmcsIHBvc2l0aW9uIGZvciBicmluZ2luZyBob3ZlcmVkL2ZvY3VzZWQvYWN0aXZlZFxyXG4gIC8vIGVsZW1lbnQgYWJvdmUgdGhlIHNpYmxpbmdzLlxyXG4gID4gLmJ0biB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICArIC5idG4ge1xyXG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcclxuICAgIH1cclxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gTmVnYXRpdmUgbWFyZ2luIHRvIG9ubHkgaGF2ZSBhIDFweCBib3JkZXIgYmV0d2VlbiB0aGUgdHdvXHJcbiAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICA+IC5idG4sXHJcbiAgICA+IC5idG4tZ3JvdXAge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gICY6bGFzdC1jaGlsZCB7XHJcbiAgICA+IC5idG4sXHJcbiAgICA+IC5idG4tZ3JvdXAge1xyXG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gTmF2c1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEJhc2UgY2xhc3NcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5uYXYge1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IHVsL29sXHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuXHJcbiAgPiBsaSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICA+IGEge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwYWRkaW5nOiAkbmF2LWxpbmstcGFkZGluZztcclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtbGluay1ob3Zlci1iZztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIERpc2FibGVkIHN0YXRlIHNldHMgdGV4dCB0byBncmF5IGFuZCBudWtlcyBob3Zlci90YWIgZWZmZWN0c1xyXG4gICAgJi5kaXNhYmxlZCA+IGEge1xyXG4gICAgICBjb2xvcjogJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yO1xyXG5cclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBPcGVuIGRyb3Bkb3duc1xyXG4gIC5vcGVuID4gYSB7XHJcbiAgICAmLFxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LWxpbmstaG92ZXItYmc7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogJGxpbmstY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBOYXYgZGl2aWRlcnMgKGRlcHJlY2F0ZWQgd2l0aCB2My4wLjEpXHJcbiAgLy9cclxuICAvLyBUaGlzIHNob3VsZCBoYXZlIGJlZW4gcmVtb3ZlZCBpbiB2MyB3aXRoIHRoZSBkcm9wcGluZyBvZiBgLm5hdi1saXN0YCwgYnV0XHJcbiAgLy8gd2UgbWlzc2VkIGl0LiBXZSBkb24ndCBjdXJyZW50bHkgc3VwcG9ydCB0aGlzIGFueXdoZXJlLCBidXQgaW4gdGhlIGludGVyZXN0XHJcbiAgLy8gb2YgbWFpbnRhaW5pbmcgYmFja3dhcmQgY29tcGF0aWJpbGl0eSBpbiBjYXNlIHlvdSB1c2UgaXQsIGl0J3MgZGVwcmVjYXRlZC5cclxuICAubmF2LWRpdmlkZXIge1xyXG4gICAgQGluY2x1ZGUgbmF2LWRpdmlkZXI7XHJcbiAgfVxyXG5cclxuICAvLyBQcmV2ZW50IElFOCBmcm9tIG1pc3BsYWNpbmcgaW1nc1xyXG4gIC8vXHJcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2lzc3Vlcy85ODQjaXNzdWVjb21tZW50LTM5ODU5ODlcclxuICA+IGxpID4gYSA+IGltZyB7XHJcbiAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gVGFic1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBHaXZlIHRoZSB0YWJzIHNvbWV0aGluZyB0byBzaXQgb25cclxuLm5hdi10YWJzIHtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcclxuICA+IGxpIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgLy8gTWFrZSB0aGUgbGlzdC1pdGVtcyBvdmVybGF5IHRoZSBib3R0b20gYm9yZGVyXHJcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xyXG5cclxuICAgIC8vIEFjdHVhbCB0YWJzIChhcyBsaW5rcylcclxuICAgID4gYSB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvciAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIEFjdGl2ZSBzdGF0ZSwgYW5kIGl0cyA6aG92ZXIgdG8gb3ZlcnJpZGUgbm9ybWFsIDpob3ZlclxyXG4gICAgJi5hY3RpdmUgPiBhIHtcclxuICAgICAgJixcclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcclxuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLy8gcHVsbGluZyB0aGlzIGluIG1haW5seSBmb3IgbGVzcyBzaG9ydGhhbmRcclxuICAmLm5hdi1qdXN0aWZpZWQge1xyXG4gICAgQGV4dGVuZCAubmF2LWp1c3RpZmllZDtcclxuICAgIEBleHRlbmQgLm5hdi10YWJzLWp1c3RpZmllZDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBQaWxsc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5uYXYtcGlsbHMge1xyXG4gID4gbGkge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcblxyXG4gICAgLy8gTGlua3MgcmVuZGVyZWQgYXMgcGlsbHNcclxuICAgID4gYSB7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cztcclxuICAgIH1cclxuICAgICsgbGkge1xyXG4gICAgICBtYXJnaW4tbGVmdDogMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxyXG4gICAgJi5hY3RpdmUgPiBhIHtcclxuICAgICAgJixcclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1iZztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFN0YWNrZWQgcGlsbHNcclxuLm5hdi1zdGFja2VkIHtcclxuICA+IGxpIHtcclxuICAgIGZsb2F0OiBub25lO1xyXG4gICAgKyBsaSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDJweDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDA7IC8vIG5vIG5lZWQgZm9yIHRoaXMgZ2FwIGJldHdlZW4gbmF2IGl0ZW1zXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gTmF2IHZhcmlhdGlvbnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIEp1c3RpZmllZCBuYXYgbGlua3NcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLm5hdi1qdXN0aWZpZWQge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG5cclxuICA+IGxpIHtcclxuICAgIGZsb2F0OiBub25lO1xyXG4gICAgPiBhIHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICA+IC5kcm9wZG93biAuZHJvcGRvd24tbWVudSB7XHJcbiAgICB0b3A6IGF1dG87XHJcbiAgICBsZWZ0OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICA+IGxpIHtcclxuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICAgICAgd2lkdGg6IDElO1xyXG4gICAgICA+IGEge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIE1vdmUgYm9yZGVycyB0byBhbmNob3JzIGluc3RlYWQgb2YgYm90dG9tIG9mIGxpc3RcclxuLy9cclxuLy8gTWl4aW4gZm9yIGFkZGluZyBvbiB0b3AgdGhlIHNoYXJlZCBgLm5hdi1qdXN0aWZpZWRgIHN0eWxlcyBmb3Igb3VyIHRhYnNcclxuLm5hdi10YWJzLWp1c3RpZmllZCB7XHJcbiAgYm9yZGVyLWJvdHRvbTogMDtcclxuXHJcbiAgPiBsaSA+IGEge1xyXG4gICAgLy8gT3ZlcnJpZGUgbWFyZ2luIGZyb20gLm5hdi10YWJzXHJcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG4gIH1cclxuXHJcbiAgPiAuYWN0aXZlID4gYSxcclxuICA+IC5hY3RpdmUgPiBhOmhvdmVyLFxyXG4gID4gLmFjdGl2ZSA+IGE6Zm9jdXMge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjtcclxuICB9XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gICAgPiBsaSA+IGEge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjtcclxuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlIDAgMDtcclxuICAgIH1cclxuICAgID4gLmFjdGl2ZSA+IGEsXHJcbiAgICA+IC5hY3RpdmUgPiBhOmhvdmVyLFxyXG4gICAgPiAuYWN0aXZlID4gYTpmb2N1cyB7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRuYXYtdGFicy1qdXN0aWZpZWQtYWN0aXZlLWxpbmstYm9yZGVyLWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFRhYmJhYmxlIHRhYnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXHJcbi50YWItY29udGVudCB7XHJcbiAgPiAudGFiLXBhbmUge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICB9XHJcbiAgPiAuYWN0aXZlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBEcm9wZG93bnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gU3BlY2lmaWMgZHJvcGRvd25zXHJcbi5uYXYtdGFicyAuZHJvcGRvd24tbWVudSB7XHJcbiAgLy8gbWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXHJcbiAgbWFyZ2luLXRvcDogLTFweDtcclxuICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxyXG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xyXG59XHJcbiIsIi8vXHJcbi8vIE5hdmJhcnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBXcmFwcGVyIGFuZCBiYXNlIGNsYXNzXHJcbi8vXHJcbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXHJcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxyXG5cclxuLm5hdmJhciB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1pbi1oZWlnaHQ6ICRuYXZiYXItaGVpZ2h0OyAvLyBFbnN1cmUgYSBuYXZiYXIgYWx3YXlzIHNob3dzIChlLmcuLCB3aXRob3V0IGEgLm5hdmJhci1icmFuZCBpbiBjb2xsYXBzZWQgbW9kZSlcclxuICBtYXJnaW4tYm90dG9tOiAkbmF2YmFyLW1hcmdpbi1ib3R0b207XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblxyXG4gIC8vIFByZXZlbnQgZmxvYXRzIGZyb20gYnJlYWtpbmcgdGhlIG5hdmJhclxyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gICAgYm9yZGVyLXJhZGl1czogJG5hdmJhci1ib3JkZXItcmFkaXVzO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIE5hdmJhciBoZWFkaW5nXHJcbi8vXHJcbi8vIEdyb3VwcyBgLm5hdmJhci1icmFuZGAgYW5kIGAubmF2YmFyLXRvZ2dsZWAgaW50byBhIHNpbmdsZSBjb21wb25lbnQgZm9yIGVhc3lcclxuLy8gc3R5bGluZyBvZiByZXNwb25zaXZlIGFzcGVjdHMuXHJcblxyXG4ubmF2YmFyLWhlYWRlciB7XHJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBOYXZiYXIgY29sbGFwc2UgKGJvZHkpXHJcbi8vXHJcbi8vIEdyb3VwIHlvdXIgbmF2YmFyIGNvbnRlbnQgaW50byB0aGlzIGZvciBlYXN5IGNvbGxhcHNpbmcgYW5kIGV4cGFuZGluZyBhY3Jvc3NcclxuLy8gdmFyaW91cyBkZXZpY2Ugc2l6ZXMuIEJ5IGRlZmF1bHQsIHRoaXMgY29udGVudCBpcyBjb2xsYXBzZWQgd2hlbiA8NzY4cHgsIGJ1dFxyXG4vLyB3aWxsIGV4cGFuZCBwYXN0IHRoYXQgZm9yIGEgaG9yaXpvbnRhbCBkaXNwbGF5LlxyXG4vL1xyXG4vLyBUbyBzdGFydCAob24gbW9iaWxlIGRldmljZXMpIHRoZSBuYXZiYXIgbGlua3MsIGZvcm1zLCBhbmQgYnV0dG9ucyBhcmUgc3RhY2tlZFxyXG4vLyB2ZXJ0aWNhbGx5IGFuZCBpbmNsdWRlIGEgYG1heC1oZWlnaHRgIHRvIG92ZXJmbG93IGluIGNhc2UgeW91IGhhdmUgdG9vIG11Y2hcclxuLy8gY29udGVudCBmb3IgdGhlIHVzZXIncyB2aWV3cG9ydC5cclxuXHJcbi5uYXZiYXItY29sbGFwc2Uge1xyXG4gIG92ZXJmbG93LXg6IHZpc2libGU7XHJcbiAgcGFkZGluZy1yaWdodDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgcGFkZGluZy1sZWZ0OiAgJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSk7XHJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xyXG5cclxuICAmLmluIHtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBib3JkZXItdG9wOiAwO1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuXHJcbiAgICAmLmNvbGxhcHNlIHtcclxuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgc2V0dGluZ1xyXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICYuaW4ge1xyXG4gICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFVuZG8gdGhlIGNvbGxhcHNlIHNpZGUgcGFkZGluZyBmb3IgbmF2YmFycyB3aXRoIGNvbnRhaW5lcnMgdG8gZW5zdXJlXHJcbiAgICAvLyBhbGlnbm1lbnQgb2YgcmlnaHQtYWxpZ25lZCBjb250ZW50cy5cclxuICAgIC5uYXZiYXItZml4ZWQtdG9wICYsXHJcbiAgICAubmF2YmFyLXN0YXRpYy10b3AgJixcclxuICAgIC5uYXZiYXItZml4ZWQtYm90dG9tICYge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubmF2YmFyLWZpeGVkLXRvcCxcclxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xyXG4gIC5uYXZiYXItY29sbGFwc2Uge1xyXG4gICAgbWF4LWhlaWdodDogJG5hdmJhci1jb2xsYXBzZS1tYXgtaGVpZ2h0O1xyXG5cclxuICAgIEBtZWRpYSAobWF4LWRldmljZS13aWR0aDogJHNjcmVlbi14cy1taW4pIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xyXG4gICAgICBtYXgtaGVpZ2h0OiAyMDBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBCb3RoIG5hdmJhciBoZWFkZXIgYW5kIGNvbGxhcHNlXHJcbi8vXHJcbi8vIFdoZW4gYSBjb250YWluZXIgaXMgcHJlc2VudCwgY2hhbmdlIHRoZSBiZWhhdmlvciBvZiB0aGUgaGVhZGVyIGFuZCBjb2xsYXBzZS5cclxuXHJcbi5jb250YWluZXIsXHJcbi5jb250YWluZXItZmx1aWQge1xyXG4gID4gLm5hdmJhci1oZWFkZXIsXHJcbiAgPiAubmF2YmFyLWNvbGxhcHNlIHtcclxuICAgIG1hcmdpbi1yaWdodDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gICAgbWFyZ2luLWxlZnQ6ICAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICBtYXJnaW4tbGVmdDogIDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy9cclxuLy8gTmF2YmFyIGFsaWdubWVudCBvcHRpb25zXHJcbi8vXHJcbi8vIERpc3BsYXkgdGhlIG5hdmJhciBhY3Jvc3MgdGhlIGVudGlyZXR5IG9mIHRoZSBwYWdlIG9yIGZpeGVkIGl0IHRvIHRoZSB0b3Agb3JcclxuLy8gYm90dG9tIG9mIHRoZSBwYWdlLlxyXG5cclxuLy8gU3RhdGljIHRvcCAodW5maXhlZCwgYnV0IDEwMCUgd2lkZSkgbmF2YmFyXHJcbi5uYXZiYXItc3RhdGljLXRvcCB7XHJcbiAgei1pbmRleDogJHppbmRleC1uYXZiYXI7XHJcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4O1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICB9XHJcbn1cclxuXHJcbi8vIEZpeCB0aGUgdG9wL2JvdHRvbSBuYXZiYXJzIHdoZW4gc2NyZWVuIHJlYWwgZXN0YXRlIHN1cHBvcnRzIGl0XHJcbi5uYXZiYXItZml4ZWQtdG9wLFxyXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgei1pbmRleDogJHppbmRleC1uYXZiYXItZml4ZWQ7XHJcblxyXG4gIC8vIFVuZG8gdGhlIHJvdW5kZWQgY29ybmVyc1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gIH1cclxufVxyXG4ubmF2YmFyLWZpeGVkLXRvcCB7XHJcbiAgdG9wOiAwO1xyXG4gIGJvcmRlci13aWR0aDogMCAwIDFweDtcclxufVxyXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XHJcbiAgYm90dG9tOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG92ZXJyaWRlIC5uYXZiYXIgZGVmYXVsdHNcclxuICBib3JkZXItd2lkdGg6IDFweCAwIDA7XHJcbn1cclxuXHJcblxyXG4vLyBCcmFuZC9wcm9qZWN0IG5hbWVcclxuXHJcbi5uYXZiYXItYnJhbmQge1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIHBhZGRpbmc6ICRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbCAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBoZWlnaHQ6ICRuYXZiYXItaGVpZ2h0O1xyXG5cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxuXHJcbiAgPiBpbWcge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gICAgLm5hdmJhciA+IC5jb250YWluZXIgJixcclxuICAgIC5uYXZiYXIgPiAuY29udGFpbmVyLWZsdWlkICYge1xyXG4gICAgICBtYXJnaW4tbGVmdDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIE5hdmJhciB0b2dnbGVcclxuLy9cclxuLy8gQ3VzdG9tIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIGAubmF2YmFyLWNvbGxhcHNlYCwgcG93ZXJlZCBieSB0aGUgY29sbGFwc2VcclxuLy8gSmF2YVNjcmlwdCBwbHVnaW4uXHJcblxyXG4ubmF2YmFyLXRvZ2dsZSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGZsb2F0OiByaWdodDtcclxuICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gIHBhZGRpbmc6IDlweCAxMHB4O1xyXG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigzNHB4KTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcclxuXHJcbiAgLy8gV2UgcmVtb3ZlIHRoZSBgb3V0bGluZWAgaGVyZSwgYnV0IGxhdGVyIGNvbXBlbnNhdGUgYnkgYXR0YWNoaW5nIGA6aG92ZXJgXHJcbiAgLy8gc3R5bGVzIHRvIGA6Zm9jdXNgLlxyXG4gICY6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogMDtcclxuICB9XHJcblxyXG4gIC8vIEJhcnNcclxuICAuaWNvbi1iYXIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMjJweDtcclxuICAgIGhlaWdodDogMnB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xyXG4gIH1cclxuICAuaWNvbi1iYXIgKyAuaWNvbi1iYXIge1xyXG4gICAgbWFyZ2luLXRvcDogNHB4O1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gTmF2YmFyIG5hdiBsaW5rc1xyXG4vL1xyXG4vLyBCdWlsZHMgb24gdG9wIG9mIHRoZSBgLm5hdmAgY29tcG9uZW50cyB3aXRoIGl0cyBvd24gbW9kaWZpZXIgY2xhc3MgdG8gbWFrZVxyXG4vLyB0aGUgbmF2IHRoZSBmdWxsIGhlaWdodCBvZiB0aGUgaG9yaXpvbnRhbCBuYXYgKGFib3ZlIDc2OHB4KS5cclxuXHJcbi5uYXZiYXItbmF2IHtcclxuICBtYXJnaW46ICgkbmF2YmFyLXBhZGRpbmctdmVydGljYWwgLyAyKSAoLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsKTtcclxuXHJcbiAgPiBsaSA+IGEge1xyXG4gICAgcGFkZGluZy10b3A6ICAgIDEwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcclxuICAgIC8vIERyb3Bkb3ducyBnZXQgY3VzdG9tIGRpc3BsYXkgd2hlbiBjb2xsYXBzZWRcclxuICAgIC5vcGVuIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICA+IGxpID4gYSxcclxuICAgICAgLmRyb3Bkb3duLWhlYWRlciB7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDE1cHggNXB4IDI1cHg7XHJcbiAgICAgIH1cclxuICAgICAgPiBsaSA+IGEge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBVbmNvbGxhcHNlIHRoZSBuYXZcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgPiBsaSB7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICA+IGEge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAgICAkbmF2YmFyLXBhZGRpbmctdmVydGljYWw7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIE5hdmJhciBmb3JtXHJcbi8vXHJcbi8vIEV4dGVuc2lvbiBvZiB0aGUgYC5mb3JtLWlubGluZWAgd2l0aCBzb21lIGV4dHJhIGZsYXZvciBmb3Igb3B0aW11bSBkaXNwbGF5IGluXHJcbi8vIG91ciBuYXZiYXJzLlxyXG5cclxuLm5hdmJhci1mb3JtIHtcclxuICBtYXJnaW4tbGVmdDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gIG1hcmdpbi1yaWdodDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gIHBhZGRpbmc6IDEwcHggJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAkc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjEpLCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjEpO1xyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHNoYWRvdyk7XHJcblxyXG4gIC8vIE1peGluIGJlaGF2aW9yIGZvciBvcHRpbXVtIGRpc3BsYXlcclxuICBAaW5jbHVkZSBmb3JtLWlubGluZTtcclxuXHJcbiAgLmZvcm0tZ3JvdXAge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuXHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gVmVydGljYWxseSBjZW50ZXIgaW4gZXhwYW5kZWQsIGhvcml6b250YWwgbmF2YmFyXHJcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRpbnB1dC1oZWlnaHQtYmFzZSk7XHJcblxyXG4gIC8vIFVuZG8gMTAwJSB3aWR0aCBmb3IgcHVsbCBjbGFzc2VzXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBEcm9wZG93biBtZW51c1xyXG5cclxuLy8gTWVudSBwb3NpdGlvbiBhbmQgbWVudSBjYXJldHNcclxuLm5hdmJhci1uYXYgPiBsaSA+IC5kcm9wZG93bi1tZW51IHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xyXG59XHJcbi8vIE1lbnUgcG9zaXRpb24gYW5kIG1lbnUgY2FyZXQgc3VwcG9ydCBmb3IgZHJvcHVwcyB2aWEgZXh0cmEgZHJvcHVwIGNsYXNzXHJcbi5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXZiYXItbmF2ID4gbGkgPiAuZHJvcGRvd24tbWVudSB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbmF2YmFyLWJvcmRlci1yYWRpdXMpO1xyXG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xyXG59XHJcblxyXG5cclxuLy8gQnV0dG9ucyBpbiBuYXZiYXJzXHJcbi8vXHJcbi8vIFZlcnRpY2FsbHkgY2VudGVyIGEgYnV0dG9uIHdpdGhpbiBhIG5hdmJhciAod2hlbiAqbm90KiBpbiBhIGZvcm0pLlxyXG5cclxuLm5hdmJhci1idG4ge1xyXG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkaW5wdXQtaGVpZ2h0LWJhc2UpO1xyXG5cclxuICAmLmJ0bi1zbSB7XHJcbiAgICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGlucHV0LWhlaWdodC1zbWFsbCk7XHJcbiAgfVxyXG4gICYuYnRuLXhzIHtcclxuICAgIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigyMik7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gVGV4dCBpbiBuYXZiYXJzXHJcbi8vXHJcbi8vIEFkZCBhIGNsYXNzIHRvIG1ha2UgYW55IGVsZW1lbnQgcHJvcGVybHkgYWxpZ24gaXRzZWxmIHZlcnRpY2FsbHkgd2l0aGluIHRoZSBuYXZiYXJzLlxyXG5cclxuLm5hdmJhci10ZXh0IHtcclxuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKTtcclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBDb21wb25lbnQgYWxpZ25tZW50XHJcbi8vXHJcbi8vIFJlcHVycG9zZSB0aGUgcHVsbCB1dGlsaXRpZXMgYXMgdGhlaXIgb3duIG5hdmJhciB1dGlsaXRpZXMgdG8gYXZvaWQgc3BlY2lmaWNpdHlcclxuLy8gaXNzdWVzIHdpdGggcGFyZW50cyBhbmQgY2hhaW5pbmcuIE9ubHkgZG8gdGhpcyB3aGVuIHRoZSBuYXZiYXIgaXMgdW5jb2xsYXBzZWRcclxuLy8gdGhvdWdoIHNvIHRoYXQgbmF2YmFyIGNvbnRlbnRzIHByb3Blcmx5IHN0YWNrIGFuZCBhbGlnbiBpbiBtb2JpbGUuXHJcbi8vXHJcbi8vIERlY2xhcmVkIGFmdGVyIHRoZSBuYXZiYXIgY29tcG9uZW50cyB0byBlbnN1cmUgbW9yZSBzcGVjaWZpY2l0eSBvbiB0aGUgbWFyZ2lucy5cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgLm5hdmJhci1sZWZ0IHtcclxuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIC5uYXZiYXItcmlnaHQge1xyXG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XHJcbiAgbWFyZ2luLXJpZ2h0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcblxyXG4gICAgfiAubmF2YmFyLXJpZ2h0IHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEFsdGVybmF0ZSBuYXZiYXJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBEZWZhdWx0IG5hdmJhclxyXG4ubmF2YmFyLWRlZmF1bHQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1iZztcclxuICBib3JkZXItY29sb3I6ICRuYXZiYXItZGVmYXVsdC1ib3JkZXI7XHJcblxyXG4gIC5uYXZiYXItYnJhbmQge1xyXG4gICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvcjtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1jb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWJnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5hdmJhci10ZXh0IHtcclxuICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtY29sb3I7XHJcbiAgfVxyXG5cclxuICAubmF2YmFyLW5hdiB7XHJcbiAgICA+IGxpID4gYSB7XHJcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcclxuXHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiAuYWN0aXZlID4gYSB7XHJcbiAgICAgICYsXHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICA+IC5kaXNhYmxlZCA+IGEge1xyXG4gICAgICAmLFxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5uYXZiYXItdG9nZ2xlIHtcclxuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ib3JkZXItY29sb3I7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc7XHJcbiAgICB9XHJcbiAgICAuaWNvbi1iYXIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWljb24tYmFyLWJnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5hdmJhci1jb2xsYXBzZSxcclxuICAubmF2YmFyLWZvcm0ge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYm9yZGVyO1xyXG4gIH1cclxuXHJcbiAgLy8gRHJvcGRvd24gbWVudSBpdGVtc1xyXG4gIC5uYXZiYXItbmF2IHtcclxuICAgIC8vIFJlbW92ZSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gb3BlbiBkcm9wZG93blxyXG4gICAgPiAub3BlbiA+IGEge1xyXG4gICAgICAmLFxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc7XHJcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xyXG4gICAgICAvLyBEcm9wZG93bnMgZ2V0IGN1c3RvbSBkaXNwbGF5IHdoZW4gY29sbGFwc2VkXHJcbiAgICAgIC5vcGVuIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICA+IGxpID4gYSB7XHJcbiAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XHJcbiAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gLmFjdGl2ZSA+IGEge1xyXG4gICAgICAgICAgJixcclxuICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICA+IC5kaXNhYmxlZCA+IGEge1xyXG4gICAgICAgICAgJixcclxuICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICAvLyBMaW5rcyBpbiBuYXZiYXJzXHJcbiAgLy9cclxuICAvLyBBZGQgYSBjbGFzcyB0byBlbnN1cmUgbGlua3Mgb3V0c2lkZSB0aGUgbmF2YmFyIG5hdiBhcmUgY29sb3JlZCBjb3JyZWN0bHkuXHJcblxyXG4gIC5uYXZiYXItbGluayB7XHJcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmJ0bi1saW5rIHtcclxuICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgfVxyXG4gICAgJltkaXNhYmxlZF0sXHJcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gSW52ZXJzZSBuYXZiYXJcclxuXHJcbi5uYXZiYXItaW52ZXJzZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJnO1xyXG4gIGJvcmRlci1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJvcmRlcjtcclxuXHJcbiAgLm5hdmJhci1icmFuZCB7XHJcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yO1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWNvbG9yO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItYmc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubmF2YmFyLXRleHQge1xyXG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1jb2xvcjtcclxuICB9XHJcblxyXG4gIC5uYXZiYXItbmF2IHtcclxuICAgID4gbGkgPiBhIHtcclxuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xyXG5cclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICA+IC5hY3RpdmUgPiBhIHtcclxuICAgICAgJixcclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgID4gLmRpc2FibGVkID4gYSB7XHJcbiAgICAgICYsXHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1iZztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gRGFya2VuIHRoZSByZXNwb25zaXZlIG5hdiB0b2dnbGVcclxuICAubmF2YmFyLXRvZ2dsZSB7XHJcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yO1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtdG9nZ2xlLWhvdmVyLWJnO1xyXG4gICAgfVxyXG4gICAgLmljb24tYmFyIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1pY29uLWJhci1iZztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5uYXZiYXItY29sbGFwc2UsXHJcbiAgLm5hdmJhci1mb3JtIHtcclxuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgNyUpO1xyXG4gIH1cclxuXHJcbiAgLy8gRHJvcGRvd25zXHJcbiAgLm5hdmJhci1uYXYge1xyXG4gICAgPiAub3BlbiA+IGEge1xyXG4gICAgICAmLFxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc7XHJcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xyXG4gICAgICAvLyBEcm9wZG93bnMgZ2V0IGN1c3RvbSBkaXNwbGF5XHJcbiAgICAgIC5vcGVuIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICA+IC5kcm9wZG93bi1oZWFkZXIge1xyXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYm9yZGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZGl2aWRlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYm9yZGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICA+IGxpID4gYSB7XHJcbiAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XHJcbiAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItYmc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gLmFjdGl2ZSA+IGEge1xyXG4gICAgICAgICAgJixcclxuICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICA+IC5kaXNhYmxlZCA+IGEge1xyXG4gICAgICAgICAgJixcclxuICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1iZztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5uYXZiYXItbGluayB7XHJcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmJ0bi1saW5rIHtcclxuICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgfVxyXG4gICAgJltkaXNhYmxlZF0sXHJcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBOYXZiYXIgdmVydGljYWwgYWxpZ25cclxuLy9cclxuLy8gVmVydGljYWxseSBjZW50ZXIgZWxlbWVudHMgaW4gdGhlIG5hdmJhci5cclxuLy8gRXhhbXBsZTogYW4gZWxlbWVudCBoYXMgYSBoZWlnaHQgb2YgMzBweCwgc28gd3JpdGUgb3V0IGAubmF2YmFyLXZlcnRpY2FsLWFsaWduKDMwcHgpO2AgdG8gY2FsY3VsYXRlIHRoZSBhcHByb3ByaWF0ZSB0b3AgbWFyZ2luLlxyXG5cclxuQG1peGluIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkZWxlbWVudC1oZWlnaHQpIHtcclxuICBtYXJnaW4tdG9wOiAoKCRuYXZiYXItaGVpZ2h0IC0gJGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xyXG4gIG1hcmdpbi1ib3R0b206ICgoJG5hdmJhci1oZWlnaHQgLSAkZWxlbWVudC1oZWlnaHQpIC8gMik7XHJcbn1cclxuIiwiLy9cclxuLy8gQnJlYWRjcnVtYnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4uYnJlYWRjcnVtYiB7XHJcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy12ZXJ0aWNhbCAkYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcclxuXHJcbiAgPiBsaSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgKyBsaTpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiBcIiN7JGJyZWFkY3J1bWItc2VwYXJhdG9yfVxcMDBhMFwiOyAvLyBVbmljb2RlIHNwYWNlIGFkZGVkIHNpbmNlIGlubGluZS1ibG9jayBtZWFucyBub24tY29sbGFwc2luZyB3aGl0ZS1zcGFjZVxyXG4gICAgICBwYWRkaW5nOiAwIDVweDtcclxuICAgICAgY29sb3I6ICRicmVhZGNydW1iLWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiAuYWN0aXZlIHtcclxuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIFBhZ2luYXRpb24gKG11bHRpcGxlIHBhZ2VzKVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4ucGFnaW5hdGlvbiB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBtYXJnaW46ICRsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XHJcblxyXG4gID4gbGkge1xyXG4gICAgZGlzcGxheTogaW5saW5lOyAvLyBSZW1vdmUgbGlzdC1zdHlsZSBhbmQgYmxvY2stbGV2ZWwgZGVmYXVsdHNcclxuICAgID4gYSxcclxuICAgID4gc3BhbiB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgZmxvYXQ6IGxlZnQ7IC8vIENvbGxhcHNlIHdoaXRlLXNwYWNlXHJcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xyXG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1iZztcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyO1xyXG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcclxuICAgIH1cclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICA+IGEsXHJcbiAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzLWJhc2UpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICA+IGEsXHJcbiAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cy1iYXNlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiBsaSA+IGEsXHJcbiAgPiBsaSA+IHNwYW4ge1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24taG92ZXItY29sb3I7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xyXG4gICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gID4gLmFjdGl2ZSA+IGEsXHJcbiAgPiAuYWN0aXZlID4gc3BhbiB7XHJcbiAgICAmLFxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYmc7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjtcclxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiAuZGlzYWJsZWQge1xyXG4gICAgPiBzcGFuLFxyXG4gICAgPiBzcGFuOmhvdmVyLFxyXG4gICAgPiBzcGFuOmZvY3VzLFxyXG4gICAgPiBhLFxyXG4gICAgPiBhOmhvdmVyLFxyXG4gICAgPiBhOmZvY3VzIHtcclxuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcclxuICAgICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXI7XHJcbiAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIFNpemluZ1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gTGFyZ2VcclxuLnBhZ2luYXRpb24tbGcge1xyXG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1sYXJnZSwgJGJvcmRlci1yYWRpdXMtbGFyZ2UpO1xyXG59XHJcblxyXG4vLyBTbWFsbFxyXG4ucGFnaW5hdGlvbi1zbSB7XHJcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbn1cclxuIiwiLy8gUGFnaW5hdGlvblxyXG5cclxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGJvcmRlci1yYWRpdXMpIHtcclxuICA+IGxpIHtcclxuICAgID4gYSxcclxuICAgID4gc3BhbiB7XHJcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XHJcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcclxuICAgIH1cclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICA+IGEsXHJcbiAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgPiBhLFxyXG4gICAgICA+IHNwYW4ge1xyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIFBhZ2VyIHBhZ2luYXRpb25cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4ucGFnZXIge1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBtYXJnaW46ICRsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gIGxpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgID4gYSxcclxuICAgID4gc3BhbiB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgcGFkZGluZzogNXB4IDE0cHg7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdlci1iZztcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHBhZ2VyLWJvcmRlcjtcclxuICAgICAgYm9yZGVyLXJhZGl1czogJHBhZ2VyLWJvcmRlci1yYWRpdXM7XHJcbiAgICB9XHJcblxyXG4gICAgPiBhOmhvdmVyLFxyXG4gICAgPiBhOmZvY3VzIHtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZXItaG92ZXItYmc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubmV4dCB7XHJcbiAgICA+IGEsXHJcbiAgICA+IHNwYW4ge1xyXG4gICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucHJldmlvdXMge1xyXG4gICAgPiBhLFxyXG4gICAgPiBzcGFuIHtcclxuICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZGlzYWJsZWQge1xyXG4gICAgPiBhLFxyXG4gICAgPiBhOmhvdmVyLFxyXG4gICAgPiBhOmZvY3VzLFxyXG4gICAgPiBzcGFuIHtcclxuICAgICAgY29sb3I6ICRwYWdlci1kaXNhYmxlZC1jb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2VyLWJnO1xyXG4gICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIExhYmVsc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmxhYmVsIHtcclxuICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgcGFkZGluZzogLjJlbSAuNmVtIC4zZW07XHJcbiAgZm9udC1zaXplOiA3NSU7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgY29sb3I6ICRsYWJlbC1jb2xvcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbiAgYm9yZGVyLXJhZGl1czogLjI1ZW07XHJcblxyXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiB0byBhLmxhYmVsXHJcblxyXG4gIC8vIEVtcHR5IGxhYmVscyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5IChub3QgYXZhaWxhYmxlIGluIElFOClcclxuICAmOmVtcHR5IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAvLyBRdWljayBmaXggZm9yIGxhYmVscyBpbiBidXR0b25zXHJcbiAgLmJ0biAmIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogLTFweDtcclxuICB9XHJcbn1cclxuXHJcbi8vIEFkZCBob3ZlciBlZmZlY3RzLCBidXQgb25seSBmb3IgbGlua3NcclxuYS5sYWJlbCB7XHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIGNvbG9yOiAkbGFiZWwtbGluay1ob3Zlci1jb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbn1cclxuXHJcbi8vIENvbG9yc1xyXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnMgKGxpbmtlZCBsYWJlbHMgZ2V0IGRhcmtlciBvbiA6aG92ZXIpXHJcblxyXG4ubGFiZWwtZGVmYXVsdCB7XHJcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtZGVmYXVsdC1iZyk7XHJcbn1cclxuXHJcbi5sYWJlbC1wcmltYXJ5IHtcclxuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1wcmltYXJ5LWJnKTtcclxufVxyXG5cclxuLmxhYmVsLXN1Y2Nlc3Mge1xyXG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLXN1Y2Nlc3MtYmcpO1xyXG59XHJcblxyXG4ubGFiZWwtaW5mbyB7XHJcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtaW5mby1iZyk7XHJcbn1cclxuXHJcbi5sYWJlbC13YXJuaW5nIHtcclxuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC13YXJuaW5nLWJnKTtcclxufVxyXG5cclxuLmxhYmVsLWRhbmdlciB7XHJcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtZGFuZ2VyLWJnKTtcclxufVxyXG4iLCIvLyBMYWJlbHNcclxuXHJcbkBtaXhpbiBsYWJlbC12YXJpYW50KCRjb2xvcikge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuXHJcbiAgJltocmVmXSB7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIEJhZGdlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEJhc2UgY2xhc3NcclxuLmJhZGdlIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgbWluLXdpZHRoOiAxMHB4O1xyXG4gIHBhZGRpbmc6IDNweCA3cHg7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xyXG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XHJcbiAgY29sb3I6ICRiYWRnZS1jb2xvcjtcclxuICBsaW5lLWhlaWdodDogJGJhZGdlLWxpbmUtaGVpZ2h0O1xyXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFkZ2UtYmc7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJhZGdlLWJvcmRlci1yYWRpdXM7XHJcblxyXG4gIC8vIEVtcHR5IGJhZGdlcyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5IChub3QgYXZhaWxhYmxlIGluIElFOClcclxuICAmOmVtcHR5IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAvLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXHJcbiAgLmJ0biAmIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogLTFweDtcclxuICB9XHJcbiAgXHJcbiAgLmJ0bi14cyAmIHtcclxuICAgIHRvcDogMDtcclxuICAgIHBhZGRpbmc6IDFweCA1cHg7XHJcbiAgfVxyXG5cclxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYgdG8gYS5iYWRnZVxyXG5cclxuICAvLyBBY2NvdW50IGZvciBiYWRnZXMgaW4gbmF2c1xyXG4gIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlID4gJixcclxuICAubmF2LXBpbGxzID4gLmFjdGl2ZSA+IGEgPiAmIHtcclxuICAgIGNvbG9yOiAkYmFkZ2UtYWN0aXZlLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhZGdlLWFjdGl2ZS1iZztcclxuICB9XHJcbiAgXHJcbiAgLmxpc3QtZ3JvdXAtaXRlbSA+ICYge1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gIH1cclxuICBcclxuICAubGlzdC1ncm91cC1pdGVtID4gJiArICYge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgfVxyXG4gIFxyXG4gIC5uYXYtcGlsbHMgPiBsaSA+IGEgPiAmIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAzcHg7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBIb3ZlciBzdGF0ZSwgYnV0IG9ubHkgZm9yIGxpbmtzXHJcbmEuYmFkZ2Uge1xyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBjb2xvcjogJGJhZGdlLWxpbmstaG92ZXItY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIEp1bWJvdHJvblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi5qdW1ib3Ryb24ge1xyXG4gIHBhZGRpbmc6ICRqdW1ib3Ryb24tcGFkZGluZyAoJGp1bWJvdHJvbi1wYWRkaW5nIC8gMik7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xyXG4gIGNvbG9yOiAkanVtYm90cm9uLWNvbG9yO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRqdW1ib3Ryb24tYmc7XHJcblxyXG4gIGgxLFxyXG4gIC5oMSB7XHJcbiAgICBjb2xvcjogJGp1bWJvdHJvbi1oZWFkaW5nLWNvbG9yO1xyXG4gIH1cclxuICBcclxuICBwIHtcclxuICAgIG1hcmdpbi1ib3R0b206ICgkanVtYm90cm9uLXBhZGRpbmcgLyAyKTtcclxuICAgIGZvbnQtc2l6ZTogJGp1bWJvdHJvbi1mb250LXNpemU7XHJcbiAgICBmb250LXdlaWdodDogMjAwO1xyXG4gIH1cclxuXHJcbiAgPiBociB7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGp1bWJvdHJvbi1iZywgMTAlKTtcclxuICB9XHJcblxyXG4gIC5jb250YWluZXIgJixcclxuICAuY29udGFpbmVyLWZsdWlkICYge1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7IC8vIE9ubHkgcm91bmQgY29ybmVycyBhdCBoaWdoZXIgcmVzb2x1dGlvbnMgaWYgY29udGFpbmVkIGluIGEgY29udGFpbmVyXHJcbiAgfVxyXG5cclxuICAuY29udGFpbmVyIHtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICBwYWRkaW5nOiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMS42KSAwO1xyXG5cclxuICAgIC5jb250YWluZXIgJixcclxuICAgIC5jb250YWluZXItZmx1aWQgJiB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogICgkanVtYm90cm9uLXBhZGRpbmcgKiAyKTtcclxuICAgICAgcGFkZGluZy1yaWdodDogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpO1xyXG4gICAgfVxyXG5cclxuICAgIGgxLFxyXG4gICAgLmgxIHtcclxuICAgICAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlICogNC41KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gVGh1bWJuYWlsc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIE1peGluIGFuZCBhZGp1c3QgdGhlIHJlZ3VsYXIgaW1hZ2UgY2xhc3NcclxuLnRodW1ibmFpbCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xyXG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcclxuICBib3JkZXI6IDFweCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlcjtcclxuICBib3JkZXItcmFkaXVzOiAkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3JkZXIgLjJzIGVhc2UtaW4tb3V0KTtcclxuXHJcbiAgPiBpbWcsXHJcbiAgYSA+IGltZyB7XHJcbiAgICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcclxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmOmhvdmVyLCBhJjpmb2N1cywgYSYuYWN0aXZlIHRvIGEudGh1bWJuYWlsOmhvdmVyLCBhLnRodW1ibmFpbDpmb2N1cywgYS50aHVtYm5haWwuYWN0aXZlXHJcblxyXG4gIC8vIEltYWdlIGNhcHRpb25zXHJcbiAgLmNhcHRpb24ge1xyXG4gICAgcGFkZGluZzogJHRodW1ibmFpbC1jYXB0aW9uLXBhZGRpbmc7XHJcbiAgICBjb2xvcjogJHRodW1ibmFpbC1jYXB0aW9uLWNvbG9yO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQWRkIGEgaG92ZXIgc3RhdGUgZm9yIGxpbmtlZCB2ZXJzaW9ucyBvbmx5XHJcbmEudGh1bWJuYWlsOmhvdmVyLFxyXG5hLnRodW1ibmFpbDpmb2N1cyxcclxuYS50aHVtYm5haWwuYWN0aXZlIHtcclxuICBib3JkZXItY29sb3I6ICRsaW5rLWNvbG9yO1xyXG59XHJcbiIsIi8vXHJcbi8vIEFsZXJ0c1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEJhc2Ugc3R5bGVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5hbGVydCB7XHJcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmc7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1yYWRpdXM6ICRhbGVydC1ib3JkZXItcmFkaXVzO1xyXG5cclxuICAvLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xyXG4gIGg0IHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAvLyBTcGVjaWZpZWQgZm9yIHRoZSBoNCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gIH1cclxuICBcclxuICAvLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xyXG4gIC5hbGVydC1saW5rIHtcclxuICAgIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcclxuICB9XHJcblxyXG4gIC8vIEltcHJvdmUgYWxpZ25tZW50IGFuZCBzcGFjaW5nIG9mIGlubmVyIGNvbnRlbnRcclxuICA+IHAsXHJcbiAgPiB1bCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxuICBcclxuICA+IHAgKyBwIHtcclxuICAgIG1hcmdpbi10b3A6IDVweDtcclxuICB9XHJcbn1cclxuXHJcbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xyXG4vL1xyXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cclxuXHJcbi5hbGVydC1kaXNtaXNzYWJsZSwgLy8gVGhlIG1pc3NwZWxsZWQgLmFsZXJ0LWRpc21pc3NhYmxlIHdhcyBkZXByZWNhdGVkIGluIDMuMi4wLlxyXG4uYWxlcnQtZGlzbWlzc2libGUge1xyXG4gIHBhZGRpbmctcmlnaHQ6ICgkYWxlcnQtcGFkZGluZyArIDIwKTtcclxuXHJcbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cclxuICAuY2xvc2Uge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdG9wOiAtMnB4O1xyXG4gICAgcmlnaHQ6IC0yMXB4O1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBBbHRlcm5hdGUgc3R5bGVzXHJcbi8vXHJcbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXHJcblxyXG4uYWxlcnQtc3VjY2VzcyB7XHJcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtc3VjY2Vzcy1iZywgJGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyLCAkYWxlcnQtc3VjY2Vzcy10ZXh0KTtcclxufVxyXG5cclxuLmFsZXJ0LWluZm8ge1xyXG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LWluZm8tYmcsICRhbGVydC1pbmZvLWJvcmRlciwgJGFsZXJ0LWluZm8tdGV4dCk7XHJcbn1cclxuXHJcbi5hbGVydC13YXJuaW5nIHtcclxuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC13YXJuaW5nLWJnLCAkYWxlcnQtd2FybmluZy1ib3JkZXIsICRhbGVydC13YXJuaW5nLXRleHQpO1xyXG59XHJcblxyXG4uYWxlcnQtZGFuZ2VyIHtcclxuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1kYW5nZXItYmcsICRhbGVydC1kYW5nZXItYm9yZGVyLCAkYWxlcnQtZGFuZ2VyLXRleHQpO1xyXG59XHJcbiIsIi8vIEFsZXJ0c1xyXG5cclxuQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICR0ZXh0LWNvbG9yKSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcclxuXHJcbiAgaHIge1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcclxuICB9XHJcbiAgLmFsZXJ0LWxpbmsge1xyXG4gICAgY29sb3I6IGRhcmtlbigkdGV4dC1jb2xvciwgMTAlKTtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gUHJvZ3Jlc3MgYmFyc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEJhciBhbmltYXRpb25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIFdlYktpdFxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xyXG4gIGZyb20gIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogNDBweCAwOyB9XHJcbiAgdG8gICAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cclxufVxyXG5cclxuLy8gU3BlYyBhbmQgSUUxMCtcclxuQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XHJcbiAgZnJvbSAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0MHB4IDA7IH1cclxuICB0byAgICB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxyXG59XHJcblxyXG5cclxuLy8gQmFyIGl0c2VsZlxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBPdXRlciBjb250YWluZXJcclxuLnByb2dyZXNzIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XHJcbiAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLWJvcmRlci1yYWRpdXM7XHJcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwuMSkpO1xyXG59XHJcblxyXG4vLyBCYXIgb2YgcHJvZ3Jlc3NcclxuLnByb2dyZXNzLWJhciB7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgd2lkdGg6IDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBjb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iZztcclxuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgLTFweCAwIHJnYmEoMCwwLDAsLjE1KSk7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih3aWR0aCAuNnMgZWFzZSk7XHJcbn1cclxuXHJcbi8vIFN0cmlwZWQgYmFyc1xyXG4vL1xyXG4vLyBgLnByb2dyZXNzLXN0cmlwZWQgLnByb2dyZXNzLWJhcmAgaXMgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgaW4gZmF2b3Igb2YgdGhlXHJcbi8vIGAucHJvZ3Jlc3MtYmFyLXN0cmlwZWRgIGNsYXNzLCB3aGljaCB5b3UganVzdCBhZGQgdG8gYW4gZXhpc3RpbmdcclxuLy8gYC5wcm9ncmVzcy1iYXJgLlxyXG4ucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyLFxyXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xyXG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQ7XHJcbiAgYmFja2dyb3VuZC1zaXplOiA0MHB4IDQwcHg7XHJcbn1cclxuXHJcbi8vIENhbGwgYW5pbWF0aW9uIGZvciB0aGUgYWN0aXZlIG9uZVxyXG4vL1xyXG4vLyBgLnByb2dyZXNzLmFjdGl2ZSAucHJvZ3Jlc3MtYmFyYCBpcyBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBpbiBmYXZvciBvZiB0aGVcclxuLy8gYC5wcm9ncmVzcy1iYXIuYWN0aXZlYCBhcHByb2FjaC5cclxuLnByb2dyZXNzLmFjdGl2ZSAucHJvZ3Jlc3MtYmFyLFxyXG4ucHJvZ3Jlc3MtYmFyLmFjdGl2ZSB7XHJcbiAgQGluY2x1ZGUgYW5pbWF0aW9uKHByb2dyZXNzLWJhci1zdHJpcGVzIDJzIGxpbmVhciBpbmZpbml0ZSk7XHJcbn1cclxuXHJcblxyXG4vLyBWYXJpYXRpb25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5wcm9ncmVzcy1iYXItc3VjY2VzcyB7XHJcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJHByb2dyZXNzLWJhci1zdWNjZXNzLWJnKTtcclxufVxyXG5cclxuLnByb2dyZXNzLWJhci1pbmZvIHtcclxuICBAaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCgkcHJvZ3Jlc3MtYmFyLWluZm8tYmcpO1xyXG59XHJcblxyXG4ucHJvZ3Jlc3MtYmFyLXdhcm5pbmcge1xyXG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItd2FybmluZy1iZyk7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1iYXItZGFuZ2VyIHtcclxuICBAaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCgkcHJvZ3Jlc3MtYmFyLWRhbmdlci1iZyk7XHJcbn1cclxuIiwiLy8gR3JhZGllbnRzXHJcblxyXG5cclxuXHJcbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxyXG4vL1xyXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxyXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxyXG5AbWl4aW4gZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gT3BlcmEgMTJcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd25cclxufVxyXG5cclxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxyXG4vL1xyXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxyXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxyXG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7ICAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIE9wZXJhIDEyXHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XHJcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93blxyXG59XHJcblxyXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkZGVnOiA0NWRlZykge1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gT3BlcmEgMTJcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xyXG59XHJcbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xyXG59XHJcbkBtaXhpbiBncmFkaWVudC12ZXJ0aWNhbC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTApOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xyXG59XHJcbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAjNTU1LCAkb3V0ZXItY29sb3I6ICMzMzMpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxufVxyXG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XHJcbn1cclxuIiwiLy8gUHJvZ3Jlc3MgYmFyc1xyXG5cclxuQG1peGluIHByb2dyZXNzLWJhci12YXJpYW50KCRjb2xvcikge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuXHJcbiAgLy8gRGVwcmVjYXRlZCBwYXJlbnQgY2xhc3MgcmVxdWlyZW1lbnQgYXMgb2YgdjMuMi4wXHJcbiAgLnByb2dyZXNzLXN0cmlwZWQgJiB7XHJcbiAgICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkO1xyXG4gIH1cclxufVxyXG4iLCIubWVkaWEge1xyXG4gIC8vIFByb3BlciBzcGFjaW5nIGJldHdlZW4gaW5zdGFuY2VzIG9mIC5tZWRpYVxyXG4gIG1hcmdpbi10b3A6IDE1cHg7XHJcblxyXG4gICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICB9XHJcbn1cclxuXHJcbi5tZWRpYSxcclxuLm1lZGlhLWJvZHkge1xyXG4gIHpvb206IDE7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLm1lZGlhLWJvZHkge1xyXG4gIHdpZHRoOiAxMDAwMHB4O1xyXG59XHJcblxyXG4ubWVkaWEtb2JqZWN0IHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLm1lZGlhLXJpZ2h0LFxyXG4ubWVkaWEgPiAucHVsbC1yaWdodCB7XHJcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG59XHJcblxyXG4ubWVkaWEtbGVmdCxcclxuLm1lZGlhID4gLnB1bGwtbGVmdCB7XHJcbiAgcGFkZGluZy1yaWdodDogMTBweDtcclxufVxyXG5cclxuLm1lZGlhLWxlZnQsXHJcbi5tZWRpYS1yaWdodCxcclxuLm1lZGlhLWJvZHkge1xyXG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxufVxyXG5cclxuLm1lZGlhLW1pZGRsZSB7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuLm1lZGlhLWJvdHRvbSB7XHJcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcclxufVxyXG5cclxuLy8gUmVzZXQgbWFyZ2lucyBvbiBoZWFkaW5ncyBmb3IgdGlnaHRlciBkZWZhdWx0IHNwYWNpbmdcclxuLm1lZGlhLWhlYWRpbmcge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG59XHJcblxyXG4vLyBNZWRpYSBsaXN0IHZhcmlhdGlvblxyXG4vL1xyXG4vLyBVbmRvIGRlZmF1bHQgdWwvb2wgc3R5bGVzXHJcbi5tZWRpYS1saXN0IHtcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG4iLCIvL1xyXG4vLyBMaXN0IGdyb3Vwc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEJhc2UgY2xhc3NcclxuLy9cclxuLy8gRWFzaWx5IHVzYWJsZSBvbiA8dWw+LCA8b2w+LCBvciA8ZGl2Pi5cclxuXHJcbi5saXN0LWdyb3VwIHtcclxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXHJcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcclxufVxyXG5cclxuXHJcbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xyXG4vL1xyXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXHJcblxyXG4ubGlzdC1ncm91cC1pdGVtIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZzogMTBweCAxNXB4O1xyXG4gIC8vIFBsYWNlIHRoZSBib3JkZXIgb24gdGhlIGxpc3QgaXRlbXMgYW5kIG5lZ2F0aXZlIG1hcmdpbiB1cCBmb3IgYmV0dGVyIHN0eWxpbmdcclxuICBtYXJnaW4tYm90dG9tOiAtMXB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRsaXN0LWdyb3VwLWJvcmRlcjtcclxuXHJcbiAgLy8gUm91bmQgdGhlIGZpcnN0IGFuZCBsYXN0IGl0ZW1zXHJcbiAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcclxuICB9XHJcbiAgJjpsYXN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBMaW5rZWQgbGlzdCBpdGVtc1xyXG4vL1xyXG4vLyBVc2UgYW5jaG9yIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBsaW5rZWQgbGlzdCBpdGVtcy5cclxuLy8gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzaG93aW5nIHNlbGVjdGVkIGl0ZW1zLlxyXG5cclxuYS5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWNvbG9yO1xyXG5cclxuICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xyXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjtcclxuICB9XHJcblxyXG4gIC8vIEhvdmVyIHN0YXRlXHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtaG92ZXItYmc7XHJcbiAgfVxyXG59XHJcblxyXG4ubGlzdC1ncm91cC1pdGVtIHtcclxuICAvLyBEaXNhYmxlZCBzdGF0ZVxyXG4gICYuZGlzYWJsZWQsXHJcbiAgJi5kaXNhYmxlZDpob3ZlcixcclxuICAmLmRpc2FibGVkOmZvY3VzIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xyXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xyXG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xyXG5cclxuICAgIC8vIEZvcmNlIGNvbG9yIHRvIGluaGVyaXQgZm9yIGN1c3RvbSBjb250ZW50XHJcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xyXG4gICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIH1cclxuICAgIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCB7XHJcbiAgICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gQWN0aXZlIGNsYXNzIG9uIGl0ZW0gaXRzZWxmLCBub3QgcGFyZW50XHJcbiAgJi5hY3RpdmUsXHJcbiAgJi5hY3RpdmU6aG92ZXIsXHJcbiAgJi5hY3RpdmU6Zm9jdXMge1xyXG4gICAgei1pbmRleDogMjsgLy8gUGxhY2UgYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcclxuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XHJcbiAgICBib3JkZXItY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXI7XHJcblxyXG4gICAgLy8gRm9yY2UgY29sb3IgdG8gaW5oZXJpdCBmb3IgY3VzdG9tIGNvbnRlbnRcclxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyxcclxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IHNtYWxsLFxyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nID4gLnNtYWxsIHtcclxuICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICB9XHJcbiAgICAubGlzdC1ncm91cC1pdGVtLXRleHQge1xyXG4gICAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLXRleHQtY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gQ29udGV4dHVhbCB2YXJpYW50c1xyXG4vL1xyXG4vLyBBZGQgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxyXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxyXG5cclxuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoc3VjY2VzcywgJHN0YXRlLXN1Y2Nlc3MtYmcsICRzdGF0ZS1zdWNjZXNzLXRleHQpO1xyXG5AaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudChpbmZvLCAkc3RhdGUtaW5mby1iZywgJHN0YXRlLWluZm8tdGV4dCk7XHJcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KHdhcm5pbmcsICRzdGF0ZS13YXJuaW5nLWJnLCAkc3RhdGUtd2FybmluZy10ZXh0KTtcclxuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoZGFuZ2VyLCAkc3RhdGUtZGFuZ2VyLWJnLCAkc3RhdGUtZGFuZ2VyLXRleHQpO1xyXG5cclxuXHJcbi8vIEN1c3RvbSBjb250ZW50IG9wdGlvbnNcclxuLy9cclxuLy8gRXh0cmEgY2xhc3NlcyBmb3IgY3JlYXRpbmcgd2VsbC1mb3JtYXR0ZWQgY29udGVudCB3aXRoaW4gYC5saXN0LWdyb3VwLWl0ZW1gcy5cclxuXHJcbi5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbn1cclxuLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbn1cclxuIiwiLy8gTGlzdCBHcm91cHNcclxuXHJcbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcclxuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcblxyXG4gICAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfVxyXG4gIH1cclxuXHJcbiAgYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcblxyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcclxuICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcclxuICAgIH1cclxuICAgICYuYWN0aXZlLFxyXG4gICAgJi5hY3RpdmU6aG92ZXIsXHJcbiAgICAmLmFjdGl2ZTpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBQYW5lbHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBCYXNlIGNsYXNzXHJcbi5wYW5lbCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1iZztcclxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItcmFkaXVzOiAkcGFuZWwtYm9yZGVyLXJhZGl1cztcclxuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNSkpO1xyXG59XHJcblxyXG4vLyBQYW5lbCBjb250ZW50c1xyXG4ucGFuZWwtYm9keSB7XHJcbiAgcGFkZGluZzogJHBhbmVsLWJvZHktcGFkZGluZztcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxufVxyXG5cclxuLy8gT3B0aW9uYWwgaGVhZGluZ1xyXG4ucGFuZWwtaGVhZGluZyB7XHJcbiAgcGFkZGluZzogJHBhbmVsLWhlYWRpbmctcGFkZGluZztcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xyXG5cclxuICA+IC5kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gIH1cclxufVxyXG5cclxuLy8gV2l0aGluIGhlYWRpbmcsIHN0cmlwIGFueSBgaCpgIHRhZyBvZiBpdHMgZGVmYXVsdCBtYXJnaW5zIGZvciBzcGFjaW5nLlxyXG4ucGFuZWwtdGl0bGUge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBmb250LXNpemU6IGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMTI1KSk7XHJcbiAgY29sb3I6IGluaGVyaXQ7XHJcblxyXG4gID4gYSxcclxuICA+IHNtYWxsLFxyXG4gID4gLnNtYWxsLFxyXG4gID4gc21hbGwgPiBhLFxyXG4gID4gLnNtYWxsID4gYSB7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE9wdGlvbmFsIGZvb3RlciAoc3RheXMgZ3JheSBpbiBldmVyeSBtb2RpZmllciBjbGFzcylcclxuLnBhbmVsLWZvb3RlciB7XHJcbiAgcGFkZGluZzogJHBhbmVsLWZvb3Rlci1wYWRkaW5nO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1mb290ZXItYmc7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRwYW5lbC1pbm5lci1ib3JkZXI7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xyXG59XHJcblxyXG5cclxuLy8gTGlzdCBncm91cHMgaW4gcGFuZWxzXHJcbi8vXHJcbi8vIEJ5IGRlZmF1bHQsIHNwYWNlIG91dCBsaXN0IGdyb3VwIGNvbnRlbnQgZnJvbSBwYW5lbCBoZWFkaW5ncyB0byBhY2NvdW50IGZvclxyXG4vLyBhbnkga2luZCBvZiBjdXN0b20gY29udGVudCBiZXR3ZWVuIHRoZSB0d28uXHJcblxyXG4ucGFuZWwge1xyXG4gID4gLmxpc3QtZ3JvdXAsXHJcbiAgPiAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gICAgICBib3JkZXItd2lkdGg6IDFweCAwO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIEFkZCBib3JkZXIgYm90dG9tIHJhZGl1cyBmb3IgbGFzdCBvbmVcclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLy8gQ29sbGFwc2Ugc3BhY2UgYmV0d2VlbiB3aGVuIHRoZXJlJ3Mgbm8gYWRkaXRpb25hbCBjb250ZW50LlxyXG4ucGFuZWwtaGVhZGluZyArIC5saXN0LWdyb3VwIHtcclxuICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcclxuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XHJcbiAgfVxyXG59XHJcbi5saXN0LWdyb3VwICsgLnBhbmVsLWZvb3RlciB7XHJcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcclxufVxyXG5cclxuLy8gVGFibGVzIGluIHBhbmVsc1xyXG4vL1xyXG4vLyBQbGFjZSBhIG5vbi1ib3JkZXJlZCBgLnRhYmxlYCB3aXRoaW4gYSBwYW5lbCAobm90IHdpdGhpbiBhIGAucGFuZWwtYm9keWApIGFuZFxyXG4vLyB3YXRjaCBpdCBnbyBmdWxsIHdpZHRoLlxyXG5cclxuLnBhbmVsIHtcclxuICA+IC50YWJsZSxcclxuICA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLFxyXG4gID4gLnBhbmVsLWNvbGxhcHNlID4gLnRhYmxlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgY2FwdGlvbiB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogJHBhbmVsLWJvZHktcGFkZGluZztcclxuICAgICAgcGFkZGluZy1yaWdodDogJHBhbmVsLWJvZHktcGFkZGluZztcclxuICAgIH1cclxuICB9XHJcbiAgLy8gQWRkIGJvcmRlciB0b3AgcmFkaXVzIGZvciBmaXJzdCBvbmVcclxuICA+IC50YWJsZTpmaXJzdC1jaGlsZCxcclxuICA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkIHtcclxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcclxuXHJcbiAgICA+IHRoZWFkOmZpcnN0LWNoaWxkLFxyXG4gICAgPiB0Ym9keTpmaXJzdC1jaGlsZCB7XHJcbiAgICAgID4gdHI6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xyXG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcclxuXHJcbiAgICAgICAgdGQ6Zmlyc3QtY2hpbGQsXHJcbiAgICAgICAgdGg6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRkOmxhc3QtY2hpbGQsXHJcbiAgICAgICAgdGg6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIEFkZCBib3JkZXIgYm90dG9tIHJhZGl1cyBmb3IgbGFzdCBvbmVcclxuICA+IC50YWJsZTpsYXN0LWNoaWxkLFxyXG4gID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkIHtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcclxuXHJcbiAgICA+IHRib2R5Omxhc3QtY2hpbGQsXHJcbiAgICA+IHRmb290Omxhc3QtY2hpbGQge1xyXG4gICAgICA+IHRyOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcclxuXHJcbiAgICAgICAgdGQ6Zmlyc3QtY2hpbGQsXHJcbiAgICAgICAgdGg6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRkOmxhc3QtY2hpbGQsXHJcbiAgICAgICAgdGg6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gID4gLnBhbmVsLWJvZHkgKyAudGFibGUsXHJcbiAgPiAucGFuZWwtYm9keSArIC50YWJsZS1yZXNwb25zaXZlLFxyXG4gID4gLnRhYmxlICsgLnBhbmVsLWJvZHksXHJcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSArIC5wYW5lbC1ib2R5IHtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG4gIH1cclxuICA+IC50YWJsZSA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGgsXHJcbiAgPiAudGFibGUgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRkIHtcclxuICAgIGJvcmRlci10b3A6IDA7XHJcbiAgfVxyXG4gID4gLnRhYmxlLWJvcmRlcmVkLFxyXG4gID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQge1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgPiB0aGVhZCxcclxuICAgID4gdGJvZHksXHJcbiAgICA+IHRmb290IHtcclxuICAgICAgPiB0ciB7XHJcbiAgICAgICAgPiB0aDpmaXJzdC1jaGlsZCxcclxuICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICA+IHRoOmxhc3QtY2hpbGQsXHJcbiAgICAgICAgPiB0ZDpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgID4gdGhlYWQsXHJcbiAgICA+IHRib2R5IHtcclxuICAgICAgPiB0cjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgPiB0ZCxcclxuICAgICAgICA+IHRoIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICA+IHRib2R5LFxyXG4gICAgPiB0Zm9vdCB7XHJcbiAgICAgID4gdHI6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgPiB0ZCxcclxuICAgICAgICA+IHRoIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gID4gLnRhYmxlLXJlc3BvbnNpdmUge1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBDb2xsYXBzYWJsZSBwYW5lbHMgKGFrYSwgYWNjb3JkaW9uKVxyXG4vL1xyXG4vLyBXcmFwIGEgc2VyaWVzIG9mIHBhbmVscyBpbiBgLnBhbmVsLWdyb3VwYCB0byB0dXJuIHRoZW0gaW50byBhbiBhY2NvcmRpb24gd2l0aFxyXG4vLyB0aGUgaGVscCBvZiBvdXIgY29sbGFwc2UgSmF2YVNjcmlwdCBwbHVnaW4uXHJcblxyXG4ucGFuZWwtZ3JvdXAge1xyXG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuXHJcbiAgLy8gVGlnaHRlbiB1cCBtYXJnaW4gc28gaXQncyBvbmx5IGJldHdlZW4gcGFuZWxzXHJcbiAgLnBhbmVsIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkcGFuZWwtYm9yZGVyLXJhZGl1cztcclxuXHJcbiAgICArIC5wYW5lbCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5wYW5lbC1oZWFkaW5nIHtcclxuICAgIGJvcmRlci1ib3R0b206IDA7XHJcblxyXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSxcclxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xyXG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHBhbmVsLWlubmVyLWJvcmRlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5wYW5lbC1mb290ZXIge1xyXG4gICAgYm9yZGVyLXRvcDogMDtcclxuICAgICsgLnBhbmVsLWNvbGxhcHNlIC5wYW5lbC1ib2R5IHtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwYW5lbC1pbm5lci1ib3JkZXI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zXHJcbi5wYW5lbC1kZWZhdWx0IHtcclxuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1kZWZhdWx0LWJvcmRlciwgJHBhbmVsLWRlZmF1bHQtdGV4dCwgJHBhbmVsLWRlZmF1bHQtaGVhZGluZy1iZywgJHBhbmVsLWRlZmF1bHQtYm9yZGVyKTtcclxufVxyXG4ucGFuZWwtcHJpbWFyeSB7XHJcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtcHJpbWFyeS1ib3JkZXIsICRwYW5lbC1wcmltYXJ5LXRleHQsICRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmcsICRwYW5lbC1wcmltYXJ5LWJvcmRlcik7XHJcbn1cclxuLnBhbmVsLXN1Y2Nlc3Mge1xyXG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyLCAkcGFuZWwtc3VjY2Vzcy10ZXh0LCAkcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnLCAkcGFuZWwtc3VjY2Vzcy1ib3JkZXIpO1xyXG59XHJcbi5wYW5lbC1pbmZvIHtcclxuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1pbmZvLWJvcmRlciwgJHBhbmVsLWluZm8tdGV4dCwgJHBhbmVsLWluZm8taGVhZGluZy1iZywgJHBhbmVsLWluZm8tYm9yZGVyKTtcclxufVxyXG4ucGFuZWwtd2FybmluZyB7XHJcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtd2FybmluZy1ib3JkZXIsICRwYW5lbC13YXJuaW5nLXRleHQsICRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmcsICRwYW5lbC13YXJuaW5nLWJvcmRlcik7XHJcbn1cclxuLnBhbmVsLWRhbmdlciB7XHJcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtZGFuZ2VyLWJvcmRlciwgJHBhbmVsLWRhbmdlci10ZXh0LCAkcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmcsICRwYW5lbC1kYW5nZXItYm9yZGVyKTtcclxufVxyXG4iLCIvLyBQYW5lbHNcclxuXHJcbkBtaXhpbiBwYW5lbC12YXJpYW50KCRib3JkZXIsICRoZWFkaW5nLXRleHQtY29sb3IsICRoZWFkaW5nLWJnLWNvbG9yLCAkaGVhZGluZy1ib3JkZXIpIHtcclxuICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcblxyXG4gICYgPiAucGFuZWwtaGVhZGluZyB7XHJcbiAgICBjb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLWJnLWNvbG9yO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkaGVhZGluZy1ib3JkZXI7XHJcblxyXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XHJcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRib3JkZXI7XHJcbiAgICB9XHJcbiAgICAuYmFkZ2Uge1xyXG4gICAgICBjb2xvcjogJGhlYWRpbmctYmctY29sb3I7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYgPiAucGFuZWwtZm9vdGVyIHtcclxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xyXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYm9yZGVyO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBFbWJlZHMgcmVzcG9uc2l2ZVxyXG4vL1xyXG4vLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cclxuXHJcbi5lbWJlZC1yZXNwb25zaXZlIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSxcclxuICBpZnJhbWUsXHJcbiAgZW1iZWQsXHJcbiAgb2JqZWN0LFxyXG4gIHZpZGVvIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJvcmRlcjogMDtcclxuICB9XHJcblxyXG4gIC8vIE1vZGlmaWVyIGNsYXNzIGZvciAxNjo5IGFzcGVjdCByYXRpb1xyXG4gICYuZW1iZWQtcmVzcG9uc2l2ZS0xNmJ5OSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xyXG4gIH1cclxuXHJcbiAgLy8gTW9kaWZpZXIgY2xhc3MgZm9yIDQ6MyBhc3BlY3QgcmF0aW9cclxuICAmLmVtYmVkLXJlc3BvbnNpdmUtNGJ5MyB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNzUlO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBXZWxsc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEJhc2UgY2xhc3NcclxuLndlbGwge1xyXG4gIG1pbi1oZWlnaHQ6IDIwcHg7XHJcbiAgcGFkZGluZzogMTlweDtcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICR3ZWxsLWJnO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICR3ZWxsLWJvcmRlcjtcclxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA1KSk7XHJcbiAgYmxvY2txdW90ZSB7XHJcbiAgICBib3JkZXItY29sb3I6ICNkZGQ7XHJcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsLjE1KTtcclxuICB9XHJcbn1cclxuXHJcbi8vIFNpemVzXHJcbi53ZWxsLWxnIHtcclxuICBwYWRkaW5nOiAyNHB4O1xyXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlO1xyXG59XHJcbi53ZWxsLXNtIHtcclxuICBwYWRkaW5nOiA5cHg7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc21hbGw7XHJcbn1cclxuIiwiLy9cclxuLy8gQ2xvc2UgaWNvbnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4uY2xvc2Uge1xyXG4gIGZsb2F0OiByaWdodDtcclxuICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgKiAxLjUpO1xyXG4gIGZvbnQtd2VpZ2h0OiAkY2xvc2UtZm9udC13ZWlnaHQ7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgY29sb3I6ICRjbG9zZS1jb2xvcjtcclxuICB0ZXh0LXNoYWRvdzogJGNsb3NlLXRleHQtc2hhZG93O1xyXG4gIEBpbmNsdWRlIG9wYWNpdHkoLjIpO1xyXG5cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgY29sb3I6ICRjbG9zZS1jb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIEBpbmNsdWRlIG9wYWNpdHkoLjUpO1xyXG4gIH1cclxuXHJcbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGJ1dHRvbiYgdG8gYnV0dG9uLmNsb3NlXHJcbn1cclxuXHJcbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cclxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXHJcbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxyXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcclxuYnV0dG9uLmNsb3NlIHtcclxuICBwYWRkaW5nOiAwO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IDA7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG59XHJcbiIsIi8vXHJcbi8vIE1vZGFsc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxyXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cclxuLy8gLm1vZGFsLWRpYWxvZyAgICAtIHBvc2l0aW9uaW5nIHNoZWxsIGZvciB0aGUgYWN0dWFsIG1vZGFsXHJcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHNoaXRcclxuXHJcbi8vIEtpbGwgdGhlIHNjcm9sbCBvbiB0aGUgYm9keVxyXG4ubW9kYWwtb3BlbiB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXHJcbi5tb2RhbCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcclxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcblxyXG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXHJcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXHJcbiAgb3V0bGluZTogMDtcclxuXHJcbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cclxuICAmLmZhZGUgLm1vZGFsLWRpYWxvZyB7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMCwgLTI1JSk7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXRyYW5zZm9ybSgwLjNzIGVhc2Utb3V0KTtcclxuICB9XHJcbiAgJi5pbiAubW9kYWwtZGlhbG9nIHsgQGluY2x1ZGUgdHJhbnNsYXRlKDAsIDApIH1cclxufVxyXG4ubW9kYWwtb3BlbiAubW9kYWwge1xyXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICBvdmVyZmxvdy15OiBhdXRvO1xyXG59XHJcblxyXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcclxuLm1vZGFsLWRpYWxvZyB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIG1hcmdpbjogMTBweDtcclxufVxyXG5cclxuLy8gQWN0dWFsIG1vZGFsXHJcbi5tb2RhbC1jb250ZW50IHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOyAvL29sZCBicm93c2VycyBmYWxsYmFjayAoaWU4IGV0YylcclxuICBib3JkZXI6IDFweCBzb2xpZCAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XHJcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDNweCA5cHggcmdiYSgwLDAsMCwuNSkpO1xyXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XHJcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcclxuICBvdXRsaW5lOiAwO1xyXG59XHJcblxyXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXHJcbi5tb2RhbC1iYWNrZHJvcCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICByaWdodDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1iYWNrZHJvcC1iZztcclxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxyXG4gICYuZmFkZSB7IEBpbmNsdWRlIG9wYWNpdHkoMCk7IH1cclxuICAmLmluIHsgQGluY2x1ZGUgb3BhY2l0eSgkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eSk7IH1cclxufVxyXG5cclxuLy8gTW9kYWwgaGVhZGVyXHJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xyXG4ubW9kYWwtaGVhZGVyIHtcclxuICBwYWRkaW5nOiAkbW9kYWwtdGl0bGUtcGFkZGluZztcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XHJcbiAgbWluLWhlaWdodDogKCRtb2RhbC10aXRsZS1wYWRkaW5nICsgJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0KTtcclxufVxyXG4vLyBDbG9zZSBpY29uXHJcbi5tb2RhbC1oZWFkZXIgLmNsb3NlIHtcclxuICBtYXJnaW4tdG9wOiAtMnB4O1xyXG59XHJcblxyXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcclxuLm1vZGFsLXRpdGxlIHtcclxuICBtYXJnaW46IDA7XHJcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcclxufVxyXG5cclxuLy8gTW9kYWwgYm9keVxyXG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXHJcbi5tb2RhbC1ib2R5IHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XHJcbn1cclxuXHJcbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXHJcbi5tb2RhbC1mb290ZXIge1xyXG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0OyAvLyByaWdodCBhbGlnbiBidXR0b25zXHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yO1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4OyAvLyBjbGVhciBpdCBpbiBjYXNlIGZvbGtzIHVzZSAucHVsbC0qIGNsYXNzZXMgb24gYnV0dG9uc1xyXG5cclxuICAvLyBQcm9wZXJseSBzcGFjZSBvdXQgYnV0dG9uc1xyXG4gIC5idG4gKyAuYnRuIHtcclxuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBhY2NvdW50IGZvciBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHdoaWNoIGdldHMgdGhlIGJvdHRvbSBtYXJnaW4gbGlrZSBhbGwgb3RoZXIgaW5wdXRzXHJcbiAgfVxyXG4gIC8vIGJ1dCBvdmVycmlkZSB0aGF0IGZvciBidXR0b24gZ3JvdXBzXHJcbiAgLmJ0bi1ncm91cCAuYnRuICsgLmJ0biB7XHJcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcclxuICB9XHJcbiAgLy8gYW5kIG92ZXJyaWRlIGl0IGZvciBibG9jayBidXR0b25zIGFzIHdlbGxcclxuICAuYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxyXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IC05OTk5cHg7XHJcbiAgd2lkdGg6IDUwcHg7XHJcbiAgaGVpZ2h0OiA1MHB4O1xyXG4gIG92ZXJmbG93OiBzY3JvbGw7XHJcbn1cclxuXHJcbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXHJcbiAgLm1vZGFsLWRpYWxvZyB7XHJcbiAgICB3aWR0aDogJG1vZGFsLW1kO1xyXG4gICAgbWFyZ2luOiAzMHB4IGF1dG87XHJcbiAgfVxyXG4gIC5tb2RhbC1jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCA1cHggMTVweCByZ2JhKDAsMCwwLC41KSk7XHJcbiAgfVxyXG5cclxuICAvLyBNb2RhbCBzaXplc1xyXG4gIC5tb2RhbC1zbSB7IHdpZHRoOiAkbW9kYWwtc207IH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcbiAgLm1vZGFsLWxnIHsgd2lkdGg6ICRtb2RhbC1sZzsgfVxyXG59XHJcbiIsIi8vXHJcbi8vIFRvb2x0aXBzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gQmFzZSBjbGFzc1xyXG4udG9vbHRpcCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIC8vIFJlc2V0IGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyBnaXZlbiBuZXcgaW5zZXJ0aW9uIG1ldGhvZFxyXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBsaW5lLWhlaWdodDogMS40O1xyXG4gIEBpbmNsdWRlIG9wYWNpdHkoMCk7XHJcblxyXG4gICYuaW4gICAgIHsgQGluY2x1ZGUgb3BhY2l0eSgkdG9vbHRpcC1vcGFjaXR5KTsgfVxyXG4gICYudG9wICAgIHsgbWFyZ2luLXRvcDogIC0zcHg7IHBhZGRpbmc6ICR0b29sdGlwLWFycm93LXdpZHRoIDA7IH1cclxuICAmLnJpZ2h0ICB7IG1hcmdpbi1sZWZ0OiAgM3B4OyBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LXdpZHRoOyB9XHJcbiAgJi5ib3R0b20geyBtYXJnaW4tdG9wOiAgIDNweDsgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctd2lkdGggMDsgfVxyXG4gICYubGVmdCAgIHsgbWFyZ2luLWxlZnQ6IC0zcHg7IHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGg7IH1cclxufVxyXG5cclxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxyXG4udG9vbHRpcC1pbm5lciB7XHJcbiAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XHJcbiAgcGFkZGluZzogM3B4IDhweDtcclxuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZztcclxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG59XHJcblxyXG4vLyBBcnJvd3NcclxuLnRvb2x0aXAtYXJyb3cge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG59XHJcbi8vIE5vdGU6IERlcHJlY2F0ZWQgLnRvcC1sZWZ0LCAudG9wLXJpZ2h0LCAuYm90dG9tLWxlZnQsIGFuZCAuYm90dG9tLXJpZ2h0IGFzIG9mIHYzLjMuMVxyXG4udG9vbHRpcCB7XHJcbiAgJi50b3AgLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcclxuICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxuICAmLnRvcC1sZWZ0IC50b29sdGlwLWFycm93IHtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHJpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIG1hcmdpbi1ib3R0b206IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcclxuICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxuICAmLnRvcC1yaWdodCAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIG1hcmdpbi1ib3R0b206IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcclxuICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxuICAmLnJpZ2h0IC50b29sdGlwLWFycm93IHtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcclxuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XHJcbiAgfVxyXG4gICYubGVmdCAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxuICAmLmJvdHRvbSAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICBtYXJnaW4tbGVmdDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XHJcbiAgfVxyXG4gICYuYm90dG9tLWxlZnQgLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XHJcbiAgfVxyXG4gICYuYm90dG9tLXJpZ2h0IC50b29sdGlwLWFycm93IHtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIFBvcG92ZXJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLnBvcG92ZXIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcclxuICBwYWRkaW5nOiAxcHg7XHJcbiAgLy8gUmVzZXQgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIGdpdmVuIG5ldyBpbnNlcnRpb24gbWV0aG9kXHJcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItYmc7XHJcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxuICBib3JkZXI6IDFweCBzb2xpZCAkcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3I7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlO1xyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCA1cHggMTBweCByZ2JhKDAsMCwwLC4yKSk7XHJcblxyXG4gIC8vIE92ZXJyaWRlcyBmb3IgcHJvcGVyIGluc2VydGlvblxyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcblxyXG4gIC8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xyXG4gICYudG9wICAgICB7IG1hcmdpbi10b3A6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxyXG4gICYucmlnaHQgICB7IG1hcmdpbi1sZWZ0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxyXG4gICYuYm90dG9tICB7IG1hcmdpbi10b3A6ICRwb3BvdmVyLWFycm93LXdpZHRoOyB9XHJcbiAgJi5sZWZ0ICAgIHsgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxyXG59XHJcblxyXG4ucG9wb3Zlci10aXRsZSB7XHJcbiAgbWFyZ2luOiAwOyAvLyByZXNldCBoZWFkaW5nIG1hcmdpblxyXG4gIHBhZGRpbmc6IDhweCAxNHB4O1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLXRpdGxlLWJnO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZW4oJHBvcG92ZXItdGl0bGUtYmcsIDUlKTtcclxuICBib3JkZXItcmFkaXVzOiAoJGJvcmRlci1yYWRpdXMtbGFyZ2UgLSAxKSAoJGJvcmRlci1yYWRpdXMtbGFyZ2UgLSAxKSAwIDA7XHJcbn1cclxuXHJcbi5wb3BvdmVyLWNvbnRlbnQge1xyXG4gIHBhZGRpbmc6IDlweCAxNHB4O1xyXG59XHJcblxyXG4vLyBBcnJvd3NcclxuLy9cclxuLy8gLmFycm93IGlzIG91dGVyLCAuYXJyb3c6YWZ0ZXIgaXMgaW5uZXJcclxuXHJcbi5wb3BvdmVyID4gLmFycm93IHtcclxuICAmLFxyXG4gICY6YWZ0ZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMDtcclxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gIH1cclxufVxyXG4ucG9wb3ZlciA+IC5hcnJvdyB7XHJcbiAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcclxufVxyXG4ucG9wb3ZlciA+IC5hcnJvdzphZnRlciB7XHJcbiAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcclxuICBjb250ZW50OiBcIlwiO1xyXG59XHJcblxyXG4ucG9wb3ZlciB7XHJcbiAgJi50b3AgPiAuYXJyb3cge1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcclxuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjsgLy8gSUU4IGZhbGxiYWNrXHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcclxuICAgIGJvdHRvbTogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICBib3R0b206IDFweDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDtcclxuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcclxuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYucmlnaHQgPiAuYXJyb3cge1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XHJcbiAgICBtYXJnaW4tdG9wOiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XHJcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcclxuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xyXG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgbGVmdDogMXB4O1xyXG4gICAgICBib3R0b206IC0kcG9wb3Zlci1hcnJvdy13aWR0aDtcclxuICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XHJcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuYm90dG9tID4gLmFycm93IHtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XHJcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XHJcbiAgICB0b3A6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgdG9wOiAxcHg7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XHJcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5sZWZ0ID4gLmFycm93IHtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgcmlnaHQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcclxuICAgIG1hcmdpbi10b3A6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcclxuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcclxuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjsgLy8gSUU4IGZhbGxiYWNrXHJcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgIHJpZ2h0OiAxcHg7XHJcbiAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcclxuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xyXG4gICAgICBib3R0b206IC0kcG9wb3Zlci1hcnJvdy13aWR0aDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gQ2Fyb3VzZWxcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBXcmFwcGVyIGZvciB0aGUgc2xpZGUgY29udGFpbmVyIGFuZCBpbmRpY2F0b3JzXHJcbi5jYXJvdXNlbCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uY2Fyb3VzZWwtaW5uZXIge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG5cclxuICA+IC5pdGVtIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKC42cyBlYXNlLWluLW91dCBsZWZ0KTtcclxuXHJcbiAgICAvLyBBY2NvdW50IGZvciBqYW5raXR1ZGUgb24gaW1hZ2VzXHJcbiAgICA+IGltZyxcclxuICAgID4gYSA+IGltZyB7XHJcbiAgICAgIEBpbmNsdWRlIGltZy1yZXNwb25zaXZlO1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBXZWJLaXQgQ1NTMyB0cmFuc2Zvcm1zIGZvciBzdXBwb3J0ZWQgZGV2aWNlc1xyXG4gICAgQG1lZGlhIGFsbCBhbmQgKHRyYW5zZm9ybS0zZCksICgtd2Via2l0LXRyYW5zZm9ybS0zZCkge1xyXG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXRyYW5zZm9ybSgwLjZzIGVhc2UtaW4tb3V0KTtcclxuICAgICAgQGluY2x1ZGUgYmFja2ZhY2UtdmlzaWJpbGl0eShoaWRkZW4pO1xyXG4gICAgICBAaW5jbHVkZSBwZXJzcGVjdGl2ZSgxMDAwKTtcclxuXHJcbiAgICAgICYubmV4dCxcclxuICAgICAgJi5hY3RpdmUucmlnaHQge1xyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIH1cclxuICAgICAgJi5wcmV2LFxyXG4gICAgICAmLmFjdGl2ZS5sZWZ0IHtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgfVxyXG4gICAgICAmLm5leHQubGVmdCxcclxuICAgICAgJi5wcmV2LnJpZ2h0LFxyXG4gICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiAuYWN0aXZlLFxyXG4gID4gLm5leHQsXHJcbiAgPiAucHJldiB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG4gID4gLmFjdGl2ZSB7XHJcbiAgICBsZWZ0OiAwO1xyXG4gIH1cclxuXHJcbiAgPiAubmV4dCxcclxuICA+IC5wcmV2IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgPiAubmV4dCB7XHJcbiAgICBsZWZ0OiAxMDAlO1xyXG4gIH1cclxuICA+IC5wcmV2IHtcclxuICAgIGxlZnQ6IC0xMDAlO1xyXG4gIH1cclxuICA+IC5uZXh0LmxlZnQsXHJcbiAgPiAucHJldi5yaWdodCB7XHJcbiAgICBsZWZ0OiAwO1xyXG4gIH1cclxuXHJcbiAgPiAuYWN0aXZlLmxlZnQge1xyXG4gICAgbGVmdDogLTEwMCU7XHJcbiAgfVxyXG4gID4gLmFjdGl2ZS5yaWdodCB7XHJcbiAgICBsZWZ0OiAxMDAlO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5jYXJvdXNlbC1jb250cm9sIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcclxuICBAaW5jbHVkZSBvcGFjaXR5KCRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHkpO1xyXG4gIGZvbnQtc2l6ZTogJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplO1xyXG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdGV4dC1zaGFkb3c6ICRjYXJvdXNlbC10ZXh0LXNoYWRvdztcclxuICAvLyBXZSBjYW4ndCBoYXZlIHRoaXMgdHJhbnNpdGlvbiBoZXJlIGJlY2F1c2UgV2ViS2l0IGNhbmNlbHMgdGhlIGNhcm91c2VsXHJcbiAgLy8gYW5pbWF0aW9uIGlmIHlvdSB0cmlwIHRoaXMgd2hpbGUgaW4gdGhlIG1pZGRsZSBvZiBhbm90aGVyIGFuaW1hdGlvbi5cclxuXHJcbiAgLy8gU2V0IGdyYWRpZW50cyBmb3IgYmFja2dyb3VuZHNcclxuICAmLmxlZnQge1xyXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6IHJnYmEoMCwwLDAsLjUpLCAkZW5kLWNvbG9yOiByZ2JhKDAsMCwwLC4wMDAxKSk7XHJcbiAgfVxyXG4gICYucmlnaHQge1xyXG4gICAgbGVmdDogYXV0bztcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6IHJnYmEoMCwwLDAsLjAwMDEpLCAkZW5kLWNvbG9yOiByZ2JhKDAsMCwwLC41KSk7XHJcbiAgfVxyXG5cclxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgQGluY2x1ZGUgb3BhY2l0eSguOSk7XHJcbiAgfVxyXG5cclxuICAvLyBUb2dnbGVzXHJcbiAgLmljb24tcHJldixcclxuICAuaWNvbi1uZXh0LFxyXG4gIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LFxyXG4gIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHotaW5kZXg6IDU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgfVxyXG4gIC5pY29uLXByZXYsXHJcbiAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQge1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gIH1cclxuICAuaWNvbi1uZXh0LFxyXG4gIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCB7XHJcbiAgICByaWdodDogNTAlO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICB9XHJcbiAgLmljb24tcHJldixcclxuICAuaWNvbi1uZXh0IHtcclxuICAgIHdpZHRoOiAgMjBweDtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICBmb250LWZhbWlseTogc2VyaWY7XHJcbiAgfVxyXG5cclxuXHJcbiAgLmljb24tcHJldiB7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICdcXDIwMzknOy8vIFNJTkdMRSBMRUZULVBPSU5USU5HIEFOR0xFIFFVT1RBVElPTiBNQVJLIChVKzIwMzkpXHJcbiAgICB9XHJcbiAgfVxyXG4gIC5pY29uLW5leHQge1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiAnXFwyMDNhJzsvLyBTSU5HTEUgUklHSFQtUE9JTlRJTkcgQU5HTEUgUVVPVEFUSU9OIE1BUksgKFUrMjAzQSlcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzXHJcbi8vXHJcbi8vIEFkZCBhbiB1bm9yZGVyZWQgbGlzdCB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhIGxpc3QgaXRlbSBmb3IgZWFjaFxyXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxyXG5cclxuLmNhcm91c2VsLWluZGljYXRvcnMge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBib3R0b206IDEwcHg7XHJcbiAgbGVmdDogNTAlO1xyXG4gIHotaW5kZXg6IDE1O1xyXG4gIHdpZHRoOiA2MCU7XHJcbiAgbWFyZ2luLWxlZnQ6IC0zMCU7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICBsaSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB3aWR0aDogIDEwcHg7XHJcbiAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICBtYXJnaW46IDFweDtcclxuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgLy8gSUU4LTkgaGFjayBmb3IgZXZlbnQgaGFuZGxpbmdcclxuICAgIC8vXHJcbiAgICAvLyBJbnRlcm5ldCBFeHBsb3JlciA4LTkgZG9lcyBub3Qgc3VwcG9ydCBjbGlja3Mgb24gZWxlbWVudHMgd2l0aG91dCBhIHNldFxyXG4gICAgLy8gYGJhY2tncm91bmQtY29sb3JgLiBXZSBjYW5ub3QgdXNlIGBmaWx0ZXJgIHNpbmNlIHRoYXQncyBub3Qgdmlld2VkIGFzIGFcclxuICAgIC8vIGJhY2tncm91bmQgY29sb3IgYnkgdGhlIGJyb3dzZXIuIFRodXMsIGEgaGFjayBpcyBuZWVkZWQuXHJcbiAgICAvLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI0ludGVybmV0X0V4cGxvcmVyXHJcbiAgICAvL1xyXG4gICAgLy8gRm9yIElFOCwgd2Ugc2V0IHNvbGlkIGJsYWNrIGFzIGl0IGRvZXNuJ3Qgc3VwcG9ydCBgcmdiYSgpYC4gRm9yIElFOSwgd2VcclxuICAgIC8vIHNldCBhbHBoYSB0cmFuc3BhcmVuY3kgZm9yIHRoZSBiZXN0IHJlc3VsdHMgcG9zc2libGUuXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwIFxcOTsgLy8gSUU4XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDApOyAvLyBJRTlcclxuICB9XHJcbiAgLmFjdGl2ZSB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICB3aWR0aDogIDEycHg7XHJcbiAgICBoZWlnaHQ6IDEycHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcclxuICB9XHJcbn1cclxuXHJcbi8vIE9wdGlvbmFsIGNhcHRpb25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEhpZGRlbiBieSBkZWZhdWx0IGZvciBzbWFsbGVyIHZpZXdwb3J0c1xyXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGxlZnQ6IDE1JTtcclxuICByaWdodDogMTUlO1xyXG4gIGJvdHRvbTogMjBweDtcclxuICB6LWluZGV4OiAxMDtcclxuICBwYWRkaW5nLXRvcDogMjBweDtcclxuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHRleHQtc2hhZG93OiAkY2Fyb3VzZWwtdGV4dC1zaGFkb3c7XHJcbiAgJiAuYnRuIHtcclxuICAgIHRleHQtc2hhZG93OiBub25lOyAvLyBObyBzaGFkb3cgZm9yIGJ1dHRvbiBlbGVtZW50cyBpbiBjYXJvdXNlbC1jYXB0aW9uXHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gU2NhbGUgdXAgY29udHJvbHMgZm9yIHRhYmxldHMgYW5kIHVwXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcblxyXG4gIC8vIFNjYWxlIHVwIHRoZSBjb250cm9scyBhIHNtaWRnZVxyXG4gIC5jYXJvdXNlbC1jb250cm9sIHtcclxuICAgIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LFxyXG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxyXG4gICAgLmljb24tcHJldixcclxuICAgIC5pY29uLW5leHQge1xyXG4gICAgICB3aWR0aDogMzBweDtcclxuICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICBtYXJnaW4tdG9wOiAtMTVweDtcclxuICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgfVxyXG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXHJcbiAgICAuaWNvbi1wcmV2IHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xyXG4gICAgfVxyXG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxyXG4gICAgLmljb24tbmV4dCB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogLTE1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBTaG93IGFuZCBsZWZ0IGFsaWduIHRoZSBjYXB0aW9uc1xyXG4gIC5jYXJvdXNlbC1jYXB0aW9uIHtcclxuICAgIGxlZnQ6IDIwJTtcclxuICAgIHJpZ2h0OiAyMCU7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuICB9XHJcblxyXG4gIC8vIE1vdmUgdXAgdGhlIGluZGljYXRvcnNcclxuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XHJcbiAgICBib3R0b206IDIwcHg7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIFV0aWxpdHkgY2xhc3Nlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEZsb2F0c1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uY2xlYXJmaXgge1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG59XHJcbi5jZW50ZXItYmxvY2sge1xyXG4gIEBpbmNsdWRlIGNlbnRlci1ibG9jaztcclxufVxyXG4ucHVsbC1yaWdodCB7XHJcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XHJcbn1cclxuLnB1bGwtbGVmdCB7XHJcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbi8vIFRvZ2dsaW5nIGNvbnRlbnRcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gTm90ZTogRGVwcmVjYXRlZCAuaGlkZSBpbiBmYXZvciBvZiAuaGlkZGVuIG9yIC5zci1vbmx5IChhcyBhcHByb3ByaWF0ZSkgaW4gdjMuMC4xXHJcbi5oaWRlIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuLnNob3cge1xyXG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbn1cclxuLmludmlzaWJsZSB7XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG59XHJcbi50ZXh0LWhpZGUge1xyXG4gIEBpbmNsdWRlIHRleHQtaGlkZTtcclxufVxyXG5cclxuXHJcbi8vIEhpZGUgZnJvbSBzY3JlZW5yZWFkZXJzIGFuZCBicm93c2Vyc1xyXG4vL1xyXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXHJcblxyXG4uaGlkZGVuIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG4vLyBGb3IgQWZmaXggcGx1Z2luXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5hZmZpeCB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG59XHJcbiIsIi8vIENlbnRlci1hbGlnbiBhIGJsb2NrIGxldmVsIGVsZW1lbnRcclxuXHJcbkBtaXhpbiBjZW50ZXItYmxvY2soKSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG59XHJcbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxyXG4vL1xyXG4vLyBIZWFkcyB1cCEgdjMgbGF1bmNoZWQgd2l0aCB3aXRoIG9ubHkgYC5oaWRlLXRleHQoKWAsIGJ1dCBwZXIgb3VyIHBhdHRlcm4gZm9yXHJcbi8vIG1peGlucyBiZWluZyByZXVzZWQgYXMgY2xhc3NlcyB3aXRoIHRoZSBzYW1lIG5hbWUsIHRoaXMgZG9lc24ndCBob2xkIHVwLiBBc1xyXG4vLyBvZiB2My4wLjEgd2UgaGF2ZSBhZGRlZCBgLnRleHQtaGlkZSgpYCBhbmQgZGVwcmVjYXRlZCBgLmhpZGUtdGV4dCgpYC5cclxuLy9cclxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9jb21taXQvYWEwMzk2ZWFlNzU3XHJcblxyXG4vLyBEZXByZWNhdGVkIGFzIG9mIHYzLjAuMSAod2lsbCBiZSByZW1vdmVkIGluIHY0KVxyXG5AbWl4aW4gaGlkZS10ZXh0KCkge1xyXG4gIGZvbnQ6IDAvMCBhO1xyXG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICB0ZXh0LXNoYWRvdzogbm9uZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IDA7XHJcbn1cclxuXHJcbi8vIE5ldyBtaXhpbiB0byB1c2UgYXMgb2YgdjMuMC4xXHJcbkBtaXhpbiB0ZXh0LWhpZGUoKSB7XHJcbiAgQGluY2x1ZGUgaGlkZS10ZXh0O1xyXG59XHJcbiIsIi8vXHJcbi8vIFJlc3BvbnNpdmU6IFV0aWxpdHkgY2xhc3Nlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIElFMTAgaW4gV2luZG93cyAoUGhvbmUpIDhcclxuLy9cclxuLy8gU3VwcG9ydCBmb3IgcmVzcG9uc2l2ZSB2aWV3cyB2aWEgbWVkaWEgcXVlcmllcyBpcyBraW5kIG9mIGJvcmtlZCBpbiBJRTEwLCBmb3JcclxuLy8gU3VyZmFjZS9kZXNrdG9wIGluIHNwbGl0IHZpZXcgYW5kIGZvciBXaW5kb3dzIFBob25lIDguIFRoaXMgcGFydGljdWxhciBmaXhcclxuLy8gbXVzdCBiZSBhY2NvbXBhbmllZCBieSBhIHNuaXBwZXQgb2YgSmF2YVNjcmlwdCB0byBzbmlmZiB0aGUgdXNlciBhZ2VudCBhbmRcclxuLy8gYXBwbHkgc29tZSBjb25kaXRpb25hbCBDU1MgdG8gKm9ubHkqIHRoZSBTdXJmYWNlL2Rlc2t0b3AgV2luZG93cyA4LiBMb29rIGF0XHJcbi8vIG91ciBHZXR0aW5nIFN0YXJ0ZWQgcGFnZSBmb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiB0aGlzIGJ1Zy5cclxuLy9cclxuLy8gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgZm9sbG93aW5nOlxyXG4vL1xyXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMDQ5N1xyXG4vLyBEb2NzOiBodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbS9nZXR0aW5nLXN0YXJ0ZWQvI3N1cHBvcnQtaWUxMC13aWR0aFxyXG4vLyBTb3VyY2U6IGh0dHA6Ly90aW1rYWRsZWMuY29tLzIwMTMvMDEvd2luZG93cy1waG9uZS04LWFuZC1kZXZpY2Utd2lkdGgvXHJcbi8vIFNvdXJjZTogaHR0cDovL3RpbWthZGxlYy5jb20vMjAxMi8xMC9pZTEwLXNuYXAtbW9kZS1hbmQtcmVzcG9uc2l2ZS1kZXNpZ24vXHJcblxyXG5ALW1zLXZpZXdwb3J0IHtcclxuICB3aWR0aDogZGV2aWNlLXdpZHRoO1xyXG59XHJcblxyXG5cclxuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcclxuLy8gTm90ZTogRGVwcmVjYXRlZCAudmlzaWJsZS14cywgLnZpc2libGUtc20sIC52aXNpYmxlLW1kLCBhbmQgLnZpc2libGUtbGcgYXMgb2YgdjMuMi4wXHJcblxyXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUteHMnKTtcclxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXNtJyk7XHJcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1tZCcpO1xyXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcclxuXHJcbi52aXNpYmxlLXhzLWJsb2NrLFxyXG4udmlzaWJsZS14cy1pbmxpbmUsXHJcbi52aXNpYmxlLXhzLWlubGluZS1ibG9jayxcclxuLnZpc2libGUtc20tYmxvY2ssXHJcbi52aXNpYmxlLXNtLWlubGluZSxcclxuLnZpc2libGUtc20taW5saW5lLWJsb2NrLFxyXG4udmlzaWJsZS1tZC1ibG9jayxcclxuLnZpc2libGUtbWQtaW5saW5lLFxyXG4udmlzaWJsZS1tZC1pbmxpbmUtYmxvY2ssXHJcbi52aXNpYmxlLWxnLWJsb2NrLFxyXG4udmlzaWJsZS1sZy1pbmxpbmUsXHJcbi52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXhzJyk7XHJcbn1cclxuLnZpc2libGUteHMtYmxvY2sge1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUteHMtaW5saW5lIHtcclxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2sge1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtc20nKTtcclxufVxyXG4udmlzaWJsZS1zbS1ibG9jayB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLXNtLWlubGluZSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2sge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1tZCcpO1xyXG59XHJcbi52aXNpYmxlLW1kLWJsb2NrIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUtbWQtaW5saW5lIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xyXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1sZycpO1xyXG59XHJcbi52aXNpYmxlLWxnLWJsb2NrIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLWxnLWlubGluZSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4teHMnKTtcclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1zbScpO1xyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLW1kJyk7XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLWxnJyk7XHJcbn1cclxuXHJcblxyXG4vLyBQcmludCB1dGlsaXRpZXNcclxuLy9cclxuLy8gTWVkaWEgcXVlcmllcyBhcmUgcGxhY2VkIG9uIHRoZSBpbnNpZGUgdG8gYmUgbWl4aW4tZnJpZW5kbHkuXHJcblxyXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXByaW50IGFzIG9mIHYzLjIuMFxyXG5cclxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXByaW50Jyk7XHJcblxyXG5AbWVkaWEgcHJpbnQge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtcHJpbnQnKTtcclxufVxyXG4udmlzaWJsZS1wcmludC1ibG9jayB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICBAbWVkaWEgcHJpbnQge1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUtcHJpbnQtaW5saW5lIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gIEBtZWRpYSBwcmludCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUtcHJpbnQtaW5saW5lLWJsb2NrIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gIEBtZWRpYSBwcmludCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBwcmludCB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tcHJpbnQnKTtcclxufVxyXG4iLCIvLyBSZXNwb25zaXZlIHV0aWxpdGllc1xyXG5cclxuLy9cclxuLy8gTW9yZSBlYXNpbHkgaW5jbHVkZSBhbGwgdGhlIHN0YXRlcyBmb3IgcmVzcG9uc2l2ZS11dGlsaXRpZXMubGVzcy5cclxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXHJcbkBtaXhpbiByZXNwb25zaXZlLXZpc2liaWxpdHkoJHBhcmVudCkge1xyXG4gICN7JHBhcmVudH0ge1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbiAgdGFibGUjeyRwYXJlbnR9ICB7IGRpc3BsYXk6IHRhYmxlOyB9XHJcbiAgdHIjeyRwYXJlbnR9ICAgICB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XHJcbiAgdGgjeyRwYXJlbnR9LFxyXG4gIHRkI3skcGFyZW50fSAgICAgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cclxufVxyXG5cclxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXHJcbkBtaXhpbiByZXNwb25zaXZlLWludmlzaWJpbGl0eSgkcGFyZW50KSB7XHJcbiAgI3skcGFyZW50fSB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbiIsIkBpbXBvcnQgJ2Jvb3RzdHJhcCc7XHJcbi8vIEBpbXBvcnQgJ19mb250LWF3ZXNvbWUnO1xyXG4vLyBAaW1wb3J0ICd2ZW5kb3Jfc3R5bGUnO1xyXG4gICBcclxuQG1peGluIHJlbWNhbGMoJHB4KSB7XHJcblx0Zm9udC1zaXplOiRweCtweDtcclxuXHRmb250LXNpemU6KCRweC8xMikrcmVtO1xyXG59XHJcblxyXG4vLyBib290c3RyYXAgY29sb3JzXHJcbiRib290Ymx1ZTogIzA0OWNkYjtcclxuLmJvb3RibHVlIHsgY29sb3I6ICRib290Ymx1ZSAhaW1wb3J0YW50OyB9XHJcbiRib290Z3JlZW46ICM0NmE1NDY7XHJcbi5ib290Z3JlZW4geyBjb2xvcjogJGJvb3RncmVlbiAhaW1wb3J0YW50OyB9XHJcbiRib290cmVkOiAjOWQyNjFkO1xyXG4uYm9vdHJlZCB7IGNvbG9yOiAkYm9vdHJlZCAhaW1wb3J0YW50OyB9XHJcbi5ib290cmVkX2JnLCAuYm9vdHJlZC1iZyB7IGJhY2tncm91bmQtY29sb3I6ICRib290cmVkOyB9XHJcbiRib290eWVsbG93OiAjZmZlNDBkOyBcclxuLmJvb3R5ZWxsb3cgeyBjb2xvcjogJGJvb3R5ZWxsb3cgIWltcG9ydGFudDsgfVxyXG4kYm9vdG9yYW5nZTogI2Y4OTQwNjtcclxuLmJvb3RvcmFuZ2UgeyBjb2xvcjogJGJvb3RvcmFuZ2UgIWltcG9ydGFudDsgfVxyXG4kYm9vdGJsYWNrOiAjMzczNzM3O1xyXG4uYm9vdGJsYWNrIHsgY29sb3I6ICRib290YmxhY2sgIWltcG9ydGFudDsgfVxyXG4kYm9vdGdyYXk6ICM5OTk7XHJcbi5ib290Z3JheSB7IGNvbG9yOiAkYm9vdGdyYXkgIWltcG9ydGFudDsgfVxyXG4uYm9vdGdyYXlfYmcsIC5ib290Z3JheS1iZyB7IGJhY2tncm91bmQtY29sb3I6ICRib290Z3JheTsgfVxyXG5cclxuLmh1c2gge1xyXG5cdGRpc3BsYXk6bm9uZTtcclxufVxyXG5cclxuLmVkaXRhYmxlLCAubm9uLWVkaXRhYmxlIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHR3b3JkLWJyZWFrOiBrZWVwLWFsbDtcclxuXHRwYWRkaW5nOiAzcHggMnB4O1xyXG5cclxuXHQqIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxufVxyXG5cclxuLmVkaXRhYmxlIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0YmFja2dyb3VuZDojZmZmO1xyXG59XHJcblxyXG5ociB7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICNDQUNBQ0E7XHJcbn1cclxuXHJcbi5hZG1pbl9waWNfd3JhcHBlciB7XHJcblx0ZmxvYXQ6bGVmdDtcclxuXHJcblx0aW1nIHtcclxuXHRcdGhlaWdodDoxNjBweDtcclxuXHRcdGJvcmRlcjogNnB4IHNvbGlkICNmNWY1ZjU7XHJcblx0XHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0XHRtYXJnaW46IDAgNXB4IDVweCAwO1xyXG5cdFx0Ym94LXNoYWRvdzogMCAxcHggMXB4ICM5OTk7XHJcblxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdG9wYWNpdHk6IC44NTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5ub3RpZmljYXRpb24ge1xyXG4gIHBhZGRpbmc6MTZweDtcclxuICBiYWNrZ3JvdW5kOiNmZmY7XHJcbiAgYm9yZGVyOjFweCBzb2xpZCAjZGRkO1xyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxuXHRsaW5lLWhlaWdodDogMS4zO1xyXG5cclxuICBoMSB7XHJcbiAgICBjb2xvcjojOTk5OyBcclxuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgbWFyZ2luOjAgYXV0bztcclxuICAgIGZvbnQtc2l6ZTogMjZweDsgXHJcbiAgICBtYXJnaW46IDBweCAwIDZweDtcclxuICB9XHJcbn1cclxuXHJcbi5qZHBpY2tlcl93IC5kYXRlX3NlbGVjdG9yIHtcclxuICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICBib3JkZXItY29sb3I6ICNjY2NjY2MgIWltcG9ydGFudDtcclxuICBwYWRkaW5nOiAxNXB4OyAgXHJcbiAgd2lkdGg6IDI0MnB4O1xyXG59XHJcbi5qZHBpY2tlcl93IC5kYXRlX3NlbGVjdG9yIHRhYmxlIHtcclxuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwICNmZmZmZmY7XHJcbiAgLW1vei1ib3gtc2hhZG93OiAwIDAgMCAjZmZmZmZmO1xyXG4gIC1vLWJveC1zaGFkb3c6IDAgMCAwICNmZmZmZmY7XHJcbiAgYm94LXNoYWRvdzogMCAwIDAgI2ZmZmZmZjtcclxufVxyXG4uamRwaWNrZXJfdyAuZGF0ZV9zZWxlY3RvciB0ZC5zZWxlY3RhYmxlX2RheSxcclxuLmpkcGlja2VyX3cgLmRhdGVfc2VsZWN0b3IgdHIuc2VsZWN0YWJsZV93ZWVrIHRkIHtcclxuICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gIGJvcmRlci1jb2xvcjogI2JlZTE5MjtcclxufVxyXG4uamRwaWNrZXJfdyAuZGF0ZV9zZWxlY3RvciB0ZC50b2RheSB7XHJcbiAgYmFja2dyb3VuZDogI2RiZWVjMjtcclxufVxyXG4uamRwaWNrZXJfdyAuZGF0ZV9zZWxlY3RvciB0ci5zZWxlY3RhYmxlX3dlZWsuaG92ZXIgdGQsXHJcbi5qZHBpY2tlcl93IC5kYXRlX3NlbGVjdG9yIHRkLnNlbGVjdGFibGVfZGF5LmhvdmVyIHtcclxuICBiYWNrZ3JvdW5kOiAjNzJhMzMzO1xyXG59XHJcbi5qZHBpY2tlcl93IC5kYXRlX3NlbGVjdG9yIHRkLnNlbGVjdGVkLFxyXG4uamRwaWNrZXJfdyAuZGF0ZV9zZWxlY3RvciB0ci5zZWxlY3RlZCB0ZCB7XHJcbiAgYmFja2dyb3VuZDogIzcyYTMzMztcclxuICBjb2xvcjogI2ZmZjtcclxuICB0ZXh0LXNoYWRvdzogbm9uZTtcclxufVxyXG5cclxuLm5hdmJhci1kZWZhdWx0IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjMjYyNjI2O1xyXG5cdGJvcmRlci1jb2xvcjogIzIyMjtcclxuXHRib3JkZXItcmFkaXVzOiAwO1xyXG5cdGJvcmRlci10b3A6IDJweCBzb2xpZCAjZjAwO1xyXG59XHJcblxyXG5ib2R5IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGNUY1O1xyXG59XHJcblxyXG4ubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgPiBsaSA+IGEsIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLXRleHQge1xyXG5cdGNvbG9yOiAjQzRDNEM0O1xyXG59XHJcblxyXG4ubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgPiBsaSA+IGE6aG92ZXIge1xyXG5cdGNvbG9yOiAjZGRkO1xyXG59XHJcblxyXG4ubWVudS1uYXZpZ2F0aW9uLWNvbnRhaW5lciB7XHJcblx0dWwge1xyXG5cdFx0cGFkZGluZy1sZWZ0OjA7XHJcblx0XHRsaSB7XHJcblx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrOyAgXHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4vKk1lbnUgVHJpZ2dlciBTdHlsZXMqL1xyXG4ubWVudS1uYXZpZ2F0aW9uLWNvbnRhaW5lciB7XHJcblx0Lm1vYmlsZS1kcm9wZG93biB7XHJcblx0XHRkaXNwbGF5Om5vbmU7XHJcblx0fVxyXG5cdC5tZW51LXRyaWdnZXIge1xyXG5cdFx0ZGlzcGxheTpub25lO1xyXG5cdH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDokc2NyZWVuLXhzLW1heCkge1xyXG5cdC5tZW51LW5hdmlnYXRpb24tY29udGFpbmVyIHtcclxuXHRcdHdpZHRoOjEwMCU7XHJcblx0XHRkaXNwbGF5Om5vbmU7XHJcblx0XHRmbG9hdDpsZWZ0O1xyXG5cdFx0Lm1lbnUge1xyXG5cdFx0XHRwYWRkaW5nOjA7XHJcblx0XHRcdHdpZHRoOjEwMCU7XHJcblx0XHRcdGxpc3Qtc3R5bGUtdHlwZTpub25lO1xyXG5cdFx0XHRsaSB7XHJcblx0XHRcdFx0d2lkdGg6MTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Lm1vYmlsZS1kcm9wZG93biB7XHJcblx0XHRcdGRpc3BsYXk6YmxvY2s7XHJcblx0XHRcdGNvbG9yOndoaXRlO1xyXG5cdFx0XHRiYWNrZ3JvdW5kOmxpZ2h0ZW4oYmx1ZSwgMTAlKTtcclxuXHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0XHRcdHJpZ2h0OjA7XHJcblx0XHRcdHRvcDowO1xyXG5cdFx0XHRib3R0b206MDtcclxuXHRcdFx0d2lkdGg6NDBweDtcclxuXHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcblx0XHRcdEBpbmNsdWRlIHJlbWNhbGMoMjcpO1xyXG5cdFx0XHQudmVydCwgLmhvciB7XHJcblx0XHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcblx0XHRcdFx0dmVydGljYWwtYWxpZ246bWlkZGxlO1xyXG5cdFx0XHRcdHdpZHRoOjE1cHg7XHJcblx0XHRcdFx0aGVpZ2h0OjNweDtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOndoaXRlO1xyXG5cdFx0XHRcdG1hcmdpbi1sZWZ0OjVweDtcclxuXHRcdFx0XHR0cmFuc2l0aW9uOmFsbCAuNHM7XHJcblx0XHRcdFx0bWFyZ2luOi01cHggMCAwO1xyXG5cclxuXHRcdFx0fVxyXG5cdFx0XHQuaG9yIHtcclxuXHRcdFx0XHRtYXJnaW4tbGVmdDotMTVweDtcclxuXHRcdFx0fVxyXG5cdFx0XHQudmVydCB7XHJcblx0XHRcdFx0dHJhbnNmb3JtOnJvdGF0ZSgtOTBkZWcpO1xyXG5cdFx0XHR9XHJcblx0XHRcdCYuYWN0aXZlIHtcclxuXHRcdFx0XHQuaG9yIHtcclxuXHRcdFx0XHRcdHRyYW5zZm9ybTpyb3RhdGUoLTE4MGRlZyk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC52ZXJ0IHtcclxuXHRcdFx0XHRcdHRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0fVxyXG5cclxuXHQudHJpZ2dlci13cmFwIHtcclxuXHRcdHdpZHRoOjQzcHg7XHJcblx0XHRwYWRkaW5nOjVweCAwO1xyXG5cdH1cclxuXHJcblx0Lm1lbnUtdHJpZ2dlciB7XHJcblx0XHR3aWR0aDozN3B4O1xyXG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0XHRkaXNwbGF5OmJsb2NrO1xyXG5cdFx0bWFyZ2luOjAgYXV0bztcclxuXHJcblx0XHQudG9wLCAubWlkZGxlLCAuYm90dG9tIHtcclxuXHRcdFx0d2lkdGg6MTAwJTtcclxuXHRcdFx0aGVpZ2h0OjZweDtcclxuXHRcdFx0YmFja2dyb3VuZDpibHVlO1xyXG5cdFx0XHRkaXNwbGF5OmJsb2NrO1xyXG5cdFx0XHRtYXJnaW46M3B4IDA7XHJcblx0XHRcdHRyYW5zaXRpb246YWxsIC4zcztcclxuXHRcdH1cclxuXHJcblx0XHQmLmFjdGl2ZSB7XHJcblx0XHRcdC5ib3R0b20ge1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcblx0XHRcdFx0d2lkdGg6MjRweDtcclxuXHRcdFx0XHRoZWlnaHQ6NHB4O1xyXG5cdFx0XHRcdHRvcDoyN3B4O1xyXG5cdFx0XHRcdG1hcmdpbi1sZWZ0OjE0cHg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC50b3Age1xyXG5cdFx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdFx0XHRcdHRyYW5zZm9ybTpyb3RhdGUoNDVkZWcpO1xyXG5cdFx0XHRcdHRvcDoxNXB4O1xyXG5cdFx0XHRcdHdpZHRoOjI0cHg7XHJcblx0XHRcdFx0aGVpZ2h0OjRweDtcclxuXHRcdFx0XHRsZWZ0Oi0xcHg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5taWRkbGUge1xyXG5cdFx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcclxuXHRcdFx0XHR3aWR0aDogMjhweDtcclxuXHRcdFx0XHRsZWZ0OiA0cHg7XHJcblx0XHRcdFx0dG9wOiAwcHg7XHJcblx0XHRcdFx0aGVpZ2h0OjRweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LnJhY2VfYnJvd3Nlci5mb3JtLWdyb3VwIHtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHJcblx0I3Jlc3VsdHNfc2VhcmNoX2Zvcm0ge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRiYWNrZ3JvdW5kOiAjMDAwO1xyXG5cdH1cclxuXHJcblx0I3NlYXJjaF9yZXNldCB7XHJcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblx0fVxyXG5cclxuXHQucmVzdWx0cy10YWJsZSB7XHJcblx0XHRtYXJnaW4tbGVmdDogLTE4cHg7XHJcblxyXG5cdFx0dGgsIHRoICoge1xyXG5cdFx0XHR0ZXh0LW9yaWVudGF0aW9uOiBzaWRld2F5cztcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbmltZyB7XHJcblx0bWF4LXdpZHRoOjEwMCU7XHJcblx0aGVpZ2h0OmF1dG87XHJcbn1cclxuXHJcbi50b3BfZmFjZWJvb2tfYnV0dG9uIHtcclxuXHRwb3NpdGlvbjphYnNvbHV0ZTsgXHJcblx0dG9wOjA7IFxyXG5cdHJpZ2h0OjA7XHJcblxyXG5cdGEsIGE6aG92ZXIge1xyXG5cdFx0Zm9udC1zaXplOiAxOHB4O1xyXG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdH1cclxuXHJcblx0c3BhbiB7XHJcblx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcclxuXHRcdG1hcmdpbi10b3A6IDZweDtcclxuXHR9XHJcblxyXG5cdGltZyB7XHJcblx0XHR3aWR0aDogMjVweDtcclxuXHRcdG1hcmdpbi10b3A6LTZweDtcclxuXHR9XHJcblxyXG59XHJcblxyXG4vKlNpdGUgU3R5bGVzKi9cclxuXHJcbi5jdXN0b20tc3R5bGUge1xyXG5cdCoge1xyXG5cdCAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1vdXQ7IFxyXG5cdCAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZCwgYm9yZGVyLCB0ZXh0LWRlY29yYXRpb247XHJcblx0ICBvdXRsaW5lOiAwO1xyXG5cdH1cclxuXHJcblx0aDEge1xyXG5cdCAgZm9udC1zaXplOiAyOHB4O1xyXG5cdCAgbWFyZ2luOiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMThweDtcclxuXHRcdGxldHRlci1zcGFjaW5nOiAtMXB4O1xyXG5cdFx0bGluZS1oZWlnaHQ6IDAuOTtcclxuXHJcbiAgICBzbWFsbCB7XHJcblx0XHQgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgIH1cclxuXHR9XHJcblxyXG5cdGgyIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDJweDsgXHJcblx0XHRwYWRkaW5nLWxlZnQ6IDElO1xyXG5cdFx0Zm9udC1zaXplOiAyNnB4OztcclxuXHR9XHJcblxyXG5cdC5wYWdpbmF0aW9uIHtcclxuXHQgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIFx0bWFyZ2luOiAwO1xyXG5cdH1cclxuXHJcblx0LnJhY2VfdGl0bGVfbGluayB7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHR9XHJcblxyXG5cdCNyZXN1bHRzX3NlYXJjaF9mb3JtIHtcclxuXHRcdGZsb2F0OnJpZ2h0O1xyXG5cdFx0cGFkZGluZzogN3B4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIG1hcmdpbi10b3A6IC03cHg7XHJcblxyXG5cdFx0LmZvcm0tZ3JvdXAge1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LnJhY2VfYnJvd3NlciB7XHJcblx0XHRmbG9hdDpsZWZ0O1xyXG5cdFx0cGFkZGluZzogN3B4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIG1hcmdpbi10b3A6IC03cHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDE2cHg7XHJcblxyXG5cdFx0aSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogMjRweDtcclxuXHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDtcclxuXHRcdFx0bWFyZ2luLXRvcDogNHB4O1xyXG5cclxuXHRcdFx0Ji5nbHlwaGljb24tYWxpZ24tcmlnaHQge1xyXG5cdFx0XHRcdG1hcmdpbi1yaWdodDogNHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmLmdseXBoaWNvbi1tZW51LXJpZ2h0IHtcclxuXHRcdFx0XHRtYXJnaW4tbGVmdDogLTNweDtcclxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IC0ycHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHRzZWxlY3Qge1xyXG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7IFxyXG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0ICAgIHdpZHRoOiBhdXRvO1xyXG5cdCAgICBmb250LXdlaWdodDogYm9sZDtcclxuXHQgICAgYmFja2dyb3VuZDogcmdiYSgjZmZmLCAwLjk2KTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5yZXN1bHRfbmF2IHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDRweDtcclxuXHRcdG1hcmdpbi10b3A6IDRweDtcclxuXHRcdC8vIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcblx0XHRhLCBzcGFuIHtcclxuXHRcdFx0QGV4dGVuZCAuYnRuO1xyXG5cdFx0XHRmb250LXNpemU6IDE5cHg7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDRweDtcclxuXHRcdFx0cGFkZGluZy1yaWdodDogNHB4O1xyXG5cclxuXHRcdFx0Ji5idG4tcHJpbWFyeSB7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAxNXB4O1xyXG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDE1cHg7XHJcblx0XHQgICAgcGFkZGluZy10b3A6IDdweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0aSB7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAxN3B4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0c3BhbiB7XHJcblx0XHRcdGN1cnNvcjogYXV0bztcclxuXHRcdH1cclxuXHJcblx0XHQuZ2x5cGhpY29uLW1lbnUtcmlnaHQge1xyXG5cdFx0XHRtYXJnaW4tdG9wOiAxNHB4O1xyXG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5fbWlkX3NlcGFyYXRvciAge1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDdweDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCNzZWFyY2hfcmVzZXQge1xyXG5cdFx0ZGlzcGxheTpub25lOyBcclxuXHRcdGZvbnQtc2l6ZTogMjBweDsgXHJcblx0XHRwYWRkaW5nOiAwOyBcclxuXHRcdG1hcmdpbi10b3A6IDRweDsgXHJcblx0XHRmbG9hdDpyaWdodDtcclxuXHRcdG1hcmdpbi1yaWdodDogNXB4O1xyXG5cdH1cclxuXHJcblx0I3NlYXJjaF9pbnB1dCB7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCNmZmYsIDAuOTYpO1xyXG5cdFx0d2lkdGg6MjgwcHg7IFxyXG5cdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcblx0fVxyXG5cclxuXHQjc2VhcmNoX3N1Ym1pdCB7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cclxuXHRcdGkge1xyXG5cdFx0XHRmb250LXNpemU6IDIwcHg7XHJcblx0ICAgIG1hcmdpbjogLTRweCAwIDA7XHJcblx0ICAgIHBhZGRpbmc6IDhweDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC50aHVtYm5haWxfbWFpbiB7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHR3aWR0aDogMTMwcHg7XHJcblx0XHRoZWlnaHQ6IDEzMHB4O1xyXG5cdFx0bWFyZ2luOiAwIDVweCAxMnB4IDA7XHJcblx0XHRib3JkZXI6IDNweCBzb2xpZCAjZmZmO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogMTgwcHg7XHJcblx0XHRib3gtc2hhZG93OiAwIDJweCAzcHggcmdiYSgwLCAwLCAwLCAwLjYpO1xyXG5cdFx0dGV4dC1hbGlnbjpyaWdodDtcclxuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAyMCU7XHJcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cclxuXHRcdHNwYW4ge1xyXG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHQgIG1hcmdpbi10b3A6IC00cHg7XHJcblx0XHQgIHdpZHRoOiAzMnB4O1xyXG5cdFx0ICBoZWlnaHQ6IDMycHg7XHJcblx0XHQgIGZvbnQtc2l6ZTogMjBweDtcclxuXHRcdCAgYmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdCAgYm9yZGVyLXJhZGl1czogODBweDtcclxuXHRcdCAgYm94LXNoYWRvdzogLTFweCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC40KTtcclxuXHRcdCAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0ICBwYWRkaW5nLXRvcDogNHB4O1xyXG5cdFx0ICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHRcdCAgei1pbmRleDoxO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgMTglO1xyXG5cdFx0fVxyXG5cclxuXHRcdCYudGh1bWJuYWlsX3NtYWxsIHtcclxuXHRcdFx0d2lkdGg6MTAwcHg7XHJcblx0XHRcdGhlaWdodDoxMDBweDtcclxuXHRcdFx0Ym9yZGVyOiAycHggc29saWQgI2ZmZjtcclxuXHRcdFx0Ym94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC41KTtcclxuXHJcblx0XHRcdHNwYW4ge1xyXG5cdFx0XHRcdHdpZHRoOiAzMHB4O1xyXG5cdFx0XHQgIGhlaWdodDogMzBweDtcclxuXHRcdFx0ICBmb250LXNpemU6IDE4cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQmLnRodW1ibmFpbF92aWRlbyB7XHJcblx0XHRcdHNwYW4ge1xyXG5cdFx0XHRcdHBhZGRpbmctdG9wOjRweDtcclxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDNweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0c3Bhbi52aWRlb19idXR0b24ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0yMXB4O1xyXG5cdFx0ICAgIHdpZHRoOiAxMDlweDtcclxuXHRcdCAgICBoZWlnaHQ6IDEwOXB4O1xyXG5cdFx0ICAgIGZvbnQtc2l6ZTogNTJweDtcclxuXHRcdCAgICBib3JkZXItcmFkaXVzOiAxODBweDtcclxuXHRcdCAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHQgICAgcGFkZGluZzogMjhweCAyOHB4O1xyXG5cdFx0ICAgIG1hcmdpbi1yaWdodDogN3B4O1xyXG5cdFx0ICAgIHotaW5kZXg6IDA7XHJcbiAgICBcdFx0cG9zaXRpb246IHJlbGF0aXZlO1x0XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5waWNfcHJldmlldyB7XHJcblx0XHR3aWR0aDo1MCU7XHJcblx0XHRmbG9hdDpsZWZ0O1xyXG5cdFx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcblxyXG5cdFx0aW1nIHtcclxuXHRcdFx0Ym9yZGVyOjVweCBzb2xpZCAjZmZmO1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0XHRcdHdpZHRoOjkwJTtcclxuXHRcdFx0bWFyZ2luLXRvcDo1JTtcclxuXHRcdFx0bWF4LXdpZHRoOjUwMHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LnBpY19wcmljaW5nIHtcclxuXHRcdHdpZHRoOiA0MCU7XHJcblx0ICBmbG9hdDogbGVmdDtcclxuXHQgIHBhZGRpbmctdG9wOiA0MHB4OyBcclxuXHQgIGZvbnQtc2l6ZTogMjBweDtcclxuXHQgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblx0ICBsZXR0ZXItc3BhY2luZzogMDtcclxuXHQgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblxyXG5cdCAgLnBpY19wcmljZV9saW5lIHtcclxuXHQgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgIFx0bWFyZ2luOiA4cHggMjBweCA4cHggMDtcclxuXHQgIH1cclxuXHJcblx0ICAucGljX3N0cmlwZV9mb3JtIHtcclxuXHRcdFx0bWFyZ2luLXRvcDo1cHg7IFxyXG5cdFx0XHRtaW4taGVpZ2h0OjQwcHg7XHJcblx0ICB9XHJcblxyXG5cdFx0LnBpY19zYWxlcyB7XHJcblx0XHRcdG1hcmdpbi10b3A6MjBweDsgXHJcblx0XHRcdGZvbnQtc2l6ZTogMTZweDtcclxuXHJcblx0XHR9XHJcblxyXG5cdFx0dWwucGljX3NhbGVzX2xpc3Qge1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogLTI0cHg7IFxyXG5cdFx0XHRtYXJnaW4tdG9wOiAtNnB4OyBcclxuXHJcblx0XHRcdGxpIHtcclxuXHRcdFx0XHRmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblxyXG5cdC50YWJsZSB7XHJcblx0XHR0aCB7XHJcblx0XHRcdHBhZGRpbmc6MDtcclxuXHRcdFx0d2lkdGg6MCU7XHJcblx0XHRcdGJhY2tncm91bmQ6I2RkZDtcclxuXHJcblx0XHRcdHNwYW4ubm9uLWEge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdHBhZGRpbmc6IDhweCA4cHg7XHJcblx0XHRcdFx0bWluLXdpZHRoOjQ1cHg7XHJcblx0XHRcdH1cdFx0XHRcclxuXHJcblx0XHRcdGEge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdHBhZGRpbmc6IDhweCAwO1xyXG5cdFx0XHRcdG1pbi13aWR0aDo0OHB4O1xyXG5cclxuXHRcdFx0XHQuc29ydF9hcnJvdyB7XHJcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6NHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdGE6aG92ZXIge1xyXG5cdFx0XHR0ZXh0LWRlY29yYXRpb246bm9uZTtcclxuXHRcdH1cclxuXHJcblx0XHRpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG5cdFx0XHRtYXJnaW46IDEwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0dGQge1xyXG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcbn1cclxuXHJcbi5jdXN0b20tc3R5bGUuY3VzdG9tLW55Y3J1bnMge1xyXG5cdCRjb2xvcjE6ICNmZmY7IC8vIHRleHQgY29sb3JcclxuXHQkY29sb3IyOiBsaWdodGVuKCMwODJEMzksIDQlKTsgLy8gdGFibGUgYmFja2dyb3VuZFxyXG5cdCRjb2xvcjM6ICMxOThhYWY7IC8vIGFjY2VudFxyXG5cclxuXHQkYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGNvbG9yMiwgNyUpOyBcclxuXHJcblx0Y29sb3I6ICRjb2xvcjE7XHJcblxyXG5cdGgxIHtcclxuXHRcdHNtYWxsIHtcclxuXHRcdFx0Y29sb3I6IGRlc2F0dXJhdGUobGlnaHRlbigkY29sb3IzLCAxNSUpLCA1NiUpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LnJhY2VfdGl0bGVfbGluayB7XHJcblx0XHRjb2xvcjogJGNvbG9yMTtcclxuXHR9XHJcblxyXG5cdC5yZXN1bHRfbmF2IHtcclxuXHRcdGEge1xyXG5cdFx0XHRjb2xvcjogbGlnaHRlbigkY29sb3IzLCAyMiUpO1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHRhLmJ0bi1wcmltYXJ5IHtcclxuXHRcdFx0YmFja2dyb3VuZDogcmdiYSgkY29sb3IzLCAwLjI1KTtcclxuXHRcdFx0Ym9yZGVyLWNvbG9yOiByZ2JhKCRjb2xvcjMsIDAuNTApO1xyXG5cclxuXHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogcmdiYSgkY29sb3IzLCAwLjIpO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmLmFjdGl2ZSB7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogJGNvbG9yMztcclxuXHRcdFx0XHRib3JkZXItY29sb3I6ICRjb2xvcjM7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHRzcGFuIHtcclxuXHRcdFx0Y29sb3I6ICRjb2xvcjEgIWltcG9ydGFudDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCNyYWNlX2hpc3RvcnlfbGluayB7XHJcblx0XHRpIHtcclxuXHQgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuXHQgICAgZm9udC1zaXplOiAxNnB4O1xyXG5cdCAgICBwYWRkaW5nLXRvcDogNHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0I3Jlc3VsdHNfc2VhcmNoX2Zvcm0sIFxyXG5cdC5yYWNlX2Jyb3dzZXIsXHJcblx0LnNvbWV0aGluZ19lbHNlIHtcclxuXHRcdGJhY2tncm91bmQ6IHJnYigzMiwgNjUsIDc2KTtcclxuXHR9XHJcblxyXG5cdCNzZWFyY2hfcmVzZXQge1xyXG5cdFx0Y29sb3I6IzY2ODQ4ZjsgXHJcblx0fVxyXG5cclxuXHQuYnRuLXByaW1hcnkge1xyXG5cdFx0YmFja2dyb3VuZDogJGNvbG9yMztcclxuXHRcdGJvcmRlci1jb2xvcjogbGlnaHRlbigkY29sb3IzLCA1JSk7XHJcblx0XHRvdXRsaW5lLWNvbG9yOiBsaWdodGVuKCRjb2xvcjMsIDI1JSk7XHJcblx0XHRjb2xvcjogJGNvbG9yMSAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHJcblx0LmJ0bi1wcmltYXJ5OmhvdmVyIHtcclxuXHRcdGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGNvbG9yMywgNSUpO1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiBsaWdodGVuKCRjb2xvcjMsIDglKTtcclxuXHR9XHJcblxyXG5cdHNlbGVjdCB7XHJcblx0XHRjb2xvcjogIzExMTtcclxuXHR9XHJcblxyXG5cdC50aHVtYm5haWxfbWFpbiB7XHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0Ym9yZGVyLWNvbG9yOiBsaWdodGVuKCRjb2xvcjMsIDI1JSk7XHJcblxyXG5cdFx0XHRzcGFuIHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiBsaWdodGVuKCRjb2xvcjMsIDI1JSk7XHJcblx0XHRcdFx0Y29sb3I6ICRjb2xvcjE7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQmLnRodW1ibmFpbF92aWRlbyB7XHJcblx0XHRcdHNwYW4udmlkZW9fYnV0dG9uIHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiBkYXJrZW4oJGNvbG9yMiwgMTQlKTtcclxuXHRcdFx0XHRjb2xvcjogJGNvbG9yMTtcclxuXHJcblx0XHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBsaWdodGVuKCRjb2xvcjMsIDEwJSk7XHJcblx0XHRcdFx0XHRjb2xvcjogJGNvbG9yMTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHRhYmxlLnJlc3VsdHNfdGFibGUge1xyXG5cdFx0YmFja2dyb3VuZDogJGNvbG9yMjtcclxuXHRcdGJveC1zaGFkb3c6IDAgMCAycHggZGFya2VuKCRjb2xvcjIsIDE1JSk7XHJcblx0XHR0ZXh0LXNoYWRvdzogMCAxcHggMXB4IGRhcmtlbigkY29sb3IyLCAxNSUpO1xyXG5cclxuXHRcdGEge1xyXG5cdFx0XHRjb2xvcjogbGlnaHRlbigkY29sb3IzLCAyMiUpO1xyXG5cclxuXHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0Y29sb3I6IGxpZ2h0ZW4oJGNvbG9yMywgMzAlKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LnRhYmxlIHsgXHJcblx0XHRiYWNrZ3JvdW5kOiAkY29sb3IyO1xyXG5cdFx0Ym94LXNoYWRvdzogMCAwIDJweCBkYXJrZW4oJGNvbG9yMiwgMTUlKTtcclxuXHJcblx0XHR0aCB7XHJcblx0XHRcdGJhY2tncm91bmQ6IGRhcmtlbigkY29sb3IyLCA0JSk7XHJcblx0XHRcdGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvciAhaW1wb3J0YW50O1xyXG5cclxuXHRcdFx0c3Bhbi5ub24tYSB7XHJcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0cGFkZGluZzogOHB4IDA7XHJcblx0XHRcdFx0bWluLXdpZHRoOjQ1cHg7XHJcblx0XHRcdFx0Y29sb3I6IGRhcmtlbigkY29sb3IxLCA1JSk7XHJcblx0XHRcdH1cdFx0XHRcclxuXHJcblx0XHRcdGEge1xyXG5cdFx0XHRcdCY6aG92ZXIge1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbihkYXJrZW4oJGNvbG9yMiwgNCUpLCAxJSkgIWltcG9ydGFudDtcclxuXHRcdFx0XHRcdGNvbG9yOiAkY29sb3IxO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRcclxuXHRcdFx0XHQuc29ydF9hcnJvdyB7XHJcblx0XHRcdFx0XHRjb2xvcjogJGNvbG9yMSAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdH1cclxuXHJcblx0XHR0ZCB7XHJcblx0XHRcdGNvbG9yOiAkY29sb3IxO1xyXG5cdFx0XHRib3JkZXItY29sb3I6ICRib3JkZXItY29sb3IgIWltcG9ydGFudDtcclxuXHRcdFx0cGFkZGluZzogOHB4IDRweDtcclxuXHRcdH1cclxuXHJcblx0XHR0cjpob3ZlciB7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yMiwgNSUpO1xyXG5cdFx0fVxyXG5cclxuXHRcdGEge1xyXG5cdFx0XHRjb2xvcjogZGVzYXR1cmF0ZShsaWdodGVuKCRjb2xvcjMsIDM3JSksIDI1JSk7XHJcblx0XHR9XHJcblx0fSAvLyAudGFibGVcclxuXHJcblx0dGFibGUubGFwLWluZm8ge1xyXG5cdFx0YmFja2dyb3VuZDogZGFya2VuKCRjb2xvcjIsIDMlKTtcclxuXHJcblx0XHR0aCwgdGQge1xyXG5cdFx0XHRib3JkZXI6IDFweCBkb3R0ZWQgZGVzYXR1cmF0ZShsaWdodGVuKCRjb2xvcjIsIDI1JSksIDMwJSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxudGFibGUucmVzdWx0c190YWJsZSB7IC8vIHNpbmdsZSByZXN1bHRzIC8vIC4uL2FwcGxpY2F0aW9uL3ZpZXdzL2Zyb250L3Jlc3VsdF92aWV3LnBocFxyXG5cdHdpZHRoOiAxMDAlO1xyXG5cclxuXHR0aCwgdGQge1xyXG5cdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblx0XHRmb250LXNpemU6IDI2cHg7XHJcblx0XHRsZXR0ZXItc3BhY2luZzogLTFweDtcclxuXHRcdGxpbmUtaGVpZ2h0OiAwLjk7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuXHR9XHJcblxyXG5cdHRoIHtcclxuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cdFx0cGFkZGluZy1yaWdodDogMTBweDtcclxuXHR9XHJcblxyXG5cdHNtYWxsIHtcclxuXHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblx0XHRmb250LXNpemU6IDE4cHg7XHJcblx0XHQvLyBsZXR0ZXItc3BhY2luZzowO1xyXG5cdH1cclxuXHJcblx0dGQge1xyXG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0XHRwYWRkaW5nLXRvcDoxcHg7XHJcblxyXG5cdFx0c3Bhbi5maW5pc2hfZ2VuZXJhbCB7XHJcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdFx0cGFkZGluZzogOXB4IDE0cHg7XHJcblx0XHRcdGJvcmRlcjogMnB4IHNvbGlkO1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0XHQgIG1hcmdpbi10b3A6IC0xMHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0dHIuZmluaXNoZWRfcm93IHtcclxuXHRcdHRoLCB0ZCB7XHJcblx0XHRcdHBhZGRpbmctdG9wOiA4cHg7XHJcblx0XHR9XHJcblxyXG5cdFx0LmZpbmlzaGVkX3Jvd19oZWFkZXIge1xyXG5cdFx0XHRpIHtcclxuXHRcdFx0XHRmb250LXNpemU6IDI2cHg7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDogLTNweDtcclxuXHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG5cdFx0XHRcdG1hcmdpbi1yaWdodDogM3B4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQvLyB0ci5ydW5uZXJfcm93IHtcclxuXHQvLyBcdC5ydW5uZXJfcm93X2hlYWRlciB7XHJcblx0Ly8gXHRcdGkge1xyXG5cdC8vIFx0XHRcdGZvbnQtc2l6ZTogMjZweDtcclxuXHQvLyBcdFx0XHRtYXJnaW4tdG9wOiAtM3B4O1xyXG5cdC8vIFx0XHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblx0Ly8gXHRcdFx0bWFyZ2luLXJpZ2h0OiAzcHg7XHJcblx0Ly8gXHRcdFx0b3BhY2l0eTogMC4zNTtcclxuXHQvLyBcdFx0fVxyXG5cdC8vIFx0fVxyXG5cdC8vIH1cclxuXHJcblx0dGFibGUucmFua19nZW5lcmFsIHtcclxuXHRcdC8vIHdpZHRoOiAxMDAlO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMjVweDtcclxuXHJcblx0XHR0ZCB7XHJcblx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdFx0XHRwYWRkaW5nLXJpZ2h0OjIycHg7XHJcblx0XHRcdGZvbnQtc2l6ZTozMHB4O1xyXG5cdFx0XHRsaW5lLWhlaWdodDogMC44NTtcclxuXHRcdFx0cGFkZGluZy1ib3R0b206MDtcclxuXHRcdFx0d29yZC1zcGFjaW5nOiAxcHg7XHJcblxyXG5cdFx0XHQuZ3JvdXBfZ2VuZXJhbCB7XHJcblx0XHRcdFx0ZGlzcGxheTpibG9jaztcclxuXHRcdFx0XHRwYWRkaW5nOiAycHggMTRweCAwcHg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC8vIC5ncm91cF9wbGFjZV9nZW5lcmFsIHtcclxuXHRcdFx0Ly8gXHRib3JkZXI6IDJweCBzb2xpZDtcclxuXHRcdFx0Ly8gXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0XHRcdC8vIFx0bWFyZ2luLXRvcDotMXB4O1xyXG5cdFx0XHQvLyBcdG1hcmdpbi1ib3R0b206LTNweDtcclxuXHRcdFx0Ly8gfVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0dGFibGUubGFwLWluZm8ge1xyXG5cdCAgbWFyZ2luLXRvcDogOHB4O1xyXG5cdCAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xyXG5cclxuXHRcdHRoLCB0ZCB7XHJcblx0XHRcdGZvbnQtc2l6ZTogMTZweDtcclxuXHRcdFx0bGV0dGVyLXNwYWNpbmc6MDtcclxuXHRcdFx0cGFkZGluZzogOHB4IDhweDtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6bm9ybWFsO1xyXG5cdFx0fVxyXG5cclxuXHRcdHRoIHtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6Ym9sZDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5fcGhvdG9ncmFwaHktdGh1bWJuYWlscy1zaWRlLXRkIHtcclxuXHRcdHdpZHRoOjE4JTtcclxuXHRcdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdFx0Ym9yZGVyLWxlZnQ6IDFweCBkb3R0ZWQ7XHJcblx0XHRwYWRkaW5nLXRvcDogNDVweDtcclxuXHRcdGZvbnQtd2VpZ2h0Om5vcm1hbDtcclxuXHR9XHJcblxyXG59XHJcblxyXG5cclxuXHJcbkBpbXBvcnQgJ19jdXN0b20tbnljcnVuczMnO1xyXG4iLCJcclxuLmN1c3RvbS1zdHlsZS5jdXN0b20tbnljcnVuczMge1xyXG5cdCRjb2xvcjE6ICMzMzM7IC8vIHRleHQgY29sb3JcclxuXHQkY29sb3IyOiAjZmZmOyAvLyB0YWJsZSBiYWNrZ3JvdW5kXHJcblx0JGNvbG9yMzogIzE5OGFhZjsgLy8gYWNjZW50XHJcblxyXG5cdCRib3JkZXItY29sb3I6ICNmZmY7IFxyXG5cclxuXHRjb2xvcjogJGNvbG9yMTtcclxuXHRwYWRkaW5nOiA2MHB4IDQwcHggNDBweDtcclxuXHRiYWNrZ3JvdW5kOiAjZmZmO1xyXG5cclxuXHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiRzY3JlZW4tc20tbWF4KSB7XHJcblx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHRwYWRkaW5nOiA0OHB4IDE4cHggNDBweDtcclxuXHR9XHJcblxyXG5cdCoge1xyXG5cdFx0Zm9udC1mYW1pbHk6ICdtci1lYXZlcy1tb2Rlcm4nLCBzYW5zLXNlcmlmO1x0XHJcblx0XHR0ZXh0LXNoYWRvdzogbm9uZTtcclxuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRsaW5lLWhlaWdodDogMS4yO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0XHRsZXR0ZXItc3BhY2luZzogMnB4O1xyXG5cdFx0d29yZC1zcGFjaW5nOiAycHg7XHJcblxyXG5cdFx0Ji5nbHlwaGljb24ge1xyXG5cdCAgICBmb250LWZhbWlseTogJ0dseXBoaWNvbnMgSGFsZmxpbmdzJztcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHQgIH1cclxuXHR9XHJcblxyXG5cdGgxIHtcclxuXHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6JHNjcmVlbi1zbS1tYXgpIHtcclxuXHRcdFx0Zm9udC1zaXplOiAyMHB4O1xyXG5cdFx0XHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdHNtYWxsIHtcclxuXHRcdFx0Y29sb3I6ICM4Njk0OTg7XHJcblxyXG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiRzY3JlZW4tc20tbWF4KSB7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IDJweDtcclxuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LnRvcF9mYWNlYm9va19idXR0b24ge1xyXG5cdFx0dG9wOiAyMHB4O1xyXG5cdFx0cmlnaHQ6IDE4cHg7XHJcblx0fVxyXG5cclxuXHQjc2VhcmNoX3N1Ym1pdCBpIHtcclxuXHRcdGZvbnQtc2l6ZTogMTVweDtcclxuXHR9XHJcblxyXG5cdC5yYWNlX3RpdGxlX2xpbmsge1xyXG5cdFx0Y29sb3I6ICRjb2xvcjE7XHJcblx0fVxyXG5cclxuXHQucmVzdWx0X25hdiB7XHJcblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiRzY3JlZW4tc20tbWF4KSB7XHJcblx0ICAgIGxpbmUtaGVpZ2h0OiAyO1xyXG5cclxuXHRcdFx0YSwgc3BhbiB7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdFx0XHRcdHBhZGRpbmc6IDNweDtcclxuXHJcblx0XHRcdFx0Ji5idG4tcHJpbWFyeSB7XHJcblx0XHRcdFx0XHRwYWRkaW5nOiAzcHggOXB4O1xyXG4gICAgXHRcdFx0bWFyZ2luLWxlZnQ6IC00cHg7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRpIHtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5nbHlwaGljb24tbWVudS1yaWdodCB7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDogNnB4O1xyXG5cdFx0XHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0YSB7XHJcblx0XHRcdGNvbG9yOiAkY29sb3IzO1xyXG5cdFx0fVxyXG5cclxuXHRcdGEuX3JhY2Uge1xyXG5cdFx0XHRjb2xvcjogJGNvbG9yMztcclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0YS5idG4tcHJpbWFyeSB7XHJcblx0XHRcdGJhY2tncm91bmQ6ICRjb2xvcjM7XHJcblx0XHRcdGJvcmRlci1jb2xvcjogcmdiYSgkY29sb3IzLCAxLjApO1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAwO1xyXG5cdFx0XHRjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG5cclxuXHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogcmdiYSgkY29sb3IzLCAwLjkpO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmLmFjdGl2ZSB7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogJGNvbG9yMztcclxuXHRcdFx0XHRib3JkZXItY29sb3I6ICRjb2xvcjM7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHRzcGFuIHtcclxuXHRcdFx0Y29sb3I6ICRjb2xvcjEgIWltcG9ydGFudDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCNyYWNlX2hpc3RvcnlfbGluayB7XHJcblx0XHRpIHtcclxuXHQgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuXHQgICAgZm9udC1zaXplOiAxNnB4O1xyXG5cdCAgICBwYWRkaW5nLXRvcDogNHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LnRodW1ibmFpbF9tYWluIHtcclxuICAgIHdpZHRoOiA5NXB4O1xyXG4gICAgaGVpZ2h0OiA5NXB4O1xyXG5cdH1cclxuXHJcblx0I3Jlc3VsdHNfc2VhcmNoX2Zvcm0sIFxyXG5cdC5yYWNlX2Jyb3dzZXIsXHJcblx0LnNvbWV0aGluZ19lbHNlIHtcclxuXHRcdGJhY2tncm91bmQ6ICNlZWU7XHJcblx0fVxyXG5cclxuXHQjc2VhcmNoX3Jlc2V0IHtcclxuXHRcdGNvbG9yOiM2Njg0OGY7IFxyXG5cdH1cclxuXHJcblx0LmJ0bi1wcmltYXJ5IHtcclxuXHRcdGJhY2tncm91bmQ6ICRjb2xvcjM7XHJcblx0XHRib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGNvbG9yMywgMCUpO1xyXG5cdFx0b3V0bGluZS1jb2xvcjogbGlnaHRlbigkY29sb3IzLCAwJSk7XHJcblx0XHRib3JkZXItcmFkaXVzOiAwO1xyXG5cdFx0Y29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxuXHR9XHJcblxyXG5cdC5idG4tcHJpbWFyeTpob3ZlciB7XHJcblx0XHRiYWNrZ3JvdW5kOiBsaWdodGVuKCRjb2xvcjMsIDUlKTtcclxuXHRcdGJvcmRlci1jb2xvcjogbGlnaHRlbigkY29sb3IzLCA1JSk7XHJcblx0fVxyXG5cclxuXHRzZWxlY3Qge1xyXG5cdFx0Y29sb3I6ICMxMTE7XHJcblx0fVxyXG5cclxuXHQudGh1bWJuYWlsX21haW4ge1xyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdGJvcmRlci1jb2xvcjogbGlnaHRlbigkY29sb3IzLCAxMCUpO1xyXG5cclxuXHRcdFx0c3BhbiB7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogbGlnaHRlbigkY29sb3IzLCAwJSk7XHJcblx0XHRcdFx0Y29sb3I6ICNmZmY7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQmLnRodW1ibmFpbF92aWRlbyB7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblx0XHRcdHNwYW4udmlkZW9fYnV0dG9uIHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiBkYXJrZW4oJGNvbG9yMiwgMTQlKTtcclxuXHRcdFx0XHRjb2xvcjogJGNvbG9yMTtcclxuXHJcblx0XHRcdFx0aGVpZ2h0OiA4NnB4O1xyXG5cdFx0XHRcdHdpZHRoOiA4NnB4O1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IDFweDtcclxuXHRcdFx0XHRmb250LXNpemU6IDM2cHg7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDJweDtcclxuXHRcdFx0XHRwYWRkaW5nOiAyNXB4IDAgMCA2cHg7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogLTMxcHg7XHJcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdFx0dG9wOiAwO1xyXG5cclxuXHRcdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGNvbG9yMywgMTAlKTtcclxuXHRcdFx0XHRcdGNvbG9yOiAjZmZmO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0dGFibGUucmVzdWx0c190YWJsZSB7XHJcblx0XHQvLyBiYWNrZ3JvdW5kOiAkY29sb3IyO1xyXG5cdFx0Ly8gYm94LXNoYWRvdzogMCAwIDJweCBkYXJrZW4oJGNvbG9yMiwgMTUlKTtcclxuXHRcdC8vIHRleHQtc2hhZG93OiAwIDFweCAxcHggZGFya2VuKCRjb2xvcjIsIDE1JSk7XHJcblxyXG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDokc2NyZWVuLXNtLW1heCkge1xyXG5cdFx0XHR0aCB7XHJcblx0XHRcdFx0cGFkZGluZy1yaWdodDogNXB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHR0aCwgdGQge1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcclxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMHB4O1xyXG5cclxuXHRcdFx0XHRzbWFsbCB7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDEycHg7XHJcblx0XHRcdFx0XHRmb250LXdlaWdodDogbm9ybWFsO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0c3Bhbi5maW5pc2hfZ2VuZXJhbCB7XHJcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Ji5maW5pc2hlZF9yb3dfaGVhZGVyIHtcclxuXHRcdFx0XHRcdHBhZGRpbmctdG9wOiAyOXB4O1xyXG5cclxuXHRcdFx0XHRcdGkge1xyXG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Ji5fcGFjZS1oZWFkZXIge1xyXG5cdFx0XHRcdFx0cGFkZGluZy1ib3R0b206IDIwcHg7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQuZmluaXNoX2dlbmVyYWwge1xyXG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogM3B4O1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxNnB4O1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Lmdyb3VwX2dlbmVyYWwge1xyXG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogNXB4O1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxOHB4O1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Ji5fcmFjZS1oaXN0b3J5LXRkIHtcclxuXHRcdFx0XHRcdGEge1xyXG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogLTEwcHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQubGFwLWluZm8ge1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IC03cHg7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjJweDtcclxuXHJcblx0XHRcdFx0dGQsIHRoIHtcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDhweCA0cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0Ji5tZWRpYV90YWJsZSB7XHJcblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6JHNjcmVlbi1zbS1tYXgpIHtcclxuXHRcdFx0XHR0YWJsZSwgdGJvZHksIHRyLCB0ZCB7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Ll9waG90b2dyYXBoeS10aHVtYm5haWxzLXNpZGUtdGQge1xyXG5cdFx0XHRcdFx0Ym9yZGVyLWxlZnQ6IDA7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4OyAvLyBjb21wZW5zYXRlIHdoZW4gaWZyYW1lIGlzIHRvbyBzaG9ydCB3aGVuIGxvYWRpbmcgYmV0d2VlbiBwb3J0cmFpdCAvIGxhbmRzY2FwZSBwaWN0dXJlcyBhamF4XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQucGljX3ByZXZpZXcsIC5waWNfcHJpY2luZyB7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdGZsb2F0OiBub25lO1xyXG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuXHRcdFx0XHRcdGltZyB7XHJcblx0XHRcdFx0XHRcdHdpZHRoOiA5NSU7XHJcblx0XHRcdFx0XHRcdGJvcmRlci1jb2xvcjogI2Y4ZjhmODtcclxuXHRcdFx0XHRcdFx0Ym94LXNoYWRvdzogMCAxcHggMnB4ICNjY2M7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQucGljX3ByaWNpbmcge1xyXG5cdFx0XHRcdFx0YiB7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcclxuXHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAtMTVweDtcclxuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0LnJhbmtfZ2VuZXJhbCB7XHJcblx0XHRcdHRkIHtcclxuXHRcdFx0XHRzbWFsbCB7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuXHRcdFx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6JHNjcmVlbi1zbS1tYXgpIHtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogLTNweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQmLnJhY2VfaGlzdG9yeV92aWV3IHtcclxuXHRcdFx0dHI6Zmlyc3QtY2hpbGQge1xyXG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdD50Ym9keT50cj50aCB7XHJcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdGEge1xyXG5cdFx0XHRjb2xvcjogIzE5OGFhZjtcclxuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHQvLyBwYWRkaW5nLWJvdHRvbTogMHB4O1xyXG5cdFx0XHRmb250LXNpemU6IDE2cHg7XHJcblxyXG5cdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRjb2xvcjogbGlnaHRlbigkY29sb3IzLCAxMCUpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0c21hbGwge1xyXG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDE4cHg7XHJcblx0XHRcdGZvbnQtc2l6ZTogMTRweDtcclxuXHJcblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6JHNjcmVlbi1zbS1tYXgpIHtcclxuXHRcdFx0XHQuX2hzcGFjZXIge1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdC5fdGV4dCB7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC50YWJsZSB7IFxyXG5cdFx0YmFja2dyb3VuZDogJGNvbG9yMjtcclxuXHRcdGJveC1zaGFkb3c6IDAgMCAycHggZGFya2VuKCRjb2xvcjIsIDE1JSk7XHJcblxyXG5cdFx0dGgge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiBkYXJrZW4oJGNvbG9yMiwgNCUpO1xyXG5cdFx0XHRib3JkZXItY29sb3I6ICRib3JkZXItY29sb3IgIWltcG9ydGFudDtcclxuXHJcblx0XHRcdHNwYW4ubm9uLWEge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdHBhZGRpbmc6IDhweCAwO1xyXG5cdFx0XHRcdG1pbi13aWR0aDo0NXB4O1xyXG5cdFx0XHRcdGNvbG9yOiBkYXJrZW4oJGNvbG9yMSwgNSUpO1xyXG5cdFx0XHR9XHRcdFx0XHJcblxyXG5cdFx0XHRhIHtcclxuXHRcdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oZGFya2VuKCRjb2xvcjIsIDQlKSwgMSUpICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0XHRjb2xvcjogJGNvbG9yMTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0LnNvcnRfYXJyb3cge1xyXG5cdFx0XHRcdFx0Y29sb3I6ICRjb2xvcjEgIWltcG9ydGFudDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHR9XHJcblxyXG5cdFx0dGQge1xyXG5cdFx0XHRjb2xvcjogJGNvbG9yMTtcclxuXHRcdFx0Ym9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7XHJcblx0XHRcdHBhZGRpbmc6IDhweCA0cHg7XHJcblx0XHR9XHJcblxyXG5cdFx0dHI6aG92ZXIge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvcjIsIDUlKTtcclxuXHRcdH1cclxuXHJcblx0XHRhIHtcclxuXHRcdFx0Y29sb3I6IGRlc2F0dXJhdGUobGlnaHRlbigkY29sb3IzLCAzNyUpLCAyNSUpO1xyXG5cdFx0fVxyXG5cdH0gLy8gLnRhYmxlXHJcblxyXG5cdHRhYmxlLmxhcC1pbmZvIHtcclxuXHRcdGJhY2tncm91bmQ6IGRhcmtlbigkY29sb3IyLCAzJSk7XHJcblxyXG5cdFx0dGgsIHRkIHtcclxuXHRcdFx0Ym9yZGVyOiAxcHggZG90dGVkIGRlc2F0dXJhdGUobGlnaHRlbigkY29sb3IyLCAyNSUpLCAzMCUpO1xyXG5cdFx0fVxyXG5cdH1cclxufSJdfQ== */
