@charset "UTF-8";
/* Inicializálás */
/** Site.scss inicializálása **/
/* Custom változók, mixinek és Bootstrap változók felülírása */
/* Változók */
/* Színek */
/* Tipográfia */
/* Custom mixinek */
/* Mixinek */
/* Bootstrap importálása */
/*!
 * Bootstrap v3.3.5 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline; }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden],
template {
  display: none; }

a {
  background-color: transparent; }

a:active,
a:hover {
  outline: 0; }

abbr[title] {
  border-bottom: 1px dotted; }

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

mark {
  background: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; }

svg:not(:root) {
  overflow: hidden; }

figure {
  margin: 1em 40px; }

hr {
  box-sizing: content-box;
  height: 0; }

pre {
  overflow: auto; }

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0; }

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html input[type="button"], input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

button[disabled],
html input[disabled] {
  cursor: default; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

input {
  line-height: normal; }

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box; }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: ""; }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .navbar {
    display: none; }
  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important; }
  .label {
    border: 1px solid #000; }
  .table {
    border-collapse: collapse !important; }
    .table td,
    .table th {
      background-color: #fff !important; }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important; } }

@font-face {
  font-family: 'Glyphicons Halflings';
  src: url("../fonts/bootstrap/glyphicons-halflings-regular.eot");
  src: url("../fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/bootstrap/glyphicons-halflings-regular.woff2") format("woff2"), url("../fonts/bootstrap/glyphicons-halflings-regular.woff") format("woff"), url("../fonts/bootstrap/glyphicons-halflings-regular.ttf") format("truetype"), url("../fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg"); }

.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: 'Glyphicons Halflings';
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.glyphicon-asterisk:before {
  content: "\2a"; }

.glyphicon-plus:before {
  content: "\2b"; }

.glyphicon-euro:before,
.glyphicon-eur:before {
  content: "\20ac"; }

.glyphicon-minus:before {
  content: "\2212"; }

.glyphicon-cloud:before {
  content: "\2601"; }

.glyphicon-envelope:before {
  content: "\2709"; }

.glyphicon-pencil:before {
  content: "\270f"; }

.glyphicon-glass:before {
  content: "\e001"; }

.glyphicon-music:before {
  content: "\e002"; }

.glyphicon-search:before {
  content: "\e003"; }

.glyphicon-heart:before {
  content: "\e005"; }

.glyphicon-star:before {
  content: "\e006"; }

.glyphicon-star-empty:before {
  content: "\e007"; }

.glyphicon-user:before {
  content: "\e008"; }

.glyphicon-film:before {
  content: "\e009"; }

.glyphicon-th-large:before {
  content: "\e010"; }

.glyphicon-th:before {
  content: "\e011"; }

.glyphicon-th-list:before {
  content: "\e012"; }

.glyphicon-ok:before {
  content: "\e013"; }

.glyphicon-remove:before {
  content: "\e014"; }

.glyphicon-zoom-in:before {
  content: "\e015"; }

.glyphicon-zoom-out:before {
  content: "\e016"; }

.glyphicon-off:before {
  content: "\e017"; }

.glyphicon-signal:before {
  content: "\e018"; }

.glyphicon-cog:before {
  content: "\e019"; }

.glyphicon-trash:before {
  content: "\e020"; }

.glyphicon-home:before {
  content: "\e021"; }

.glyphicon-file:before {
  content: "\e022"; }

.glyphicon-time:before {
  content: "\e023"; }

.glyphicon-road:before {
  content: "\e024"; }

.glyphicon-download-alt:before {
  content: "\e025"; }

.glyphicon-download:before {
  content: "\e026"; }

.glyphicon-upload:before {
  content: "\e027"; }

.glyphicon-inbox:before {
  content: "\e028"; }

.glyphicon-play-circle:before {
  content: "\e029"; }

.glyphicon-repeat:before {
  content: "\e030"; }

.glyphicon-refresh:before {
  content: "\e031"; }

.glyphicon-list-alt:before {
  content: "\e032"; }

.glyphicon-lock:before {
  content: "\e033"; }

.glyphicon-flag:before {
  content: "\e034"; }

.glyphicon-headphones:before {
  content: "\e035"; }

.glyphicon-volume-off:before {
  content: "\e036"; }

.glyphicon-volume-down:before {
  content: "\e037"; }

.glyphicon-volume-up:before {
  content: "\e038"; }

.glyphicon-qrcode:before {
  content: "\e039"; }

.glyphicon-barcode:before {
  content: "\e040"; }

.glyphicon-tag:before {
  content: "\e041"; }

.glyphicon-tags:before {
  content: "\e042"; }

.glyphicon-book:before {
  content: "\e043"; }

.glyphicon-bookmark:before {
  content: "\e044"; }

.glyphicon-print:before {
  content: "\e045"; }

.glyphicon-camera:before {
  content: "\e046"; }

.glyphicon-font:before {
  content: "\e047"; }

.glyphicon-bold:before {
  content: "\e048"; }

.glyphicon-italic:before {
  content: "\e049"; }

.glyphicon-text-height:before {
  content: "\e050"; }

.glyphicon-text-width:before {
  content: "\e051"; }

.glyphicon-align-left:before {
  content: "\e052"; }

.glyphicon-align-center:before {
  content: "\e053"; }

.glyphicon-align-right:before {
  content: "\e054"; }

.glyphicon-align-justify:before {
  content: "\e055"; }

.glyphicon-list:before {
  content: "\e056"; }

.glyphicon-indent-left:before {
  content: "\e057"; }

.glyphicon-indent-right:before {
  content: "\e058"; }

.glyphicon-facetime-video:before {
  content: "\e059"; }

.glyphicon-picture:before {
  content: "\e060"; }

.glyphicon-map-marker:before {
  content: "\e062"; }

.glyphicon-adjust:before {
  content: "\e063"; }

.glyphicon-tint:before {
  content: "\e064"; }

.glyphicon-edit:before {
  content: "\e065"; }

.glyphicon-share:before {
  content: "\e066"; }

.glyphicon-check:before {
  content: "\e067"; }

.glyphicon-move:before {
  content: "\e068"; }

.glyphicon-step-backward:before {
  content: "\e069"; }

.glyphicon-fast-backward:before {
  content: "\e070"; }

.glyphicon-backward:before {
  content: "\e071"; }

.glyphicon-play:before {
  content: "\e072"; }

.glyphicon-pause:before {
  content: "\e073"; }

.glyphicon-stop:before {
  content: "\e074"; }

.glyphicon-forward:before {
  content: "\e075"; }

.glyphicon-fast-forward:before {
  content: "\e076"; }

.glyphicon-step-forward:before {
  content: "\e077"; }

.glyphicon-eject:before {
  content: "\e078"; }

.glyphicon-chevron-left:before {
  content: "\e079"; }

.glyphicon-chevron-right:before {
  content: "\e080"; }

.glyphicon-plus-sign:before {
  content: "\e081"; }

.glyphicon-minus-sign:before {
  content: "\e082"; }

.glyphicon-remove-sign:before {
  content: "\e083"; }

.glyphicon-ok-sign:before {
  content: "\e084"; }

.glyphicon-question-sign:before {
  content: "\e085"; }

.glyphicon-info-sign:before {
  content: "\e086"; }

.glyphicon-screenshot:before {
  content: "\e087"; }

.glyphicon-remove-circle:before {
  content: "\e088"; }

.glyphicon-ok-circle:before {
  content: "\e089"; }

.glyphicon-ban-circle:before {
  content: "\e090"; }

.glyphicon-arrow-left:before {
  content: "\e091"; }

.glyphicon-arrow-right:before {
  content: "\e092"; }

.glyphicon-arrow-up:before {
  content: "\e093"; }

.glyphicon-arrow-down:before {
  content: "\e094"; }

.glyphicon-share-alt:before {
  content: "\e095"; }

.glyphicon-resize-full:before {
  content: "\e096"; }

.glyphicon-resize-small:before {
  content: "\e097"; }

.glyphicon-exclamation-sign:before {
  content: "\e101"; }

.glyphicon-gift:before {
  content: "\e102"; }

.glyphicon-leaf:before {
  content: "\e103"; }

.glyphicon-fire:before {
  content: "\e104"; }

.glyphicon-eye-open:before {
  content: "\e105"; }

.glyphicon-eye-close:before {
  content: "\e106"; }

.glyphicon-warning-sign:before {
  content: "\e107"; }

.glyphicon-plane:before {
  content: "\e108"; }

.glyphicon-calendar:before {
  content: "\e109"; }

.glyphicon-random:before {
  content: "\e110"; }

.glyphicon-comment:before {
  content: "\e111"; }

.glyphicon-magnet:before {
  content: "\e112"; }

.glyphicon-chevron-up:before {
  content: "\e113"; }

.glyphicon-chevron-down:before {
  content: "\e114"; }

.glyphicon-retweet:before {
  content: "\e115"; }

.glyphicon-shopping-cart:before {
  content: "\e116"; }

.glyphicon-folder-close:before {
  content: "\e117"; }

.glyphicon-folder-open:before {
  content: "\e118"; }

.glyphicon-resize-vertical:before {
  content: "\e119"; }

.glyphicon-resize-horizontal:before {
  content: "\e120"; }

.glyphicon-hdd:before {
  content: "\e121"; }

.glyphicon-bullhorn:before {
  content: "\e122"; }

.glyphicon-bell:before {
  content: "\e123"; }

.glyphicon-certificate:before {
  content: "\e124"; }

.glyphicon-thumbs-up:before {
  content: "\e125"; }

.glyphicon-thumbs-down:before {
  content: "\e126"; }

.glyphicon-hand-right:before {
  content: "\e127"; }

.glyphicon-hand-left:before {
  content: "\e128"; }

.glyphicon-hand-up:before {
  content: "\e129"; }

.glyphicon-hand-down:before {
  content: "\e130"; }

.glyphicon-circle-arrow-right:before {
  content: "\e131"; }

.glyphicon-circle-arrow-left:before {
  content: "\e132"; }

.glyphicon-circle-arrow-up:before {
  content: "\e133"; }

.glyphicon-circle-arrow-down:before {
  content: "\e134"; }

.glyphicon-globe:before {
  content: "\e135"; }

.glyphicon-wrench:before {
  content: "\e136"; }

.glyphicon-tasks:before {
  content: "\e137"; }

.glyphicon-filter:before {
  content: "\e138"; }

.glyphicon-briefcase:before {
  content: "\e139"; }

.glyphicon-fullscreen:before {
  content: "\e140"; }

.glyphicon-dashboard:before {
  content: "\e141"; }

.glyphicon-paperclip:before {
  content: "\e142"; }

.glyphicon-heart-empty:before {
  content: "\e143"; }

.glyphicon-link:before {
  content: "\e144"; }

.glyphicon-phone:before {
  content: "\e145"; }

.glyphicon-pushpin:before {
  content: "\e146"; }

.glyphicon-usd:before {
  content: "\e148"; }

.glyphicon-gbp:before {
  content: "\e149"; }

.glyphicon-sort:before {
  content: "\e150"; }

.glyphicon-sort-by-alphabet:before {
  content: "\e151"; }

.glyphicon-sort-by-alphabet-alt:before {
  content: "\e152"; }

.glyphicon-sort-by-order:before {
  content: "\e153"; }

.glyphicon-sort-by-order-alt:before {
  content: "\e154"; }

.glyphicon-sort-by-attributes:before {
  content: "\e155"; }

.glyphicon-sort-by-attributes-alt:before {
  content: "\e156"; }

.glyphicon-unchecked:before {
  content: "\e157"; }

.glyphicon-expand:before {
  content: "\e158"; }

.glyphicon-collapse-down:before {
  content: "\e159"; }

.glyphicon-collapse-up:before {
  content: "\e160"; }

.glyphicon-log-in:before {
  content: "\e161"; }

.glyphicon-flash:before {
  content: "\e162"; }

.glyphicon-log-out:before {
  content: "\e163"; }

.glyphicon-new-window:before {
  content: "\e164"; }

.glyphicon-record:before {
  content: "\e165"; }

.glyphicon-save:before {
  content: "\e166"; }

.glyphicon-open:before {
  content: "\e167"; }

.glyphicon-saved:before {
  content: "\e168"; }

.glyphicon-import:before {
  content: "\e169"; }

.glyphicon-export:before {
  content: "\e170"; }

.glyphicon-send:before {
  content: "\e171"; }

.glyphicon-floppy-disk:before {
  content: "\e172"; }

.glyphicon-floppy-saved:before {
  content: "\e173"; }

.glyphicon-floppy-remove:before {
  content: "\e174"; }

.glyphicon-floppy-save:before {
  content: "\e175"; }

.glyphicon-floppy-open:before {
  content: "\e176"; }

.glyphicon-credit-card:before {
  content: "\e177"; }

.glyphicon-transfer:before {
  content: "\e178"; }

.glyphicon-cutlery:before {
  content: "\e179"; }

.glyphicon-header:before {
  content: "\e180"; }

.glyphicon-compressed:before {
  content: "\e181"; }

.glyphicon-earphone:before {
  content: "\e182"; }

.glyphicon-phone-alt:before {
  content: "\e183"; }

.glyphicon-tower:before {
  content: "\e184"; }

.glyphicon-stats:before {
  content: "\e185"; }

.glyphicon-sd-video:before {
  content: "\e186"; }

.glyphicon-hd-video:before {
  content: "\e187"; }

.glyphicon-subtitles:before {
  content: "\e188"; }

.glyphicon-sound-stereo:before {
  content: "\e189"; }

.glyphicon-sound-dolby:before {
  content: "\e190"; }

.glyphicon-sound-5-1:before {
  content: "\e191"; }

.glyphicon-sound-6-1:before {
  content: "\e192"; }

.glyphicon-sound-7-1:before {
  content: "\e193"; }

.glyphicon-copyright-mark:before {
  content: "\e194"; }

.glyphicon-registration-mark:before {
  content: "\e195"; }

.glyphicon-cloud-download:before {
  content: "\e197"; }

.glyphicon-cloud-upload:before {
  content: "\e198"; }

.glyphicon-tree-conifer:before {
  content: "\e199"; }

.glyphicon-tree-deciduous:before {
  content: "\e200"; }

.glyphicon-cd:before {
  content: "\e201"; }

.glyphicon-save-file:before {
  content: "\e202"; }

.glyphicon-open-file:before {
  content: "\e203"; }

.glyphicon-level-up:before {
  content: "\e204"; }

.glyphicon-copy:before {
  content: "\e205"; }

.glyphicon-paste:before {
  content: "\e206"; }

.glyphicon-alert:before {
  content: "\e209"; }

.glyphicon-equalizer:before {
  content: "\e210"; }

.glyphicon-king:before {
  content: "\e211"; }

.glyphicon-queen:before {
  content: "\e212"; }

.glyphicon-pawn:before {
  content: "\e213"; }

.glyphicon-bishop:before {
  content: "\e214"; }

.glyphicon-knight:before {
  content: "\e215"; }

.glyphicon-baby-formula:before {
  content: "\e216"; }

.glyphicon-tent:before {
  content: "\26fa"; }

.glyphicon-blackboard:before {
  content: "\e218"; }

.glyphicon-bed:before {
  content: "\e219"; }

.glyphicon-apple:before {
  content: "\f8ff"; }

.glyphicon-erase:before {
  content: "\e221"; }

.glyphicon-hourglass:before {
  content: "\231b"; }

.glyphicon-lamp:before {
  content: "\e223"; }

.glyphicon-duplicate:before {
  content: "\e224"; }

.glyphicon-piggy-bank:before {
  content: "\e225"; }

.glyphicon-scissors:before {
  content: "\e226"; }

.glyphicon-bitcoin:before {
  content: "\e227"; }

.glyphicon-btc:before {
  content: "\e227"; }

.glyphicon-xbt:before {
  content: "\e227"; }

.glyphicon-yen:before {
  content: "\00a5"; }

.glyphicon-jpy:before {
  content: "\00a5"; }

.glyphicon-ruble:before {
  content: "\20bd"; }

.glyphicon-rub:before {
  content: "\20bd"; }

.glyphicon-scale:before {
  content: "\e230"; }

.glyphicon-ice-lolly:before {
  content: "\e231"; }

.glyphicon-ice-lolly-tasted:before {
  content: "\e232"; }

.glyphicon-education:before {
  content: "\e233"; }

.glyphicon-option-horizontal:before {
  content: "\e234"; }

.glyphicon-option-vertical:before {
  content: "\e235"; }

.glyphicon-menu-hamburger:before {
  content: "\e236"; }

.glyphicon-modal-window:before {
  content: "\e237"; }

.glyphicon-oil:before {
  content: "\e238"; }

.glyphicon-grain:before {
  content: "\e239"; }

.glyphicon-sunglasses:before {
  content: "\e240"; }

.glyphicon-text-size:before {
  content: "\e241"; }

.glyphicon-text-color:before {
  content: "\e242"; }

.glyphicon-text-background:before {
  content: "\e243"; }

.glyphicon-object-align-top:before {
  content: "\e244"; }

.glyphicon-object-align-bottom:before {
  content: "\e245"; }

.glyphicon-object-align-horizontal:before {
  content: "\e246"; }

.glyphicon-object-align-left:before {
  content: "\e247"; }

.glyphicon-object-align-vertical:before {
  content: "\e248"; }

.glyphicon-object-align-right:before {
  content: "\e249"; }

.glyphicon-triangle-right:before {
  content: "\e250"; }

.glyphicon-triangle-left:before {
  content: "\e251"; }

.glyphicon-triangle-bottom:before {
  content: "\e252"; }

.glyphicon-triangle-top:before {
  content: "\e253"; }

.glyphicon-console:before {
  content: "\e254"; }

.glyphicon-superscript:before {
  content: "\e255"; }

.glyphicon-subscript:before {
  content: "\e256"; }

.glyphicon-menu-left:before {
  content: "\e257"; }

.glyphicon-menu-right:before {
  content: "\e258"; }

.glyphicon-menu-down:before {
  content: "\e259"; }

.glyphicon-menu-up:before {
  content: "\e260"; }

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

html {
  font-size: 10px;
  -webkit-tap-highlight-color: transparent; }

body {
  font-family: "Margarine", cursive;
  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;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  display: inline-block;
  max-width: 100%;
  height: auto; }

.img-circle {
  border-radius: 50%; }

hr {
  margin-top: 20px;
  margin-bottom: 20px;
  border: 0;
  border-top: 1px solid #eeeeee; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto; }

[role="button"] {
  cursor: pointer; }

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: inherit;
  font-weight: 500;
  line-height: 1.1;
  color: inherit; }
  h1 small,
  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, .initialism {
  text-transform: uppercase; }

.text-capitalize {
  text-transform: capitalize; }

.text-muted {
  color: #777777; }

.text-primary {
  color: #337ab7; }

a.text-primary:hover,
a.text-primary:focus {
  color: #286090; }

.text-success {
  color: #3c763d; }

a.text-success:hover,
a.text-success:focus {
  color: #2b542c; }

.text-info {
  color: #31708f; }

a.text-info:hover,
a.text-info:focus {
  color: #245269; }

.text-warning {
  color: #8a6d3b; }

a.text-warning:hover,
a.text-warning:focus {
  color: #66512c; }

.text-danger {
  color: #a94442; }

a.text-danger:hover,
a.text-danger:focus {
  color: #843534; }

.bg-primary {
  color: #fff; }

.bg-primary {
  background-color: #337ab7; }

a.bg-primary:hover,
a.bg-primary:focus {
  background-color: #286090; }

.bg-success {
  background-color: #dff0d8; }

a.bg-success:hover,
a.bg-success:focus {
  background-color: #c1e2b3; }

.bg-info {
  background-color: #d9edf7; }

a.bg-info:hover,
a.bg-info:focus {
  background-color: #afd9ee; }

.bg-warning {
  background-color: #fcf8e3; }

a.bg-warning:hover,
a.bg-warning:focus {
  background-color: #f7ecb5; }

.bg-danger {
  background-color: #f2dede; }

a.bg-danger:hover,
a.bg-danger:focus {
  background-color: #e4b9b9; }

.page-header {
  padding-bottom: 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%; }

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"] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  line-height: normal; }

input[type="file"] {
  display: block; }

input[type="range"] {
  display: block;
  width: 100%; }

select[multiple],
select[size] {
  height: auto; }

input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px; }

output {
  display: block;
  padding-top: 7px;
  font-size: 14px;
  line-height: 1.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;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; }
  .form-control:focus {
    border-color: #66afe9;
    outline: 0;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }
  .form-control::-moz-placeholder {
    color: #999;
    opacity: 1; }
  .form-control:-ms-input-placeholder {
    color: #999; }
  .form-control::-webkit-input-placeholder {
    color: #999; }
  .form-control[disabled],
  .form-control[readonly],
  fieldset[disabled] .form-control {
    background-color: #eeeeee;
    opacity: 1; }
  .form-control[disabled],
  fieldset[disabled] .form-control {
    cursor: not-allowed; }

textarea.form-control {
  height: auto; }

input[type="search"] {
  -webkit-appearance: none; }

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"].form-control,
  input[type="time"].form-control,
  input[type="datetime-local"].form-control,
  input[type="month"].form-control {
    line-height: 34px; }
  input[type="date"].input-sm,
  .input-group-sm > input[type="date"].form-control,
  .input-group-sm > input[type="date"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="date"].btn,
  .input-group-sm input[type="date"],
  input[type="time"].input-sm,
  .input-group-sm > input[type="time"].form-control,
  .input-group-sm > input[type="time"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="time"].btn,
  .input-group-sm input[type="time"],
  input[type="datetime-local"].input-sm,
  .input-group-sm > input[type="datetime-local"].form-control,
  .input-group-sm > input[type="datetime-local"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="datetime-local"].btn,
  .input-group-sm input[type="datetime-local"],
  input[type="month"].input-sm,
  .input-group-sm > input[type="month"].form-control,
  .input-group-sm > input[type="month"].input-group-addon,
  .input-group-sm > .input-group-btn > input[type="month"].btn,
  .input-group-sm input[type="month"] {
    line-height: 30px; }
  input[type="date"].input-lg,
  .input-group-lg > input[type="date"].form-control,
  .input-group-lg > input[type="date"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="date"].btn,
  .input-group-lg input[type="date"],
  input[type="time"].input-lg,
  .input-group-lg > input[type="time"].form-control,
  .input-group-lg > input[type="time"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="time"].btn,
  .input-group-lg input[type="time"],
  input[type="datetime-local"].input-lg,
  .input-group-lg > input[type="datetime-local"].form-control,
  .input-group-lg > input[type="datetime-local"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="datetime-local"].btn,
  .input-group-lg input[type="datetime-local"],
  input[type="month"].input-lg,
  .input-group-lg > input[type="month"].form-control,
  .input-group-lg > input[type="month"].input-group-addon,
  .input-group-lg > .input-group-btn > input[type="month"].btn,
  .input-group-lg input[type="month"] {
    line-height: 46px; } }

.form-group {
  margin-bottom: 15px; }

.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px; }
  .radio label,
  .checkbox label {
    min-height: 20px;
    padding-left: 20px;
    margin-bottom: 0;
    font-weight: normal;
    cursor: pointer; }

.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
  position: absolute;
  margin-left: -20px;
  margin-top: 4px \9; }

.radio + .radio,
.checkbox + .checkbox {
  margin-top: -5px; }

.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  vertical-align: middle;
  font-weight: normal;
  cursor: pointer; }

.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px; }

input[type="radio"][disabled],
input[type="radio"].disabled,
fieldset[disabled] input[type="radio"],
input[type="checkbox"][disabled],
input[type="checkbox"].disabled,
fieldset[disabled] input[type="checkbox"] {
  cursor: not-allowed; }

.radio-inline.disabled,
fieldset[disabled] .radio-inline,
.checkbox-inline.disabled,
fieldset[disabled] .checkbox-inline {
  cursor: not-allowed; }

.radio.disabled label,
fieldset[disabled] .radio label,
.checkbox.disabled label,
fieldset[disabled] .checkbox label {
  cursor: not-allowed; }

.form-control-static {
  padding-top: 7px;
  padding-bottom: 7px;
  margin-bottom: 0;
  min-height: 34px; }
  .form-control-static.input-lg,
  .input-group-lg > .form-control-static.form-control,
  .input-group-lg > .form-control-static.input-group-addon,
  .input-group-lg > .input-group-btn > .form-control-static.btn,
  .form-control-static.input-sm, .input-group-sm > .form-control-static.form-control,
  .input-group-sm > .form-control-static.input-group-addon,
  .input-group-sm > .input-group-btn > .form-control-static.btn {
    padding-left: 0;
    padding-right: 0; }

.input-sm, .input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

select.input-sm, .input-group-sm > select.form-control,
.input-group-sm > select.input-group-addon,
.input-group-sm > .input-group-btn > select.btn {
  height: 30px;
  line-height: 30px; }

textarea.input-sm,
.input-group-sm > textarea.form-control,
.input-group-sm > textarea.input-group-addon,
.input-group-sm > .input-group-btn > textarea.btn,
select[multiple].input-sm, .input-group-sm > select[multiple].form-control,
.input-group-sm > select[multiple].input-group-addon,
.input-group-sm > .input-group-btn > select[multiple].btn {
  height: auto; }

.form-group-sm .form-control {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

.form-group-sm select.form-control {
  height: 30px;
  line-height: 30px; }

.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto; }

.form-group-sm .form-control-static {
  height: 30px;
  min-height: 32px;
  padding: 6px 10px;
  font-size: 12px;
  line-height: 1.5; }

.input-lg, .input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px; }

select.input-lg, .input-group-lg > select.form-control,
.input-group-lg > select.input-group-addon,
.input-group-lg > .input-group-btn > select.btn {
  height: 46px;
  line-height: 46px; }

textarea.input-lg,
.input-group-lg > textarea.form-control,
.input-group-lg > textarea.input-group-addon,
.input-group-lg > .input-group-btn > textarea.btn,
select[multiple].input-lg, .input-group-lg > select[multiple].form-control,
.input-group-lg > select[multiple].input-group-addon,
.input-group-lg > .input-group-btn > select[multiple].btn {
  height: auto; }

.form-group-lg .form-control {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px; }

.form-group-lg select.form-control {
  height: 46px;
  line-height: 46px; }

.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto; }

.form-group-lg .form-control-static {
  height: 46px;
  min-height: 38px;
  padding: 11px 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,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
  width: 46px;
  height: 46px;
  line-height: 46px; }

.input-sm + .form-control-feedback,
.input-group-sm > .form-control + .form-control-feedback,
.input-group-sm > .input-group-addon + .form-control-feedback,
.input-group-sm > .input-group-btn > .btn + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
  width: 30px;
  height: 30px;
  line-height: 30px; }

.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
  color: #3c763d; }

.has-success .form-control {
  border-color: #3c763d;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-success .form-control:focus {
    border-color: #2b542c;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; }

.has-success .input-group-addon {
  color: #3c763d;
  border-color: #3c763d;
  background-color: #dff0d8; }

.has-success .form-control-feedback {
  color: #3c763d; }

.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
  color: #8a6d3b; }

.has-warning .form-control {
  border-color: #8a6d3b;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-warning .form-control:focus {
    border-color: #66512c;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b; }

.has-warning .input-group-addon {
  color: #8a6d3b;
  border-color: #8a6d3b;
  background-color: #fcf8e3; }

.has-warning .form-control-feedback {
  color: #8a6d3b; }

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
  color: #a94442; }

.has-error .form-control {
  border-color: #a94442;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-error .form-control:focus {
    border-color: #843534;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; }

.has-error .input-group-addon {
  color: #a94442;
  border-color: #a94442;
  background-color: #f2dede; }

.has-error .form-control-feedback {
  color: #a94442; }

.has-feedback label ~ .form-control-feedback {
  top: 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;
    font-size: 18px; } }

@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
    font-size: 12px; } }

.btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  .btn:focus,
  .btn.focus,
  .btn:active:focus,
  .btn:active.focus,
  .btn.active:focus,
  .btn.active.focus {
    outline: thin dotted;
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px; }
  .btn:hover,
  .btn:focus,
  .btn.focus {
    color: #333;
    text-decoration: none; }
  .btn:active,
  .btn.active {
    outline: 0;
    background-image: none;
    -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
  .btn.disabled,
  .btn[disabled],
  fieldset[disabled] .btn {
    cursor: not-allowed;
    opacity: 0.65;
    filter: alpha(opacity=65);
    -webkit-box-shadow: none;
    box-shadow: none; }

a.btn.disabled,
fieldset[disabled] a.btn {
  pointer-events: none; }

.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc; }
  .btn-default:focus,
  .btn-default.focus {
    color: #333;
    background-color: #e6e6e6;
    border-color: #8c8c8c; }
  .btn-default:hover {
    color: #333;
    background-color: #e6e6e6;
    border-color: #adadad; }
  .btn-default:active,
  .btn-default.active,
  .open > .btn-default.dropdown-toggle {
    color: #333;
    background-color: #e6e6e6;
    border-color: #adadad; }
    .btn-default:active:hover,
    .btn-default:active:focus,
    .btn-default:active.focus,
    .btn-default.active:hover,
    .btn-default.active:focus,
    .btn-default.active.focus,
    .open > .btn-default.dropdown-toggle:hover,
    .open > .btn-default.dropdown-toggle:focus,
    .open > .btn-default.dropdown-toggle.focus {
      color: #333;
      background-color: #d4d4d4;
      border-color: #8c8c8c; }
  .btn-default:active,
  .btn-default.active,
  .open > .btn-default.dropdown-toggle {
    background-image: none; }
  .btn-default.disabled,
  .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:focus,
  .btn-primary.focus {
    color: #fff;
    background-color: #286090;
    border-color: #122b40; }
  .btn-primary:hover {
    color: #fff;
    background-color: #286090;
    border-color: #204d74; }
  .btn-primary:active,
  .btn-primary.active,
  .open > .btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #286090;
    border-color: #204d74; }
    .btn-primary:active:hover,
    .btn-primary:active:focus,
    .btn-primary:active.focus,
    .btn-primary.active:hover,
    .btn-primary.active:focus,
    .btn-primary.active.focus,
    .open > .btn-primary.dropdown-toggle:hover,
    .open > .btn-primary.dropdown-toggle:focus,
    .open > .btn-primary.dropdown-toggle.focus {
      color: #fff;
      background-color: #204d74;
      border-color: #122b40; }
  .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:focus,
  .btn-success.focus {
    color: #fff;
    background-color: #449d44;
    border-color: #255625; }
  .btn-success:hover {
    color: #fff;
    background-color: #449d44;
    border-color: #398439; }
  .btn-success:active,
  .btn-success.active,
  .open > .btn-success.dropdown-toggle {
    color: #fff;
    background-color: #449d44;
    border-color: #398439; }
    .btn-success:active:hover,
    .btn-success:active:focus,
    .btn-success:active.focus,
    .btn-success.active:hover,
    .btn-success.active:focus,
    .btn-success.active.focus,
    .open > .btn-success.dropdown-toggle:hover,
    .open > .btn-success.dropdown-toggle:focus,
    .open > .btn-success.dropdown-toggle.focus {
      color: #fff;
      background-color: #398439;
      border-color: #255625; }
  .btn-success:active,
  .btn-success.active,
  .open > .btn-success.dropdown-toggle {
    background-image: none; }
  .btn-success.disabled,
  .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:focus,
  .btn-info.focus {
    color: #fff;
    background-color: #31b0d5;
    border-color: #1b6d85; }
  .btn-info:hover {
    color: #fff;
    background-color: #31b0d5;
    border-color: #269abc; }
  .btn-info:active,
  .btn-info.active,
  .open > .btn-info.dropdown-toggle {
    color: #fff;
    background-color: #31b0d5;
    border-color: #269abc; }
    .btn-info:active:hover,
    .btn-info:active:focus,
    .btn-info:active.focus,
    .btn-info.active:hover,
    .btn-info.active:focus,
    .btn-info.active.focus,
    .open > .btn-info.dropdown-toggle:hover,
    .open > .btn-info.dropdown-toggle:focus,
    .open > .btn-info.dropdown-toggle.focus {
      color: #fff;
      background-color: #269abc;
      border-color: #1b6d85; }
  .btn-info:active,
  .btn-info.active,
  .open > .btn-info.dropdown-toggle {
    background-image: none; }
  .btn-info.disabled,
  .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:focus,
  .btn-warning.focus {
    color: #fff;
    background-color: #ec971f;
    border-color: #985f0d; }
  .btn-warning:hover {
    color: #fff;
    background-color: #ec971f;
    border-color: #d58512; }
  .btn-warning:active,
  .btn-warning.active,
  .open > .btn-warning.dropdown-toggle {
    color: #fff;
    background-color: #ec971f;
    border-color: #d58512; }
    .btn-warning:active:hover,
    .btn-warning:active:focus,
    .btn-warning:active.focus,
    .btn-warning.active:hover,
    .btn-warning.active:focus,
    .btn-warning.active.focus,
    .open > .btn-warning.dropdown-toggle:hover,
    .open > .btn-warning.dropdown-toggle:focus,
    .open > .btn-warning.dropdown-toggle.focus {
      color: #fff;
      background-color: #d58512;
      border-color: #985f0d; }
  .btn-warning:active,
  .btn-warning.active,
  .open > .btn-warning.dropdown-toggle {
    background-image: none; }
  .btn-warning.disabled,
  .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:focus,
  .btn-danger.focus {
    color: #fff;
    background-color: #c9302c;
    border-color: #761c19; }
  .btn-danger:hover {
    color: #fff;
    background-color: #c9302c;
    border-color: #ac2925; }
  .btn-danger:active,
  .btn-danger.active,
  .open > .btn-danger.dropdown-toggle {
    color: #fff;
    background-color: #c9302c;
    border-color: #ac2925; }
    .btn-danger:active:hover,
    .btn-danger:active:focus,
    .btn-danger:active.focus,
    .btn-danger.active:hover,
    .btn-danger.active:focus,
    .btn-danger.active.focus,
    .open > .btn-danger.dropdown-toggle:hover,
    .open > .btn-danger.dropdown-toggle:focus,
    .open > .btn-danger.dropdown-toggle.focus {
      color: #fff;
      background-color: #ac2925;
      border-color: #761c19; }
  .btn-danger:active,
  .btn-danger.active,
  .open > .btn-danger.dropdown-toggle {
    background-image: none; }
  .btn-danger.disabled,
  .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;
    -webkit-box-shadow: none;
    box-shadow: none; }
  .btn-link,
  .btn-link:hover,
  .btn-link:focus,
  .btn-link:active {
    border-color: transparent; }
  .btn-link:hover,
  .btn-link:focus {
    color: #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 {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px; }

.btn-sm, .btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

.btn-xs, .btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

.btn-block {
  display: block;
  width: 100%; }

.btn-block + .btn-block {
  margin-top: 5px; }

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%; }

.fade {
  opacity: 0;
  -webkit-transition: opacity 0.15s linear;
  -o-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear; }
  .fade.in {
    opacity: 1; }

.collapse {
  display: none; }
  .collapse.in {
    display: block; }

tr.collapse.in {
  display: table-row; }

tbody.collapse.in {
  display: table-row-group; }

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  -webkit-transition-property: height, visibility;
  transition-property: height, visibility;
  -webkit-transition-duration: 0.35s;
  transition-duration: 0.35s;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease; }

.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: 4px dashed;
  border-top: 4px solid \9;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent; }

.dropup,
.dropdown {
  position: relative; }

.dropdown-toggle:focus {
  outline: 0; }

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  list-style: none;
  font-size: 14px;
  text-align: left;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background-clip: padding-box; }
  .dropdown-menu.pull-right {
    right: 0;
    left: auto; }
  .dropdown-menu .divider {
    height: 1px;
    margin: 9px 0;
    overflow: hidden;
    background-color: #e5e5e5; }
  .dropdown-menu > li > a {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: normal;
    line-height: 1.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 dashed;
  border-bottom: 4px solid \9;
  content: ""; }

.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 2px; }

@media (min-width: 768px) {
  .navbar-right .dropdown-menu {
    right: 0;
    left: auto; }
  .navbar-right .dropdown-menu-left {
    left: 0;
    right: auto; } }

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-block;
  vertical-align: middle; }
  .btn-group > .btn,
  .btn-group-vertical > .btn {
    position: relative;
    float: left; }
    .btn-group > .btn:hover,
    .btn-group > .btn:focus,
    .btn-group > .btn:active,
    .btn-group > .btn.active,
    .btn-group-vertical > .btn:hover,
    .btn-group-vertical > .btn:focus,
    .btn-group-vertical > .btn:active,
    .btn-group-vertical > .btn.active {
      z-index: 2; }

.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
  margin-left: -1px; }

.btn-toolbar {
  margin-left: -5px; }
  .btn-toolbar:before,
  .btn-toolbar:after {
    content: " ";
    display: table; }
  .btn-toolbar:after {
    clear: both; }
  .btn-toolbar .btn,
  .btn-toolbar .btn-group,
  .btn-toolbar .input-group {
    float: left; }
  .btn-toolbar > .btn,
  .btn-toolbar > .btn-group,
  .btn-toolbar > .input-group {
    margin-left: 5px; }

.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0; }

.btn-group > .btn:first-child {
  margin-left: 0; }
  .btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0; }

.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0; }

.btn-group > .btn-group {
  float: left; }

.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0; }

.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0; }

.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0; }

.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0; }

.btn-group > .btn + .dropdown-toggle {
  padding-left: 8px;
  padding-right: 8px; }

.btn-group > .btn-lg + .dropdown-toggle, .btn-group-lg.btn-group > .btn + .dropdown-toggle {
  padding-left: 12px;
  padding-right: 12px; }

.btn-group.open .dropdown-toggle {
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
  .btn-group.open .dropdown-toggle.btn-link {
    -webkit-box-shadow: none;
    box-shadow: none; }

.btn .caret {
  margin-left: 0; }

.btn-lg .caret, .btn-group-lg > .btn .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0; }

.dropup .btn-lg .caret, .dropup .btn-group-lg > .btn .caret {
  border-width: 0 5px 5px; }

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%; }

.btn-group-vertical > .btn-group:before,
.btn-group-vertical > .btn-group:after {
  content: " ";
  display: table; }

.btn-group-vertical > .btn-group:after {
  clear: both; }

.btn-group-vertical > .btn-group > .btn {
  float: none; }

.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0; }

.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
  border-radius: 0; }

.btn-group-vertical > .btn:first-child:not(:last-child) {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-bottom-left-radius: 4px;
  border-top-right-radius: 0;
  border-top-left-radius: 0; }

.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0; }

.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0; }

.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate; }
  .btn-group-justified > .btn,
  .btn-group-justified > .btn-group {
    float: none;
    display: table-cell;
    width: 1%; }
  .btn-group-justified > .btn-group .btn {
    width: 100%; }
  .btn-group-justified > .btn-group .dropdown-menu {
    left: auto; }

[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none; }

.input-group {
  position: relative;
  display: table;
  border-collapse: separate; }
  .input-group[class*="col-"] {
    float: none;
    padding-left: 0;
    padding-right: 0; }
  .input-group .form-control {
    position: relative;
    z-index: 2;
    float: left;
    width: 100%;
    margin-bottom: 0; }

.input-group-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 {
    padding: 5px 10px;
    font-size: 12px;
    border-radius: 3px; }
  .input-group-addon.input-lg, .input-group-lg > .input-group-addon,
  .input-group-lg > .input-group-btn > .input-group-addon.btn {
    padding: 10px 16px;
    font-size: 18px;
    border-radius: 6px; }
  .input-group-addon input[type="radio"],
  .input-group-addon input[type="checkbox"] {
    margin-top: 0; }

.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0; }

.input-group-addon:first-child {
  border-right: 0; }

.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0; }

.input-group-addon:last-child {
  border-left: 0; }

.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap; }
  .input-group-btn > .btn {
    position: relative; }
    .input-group-btn > .btn + .btn {
      margin-left: -1px; }
    .input-group-btn > .btn:hover,
    .input-group-btn > .btn:focus,
    .input-group-btn > .btn:active {
      z-index: 2; }
  .input-group-btn:first-child > .btn,
  .input-group-btn:first-child > .btn-group {
    margin-right: -1px; }
  .input-group-btn:last-child > .btn,
  .input-group-btn:last-child > .btn-group {
    z-index: 2;
    margin-left: -1px; }

.nav {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none; }
  .nav:before,
  .nav:after {
    content: " ";
    display: table; }
  .nav:after {
    clear: both; }
  .nav > li {
    position: relative;
    display: block; }
    .nav > li > a {
      position: relative;
      display: block;
      padding: 10px 15px; }
      .nav > li > a:hover,
      .nav > li > a:focus {
        text-decoration: none;
        background-color: #eeeeee; }
    .nav > li.disabled > a {
      color: #777777; }
      .nav > li.disabled > a:hover,
      .nav > li.disabled > a:focus {
        color: #777777;
        text-decoration: none;
        background-color: transparent;
        cursor: not-allowed; }
  .nav .open > a,
  .nav .open > a:hover,
  .nav .open > a:focus {
    background-color: #eeeeee;
    border-color: #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; }

.tab-content > .active {
  display: block; }

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-right-radius: 0;
  border-top-left-radius: 0; }

.navbar {
  position: relative;
  min-height: 50px;
  margin-bottom: 20px;
  border: 1px solid transparent; }
  .navbar:before,
  .navbar:after {
    content: " ";
    display: table; }
  .navbar:after {
    clear: both; }
  @media (min-width: 768px) {
    .navbar {
      border-radius: 4px; } }

.navbar-header:before,
.navbar-header:after {
  content: " ";
  display: table; }

.navbar-header:after {
  clear: both; }

@media (min-width: 768px) {
  .navbar-header {
    float: left; } }

.navbar-collapse {
  overflow-x: visible;
  padding-right: 15px;
  padding-left: 15px;
  border-top: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
  -webkit-overflow-scrolling: touch; }
  .navbar-collapse:before,
  .navbar-collapse:after {
    content: " ";
    display: table; }
  .navbar-collapse:after {
    clear: both; }
  .navbar-collapse.in {
    overflow-y: auto; }
  @media (min-width: 768px) {
    .navbar-collapse {
      width: auto;
      border-top: 0;
      box-shadow: none; }
      .navbar-collapse.collapse {
        display: block !important;
        height: auto !important;
        padding-bottom: 0;
        overflow: visible !important; }
      .navbar-collapse.in {
        overflow-y: visible; }
      .navbar-fixed-top .navbar-collapse,
      .navbar-static-top .navbar-collapse,
      .navbar-fixed-bottom .navbar-collapse {
        padding-left: 0;
        padding-right: 0; } }

.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
  max-height: 340px; }
  @media (max-device-width: 480px) and (orientation: landscape) {
    .navbar-fixed-top .navbar-collapse,
    .navbar-fixed-bottom .navbar-collapse {
      max-height: 200px; } }

.container > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-header,
.container-fluid > .navbar-collapse {
  margin-right: -15px;
  margin-left: -15px; }
  @media (min-width: 768px) {
    .container > .navbar-header,
    .container > .navbar-collapse,
    .container-fluid > .navbar-header,
    .container-fluid > .navbar-collapse {
      margin-right: 0;
      margin-left: 0; } }

.navbar-static-top {
  z-index: 1000;
  border-width: 0 0 1px; }
  @media (min-width: 768px) {
    .navbar-static-top {
      border-radius: 0; } }

.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030; }
  @media (min-width: 768px) {
    .navbar-fixed-top,
    .navbar-fixed-bottom {
      border-radius: 0; } }

.navbar-fixed-top {
  top: 0;
  border-width: 0 0 1px; }

.navbar-fixed-bottom {
  bottom: 0;
  margin-bottom: 0;
  border-width: 1px 0 0; }

.navbar-brand {
  float: left;
  padding: 15px 15px;
  font-size: 18px;
  line-height: 20px;
  height: 50px; }
  .navbar-brand:hover,
  .navbar-brand:focus {
    text-decoration: none; }
  .navbar-brand > img {
    display: block; }
  @media (min-width: 768px) {
    .navbar > .container .navbar-brand,
    .navbar > .container-fluid .navbar-brand {
      margin-left: -15px; } }

.navbar-toggle {
  position: relative;
  float: right;
  margin-right: 15px;
  padding: 9px 10px;
  margin-top: 8px;
  margin-bottom: 8px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px; }
  .navbar-toggle:focus {
    outline: 0; }
  .navbar-toggle .icon-bar {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 1px; }
  .navbar-toggle .icon-bar + .icon-bar {
    margin-top: 4px; }
  @media (min-width: 768px) {
    .navbar-toggle {
      display: none; } }

.navbar-nav {
  margin: 7.5px -15px; }
  .navbar-nav > li > a {
    padding-top: 10px;
    padding-bottom: 10px;
    line-height: 20px; }
  @media (max-width: 767px) {
    .navbar-nav .open .dropdown-menu {
      position: static;
      float: none;
      width: auto;
      margin-top: 0;
      background-color: transparent;
      border: 0;
      box-shadow: none; }
      .navbar-nav .open .dropdown-menu > li > a,
      .navbar-nav .open .dropdown-menu .dropdown-header {
        padding: 5px 15px 5px 25px; }
      .navbar-nav .open .dropdown-menu > li > a {
        line-height: 20px; }
        .navbar-nav .open .dropdown-menu > li > a:hover,
        .navbar-nav .open .dropdown-menu > li > a:focus {
          background-image: none; } }
  @media (min-width: 768px) {
    .navbar-nav {
      float: left;
      margin: 0; }
      .navbar-nav > li {
        float: left; }
        .navbar-nav > li > a {
          padding-top: 15px;
          padding-bottom: 15px; } }

.navbar-form {
  margin-left: -15px;
  margin-right: -15px;
  padding: 10px 15px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  margin-top: 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;
      -webkit-box-shadow: none;
      box-shadow: none; } }

.navbar-nav > li > .dropdown-menu {
  margin-top: 0;
  border-top-right-radius: 0;
  border-top-left-radius: 0; }

.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
  margin-bottom: 0;
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.navbar-btn {
  margin-top: 8px;
  margin-bottom: 8px; }
  .navbar-btn.btn-sm, .btn-group-sm > .navbar-btn.btn {
    margin-top: 10px;
    margin-bottom: 10px; }
  .navbar-btn.btn-xs, .btn-group-xs > .navbar-btn.btn {
    margin-top: 14px;
    margin-bottom: 14px; }

.navbar-text {
  margin-top: 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: "/\\00a0";
      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 {
    z-index: 3;
    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;
  line-height: 1.33333; }

.pagination-lg > li:first-child > a,
.pagination-lg > li:first-child > span {
  border-bottom-left-radius: 6px;
  border-top-left-radius: 6px; }

.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
  border-bottom-right-radius: 6px;
  border-top-right-radius: 6px; }

.pagination-sm > li > a,
.pagination-sm > li > span {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5; }

.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px; }

.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px; }

.pager {
  padding-left: 0;
  margin: 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: 0.2em 0.6em 0.3em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25em; }
  .label:empty {
    display: none; }
  .btn .label {
    position: relative;
    top: -1px; }

a.label:hover,
a.label:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer; }

.label-default {
  background-color: #777777; }
  .label-default[href]:hover,
  .label-default[href]:focus {
    background-color: #5e5e5e; }

.label-primary {
  background-color: #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: middle;
  white-space: nowrap;
  text-align: center;
  background-color: #777777;
  border-radius: 10px; }
  .badge:empty {
    display: none; }
  .btn .badge {
    position: relative;
    top: -1px; }
  .btn-xs .badge,
  .btn-group-xs > .btn .badge,
  .btn-group-xs > .btn .badge {
    top: 0;
    padding: 1px 5px; }
  .list-group-item.active > .badge,
  .nav-pills > .active > a > .badge {
    color: #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-top: 30px;
  padding-bottom: 30px;
  margin-bottom: 30px;
  color: inherit;
  background-color: #eeeeee; }
  .jumbotron h1,
  .jumbotron .h1 {
    color: inherit; }
  .jumbotron p {
    margin-bottom: 15px;
    font-size: 21px;
    font-weight: 200; }
  .jumbotron > hr {
    border-top-color: #d5d5d5; }
  .container .jumbotron,
  .container-fluid .jumbotron {
    border-radius: 6px; }
  .jumbotron .container {
    max-width: 100%; }
  @media screen and (min-width: 768px) {
    .jumbotron {
      padding-top: 48px;
      padding-bottom: 48px; }
      .container .jumbotron,
      .container-fluid .jumbotron {
        padding-left: 60px;
        padding-right: 60px; }
      .jumbotron h1,
      .jumbotron .h1 {
        font-size: 63px; } }

.thumbnail {
  display: block;
  padding: 4px;
  margin-bottom: 20px;
  line-height: 1.42857;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  -webkit-transition: border 0.2s ease-in-out;
  -o-transition: border 0.2s ease-in-out;
  transition: border 0.2s ease-in-out; }
  .thumbnail > img,
  .thumbnail a > img {
    display: block;
    max-width: 100%;
    height: auto;
    margin-left: auto;
    margin-right: auto; }
  .thumbnail .caption {
    padding: 9px;
    color: #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;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); }

.progress-bar {
  float: left;
  width: 0%;
  height: 100%;
  font-size: 12px;
  line-height: 20px;
  color: #fff;
  text-align: center;
  background-color: #337ab7;
  -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  -webkit-transition: width 0.6s ease;
  -o-transition: width 0.6s ease;
  transition: width 0.6s ease; }

.progress-striped .progress-bar,
.progress-bar-striped {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 40px 40px; }

.progress.active .progress-bar,
.progress-bar.active {
  -webkit-animation: progress-bar-stripes 2s linear infinite;
  -o-animation: progress-bar-stripes 2s linear infinite;
  animation: progress-bar-stripes 2s linear infinite; }

.progress-bar-success {
  background-color: #5cb85c; }
  .progress-striped .progress-bar-success {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-info {
  background-color: #5bc0de; }
  .progress-striped .progress-bar-info {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-warning {
  background-color: #f0ad4e; }
  .progress-striped .progress-bar-warning {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-danger {
  background-color: #d9534f; }
  .progress-striped .progress-bar-danger {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.media {
  margin-top: 15px; }
  .media:first-child {
    margin-top: 0; }

.media,
.media-body {
  zoom: 1;
  overflow: hidden; }

.media-body {
  width: 10000px; }

.media-object {
  display: block; }
  .media-object.img-thumbnail {
    max-width: none; }

.media-right,
.media > .pull-right {
  padding-left: 10px; }

.media-left,
.media > .pull-left {
  padding-right: 10px; }

.media-left,
.media-right,
.media-body {
  display: table-cell;
  vertical-align: top; }

.media-middle {
  vertical-align: middle; }

.media-bottom {
  vertical-align: bottom; }

.media-heading {
  margin-top: 0;
  margin-bottom: 5px; }

.media-list {
  padding-left: 0;
  list-style: none; }

.list-group {
  margin-bottom: 20px;
  padding-left: 0; }

.list-group-item {
  position: relative;
  display: block;
  padding: 10px 15px;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid #ddd; }
  .list-group-item:first-child {
    border-top-right-radius: 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,
button.list-group-item {
  color: #555; }
  a.list-group-item .list-group-item-heading,
  button.list-group-item .list-group-item-heading {
    color: #333; }
  a.list-group-item:hover,
  a.list-group-item:focus,
  button.list-group-item:hover,
  button.list-group-item:focus {
    text-decoration: none;
    color: #555;
    background-color: #f5f5f5; }

button.list-group-item {
  width: 100%;
  text-align: left; }

.list-group-item.disabled,
.list-group-item.disabled:hover,
.list-group-item.disabled:focus {
  background-color: #eeeeee;
  color: #777777;
  cursor: not-allowed; }
  .list-group-item.disabled .list-group-item-heading,
  .list-group-item.disabled:hover .list-group-item-heading,
  .list-group-item.disabled:focus .list-group-item-heading {
    color: inherit; }
  .list-group-item.disabled .list-group-item-text,
  .list-group-item.disabled:hover .list-group-item-text,
  .list-group-item.disabled:focus .list-group-item-text {
    color: #777777; }

.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
  z-index: 2;
  color: #fff;
  background-color: #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,
button.list-group-item-success {
  color: #3c763d; }
  a.list-group-item-success .list-group-item-heading,
  button.list-group-item-success .list-group-item-heading {
    color: inherit; }
  a.list-group-item-success:hover,
  a.list-group-item-success:focus,
  button.list-group-item-success:hover,
  button.list-group-item-success:focus {
    color: #3c763d;
    background-color: #d0e9c6; }
  a.list-group-item-success.active,
  a.list-group-item-success.active:hover,
  a.list-group-item-success.active:focus,
  button.list-group-item-success.active,
  button.list-group-item-success.active:hover,
  button.list-group-item-success.active:focus {
    color: #fff;
    background-color: #3c763d;
    border-color: #3c763d; }

.list-group-item-info {
  color: #31708f;
  background-color: #d9edf7; }

a.list-group-item-info,
button.list-group-item-info {
  color: #31708f; }
  a.list-group-item-info .list-group-item-heading,
  button.list-group-item-info .list-group-item-heading {
    color: inherit; }
  a.list-group-item-info:hover,
  a.list-group-item-info:focus,
  button.list-group-item-info:hover,
  button.list-group-item-info:focus {
    color: #31708f;
    background-color: #c4e3f3; }
  a.list-group-item-info.active,
  a.list-group-item-info.active:hover,
  a.list-group-item-info.active:focus,
  button.list-group-item-info.active,
  button.list-group-item-info.active:hover,
  button.list-group-item-info.active:focus {
    color: #fff;
    background-color: #31708f;
    border-color: #31708f; }

.list-group-item-warning {
  color: #8a6d3b;
  background-color: #fcf8e3; }

a.list-group-item-warning,
button.list-group-item-warning {
  color: #8a6d3b; }
  a.list-group-item-warning .list-group-item-heading,
  button.list-group-item-warning .list-group-item-heading {
    color: inherit; }
  a.list-group-item-warning:hover,
  a.list-group-item-warning:focus,
  button.list-group-item-warning:hover,
  button.list-group-item-warning:focus {
    color: #8a6d3b;
    background-color: #faf2cc; }
  a.list-group-item-warning.active,
  a.list-group-item-warning.active:hover,
  a.list-group-item-warning.active:focus,
  button.list-group-item-warning.active,
  button.list-group-item-warning.active:hover,
  button.list-group-item-warning.active:focus {
    color: #fff;
    background-color: #8a6d3b;
    border-color: #8a6d3b; }

.list-group-item-danger {
  color: #a94442;
  background-color: #f2dede; }

a.list-group-item-danger,
button.list-group-item-danger {
  color: #a94442; }
  a.list-group-item-danger .list-group-item-heading,
  button.list-group-item-danger .list-group-item-heading {
    color: inherit; }
  a.list-group-item-danger:hover,
  a.list-group-item-danger:focus,
  button.list-group-item-danger:hover,
  button.list-group-item-danger:focus {
    color: #a94442;
    background-color: #ebcccc; }
  a.list-group-item-danger.active,
  a.list-group-item-danger.active:hover,
  a.list-group-item-danger.active:focus,
  button.list-group-item-danger.active,
  button.list-group-item-danger.active:hover,
  button.list-group-item-danger.active:focus {
    color: #fff;
    background-color: #a94442;
    border-color: #a94442; }

.list-group-item-heading {
  margin-top: 0;
  margin-bottom: 5px; }

.list-group-item-text {
  margin-bottom: 0;
  line-height: 1.3; }

.panel {
  margin-bottom: 20px;
  background-color: #fff;
  border: 1px solid transparent;
  border-radius: 4px;
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); }

.panel-body {
  padding: 15px; }
  .panel-body:before,
  .panel-body:after {
    content: " ";
    display: table; }
  .panel-body:after {
    clear: both; }

.panel-heading {
  padding: 10px 15px;
  border-bottom: 1px solid transparent;
  border-top-right-radius: 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 > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0; }

.panel-heading + .list-group .list-group-item:first-child {
  border-top-width: 0; }

.list-group + .panel-footer {
  border-top-width: 0; }

.panel > .table,
.panel > .table-responsive > .table,
.panel > .panel-collapse > .table {
  margin-bottom: 0; }
  .panel > .table caption,
  .panel > .table-responsive > .table caption,
  .panel > .panel-collapse > .table caption {
    padding-left: 15px;
    padding-right: 15px; }

.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
  border-top-right-radius: 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-16by9 {
  padding-bottom: 56.25%; }

.embed-responsive-4by3 {
  padding-bottom: 75%; }

.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); }
  .well blockquote {
    border-color: #ddd;
    border-color: rgba(0, 0, 0, 0.15); }

.well-lg {
  padding: 24px;
  border-radius: 6px; }

.well-sm {
  padding: 9px;
  border-radius: 3px; }

.close {
  float: right;
  font-size: 21px;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.2;
  filter: alpha(opacity=20); }
  .close:hover,
  .close:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
    opacity: 0.5;
    filter: alpha(opacity=50); }

button.close {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none; }

.modal-open {
  overflow: hidden; }

.modal {
  display: none;
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  -webkit-overflow-scrolling: touch;
  outline: 0; }
  .modal.fade .modal-dialog {
    -webkit-transform: translate(0, -25%);
    -ms-transform: translate(0, -25%);
    -o-transform: translate(0, -25%);
    transform: translate(0, -25%);
    -webkit-transition: -webkit-transform 0.3s ease-out;
    -moz-transition: -moz-transform 0.3s ease-out;
    -o-transition: -o-transform 0.3s ease-out;
    transition: transform 0.3s ease-out; }
  .modal.in .modal-dialog {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto; }

.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px; }

.modal-content {
  position: relative;
  background-color: #fff;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  background-clip: padding-box;
  outline: 0; }

.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000; }
  .modal-backdrop.fade {
    opacity: 0;
    filter: alpha(opacity=0); }
  .modal-backdrop.in {
    opacity: 0.5;
    filter: alpha(opacity=50); }

.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5;
  min-height: 16.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 {
    margin-left: 5px;
    margin-bottom: 0; }
  .modal-footer .btn-group .btn + .btn {
    margin-left: -1px; }
  .modal-footer .btn-block + .btn-block {
    margin-left: 0; }

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll; }

@media (min-width: 768px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto; }
  .modal-content {
    -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); }
  .modal-sm {
    width: 300px; } }

@media (min-width: 992px) {
  .modal-lg {
    width: 900px; } }

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: "Margarine", cursive;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.42857;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  font-size: 12px;
  opacity: 0;
  filter: alpha(opacity=0); }
  .tooltip.in {
    opacity: 0.9;
    filter: alpha(opacity=90); }
  .tooltip.top {
    margin-top: -3px;
    padding: 5px 0; }
  .tooltip.right {
    margin-left: 3px;
    padding: 0 5px; }
  .tooltip.bottom {
    margin-top: 3px;
    padding: 5px 0; }
  .tooltip.left {
    margin-left: -3px;
    padding: 0 5px; }

.tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 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: "Margarine", cursive;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.42857;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  font-size: 14px;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); }
  .popover.top {
    margin-top: -10px; }
  .popover.right {
    margin-left: 10px; }
  .popover.bottom {
    margin-top: 10px; }
  .popover.left {
    margin-left: -10px; }

.popover-title {
  margin: 0;
  padding: 8px 14px;
  font-size: 14px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: 5px 5px 0 0; }

.popover-content {
  padding: 9px 14px; }

.popover > .arrow,
.popover > .arrow:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid; }

.popover > .arrow {
  border-width: 11px; }

.popover > .arrow:after {
  border-width: 10px;
  content: ""; }

.popover.top > .arrow {
  left: 50%;
  margin-left: -11px;
  border-bottom-width: 0;
  border-top-color: #999999;
  border-top-color: rgba(0, 0, 0, 0.25);
  bottom: -11px; }
  .popover.top > .arrow:after {
    content: " ";
    bottom: 1px;
    margin-left: -10px;
    border-bottom-width: 0;
    border-top-color: #fff; }

.popover.right > .arrow {
  top: 50%;
  left: -11px;
  margin-top: -11px;
  border-left-width: 0;
  border-right-color: #999999;
  border-right-color: rgba(0, 0, 0, 0.25); }
  .popover.right > .arrow:after {
    content: " ";
    left: 1px;
    bottom: -10px;
    border-left-width: 0;
    border-right-color: #fff; }

.popover.bottom > .arrow {
  left: 50%;
  margin-left: -11px;
  border-top-width: 0;
  border-bottom-color: #999999;
  border-bottom-color: rgba(0, 0, 0, 0.25);
  top: -11px; }
  .popover.bottom > .arrow:after {
    content: " ";
    top: 1px;
    margin-left: -10px;
    border-top-width: 0;
    border-bottom-color: #fff; }

.popover.left > .arrow {
  top: 50%;
  right: -11px;
  margin-top: -11px;
  border-right-width: 0;
  border-left-color: #999999;
  border-left-color: rgba(0, 0, 0, 0.25); }
  .popover.left > .arrow:after {
    content: " ";
    right: 1px;
    border-right-width: 0;
    border-left-color: #fff;
    bottom: -10px; }

.carousel {
  position: relative; }

.carousel-inner {
  position: relative;
  overflow: hidden;
  width: 100%; }
  .carousel-inner > .item {
    display: none;
    position: relative;
    -webkit-transition: 0.6s ease-in-out left;
    -o-transition: 0.6s ease-in-out left;
    transition: 0.6s ease-in-out left; }
    .carousel-inner > .item > img,
    .carousel-inner > .item > a > img {
      display: block;
      max-width: 100%;
      height: auto;
      line-height: 1; }
    @media all and (transform-3d), (-webkit-transform-3d) {
      .carousel-inner > .item {
        -webkit-transition: -webkit-transform 0.6s ease-in-out;
        -moz-transition: -moz-transform 0.6s ease-in-out;
        -o-transition: -o-transform 0.6s ease-in-out;
        transition: transform 0.6s ease-in-out;
        -webkit-backface-visibility: hidden;
        -moz-backface-visibility: hidden;
        backface-visibility: hidden;
        -webkit-perspective: 1000px;
        -moz-perspective: 1000px;
        perspective: 1000px; }
        .carousel-inner > .item.next,
        .carousel-inner > .item.active.right {
          -webkit-transform: translate3d(100%, 0, 0);
          transform: translate3d(100%, 0, 0);
          left: 0; }
        .carousel-inner > .item.prev,
        .carousel-inner > .item.active.left {
          -webkit-transform: translate3d(-100%, 0, 0);
          transform: translate3d(-100%, 0, 0);
          left: 0; }
        .carousel-inner > .item.next.left,
        .carousel-inner > .item.prev.right,
        .carousel-inner > .item.active {
          -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
          left: 0; } }
  .carousel-inner > .active,
  .carousel-inner > .next,
  .carousel-inner > .prev {
    display: block; }
  .carousel-inner > .active {
    left: 0; }
  .carousel-inner > .next,
  .carousel-inner > .prev {
    position: absolute;
    top: 0;
    width: 100%; }
  .carousel-inner > .next {
    left: 100%; }
  .carousel-inner > .prev {
    left: -100%; }
  .carousel-inner > .next.left,
  .carousel-inner > .prev.right {
    left: 0; }
  .carousel-inner > .active.left {
    left: -100%; }
  .carousel-inner > .active.right {
    left: 100%; }

.carousel-control {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 15%;
  opacity: 0.5;
  filter: alpha(opacity=50);
  font-size: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); }
  .carousel-control.left {
    background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
    background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); }
  .carousel-control.right {
    left: auto;
    right: 0;
    background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
    background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); }
  .carousel-control:hover,
  .carousel-control:focus {
    outline: 0;
    color: #fff;
    text-decoration: none;
    opacity: 0.9;
    filter: alpha(opacity=90); }
  .carousel-control .icon-prev,
  .carousel-control .icon-next,
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right {
    position: absolute;
    top: 50%;
    margin-top: -10px;
    z-index: 5;
    display: inline-block; }
  .carousel-control .icon-prev,
  .carousel-control .glyphicon-chevron-left {
    left: 50%;
    margin-left: -10px; }
  .carousel-control .icon-next,
  .carousel-control .glyphicon-chevron-right {
    right: 50%;
    margin-right: -10px; }
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 20px;
    height: 20px;
    line-height: 1;
    font-family: serif; }
  .carousel-control .icon-prev:before {
    content: '\2039'; }
  .carousel-control .icon-next:before {
    content: '\203a'; }

.carousel-indicators {
  position: absolute;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  margin-left: -30%;
  padding-left: 0;
  list-style: none;
  text-align: center; }
  .carousel-indicators li {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 1px;
    text-indent: -999px;
    border: 1px solid #fff;
    border-radius: 10px;
    cursor: pointer;
    background-color: #000 \9;
    background-color: transparent; }
  .carousel-indicators .active {
    margin: 0;
    width: 12px;
    height: 12px;
    background-color: #fff; }

.carousel-caption {
  position: absolute;
  left: 15%;
  right: 15%;
  bottom: 20px;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); }
  .carousel-caption .btn {
    text-shadow: none; }

@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -15px;
    font-size: 30px; }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -15px; }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -15px; }
  .carousel-caption {
    left: 20%;
    right: 20%;
    padding-bottom: 30px; }
  .carousel-indicators {
    bottom: 20px; } }

.clearfix:before,
.clearfix:after {
  content: " ";
  display: table; }

.clearfix:after {
  clear: both; }

.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto; }

.pull-right {
  float: right !important; }

.pull-left {
  float: left !important; }

.hide {
  display: none !important; }

.show {
  display: block !important; }

.invisible {
  visibility: hidden; }

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0; }

.hidden {
  display: none !important; }

.affix {
  position: fixed; }

@-ms-viewport {
  width: device-width; }

.visible-xs {
  display: none !important; }

.visible-sm {
  display: none !important; }

.visible-md {
  display: none !important; }

.visible-lg {
  display: none !important; }

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important; }

@media (max-width: 767px) {
  .visible-xs {
    display: block !important; }
  table.visible-xs {
    display: table !important; }
  tr.visible-xs {
    display: table-row !important; }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important; } }

@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important; } }

@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important; } }

@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important; }
  table.visible-sm {
    display: table !important; }
  tr.visible-sm {
    display: table-row !important; }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important; }
  table.visible-md {
    display: table !important; }
  tr.visible-md {
    display: table-row !important; }
  th.visible-md,
  td.visible-md {
    display: table-cell !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important; } }

@media (min-width: 1200px) {
  .visible-lg {
    display: block !important; }
  table.visible-lg {
    display: table !important; }
  tr.visible-lg {
    display: table-row !important; }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important; } }

@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important; } }

@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important; } }

@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important; } }

@media (max-width: 767px) {
  .hidden-xs {
    display: none !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important; } }

@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important; } }

.visible-print {
  display: none !important; }

@media print {
  .visible-print {
    display: block !important; }
  table.visible-print {
    display: table !important; }
  tr.visible-print {
    display: table-row !important; }
  th.visible-print,
  td.visible-print {
    display: table-cell !important; } }

.visible-print-block {
  display: none !important; }
  @media print {
    .visible-print-block {
      display: block !important; } }

.visible-print-inline {
  display: none !important; }
  @media print {
    .visible-print-inline {
      display: inline !important; } }

.visible-print-inline-block {
  display: none !important; }
  @media print {
    .visible-print-inline-block {
      display: inline-block !important; } }

@media print {
  .hidden-print {
    display: none !important; } }

/* Bootstrap dolgok felülírása, ami változóval nem megoldható */
/* Változókkal nem felülírható Bootstrap dolgok felülírása */
/* Egyéb import */
/* Változók */
body {
  position: relative;
  overflow-x: hidden; }

.offcanvas .ribbon {
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 98;
  width: 45px; }

.offcanvas .sidebar {
  position: fixed;
  left: 0px;
  top: 0px;
  bottom: 0px;
  overflow-x: hidden;
  overflow-y: auto;
  z-index: 97;
  width: 160px;
  -webkit-transition: all 500ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 500ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 500ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transform: translate(0px, 0px);
  -ms-transform: translate(0px, 0px);
  -o-transform: translate(0px, 0px);
  transform: translate(0px, 0px); }
  .offcanvas .pulled.sidebar {
    -webkit-transform: translate(-160px, 0px);
    -ms-transform: translate(-160px, 0px);
    -o-transform: translate(-160px, 0px);
    transform: translate(-160px, 0px); }

.offcanvas .wrapper {
  -webkit-transition: all 500ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 500ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 500ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transform: translate(160px, 0px);
  -ms-transform: translate(160px, 0px);
  -o-transform: translate(160px, 0px);
  transform: translate(160px, 0px);
  margin-right: 160px; }
  .offcanvas .pulled.wrapper {
    -webkit-transform: translate(0px, 0px);
    -ms-transform: translate(0px, 0px);
    -o-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
    margin-right: 0px; }

.offcanvas .no-transition.ribbon, .offcanvas .no-transition.sidebar, .offcanvas .no-transition.wrapper {
  -webkit-transition: none;
  -o-transition: none;
  transition: none; }

/* Desktop */
@media screen and (min-width: 981px) {
  .offcanvas .ribbon {
    display: none; }
  .offcanvas .sidebar {
    display: none; }
  .offcanvas .wrapper, .offcanvas .pulled.wrapper {
    -webkit-transform: translate(0px, 0px);
    -ms-transform: translate(0px, 0px);
    -o-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
    margin-right: 0px; } }

/* Tablet és mobil nézet -- kitoljuk */
@media screen and (max-width: 980px) {
  .offcanvas .wrapper {
    margin-right: 0px; } }

/* Nagyon kicsi kijelző esetén */
@media screen and (max-width: 480px) {
  .offcanvas .pulled.ribbon {
    bottom: auto; }
  .offcanvas .pulled.sidebar {
    -webkit-transform: translate(-160px, 0px); }
  .offcanvas .wrapper {
    margin-right: 0px !important; }
    .offcanvas .pulled.wrapper {
      -webkit-transform: translate(0px, 0px);
      -ms-transform: translate(0px, 0px);
      -o-transform: translate(0px, 0px);
      transform: translate(0px, 0px); } }

.offcanvas .ribbon {
  background: #fff; }
  .offcanvas .ribbon .burger {
    display: block;
    padding: 12px; }
    .offcanvas .ribbon .burger span {
      display: block;
      height: 2px;
      background: #000; }
      .offcanvas .ribbon .burger span + span {
        margin-top: 4px; }

.offcanvas .sidebar {
  overflow-x: visible;
  overflow-y: visible;
  background: #fff;
  padding-top: 50px; }
  .offcanvas .sidebar > div {
    width: 190px;
    height: 100%;
    overflow-y: auto; }
  .offcanvas .sidebar.pulled > div {
    width: 160px; }
  .offcanvas .sidebar > div > a {
    position: relative;
    left: 0px;
    width: 180px; }
  .offcanvas .sidebar.pulled > div > a {
    left: -20px; }

.btn-menu-left-1, .btn-menu-left-2, .btn-menu-left-3, .btn-menu-left-4, .btn-menu-left-5, .btn-menu-left-6, .btn-menu-right-1, .btn-menu-right-2, .btn-menu-right-3, .btn-menu-right-4, .btn-menu-right-5, .btn-menu-right-6, .btn-menu-right-7 {
  display: table;
  table-layout: fixed;
  width: 100%;
  height: 40px;
  margin-top: 10px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  font-size: 0.85em;
  -webkit-transform: translate(0px, 0px);
  -ms-transform: translate(0px, 0px);
  -o-transform: translate(0px, 0px);
  transform: translate(0px, 0px);
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease; }
  .btn-menu-left-1, .btn-menu-left-2, .btn-menu-left-3, .btn-menu-left-4, .btn-menu-left-5, .btn-menu-left-6, .btn-menu-right-1, .btn-menu-right-2, .btn-menu-right-3, .btn-menu-right-4, .btn-menu-right-5, .btn-menu-right-6, .btn-menu-right-7, .btn-menu-left-1:hover, .btn-menu-left-2:hover, .btn-menu-left-3:hover, .btn-menu-left-4:hover, .btn-menu-left-5:hover, .btn-menu-left-6:hover, .btn-menu-right-1:hover, .btn-menu-right-2:hover, .btn-menu-right-3:hover, .btn-menu-right-4:hover, .btn-menu-right-5:hover, .btn-menu-right-6:hover, .btn-menu-right-7:hover, .btn-menu-left-1:visited, .btn-menu-left-2:visited, .btn-menu-left-3:visited, .btn-menu-left-4:visited, .btn-menu-left-5:visited, .btn-menu-left-6:visited, .btn-menu-right-1:visited, .btn-menu-right-2:visited, .btn-menu-right-3:visited, .btn-menu-right-4:visited, .btn-menu-right-5:visited, .btn-menu-right-6:visited, .btn-menu-right-7:visited, .btn-menu-left-1:active, .btn-menu-left-2:active, .btn-menu-left-3:active, .btn-menu-left-4:active, .btn-menu-left-5:active, .btn-menu-left-6:active, .btn-menu-right-1:active, .btn-menu-right-2:active, .btn-menu-right-3:active, .btn-menu-right-4:active, .btn-menu-right-5:active, .btn-menu-right-6:active, .btn-menu-right-7:active, .btn-menu-left-1:focus, .btn-menu-left-2:focus, .btn-menu-left-3:focus, .btn-menu-left-4:focus, .btn-menu-left-5:focus, .btn-menu-left-6:focus, .btn-menu-right-1:focus, .btn-menu-right-2:focus, .btn-menu-right-3:focus, .btn-menu-right-4:focus, .btn-menu-right-5:focus, .btn-menu-right-6:focus, .btn-menu-right-7:focus {
    color: #fff;
    text-decoration: none; }
  .btn-menu-left-1 > span, .btn-menu-left-2 > span, .btn-menu-left-3 > span, .btn-menu-left-4 > span, .btn-menu-left-5 > span, .btn-menu-left-6 > span, .btn-menu-right-1 > span, .btn-menu-right-2 > span, .btn-menu-right-3 > span, .btn-menu-right-4 > span, .btn-menu-right-5 > span, .btn-menu-right-6 > span, .btn-menu-right-7 > span {
    display: table-cell;
    width: 100%;
    height: 100%;
    text-align: center;
    vertical-align: middle; }

.btn-menu-left-1, .btn-menu-left-2, .btn-menu-left-3, .btn-menu-left-4, .btn-menu-left-5, .btn-menu-left-6 {
  background-position: left 50%; }
  .btn-menu-left-1 > span, .btn-menu-left-2 > span, .btn-menu-left-3 > span, .btn-menu-left-4 > span, .btn-menu-left-5 > span, .btn-menu-left-6 > span {
    padding-left: 17px;
    padding-right: 5px; }
  .btn-menu-left-1:hover, .btn-menu-left-2:hover, .btn-menu-left-3:hover, .btn-menu-left-4:hover, .btn-menu-left-5:hover, .btn-menu-left-6:hover {
    -webkit-transform: translate(-5px, 0px);
    -ms-transform: translate(-5px, 0px);
    -o-transform: translate(-5px, 0px);
    transform: translate(-5px, 0px);
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease; }

.btn-menu-right-1, .btn-menu-right-2, .btn-menu-right-3, .btn-menu-right-4, .btn-menu-right-5, .btn-menu-right-6, .btn-menu-right-7 {
  background-position: right 50%; }
  .btn-menu-right-1 > span, .btn-menu-right-2 > span, .btn-menu-right-3 > span, .btn-menu-right-4 > span, .btn-menu-right-5 > span, .btn-menu-right-6 > span, .btn-menu-right-7 > span {
    padding-right: 17px;
    padding-left: 5px; }
  .btn-menu-right-1:hover, .btn-menu-right-2:hover, .btn-menu-right-3:hover, .btn-menu-right-4:hover, .btn-menu-right-5:hover, .btn-menu-right-6:hover, .btn-menu-right-7:hover {
    -webkit-transform: translate(5px, 0px);
    -ms-transform: translate(5px, 0px);
    -o-transform: translate(5px, 0px);
    transform: translate(5px, 0px);
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease; }

.btn-menu-left-1 {
  background-image: url("img/buttons/bg-btn-left-1.svg"); }

.btn-menu-left-2 {
  background-image: url("img/buttons/bg-btn-left-2.svg"); }

.btn-menu-left-3 {
  background-image: url("img/buttons/bg-btn-left-3.svg"); }

.btn-menu-left-4 {
  background-image: url("img/buttons/bg-btn-left-4.svg"); }

.btn-menu-left-5 {
  background-image: url("img/buttons/bg-btn-left-5.svg"); }

.btn-menu-left-6 {
  background-image: url("img/buttons/bg-btn-left-6.svg"); }

.btn-menu-right-1 {
  background-image: url("img/buttons/bg-btn-right-1.svg"); }

.btn-menu-right-2 {
  background-image: url("img/buttons/bg-btn-right-2.svg"); }

.btn-menu-right-3 {
  background-image: url("img/buttons/bg-btn-right-3.svg"); }

.btn-menu-right-4 {
  background-image: url("img/buttons/bg-btn-right-4.svg"); }

.btn-menu-right-5 {
  background-image: url("img/buttons/bg-btn-right-5.svg"); }

.btn-menu-right-6 {
  background-image: url("img/buttons/bg-btn-right-6.svg"); }

.btn-menu-right-7 {
  background-image: url("img/buttons/bg-btn-right-7.svg"); }

.box-container .box-row {
  margin-left: -15px;
  margin-right: -15px; }
  .box-container .box-row:before,
  .box-container .box-row:after {
    content: " ";
    display: table; }
  .box-container .box-row:after {
    clear: both; }
  .box-container .box-row .box-yellow, .box-container .box-row .box-blue {
    position: relative;
    float: left;
    width: 100%;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    -webkit-transform: translate(0px, 0px);
    -ms-transform: translate(0px, 0px);
    -o-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    margin-top: 30px; }
    @media (min-width: 768px) {
      .box-container .box-row .box-yellow, .box-container .box-row .box-blue {
        float: left;
        width: 25%; } }
    .box-container .box-row .box-yellow:before, .box-container .box-row .box-blue:before {
      position: absolute;
      top: 0px;
      right: 0px;
      bottom: 0px;
      left: 0px;
      content: '';
      left: 15px;
      right: 15px;
      -webkit-box-shadow: 1px 1px 2px 1px #d6e8f0;
      box-shadow: 1px 1px 2px 1px #d6e8f0;
      -webkit-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all 0.3s ease; }
    .box-container .box-row .box-yellow:hover, .box-container .box-row .box-blue:hover {
      -webkit-transform: translate(0px, -5px);
      -ms-transform: translate(0px, -5px);
      -o-transform: translate(0px, -5px);
      transform: translate(0px, -5px);
      -webkit-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      .box-container .box-row .box-yellow:hover:before, .box-container .box-row .box-blue:hover:before {
        -webkit-box-shadow: 1px 4px 5px 1px #d6e8f0;
        box-shadow: 1px 4px 5px 1px #d6e8f0;
        -webkit-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease; }
    .box-container .box-row .box-yellow, .box-container .box-row .box-blue, .box-container .box-row .box-yellow:hover, .box-container .box-row .box-blue:hover, .box-container .box-row .box-yellow:visited .box-container .box-row .box-yellow:focus, .box-container .box-row .box-blue:visited .box-container .box-row .box-yellow:focus, .box-container .box-row .box-yellow:visited .box-container .box-row .box-blue:focus, .box-container .box-row .box-blue:visited .box-container .box-row .box-blue:focus {
      text-decoration: none; }
    .box-container .box-row .box-yellow .head, .box-container .box-row .box-blue .head {
      position: relative;
      padding: 5px 8px;
      font-size: 0.8em; }
      .box-container .box-row .box-yellow .head.star:after, .box-container .box-row .box-blue .head.star:after {
        display: block;
        width: 16px;
        height: 16px;
        content: '';
        position: absolute;
        right: 5px;
        top: 50%;
        margin-top: -8px;
        background: transparent url("img/icon-star-white.svg") no-repeat 50% 50%;
        background-size: contain; }
    .box-container .box-row .box-yellow .name, .box-container .box-row .box-blue .name {
      font-size: 1em; }
    .box-container .box-row .box-yellow .preview, .box-container .box-row .box-blue .preview {
      position: relative;
      height: 100px;
      background-repeat: no-repeat;
      background-position: 50% 50%;
      background-image: url("img/bg-list.png");
      background-size: cover; }
      .box-container .box-row .box-yellow .preview i, .box-container .box-row .box-blue .preview i {
        position: absolute;
        top: 0px;
        right: 0px;
        bottom: 0px;
        left: 0px;
        display: block;
        background-repeat: no-repeat;
        background-position: 50% 50%; }
  .box-container .box-row .box-yellow .head {
    background: #f1d215;
    color: #fff; }
  .box-container .box-row .box-yellow .name {
    background: #f1d215;
    color: #fff;
    padding: 13px;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; }
  .box-container .box-row .box-blue .head {
    background: #37caec;
    color: #fff; }
  .box-container .box-row .box-blue .name {
    background: #37caec;
    color: #fff;
    padding: 13px;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; }

body {
  background: #eef9fc;
  font-size: 16px;
  color: #1b414f; }

a {
  color: #1b414f; }

header {
  position: relative;
  height: 600px;
  background-image: url("img/bg-header.svg");
  background-repeat: no-repeat;
  background-position: 50% top;
  background-size: 1920px auto; }
  @media only screen and (max-width: 767px) {
    header {
      height: 400px;
      background-size: 1000px auto; } }
  header:before {
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    background-image: -webkit-linear-gradient(top, #fff 80%, #eef9fc 100%);
    background-image: -o-linear-gradient(top, #fff 80%, #eef9fc 100%);
    background-image: linear-gradient(to bottom, #fff 80%, #eef9fc 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEF9FC', GradientType=0);
    content: '';
    z-index: -1; }
  header .nfh-logo {
    position: absolute;
    top: 30px;
    left: 100px; }
    @media only screen and (max-width: 767px) {
      header .nfh-logo {
        display: block;
        position: static;
        text-align: center;
        margin: 30px 0px; } }
  header .okoskosar-logo {
    position: absolute;
    top: 30px;
    right: 100px; }
    @media only screen and (max-width: 767px) {
      header .okoskosar-logo {
        display: block;
        position: static;
        text-align: center; } }

#main {
  position: relative;
  margin-top: -400px; }
  @media only screen and (min-width: 1200px) {
    #main {
      width: 1220px; } }
  #main .left-menu {
    padding-top: 220px; }
    @media only screen and (min-width: 1200px) {
      #main .left-menu {
        width: 195px; } }
    #main .left-menu:before {
      position: absolute;
      top: 0px;
      left: 0px;
      content: '';
      display: block;
      width: 100%;
      height: 220px;
      background: transparent url("img/img-kicsiknek.png") no-repeat 50% top;
      background-size: contain; }
  #main .right-menu {
    padding-top: 220px; }
    @media only screen and (min-width: 1200px) {
      #main .right-menu {
        width: 195px; } }
    #main .right-menu:before {
      position: absolute;
      top: 0px;
      left: 0px;
      content: '';
      display: block;
      width: 100%;
      height: 220px;
      background: transparent url("img/img-nagyoknak.png") no-repeat 50% top;
      background-size: contain; }
  @media only screen and (max-width: 1199px) {
    #main .left-menu a, #main .right-menu a {
      font-size: 0.7em; } }
  @media only screen and (max-width: 991px) {
    #main .left-menu, #main .right-menu {
      display: none; }
    #main .main-content {
      width: 100%; } }
  #main .main-content {
    padding-top: 220px; }
    @media only screen and (min-width: 1200px) {
      #main .main-content {
        min-width: 830px; } }
    #main .main-content h1 {
      text-align: center;
      font-size: 2em;
      margin: 0px 0px 0.1em 0px; }
    #main .main-content h2 {
      text-align: center;
      font-size: 1.25em;
      margin: 0px 0px 0.5em 0px; }
    #main .main-content img {
      max-width: 100%; }

footer {
  background: #dcedf1 url("img/bg-footer.png") repeat-x 50% 50%;
  background-size: auto 100%;
  border-top: 1px solid #b8cad1;
  border-bottom: 1px solid #b8cad1;
  margin-top: 50px;
  margin-bottom: 50px;
  padding: 50px 0px; }
  footer .logo {
    text-align: right; }
    footer .logo a {
      padding: 15px; }
    @media only screen and (max-width: 767px) {
      footer .logo {
        text-align: center;
        margin-bottom: 25px; } }
  footer .info {
    text-align: left; }
    footer .info .title {
      font-size: 1.1em;
      margin: 0px; }
    footer .info .links {
      font-size: 0.9em;
      margin: 0px; }
    @media only screen and (max-width: 767px) {
      footer .info {
        text-align: center; } }
  footer hr {
    border-top: 1px solid #c7dadf;
    max-width: 800px;
    margin: 0 auto;
    margin-top: 22px;
    margin-bottom: 13px; }
  footer ul.menu {
    list-style: none;
    margin: 0px;
    padding: 0px;
    text-align: center; }
    footer ul.menu li {
      display: inline-block;
      margin: 0px 15px; }

.painter-game {
  position: relative;
  max-width: 970px;
  margin: 0 auto;
  text-align: center; }
  .painter-game .palette {
    position: absolute;
    width: 100%;
    left: 0px;
    top: -70px; }
  .painter-game .canvas {
    position: relative;
    margin-top: 160px; }
  .painter-game .brush {
    position: absolute;
    z-index: 99; }

/* =============================================================================
  LAYOUT
============================================================================= */
.memory-game {
  /* wrapper */
  /* container */
  /* header */
  /* content */
  /* footer */ }
  .memory-game .wrapper {
    margin: 0 auto;
    width: 100%;
    min-width: 480px; }
  .memory-game .container {
    margin: 0 auto;
    width: 100%;
    max-width: 1024px; }
  .memory-game .header {
    padding: 10px 10px 10px 40px; }
  .memory-game .header__logo {
    float: left;
    margin-left: -30px;
    width: 30px;
    height: 30px; }
  .memory-game .header__title {
    float: right;
    color: #fff;
    font-size: 18px;
    line-height: 30px; }
  .memory-game .content {
    padding: 20px;
    background-color: #fff; }
  .memory-game .footer {
    padding: 20px;
    font-size: 14px; }
  .memory-game .footer__left,
  .memory-game .footer__right {
    width: 50%; }
  .memory-game .footer__left {
    float: left; }
  .memory-game .footer__right {
    float: right;
    text-align: right; }
  .memory-game .footer__title {
    margin-bottom: 10px;
    color: #166888; }
  .memory-game .footer__social {
    margin-bottom: 10px;
    color: #fff; }
  .memory-game .footer__social--heading {
    margin-bottom: 5px; }
  .memory-game .footer__copyright {
    color: #fff; }
    .memory-game .footer__copyright a {
      color: #166888; }

/* =============================================================================
  MEMORY GAME (mg)
============================================================================= */
.memory-game {
  /**
   * Game container
   *
   * This is the overall container for the game. Different things get addead and
   * removed from this container depending on the game state.
   */
  /**
   * Game meta
   *
   * The game meta is the section that displays the level and moves. It's appended
   * to the game container at the start, and shows the level the user selected
   * and the number of moves the user has played.
   */
  /**
   * Game start screen
   *
   * The game start screen shows the "welcome" message and also a list for the
   * user to choose a level. It's appended to the game container at the start,
   * and once the user selects a level, it is removed from the container
   */
  /**
   * Game wrapper
   *
   * The game wrapper is where the actual game resides. Inside here, all the
   * memory tiles get arranged and ready for game play.
   */
  /**
   * Game tiles
   *
   * The game tiles are the tiles that are laid down on the memory game board.
   * These tiles are the ones that the user clicks on to flip and reveal some
   * images. The level the user selects determines the position and size of
   * the tiles.
   */
  /* game__level-1 styles */
  /* game__level-2 styles */
  /* game__level-3 styles */
  /**
   * The tile inside
   *
   * The "tile inner" is the part of the tile that serves as the card. Inside
   * this part, there's an outside and inside part. The outside of the card
   * is the part that has the logo or the pattern or whatever...basically the
   * part that doesn't show the content to be matched. The inside part has the
   * actual images / info to be matched.
   */
  /* some transforms for flipped cards */
  /* some transitions for correct guesses - only needs to happen on card inside */
  /**
   * Game message
   *
   * The game message area is an area to display game messages. It's used in the
   * default set up where no callback is set in the JS. If a callback is set up,
   * then this message area likely won't display. Unless you decide to display it
   * in your own custom callback though!
   */
  /**
   * Game buttons
   *
   * A simple helper class for game buttons. Edit at your will.
   */ }
  .memory-game .mg {
    /* blank */ }
  .memory-game .mg__meta {
    background: #2a8ca7;
    padding: 10px;
    color: #fff;
    margin-bottom: 10px; }
  .memory-game .mg__meta--item {
    display: inline-block; }
  .memory-game .mg__meta--left {
    float: left; }
  .memory-game .mg__meta--right {
    float: right; }
  .memory-game .mg__meta--level {
    margin-right: 20px;
    display: inline-block;
    padding-top: 5px; }
    .memory-game .mg__meta--level > span {
      color: #7fe2ff; }
  .memory-game .mg__meta--moves {
    display: inline-block;
    padding-top: 5px; }
    .memory-game .mg__meta--moves > span {
      color: #7fe2ff; }
  .memory-game .mg__start-screen {
    text-align: center;
    padding: 80px 20px; }
  .memory-game .mg__start-screen--heading {
    margin-bottom: 10px;
    color: #2a8ca9 !important;
    font-size: 2em !important; }
  .memory-game .mg__start-screen--sub-heading {
    font-size: 1.3em;
    margin-top: 30px;
    margin-bottom: 10px;
    color: #1b414e; }
  .memory-game .mg__start-screen--text {
    margin-bottom: 20px;
    color: #298da7; }
  .memory-game .mg__start-screen--level-select {
    list-style: none;
    margin: 0;
    padding: 0;
    display: table;
    width: 600px;
    margin: 0 auto; }
    .memory-game .mg__start-screen--level-select li {
      display: table-cell;
      height: 100px;
      padding: 5px 10px;
      text-align: center;
      vertical-align: middle; }
    .memory-game .mg__start-screen--level-select li > span {
      color: #fff;
      font-size: 18px;
      cursor: pointer;
      display: block;
      padding: 20px 0px; }
    .memory-game .mg__start-screen--level-select li:nth-child(1) > span {
      background: #2a8ca7; }
    .memory-game .mg__start-screen--level-select li:nth-child(2) > span {
      background: #8db809; }
    .memory-game .mg__start-screen--level-select span > span + span {
      margin-left: 10px; }
    .memory-game .mg__start-screen--level-select .star-filled {
      display: inline-block;
      width: 35px;
      height: 35px;
      background: transparent url("img/icon-star-yellow.svg") no-repeat 50% 50%;
      background-size: contain;
      margin-top: 10px; }
    .memory-game .mg__start-screen--level-select .star-empty {
      display: inline-block;
      width: 35px;
      height: 35px;
      background: transparent url("img/icon-star-white.svg") no-repeat 50% 50%;
      background-size: contain;
      margin-top: 10px; }
  .memory-game .mg__wrapper {
    width: 100%;
    margin: 0 auto; }
  .memory-game .mg__contents {
    position: relative;
    padding-bottom: 50%;
    margin-left: -5px;
    margin-right: -5px; }
  .memory-game .mg__tile {
    position: absolute;
    padding: 5px; }
  .memory-game .mg__level-1 .mg__tile {
    width: 25%;
    height: 50%; }
  .memory-game .mg__level-1 .mg__tile-1 {
    top: 0%;
    left: 0%; }
  .memory-game .mg__level-1 .mg__tile-2 {
    top: 0%;
    left: 25%; }
  .memory-game .mg__level-1 .mg__tile-3 {
    top: 0%;
    left: 50%; }
  .memory-game .mg__level-1 .mg__tile-4 {
    top: 0%;
    left: 75%; }
  .memory-game .mg__level-1 .mg__tile-5 {
    top: 50%;
    left: 0%; }
  .memory-game .mg__level-1 .mg__tile-6 {
    top: 50%;
    left: 25%; }
  .memory-game .mg__level-1 .mg__tile-7 {
    top: 50%;
    left: 50%; }
  .memory-game .mg__level-1 .mg__tile-8 {
    top: 50%;
    left: 75%; }
  .memory-game .mg__level-2 .mg__tile {
    width: 16.66667%;
    height: 33.33333%; }
  .memory-game .mg__level-2 .mg__tile-1 {
    top: 0%;
    left: 0%; }
  .memory-game .mg__level-2 .mg__tile-2 {
    top: 0%;
    left: 16.66667%; }
  .memory-game .mg__level-2 .mg__tile-3 {
    top: 0%;
    left: 33.33333%; }
  .memory-game .mg__level-2 .mg__tile-4 {
    top: 0%;
    left: 50%; }
  .memory-game .mg__level-2 .mg__tile-5 {
    top: 0%;
    left: 66.66667%; }
  .memory-game .mg__level-2 .mg__tile-6 {
    top: 0%;
    left: 83.33333%; }
  .memory-game .mg__level-2 .mg__tile-7 {
    top: 33.33333%;
    left: 0%; }
  .memory-game .mg__level-2 .mg__tile-8 {
    top: 33.33333%;
    left: 16.66667%; }
  .memory-game .mg__level-2 .mg__tile-9 {
    top: 33.33333%;
    left: 33.33333%; }
  .memory-game .mg__level-2 .mg__tile-10 {
    top: 33.33333%;
    left: 50%; }
  .memory-game .mg__level-2 .mg__tile-11 {
    top: 33.33333%;
    left: 66.66667%; }
  .memory-game .mg__level-2 .mg__tile-12 {
    top: 33.33333%;
    left: 83.33333%; }
  .memory-game .mg__level-2 .mg__tile-13 {
    top: 66.66667%;
    left: 0%; }
  .memory-game .mg__level-2 .mg__tile-14 {
    top: 66.66667%;
    left: 16.66667%; }
  .memory-game .mg__level-2 .mg__tile-15 {
    top: 66.66667%;
    left: 33.33333%; }
  .memory-game .mg__level-2 .mg__tile-16 {
    top: 66.66667%;
    left: 50%; }
  .memory-game .mg__level-2 .mg__tile-17 {
    top: 66.66667%;
    left: 66.66667%; }
  .memory-game .mg__level-2 .mg__tile-18 {
    top: 66.66667%;
    left: 83.33333%; }
  .memory-game .mg__level-3 .mg__tile {
    width: 12.5%;
    height: 25%; }
  .memory-game .mg__level-3 .mg__tile-1 {
    top: 0%;
    left: 0%; }
  .memory-game .mg__level-3 .mg__tile-2 {
    top: 0%;
    left: 12.5%; }
  .memory-game .mg__level-3 .mg__tile-3 {
    top: 0%;
    left: 25%; }
  .memory-game .mg__level-3 .mg__tile-4 {
    top: 0%;
    left: 37.5%; }
  .memory-game .mg__level-3 .mg__tile-5 {
    top: 0%;
    left: 50%; }
  .memory-game .mg__level-3 .mg__tile-6 {
    top: 0%;
    left: 62.5%; }
  .memory-game .mg__level-3 .mg__tile-7 {
    top: 0%;
    left: 75%; }
  .memory-game .mg__level-3 .mg__tile-8 {
    top: 0%;
    left: 87.5%; }
  .memory-game .mg__level-3 .mg__tile-9 {
    top: 25%;
    left: 0%; }
  .memory-game .mg__level-3 .mg__tile-10 {
    top: 25%;
    left: 12.5%; }
  .memory-game .mg__level-3 .mg__tile-11 {
    top: 25%;
    left: 25%; }
  .memory-game .mg__level-3 .mg__tile-12 {
    top: 25%;
    left: 37.5%; }
  .memory-game .mg__level-3 .mg__tile-13 {
    top: 25%;
    left: 50%; }
  .memory-game .mg__level-3 .mg__tile-14 {
    top: 25%;
    left: 62.5%; }
  .memory-game .mg__level-3 .mg__tile-15 {
    top: 25%;
    left: 75%; }
  .memory-game .mg__level-3 .mg__tile-16 {
    top: 25%;
    left: 87.5%; }
  .memory-game .mg__level-3 .mg__tile-17 {
    top: 50%;
    left: 0%; }
  .memory-game .mg__level-3 .mg__tile-18 {
    top: 50%;
    left: 12.5%; }
  .memory-game .mg__level-3 .mg__tile-19 {
    top: 50%;
    left: 25%; }
  .memory-game .mg__level-3 .mg__tile-20 {
    top: 50%;
    left: 37.5%; }
  .memory-game .mg__level-3 .mg__tile-21 {
    top: 50%;
    left: 50%; }
  .memory-game .mg__level-3 .mg__tile-22 {
    top: 50%;
    left: 62.5%; }
  .memory-game .mg__level-3 .mg__tile-23 {
    top: 50%;
    left: 75%; }
  .memory-game .mg__level-3 .mg__tile-24 {
    top: 50%;
    left: 87.5%; }
  .memory-game .mg__level-3 .mg__tile-25 {
    top: 75%;
    left: 0%; }
  .memory-game .mg__level-3 .mg__tile-26 {
    top: 75%;
    left: 12.5%; }
  .memory-game .mg__level-3 .mg__tile-27 {
    top: 75%;
    left: 25%; }
  .memory-game .mg__level-3 .mg__tile-28 {
    top: 75%;
    left: 37.5%; }
  .memory-game .mg__level-3 .mg__tile-29 {
    top: 75%;
    left: 50%; }
  .memory-game .mg__level-3 .mg__tile-30 {
    top: 75%;
    left: 62.5%; }
  .memory-game .mg__level-3 .mg__tile-31 {
    top: 75%;
    left: 75%; }
  .memory-game .mg__level-3 .mg__tile-32 {
    top: 75%;
    left: 87.5%; }
  .memory-game .mg__tile--inner {
    position: relative;
    width: 100%;
    height: 100%;
    cursor: pointer; }
  .memory-game .mg__tile--outside,
  .memory-game .mg__tile--inside {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    backface-visibility: hidden;
    transition: transform 0.3s, background 0.3s, opacity 0.3s; }
  .memory-game .mg__tile--outside {
    background: url("img/icon-questionmark.png") 50% 50% no-repeat;
    background-color: #2a8ca7; }
  .memory-game .mg__tile--inside {
    background-color: #2a8ca7;
    transform: rotateY(-180deg);
    background-size: 65%;
    background-position: center center;
    background-repeat: no-repeat; }
  .memory-game .mg__tile--inner.flipped .mg__tile--outside {
    transform: rotateY(-180deg); }
  .memory-game .mg__tile--inner.flipped .mg__tile--inside {
    transform: rotateY(0); }
  .memory-game .mg__tile--inner.flipped.correct .mg__tile--inside {
    background-color: #fff; }
  .memory-game .mg__tile--inner.flipped.fadeout .mg__tile--inside {
    background-color: #fff;
    opacity: 0; }
  .memory-game .mg__onend {
    padding: 80px 20px;
    text-align: center; }
  .memory-game .mg__onend--heading {
    margin-bottom: 10px;
    color: #28aadc;
    font-size: 30px; }
  .memory-game .mg__onend--message {
    margin-bottom: 10px; }
  .memory-game .mg__button {
    margin: 0;
    display: inline-block;
    padding: 5px;
    color: #fff;
    font-family: "Margarine", cursive;
    font-size: 14px;
    appearance: none;
    background: #32a9ca;
    border: none;
    box-shadow: none;
    cursor: pointer; }

.puzzle-game {
  max-width: 970px;
  margin: 0 auto; }
  .puzzle-game img {
    max-width: none !important; }
  .puzzle-game .fullscreen {
    text-align: center;
    margin: 15px 0px; }
    .puzzle-game .fullscreen a {
      text-decoration: underline; }
    @media only screen and (min-width: 1200px) {
      .puzzle-game .fullscreen {
        display: none; } }
  .puzzle-game .success {
    background: #22aa22;
    position: absolute;
    width: 200px;
    top: 10px;
    left: 50%;
    margin-left: -100px;
    z-index: 99;
    text-align: center;
    padding: 20px;
    color: white;
    border-radius: 10px;
    opacity: 0;
    transition: opacity 0.3s ease; }
    .puzzle-game .success.visible {
      opacity: 1;
      transition: opacity 0.3s ease; }
  .puzzle-game .puzzle {
    position: relative;
    width: 800px;
    height: 600px;
    margin: 0 auto;
    visibility: hidden; }
    @media only screen and (min-width: 1200px) {
      .puzzle-game .puzzle {
        visibility: visible; } }
    .puzzle-game .puzzle .full {
      position: absolute;
      width: 800px;
      height: 600px;
      opacity: 0.25; }
    .puzzle-game .puzzle table {
      table-layout: fixed;
      border-collapse: collapse; }
      .puzzle-game .puzzle table td {
        position: relative;
        padding: 0px;
        width: 160px;
        height: 150px;
        vertical-align: top;
        text-align: left; }
    .puzzle-game .puzzle .piece-1 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-1 img {
        position: relative;
        top: 0px;
        left: 0px; }
    .puzzle-game .puzzle .piece-2 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-2 img {
        position: relative;
        top: 0px;
        left: -45px; }
    .puzzle-game .puzzle .piece-3 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-3 img {
        position: relative;
        top: 0px;
        left: -12px; }
    .puzzle-game .puzzle .piece-4 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-4 img {
        position: relative;
        top: 0px;
        left: -10px; }
    .puzzle-game .puzzle .piece-5 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-5 img {
        position: relative;
        top: 0px;
        left: -11px; }
    .puzzle-game .puzzle .piece-6 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-6 img {
        position: relative;
        top: -14px;
        left: 0px; }
    .puzzle-game .puzzle .piece-7 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-7 img {
        position: relative;
        top: -14px;
        left: -7px; }
    .puzzle-game .puzzle .piece-8 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-8 img {
        position: relative;
        top: -44px;
        left: -44px; }
    .puzzle-game .puzzle .piece-9 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-9 img {
        position: relative;
        top: -45px;
        left: -43px; }
    .puzzle-game .puzzle .piece-10 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-10 img {
        position: relative;
        top: -40px;
        left: -44px; }
    .puzzle-game .puzzle .piece-11 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-11 img {
        position: relative;
        top: -13px;
        left: 0px; }
    .puzzle-game .puzzle .piece-12 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-12 img {
        position: relative;
        top: -39px;
        left: -47px; }
    .puzzle-game .puzzle .piece-13 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-13 img {
        position: relative;
        top: -17px;
        left: -13px; }
    .puzzle-game .puzzle .piece-14 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-14 img {
        position: relative;
        top: -17px;
        left: -11px; }
    .puzzle-game .puzzle .piece-15 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-15 img {
        position: relative;
        top: -42px;
        left: -46px; }
    .puzzle-game .puzzle .piece-16 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-16 img {
        position: relative;
        top: -11px;
        left: 0px; }
    .puzzle-game .puzzle .piece-17 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-17 img {
        position: relative;
        top: -40px;
        left: -10px; }
    .puzzle-game .puzzle .piece-18 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-18 img {
        position: relative;
        top: -39px;
        left: -42px; }
    .puzzle-game .puzzle .piece-19 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-19 img {
        position: relative;
        top: -41px;
        left: -10px; }
    .puzzle-game .puzzle .piece-20 {
      position: absolute;
      width: 160px;
      height: 150px; }
      .puzzle-game .puzzle .piece-20 img {
        position: relative;
        top: -40px;
        left: -10px; }

.standalone .puzzle-game .puzzle {
  visibility: visible; }

.recognize-game {
  max-width: 970px;
  margin: 0 auto; }
  .recognize-game .questions {
    max-width: 600px;
    margin: 0 auto;
    margin-top: 100px; }
    .recognize-game .questions .question {
      text-align: center;
      font-size: 18px;
      clear: left;
      display: none; }
      .recognize-game .questions .question .separator {
        margin: 20px 0px; }
      .recognize-game .questions .question .answer {
        display: none; }
        .recognize-game .questions .question .answer .wrong, .recognize-game .questions .question .answer .correct {
          display: none; }
        .recognize-game .questions .question .answer .info {
          margin: 15px 0px 0px 0px; }
        .recognize-game .questions .question .answer .continue {
          margin-top: 15px; }
      .recognize-game .questions .question .coin, .recognize-game .questions .question .paper {
        position: relative;
        display: inline-block;
        width: 100px;
        height: 100px; }
        .recognize-game .questions .question .coin .back, .recognize-game .questions .question .paper .back {
          position: absolute;
          width: 100px;
          height: 100px;
          background-size: auto 100%;
          background-repeat: no-repeat;
          background-position: 101% 0%;
          -webkit-transform: rotateY(0deg);
          -moz-transform: rotateY(0deg);
          -ms-transform: rotateY(0deg);
          -o-transform: rotateY(0deg);
          transform: rotateY(0deg);
          -webkit-backface-visibility: hidden;
          -moz-backface-visibility: hidden;
          -ms-backface-visibility: hidden;
          -o-backface-visibility: hidden;
          backface-visibility: hidden; }
        .recognize-game .questions .question .coin.flipped .back, .recognize-game .questions .question .paper.flipped .back {
          -webkit-transform: rotateY(-180deg);
          -moz-transform: rotateY(-180deg);
          -ms-transform: rotateY(-180deg);
          -o-transform: rotateY(-180deg);
          transform: rotateY(-180deg); }
        .recognize-game .questions .question .coin .front, .recognize-game .questions .question .paper .front {
          display: inline-block;
          width: 100px;
          height: 100px;
          background-size: auto 100%;
          background-repeat: no-repeat;
          background-position: 0% 0%;
          -webkit-transform: rotateY(-180deg);
          -moz-transform: rotateY(-180deg);
          -ms-transform: rotateY(-180deg);
          -o-transform: rotateY(-180deg);
          transform: rotateY(-180deg);
          -webkit-backface-visibility: hidden;
          -moz-backface-visibility: hidden;
          -ms-backface-visibility: hidden;
          -o-backface-visibility: hidden;
          backface-visibility: hidden; }
        .recognize-game .questions .question .coin.flipped .front, .recognize-game .questions .question .paper.flipped .front {
          -webkit-transform: rotateY(-360deg);
          -moz-transform: rotateY(-360deg);
          -ms-transform: rotateY(-360deg);
          -o-transform: rotateY(-360deg);
          transform: rotateY(-360deg); }
        .recognize-game .questions .question .coin .front, .recognize-game .questions .question .coin .back, .recognize-game .questions .question .coin.flipped .front, .recognize-game .questions .question .coinflipped .back, .recognize-game .questions .question .paper .front, .recognize-game .questions .question .paper .back, .recognize-game .questions .question .paper.flipped .front, .recognize-game .questions .question .paperflipped .back {
          -webkit-transition: -webkit-transform 0.5s ease;
          -moz-transition: -moz-transform 0.5s ease;
          -ms-transition: -ms-transform 0.5s ease;
          -o-transition: -o-transform 0.5s ease;
          transition: transform 0.5s ease; }
      .recognize-game .questions .question .paper {
        width: 230px; }
        .recognize-game .questions .question .paper .back, .recognize-game .questions .question .paper .front {
          width: 230px; }
      .recognize-game .questions .question .picto {
        display: inline-block;
        margin: 0 auto;
        margin-bottom: 15px;
        width: 90px;
        height: 90px;
        background-color: transparent;
        background-size: contain; }
      .recognize-game .questions .question button {
        background: #2a8ca7;
        padding: 10px 15px;
        border: none;
        color: white;
        cursor: pointer;
        font-size: 16px;
        margin-top: 10px; }
        .recognize-game .questions .question button.wrong {
          background-color: #DE2065; }
        .recognize-game .questions .question button.correct {
          background-color: #8DBA24; }

.magnifying-game {
  position: relative; }
  .magnifying-game object {
    visibility: hidden; }
  .magnifying-game > * {
    width: 100%; }
    .magnifying-game > * img {
      width: 100%; }
  .magnifying-game .info {
    background: #2a8ca7;
    color: #fff;
    margin: 20px 0px;
    padding: 40px 20px 20px 20px;
    text-align: justify; }
    .magnifying-game .info .id {
      display: inline-block;
      float: left;
      width: 40px;
      height: 40px;
      border: 3px solid #fff;
      border-radius: 40px;
      text-align: center;
      line-height: 37px;
      font-size: 1.5em;
      margin: -5px 10px 7px -5px; }
    .magnifying-game .info .close-panel {
      color: #fff;
      float: right;
      margin: -30px -10px 0px 20px; }
    .magnifying-game .info.info-left {
      position: absolute;
      top: 0px;
      left: 0px;
      bottom: 0px;
      width: 40%;
      z-index: 999; }
    .magnifying-game .info.info-right {
      position: absolute;
      top: 0px;
      right: 0px;
      bottom: 0px;
      width: 40%;
      z-index: 999; }

.board-game {
  position: relative;
  margin: 0 auto;
  overflow: hidden; }
  .board-game .fullscreen {
    position: absolute;
    width: 100%;
    text-align: center;
    margin: 15px 0px; }
    .board-game .fullscreen a {
      text-decoration: underline; }
    @media only screen and (min-width: 1200px) {
      .board-game .fullscreen {
        display: none; } }
  .board-game .dice-container, .board-game .display, .board-game #map {
    visibility: hidden; }
    @media only screen and (min-width: 1200px) {
      .board-game .dice-container, .board-game .display, .board-game #map {
        visibility: visible; } }
  .board-game #map {
    width: 100%; }
  .board-game .display {
    position: absolute;
    left: 7.8%;
    right: 6.7%;
    //height: 220px;
    bottom: -10px;
    background: rgba(33, 64, 81, 0.79);
    border-top: 3px solid #fff;
    padding: 11px;
    box-sizing: border-box;
    color: #fff;
    transition: bottom 0.3s ease;
    text-align: center; }
    .board-game .display.retracted {
      bottom: -180px;
      transition: bottom 0.3s ease; }
    .board-game .display .question .title {
      font-size: 0.9em; }
    .board-game .display .question ul {
      list-style: none;
      margin-top: 40px;
      margin: 0px;
      padding: 0px; }
      .board-game .display .question ul li {
        background: #c0e3e7;
        padding: 6px;
        margin: 6px;
        font-size: 0.9em;
        color: #28495c;
        cursor: pointer; }
        .board-game .display .question ul li:hover {
          background: #aff2fa; }
        .board-game .display .question ul li.correct {
          background: #91c465;
          color: #fff; }
        .board-game .display .question ul li.incorrect {
          background: #e24e4e;
          color: #fff; }
  .board-game button {
    border: none;
    background: #c0e3e7;
    padding: 10px 25px;
    color: #28495c;
    cursor: pointer; }

#dice-label {
  position: absolute;
  left: 77px;
  top: -8px;
  width: 200px; }

.dice-container {
  position: absolute;
  width: 50px;
  height: 50px;
  top: 25px;
  left: 25px;
  cursor: pointer; }

.dice {
  position: relative;
  width: 50px;
  height: 50px;
  transform: rotate3d(0, 1, 1, 90deg);
  transform-origin: center center;
  transform-style: preserve-3d; }
  .dice > * {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 50px;
    height: 50px;
    transform-origin: center center; }
  .dice .side-1 {
    transform: translate3d(0px, 0px, 25px) rotate3d(0, 0, 0, 0deg); }
  .dice .side-2 {
    transform: translate3d(0px, 25px, 0px) rotate3d(1, 0, 0, 90deg); }
  .dice .side-3 {
    transform: translate3d(25px, 0px, 0px) rotate3d(0, 1, 0, 90deg); }
  .dice .side-4 {
    transform: translate3d(-25px, 0px, 0px) rotate3d(0, 1, 0, 90deg); }
  .dice .side-5 {
    transform: translate3d(0px, -25px, 0px) rotate3d(1, 0, 0, 90deg); }
  .dice .side-6 {
    transform: translate3d(0px, 0px, -25px) rotate3d(0, 0, 0, 0deg); }
  .dice.rolling {
    transition: none !important; }
  .dice.rolled-1 {
    transform: rotate3d(0, 0, 0, 90deg);
    transition: transform 0.3s ease-out; }
  .dice.rolled-2 {
    transform: rotate3d(1, 0, 0, 90deg);
    transition: transform 0.3s ease-out; }
  .dice.rolled-3 {
    transform: rotate3d(0, -1, 0, 90deg);
    transition: transform 0.3s ease-out; }
  .dice.rolled-4 {
    transform: rotate3d(0, 1, 0, 90deg);
    transition: transform 0.3s ease-out; }
  .dice.rolled-5 {
    transform: rotate3d(-1, 0, 0, 90deg);
    transition: transform 0.3s ease-out; }
  .dice.rolled-6 {
    transform: rotate3d(1, 0, 0, 180deg);
    transition: transform 0.3s ease-out; }

.standalone .board-game .dice-container, .standalone .board-game .display, .standalone .board-game #map {
  visibility: visible; }

.standalone .board-game .fullscreen {
  display: none; }

.pair-game .items {
  min-height: 130px; }

.pair-game .item {
  display: inline-block;
  width: 100px;
  height: 100px;
  margin: 10px;
  background-position: 50% 50%;
  background-size: contain;
  cursor: pointer; }
  .pair-game .item .overlay {
    display: table;
    width: 100px;
    height: 100px;
    background: rgba(92, 75, 220, 0.8);
    color: #fff;
    border-radius: 99px;
    opacity: 0;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease; }
    .pair-game .item .overlay span {
      display: table-cell;
      vertical-align: middle;
      text-align: center; }
  .pair-game .item:hover .overlay, .pair-game .item.ui-draggable-dragging .overlay {
    opacity: 1;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease; }

.pair-game .texts {
  margin-left: -15px;
  margin-right: -15px; }
  .pair-game .texts:before,
  .pair-game .texts:after {
    content: " ";
    display: table; }
  .pair-game .texts:after {
    clear: both; }
  .pair-game .texts .text {
    position: relative;
    float: left;
    width: 100%;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    margin-top: 30px; }
    @media (min-width: 768px) {
      .pair-game .texts .text {
        float: left;
        width: 50%; } }
    .pair-game .texts .text .content {
      background: #39cbf4;
      color: #fff;
      font-size: 0.8em;
      padding: 10px;
      height: 120px;
      -webkit-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      .pair-game .texts .text .content .holder {
        height: 100px;
        width: 100px;
        float: right;
        background: transparent url("img/pic-dashed-circle.svg") no-repeat 50% 50%;
        background-size: contain; }
        .pair-game .texts .text .content .holder .item {
          margin: 0px; }
      .pair-game .texts .text .content .name {
        font-size: 1.2em;
        opacity: 0;
        -webkit-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease; }
    .pair-game .texts .text.wrong-match .content {
      background: #e24e4e; }
    .pair-game .texts .text.right-match .content {
      background: #91c465; }
      .pair-game .texts .text.right-match .content .name {
        opacity: 1;
        -webkit-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease; }
    .pair-game .texts .text.hovering .content {
      background: #95ecff; }

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNpdGUuc2NzcyIsIl9ib290c3RyYXAuc2NzcyIsIl92YXJpYWJsZXMuc2NzcyIsIl9taXhpbnMuc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL19ib290c3RyYXAuc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbm9ybWFsaXplLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3ByaW50LnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2dseXBoaWNvbnMuc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fc2NhZmZvbGRpbmcuc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3ZlbmRvci1wcmVmaXhlcy5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL192YXJpYWJsZXMuc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3RhYi1mb2N1cy5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9faW1hZ2Uuc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdHlwZS5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGV4dC1vdmVyZmxvdy5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19jb2RlLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2dyaWQuc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQuc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3RhYmxlcy5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGFibGUtcm93LnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2Zvcm1zLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19mb3Jtcy5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19idXR0b25zLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19idXR0b25zLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19vcGFjaXR5LnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2NvbXBvbmVudC1hbmltYXRpb25zLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2Ryb3Bkb3ducy5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LWZpbHRlci5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19idXR0b24tZ3JvdXBzLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2lucHV0LWdyb3Vwcy5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19uYXZzLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX25hdmJhci5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fbmF2LXZlcnRpY2FsLWFsaWduLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2JyZWFkY3J1bWJzLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3BhZ2luYXRpb24uc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcGFnZXIuc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbGFiZWxzLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19sYWJlbHMuc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fYmFkZ2VzLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2p1bWJvdHJvbi5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL190aHVtYm5haWxzLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2FsZXJ0cy5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fYWxlcnRzLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3Byb2dyZXNzLWJhcnMuc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcHJvZ3Jlc3MtYmFyLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX21lZGlhLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2xpc3QtZ3JvdXAuc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcGFuZWxzLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19wYW5lbHMuc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL193ZWxscy5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19jbG9zZS5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19tb2RhbHMuc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdG9vbHRpcC5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wb3BvdmVycy5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19jYXJvdXNlbC5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL191dGlsaXRpZXMuc2NzcyIsImxpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2NlbnRlci1ibG9jay5zY3NzIiwibGliL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9faGlkZS10ZXh0LnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3Jlc3BvbnNpdmUtdXRpbGl0aWVzLnNjc3MiLCJsaWIvYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19yZXNwb25zaXZlLXZpc2liaWxpdHkuc2NzcyIsIl9vdmVycmlkZXMuc2NzcyIsImxpYi9fb2ZmY2FudmFzLnNjc3MiLCJ3aWRnZXRzL19vZmZjYW52YXMuc2NzcyIsIndpZGdldHMvX2J1dHRvbnMuc2NzcyIsIndpZGdldHMvX2JveGVzLnNjc3MiLCJwYWdlcy9fcGFpbnRlckdhbWUuc2NzcyIsInBhZ2VzL19tZW1vcnlHYW1lLmxheW91dC5zY3NzIiwicGFnZXMvX21lbW9yeUdhbWUuY29uZmlnLnNjc3MiLCJwYWdlcy9fbWVtb3J5R2FtZS5nYW1lLnNjc3MiLCJwYWdlcy9fcHV6emxlR2FtZS5zY3NzIiwicGFnZXMvX3JlY29nbml6ZUdhbWUuc2NzcyIsInBhZ2VzL19tYWduaWZ5aW5nR2FtZS5zY3NzIiwicGFnZXMvX2JvYXJkR2FtZS5zY3NzIiwicGFnZXMvX3BhaXJHYW1lLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHFCQUFxQjtBQ0FyQixrQ0FBa0M7QUFFbEMsdUVBQXVFO0FDRnZFLGdCQUFnQjtBQUloQixhQUFhO0FBRWIsaUJBQWlCO0FEQWpCLG9CQUFvQjtBRU5wQixhQUFhO0FGVWIsNkJBQTZCO0FHVjdCOzs7O0dBSUc7QUNKSCw0RUFBNEU7QUFRNUUsSUFBSSxDQUFDO0VBQ0gsV0FBVyxFQUFFLFVBQVc7RUFDeEIsb0JBQW9CLEVBQUUsSUFBSztFQUMzQix3QkFBd0IsRUFBRSxJQUFLLEdBSDNCOztBQVVOLElBQUksQ0FBQztFQUNILE1BQU0sRUFBRSxDQUFFLEdBRE47O0FBMEJOLE9BQU87QUFDUCxLQUFLO0FBQ0wsT0FBTztBQUNQLFVBQVU7QUFDVixNQUFNO0FBQ04sTUFBTTtBQUNOLE1BQU07QUFDTixNQUFNO0FBQ04sSUFBSTtBQUNKLElBQUk7QUFDSixHQUFHO0FBQ0gsT0FBTztBQUNQLE9BQU8sQ0FaQztFQUNOLE9BQU8sRUFBRSxLQUFNLEdBRFI7O0FBWVQsS0FBSztBQUNMLE1BQU07QUFDTixRQUFRO0FBQ1IsS0FBSyxDQUhDO0VBQ0osT0FBTyxFQUFFLFlBQWE7RUFDdEIsY0FBYyxFQUFFLFFBQVMsR0FGcEI7O0FBVWEsS0FBSyxLQUFLLENBQUEsUUFBQyxHQUFUO0VBQ3BCLE9BQU8sRUFBRSxJQUFLO0VBQ2QsTUFBTSxFQUFFLENBQUUsR0FGVzs7Q0FXdkIsTUFBQztBQUNELFFBQVEsQ0FEQztFQUNQLE9BQU8sRUFB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QUUsZ0JBQWdCLEVBQXNCLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUErQyxnQkFBZ0IsTUFBTSxFQUFFLGdCQUFnQixNQUFNLEVBQUUsZ0JBQWdCLE1BQU0sRUFBRSxnQkFBZ0IsTUFBTSxFQUFFLGdCQUFnQixNQUFNLEVBQUUsZ0JBQWdCLE1BQU0sRUFBNEIsaUJBQWlCLE1BQU0sRUFBRSxpQkFBaUIsTUFBTSxFQUFFLGlCQUFpQixNQUFNLEVBQUUsaUJBQWlCLE1BQU0sRUFBRSxpQkFBaUIsTUFBTSxFQUFFLGlCQUFpQixNQUFNLEVBQUUsaUJBQWlCLE1BQU0sRUFBbUQsZ0JBQWdCLFFBQVEsRUFBRSxnQkFBZ0IsUUFBUSxFQUFFLGdCQUFnQixRQUFRLEVBQUUsZ0JBQWdCLFFBQVEsRUFBRSxnQkFBZ0IsUUFBUSxFQUFFLGdCQUFnQixRQUFRLEVBQThCLGlCQUFpQixRQUFRLEVBQUUsaUJBQWlCLFFBQVEsRUFBRSxpQkFBaUIsUUFBUSxFQUFFLGlCQUFpQixRQUFRLEVBQUUsaUJBQWlCLFFBQVEsRUFBRSxpQkFBaUIsUUFBUSxFQUFFLGlCQUFpQixRQUFRLEVBQWlELGdCQUFnQixPQUFPLEVBQUUsZ0JBQWdCLE9BQU8sRUFBRSxnQkFBZ0IsT0FBTyxFQUFFLGdCQUFnQixPQUFPLEVBQUUsZ0JBQWdCLE9BQU8sRUFBRSxnQkFBZ0IsT0FBTyxFQUE2QixpQkFBaUIsT0FBTyxFQUFFLGlCQUFpQixPQUFPLEVBQUUsaUJBQWlCLE9BQU8sRUFBRSxpQkFBaUIsT0FBTyxFQUFFLGlCQUFpQixPQUFPLEVBQUUsaUJBQWlCLE9BQU8sRUFBRSxpQkFBaUIsT0FBTyxFQUErQyxnQkFBZ0IsTUFBTSxFQUFFLGdCQUFnQixNQUFNLEVBQUUsZ0JBQWdCLE1BQU0sRUFBRSxnQkFBZ0IsTUFBTSxFQUFFLGdCQUFnQixNQUFNLEVBQUUsZ0JBQWdCLE1BQU0sRUFBNEIsaUJBQWlCLE1BQU0sRUFBRSxpQkFBaUIsTUFB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SEUsR0FBSztJQUlWLElBQUksRUFISSxFQUFFLEdBQ1Y7RUFEbUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQzFFO0lBQ0MsR0FBRyxFQUhFLEdBQUs7SUFJVixJQUFJLEVBSEksS0FBRSxHQUNWO0VBRG1DLFlBQVksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUMxRTtJQUNDLEdBQUcsRUFIRSxHQUFLO0lBSVYsSUFBSSxFQUhJLEdBQUUsR0FDVjtFQURtQyxZQUFZLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FDMUU7SUFDQyxHQUFHLEVBSEUsR0FBSztJQUlWLElBQUksRUFISSxLQUFFLEdBQ1Y7RUFEbUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQzFFO0lBQ0MsR0FBRyxFQUhFLEdBQUs7SUFJVixJQUFJLEVBSEksR0FBRSxHQUNWO0VBRG1DLFlBQVksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUMxRTtJQUNDLEdBQUcsRUFIRSxHQUFLO0lBSVYsSUFBSSxFQUhJLEtBQUUsR0FDVjtFQURtQyxZQUFZLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FDMUU7SUFDQyxHQUFHLEVBSEUsR0FBSztJQUlWLElBQUksRUFISSxHQUFFLEdBQ1Y7RUFEbUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQzFFO0lBQ0MsR0FBRyxFQUhFLEdBQUs7SUFJVixJQUFJLEVBSEksS0FBRSxHQUNWO0VBRG1DLFlBQVksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUMxRTtJQUNDLEdBQUcsRUFIRSxHQUFLO0lBSVYsSUFBSSxFQUhJLEVBQUUsR0FDVjtFQURtQyxZQUFZLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FDMUU7SUFDQyxHQUFHLEVBSEUsR0FBSztJQUlWLElBQUksRUFISSxLQUFFLEdBQ1Y7RUFEbUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQzFFO0lBQ0MsR0FBRyxFQUhFLEdBQUs7SUFJVixJQUFJLEVBSEksR0FBRSxHQUNWO0VBRG1DLFlBQVksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUMxRTtJQUNDLEdBQUcsRUFIRSxHQUFLO0lBSVYsSUFBSSxFQUhJLEtBQUUsR0FDVjtFQURtQyxZQUFZLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FDMUU7SUFDQyxHQUFHLEVBSEUsR0FBSztJQUlWLElBQUksRUFISSxHQUFFLEdBQ1Y7RUFEbUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQzFFO0lBQ0MsR0FBRyxFQUhFLEdBQUs7SUFJVixJQUFJLEVBSEksS0FBRSxHQUNWO0VBRG1DLFlBQVksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUMxRTtJQUNDLEdBQUcsRUFIRSxHQUFLO0lBSVYsSUFBSSxFQUhJLEdBQUUsR0FDVjtFQURtQyxZQUFZLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FDMUU7SUFDQyxHQUFHLEVBSEUsR0FBSztJQUlWLElBQUksRUFISSxLQUFFLEdBQ1Y7RUFEbUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQzFFO0lBQ0MsR0FBRyxFQUhFLEdBQUs7SUFJVixJQUFJLEVBSEksRUFBRSxHQUNWO0VBRG1DLFlBQVksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUMxRTtJQUNDLEdBQUcsRUFIRSxHQUFLO0lBSVYsSUFBSSxFQUhJLEtBQUUsR0FDVjtFQURtQyxZQUFZLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FDMUU7SUFDQyxHQUFHLEVBSEUsR0FBSztJQUlWLElBQUksRUFISSxHQUFFLEdBQ1Y7RUFEbUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQzFFO0lBQ0MsR0FBRyxFQUhFLEdBQUs7SUFJVixJQUFJLEVBSEksS0FBRSxHQUNWO0VBRG1DLFlBQVksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUMxRTtJQUNDLEdBQUcsRUFIRSxHQUFLO0lBSVYsSUFBSSxFQUhJLEdBQUUsR0FDVjtFQURtQyxZQUFZLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FDMUU7SUFDQyxHQUFHLEVBSEUsR0FBSztJQUlWLElBQUksRUFISSxLQUFFLEdBQ1Y7RUFEbUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQzFFO0lBQ0MsR0FB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QUF4QztVQUNKLE1BQU0sRUFBRSxHQUFJLEdBRFA7TUFLVCxVQUFVLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFoQztRQUNKLFNBQVMsRUFBRSxLQUFNO1FBRWpCLE9BQU8sRUFBRSxDQUFFO1EzRWlHbkIsa0JBQWtCLEUyRS9GVSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUk7UTNFZ0dwQyxhQUFhLEUyRWhHVSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUk7UTNFaUdqQyxVQUFVLEUyRWpHVSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksR0FMNUI7SUFTSyxVQUFVLENBQUMsTUFBTSxDQUFDLEtBQUssWUFBWSxDQUFDLFFBQVEsQ0FBbkM7TUFDckIsVUFBVSxFQUFFLE9BQVEsR0FERTtJQUlWLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSyxZQUFZLENBQUMsUUFBUSxDQUFuQztNQUNyQixVQUFVLEVBQUUsT0FBUSxHQURFO01BR3RCLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSyxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBNUM7UUFDSixPQUFPLEVBQUUsQ0FBRTtRM0VtRm5CLGtCQUFrQixFMkVqRlUsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJO1EzRWtGcEMsYUFBYSxFMkVsRlUsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJO1EzRW1GakMsVUFBVSxFMkVuRlUsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBSDVCO0lBT0UsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLFNBQVMsQ0FBQyxRQUFRLENBQWhDO01BQ2xCLFVBQVUsRUFBRSxPQUFRLEdBREQiLCJmaWxlIjoibWFpbi5taW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogSW5pY2lhbGl6w6Fsw6FzICovXHJcbkBpbXBvcnQgJ2Jvb3RzdHJhcCc7XHJcbi8qIEVnecOpYiBpbXBvcnQgKi9cclxuQGltcG9ydCAnd2lkZ2V0cy9fb2ZmY2FudmFzJztcclxuQGltcG9ydCAnd2lkZ2V0cy9fYnV0dG9ucyc7XHJcbkBpbXBvcnQgJ3dpZGdldHMvX2JveGVzJztcclxuXHJcbmJvZHkge1xyXG4gIGJhY2tncm91bmQ6ICNlZWY5ZmM7XHJcblxyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxuICBjb2xvcjogIzFiNDE0ZjtcclxufVxyXG5cclxuYSB7XHJcbiAgY29sb3I6ICMxYjQxNGY7XHJcbn1cclxuXHJcbmhlYWRlciB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICBoZWlnaHQ6IDYwMHB4O1xyXG5cclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2ltZy9iZy1oZWFkZXIuc3ZnJyk7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgdG9wO1xyXG4gIGJhY2tncm91bmQtc2l6ZTogMTkyMHB4IGF1dG87XHJcblxyXG4gIEBpbmNsdWRlIHJlc3BvbmQtdG8oeHMpIHtcclxuICAgIGhlaWdodDogNDAwcHg7XHJcblxyXG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAwcHggYXV0bztcclxuICB9XHJcblxyXG4gICY6YmVmb3JlIHtcclxuICAgIEBpbmNsdWRlIGZpbGwoKTtcclxuXHJcbiAgICBAaW5jbHVkZSBncmFkaWVudC12ZXJ0aWNhbCgjZmZmLCAjZWVmOWZjLCA4MCUsIDEwMCUpO1xyXG5cclxuICAgIGNvbnRlbnQ6ICcnO1xyXG5cclxuICAgIHotaW5kZXg6IC0xO1xyXG4gIH1cclxuXHJcbiAgLm5maC1sb2dvIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHJcbiAgICB0b3A6IDMwcHg7XHJcbiAgICBsZWZ0OiAxMDBweDtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKHhzKSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICBtYXJnaW46IDMwcHggMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm9rb3Nrb3Nhci1sb2dvIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHJcbiAgICB0b3A6IDMwcHg7XHJcbiAgICByaWdodDogMTAwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byh4cykge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI21haW4ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgbWFyZ2luLXRvcDogLTQwMHB4O1xyXG5cclxuICBAaW5jbHVkZSByZXNwb25kLXRvKGxnKSB7XHJcbiAgICB3aWR0aDogMTIyMHB4O1xyXG4gIH1cclxuXHJcbiAgLmxlZnQtbWVudSB7XHJcbiAgICBwYWRkaW5nLXRvcDogMjIwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhsZykge1xyXG4gICAgICB3aWR0aDogMTk1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMHB4O1xyXG4gICAgICBsZWZ0OiAwcHg7XHJcblxyXG4gICAgICBjb250ZW50OiAnJztcclxuXHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAyMjBweDtcclxuXHJcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgnaW1nL2ltZy1raWNzaWtuZWsucG5nJykgbm8tcmVwZWF0IDUwJSB0b3A7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yaWdodC1tZW51IHtcclxuICAgIHBhZGRpbmctdG9wOiAyMjBweDtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKGxnKSB7XHJcbiAgICAgIHdpZHRoOiAxOTVweDtcclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwcHg7XHJcbiAgICAgIGxlZnQ6IDBweDtcclxuXHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG5cclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDIyMHB4O1xyXG5cclxuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCdpbWcvaW1nLW5hZ3lva25hay5wbmcnKSBuby1yZXBlYXQgNTAlIHRvcDtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgcmVzcG9uZC10byhtZCkge1xyXG4gICAgLmxlZnQtbWVudSwgLnJpZ2h0LW1lbnUge1xyXG4gICAgICBhIHtcclxuICAgICAgICBmb250LXNpemU6IDAuN2VtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSByZXNwb25kLXRvKHNtKSB7XHJcbiAgICAubGVmdC1tZW51LCAucmlnaHQtbWVudSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLm1haW4tY29udGVudCB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm1haW4tY29udGVudCB7XHJcbiAgICBwYWRkaW5nLXRvcDogMjIwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhsZykge1xyXG4gICAgICBtaW4td2lkdGg6IDgzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGgxIHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgZm9udC1zaXplOiAyZW07XHJcblxyXG4gICAgICBtYXJnaW46IDBweCAwcHggMC4xZW0gMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGgyIHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgZm9udC1zaXplOiAxLjI1ZW07XHJcblxyXG4gICAgICBtYXJnaW46IDBweCAwcHggMC41ZW0gMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmZvb3RlciB7XHJcbiAgYmFja2dyb3VuZDogI2RjZWRmMSB1cmwoJ2ltZy9iZy1mb290ZXIucG5nJykgcmVwZWF0LXggNTAlIDUwJTtcclxuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcclxuXHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNiOGNhZDE7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiOGNhZDE7XHJcblxyXG4gIG1hcmdpbi10b3A6IDUwcHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuXHJcbiAgcGFkZGluZzogNTBweCAwcHg7XHJcblxyXG4gIC5sb2dvIHtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cclxuICAgIGEge1xyXG4gICAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8oeHMpIHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5pbmZvIHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG4gICAgLnRpdGxlIHtcclxuICAgICAgZm9udC1zaXplOiAxLjFlbTtcclxuICAgICAgbWFyZ2luOiAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmxpbmtzIHtcclxuICAgICAgZm9udC1zaXplOiAwLjllbTtcclxuICAgICAgbWFyZ2luOiAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byh4cykge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBociB7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2M3ZGFkZjtcclxuXHJcbiAgICBtYXgtd2lkdGg6IDgwMHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBtYXJnaW4tdG9wOiAyMnB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTNweDtcclxuICB9XHJcblxyXG4gIHVsLm1lbnUge1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuXHJcbiAgICBtYXJnaW46IDBweDtcclxuICAgIHBhZGRpbmc6IDBweDtcclxuXHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgICBtYXJnaW46IDBweCAxNXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQGltcG9ydCAncGFnZXMvcGFpbnRlckdhbWUnO1xyXG5AaW1wb3J0ICdwYWdlcy9tZW1vcnlHYW1lJztcclxuQGltcG9ydCAncGFnZXMvcHV6emxlR2FtZSc7XHJcbkBpbXBvcnQgJ3BhZ2VzL3JlY29nbml6ZUdhbWUnO1xyXG5AaW1wb3J0ICdwYWdlcy9tYWduaWZ5aW5nR2FtZSc7XHJcbkBpbXBvcnQgJ3BhZ2VzL2JvYXJkR2FtZSc7XHJcbkBpbXBvcnQgJ3BhZ2VzL3BhaXJHYW1lJzsiLCIvKiogU2l0ZS5zY3NzIGluaWNpYWxpesOhbMOhc2EgKiovXHJcblxyXG4vKiBDdXN0b20gdsOhbHRvesOzaywgbWl4aW5layDDqXMgQm9vdHN0cmFwIHbDoWx0b3rDs2sgZmVsw7xsw61yw6FzYSAqL1xyXG5cclxuQGltcG9ydCAndmFyaWFibGVzJztcclxuXHJcbi8qIEN1c3RvbSBtaXhpbmVrICovXHJcblxyXG5AaW1wb3J0ICdtaXhpbnMnO1xyXG5cclxuLyogQm9vdHN0cmFwIGltcG9ydMOhbMOhc2EgKi9cclxuXHJcbkBpbXBvcnQgJ2xpYi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL19ib290c3RyYXAnO1xyXG5cclxuLyogQm9vdHN0cmFwIGRvbGdvayBmZWzDvGzDrXLDoXNhLCBhbWkgdsOhbHRvesOzdmFsIG5lbSBtZWdvbGRoYXTDsyAqL1xyXG5AaW1wb3J0ICdvdmVycmlkZXMnOyIsIi8qIFbDoWx0b3rDs2sgKi9cclxuXHJcbiR6aW5kZXgtb3ZlcmxheTogOTAwO1xyXG5cclxuLyogU3rDrW5layAqL1xyXG5cclxuLyogVGlwb2dyw6FmaWEgKi9cclxuXHJcbiRmb250LWZhbWlseS1iYXNlOiAnTWFyZ2FyaW5lJywgY3Vyc2l2ZTtcclxuIiwiLyogTWl4aW5layAqL1xyXG5cclxuLy8gYmV0xbFzdMOtbHVzIGd5b3JzIGZvcm3DoXrDoXNhXHJcblxyXG5AbWl4aW4gZm9udCgkc2l6ZTogbnVsbCwgJHdlaWdodDogbnVsbCwgJGZhbWlseTogbnVsbCkge1xyXG4gIGZvbnQtZmFtaWx5OiAkZmFtaWx5O1xyXG4gIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0O1xyXG4gIGZvbnQtc2l6ZTogJHNpemU7XHJcbn1cclxuXHJcbkBtaXhpbiBmb250LWxpZ2h0KCRzaXplKSB7XHJcbiAgQGluY2x1ZGUgZm9udC1zdHlsZSgkc2l6ZSwgMzAwKTtcclxufVxyXG5cclxuLy8gc3rDvGzFkSBraXTDtmx0w6lzZVxyXG5cclxuQG1peGluIGZpbGwge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHJcbiAgdG9wOiAwcHg7XHJcbiAgcmlnaHQ6IDBweDtcclxuICBib3R0b206IDBweDtcclxuICBsZWZ0OiAwcHg7XHJcbn1cclxuXHJcbi8vIG92ZXJsYXkgKHN6w7xsxZEga2l0w7ZsdMOpc2UgKyBmZWzDvGwpXHJcblxyXG4lb3ZlcmxheSB7XHJcbiAgQGluY2x1ZGUgZmlsbCgpO1xyXG5cclxuICB6LWluZGV4OiAkemluZGV4LW92ZXJsYXk7XHJcbn1cclxuXHJcbi8vIGVneXN6ZXLFsSByZXN6cG9ueml2aXTDoXNcclxuXHJcbkBtaXhpbiByZXNwb25kLXRvKCRtZWRpYSkge1xyXG4gIEBpZiAkbWVkaWEgPT0geHhzIHtcclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi14cy1taW4pIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAkbWVkaWEgPT0geHMge1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIGlmICRtZWRpYSA9PSBzbSB7XHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgJG1lZGlhID09IG1kIHtcclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAkbWVkaWEgPT0gbGcge1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIHtcclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKCRtZWRpYSkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIMOhdHTFsW7DqXNlayAodHJhbnNpdGlvbikgLS0gY3NhayBhZG90dCBtw6lyZXQgZsO2bMO2dHRcclxuXHJcbkBtaXhpbiB0cmFuc2l0aW9uLWRlc2t0b3AoKSB7XHJcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc2NyZWVuLW1kICsgMSkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59IiwiLyohXHJcbiAqIEJvb3RzdHJhcCB2My4zLjUgKGh0dHA6Ly9nZXRib290c3RyYXAuY29tKVxyXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE1IFR3aXR0ZXIsIEluYy5cclxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcclxuICovXHJcblxyXG4vLyBDb3JlIHZhcmlhYmxlcyBhbmQgbWl4aW5zXHJcbkBpbXBvcnQgXCJib290c3RyYXAvX3ZhcmlhYmxlc1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL19taXhpbnNcIjtcclxuXHJcbi8vIFJlc2V0IGFuZCBkZXBlbmRlbmNpZXNcclxuQGltcG9ydCBcImJvb3RzdHJhcC9fbm9ybWFsaXplXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvX3ByaW50XCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvX2dseXBoaWNvbnNcIjtcclxuXHJcbi8vIENvcmUgQ1NTXHJcbkBpbXBvcnQgXCJib290c3RyYXAvX3NjYWZmb2xkaW5nXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvX3R5cGVcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9fY29kZVwiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL19ncmlkXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvX3RhYmxlc1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL19mb3Jtc1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL19idXR0b25zXCI7XHJcblxyXG4vLyBDb21wb25lbnRzXHJcbkBpbXBvcnQgXCJib290c3RyYXAvX2NvbXBvbmVudC1hbmltYXRpb25zXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvX2Ryb3Bkb3duc1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL19idXR0b24tZ3JvdXBzXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvX2lucHV0LWdyb3Vwc1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL19uYXZzXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvX25hdmJhclwiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL19icmVhZGNydW1ic1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL19wYWdpbmF0aW9uXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvX3BhZ2VyXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvX2xhYmVsc1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL19iYWRnZXNcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9fanVtYm90cm9uXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvX3RodW1ibmFpbHNcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9fYWxlcnRzXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvX3Byb2dyZXNzLWJhcnNcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9fbWVkaWFcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9fbGlzdC1ncm91cFwiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL19wYW5lbHNcIjtcclxuQGltcG9ydCBcImJvb3RzdHJhcC9fcmVzcG9uc2l2ZS1lbWJlZFwiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL193ZWxsc1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL19jbG9zZVwiO1xyXG5cclxuLy8gQ29tcG9uZW50cyB3LyBKYXZhU2NyaXB0XHJcbkBpbXBvcnQgXCJib290c3RyYXAvX21vZGFsc1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwL190b29sdGlwXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvX3BvcG92ZXJzXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvX2Nhcm91c2VsXCI7XHJcblxyXG4vLyBVdGlsaXR5IGNsYXNzZXNcclxuQGltcG9ydCBcImJvb3RzdHJhcC9fdXRpbGl0aWVzXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXAvX3Jlc3BvbnNpdmUtdXRpbGl0aWVzXCI7XHJcbiIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cclxuXHJcbi8vXHJcbi8vIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXHJcbi8vIDIuIFByZXZlbnQgaU9TIGFuZCBJRSB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIGRldmljZSBvcmllbnRhdGlvbiBjaGFuZ2UsXHJcbi8vICAgIHdpdGhvdXQgZGlzYWJsaW5nIHVzZXIgem9vbS5cclxuLy9cclxuXHJcbmh0bWwge1xyXG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAxXHJcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcclxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcclxufVxyXG5cclxuLy9cclxuLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxyXG4vL1xyXG5cclxuYm9keSB7XHJcbiAgbWFyZ2luOiAwO1xyXG59XHJcblxyXG4vLyBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vL1xyXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxyXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxyXG4vLyBhbmQgRmlyZWZveC5cclxuLy8gQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cclxuLy9cclxuXHJcbmFydGljbGUsXHJcbmFzaWRlLFxyXG5kZXRhaWxzLFxyXG5maWdjYXB0aW9uLFxyXG5maWd1cmUsXHJcbmZvb3RlcixcclxuaGVhZGVyLFxyXG5oZ3JvdXAsXHJcbm1haW4sXHJcbm1lbnUsXHJcbm5hdixcclxuc2VjdGlvbixcclxuc3VtbWFyeSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi8vXHJcbi8vIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXHJcbi8vIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cclxuLy9cclxuXHJcbmF1ZGlvLFxyXG5jYW52YXMsXHJcbnByb2dyZXNzLFxyXG52aWRlbyB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXHJcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyAyXHJcbn1cclxuXHJcbi8vXHJcbi8vIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXHJcbi8vIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXHJcbi8vXHJcblxyXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgaGVpZ2h0OiAwO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXHJcbi8vIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cclxuLy9cclxuXHJcbltoaWRkZW5dLFxyXG50ZW1wbGF0ZSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLy8gTGlua3NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vXHJcbi8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxyXG4vL1xyXG5cclxuYSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cclxuLy8gYWN0aXZlL2hvdmVyIHN0YXRlLlxyXG4vL1xyXG5cclxuYTphY3RpdmUsXHJcbmE6aG92ZXIge1xyXG4gIG91dGxpbmU6IDA7XHJcbn1cclxuXHJcbi8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbi8vXHJcblxyXG5hYmJyW3RpdGxlXSB7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxyXG4vL1xyXG5cclxuYixcclxuc3Ryb25nIHtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxyXG4vL1xyXG5cclxuZGZuIHtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcclxuLy8gY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxyXG4vL1xyXG5cclxuaDEge1xyXG4gIGZvbnQtc2l6ZTogMmVtO1xyXG4gIG1hcmdpbjogMC42N2VtIDA7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXHJcbi8vXHJcblxyXG5tYXJrIHtcclxuICBiYWNrZ3JvdW5kOiAjZmYwO1xyXG4gIGNvbG9yOiAjMDAwO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cclxuLy9cclxuXHJcbnNtYWxsIHtcclxuICBmb250LXNpemU6IDgwJTtcclxufVxyXG5cclxuLy9cclxuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxyXG4vL1xyXG5cclxuc3ViLFxyXG5zdXAge1xyXG4gIGZvbnQtc2l6ZTogNzUlO1xyXG4gIGxpbmUtaGVpZ2h0OiAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbn1cclxuXHJcbnN1cCB7XHJcbiAgdG9wOiAtMC41ZW07XHJcbn1cclxuXHJcbnN1YiB7XHJcbiAgYm90dG9tOiAtMC4yNWVtO1xyXG59XHJcblxyXG4vLyBFbWJlZGRlZCBjb250ZW50XHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vL1xyXG4vLyBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cclxuLy9cclxuXHJcbmltZyB7XHJcbiAgYm9yZGVyOiAwO1xyXG59XHJcblxyXG4vL1xyXG4vLyBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cclxuLy9cclxuXHJcbnN2Zzpub3QoOnJvb3QpIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vLyBHcm91cGluZyBjb250ZW50XHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cclxuLy9cclxuXHJcbmZpZ3VyZSB7XHJcbiAgbWFyZ2luOiAxZW0gNDBweDtcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxyXG4vL1xyXG5cclxuaHIge1xyXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG4gIGhlaWdodDogMDtcclxufVxyXG5cclxuLy9cclxuLy8gQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXHJcbi8vXHJcblxyXG5wcmUge1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXHJcbi8vXHJcblxyXG5jb2RlLFxyXG5rYmQsXHJcbnByZSxcclxuc2FtcCB7XHJcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xyXG4gIGZvbnQtc2l6ZTogMWVtO1xyXG59XHJcblxyXG4vLyBGb3Jtc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy9cclxuLy8gS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcclxuLy8gc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxyXG4vL1xyXG5cclxuLy9cclxuLy8gMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxyXG4vLyAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cclxuLy8gMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cclxuLy8gMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbi8vXHJcblxyXG5idXR0b24sXHJcbmlucHV0LFxyXG5vcHRncm91cCxcclxuc2VsZWN0LFxyXG50ZXh0YXJlYSB7XHJcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDFcclxuICBmb250OiBpbmhlcml0OyAvLyAyXHJcbiAgbWFyZ2luOiAwOyAvLyAzXHJcbn1cclxuXHJcbi8vXHJcbi8vIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxyXG4vL1xyXG5cclxuYnV0dG9uIHtcclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxufVxyXG5cclxuLy9cclxuLy8gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxyXG4vLyBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxyXG4vLyBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxyXG4vLyBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXHJcbi8vXHJcblxyXG5idXR0b24sXHJcbnNlbGVjdCB7XHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbn1cclxuXHJcbi8vXHJcbi8vIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXHJcbi8vICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxyXG4vLyAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXHJcbi8vIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXHJcbi8vICAgIGBpbnB1dGAgYW5kIG90aGVycy5cclxuLy9cclxuXHJcbmJ1dHRvbixcclxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXHJcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcclxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcclxuICBjdXJzb3I6IHBvaW50ZXI7IC8vIDNcclxufVxyXG5cclxuLy9cclxuLy8gUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cclxuLy9cclxuXHJcbmJ1dHRvbltkaXNhYmxlZF0sXHJcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcclxuICBjdXJzb3I6IGRlZmF1bHQ7XHJcbn1cclxuXHJcbi8vXHJcbi8vIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cclxuLy9cclxuXHJcbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcclxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xyXG4gIGJvcmRlcjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4vL1xyXG4vLyBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXHJcbi8vIHRoZSBVQSBzdHlsZXNoZWV0LlxyXG4vL1xyXG5cclxuaW5wdXQge1xyXG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cclxuLy8gRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cclxuLy9cclxuLy8gMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cclxuLy8gMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cclxuLy9cclxuXHJcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXHJcbiAgcGFkZGluZzogMDsgLy8gMlxyXG59XHJcblxyXG4vL1xyXG4vLyBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxyXG4vLyBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxyXG4vLyBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXHJcbi8vXHJcblxyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi8vXHJcbi8vIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxyXG4vLyAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxyXG4vL1xyXG5cclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcclxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8yXHJcbn1cclxuXHJcbi8vXHJcbi8vIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxyXG4vLyBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXHJcbi8vIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cclxuLy9cclxuXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxufVxyXG5cclxuLy9cclxuLy8gRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxyXG4vL1xyXG5cclxuZmllbGRzZXQge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XHJcbiAgbWFyZ2luOiAwIDJweDtcclxuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XHJcbn1cclxuXHJcbi8vXHJcbi8vIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cclxuLy8gMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxyXG4vL1xyXG5cclxubGVnZW5kIHtcclxuICBib3JkZXI6IDA7IC8vIDFcclxuICBwYWRkaW5nOiAwOyAvLyAyXHJcbn1cclxuXHJcbi8vXHJcbi8vIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXHJcbi8vXHJcblxyXG50ZXh0YXJlYSB7XHJcbiAgb3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbi8vXHJcbi8vIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cclxuLy8gTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXHJcbi8vXHJcblxyXG5vcHRncm91cCB7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi8vIFRhYmxlc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy9cclxuLy8gUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxyXG4vL1xyXG5cclxudGFibGUge1xyXG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XHJcbn1cclxuXHJcbnRkLFxyXG50aCB7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG4iLCIvKiEgU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9ibG9iL21hc3Rlci9zcmMvY3NzL21haW4uY3NzICovXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBQcmludCBzdHlsZXMuXHJcbi8vIElubGluZWQgdG8gYXZvaWQgdGhlIGFkZGl0aW9uYWwgSFRUUCByZXF1ZXN0OiBoNWJwLmNvbS9yXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG5AbWVkaWEgcHJpbnQge1xyXG4gICAgKixcclxuICAgICo6YmVmb3JlLFxyXG4gICAgKjphZnRlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgYSxcclxuICAgIGE6dmlzaXRlZCB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICB9XHJcblxyXG4gICAgYVtocmVmXTphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XHJcbiAgICB9XHJcblxyXG4gICAgYWJiclt0aXRsZV06YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcclxuICAgIH1cclxuXHJcbiAgICAvLyBEb24ndCBzaG93IGxpbmtzIHRoYXQgYXJlIGZyYWdtZW50IGlkZW50aWZpZXJzLFxyXG4gICAgLy8gb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxyXG4gICAgYVtocmVmXj1cIiNcIl06YWZ0ZXIsXHJcbiAgICBhW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICB9XHJcblxyXG4gICAgcHJlLFxyXG4gICAgYmxvY2txdW90ZSB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcclxuICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XHJcbiAgICB9XHJcblxyXG4gICAgdGhlYWQge1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgLy8gaDVicC5jb20vdFxyXG4gICAgfVxyXG5cclxuICAgIHRyLFxyXG4gICAgaW1nIHtcclxuICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XHJcbiAgICB9XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICBwLFxyXG4gICAgaDIsXHJcbiAgICBoMyB7XHJcbiAgICAgICAgb3JwaGFuczogMztcclxuICAgICAgICB3aWRvd3M6IDM7XHJcbiAgICB9XHJcblxyXG4gICAgaDIsXHJcbiAgICBoMyB7XHJcbiAgICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcclxuXHJcbiAgICAvLyBCb290c3RyYXAgY29tcG9uZW50c1xyXG4gICAgLm5hdmJhciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIC5idG4sXHJcbiAgICAuZHJvcHVwID4gLmJ0biB7XHJcbiAgICAgICAgPiAuY2FyZXQge1xyXG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxhYmVsIHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xyXG4gICAgfVxyXG5cclxuICAgIC50YWJsZSB7XHJcbiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICB0ZCxcclxuICAgICAgICB0aCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAudGFibGUtYm9yZGVyZWQge1xyXG4gICAgICAgIHRoLFxyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBlbmRcclxufVxyXG4iLCIvL1xyXG4vLyBHbHlwaGljb25zIGZvciBCb290c3RyYXBcclxuLy9cclxuLy8gU2luY2UgaWNvbnMgYXJlIGZvbnRzLCB0aGV5IGNhbiBiZSBwbGFjZWQgYW55d2hlcmUgdGV4dCBpcyBwbGFjZWQgYW5kIGFyZVxyXG4vLyB0aHVzIGF1dG9tYXRpY2FsbHkgc2l6ZWQgdG8gbWF0Y2ggdGhlIHN1cnJvdW5kaW5nIGNoaWxkLiBUbyB1c2UsIGNyZWF0ZSBhblxyXG4vLyBpbmxpbmUgZWxlbWVudCB3aXRoIHRoZSBhcHByb3ByaWF0ZSBjbGFzc2VzLCBsaWtlIHNvOlxyXG4vL1xyXG4vLyA8YSBocmVmPVwiI1wiPjxzcGFuIGNsYXNzPVwiZ2x5cGhpY29uIGdseXBoaWNvbi1zdGFyXCI+PC9zcGFuPiBTdGFyPC9hPlxyXG5cclxuQGF0LXJvb3Qge1xyXG4gIC8vIEltcG9ydCB0aGUgZm9udHNcclxuICBAZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xyXG4gICAgc3JjOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5lb3QnKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5lb3QnKSk7XHJcbiAgICBzcmM6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aCgnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LmVvdD8jaWVmaXgnKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5lb3Q/I2llZml4JykpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuICAgICAgICAgdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0ud29mZjInKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmMicpKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgIHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aCgnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LndvZmYnKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmJykpIGZvcm1hdCgnd29mZicpLFxyXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS50dGYnKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS50dGYnKSkgZm9ybWF0KCd0cnVldHlwZScpLFxyXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5zdmcjI3skaWNvbi1mb250LXN2Zy1pZH0nKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5zdmcjI3skaWNvbi1mb250LXN2Zy1pZH0nKSkgZm9ybWF0KCdzdmcnKTtcclxuICB9XHJcbn1cclxuXHJcbi8vIENhdGNoYWxsIGJhc2VjbGFzc1xyXG4uZ2x5cGhpY29uIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdG9wOiAxcHg7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbn1cclxuXHJcbi8vIEluZGl2aWR1YWwgaWNvbnNcclxuLmdseXBoaWNvbi1hc3RlcmlzayAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMmFcIjsgfSB9XHJcbi5nbHlwaGljb24tcGx1cyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDJiXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWV1cm8sXHJcbi5nbHlwaGljb24tZXVyICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIwYWNcIjsgfSB9XHJcbi5nbHlwaGljb24tbWludXMgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIyMTJcIjsgfSB9XHJcbi5nbHlwaGljb24tY2xvdWQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI2MDFcIjsgfSB9XHJcbi5nbHlwaGljb24tZW52ZWxvcGUgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI3MDlcIjsgfSB9XHJcbi5nbHlwaGljb24tcGVuY2lsICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI3MGZcIjsgfSB9XHJcbi5nbHlwaGljb24tZ2xhc3MgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDFcIjsgfSB9XHJcbi5nbHlwaGljb24tbXVzaWMgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDJcIjsgfSB9XHJcbi5nbHlwaGljb24tc2VhcmNoICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDNcIjsgfSB9XHJcbi5nbHlwaGljb24taGVhcnQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDVcIjsgfSB9XHJcbi5nbHlwaGljb24tc3RhciAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDZcIjsgfSB9XHJcbi5nbHlwaGljb24tc3Rhci1lbXB0eSAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDdcIjsgfSB9XHJcbi5nbHlwaGljb24tdXNlciAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDhcIjsgfSB9XHJcbi5nbHlwaGljb24tZmlsbSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDlcIjsgfSB9XHJcbi5nbHlwaGljb24tdGgtbGFyZ2UgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTBcIjsgfSB9XHJcbi5nbHlwaGljb24tdGggICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTFcIjsgfSB9XHJcbi5nbHlwaGljb24tdGgtbGlzdCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTJcIjsgfSB9XHJcbi5nbHlwaGljb24tb2sgICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTNcIjsgfSB9XHJcbi5nbHlwaGljb24tcmVtb3ZlICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTRcIjsgfSB9XHJcbi5nbHlwaGljb24tem9vbS1pbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTVcIjsgfSB9XHJcbi5nbHlwaGljb24tem9vbS1vdXQgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTZcIjsgfSB9XHJcbi5nbHlwaGljb24tb2ZmICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTdcIjsgfSB9XHJcbi5nbHlwaGljb24tc2lnbmFsICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMThcIjsgfSB9XHJcbi5nbHlwaGljb24tY29nICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTlcIjsgfSB9XHJcbi5nbHlwaGljb24tdHJhc2ggICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjBcIjsgfSB9XHJcbi5nbHlwaGljb24taG9tZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjFcIjsgfSB9XHJcbi5nbHlwaGljb24tZmlsZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjJcIjsgfSB9XHJcbi5nbHlwaGljb24tdGltZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjNcIjsgfSB9XHJcbi5nbHlwaGljb24tcm9hZCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjRcIjsgfSB9XHJcbi5nbHlwaGljb24tZG93bmxvYWQtYWx0ICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjVcIjsgfSB9XHJcbi5nbHlwaGljb24tZG93bmxvYWQgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjZcIjsgfSB9XHJcbi5nbHlwaGljb24tdXBsb2FkICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjdcIjsgfSB9XHJcbi5nbHlwaGljb24taW5ib3ggICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjhcIjsgfSB9XHJcbi5nbHlwaGljb24tcGxheS1jaXJjbGUgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjlcIjsgfSB9XHJcbi5nbHlwaGljb24tcmVwZWF0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzBcIjsgfSB9XHJcbi5nbHlwaGljb24tcmVmcmVzaCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzFcIjsgfSB9XHJcbi5nbHlwaGljb24tbGlzdC1hbHQgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzJcIjsgfSB9XHJcbi5nbHlwaGljb24tbG9jayAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzNcIjsgfSB9XHJcbi5nbHlwaGljb24tZmxhZyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzRcIjsgfSB9XHJcbi5nbHlwaGljb24taGVhZHBob25lcyAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzVcIjsgfSB9XHJcbi5nbHlwaGljb24tdm9sdW1lLW9mZiAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzZcIjsgfSB9XHJcbi5nbHlwaGljb24tdm9sdW1lLWRvd24gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzdcIjsgfSB9XHJcbi5nbHlwaGljb24tdm9sdW1lLXVwICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzhcIjsgfSB9XHJcbi5nbHlwaGljb24tcXJjb2RlICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzlcIjsgfSB9XHJcbi5nbHlwaGljb24tYmFyY29kZSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDBcIjsgfSB9XHJcbi5nbHlwaGljb24tdGFnICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDFcIjsgfSB9XHJcbi5nbHlwaGljb24tdGFncyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDJcIjsgfSB9XHJcbi5nbHlwaGljb24tYm9vayAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDNcIjsgfSB9XHJcbi5nbHlwaGljb24tYm9va21hcmsgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDRcIjsgfSB9XHJcbi5nbHlwaGljb24tcHJpbnQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDVcIjsgfSB9XHJcbi5nbHlwaGljb24tY2FtZXJhICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDZcIjsgfSB9XHJcbi5nbHlwaGljb24tZm9udCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDdcIjsgfSB9XHJcbi5nbHlwaGljb24tYm9sZCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDhcIjsgfSB9XHJcbi5nbHlwaGljb24taXRhbGljICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDlcIjsgfSB9XHJcbi5nbHlwaGljb24tdGV4dC1oZWlnaHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTBcIjsgfSB9XHJcbi5nbHlwaGljb24tdGV4dC13aWR0aCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTFcIjsgfSB9XHJcbi5nbHlwaGljb24tYWxpZ24tbGVmdCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTJcIjsgfSB9XHJcbi5nbHlwaGljb24tYWxpZ24tY2VudGVyICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTNcIjsgfSB9XHJcbi5nbHlwaGljb24tYWxpZ24tcmlnaHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTRcIjsgfSB9XHJcbi5nbHlwaGljb24tYWxpZ24tanVzdGlmeSAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTVcIjsgfSB9XHJcbi5nbHlwaGljb24tbGlzdCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTZcIjsgfSB9XHJcbi5nbHlwaGljb24taW5kZW50LWxlZnQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTdcIjsgfSB9XHJcbi5nbHlwaGljb24taW5kZW50LXJpZ2h0ICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNThcIjsgfSB9XHJcbi5nbHlwaGljb24tZmFjZXRpbWUtdmlkZW8gICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTlcIjsgfSB9XHJcbi5nbHlwaGljb24tcGljdHVyZSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjBcIjsgfSB9XHJcbi5nbHlwaGljb24tbWFwLW1hcmtlciAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjJcIjsgfSB9XHJcbi5nbHlwaGljb24tYWRqdXN0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjNcIjsgfSB9XHJcbi5nbHlwaGljb24tdGludCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjRcIjsgfSB9XHJcbi5nbHlwaGljb24tZWRpdCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjVcIjsgfSB9XHJcbi5nbHlwaGljb24tc2hhcmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjZcIjsgfSB9XHJcbi5nbHlwaGljb24tY2hlY2sgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjdcIjsgfSB9XHJcbi5nbHlwaGljb24tbW92ZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjhcIjsgfSB9XHJcbi5nbHlwaGljb24tc3RlcC1iYWNrd2FyZCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjlcIjsgfSB9XHJcbi5nbHlwaGljb24tZmFzdC1iYWNrd2FyZCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzBcIjsgfSB9XHJcbi5nbHlwaGljb24tYmFja3dhcmQgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzFcIjsgfSB9XHJcbi5nbHlwaGljb24tcGxheSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzJcIjsgfSB9XHJcbi5nbHlwaGljb24tcGF1c2UgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzNcIjsgfSB9XHJcbi5nbHlwaGljb24tc3RvcCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzRcIjsgfSB9XHJcbi5nbHlwaGljb24tZm9yd2FyZCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzVcIjsgfSB9XHJcbi5nbHlwaGljb24tZmFzdC1mb3J3YXJkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzZcIjsgfSB9XHJcbi5nbHlwaGljb24tc3RlcC1mb3J3YXJkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzdcIjsgfSB9XHJcbi5nbHlwaGljb24tZWplY3QgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzhcIjsgfSB9XHJcbi5nbHlwaGljb24tY2hldnJvbi1sZWZ0ICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzlcIjsgfSB9XHJcbi5nbHlwaGljb24tY2hldnJvbi1yaWdodCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODBcIjsgfSB9XHJcbi5nbHlwaGljb24tcGx1cy1zaWduICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODFcIjsgfSB9XHJcbi5nbHlwaGljb24tbWludXMtc2lnbiAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODJcIjsgfSB9XHJcbi5nbHlwaGljb24tcmVtb3ZlLXNpZ24gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODNcIjsgfSB9XHJcbi5nbHlwaGljb24tb2stc2lnbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODRcIjsgfSB9XHJcbi5nbHlwaGljb24tcXVlc3Rpb24tc2lnbiAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODVcIjsgfSB9XHJcbi5nbHlwaGljb24taW5mby1zaWduICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODZcIjsgfSB9XHJcbi5nbHlwaGljb24tc2NyZWVuc2hvdCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODdcIjsgfSB9XHJcbi5nbHlwaGljb24tcmVtb3ZlLWNpcmNsZSAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODhcIjsgfSB9XHJcbi5nbHlwaGljb24tb2stY2lyY2xlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODlcIjsgfSB9XHJcbi5nbHlwaGljb24tYmFuLWNpcmNsZSAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTBcIjsgfSB9XHJcbi5nbHlwaGljb24tYXJyb3ctbGVmdCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTFcIjsgfSB9XHJcbi5nbHlwaGljb24tYXJyb3ctcmlnaHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTJcIjsgfSB9XHJcbi5nbHlwaGljb24tYXJyb3ctdXAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTNcIjsgfSB9XHJcbi5nbHlwaGljb24tYXJyb3ctZG93biAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTRcIjsgfSB9XHJcbi5nbHlwaGljb24tc2hhcmUtYWx0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTVcIjsgfSB9XHJcbi5nbHlwaGljb24tcmVzaXplLWZ1bGwgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTZcIjsgfSB9XHJcbi5nbHlwaGljb24tcmVzaXplLXNtYWxsICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTdcIjsgfSB9XHJcbi5nbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDFcIjsgfSB9XHJcbi5nbHlwaGljb24tZ2lmdCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDJcIjsgfSB9XHJcbi5nbHlwaGljb24tbGVhZiAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDNcIjsgfSB9XHJcbi5nbHlwaGljb24tZmlyZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDRcIjsgfSB9XHJcbi5nbHlwaGljb24tZXllLW9wZW4gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDVcIjsgfSB9XHJcbi5nbHlwaGljb24tZXllLWNsb3NlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDZcIjsgfSB9XHJcbi5nbHlwaGljb24td2FybmluZy1zaWduICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDdcIjsgfSB9XHJcbi5nbHlwaGljb24tcGxhbmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDhcIjsgfSB9XHJcbi5nbHlwaGljb24tY2FsZW5kYXIgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDlcIjsgfSB9XHJcbi5nbHlwaGljb24tcmFuZG9tICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTBcIjsgfSB9XHJcbi5nbHlwaGljb24tY29tbWVudCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTFcIjsgfSB9XHJcbi5nbHlwaGljb24tbWFnbmV0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTJcIjsgfSB9XHJcbi5nbHlwaGljb24tY2hldnJvbi11cCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTNcIjsgfSB9XHJcbi5nbHlwaGljb24tY2hldnJvbi1kb3duICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTRcIjsgfSB9XHJcbi5nbHlwaGljb24tcmV0d2VldCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTVcIjsgfSB9XHJcbi5nbHlwaGljb24tc2hvcHBpbmctY2FydCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTZcIjsgfSB9XHJcbi5nbHlwaGljb24tZm9sZGVyLWNsb3NlICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTdcIjsgfSB9XHJcbi5nbHlwaGljb24tZm9sZGVyLW9wZW4gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMThcIjsgfSB9XHJcbi5nbHlwaGljb24tcmVzaXplLXZlcnRpY2FsICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTlcIjsgfSB9XHJcbi5nbHlwaGljb24tcmVzaXplLWhvcml6b250YWwgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjBcIjsgfSB9XHJcbi5nbHlwaGljb24taGRkICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjFcIjsgfSB9XHJcbi5nbHlwaGljb24tYnVsbGhvcm4gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjJcIjsgfSB9XHJcbi5nbHlwaGljb24tYmVsbCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjNcIjsgfSB9XHJcbi5nbHlwaGljb24tY2VydGlmaWNhdGUgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjRcIjsgfSB9XHJcbi5nbHlwaGljb24tdGh1bWJzLXVwICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjVcIjsgfSB9XHJcbi5nbHlwaGljb24tdGh1bWJzLWRvd24gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjZcIjsgfSB9XHJcbi5nbHlwaGljb24taGFuZC1yaWdodCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjdcIjsgfSB9XHJcbi5nbHlwaGljb24taGFuZC1sZWZ0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjhcIjsgfSB9XHJcbi5nbHlwaGljb24taGFuZC11cCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjlcIjsgfSB9XHJcbi5nbHlwaGljb24taGFuZC1kb3duICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzBcIjsgfSB9XHJcbi5nbHlwaGljb24tY2lyY2xlLWFycm93LXJpZ2h0ICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzFcIjsgfSB9XHJcbi5nbHlwaGljb24tY2lyY2xlLWFycm93LWxlZnQgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzJcIjsgfSB9XHJcbi5nbHlwaGljb24tY2lyY2xlLWFycm93LXVwICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzNcIjsgfSB9XHJcbi5nbHlwaGljb24tY2lyY2xlLWFycm93LWRvd24gICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzRcIjsgfSB9XHJcbi5nbHlwaGljb24tZ2xvYmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzVcIjsgfSB9XHJcbi5nbHlwaGljb24td3JlbmNoICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzZcIjsgfSB9XHJcbi5nbHlwaGljb24tdGFza3MgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzdcIjsgfSB9XHJcbi5nbHlwaGljb24tZmlsdGVyICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzhcIjsgfSB9XHJcbi5nbHlwaGljb24tYnJpZWZjYXNlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzlcIjsgfSB9XHJcbi5nbHlwaGljb24tZnVsbHNjcmVlbiAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDBcIjsgfSB9XHJcbi5nbHlwaGljb24tZGFzaGJvYXJkICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDFcIjsgfSB9XHJcbi5nbHlwaGljb24tcGFwZXJjbGlwICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDJcIjsgfSB9XHJcbi5nbHlwaGljb24taGVhcnQtZW1wdHkgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDNcIjsgfSB9XHJcbi5nbHlwaGljb24tbGluayAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDRcIjsgfSB9XHJcbi5nbHlwaGljb24tcGhvbmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDVcIjsgfSB9XHJcbi5nbHlwaGljb24tcHVzaHBpbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDZcIjsgfSB9XHJcbi5nbHlwaGljb24tdXNkICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDhcIjsgfSB9XHJcbi5nbHlwaGljb24tZ2JwICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDlcIjsgfSB9XHJcbi5nbHlwaGljb24tc29ydCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTBcIjsgfSB9XHJcbi5nbHlwaGljb24tc29ydC1ieS1hbHBoYWJldCAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTFcIjsgfSB9XHJcbi5nbHlwaGljb24tc29ydC1ieS1hbHBoYWJldC1hbHQgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTJcIjsgfSB9XHJcbi5nbHlwaGljb24tc29ydC1ieS1vcmRlciAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTNcIjsgfSB9XHJcbi5nbHlwaGljb24tc29ydC1ieS1vcmRlci1hbHQgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTRcIjsgfSB9XHJcbi5nbHlwaGljb24tc29ydC1ieS1hdHRyaWJ1dGVzICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTVcIjsgfSB9XHJcbi5nbHlwaGljb24tc29ydC1ieS1hdHRyaWJ1dGVzLWFsdCB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTZcIjsgfSB9XHJcbi5nbHlwaGljb24tdW5jaGVja2VkICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTdcIjsgfSB9XHJcbi5nbHlwaGljb24tZXhwYW5kICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNThcIjsgfSB9XHJcbi5nbHlwaGljb24tY29sbGFwc2UtZG93biAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTlcIjsgfSB9XHJcbi5nbHlwaGljb24tY29sbGFwc2UtdXAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjBcIjsgfSB9XHJcbi5nbHlwaGljb24tbG9nLWluICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjFcIjsgfSB9XHJcbi5nbHlwaGljb24tZmxhc2ggICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjJcIjsgfSB9XHJcbi5nbHlwaGljb24tbG9nLW91dCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjNcIjsgfSB9XHJcbi5nbHlwaGljb24tbmV3LXdpbmRvdyAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjRcIjsgfSB9XHJcbi5nbHlwaGljb24tcmVjb3JkICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjVcIjsgfSB9XHJcbi5nbHlwaGljb24tc2F2ZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjZcIjsgfSB9XHJcbi5nbHlwaGljb24tb3BlbiAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjdcIjsgfSB9XHJcbi5nbHlwaGljb24tc2F2ZWQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjhcIjsgfSB9XHJcbi5nbHlwaGljb24taW1wb3J0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjlcIjsgfSB9XHJcbi5nbHlwaGljb24tZXhwb3J0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzBcIjsgfSB9XHJcbi5nbHlwaGljb24tc2VuZCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzFcIjsgfSB9XHJcbi5nbHlwaGljb24tZmxvcHB5LWRpc2sgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzJcIjsgfSB9XHJcbi5nbHlwaGljb24tZmxvcHB5LXNhdmVkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzNcIjsgfSB9XHJcbi5nbHlwaGljb24tZmxvcHB5LXJlbW92ZSAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzRcIjsgfSB9XHJcbi5nbHlwaGljb24tZmxvcHB5LXNhdmUgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzVcIjsgfSB9XHJcbi5nbHlwaGljb24tZmxvcHB5LW9wZW4gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzZcIjsgfSB9XHJcbi5nbHlwaGljb24tY3JlZGl0LWNhcmQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzdcIjsgfSB9XHJcbi5nbHlwaGljb24tdHJhbnNmZXIgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzhcIjsgfSB9XHJcbi5nbHlwaGljb24tY3V0bGVyeSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzlcIjsgfSB9XHJcbi5nbHlwaGljb24taGVhZGVyICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODBcIjsgfSB9XHJcbi5nbHlwaGljb24tY29tcHJlc3NlZCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODFcIjsgfSB9XHJcbi5nbHlwaGljb24tZWFycGhvbmUgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODJcIjsgfSB9XHJcbi5nbHlwaGljb24tcGhvbmUtYWx0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODNcIjsgfSB9XHJcbi5nbHlwaGljb24tdG93ZXIgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODRcIjsgfSB9XHJcbi5nbHlwaGljb24tc3RhdHMgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODVcIjsgfSB9XHJcbi5nbHlwaGljb24tc2QtdmlkZW8gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODZcIjsgfSB9XHJcbi5nbHlwaGljb24taGQtdmlkZW8gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODdcIjsgfSB9XHJcbi5nbHlwaGljb24tc3VidGl0bGVzICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODhcIjsgfSB9XHJcbi5nbHlwaGljb24tc291bmQtc3RlcmVvICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODlcIjsgfSB9XHJcbi5nbHlwaGljb24tc291bmQtZG9sYnkgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTBcIjsgfSB9XHJcbi5nbHlwaGljb24tc291bmQtNS0xICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTFcIjsgfSB9XHJcbi5nbHlwaGljb24tc291bmQtNi0xICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTJcIjsgfSB9XHJcbi5nbHlwaGljb24tc291bmQtNy0xICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTNcIjsgfSB9XHJcbi5nbHlwaGljb24tY29weXJpZ2h0LW1hcmsgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTRcIjsgfSB9XHJcbi5nbHlwaGljb24tcmVnaXN0cmF0aW9uLW1hcmsgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTVcIjsgfSB9XHJcbi5nbHlwaGljb24tY2xvdWQtZG93bmxvYWQgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTdcIjsgfSB9XHJcbi5nbHlwaGljb24tY2xvdWQtdXBsb2FkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOThcIjsgfSB9XHJcbi5nbHlwaGljb24tdHJlZS1jb25pZmVyICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTlcIjsgfSB9XHJcbi5nbHlwaGljb24tdHJlZS1kZWNpZHVvdXMgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDBcIjsgfSB9XHJcbi5nbHlwaGljb24tY2QgICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDFcIjsgfSB9XHJcbi5nbHlwaGljb24tc2F2ZS1maWxlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDJcIjsgfSB9XHJcbi5nbHlwaGljb24tb3Blbi1maWxlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDNcIjsgfSB9XHJcbi5nbHlwaGljb24tbGV2ZWwtdXAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDRcIjsgfSB9XHJcbi5nbHlwaGljb24tY29weSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDVcIjsgfSB9XHJcbi5nbHlwaGljb24tcGFzdGUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDZcIjsgfSB9XHJcbi8vIFRoZSBmb2xsb3dpbmcgMiBHbHlwaGljb25zIGFyZSBvbWl0dGVkIGZvciB0aGUgdGltZSBiZWluZyBiZWNhdXNlXHJcbi8vIHRoZXkgY3VycmVudGx5IHVzZSBVbmljb2RlIGNvZGVwb2ludHMgdGhhdCBhcmUgb3V0c2lkZSB0aGVcclxuLy8gQmFzaWMgTXVsdGlsaW5ndWFsIFBsYW5lIChCTVApLiBPbGRlciBidWdneSB2ZXJzaW9ucyBvZiBXZWJLaXQgY2FuJ3QgaGFuZGxlXHJcbi8vIG5vbi1CTVAgY29kZXBvaW50cyBpbiBDU1Mgc3RyaW5nIGVzY2FwZXMsIGFuZCB0aHVzIGNhbid0IGRpc3BsYXkgdGhlc2UgdHdvIGljb25zLlxyXG4vLyBOb3RhYmx5LCB0aGUgYnVnIGFmZmVjdHMgc29tZSBvbGRlciB2ZXJzaW9ucyBvZiB0aGUgQW5kcm9pZCBCcm93c2VyLlxyXG4vLyBNb3JlIGluZm86IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTAxMDZcclxuLy8gLmdseXBoaWNvbi1kb29yICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMWY2YWFcIjsgfSB9XHJcbi8vIC5nbHlwaGljb24ta2V5ICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDFmNTExXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFsZXJ0ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWVxdWFsaXplciAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjEwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWtpbmcgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjExXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXF1ZWVuICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjEyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBhd24gICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjEzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJpc2hvcCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWtuaWdodCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJhYnktZm9ybXVsYSAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRlbnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNmZhXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJsYWNrYm9hcmQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJlZCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWFwcGxlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmOGZmXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWVyYXNlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjIxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWhvdXJnbGFzcyAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMzFiXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWxhbXAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjIzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWR1cGxpY2F0ZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXBpZ2d5LWJhbmsgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNjaXNzb3JzICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJpdGNvaW4gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWJ0YyAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXhidCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXllbiAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwwMGE1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWpweSAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwwMGE1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJ1YmxlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMGJkXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXJ1YiAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMGJkXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXNjYWxlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWljZS1sb2xseSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWljZS1sb2xseS10YXN0ZWQgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWVkdWNhdGlvbiAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9wdGlvbi1ob3Jpem9udGFsICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9wdGlvbi12ZXJ0aWNhbCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW1lbnUtaGFtYnVyZ2VyICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW1vZGFsLXdpbmRvdyAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9pbCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLWdyYWluICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXN1bmdsYXNzZXMgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRleHQtc2l6ZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRleHQtY29sb3IgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRleHQtYmFja2dyb3VuZCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi10b3AgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1ib3R0b20gICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1ob3Jpem9udGFseyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1sZWZ0ICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi12ZXJ0aWNhbCAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1yaWdodCAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRyaWFuZ2xlLXJpZ2h0ICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjUwXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRyaWFuZ2xlLWxlZnQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjUxXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRyaWFuZ2xlLWJvdHRvbSAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjUyXCI7IH0gfVxyXG4uZ2x5cGhpY29uLXRyaWFuZ2xlLXRvcCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjUzXCI7IH0gfVxyXG4uZ2x5cGhpY29uLWNvbnNvbGUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU0XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXN1cGVyc2NyaXB0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU1XCI7IH0gfVxyXG4uZ2x5cGhpY29uLXN1YnNjcmlwdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU2XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW1lbnUtbGVmdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU3XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW1lbnUtcmlnaHQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU4XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW1lbnUtZG93biAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU5XCI7IH0gfVxyXG4uZ2x5cGhpY29uLW1lbnUtdXAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjYwXCI7IH0gfVxyXG4iLCIvL1xyXG4vLyBTY2FmZm9sZGluZ1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIFJlc2V0IHRoZSBib3gtc2l6aW5nXHJcbi8vXHJcbi8vIEhlYWRzIHVwISBUaGlzIHJlc2V0IG1heSBjYXVzZSBjb25mbGljdHMgd2l0aCBzb21lIHRoaXJkLXBhcnR5IHdpZGdldHMuXHJcbi8vIEZvciByZWNvbW1lbmRhdGlvbnMgb24gcmVzb2x2aW5nIHN1Y2ggY29uZmxpY3RzLCBzZWVcclxuLy8gaHR0cDovL2dldGJvb3RzdHJhcC5jb20vZ2V0dGluZy1zdGFydGVkLyN0aGlyZC1ib3gtc2l6aW5nXHJcbioge1xyXG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbn1cclxuKjpiZWZvcmUsXHJcbio6YWZ0ZXIge1xyXG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbn1cclxuXHJcblxyXG4vLyBCb2R5IHJlc2V0XHJcblxyXG5odG1sIHtcclxuICBmb250LXNpemU6IDEwcHg7XHJcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xyXG59XHJcblxyXG5ib2R5IHtcclxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcclxufVxyXG5cclxuLy8gUmVzZXQgZm9udHMgZm9yIHJlbGV2YW50IGVsZW1lbnRzXHJcbmlucHV0LFxyXG5idXR0b24sXHJcbnNlbGVjdCxcclxudGV4dGFyZWEge1xyXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxufVxyXG5cclxuXHJcbi8vIExpbmtzXHJcblxyXG5hIHtcclxuICBjb2xvcjogJGxpbmstY29sb3I7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xyXG4gIH1cclxuXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBAaW5jbHVkZSB0YWItZm9jdXM7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRmlndXJlc1xyXG4vL1xyXG4vLyBXZSByZXNldCB0aGlzIGhlcmUgYmVjYXVzZSBwcmV2aW91c2x5IE5vcm1hbGl6ZSBoYWQgbm8gYGZpZ3VyZWAgbWFyZ2lucy4gVGhpc1xyXG4vLyBlbnN1cmVzIHdlIGRvbid0IGJyZWFrIGFueW9uZSdzIHVzZSBvZiB0aGUgZWxlbWVudC5cclxuXHJcbmZpZ3VyZSB7XHJcbiAgbWFyZ2luOiAwO1xyXG59XHJcblxyXG5cclxuLy8gSW1hZ2VzXHJcblxyXG5pbWcge1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbn1cclxuXHJcbi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxyXG4uaW1nLXJlc3BvbnNpdmUge1xyXG4gIEBpbmNsdWRlIGltZy1yZXNwb25zaXZlO1xyXG59XHJcblxyXG4vLyBSb3VuZGVkIGNvcm5lcnNcclxuLmltZy1yb3VuZGVkIHtcclxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcclxufVxyXG5cclxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xyXG4vL1xyXG4vLyBIZWFkcyB1cCEgVGhpcyBpcyBtaXhpbi1lZCBpbnRvIHRodW1ibmFpbHMubGVzcyBmb3IgYC50aHVtYm5haWxgLlxyXG4uaW1nLXRodW1ibmFpbCB7XHJcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICR0aHVtYm5haWwtYm9yZGVyO1xyXG4gIGJvcmRlci1yYWRpdXM6ICR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cztcclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMnMgZWFzZS1pbi1vdXQpO1xyXG5cclxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcclxuICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZShpbmxpbmUtYmxvY2spO1xyXG59XHJcblxyXG4vLyBQZXJmZWN0IGNpcmNsZVxyXG4uaW1nLWNpcmNsZSB7XHJcbiAgYm9yZGVyLXJhZGl1czogNTAlOyAvLyBzZXQgcmFkaXVzIGluIHBlcmNlbnRzXHJcbn1cclxuXHJcblxyXG4vLyBIb3Jpem9udGFsIHJ1bGVzXHJcblxyXG5ociB7XHJcbiAgbWFyZ2luLXRvcDogICAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBib3JkZXI6IDA7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRoci1ib3JkZXI7XHJcbn1cclxuXHJcblxyXG4vLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xyXG4vL1xyXG4vLyBTZWU6IGh0dHA6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cclxuXHJcbi5zci1vbmx5IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgd2lkdGg6IDFweDtcclxuICBoZWlnaHQ6IDFweDtcclxuICBtYXJnaW46IC0xcHg7XHJcbiAgcGFkZGluZzogMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XHJcbiAgYm9yZGVyOiAwO1xyXG59XHJcblxyXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cclxuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXHJcbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcclxuXHJcbi5zci1vbmx5LWZvY3VzYWJsZSB7XHJcbiAgJjphY3RpdmUsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgIGNsaXA6IGF1dG87XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gaU9TIFwiY2xpY2thYmxlIGVsZW1lbnRzXCIgZml4IGZvciByb2xlPVwiYnV0dG9uXCJcclxuLy9cclxuLy8gRml4ZXMgXCJjbGlja2FiaWxpdHlcIiBpc3N1ZSAoYW5kIG1vcmUgZ2VuZXJhbGx5LCB0aGUgZmlyaW5nIG9mIGV2ZW50cyBzdWNoIGFzIGZvY3VzIGFzIHdlbGwpXHJcbi8vIGZvciB0cmFkaXRpb25hbGx5IG5vbi1mb2N1c2FibGUgZWxlbWVudHMgd2l0aCByb2xlPVwiYnV0dG9uXCJcclxuLy8gc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXHJcblxyXG5bcm9sZT1cImJ1dHRvblwiXSB7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbiIsIi8vIFZlbmRvciBQcmVmaXhlc1xyXG4vL1xyXG4vLyBBbGwgdmVuZG9yIG1peGlucyBhcmUgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgZHVlIHRvIHRoZSBpbnRyb2R1Y3Rpb24gb2ZcclxuLy8gQXV0b3ByZWZpeGVyIGluIG91ciBHcnVudGZpbGUuIFRoZXkgd2lsbCBiZSByZW1vdmVkIGluIHY0LlxyXG5cclxuLy8gLSBBbmltYXRpb25zXHJcbi8vIC0gQmFja2ZhY2UgdmlzaWJpbGl0eVxyXG4vLyAtIEJveCBzaGFkb3dcclxuLy8gLSBCb3ggc2l6aW5nXHJcbi8vIC0gQ29udGVudCBjb2x1bW5zXHJcbi8vIC0gSHlwaGVuc1xyXG4vLyAtIFBsYWNlaG9sZGVyIHRleHRcclxuLy8gLSBUcmFuc2Zvcm1hdGlvbnNcclxuLy8gLSBUcmFuc2l0aW9uc1xyXG4vLyAtIFVzZXIgU2VsZWN0XHJcblxyXG5cclxuLy8gQW5pbWF0aW9uc1xyXG5AbWl4aW4gYW5pbWF0aW9uKCRhbmltYXRpb24pIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcclxuICAgICAgIC1vLWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcclxuICAgICAgICAgIGFuaW1hdGlvbjogJGFuaW1hdGlvbjtcclxufVxyXG5AbWl4aW4gYW5pbWF0aW9uLW5hbWUoJG5hbWUpIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcclxufVxyXG5AbWl4aW4gYW5pbWF0aW9uLWR1cmF0aW9uKCRkdXJhdGlvbikge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XHJcbiAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcclxufVxyXG5AbWl4aW4gYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcclxufVxyXG5AbWl4aW4gYW5pbWF0aW9uLWRlbGF5KCRkZWxheSkge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XHJcbiAgICAgICAgICBhbmltYXRpb24tZGVsYXk6ICRkZWxheTtcclxufVxyXG5AbWl4aW4gYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCgkaXRlcmF0aW9uLWNvdW50KSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xyXG4gICAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcclxufVxyXG5AbWl4aW4gYW5pbWF0aW9uLWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcclxufVxyXG5AbWl4aW4gYW5pbWF0aW9uLWZpbGwtbW9kZSgkZmlsbC1tb2RlKSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcclxufVxyXG5cclxuLy8gQmFja2ZhY2UgdmlzaWJpbGl0eVxyXG4vLyBQcmV2ZW50IGJyb3dzZXJzIGZyb20gZmxpY2tlcmluZyB3aGVuIHVzaW5nIENTUyAzRCB0cmFuc2Zvcm1zLlxyXG4vLyBEZWZhdWx0IHZhbHVlIGlzIGB2aXNpYmxlYCwgYnV0IGNhbiBiZSBjaGFuZ2VkIHRvIGBoaWRkZW5gXHJcblxyXG5AbWl4aW4gYmFja2ZhY2UtdmlzaWJpbGl0eSgkdmlzaWJpbGl0eSl7XHJcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcclxuICAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xyXG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XHJcbn1cclxuXHJcbi8vIERyb3Agc2hhZG93c1xyXG4vL1xyXG4vLyBOb3RlOiBEZXByZWNhdGVkIGAuYm94LXNoYWRvdygpYCBhcyBvZiB2My4xLjAgc2luY2UgYWxsIG9mIEJvb3RzdHJhcCdzXHJcbi8vIHN1cHBvcnRlZCBicm93c2VycyB0aGF0IGhhdmUgYm94IHNoYWRvdyBjYXBhYmlsaXRpZXMgbm93IHN1cHBvcnQgaXQuXHJcblxyXG5AbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XHJcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkc2hhZG93OyAvLyBpT1MgPDQuMyAmIEFuZHJvaWQgPDQuMVxyXG4gICAgICAgICAgYm94LXNoYWRvdzogJHNoYWRvdztcclxufVxyXG5cclxuLy8gQm94IHNpemluZ1xyXG5AbWl4aW4gYm94LXNpemluZygkYm94bW9kZWwpIHtcclxuICAtd2Via2l0LWJveC1zaXppbmc6ICRib3htb2RlbDtcclxuICAgICAtbW96LWJveC1zaXppbmc6ICRib3htb2RlbDtcclxuICAgICAgICAgIGJveC1zaXppbmc6ICRib3htb2RlbDtcclxufVxyXG5cclxuLy8gQ1NTMyBDb250ZW50IENvbHVtbnNcclxuQG1peGluIGNvbnRlbnQtY29sdW1ucygkY29sdW1uLWNvdW50LCAkY29sdW1uLWdhcDogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XHJcbiAgLXdlYmtpdC1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XHJcbiAgICAgLW1vei1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XHJcbiAgICAgICAgICBjb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XHJcbiAgLXdlYmtpdC1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcclxuICAgICAtbW96LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xyXG4gICAgICAgICAgY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XHJcbn1cclxuXHJcbi8vIE9wdGlvbmFsIGh5cGhlbmF0aW9uXHJcbkBtaXhpbiBoeXBoZW5zKCRtb2RlOiBhdXRvKSB7XHJcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xyXG4gIC13ZWJraXQtaHlwaGVuczogJG1vZGU7XHJcbiAgICAgLW1vei1oeXBoZW5zOiAkbW9kZTtcclxuICAgICAgLW1zLWh5cGhlbnM6ICRtb2RlOyAvLyBJRTEwK1xyXG4gICAgICAgLW8taHlwaGVuczogJG1vZGU7XHJcbiAgICAgICAgICBoeXBoZW5zOiAkbW9kZTtcclxufVxyXG5cclxuLy8gUGxhY2Vob2xkZXIgdGV4dFxyXG5AbWl4aW4gcGxhY2Vob2xkZXIoJGNvbG9yOiAkaW5wdXQtY29sb3ItcGxhY2Vob2xkZXIpIHtcclxuICAvLyBGaXJlZm94XHJcbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgb3BhY2l0eTogMTsgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjZcclxuICB9XHJcbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogJGNvbG9yOyB9IC8vIEludGVybmV0IEV4cGxvcmVyIDEwK1xyXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxyXG59XHJcblxyXG4vLyBUcmFuc2Zvcm1hdGlvbnNcclxuQG1peGluIHNjYWxlKCRyYXRpby4uLikge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pOyAvLyBJRTkgb25seVxyXG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xyXG59XHJcblxyXG5AbWl4aW4gc2NhbGVYKCRyYXRpbykge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7IC8vIElFOSBvbmx5XHJcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcclxufVxyXG5AbWl4aW4gc2NhbGVZKCRyYXRpbykge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7IC8vIElFOSBvbmx5XHJcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcclxufVxyXG5AbWl4aW4gc2tldygkeCwgJHkpIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvNDg4NTsgSUU5K1xyXG4gICAgICAgLW8tdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xyXG59XHJcbkBtaXhpbiB0cmFuc2xhdGUoJHgsICR5KSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTsgLy8gSUU5IG9ubHlcclxuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xyXG59XHJcbkBtaXhpbiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcclxufVxyXG5AbWl4aW4gcm90YXRlKCRkZWdyZWVzKSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XHJcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XHJcbn1cclxuQG1peGluIHJvdGF0ZVgoJGRlZ3JlZXMpIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxyXG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XHJcbn1cclxuQG1peGluIHJvdGF0ZVkoJGRlZ3JlZXMpIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxyXG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XHJcbn1cclxuQG1peGluIHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkge1xyXG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcclxuICAgICAtbW96LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XHJcbiAgICAgICAgICBwZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xyXG59XHJcbkBtaXhpbiBwZXJzcGVjdGl2ZS1vcmlnaW4oJHBlcnNwZWN0aXZlKSB7XHJcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcclxuICAgICAtbW96LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xyXG4gICAgICAgICAgcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XHJcbn1cclxuQG1peGluIHRyYW5zZm9ybS1vcmlnaW4oJG9yaWdpbikge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcclxuICAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XHJcbiAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luOyAvLyBJRTkgb25seVxyXG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcclxufVxyXG5cclxuXHJcbi8vIFRyYW5zaXRpb25zXHJcblxyXG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcbiAgICAgICAtby10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxuICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xyXG59XHJcbkBtaXhpbiB0cmFuc2l0aW9uLXByb3BlcnR5KCR0cmFuc2l0aW9uLXByb3BlcnR5Li4uKSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcclxuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xyXG59XHJcbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCR0cmFuc2l0aW9uLWRlbGF5KSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcclxuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xyXG59XHJcbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0cmFuc2l0aW9uLWR1cmF0aW9uLi4uKSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcclxuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xyXG59XHJcbkBtaXhpbiB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcclxuICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xyXG59XHJcbkBtaXhpbiB0cmFuc2l0aW9uLXRyYW5zZm9ybSgkdHJhbnNpdGlvbi4uLikge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gJHRyYW5zaXRpb247XHJcbiAgICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcclxuICAgICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcclxuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcclxufVxyXG5cclxuXHJcbi8vIFVzZXIgc2VsZWN0XHJcbi8vIEZvciBzZWxlY3RpbmcgdGV4dCBvbiB0aGUgcGFnZVxyXG5cclxuQG1peGluIHVzZXItc2VsZWN0KCRzZWxlY3QpIHtcclxuICAtd2Via2l0LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xyXG4gICAgIC1tb3otdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XHJcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogJHNlbGVjdDsgLy8gSUUxMCtcclxuICAgICAgICAgIHVzZXItc2VsZWN0OiAkc2VsZWN0O1xyXG59XHJcbiIsIiRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXI6IGZhbHNlICFkZWZhdWx0O1xyXG4vL1xyXG4vLyBWYXJpYWJsZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLz09IENvbG9yc1xyXG4vL1xyXG4vLyMjIEdyYXkgYW5kIGJyYW5kIGNvbG9ycyBmb3IgdXNlIGFjcm9zcyBCb290c3RyYXAuXHJcblxyXG4kZ3JheS1iYXNlOiAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcclxuJGdyYXktZGFya2VyOiAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMTMuNSUpICFkZWZhdWx0OyAvLyAjMjIyXHJcbiRncmF5LWRhcms6ICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDIwJSkgIWRlZmF1bHQ7ICAgLy8gIzMzM1xyXG4kZ3JheTogICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAzMy41JSkgIWRlZmF1bHQ7IC8vICM1NTVcclxuJGdyYXktbGlnaHQ6ICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgNDYuNyUpICFkZWZhdWx0OyAvLyAjNzc3XHJcbiRncmF5LWxpZ2h0ZXI6ICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDkzLjUlKSAhZGVmYXVsdDsgLy8gI2VlZVxyXG5cclxuJGJyYW5kLXByaW1hcnk6ICAgICAgICAgZGFya2VuKCM0MjhiY2EsIDYuNSUpICFkZWZhdWx0OyAvLyAjMzM3YWI3XHJcbiRicmFuZC1zdWNjZXNzOiAgICAgICAgICM1Y2I4NWMgIWRlZmF1bHQ7XHJcbiRicmFuZC1pbmZvOiAgICAgICAgICAgICM1YmMwZGUgIWRlZmF1bHQ7XHJcbiRicmFuZC13YXJuaW5nOiAgICAgICAgICNmMGFkNGUgIWRlZmF1bHQ7XHJcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgICNkOTUzNGYgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBTY2FmZm9sZGluZ1xyXG4vL1xyXG4vLyMjIFNldHRpbmdzIGZvciBzb21lIG9mIHRoZSBtb3N0IGdsb2JhbCBzdHlsZXMuXHJcblxyXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIGA8Ym9keT5gLlxyXG4kYm9keS1iZzogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4vLyoqIEdsb2JhbCB0ZXh0IGNvbG9yIG9uIGA8Ym9keT5gLlxyXG4kdGV4dC1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xyXG5cclxuLy8qKiBHbG9iYWwgdGV4dHVhbCBsaW5rIGNvbG9yLlxyXG4kbGluay1jb2xvcjogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcclxuLy8qKiBMaW5rIGhvdmVyIGNvbG9yIHNldCB2aWEgYGRhcmtlbigpYCBmdW5jdGlvbi5cclxuJGxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xyXG4vLyoqIExpbmsgaG92ZXIgZGVjb3JhdGlvbi5cclxuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogdW5kZXJsaW5lICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gVHlwb2dyYXBoeVxyXG4vL1xyXG4vLyMjIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxyXG5cclxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XHJcbiRmb250LWZhbWlseS1zZXJpZjogICAgICAgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmICFkZWZhdWx0O1xyXG4vLyoqIERlZmF1bHQgbW9ub3NwYWNlIGZvbnRzIGZvciBgPGNvZGU+YCwgYDxrYmQ+YCwgYW5kIGA8cHJlPmAuXHJcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xyXG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xyXG5cclxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xyXG4kZm9udC1zaXplLWxhcmdlOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcclxuJGZvbnQtc2l6ZS1zbWFsbDogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XHJcblxyXG4kZm9udC1zaXplLWgxOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjYpKSAhZGVmYXVsdDsgLy8gfjM2cHhcclxuJGZvbnQtc2l6ZS1oMjogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi4xNSkpICFkZWZhdWx0OyAvLyB+MzBweFxyXG4kZm9udC1zaXplLWgzOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNykpICFkZWZhdWx0OyAvLyB+MjRweFxyXG4kZm9udC1zaXplLWg0OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcclxuJGZvbnQtc2l6ZS1oNTogICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XHJcbiRmb250LXNpemUtaDY6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxyXG5cclxuLy8qKiBVbml0LWxlc3MgYGxpbmUtaGVpZ2h0YCBmb3IgdXNlIGluIGNvbXBvbmVudHMgbGlrZSBidXR0b25zLlxyXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgIDEuNDI4NTcxNDI5ICFkZWZhdWx0OyAvLyAyMC8xNFxyXG4vLyoqIENvbXB1dGVkIFwibGluZS1oZWlnaHRcIiAoYGZvbnQtc2l6ZWAgKiBgbGluZS1oZWlnaHRgKSBmb3IgdXNlIHdpdGggYG1hcmdpbmAsIGBwYWRkaW5nYCwgZXRjLlxyXG4kbGluZS1oZWlnaHQtY29tcHV0ZWQ6ICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSkpICFkZWZhdWx0OyAvLyB+MjBweFxyXG5cclxuLy8qKiBCeSBkZWZhdWx0LCB0aGlzIGluaGVyaXRzIGZyb20gdGhlIGA8Ym9keT5gLlxyXG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgIGluaGVyaXQgIWRlZmF1bHQ7XHJcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgNTAwICFkZWZhdWx0O1xyXG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgIDEuMSAhZGVmYXVsdDtcclxuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gSWNvbm9ncmFwaHlcclxuLy9cclxuLy8jIyBTcGVjaWZ5IGN1c3RvbSBsb2NhdGlvbiBhbmQgZmlsZW5hbWUgb2YgdGhlIGluY2x1ZGVkIEdseXBoaWNvbnMgaWNvbiBmb250LiBVc2VmdWwgZm9yIHRob3NlIGluY2x1ZGluZyBCb290c3RyYXAgdmlhIEJvd2VyLlxyXG5cclxuLy8qKiBMb2FkIGZvbnRzIGZyb20gdGhpcyBkaXJlY3RvcnkuXHJcblxyXG4vLyBbY29udmVydGVyXSBJZiAkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyIGlmIHVzZWQsIHByb3ZpZGUgcGF0aCByZWxhdGl2ZSB0byB0aGUgYXNzZXRzIGxvYWQgcGF0aC5cclxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBiZWNhdXNlIHNvbWUgYXNzZXQgaGVscGVycywgc3VjaCBhcyBTcHJvY2tldHMsIGRvIG5vdCB3b3JrIHdpdGggZmlsZS1yZWxhdGl2ZSBwYXRocy5cclxuJGljb24tZm9udC1wYXRoOiBpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCBcImJvb3RzdHJhcC9cIiwgXCIuLi9mb250cy9ib290c3RyYXAvXCIpICFkZWZhdWx0O1xyXG5cclxuLy8qKiBGaWxlIG5hbWUgZm9yIGFsbCBmb250IGZpbGVzLlxyXG4kaWNvbi1mb250LW5hbWU6ICAgICAgICAgIFwiZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhclwiICFkZWZhdWx0O1xyXG4vLyoqIEVsZW1lbnQgSUQgd2l0aGluIFNWRyBpY29uIGZpbGUuXHJcbiRpY29uLWZvbnQtc3ZnLWlkOiAgICAgICAgXCJnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXJcIiAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IENvbXBvbmVudHNcclxuLy9cclxuLy8jIyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuIFZhbHVlcyBiYXNlZCBvbiAxNHB4IHRleHQgYW5kIDEuNDI4IGxpbmUtaGVpZ2h0ICh+MjBweCB0byBzdGFydCkuXHJcblxyXG4kcGFkZGluZy1iYXNlLXZlcnRpY2FsOiAgICAgNnB4ICFkZWZhdWx0O1xyXG4kcGFkZGluZy1iYXNlLWhvcml6b250YWw6ICAgMTJweCAhZGVmYXVsdDtcclxuXHJcbiRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOiAgICAxMHB4ICFkZWZhdWx0O1xyXG4kcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOiAgMTZweCAhZGVmYXVsdDtcclxuXHJcbiRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsOiAgICA1cHggIWRlZmF1bHQ7XHJcbiRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw6ICAxMHB4ICFkZWZhdWx0O1xyXG5cclxuJHBhZGRpbmcteHMtdmVydGljYWw6ICAgICAgIDFweCAhZGVmYXVsdDtcclxuJHBhZGRpbmcteHMtaG9yaXpvbnRhbDogICAgIDVweCAhZGVmYXVsdDtcclxuXHJcbiRsaW5lLWhlaWdodC1sYXJnZTogICAgICAgICAxLjMzMzMzMzMgIWRlZmF1bHQ7IC8vIGV4dHJhIGRlY2ltYWxzIGZvciBXaW4gOC4xIENocm9tZVxyXG4kbGluZS1oZWlnaHQtc21hbGw6ICAgICAgICAgMS41ICFkZWZhdWx0O1xyXG5cclxuJGJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgIDRweCAhZGVmYXVsdDtcclxuJGJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgIDZweCAhZGVmYXVsdDtcclxuJGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgIDNweCAhZGVmYXVsdDtcclxuXHJcbi8vKiogR2xvYmFsIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cclxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICNmZmYgIWRlZmF1bHQ7XHJcbi8vKiogR2xvYmFsIGJhY2tncm91bmQgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxyXG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIFdpZHRoIG9mIHRoZSBgYm9yZGVyYCBmb3IgZ2VuZXJhdGluZyBjYXJldHMgdGhhdCBpbmRpY2F0b3IgZHJvcGRvd25zLlxyXG4kY2FyZXQtd2lkdGgtYmFzZTogICAgICAgICAgNHB4ICFkZWZhdWx0O1xyXG4vLyoqIENhcmV0cyBpbmNyZWFzZSBzbGlnaHRseSBpbiBzaXplIGZvciBsYXJnZXIgY29tcG9uZW50cy5cclxuJGNhcmV0LXdpZHRoLWxhcmdlOiAgICAgICAgIDVweCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IFRhYmxlc1xyXG4vL1xyXG4vLyMjIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cclxuXHJcbi8vKiogUGFkZGluZyBmb3IgYDx0aD5gcyBhbmQgYDx0ZD5gcy5cclxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgICA4cHggIWRlZmF1bHQ7XHJcbi8vKiogUGFkZGluZyBmb3IgY2VsbHMgaW4gYC50YWJsZS1jb25kZW5zZWRgLlxyXG4kdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZzogIDVweCAhZGVmYXVsdDtcclxuXHJcbi8vKiogRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGFsbCB0YWJsZXMuXHJcbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLXN0cmlwZWRgLlxyXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgICNmOWY5ZjkgIWRlZmF1bHQ7XHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLWhvdmVyYC5cclxuJHRhYmxlLWJnLWhvdmVyOiAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xyXG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlciAhZGVmYXVsdDtcclxuXHJcbi8vKiogQm9yZGVyIGNvbG9yIGZvciB0YWJsZSBhbmQgY2VsbCBib3JkZXJzLlxyXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBCdXR0b25zXHJcbi8vXHJcbi8vIyMgRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQgYW5kIGJvcmRlciBjb2xvci5cclxuXHJcbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIG5vcm1hbCAhZGVmYXVsdDtcclxuXHJcbiRidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XHJcbiRidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRidG4tZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XHJcblxyXG4kYnRuLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kYnRuLXByaW1hcnktYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcclxuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tcHJpbWFyeS1iZywgNSUpICFkZWZhdWx0O1xyXG5cclxuJGJ0bi1zdWNjZXNzLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGJ0bi1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XHJcbiRidG4tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXN1Y2Nlc3MtYmcsIDUlKSAhZGVmYXVsdDtcclxuXHJcbiRidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xyXG4kYnRuLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1pbmZvLWJnLCA1JSkgIWRlZmF1bHQ7XHJcblxyXG4kYnRuLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kYnRuLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcclxuJGJ0bi13YXJuaW5nLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4td2FybmluZy1iZywgNSUpICFkZWZhdWx0O1xyXG5cclxuJGJ0bi1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcclxuJGJ0bi1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKCRidG4tZGFuZ2VyLWJnLCA1JSkgIWRlZmF1bHQ7XHJcblxyXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuXHJcbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcclxuJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcclxuJGJ0bi1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XHJcbiRidG4tYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gRm9ybXNcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxyXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4vLyoqIGA8aW5wdXQgZGlzYWJsZWQ+YCBiYWNrZ3JvdW5kIGNvbG9yXHJcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIFRleHQgY29sb3IgZm9yIGA8aW5wdXQ+YHNcclxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XHJcbi8vKiogYDxpbnB1dD5gIGJvcmRlciBjb2xvclxyXG4kaW5wdXQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xyXG5cclxuLy8gVE9ETzogUmVuYW1lIGAkaW5wdXQtYm9yZGVyLXJhZGl1c2AgdG8gYCRpbnB1dC1ib3JkZXItcmFkaXVzLWJhc2VgIGluIHY0XHJcbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xyXG4vLyBUaGlzIGhhcyBubyBlZmZlY3Qgb24gYDxzZWxlY3Q+YHMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cclxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcclxuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xyXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcclxuLy8qKiBTbWFsbCBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xyXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcclxuXHJcbi8vKiogQm9yZGVyIGNvbG9yIGZvciBpbnB1dHMgb24gZm9jdXNcclxuJGlucHV0LWJvcmRlci1mb2N1czogICAgICAgICAgICAgIzY2YWZlOSAhZGVmYXVsdDtcclxuXHJcbi8vKiogUGxhY2Vob2xkZXIgdGV4dCBjb2xvclxyXG4kaW5wdXQtY29sb3ItcGxhY2Vob2xkZXI6ICAgICAgICAjOTk5ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBoZWlnaHRcclxuJGlucHV0LWhlaWdodC1iYXNlOiAgICAgICAgICAgICAgKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcclxuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XHJcbiRpbnB1dC1oZWlnaHQtbGFyZ2U6ICAgICAgICAgICAgIChjZWlsKCRmb250LXNpemUtbGFyZ2UgKiAkbGluZS1oZWlnaHQtbGFyZ2UpICsgKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcclxuLy8qKiBTbWFsbCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XHJcbiRpbnB1dC1oZWlnaHQtc21hbGw6ICAgICAgICAgICAgIChmbG9vcigkZm9udC1zaXplLXNtYWxsICogJGxpbmUtaGVpZ2h0LXNtYWxsKSArICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIGAuZm9ybS1ncm91cGAgbWFyZ2luXHJcbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgIDE1cHggIWRlZmF1bHQ7XHJcblxyXG4kbGVnZW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xyXG4kbGVnZW5kLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0ZXh0dWFsIGlucHV0IGFkZG9uc1xyXG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcclxuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlciAhZGVmYXVsdDtcclxuXHJcbi8vKiogRGlzYWJsZWQgY3Vyc29yIGZvciBmb3JtIGNvbnRyb2xzIGFuZCBidXR0b25zLlxyXG4kY3Vyc29yLWRpc2FibGVkOiAgICAgICAgICAgICAgICBub3QtYWxsb3dlZCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IERyb3Bkb3duc1xyXG4vL1xyXG4vLyMjIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cclxuXHJcbi8vKiogQmFja2dyb3VuZCBmb3IgdGhlIGRyb3Bkb3duIG1lbnUuXHJcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbi8vKiogRHJvcGRvd24gbWVudSBgYm9yZGVyLWNvbG9yYC5cclxuJGRyb3Bkb3duLWJvcmRlcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMTUpICFkZWZhdWx0O1xyXG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAgKipmb3IgSUU4KiouXHJcbiRkcm9wZG93bi1mYWxsYmFjay1ib3JkZXI6ICAgICAgICNjY2MgIWRlZmF1bHQ7XHJcbi8vKiogRGl2aWRlciBjb2xvciBmb3IgYmV0d2VlbiBkcm9wZG93biBpdGVtcy5cclxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgI2U1ZTVlNSAhZGVmYXVsdDtcclxuXHJcbi8vKiogRHJvcGRvd24gbGluayB0ZXh0IGNvbG9yLlxyXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xyXG4vLyoqIEhvdmVyIGNvbG9yIGZvciBkcm9wZG93biBsaW5rcy5cclxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRncmF5LWRhcmssIDUlKSAhZGVmYXVsdDtcclxuLy8qKiBIb3ZlciBiYWNrZ3JvdW5kIGZvciBkcm9wZG93biBsaW5rcy5cclxuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcclxuXHJcbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSB0ZXh0IGNvbG9yLlxyXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcclxuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXHJcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xyXG5cclxuLy8qKiBEaXNhYmxlZCBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cclxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIFRleHQgY29sb3IgZm9yIGhlYWRlcnMgd2l0aGluIGRyb3Bkb3duIG1lbnVzLlxyXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuXHJcbi8vKiogRGVwcmVjYXRlZCBgJGRyb3Bkb3duLWNhcmV0LWNvbG9yYCBhcyBvZiB2My4xLjBcclxuJGRyb3Bkb3duLWNhcmV0LWNvbG9yOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLy0tIFotaW5kZXggbWFzdGVyIGxpc3RcclxuLy9cclxuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XHJcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cclxuLy9cclxuLy8gTm90ZTogVGhlc2UgdmFyaWFibGVzIGFyZSBub3QgZ2VuZXJhdGVkIGludG8gdGhlIEN1c3RvbWl6ZXIuXHJcblxyXG4kemluZGV4LW5hdmJhcjogICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xyXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAxMDAwICFkZWZhdWx0O1xyXG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xyXG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xyXG4kemluZGV4LW5hdmJhci1maXhlZDogICAgICAxMDMwICFkZWZhdWx0O1xyXG4kemluZGV4LW1vZGFsLWJhY2tncm91bmQ6ICAxMDQwICFkZWZhdWx0O1xyXG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gTWVkaWEgcXVlcmllcyBicmVha3BvaW50c1xyXG4vL1xyXG4vLyMjIERlZmluZSB0aGUgYnJlYWtwb2ludHMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXHJcblxyXG4vLyBFeHRyYSBzbWFsbCBzY3JlZW4gLyBwaG9uZVxyXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHNgIGFzIG9mIHYzLjAuMVxyXG4kc2NyZWVuLXhzOiAgICAgICAgICAgICAgICAgIDQ4MHB4ICFkZWZhdWx0O1xyXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHMtbWluYCBhcyBvZiB2My4yLjBcclxuJHNjcmVlbi14cy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXhzICFkZWZhdWx0O1xyXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tcGhvbmVgIGFzIG9mIHYzLjAuMVxyXG4kc2NyZWVuLXBob25lOiAgICAgICAgICAgICAgICRzY3JlZW4teHMtbWluICFkZWZhdWx0O1xyXG5cclxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XHJcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1zbWAgYXMgb2YgdjMuMC4xXHJcbiRzY3JlZW4tc206ICAgICAgICAgICAgICAgICAgNzY4cHggIWRlZmF1bHQ7XHJcbiRzY3JlZW4tc20tbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1zbSAhZGVmYXVsdDtcclxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXRhYmxldGAgYXMgb2YgdjMuMC4xXHJcbiRzY3JlZW4tdGFibGV0OiAgICAgICAgICAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XHJcblxyXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxyXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbWRgIGFzIG9mIHYzLjAuMVxyXG4kc2NyZWVuLW1kOiAgICAgICAgICAgICAgICAgIDk5MnB4ICFkZWZhdWx0O1xyXG4kc2NyZWVuLW1kLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbWQgIWRlZmF1bHQ7XHJcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1kZXNrdG9wYCBhcyBvZiB2My4wLjFcclxuJHNjcmVlbi1kZXNrdG9wOiAgICAgICAgICAgICAkc2NyZWVuLW1kLW1pbiAhZGVmYXVsdDtcclxuXHJcbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxyXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGdgIGFzIG9mIHYzLjAuMVxyXG4kc2NyZWVuLWxnOiAgICAgICAgICAgICAgICAgIDEyMDBweCAhZGVmYXVsdDtcclxuJHNjcmVlbi1sZy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLWxnICFkZWZhdWx0O1xyXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGctZGVza3RvcGAgYXMgb2YgdjMuMC4xXHJcbiRzY3JlZW4tbGctZGVza3RvcDogICAgICAgICAgJHNjcmVlbi1sZy1taW4gIWRlZmF1bHQ7XHJcblxyXG4vLyBTbyBtZWRpYSBxdWVyaWVzIGRvbid0IG92ZXJsYXAgd2hlbiByZXF1aXJlZCwgcHJvdmlkZSBhIG1heGltdW1cclxuJHNjcmVlbi14cy1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1zbS1taW4gLSAxKSAhZGVmYXVsdDtcclxuJHNjcmVlbi1zbS1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1tZC1taW4gLSAxKSAhZGVmYXVsdDtcclxuJHNjcmVlbi1tZC1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1sZy1taW4gLSAxKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IEdyaWQgc3lzdGVtXHJcbi8vXHJcbi8vIyMgRGVmaW5lIHlvdXIgY3VzdG9tIHJlc3BvbnNpdmUgZ3JpZC5cclxuXHJcbi8vKiogTnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQuXHJcbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcclxuLy8qKiBQYWRkaW5nIGJldHdlZW4gY29sdW1ucy4gR2V0cyBkaXZpZGVkIGluIGhhbGYgZm9yIHRoZSBsZWZ0IGFuZCByaWdodC5cclxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgIDMwcHggIWRlZmF1bHQ7XHJcbi8vIE5hdmJhciBjb2xsYXBzZVxyXG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVjb21lcyB1bmNvbGxhcHNlZC5cclxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludDogICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xyXG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVnaW5zIGNvbGxhcHNpbmcuXHJcbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4OiAoJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAtIDEpICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gQ29udGFpbmVyIHNpemVzXHJcbi8vXHJcbi8vIyMgRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cclxuXHJcbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxyXG4kY29udGFpbmVyLXRhYmxldDogICAgICAgICAgICAgKDcyMHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcclxuLy8qKiBGb3IgYCRzY3JlZW4tc20tbWluYCBhbmQgdXAuXHJcbiRjb250YWluZXItc206ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXRhYmxldCAhZGVmYXVsdDtcclxuXHJcbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXHJcbiRjb250YWluZXItZGVza3RvcDogICAgICAgICAgICAoOTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xyXG4vLyoqIEZvciBgJHNjcmVlbi1tZC1taW5gIGFuZCB1cC5cclxuJGNvbnRhaW5lci1tZDogICAgICAgICAgICAgICAgICRjb250YWluZXItZGVza3RvcCAhZGVmYXVsdDtcclxuXHJcbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxyXG4kY29udGFpbmVyLWxhcmdlLWRlc2t0b3A6ICAgICAgKDExNDBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XHJcbi8vKiogRm9yIGAkc2NyZWVuLWxnLW1pbmAgYW5kIHVwLlxyXG4kY29udGFpbmVyLWxnOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gTmF2YmFyXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vIEJhc2ljcyBvZiBhIG5hdmJhclxyXG4kbmF2YmFyLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XHJcbiRuYXZiYXItbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICFkZWZhdWx0O1xyXG4kbmF2YmFyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XHJcbiRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKSAhZGVmYXVsdDtcclxuJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAoKCRuYXZiYXItaGVpZ2h0IC0gJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKSAvIDIpICFkZWZhdWx0O1xyXG4kbmF2YmFyLWNvbGxhcHNlLW1heC1oZWlnaHQ6ICAgICAgIDM0MHB4ICFkZWZhdWx0O1xyXG5cclxuJG5hdmJhci1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAjNzc3ICFkZWZhdWx0O1xyXG4kbmF2YmFyLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICNmOGY4ZjggIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XHJcblxyXG4vLyBOYXZiYXIgbGlua3NcclxuJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAjMzMzICFkZWZhdWx0O1xyXG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xyXG4kbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xyXG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XHJcblxyXG4vLyBOYXZiYXIgYnJhbmQgbGFiZWxcclxuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yICFkZWZhdWx0O1xyXG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvciwgMTAlKSAhZGVmYXVsdDtcclxuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWJnOiAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xyXG5cclxuLy8gTmF2YmFyIHRvZ2dsZVxyXG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWhvdmVyLWJnOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcclxuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICM4ODggIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAjZGRkICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT09IEludmVydGVkIG5hdmJhclxyXG4vLyBSZXNldCBpbnZlcnRlZCBuYXZiYXIgYmFzaWNzXHJcbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcclxuJG5hdmJhci1pbnZlcnNlLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAjMjIyICFkZWZhdWx0O1xyXG4kbmF2YmFyLWludmVyc2UtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDEwJSkgIWRlZmF1bHQ7XHJcblxyXG4vLyBJbnZlcnRlZCBuYXZiYXIgbGlua3NcclxuJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWxpZ2h0LCAxNSUpICFkZWZhdWx0O1xyXG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XHJcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XHJcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcclxuJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAjNDQ0ICFkZWZhdWx0O1xyXG4kbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xyXG5cclxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGJyYW5kIGxhYmVsXHJcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3IgIWRlZmF1bHQ7XHJcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcclxuXHJcbi8vIEludmVydGVkIG5hdmJhciB0b2dnbGVcclxuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ob3Zlci1iZzogICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xyXG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWljb24tYmFyLWJnOiAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgIzMzMyAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IE5hdnNcclxuLy9cclxuLy8jI1xyXG5cclxuLy89PT0gU2hhcmVkIG5hdiBzdHlsZXNcclxuJG5hdi1saW5rLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XHJcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcclxuXHJcbiRuYXYtZGlzYWJsZWQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcbiRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcblxyXG4vLz09IFRhYnNcclxuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG5cclxuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG5cclxuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcclxuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcclxuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAjZGRkICFkZWZhdWx0O1xyXG5cclxuJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogICAgICRib2R5LWJnICFkZWZhdWx0O1xyXG5cclxuLy89PSBQaWxsc1xyXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XHJcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XHJcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBQYWdpbmF0aW9uXHJcbi8vXHJcbi8vIyNcclxuXHJcbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xyXG5cclxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcblxyXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XHJcblxyXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IFBhZ2VyXHJcbi8vXHJcbi8vIyNcclxuXHJcbiRwYWdlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJnICFkZWZhdWx0O1xyXG4kcGFnZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ib3JkZXIgIWRlZmF1bHQ7XHJcbiRwYWdlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XHJcblxyXG4kcGFnZXItaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ob3Zlci1iZyAhZGVmYXVsdDtcclxuXHJcbiRwYWdlci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcclxuJHBhZ2VyLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuJHBhZ2VyLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBKdW1ib3Ryb25cclxuLy9cclxuLy8jI1xyXG5cclxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcclxuJGp1bWJvdHJvbi1jb2xvcjogICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcclxuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcclxuJGp1bWJvdHJvbi1oZWFkaW5nLWNvbG9yOiAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcclxuJGp1bWJvdHJvbi1mb250LXNpemU6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS41KSkgIWRlZmF1bHQ7XHJcbiRqdW1ib3Ryb24taGVhZGluZy1mb250LXNpemU6ICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDQuNSkpICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xyXG4vL1xyXG4vLyMjIERlZmluZSBjb2xvcnMgZm9yIGZvcm0gZmVlZGJhY2sgc3RhdGVzIGFuZCwgYnkgZGVmYXVsdCwgYWxlcnRzLlxyXG5cclxuJHN0YXRlLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgICAgIzNjNzYzZCAhZGVmYXVsdDtcclxuJHN0YXRlLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgI2RmZjBkOCAhZGVmYXVsdDtcclxuJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXN1Y2Nlc3MtYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcclxuXHJcbiRzdGF0ZS1pbmZvLXRleHQ6ICAgICAgICAgICAgICAgICMzMTcwOGYgIWRlZmF1bHQ7XHJcbiRzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICNkOWVkZjcgIWRlZmF1bHQ7XHJcbiRzdGF0ZS1pbmZvLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1pbmZvLWJnLCAtMTApLCA3JSkgIWRlZmF1bHQ7XHJcblxyXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiICFkZWZhdWx0O1xyXG4kc3RhdGUtd2FybmluZy1iZzogICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xyXG4kc3RhdGUtd2FybmluZy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtd2FybmluZy1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xyXG5cclxuJHN0YXRlLWRhbmdlci10ZXh0OiAgICAgICAgICAgICAgI2E5NDQ0MiAhZGVmYXVsdDtcclxuJHN0YXRlLWRhbmdlci1iZzogICAgICAgICAgICAgICAgI2YyZGVkZSAhZGVmYXVsdDtcclxuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWRhbmdlci1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gVG9vbHRpcHNcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBUb29sdGlwIG1heCB3aWR0aFxyXG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcclxuLy8qKiBUb29sdGlwIHRleHQgY29sb3JcclxuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuLy8qKiBUb29sdGlwIGJhY2tncm91bmQgY29sb3JcclxuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcclxuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIFRvb2x0aXAgYXJyb3cgd2lkdGhcclxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xyXG4vLyoqIFRvb2x0aXAgYXJyb3cgY29sb3JcclxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBQb3BvdmVyc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIFBvcG92ZXIgYm9keSBiYWNrZ3JvdW5kIGNvbG9yXHJcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuLy8qKiBQb3BvdmVyIG1heGltdW0gd2lkdGhcclxuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcclxuLy8qKiBQb3BvdmVyIGJvcmRlciBjb2xvclxyXG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xyXG4vLyoqIFBvcG92ZXIgZmFsbGJhY2sgYm9yZGVyIGNvbG9yXHJcbiRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvcjogICAgICAgI2NjYyAhZGVmYXVsdDtcclxuXHJcbi8vKiogUG9wb3ZlciB0aXRsZSBiYWNrZ3JvdW5kIGNvbG9yXHJcbiRwb3BvdmVyLXRpdGxlLWJnOiAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIFBvcG92ZXIgYXJyb3cgd2lkdGhcclxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xyXG4vLyoqIFBvcG92ZXIgYXJyb3cgY29sb3JcclxuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcclxuXHJcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyB3aWR0aFxyXG4kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDogICAgICAgICAgICgkcG9wb3Zlci1hcnJvdy13aWR0aCArIDEpICFkZWZhdWx0O1xyXG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgY29sb3JcclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgICBmYWRlX2luKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgMC4wNSkgIWRlZmF1bHQ7XHJcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBmYWxsYmFjayBjb2xvclxyXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjogIGRhcmtlbigkcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3IsIDIwJSkgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBMYWJlbHNcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBEZWZhdWx0IGxhYmVsIGJhY2tncm91bmQgY29sb3JcclxuJGxhYmVsLWRlZmF1bHQtYmc6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcbi8vKiogUHJpbWFyeSBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXHJcbiRsYWJlbC1wcmltYXJ5LWJnOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xyXG4vLyoqIFN1Y2Nlc3MgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxyXG4kbGFiZWwtc3VjY2Vzcy1iZzogICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcclxuLy8qKiBJbmZvIGxhYmVsIGJhY2tncm91bmQgY29sb3JcclxuJGxhYmVsLWluZm8tYmc6ICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XHJcbi8vKiogV2FybmluZyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXHJcbiRsYWJlbC13YXJuaW5nLWJnOiAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xyXG4vLyoqIERhbmdlciBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXHJcbiRsYWJlbC1kYW5nZXItYmc6ICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XHJcblxyXG4vLyoqIERlZmF1bHQgbGFiZWwgdGV4dCBjb2xvclxyXG4kbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4vLyoqIERlZmF1bHQgdGV4dCBjb2xvciBvZiBhIGxpbmtlZCBsYWJlbFxyXG4kbGFiZWwtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gTW9kYWxzXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XHJcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XHJcblxyXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgdGl0bGVcclxuJG1vZGFsLXRpdGxlLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcclxuLy8qKiBNb2RhbCB0aXRsZSBsaW5lLWhlaWdodFxyXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcclxuXHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBjb250ZW50IGFyZWFcclxuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yXHJcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XHJcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3IgKipmb3IgSUU4KipcclxuJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBNb2RhbCBiYWNrZHJvcCBiYWNrZ3JvdW5kIGNvbG9yXHJcbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XHJcbi8vKiogTW9kYWwgYmFja2Ryb3Agb3BhY2l0eVxyXG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAuNSAhZGVmYXVsdDtcclxuLy8qKiBNb2RhbCBoZWFkZXIgYm9yZGVyIGNvbG9yXHJcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICNlNWU1ZTUgIWRlZmF1bHQ7XHJcbi8vKiogTW9kYWwgZm9vdGVyIGJvcmRlciBjb2xvclxyXG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcclxuXHJcbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgIDkwMHB4ICFkZWZhdWx0O1xyXG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICA2MDBweCAhZGVmYXVsdDtcclxuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBBbGVydHNcclxuLy9cclxuLy8jIyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cclxuXHJcbiRhbGVydC1wYWRkaW5nOiAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XHJcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XHJcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgIGJvbGQgIWRlZmF1bHQ7XHJcblxyXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcclxuJGFsZXJ0LXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcclxuJGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xyXG5cclxuJGFsZXJ0LWluZm8tYmc6ICAgICAgICAgICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XHJcbiRhbGVydC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XHJcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcclxuXHJcbiRhbGVydC13YXJuaW5nLWJnOiAgICAgICAgICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xyXG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xyXG4kYWxlcnQtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XHJcblxyXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xyXG4kYWxlcnQtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XHJcbiRhbGVydC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gUHJvZ3Jlc3MgYmFyc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIHdob2xlIHByb2dyZXNzIGNvbXBvbmVudFxyXG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xyXG4vLyoqIFByb2dyZXNzIGJhciB0ZXh0IGNvbG9yXHJcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbi8vKiogVmFyaWFibGUgZm9yIHNldHRpbmcgcm91bmRlZCBjb3JuZXJzIG9uIHByb2dyZXNzIGJhci5cclxuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcclxuXHJcbi8vKiogRGVmYXVsdCBwcm9ncmVzcyBiYXIgY29sb3JcclxuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XHJcbi8vKiogU3VjY2VzcyBwcm9ncmVzcyBiYXIgY29sb3JcclxuJHByb2dyZXNzLWJhci1zdWNjZXNzLWJnOiAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XHJcbi8vKiogV2FybmluZyBwcm9ncmVzcyBiYXIgY29sb3JcclxuJHByb2dyZXNzLWJhci13YXJuaW5nLWJnOiAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XHJcbi8vKiogRGFuZ2VyIHByb2dyZXNzIGJhciBjb2xvclxyXG4kcHJvZ3Jlc3MtYmFyLWRhbmdlci1iZzogICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xyXG4vLyoqIEluZm8gcHJvZ3Jlc3MgYmFyIGNvbG9yXHJcbiRwcm9ncmVzcy1iYXItaW5mby1iZzogICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gTGlzdCBncm91cFxyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb24gYC5saXN0LWdyb3VwLWl0ZW1gXHJcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuLy8qKiBgLmxpc3QtZ3JvdXAtaXRlbWAgYm9yZGVyIGNvbG9yXHJcbiRsaXN0LWdyb3VwLWJvcmRlcjogICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcclxuLy8qKiBMaXN0IGdyb3VwIGJvcmRlciByYWRpdXNcclxuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xyXG5cclxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHNpbmdsZSBsaXN0IGl0ZW1zIG9uIGhvdmVyXHJcbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcclxuLy8qKiBUZXh0IGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGl0ZW1zXHJcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xyXG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xyXG4vLyoqIEJvcmRlciBjb2xvciBvZiBhY3RpdmUgbGlzdCBlbGVtZW50c1xyXG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyOiAgICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcclxuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBhY3RpdmUgbGlzdCBpdGVtc1xyXG4kbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjogIGxpZ2h0ZW4oJGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCA0MCUpICFkZWZhdWx0O1xyXG5cclxuLy8qKiBUZXh0IGNvbG9yIG9mIGRpc2FibGVkIGxpc3QgaXRlbXNcclxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXHJcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XHJcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gZGlzYWJsZWQgbGlzdCBpdGVtc1xyXG4kbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcclxuXHJcbiRsaXN0LWdyb3VwLWxpbmstY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcclxuJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjogICAkbGlzdC1ncm91cC1saW5rLWNvbG9yICFkZWZhdWx0O1xyXG4kbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I6ICMzMzMgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBQYW5lbHNcclxuLy9cclxuLy8jI1xyXG5cclxuJHBhbmVsLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuJHBhbmVsLWJvZHktcGFkZGluZzogICAgICAgICAgMTVweCAhZGVmYXVsdDtcclxuJHBhbmVsLWhlYWRpbmctcGFkZGluZzogICAgICAgMTBweCAxNXB4ICFkZWZhdWx0O1xyXG4kcGFuZWwtZm9vdGVyLXBhZGRpbmc6ICAgICAgICAkcGFuZWwtaGVhZGluZy1wYWRkaW5nICFkZWZhdWx0O1xyXG4kcGFuZWwtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xyXG5cclxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGVsZW1lbnRzIHdpdGhpbiBwYW5lbHNcclxuJHBhbmVsLWlubmVyLWJvcmRlcjogICAgICAgICAgI2RkZCAhZGVmYXVsdDtcclxuJHBhbmVsLWZvb3Rlci1iZzogICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcclxuXHJcbiRwYW5lbC1kZWZhdWx0LXRleHQ6ICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XHJcbiRwYW5lbC1kZWZhdWx0LWJvcmRlcjogICAgICAgICNkZGQgIWRlZmF1bHQ7XHJcbiRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICNmNWY1ZjUgIWRlZmF1bHQ7XHJcblxyXG4kcGFuZWwtcHJpbWFyeS10ZXh0OiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kcGFuZWwtcHJpbWFyeS1ib3JkZXI6ICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcclxuJHBhbmVsLXByaW1hcnktaGVhZGluZy1iZzogICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XHJcblxyXG4kcGFuZWwtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xyXG4kcGFuZWwtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XHJcbiRwYW5lbC1zdWNjZXNzLWhlYWRpbmctYmc6ICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xyXG5cclxuJHBhbmVsLWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcclxuJHBhbmVsLWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xyXG4kcGFuZWwtaW5mby1oZWFkaW5nLWJnOiAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcclxuXHJcbiRwYW5lbC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XHJcbiRwYW5lbC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcclxuJHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZzogICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XHJcblxyXG4kcGFuZWwtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XHJcbiRwYW5lbC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyICFkZWZhdWx0O1xyXG4kcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmc6ICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gVGh1bWJuYWlsc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgaW1hZ2VcclxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgNHB4ICFkZWZhdWx0O1xyXG4vLyoqIFRodW1ibmFpbCBiYWNrZ3JvdW5kIGNvbG9yXHJcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xyXG4vLyoqIFRodW1ibmFpbCBib3JkZXIgY29sb3JcclxuJHRodW1ibmFpbC1ib3JkZXI6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcclxuLy8qKiBUaHVtYm5haWwgYm9yZGVyIHJhZGl1c1xyXG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xyXG5cclxuLy8qKiBDdXN0b20gdGV4dCBjb2xvciBmb3IgdGh1bWJuYWlsIGNhcHRpb25zXHJcbiR0aHVtYm5haWwtY2FwdGlvbi1jb2xvcjogICAgICR0ZXh0LWNvbG9yICFkZWZhdWx0O1xyXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgY2FwdGlvblxyXG4kdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZzogICA5cHggIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBXZWxsc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4kd2VsbC1iZzogICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xyXG4kd2VsbC1ib3JkZXI6ICAgICAgICAgICAgICAgICBkYXJrZW4oJHdlbGwtYmcsIDclKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IEJhZGdlc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4vLyoqIExpbmtlZCBiYWRnZSB0ZXh0IGNvbG9yIG9uIGhvdmVyXHJcbiRiYWRnZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRiYWRnZS1iZzogICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xyXG5cclxuLy8qKiBCYWRnZSB0ZXh0IGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xyXG4kYmFkZ2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcclxuLy8qKiBCYWRnZSBiYWNrZ3JvdW5kIGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xyXG4kYmFkZ2UtYWN0aXZlLWJnOiAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG5cclxuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcclxuJGJhZGdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgMSAhZGVmYXVsdDtcclxuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgMTBweCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLz09IEJyZWFkY3J1bWJzXHJcbi8vXHJcbi8vIyNcclxuXHJcbiRicmVhZGNydW1iLXBhZGRpbmctdmVydGljYWw6ICAgOHB4ICFkZWZhdWx0O1xyXG4kYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw6IDE1cHggIWRlZmF1bHQ7XHJcbi8vKiogQnJlYWRjcnVtYiBiYWNrZ3JvdW5kIGNvbG9yXHJcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcclxuLy8qKiBCcmVhZGNydW1iIHRleHQgY29sb3JcclxuJGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xyXG4vLyoqIFRleHQgY29sb3Igb2YgY3VycmVudCBwYWdlIGluIHRoZSBicmVhZGNydW1iXHJcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcbi8vKiogVGV4dHVhbCBzZXBhcmF0b3IgZm9yIGJldHdlZW4gYnJlYWRjcnVtYiBlbGVtZW50c1xyXG4kYnJlYWRjcnVtYi1zZXBhcmF0b3I6ICAgICAgICAgIFwiL1wiICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vPT0gQ2Fyb3VzZWxcclxuLy9cclxuLy8jI1xyXG5cclxuJGNhcm91c2VsLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKDAsMCwwLC42KSAhZGVmYXVsdDtcclxuXHJcbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XHJcbiRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xyXG5cclxuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG5cclxuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBDbG9zZVxyXG4vL1xyXG4vLyMjXHJcblxyXG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xyXG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xyXG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAwIDFweCAwICNmZmYgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBDb2RlXHJcbi8vXHJcbi8vIyNcclxuXHJcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICNjNzI1NGUgIWRlZmF1bHQ7XHJcbiRjb2RlLWJnOiAgICAgICAgICAgICAgICAgICAgICNmOWYyZjQgIWRlZmF1bHQ7XHJcblxyXG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xyXG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xyXG5cclxuJHByZS1iZzogICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcclxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcclxuJHByZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcclxuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgMzQwcHggIWRlZmF1bHQ7XHJcblxyXG5cclxuLy89PSBUeXBlXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vKiogSG9yaXpvbnRhbCBvZmZzZXQgZm9yIGZvcm1zIGFuZCBsaXN0cy5cclxuJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbDogMTgwcHggIWRlZmF1bHQ7XHJcbi8vKiogVGV4dCBtdXRlZCBjb2xvclxyXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuLy8qKiBBYmJyZXZpYXRpb25zIGFuZCBhY3JvbnltcyBib3JkZXIgY29sb3JcclxuJGFiYnItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcbi8vKiogSGVhZGluZ3Mgc21hbGwgY29sb3JcclxuJGhlYWRpbmdzLXNtYWxsLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcbi8vKiogQmxvY2txdW90ZSBzbWFsbCBjb2xvclxyXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcclxuLy8qKiBCbG9ja3F1b3RlIGZvbnQgc2l6ZVxyXG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XHJcbi8vKiogQmxvY2txdW90ZSBib3JkZXIgY29sb3JcclxuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcclxuLy8qKiBQYWdlIGhlYWRlciBib3JkZXIgY29sb3JcclxuJHBhZ2UtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcclxuLy8qKiBXaWR0aCBvZiBob3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3QgdGl0bGVzXHJcbiRkbC1ob3Jpem9udGFsLW9mZnNldDogICAgICAgICRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWwgIWRlZmF1bHQ7XHJcbi8vKiogSG9yaXpvbnRhbCBsaW5lIGNvbG9yLlxyXG4kaHItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xyXG4iLCIvLyBXZWJLaXQtc3R5bGUgZm9jdXNcclxuXHJcbkBtaXhpbiB0YWItZm9jdXMoKSB7XHJcbiAgLy8gRGVmYXVsdFxyXG4gIG91dGxpbmU6IHRoaW4gZG90dGVkO1xyXG4gIC8vIFdlYktpdFxyXG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcclxuICBvdXRsaW5lLW9mZnNldDogLTJweDtcclxufVxyXG4iLCIvLyBJbWFnZSBNaXhpbnNcclxuLy8gLSBSZXNwb25zaXZlIGltYWdlXHJcbi8vIC0gUmV0aW5hIGltYWdlXHJcblxyXG5cclxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxyXG4vL1xyXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxyXG5AbWl4aW4gaW1nLXJlc3BvbnNpdmUoJGRpc3BsYXk6IGJsb2NrKSB7XHJcbiAgZGlzcGxheTogJGRpc3BsYXk7XHJcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxyXG4gIGhlaWdodDogYXV0bzsgLy8gUGFydCAyOiBTY2FsZSB0aGUgaGVpZ2h0IGFjY29yZGluZyB0byB0aGUgd2lkdGgsIG90aGVyd2lzZSB5b3UgZ2V0IHN0cmV0Y2hpbmdcclxufVxyXG5cclxuXHJcbi8vIFJldGluYSBpbWFnZVxyXG4vL1xyXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuIE5vdGUgdGhhdCB0aGVcclxuLy8gc3BlbGxpbmcgb2YgYG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpb2AgaXMgaW50ZW50aW9uYWwuXHJcbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMXh9XCIpLCBcIiN7JGZpbGUtMXh9XCIpKTtcclxuXHJcbiAgQG1lZGlhXHJcbiAgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcclxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMi8xKSxcclxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXHJcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDE5MmRwaSksXHJcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDJkcHB4KSB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1pbWFnZS1wYXRoKFwiI3skZmlsZS0yeH1cIiksIFwiI3skZmlsZS0yeH1cIikpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gVHlwb2dyYXBoeVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEhlYWRpbmdzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXHJcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xyXG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XHJcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcclxuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xyXG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XHJcblxyXG4gIHNtYWxsLFxyXG4gIC5zbWFsbCB7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICBjb2xvcjogJGhlYWRpbmdzLXNtYWxsLWNvbG9yO1xyXG4gIH1cclxufVxyXG5cclxuaDEsIC5oMSxcclxuaDIsIC5oMixcclxuaDMsIC5oMyB7XHJcbiAgbWFyZ2luLXRvcDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcclxuXHJcbiAgc21hbGwsXHJcbiAgLnNtYWxsIHtcclxuICAgIGZvbnQtc2l6ZTogNjUlO1xyXG4gIH1cclxufVxyXG5oNCwgLmg0LFxyXG5oNSwgLmg1LFxyXG5oNiwgLmg2IHtcclxuICBtYXJnaW4tdG9wOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XHJcbiAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xyXG5cclxuICBzbWFsbCxcclxuICAuc21hbGwge1xyXG4gICAgZm9udC1zaXplOiA3NSU7XHJcbiAgfVxyXG59XHJcblxyXG5oMSwgLmgxIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgxOyB9XHJcbmgyLCAuaDIgeyBmb250LXNpemU6ICRmb250LXNpemUtaDI7IH1cclxuaDMsIC5oMyB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMzsgfVxyXG5oNCwgLmg0IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg0OyB9XHJcbmg1LCAuaDUgeyBmb250LXNpemU6ICRmb250LXNpemUtaDU7IH1cclxuaDYsIC5oNiB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNjsgfVxyXG5cclxuXHJcbi8vIEJvZHkgdGV4dFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5wIHtcclxuICBtYXJnaW46IDAgMCAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XHJcbn1cclxuXHJcbi5sZWFkIHtcclxuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgZm9udC1zaXplOiBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMS4xNSkpO1xyXG4gIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgbGluZS1oZWlnaHQ6IDEuNDtcclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgKiAxLjUpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEVtcGhhc2lzICYgbWlzY1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBFeDogKDEycHggc21hbGwgZm9udCAvIDE0cHggYmFzZSBmb250KSAqIDEwMCUgPSBhYm91dCA4NSVcclxuc21hbGwsXHJcbi5zbWFsbCB7XHJcbiAgZm9udC1zaXplOiBmbG9vcigoMTAwJSAqICRmb250LXNpemUtc21hbGwgLyAkZm9udC1zaXplLWJhc2UpKTtcclxufVxyXG5cclxubWFyayxcclxuLm1hcmsge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRzdGF0ZS13YXJuaW5nLWJnO1xyXG4gIHBhZGRpbmc6IC4yZW07XHJcbn1cclxuXHJcbi8vIEFsaWdubWVudFxyXG4udGV4dC1sZWZ0ICAgICAgICAgICB7IHRleHQtYWxpZ246IGxlZnQ7IH1cclxuLnRleHQtcmlnaHQgICAgICAgICAgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxyXG4udGV4dC1jZW50ZXIgICAgICAgICB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxyXG4udGV4dC1qdXN0aWZ5ICAgICAgICB7IHRleHQtYWxpZ246IGp1c3RpZnk7IH1cclxuLnRleHQtbm93cmFwICAgICAgICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XHJcblxyXG4vLyBUcmFuc2Zvcm1hdGlvblxyXG4udGV4dC1sb3dlcmNhc2UgICAgICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cclxuLnRleHQtdXBwZXJjYXNlICAgICAgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XHJcbi50ZXh0LWNhcGl0YWxpemUgICAgIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cclxuXHJcbi8vIENvbnRleHR1YWwgY29sb3JzXHJcbi50ZXh0LW11dGVkIHtcclxuICBjb2xvcjogJHRleHQtbXV0ZWQ7XHJcbn1cclxuXHJcbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtcHJpbWFyeScsICRicmFuZC1wcmltYXJ5KTtcclxuXHJcbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtc3VjY2VzcycsICRzdGF0ZS1zdWNjZXNzLXRleHQpO1xyXG5cclxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1pbmZvJywgJHN0YXRlLWluZm8tdGV4dCk7XHJcblxyXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXdhcm5pbmcnLCAkc3RhdGUtd2FybmluZy10ZXh0KTtcclxuXHJcbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtZGFuZ2VyJywgJHN0YXRlLWRhbmdlci10ZXh0KTtcclxuXHJcbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcclxuLy8gRm9yIG5vdyB3ZSdsbCBsZWF2ZSB0aGVzZSBhbG9uZ3NpZGUgdGhlIHRleHQgY2xhc3NlcyB1bnRpbCB2NCB3aGVuIHdlIGNhblxyXG4vLyBzYWZlbHkgc2hpZnQgdGhpbmdzIGFyb3VuZCAocGVyIFNlbVZlciBydWxlcykuXHJcbi5iZy1wcmltYXJ5IHtcclxuICAvLyBHaXZlbiB0aGUgY29udHJhc3QgaGVyZSwgdGhpcyBpcyB0aGUgb25seSBjbGFzcyB0byBoYXZlIGl0cyBjb2xvciBpbnZlcnRlZFxyXG4gIC8vIGF1dG9tYXRpY2FsbHkuXHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXByaW1hcnknLCAkYnJhbmQtcHJpbWFyeSk7XHJcblxyXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctc3VjY2VzcycsICRzdGF0ZS1zdWNjZXNzLWJnKTtcclxuXHJcbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1pbmZvJywgJHN0YXRlLWluZm8tYmcpO1xyXG5cclxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXdhcm5pbmcnLCAkc3RhdGUtd2FybmluZy1iZyk7XHJcblxyXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctZGFuZ2VyJywgJHN0YXRlLWRhbmdlci1iZyk7XHJcblxyXG5cclxuLy8gUGFnZSBoZWFkZXJcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLnBhZ2UtaGVhZGVyIHtcclxuICBwYWRkaW5nLWJvdHRvbTogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIDEpO1xyXG4gIG1hcmdpbjogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAqIDIpIDAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcGFnZS1oZWFkZXItYm9yZGVyLWNvbG9yO1xyXG59XHJcblxyXG5cclxuLy8gTGlzdHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gVW5vcmRlcmVkIGFuZCBPcmRlcmVkIGxpc3RzXHJcbnVsLFxyXG5vbCB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XHJcbiAgdWwsXHJcbiAgb2wge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcbn1cclxuXHJcbi8vIExpc3Qgb3B0aW9uc1xyXG5cclxuLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGZyb20gYC5saXN0LXVuc3R5bGVkYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XHJcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYXMgYEBtaXhpbiBsaXN0LXVuc3R5bGVkYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XHJcbi5saXN0LXVuc3R5bGVkIHtcclxuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xyXG59XHJcblxyXG5cclxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcclxuLmxpc3QtaW5saW5lIHtcclxuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xyXG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xyXG5cclxuICA+IGxpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBhZGRpbmctbGVmdDogNXB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xyXG4gIH1cclxufVxyXG5cclxuLy8gRGVzY3JpcHRpb24gTGlzdHNcclxuZGwge1xyXG4gIG1hcmdpbi10b3A6IDA7IC8vIFJlbW92ZSBicm93c2VyIGRlZmF1bHRcclxuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbn1cclxuZHQsXHJcbmRkIHtcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbn1cclxuZHQge1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcbmRkIHtcclxuICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcclxufVxyXG5cclxuLy8gSG9yaXpvbnRhbCBkZXNjcmlwdGlvbiBsaXN0c1xyXG4vL1xyXG4vLyBEZWZhdWx0cyB0byBiZWluZyBzdGFja2VkIHdpdGhvdXQgYW55IG9mIHRoZSBiZWxvdyBzdHlsZXMgYXBwbGllZCwgdW50aWwgdGhlXHJcbi8vIGdyaWQgYnJlYWtwb2ludCBpcyByZWFjaGVkIChkZWZhdWx0IG9mIH43NjhweCkuXHJcblxyXG4uZGwtaG9yaXpvbnRhbCB7XHJcbiAgZGQge1xyXG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7IC8vIENsZWFyIHRoZSBmbG9hdGVkIGBkdGAgaWYgYW4gZW1wdHkgYGRkYCBpcyBwcmVzZW50XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gICAgZHQge1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgd2lkdGg6ICgkZGwtaG9yaXpvbnRhbC1vZmZzZXQgLSAyMCk7XHJcbiAgICAgIGNsZWFyOiBsZWZ0O1xyXG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgQGluY2x1ZGUgdGV4dC1vdmVyZmxvdztcclxuICAgIH1cclxuICAgIGRkIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6ICRkbC1ob3Jpem9udGFsLW9mZnNldDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBNaXNjXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIEFiYnJldmlhdGlvbnMgYW5kIGFjcm9ueW1zXHJcbmFiYnJbdGl0bGVdLFxyXG4vLyBBZGQgZGF0YS0qIGF0dHJpYnV0ZSB0byBoZWxwIG91dCBvdXIgdG9vbHRpcCBwbHVnaW4sIHBlciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzUyNTdcclxuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7XHJcbiAgY3Vyc29yOiBoZWxwO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgJGFiYnItYm9yZGVyLWNvbG9yO1xyXG59XHJcbi5pbml0aWFsaXNtIHtcclxuICBmb250LXNpemU6IDkwJTtcclxuICBAZXh0ZW5kIC50ZXh0LXVwcGVyY2FzZTtcclxufVxyXG5cclxuLy8gQmxvY2txdW90ZXNcclxuYmxvY2txdW90ZSB7XHJcbiAgcGFkZGluZzogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBtYXJnaW46IDAgMCAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgZm9udC1zaXplOiAkYmxvY2txdW90ZS1mb250LXNpemU7XHJcbiAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAkYmxvY2txdW90ZS1ib3JkZXItY29sb3I7XHJcblxyXG4gIHAsXHJcbiAgdWwsXHJcbiAgb2wge1xyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIE5vdGU6IERlcHJlY2F0ZWQgc21hbGwgYW5kIC5zbWFsbCBhcyBvZiB2My4xLjBcclxuICAvLyBDb250ZXh0OiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjYwXHJcbiAgZm9vdGVyLFxyXG4gIHNtYWxsLFxyXG4gIC5zbWFsbCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtc2l6ZTogODAlOyAvLyBiYWNrIHRvIGRlZmF1bHQgZm9udC1zaXplXHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgICBjb2xvcjogJGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiAnXFwyMDE0IFxcMDBBMCc7IC8vIGVtIGRhc2gsIG5ic3BcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIE9wcG9zaXRlIGFsaWdubWVudCBvZiBibG9ja3F1b3RlXHJcbi8vXHJcbi8vIEhlYWRzIHVwOiBgYmxvY2txdW90ZS5wdWxsLXJpZ2h0YCBoYXMgYmVlbiBkZXByZWNhdGVkIGFzIG9mIHYzLjEuMC5cclxuLmJsb2NrcXVvdGUtcmV2ZXJzZSxcclxuYmxvY2txdW90ZS5wdWxsLXJpZ2h0IHtcclxuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCAkYmxvY2txdW90ZS1ib3JkZXItY29sb3I7XHJcbiAgYm9yZGVyLWxlZnQ6IDA7XHJcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcblxyXG4gIC8vIEFjY291bnQgZm9yIGNpdGF0aW9uXHJcbiAgZm9vdGVyLFxyXG4gIHNtYWxsLFxyXG4gIC5zbWFsbCB7XHJcbiAgICAmOmJlZm9yZSB7IGNvbnRlbnQ6ICcnOyB9XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogJ1xcMDBBMCBcXDIwMTQnOyAvLyBuYnNwLCBlbSBkYXNoXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBBZGRyZXNzZXNcclxuYWRkcmVzcyB7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbn1cclxuIiwiLy8gVHlwb2dyYXBoeVxyXG5cclxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXHJcbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XHJcbiAgI3skcGFyZW50fSB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gIH1cclxuICBhI3skcGFyZW50fTpob3ZlcixcclxuICBhI3skcGFyZW50fTpmb2N1cyB7XHJcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcclxuICB9XHJcbn1cclxuIiwiLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xyXG5cclxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXHJcbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xyXG4gICN7JHBhcmVudH0ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gIH1cclxuICBhI3skcGFyZW50fTpob3ZlcixcclxuICBhI3skcGFyZW50fTpmb2N1cyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xyXG4gIH1cclxufVxyXG4iLCIvLyBDbGVhcmZpeFxyXG4vL1xyXG4vLyBGb3IgbW9kZXJuIGJyb3dzZXJzXHJcbi8vIDEuIFRoZSBzcGFjZSBjb250ZW50IGlzIG9uZSB3YXkgdG8gYXZvaWQgYW4gT3BlcmEgYnVnIHdoZW4gdGhlXHJcbi8vICAgIGNvbnRlbnRlZGl0YWJsZSBhdHRyaWJ1dGUgaXMgaW5jbHVkZWQgYW55d2hlcmUgZWxzZSBpbiB0aGUgZG9jdW1lbnQuXHJcbi8vICAgIE90aGVyd2lzZSBpdCBjYXVzZXMgc3BhY2UgdG8gYXBwZWFyIGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBlbGVtZW50c1xyXG4vLyAgICB0aGF0IGFyZSBjbGVhcmZpeGVkLlxyXG4vLyAyLiBUaGUgdXNlIG9mIGB0YWJsZWAgcmF0aGVyIHRoYW4gYGJsb2NrYCBpcyBvbmx5IG5lY2Vzc2FyeSBpZiB1c2luZ1xyXG4vLyAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXHJcbi8vXHJcbi8vIFNvdXJjZTogaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svXHJcblxyXG5AbWl4aW4gY2xlYXJmaXgoKSB7XHJcbiAgJjpiZWZvcmUsXHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIiBcIjsgLy8gMVxyXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDJcclxuICB9XHJcbiAgJjphZnRlciB7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICB9XHJcbn1cclxuIiwiLy8gVGV4dCBvdmVyZmxvd1xyXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXHJcblxyXG5AbWl4aW4gdGV4dC1vdmVyZmxvdygpIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuIiwiLy9cclxuLy8gQ29kZSAoaW5saW5lIGFuZCBibG9jaylcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBJbmxpbmUgYW5kIGJsb2NrIGNvZGUgc3R5bGVzXHJcbmNvZGUsXHJcbmtiZCxcclxucHJlLFxyXG5zYW1wIHtcclxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcclxufVxyXG5cclxuLy8gSW5saW5lIGNvZGVcclxuY29kZSB7XHJcbiAgcGFkZGluZzogMnB4IDRweDtcclxuICBmb250LXNpemU6IDkwJTtcclxuICBjb2xvcjogJGNvZGUtY29sb3I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmc7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcclxufVxyXG5cclxuLy8gVXNlciBpbnB1dCB0eXBpY2FsbHkgZW50ZXJlZCB2aWEga2V5Ym9hcmRcclxua2JkIHtcclxuICBwYWRkaW5nOiAycHggNHB4O1xyXG4gIGZvbnQtc2l6ZTogOTAlO1xyXG4gIGNvbG9yOiAka2JkLWNvbG9yO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc21hbGw7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgcmdiYSgwLDAsMCwuMjUpO1xyXG5cclxuICBrYmQge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGZvbnQtc2l6ZTogMTAwJTtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi8vIEJsb2NrcyBvZiBjb2RlXHJcbnByZSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZzogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAxKSAvIDIpO1xyXG4gIG1hcmdpbjogMCAwICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcclxuICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgLSAxKTsgLy8gMTRweCB0byAxM3B4XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcbiAgY29sb3I6ICRwcmUtY29sb3I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByZS1iZztcclxuICBib3JkZXI6IDFweCBzb2xpZCAkcHJlLWJvcmRlci1jb2xvcjtcclxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG5cclxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xyXG4gIGNvZGUge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcclxuLnByZS1zY3JvbGxhYmxlIHtcclxuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcclxuICBvdmVyZmxvdy15OiBzY3JvbGw7XHJcbn1cclxuIiwiLy9cclxuLy8gR3JpZCBzeXN0ZW1cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBDb250YWluZXIgd2lkdGhzXHJcbi8vXHJcbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cclxuXHJcbi5jb250YWluZXIge1xyXG4gIEBpbmNsdWRlIGNvbnRhaW5lci1maXhlZDtcclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICB3aWR0aDogJGNvbnRhaW5lci1zbTtcclxuICB9XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcbiAgICB3aWR0aDogJGNvbnRhaW5lci1tZDtcclxuICB9XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XHJcbiAgICB3aWR0aDogJGNvbnRhaW5lci1sZztcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBGbHVpZCBjb250YWluZXJcclxuLy9cclxuLy8gVXRpbGl6ZXMgdGhlIG1peGluIG1lYW50IGZvciBmaXhlZCB3aWR0aCBjb250YWluZXJzLCBidXQgd2l0aG91dCBhbnkgZGVmaW5lZFxyXG4vLyB3aWR0aCBmb3IgZmx1aWQsIGZ1bGwgd2lkdGggbGF5b3V0cy5cclxuXHJcbi5jb250YWluZXItZmx1aWQge1xyXG4gIEBpbmNsdWRlIGNvbnRhaW5lci1maXhlZDtcclxufVxyXG5cclxuXHJcbi8vIFJvd1xyXG4vL1xyXG4vLyBSb3dzIGNvbnRhaW4gYW5kIGNsZWFyIHRoZSBmbG9hdHMgb2YgeW91ciBjb2x1bW5zLlxyXG5cclxuLnJvdyB7XHJcbiAgQGluY2x1ZGUgbWFrZS1yb3c7XHJcbn1cclxuXHJcblxyXG4vLyBDb2x1bW5zXHJcbi8vXHJcbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcclxuXHJcbkBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zO1xyXG5cclxuXHJcbi8vIEV4dHJhIHNtYWxsIGdyaWRcclxuLy9cclxuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIGV4dHJhIHNtYWxsIGRldmljZXMgbGlrZVxyXG4vLyBzbWFydHBob25lcy5cclxuXHJcbkBpbmNsdWRlIG1ha2UtZ3JpZCh4cyk7XHJcblxyXG5cclxuLy8gU21hbGwgZ3JpZFxyXG4vL1xyXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIHNtYWxsIGRldmljZSByYW5nZSwgZnJvbSBwaG9uZXNcclxuLy8gdG8gdGFibGV0cy5cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChzbSk7XHJcbn1cclxuXHJcblxyXG4vLyBNZWRpdW0gZ3JpZFxyXG4vL1xyXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIGRlc2t0b3AgZGV2aWNlIHJhbmdlLlxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKG1kKTtcclxufVxyXG5cclxuXHJcbi8vIExhcmdlIGdyaWRcclxuLy9cclxuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBsYXJnZSBkZXNrdG9wIGRldmljZSByYW5nZS5cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xyXG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChsZyk7XHJcbn1cclxuIiwiLy8gR3JpZCBzeXN0ZW1cclxuLy9cclxuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxyXG5cclxuLy8gQ2VudGVyZWQgY29udGFpbmVyIGVsZW1lbnRcclxuQG1peGluIGNvbnRhaW5lci1maXhlZCgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcclxuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG59XHJcblxyXG4vLyBDcmVhdGVzIGEgd3JhcHBlciBmb3IgYSBzZXJpZXMgb2YgY29sdW1uc1xyXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XHJcbiAgbWFyZ2luLWxlZnQ6ICBjZWlsKCgkZ3V0dGVyIC8gLTIpKTtcclxuICBtYXJnaW4tcmlnaHQ6IGZsb29yKCgkZ3V0dGVyIC8gLTIpKTtcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxufVxyXG5cclxuLy8gR2VuZXJhdGUgdGhlIGV4dHJhIHNtYWxsIGNvbHVtbnNcclxuQG1peGluIG1ha2UteHMtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIG1pbi1oZWlnaHQ6IDFweDtcclxuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xyXG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XHJcbn1cclxuQG1peGluIG1ha2UteHMtY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xyXG4gIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxufVxyXG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xyXG4gIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG59XHJcbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XHJcbiAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG59XHJcblxyXG4vLyBHZW5lcmF0ZSB0aGUgc21hbGwgY29sdW1uc1xyXG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcclxuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuXHJcbi8vIEdlbmVyYXRlIHRoZSBtZWRpdW0gY29sdW1uc1xyXG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcclxuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuQG1peGluIG1ha2UtbWQtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcclxuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuXHJcbi8vIEdlbmVyYXRlIHRoZSBsYXJnZSBjb2x1bW5zXHJcbkBtaXhpbiBtYWtlLWxnLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1pbi1oZWlnaHQ6IDFweDtcclxuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xyXG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuQG1peGluIG1ha2UtbGctY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xyXG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXHJcbi8vXHJcbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxyXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxyXG5cclxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcclxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRpOiAxLCAkbGlzdDogXCIuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCIpIHtcclxuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xyXG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIjtcclxuICB9XHJcbiAgI3skbGlzdH0ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gY29sbGFwc2luZyB3aGVuIGVtcHR5XHJcbiAgICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgICAvLyBJbm5lciBndXR0ZXIgdmlhIHBhZGRpbmdcclxuICAgIHBhZGRpbmctbGVmdDogIGNlaWwoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcclxuICAgIHBhZGRpbmctcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcclxuQG1peGluIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MsICRpOiAxLCAkbGlzdDogXCIuY29sLSN7JGNsYXNzfS0jeyRpfVwiKSB7XHJcbiAgQGZvciAkaSBmcm9tICgxICsgMSkgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcclxuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLSN7JGNsYXNzfS0jeyRpfVwiO1xyXG4gIH1cclxuICAjeyRsaXN0fSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gY2FsYy1ncmlkLWNvbHVtbigkaW5kZXgsICRjbGFzcywgJHR5cGUpIHtcclxuICBAaWYgKCR0eXBlID09IHdpZHRoKSBhbmQgKCRpbmRleCA+IDApIHtcclxuICAgIC5jb2wtI3skY2xhc3N9LSN7JGluZGV4fSB7XHJcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpZiAoJHR5cGUgPT0gcHVzaCkgYW5kICgkaW5kZXggPiAwKSB7XHJcbiAgICAuY29sLSN7JGNsYXNzfS1wdXNoLSN7JGluZGV4fSB7XHJcbiAgICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcclxuICAgIH1cclxuICB9XHJcbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA9PSAwKSB7XHJcbiAgICAuY29sLSN7JGNsYXNzfS1wdXNoLTAge1xyXG4gICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxuICBAaWYgKCR0eXBlID09IHB1bGwpIGFuZCAoJGluZGV4ID4gMCkge1xyXG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0jeyRpbmRleH0ge1xyXG4gICAgICByaWdodDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xyXG4gICAgfVxyXG4gIH1cclxuICBAaWYgKCR0eXBlID09IHB1bGwpIGFuZCAoJGluZGV4ID09IDApIHtcclxuICAgIC5jb2wtI3skY2xhc3N9LXB1bGwtMCB7XHJcbiAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxuICBAaWYgKCR0eXBlID09IG9mZnNldCkge1xyXG4gICAgLmNvbC0jeyRjbGFzc30tb2Zmc2V0LSN7JGluZGV4fSB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xyXG5AbWl4aW4gbG9vcC1ncmlkLWNvbHVtbnMoJGNvbHVtbnMsICRjbGFzcywgJHR5cGUpIHtcclxuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcclxuICAgIEBpbmNsdWRlIGNhbGMtZ3JpZC1jb2x1bW4oJGksICRjbGFzcywgJHR5cGUpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIENyZWF0ZSBncmlkIGZvciBzcGVjaWZpYyBjbGFzc1xyXG5AbWl4aW4gbWFrZS1ncmlkKCRjbGFzcykge1xyXG4gIEBpbmNsdWRlIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MpO1xyXG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgd2lkdGgpO1xyXG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgcHVsbCk7XHJcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCBwdXNoKTtcclxuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIG9mZnNldCk7XHJcbn1cclxuIiwiLy9cclxuLy8gVGFibGVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxudGFibGUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZztcclxufVxyXG5jYXB0aW9uIHtcclxuICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZztcclxuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcclxuICBjb2xvcjogJHRleHQtbXV0ZWQ7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG50aCB7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG5cclxuXHJcbi8vIEJhc2VsaW5lIHN0eWxlc1xyXG5cclxuLnRhYmxlIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIC8vIENlbGxzXHJcbiAgPiB0aGVhZCxcclxuICA+IHRib2R5LFxyXG4gID4gdGZvb3Qge1xyXG4gICAgPiB0ciB7XHJcbiAgICAgID4gdGgsXHJcbiAgICAgID4gdGQge1xyXG4gICAgICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLy8gQm90dG9tIGFsaWduIGZvciBjb2x1bW4gaGVhZGluZ3NcclxuICA+IHRoZWFkID4gdHIgPiB0aCB7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XHJcbiAgfVxyXG4gIC8vIFJlbW92ZSB0b3AgYm9yZGVyIGZyb20gdGhlYWQgYnkgZGVmYXVsdFxyXG4gID4gY2FwdGlvbiArIHRoZWFkLFxyXG4gID4gY29sZ3JvdXAgKyB0aGVhZCxcclxuICA+IHRoZWFkOmZpcnN0LWNoaWxkIHtcclxuICAgID4gdHI6Zmlyc3QtY2hpbGQge1xyXG4gICAgICA+IHRoLFxyXG4gICAgICA+IHRkIHtcclxuICAgICAgICBib3JkZXItdG9wOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIEFjY291bnQgZm9yIG11bHRpcGxlIHRib2R5IGluc3RhbmNlc1xyXG4gID4gdGJvZHkgKyB0Ym9keSB7XHJcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICB9XHJcblxyXG4gIC8vIE5lc3RpbmdcclxuICAudGFibGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xyXG5cclxuLnRhYmxlLWNvbmRlbnNlZCB7XHJcbiAgPiB0aGVhZCxcclxuICA+IHRib2R5LFxyXG4gID4gdGZvb3Qge1xyXG4gICAgPiB0ciB7XHJcbiAgICAgID4gdGgsXHJcbiAgICAgID4gdGQge1xyXG4gICAgICAgIHBhZGRpbmc6ICR0YWJsZS1jb25kZW5zZWQtY2VsbC1wYWRkaW5nO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gQm9yZGVyZWQgdmVyc2lvblxyXG4vL1xyXG4vLyBBZGQgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXHJcblxyXG4udGFibGUtYm9yZGVyZWQge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XHJcbiAgPiB0aGVhZCxcclxuICA+IHRib2R5LFxyXG4gID4gdGZvb3Qge1xyXG4gICAgPiB0ciB7XHJcbiAgICAgID4gdGgsXHJcbiAgICAgID4gdGQge1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgPiB0aGVhZCA+IHRyIHtcclxuICAgID4gdGgsXHJcbiAgICA+IHRkIHtcclxuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFplYnJhLXN0cmlwaW5nXHJcbi8vXHJcbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXHJcblxyXG4udGFibGUtc3RyaXBlZCB7XHJcbiAgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKG9kZCkge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnLWFjY2VudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBIb3ZlciBlZmZlY3RcclxuLy9cclxuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xyXG5cclxuLnRhYmxlLWhvdmVyIHtcclxuICA+IHRib2R5ID4gdHI6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnLWhvdmVyO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFRhYmxlIGNlbGwgc2l6aW5nXHJcbi8vXHJcbi8vIFJlc2V0IGRlZmF1bHQgdGFibGUgYmVoYXZpb3JcclxuXHJcbnRhYmxlIGNvbFtjbGFzcyo9XCJjb2wtXCJdIHtcclxuICBwb3NpdGlvbjogc3RhdGljOyAvLyBQcmV2ZW50IGJvcmRlciBoaWRpbmcgaW4gRmlyZWZveCBhbmQgSUU5LTExIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTYyMylcclxuICBmbG9hdDogbm9uZTtcclxuICBkaXNwbGF5OiB0YWJsZS1jb2x1bW47XHJcbn1cclxudGFibGUge1xyXG4gIHRkLFxyXG4gIHRoIHtcclxuICAgICZbY2xhc3MqPVwiY29sLVwiXSB7XHJcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IC8vIFByZXZlbnQgYm9yZGVyIGhpZGluZyBpbiBGaXJlZm94IGFuZCBJRTktMTEgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjIzKVxyXG4gICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBUYWJsZSBiYWNrZ3JvdW5kc1xyXG4vL1xyXG4vLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxyXG4vLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxyXG5cclxuLy8gR2VuZXJhdGUgdGhlIGNvbnRleHR1YWwgdmFyaWFudHNcclxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ2FjdGl2ZScsICR0YWJsZS1iZy1hY3RpdmUpO1xyXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnc3VjY2VzcycsICRzdGF0ZS1zdWNjZXNzLWJnKTtcclxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ2luZm8nLCAkc3RhdGUtaW5mby1iZyk7XHJcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCd3YXJuaW5nJywgJHN0YXRlLXdhcm5pbmctYmcpO1xyXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnZGFuZ2VyJywgJHN0YXRlLWRhbmdlci1iZyk7XHJcblxyXG5cclxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcclxuLy9cclxuLy8gV3JhcCB5b3VyIHRhYmxlcyBpbiBgLnRhYmxlLXJlc3BvbnNpdmVgIGFuZCB3ZSdsbCBtYWtlIHRoZW0gbW9iaWxlIGZyaWVuZGx5XHJcbi8vIGJ5IGVuYWJsaW5nIGhvcml6b250YWwgc2Nyb2xsaW5nLiBPbmx5IGFwcGxpZXMgPDc2OHB4LiBFdmVyeXRoaW5nIGFib3ZlIHRoYXRcclxuLy8gd2lsbCBkaXNwbGF5IG5vcm1hbGx5LlxyXG5cclxuLnRhYmxlLXJlc3BvbnNpdmUge1xyXG4gIG92ZXJmbG93LXg6IGF1dG87XHJcbiAgbWluLWhlaWdodDogMC4wMSU7IC8vIFdvcmthcm91bmQgZm9yIElFOSBidWcgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE0ODM3KVxyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICogMC43NSk7XHJcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XHJcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XHJcblxyXG4gICAgLy8gVGlnaHRlbiB1cCBzcGFjaW5nXHJcbiAgICA+IC50YWJsZSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgICAvLyBFbnN1cmUgdGhlIGNvbnRlbnQgZG9lc24ndCB3cmFwXHJcbiAgICAgID4gdGhlYWQsXHJcbiAgICAgID4gdGJvZHksXHJcbiAgICAgID4gdGZvb3Qge1xyXG4gICAgICAgID4gdHIge1xyXG4gICAgICAgICAgPiB0aCxcclxuICAgICAgICAgID4gdGQge1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIFNwZWNpYWwgb3ZlcnJpZGVzIGZvciB0aGUgYm9yZGVyZWQgdGFibGVzXHJcbiAgICA+IC50YWJsZS1ib3JkZXJlZCB7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuXHJcbiAgICAgIC8vIE51a2UgdGhlIGFwcHJvcHJpYXRlIGJvcmRlcnMgc28gdGhhdCB0aGUgcGFyZW50IGNhbiBoYW5kbGUgdGhlbVxyXG4gICAgICA+IHRoZWFkLFxyXG4gICAgICA+IHRib2R5LFxyXG4gICAgICA+IHRmb290IHtcclxuICAgICAgICA+IHRyIHtcclxuICAgICAgICAgID4gdGg6Zmlyc3QtY2hpbGQsXHJcbiAgICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICA+IHRoOmxhc3QtY2hpbGQsXHJcbiAgICAgICAgICA+IHRkOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBPbmx5IG51a2UgdGhlIGxhc3Qgcm93J3MgYm90dG9tLWJvcmRlciBpbiBgdGJvZHlgIGFuZCBgdGZvb3RgIHNpbmNlXHJcbiAgICAgIC8vIGNoYW5jZXMgYXJlIHRoZXJlIHdpbGwgYmUgb25seSBvbmUgYHRyYCBpbiBhIGB0aGVhZGAgYW5kIHRoYXQgd291bGRcclxuICAgICAgLy8gcmVtb3ZlIHRoZSBib3JkZXIgYWx0b2dldGhlci5cclxuICAgICAgPiB0Ym9keSxcclxuICAgICAgPiB0Zm9vdCB7XHJcbiAgICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgID4gdGgsXHJcbiAgICAgICAgICA+IHRkIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIFRhYmxlc1xyXG5cclxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcclxuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxyXG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXHJcbiAgLnRhYmxlID4gdGhlYWQgPiB0cixcclxuICAudGFibGUgPiB0Ym9keSA+IHRyLFxyXG4gIC50YWJsZSA+IHRmb290ID4gdHIge1xyXG4gICAgPiB0ZC4jeyRzdGF0ZX0sXHJcbiAgICA+IHRoLiN7JHN0YXRlfSxcclxuICAgICYuI3skc3RhdGV9ID4gdGQsXHJcbiAgICAmLiN7JHN0YXRlfSA+IHRoIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXHJcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXHJcbiAgLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ciB7XHJcbiAgICA+IHRkLiN7JHN0YXRlfTpob3ZlcixcclxuICAgID4gdGguI3skc3RhdGV9OmhvdmVyLFxyXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0ZCxcclxuICAgICY6aG92ZXIgPiAuI3skc3RhdGV9LFxyXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0aCB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBGb3Jtc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIE5vcm1hbGl6ZSBub24tY29udHJvbHNcclxuLy9cclxuLy8gUmVzdHlsZSBhbmQgYmFzZWxpbmUgbm9uLWNvbnRyb2wgZm9ybSBlbGVtZW50cy5cclxuXHJcbmZpZWxkc2V0IHtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMDtcclxuICBib3JkZXI6IDA7XHJcbiAgLy8gQ2hyb21lIGFuZCBGaXJlZm94IHNldCBhIGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxyXG4gIC8vIHNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGl0IGJlaGF2ZXMgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cclxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OS5cclxuICBtaW4td2lkdGg6IDA7XHJcbn1cclxuXHJcbmxlZ2VuZCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcGFkZGluZzogMDtcclxuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlICogMS41KTtcclxuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxuICBjb2xvcjogJGxlZ2VuZC1jb2xvcjtcclxuICBib3JkZXI6IDA7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsZWdlbmQtYm9yZGVyLWNvbG9yO1xyXG59XHJcblxyXG5sYWJlbCB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIG1heC13aWR0aDogMTAwJTsgLy8gRm9yY2UgSUU4IHRvIHdyYXAgbG9uZyBjb250ZW50IChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMzE0MSlcclxuICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcblxyXG4vLyBOb3JtYWxpemUgZm9ybSBjb250cm9sc1xyXG4vL1xyXG4vLyBXaGlsZSBtb3N0IG9mIG91ciBmb3JtIHN0eWxlcyByZXF1aXJlIGV4dHJhIGNsYXNzZXMsIHNvbWUgYmFzaWMgbm9ybWFsaXphdGlvblxyXG4vLyBpcyByZXF1aXJlZCB0byBlbnN1cmUgb3B0aW11bSBkaXNwbGF5IHdpdGggb3Igd2l0aG91dCB0aG9zZSBjbGFzc2VzIHRvIGJldHRlclxyXG4vLyBhZGRyZXNzIGJyb3dzZXIgaW5jb25zaXN0ZW5jaWVzLlxyXG5cclxuLy8gT3ZlcnJpZGUgY29udGVudC1ib3ggaW4gTm9ybWFsaXplICgqIGlzbid0IHNwZWNpZmljIGVub3VnaClcclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XHJcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcclxufVxyXG5cclxuLy8gUG9zaXRpb24gcmFkaW9zIGFuZCBjaGVja2JveGVzIGJldHRlclxyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXHJcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XHJcbiAgbWFyZ2luOiA0cHggMCAwO1xyXG4gIG1hcmdpbi10b3A6IDFweCBcXDk7IC8vIElFOC05XHJcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcclxufVxyXG5cclxuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4vLyBNYWtlIHJhbmdlIGlucHV0cyBiZWhhdmUgbGlrZSB0ZXh0dWFsIGZvcm0gY29udHJvbHNcclxuaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLy8gTWFrZSBtdWx0aXBsZSBzZWxlY3QgZWxlbWVudHMgaGVpZ2h0IG5vdCBmaXhlZFxyXG5zZWxlY3RbbXVsdGlwbGVdLFxyXG5zZWxlY3Rbc2l6ZV0ge1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLy8gRm9jdXMgZm9yIGZpbGUsIHJhZGlvLCBhbmQgY2hlY2tib3hcclxuaW5wdXRbdHlwZT1cImZpbGVcIl06Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpmb2N1cyxcclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzIHtcclxuICBAaW5jbHVkZSB0YWItZm9jdXM7XHJcbn1cclxuXHJcbi8vIEFkanVzdCBvdXRwdXQgZWxlbWVudFxyXG5vdXRwdXQge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcclxuICBjb2xvcjogJGlucHV0LWNvbG9yO1xyXG59XHJcblxyXG5cclxuLy8gQ29tbW9uIGZvcm0gY29udHJvbHNcclxuLy9cclxuLy8gU2hhcmVkIHNpemUgYW5kIHR5cGUgcmVzZXRzIGZvciBmb3JtIGNvbnRyb2xzLiBBcHBseSBgLmZvcm0tY29udHJvbGAgdG8gYW55XHJcbi8vIG9mIHRoZSBmb2xsb3dpbmcgZm9ybSBjb250cm9sczpcclxuLy9cclxuLy8gc2VsZWN0XHJcbi8vIHRleHRhcmVhXHJcbi8vIGlucHV0W3R5cGU9XCJ0ZXh0XCJdXHJcbi8vIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXVxyXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl1cclxuLy8gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJkYXRlXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJtb250aFwiXVxyXG4vLyBpbnB1dFt0eXBlPVwidGltZVwiXVxyXG4vLyBpbnB1dFt0eXBlPVwid2Vla1wiXVxyXG4vLyBpbnB1dFt0eXBlPVwibnVtYmVyXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJlbWFpbFwiXVxyXG4vLyBpbnB1dFt0eXBlPVwidXJsXCJdXHJcbi8vIGlucHV0W3R5cGU9XCJzZWFyY2hcIl1cclxuLy8gaW5wdXRbdHlwZT1cInRlbFwiXVxyXG4vLyBpbnB1dFt0eXBlPVwiY29sb3JcIl1cclxuXHJcbi5mb3JtLWNvbnRyb2wge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlOyAvLyBNYWtlIGlucHV0cyBhdCBsZWFzdCB0aGUgaGVpZ2h0IG9mIHRoZWlyIGJ1dHRvbiBjb3VudGVycGFydCAoYmFzZSBsaW5lLWhlaWdodCArIHBhZGRpbmcgKyBib3JkZXIpXHJcbiAgcGFkZGluZzogJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAkcGFkZGluZy1iYXNlLWhvcml6b250YWw7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcclxuICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzOyAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiA8c2VsZWN0PnMgaW4gQ1NTLlxyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpO1xyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IC4xNXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgLjE1cyk7XHJcblxyXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cclxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXM7XHJcblxyXG4gIC8vIFBsYWNlaG9sZGVyXHJcbiAgQGluY2x1ZGUgcGxhY2Vob2xkZXI7XHJcblxyXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXHJcbiAgLy9cclxuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxyXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXHJcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxyXG4gICZbZGlzYWJsZWRdLFxyXG4gICZbcmVhZG9ubHldLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZy1kaXNhYmxlZDtcclxuICAgIG9wYWNpdHk6IDE7IC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTVcclxuICB9XHJcblxyXG4gICZbZGlzYWJsZWRdLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcclxuICB9XHJcblxyXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0ZXh0YXJlYSYgdG8gdGV4dGFyZWEuZm9ybS1jb250cm9sXHJcbn1cclxuXHJcbi8vIFJlc2V0IGhlaWdodCBmb3IgYHRleHRhcmVhYHNcclxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcblxyXG4vLyBTZWFyY2ggaW5wdXRzIGluIGlPU1xyXG4vL1xyXG4vLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXHJcbi8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxyXG4vLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXHJcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXHJcblxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcblxyXG4vLyBTcGVjaWFsIHN0eWxlcyBmb3IgaU9TIHRlbXBvcmFsIGlucHV0c1xyXG4vL1xyXG4vLyBJbiBNb2JpbGUgU2FmYXJpLCBzZXR0aW5nIGBkaXNwbGF5OiBibG9ja2Agb24gdGVtcG9yYWwgaW5wdXRzIGNhdXNlcyB0aGVcclxuLy8gdGV4dCB3aXRoaW4gdGhlIGlucHV0IHRvIGJlY29tZSB2ZXJ0aWNhbGx5IG1pc2FsaWduZWQuIEFzIGEgd29ya2Fyb3VuZCwgd2VcclxuLy8gc2V0IGEgcGl4ZWwgbGluZS1oZWlnaHQgdGhhdCBtYXRjaGVzIHRoZSBnaXZlbiBoZWlnaHQgb2YgdGhlIGlucHV0LCBidXQgb25seVxyXG4vLyBmb3IgU2FmYXJpLiBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTg0OFxyXG4vL1xyXG4vLyBOb3RlIHRoYXQgYXMgb2YgOC4zLCBpT1MgZG9lc24ndCBzdXBwb3J0IGBkYXRldGltZWAgb3IgYHdlZWtgLlxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMCkge1xyXG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxyXG4gIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxyXG4gIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcclxuICBpbnB1dFt0eXBlPVwibW9udGhcIl0ge1xyXG4gICAgJi5mb3JtLWNvbnRyb2wge1xyXG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlO1xyXG4gICAgfVxyXG5cclxuICAgICYuaW5wdXQtc20sXHJcbiAgICAuaW5wdXQtZ3JvdXAtc20gJiB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xyXG4gICAgfVxyXG5cclxuICAgICYuaW5wdXQtbGcsXHJcbiAgICAuaW5wdXQtZ3JvdXAtbGcgJiB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEZvcm0gZ3JvdXBzXHJcbi8vXHJcbi8vIERlc2lnbmVkIHRvIGhlbHAgd2l0aCB0aGUgb3JnYW5pemF0aW9uIGFuZCBzcGFjaW5nIG9mIHZlcnRpY2FsIGZvcm1zLiBGb3JcclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cclxuXHJcbi5mb3JtLWdyb3VwIHtcclxuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xyXG59XHJcblxyXG5cclxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXHJcbi8vXHJcbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXHJcblxyXG4ucmFkaW8sXHJcbi5jaGVja2JveCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcbiAgbGFiZWwge1xyXG4gICAgbWluLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOyAvLyBFbnN1cmUgdGhlIGlucHV0IGRvZXNuJ3QganVtcCB3aGVuIHRoZXJlIGlzIG5vIHRleHRcclxuICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIH1cclxufVxyXG4ucmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxyXG4ucmFkaW8taW5saW5lIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcclxuLmNoZWNrYm94LWlubGluZSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBtYXJnaW4tbGVmdDogLTIwcHg7XHJcbiAgbWFyZ2luLXRvcDogNHB4IFxcOTtcclxufVxyXG5cclxuLnJhZGlvICsgLnJhZGlvLFxyXG4uY2hlY2tib3ggKyAuY2hlY2tib3gge1xyXG4gIG1hcmdpbi10b3A6IC01cHg7IC8vIE1vdmUgdXAgc2libGluZyByYWRpb3Mgb3IgY2hlY2tib3hlcyBmb3IgdGlnaHRlciBzcGFjaW5nXHJcbn1cclxuXHJcbi8vIFJhZGlvcyBhbmQgY2hlY2tib3hlcyBvbiBzYW1lIGxpbmVcclxuLnJhZGlvLWlubGluZSxcclxuLmNoZWNrYm94LWlubGluZSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbi5yYWRpby1pbmxpbmUgKyAucmFkaW8taW5saW5lLFxyXG4uY2hlY2tib3gtaW5saW5lICsgLmNoZWNrYm94LWlubGluZSB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tbGVmdDogMTBweDsgLy8gc3BhY2Ugb3V0IGNvbnNlY3V0aXZlIGlubGluZSBjb250cm9sc1xyXG59XHJcblxyXG4vLyBBcHBseSBzYW1lIGRpc2FibGVkIGN1cnNvciB0d2VhayBhcyBmb3IgaW5wdXRzXHJcbi8vIFNvbWUgc3BlY2lhbCBjYXJlIGlzIG5lZWRlZCBiZWNhdXNlIDxsYWJlbD5zIGRvbid0IGluaGVyaXQgdGhlaXIgcGFyZW50J3MgYGN1cnNvcmAuXHJcbi8vXHJcbi8vIE5vdGU6IE5laXRoZXIgcmFkaW9zIG5vciBjaGVja2JveGVzIGNhbiBiZSByZWFkb25seS5cclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICZbZGlzYWJsZWRdLFxyXG4gICYuZGlzYWJsZWQsXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xyXG4gIH1cclxufVxyXG4vLyBUaGVzZSBjbGFzc2VzIGFyZSB1c2VkIGRpcmVjdGx5IG9uIDxsYWJlbD5zXHJcbi5yYWRpby1pbmxpbmUsXHJcbi5jaGVja2JveC1pbmxpbmUge1xyXG4gICYuZGlzYWJsZWQsXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xyXG4gIH1cclxufVxyXG4vLyBUaGVzZSBjbGFzc2VzIGFyZSB1c2VkIG9uIGVsZW1lbnRzIHdpdGggPGxhYmVsPiBkZXNjZW5kYW50c1xyXG4ucmFkaW8sXHJcbi5jaGVja2JveCB7XHJcbiAgJi5kaXNhYmxlZCxcclxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBTdGF0aWMgZm9ybSBjb250cm9sIHRleHRcclxuLy9cclxuLy8gQXBwbHkgY2xhc3MgdG8gYSBgcGAgZWxlbWVudCB0byBtYWtlIGFueSBzdHJpbmcgb2YgdGV4dCBhbGlnbiB3aXRoIGxhYmVscyBpblxyXG4vLyBhIGhvcml6b250YWwgZm9ybSBsYXlvdXQuXHJcblxyXG4uZm9ybS1jb250cm9sLXN0YXRpYyB7XHJcbiAgLy8gU2l6ZSBpdCBhcHByb3ByaWF0ZWx5IG5leHQgdG8gcmVhbCBmb3JtIGNvbnRyb2xzXHJcbiAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XHJcbiAgcGFkZGluZy1ib3R0b206ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XHJcbiAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIGZyb20gYHBgXHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1iYXNlKTtcclxuXHJcbiAgJi5pbnB1dC1sZyxcclxuICAmLmlucHV0LXNtIHtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xyXG4vL1xyXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxyXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxyXG4vL1xyXG4vLyBUaGUgYC5mb3JtLWdyb3VwLSogZm9ybS1jb250cm9sYCB2YXJpYXRpb25zIGFyZSBzYWRseSBkdXBsaWNhdGVkIHRvIGF2b2lkIHRoZVxyXG4vLyBpc3N1ZSBkb2N1bWVudGVkIGluIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTUwNzQuXHJcblxyXG5AaW5jbHVkZSBpbnB1dC1zaXplKCcuaW5wdXQtc20nLCAkaW5wdXQtaGVpZ2h0LXNtYWxsLCAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbi5mb3JtLWdyb3VwLXNtIHtcclxuICAuZm9ybS1jb250cm9sIHtcclxuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcclxuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtYWxsO1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw7XHJcbiAgfVxyXG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xyXG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XHJcbiAgfVxyXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCxcclxuICBzZWxlY3RbbXVsdGlwbGVdLmZvcm0tY29udHJvbCB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgfVxyXG4gIC5mb3JtLWNvbnRyb2wtc3RhdGljIHtcclxuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcclxuICAgIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAkZm9udC1zaXplLXNtYWxsKTtcclxuICAgIHBhZGRpbmc6ICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCArIDEpICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtYWxsO1xyXG4gIH1cclxufVxyXG5cclxuQGluY2x1ZGUgaW5wdXQtc2l6ZSgnLmlucHV0LWxnJywgJGlucHV0LWhlaWdodC1sYXJnZSwgJHBhZGRpbmctbGFyZ2UtdmVydGljYWwsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRmb250LXNpemUtbGFyZ2UsICRsaW5lLWhlaWdodC1sYXJnZSwgJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2UpO1xyXG4uZm9ybS1ncm91cC1sZyB7XHJcbiAgLmZvcm0tY29udHJvbCB7XHJcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XHJcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sYXJnZTtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlO1xyXG4gIH1cclxuICBzZWxlY3QuZm9ybS1jb250cm9sIHtcclxuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcclxuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xyXG4gIH1cclxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXHJcbiAgc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gIH1cclxuICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XHJcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XHJcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1sYXJnZSk7XHJcbiAgICBwYWRkaW5nOiAoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgKyAxKSAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sYXJnZTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBGb3JtIGNvbnRyb2wgZmVlZGJhY2sgc3RhdGVzXHJcbi8vXHJcbi8vIEFwcGx5IGNvbnRleHR1YWwgYW5kIHNlbWFudGljIHN0YXRlcyB0byBpbmRpdmlkdWFsIGZvcm0gY29udHJvbHMuXHJcblxyXG4uaGFzLWZlZWRiYWNrIHtcclxuICAvLyBFbmFibGUgYWJzb2x1dGUgcG9zaXRpb25pbmdcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gIC8vIEVuc3VyZSBpY29ucyBkb24ndCBvdmVybGFwIHRleHRcclxuICAuZm9ybS1jb250cm9sIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICgkaW5wdXQtaGVpZ2h0LWJhc2UgKiAxLjI1KTtcclxuICB9XHJcbn1cclxuLy8gRmVlZGJhY2sgaWNvbiAocmVxdWlyZXMgLmdseXBoaWNvbiBjbGFzc2VzKVxyXG4uZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHotaW5kZXg6IDI7IC8vIEVuc3VyZSBpY29uIGlzIGFib3ZlIGlucHV0IGdyb3Vwc1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LWJhc2U7XHJcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7XHJcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuLmlucHV0LWxnICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcclxuLmlucHV0LWdyb3VwLWxnICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcclxuLmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xyXG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xyXG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcclxuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcclxufVxyXG4uaW5wdXQtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxyXG4uaW5wdXQtZ3JvdXAtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxyXG4uZm9ybS1ncm91cC1zbSAuZm9ybS1jb250cm9sICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XHJcbiAgd2lkdGg6ICRpbnB1dC1oZWlnaHQtc21hbGw7XHJcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xyXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xyXG59XHJcblxyXG4vLyBGZWVkYmFjayBzdGF0ZXNcclxuLmhhcy1zdWNjZXNzIHtcclxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtc3VjY2Vzcy10ZXh0LCAkc3RhdGUtc3VjY2Vzcy10ZXh0LCAkc3RhdGUtc3VjY2Vzcy1iZyk7XHJcbn1cclxuLmhhcy13YXJuaW5nIHtcclxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtd2FybmluZy10ZXh0LCAkc3RhdGUtd2FybmluZy10ZXh0LCAkc3RhdGUtd2FybmluZy1iZyk7XHJcbn1cclxuLmhhcy1lcnJvciB7XHJcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHN0YXRlLWRhbmdlci10ZXh0LCAkc3RhdGUtZGFuZ2VyLXRleHQsICRzdGF0ZS1kYW5nZXItYmcpO1xyXG59XHJcblxyXG4vLyBSZXBvc2l0aW9uIGZlZWRiYWNrIGljb24gaWYgaW5wdXQgaGFzIHZpc2libGUgbGFiZWwgYWJvdmVcclxuLmhhcy1mZWVkYmFjayBsYWJlbCB7XHJcblxyXG4gICYgfiAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcclxuICAgICB0b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyA1KTsgLy8gSGVpZ2h0IG9mIHRoZSBgbGFiZWxgIGFuZCBpdHMgbWFyZ2luXHJcbiAgfVxyXG4gICYuc3Itb25seSB+IC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xyXG4gICAgIHRvcDogMDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBIZWxwIHRleHRcclxuLy9cclxuLy8gQXBwbHkgdG8gYW55IGVsZW1lbnQgeW91IHdpc2ggdG8gY3JlYXRlIGxpZ2h0IHRleHQgZm9yIHBsYWNlbWVudCBpbW1lZGlhdGVseVxyXG4vLyBiZWxvdyBhIGZvcm0gY29udHJvbC4gVXNlIGZvciBnZW5lcmFsIGhlbHAsIGZvcm1hdHRpbmcsIG9yIGluc3RydWN0aW9uYWwgdGV4dC5cclxuXHJcbi5oZWxwLWJsb2NrIHtcclxuICBkaXNwbGF5OiBibG9jazsgLy8gYWNjb3VudCBmb3IgYW55IGVsZW1lbnQgdXNpbmcgaGVscC1ibG9ja1xyXG4gIG1hcmdpbi10b3A6IDVweDtcclxuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gIGNvbG9yOiBsaWdodGVuKCR0ZXh0LWNvbG9yLCAyNSUpOyAvLyBsaWdodGVuIHRoZSB0ZXh0IHNvbWUgZm9yIGNvbnRyYXN0XHJcbn1cclxuXHJcblxyXG4vLyBJbmxpbmUgZm9ybXNcclxuLy9cclxuLy8gTWFrZSBmb3JtcyBhcHBlYXIgaW5saW5lKC1ibG9jaykgYnkgYWRkaW5nIHRoZSBgLmZvcm0taW5saW5lYCBjbGFzcy4gSW5saW5lXHJcbi8vIGZvcm1zIGJlZ2luIHN0YWNrZWQgb24gZXh0cmEgc21hbGwgKG1vYmlsZSkgZGV2aWNlcyBhbmQgdGhlbiBnbyBpbmxpbmUgd2hlblxyXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxyXG4vL1xyXG4vLyBSZXF1aXJlcyB3cmFwcGluZyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoIGAuZm9ybS1ncm91cGAgZm9yIHByb3BlciBkaXNwbGF5IG9mXHJcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXHJcbi8vXHJcbi8vIEhlYWRzIHVwISBUaGlzIGlzIG1peGluLWVkIGludG8gYC5uYXZiYXItZm9ybWAgaW4gbmF2YmFycy5sZXNzLlxyXG5cclxuLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGZyb20gYC5mb3JtLWlubGluZWAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxyXG5AbWl4aW4gZm9ybS1pbmxpbmUge1xyXG5cclxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxyXG4gICAgLmZvcm0tZ3JvdXAge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gSW4gbmF2YmFyLWZvcm0sIGFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXHJcbiAgICAuZm9ybS1jb250cm9sIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB3aWR0aDogYXV0bzsgLy8gUHJldmVudCBsYWJlbHMgZnJvbSBzdGFja2luZyBhYm92ZSBpbnB1dHMgaW4gYC5mb3JtLWdyb3VwYFxyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIE1ha2Ugc3RhdGljIGNvbnRyb2xzIGJlaGF2ZSBsaWtlIHJlZ3VsYXIgb25lc1xyXG4gICAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLmlucHV0LWdyb3VwIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLXRhYmxlO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cclxuICAgICAgLmlucHV0LWdyb3VwLWFkZG9uLFxyXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuLFxyXG4gICAgICAuZm9ybS1jb250cm9sIHtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIElucHV0IGdyb3VwcyBuZWVkIHRoYXQgMTAwJSB3aWR0aCB0aG91Z2hcclxuICAgIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAuY29udHJvbC1sYWJlbCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIG9uIHJhZGlvcy9jaGVja2JveGVzIHRoYXQgd2VyZSB1c2VkIGZvciBzdGFja2luZywgYW5kXHJcbiAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cclxuICAgIC5yYWRpbyxcclxuICAgIC5jaGVja2JveCB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHJcbiAgICAgIGxhYmVsIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5yYWRpbyBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXHJcbiAgICAuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBSZS1vdmVycmlkZSB0aGUgZmVlZGJhY2sgaWNvbi5cclxuICAgIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XHJcbiAgICAgIHRvcDogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGFzIGBAbWl4aW4gZm9ybS1pbmxpbmVgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcclxuLmZvcm0taW5saW5lIHtcclxuICBAaW5jbHVkZSBmb3JtLWlubGluZTtcclxufVxyXG5cclxuXHJcblxyXG4vLyBIb3Jpem9udGFsIGZvcm1zXHJcbi8vXHJcbi8vIEhvcml6b250YWwgZm9ybXMgYXJlIGJ1aWx0IG9uIGdyaWQgY2xhc3NlcyBhbmQgYWxsb3cgeW91IHRvIGNyZWF0ZSBmb3JtcyB3aXRoXHJcbi8vIGxhYmVscyBvbiB0aGUgbGVmdCBhbmQgaW5wdXRzIG9uIHRoZSByaWdodC5cclxuXHJcbi5mb3JtLWhvcml6b250YWwge1xyXG5cclxuICAvLyBDb25zaXN0ZW50IHZlcnRpY2FsIGFsaWdubWVudCBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXNcclxuICAvL1xyXG4gIC8vIExhYmVscyBhbHNvIGdldCBzb21lIHJlc2V0IHN0eWxlcywgYnV0IHRoYXQgaXMgc2NvcGVkIHRvIGEgbWVkaWEgcXVlcnkgYmVsb3cuXHJcbiAgLnJhZGlvLFxyXG4gIC5jaGVja2JveCxcclxuICAucmFkaW8taW5saW5lLFxyXG4gIC5jaGVja2JveC1pbmxpbmUge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTsgLy8gRGVmYXVsdCBwYWRkaW5nIHBsdXMgYSBib3JkZXJcclxuICB9XHJcbiAgLy8gQWNjb3VudCBmb3IgcGFkZGluZyB3ZSdyZSBhZGRpbmcgdG8gZW5zdXJlIHRoZSBhbGlnbm1lbnQgYW5kIG9mIGhlbHAgdGV4dFxyXG4gIC8vIGFuZCBvdGhlciBjb250ZW50IGJlbG93IGl0ZW1zXHJcbiAgLnJhZGlvLFxyXG4gIC5jaGVja2JveCB7XHJcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKSk7XHJcbiAgfVxyXG5cclxuICAvLyBNYWtlIGZvcm0gZ3JvdXBzIGJlaGF2ZSBsaWtlIHJvd3NcclxuICAuZm9ybS1ncm91cCB7XHJcbiAgICBAaW5jbHVkZSBtYWtlLXJvdztcclxuICB9XHJcblxyXG4gIC8vIFJlc2V0IHNwYWNpbmcgYW5kIHJpZ2h0IGFsaWduIGxhYmVscywgYnV0IHNjb3BlIHRvIG1lZGlhIHF1ZXJpZXMgc28gdGhhdFxyXG4gIC8vIGxhYmVscyBvbiBuYXJyb3cgdmlld3BvcnRzIHN0YWNrIHRoZSBzYW1lIGFzIGEgZGVmYXVsdCBmb3JtIGV4YW1wbGUuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICAuY29udHJvbC1sYWJlbCB7XHJcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTsgLy8gRGVmYXVsdCBwYWRkaW5nIHBsdXMgYSBib3JkZXJcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIFZhbGlkYXRpb24gc3RhdGVzXHJcbiAgLy9cclxuICAvLyBSZXBvc2l0aW9uIHRoZSBpY29uIGJlY2F1c2UgaXQncyBub3cgd2l0aGluIGEgZ3JpZCBjb2x1bW4gYW5kIGNvbHVtbnMgaGF2ZVxyXG4gIC8vIGBwb3NpdGlvbjogcmVsYXRpdmU7YCBvbiB0aGVtLiBBbHNvIGFjY291bnRzIGZvciB0aGUgZ3JpZCBndXR0ZXIgcGFkZGluZy5cclxuICAuaGFzLWZlZWRiYWNrIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xyXG4gICAgcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XHJcbiAgfVxyXG5cclxuICAvLyBGb3JtIGdyb3VwIHNpemVzXHJcbiAgLy9cclxuICAvLyBRdWljayB1dGlsaXR5IGNsYXNzIGZvciBhcHBseWluZyBgLmlucHV0LWxnYCBhbmQgYC5pbnB1dC1zbWAgc3R5bGVzIHRvIHRoZVxyXG4gIC8vIGlucHV0cyBhbmQgbGFiZWxzIHdpdGhpbiBhIGAuZm9ybS1ncm91cGAuXHJcbiAgLmZvcm0tZ3JvdXAtbGcge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICAgIC5jb250cm9sLWxhYmVsIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogKCgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqICRsaW5lLWhlaWdodC1sYXJnZSkgKyAxKTtcclxuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmZvcm0tZ3JvdXAtc20ge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcbiAgICAgIC5jb250cm9sLWxhYmVsIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICsgMSk7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIEZvcm0gdmFsaWRhdGlvbiBzdGF0ZXNcclxuLy9cclxuLy8gVXNlZCBpbiBmb3Jtcy5sZXNzIHRvIGdlbmVyYXRlIHRoZSBmb3JtIHZhbGlkYXRpb24gQ1NTIGZvciB3YXJuaW5ncywgZXJyb3JzLFxyXG4vLyBhbmQgc3VjY2Vzc2VzLlxyXG5cclxuQG1peGluIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCR0ZXh0LWNvbG9yOiAjNTU1LCAkYm9yZGVyLWNvbG9yOiAjY2NjLCAkYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNSkge1xyXG4gIC8vIENvbG9yIHRoZSBsYWJlbCBhbmQgaGVscCB0ZXh0XHJcbiAgLmhlbHAtYmxvY2ssXHJcbiAgLmNvbnRyb2wtbGFiZWwsXHJcbiAgLnJhZGlvLFxyXG4gIC5jaGVja2JveCxcclxuICAucmFkaW8taW5saW5lLFxyXG4gIC5jaGVja2JveC1pbmxpbmUsXHJcbiAgJi5yYWRpbyBsYWJlbCxcclxuICAmLmNoZWNrYm94IGxhYmVsLFxyXG4gICYucmFkaW8taW5saW5lIGxhYmVsLFxyXG4gICYuY2hlY2tib3gtaW5saW5lIGxhYmVsICB7XHJcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcbiAgfVxyXG4gIC8vIFNldCB0aGUgYm9yZGVyIGFuZCBib3ggc2hhZG93IG9uIHNwZWNpZmljIGlucHV0cyB0byBtYXRjaFxyXG4gIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xyXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSk7IC8vIFJlZGVjbGFyZSBzbyB0cmFuc2l0aW9ucyB3b3JrXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlci1jb2xvciwgMTAlKTtcclxuICAgICAgJHNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksIDAgMCA2cHggbGlnaHRlbigkYm9yZGVyLWNvbG9yLCAyMCUpO1xyXG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRzaGFkb3cpO1xyXG4gICAgfVxyXG4gIH1cclxuICAvLyBTZXQgdmFsaWRhdGlvbiBzdGF0ZXMgYWxzbyBmb3IgYWRkb25zXHJcbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcclxuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcclxuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gIH1cclxuICAvLyBPcHRpb25hbCBmZWVkYmFjayBpY29uXHJcbiAgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XHJcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXHJcbi8vXHJcbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXHJcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWJvcmRlci1mb2N1c2AgdmFyaWFibGUuXHJcbi8vXHJcbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxyXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxyXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXHJcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cclxuLy9cclxuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXHJcbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGNvbG9yOiAkaW5wdXQtYm9yZGVyLWZvY3VzKSB7XHJcbiAgJGNvbG9yLXJnYmE6IHJnYmEocmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKSwgLjYpO1xyXG4gICY6Zm9jdXMge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwgMCAwIDhweCAkY29sb3ItcmdiYSk7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXHJcbi8vXHJcbi8vIFJlbGF0aXZlIHRleHQgc2l6ZSwgcGFkZGluZywgYW5kIGJvcmRlci1yYWRpaSBjaGFuZ2VzIGZvciBmb3JtIGNvbnRyb2xzLiBGb3JcclxuLy8gaG9yaXpvbnRhbCBzaXppbmcsIHdyYXAgY29udHJvbHMgaW4gdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLiBgPHNlbGVjdD5gXHJcbi8vIGVsZW1lbnQgZ2V0cyBzcGVjaWFsIGxvdmUgYmVjYXVzZSBpdCdzIHNwZWNpYWwsIGFuZCB0aGF0J3MgYSBmYWN0IVxyXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcclxuQG1peGluIGlucHV0LXNpemUoJHBhcmVudCwgJGlucHV0LWhlaWdodCwgJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcclxuICAjeyRwYXJlbnR9IHtcclxuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcclxuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XHJcbiAgfVxyXG5cclxuICBzZWxlY3QjeyRwYXJlbnR9IHtcclxuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcclxuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xyXG4gIH1cclxuXHJcbiAgdGV4dGFyZWEjeyRwYXJlbnR9LFxyXG4gIHNlbGVjdFttdWx0aXBsZV0jeyRwYXJlbnR9IHtcclxuICAgIGhlaWdodDogYXV0bztcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gQnV0dG9uc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEJhc2Ugc3R5bGVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uYnRuIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gRm9yIGlucHV0LmJ0blxyXG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy1iYXNlLXZlcnRpY2FsLCAkcGFkZGluZy1iYXNlLWhvcml6b250YWwsICRmb250LXNpemUtYmFzZSwgJGxpbmUtaGVpZ2h0LWJhc2UsICRidG4tYm9yZGVyLXJhZGl1cy1iYXNlKTtcclxuICBAaW5jbHVkZSB1c2VyLXNlbGVjdChub25lKTtcclxuXHJcbiAgJixcclxuICAmOmFjdGl2ZSxcclxuICAmLmFjdGl2ZSB7XHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJi5mb2N1cyB7XHJcbiAgICAgIEBpbmNsdWRlIHRhYi1mb2N1cztcclxuICAgIH1cclxuICB9XHJcblxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyxcclxuICAmLmZvY3VzIHtcclxuICAgIGNvbG9yOiAkYnRuLWRlZmF1bHQtY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgfVxyXG5cclxuICAmOmFjdGl2ZSxcclxuICAmLmFjdGl2ZSB7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkpO1xyXG4gIH1cclxuXHJcbiAgJi5kaXNhYmxlZCxcclxuICAmW2Rpc2FibGVkXSxcclxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XHJcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC42NSk7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xyXG4gIH1cclxuXHJcbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEuYnRuXHJcbn1cclxuXHJcbmEuYnRuIHtcclxuICAmLmRpc2FibGVkLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyAvLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEFsdGVybmF0ZSBidXR0b25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uYnRuLWRlZmF1bHQge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tZGVmYXVsdC1jb2xvciwgJGJ0bi1kZWZhdWx0LWJnLCAkYnRuLWRlZmF1bHQtYm9yZGVyKTtcclxufVxyXG4uYnRuLXByaW1hcnkge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tcHJpbWFyeS1jb2xvciwgJGJ0bi1wcmltYXJ5LWJnLCAkYnRuLXByaW1hcnktYm9yZGVyKTtcclxufVxyXG4vLyBTdWNjZXNzIGFwcGVhcnMgYXMgZ3JlZW5cclxuLmJ0bi1zdWNjZXNzIHtcclxuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXN1Y2Nlc3MtY29sb3IsICRidG4tc3VjY2Vzcy1iZywgJGJ0bi1zdWNjZXNzLWJvcmRlcik7XHJcbn1cclxuLy8gSW5mbyBhcHBlYXJzIGFzIGJsdWUtZ3JlZW5cclxuLmJ0bi1pbmZvIHtcclxuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWluZm8tY29sb3IsICRidG4taW5mby1iZywgJGJ0bi1pbmZvLWJvcmRlcik7XHJcbn1cclxuLy8gV2FybmluZyBhcHBlYXJzIGFzIG9yYW5nZVxyXG4uYnRuLXdhcm5pbmcge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4td2FybmluZy1jb2xvciwgJGJ0bi13YXJuaW5nLWJnLCAkYnRuLXdhcm5pbmctYm9yZGVyKTtcclxufVxyXG4vLyBEYW5nZXIgYW5kIGVycm9yIGFwcGVhciBhcyByZWRcclxuLmJ0bi1kYW5nZXIge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tZGFuZ2VyLWNvbG9yLCAkYnRuLWRhbmdlci1iZywgJGJ0bi1kYW5nZXItYm9yZGVyKTtcclxufVxyXG5cclxuXHJcbi8vIExpbmsgYnV0dG9uc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xyXG4uYnRuLWxpbmsge1xyXG4gIGNvbG9yOiAkbGluay1jb2xvcjtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcblxyXG4gICYsXHJcbiAgJjphY3RpdmUsXHJcbiAgJi5hY3RpdmUsXHJcbiAgJltkaXNhYmxlZF0sXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xyXG4gIH1cclxuICAmLFxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyxcclxuICAmOmFjdGl2ZSB7XHJcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIH1cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG4gICZbZGlzYWJsZWRdLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEJ1dHRvbiBTaXplc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmJ0bi1sZyB7XHJcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBldmVuLW51bWJlcmVkIGhlaWdodCBvZiBidXR0b24gbmV4dCB0byBsYXJnZSBpbnB1dFxyXG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWxhcmdlLCAkbGluZS1oZWlnaHQtbGFyZ2UsICRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZSk7XHJcbn1cclxuLmJ0bi1zbSB7XHJcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBwcm9wZXIgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIHNtYWxsIGlucHV0XHJcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxufVxyXG4uYnRuLXhzIHtcclxuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy14cy12ZXJ0aWNhbCwgJHBhZGRpbmcteHMtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkYnRuLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG59XHJcblxyXG5cclxuLy8gQmxvY2sgYnV0dG9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uYnRuLWJsb2NrIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xyXG4uYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XHJcbiAgbWFyZ2luLXRvcDogNXB4O1xyXG59XHJcblxyXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcclxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcclxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxyXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcclxuICAmLmJ0bi1ibG9jayB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXHJcbi8vXHJcbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcclxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXHJcblxyXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlcikge1xyXG4gIGNvbG9yOiAkY29sb3I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG5cclxuICAmOmZvY3VzLFxyXG4gICYuZm9jdXMge1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcclxuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAyNSUpO1xyXG4gIH1cclxuICAmOmhvdmVyIHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcclxuICB9XHJcbiAgJjphY3RpdmUsXHJcbiAgJi5hY3RpdmUsXHJcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMsXHJcbiAgICAmLmZvY3VzIHtcclxuICAgICAgY29sb3I6ICRjb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxNyUpO1xyXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcclxuICAgIH1cclxuICB9XHJcbiAgJjphY3RpdmUsXHJcbiAgJi5hY3RpdmUsXHJcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gIH1cclxuICAmLmRpc2FibGVkLFxyXG4gICZbZGlzYWJsZWRdLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgICYsXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICYuZm9jdXMsXHJcbiAgICAmOmFjdGl2ZSxcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYmFkZ2Uge1xyXG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQnV0dG9uIHNpemVzXHJcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xyXG4gIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XHJcbn1cclxuIiwiLy8gT3BhY2l0eVxyXG5cclxuQG1peGluIG9wYWNpdHkoJG9wYWNpdHkpIHtcclxuICBvcGFjaXR5OiAkb3BhY2l0eTtcclxuICAvLyBJRTggZmlsdGVyXHJcbiAgJG9wYWNpdHktaWU6ICgkb3BhY2l0eSAqIDEwMCk7XHJcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PSRvcGFjaXR5LWllKTtcclxufVxyXG4iLCIvL1xyXG4vLyBDb21wb25lbnQgYW5pbWF0aW9uc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gSGVhZHMgdXAhXHJcbi8vXHJcbi8vIFdlIGRvbid0IHVzZSB0aGUgYC5vcGFjaXR5KClgIG1peGluIGhlcmUgc2luY2UgaXQgY2F1c2VzIGEgYnVnIHdpdGggdGV4dFxyXG4vLyBmaWVsZHMgaW4gSUU3LTguIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzU1Mi5cclxuXHJcbi5mYWRlIHtcclxuICBvcGFjaXR5OiAwO1xyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAuMTVzIGxpbmVhcik7XHJcbiAgJi5pbiB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxufVxyXG5cclxuLmNvbGxhcHNlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAmLmluICAgICAgeyBkaXNwbGF5OiBibG9jazsgfVxyXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0ciYuaW4gdG8gdHIuY29sbGFwc2UuaW5cclxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgdGJvZHkmLmluIHRvIHRib2R5LmNvbGxhcHNlLmluXHJcbn1cclxuXHJcbnRyLmNvbGxhcHNlLmluICAgIHsgZGlzcGxheTogdGFibGUtcm93OyB9XHJcblxyXG50Ym9keS5jb2xsYXBzZS5pbiB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cDsgfVxyXG5cclxuLmNvbGxhcHNpbmcge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBoZWlnaHQ6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5KGhlaWdodCwgdmlzaWJpbGl0eSk7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbiguMzVzKTtcclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbihlYXNlKTtcclxufVxyXG4iLCIvL1xyXG4vLyBEcm9wZG93biBtZW51c1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIERyb3Bkb3duIGFycm93L2NhcmV0XHJcbi5jYXJldCB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHdpZHRoOiAwO1xyXG4gIGhlaWdodDogMDtcclxuICBtYXJnaW4tbGVmdDogMnB4O1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgYm9yZGVyLXRvcDogICAkY2FyZXQtd2lkdGgtYmFzZSBkYXNoZWQ7XHJcbiAgYm9yZGVyLXRvcDogICAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCBcXDk7IC8vIElFOFxyXG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLWxlZnQ6ICAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGRpdilcclxuLmRyb3B1cCxcclxuLmRyb3Bkb3duIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi8vIFByZXZlbnQgdGhlIGZvY3VzIG9uIHRoZSBkcm9wZG93biB0b2dnbGUgd2hlbiBjbG9zaW5nIGRyb3Bkb3duc1xyXG4uZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcclxuICBvdXRsaW5lOiAwO1xyXG59XHJcblxyXG4vLyBUaGUgZHJvcGRvd24gbWVudSAodWwpXHJcbi5kcm9wZG93bi1tZW51IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAxMDAlO1xyXG4gIGxlZnQ6IDA7XHJcbiAgei1pbmRleDogJHppbmRleC1kcm9wZG93bjtcclxuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIG1pbi13aWR0aDogMTYwcHg7XHJcbiAgcGFkZGluZzogNXB4IDA7XHJcbiAgbWFyZ2luOiAycHggMCAwOyAvLyBvdmVycmlkZSBkZWZhdWx0IHVsXHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRkcm9wZG93bi1mYWxsYmFjay1ib3JkZXI7IC8vIElFOCBmYWxsYmFja1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRkcm9wZG93bi1ib3JkZXI7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcclxuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgNnB4IDEycHggcmdiYSgwLDAsMCwuMTc1KSk7XHJcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxuXHJcbiAgLy8gQWxpZ25zIHRoZSBkcm9wZG93biBtZW51IHRvIHJpZ2h0XHJcbiAgLy9cclxuICAvLyBEZXByZWNhdGVkIGFzIG9mIDMuMS4wIGluIGZhdm9yIG9mIGAuZHJvcGRvd24tbWVudS1bZGlyXWBcclxuICAmLnB1bGwtcmlnaHQge1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBsZWZ0OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIHRoZSBkcm9wZG93blxyXG4gIC5kaXZpZGVyIHtcclxuICAgIEBpbmNsdWRlIG5hdi1kaXZpZGVyKCRkcm9wZG93bi1kaXZpZGVyLWJnKTtcclxuICB9XHJcblxyXG4gIC8vIExpbmtzIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxyXG4gID4gbGkgPiBhIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZzogM3B4IDIwcHg7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcclxuICB9XHJcbn1cclxuXHJcbi8vIEhvdmVyL0ZvY3VzIHN0YXRlXHJcbi5kcm9wZG93bi1tZW51ID4gbGkgPiBhIHtcclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItYmc7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBBY3RpdmUgc3RhdGVcclxuLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYSB7XHJcbiAgJixcclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtYmc7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBEaXNhYmxlZCBzdGF0ZVxyXG4vL1xyXG4vLyBHcmF5IG91dCB0ZXh0IGFuZCBlbnN1cmUgdGhlIGhvdmVyL2ZvY3VzIHN0YXRlIHJlbWFpbnMgZ3JheVxyXG5cclxuLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhIHtcclxuICAmLFxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XHJcbiAgfVxyXG5cclxuICAvLyBOdWtlIGhvdmVyL2ZvY3VzIGVmZmVjdHNcclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50XHJcbiAgICBAaW5jbHVkZSByZXNldC1maWx0ZXI7XHJcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBPcGVuIHN0YXRlIGZvciB0aGUgZHJvcGRvd25cclxuLm9wZW4ge1xyXG4gIC8vIFNob3cgdGhlIG1lbnVcclxuICA+IC5kcm9wZG93bi1tZW51IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbiAgLy8gUmVtb3ZlIHRoZSBvdXRsaW5lIHdoZW4gOmZvY3VzIGlzIHRyaWdnZXJlZFxyXG4gID4gYSB7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLy8gTWVudSBwb3NpdGlvbmluZ1xyXG4vL1xyXG4vLyBBZGQgZXh0cmEgY2xhc3MgdG8gYC5kcm9wZG93bi1tZW51YCB0byBmbGlwIHRoZSBhbGlnbm1lbnQgb2YgdGhlIGRyb3Bkb3duXHJcbi8vIG1lbnUgd2l0aCB0aGUgcGFyZW50LlxyXG4uZHJvcGRvd24tbWVudS1yaWdodCB7XHJcbiAgbGVmdDogYXV0bzsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBgLmRyb3Bkb3duLW1lbnVgXHJcbiAgcmlnaHQ6IDA7XHJcbn1cclxuLy8gV2l0aCB2Mywgd2UgZW5hYmxlZCBhdXRvLWZsaXBwaW5nIGlmIHlvdSBoYXZlIGEgZHJvcGRvd24gd2l0aGluIGEgcmlnaHRcclxuLy8gYWxpZ25lZCBuYXYgY29tcG9uZW50LiBUbyBlbmFibGUgdGhlIHVuZG9pbmcgb2YgdGhhdCwgd2UgcHJvdmlkZSBhbiBvdmVycmlkZVxyXG4vLyB0byByZXN0b3JlIHRoZSBkZWZhdWx0IGRyb3Bkb3duIG1lbnUgYWxpZ25tZW50LlxyXG4vL1xyXG4vLyBUaGlzIGlzIG9ubHkgZm9yIGxlZnQtYWxpZ25pbmcgYSBkcm9wZG93biBtZW51IHdpdGhpbiBhIGAubmF2YmFyLXJpZ2h0YCBvclxyXG4vLyBgLnB1bGwtcmlnaHRgIG5hdiBjb21wb25lbnQuXHJcbi5kcm9wZG93bi1tZW51LWxlZnQge1xyXG4gIGxlZnQ6IDA7XHJcbiAgcmlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xyXG4uZHJvcGRvd24taGVhZGVyIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nOiAzcHggMjBweDtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcclxufVxyXG5cclxuLy8gQmFja2Ryb3AgdG8gY2F0Y2ggYm9keSBjbGlja3Mgb24gbW9iaWxlLCBldGMuXHJcbi5kcm9wZG93bi1iYWNrZHJvcCB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIGxlZnQ6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIHRvcDogMDtcclxuICB6LWluZGV4OiAoJHppbmRleC1kcm9wZG93biAtIDEwKTtcclxufVxyXG5cclxuLy8gUmlnaHQgYWxpZ25lZCBkcm9wZG93bnNcclxuLnB1bGwtcmlnaHQgPiAuZHJvcGRvd24tbWVudSB7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgbGVmdDogYXV0bztcclxufVxyXG5cclxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXHJcbi8vXHJcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldCwgYnJvLlxyXG4vLyBUT0RPOiBhYnN0cmFjdCB0aGlzIHNvIHRoYXQgdGhlIG5hdmJhciBmaXhlZCBzdHlsZXMgYXJlIG5vdCBwbGFjZWQgaGVyZT9cclxuXHJcbi5kcm9wdXAsXHJcbi5uYXZiYXItZml4ZWQtYm90dG9tIC5kcm9wZG93biB7XHJcbiAgLy8gUmV2ZXJzZSB0aGUgY2FyZXRcclxuICAuY2FyZXQge1xyXG4gICAgYm9yZGVyLXRvcDogMDtcclxuICAgIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aC1iYXNlIGRhc2hlZDtcclxuICAgIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIFxcOTsgLy8gSUU4XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gIH1cclxuICAvLyBEaWZmZXJlbnQgcG9zaXRpb25pbmcgZm9yIGJvdHRvbSB1cCBtZW51XHJcbiAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgdG9wOiBhdXRvO1xyXG4gICAgYm90dG9tOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIENvbXBvbmVudCBhbGlnbm1lbnRcclxuLy9cclxuLy8gUmVpdGVyYXRlIHBlciBuYXZiYXIubGVzcyBhbmQgdGhlIG1vZGlmaWVkIGNvbXBvbmVudCBhbGlnbm1lbnQgdGhlcmUuXHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gIC5uYXZiYXItcmlnaHQge1xyXG4gICAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICByaWdodDogMDsgbGVmdDogYXV0bztcclxuICAgIH1cclxuICAgIC8vIE5lY2Vzc2FyeSBmb3Igb3ZlcnJpZGVzIG9mIHRoZSBkZWZhdWx0IHJpZ2h0IGFsaWduZWQgbWVudS5cclxuICAgIC8vIFdpbGwgcmVtb3ZlIGNvbWUgdjQgaW4gYWxsIGxpa2VsaWhvb2QuXHJcbiAgICAuZHJvcGRvd24tbWVudS1sZWZ0IHtcclxuICAgICAgbGVmdDogMDsgcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcclxuLy9cclxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXHJcblxyXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAjZTVlNWU1KSB7XHJcbiAgaGVpZ2h0OiAxcHg7XHJcbiAgbWFyZ2luOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpIC0gMSkgMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxufVxyXG4iLCIvLyBSZXNldCBmaWx0ZXJzIGZvciBJRVxyXG4vL1xyXG4vLyBXaGVuIHlvdSBuZWVkIHRvIHJlbW92ZSBhIGdyYWRpZW50IGJhY2tncm91bmQsIGRvIG5vdCBmb3JnZXQgdG8gdXNlIHRoaXMgdG8gcmVzZXRcclxuLy8gdGhlIElFIGZpbHRlciBmb3IgSUU5IGFuZCBiZWxvdy5cclxuXHJcbkBtaXhpbiByZXNldC1maWx0ZXIoKSB7XHJcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTtcclxufVxyXG4iLCIvL1xyXG4vLyBCdXR0b24gZ3JvdXBzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cclxuLmJ0bi1ncm91cCxcclxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxyXG4gID4gLmJ0biB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjphY3RpdmUsXHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXHJcbi5idG4tZ3JvdXAge1xyXG4gIC5idG4gKyAuYnRuLFxyXG4gIC5idG4gKyAuYnRuLWdyb3VwLFxyXG4gIC5idG4tZ3JvdXAgKyAuYnRuLFxyXG4gIC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xyXG4gIH1cclxufVxyXG5cclxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxyXG4uYnRuLXRvb2xiYXIge1xyXG4gIG1hcmdpbi1sZWZ0OiAtNXB4OyAvLyBPZmZzZXQgdGhlIGZpcnN0IGNoaWxkJ3MgbWFyZ2luXHJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcblxyXG4gIC5idG4sXHJcbiAgLmJ0bi1ncm91cCxcclxuICAuaW5wdXQtZ3JvdXAge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgfVxyXG4gID4gLmJ0bixcclxuICA+IC5idG4tZ3JvdXAsXHJcbiAgPiAuaW5wdXQtZ3JvdXAge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICB9XHJcbn1cclxuXHJcbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcclxuICBib3JkZXItcmFkaXVzOiAwO1xyXG59XHJcblxyXG4vLyBTZXQgY29ybmVycyBpbmRpdmlkdWFsIGJlY2F1c2Ugc29tZXRpbWVzIGEgc2luZ2xlIGJ1dHRvbiBjYW4gYmUgaW4gYSAuYnRuLWdyb3VwIGFuZCB3ZSBuZWVkIDpmaXJzdC1jaGlsZCBhbmQgOmxhc3QtY2hpbGQgdG8gYm90aCBtYXRjaFxyXG4uYnRuLWdyb3VwID4gLmJ0bjpmaXJzdC1jaGlsZCB7XHJcbiAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgJjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xyXG4gIH1cclxufVxyXG4vLyBOZWVkIC5kcm9wZG93bi10b2dnbGUgc2luY2UgOmxhc3QtY2hpbGQgZG9lc24ndCBhcHBseSBnaXZlbiBhIC5kcm9wZG93bi1tZW51IGltbWVkaWF0ZWx5IGFmdGVyIGl0XHJcbi5idG4tZ3JvdXAgPiAuYnRuOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXHJcbi5idG4tZ3JvdXAgPiAuZHJvcGRvd24tdG9nZ2xlOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XHJcbn1cclxuXHJcbi8vIEN1c3RvbSBlZGl0cyBmb3IgaW5jbHVkaW5nIGJ0bi1ncm91cHMgd2l0aGluIGJ0bi1ncm91cHMgKHVzZWZ1bCBmb3IgaW5jbHVkaW5nIGRyb3Bkb3duIGJ1dHRvbnMgd2l0aGluIGEgYnRuLWdyb3VwKVxyXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cCB7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbn1cclxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbn1cclxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgPiAuYnRuOmxhc3QtY2hpbGQsXHJcbiAgPiAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XHJcbiAgfVxyXG59XHJcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcclxuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XHJcbn1cclxuXHJcbi8vIE9uIGFjdGl2ZSBhbmQgb3BlbiwgZG9uJ3Qgc2hvdyBvdXRsaW5lXHJcbi5idG4tZ3JvdXAgLmRyb3Bkb3duLXRvZ2dsZTphY3RpdmUsXHJcbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICBvdXRsaW5lOiAwO1xyXG59XHJcblxyXG5cclxuLy8gU2l6aW5nXHJcbi8vXHJcbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxyXG5cclxuLmJ0bi1ncm91cC14cyA+IC5idG4geyBAZXh0ZW5kIC5idG4teHM7IH1cclxuLmJ0bi1ncm91cC1zbSA+IC5idG4geyBAZXh0ZW5kIC5idG4tc207IH1cclxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cclxuXHJcblxyXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIEdpdmUgdGhlIGxpbmUgYmV0d2VlbiBidXR0b25zIHNvbWUgZGVwdGhcclxuLmJ0bi1ncm91cCA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICBwYWRkaW5nLWxlZnQ6IDhweDtcclxuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XHJcbn1cclxuLmJ0bi1ncm91cCA+IC5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICBwYWRkaW5nLWxlZnQ6IDEycHg7XHJcbiAgcGFkZGluZy1yaWdodDogMTJweDtcclxufVxyXG5cclxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XHJcbi8vIFJlbW92ZSB0aGUgZ3JhZGllbnQgYW5kIHNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcclxuLmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGUge1xyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkpO1xyXG5cclxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXHJcbiAgJi5idG4tbGluayB7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFJlcG9zaXRpb24gdGhlIGNhcmV0XHJcbi5idG4gLmNhcmV0IHtcclxuICBtYXJnaW4tbGVmdDogMDtcclxufVxyXG4vLyBDYXJldHMgaW4gb3RoZXIgYnV0dG9uIHNpemVzXHJcbi5idG4tbGcgLmNhcmV0IHtcclxuICBib3JkZXItd2lkdGg6ICRjYXJldC13aWR0aC1sYXJnZSAkY2FyZXQtd2lkdGgtbGFyZ2UgMDtcclxuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xyXG59XHJcbi8vIFVwc2lkZSBkb3duIGNhcmV0cyBmb3IgLmRyb3B1cFxyXG4uZHJvcHVwIC5idG4tbGcgLmNhcmV0IHtcclxuICBib3JkZXItd2lkdGg6IDAgJGNhcmV0LXdpZHRoLWxhcmdlICRjYXJldC13aWR0aC1sYXJnZTtcclxufVxyXG5cclxuXHJcbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XHJcbiAgPiAuYnRuLFxyXG4gID4gLmJ0bi1ncm91cCxcclxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gIC8vIENsZWFyIGZsb2F0cyBzbyBkcm9wZG93biBtZW51cyBjYW4gYmUgcHJvcGVybHkgcGxhY2VkXHJcbiAgPiAuYnRuLWdyb3VwIHtcclxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgPiAuYnRuIHtcclxuICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICA+IC5idG4gKyAuYnRuLFxyXG4gID4gLmJ0biArIC5idG4tZ3JvdXAsXHJcbiAgPiAuYnRuLWdyb3VwICsgLmJ0bixcclxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcclxuICAgIG1hcmdpbi10b3A6IC0xcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICB9XHJcbn1cclxuXHJcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIHtcclxuICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICB9XHJcbiAgJjpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYnRuLWJvcmRlci1yYWRpdXMtYmFzZTtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xyXG4gIH1cclxuICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2U7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcclxuICB9XHJcbn1cclxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbn1cclxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgPiAuYnRuOmxhc3QtY2hpbGQsXHJcbiAgPiAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xyXG4gIH1cclxufVxyXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bjpmaXJzdC1jaGlsZCB7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XHJcbn1cclxuXHJcblxyXG4vLyBKdXN0aWZpZWQgYnV0dG9uIGdyb3Vwc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uYnRuLWdyb3VwLWp1c3RpZmllZCB7XHJcbiAgZGlzcGxheTogdGFibGU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcclxuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xyXG4gID4gLmJ0bixcclxuICA+IC5idG4tZ3JvdXAge1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgd2lkdGg6IDElO1xyXG4gIH1cclxuICA+IC5idG4tZ3JvdXAgLmJ0biB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gID4gLmJ0bi1ncm91cCAuZHJvcGRvd24tbWVudSB7XHJcbiAgICBsZWZ0OiBhdXRvO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIENoZWNrYm94IGFuZCByYWRpbyBvcHRpb25zXHJcbi8vXHJcbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXHJcbi8vIGByZXF1aXJlZGAgYXR0cmlidXRlLCB3ZSBoYXZlIHRvIFwiaGlkZVwiIHRoZSBpbnB1dHMgdmlhIGBjbGlwYC4gV2UgY2Fubm90IHVzZVxyXG4vLyBgZGlzcGxheTogbm9uZTtgIG9yIGB2aXNpYmlsaXR5OiBoaWRkZW47YCBhcyB0aGF0IGFsc28gaGlkZXMgdGhlIHBvcG92ZXIuXHJcbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXHJcbi8vIGNlcnRhaW4gY2FzZXMgd2hpY2ggaXMgcHJldmVudGVkIGJ5IHVzaW5nIGBjbGlwYCBhbmQgYHBvaW50ZXItZXZlbnRzYC5cclxuLy8gVGhpcyB3YXksIHdlIGVuc3VyZSBhIERPTSBlbGVtZW50IGlzIHZpc2libGUgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgZnJvbS5cclxuLy9cclxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEyNzk0IGFuZFxyXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xNDU1OSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cclxuXHJcbltkYXRhLXRvZ2dsZT1cImJ1dHRvbnNcIl0ge1xyXG4gID4gLmJ0bixcclxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcclxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgY2xpcDogcmVjdCgwLDAsMCwwKTtcclxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcclxuXHJcbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XHJcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XHJcbiAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XHJcbn1cclxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xyXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xyXG4gICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xyXG59XHJcbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XHJcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XHJcbiAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XHJcbn1cclxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XHJcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcclxuICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xyXG59XHJcbiIsIi8vXHJcbi8vIElucHV0IGdyb3Vwc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gQmFzZSBzdHlsZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uaW5wdXQtZ3JvdXAge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGRyb3Bkb3duc1xyXG4gIGRpc3BsYXk6IHRhYmxlO1xyXG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7IC8vIHByZXZlbnQgaW5wdXQgZ3JvdXBzIGZyb20gaW5oZXJpdGluZyBib3JkZXIgc3R5bGVzIGZyb20gdGFibGUgY2VsbHMgd2hlbiBwbGFjZWQgd2l0aGluIGEgdGFibGVcclxuXHJcbiAgLy8gVW5kbyBwYWRkaW5nIGFuZCBmbG9hdCBvZiBncmlkIGNsYXNzZXNcclxuICAmW2NsYXNzKj1cImNvbC1cIl0ge1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gIH1cclxuXHJcbiAgLmZvcm0tY29udHJvbCB7XHJcbiAgICAvLyBFbnN1cmUgdGhhdCB0aGUgaW5wdXQgaXMgYWx3YXlzIGFib3ZlIHRoZSAqYXBwZW5kZWQqIGFkZG9uIGJ1dHRvbiBmb3JcclxuICAgIC8vIHByb3BlciBib3JkZXIgY29sb3JzLlxyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjtcclxuXHJcbiAgICAvLyBJRTkgZnViYXJzIHRoZSBwbGFjZWhvbGRlciBhdHRyaWJ1dGUgaW4gdGV4dCBpbnB1dHMgYW5kIHRoZSBhcnJvd3Mgb25cclxuICAgIC8vIHNlbGVjdCBlbGVtZW50cyBpbiBpbnB1dCBncm91cHMuIFRvIGZpeCBpdCwgd2UgZmxvYXQgdGhlIGlucHV0LiBEZXRhaWxzOlxyXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU2MSNpc3N1ZWNvbW1lbnQtMjg5MzY4NTVcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG5cclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcbn1cclxuXHJcbi8vIFNpemluZyBvcHRpb25zXHJcbi8vXHJcbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcclxuLy8gbWFuaXB1bGF0aW9uLlxyXG5cclxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcclxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uLFxyXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XHJcbiAgQGV4dGVuZCAuaW5wdXQtbGc7XHJcbn1cclxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcclxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uLFxyXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XHJcbiAgQGV4dGVuZCAuaW5wdXQtc207XHJcbn1cclxuXHJcblxyXG4vLyBEaXNwbGF5IGFzIHRhYmxlLWNlbGxcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uaW5wdXQtZ3JvdXAtYWRkb24sXHJcbi5pbnB1dC1ncm91cC1idG4sXHJcbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcclxuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG5cclxuICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICB9XHJcbn1cclxuLy8gQWRkb24gYW5kIGFkZG9uIHdyYXBwZXIgZm9yIGJ1dHRvbnNcclxuLmlucHV0LWdyb3VwLWFkZG9uLFxyXG4uaW5wdXQtZ3JvdXAtYnRuIHtcclxuICB3aWR0aDogMSU7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBNYXRjaCB0aGUgaW5wdXRzXHJcbn1cclxuXHJcbi8vIFRleHQgaW5wdXQgZ3JvdXBzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmlucHV0LWdyb3VwLWFkZG9uIHtcclxuICBwYWRkaW5nOiAkcGFkZGluZy1iYXNlLXZlcnRpY2FsICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcclxuICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XHJcblxyXG4gIC8vIFNpemluZ1xyXG4gICYuaW5wdXQtc20ge1xyXG4gICAgcGFkZGluZzogJHBhZGRpbmctc21hbGwtdmVydGljYWwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtYWxsO1xyXG4gIH1cclxuICAmLmlucHV0LWxnIHtcclxuICAgIHBhZGRpbmc6ICRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcclxuICB9XHJcblxyXG4gIC8vIE51a2UgZGVmYXVsdCBtYXJnaW5zIGZyb20gY2hlY2tib3hlcyBhbmQgcmFkaW9zIHRvIHZlcnRpY2FsbHkgY2VudGVyIHdpdGhpbi5cclxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXHJcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcclxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6Zmlyc3QtY2hpbGQsXHJcbi5pbnB1dC1ncm91cC1hZGRvbjpmaXJzdC1jaGlsZCxcclxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4sXHJcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwID4gLmJ0bixcclxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5kcm9wZG93bi10b2dnbGUsXHJcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXHJcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xyXG4gIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XHJcbn1cclxuLmlucHV0LWdyb3VwLWFkZG9uOmZpcnN0LWNoaWxkIHtcclxuICBib3JkZXItcmlnaHQ6IDA7XHJcbn1cclxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6bGFzdC1jaGlsZCxcclxuLmlucHV0LWdyb3VwLWFkZG9uOmxhc3QtY2hpbGQsXHJcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4sXHJcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXAgPiAuYnRuLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuZHJvcGRvd24tdG9nZ2xlLFxyXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcclxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcclxuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XHJcbn1cclxuLmlucHV0LWdyb3VwLWFkZG9uOmxhc3QtY2hpbGQge1xyXG4gIGJvcmRlci1sZWZ0OiAwO1xyXG59XHJcblxyXG4vLyBCdXR0b24gaW5wdXQgZ3JvdXBzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmlucHV0LWdyb3VwLWJ0biB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIC8vIEphbmtpbHkgcHJldmVudCBpbnB1dCBidXR0b24gZ3JvdXBzIGZyb20gd3JhcHBpbmcgd2l0aCBgd2hpdGUtc3BhY2VgIGFuZFxyXG4gIC8vIGBmb250LXNpemVgIGluIGNvbWJpbmF0aW9uIHdpdGggYGlubGluZS1ibG9ja2Agb24gYnV0dG9ucy5cclxuICBmb250LXNpemU6IDA7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHJcbiAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBzcGFjaW5nLCBwb3NpdGlvbiBmb3IgYnJpbmdpbmcgaG92ZXJlZC9mb2N1c2VkL2FjdGl2ZWRcclxuICAvLyBlbGVtZW50IGFib3ZlIHRoZSBzaWJsaW5ncy5cclxuICA+IC5idG4ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgKyAuYnRuIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XHJcbiAgICB9XHJcbiAgICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBidXR0b24gdG8gdGhlIGZyb250XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIE5lZ2F0aXZlIG1hcmdpbiB0byBvbmx5IGhhdmUgYSAxcHggYm9yZGVyIGJldHdlZW4gdGhlIHR3b1xyXG4gICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgPiAuYnRuLFxyXG4gICAgPiAuYnRuLWdyb3VwIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAmOmxhc3QtY2hpbGQge1xyXG4gICAgPiAuYnRuLFxyXG4gICAgPiAuYnRuLWdyb3VwIHtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIE5hdnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBCYXNlIGNsYXNzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4ubmF2IHtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCB1bC9vbFxyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcblxyXG4gID4gbGkge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgPiBhIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmc7XHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LWxpbmstaG92ZXItYmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBEaXNhYmxlZCBzdGF0ZSBzZXRzIHRleHQgdG8gZ3JheSBhbmQgbnVrZXMgaG92ZXIvdGFiIGVmZmVjdHNcclxuICAgICYuZGlzYWJsZWQgPiBhIHtcclxuICAgICAgY29sb3I6ICRuYXYtZGlzYWJsZWQtbGluay1jb2xvcjtcclxuXHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiAkbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gT3BlbiBkcm9wZG93bnNcclxuICAub3BlbiA+IGEge1xyXG4gICAgJixcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1saW5rLWhvdmVyLWJnO1xyXG4gICAgICBib3JkZXItY29sb3I6ICRsaW5rLWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gTmF2IGRpdmlkZXJzIChkZXByZWNhdGVkIHdpdGggdjMuMC4xKVxyXG4gIC8vXHJcbiAgLy8gVGhpcyBzaG91bGQgaGF2ZSBiZWVuIHJlbW92ZWQgaW4gdjMgd2l0aCB0aGUgZHJvcHBpbmcgb2YgYC5uYXYtbGlzdGAsIGJ1dFxyXG4gIC8vIHdlIG1pc3NlZCBpdC4gV2UgZG9uJ3QgY3VycmVudGx5IHN1cHBvcnQgdGhpcyBhbnl3aGVyZSwgYnV0IGluIHRoZSBpbnRlcmVzdFxyXG4gIC8vIG9mIG1haW50YWluaW5nIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgaW4gY2FzZSB5b3UgdXNlIGl0LCBpdCdzIGRlcHJlY2F0ZWQuXHJcbiAgLm5hdi1kaXZpZGVyIHtcclxuICAgIEBpbmNsdWRlIG5hdi1kaXZpZGVyO1xyXG4gIH1cclxuXHJcbiAgLy8gUHJldmVudCBJRTggZnJvbSBtaXNwbGFjaW5nIGltZ3NcclxuICAvL1xyXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9pc3N1ZXMvOTg0I2lzc3VlY29tbWVudC0zOTg1OTg5XHJcbiAgPiBsaSA+IGEgPiBpbWcge1xyXG4gICAgbWF4LXdpZHRoOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFRhYnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gR2l2ZSB0aGUgdGFicyBzb21ldGhpbmcgdG8gc2l0IG9uXHJcbi5uYXYtdGFicyB7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XHJcbiAgPiBsaSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIC8vIE1ha2UgdGhlIGxpc3QtaXRlbXMgb3ZlcmxheSB0aGUgYm90dG9tIGJvcmRlclxyXG4gICAgbWFyZ2luLWJvdHRvbTogLTFweDtcclxuXHJcbiAgICAvLyBBY3R1YWwgdGFicyAoYXMgbGlua3MpXHJcbiAgICA+IGEge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDJweDtcclxuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlIDAgMDtcclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yICRuYXYtdGFicy1ib3JkZXItY29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBBY3RpdmUgc3RhdGUsIGFuZCBpdHMgOmhvdmVyIHRvIG92ZXJyaWRlIG5vcm1hbCA6aG92ZXJcclxuICAgICYuYWN0aXZlID4gYSB7XHJcbiAgICAgICYsXHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIHB1bGxpbmcgdGhpcyBpbiBtYWlubHkgZm9yIGxlc3Mgc2hvcnRoYW5kXHJcbiAgJi5uYXYtanVzdGlmaWVkIHtcclxuICAgIEBleHRlbmQgLm5hdi1qdXN0aWZpZWQ7XHJcbiAgICBAZXh0ZW5kIC5uYXYtdGFicy1qdXN0aWZpZWQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gUGlsbHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4ubmF2LXBpbGxzIHtcclxuICA+IGxpIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG5cclxuICAgIC8vIExpbmtzIHJlbmRlcmVkIGFzIHBpbGxzXHJcbiAgICA+IGEge1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM7XHJcbiAgICB9XHJcbiAgICArIGxpIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDJweDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBBY3RpdmUgc3RhdGVcclxuICAgICYuYWN0aXZlID4gYSB7XHJcbiAgICAgICYsXHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiAkbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItYmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBTdGFja2VkIHBpbGxzXHJcbi5uYXYtc3RhY2tlZCB7XHJcbiAgPiBsaSB7XHJcbiAgICBmbG9hdDogbm9uZTtcclxuICAgICsgbGkge1xyXG4gICAgICBtYXJnaW4tdG9wOiAycHg7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyAvLyBubyBuZWVkIGZvciB0aGlzIGdhcCBiZXR3ZWVuIG5hdiBpdGVtc1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIE5hdiB2YXJpYXRpb25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBKdXN0aWZpZWQgbmF2IGxpbmtzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5uYXYtanVzdGlmaWVkIHtcclxuICB3aWR0aDogMTAwJTtcclxuXHJcbiAgPiBsaSB7XHJcbiAgICBmbG9hdDogbm9uZTtcclxuICAgID4gYSB7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgdG9wOiBhdXRvO1xyXG4gICAgbGVmdDogYXV0bztcclxuICB9XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG4gICAgPiBsaSB7XHJcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgICAgIHdpZHRoOiAxJTtcclxuICAgICAgPiBhIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNb3ZlIGJvcmRlcnMgdG8gYW5jaG9ycyBpbnN0ZWFkIG9mIGJvdHRvbSBvZiBsaXN0XHJcbi8vXHJcbi8vIE1peGluIGZvciBhZGRpbmcgb24gdG9wIHRoZSBzaGFyZWQgYC5uYXYtanVzdGlmaWVkYCBzdHlsZXMgZm9yIG91ciB0YWJzXHJcbi5uYXYtdGFicy1qdXN0aWZpZWQge1xyXG4gIGJvcmRlci1ib3R0b206IDA7XHJcblxyXG4gID4gbGkgPiBhIHtcclxuICAgIC8vIE92ZXJyaWRlIG1hcmdpbiBmcm9tIC5uYXYtdGFic1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcclxuICB9XHJcblxyXG4gID4gLmFjdGl2ZSA+IGEsXHJcbiAgPiAuYWN0aXZlID4gYTpob3ZlcixcclxuICA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I7XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgID4gbGkgPiBhIHtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAwIDA7XHJcbiAgICB9XHJcbiAgICA+IC5hY3RpdmUgPiBhLFxyXG4gICAgPiAuYWN0aXZlID4gYTpob3ZlcixcclxuICAgID4gLmFjdGl2ZSA+IGE6Zm9jdXMge1xyXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBUYWJiYWJsZSB0YWJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxyXG4udGFiLWNvbnRlbnQge1xyXG4gID4gLnRhYi1wYW5lIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gID4gLmFjdGl2ZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBEcm9wZG93bnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gU3BlY2lmaWMgZHJvcGRvd25zXHJcbi5uYXYtdGFicyAuZHJvcGRvd24tbWVudSB7XHJcbiAgLy8gbWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXHJcbiAgbWFyZ2luLXRvcDogLTFweDtcclxuICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxyXG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xyXG59XHJcbiIsIi8vXHJcbi8vIE5hdmJhcnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBXcmFwcGVyIGFuZCBiYXNlIGNsYXNzXHJcbi8vXHJcbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXHJcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxyXG5cclxuLm5hdmJhciB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1pbi1oZWlnaHQ6ICRuYXZiYXItaGVpZ2h0OyAvLyBFbnN1cmUgYSBuYXZiYXIgYWx3YXlzIHNob3dzIChlLmcuLCB3aXRob3V0IGEgLm5hdmJhci1icmFuZCBpbiBjb2xsYXBzZWQgbW9kZSlcclxuICBtYXJnaW4tYm90dG9tOiAkbmF2YmFyLW1hcmdpbi1ib3R0b207XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblxyXG4gIC8vIFByZXZlbnQgZmxvYXRzIGZyb20gYnJlYWtpbmcgdGhlIG5hdmJhclxyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gICAgYm9yZGVyLXJhZGl1czogJG5hdmJhci1ib3JkZXItcmFkaXVzO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIE5hdmJhciBoZWFkaW5nXHJcbi8vXHJcbi8vIEdyb3VwcyBgLm5hdmJhci1icmFuZGAgYW5kIGAubmF2YmFyLXRvZ2dsZWAgaW50byBhIHNpbmdsZSBjb21wb25lbnQgZm9yIGVhc3lcclxuLy8gc3R5bGluZyBvZiByZXNwb25zaXZlIGFzcGVjdHMuXHJcblxyXG4ubmF2YmFyLWhlYWRlciB7XHJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBOYXZiYXIgY29sbGFwc2UgKGJvZHkpXHJcbi8vXHJcbi8vIEdyb3VwIHlvdXIgbmF2YmFyIGNvbnRlbnQgaW50byB0aGlzIGZvciBlYXN5IGNvbGxhcHNpbmcgYW5kIGV4cGFuZGluZyBhY3Jvc3NcclxuLy8gdmFyaW91cyBkZXZpY2Ugc2l6ZXMuIEJ5IGRlZmF1bHQsIHRoaXMgY29udGVudCBpcyBjb2xsYXBzZWQgd2hlbiA8NzY4cHgsIGJ1dFxyXG4vLyB3aWxsIGV4cGFuZCBwYXN0IHRoYXQgZm9yIGEgaG9yaXpvbnRhbCBkaXNwbGF5LlxyXG4vL1xyXG4vLyBUbyBzdGFydCAob24gbW9iaWxlIGRldmljZXMpIHRoZSBuYXZiYXIgbGlua3MsIGZvcm1zLCBhbmQgYnV0dG9ucyBhcmUgc3RhY2tlZFxyXG4vLyB2ZXJ0aWNhbGx5IGFuZCBpbmNsdWRlIGEgYG1heC1oZWlnaHRgIHRvIG92ZXJmbG93IGluIGNhc2UgeW91IGhhdmUgdG9vIG11Y2hcclxuLy8gY29udGVudCBmb3IgdGhlIHVzZXIncyB2aWV3cG9ydC5cclxuXHJcbi5uYXZiYXItY29sbGFwc2Uge1xyXG4gIG92ZXJmbG93LXg6IHZpc2libGU7XHJcbiAgcGFkZGluZy1yaWdodDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgcGFkZGluZy1sZWZ0OiAgJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSk7XHJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xyXG5cclxuICAmLmluIHtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBib3JkZXItdG9wOiAwO1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuXHJcbiAgICAmLmNvbGxhcHNlIHtcclxuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IHNldHRpbmdcclxuICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmLmluIHtcclxuICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBVbmRvIHRoZSBjb2xsYXBzZSBzaWRlIHBhZGRpbmcgZm9yIG5hdmJhcnMgd2l0aCBjb250YWluZXJzIHRvIGVuc3VyZVxyXG4gICAgLy8gYWxpZ25tZW50IG9mIHJpZ2h0LWFsaWduZWQgY29udGVudHMuXHJcbiAgICAubmF2YmFyLWZpeGVkLXRvcCAmLFxyXG4gICAgLm5hdmJhci1zdGF0aWMtdG9wICYsXHJcbiAgICAubmF2YmFyLWZpeGVkLWJvdHRvbSAmIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLm5hdmJhci1maXhlZC10b3AsXHJcbi5uYXZiYXItZml4ZWQtYm90dG9tIHtcclxuICAubmF2YmFyLWNvbGxhcHNlIHtcclxuICAgIG1heC1oZWlnaHQ6ICRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDtcclxuXHJcbiAgICBAbWVkaWEgKG1heC1kZXZpY2Utd2lkdGg6ICRzY3JlZW4teHMtbWluKSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcclxuICAgICAgbWF4LWhlaWdodDogMjAwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gQm90aCBuYXZiYXIgaGVhZGVyIGFuZCBjb2xsYXBzZVxyXG4vL1xyXG4vLyBXaGVuIGEgY29udGFpbmVyIGlzIHByZXNlbnQsIGNoYW5nZSB0aGUgYmVoYXZpb3Igb2YgdGhlIGhlYWRlciBhbmQgY29sbGFwc2UuXHJcblxyXG4uY29udGFpbmVyLFxyXG4uY29udGFpbmVyLWZsdWlkIHtcclxuICA+IC5uYXZiYXItaGVhZGVyLFxyXG4gID4gLm5hdmJhci1jb2xsYXBzZSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuICAgIG1hcmdpbi1sZWZ0OiAgLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgbWFyZ2luLWxlZnQ6ICAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vXHJcbi8vIE5hdmJhciBhbGlnbm1lbnQgb3B0aW9uc1xyXG4vL1xyXG4vLyBEaXNwbGF5IHRoZSBuYXZiYXIgYWNyb3NzIHRoZSBlbnRpcmV0eSBvZiB0aGUgcGFnZSBvciBmaXhlZCBpdCB0byB0aGUgdG9wIG9yXHJcbi8vIGJvdHRvbSBvZiB0aGUgcGFnZS5cclxuXHJcbi8vIFN0YXRpYyB0b3AgKHVuZml4ZWQsIGJ1dCAxMDAlIHdpZGUpIG5hdmJhclxyXG4ubmF2YmFyLXN0YXRpYy10b3Age1xyXG4gIHotaW5kZXg6ICR6aW5kZXgtbmF2YmFyO1xyXG4gIGJvcmRlci13aWR0aDogMCAwIDFweDtcclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBGaXggdGhlIHRvcC9ib3R0b20gbmF2YmFycyB3aGVuIHNjcmVlbiByZWFsIGVzdGF0ZSBzdXBwb3J0cyBpdFxyXG4ubmF2YmFyLWZpeGVkLXRvcCxcclxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICByaWdodDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHotaW5kZXg6ICR6aW5kZXgtbmF2YmFyLWZpeGVkO1xyXG5cclxuICAvLyBVbmRvIHRoZSByb3VuZGVkIGNvcm5lcnNcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICB9XHJcbn1cclxuLm5hdmJhci1maXhlZC10b3Age1xyXG4gIHRvcDogMDtcclxuICBib3JkZXItd2lkdGg6IDAgMCAxcHg7XHJcbn1cclxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xyXG4gIGJvdHRvbTogMDtcclxuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBvdmVycmlkZSAubmF2YmFyIGRlZmF1bHRzXHJcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwO1xyXG59XHJcblxyXG5cclxuLy8gQnJhbmQvcHJvamVjdCBuYW1lXHJcblxyXG4ubmF2YmFyLWJyYW5kIHtcclxuICBmbG9hdDogbGVmdDtcclxuICBwYWRkaW5nOiAkbmF2YmFyLXBhZGRpbmctdmVydGljYWwgJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgaGVpZ2h0OiAkbmF2YmFyLWhlaWdodDtcclxuXHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcblxyXG4gID4gaW1nIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAgIC5uYXZiYXIgPiAuY29udGFpbmVyICYsXHJcbiAgICAubmF2YmFyID4gLmNvbnRhaW5lci1mbHVpZCAmIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBOYXZiYXIgdG9nZ2xlXHJcbi8vXHJcbi8vIEN1c3RvbSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBgLm5hdmJhci1jb2xsYXBzZWAsIHBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlXHJcbi8vIEphdmFTY3JpcHQgcGx1Z2luLlxyXG5cclxuLm5hdmJhci10b2dnbGUge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBmbG9hdDogcmlnaHQ7XHJcbiAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuICBwYWRkaW5nOiA5cHggMTBweDtcclxuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oMzRweCk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MvaXNzdWVzLzIxNFxyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XHJcblxyXG4gIC8vIFdlIHJlbW92ZSB0aGUgYG91dGxpbmVgIGhlcmUsIGJ1dCBsYXRlciBjb21wZW5zYXRlIGJ5IGF0dGFjaGluZyBgOmhvdmVyYFxyXG4gIC8vIHN0eWxlcyB0byBgOmZvY3VzYC5cclxuICAmOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgfVxyXG5cclxuICAvLyBCYXJzXHJcbiAgLmljb24tYmFyIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IDIycHg7XHJcbiAgICBoZWlnaHQ6IDJweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcclxuICB9XHJcbiAgLmljb24tYmFyICsgLmljb24tYmFyIHtcclxuICAgIG1hcmdpbi10b3A6IDRweDtcclxuICB9XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIE5hdmJhciBuYXYgbGlua3NcclxuLy9cclxuLy8gQnVpbGRzIG9uIHRvcCBvZiB0aGUgYC5uYXZgIGNvbXBvbmVudHMgd2l0aCBpdHMgb3duIG1vZGlmaWVyIGNsYXNzIHRvIG1ha2VcclxuLy8gdGhlIG5hdiB0aGUgZnVsbCBoZWlnaHQgb2YgdGhlIGhvcml6b250YWwgbmF2IChhYm92ZSA3NjhweCkuXHJcblxyXG4ubmF2YmFyLW5hdiB7XHJcbiAgbWFyZ2luOiAoJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsIC8gMikgKC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbCk7XHJcblxyXG4gID4gbGkgPiBhIHtcclxuICAgIHBhZGRpbmctdG9wOiAgICAxMHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XHJcbiAgICAvLyBEcm9wZG93bnMgZ2V0IGN1c3RvbSBkaXNwbGF5IHdoZW4gY29sbGFwc2VkXHJcbiAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgPiBsaSA+IGEsXHJcbiAgICAgIC5kcm9wZG93bi1oZWFkZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IDVweCAxNXB4IDVweCAyNXB4O1xyXG4gICAgICB9XHJcbiAgICAgID4gbGkgPiBhIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gVW5jb2xsYXBzZSB0aGUgbmF2XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWFyZ2luOiAwO1xyXG5cclxuICAgID4gbGkge1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgPiBhIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogICAgJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLXBhZGRpbmctdmVydGljYWw7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBOYXZiYXIgZm9ybVxyXG4vL1xyXG4vLyBFeHRlbnNpb24gb2YgdGhlIGAuZm9ybS1pbmxpbmVgIHdpdGggc29tZSBleHRyYSBmbGF2b3IgZm9yIG9wdGltdW0gZGlzcGxheSBpblxyXG4vLyBvdXIgbmF2YmFycy5cclxuXHJcbi5uYXZiYXItZm9ybSB7XHJcbiAgbWFyZ2luLWxlZnQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuICBtYXJnaW4tcmlnaHQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuICBwYWRkaW5nOiAxMHB4ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgJHNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKSwgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKTtcclxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRzaGFkb3cpO1xyXG5cclxuICAvLyBNaXhpbiBiZWhhdmlvciBmb3Igb3B0aW11bSBkaXNwbGF5XHJcbiAgQGluY2x1ZGUgZm9ybS1pbmxpbmU7XHJcblxyXG4gIC5mb3JtLWdyb3VwIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcblxyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIFZlcnRpY2FsbHkgY2VudGVyIGluIGV4cGFuZGVkLCBob3Jpem9udGFsIG5hdmJhclxyXG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkaW5wdXQtaGVpZ2h0LWJhc2UpO1xyXG5cclxuICAvLyBVbmRvIDEwMCUgd2lkdGggZm9yIHB1bGwgY2xhc3Nlc1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIGJvcmRlcjogMDtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRHJvcGRvd24gbWVudXNcclxuXHJcbi8vIE1lbnUgcG9zaXRpb24gYW5kIG1lbnUgY2FyZXRzXHJcbi5uYXZiYXItbmF2ID4gbGkgPiAuZHJvcGRvd24tbWVudSB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcclxufVxyXG4vLyBNZW51IHBvc2l0aW9uIGFuZCBtZW51IGNhcmV0IHN1cHBvcnQgZm9yIGRyb3B1cHMgdmlhIGV4dHJhIGRyb3B1cCBjbGFzc1xyXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSAubmF2YmFyLW5hdiA+IGxpID4gLmRyb3Bkb3duLW1lbnUge1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG5hdmJhci1ib3JkZXItcmFkaXVzKTtcclxuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcclxufVxyXG5cclxuXHJcbi8vIEJ1dHRvbnMgaW4gbmF2YmFyc1xyXG4vL1xyXG4vLyBWZXJ0aWNhbGx5IGNlbnRlciBhIGJ1dHRvbiB3aXRoaW4gYSBuYXZiYXIgKHdoZW4gKm5vdCogaW4gYSBmb3JtKS5cclxuXHJcbi5uYXZiYXItYnRuIHtcclxuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGlucHV0LWhlaWdodC1iYXNlKTtcclxuXHJcbiAgJi5idG4tc20ge1xyXG4gICAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRpbnB1dC1oZWlnaHQtc21hbGwpO1xyXG4gIH1cclxuICAmLmJ0bi14cyB7XHJcbiAgICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oMjIpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFRleHQgaW4gbmF2YmFyc1xyXG4vL1xyXG4vLyBBZGQgYSBjbGFzcyB0byBtYWtlIGFueSBlbGVtZW50IHByb3Blcmx5IGFsaWduIGl0c2VsZiB2ZXJ0aWNhbGx5IHdpdGhpbiB0aGUgbmF2YmFycy5cclxuXHJcbi5uYXZiYXItdGV4dCB7XHJcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRsaW5lLWhlaWdodC1jb21wdXRlZCk7XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIG1hcmdpbi1sZWZ0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuICAgIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gQ29tcG9uZW50IGFsaWdubWVudFxyXG4vL1xyXG4vLyBSZXB1cnBvc2UgdGhlIHB1bGwgdXRpbGl0aWVzIGFzIHRoZWlyIG93biBuYXZiYXIgdXRpbGl0aWVzIHRvIGF2b2lkIHNwZWNpZmljaXR5XHJcbi8vIGlzc3VlcyB3aXRoIHBhcmVudHMgYW5kIGNoYWluaW5nLiBPbmx5IGRvIHRoaXMgd2hlbiB0aGUgbmF2YmFyIGlzIHVuY29sbGFwc2VkXHJcbi8vIHRob3VnaCBzbyB0aGF0IG5hdmJhciBjb250ZW50cyBwcm9wZXJseSBzdGFjayBhbmQgYWxpZ24gaW4gbW9iaWxlLlxyXG4vL1xyXG4vLyBEZWNsYXJlZCBhZnRlciB0aGUgbmF2YmFyIGNvbXBvbmVudHMgdG8gZW5zdXJlIG1vcmUgc3BlY2lmaWNpdHkgb24gdGhlIG1hcmdpbnMuXHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xyXG4gIC5uYXZiYXItbGVmdCB7XHJcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xyXG4gIH1cclxuICAubmF2YmFyLXJpZ2h0IHtcclxuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xyXG4gIG1hcmdpbi1yaWdodDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xyXG5cclxuICAgIH4gLm5hdmJhci1yaWdodCB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBBbHRlcm5hdGUgbmF2YmFyc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gRGVmYXVsdCBuYXZiYXJcclxuLm5hdmJhci1kZWZhdWx0IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYmc7XHJcbiAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYm9yZGVyO1xyXG5cclxuICAubmF2YmFyLWJyYW5kIHtcclxuICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItY29sb3I7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1iZztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5uYXZiYXItdGV4dCB7XHJcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWNvbG9yO1xyXG4gIH1cclxuXHJcbiAgLm5hdmJhci1uYXYge1xyXG4gICAgPiBsaSA+IGEge1xyXG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XHJcblxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgID4gLmFjdGl2ZSA+IGEge1xyXG4gICAgICAmLFxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiAuZGlzYWJsZWQgPiBhIHtcclxuICAgICAgJixcclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubmF2YmFyLXRvZ2dsZSB7XHJcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGVmYXVsdC10b2dnbGUtYm9yZGVyLWNvbG9yO1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWhvdmVyLWJnO1xyXG4gICAgfVxyXG4gICAgLmljb24tYmFyIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5uYXZiYXItY29sbGFwc2UsXHJcbiAgLm5hdmJhci1mb3JtIHtcclxuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJvcmRlcjtcclxuICB9XHJcblxyXG4gIC8vIERyb3Bkb3duIG1lbnUgaXRlbXNcclxuICAubmF2YmFyLW5hdiB7XHJcbiAgICAvLyBSZW1vdmUgYmFja2dyb3VuZCBjb2xvciBmcm9tIG9wZW4gZHJvcGRvd25cclxuICAgID4gLm9wZW4gPiBhIHtcclxuICAgICAgJixcclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnO1xyXG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcclxuICAgICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheSB3aGVuIGNvbGxhcHNlZFxyXG4gICAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgPiBsaSA+IGEge1xyXG4gICAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xyXG4gICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICA+IC5hY3RpdmUgPiBhIHtcclxuICAgICAgICAgICYsXHJcbiAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgPiAuZGlzYWJsZWQgPiBhIHtcclxuICAgICAgICAgICYsXHJcbiAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8gTGlua3MgaW4gbmF2YmFyc1xyXG4gIC8vXHJcbiAgLy8gQWRkIGEgY2xhc3MgdG8gZW5zdXJlIGxpbmtzIG91dHNpZGUgdGhlIG5hdmJhciBuYXYgYXJlIGNvbG9yZWQgY29ycmVjdGx5LlxyXG5cclxuICAubmF2YmFyLWxpbmsge1xyXG4gICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5idG4tbGluayB7XHJcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcclxuICAgIH1cclxuICAgICZbZGlzYWJsZWRdLFxyXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIEludmVyc2UgbmF2YmFyXHJcblxyXG4ubmF2YmFyLWludmVyc2Uge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1iZztcclxuICBib3JkZXItY29sb3I6ICRuYXZiYXItaW52ZXJzZS1ib3JkZXI7XHJcblxyXG4gIC5uYXZiYXItYnJhbmQge1xyXG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1icmFuZC1jb2xvcjtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWJnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5hdmJhci10ZXh0IHtcclxuICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtY29sb3I7XHJcbiAgfVxyXG5cclxuICAubmF2YmFyLW5hdiB7XHJcbiAgICA+IGxpID4gYSB7XHJcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcclxuXHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiAuYWN0aXZlID4gYSB7XHJcbiAgICAgICYsXHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICA+IC5kaXNhYmxlZCA+IGEge1xyXG4gICAgICAmLFxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIERhcmtlbiB0aGUgcmVzcG9uc2l2ZSBuYXYgdG9nZ2xlXHJcbiAgLm5hdmJhci10b2dnbGUge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtdG9nZ2xlLWJvcmRlci1jb2xvcjtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ob3Zlci1iZztcclxuICAgIH1cclxuICAgIC5pY29uLWJhciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubmF2YmFyLWNvbGxhcHNlLFxyXG4gIC5uYXZiYXItZm9ybSB7XHJcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDclKTtcclxuICB9XHJcblxyXG4gIC8vIERyb3Bkb3duc1xyXG4gIC5uYXZiYXItbmF2IHtcclxuICAgID4gLm9wZW4gPiBhIHtcclxuICAgICAgJixcclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnO1xyXG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcclxuICAgICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheVxyXG4gICAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgPiAuZHJvcGRvd24taGVhZGVyIHtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJvcmRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmRpdmlkZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJvcmRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgPiBsaSA+IGEge1xyXG4gICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xyXG4gICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICA+IC5hY3RpdmUgPiBhIHtcclxuICAgICAgICAgICYsXHJcbiAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgPiAuZGlzYWJsZWQgPiBhIHtcclxuICAgICAgICAgICYsXHJcbiAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubmF2YmFyLWxpbmsge1xyXG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5idG4tbGluayB7XHJcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcclxuICAgIH1cclxuICAgICZbZGlzYWJsZWRdLFxyXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gTmF2YmFyIHZlcnRpY2FsIGFsaWduXHJcbi8vXHJcbi8vIFZlcnRpY2FsbHkgY2VudGVyIGVsZW1lbnRzIGluIHRoZSBuYXZiYXIuXHJcbi8vIEV4YW1wbGU6IGFuIGVsZW1lbnQgaGFzIGEgaGVpZ2h0IG9mIDMwcHgsIHNvIHdyaXRlIG91dCBgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbigzMHB4KTtgIHRvIGNhbGN1bGF0ZSB0aGUgYXBwcm9wcmlhdGUgdG9wIG1hcmdpbi5cclxuXHJcbkBtaXhpbiBuYXZiYXItdmVydGljYWwtYWxpZ24oJGVsZW1lbnQtaGVpZ2h0KSB7XHJcbiAgbWFyZ2luLXRvcDogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcclxuICBtYXJnaW4tYm90dG9tOiAoKCRuYXZiYXItaGVpZ2h0IC0gJGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xyXG59XHJcbiIsIi8vXHJcbi8vIEJyZWFkY3J1bWJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLmJyZWFkY3J1bWIge1xyXG4gIHBhZGRpbmc6ICRicmVhZGNydW1iLXBhZGRpbmctdmVydGljYWwgJGJyZWFkY3J1bWItcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRicmVhZGNydW1iLWJnO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XHJcblxyXG4gID4gbGkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuICAgICsgbGk6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogXCIjeyRicmVhZGNydW1iLXNlcGFyYXRvcn1cXDAwYTBcIjsgLy8gVW5pY29kZSBzcGFjZSBhZGRlZCBzaW5jZSBpbmxpbmUtYmxvY2sgbWVhbnMgbm9uLWNvbGxhcHNpbmcgd2hpdGUtc3BhY2VcclxuICAgICAgcGFkZGluZzogMCA1cHg7XHJcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gID4gLmFjdGl2ZSB7XHJcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBQYWdpbmF0aW9uIChtdWx0aXBsZSBwYWdlcylcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLnBhZ2luYXRpb24ge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgbWFyZ2luOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQgMDtcclxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG5cclxuICA+IGxpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZTsgLy8gUmVtb3ZlIGxpc3Qtc3R5bGUgYW5kIGJsb2NrLWxldmVsIGRlZmF1bHRzXHJcbiAgICA+IGEsXHJcbiAgICA+IHNwYW4ge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGZsb2F0OiBsZWZ0OyAvLyBDb2xsYXBzZSB3aGl0ZS1zcGFjZVxyXG4gICAgICBwYWRkaW5nOiAkcGFkZGluZy1iYXNlLXZlcnRpY2FsICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDtcclxuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlcjtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XHJcbiAgICB9XHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgPiBhLFxyXG4gICAgICA+IHNwYW4ge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cy1iYXNlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgPiBhLFxyXG4gICAgICA+IHNwYW4ge1xyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMtYmFzZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gID4gbGkgPiBhLFxyXG4gID4gbGkgPiBzcGFuIHtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgei1pbmRleDogMztcclxuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1iZztcclxuICAgICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICA+IC5hY3RpdmUgPiBhLFxyXG4gID4gLmFjdGl2ZSA+IHNwYW4ge1xyXG4gICAgJixcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJnO1xyXG4gICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI7XHJcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gID4gLmRpc2FibGVkIHtcclxuICAgID4gc3BhbixcclxuICAgID4gc3Bhbjpob3ZlcixcclxuICAgID4gc3Bhbjpmb2N1cyxcclxuICAgID4gYSxcclxuICAgID4gYTpob3ZlcixcclxuICAgID4gYTpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyO1xyXG4gICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBTaXppbmdcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIExhcmdlXHJcbi5wYWdpbmF0aW9uLWxnIHtcclxuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRmb250LXNpemUtbGFyZ2UsICRsaW5lLWhlaWdodC1sYXJnZSwgJGJvcmRlci1yYWRpdXMtbGFyZ2UpO1xyXG59XHJcblxyXG4vLyBTbWFsbFxyXG4ucGFnaW5hdGlvbi1zbSB7XHJcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkbGluZS1oZWlnaHQtc21hbGwsICRib3JkZXItcmFkaXVzLXNtYWxsKTtcclxufVxyXG4iLCIvLyBQYWdpbmF0aW9uXHJcblxyXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XHJcbiAgPiBsaSB7XHJcbiAgICA+IGEsXHJcbiAgICA+IHNwYW4ge1xyXG4gICAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gICAgICBmb250LXNpemU6ICRmb250LXNpemU7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XHJcbiAgICB9XHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgPiBhLFxyXG4gICAgICA+IHNwYW4ge1xyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgID4gYSxcclxuICAgICAgPiBzcGFuIHtcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBQYWdlciBwYWdpbmF0aW9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLnBhZ2VyIHtcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgbWFyZ2luOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQgMDtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICBsaSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICA+IGEsXHJcbiAgICA+IHNwYW4ge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHBhZGRpbmc6IDVweCAxNHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZXItYmc7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRwYWdlci1ib3JkZXI7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRwYWdlci1ib3JkZXItcmFkaXVzO1xyXG4gICAgfVxyXG5cclxuICAgID4gYTpob3ZlcixcclxuICAgID4gYTpmb2N1cyB7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2VyLWhvdmVyLWJnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5leHQge1xyXG4gICAgPiBhLFxyXG4gICAgPiBzcGFuIHtcclxuICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnByZXZpb3VzIHtcclxuICAgID4gYSxcclxuICAgID4gc3BhbiB7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmRpc2FibGVkIHtcclxuICAgID4gYSxcclxuICAgID4gYTpob3ZlcixcclxuICAgID4gYTpmb2N1cyxcclxuICAgID4gc3BhbiB7XHJcbiAgICAgIGNvbG9yOiAkcGFnZXItZGlzYWJsZWQtY29sb3I7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdlci1iZztcclxuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBMYWJlbHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5sYWJlbCB7XHJcbiAgZGlzcGxheTogaW5saW5lO1xyXG4gIHBhZGRpbmc6IC4yZW0gLjZlbSAuM2VtO1xyXG4gIGZvbnQtc2l6ZTogNzUlO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIGNvbG9yOiAkbGFiZWwtY29sb3I7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG4gIGJvcmRlci1yYWRpdXM6IC4yNWVtO1xyXG5cclxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYgdG8gYS5sYWJlbFxyXG5cclxuICAvLyBFbXB0eSBsYWJlbHMgY29sbGFwc2UgYXV0b21hdGljYWxseSAobm90IGF2YWlsYWJsZSBpbiBJRTgpXHJcbiAgJjplbXB0eSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLy8gUXVpY2sgZml4IGZvciBsYWJlbHMgaW4gYnV0dG9uc1xyXG4gIC5idG4gJiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6IC0xcHg7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBBZGQgaG92ZXIgZWZmZWN0cywgYnV0IG9ubHkgZm9yIGxpbmtzXHJcbmEubGFiZWwge1xyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBjb2xvcjogJGxhYmVsLWxpbmstaG92ZXItY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBDb2xvcnNcclxuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgbGFiZWxzIGdldCBkYXJrZXIgb24gOmhvdmVyKVxyXG5cclxuLmxhYmVsLWRlZmF1bHQge1xyXG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLWRlZmF1bHQtYmcpO1xyXG59XHJcblxyXG4ubGFiZWwtcHJpbWFyeSB7XHJcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtcHJpbWFyeS1iZyk7XHJcbn1cclxuXHJcbi5sYWJlbC1zdWNjZXNzIHtcclxuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1zdWNjZXNzLWJnKTtcclxufVxyXG5cclxuLmxhYmVsLWluZm8ge1xyXG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLWluZm8tYmcpO1xyXG59XHJcblxyXG4ubGFiZWwtd2FybmluZyB7XHJcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtd2FybmluZy1iZyk7XHJcbn1cclxuXHJcbi5sYWJlbC1kYW5nZXIge1xyXG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLWRhbmdlci1iZyk7XHJcbn1cclxuIiwiLy8gTGFiZWxzXHJcblxyXG5AbWl4aW4gbGFiZWwtdmFyaWFudCgkY29sb3IpIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcblxyXG4gICZbaHJlZl0ge1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBCYWRnZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBCYXNlIGNsYXNzXHJcbi5iYWRnZSB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIG1pbi13aWR0aDogMTBweDtcclxuICBwYWRkaW5nOiAzcHggN3B4O1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcclxuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xyXG4gIGNvbG9yOiAkYmFkZ2UtY29sb3I7XHJcbiAgbGluZS1oZWlnaHQ6ICRiYWRnZS1saW5lLWhlaWdodDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWRnZS1iZztcclxuICBib3JkZXItcmFkaXVzOiAkYmFkZ2UtYm9yZGVyLXJhZGl1cztcclxuXHJcbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHkgKG5vdCBhdmFpbGFibGUgaW4gSUU4KVxyXG4gICY6ZW1wdHkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG4gIC8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcclxuICAuYnRuICYge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdG9wOiAtMXB4O1xyXG4gIH1cclxuXHJcbiAgLmJ0bi14cyAmLFxyXG4gIC5idG4tZ3JvdXAteHMgPiAuYnRuICYge1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcGFkZGluZzogMXB4IDVweDtcclxuICB9XHJcblxyXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiB0byBhLmJhZGdlXHJcblxyXG4gIC8vIEFjY291bnQgZm9yIGJhZGdlcyBpbiBuYXZzXHJcbiAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgPiAmLFxyXG4gIC5uYXYtcGlsbHMgPiAuYWN0aXZlID4gYSA+ICYge1xyXG4gICAgY29sb3I6ICRiYWRnZS1hY3RpdmUtY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFkZ2UtYWN0aXZlLWJnO1xyXG4gIH1cclxuXHJcbiAgLmxpc3QtZ3JvdXAtaXRlbSA+ICYge1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gIH1cclxuXHJcbiAgLmxpc3QtZ3JvdXAtaXRlbSA+ICYgKyAmIHtcclxuICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gIH1cclxuXHJcbiAgLm5hdi1waWxscyA+IGxpID4gYSA+ICYge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDNweDtcclxuICB9XHJcbn1cclxuXHJcbi8vIEhvdmVyIHN0YXRlLCBidXQgb25seSBmb3IgbGlua3NcclxuYS5iYWRnZSB7XHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIGNvbG9yOiAkYmFkZ2UtbGluay1ob3Zlci1jb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gSnVtYm90cm9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLmp1bWJvdHJvbiB7XHJcbiAgcGFkZGluZy10b3A6ICAgICRqdW1ib3Ryb24tcGFkZGluZztcclxuICBwYWRkaW5nLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xyXG4gIG1hcmdpbi1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcclxuICBjb2xvcjogJGp1bWJvdHJvbi1jb2xvcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkanVtYm90cm9uLWJnO1xyXG5cclxuICBoMSxcclxuICAuaDEge1xyXG4gICAgY29sb3I6ICRqdW1ib3Ryb24taGVhZGluZy1jb2xvcjtcclxuICB9XHJcblxyXG4gIHAge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogKCRqdW1ib3Ryb24tcGFkZGluZyAvIDIpO1xyXG4gICAgZm9udC1zaXplOiAkanVtYm90cm9uLWZvbnQtc2l6ZTtcclxuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XHJcbiAgfVxyXG5cclxuICA+IGhyIHtcclxuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkanVtYm90cm9uLWJnLCAxMCUpO1xyXG4gIH1cclxuXHJcbiAgLmNvbnRhaW5lciAmLFxyXG4gIC5jb250YWluZXItZmx1aWQgJiB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTsgLy8gT25seSByb3VuZCBjb3JuZXJzIGF0IGhpZ2hlciByZXNvbHV0aW9ucyBpZiBjb250YWluZWQgaW4gYSBjb250YWluZXJcclxuICB9XHJcblxyXG4gIC5jb250YWluZXIge1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAgIHBhZGRpbmctdG9wOiAgICAoJGp1bWJvdHJvbi1wYWRkaW5nICogMS42KTtcclxuICAgIHBhZGRpbmctYm90dG9tOiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMS42KTtcclxuXHJcbiAgICAuY29udGFpbmVyICYsXHJcbiAgICAuY29udGFpbmVyLWZsdWlkICYge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6ICAoJGp1bWJvdHJvbi1wYWRkaW5nICogMik7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICgkanVtYm90cm9uLXBhZGRpbmcgKiAyKTtcclxuICAgIH1cclxuXHJcbiAgICBoMSxcclxuICAgIC5oMSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogJGp1bWJvdHJvbi1oZWFkaW5nLWZvbnQtc2l6ZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gVGh1bWJuYWlsc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIE1peGluIGFuZCBhZGp1c3QgdGhlIHJlZ3VsYXIgaW1hZ2UgY2xhc3NcclxuLnRodW1ibmFpbCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xyXG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcclxuICBib3JkZXI6IDFweCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlcjtcclxuICBib3JkZXItcmFkaXVzOiAkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3JkZXIgLjJzIGVhc2UtaW4tb3V0KTtcclxuXHJcbiAgPiBpbWcsXHJcbiAgYSA+IGltZyB7XHJcbiAgICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcclxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmOmhvdmVyLCBhJjpmb2N1cywgYSYuYWN0aXZlIHRvIGEudGh1bWJuYWlsOmhvdmVyLCBhLnRodW1ibmFpbDpmb2N1cywgYS50aHVtYm5haWwuYWN0aXZlXHJcblxyXG4gIC8vIEltYWdlIGNhcHRpb25zXHJcbiAgLmNhcHRpb24ge1xyXG4gICAgcGFkZGluZzogJHRodW1ibmFpbC1jYXB0aW9uLXBhZGRpbmc7XHJcbiAgICBjb2xvcjogJHRodW1ibmFpbC1jYXB0aW9uLWNvbG9yO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQWRkIGEgaG92ZXIgc3RhdGUgZm9yIGxpbmtlZCB2ZXJzaW9ucyBvbmx5XHJcbmEudGh1bWJuYWlsOmhvdmVyLFxyXG5hLnRodW1ibmFpbDpmb2N1cyxcclxuYS50aHVtYm5haWwuYWN0aXZlIHtcclxuICBib3JkZXItY29sb3I6ICRsaW5rLWNvbG9yO1xyXG59XHJcbiIsIi8vXHJcbi8vIEFsZXJ0c1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEJhc2Ugc3R5bGVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5hbGVydCB7XHJcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmc7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1yYWRpdXM6ICRhbGVydC1ib3JkZXItcmFkaXVzO1xyXG5cclxuICAvLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xyXG4gIGg0IHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAvLyBTcGVjaWZpZWQgZm9yIHRoZSBoNCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gIH1cclxuXHJcbiAgLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcclxuICAuYWxlcnQtbGluayB7XHJcbiAgICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XHJcbiAgfVxyXG5cclxuICAvLyBJbXByb3ZlIGFsaWdubWVudCBhbmQgc3BhY2luZyBvZiBpbm5lciBjb250ZW50XHJcbiAgPiBwLFxyXG4gID4gdWwge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcblxyXG4gID4gcCArIHAge1xyXG4gICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gIH1cclxufVxyXG5cclxuLy8gRGlzbWlzc2libGUgYWxlcnRzXHJcbi8vXHJcbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxyXG5cclxuLmFsZXJ0LWRpc21pc3NhYmxlLCAvLyBUaGUgbWlzc3BlbGxlZCAuYWxlcnQtZGlzbWlzc2FibGUgd2FzIGRlcHJlY2F0ZWQgaW4gMy4yLjAuXHJcbi5hbGVydC1kaXNtaXNzaWJsZSB7XHJcbiAgcGFkZGluZy1yaWdodDogKCRhbGVydC1wYWRkaW5nICsgMjApO1xyXG5cclxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxyXG4gIC5jbG9zZSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6IC0ycHg7XHJcbiAgICByaWdodDogLTIxcHg7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICB9XHJcbn1cclxuXHJcbi8vIEFsdGVybmF0ZSBzdHlsZXNcclxuLy9cclxuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydC5cclxuXHJcbi5hbGVydC1zdWNjZXNzIHtcclxuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1zdWNjZXNzLWJnLCAkYWxlcnQtc3VjY2Vzcy1ib3JkZXIsICRhbGVydC1zdWNjZXNzLXRleHQpO1xyXG59XHJcblxyXG4uYWxlcnQtaW5mbyB7XHJcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtaW5mby1iZywgJGFsZXJ0LWluZm8tYm9yZGVyLCAkYWxlcnQtaW5mby10ZXh0KTtcclxufVxyXG5cclxuLmFsZXJ0LXdhcm5pbmcge1xyXG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LXdhcm5pbmctYmcsICRhbGVydC13YXJuaW5nLWJvcmRlciwgJGFsZXJ0LXdhcm5pbmctdGV4dCk7XHJcbn1cclxuXHJcbi5hbGVydC1kYW5nZXIge1xyXG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LWRhbmdlci1iZywgJGFsZXJ0LWRhbmdlci1ib3JkZXIsICRhbGVydC1kYW5nZXItdGV4dCk7XHJcbn1cclxuIiwiLy8gQWxlcnRzXHJcblxyXG5AbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJHRleHQtY29sb3IpIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcclxuICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG5cclxuICBociB7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xyXG4gIH1cclxuICAuYWxlcnQtbGluayB7XHJcbiAgICBjb2xvcjogZGFya2VuKCR0ZXh0LWNvbG9yLCAxMCUpO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBQcm9ncmVzcyBiYXJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gQmFyIGFuaW1hdGlvbnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gV2ViS2l0XHJcbkAtd2Via2l0LWtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XHJcbiAgZnJvbSAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0MHB4IDA7IH1cclxuICB0byAgICB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxyXG59XHJcblxyXG4vLyBTcGVjIGFuZCBJRTEwK1xyXG5Aa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcclxuICBmcm9tICB7IGJhY2tncm91bmQtcG9zaXRpb246IDQwcHggMDsgfVxyXG4gIHRvICAgIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XHJcbn1cclxuXHJcblxyXG4vLyBCYXIgaXRzZWxmXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIE91dGVyIGNvbnRhaW5lclxyXG4ucHJvZ3Jlc3Mge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcclxuICBib3JkZXItcmFkaXVzOiAkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cztcclxuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLC4xKSk7XHJcbn1cclxuXHJcbi8vIEJhciBvZiBwcm9ncmVzc1xyXG4ucHJvZ3Jlc3MtYmFyIHtcclxuICBmbG9hdDogbGVmdDtcclxuICB3aWR0aDogMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWJnO1xyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAtMXB4IDAgcmdiYSgwLDAsMCwuMTUpKTtcclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHdpZHRoIC42cyBlYXNlKTtcclxufVxyXG5cclxuLy8gU3RyaXBlZCBiYXJzXHJcbi8vXHJcbi8vIGAucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyYCBpcyBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBpbiBmYXZvciBvZiB0aGVcclxuLy8gYC5wcm9ncmVzcy1iYXItc3RyaXBlZGAgY2xhc3MsIHdoaWNoIHlvdSBqdXN0IGFkZCB0byBhbiBleGlzdGluZ1xyXG4vLyBgLnByb2dyZXNzLWJhcmAuXHJcbi5wcm9ncmVzcy1zdHJpcGVkIC5wcm9ncmVzcy1iYXIsXHJcbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XHJcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZDtcclxuICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggNDBweDtcclxufVxyXG5cclxuLy8gQ2FsbCBhbmltYXRpb24gZm9yIHRoZSBhY3RpdmUgb25lXHJcbi8vXHJcbi8vIGAucHJvZ3Jlc3MuYWN0aXZlIC5wcm9ncmVzcy1iYXJgIGlzIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGluIGZhdm9yIG9mIHRoZVxyXG4vLyBgLnByb2dyZXNzLWJhci5hY3RpdmVgIGFwcHJvYWNoLlxyXG4ucHJvZ3Jlc3MuYWN0aXZlIC5wcm9ncmVzcy1iYXIsXHJcbi5wcm9ncmVzcy1iYXIuYWN0aXZlIHtcclxuICBAaW5jbHVkZSBhbmltYXRpb24ocHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMnMgbGluZWFyIGluZmluaXRlKTtcclxufVxyXG5cclxuXHJcbi8vIFZhcmlhdGlvbnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLnByb2dyZXNzLWJhci1zdWNjZXNzIHtcclxuICBAaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCgkcHJvZ3Jlc3MtYmFyLXN1Y2Nlc3MtYmcpO1xyXG59XHJcblxyXG4ucHJvZ3Jlc3MtYmFyLWluZm8ge1xyXG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItaW5mby1iZyk7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1iYXItd2FybmluZyB7XHJcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJHByb2dyZXNzLWJhci13YXJuaW5nLWJnKTtcclxufVxyXG5cclxuLnByb2dyZXNzLWJhci1kYW5nZXIge1xyXG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnKTtcclxufVxyXG4iLCIvLyBHcmFkaWVudHNcclxuXHJcblxyXG5cclxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XHJcbi8vXHJcbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXHJcbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXHJcbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBPcGVyYSAxMlxyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XHJcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93blxyXG59XHJcblxyXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXHJcbi8vXHJcbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXHJcbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXHJcbkBtaXhpbiBncmFkaWVudC12ZXJ0aWNhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAgLy8gT3BlcmEgMTJcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0wKTsgLy8gSUU5IGFuZCBkb3duXHJcbn1cclxuXHJcbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRkZWc6IDQ1ZGVnKSB7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBPcGVyYSAxMlxyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXHJcbn1cclxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXHJcbn1cclxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXHJcbn1cclxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICM1NTUsICRvdXRlci1jb2xvcjogIzMzMykge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG59XHJcbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcclxufVxyXG4iLCIvLyBQcm9ncmVzcyBiYXJzXHJcblxyXG5AbWl4aW4gcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJGNvbG9yKSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG5cclxuICAvLyBEZXByZWNhdGVkIHBhcmVudCBjbGFzcyByZXF1aXJlbWVudCBhcyBvZiB2My4yLjBcclxuICAucHJvZ3Jlc3Mtc3RyaXBlZCAmIHtcclxuICAgIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQ7XHJcbiAgfVxyXG59XHJcbiIsIi5tZWRpYSB7XHJcbiAgLy8gUHJvcGVyIHNwYWNpbmcgYmV0d2VlbiBpbnN0YW5jZXMgb2YgLm1lZGlhXHJcbiAgbWFyZ2luLXRvcDogMTVweDtcclxuXHJcbiAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLm1lZGlhLFxyXG4ubWVkaWEtYm9keSB7XHJcbiAgem9vbTogMTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ubWVkaWEtYm9keSB7XHJcbiAgd2lkdGg6IDEwMDAwcHg7XHJcbn1cclxuXHJcbi5tZWRpYS1vYmplY3Qge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAvLyBGaXggY29sbGFwc2UgaW4gd2Via2l0IGZyb20gbWF4LXdpZHRoOiAxMDAlIGFuZCBkaXNwbGF5OiB0YWJsZS1jZWxsLlxyXG4gICYuaW1nLXRodW1ibmFpbCB7XHJcbiAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4ubWVkaWEtcmlnaHQsXHJcbi5tZWRpYSA+IC5wdWxsLXJpZ2h0IHtcclxuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbn1cclxuXHJcbi5tZWRpYS1sZWZ0LFxyXG4ubWVkaWEgPiAucHVsbC1sZWZ0IHtcclxuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG59XHJcblxyXG4ubWVkaWEtbGVmdCxcclxuLm1lZGlhLXJpZ2h0LFxyXG4ubWVkaWEtYm9keSB7XHJcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG59XHJcblxyXG4ubWVkaWEtbWlkZGxlIHtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG4ubWVkaWEtYm90dG9tIHtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xyXG59XHJcblxyXG4vLyBSZXNldCBtYXJnaW5zIG9uIGhlYWRpbmdzIGZvciB0aWdodGVyIGRlZmF1bHQgc3BhY2luZ1xyXG4ubWVkaWEtaGVhZGluZyB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbn1cclxuXHJcbi8vIE1lZGlhIGxpc3QgdmFyaWF0aW9uXHJcbi8vXHJcbi8vIFVuZG8gZGVmYXVsdCB1bC9vbCBzdHlsZXNcclxuLm1lZGlhLWxpc3Qge1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcbiIsIi8vXHJcbi8vIExpc3QgZ3JvdXBzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gQmFzZSBjbGFzc1xyXG4vL1xyXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxyXG5cclxuLmxpc3QtZ3JvdXAge1xyXG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxyXG59XHJcblxyXG5cclxuLy8gSW5kaXZpZHVhbCBsaXN0IGl0ZW1zXHJcbi8vXHJcbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cclxuXHJcbi5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nOiAxMHB4IDE1cHg7XHJcbiAgLy8gUGxhY2UgdGhlIGJvcmRlciBvbiB0aGUgbGlzdCBpdGVtcyBhbmQgbmVnYXRpdmUgbWFyZ2luIHVwIGZvciBiZXR0ZXIgc3R5bGluZ1xyXG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYmc7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJGxpc3QtZ3JvdXAtYm9yZGVyO1xyXG5cclxuICAvLyBSb3VuZCB0aGUgZmlyc3QgYW5kIGxhc3QgaXRlbXNcclxuICAmOmZpcnN0LWNoaWxkIHtcclxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xyXG4gIH1cclxuICAmOmxhc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcclxuLy9cclxuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlIGl0ZW1zLlxyXG4vLyBJbmNsdWRlcyBhbiBleHRyYSBgLmFjdGl2ZWAgbW9kaWZpZXIgY2xhc3MgZm9yIHNob3dpbmcgc2VsZWN0ZWQgaXRlbXMuXHJcblxyXG5hLmxpc3QtZ3JvdXAtaXRlbSxcclxuYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWxpbmstY29sb3I7XHJcblxyXG4gIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XHJcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtbGluay1oZWFkaW5nLWNvbG9yO1xyXG4gIH1cclxuXHJcbiAgLy8gSG92ZXIgc3RhdGVcclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1ob3Zlci1iZztcclxuICB9XHJcbn1cclxuXHJcbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gIC8vIERpc2FibGVkIHN0YXRlXHJcbiAgJi5kaXNhYmxlZCxcclxuICAmLmRpc2FibGVkOmhvdmVyLFxyXG4gICYuZGlzYWJsZWQ6Zm9jdXMge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc7XHJcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I7XHJcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XHJcblxyXG4gICAgLy8gRm9yY2UgY29sb3IgdG8gaW5oZXJpdCBmb3IgY3VzdG9tIGNvbnRlbnRcclxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XHJcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgfVxyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcclxuICAgICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLXRleHQtY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBBY3RpdmUgY2xhc3Mgb24gaXRlbSBpdHNlbGYsIG5vdCBwYXJlbnRcclxuICAmLmFjdGl2ZSxcclxuICAmLmFjdGl2ZTpob3ZlcixcclxuICAmLmFjdGl2ZTpmb2N1cyB7XHJcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xyXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1iZztcclxuICAgIGJvcmRlci1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjtcclxuXHJcbiAgICAvLyBGb3JjZSBjb2xvciB0byBpbmhlcml0IGZvciBjdXN0b20gY29udGVudFxyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLFxyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nID4gc21hbGwsXHJcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcgPiAuc21hbGwge1xyXG4gICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIH1cclxuICAgIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCB7XHJcbiAgICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXHJcbi8vXHJcbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXHJcbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXHJcblxyXG5AaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudChzdWNjZXNzLCAkc3RhdGUtc3VjY2Vzcy1iZywgJHN0YXRlLXN1Y2Nlc3MtdGV4dCk7XHJcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KGluZm8sICRzdGF0ZS1pbmZvLWJnLCAkc3RhdGUtaW5mby10ZXh0KTtcclxuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQod2FybmluZywgJHN0YXRlLXdhcm5pbmctYmcsICRzdGF0ZS13YXJuaW5nLXRleHQpO1xyXG5AaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudChkYW5nZXIsICRzdGF0ZS1kYW5nZXItYmcsICRzdGF0ZS1kYW5nZXItdGV4dCk7XHJcblxyXG5cclxuLy8gQ3VzdG9tIGNvbnRlbnQgb3B0aW9uc1xyXG4vL1xyXG4vLyBFeHRyYSBjbGFzc2VzIGZvciBjcmVhdGluZyB3ZWxsLWZvcm1hdHRlZCBjb250ZW50IHdpdGhpbiBgLmxpc3QtZ3JvdXAtaXRlbWBzLlxyXG5cclxuLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDVweDtcclxufVxyXG4ubGlzdC1ncm91cC1pdGVtLXRleHQge1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgbGluZS1oZWlnaHQ6IDEuMztcclxufVxyXG4iLCIvLyBMaXN0IEdyb3Vwc1xyXG5cclxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xyXG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcclxuXHJcbiAgICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYsIGJ1dHRvbiYgdG8gYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9LCBidXR0b24ubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfVxyXG4gIH1cclxuXHJcbiAgYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9LFxyXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcblxyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcclxuICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcclxuICAgIH1cclxuICAgICYuYWN0aXZlLFxyXG4gICAgJi5hY3RpdmU6aG92ZXIsXHJcbiAgICAmLmFjdGl2ZTpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBQYW5lbHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBCYXNlIGNsYXNzXHJcbi5wYW5lbCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1iZztcclxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItcmFkaXVzOiAkcGFuZWwtYm9yZGVyLXJhZGl1cztcclxuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNSkpO1xyXG59XHJcblxyXG4vLyBQYW5lbCBjb250ZW50c1xyXG4ucGFuZWwtYm9keSB7XHJcbiAgcGFkZGluZzogJHBhbmVsLWJvZHktcGFkZGluZztcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxufVxyXG5cclxuLy8gT3B0aW9uYWwgaGVhZGluZ1xyXG4ucGFuZWwtaGVhZGluZyB7XHJcbiAgcGFkZGluZzogJHBhbmVsLWhlYWRpbmctcGFkZGluZztcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xyXG5cclxuICA+IC5kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gIH1cclxufVxyXG5cclxuLy8gV2l0aGluIGhlYWRpbmcsIHN0cmlwIGFueSBgaCpgIHRhZyBvZiBpdHMgZGVmYXVsdCBtYXJnaW5zIGZvciBzcGFjaW5nLlxyXG4ucGFuZWwtdGl0bGUge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBmb250LXNpemU6IGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMTI1KSk7XHJcbiAgY29sb3I6IGluaGVyaXQ7XHJcblxyXG4gID4gYSxcclxuICA+IHNtYWxsLFxyXG4gID4gLnNtYWxsLFxyXG4gID4gc21hbGwgPiBhLFxyXG4gID4gLnNtYWxsID4gYSB7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE9wdGlvbmFsIGZvb3RlciAoc3RheXMgZ3JheSBpbiBldmVyeSBtb2RpZmllciBjbGFzcylcclxuLnBhbmVsLWZvb3RlciB7XHJcbiAgcGFkZGluZzogJHBhbmVsLWZvb3Rlci1wYWRkaW5nO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1mb290ZXItYmc7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRwYW5lbC1pbm5lci1ib3JkZXI7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xyXG59XHJcblxyXG5cclxuLy8gTGlzdCBncm91cHMgaW4gcGFuZWxzXHJcbi8vXHJcbi8vIEJ5IGRlZmF1bHQsIHNwYWNlIG91dCBsaXN0IGdyb3VwIGNvbnRlbnQgZnJvbSBwYW5lbCBoZWFkaW5ncyB0byBhY2NvdW50IGZvclxyXG4vLyBhbnkga2luZCBvZiBjdXN0b20gY29udGVudCBiZXR3ZWVuIHRoZSB0d28uXHJcblxyXG4ucGFuZWwge1xyXG4gID4gLmxpc3QtZ3JvdXAsXHJcbiAgPiAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gICAgICBib3JkZXItd2lkdGg6IDFweCAwO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBBZGQgYm9yZGVyIGJvdHRvbSByYWRpdXMgZm9yIGxhc3Qgb25lXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gID4gLnBhbmVsLWhlYWRpbmcgKyAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCB7XHJcbiAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcclxuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8vIENvbGxhcHNlIHNwYWNlIGJldHdlZW4gd2hlbiB0aGVyZSdzIG5vIGFkZGl0aW9uYWwgY29udGVudC5cclxuLnBhbmVsLWhlYWRpbmcgKyAubGlzdC1ncm91cCB7XHJcbiAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XHJcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xyXG4gIH1cclxufVxyXG4ubGlzdC1ncm91cCArIC5wYW5lbC1mb290ZXIge1xyXG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XHJcbn1cclxuXHJcbi8vIFRhYmxlcyBpbiBwYW5lbHNcclxuLy9cclxuLy8gUGxhY2UgYSBub24tYm9yZGVyZWQgYC50YWJsZWAgd2l0aGluIGEgcGFuZWwgKG5vdCB3aXRoaW4gYSBgLnBhbmVsLWJvZHlgKSBhbmRcclxuLy8gd2F0Y2ggaXQgZ28gZnVsbCB3aWR0aC5cclxuXHJcbi5wYW5lbCB7XHJcbiAgPiAudGFibGUsXHJcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSxcclxuICA+IC5wYW5lbC1jb2xsYXBzZSA+IC50YWJsZSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgIGNhcHRpb24ge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6ICRwYW5lbC1ib2R5LXBhZGRpbmc7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYW5lbC1ib2R5LXBhZGRpbmc7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXHJcbiAgPiAudGFibGU6Zmlyc3QtY2hpbGQsXHJcbiAgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCB7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XHJcblxyXG4gICAgPiB0aGVhZDpmaXJzdC1jaGlsZCxcclxuICAgID4gdGJvZHk6Zmlyc3QtY2hpbGQge1xyXG4gICAgICA+IHRyOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcclxuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XHJcblxyXG4gICAgICAgIHRkOmZpcnN0LWNoaWxkLFxyXG4gICAgICAgIHRoOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0ZDpsYXN0LWNoaWxkLFxyXG4gICAgICAgIHRoOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAvLyBBZGQgYm9yZGVyIGJvdHRvbSByYWRpdXMgZm9yIGxhc3Qgb25lXHJcbiAgPiAudGFibGU6bGFzdC1jaGlsZCxcclxuICA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCB7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XHJcblxyXG4gICAgPiB0Ym9keTpsYXN0LWNoaWxkLFxyXG4gICAgPiB0Zm9vdDpsYXN0LWNoaWxkIHtcclxuICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcclxuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XHJcblxyXG4gICAgICAgIHRkOmZpcnN0LWNoaWxkLFxyXG4gICAgICAgIHRoOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0ZDpsYXN0LWNoaWxkLFxyXG4gICAgICAgIHRoOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICA+IC5wYW5lbC1ib2R5ICsgLnRhYmxlLFxyXG4gID4gLnBhbmVsLWJvZHkgKyAudGFibGUtcmVzcG9uc2l2ZSxcclxuICA+IC50YWJsZSArIC5wYW5lbC1ib2R5LFxyXG4gID4gLnRhYmxlLXJlc3BvbnNpdmUgKyAucGFuZWwtYm9keSB7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICB9XHJcbiAgPiAudGFibGUgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRoLFxyXG4gID4gLnRhYmxlID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0ZCB7XHJcbiAgICBib3JkZXItdG9wOiAwO1xyXG4gIH1cclxuICA+IC50YWJsZS1ib3JkZXJlZCxcclxuICA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkIHtcclxuICAgIGJvcmRlcjogMDtcclxuICAgID4gdGhlYWQsXHJcbiAgICA+IHRib2R5LFxyXG4gICAgPiB0Zm9vdCB7XHJcbiAgICAgID4gdHIge1xyXG4gICAgICAgID4gdGg6Zmlyc3QtY2hpbGQsXHJcbiAgICAgICAgPiB0ZDpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICBib3JkZXItbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgPiB0aDpsYXN0LWNoaWxkLFxyXG4gICAgICAgID4gdGQ6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICA+IHRoZWFkLFxyXG4gICAgPiB0Ym9keSB7XHJcbiAgICAgID4gdHI6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgID4gdGQsXHJcbiAgICAgICAgPiB0aCB7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiB0Ym9keSxcclxuICAgID4gdGZvb3Qge1xyXG4gICAgICA+IHRyOmxhc3QtY2hpbGQge1xyXG4gICAgICAgID4gdGQsXHJcbiAgICAgICAgPiB0aCB7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICA+IC50YWJsZS1yZXNwb25zaXZlIHtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gQ29sbGFwc2FibGUgcGFuZWxzIChha2EsIGFjY29yZGlvbilcclxuLy9cclxuLy8gV3JhcCBhIHNlcmllcyBvZiBwYW5lbHMgaW4gYC5wYW5lbC1ncm91cGAgdG8gdHVybiB0aGVtIGludG8gYW4gYWNjb3JkaW9uIHdpdGhcclxuLy8gdGhlIGhlbHAgb2Ygb3VyIGNvbGxhcHNlIEphdmFTY3JpcHQgcGx1Z2luLlxyXG5cclxuLnBhbmVsLWdyb3VwIHtcclxuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XHJcblxyXG4gIC8vIFRpZ2h0ZW4gdXAgbWFyZ2luIHNvIGl0J3Mgb25seSBiZXR3ZWVuIHBhbmVsc1xyXG4gIC5wYW5lbCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogJHBhbmVsLWJvcmRlci1yYWRpdXM7XHJcblxyXG4gICAgKyAucGFuZWwge1xyXG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucGFuZWwtaGVhZGluZyB7XHJcbiAgICBib3JkZXItYm90dG9tOiAwO1xyXG5cclxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHksXHJcbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIHtcclxuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRwYW5lbC1pbm5lci1ib3JkZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucGFuZWwtZm9vdGVyIHtcclxuICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICArIC5wYW5lbC1jb2xsYXBzZSAucGFuZWwtYm9keSB7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcGFuZWwtaW5uZXItYm9yZGVyO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIENvbnRleHR1YWwgdmFyaWF0aW9uc1xyXG4ucGFuZWwtZGVmYXVsdCB7XHJcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtZGVmYXVsdC1ib3JkZXIsICRwYW5lbC1kZWZhdWx0LXRleHQsICRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmcsICRwYW5lbC1kZWZhdWx0LWJvcmRlcik7XHJcbn1cclxuLnBhbmVsLXByaW1hcnkge1xyXG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXByaW1hcnktYm9yZGVyLCAkcGFuZWwtcHJpbWFyeS10ZXh0LCAkcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnLCAkcGFuZWwtcHJpbWFyeS1ib3JkZXIpO1xyXG59XHJcbi5wYW5lbC1zdWNjZXNzIHtcclxuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1zdWNjZXNzLWJvcmRlciwgJHBhbmVsLXN1Y2Nlc3MtdGV4dCwgJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZywgJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyKTtcclxufVxyXG4ucGFuZWwtaW5mbyB7XHJcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtaW5mby1ib3JkZXIsICRwYW5lbC1pbmZvLXRleHQsICRwYW5lbC1pbmZvLWhlYWRpbmctYmcsICRwYW5lbC1pbmZvLWJvcmRlcik7XHJcbn1cclxuLnBhbmVsLXdhcm5pbmcge1xyXG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXdhcm5pbmctYm9yZGVyLCAkcGFuZWwtd2FybmluZy10ZXh0LCAkcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnLCAkcGFuZWwtd2FybmluZy1ib3JkZXIpO1xyXG59XHJcbi5wYW5lbC1kYW5nZXIge1xyXG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLWRhbmdlci1ib3JkZXIsICRwYW5lbC1kYW5nZXItdGV4dCwgJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnLCAkcGFuZWwtZGFuZ2VyLWJvcmRlcik7XHJcbn1cclxuIiwiLy8gUGFuZWxzXHJcblxyXG5AbWl4aW4gcGFuZWwtdmFyaWFudCgkYm9yZGVyLCAkaGVhZGluZy10ZXh0LWNvbG9yLCAkaGVhZGluZy1iZy1jb2xvciwgJGhlYWRpbmctYm9yZGVyKSB7XHJcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG5cclxuICAmID4gLnBhbmVsLWhlYWRpbmcge1xyXG4gICAgY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcclxuICAgIGJvcmRlci1jb2xvcjogJGhlYWRpbmctYm9yZGVyO1xyXG5cclxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xyXG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkYm9yZGVyO1xyXG4gICAgfVxyXG4gICAgLmJhZGdlIHtcclxuICAgICAgY29sb3I6ICRoZWFkaW5nLWJnLWNvbG9yO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuICAmID4gLnBhbmVsLWZvb3RlciB7XHJcbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcclxuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJvcmRlcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gRW1iZWRzIHJlc3BvbnNpdmVcclxuLy9cclxuLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXHJcblxyXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGhlaWdodDogMDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXHJcbiAgaWZyYW1lLFxyXG4gIGVtYmVkLFxyXG4gIG9iamVjdCxcclxuICB2aWRlbyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNb2RpZmllciBjbGFzcyBmb3IgMTY6OSBhc3BlY3QgcmF0aW9cclxuLmVtYmVkLXJlc3BvbnNpdmUtMTZieTkge1xyXG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XHJcbn1cclxuXHJcbi8vIE1vZGlmaWVyIGNsYXNzIGZvciA0OjMgYXNwZWN0IHJhdGlvXHJcbi5lbWJlZC1yZXNwb25zaXZlLTRieTMge1xyXG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XHJcbn1cclxuIiwiLy9cclxuLy8gV2VsbHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBCYXNlIGNsYXNzXHJcbi53ZWxsIHtcclxuICBtaW4taGVpZ2h0OiAyMHB4O1xyXG4gIHBhZGRpbmc6IDE5cHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2VsbC1iZztcclxuICBib3JkZXI6IDFweCBzb2xpZCAkd2VsbC1ib3JkZXI7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcclxuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNSkpO1xyXG4gIGJsb2NrcXVvdGUge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjZGRkO1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLC4xNSk7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBTaXplc1xyXG4ud2VsbC1sZyB7XHJcbiAgcGFkZGluZzogMjRweDtcclxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcclxufVxyXG4ud2VsbC1zbSB7XHJcbiAgcGFkZGluZzogOXB4O1xyXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtYWxsO1xyXG59XHJcbiIsIi8vXHJcbi8vIENsb3NlIGljb25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLmNsb3NlIHtcclxuICBmbG9hdDogcmlnaHQ7XHJcbiAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlICogMS41KTtcclxuICBmb250LXdlaWdodDogJGNsb3NlLWZvbnQtd2VpZ2h0O1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIGNvbG9yOiAkY2xvc2UtY29sb3I7XHJcbiAgdGV4dC1zaGFkb3c6ICRjbG9zZS10ZXh0LXNoYWRvdztcclxuICBAaW5jbHVkZSBvcGFjaXR5KC4yKTtcclxuXHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIGNvbG9yOiAkY2xvc2UtY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC41KTtcclxuICB9XHJcblxyXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBidXR0b24mIHRvIGJ1dHRvbi5jbG9zZVxyXG59XHJcblxyXG4vLyBBZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIGJ1dHRvbiB2ZXJzaW9uXHJcbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxyXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cclxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXHJcbmJ1dHRvbi5jbG9zZSB7XHJcbiAgcGFkZGluZzogMDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxufVxyXG4iLCIvL1xyXG4vLyBNb2RhbHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIC5tb2RhbC1vcGVuICAgICAgLSBib2R5IGNsYXNzIGZvciBraWxsaW5nIHRoZSBzY3JvbGxcclxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXHJcbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxyXG4vLyAubW9kYWwtY29udGVudCAgIC0gYWN0dWFsIG1vZGFsIHcvIGJnIGFuZCBjb3JuZXJzIGFuZCBzaGl0XHJcblxyXG4vLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcclxuLm1vZGFsLW9wZW4ge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxyXG4ubW9kYWwge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XHJcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xyXG5cclxuICAvLyBQcmV2ZW50IENocm9tZSBvbiBXaW5kb3dzIGZyb20gYWRkaW5nIGEgZm9jdXMgb3V0bGluZS4gRm9yIGRldGFpbHMsIHNlZVxyXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxyXG4gIG91dGxpbmU6IDA7XHJcblxyXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXHJcbiAgJi5mYWRlIC5tb2RhbC1kaWFsb2cge1xyXG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlKDAsIC0yNSUpO1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi10cmFuc2Zvcm0oMC4zcyBlYXNlLW91dCk7XHJcbiAgfVxyXG4gICYuaW4gLm1vZGFsLWRpYWxvZyB7IEBpbmNsdWRlIHRyYW5zbGF0ZSgwLCAwKSB9XHJcbn1cclxuLm1vZGFsLW9wZW4gLm1vZGFsIHtcclxuICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgb3ZlcmZsb3cteTogYXV0bztcclxufVxyXG5cclxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXHJcbi5tb2RhbC1kaWFsb2cge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB3aWR0aDogYXV0bztcclxuICBtYXJnaW46IDEwcHg7XHJcbn1cclxuXHJcbi8vIEFjdHVhbCBtb2RhbFxyXG4ubW9kYWwtY29udGVudCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1jb250ZW50LWJnO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRtb2RhbC1jb250ZW50LWZhbGxiYWNrLWJvcmRlci1jb2xvcjsgLy9vbGQgYnJvd3NlcnMgZmFsbGJhY2sgKGllOCBldGMpXHJcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlO1xyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCAzcHggOXB4IHJnYmEoMCwwLDAsLjUpKTtcclxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xyXG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXHJcbiAgb3V0bGluZTogMDtcclxufVxyXG5cclxuLy8gTW9kYWwgYmFja2dyb3VuZFxyXG4ubW9kYWwtYmFja2Ryb3Age1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1iYWNrZHJvcC1iZztcclxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxyXG4gICYuZmFkZSB7IEBpbmNsdWRlIG9wYWNpdHkoMCk7IH1cclxuICAmLmluIHsgQGluY2x1ZGUgb3BhY2l0eSgkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eSk7IH1cclxufVxyXG5cclxuLy8gTW9kYWwgaGVhZGVyXHJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xyXG4ubW9kYWwtaGVhZGVyIHtcclxuICBwYWRkaW5nOiAkbW9kYWwtdGl0bGUtcGFkZGluZztcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XHJcbiAgbWluLWhlaWdodDogKCRtb2RhbC10aXRsZS1wYWRkaW5nICsgJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0KTtcclxufVxyXG4vLyBDbG9zZSBpY29uXHJcbi5tb2RhbC1oZWFkZXIgLmNsb3NlIHtcclxuICBtYXJnaW4tdG9wOiAtMnB4O1xyXG59XHJcblxyXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcclxuLm1vZGFsLXRpdGxlIHtcclxuICBtYXJnaW46IDA7XHJcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcclxufVxyXG5cclxuLy8gTW9kYWwgYm9keVxyXG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXHJcbi5tb2RhbC1ib2R5IHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XHJcbn1cclxuXHJcbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXHJcbi5tb2RhbC1mb290ZXIge1xyXG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0OyAvLyByaWdodCBhbGlnbiBidXR0b25zXHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yO1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4OyAvLyBjbGVhciBpdCBpbiBjYXNlIGZvbGtzIHVzZSAucHVsbC0qIGNsYXNzZXMgb24gYnV0dG9uc1xyXG5cclxuICAvLyBQcm9wZXJseSBzcGFjZSBvdXQgYnV0dG9uc1xyXG4gIC5idG4gKyAuYnRuIHtcclxuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBhY2NvdW50IGZvciBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHdoaWNoIGdldHMgdGhlIGJvdHRvbSBtYXJnaW4gbGlrZSBhbGwgb3RoZXIgaW5wdXRzXHJcbiAgfVxyXG4gIC8vIGJ1dCBvdmVycmlkZSB0aGF0IGZvciBidXR0b24gZ3JvdXBzXHJcbiAgLmJ0bi1ncm91cCAuYnRuICsgLmJ0biB7XHJcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcclxuICB9XHJcbiAgLy8gYW5kIG92ZXJyaWRlIGl0IGZvciBibG9jayBidXR0b25zIGFzIHdlbGxcclxuICAuYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxyXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IC05OTk5cHg7XHJcbiAgd2lkdGg6IDUwcHg7XHJcbiAgaGVpZ2h0OiA1MHB4O1xyXG4gIG92ZXJmbG93OiBzY3JvbGw7XHJcbn1cclxuXHJcbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXHJcbiAgLm1vZGFsLWRpYWxvZyB7XHJcbiAgICB3aWR0aDogJG1vZGFsLW1kO1xyXG4gICAgbWFyZ2luOiAzMHB4IGF1dG87XHJcbiAgfVxyXG4gIC5tb2RhbC1jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCA1cHggMTVweCByZ2JhKDAsMCwwLC41KSk7XHJcbiAgfVxyXG5cclxuICAvLyBNb2RhbCBzaXplc1xyXG4gIC5tb2RhbC1zbSB7IHdpZHRoOiAkbW9kYWwtc207IH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcbiAgLm1vZGFsLWxnIHsgd2lkdGg6ICRtb2RhbC1sZzsgfVxyXG59XHJcbiIsIi8vXHJcbi8vIFRvb2x0aXBzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gQmFzZSBjbGFzc1xyXG4udG9vbHRpcCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXHJcbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cclxuICBAaW5jbHVkZSByZXNldC10ZXh0O1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcclxuXHJcbiAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcclxuXHJcbiAgJi5pbiAgICAgeyBAaW5jbHVkZSBvcGFjaXR5KCR0b29sdGlwLW9wYWNpdHkpOyB9XHJcbiAgJi50b3AgICAgeyBtYXJnaW4tdG9wOiAgLTNweDsgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctd2lkdGggMDsgfVxyXG4gICYucmlnaHQgIHsgbWFyZ2luLWxlZnQ6ICAzcHg7IHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGg7IH1cclxuICAmLmJvdHRvbSB7IG1hcmdpbi10b3A6ICAgM3B4OyBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwOyB9XHJcbiAgJi5sZWZ0ICAgeyBtYXJnaW4tbGVmdDogLTNweDsgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy13aWR0aDsgfVxyXG59XHJcblxyXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XHJcbi50b29sdGlwLWlubmVyIHtcclxuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcclxuICBwYWRkaW5nOiAzcHggOHB4O1xyXG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XHJcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcclxufVxyXG5cclxuLy8gQXJyb3dzXHJcbi50b29sdGlwLWFycm93IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxufVxyXG4vLyBOb3RlOiBEZXByZWNhdGVkIC50b3AtbGVmdCwgLnRvcC1yaWdodCwgLmJvdHRvbS1sZWZ0LCBhbmQgLmJvdHRvbS1yaWdodCBhcyBvZiB2My4zLjFcclxuLnRvb2x0aXAge1xyXG4gICYudG9wIC50b29sdGlwLWFycm93IHtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcclxuICB9XHJcbiAgJi50b3AtbGVmdCAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICByaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcclxuICB9XHJcbiAgJi50b3AtcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcclxuICB9XHJcbiAgJi5yaWdodCAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XHJcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XHJcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxuICAmLmxlZnQgLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICByaWdodDogMDtcclxuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcclxuICB9XHJcbiAgJi5ib3R0b20gLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxuICAmLmJvdHRvbS1sZWZ0IC50b29sdGlwLWFycm93IHtcclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxuICAmLmJvdHRvbS1yaWdodCAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcclxuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xyXG4gIH1cclxufVxyXG4iLCJAbWl4aW4gcmVzZXQtdGV4dCgpIHtcclxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XHJcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUuXHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICBsaW5lLWJyZWFrOiBhdXRvO1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcclxuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXHJcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIHRleHQtc2hhZG93OiBub25lO1xyXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbiAgd29yZC1icmVhazogbm9ybWFsO1xyXG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xyXG4gIHdvcmQtd3JhcDogbm9ybWFsO1xyXG59XHJcbiIsIi8vXHJcbi8vIFBvcG92ZXJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLnBvcG92ZXIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcclxuICBwYWRkaW5nOiAxcHg7XHJcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgcG9wb3ZlcnMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxyXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXHJcbiAgQGluY2x1ZGUgcmVzZXQtdGV4dDtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxuXHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItYmc7XHJcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxuICBib3JkZXI6IDFweCBzb2xpZCAkcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3I7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlO1xyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCA1cHggMTBweCByZ2JhKDAsMCwwLC4yKSk7XHJcblxyXG4gIC8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xyXG4gICYudG9wICAgICB7IG1hcmdpbi10b3A6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxyXG4gICYucmlnaHQgICB7IG1hcmdpbi1sZWZ0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxyXG4gICYuYm90dG9tICB7IG1hcmdpbi10b3A6ICRwb3BvdmVyLWFycm93LXdpZHRoOyB9XHJcbiAgJi5sZWZ0ICAgIHsgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxyXG59XHJcblxyXG4ucG9wb3Zlci10aXRsZSB7XHJcbiAgbWFyZ2luOiAwOyAvLyByZXNldCBoZWFkaW5nIG1hcmdpblxyXG4gIHBhZGRpbmc6IDhweCAxNHB4O1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLXRpdGxlLWJnO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZW4oJHBvcG92ZXItdGl0bGUtYmcsIDUlKTtcclxuICBib3JkZXItcmFkaXVzOiAoJGJvcmRlci1yYWRpdXMtbGFyZ2UgLSAxKSAoJGJvcmRlci1yYWRpdXMtbGFyZ2UgLSAxKSAwIDA7XHJcbn1cclxuXHJcbi5wb3BvdmVyLWNvbnRlbnQge1xyXG4gIHBhZGRpbmc6IDlweCAxNHB4O1xyXG59XHJcblxyXG4vLyBBcnJvd3NcclxuLy9cclxuLy8gLmFycm93IGlzIG91dGVyLCAuYXJyb3c6YWZ0ZXIgaXMgaW5uZXJcclxuXHJcbi5wb3BvdmVyID4gLmFycm93IHtcclxuICAmLFxyXG4gICY6YWZ0ZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMDtcclxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gIH1cclxufVxyXG4ucG9wb3ZlciA+IC5hcnJvdyB7XHJcbiAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcclxufVxyXG4ucG9wb3ZlciA+IC5hcnJvdzphZnRlciB7XHJcbiAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcclxuICBjb250ZW50OiBcIlwiO1xyXG59XHJcblxyXG4ucG9wb3ZlciB7XHJcbiAgJi50b3AgPiAuYXJyb3cge1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcclxuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjsgLy8gSUU4IGZhbGxiYWNrXHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcclxuICAgIGJvdHRvbTogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICBib3R0b206IDFweDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDtcclxuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcclxuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYucmlnaHQgPiAuYXJyb3cge1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XHJcbiAgICBtYXJnaW4tdG9wOiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XHJcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcclxuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xyXG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgbGVmdDogMXB4O1xyXG4gICAgICBib3R0b206IC0kcG9wb3Zlci1hcnJvdy13aWR0aDtcclxuICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XHJcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuYm90dG9tID4gLmFycm93IHtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XHJcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XHJcbiAgICB0b3A6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgdG9wOiAxcHg7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XHJcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5sZWZ0ID4gLmFycm93IHtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgcmlnaHQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcclxuICAgIG1hcmdpbi10b3A6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcclxuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcclxuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjsgLy8gSUU4IGZhbGxiYWNrXHJcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgIHJpZ2h0OiAxcHg7XHJcbiAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcclxuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xyXG4gICAgICBib3R0b206IC0kcG9wb3Zlci1hcnJvdy13aWR0aDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gQ2Fyb3VzZWxcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBXcmFwcGVyIGZvciB0aGUgc2xpZGUgY29udGFpbmVyIGFuZCBpbmRpY2F0b3JzXHJcbi5jYXJvdXNlbCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uY2Fyb3VzZWwtaW5uZXIge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG5cclxuICA+IC5pdGVtIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKC42cyBlYXNlLWluLW91dCBsZWZ0KTtcclxuXHJcbiAgICAvLyBBY2NvdW50IGZvciBqYW5raXR1ZGUgb24gaW1hZ2VzXHJcbiAgICA+IGltZyxcclxuICAgID4gYSA+IGltZyB7XHJcbiAgICAgIEBpbmNsdWRlIGltZy1yZXNwb25zaXZlO1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBXZWJLaXQgQ1NTMyB0cmFuc2Zvcm1zIGZvciBzdXBwb3J0ZWQgZGV2aWNlc1xyXG4gICAgQG1lZGlhIGFsbCBhbmQgKHRyYW5zZm9ybS0zZCksICgtd2Via2l0LXRyYW5zZm9ybS0zZCkge1xyXG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXRyYW5zZm9ybSgwLjZzIGVhc2UtaW4tb3V0KTtcclxuICAgICAgQGluY2x1ZGUgYmFja2ZhY2UtdmlzaWJpbGl0eShoaWRkZW4pO1xyXG4gICAgICBAaW5jbHVkZSBwZXJzcGVjdGl2ZSgxMDAwcHgpO1xyXG5cclxuICAgICAgJi5uZXh0LFxyXG4gICAgICAmLmFjdGl2ZS5yaWdodCB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgfVxyXG4gICAgICAmLnByZXYsXHJcbiAgICAgICYuYWN0aXZlLmxlZnQge1xyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICB9XHJcbiAgICAgICYubmV4dC5sZWZ0LFxyXG4gICAgICAmLnByZXYucmlnaHQsXHJcbiAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICA+IC5hY3RpdmUsXHJcbiAgPiAubmV4dCxcclxuICA+IC5wcmV2IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbiAgPiAuYWN0aXZlIHtcclxuICAgIGxlZnQ6IDA7XHJcbiAgfVxyXG5cclxuICA+IC5uZXh0LFxyXG4gID4gLnByZXYge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICA+IC5uZXh0IHtcclxuICAgIGxlZnQ6IDEwMCU7XHJcbiAgfVxyXG4gID4gLnByZXYge1xyXG4gICAgbGVmdDogLTEwMCU7XHJcbiAgfVxyXG4gID4gLm5leHQubGVmdCxcclxuICA+IC5wcmV2LnJpZ2h0IHtcclxuICAgIGxlZnQ6IDA7XHJcbiAgfVxyXG5cclxuICA+IC5hY3RpdmUubGVmdCB7XHJcbiAgICBsZWZ0OiAtMTAwJTtcclxuICB9XHJcbiAgPiAuYWN0aXZlLnJpZ2h0IHtcclxuICAgIGxlZnQ6IDEwMCU7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmNhcm91c2VsLWNvbnRyb2wge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICBib3R0b206IDA7XHJcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xyXG4gIEBpbmNsdWRlIG9wYWNpdHkoJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eSk7XHJcbiAgZm9udC1zaXplOiAkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU7XHJcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB0ZXh0LXNoYWRvdzogJGNhcm91c2VsLXRleHQtc2hhZG93O1xyXG4gIC8vIFdlIGNhbid0IGhhdmUgdGhpcyB0cmFuc2l0aW9uIGhlcmUgYmVjYXVzZSBXZWJLaXQgY2FuY2VscyB0aGUgY2Fyb3VzZWxcclxuICAvLyBhbmltYXRpb24gaWYgeW91IHRyaXAgdGhpcyB3aGlsZSBpbiB0aGUgbWlkZGxlIG9mIGFub3RoZXIgYW5pbWF0aW9uLlxyXG5cclxuICAvLyBTZXQgZ3JhZGllbnRzIGZvciBiYWNrZ3JvdW5kc1xyXG4gICYubGVmdCB7XHJcbiAgICBAaW5jbHVkZSBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogcmdiYSgwLDAsMCwuNSksICRlbmQtY29sb3I6IHJnYmEoMCwwLDAsLjAwMDEpKTtcclxuICB9XHJcbiAgJi5yaWdodCB7XHJcbiAgICBsZWZ0OiBhdXRvO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBAaW5jbHVkZSBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogcmdiYSgwLDAsMCwuMDAwMSksICRlbmQtY29sb3I6IHJnYmEoMCwwLDAsLjUpKTtcclxuICB9XHJcblxyXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC45KTtcclxuICB9XHJcblxyXG4gIC8vIFRvZ2dsZXNcclxuICAuaWNvbi1wcmV2LFxyXG4gIC5pY29uLW5leHQsXHJcbiAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXHJcbiAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbWFyZ2luLXRvcDogLTEwcHg7XHJcbiAgICB6LWluZGV4OiA1O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIH1cclxuICAuaWNvbi1wcmV2LFxyXG4gIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0IHtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICB9XHJcbiAgLmljb24tbmV4dCxcclxuICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQge1xyXG4gICAgcmlnaHQ6IDUwJTtcclxuICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgfVxyXG4gIC5pY29uLXByZXYsXHJcbiAgLmljb24tbmV4dCB7XHJcbiAgICB3aWR0aDogIDIwcHg7XHJcbiAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIGZvbnQtZmFtaWx5OiBzZXJpZjtcclxuICB9XHJcblxyXG5cclxuICAuaWNvbi1wcmV2IHtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogJ1xcMjAzOSc7Ly8gU0lOR0xFIExFRlQtUE9JTlRJTkcgQU5HTEUgUVVPVEFUSU9OIE1BUksgKFUrMjAzOSlcclxuICAgIH1cclxuICB9XHJcbiAgLmljb24tbmV4dCB7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICdcXDIwM2EnOy8vIFNJTkdMRSBSSUdIVC1QT0lOVElORyBBTkdMRSBRVU9UQVRJT04gTUFSSyAoVSsyMDNBKVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHNcclxuLy9cclxuLy8gQWRkIGFuIHVub3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXHJcbi8vIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXHJcblxyXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGJvdHRvbTogMTBweDtcclxuICBsZWZ0OiA1MCU7XHJcbiAgei1pbmRleDogMTU7XHJcbiAgd2lkdGg6IDYwJTtcclxuICBtYXJnaW4tbGVmdDogLTMwJTtcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gIGxpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiAgMTBweDtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIG1hcmdpbjogMXB4O1xyXG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjYXJvdXNlbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAvLyBJRTgtOSBoYWNrIGZvciBldmVudCBoYW5kbGluZ1xyXG4gICAgLy9cclxuICAgIC8vIEludGVybmV0IEV4cGxvcmVyIDgtOSBkb2VzIG5vdCBzdXBwb3J0IGNsaWNrcyBvbiBlbGVtZW50cyB3aXRob3V0IGEgc2V0XHJcbiAgICAvLyBgYmFja2dyb3VuZC1jb2xvcmAuIFdlIGNhbm5vdCB1c2UgYGZpbHRlcmAgc2luY2UgdGhhdCdzIG5vdCB2aWV3ZWQgYXMgYVxyXG4gICAgLy8gYmFja2dyb3VuZCBjb2xvciBieSB0aGUgYnJvd3Nlci4gVGh1cywgYSBoYWNrIGlzIG5lZWRlZC5cclxuICAgIC8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjSW50ZXJuZXRfRXhwbG9yZXJcclxuICAgIC8vXHJcbiAgICAvLyBGb3IgSUU4LCB3ZSBzZXQgc29saWQgYmxhY2sgYXMgaXQgZG9lc24ndCBzdXBwb3J0IGByZ2JhKClgLiBGb3IgSUU5LCB3ZVxyXG4gICAgLy8gc2V0IGFscGhhIHRyYW5zcGFyZW5jeSBmb3IgdGhlIGJlc3QgcmVzdWx0cyBwb3NzaWJsZS5cclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAgXFw5OyAvLyBJRThcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMCk7IC8vIElFOVxyXG4gIH1cclxuICAuYWN0aXZlIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHdpZHRoOiAgMTJweDtcclxuICAgIGhlaWdodDogMTJweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xyXG4gIH1cclxufVxyXG5cclxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gSGlkZGVuIGJ5IGRlZmF1bHQgZm9yIHNtYWxsZXIgdmlld3BvcnRzXHJcbi5jYXJvdXNlbC1jYXB0aW9uIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbGVmdDogMTUlO1xyXG4gIHJpZ2h0OiAxNSU7XHJcbiAgYm90dG9tOiAyMHB4O1xyXG4gIHotaW5kZXg6IDEwO1xyXG4gIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdGV4dC1zaGFkb3c6ICRjYXJvdXNlbC10ZXh0LXNoYWRvdztcclxuICAmIC5idG4ge1xyXG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7IC8vIE5vIHNoYWRvdyBmb3IgYnV0dG9uIGVsZW1lbnRzIGluIGNhcm91c2VsLWNhcHRpb25cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBTY2FsZSB1cCBjb250cm9scyBmb3IgdGFibGV0cyBhbmQgdXBcclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuXHJcbiAgLy8gU2NhbGUgdXAgdGhlIGNvbnRyb2xzIGEgc21pZGdlXHJcbiAgLmNhcm91c2VsLWNvbnRyb2wge1xyXG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXHJcbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQsXHJcbiAgICAuaWNvbi1wcmV2LFxyXG4gICAgLmljb24tbmV4dCB7XHJcbiAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgIG1hcmdpbi10b3A6IC0xNXB4O1xyXG4gICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICB9XHJcbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCxcclxuICAgIC5pY29uLXByZXYge1xyXG4gICAgICBtYXJnaW4tbGVmdDogLTE1cHg7XHJcbiAgICB9XHJcbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQsXHJcbiAgICAuaWNvbi1uZXh0IHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIFNob3cgYW5kIGxlZnQgYWxpZ24gdGhlIGNhcHRpb25zXHJcbiAgLmNhcm91c2VsLWNhcHRpb24ge1xyXG4gICAgbGVmdDogMjAlO1xyXG4gICAgcmlnaHQ6IDIwJTtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gIH1cclxuXHJcbiAgLy8gTW92ZSB1cCB0aGUgaW5kaWNhdG9yc1xyXG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcclxuICAgIGJvdHRvbTogMjBweDtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gVXRpbGl0eSBjbGFzc2VzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gRmxvYXRzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5jbGVhcmZpeCB7XHJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbn1cclxuLmNlbnRlci1ibG9jayB7XHJcbiAgQGluY2x1ZGUgY2VudGVyLWJsb2NrO1xyXG59XHJcbi5wdWxsLXJpZ2h0IHtcclxuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcclxufVxyXG4ucHVsbC1sZWZ0IHtcclxuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuLy8gVG9nZ2xpbmcgY29udGVudFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBOb3RlOiBEZXByZWNhdGVkIC5oaWRlIGluIGZhdm9yIG9mIC5oaWRkZW4gb3IgLnNyLW9ubHkgKGFzIGFwcHJvcHJpYXRlKSBpbiB2My4wLjFcclxuLmhpZGUge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG4uc2hvdyB7XHJcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxufVxyXG4uaW52aXNpYmxlIHtcclxuICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbn1cclxuLnRleHQtaGlkZSB7XHJcbiAgQGluY2x1ZGUgdGV4dC1oaWRlO1xyXG59XHJcblxyXG5cclxuLy8gSGlkZSBmcm9tIHNjcmVlbnJlYWRlcnMgYW5kIGJyb3dzZXJzXHJcbi8vXHJcbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcclxuXHJcbi5oaWRkZW4ge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbi8vIEZvciBBZmZpeCBwbHVnaW5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmFmZml4IHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbn1cclxuIiwiLy8gQ2VudGVyLWFsaWduIGEgYmxvY2sgbGV2ZWwgZWxlbWVudFxyXG5cclxuQG1peGluIGNlbnRlci1ibG9jaygpIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbn1cclxuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XHJcbi8vXHJcbi8vIEhlYWRzIHVwISB2MyBsYXVuY2hlZCB3aXRoIG9ubHkgYC5oaWRlLXRleHQoKWAsIGJ1dCBwZXIgb3VyIHBhdHRlcm4gZm9yXHJcbi8vIG1peGlucyBiZWluZyByZXVzZWQgYXMgY2xhc3NlcyB3aXRoIHRoZSBzYW1lIG5hbWUsIHRoaXMgZG9lc24ndCBob2xkIHVwLiBBc1xyXG4vLyBvZiB2My4wLjEgd2UgaGF2ZSBhZGRlZCBgLnRleHQtaGlkZSgpYCBhbmQgZGVwcmVjYXRlZCBgLmhpZGUtdGV4dCgpYC5cclxuLy9cclxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9jb21taXQvYWEwMzk2ZWFlNzU3XHJcblxyXG4vLyBEZXByZWNhdGVkIGFzIG9mIHYzLjAuMSAod2lsbCBiZSByZW1vdmVkIGluIHY0KVxyXG5AbWl4aW4gaGlkZS10ZXh0KCkge1xyXG4gIGZvbnQ6IDAvMCBhO1xyXG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICB0ZXh0LXNoYWRvdzogbm9uZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IDA7XHJcbn1cclxuXHJcbi8vIE5ldyBtaXhpbiB0byB1c2UgYXMgb2YgdjMuMC4xXHJcbkBtaXhpbiB0ZXh0LWhpZGUoKSB7XHJcbiAgQGluY2x1ZGUgaGlkZS10ZXh0O1xyXG59XHJcbiIsIi8vXHJcbi8vIFJlc3BvbnNpdmU6IFV0aWxpdHkgY2xhc3Nlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIElFMTAgaW4gV2luZG93cyAoUGhvbmUpIDhcclxuLy9cclxuLy8gU3VwcG9ydCBmb3IgcmVzcG9uc2l2ZSB2aWV3cyB2aWEgbWVkaWEgcXVlcmllcyBpcyBraW5kIG9mIGJvcmtlZCBpbiBJRTEwLCBmb3JcclxuLy8gU3VyZmFjZS9kZXNrdG9wIGluIHNwbGl0IHZpZXcgYW5kIGZvciBXaW5kb3dzIFBob25lIDguIFRoaXMgcGFydGljdWxhciBmaXhcclxuLy8gbXVzdCBiZSBhY2NvbXBhbmllZCBieSBhIHNuaXBwZXQgb2YgSmF2YVNjcmlwdCB0byBzbmlmZiB0aGUgdXNlciBhZ2VudCBhbmRcclxuLy8gYXBwbHkgc29tZSBjb25kaXRpb25hbCBDU1MgdG8gKm9ubHkqIHRoZSBTdXJmYWNlL2Rlc2t0b3AgV2luZG93cyA4LiBMb29rIGF0XHJcbi8vIG91ciBHZXR0aW5nIFN0YXJ0ZWQgcGFnZSBmb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiB0aGlzIGJ1Zy5cclxuLy9cclxuLy8gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgZm9sbG93aW5nOlxyXG4vL1xyXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMDQ5N1xyXG4vLyBEb2NzOiBodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbS9nZXR0aW5nLXN0YXJ0ZWQvI3N1cHBvcnQtaWUxMC13aWR0aFxyXG4vLyBTb3VyY2U6IGh0dHA6Ly90aW1rYWRsZWMuY29tLzIwMTMvMDEvd2luZG93cy1waG9uZS04LWFuZC1kZXZpY2Utd2lkdGgvXHJcbi8vIFNvdXJjZTogaHR0cDovL3RpbWthZGxlYy5jb20vMjAxMi8xMC9pZTEwLXNuYXAtbW9kZS1hbmQtcmVzcG9uc2l2ZS1kZXNpZ24vXHJcblxyXG5AYXQtcm9vdCB7XHJcbiAgQC1tcy12aWV3cG9ydCB7XHJcbiAgICB3aWR0aDogZGV2aWNlLXdpZHRoO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXHJcbi8vIE5vdGU6IERlcHJlY2F0ZWQgLnZpc2libGUteHMsIC52aXNpYmxlLXNtLCAudmlzaWJsZS1tZCwgYW5kIC52aXNpYmxlLWxnIGFzIG9mIHYzLjIuMFxyXG5cclxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXhzJyk7XHJcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1zbScpO1xyXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtbWQnKTtcclxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLWxnJyk7XHJcblxyXG4udmlzaWJsZS14cy1ibG9jayxcclxuLnZpc2libGUteHMtaW5saW5lLFxyXG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2ssXHJcbi52aXNpYmxlLXNtLWJsb2NrLFxyXG4udmlzaWJsZS1zbS1pbmxpbmUsXHJcbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayxcclxuLnZpc2libGUtbWQtYmxvY2ssXHJcbi52aXNpYmxlLW1kLWlubGluZSxcclxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrLFxyXG4udmlzaWJsZS1sZy1ibG9jayxcclxuLnZpc2libGUtbGctaW5saW5lLFxyXG4udmlzaWJsZS1sZy1pbmxpbmUtYmxvY2sge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS14cycpO1xyXG59XHJcbi52aXNpYmxlLXhzLWJsb2NrIHtcclxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLXhzLWlubGluZSB7XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrIHtcclxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXNtJyk7XHJcbn1cclxuLnZpc2libGUtc20tYmxvY2sge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1zbS1pbmxpbmUge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUtc20taW5saW5lLWJsb2NrIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtbWQnKTtcclxufVxyXG4udmlzaWJsZS1tZC1ibG9jayB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLW1kLWlubGluZSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1tZC1pbmxpbmUtYmxvY2sge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcclxufVxyXG4udmlzaWJsZS1sZy1ibG9jayB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1sZy1pbmxpbmUge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xyXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXhzJyk7XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tc20nKTtcclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1tZCcpO1xyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1sZycpO1xyXG59XHJcblxyXG5cclxuLy8gUHJpbnQgdXRpbGl0aWVzXHJcbi8vXHJcbi8vIE1lZGlhIHF1ZXJpZXMgYXJlIHBsYWNlZCBvbiB0aGUgaW5zaWRlIHRvIGJlIG1peGluLWZyaWVuZGx5LlxyXG5cclxuLy8gTm90ZTogRGVwcmVjYXRlZCAudmlzaWJsZS1wcmludCBhcyBvZiB2My4yLjBcclxuXHJcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1wcmludCcpO1xyXG5cclxuQG1lZGlhIHByaW50IHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXByaW50Jyk7XHJcbn1cclxuLnZpc2libGUtcHJpbnQtYmxvY2sge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgQG1lZGlhIHByaW50IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLXByaW50LWlubGluZSB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICBAbWVkaWEgcHJpbnQge1xyXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLXByaW50LWlubGluZS1ibG9jayB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICBAbWVkaWEgcHJpbnQge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgcHJpbnQge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXByaW50Jyk7XHJcbn1cclxuIiwiLy8gUmVzcG9uc2l2ZSB1dGlsaXRpZXNcclxuXHJcbi8vXHJcbi8vIE1vcmUgZWFzaWx5IGluY2x1ZGUgYWxsIHRoZSBzdGF0ZXMgZm9yIHJlc3BvbnNpdmUtdXRpbGl0aWVzLmxlc3MuXHJcbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xyXG5AbWl4aW4gcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCRwYXJlbnQpIHtcclxuICAjeyRwYXJlbnR9IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIHRhYmxlI3skcGFyZW50fSAgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XHJcbiAgdHIjeyRwYXJlbnR9ICAgICB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XHJcbiAgdGgjeyRwYXJlbnR9LFxyXG4gIHRkI3skcGFyZW50fSAgICAgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cclxufVxyXG5cclxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXHJcbkBtaXhpbiByZXNwb25zaXZlLWludmlzaWJpbGl0eSgkcGFyZW50KSB7XHJcbiAgI3skcGFyZW50fSB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbiIsIi8qIFbDoWx0b3rDs2trYWwgbmVtIGZlbMO8bMOtcmhhdMOzIEJvb3RzdHJhcCBkb2xnb2sgZmVsw7xsw61yw6FzYSAqLyIsIi8qIFbDoWx0b3rDs2sgKi9cclxuXHJcbiRvZmZjYW52YXMtdHJhbnNpdGlvbjogYWxsIDUwMG1zIGN1YmljLWJlemllcigwLjE2NSwgMC44NDAsIDAuNDQwLCAxLjAwMCkgIWRlZmF1bHQ7XHJcblxyXG4kb2ZmY2FudmFzLXNpZGViYXItd2lkdGg6IDI0NXB4ICFkZWZhdWx0O1xyXG4vLyBoYSAwcHgsIGFra29yIG5pbmNzZW4gcmliYm9uXHJcbiRvZmZjYW52YXMtcmliYm9uLXdpZHRoOiA0NXB4ICFkZWZhdWx0O1xyXG5cclxuJG9mZmNhbnZhcy1wdXNoZWQtbWF4LXdpZHRoOiA3NjhweCAhZGVmYXVsdDtcclxuJG9mZmNhbnZhcy1taW5pLW1heC13aWR0aDogNDgwcHggIWRlZmF1bHQ7XHJcblxyXG4vLyBoYSBpZ2F6LCBkZXNrdG9wb24gbmVtIGzDoXRzesOzZGlrIGEgcmliYm9uXHJcbiRvZmZjYW52YXMtbW9iaWxlLW9ubHk6IGZhbHNlICFkZWZhdWx0O1xyXG4vLyBoYSBpZ2F6LCBha2tvciBuZW0gZm9nbGFsIGhlbHlldCBhIHJpYmJvbiBjc2FrIFwibGViZWdcIlxyXG4kb2ZmY2FudmFzLWZsb2F0LXJpYmJvbjogZmFsc2UgIWRlZmF1bHQ7XHJcbi8vIGhhIGlnYXosIGEgcmliYm9uIHRlbGplcyBtYWdhc3PDoWfDulxyXG4kb2ZmY2FudmFzLXJpYmJvbi1mdWxsLWhlaWdodDogdHJ1ZSAhZGVmYXVsdDtcclxuXHJcbiRfb2ZmY2FudmFzLXJpYmJvbi1zcGFjZTogJG9mZmNhbnZhcy1yaWJib24td2lkdGg7XHJcblxyXG5AaWYgJG9mZmNhbnZhcy1mbG9hdC1yaWJib24gPT0gdHJ1ZSB7XHJcbiAgJF9vZmZjYW52YXMtcmliYm9uLXNwYWNlOiAwcHg7XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbn1cclxuXHJcbiVvZmZjYW52YXMtY29udGFpbmVyIHtcclxuICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xyXG5cclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbiVvZmZjYW52YXMtcmliYm9uIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwcHg7XHJcbiAgbGVmdDogMHB4O1xyXG5cclxuICBAaWYgJG9mZmNhbnZhcy1yaWJib24tZnVsbC1oZWlnaHQgPT0gdHJ1ZSB7XHJcbiAgICBib3R0b206IDBweDtcclxuICB9XHJcblxyXG4gIHotaW5kZXg6IDk4O1xyXG5cclxuICB3aWR0aDogJG9mZmNhbnZhcy1yaWJib24td2lkdGg7XHJcbn1cclxuXHJcbiVvZmZjYW52YXMtc2lkZWJhciB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIGxlZnQ6IDBweDtcclxuICB0b3A6IDBweDtcclxuICBib3R0b206IDBweDtcclxuXHJcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gIG92ZXJmbG93LXk6IGF1dG87XHJcblxyXG4gIHotaW5kZXg6IDk3O1xyXG5cclxuICB3aWR0aDogJG9mZmNhbnZhcy1zaWRlYmFyLXdpZHRoO1xyXG5cclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRvZmZjYW52YXMtdHJhbnNpdGlvbik7XHJcbiAgQGluY2x1ZGUgdHJhbnNsYXRlKCRfb2ZmY2FudmFzLXJpYmJvbi1zcGFjZSwgMHB4KTtcclxuXHJcbiAgJi5wdWxsZWQge1xyXG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlKC0kb2ZmY2FudmFzLXNpZGViYXItd2lkdGggKyAkX29mZmNhbnZhcy1yaWJib24tc3BhY2UsIDBweCk7XHJcbiAgfVxyXG59XHJcblxyXG4lb2ZmY2FudmFzLXdyYXBwZXIge1xyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJG9mZmNhbnZhcy10cmFuc2l0aW9uKTtcclxuICBAaW5jbHVkZSB0cmFuc2xhdGUoJF9vZmZjYW52YXMtcmliYm9uLXNwYWNlICsgJG9mZmNhbnZhcy1zaWRlYmFyLXdpZHRoLCAwcHgpO1xyXG5cclxuICBtYXJnaW4tcmlnaHQ6ICRfb2ZmY2FudmFzLXJpYmJvbi1zcGFjZSArICRvZmZjYW52YXMtc2lkZWJhci13aWR0aDtcclxuXHJcbiAgJi5wdWxsZWQge1xyXG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlKCRfb2ZmY2FudmFzLXJpYmJvbi1zcGFjZSwgMHB4KTtcclxuXHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRfb2ZmY2FudmFzLXJpYmJvbi1zcGFjZTtcclxuICB9XHJcbn1cclxuXHJcbiVvZmZjYW52YXMtcmliYm9uLm5vLXRyYW5zaXRpb24sICVvZmZjYW52YXMtc2lkZWJhci5uby10cmFuc2l0aW9uLCAlb2ZmY2FudmFzLXdyYXBwZXIubm8tdHJhbnNpdGlvbiB7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihub25lKTtcclxufVxyXG5cclxuLyogRGVza3RvcCAqL1xyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkb2ZmY2FudmFzLXB1c2hlZC1tYXgtd2lkdGggKyAxKSB7XHJcbiAgQGlmICRvZmZjYW52YXMtbW9iaWxlLW9ubHkgPT0gdHJ1ZSB7XHJcbiAgICAlb2ZmY2FudmFzLXJpYmJvbiB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJW9mZmNhbnZhcy1zaWRlYmFyIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAlb2ZmY2FudmFzLXdyYXBwZXIsICVvZmZjYW52YXMtd3JhcHBlci5wdWxsZWQge1xyXG4gICAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMHB4LCAwcHgpO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIFRhYmxldCDDqXMgbW9iaWwgbsOpemV0IC0tIGtpdG9sanVrICovXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkb2ZmY2FudmFzLXB1c2hlZC1tYXgtd2lkdGgpIHtcclxuICAlb2ZmY2FudmFzLXdyYXBwZXIge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkX29mZmNhbnZhcy1yaWJib24tc3BhY2U7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBOYWd5b24ga2ljc2kga2lqZWx6xZEgZXNldMOpbiAqL1xyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG9mZmNhbnZhcy1taW5pLW1heC13aWR0aCkge1xyXG4gICVvZmZjYW52YXMtcmliYm9uIHtcclxuICAgICYucHVsbGVkIHtcclxuICAgICAgYm90dG9tOiBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJW9mZmNhbnZhcy1zaWRlYmFyIHtcclxuICAgICYucHVsbGVkIHtcclxuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtKCRfb2ZmY2FudmFzLXJpYmJvbi1zcGFjZSArICRvZmZjYW52YXMtc2lkZWJhci13aWR0aCksIDBweCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAlb2ZmY2FudmFzLXdyYXBwZXIge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwcHggIWltcG9ydGFudDtcclxuXHJcbiAgICAmLnB1bGxlZCB7XHJcbiAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgwcHgsIDBweCk7XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiJG9mZmNhbnZhcy1tb2JpbGUtb25seTogdHJ1ZTtcclxuJG9mZmNhbnZhcy1mbG9hdC1yaWJib246IHRydWU7XHJcbiRvZmZjYW52YXMtcmliYm9uLWZ1bGwtaGVpZ2h0OiBmYWxzZTtcclxuJG9mZmNhbnZhcy1zaWRlYmFyLXdpZHRoOiAxNjBweDtcclxuJG9mZmNhbnZhcy1wdXNoZWQtbWF4LXdpZHRoOiA5ODBweDtcclxuXHJcbkBpbXBvcnQgJy4uL2xpYi9fb2ZmY2FudmFzJztcclxuXHJcbi5vZmZjYW52YXMge1xyXG4gIEBleHRlbmQgJW9mZmNhbnZhcztcclxuXHJcbiAgLnJpYmJvbiB7XHJcbiAgICBAZXh0ZW5kICVvZmZjYW52YXMtcmliYm9uO1xyXG5cclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcblxyXG4gICAgLmJ1cmdlciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgcGFkZGluZzogMTJweDtcclxuXHJcbiAgICAgIHNwYW4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICBoZWlnaHQ6IDJweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xyXG5cclxuICAgICAgICAmICsgc3BhbiB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2lkZWJhciB7XHJcbiAgICBAZXh0ZW5kICVvZmZjYW52YXMtc2lkZWJhcjtcclxuXHJcbiAgICBvdmVyZmxvdy14OiB2aXNpYmxlO1xyXG4gICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcclxuXHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG5cclxuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xyXG5cclxuICAgID4gZGl2IHtcclxuICAgICAgd2lkdGg6IDE5MHB4O1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcblxyXG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgICYucHVsbGVkID4gZGl2IHtcclxuICAgICAgd2lkdGg6IDE2MHB4O1xyXG4gICAgfVxyXG5cclxuICAgID4gZGl2ID4gYSB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgIGxlZnQ6IDBweDtcclxuICAgICAgd2lkdGg6IDE4MHB4O1xyXG4gICAgfVxyXG5cclxuICAgICYucHVsbGVkID4gZGl2ID4gYSB7XHJcbiAgICAgIGxlZnQ6IC0yMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLndyYXBwZXIge1xyXG4gICAgQGV4dGVuZCAlb2ZmY2FudmFzLXdyYXBwZXI7XHJcbiAgfVxyXG59IiwiJW1lbnUtYnV0dG9uIHtcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcclxuICAgIFxyXG4gICAgLy93aWR0aDogMTgzcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogNDBweDtcclxuICAgIFxyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIFxyXG4gICAgLy9iYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcclxuICAgIFxyXG4gICAgZm9udC1zaXplOiAwLjg1ZW07IFxyXG4gICAgXHJcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMHB4LCAwcHgpO1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zcyBlYXNlKTtcclxuICAgICBcclxuICAgICYsICY6aG92ZXIsICY6dmlzaXRlZCwgJjphY3RpdmUsICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgPiBzcGFuIHtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgICAgIFxyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIH1cclxufVxyXG5cclxuJW1lbnUtYnV0dG9uLWxlZnQge1xyXG4gICAgQGV4dGVuZCAlbWVudS1idXR0b247XHJcbiAgICBcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgNTAlO1xyXG4gICAgXHJcbiAgICA+IHNwYW4ge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTdweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgICB9IFxyXG4gICAgXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUoLTVweCwgMHB4KTtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjNzIGVhc2UpO1xyXG4gICAgfVxyXG59XHJcblxyXG4lbWVudS1idXR0b24tcmlnaHQge1xyXG4gICAgQGV4dGVuZCAlbWVudS1idXR0b247XHJcbiAgICBcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDUwJTtcclxuICAgIFxyXG4gICAgPiBzcGFuIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxN3B4O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xyXG4gICAgfVxyXG4gICAgICAgIFxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlKDVweCwgMHB4KTtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjNzIGVhc2UpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYnRuLW1lbnUtbGVmdC0xIHtcclxuICAgIEBleHRlbmQgJW1lbnUtYnV0dG9uLWxlZnQ7XHJcbiAgICBcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaW1nL2J1dHRvbnMvYmctYnRuLWxlZnQtMS5zdmcnKTtcclxufVxyXG5cclxuLmJ0bi1tZW51LWxlZnQtMiB7XHJcbiAgICBAZXh0ZW5kICVtZW51LWJ1dHRvbi1sZWZ0O1xyXG4gICAgXHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2ltZy9idXR0b25zL2JnLWJ0bi1sZWZ0LTIuc3ZnJyk7XHJcbn1cclxuXHJcbi5idG4tbWVudS1sZWZ0LTMge1xyXG4gICAgQGV4dGVuZCAlbWVudS1idXR0b24tbGVmdDtcclxuICAgIFxyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdpbWcvYnV0dG9ucy9iZy1idG4tbGVmdC0zLnN2ZycpO1xyXG59XHJcblxyXG4uYnRuLW1lbnUtbGVmdC00IHtcclxuICAgIEBleHRlbmQgJW1lbnUtYnV0dG9uLWxlZnQ7XHJcbiAgICBcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaW1nL2J1dHRvbnMvYmctYnRuLWxlZnQtNC5zdmcnKTtcclxufVxyXG5cclxuLmJ0bi1tZW51LWxlZnQtNSB7XHJcbiAgICBAZXh0ZW5kICVtZW51LWJ1dHRvbi1sZWZ0O1xyXG4gICAgXHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2ltZy9idXR0b25zL2JnLWJ0bi1sZWZ0LTUuc3ZnJyk7XHJcbn1cclxuXHJcbi5idG4tbWVudS1sZWZ0LTYge1xyXG4gICAgQGV4dGVuZCAlbWVudS1idXR0b24tbGVmdDtcclxuICAgIFxyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdpbWcvYnV0dG9ucy9iZy1idG4tbGVmdC02LnN2ZycpO1xyXG59XHJcblxyXG4uYnRuLW1lbnUtcmlnaHQtMSB7XHJcbiAgICBAZXh0ZW5kICVtZW51LWJ1dHRvbi1yaWdodDtcclxuICAgIFxyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdpbWcvYnV0dG9ucy9iZy1idG4tcmlnaHQtMS5zdmcnKTtcclxufVxyXG5cclxuLmJ0bi1tZW51LXJpZ2h0LTIge1xyXG4gICAgQGV4dGVuZCAlbWVudS1idXR0b24tcmlnaHQ7XHJcbiAgICBcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaW1nL2J1dHRvbnMvYmctYnRuLXJpZ2h0LTIuc3ZnJyk7XHJcbn1cclxuXHJcbi5idG4tbWVudS1yaWdodC0zIHtcclxuICAgIEBleHRlbmQgJW1lbnUtYnV0dG9uLXJpZ2h0O1xyXG4gICAgXHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2ltZy9idXR0b25zL2JnLWJ0bi1yaWdodC0zLnN2ZycpO1xyXG59XHJcblxyXG4uYnRuLW1lbnUtcmlnaHQtNCB7XHJcbiAgICBAZXh0ZW5kICVtZW51LWJ1dHRvbi1yaWdodDtcclxuICAgIFxyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdpbWcvYnV0dG9ucy9iZy1idG4tcmlnaHQtNC5zdmcnKTtcclxufVxyXG5cclxuLmJ0bi1tZW51LXJpZ2h0LTUge1xyXG4gICAgQGV4dGVuZCAlbWVudS1idXR0b24tcmlnaHQ7XHJcbiAgICBcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaW1nL2J1dHRvbnMvYmctYnRuLXJpZ2h0LTUuc3ZnJyk7XHJcbn1cclxuXHJcbi5idG4tbWVudS1yaWdodC02IHtcclxuICAgIEBleHRlbmQgJW1lbnUtYnV0dG9uLXJpZ2h0O1xyXG4gICAgXHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2ltZy9idXR0b25zL2JnLWJ0bi1yaWdodC02LnN2ZycpO1xyXG59XHJcblxyXG4uYnRuLW1lbnUtcmlnaHQtNyB7XHJcbiAgICBAZXh0ZW5kICVtZW51LWJ1dHRvbi1yaWdodDtcclxuICAgIFxyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdpbWcvYnV0dG9ucy9iZy1idG4tcmlnaHQtNy5zdmcnKTtcclxufSIsIlxyXG4uYm94LWNvbnRhaW5lciB7XHJcbiAgLy9AZXh0ZW5kIC5jb250YWluZXI7XHJcbiAgLy9tYXgtd2lkdGg6IDEwMCU7XHJcblxyXG4gIC5ib3gtcm93IHtcclxuICAgIEBpbmNsdWRlIG1ha2Utcm93KDMwcHgpO1xyXG5cclxuICAgICVib3gge1xyXG4gICAgICBAaW5jbHVkZSBtYWtlLXhzLWNvbHVtbigxMiwgMzBweCk7XHJcbiAgICAgIEBpbmNsdWRlIG1ha2Utc20tY29sdW1uKDMsIDMwcHgpO1xyXG5cclxuICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlKDBweCwgMHB4KTtcclxuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zcyBlYXNlKTtcclxuXHJcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmlsbCgpO1xyXG5cclxuICAgICAgICBjb250ZW50OiAnJztcclxuXHJcbiAgICAgICAgbGVmdDogMTVweDtcclxuICAgICAgICByaWdodDogMTVweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygxcHggMXB4IDJweCAxcHggcmdiYSgyMTQsIDIzMiwgMjQwLCAxKSk7XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zcyBlYXNlKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlKDBweCwgLTVweCk7XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zcyBlYXNlKTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygxcHggNHB4IDVweCAxcHggcmdiYSgyMTQsIDIzMiwgMjQwLCAxKSk7XHJcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjNzIGVhc2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJiwgJjpob3ZlciwgJjp2aXNpdGVkICY6Zm9jdXMge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmhlYWQge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgcGFkZGluZzogNXB4IDhweDtcclxuICAgICAgICBmb250LXNpemU6IDAuOGVtO1xyXG5cclxuICAgICAgICAmLnN0YXI6YWZ0ZXIge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICAgd2lkdGg6IDE2cHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDE2cHg7XHJcblxyXG4gICAgICAgICAgY29udGVudDogJyc7XHJcblxyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cclxuICAgICAgICAgIHJpZ2h0OiA1cHg7XHJcbiAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IC04cHg7XHJcblxyXG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCdpbWcvaWNvbi1zdGFyLXdoaXRlLnN2ZycpIG5vLXJlcGVhdCA1MCUgNTAlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLm5hbWUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAucHJldmlldyB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xyXG5cclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdpbWcvYmctbGlzdC5wbmcnKTtcclxuXHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHJcbiAgICAgICAgaSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmaWxsKCk7XHJcblxyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJveC15ZWxsb3cge1xyXG4gICAgICBAZXh0ZW5kICVib3g7XHJcblxyXG4gICAgICAuaGVhZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2YxZDIxNTtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgfVxyXG5cclxuICAgICAgLm5hbWUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmMWQyMTU7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcblxyXG4gICAgICAgIHBhZGRpbmc6IDEzcHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYm94LWJsdWUge1xyXG4gICAgICBAZXh0ZW5kICVib3g7XHJcblxyXG4gICAgICAuaGVhZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogIzM3Y2FlYztcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgfVxyXG5cclxuICAgICAgLm5hbWUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICMzN2NhZWM7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcblxyXG4gICAgICAgIHBhZGRpbmc6IDEzcHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn0iLCIucGFpbnRlci1nYW1lIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gIG1heC13aWR0aDogOTcwcHg7XHJcblxyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG5cclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gIC5wYWxldHRlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICBsZWZ0OiAwcHg7XHJcbiAgICB0b3A6IC03MHB4O1xyXG4gIH1cclxuXHJcbiAgLmNhbnZhcyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgbWFyZ2luLXRvcDogMTYwcHg7XHJcbiAgfVxyXG5cclxuICAuYnJ1c2gge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogOTk7XHJcbiAgfVxyXG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBMQVlPVVRcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5tZW1vcnktZ2FtZSB7XHJcbiAgLyogd3JhcHBlciAqL1xyXG5cclxuICAud3JhcHBlciB7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWluLXdpZHRoOiA0ODBweDtcclxuICB9XHJcblxyXG4gIC8qIGNvbnRhaW5lciAqL1xyXG5cclxuICAuY29udGFpbmVyIHtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDEwMjRweDtcclxuICB9XHJcblxyXG4gIC8qIGhlYWRlciAqL1xyXG5cclxuICAuaGVhZGVyIHtcclxuICAgIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDQwcHg7XHJcbiAgfVxyXG5cclxuICAuaGVhZGVyX19sb2dvIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xyXG4gICAgd2lkdGg6IDMwcHg7XHJcbiAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgfVxyXG5cclxuICAuaGVhZGVyX190aXRsZSB7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS0tbWVkaXVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgfVxyXG5cclxuICAvKiBjb250ZW50ICovXHJcblxyXG4gIC5jb250ZW50IHtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gIH1cclxuXHJcbiAgLyogZm9vdGVyICovXHJcblxyXG4gIC5mb290ZXIge1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS0tc21hbGw7XHJcbiAgfVxyXG5cclxuICAuZm9vdGVyX19sZWZ0LFxyXG4gIC5mb290ZXJfX3JpZ2h0IHtcclxuICAgIHdpZHRoOiA1MCU7XHJcbiAgfVxyXG5cclxuICAuZm9vdGVyX19sZWZ0IHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gIH1cclxuXHJcbiAgLmZvb3Rlcl9fcmlnaHQge1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgfVxyXG5cclxuICAuZm9vdGVyX190aXRsZSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgY29sb3I6ICRjb2xvci0tZGtibHVlO1xyXG4gIH1cclxuXHJcbiAgLmZvb3Rlcl9fc29jaWFsIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICB9XHJcblxyXG4gIC5mb290ZXJfX3NvY2lhbC0taGVhZGluZyB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgfVxyXG5cclxuICAuZm9vdGVyX19jb3B5cmlnaHQge1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6ICRjb2xvci0tZGtibHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZvb3Rlcl9fc29jaWFsLS1pY29ucyB7XHJcblxyXG4gIH1cclxufSIsIi8vIGZvbnQgZmFtaWxpZXNcclxuXHJcbiRmb250LWZhbWlseS0tcHJpbWFyeSA6ICdNYXJnYXJpbmUnLCBjdXJzaXZlO1xyXG5cclxuLy8gZm9udCBzaXplc1xyXG5cclxuJGZvbnQtc2l6ZS0teHhzbWFsbCA6IDExcHg7XHJcbiRmb250LXNpemUtLXhzbWFsbCA6IDEycHg7XHJcbiRmb250LXNpemUtLXNtYWxsIDogMTRweDtcclxuJGZvbnQtc2l6ZS0tbWVkaXVtIDogMThweDtcclxuJGZvbnQtc2l6ZS0tbGFyZ2UgOiAyNHB4O1xyXG4kZm9udC1zaXplLS14bGFyZ2UgOiAzMHB4O1xyXG4kZm9udC1zaXplLS14eGxhcmdlIDogMzZweDtcclxuXHJcbi8vIGxpbmUgaGVpZ2h0c1xyXG5cclxuJGxpbmUtaGVpZ2h0LS1zbWFsbCA6IDEuMjtcclxuJGxpbmUtaGVpZ2h0LS1tZWRpdW0gOiAxLjU7XHJcbiRsaW5lLWhlaWdodC0tbGFyZ2UgOiAxLjg7XHJcblxyXG4vLyBjb2xvdXJzXHJcblxyXG4kY29sb3ItLWRrZ3JleSA6IHJnYig0MCw0Miw0Nyk7XHJcbiRjb2xvci0tZ3JleSA6IHJnYigxMjAsMTIyLDEyOCk7XHJcbiRjb2xvci0tbHRncmV5IDogcmdiKDIyMCwyMjIsMjI1KTtcclxuJGNvbG9yLS14bHRncmV5IDogcmdiKDI0OCwyNTAsMjUyKTtcclxuXHJcbiRjb2xvci0tYmx1ZSA6IHJnYig0MCwxNzAsMjIwKTtcclxuJGNvbG9yLS1ka2JsdWUgOiBkYXJrZW4oJGNvbG9yLS1ibHVlLCAyMCUpO1xyXG4kY29sb3ItLWx0Ymx1ZSA6IGxpZ2h0ZW4oJGNvbG9yLS1ibHVlLCAyMCUpO1xyXG5cclxuJGNvbG9yLS1yZWQgOiByZ2IoMjU1LDYwLDgwKTtcclxuJGNvbG9yLS1ka3JlZCA6IGRhcmtlbigkY29sb3ItLXJlZCwgMjAlKTtcclxuJGNvbG9yLS1sdHJlZCA6IGxpZ2h0ZW4oJGNvbG9yLS1yZWQsIDIwJSk7XHJcblxyXG4kY29sb3ItLWdyZWVuIDogcmdiKDE0NSwyNTEsMTczKTtcclxuXHJcbiRjb2xvci0teWVsbG93IDogcmdiKDI1NSwyNTUsMjIwKTtcclxuXHJcbi8vIGdhbWUgY29uZmlnIHZhcmlhYmxlc1xyXG5cclxuJHRpbGUtLXRyYW5zaXRpb24tdGltZSA6IDAuMnM7XHJcblxyXG4vLyBsZXZlbHMgLT4gdXNlZCBpbiBfbW9kdWxlc1xyXG4vL1xyXG4vLyBtYXBwZWQgb3V0IGxpa2U6XHJcbi8vIExFVkVMIE5VTSA6IEdSSUQgTEVOR1RIXHJcbi8vXHJcbi8vIGxldmVsIDEgLSA0IHggMiBncmlkXHJcbi8vIGxldmVsIDIgLSA2IHggMyBncmlkXHJcbi8vIGxldmVsIDMgLSA4IHggNCBncmlkXHJcbi8vXHJcbi8vIEFkZCBtb3JlIGxldmVscyBpZiB5b3Ugd2FudCwgYnV0IG1ha2Ugc3VyZSB5b3UgYWRqdXN0IHRoZSBmb2xsb3dpbmc6XHJcbi8vXHJcbi8vIDEuIE1ha2Ugc3VyZSBncmlkIGFzcGVjdCByYXRpbyBpcyAyOjFcclxuLy8gMi4gTWFrZSBzdXJlIHRvIGFsbG93IG1vcmUgbGV2ZWwgc2VsZWN0aW9uIG9uIHRoZSBzdGFydCBzY3JlZW4gSFRNTFxyXG4vLyAzLiBNYWtlIHN1cmUgdGhhdCB5b3UgYWRkIGltYWdlcyBmb3IgbmV3IGxldmVsc1xyXG5cclxuJGxldmVscyA6IChcclxuICAgICAgICAxIDogOCxcclxuICAgICAgICAyIDogMTgsXHJcbiAgICAgICAgMyA6IDMyXHJcbik7XHJcblxyXG5AZnVuY3Rpb24gcG93KCR4LCAkZXhwb25lbnQpIHtcclxuICAvLyByZXNldCB2YWx1ZVxyXG4gICR2YWx1ZTogMTtcclxuICAvLyBwb3NpdGl2ZSBpbnRlcmdlcnMgZ2V0IG11bHRpcGxpZWRcclxuICBAaWYgJGV4cG9uZW50ID49IDAge1xyXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZXhwb25lbnQge1xyXG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqICR4O1xyXG4gICAgfVxyXG4gIH1cclxuICAgIC8vIG5lZ2l0aXZlIGludGVyZ2VycyBnZXQgZGl2aWRlZC4gQSBudW1iZXIgZGl2aWRlZCBieSBpdHNlbGYgaXMgMVxyXG4gIEBlbHNlIHtcclxuICAgIEBmb3IgJGkgZnJvbSAkZXhwb25lbnQgdG8gMCB7XHJcbiAgICAgICR2YWx1ZTogJHZhbHVlIC8gJHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyByZXR1cm4gdGhlIGxhc3QgdmFsdWUgd3JpdHRlblxyXG4gIEByZXR1cm4gJHZhbHVlO1xyXG59XHJcblxyXG5AZnVuY3Rpb24gZGVjcm91bmQoJHgsICRkZWNpbWFsOiAxMCkge1xyXG4gICRyOiBwb3coMTAsICRkZWNpbWFsKTtcclxuXHJcbiAgQHJldHVybiByb3VuZCgkeCAqICRyKSAvICRyO1xyXG59XHJcblxyXG5AZnVuY3Rpb24gc3FydCgkeCkge1xyXG4gICR4OiBhYnMoJHgpO1xyXG4gICRndWVzczogNDtcclxuICAkcm9vdDogJGd1ZXNzO1xyXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTAge1xyXG4gICAgJHJvb3Q6ICRyb290IC0gKHBvdygkcm9vdCwgMikgLSAkeCkgLyAoMiAqICRyb290KTtcclxuICB9XHJcbiAgQHJldHVybiBkZWNyb3VuZCgkcm9vdCk7XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBNRU1PUlkgR0FNRSAobWcpXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ubWVtb3J5LWdhbWUge1xyXG4gIC8qKlxyXG4gICAqIEdhbWUgY29udGFpbmVyXHJcbiAgICpcclxuICAgKiBUaGlzIGlzIHRoZSBvdmVyYWxsIGNvbnRhaW5lciBmb3IgdGhlIGdhbWUuIERpZmZlcmVudCB0aGluZ3MgZ2V0IGFkZGVhZCBhbmRcclxuICAgKiByZW1vdmVkIGZyb20gdGhpcyBjb250YWluZXIgZGVwZW5kaW5nIG9uIHRoZSBnYW1lIHN0YXRlLlxyXG4gICAqL1xyXG5cclxuICAubWcge1xyXG4gICAgLyogYmxhbmsgKi9cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdhbWUgbWV0YVxyXG4gICAqXHJcbiAgICogVGhlIGdhbWUgbWV0YSBpcyB0aGUgc2VjdGlvbiB0aGF0IGRpc3BsYXlzIHRoZSBsZXZlbCBhbmQgbW92ZXMuIEl0J3MgYXBwZW5kZWRcclxuICAgKiB0byB0aGUgZ2FtZSBjb250YWluZXIgYXQgdGhlIHN0YXJ0LCBhbmQgc2hvd3MgdGhlIGxldmVsIHRoZSB1c2VyIHNlbGVjdGVkXHJcbiAgICogYW5kIHRoZSBudW1iZXIgb2YgbW92ZXMgdGhlIHVzZXIgaGFzIHBsYXllZC5cclxuICAgKi9cclxuXHJcbiAgLm1nX19tZXRhIHtcclxuICAgIGJhY2tncm91bmQ6ICMyYThjYTc7XHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG5cclxuICAgIGNvbG9yOiAjZmZmO1xyXG5cclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgfVxyXG5cclxuICAubWdfX21ldGEtLWl0ZW0ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIH1cclxuXHJcbiAgLm1nX19tZXRhLS1sZWZ0IHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gIH1cclxuXHJcbiAgLm1nX19tZXRhLS1yaWdodCB7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgfVxyXG5cclxuICAubWdfX21ldGEtLWxldmVsIHtcclxuICAgIG1hcmdpbi1yaWdodDogMjBweDtcclxuXHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwYWRkaW5nLXRvcDogNXB4O1xyXG5cclxuICAgID4gc3BhbiB7XHJcbiAgICAgIGNvbG9yOiAjN2ZlMmZmO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm1nX19tZXRhLS1tb3ZlcyB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwYWRkaW5nLXRvcDogNXB4O1xyXG5cclxuICAgID4gc3BhbiB7XHJcbiAgICAgIGNvbG9yOiAjN2ZlMmZmO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2FtZSBzdGFydCBzY3JlZW5cclxuICAgKlxyXG4gICAqIFRoZSBnYW1lIHN0YXJ0IHNjcmVlbiBzaG93cyB0aGUgXCJ3ZWxjb21lXCIgbWVzc2FnZSBhbmQgYWxzbyBhIGxpc3QgZm9yIHRoZVxyXG4gICAqIHVzZXIgdG8gY2hvb3NlIGEgbGV2ZWwuIEl0J3MgYXBwZW5kZWQgdG8gdGhlIGdhbWUgY29udGFpbmVyIGF0IHRoZSBzdGFydCxcclxuICAgKiBhbmQgb25jZSB0aGUgdXNlciBzZWxlY3RzIGEgbGV2ZWwsIGl0IGlzIHJlbW92ZWQgZnJvbSB0aGUgY29udGFpbmVyXHJcbiAgICovXHJcblxyXG4gIC5tZ19fc3RhcnQtc2NyZWVuIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDgwcHggMjBweDtcclxuICB9XHJcblxyXG4gIC5tZ19fc3RhcnQtc2NyZWVuLS1oZWFkaW5nIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICBjb2xvcjogIzJhOGNhOSAhaW1wb3J0YW50O1xyXG4gICAgZm9udC1zaXplOiAyZW0gIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC5tZ19fc3RhcnQtc2NyZWVuLS1zdWItaGVhZGluZyB7XHJcbiAgICBmb250LXNpemU6IDEuM2VtO1xyXG4gICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICBjb2xvcjogIzFiNDE0ZTtcclxuICB9XHJcblxyXG4gIC5tZ19fc3RhcnQtc2NyZWVuLS10ZXh0IHtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG4gICAgY29sb3I6ICMyOThkYTc7XHJcbiAgfVxyXG5cclxuICAubWdfX3N0YXJ0LXNjcmVlbi0tbGV2ZWwtc2VsZWN0IHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgd2lkdGg6IDYwMHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgbGkge1xyXG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG5cclxuICAgICAgLy93aWR0aDogMTQwcHg7XHJcbiAgICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG5cclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICBsaSA+IHNwYW4ge1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLS1tZWRpdW07XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwYWRkaW5nOiAyMHB4IDBweDtcclxuICAgIH1cclxuXHJcbiAgICBsaTpudGgtY2hpbGQoMSkgPiBzcGFuIHtcclxuICAgICAgYmFja2dyb3VuZDogIzJhOGNhNztcclxuICAgIH1cclxuXHJcbiAgICBsaTpudGgtY2hpbGQoMikgPiBzcGFuIHtcclxuICAgICAgYmFja2dyb3VuZDogIzhkYjgwOTtcclxuICAgIH1cclxuXHJcbiAgICBzcGFuID4gc3BhbiArIHNwYW4ge1xyXG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc3Rhci1maWxsZWQge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgICB3aWR0aDogMzVweDtcclxuICAgICAgaGVpZ2h0OiAzNXB4O1xyXG5cclxuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCdpbWcvaWNvbi1zdGFyLXllbGxvdy5zdmcnKSBuby1yZXBlYXQgNTAlIDUwJTtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG5cclxuICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc3Rhci1lbXB0eSB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICAgIHdpZHRoOiAzNXB4O1xyXG4gICAgICBoZWlnaHQ6IDM1cHg7XHJcblxyXG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJ2ltZy9pY29uLXN0YXItd2hpdGUuc3ZnJykgbm8tcmVwZWF0IDUwJSA1MCU7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuXHJcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHYW1lIHdyYXBwZXJcclxuICAgKlxyXG4gICAqIFRoZSBnYW1lIHdyYXBwZXIgaXMgd2hlcmUgdGhlIGFjdHVhbCBnYW1lIHJlc2lkZXMuIEluc2lkZSBoZXJlLCBhbGwgdGhlXHJcbiAgICogbWVtb3J5IHRpbGVzIGdldCBhcnJhbmdlZCBhbmQgcmVhZHkgZm9yIGdhbWUgcGxheS5cclxuICAgKi9cclxuXHJcbiAgLm1nX193cmFwcGVyIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgfVxyXG5cclxuICAubWdfX2NvbnRlbnRzIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmctYm90dG9tOiA1MCU7XHJcbiAgICBtYXJnaW4tbGVmdDogLTVweDtcclxuICAgIG1hcmdpbi1yaWdodDogLTVweDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdhbWUgdGlsZXNcclxuICAgKlxyXG4gICAqIFRoZSBnYW1lIHRpbGVzIGFyZSB0aGUgdGlsZXMgdGhhdCBhcmUgbGFpZCBkb3duIG9uIHRoZSBtZW1vcnkgZ2FtZSBib2FyZC5cclxuICAgKiBUaGVzZSB0aWxlcyBhcmUgdGhlIG9uZXMgdGhhdCB0aGUgdXNlciBjbGlja3Mgb24gdG8gZmxpcCBhbmQgcmV2ZWFsIHNvbWVcclxuICAgKiBpbWFnZXMuIFRoZSBsZXZlbCB0aGUgdXNlciBzZWxlY3RzIGRldGVybWluZXMgdGhlIHBvc2l0aW9uIGFuZCBzaXplIG9mXHJcbiAgICogdGhlIHRpbGVzLlxyXG4gICAqL1xyXG5cclxuICAubWdfX3RpbGUge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcGFkZGluZzogNXB4O1xyXG4gIH1cclxuXHJcbiAgQGVhY2ggJGxldmVsLCAkdGlsZXMgaW4gJGxldmVscyB7XHJcblxyXG4gICAgJHk6IHNxcnQoJHRpbGVzLzIpO1xyXG4gICAgJHg6ICR0aWxlcy8keTtcclxuXHJcbiAgICAvKiBnYW1lX19sZXZlbC0jeyRsZXZlbH0gc3R5bGVzICovXHJcbiAgICAubWdfX2xldmVsLSN7JGxldmVsfSAubWdfX3RpbGUge1xyXG4gICAgICB3aWR0aDogKDEgLyAkeCkgKiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6ICgxIC8gJHkpICogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAubWdfX2xldmVsLSN7JGxldmVsfSB7XHJcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHRpbGVzIHtcclxuICAgICAgICAkdG9wOiAoZmxvb3IoKCRpIC0gMSkgLyAkeCkgLyAkeSkgKiAxMDAlO1xyXG4gICAgICAgICRsZWZ0OiAoKCgkaSAtIDEpICUgJHgpIC8gJHgpICogMTAwJTtcclxuICAgICAgICAubWdfX3RpbGUtI3skaX0ge1xyXG4gICAgICAgICAgdG9wOiAkdG9wO1xyXG4gICAgICAgICAgbGVmdDogJGxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHRpbGUgaW5zaWRlXHJcbiAgICpcclxuICAgKiBUaGUgXCJ0aWxlIGlubmVyXCIgaXMgdGhlIHBhcnQgb2YgdGhlIHRpbGUgdGhhdCBzZXJ2ZXMgYXMgdGhlIGNhcmQuIEluc2lkZVxyXG4gICAqIHRoaXMgcGFydCwgdGhlcmUncyBhbiBvdXRzaWRlIGFuZCBpbnNpZGUgcGFydC4gVGhlIG91dHNpZGUgb2YgdGhlIGNhcmRcclxuICAgKiBpcyB0aGUgcGFydCB0aGF0IGhhcyB0aGUgbG9nbyBvciB0aGUgcGF0dGVybiBvciB3aGF0ZXZlci4uLmJhc2ljYWxseSB0aGVcclxuICAgKiBwYXJ0IHRoYXQgZG9lc24ndCBzaG93IHRoZSBjb250ZW50IHRvIGJlIG1hdGNoZWQuIFRoZSBpbnNpZGUgcGFydCBoYXMgdGhlXHJcbiAgICogYWN0dWFsIGltYWdlcyAvIGluZm8gdG8gYmUgbWF0Y2hlZC5cclxuICAgKi9cclxuXHJcbiAgLm1nX190aWxlLS1pbm5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcblxyXG4gIC5tZ19fdGlsZS0tb3V0c2lkZSxcclxuICAubWdfX3RpbGUtLWluc2lkZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzLCBiYWNrZ3JvdW5kIDAuM3MsIG9wYWNpdHkgMC4zcztcclxuICB9XHJcblxyXG4gIC5tZ19fdGlsZS0tb3V0c2lkZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltZy9pY29uLXF1ZXN0aW9ubWFyay5wbmcnKSA1MCUgNTAlIG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMyYThjYTc7XHJcbiAgfVxyXG5cclxuICAubWdfX3RpbGUtLWluc2lkZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmE4Y2E3O1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGVZKC0xODBkZWcpO1xyXG5cclxuICAgIGJhY2tncm91bmQtc2l6ZTogNjUlO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgfVxyXG5cclxuICAvKiBzb21lIHRyYW5zZm9ybXMgZm9yIGZsaXBwZWQgY2FyZHMgKi9cclxuXHJcbiAgLm1nX190aWxlLS1pbm5lci5mbGlwcGVkIC5tZ19fdGlsZS0tb3V0c2lkZSB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoLTE4MGRlZyk7XHJcbiAgfVxyXG5cclxuICAubWdfX3RpbGUtLWlubmVyLmZsaXBwZWQgLm1nX190aWxlLS1pbnNpZGUge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGVZKDApO1xyXG4gIH1cclxuXHJcbiAgLyogc29tZSB0cmFuc2l0aW9ucyBmb3IgY29ycmVjdCBndWVzc2VzIC0gb25seSBuZWVkcyB0byBoYXBwZW4gb24gY2FyZCBpbnNpZGUgKi9cclxuXHJcbiAgLm1nX190aWxlLS1pbm5lci5mbGlwcGVkLmNvcnJlY3QgLm1nX190aWxlLS1pbnNpZGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICB9XHJcblxyXG4gIC5tZ19fdGlsZS0taW5uZXIuZmxpcHBlZC5mYWRlb3V0IC5tZ19fdGlsZS0taW5zaWRlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2FtZSBtZXNzYWdlXHJcbiAgICpcclxuICAgKiBUaGUgZ2FtZSBtZXNzYWdlIGFyZWEgaXMgYW4gYXJlYSB0byBkaXNwbGF5IGdhbWUgbWVzc2FnZXMuIEl0J3MgdXNlZCBpbiB0aGVcclxuICAgKiBkZWZhdWx0IHNldCB1cCB3aGVyZSBubyBjYWxsYmFjayBpcyBzZXQgaW4gdGhlIEpTLiBJZiBhIGNhbGxiYWNrIGlzIHNldCB1cCxcclxuICAgKiB0aGVuIHRoaXMgbWVzc2FnZSBhcmVhIGxpa2VseSB3b24ndCBkaXNwbGF5LiBVbmxlc3MgeW91IGRlY2lkZSB0byBkaXNwbGF5IGl0XHJcbiAgICogaW4geW91ciBvd24gY3VzdG9tIGNhbGxiYWNrIHRob3VnaCFcclxuICAgKi9cclxuXHJcbiAgLm1nX19vbmVuZCB7XHJcbiAgICBwYWRkaW5nOiA4MHB4IDIwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG5cclxuICAubWdfX29uZW5kLS1oZWFkaW5nIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICBjb2xvcjogJGNvbG9yLS1ibHVlO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLS14bGFyZ2U7XHJcbiAgfVxyXG5cclxuICAubWdfX29uZW5kLS1tZXNzYWdlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHYW1lIGJ1dHRvbnNcclxuICAgKlxyXG4gICAqIEEgc2ltcGxlIGhlbHBlciBjbGFzcyBmb3IgZ2FtZSBidXR0b25zLiBFZGl0IGF0IHlvdXIgd2lsbC5cclxuICAgKi9cclxuICAubWdfX2J1dHRvbiB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwYWRkaW5nOiA1cHg7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktLXByaW1hcnk7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtLXNtYWxsO1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6ICMzMmE5Y2E7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIH1cclxufSIsIi5wdXp6bGUtZ2FtZSB7XHJcbiAgbWF4LXdpZHRoOiA5NzBweDtcclxuXHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gIGltZyB7XHJcbiAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC5mdWxsc2NyZWVuIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBtYXJnaW46IDE1cHggMHB4O1xyXG5cclxuICAgIGEge1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKGxnKSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc3VjY2VzcyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMjJhYTIyO1xyXG5cclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHJcbiAgICB3aWR0aDogMjAwcHg7XHJcbiAgICB0b3A6IDEwcHg7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICBtYXJnaW4tbGVmdDogLTEwMHB4O1xyXG5cclxuICAgIHotaW5kZXg6IDk5O1xyXG5cclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG5cclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuXHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG5cclxuICAgIG9wYWNpdHk6IDA7XHJcblxyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XHJcblxyXG4gICAgJi52aXNpYmxlIHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucHV6emxlIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICB3aWR0aDogODAwcHg7XHJcbiAgICBoZWlnaHQ6IDYwMHB4O1xyXG5cclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG5cclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKGxnKSB7XHJcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICB9XHJcblxyXG4gICAgLmZ1bGwge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHdpZHRoOiA4MDBweDtcclxuICAgICAgaGVpZ2h0OiA2MDBweDtcclxuXHJcbiAgICAgIG9wYWNpdHk6IDAuMjU7XHJcbiAgICB9XHJcblxyXG4gICAgdGFibGUge1xyXG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xyXG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG5cclxuICAgICAgdGQge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgcGFkZGluZzogMHB4O1xyXG5cclxuICAgICAgICB3aWR0aDogI3s4MDBweCAvIDV9O1xyXG4gICAgICAgIGhlaWdodDogI3s2MDBweCAvIDR9O1xyXG5cclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWl4aW4gcGllY2UoJHRvcDogMHB4LCAkbGVmdDogMHB4KSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHJcbiAgICAgIHdpZHRoOiAjezgwMHB4IC8gNX07XHJcbiAgICAgIGhlaWdodDogI3s2MDBweCAvIDR9O1xyXG5cclxuICAgICAgaW1nIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgIHRvcDogJHRvcDtcclxuICAgICAgICBsZWZ0OiAkbGVmdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5waWVjZS0xIHtcclxuICAgICAgQGluY2x1ZGUgcGllY2UoKTtcclxuICAgIH1cclxuXHJcbiAgICAucGllY2UtMiB7XHJcbiAgICAgIEBpbmNsdWRlIHBpZWNlKDBweCwgLTQ1cHgpO1xyXG4gICAgfVxyXG5cclxuICAgIC5waWVjZS0zIHtcclxuICAgICAgQGluY2x1ZGUgcGllY2UoMHB4LCAtMTJweCk7XHJcbiAgICB9XHJcblxyXG4gICAgLnBpZWNlLTQge1xyXG4gICAgICBAaW5jbHVkZSBwaWVjZSgwcHgsIC0xMHB4KTtcclxuICAgIH1cclxuXHJcbiAgICAucGllY2UtNSB7XHJcbiAgICAgIEBpbmNsdWRlIHBpZWNlKDBweCwgLTExcHgpO1xyXG4gICAgfVxyXG5cclxuICAgIC5waWVjZS02IHtcclxuICAgICAgQGluY2x1ZGUgcGllY2UoLTE0cHgsIDBweCk7XHJcbiAgICB9XHJcblxyXG4gICAgLnBpZWNlLTcge1xyXG4gICAgICBAaW5jbHVkZSBwaWVjZSgtMTRweCwgLTdweCk7XHJcbiAgICB9XHJcblxyXG4gICAgLnBpZWNlLTgge1xyXG4gICAgICBAaW5jbHVkZSBwaWVjZSgtNDRweCwgLTQ0cHgpO1xyXG4gICAgfVxyXG5cclxuICAgIC5waWVjZS05IHtcclxuICAgICAgQGluY2x1ZGUgcGllY2UoLTQ1cHgsIC00M3B4KTtcclxuICAgIH1cclxuXHJcbiAgICAucGllY2UtMTAge1xyXG4gICAgICBAaW5jbHVkZSBwaWVjZSgtNDBweCwgLTQ0cHgpO1xyXG4gICAgfVxyXG5cclxuICAgIC5waWVjZS0xMSB7XHJcbiAgICAgIEBpbmNsdWRlIHBpZWNlKC0xM3B4LCAwcHgpO1xyXG4gICAgfVxyXG5cclxuICAgIC5waWVjZS0xMiB7XHJcbiAgICAgIEBpbmNsdWRlIHBpZWNlKC0zOXB4LCAtNDdweCk7XHJcbiAgICB9XHJcblxyXG4gICAgLnBpZWNlLTEzIHtcclxuICAgICAgQGluY2x1ZGUgcGllY2UoLTE3cHgsIC0xM3B4KTtcclxuICAgIH1cclxuXHJcbiAgICAucGllY2UtMTQge1xyXG4gICAgICBAaW5jbHVkZSBwaWVjZSgtMTdweCwgLTExcHgpO1xyXG4gICAgfVxyXG5cclxuICAgIC5waWVjZS0xNSB7XHJcbiAgICAgIEBpbmNsdWRlIHBpZWNlKC00MnB4LCAtNDZweCk7XHJcbiAgICB9XHJcblxyXG4gICAgLnBpZWNlLTE2IHtcclxuICAgICAgQGluY2x1ZGUgcGllY2UoLTExcHgsIDBweCk7XHJcbiAgICB9XHJcblxyXG4gICAgLnBpZWNlLTE3IHtcclxuICAgICAgQGluY2x1ZGUgcGllY2UoLTQwcHgsIC0xMHB4KTtcclxuICAgIH1cclxuXHJcbiAgICAucGllY2UtMTgge1xyXG4gICAgICBAaW5jbHVkZSBwaWVjZSgtMzlweCwgLTQycHgpO1xyXG4gICAgfVxyXG5cclxuICAgIC5waWVjZS0xOSB7XHJcbiAgICAgIEBpbmNsdWRlIHBpZWNlKC00MXB4LCAtMTBweCk7XHJcbiAgICB9XHJcblxyXG4gICAgLnBpZWNlLTIwIHtcclxuICAgICAgQGluY2x1ZGUgcGllY2UoLTQwcHgsIC0xMHB4KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5zdGFuZGFsb25lIC5wdXp6bGUtZ2FtZSB7XHJcbiAgLnB1enpsZSB7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIH1cclxufSIsIi5yZWNvZ25pemUtZ2FtZSB7XHJcbiAgbWF4LXdpZHRoOiA5NzBweDtcclxuXHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gIC5xdWVzdGlvbnMge1xyXG4gICAgbWF4LXdpZHRoOiA2MDBweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgbWFyZ2luLXRvcDogMTAwcHg7XHJcblxyXG4gICAgLnF1ZXN0aW9uIHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBmb250LXNpemU6IDE4cHg7XHJcblxyXG4gICAgICBjbGVhcjogbGVmdDtcclxuXHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAuc2VwYXJhdG9yIHtcclxuICAgICAgICBtYXJnaW46IDIwcHggMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuYW5zd2VyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgICAud3JvbmcsIC5jb3JyZWN0IHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaW5mbyB7XHJcbiAgICAgICAgICBtYXJnaW46IDE1cHggMHB4IDBweCAwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29udGludWUge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jb2luLCAucGFwZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuICAgICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcclxuXHJcbiAgICAgICAgLmJhY2sge1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cclxuICAgICAgICAgIHdpZHRoOiAxMDBweDtcclxuICAgICAgICAgIGhlaWdodDogMTAwcHg7XHJcblxyXG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEwMCU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAxJSAwJTtcclxuXHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgwZGVnKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGVZKDBkZWcpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWSgwZGVnKTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWSgwZGVnKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgwZGVnKTtcclxuXHJcbiAgICAgICAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgLW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgIC1vLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuZmxpcHBlZCAuYmFjayB7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgtMTgwZGVnKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGVZKC0xODBkZWcpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWSgtMTgwZGVnKTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWSgtMTgwZGVnKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgtMTgwZGVnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mcm9udCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgICAgICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMDBweDtcclxuXHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcclxuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSAwJTtcclxuXHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgtMTgwZGVnKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGVZKC0xODBkZWcpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWSgtMTgwZGVnKTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWSgtMTgwZGVnKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgtMTgwZGVnKTtcclxuXHJcbiAgICAgICAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgLW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgIC1vLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuZmxpcHBlZCAuZnJvbnQge1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoLTM2MGRlZyk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlWSgtMzYwZGVnKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVkoLTM2MGRlZyk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVkoLTM2MGRlZyk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoLTM2MGRlZyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZnJvbnQsIC5iYWNrLCAmLmZsaXBwZWQgLmZyb250LCAmZmxpcHBlZCAuYmFjayB7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuNXMgZWFzZTtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC41cyBlYXNlO1xyXG4gICAgICAgICAgLW1zLXRyYW5zaXRpb246IC1tcy10cmFuc2Zvcm0gMC41cyBlYXNlO1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDAuNXMgZWFzZTtcclxuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAucGFwZXIge1xyXG4gICAgICAgIHdpZHRoOiAyMzBweDtcclxuXHJcbiAgICAgICAgLmJhY2ssIC5mcm9udCB7XHJcbiAgICAgICAgICB3aWR0aDogMjMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAucGljdG8ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG5cclxuICAgICAgICB3aWR0aDogOTBweDtcclxuICAgICAgICBoZWlnaHQ6IDkwcHg7XHJcblxyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgICAgfVxyXG5cclxuICAgICAgYnV0dG9uIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMmE4Y2E3O1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcblxyXG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuXHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcblxyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcblxyXG4gICAgICAgICYud3Jvbmcge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0RFMjA2NTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuY29ycmVjdCB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOERCQTI0O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufSIsIi5tYWduaWZ5aW5nLWdhbWUge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgb2JqZWN0IHtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICB9XHJcblxyXG4gID4gKiB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5pbmZvIHtcclxuICAgIGJhY2tncm91bmQ6ICMyYThjYTc7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIG1hcmdpbjogMjBweCAwcHg7XHJcbiAgICBwYWRkaW5nOiA0MHB4IDIwcHggMjBweCAyMHB4O1xyXG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcclxuXHJcbiAgICAuaWQge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICB3aWR0aDogNDBweDtcclxuICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICBib3JkZXI6IDNweCBzb2xpZCAjZmZmO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAzN3B4O1xyXG4gICAgICBmb250LXNpemU6IDEuNWVtO1xyXG4gICAgICBtYXJnaW46IC01cHggMTBweCA3cHggLTVweDtcclxuICAgIH1cclxuXHJcbiAgICAuY2xvc2UtcGFuZWwge1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICBtYXJnaW46IC0zMHB4IC0xMHB4IDBweCAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICYuaW5mby1sZWZ0IHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDBweDtcclxuICAgICAgbGVmdDogMHB4O1xyXG4gICAgICBib3R0b206IDBweDtcclxuICAgICAgd2lkdGg6IDQwJTtcclxuICAgICAgei1pbmRleDogOTk5O1xyXG4gICAgfVxyXG5cclxuICAgICYuaW5mby1yaWdodCB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwcHg7XHJcbiAgICAgIHJpZ2h0OiAwcHg7XHJcbiAgICAgIGJvdHRvbTogMHB4O1xyXG4gICAgICB3aWR0aDogNDAlO1xyXG4gICAgICB6LWluZGV4OiA5OTk7XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiLmJvYXJkLWdhbWUge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gIC5mdWxsc2NyZWVuIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBtYXJnaW46IDE1cHggMHB4O1xyXG5cclxuICAgIGEge1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKGxnKSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZGljZS1jb250YWluZXIsIC5kaXNwbGF5LCAjbWFwIHtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKGxnKSB7XHJcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjbWFwIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgLmRpc3BsYXkge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cclxuICAgIGxlZnQ6IDcuOCU7XHJcbiAgICByaWdodDogNi43JTtcclxuXHJcbiAgICBoZWlnaHQ6IDIyMHB4O1xyXG5cclxuICAgIGJvdHRvbTogLTEwcHg7XHJcblxyXG4gICAgYmFja2dyb3VuZDogcmdiYSgzMywgNjQsIDgxLCAwLjc5KTtcclxuICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCAjZmZmO1xyXG5cclxuICAgIHBhZGRpbmc6IDExcHg7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAgIGNvbG9yOiAjZmZmO1xyXG5cclxuICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjNzIGVhc2U7XHJcblxyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICYucmV0cmFjdGVkIHtcclxuICAgICAgYm90dG9tOiAtMTgwcHg7XHJcblxyXG4gICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4zcyBlYXNlO1xyXG4gICAgfVxyXG5cclxuICAgIC5xdWVzdGlvbiB7XHJcbiAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAwLjllbTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdWwge1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICBtYXJnaW46IDBweDtcclxuICAgICAgICBwYWRkaW5nOiAwcHg7XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICNjMGUzZTc7XHJcblxyXG4gICAgICAgICAgcGFkZGluZzogNnB4O1xyXG4gICAgICAgICAgbWFyZ2luOiA2cHg7XHJcblxyXG4gICAgICAgICAgZm9udC1zaXplOiAwLjllbTtcclxuXHJcbiAgICAgICAgICBjb2xvcjogIzI4NDk1YztcclxuXHJcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNhZmYyZmE7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJi5jb3JyZWN0IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogIzkxYzQ2NTtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJi5pbmNvcnJlY3Qge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZTI0ZTRlO1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGJ1dHRvbiB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcblxyXG4gICAgYmFja2dyb3VuZDogI2MwZTNlNztcclxuICAgIHBhZGRpbmc6IDEwcHggMjVweDtcclxuICAgIGNvbG9yOiAjMjg0OTVjO1xyXG5cclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbn1cclxuXHJcbiNkaWNlLWxhYmVsIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbGVmdDogNzdweDtcclxuICB0b3A6IC04cHg7XHJcbiAgd2lkdGg6IDIwMHB4O1xyXG59XHJcblxyXG4kZGljZVNpemU6IDUwcHg7XHJcbiRkaWNlSGFsZlNpemU6ICRkaWNlU2l6ZSAvIDI7XHJcbi5kaWNlLWNvbnRhaW5lciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cclxuICB3aWR0aDogJGRpY2VTaXplO1xyXG4gIGhlaWdodDogJGRpY2VTaXplO1xyXG5cclxuICB0b3A6ICRkaWNlSGFsZlNpemU7XHJcbiAgbGVmdDogJGRpY2VIYWxmU2l6ZTtcclxuXHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uZGljZSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICB3aWR0aDogJGRpY2VTaXplO1xyXG4gIGhlaWdodDogJGRpY2VTaXplO1xyXG5cclxuICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDEsIDEsIDkwZGVnKTtcclxuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xyXG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XHJcblxyXG4gID4gKiB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDBweDtcclxuICAgIGxlZnQ6IDBweDtcclxuXHJcbiAgICB3aWR0aDogJGRpY2VTaXplO1xyXG4gICAgaGVpZ2h0OiAkZGljZVNpemU7XHJcblxyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcclxuICB9XHJcblxyXG4gIC5zaWRlLTEge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgJGRpY2VIYWxmU2l6ZSkgcm90YXRlM2QoMCwgMCwgMCwgMGRlZyk7XHJcbiAgfVxyXG5cclxuICAuc2lkZS0yIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAkZGljZUhhbGZTaXplLCAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICB9XHJcblxyXG4gIC5zaWRlLTMge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkZGljZUhhbGZTaXplLCAwcHgsIDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xyXG4gIH1cclxuXHJcbiAgLnNpZGUtNCB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0kZGljZUhhbGZTaXplLCAwcHgsIDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xyXG4gIH1cclxuXHJcbiAgLnNpZGUtNSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLSRkaWNlSGFsZlNpemUsIDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xyXG4gIH1cclxuXHJcbiAgLnNpZGUtNiB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAtJGRpY2VIYWxmU2l6ZSkgcm90YXRlM2QoMCwgMCwgMCwgMGRlZyk7XHJcbiAgfVxyXG5cclxuICAmLnJvbGxpbmcge1xyXG4gICAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgJi5yb2xsZWQtMSB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDAsIDkwZGVnKTtcclxuXHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLW91dDtcclxuICB9XHJcblxyXG4gICYucm9sbGVkLTIge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XHJcblxyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XHJcbiAgfVxyXG5cclxuICAmLnJvbGxlZC0zIHtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgLTEsIDAsIDkwZGVnKTtcclxuXHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLW91dDtcclxuICB9XHJcblxyXG4gICYucm9sbGVkLTQge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcblxyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XHJcbiAgfVxyXG5cclxuICAmLnJvbGxlZC01IHtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoLTEsIDAsIDAsIDkwZGVnKTtcclxuXHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLW91dDtcclxuICB9XHJcblxyXG4gICYucm9sbGVkLTYge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgxLCAwLCAwLCAxODBkZWcpO1xyXG5cclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2Utb3V0O1xyXG4gIH1cclxufVxyXG5cclxuLnN0YW5kYWxvbmUgLmJvYXJkLWdhbWUge1xyXG4gIC5kaWNlLWNvbnRhaW5lciwgLmRpc3BsYXksICNtYXAge1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICB9XHJcblxyXG4gIC5mdWxsc2NyZWVuIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59IiwiLnBhaXItZ2FtZSB7XHJcbiAgLml0ZW1zIHtcclxuICAgIG1pbi1oZWlnaHQ6IDEzMHB4O1xyXG4gIH1cclxuXHJcbiAgLml0ZW0ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuICAgIHdpZHRoOiAxMDBweDtcclxuICAgIGhlaWdodDogMTAwcHg7XHJcblxyXG4gICAgbWFyZ2luOiAxMHB4O1xyXG5cclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcblxyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgIC5vdmVybGF5IHtcclxuICAgICAgZGlzcGxheTogdGFibGU7XHJcblxyXG4gICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgIGhlaWdodDogMTAwcHg7XHJcblxyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDkyLCA3NSwgMjIwLCAwLjgpO1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuXHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDk5cHg7XHJcblxyXG4gICAgICBvcGFjaXR5OiAwO1xyXG5cclxuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zcyBlYXNlKTtcclxuXHJcbiAgICAgIHNwYW4ge1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcblxyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciwgJi51aS1kcmFnZ2FibGUtZHJhZ2dpbmcge1xyXG4gICAgICAub3ZlcmxheSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zcyBlYXNlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnRleHRzIHtcclxuICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XHJcblxyXG4gICAgLnRleHQge1xyXG4gICAgICBAaW5jbHVkZSBtYWtlLXhzLWNvbHVtbigxMik7XHJcbiAgICAgIEBpbmNsdWRlIG1ha2Utc20tY29sdW1uKDYpO1xyXG5cclxuICAgICAgbWFyZ2luLXRvcDogMzBweDtcclxuXHJcbiAgICAgIC5jb250ZW50IHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMzljYmY0O1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG5cclxuICAgICAgICBmb250LXNpemU6IDAuOGVtO1xyXG5cclxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG5cclxuICAgICAgICBoZWlnaHQ6IDEyMHB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjNzIGVhc2UpO1xyXG5cclxuICAgICAgICAuaG9sZGVyIHtcclxuICAgICAgICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICAgICAgICB3aWR0aDogMTAwcHg7XHJcblxyXG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG5cclxuICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgnaW1nL3BpYy1kYXNoZWQtY2lyY2xlLnN2ZycpIG5vLXJlcGVhdCA1MCUgNTAlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG5cclxuICAgICAgICAgIC5pdGVtIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubmFtZSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDEuMmVtO1xyXG5cclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcblxyXG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zcyBlYXNlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYud3JvbmctbWF0Y2ggLmNvbnRlbnQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNlMjRlNGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYucmlnaHQtbWF0Y2ggLmNvbnRlbnQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICM5MWM0NjU7XHJcblxyXG4gICAgICAgIC5uYW1lIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDE7XHJcblxyXG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zcyBlYXNlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuaG92ZXJpbmcgLmNvbnRlbnQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICM5NWVjZmY7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn0iXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0= */
