@charset "UTF-8";
/*!
 * Bootstrap v3.3.6 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

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

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

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

[hidden],
template {
  display: none; }

a {
  background-color: transparent; }

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

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

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

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

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

small {
  font-size: 80%; }

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; }

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

figure {
  margin: 1em 40px; }

hr {
  box-sizing: content-box;
  height: 0; }

pre {
  overflow: auto; }

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0; }

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

button[disabled],
html input[disabled] {
  cursor: default; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

input {
  line-height: normal; }

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box; }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: ""; }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .navbar {
    display: none; }
  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important; }
  .label {
    border: 1px solid #000; }
  .table {
    border-collapse: collapse !important; }
    .table td,
    .table th {
      background-color: #fff !important; }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.glyphicon-map-marker:before {
  content: "\e062";
  font-size: 20px; }

.glyphicon-map-marker-custom:before {
  content: "\e062";
  font-size: 40px; }

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

.glyphicon-chevron-up.collapse-menu-up:before {
  float: right; }

.glyphicon.collapse-menu-up {
  width: 100%;
  position: relative;
  display: initial;
  font-family: 'Glyphicons Halflings';
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.glyphicon-chevron-down.collapse-menu-down:before {
  float: right; }

.glyphicon.collapse-menu-down {
  width: 100%;
  position: relative;
  display: initial;
  font-family: 'Glyphicons Halflings';
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.glyphicon-exclamation-sign.custom-exclamation {
  font-size: 17px; }

.glyphicon-thumbs-up.custom-thumbs {
  font-size: 20px;
  color: "green"; }

* {
  box-sizing: border-box; }

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

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

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

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

a {
  color: #1C7EBB;
  text-decoration: none; }
  a:hover, a:focus {
    color: #125178;
    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: 2px; }

.img-thumbnail {
  padding: 4px;
  line-height: 1.42857;
  background-color: #f3f3f3;
  border: 1px solid #ddd;
  border-radius: 2px;
  -webkit-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: #FFFAF0;
  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: #1C7EBB; }

a.text-primary:hover,
a.text-primary:focus {
  color: #15608f; }

.text-success {
  color: #229173; }

a.text-success:hover,
a.text-success:focus {
  color: #186852; }

.text-info {
  color: #26929C; }

a.text-info:hover,
a.text-info:focus {
  color: #1c6c73; }

.text-warning {
  color: #AF7F18; }

a.text-warning:hover,
a.text-warning:focus {
  color: #825e12; }

.text-danger {
  color: #B13D31; }

a.text-danger:hover,
a.text-danger:focus {
  color: #892f26; }

.bg-primary {
  color: #fff; }

.bg-primary {
  background-color: #1C7EBB; }

a.bg-primary:hover,
a.bg-primary:focus {
  background-color: #15608f; }

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

a.bg-success:hover,
a.bg-success:focus {
  background-color: #c9f2e6; }

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

a.bg-info:hover,
a.bg-info:focus {
  background-color: #c3e6f4; }

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

a.bg-warning:hover,
a.bg-warning:focus {
  background-color: #ffe9bd; }

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

a.bg-danger:hover,
a.bg-danger:focus {
  background-color: #f8c4c0; }

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

kbd {
  padding: 2px 4px;
  font-size: 90%;
  color: #fff;
  background-color: #333;
  border-radius: 2px;
  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: 2px; }
  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%;
  padding: 0px 15px; }

.col-xs-2 {
  width: 16.66667%;
  padding: 0px 15px; }

.col-xs-3 {
  width: 25%;
  padding: 0px 15px; }

.col-xs-4 {
  width: 33.33333%;
  padding: 0px 15px; }

.col-xs-5 {
  width: 41.66667%;
  padding: 0px 15px; }

.col-xs-6 {
  width: 50%;
  padding: 0px 15px; }

.col-xs-7 {
  width: 58.33333%;
  padding: 0px 15px; }

.col-xs-8 {
  width: 66.66667%;
  padding: 0px 15px; }

.col-xs-9 {
  width: 75%;
  padding: 0px 15px; }

.col-xs-10 {
  width: 83.33333%;
  padding: 0px 15px; }

.col-xs-11 {
  width: 91.66667%;
  padding: 0px 15px; }

.col-xs-12 {
  width: 100%;
  padding: 0px 15px; }

.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%;
    padding: 0px 15px; }
  .col-sm-2 {
    width: 16.66667%;
    padding: 0px 15px; }
  .col-sm-3 {
    width: 25%;
    padding: 0px 15px; }
  .col-sm-4 {
    width: 33.33333%;
    padding: 0px 15px; }
  .col-sm-5 {
    width: 41.66667%;
    padding: 0px 15px; }
  .col-sm-6 {
    width: 50%;
    padding: 0px 15px; }
  .col-sm-7 {
    width: 58.33333%;
    padding: 0px 15px; }
  .col-sm-8 {
    width: 66.66667%;
    padding: 0px 15px; }
  .col-sm-9 {
    width: 75%;
    padding: 0px 15px; }
  .col-sm-10 {
    width: 83.33333%;
    padding: 0px 15px; }
  .col-sm-11 {
    width: 91.66667%;
    padding: 0px 15px; }
  .col-sm-12 {
    width: 100%;
    padding: 0px 15px; }
  .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%;
    padding: 0px 15px; }
  .col-md-2 {
    width: 16.66667%;
    padding: 0px 15px; }
  .col-md-3 {
    width: 25%;
    padding: 0px 15px; }
  .col-md-4 {
    width: 33.33333%;
    padding: 0px 15px; }
  .col-md-5 {
    width: 41.66667%;
    padding: 0px 15px; }
  .col-md-6 {
    width: 50%;
    padding: 0px 15px; }
  .col-md-7 {
    width: 58.33333%;
    padding: 0px 15px; }
  .col-md-8 {
    width: 66.66667%;
    padding: 0px 15px; }
  .col-md-9 {
    width: 75%;
    padding: 0px 15px; }
  .col-md-10 {
    width: 83.33333%;
    padding: 0px 15px; }
  .col-md-11 {
    width: 91.66667%;
    padding: 0px 15px; }
  .col-md-12 {
    width: 100%;
    padding: 0px 15px; }
  .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%;
    padding: 0px 15px; }
  .col-lg-2 {
    width: 16.66667%;
    padding: 0px 15px; }
  .col-lg-3 {
    width: 25%;
    padding: 0px 15px; }
  .col-lg-4 {
    width: 33.33333%;
    padding: 0px 15px; }
  .col-lg-5 {
    width: 41.66667%;
    padding: 0px 15px; }
  .col-lg-6 {
    width: 50%;
    padding: 0px 15px; }
  .col-lg-7 {
    width: 58.33333%;
    padding: 0px 15px; }
  .col-lg-8 {
    width: 66.66667%;
    padding: 0px 15px; }
  .col-lg-9 {
    width: 75%;
    padding: 0px 15px; }
  .col-lg-10 {
    width: 83.33333%;
    padding: 0px 15px; }
  .col-lg-11 {
    width: 91.66667%;
    padding: 0px 15px; }
  .col-lg-12 {
    width: 100%;
    padding: 0px 15px; }
  .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: 15px;
  padding-bottom: 15px;
  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: 15px;
    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: #f3f3f3; }

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

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

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

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

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

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

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

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

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

.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: 25px;
  margin: 0;
  border: 0;
  min-width: 0; }

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

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

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

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

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

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

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

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

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

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

textarea.form-control {
  height: auto; }

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

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

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

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

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

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

.radio-inline,
.checkbox-inline {
  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: 2px; }

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

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

.form-group-sm .form-control {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 2px; }

.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.33;
  border-radius: 2px; }

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

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

.form-group-lg .form-control {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33;
  border-radius: 2px; }

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

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

.has-success .form-control {
  border-color: #229173;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-success .form-control:focus {
    border-color: #186852;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #45d4ad; }

.has-success .input-group-addon {
  color: #229173;
  border-color: #229173;
  background-color: #F2FCF9; }

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

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

.has-warning .form-control {
  border-color: #AF7F18;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-warning .form-control:focus {
    border-color: #825e12;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #e6b347; }

.has-warning .input-group-addon {
  color: #AF7F18;
  border-color: #AF7F18;
  background-color: #FFFAF0; }

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

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

.has-error .form-control {
  border-color: #B13D31;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-error .form-control:focus {
    border-color: #892f26;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d87a70; }

.has-error .input-group-addon {
  color: #B13D31;
  border-color: #B13D31;
  background-color: #FDEFEE; }

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

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

@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;
  margin-left: 0px;
  margin-right: 0px; }
  .form-horizontal .form-group:before, .form-horizontal .form-group:after {
    content: " ";
    display: table; }
  .form-horizontal .form-group:after {
    clear: both; }

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

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

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

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

.btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857;
  border-radius: 2px;
  -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;
    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);
    box-shadow: none; }

a.btn.disabled,
fieldset[disabled] a.btn {
  pointer-events: none; }

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

.btn-primary {
  color: #fff;
  background-color: #1C7EBB;
  border-color: #196fa5; }
  .btn-primary:focus, .btn-primary.focus {
    color: #fff;
    background-color: #15608f;
    border-color: #082436; }
  .btn-primary:hover {
    color: #fff;
    background-color: #15608f;
    border-color: #114b70; }
  .btn-primary:active, .btn-primary.active,
  .open > .btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #15608f;
    border-color: #114b70; }
    .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: #114b70;
      border-color: #082436; }
  .btn-primary:active, .btn-primary.active,
  .open > .btn-primary.dropdown-toggle {
    background-image: none; }
  .btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus,
  fieldset[disabled] .btn-primary:hover,
  fieldset[disabled] .btn-primary:focus,
  fieldset[disabled] .btn-primary.focus {
    background-color: #1C7EBB;
    border-color: #196fa5; }
  .btn-primary .badge {
    color: #1C7EBB;
    background-color: #fff; }

.btn-success {
  color: #fff;
  background-color: #23AE89;
  border-color: #1f9978; }
  .btn-success:focus, .btn-success.focus {
    color: #fff;
    background-color: #1a8468;
    border-color: #092f25; }
  .btn-success:hover {
    color: #fff;
    background-color: #1a8468;
    border-color: #146650; }
  .btn-success:active, .btn-success.active,
  .open > .btn-success.dropdown-toggle {
    color: #fff;
    background-color: #1a8468;
    border-color: #146650; }
    .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: #146650;
      border-color: #092f25; }
  .btn-success:active, .btn-success.active,
  .open > .btn-success.dropdown-toggle {
    background-image: none; }
  .btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus,
  fieldset[disabled] .btn-success:hover,
  fieldset[disabled] .btn-success:focus,
  fieldset[disabled] .btn-success.focus {
    background-color: #23AE89;
    border-color: #1f9978; }
  .btn-success .badge {
    color: #23AE89;
    background-color: #fff; }

.btn-info {
  color: #fff;
  background-color: #2EC1CC;
  border-color: #29adb7; }
  .btn-info:focus, .btn-info.focus {
    color: #fff;
    background-color: #259aa2;
    border-color: #124b4f; }
  .btn-info:hover {
    color: #fff;
    background-color: #259aa2;
    border-color: #1e7e85; }
  .btn-info:active, .btn-info.active,
  .open > .btn-info.dropdown-toggle {
    color: #fff;
    background-color: #259aa2;
    border-color: #1e7e85; }
    .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: #1e7e85;
      border-color: #124b4f; }
  .btn-info:active, .btn-info.active,
  .open > .btn-info.dropdown-toggle {
    background-image: none; }
  .btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled].focus,
  fieldset[disabled] .btn-info:hover,
  fieldset[disabled] .btn-info:focus,
  fieldset[disabled] .btn-info.focus {
    background-color: #2EC1CC;
    border-color: #29adb7; }
  .btn-info .badge {
    color: #2EC1CC;
    background-color: #fff; }

.btn-warning {
  color: #fff;
  background-color: #FFB61C;
  border-color: #ffae03; }
  .btn-warning:focus, .btn-warning.focus {
    color: #fff;
    background-color: #e89d00;
    border-color: #825800; }
  .btn-warning:hover {
    color: #fff;
    background-color: #e89d00;
    border-color: #c48500; }
  .btn-warning:active, .btn-warning.active,
  .open > .btn-warning.dropdown-toggle {
    color: #fff;
    background-color: #e89d00;
    border-color: #c48500; }
    .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: #c48500;
      border-color: #825800; }
  .btn-warning:active, .btn-warning.active,
  .open > .btn-warning.dropdown-toggle {
    background-image: none; }
  .btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled].focus,
  fieldset[disabled] .btn-warning:hover,
  fieldset[disabled] .btn-warning:focus,
  fieldset[disabled] .btn-warning.focus {
    background-color: #FFB61C;
    border-color: #ffae03; }
  .btn-warning .badge {
    color: #FFB61C;
    background-color: #fff; }

.btn-danger {
  color: #fff;
  background-color: #E94B3B;
  border-color: #e63624; }
  .btn-danger:focus, .btn-danger.focus {
    color: #fff;
    background-color: #d92a18;
    border-color: #7d180e; }
  .btn-danger:hover {
    color: #fff;
    background-color: #d92a18;
    border-color: #b92415; }
  .btn-danger:active, .btn-danger.active,
  .open > .btn-danger.dropdown-toggle {
    color: #fff;
    background-color: #d92a18;
    border-color: #b92415; }
    .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: #b92415;
      border-color: #7d180e; }
  .btn-danger:active, .btn-danger.active,
  .open > .btn-danger.dropdown-toggle {
    background-image: none; }
  .btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled].focus,
  fieldset[disabled] .btn-danger:hover,
  fieldset[disabled] .btn-danger:focus,
  fieldset[disabled] .btn-danger.focus {
    background-color: #E94B3B;
    border-color: #e63624; }
  .btn-danger .badge {
    color: #E94B3B;
    background-color: #fff; }

.btn-link {
  color: #1C7EBB;
  font-weight: normal;
  border-radius: 0; }
  .btn-link, .btn-link:active, .btn-link.active, .btn-link[disabled],
  fieldset[disabled] .btn-link {
    background-color: transparent;
    box-shadow: none; }
  .btn-link, .btn-link:hover, .btn-link:focus, .btn-link:active {
    border-color: transparent; }
  .btn-link:hover, .btn-link:focus {
    color: #125178;
    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.33;
  border-radius: 2px; }

.btn-sm, .btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 2px; }

.btn-xs, .btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 2px; }

.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;
  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: 2px;
  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: #fff;
  background-color: #1C7EBB; }

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

.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 {
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
  .btn-group.open .dropdown-toggle.btn-link {
    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: 2px;
  border-top-left-radius: 2px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
  border-bottom-right-radius: 2px;
  border-bottom-left-radius: 2px; }

.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0; }

.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0; }

.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate; }
  .btn-group-justified > .btn,
  .btn-group-justified > .btn-group {
    float: none;
    display: table-cell;
    width: 1%; }
  .btn-group-justified > .btn-group .btn {
    width: 100%; }
  .btn-group-justified > .btn-group .dropdown-menu {
    left: auto; }

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

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

.input-group.home-search {
  position: relative;
  width: 200px;
  margin: 0px 15px 15px 15px;
  float: right; }

.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 #CBD5DD;
  border-radius: 2px; }
  .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: 2px; }
  .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: 2px; }
  .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: #1C7EBB; }
  .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: 2px 2px 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: #f3f3f3;
      border: 1px solid #ddd;
      border-bottom-color: transparent;
      cursor: default; }

.nav-pills > li {
  float: left; }
  .nav-pills > li > a {
    border-radius: 2px; }
  .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: #1C7EBB; }

.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: 2px; }
  .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: 2px 2px 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: #f3f3f3; } }

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

.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: 2px; }
  .navbar-toggle:focus {
    outline: 0; }
  .navbar-toggle .icon-bar {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 1px; }
  .navbar-toggle .icon-bar + .icon-bar {
    margin-top: 4px; }
  @media (min-width: 768px) {
    .navbar-toggle {
      display: none; } }

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

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

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

.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
  margin-bottom: 0;
  border-top-right-radius: 2px;
  border-top-left-radius: 2px;
  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: #f6f6f6;
  border-radius: 2px; }
  .breadcrumb > li {
    display: inline-block; }
    .breadcrumb > li + li:before {
      content: "/ ";
      padding: 0 5px;
      color: #e9e9e9; }
  .breadcrumb > .active {
    color: #777777; }

.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 20px 0;
  border-radius: 2px; }
  .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: #767676;
      background-color: #fff;
      border: 1px solid #dce0e0;
      margin-left: -1px; }
    .pagination > li:first-child > a,
    .pagination > li:first-child > span {
      margin-left: 0;
      border-bottom-left-radius: 2px;
      border-top-left-radius: 2px; }
    .pagination > li:last-child > a,
    .pagination > li:last-child > span {
      border-bottom-right-radius: 2px;
      border-top-right-radius: 2px; }
  .pagination > li > a:hover, .pagination > li > a:focus,
  .pagination > li > span:hover,
  .pagination > li > span:focus {
    z-index: 2;
    color: #767676;
    background-color: #fff;
    border-color: #aaa; }
  .pagination > .active > a, .pagination > .active > a:hover, .pagination > .active > a:focus,
  .pagination > .active > span,
  .pagination > .active > span:hover,
  .pagination > .active > span:focus {
    z-index: 3;
    color: #fff;
    background-color: #1C7EBB;
    border-color: #1C7EBB;
    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: #f6f6f6;
    border-color: #f6f6f6;
    cursor: default; }

.pagination-lg > li > a,
.pagination-lg > li > span {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33; }

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

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

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

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

.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 #dce0e0;
      border-radius: 15px; }
    .pager li > a:hover,
    .pager li > a:focus {
      text-decoration: none;
      background-color: #fff; }
  .pager .next > a,
  .pager .next > span {
    float: right; }
  .pager .previous > a,
  .pager .previous > span {
    float: left; }
  .pager .disabled > a,
  .pager .disabled > a:hover,
  .pager .disabled > a:focus,
  .pager .disabled > span {
    color: #777777;
    background-color: #fff;
    cursor: not-allowed; }

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

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

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

.label-primary {
  background-color: #1C7EBB; }
  .label-primary[href]:hover, .label-primary[href]:focus {
    background-color: #15608f; }

.label-success {
  background-color: #23AE89; }
  .label-success[href]:hover, .label-success[href]:focus {
    background-color: #1a8468; }

.label-info {
  background-color: #2EC1CC; }
  .label-info[href]:hover, .label-info[href]:focus {
    background-color: #259aa2; }

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

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

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

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

a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #1C7EBB; }

.alert {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid transparent;
  border-radius: 2px; }
  .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: #F2FCF9;
  border-color: #ddf7eb;
  color: #229173; }
  .alert-success hr {
    border-top-color: #c9f2df; }
  .alert-success .alert-link {
    color: #186852; }

.alert-info {
  background-color: #EEF8FC;
  border-color: #d0f2f7;
  color: #26929C; }
  .alert-info hr {
    border-top-color: #baecf3; }
  .alert-info .alert-link {
    color: #1c6c73; }

.alert-warning {
  background-color: #FFFAF0;
  border-color: #ffebd7;
  color: #AF7F18; }
  .alert-warning hr {
    border-top-color: #ffdebd; }
  .alert-warning .alert-link {
    color: #825e12; }

.alert-danger {
  background-color: #FDEFEE;
  border-color: #fad7db;
  color: #B13D31; }
  .alert-danger hr {
    border-top-color: #f8c0c6; }
  .alert-danger .alert-link {
    color: #892f26; }

.alert.alert-danger.custom-alert {
  margin-bottom: 0px;
  padding: 10px; }

@-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: 2px;
  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: #1C7EBB;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  -webkit-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: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 40px 40px; }

.progress.active .progress-bar,
.progress-bar.active {
  -webkit-animation: progress-bar-stripes 2s linear infinite;
  animation: progress-bar-stripes 2s linear infinite; }

.progress-bar-success {
  background-color: #23AE89; }
  .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: 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: #2EC1CC; }
  .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: 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: #FFB61C; }
  .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: 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: #E94B3B; }
  .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: 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 #eff2f7; }
  .list-group-item:first-child {
    border-top-right-radius: 2px;
    border-top-left-radius: 2px; }
  .list-group-item:last-child {
    margin-bottom: 0;
    border-bottom-right-radius: 2px;
    border-bottom-left-radius: 2px; }

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: #1C7EBB;
  border-color: #1C7EBB; }
  .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: #b0d9f3; }

.list-group-item-success {
  color: #229173;
  background-color: #F2FCF9; }

a.list-group-item-success,
button.list-group-item-success {
  color: #229173; }
  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: #229173;
    background-color: #ddf7ef; }
  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: #229173;
    border-color: #229173; }

.list-group-item-info {
  color: #26929C;
  background-color: #EEF8FC; }

a.list-group-item-info,
button.list-group-item-info {
  color: #26929C; }
  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: #26929C;
    background-color: #d8eff8; }
  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: #26929C;
    border-color: #26929C; }

.list-group-item-warning {
  color: #AF7F18;
  background-color: #FFFAF0; }

a.list-group-item-warning,
button.list-group-item-warning {
  color: #AF7F18; }
  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: #AF7F18;
    background-color: #fff2d7; }
  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: #AF7F18;
    border-color: #AF7F18; }

.list-group-item-danger {
  color: #B13D31;
  background-color: #FDEFEE; }

a.list-group-item-danger,
button.list-group-item-danger {
  color: #B13D31; }
  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: #B13D31;
    background-color: #fadad7; }
  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: #B13D31;
    border-color: #B13D31; }

.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: 2px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); }

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

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

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

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

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

.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0; }

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

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

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

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

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

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

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

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

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

.panel-group {
  margin: 0px 15px; }
  .panel-group .panel {
    margin-bottom: 0;
    border-radius: 2px; }
    .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 #e9e9e9; }
  .panel-group .panel-footer {
    border-top: 0; }
    .panel-group .panel-footer + .panel-collapse .panel-body {
      border-bottom: 1px solid #e9e9e9; }

.panel-default {
  border-color: #e9e9e9; }
  .panel-default > .panel-heading {
    color: #767676;
    background-color: #f6f6f6;
    border-color: #e9e9e9; }
    .panel-default > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #e9e9e9; }
    .panel-default > .panel-heading .badge {
      color: #f6f6f6;
      background-color: #767676; }
  .panel-default > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #e9e9e9; }

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

.panel-success {
  border-color: #ddf7eb; }
  .panel-success > .panel-heading {
    color: #229173;
    background-color: #F2FCF9;
    border-color: #ddf7eb; }
    .panel-success > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #ddf7eb; }
    .panel-success > .panel-heading .badge {
      color: #F2FCF9;
      background-color: #229173; }
  .panel-success > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #ddf7eb; }

.panel-info {
  border-color: #d0f2f7; }
  .panel-info > .panel-heading {
    color: #26929C;
    background-color: #EEF8FC;
    border-color: #d0f2f7; }
    .panel-info > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #d0f2f7; }
    .panel-info > .panel-heading .badge {
      color: #EEF8FC;
      background-color: #26929C; }
  .panel-info > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #d0f2f7; }

.panel-warning {
  border-color: #ffebd7; }
  .panel-warning > .panel-heading {
    color: #AF7F18;
    background-color: #FFFAF0;
    border-color: #ffebd7; }
    .panel-warning > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #ffebd7; }
    .panel-warning > .panel-heading .badge {
      color: #FFFAF0;
      background-color: #AF7F18; }
  .panel-warning > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #ffebd7; }

.panel-danger {
  border-color: #fad7db; }
  .panel-danger > .panel-heading {
    color: #B13D31;
    background-color: #FDEFEE;
    border-color: #fad7db; }
    .panel-danger > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #fad7db; }
    .panel-danger > .panel-heading .badge {
      color: #FDEFEE;
      background-color: #B13D31; }
  .panel-danger > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #fad7db; }

.panel.panel-default.panel-anagraph {
  margin: 0px 15px; }

.panel.panel-default.panel-widget {
  margin-left: 15px;
  margin-right: 15px;
  margin-bottom: 15px; }

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

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

.close {
  float: right;
  font-size: 21px;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.2;
  filter: alpha(opacity=20); }
  .close:hover, .close:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
    opacity: 0.5;
    filter: alpha(opacity=50); }

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

.modal-open {
  overflow: hidden; }

.modal {
  display: none;
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  -webkit-overflow-scrolling: touch;
  outline: 0; }
  .modal.fade .modal-dialog {
    -webkit-transform: translate(0, -25%);
    transform: translate(0, -25%);
    -webkit-transition: -webkit-transform 0.3s ease-out;
    transition: -webkit-transform 0.3s ease-out;
    transition: transform 0.3s ease-out;
    transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out; }
  .modal.in .modal-dialog {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); }

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto; }

.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px; }

.modal-content {
  position: relative;
  background-color: #fff;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 2px;
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  background-clip: padding-box;
  outline: 0; }

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

.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5; }
  .modal-header:before, .modal-header:after {
    content: " ";
    display: table; }
  .modal-header:after {
    clear: both; }

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

.modal-title {
  margin: 0;
  line-height: 1.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 {
    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: "Lato", "Helvetica Neue", Arial, sans-serif;
  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: 2px; }

.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: "Lato", "Helvetica Neue", Arial, sans-serif;
  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: #222533;
  background-clip: padding-box;
  border: 1px solid #222533;
  border: 1px solid #222533;
  border-radius: 2px;
  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: #222533;
  border-bottom: 1px solid #181a24;
  border-radius: 1px 1px 0 0; }

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

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

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

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

.popover.top > .arrow {
  left: 50%;
  margin-left: -11px;
  border-bottom-width: 0;
  border-top-color: #222533;
  border-top-color: #222533;
  bottom: -11px; }
  .popover.top > .arrow:after {
    content: " ";
    bottom: 1px;
    margin-left: -10px;
    border-bottom-width: 0;
    border-top-color: #222533; }

.popover.right > .arrow {
  top: 50%;
  left: -11px;
  margin-top: -11px;
  border-left-width: 0;
  border-right-color: #222533;
  border-right-color: #222533; }
  .popover.right > .arrow:after {
    content: " ";
    left: 1px;
    bottom: -10px;
    border-left-width: 0;
    border-right-color: #222533; }

.popover.bottom > .arrow {
  left: 50%;
  margin-left: -11px;
  border-top-width: 0;
  border-bottom-color: #222533;
  border-bottom-color: #222533;
  top: -11px; }
  .popover.bottom > .arrow:after {
    content: " ";
    top: 1px;
    margin-left: -10px;
    border-top-width: 0;
    border-bottom-color: #222533; }

.popover.left > .arrow {
  top: 50%;
  right: -11px;
  margin-top: -11px;
  border-right-width: 0;
  border-left-color: #222533;
  border-left-color: #222533; }
  .popover.left > .arrow:after {
    content: " ";
    right: 1px;
    border-right-width: 0;
    border-left-color: #222533;
    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;
    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;
        transition: -webkit-transform 0.6s ease-in-out;
        transition: transform 0.6s ease-in-out;
        transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        -webkit-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);
  background-color: rgba(0, 0, 0, 0); }
  .carousel-control.left {
    background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
    background-image: 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: 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: rgba(0, 0, 0, 0); }
  .carousel-indicators .active {
    margin: 0;
    width: 12px;
    height: 12px;
    background-color: #fff; }

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

@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -10px;
    font-size: 30px; }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -10px; }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -10px; }
  .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; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJvb3RzdHJhcC5jc3MiLCJib290c3RyYXAvX2Jvb3RzdHJhcC5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9fbm9ybWFsaXplLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL19wcmludC5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9fZ2x5cGhpY29ucy5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9fc2NhZmZvbGRpbmcuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL192ZW5kb3ItcHJlZml4ZXMuc2NzcyIsImdsb2JhbC9fdmFyLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fdGFiLWZvY3VzLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9faW1hZ2Uuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvX3R5cGUuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fY2xlYXJmaXguc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL190ZXh0LW92ZXJmbG93LnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL19jb2RlLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL19ncmlkLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fZ3JpZC5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL190YWJsZXMuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvX2Zvcm1zLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fZm9ybXMuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvX2J1dHRvbnMuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19idXR0b25zLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fb3BhY2l0eS5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9fY29tcG9uZW50LWFuaW1hdGlvbnMuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvX2Ryb3Bkb3ducy5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fcmVzZXQtZmlsdGVyLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL19idXR0b24tZ3JvdXBzLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9faW5wdXQtZ3JvdXBzLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL19uYXZzLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL19uYXZiYXIuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19uYXYtdmVydGljYWwtYWxpZ24uc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvX2JyZWFkY3J1bWJzLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL19wYWdpbmF0aW9uLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9fcGFnZXIuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvX2xhYmVscy5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX2xhYmVscy5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9fYmFkZ2VzLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL19qdW1ib3Ryb24uc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvX3RodW1ibmFpbHMuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvX2FsZXJ0cy5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX2FsZXJ0cy5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9fcHJvZ3Jlc3MtYmFycy5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3Byb2dyZXNzLWJhci5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9fbWVkaWEuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvX2xpc3QtZ3JvdXAuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL19wYW5lbHMuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19wYW5lbHMuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvX3Jlc3BvbnNpdmUtZW1iZWQuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvX3dlbGxzLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL19jbG9zZS5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9fbW9kYWxzLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL190b29sdGlwLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9fcG9wb3ZlcnMuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvX2Nhcm91c2VsLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL191dGlsaXRpZXMuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19jZW50ZXItYmxvY2suc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19oaWRlLXRleHQuc2NzcyIsImJvb3RzdHJhcC9ib290c3RyYXAvX3Jlc3BvbnNpdmUtdXRpbGl0aWVzLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fcmVzcG9uc2l2ZS12aXNpYmlsaXR5LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCOzs7O0dBSUc7QUNKSCw0RUFBNEU7QUFRNUU7RUFDRSx3QkFBdUI7RUFDdkIsMkJBQTBCO0VBQzFCLCtCQUE4QixFQUMvQjs7QUFNRDtFQUNFLFVBQVMsRUFDVjs7QUFZRDs7Ozs7Ozs7Ozs7OztFQWFFLGVBQWMsRUFDZjs7QUFPRDs7OztFQUlFLHNCQUFxQjtFQUNyQix5QkFBd0IsRUFDekI7O0FBT0Q7RUFDRSxjQUFhO0VBQ2IsVUFBUyxFQUNWOztBRjVCRDs7RUVxQ0UsY0FBYSxFQUNkOztBQVNEO0VBQ0UsOEJBQTZCLEVBQzlCOztBQU9EOztFQUVFLFdBQVUsRUFDWDs7QUFTRDtFQUNFLDBCQUF5QixFQUMxQjs7QUFNRDs7RUFFRSxrQkFBaUIsRUFDbEI7O0FBTUQ7RUFDRSxtQkFBa0IsRUFDbkI7O0FBT0Q7RUFDRSxlQUFjO0VBQ2QsaUJBQWdCLEVBQ2pCOztBQU1EO0VBQ0UsaUJBQWdCO0VBQ2hCLFlBQVcsRUFDWjs7QUFNRDtFQUNFLGVBQWMsRUFDZjs7QUFNRDs7RUFFRSxlQUFjO0VBQ2QsZUFBYztFQUNkLG1CQUFrQjtFQUNsQix5QkFBd0IsRUFDekI7O0FBRUQ7RUFDRSxZQUFXLEVBQ1o7O0FBRUQ7RUFDRSxnQkFBZSxFQUNoQjs7QUFTRDtFQUNFLFVBQVMsRUFDVjs7QUFNRDtFQUNFLGlCQUFnQixFQUNqQjs7QUFTRDtFQUNFLGlCQUFnQixFQUNqQjs7QUFNRDtFQUNFLHdCQUF1QjtFQUN2QixVQUFTLEVBQ1Y7O0FBTUQ7RUFDRSxlQUFjLEVBQ2Y7O0FBTUQ7Ozs7RUFJRSxrQ0FBaUM7RUFDakMsZUFBYyxFQUNmOztBQWlCRDs7Ozs7RUFLRSxlQUFjO0VBQ2QsY0FBYTtFQUNiLFVBQVMsRUFDVjs7QUFNRDtFQUNFLGtCQUFpQixFQUNsQjs7QUFTRDs7RUFFRSxxQkFBb0IsRUFDckI7O0FB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STs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQjtFQUFFLGdCQUFjLEVBQUU7O0FBQ2pGO0VBQStDLGlCQUFnQjtFQUFFLGdCQUFjLEVBQUU7O0FBQ2pGO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQVNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7QUFDbkU7RUFBK0MsaUJBQWdCLEVBQUk7O0FBQ25FO0VBQStDLGlCQUFnQixFQUFJOztBQUNuRTtFQUErQyxpQkFBZ0IsRUFBSTs7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QkFBZTtJQUNmLGlCQUFnQixFQUNqQjs7QUN4UEQ7OztFQUNFLGFmNksrRztFZTVLL0csa0JmaUQ0QjtFZWhENUIsZ0JmR29EO0VlRnBELGlCZnFEMkI7RWVwRDNCLG1CZndEMkIsRWV2RDVCOztBQUVEOzs7RUFDRSxhZnFLK0c7RWVwSy9HLGtCZm9LK0csRWVuS2hIOztBQUVEOzs7Ozs7O0VBRUUsYUFBWSxFQUNiOztBRHFQSDtFQUVJLGFkekYrRztFYzBGL0csa0Jkck40QjtFY3NONUIsZ0JkblFvRDtFY29RcEQsaUJkak4yQjtFY2tOM0IsbUJkOU0yQixFYytNNUI7O0FBUEg7RUFTSSxhZGhHK0c7RWNpRy9HLGtCZGpHK0csRWNrR2hIOztBQVhIOztFQWNJLGFBQVksRUFDYjs7QUFmSDtFQWlCSSxhZHhHK0c7RWN5Ry9HLGlCQUFzRDtFQUN0RCxrQmRyTzRCO0Vjc081QixnQmRuUm9EO0Vjb1JwRCxpQmRqTzJCLEVja081Qjs7QUMzUkQ7OztFQUNFLGFmMks4RztFZTFLOUcsbUJmOEM0QjtFZTdDNUIsZ0JmRW9EO0VlRHBELGtCZm9ENEI7RWVuRDVCLG1CZnVEMkIsRWV0RDVCOztBQUVEOzs7RUFDRSxhZm1LOEc7RWVsSzlHLGtCZmtLOEcsRWVqSy9HOztBQUVEOzs7Ozs7O0VBRUUsYUFBWSxFQUNiOztBRCtRSDtFQUVJLGFkckg4RztFY3NIOUcsbUJkbFA0QjtFY21QNUIsZ0JkOVJvRDtFYytScEQsa0JkNU80QjtFYzZPNUIsbUJkek8yQixFYzBPNUI7O0FBUEg7RUFTSSxhZDVIOEc7RWM2SDlHLGtCZDdIOEcsRWM4SC9HOztBQVhIOztFQWNJLGFBQVksRUFDYjs7QUFmSDtFQWlCSSxhZHBJOEc7RWNxSTlHLGlCQUFzRDtFQUN0RCxtQmRsUTRCO0VjbVE1QixnQmQ5U29EO0VjK1NwRCxrQmQ1UDRCLEVjNlA3Qjs7QUFRSDtFQUVFLG1CQUFrQixFQU1uQjtFQVJEO0lBTUksc0JBQTBDLEVBQzNDOztBQUdIO0VBQ0UsbUJBQWtCO0VBQ2xCLE9BQU07RUFDTixTQUFRO0VBQ1IsV0FBVTtFQUNWLGVBQWM7RUFDZCxZZG5LeUY7RWNvS3pGLGFkcEt5RjtFY3FLekYsa0Jkckt5RjtFY3NLekYsbUJBQWtCO0VBQ2xCLHFCQUFvQixFQUNyQjs7QUFDRDs7O0VBR0UsWWQxS2dIO0VjMktoSCxhZDNLZ0g7RWM0S2hILGtCZDVLZ0gsRWM2S2pIOztBQUNEOzs7RUFHRSxZZC9LaUg7RWNnTGpILGFkaExpSDtFY2lMakgsa0JkakxpSCxFY2tMbEg7O0FDL1pDOzs7Ozs7Ozs7O0VBVUUsZWZpZ0JvQyxFZWhnQnJDOztBQUVEO0VBQ0Usc0JmNmZvQztFRDdjOUIsaURnQi9DOEMsRUFNckQ7RUFMQztJQUNFLHNCQUF3QztJaEI2Q3BDLGtFZ0I1QzBFLEVBRS9FOztBQUdIO0VBQ0UsZWZtZm9DO0VlbGZwQyxzQmZrZm9DO0VlamZwQywwQmZrZm9DLEVlamZyQzs7QUFFRDtFQUNFLGVmNmVvQyxFZTVlckM7O0FBL0JEOzs7Ozs7Ozs7O0VBVUUsZWZ5Z0JvQyxFZXhnQnJDOztBQUVEO0VBQ0Usc0JmcWdCb0M7RURyZDlCLGlEZ0IvQzhDLEVBTXJEO0VBTEM7SUFDRSxzQkFBd0M7SWhCNkNwQyxrRWdCNUMwRSxFQUUvRTs7QUFHSDtFQUNFLGVmMmZvQztFZTFmcEMsc0JmMGZvQztFZXpmcEMsMEJmMGZvQyxFZXpmckM7O0FBRUQ7RUFDRSxlZnFmb0MsRWVwZnJDOztBQS9CRDs7Ozs7Ozs7OztFQVVFLGVmNmdCb0MsRWU1Z0JyQzs7QUFFRDtFQUNFLHNCZnlnQm9DO0VEemQ5QixpRGdCL0M4QyxFQU1yRDtFQUxDO0lBQ0Usc0JBQXdDO0loQjZDcEMsa0VnQjVDMEUsRUFFL0U7O0FBR0g7RUFDRSxlZitmb0M7RWU5ZnBDLHNCZjhmb0M7RWU3ZnBDLDBCZjhmb0MsRWU3ZnJDOztBQUVEO0VBQ0UsZWZ5Zm9DLEVleGZyQzs7QUQ4WUg7RUFHSSxVQUFnQyxFQUNqQzs7QUFKSDtFQU1JLE9BQU0sRUFDUDs7QUFTSDtFQUNFLGVBQWM7RUFDZCxnQkFBZTtFQUNmLG9CQUFtQjtFQUNuQixlQUFnQyxFQUNqQzs7QUFrQkM7RUFFRTtJQUNFLHNCQUFxQjtJQUNyQixpQkFBZ0I7SUFDaEIsdUJBQXNCLEVBQ3ZCO0VBR0Q7SUFDRSxzQkFBcUI7SUFDckIsWUFBVztJQUNYLHVCQUFzQixFQUN2QjtFQUdEO0lBQ0Usc0JBQXFCLEVBQ3RCO0VBRUQ7SUFDRSxzQkFBcUI7SUFDckIsdUJBQXNCLEVBT3ZCO0lBTEM7OztNQUdFLFlBQVcsRUFDWjtFQUlIO0lBQ0UsWUFBVyxFQUNaO0VBRUQ7SUFDRSxpQkFBZ0I7SUFDaEIsdUJBQXNCLEVBQ3ZCO0VBSUQ7O0lBRUUsc0JBQXFCO0lBQ3JCLGNBQWE7SUFDYixpQkFBZ0I7SUFDaEIsdUJBQXNCLEVBS3ZCO0lBSEM7O01BQ0UsZ0JBQWUsRUFDaEI7RUFFSDs7SUFFRSxtQkFBa0I7SUFDbEIsZUFBYyxFQUNmO0VBR0Q7SUFDRSxPQUFNLEVBQ1AsRUFBQTs7QUFlTDs7OztFQVNJLGNBQWE7RUFDYixpQkFBZ0I7RUFDaEIsaUJBQXlDLEVBQzFDOztBQVpIOztFQWlCSSxpQkFBa0UsRUFDbkU7O0FBbEJIO0VKMWhCRSxtQkFBa0M7RUFDbEMsb0JBQW1DO0VJZ2pCakMsaUJBQWdCO0VBQ2hCLGtCQUFpQixFQUNsQjtFUnJqQkQ7SUFFRSxhQUFZO0lBQ1osZUFBYyxFQUNmO0VBQ0Q7SUFDRSxZQUFXLEVBQ1o7O0FRa2pCRDtFQTdCRjtJQStCTSxrQkFBaUI7SUFDakIsaUJBQWdCO0lBQ2hCLGlCQUF5QyxFQUMxQyxFQUFBOztBQWxDTDtFQTBDSSxZQUFzQyxFQUN2Qzs7QUFPQztFQWxESjtJQW9EUSxrQkFBMEM7SUFDMUMsZ0JkbmhCZ0QsRWNvaEJqRCxFQUFBOztBQUlIO0VBMURKO0lBNERRLGlCQUEwQztJQUMxQyxnQmQxaEJnRCxFYzJoQmpELEVBQUE7O0FFL2xCUDtFQUNFLHNCQUFxQjtFQUNyQixpQkFBZ0I7RUFDaEIsb0JoQjhKcUM7RWdCN0pyQyxtQkFBa0I7RUFDbEIsdUJBQXNCO0VBQ3RCLCtCQUEwQjtNQUExQiwyQkFBMEI7RUFDMUIsZ0JBQWU7RUFDZix1QkFBc0I7RUFDdEIsOEJBQTZCO0VBQzdCLG9CQUFtQjtFQzBDbkIsa0JqQnVEOEI7RWlCdEQ5QixnQmpCYTRCO0VpQlo1QixxQmpCd0JtQztFaUJ2Qm5DLG1CakJrRTZCO0VEd0Y3QiwwQmlCck15QjtFakJzTXRCLHVCaUJ0TXNCO0VqQnVNckIsc0JpQnZNcUI7RWpCd01qQixrQmlCeE1pQixFQWtDMUI7RUE5Q0Q7SWZKRSxxQkFBb0I7SUFFcEIsMkNBQTBDO0lBQzFDLHFCQUFvQixFZXFCakI7RUFwQkw7SUEwQkksWWhCeUlpQztJZ0J4SWpDLHNCQUFxQixFQUN0QjtFQTVCSDtJQWdDSSxXQUFVO0lBQ1YsdUJBQXNCO0lqQjRCaEIsaURpQjNCOEMsRUFDckQ7RUFuQ0g7O0lBd0NJLG9CaEJrTndDO0lrQi9QMUMsY0Y4Q3NCO0lFM0N0QiwwQkFBa0M7SW5CK0QxQixpQmlCbkJrQixFQUN6Qjs7QUFLSDs7RUFHSSxxQkFBb0IsRUFDckI7O0FBT0g7RUM3REUsWWpCcUttQztFaUJwS25DLHVCakJxS21DO0VpQnBLbkMsbUJqQnFLbUMsRWdCeEdwQztFQzNEQztJQUVFLFlqQitKaUM7SWlCOUpqQywwQkFBMEM7SUFDdEMsc0JBQWtDLEVBQ3ZDO0VBQ0Q7SUFDRSxZakIwSmlDO0lpQnpKakMsMEJBQTBDO0lBQ3RDLHNCQUFrQyxFQUN2QztFQUNEOztJQUdFLFlqQm1KaUM7SWlCbEpqQywwQkFBMEM7SUFDdEMsc0JBQWtDLEVBU3ZDO0lBUEM7Ozs7TUFHRSxZakI0SStCO01pQjNJL0IsMEJBQTBDO01BQ3RDLHNCQUFrQyxFQUN2QztFQWJIOztJQWtCRSx1QkFBc0IsRUFDdkI7RUFJQzs7OztJQUdFLHVCakI2SCtCO0lpQjVIM0IsbUJqQjZIMkIsRWlCNUhoQztFQUdIO0lBQ0UsWWpCdUhpQztJaUJ0SGpDLHVCakJxSGlDLEVpQnBIbEM7O0FEZUg7RUNoRUUsWWpCeUttQztFaUJ4S25DLDBCakJjNkI7RWlCYjdCLHNCakJ5SzBELEVnQnpHM0Q7RUM5REM7SUFFRSxZakJtS2lDO0lpQmxLakMsMEJBQTBDO0lBQ3RDLHNCQUFrQyxFQUN2QztFQUNE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WnlDLEUyQm1CMUM7SUExQkw7TUF1QlEsWTNCZnVDO00yQmdCdkMsOEIzQmY4QyxFMkJnQi9DO0VBekJQO0lBK0JRLFkzQnJCdUM7STJCc0J2QywwQjNCckJtRSxFMkJzQnBFO0VBakNQO0lBdUNRLFkzQjNCdUM7STJCNEJ2Qyw4QjNCM0I4QyxFMkI0Qi9DO0VBekNQO0lBOENJLG1CM0J2QjJDLEUyQitCNUM7SUF0REg7TUFpRE0sdUIzQjVCeUMsRTJCNkIxQztJQWxETDtNQW9ETSx1QjNCOUJ5QyxFMkIrQjFDO0VBckRMOztJQTBESSxzQjNCdEQrRCxFMkJ1RGhFO0VBM0RIO0lBb0VRLDBCM0J6RG1FO0kyQjBEbkUsWTNCM0R1QyxFMkI0RHhDO0VBR0g7SUF6RUo7TUE2RVUsWTNCdEVxQyxFMkI0RXRDO01BbkZUO1FBZ0ZZLFkzQnhFbUM7UTJCeUVuQyw4QjNCeEUwQyxFMkJ5RTNDO0lBbEZYO01Bd0ZZLFkzQjlFbUM7TTJCK0VuQywwQjNCOUUrRCxFMkIrRWhFO0lBMUZYO01BZ0dZLFkzQnBGbUM7TTJCcUZuQyw4QjNCcEYwQyxFMkJxRjNDLEVBQUE7RUFsR1g7SUE4R0ksWTNCdkcyQyxFMkIyRzVDO0lBbEhIO01BZ0hNLFkzQnhHeUMsRTJCeUcxQztFQWpITDtJQXFISSxZM0I5RzJDLEUyQjBINUM7SUFqSUg7TUF3SE0sWTNCaEh5QyxFMkJpSDFDO0lBekhMOzs7TUE4SFEsWTNCbEh1QyxFMkJtSHhDOztBQU9QO0VBQ0UsdUIzQjFHOEM7RTJCMkc5QyxzQjNCMUd5RSxFMkIyTzFFO0VBbklEO0lBS0ksZTNCMUdpRSxFMkJnSGxFO0lBWEg7TUFRTSxZM0JuRzBDO00yQm9HMUMsOEIzQm5HaUQsRTJCb0dsRDtFQVZMO0lBY0ksZTNCeEhpRSxFMkJ5SGxFO0VBZkg7SUFtQk0sZTNCeEgrRCxFMkIrSGhFO0lBMUJMO01BdUJRLFkzQjNId0M7TTJCNEh4Qyw4QjNCM0grQyxFMkI0SGhEO0VBekJQO0lBK0JRLFkzQm5Jd0M7STJCb0l4QywwQjNCakltRSxFMkJrSXBFO0VBakNQO0lBdUNRLFkzQnZJd0M7STJCd0l4Qyw4QjNCdkkrQyxFMkJ3SWhEO0VBekNQO0lBK0NJLG1CM0JwSTRDLEUyQjRJN0M7SUF2REg7TUFrRE0sdUIzQnpJMEMsRTJCMEkzQztJQW5ETDtNQXFETSx1QjNCM0kwQyxFMkI0STNDO0VBdERMOztJQTJESSxzQkFBNEMsRUFDN0M7RUE1REg7SUFvRVEsMEIzQnJLbUU7STJCc0tuRSxZM0J6S3dDLEUyQjBLekM7RUFHSDtJQXpFSjtNQTZFVSxzQjNCckxpRSxFMkJzTGxFO0lBOUVUO01BZ0ZVLDBCM0J4TGlFLEUyQnlMbEU7SUFqRlQ7TUFtRlUsZTNCeEwyRCxFMkI4TDVEO01BekZUO1FBc0ZZLFkzQjFMb0M7UTJCMkxwQyw4QjNCMUwyQyxFMkIyTDVDO0lBeEZYO01BOEZZLFkzQmxNb0M7TTJCbU1wQywwQjNCaE0rRCxFMkJpTWhFO0lBaEdYO01Bc0dZLFkzQnRNb0M7TTJCdU1wQyw4QjNCdE0yQyxFMkJ1TTVDLEVBQUE7RUF4R1g7SUErR0ksZTNCcE5pRSxFMkJ3TmxFO0lBbkhIO01BaUhNLFkzQnJOMEMsRTJCc04zQztFQWxITDtJQXNISSxlM0IzTmlFLEUyQnVPbEU7SUFsSUg7TUF5SE0sWTNCN04wQyxFMkI4TjNDO0lBMUhMOzs7TUErSFEsWTNCL053QyxFMkJnT3pDOztBRTdvQlA7RUFDRSxrQjdCZ3pCa0M7RTZCL3lCbEMsb0I3QmtGb0U7RTZCakZwRSxpQkFBZ0I7RUFDaEIsMEI3QmlDcUM7RTZCaENyQyxtQjdCdUg2QixFNkJ0RzlCO0VBdEJEO0lBUUksc0JBQXFCLEVBU3RCO0lBakJIO01BYU0sY0FBMkM7TUFDM0MsZUFBYztNQUNkLGU3QnVCd0UsRTZCdEJ6RTtFQWhCTDtJQW9CSSxlN0JQK0MsRTZCUWhEOztBQ3ZCSDtFQUNFLHNCQUFxQjtFQUNyQixnQkFBZTtFQUNmLGVBQStCO0VBQy9CLG1COUIwSDZCLEU4QnREOUI7RUF4RUQ7SUFPSSxnQkFBZSxFQTBCaEI7SUFqQ0g7O01BVU0sbUJBQWtCO01BQ2xCLFlBQVc7TUFDWCxrQjlCb0cwQjtNOEJuRzFCLHFCOUJzRStCO004QnJFL0Isc0JBQXFCO01BQ3JCLGU5Qm9DeUI7TThCbkN6Qix1QjlCK2NxQztNOEI5Y3JDLDBCOUIrY3dDO004QjljeEMsa0JBQWlCLEVBQ2xCO0lBbkJMOztNQXVCUSxlQUFjO01OWHBCLCtCeEJrSDZCO013QmpIMUIsNEJ4QmlIMEIsRThCckd4QjtJQXpCUDs7TU5JRSxnQ3hCMEg2QjtNd0J6SDFCLDZCeEJ5SDBCLEU4Qi9GeEI7RUEvQlA7OztJQXVDTSxXQUFVO0lBQ1YsZTlCV3lCO0k4QlZ6Qix1QjlCMGJxQztJOEJ6YnJDLG1COUIwYnFDLEU4QnpidEM7RUEzQ0w7Ozs7SUFtRE0sV0FBVTtJQUNWLFk5QmticUM7SThCamJyQywwQjlCbkN5QjtJOEJvQ3pCLHNCOUJwQ3lCO0k4QnFDekIsZ0JBQWUsRUFDaEI7RUF4REw7Ozs7OztJQWtFTSxlOUJuRDZDO0k4Qm9EN0MsMEI5QjVCaUM7SThCNkJqQyxzQjlCN0JpQztJOEI4QmpDLGdCQUFjLEVBQ2Y7O0FDckVEOztFQUVFLG1CL0JnSDBCO0UrQi9HMUIsZ0IvQm9Fa0Q7RStCbkVsRCxrQi9Cc0gwQixFK0JySDNCOztBQUVDOztFUElKLCtCeEJtSDZCO0V3QmxIMUIsNEJ4QmtIMEIsRStCcEh4Qjs7QUFHRDs7RVBWSixnQ3hCMkg2QjtFd0IxSDFCLDZCeEIwSDBCLEUrQjlHeEI7O0FBaEJIOztFQUVFLGtCL0JtSDBCO0UrQmxIMUIsZ0IvQnFFa0Q7RStCcEVsRCxpQi9CdUh5QixFK0J0SDFCOztBQUVDOztFUElKLCtCeEJvSDZCO0V3Qm5IMUIsNEJ4Qm1IMEIsRStCckh4Qjs7QUFHRDs7RVBWSixnQ3hCNEg2QjtFd0IzSDFCLDZCeEIySDBCLEUrQi9HeEI7O0FDZlA7RUFDRSxnQkFBZTtFQUNmLGVBQStCO0VBQy9CLGlCQUFnQjtFQUNoQixtQkFBa0IsRUE0Q25CO0UxQnhDQztJQUVFLGFBQVk7SUFDWixlQUFjLEVBQ2Y7RUFDRDtJQUNFLFlBQVcsRUFDWjtFMEJmSDtJQU9JLGdCQUFlLEVBZWhCO0lBdEJIOztNQVVNLHNCQUFxQjtNQUNyQixrQkFBaUI7TUFDakIsdUJoQ2lkcUM7TWdDaGRyQywwQmhDaWR3QztNZ0NoZHhDLG9CaENxZXFDLEVnQ3BldEM7SUFmTDs7TUFtQk0sc0JBQXFCO01BQ3JCLHVCaEM2Y3FDLEVnQzVjdEM7RUFyQkw7O0lBMkJNLGFBQVksRUFDYjtFQTVCTDs7SUFrQ00sWUFBVyxFQUNaO0VBbkNMOzs7O0lBMkNNLGVoQzlCNkM7SWdDK0I3Qyx1QmhDaWJxQztJZ0NoYnJDLG9CaENnTnNDLEVnQy9NdkM7O0FwQzZCRDtFcUMzRUYsZ0JBQWU7RUFDZix3QkFBdUI7RUFDdkIsZUFBYztFQUNkLGtCQUFpQjtFQUNqQixlQUFjO0VBQ2QsWWpDMGxCZ0M7RWlDemxCaEMsbUJBQWtCO0VBQ2xCLG9CQUFtQjtFQUNuQix5QkFBd0I7RUFDeEIscUJBQW9CLEVBY3JCO0VBeEJEO0lBZ0JJLGNBQWEsRUFDZDtFQUdEO0lBQ0UsbUJBQWtCO0lBQ2xCLFVBQVMsRUFDVjs7QUFJSDtFQUdJLFlqQ29rQjhCO0VpQ25rQjlCLHNCQUFxQjtFQUNyQixnQkFBZSxFQUNoQjs7QUFNSDtFQ3hDRSwwQmxDZWlELEVpQzJCbEQ7RUN2Q0c7SUFFRSwwQkFBcUMsRUFDdEM7O0FEc0NMO0VDNUNFLDBCbENrQjZCLEVpQzRCOUI7RUMzQ0c7SUFFRSwwQkFBcUMsRUFDdEM7O0FEMENMO0VDaERFLDBCbENtQjZCLEVpQytCOUI7RUMvQ0c7SUFFRSwwQkFBcUMsRUFDdEM7O0FEOENMO0VDcERFLDBCbENvQjZCLEVpQ2tDOUI7RUNuREc7SUFFRSwwQkFBcUMsRUFDdEM7O0FEa0RMO0VDeERFLDBCbENzQjZCLEVpQ29DOUI7RUN2REc7SUFFRSwwQkFBcUMsRUFDdEM7O0FEc0RMO0VDNURFLDBCbEN1QjZCLEVpQ3VDOUI7RUMzREc7SUFFRSwwQkFBcUMsRUFDdEM7O0FDSEw7RUFDRSxzQkFBcUI7RUFDckIsZ0JBQWU7RUFDZixpQkFBZ0I7RUFDaEIsZ0JuQ2tFc0Q7RW1DakV0RCxrQm5DaXlCZ0M7RW1DaHlCaEMsWW5Dc3hCZ0M7RW1DcnhCaEMsZW5DZ3lCNkI7RW1DL3hCN0IsdUJBQXNCO0VBQ3RCLG9CQUFtQjtFQUNuQixtQkFBa0I7RUFDbEIsMEJuQ0NpRDtFbUNBakQsb0JuQzR4QmdDLEVtQ3J2QmpDO0VBbkREO0lBZ0JJLGNBQWEsRUFDZDtFQUdEO0lBQ0UsbUJBQWtCO0lBQ2xCLFVBQVMsRUFDVjtFQUVEOztJQUVFLE9BQU07SUFDTixpQkFBZ0IsRUFDakI7RUFLRDs7SUFFRSxlbkNyQjJCO0ltQ3NCM0IsdUJuQyt2QjhCLEVtQzl2Qi9CO0VBRUQ7SUFDRSxhQUFZLEVBQ2I7RUFFRDtJQUNFLGtCQUFpQixFQUNsQjtFQUVEO0lBQ0UsaUJBQWdCLEVBQ2pCOztBQUlIO0VBR0ksWW5DcXVCOEI7RW1DcHVCOUIsc0JBQXFCO0VBQ3JCLGdCQUFlLEVBQ2hCOztBQzdESDtFQUNFLGtCcENnZ0JtQztFb0MvZm5DLHFCcEMrZm1DO0VvQzlmbkMsb0JwQzhmbUM7RW9DN2ZuQyxlcEM4ZnNDO0VvQzdmdEMsMEJwQ1NpRCxFb0NrQ2xEO0VBaEREOztJQVNJLGVwQzJmb0MsRW9DMWZyQztFQVZIO0lBYUksb0JBQXVDO0lBQ3ZDLGdCcEN1ZjBEO0lvQ3RmMUQsaUJBQWdCLEVBQ2pCO0VBaEJIO0lBbUJJLDBCQUE0QyxFQUM3QztFQUVEOztJQUVFLG1CcENxRzJCO0lvQ3BHM0IsbUJBQXVDO0lBQ3ZDLG9CQUF1QyxFQUN4QztFQTNCSDtJQThCSSxnQkFBZSxFQUNoQjtFQUVEO0lBakNGO01Ba0NJLGtCQUEwQztNQUMxQyxxQkFBMEMsRUFhN0M7TUExQkM7O1FBaUJJLG1CQUF1QztRQUN2QyxvQkFBdUMsRUFDeEM7TUF6Q0w7O1FBNkNNLGdCcEN5ZHdELEVvQ3hkekQsRUFBQTs7QUM3Q0w7RUFDRSxlQUFjO0VBQ2QsYXJDZ3dCK0I7RXFDL3ZCL0Isb0JyQ2dGb0U7RXFDL0VwRSxxQnJDNEVtQztFcUMzRW5DLDBCckN5QzZCO0VxQ3hDN0IsdUJyQ2d3QmdDO0VxQy92QmhDLG1CckNvSDZCO0VEd0Q3Qiw0Q3NDM0swQztFdEM2S2xDLG9Dc0M3S2tDLEVBZ0IzQztFQXhCRDs7SW5DR0UsZUFEbUM7SUFFbkMsZ0JBQWU7SUFDZixhQUFZO0ltQ1FWLGtCQUFpQjtJQUNqQixtQkFBa0IsRUFDbkI7RUFmSDtJQXFCSSxhckN3dkI2QjtJcUN2dkI3QixlckMwQjJCLEVxQ3pCNUI7O0FBSUg7OztFQUdFLHNCckNmNkIsRXFDZ0I5Qjs7QUM3QkQ7RUFDRSxjdENxb0JnQztFc0Nwb0JoQyxvQnRDK0VvRTtFc0M5RXBFLDhCQUE2QjtFQUM3QixtQnRDcUg2QixFc0M5RjlCO0VBM0JEO0lBUUksY0FBYTtJQUViLGVBQWMsRUFDZjtFQVhIO0lBZUksa0J0Q3luQjhCLEVzQ3huQi9CO0VBaEJIOztJQXFCSSxpQkFBZ0IsRUFDakI7RUF0Qkg7SUF5QkksZ0JBQWUsRUFDaEI7O0FBT0g7O0VBRUUsb0JBQW9DLEVBU3JDO0VBWEQ7O0lBTUksbUJBQWtCO0lBQ2xCLFVBQVM7SUFDVCxhQUFZO0lBQ1osZUFBYyxFQUNmOztBQU9IO0VDdkRFLDBCdkNnaEJzQztFdUMvZ0J0QyxzQnZDZ2hCNkU7RXVDL2dCN0UsZXZDNmdCc0MsRXNDdGR2QztFQ3JEQztJQUNFLDBCQUFxQyxFQUN0QztFQUNEO0lBQ0UsZUFBK0IsRUFDaEM7O0FEa0RIO0VDM0RFLDBCdkNvaEJzQztFdUNuaEJ0QyxzQnZDb2hCMEU7RXVDbmhCMUUsZXZDaWhCc0MsRXNDdGR2QztFQ3pEQztJQUNFLDBCQUFxQyxFQUN0QztFQUNEO0lBQ0UsZUFBK0IsRUFDaEM7O0FEc0RIO0VDL0RFLDBCdkN3aEJzQztFdUN2aEJ0QyxzQnZDd2hCNkU7RXVDdmhCN0UsZXZDcWhCc0MsRXNDdGR2QztFQzdEQztJQUNFLDBCQUFxQyxFQUN0QztFQUNEO0lBQ0UsZUFBK0IsRUFDaEM7O0FEMERIO0VDbkVFLDBCdkM0aEJzQztFdUMzaEJ0QyxzQnZDNGhCNEU7RXVDM2hCNUUsZXZDeWhCc0MsRXNDdGR2QztFQ2pFQztJQUNFLDBCQUFxQyxFQUN0QztFQUNEO0lBQ0UsZUFBK0IsRUFDaEM7O0FEaUVIO0VBQ0UsbUJBQWlCO0VBQ2pCLGNBQWEsRUFDZDs7QUV2RUQ7RUFDRTtJQUFRLDRCQUEyQixFQUFBO0VBQ25DO0lBQVEseUJBQXdCLEVBQUEsRUFBQTs7QUFJbEM7RUFDRTtJQUFRLDRCQUEyQixFQUFBO0VBQ25DO0lBQVEseUJBQXdCLEVBQUEsRUFBQTs7QUFRbEM7RUFDRSxpQkFBZ0I7RUFDaEIsYXhDOERvRTtFd0M3RHBFLG9CeEM2RG9FO0V3QzVEcEUsMEJ4QzJvQm1DO0V3QzFvQm5DLG1CeENtRzZCO0VENURyQiwrQ3lDdEMwQyxFQUNuRDs7QUFHRDtFQUNFLFlBQVc7RUFDWCxVQUFTO0VBQ1QsYUFBWTtFQUNaLGdCeENxQ3NEO0V3Q3BDdEQsa0J4Q2lEb0U7RXdDaERwRSxZeENpb0JnQztFd0Nob0JoQyxtQkFBa0I7RUFDbEIsMEJ4Q3RCNkI7RURnRHJCLCtDeUN6QjBDO0V6QzZJbEQsb0N5QzVJa0M7RXpDOEkxQiw0QnlDOUkwQixFQUNuQzs7QUFPRDs7RUNDRSw4TUFBcUo7RUFFckosc01BQTZJO0VEQTdJLDJCQUEwQixFQUMzQjs7QUFNRDs7RXpDNUNFLDJEeUM4QzBEO0V6QzVDbEQsbUR5QzRDa0QsRUFDM0Q7O0FBTUQ7RUVyRUUsMEIxQ21CNkIsRXdDb0Q5QjtFRXBFQztJRGdEQSw4TUFBcUo7SUFFckosc01BQTZJLEVDaEQ1STs7QUZvRUg7RUV6RUUsMEIxQ29CNkIsRXdDdUQ5QjtFRXhFQztJRGdEQSw4TUFBcUo7SUFFckosc01BQTZJLEVDaEQ1STs7QUZ3RUg7RUU3RUUsMEIxQ3NCNkIsRXdDeUQ5QjtFRTVFQztJRGdEQSw4TUFBcUo7SUFFckosc01BQTZJLEVDaEQ1STs7QUY0RUg7RUVqRkUsMEIxQ3VCNkIsRXdDNEQ5QjtFRWhGQztJRGdEQSw4TUFBcUo7SUFFckosc01BQTZJLEVDaEQ1STs7QUNSSDtFQUVFLGlCQUFnQixFQUtqQjtFQVBEO0lBS0ksY0FBYSxFQUNkOztBQUdIOztFQUVFLFFBQU87RUFDUCxpQkFBZ0IsRUFDakI7O0FBRUQ7RUFDRSxlQUFjLEVBQ2Y7O0FBRUQ7RUFDRSxlQUFjLEVBTWY7RUFQRDtJQUtJLGdCQUFlLEVBQ2hCOztBQUdIOztFQUVFLG1CQUFrQixFQUNuQjs7QUFFRDs7RUFFRSxvQkFBbUIsRUFDcEI7O0FBRUQ7OztFQUdFLG9CQUFtQjtFQUNuQixvQkFBbUIsRUFDcEI7O0FBRUQ7RUFDRSx1QkFBc0IsRUFDdkI7O0FBRUQ7RUFDRSx1QkFBc0IsRUFDdkI7O0FBR0Q7RUFDRSxjQUFhO0VBQ2IsbUJBQWtCLEVBQ25COztBQUtEO0VBQ0UsZ0JBQWU7RUFDZixpQkFBZ0IsRUFDakI7O0FDeEREO0VBRUUsb0JBQW1CO0VBQ25CLGdCQUFlLEVBQ2hCOztBQU9EO0VBQ0UsbUJBQWtCO0VBQ2xCLGVBQWM7RUFDZCxtQkFBa0I7RUFFbEIsb0JBQW1CO0VBQ25CLHVCNUNxcUJrQztFNENwcUJsQywwQjVDc3FCcUMsRTRDNXBCdEM7RUFqQkQ7SXBCakJFLDZCeEI4SDZCO0l3QjdINUIsNEJ4QjZINEIsRTRDakc1QjtFQVpIO0lBY0ksaUJBQWdCO0lwQnZCbEIsZ0N4QnNINkI7SXdCckg1QiwrQnhCcUg0QixFNEM3RjVCOztBQVNIOztFQUVFLFk1Q3dxQmtDLEU0QzNwQm5DO0VBZkQ7O0lBS0ksWTVDdXFCZ0MsRTRDdHFCakM7RUFOSDs7O0lBV0ksc0JBQXFCO0lBQ3JCLFk1QzhwQmdDO0k0QzdwQmhDLDBCNUM0b0JtQyxFNEMzb0JwQzs7QUFHSDtFQUNFLFlBQVc7RUFDWCxpQkFBZ0IsRUFDakI7O0FBRUQ7RUFLSSwwQjVDckQrQztFNENzRC9DLGU1Q3ZEK0M7RTRDd0QvQyxvQjVDd0x3QyxFNEMvS3pDO0VBaEJIO0lBV00sZUFBYyxFQUNmO0VBWkw7SUFjTSxlNUMvRDZDLEU0Q2dFOUM7O0FBZkw7RUFzQkksV0FBVTtFQUNWLFk1QzRDNEI7RTRDM0M1QiwwQjVDdEUyQjtFNEN1RTNCLHNCNUN2RTJCLEU0Q2tGNUI7RUFwQ0g7Ozs7Ozs7SUErQk0sZUFBYyxFQUNmO0VBaENMO0lBa0NNLGU1Q3ltQjZELEU0Q3htQjlEOztBQ25HSDtFQUNFLGU3QzhnQm9DO0U2QzdnQnBDLDBCN0M4Z0JvQyxFNkMzZ0JyQzs7QUFFRDs7RUFFRSxlN0NzZ0JvQyxFNkNwZnJDO0VBcEJEOztJQUtJLGVBQWMsRUFDZjtFQU5IOzs7SUFVSSxlN0M4ZmtDO0k2QzdmbEMsMEJBQXlDLEVBQzFDO0VBWkg7Ozs7SUFnQkksWUFBVztJQUNYLDBCN0N1ZmtDO0k2Q3RmbEMsc0I3Q3Nma0MsRTZDcmZuQzs7QUExQkg7RUFDRSxlN0NraEJvQztFNkNqaEJwQywwQjdDa2hCb0MsRTZDL2dCckM7O0FBRUQ7O0VBRUUsZTdDMGdCb0MsRTZDeGZyQztFQXBCRDs7SUFLSSxlQUFjLEVBQ2Y7RUFOSDs7O0lBVUksZTdDa2dCa0M7STZDamdCbEMsMEJBQXlDLEVBQzFDO0VBWkg7Ozs7SUFnQkksWUFBVztJQUNYLDBCN0MyZmtDO0k2QzFmbEMsc0I3QzBma0MsRTZDemZuQzs7QUExQkg7RUFDRSxlN0NzaEJvQztFNkNyaEJwQywwQjdDc2hCb0MsRTZDbmhCckM7O0FBRUQ7O0VBRUUsZTdDOGdCb0MsRTZDNWZyQztFQXBCRDs7SUFLSSxlQUFjLEVBQ2Y7RUFOSDs7O0lBVUksZTdDc2dCa0M7STZDcmdCbEMsMEJBQXlDLEVBQzFDO0VBWkg7Ozs7SUFnQkksWUFBVztJQUNYLDBCN0MrZmtDO0k2QzlmbEMsc0I3Qzhma0MsRTZDN2ZuQzs7QUExQkg7RUFDRSxlN0MwaEJvQztFNkN6aEJwQywwQjdDMGhCb0MsRTZDdmhCckM7O0FBRUQ7O0VBRUUsZTdDa2hCb0MsRTZDaGdCckM7RUFwQkQ7O0lBS0ksZUFBYyxFQUNmO0VBTkg7OztJQVVJLGU3QzBnQmtDO0k2Q3pnQmxDLDBCQUF5QyxFQUMxQztFQVpIOzs7O0lBZ0JJLFlBQVc7SUFDWCwwQjdDbWdCa0M7STZDbGdCbEMsc0I3Q2tnQmtDLEU2Q2pnQm5DOztBRDZGTDtFQUNFLGNBQWE7RUFDYixtQkFBa0IsRUFDbkI7O0FBQ0Q7RUFDRSxpQkFBZ0I7RUFDaEIsaUJBQWdCLEVBQ2pCOztBRTNIRDtFQUNFLG9COUNrRm9FO0U4Q2pGcEUsdUI5Q3d0QmdDO0U4Q3Z0QmhDLDhCQUE2QjtFQUM3QixtQjlDdUg2QjtFRDVEckIsMEMrQzFEcUMsRUFDOUM7O0FBR0Q7RUFDRSxjOUNpdEJnQyxFOEMvc0JqQztFeENMQztJQUVFLGFBQVk7SUFDWixlQUFjLEVBQ2Y7RUFDRDtJQUNFLFlBQVcsRUFDWjs7QXdDQ0g7RUFDRSxtQjlDNHNCcUM7RThDM3NCckMscUNBQW9DO0V0QnBCcEMsNkJzQnFCcUQ7RXRCcEJwRCw0QnNCb0JvRCxFQUt0RDtFQVJEO0lBTUksZUFBYyxFQUNmOztBQUlIO0VBQ0UsY0FBYTtFQUNiLGlCQUFnQjtFQUNoQixnQkFBMEM7RUFDMUMsZUFBYyxFQVNmO0VBYkQ7Ozs7O0lBV0ksZUFBYyxFQUNmOztBQUlIO0VBQ0UsbUI5Q2lyQnFDO0U4Q2hyQnJDLDBCOUNzckJtQztFOENyckJuQyw4QjlDUjRFO0V3QmhDNUUsZ0NzQnlDd0Q7RXRCeEN2RCwrQnNCd0N1RCxFQUN6RDs7QUFRRDs7RUFHSSxpQkFBZ0IsRUFzQmpCO0VBekJIOztJQU1NLG9CQUFtQjtJQUNuQixpQkFBZ0IsRUFDakI7RUFSTDs7SUFhUSxjQUFhO0l0QnZFbkIsNkJzQndFMkQ7SXRCdkUxRCw0QnNCdUUwRCxFQUN0RDtFQWZQOztJQXFCUSxpQkFBZ0I7SXRCdkV0QixnQ3NCd0U4RDtJdEJ2RTdELCtCc0J1RTZELEVBQ3pEOztBQXZCUDtFdEIxREUsMkJzQnNGZ0M7RXRCckYvQiwwQnNCcUYrQixFQUM3Qjs7QUFJTDtFQUVJLG9CQUFtQixFQUNwQjs7QUFFSDtFQUNFLG9CQUFtQixFQUNwQjs7QUFPRDs7O0VBSUksaUJBQWdCLEVBTWpCO0VBVkg7OztJQU9NLG1COUM4bUI0QjtJOEM3bUI1QixvQjlDNm1CNEIsRThDNW1CN0I7O0FBVEw7O0V0QnpHRSw2QnNCdUh1RDtFdEJ0SHRELDRCc0JzSHNELEVBa0J0RDtFQWhDSDs7OztJQW1CUSw0QkFBa0Q7SUFDbEQsNkJBQW1ELEVBVXBEO0lBOUJQOzs7Ozs7OztNQXdCVSw0QkFBa0QsRUFDbkQ7SUF6QlQ7Ozs7Ozs7O01BNEJVLDZCQUFtRCxFQUNwRDs7QUE3QlQ7O0V0QmpHRSxnQ3NCcUkwRDtFdEJwSXpELCtCc0JvSXlELEVBa0J6RDtFQXRESDs7OztJQXlDUSwrQkFBcUQ7SUFDckQsZ0NBQXNELEVBVXZEO0lBcERQOzs7Ozs7OztNQThDVSwrQkFBcUQsRUFDdEQ7SUEvQ1Q7Ozs7Ozs7O01Ba0RVLGdDQUFzRCxFQUN2RDs7QUFuRFQ7Ozs7RUEyREksMkI5Q0xnQyxFOENNakM7O0FBNURIOztFQStESSxjQUFhLEVBQ2Q7O0FBaEVIOztFQW1FSSxVQUFTLEVBaUNWO0VBcEdIOzs7Ozs7Ozs7Ozs7SUEwRVUsZUFBYyxFQUNmO0VBM0VUOzs7Ozs7Ozs7Ozs7SUE4RVUsZ0JBQWUsRUFDaEI7RUEvRVQ7Ozs7Ozs7O0lBdUZVLGlCQUFnQixFQUNqQjtFQXhGVDs7Ozs7Ozs7SUFnR1UsaUJBQWdCLEVBQ2pCOztBQWpHVDtFQXNHSSxVQUFTO0VBQ1QsaUJBQWdCLEVBQ2pCOztBQVNIO0VBRUUsaUJBQWdCLEVBMkJqQjtFQTdCRDtJQU1JLGlCQUFnQjtJQUNoQixtQjlDbkcyQixFOEN3RzVCO0lBWkg7TUFVTSxnQkFBZSxFQUNoQjtFQVhMO0lBZUksaUJBQWdCLEVBTWpCO0lBckJIOztNQW1CTSw4QjlDck13RSxFOENzTXpFO0VBcEJMO0lBd0JJLGNBQWEsRUFJZDtJQTVCSDtNQTBCTSxpQzlDNU13RSxFOEM2TXpFOztBQU1MO0VDM1BFLHNCL0N3QzRFLEU4Q3FON0U7RUMzUEM7SUFDRSxlL0NnRDJCO0krQy9DM0IsMEIvQ21DbUM7SStDbENuQyxzQi9DbUMwRSxFK0MxQjNFO0lBUEM7TUFDRSwwQi9DZ0N3RSxFK0MvQnpFO0lBQ0Q7TUFDRSxlL0M0QmlDO00rQzNCakMsMEIvQ3VDeUIsRStDdEMxQjtFQUdEO0lBQ0UsNkIvQ3VCd0UsRStDdEJ6RTs7QUQ0T0w7RUM5UEUsc0IvQ2tCNkIsRThDOE85QjtFQzlQQztJQUNFLFkvQ3d1QjhCO0krQ3Z1QjlCLDBCL0NjMkI7SStDYjNCLHNCL0NhMkIsRStDSjVCO0lBUEM7TUFDRSwwQi9DVXlCLEUrQ1QxQjtJQUNEO01BQ0UsZS9DT3lCO00rQ056Qix1Qi9DK3RCNEIsRStDOXRCN0I7RUFHRDtJQUNFLDZCL0NDeUIsRStDQTFCOztBRCtPTDtFQ2pRRSxzQi9DaWhCNkUsRThDOVE5RTtFQ2pRQztJQUNFLGUvQzRnQm9DO0krQzNnQnBDLDBCL0M0Z0JvQztJK0MzZ0JwQyxzQi9DNGdCMkUsRStDbmdCNUU7SUFQQztNQUNFLDBCL0N5Z0J5RSxFK0N4Z0IxRTtJQUNEO01BQ0UsZS9DcWdCa0M7TStDcGdCbEMsMEIvQ21nQmtDLEUrQ2xnQm5DO0VBR0Q7SUFDRSw2Qi9DZ2dCeUUsRStDL2YxRTs7QURrUEw7RUNwUUUsc0IvQ3FoQjBFLEU4Qy9RM0U7RUNwUUM7SUFDRSxlL0NnaEJvQztJK0MvZ0JwQywwQi9DZ2hCb0M7SStDL2dCcEMsc0IvQ2doQndFLEUrQ3ZnQnpFO0lBUEM7TUFDRSwwQi9DNmdCc0UsRStDNWdCdkU7SUFDRDtNQUNFLGUvQ3lnQmtDO00rQ3hnQmxDLDBCL0N1Z0JrQyxFK0N0Z0JuQztFQUdEO0lBQ0UsNkIvQ29nQnNFLEUrQ25nQnZFOztBRHFQTDtFQ3ZRRSxzQi9DeWhCNkUsRThDaFI5RTtFQ3ZRQztJQUNFLGUvQ29oQm9DO0krQ25oQnBDLDBCL0NvaEJvQztJK0NuaEJwQyxzQi9Db2hCMkUsRStDM2dCNUU7SUFQQztNQUNFLDBCL0NpaEJ5RSxFK0NoaEIxRTtJQUNEO01BQ0UsZS9DNmdCa0M7TStDNWdCbEMsMEIvQzJnQmtDLEUrQzFnQm5DO0VBR0Q7SUFDRSw2Qi9Dd2dCeUUsRStDdmdCMUU7O0FEd1BMO0VDMVFFLHNCL0M2aEI0RSxFOENqUjdFO0VDMVFDO0lBQ0UsZS9Dd2hCb0M7SStDdmhCcEMsMEIvQ3doQm9DO0krQ3ZoQnBDLHNCL0N3aEIwRSxFK0MvZ0IzRTtJQVBDO01BQ0UsMEIvQ3FoQndFLEUrQ3BoQnpFO0lBQ0Q7TUFDRSxlL0NpaEJrQztNK0NoaEJsQywwQi9DK2dCa0MsRStDOWdCbkM7RUFHRDtJQUNFLDZCL0M0Z0J3RSxFK0MzZ0J6RTs7QUQ0UEw7RUFDRSxpQkFBZ0IsRUFDakI7O0FBRUQ7RUFDRSxrQkFBZ0I7RUFDaEIsbUJBQWlCO0VBQ2pCLG9CQUFrQixFQUNuQjs7QUVyUkQ7RUFDRSxtQkFBa0I7RUFDbEIsZUFBYztFQUNkLFVBQVM7RUFDVCxXQUFVO0VBQ1YsaUJBQWdCLEVBZWpCO0VBcEJEOzs7OztJQVlJLG1CQUFrQjtJQUNsQixPQUFNO0lBQ04sUUFBTztJQUNQLFVBQVM7SUFDVCxhQUFZO0lBQ1osWUFBVztJQUNYLFVBQVMsRUFDVjs7QUFJSDtFQUNFLHVCQUFzQixFQUN2Qjs7QUFHRDtFQUNFLG9CQUFtQixFQUNwQjs7QUM1QkQ7RUFDRSxpQkFBZ0I7RUFDaEIsY0FBYTtFQUNiLG9CQUFtQjtFQUNuQiwwQmpEZ3hCbUM7RWlEL3dCbkMsMEJqRGd4QmdEO0VpRC93QmhELG1CakRxSDZCO0VENURyQixnRGtEeEQyQyxFQUtwRDtFQVpEO0lBU0ksbUJBQWtCO0lBQ2xCLGtDQUE2QixFQUM5Qjs7QUFJSDtFQUNFLGNBQWE7RUFDYixtQmpEMkc2QixFaUQxRzlCOztBQUNEO0VBQ0UsYUFBWTtFQUNaLG1CakR3RzZCLEVpRHZHOUI7O0FDdkJEO0VBQ0UsYUFBWTtFQUNaLGdCQUFrQztFQUNsQyxrQmxEODBCZ0M7RWtENzBCaEMsZUFBYztFQUNkLFlsRDYwQmdDO0VrRDUwQmhDLDBCbEQ2MEJ3QztFa0JyMUJ4QyxhZ0NTbUI7RWhDTm5CLDBCQUFrQyxFZ0NpQm5DO0VBbEJEO0lBV0ksWWxEdTBCOEI7SWtEdDBCOUIsc0JBQXFCO0lBQ3JCLGdCQUFlO0loQ2ZqQixhZ0NnQnFCO0loQ2JyQiwwQkFBa0MsRWdDY2pDOztBQVNIO0VBQ0UsV0FBVTtFQUNWLGdCQUFlO0VBQ2Ysd0JBQXVCO0VBQ3ZCLFVBQVM7RUFDVCx5QkFBd0IsRUFDekI7O0FDekJEO0VBQ0UsaUJBQWdCLEVBQ2pCOztBQUdEO0VBQ0UsY0FBYTtFQUNiLGlCQUFnQjtFQUNoQixnQkFBZTtFQUNmLE9BQU07RUFDTixTQUFRO0VBQ1IsVUFBUztFQUNULFFBQU87RUFDUCxjbkQ4UjZCO0VtRDdSN0Isa0NBQWlDO0VBSWpDLFdBQVUsRUFRWDtFQXJCRDtJcEQwSEUsc0NBQW9DO0lBRzVCLDhCQUE0QjtJQWtFcEMsb0RvRDdLNkM7SXBEZ0xyQyw0Q29EaExxQztJcERnTHJDLG9Db0RoTHFDO0lwRGdMckMscUVvRGhMcUMsRUFDNUM7RUFuQkg7SXBEMEhFLG1DQUFvQztJQUc1QiwyQkFBNEIsRW9EekdZOztBQUVsRDtFQUNFLG1CQUFrQjtFQUNsQixpQkFBZ0IsRUFDakI7O0FBR0Q7RUFDRSxtQkFBa0I7RUFDbEIsWUFBVztFQUNYLGFBQVksRUFDYjs7QUFHRDtFQUNFLG1CQUFrQjtFQUNsQix1Qm5Ea2tCaUQ7RW1EamtCakQsdUJuRHFrQmlEO0VtRHBrQmpELHFDbkRra0IyRDtFbURqa0IzRCxtQm5EMkU2QjtFRDdEckIseUNvRGJvQztFQUM1Qyw2QkFBNEI7RUFFNUIsV0FBVSxFQUNYOztBQUdEO0VBQ0UsZ0JBQWU7RUFDZixPQUFNO0VBQ04sU0FBUTtFQUNSLFVBQVM7RUFDVCxRQUFPO0VBQ1AsY25EK082QjtFbUQ5TzdCLHVCbkR1akJnQyxFbURuakJqQztFQVhEO0lqQzVERSxXaUNxRTJCO0lqQ2xFM0IseUJBQWtDLEVpQ2tFRjtFQVRsQztJakM1REUsYWxCNG5COEI7SWtCem5COUIsMEJBQWtDLEVpQ21Fa0I7O0FBS3REO0VBQ0UsY25Ea2lCZ0M7RW1EamlCaEMsaUNuRGlqQm1DLEVtRC9pQnBDO0U3Q3JFQztJQUVFLGFBQVk7SUFDWixlQUFjLEVBQ2Y7RUFDRDtJQUNFLFlBQVcsRUFDWjs7QTZDZ0VIO0VBQ0UsaUJBQWdCLEVBQ2pCOztBQUdEO0VBQ0UsVUFBUztFQUNULHFCbkRMbUMsRW1ETXBDOztBQUlEO0VBQ0UsbUJBQWtCO0VBQ2xCLGNuRDRnQmdDLEVtRDNnQmpDOztBQUdEO0VBQ0UsY25EdWdCZ0M7RW1EdGdCaEMsa0JBQWlCO0VBQ2pCLDhCbkR3aEJtQyxFbUR4Z0JwQztFN0M1R0M7SUFFRSxhQUFZO0lBQ1osZUFBYyxFQUNmO0VBQ0Q7SUFDRSxZQUFXLEVBQ1o7RTZDa0ZIO0lBUUksaUJBQWdCO0lBQ2hCLGlCQUFnQixFQUNqQjtFQVZIO0lBYUksa0JBQWlCLEVBQ2xCO0VBZEg7SUFpQkksZUFBYyxFQUNmOztBQUlIO0VBQ0UsbUJBQWtCO0VBQ2xCLGFBQVk7RUFDWixZQUFXO0VBQ1gsYUFBWTtFQUNaLGlCQUFnQixFQUNqQjs7QUFHRDtFQTFGQTtJQTZGSSxhbkQ4ZitCO0ltRDdmL0Isa0JBQWlCLEVBQ2xCO0VBeEZIO0lwRG1CVSwwQ29EdUV1QyxFQUM5QztFQUdEO0lBQVksYW5EdWZxQixFbUR2ZkQsRUFBQTs7QUFHbEM7RUFDRTtJQUFZLGFuRGlmcUIsRW1EamZELEVBQUE7O0FDOUlsQztFQUNFLG1CQUFrQjtFQUNsQixjcEQwUzZCO0VvRHpTN0IsZUFBYztFQ1JkLHlEckRtRW1FO0VxRGpFbkUsbUJBQWtCO0VBQ2xCLG9CQUFtQjtFQUNuQix1QkFBc0I7RUFDdEIsaUJBQWdCO0VBQ2hCLHFCckQrRW1DO0VxRDlFbkMsaUJBQWdCO0VBQ2hCLGtCQUFpQjtFQUNqQixzQkFBcUI7RUFDckIsa0JBQWlCO0VBQ2pCLHFCQUFvQjtFQUNwQixvQkFBbUI7RUFDbkIsbUJBQWtCO0VBQ2xCLHFCQUFvQjtFQUNwQixrQkFBaUI7RURIakIsZ0JwRCtEc0Q7RWtCekV0RCxXa0NZa0I7RWxDVGxCLHlCQUFrQyxFa0NnQm5DO0VBaEJEO0lsQ0hFLGFsQjBpQjhCO0lrQnZpQjlCLDBCQUFrQyxFa0NXZTtFQVhuRDtJQVlhLGlCQUFpQjtJQUFFLGVBQStCLEVBQUk7RUFabkU7SUFhYSxpQkFBaUI7SUFBRSxlcEQ2aEJDLEVvRDdoQmtDO0VBYm5FO0lBY2EsZ0JBQWlCO0lBQUUsZUFBK0IsRUFBSTtFQWRuRTtJQWVhLGtCQUFpQjtJQUFFLGVwRDJoQkMsRW9EM2hCa0M7O0FBSW5FO0VBQ0UsaUJwRDhnQmlDO0VvRDdnQmpDLGlCQUFnQjtFQUNoQixZcEQ4Z0JnQztFb0Q3Z0JoQyxtQkFBa0I7RUFDbEIsdUJwRDhnQmdDO0VvRDdnQmhDLG1CcERrRzZCLEVvRGpHOUI7O0FBR0Q7RUFDRSxtQkFBa0I7RUFDbEIsU0FBUTtFQUNSLFVBQVM7RUFDVCwwQkFBeUI7RUFDekIsb0JBQW1CLEVBQ3BCOztBQUVEO0VBRUksVUFBUztFQUNULFVBQVM7RUFDVCxrQnBEaWdCNkI7RW9EaGdCN0Isd0JBQXlEO0VBQ3pELHVCcEQyZjhCLEVvRDFmL0I7O0FBUEg7RUFTSSxVQUFTO0VBQ1QsV3BEMmY2QjtFb0QxZjdCLG9CcEQwZjZCO0VvRHpmN0Isd0JBQXlEO0VBQ3pELHVCcERvZjhCLEVvRG5mL0I7O0FBZEg7RUFnQkksVUFBUztFQUNULFVwRG9mNkI7RW9EbmY3QixvQnBEbWY2QjtFb0RsZjdCLHdCQUF5RDtFQUN6RCx1QnBENmU4QixFb0Q1ZS9COztBQXJCSDtFQXVCSSxTQUFRO0VBQ1IsUUFBTztFQUNQLGlCcEQ0ZTZCO0VvRDNlN0IsNEJBQThFO0VBQzlFLHlCcERzZThCLEVvRHJlL0I7O0FBNUJIO0VBOEJJLFNBQVE7RUFDUixTQUFRO0VBQ1IsaUJwRHFlNkI7RW9EcGU3Qiw0QnBEb2U2QjtFb0RuZTdCLHdCcEQrZDhCLEVvRDlkL0I7O0FBbkNIO0VBcUNJLE9BQU07RUFDTixVQUFTO0VBQ1Qsa0JwRDhkNkI7RW9EN2Q3Qix3QnBENmQ2QjtFb0Q1ZDdCLDBCcER3ZDhCLEVvRHZkL0I7O0FBMUNIO0VBNENJLE9BQU07RUFDTixXcER3ZDZCO0VvRHZkN0IsaUJwRHVkNkI7RW9EdGQ3Qix3QnBEc2Q2QjtFb0RyZDdCLDBCcERpZDhCLEVvRGhkL0I7O0FBakRIO0VBbURJLE9BQU07RUFDTixVcERpZDZCO0VvRGhkN0IsaUJwRGdkNkI7RW9EL2M3Qix3QnBEK2M2QjtFb0Q5YzdCLDBCcEQwYzhCLEVvRHpjL0I7O0FFOUZIO0VBQ0UsbUJBQWtCO0VBQ2xCLE9BQU07RUFDTixRQUFPO0VBQ1AsY3REd1M2QjtFc0R2UzdCLGNBQWE7RUFDYixpQnREaWpCeUM7RXNEaGpCekMsYUFBWTtFRFhaLHlEckRtRW1FO0VxRGpFbkUsbUJBQWtCO0VBQ2xCLG9CQUFtQjtFQUNuQix1QkFBc0I7RUFDdEIsaUJBQWdCO0VBQ2hCLHFCckQrRW1DO0VxRDlFbkMsaUJBQWdCO0VBQ2hCLGtCQUFpQjtFQUNqQixzQkFBcUI7RUFDckIsa0JBQWlCO0VBQ2pCLHFCQUFvQjtFQUNwQixvQkFBbUI7RUFDbkIsbUJBQWtCO0VBQ2xCLHFCQUFvQjtFQUNwQixrQkFBaUI7RUNBakIsZ0J0RDBENEI7RXNEeEQ1QiwwQnREbUI2QjtFc0RsQjdCLDZCQUE0QjtFQUM1QiwwQnREaUI2QjtFc0RoQjdCLDBCdERnQjZCO0VzRGY3QixtQnRENEc2QjtFRDdEckIsMEN1RDlDcUMsRUFPOUM7RUF6QkQ7SUFxQmMsa0J0RDRpQjRCLEVzRDVpQlM7RUFyQm5EO0lBc0JjLGtCdEQyaUI0QixFc0QzaUJTO0VBdEJuRDtJQXVCYyxpQnREMGlCNEIsRXNEMWlCUTtFQXZCbEQ7SUF3QmMsbUJ0RHlpQjRCLEVzRHppQlU7O0FBR3BEO0VBQ0UsVUFBUztFQUNULGtCQUFpQjtFQUNqQixnQnREdUM0QjtFc0R0QzVCLDBCdERDNkI7RXNEQTdCLGlDQUFzRDtFQUN0RCwyQkFBd0UsRUFDekU7O0FBRUQ7RUFDRSxrQkFBaUIsRUFDbEI7O0FBTUQ7RUFHSSxtQkFBa0I7RUFDbEIsZUFBYztFQUNkLFNBQVE7RUFDUixVQUFTO0VBQ1QsMEJBQXlCO0VBQ3pCLG9CQUFtQixFQUNwQjs7QUFFSDtFQUNFLG1CdEQ4Z0I4RCxFc0Q3Z0IvRDs7QUFDRDtFQUNFLG1CdERzZ0J3QztFc0RyZ0J4QyxZQUFXLEVBQ1o7O0FBRUQ7RUFFSSxVQUFTO0VBQ1QsbUJ0RG9nQjREO0VzRG5nQjVELHVCQUFzQjtFQUN0QiwwQnREcEMyQjtFc0RxQzNCLDBCdERyQzJCO0VzRHNDM0IsY3REZ2dCNEQsRXNEeGY3RDtFQWZIO0lBU00sYUFBWTtJQUNaLFlBQVc7SUFDWCxtQnREdWZvQztJc0R0ZnBDLHVCQUFzQjtJQUN0QiwwQnRENUN5QixFc0Q2QzFCOztBQWRMO0VBaUJJLFNBQVE7RUFDUixZdERxZjREO0VzRHBmNUQsa0J0RG9mNEQ7RXNEbmY1RCxxQkFBb0I7RUFDcEIsNEJ0RHBEMkI7RXNEcUQzQiw0QnREckQyQixFc0Q2RDVCO0VBOUJIO0lBd0JNLGFBQVk7SUFDWixVQUFTO0lBQ1QsY3REd2VvQztJc0R2ZXBDLHFCQUFvQjtJQUNwQiw0QnREM0R5QixFc0Q0RDFCOztBQTdCTDtFQWdDSSxVQUFTO0VBQ1QsbUJ0RHNlNEQ7RXNEcmU1RCxvQkFBbUI7RUFDbkIsNkJ0RGxFMkI7RXNEbUUzQiw2QnREbkUyQjtFc0RvRTNCLFd0RGtlNEQsRXNEMWQ3RDtFQTdDSDtJQXVDTSxhQUFZO0lBQ1osU0FBUTtJQUNSLG1CdER5ZG9DO0lzRHhkcEMsb0JBQW1CO0lBQ25CLDZCdEQxRXlCLEVzRDJFMUI7O0FBNUNMO0VBZ0RJLFNBQVE7RUFDUixhdERzZDREO0VzRHJkNUQsa0J0RHFkNEQ7RXNEcGQ1RCxzQkFBcUI7RUFDckIsMkJ0RG5GMkI7RXNEb0YzQiwyQnREcEYyQixFc0Q0RjVCO0VBN0RIO0lBdURNLGFBQVk7SUFDWixXQUFVO0lBQ1Ysc0JBQXFCO0lBQ3JCLDJCdER6RnlCO0lzRDBGekIsY3REdWNvQyxFc0R0Y3JDOztBQzFITDtFQUNFLG1CQUFrQixFQUNuQjs7QUFFRDtFQUNFLG1CQUFrQjtFQUNsQixpQkFBZ0I7RUFDaEIsWUFBVyxFQTBFWjtFQTdFRDtJQU1JLGNBQWE7SUFDYixtQkFBa0I7SXhEd0twQiwwQ3dEdkswQztJeER5S2xDLGtDd0R6S2tDLEVBZ0N6QztJQXhDSDs7TXJEREUsZUFEbUM7TUFFbkMsZ0JBQWU7TUFDZixhQUFZO01xRGFSLGVBQWMsRUFDZjtJQUdEO01BbEJKO1F4RG9NRSx1RHdEakxrRDtReERvTDFDLCtDd0RwTDBDO1F4RG9MMUMsdUN3RHBMMEM7UXhEb0wxQywyRXdEcEwwQztReEQ0QmxELG9Dd0QzQnVDO1F4RDZCL0IsNEJ3RDdCK0I7UXhEdUl2Qyw0QndEdEkrQjtReER3SXZCLG9Cd0R4SXVCLEVBbUI5QjtRQXhDSDtVeERxSUUsMkNBQTBDO1VBQ2xDLG1DQUFrQztVd0Q1R3BDLFFBQU8sRUFDUjtRQTNCUDtVeERxSUUsNENBQTBDO1VBQ2xDLG9DQUFrQztVd0R2R3BDLFFBQU8sRUFDUjtRQWhDUDtVeERxSUUsd0NBQTBDO1VBQ2xDLGdDQUFrQztVd0RqR3BDLFFBQU8sRUFDUixFQUFBO0VBdENQOzs7SUE2Q0ksZUFBYyxFQUNmO0VBOUNIO0lBaURJLFFBQU8sRUFDUjtFQWxESDs7SUFzREksbUJBQWtCO0lBQ2xCLE9BQU07SUFDTixZQUFXLEVBQ1o7RUF6REg7SUE0REksV0FBVSxFQUNYO0VBN0RIO0lBK0RJLFlBQVcsRUFDWjtFQWhFSDs7SUFtRUksUUFBTyxFQUNSO0VBcEVIO0lBdUVJLFlBQVcsRUFDWjtFQXhFSDtJQTBFSSxXQUFVLEVBQ1g7O0FBT0g7RUFDRSxtQkFBa0I7RUFDbEIsT0FBTTtFQUNOLFFBQU87RUFDUCxVQUFTO0VBQ1QsV3ZEdXVCK0M7RWtCcjBCL0MsYWxCczBCOEM7RWtCbjBCOUMsMEJBQWtDO0VxQzZGbEMsZ0J2RHV1QmdEO0V1RHR1QmhELFl2RG11QmdEO0V1RGx1QmhELG1CQUFrQjtFQUNsQiwwQ3ZEK3RCb0U7RXVEOXRCcEUsbUNBQWtDLEVBK0RuQztFQTFFRDtJZG5GRSxtR0FBcUc7SUFFckcsK0ZBQWlHO0lBQ2pHLDRCQUEyQjtJQUMzQix1SEFBd0osRWNpR3ZKO0VBbEJIO0lBb0JJLFdBQVU7SUFDVixTQUFRO0lkeEdWLG1HQUFxRztJQUVyRywrRkFBaUc7SUFDakcsNEJBQTJCO0lBQzNCLHVIQUF3SixFY3NHdko7RUF2Qkg7SUE0QkksV0FBVTtJQUNWLFl2RDhzQjhDO0l1RDdzQjlDLHNCQUFxQjtJckN2SHZCLGFxQ3dIcUI7SXJDckhyQiwwQkFBa0MsRXFDc0hqQztFQWhDSDs7OztJQXVDSSxtQkFBa0I7SUFDbEIsU0FBUTtJQUNSLGtCQUFpQjtJQUNqQixXQUFVO0lBQ1Ysc0JBQXFCLEVBQ3RCO0VBNUNIOztJQStDSSxVQUFTO0lBQ1QsbUJBQWtCLEVBQ25CO0VBakRIOztJQW9ESSxXQUFVO0lBQ1Ysb0JBQW1CLEVBQ3BCO0VBdERIOztJQXlESSxZQUFZO0lBQ1osYUFBWTtJQUNaLGVBQWM7SUFDZCxtQkFBa0IsRUFDbkI7RUE3REg7SUFrRU0saUJBQWdCLEVBQ2pCO0VBbkVMO0lBdUVNLGlCQUFnQixFQUNqQjs7QUFTTDtFQUNFLG1CQUFrQjtFQUNsQixhQUFZO0VBQ1osVUFBUztFQUNULFlBQVc7RUFDWCxXQUFVO0VBQ1Ysa0JBQWlCO0VBQ2pCLGdCQUFlO0VBQ2YsaUJBQWdCO0VBQ2hCLG1CQUFrQixFQThCbkI7RUF2Q0Q7SUFZSSxzQkFBcUI7SUFDckIsWUFBWTtJQUNaLGFBQVk7SUFDWixZQUFXO0lBQ1gsb0JBQW1CO0lBQ25CLHVCdkQrb0I4QztJdUQ5b0I5QyxvQkFBbUI7SUFDbkIsZ0JBQWU7SUFXZiwwQkFBeUI7SUFDekIsbUNBQStCLEVBQ2hDO0VBaENIO0lBa0NJLFVBQVM7SUFDVCxZQUFZO0lBQ1osYUFBWTtJQUNaLHVCdkQwbkI4QyxFdUR6bkIvQzs7QUFNSDtFQUNFLG1CQUFrQjtFQUNsQixVQUFTO0VBQ1QsV0FBVTtFQUNWLGFBQVk7RUFDWixZQUFXO0VBQ1gsa0JBQWlCO0VBQ2pCLHFCQUFvQjtFQUNwQixZdkQ4bUJnRDtFdUQ3bUJoRCxtQkFBa0I7RUFDbEIsMEN2RGttQm9FLEV1RDlsQnJFO0VBZEQ7SUFZSSxrQkFBaUIsRUFDbEI7O0FBS0g7RUFHRTs7OztJQUtJLFlBQTBDO0lBQzFDLGFBQTJDO0lBQzNDLGtCQUE4QztJQUM5QyxnQkFBOEMsRUFDL0M7RUFUSDs7SUFZSSxtQkFBK0MsRUFDaEQ7RUFiSDs7SUFnQkksb0JBQWdELEVBQ2pEO0VBdENMO0lBMkNJLFVBQVM7SUFDVCxXQUFVO0lBQ1YscUJBQW9CLEVBQ3JCO0VBMUZIO0lBOEZJLGFBQVksRUFDYixFQUFBOztBakQvUEQ7RUFFRSxhQUFZO0VBQ1osZUFBYyxFQUNmOztBQUNEO0VBQ0UsWUFBVyxFQUNaOztBa0RUSDtFQ1JFLGVBQWM7RUFDZCxrQkFBaUI7RUFDakIsbUJBQWtCLEVEUW5COztBQUNEO0VBQ0Usd0JBQXVCLEVBQ3hCOztBQUNEO0VBQ0UsdUJBQXNCLEVBQ3ZCOztBQU9EO0VBQ0UseUJBQXdCLEVBQ3pCOztBQUNEO0VBQ0UsMEJBQXlCLEVBQzFCOztBQUNEO0VBQ0UsbUJBQWtCLEVBQ25COztBQUNEO0VFekJFLFlBQVc7RUFDWCxtQkFBa0I7RUFDbEIsa0JBQWlCO0VBQ2pCLDhCQUE2QjtFQUM3QixVQUFTLEVGdUJWOztBQU9EO0VBQ0UseUJBQXdCLEVBQ3pCOztBQU1EO0VBQ0UsZ0JBQWUsRUFDaEI7O0FHakNDO0VBQ0Usb0JBQW1CLEVBQUE7O0FDTHJCO0VBQ0UseUJBQXdCLEVBQ3pCOztBQUZEO0VBQ0UseUJBQXdCLEVBQ3pCOztBQUZEO0VBQ0UseUJBQXdCLEVBQ3pCOztBQUZEO0VBQ0UseUJBQXdCLEVBQ3pCOztBRGdCSDs7Ozs7Ozs7Ozs7O0VBWUUseUJBQXdCLEVBQ3pCOztBQUVEO0VDakNFO0lBVkUsMEJBQXlCLEVBQzFCO0VBQ0Q7SUFBbUIsMEJBQXlCLEVBQUk7RUFDaEQ7SUFBbUIsOEJBQTZCLEVBQUk7RUFDcEQ7O0lBQ21CLCtCQUE4QixFQUFJLEVBQUE7O0FEMENyRDtFQURGO0lBRUksMEJBQXlCLEVBRTVCLEVBQUE7O0FBRUM7RUFERjtJQUVJLDJCQUEwQixFQUU3QixFQUFBOztBQUVDO0VBREY7SUFFSSxpQ0FBZ0MsRUFFbkMsRUFBQTs7QUFFRDtFQ3BERTtJQVZFLDBCQUF5QixFQUMxQjtFQUNEO0lBQW1CLDBCQUF5QixFQUFJO0VBQ2hEO0lBQW1CLDhCQUE2QixFQUFJO0VBQ3BEOztJQUNtQiwrQkFBOEIsRUFBSSxFQUFBOztBRDZEckQ7RUFERjtJQUVJLDBCQUF5QixFQUU1QixFQUFBOztBQUVDO0VBREY7SUFFSSwyQkFBMEIsRUFFN0IsRUFBQTs7QUFFQztFQURGO0lBRUksaUNBQWdDLEVBRW5DLEVBQUE7O0FBRUQ7RUN2RUU7SUFWRSwwQkFBeUIsRUFDMUI7RUFDRDtJQUFtQiwwQkFBeUIsRUFBSTtFQUNoRDtJQUFtQiw4QkFBNkIsRUFBSTtFQUNwRDs7SUFDbUIsK0JBQThCLEVBQUksRUFBQTs7QURnRnJEO0VBREY7SUFFSSwwQkFBeUIsRUFFNUIsRUFBQTs7QUFFQztFQURGO0lBRUksMkJBQTBCLEVBRTdCLEVBQUE7O0FBRUM7RUFERjtJQUVJLGlDQUFnQyxFQUVuQyxFQUFBOztBQUVEO0VDMUZFO0lBVkUsMEJBQXlCLEVBQzFCO0VBQ0Q7SUFBbUIsMEJBQXlCLEVBQUk7RUFDaEQ7SUFBbUIsOEJBQTZCLEVBQUk7RUFDcEQ7O0lBQ21CLCtCQUE4QixFQUFJLEVBQUE7O0FEbUdyRDtFQURGO0lBRUksMEJBQXlCLEVBRTVCLEVBQUE7O0FBRUM7RUFERjtJQUVJLDJCQUEwQixFQUU3QixFQUFBOztBQUVDO0VBREY7SUFFSSxpQ0FBZ0MsRUFFbkMsRUFBQTs7QUFFRDtFQzdHRTtJQUNFLHlCQUF3QixFQUN6QixFQUFBOztBRCtHSDtFQ2pIRTtJQUNFLHlCQUF3QixFQUN6QixFQUFBOztBRG1ISDtFQ3JIRTtJQUNFLHlCQUF3QixFQUN6QixFQUFBOztBRHVISDtFQ3pIRTtJQUNFLHlCQUF3QixFQUN6QixFQUFBOztBQUZEO0VBQ0UseUJBQXdCLEVBQ3pCOztBRG9JSDtFQ3RJRTtJQVZFLDBCQUF5QixFQUMxQjtFQUNEO0lBQW1CLDBCQUF5QixFQUFJO0VBQ2hEO0lBQW1CLDhCQUE2QixFQUFJO0VBQ3BEOztJQUNtQiwrQkFBOEIsRUFBSSxFQUFBOztBRDhJdkQ7RUFDRSx5QkFBd0IsRUFLekI7RUFIQztJQUhGO01BSUksMEJBQXlCLEVBRTVCLEVBQUE7O0FBQ0Q7RUFDRSx5QkFBd0IsRUFLekI7RUFIQztJQUhGO01BSUksMkJBQTBCLEVBRTdCLEVBQUE7O0FBQ0Q7RUFDRSx5QkFBd0IsRUFLekI7RUFIQztJQUhGO01BSUksaUNBQWdDLEVBRW5DLEVBQUE7O0FBRUQ7RUMvSkU7SUFDRSx5QkFBd0IsRUFDekIsRUFBQSIsImZpbGUiOiJib290c3RyYXAuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyohXG4gKiBCb290c3RyYXAgdjMuMy42IChodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbSlcbiAqIENvcHlyaWdodCAyMDExLTIwMTUgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqL1xuLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lOiAwOyB9XG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDsgfVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwOyB9XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuaW1nIHtcbiAgYm9yZGVyOiAwOyB9XG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDsgfVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIG1hcmdpbjogMDsgfVxuXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7IH1cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgfVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTsgfVxuXG5sZWdlbmQge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7IH1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyohIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzcyAqL1xuQG1lZGlhIHByaW50IHtcbiAgKixcbiAgKjpiZWZvcmUsXG4gICo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiOyB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7IH1cbiAgYVtocmVmXj1cIiNcIl06YWZ0ZXIsXG4gIGFbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjsgfVxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cbiAgdHIsXG4gIGltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgcCxcbiAgaDIsXG4gIGgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMzsgfVxuICBoMixcbiAgaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG4gIC5uYXZiYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmJ0biA+IC5jYXJldCxcbiAgLmRyb3B1cCA+IC5idG4gPiAuY2FyZXQge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMwMDAgIWltcG9ydGFudDsgfVxuICAubGFiZWwge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7IH1cbiAgLnRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7IH1cbiAgICAudGFibGUgdGQsXG4gICAgLnRhYmxlIHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDsgfVxuICAudGFibGUtYm9yZGVyZWQgdGgsXG4gIC50YWJsZS1ib3JkZXJlZCB0ZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50OyB9IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xuICBzcmM6IHVybChcIi4uL2Fzc2V0cy9mb250cy9nbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9hc3NldHMvZm9udHMvZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhci5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9hc3NldHMvZm9udHMvZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhci53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vYXNzZXRzL2ZvbnRzL2dseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9hc3NldHMvZm9udHMvZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2Fzc2V0cy9mb250cy9nbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyLnN2ZyNnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXJcIikgZm9ybWF0KFwic3ZnXCIpOyB9XG5cbi5nbHlwaGljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICdHbHlwaGljb25zIEhhbGZsaW5ncyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbi5nbHlwaGljb24tYXN0ZXJpc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDAwMmFcIjsgfVxuXG4uZ2x5cGhpY29uLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDAwMmJcIjsgfVxuXG4uZ2x5cGhpY29uLWV1cm86YmVmb3JlLFxuLmdseXBoaWNvbi1ldXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDIwYWNcIjsgfVxuXG4uZ2x5cGhpY29uLW1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFwyMjEyXCI7IH1cblxuLmdseXBoaWNvbi1jbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcMjYwMVwiOyB9XG5cbi5nbHlwaGljb24tZW52ZWxvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDI3MDlcIjsgfVxuXG4uZ2x5cGhpY29uLXBlbmNpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcMjcwZlwiOyB9XG5cbi5nbHlwaGljb24tZ2xhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMDFcIjsgfVxuXG4uZ2x5cGhpY29uLW11c2ljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDAyXCI7IH1cblxuLmdseXBoaWNvbi1zZWFyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMDNcIjsgfVxuXG4uZ2x5cGhpY29uLWhlYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDA1XCI7IH1cblxuLmdseXBoaWNvbi1zdGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDA2XCI7IH1cblxuLmdseXBoaWNvbi1zdGFyLWVtcHR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDA3XCI7IH1cblxuLmdseXBoaWNvbi11c2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDA4XCI7IH1cblxuLmdseXBoaWNvbi1maWxtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDA5XCI7IH1cblxuLmdseXBoaWNvbi10aC1sYXJnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAxMFwiOyB9XG5cbi5nbHlwaGljb24tdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMTFcIjsgfVxuXG4uZ2x5cGhpY29uLXRoLWxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMTJcIjsgfVxuXG4uZ2x5cGhpY29uLW9rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDEzXCI7IH1cblxuLmdseXBoaWNvbi1yZW1vdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMTRcIjsgfVxuXG4uZ2x5cGhpY29uLXpvb20taW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMTVcIjsgfVxuXG4uZ2x5cGhpY29uLXpvb20tb3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDE2XCI7IH1cblxuLmdseXBoaWNvbi1vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMTdcIjsgfVxuXG4uZ2x5cGhpY29uLXNpZ25hbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAxOFwiOyB9XG5cbi5nbHlwaGljb24tY29nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDE5XCI7IH1cblxuLmdseXBoaWNvbi10cmFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAyMFwiOyB9XG5cbi5nbHlwaGljb24taG9tZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAyMVwiOyB9XG5cbi5nbHlwaGljb24tZmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAyMlwiOyB9XG5cbi5nbHlwaGljb24tdGltZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAyM1wiOyB9XG5cbi5nbHlwaGljb24tcm9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAyNFwiOyB9XG5cbi5nbHlwaGljb24tZG93bmxvYWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDI1XCI7IH1cblxuLmdseXBoaWNvbi1kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAyNlwiOyB9XG5cbi5nbHlwaGljb24tdXBsb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDI3XCI7IH1cblxuLmdseXBoaWNvbi1pbmJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAyOFwiOyB9XG5cbi5nbHlwaGljb24tcGxheS1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMjlcIjsgfVxuXG4uZ2x5cGhpY29uLXJlcGVhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAzMFwiOyB9XG5cbi5nbHlwaGljb24tcmVmcmVzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAzMVwiOyB9XG5cbi5nbHlwaGljb24tbGlzdC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMzJcIjsgfVxuXG4uZ2x5cGhpY29uLWxvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMzNcIjsgfVxuXG4uZ2x5cGhpY29uLWZsYWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMzRcIjsgfVxuXG4uZ2x5cGhpY29uLWhlYWRwaG9uZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMzVcIjsgfVxuXG4uZ2x5cGhpY29uLXZvbHVtZS1vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMzZcIjsgfVxuXG4uZ2x5cGhpY29uLXZvbHVtZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDM3XCI7IH1cblxuLmdseXBoaWNvbi12b2x1bWUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMzhcIjsgfVxuXG4uZ2x5cGhpY29uLXFyY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAzOVwiOyB9XG5cbi5nbHlwaGljb24tYmFyY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA0MFwiOyB9XG5cbi5nbHlwaGljb24tdGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDQxXCI7IH1cblxuLmdseXBoaWNvbi10YWdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDQyXCI7IH1cblxuLmdseXBoaWNvbi1ib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDQzXCI7IH1cblxuLmdseXBoaWNvbi1ib29rbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA0NFwiOyB9XG5cbi5nbHlwaGljb24tcHJpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNDVcIjsgfVxuXG4uZ2x5cGhpY29uLWNhbWVyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA0NlwiOyB9XG5cbi5nbHlwaGljb24tZm9udDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA0N1wiOyB9XG5cbi5nbHlwaGljb24tYm9sZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA0OFwiOyB9XG5cbi5nbHlwaGljb24taXRhbGljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDQ5XCI7IH1cblxuLmdseXBoaWNvbi10ZXh0LWhlaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA1MFwiOyB9XG5cbi5nbHlwaGljb24tdGV4dC13aWR0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA1MVwiOyB9XG5cbi5nbHlwaGljb24tYWxpZ24tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA1MlwiOyB9XG5cbi5nbHlwaGljb24tYWxpZ24tY2VudGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDUzXCI7IH1cblxuLmdseXBoaWNvbi1hbGlnbi1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA1NFwiOyB9XG5cbi5nbHlwaGljb24tYWxpZ24tanVzdGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA1NVwiOyB9XG5cbi5nbHlwaGljb24tbGlzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA1NlwiOyB9XG5cbi5nbHlwaGljb24taW5kZW50LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNTdcIjsgfVxuXG4uZ2x5cGhpY29uLWluZGVudC1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA1OFwiOyB9XG5cbi5nbHlwaGljb24tZmFjZXRpbWUtdmlkZW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNTlcIjsgfVxuXG4uZ2x5cGhpY29uLXBpY3R1cmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNjBcIjsgfVxuXG4uZ2x5cGhpY29uLW1hcC1tYXJrZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNjJcIjtcbiAgZm9udC1zaXplOiAyMHB4OyB9XG5cbi5nbHlwaGljb24tbWFwLW1hcmtlci1jdXN0b206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNjJcIjtcbiAgZm9udC1zaXplOiA0MHB4OyB9XG5cbi5nbHlwaGljb24tYWRqdXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDYzXCI7IH1cblxuLmdseXBoaWNvbi10aW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDY0XCI7IH1cblxuLmdseXBoaWNvbi1lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDY1XCI7IH1cblxuLmdseXBoaWNvbi1zaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA2NlwiOyB9XG5cbi5nbHlwaGljb24tY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNjdcIjsgfVxuXG4uZ2x5cGhpY29uLW1vdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNjhcIjsgfVxuXG4uZ2x5cGhpY29uLXN0ZXAtYmFja3dhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNjlcIjsgfVxuXG4uZ2x5cGhpY29uLWZhc3QtYmFja3dhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNzBcIjsgfVxuXG4uZ2x5cGhpY29uLWJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDcxXCI7IH1cblxuLmdseXBoaWNvbi1wbGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDcyXCI7IH1cblxuLmdseXBoaWNvbi1wYXVzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA3M1wiOyB9XG5cbi5nbHlwaGljb24tc3RvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA3NFwiOyB9XG5cbi5nbHlwaGljb24tZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA3NVwiOyB9XG5cbi5nbHlwaGljb24tZmFzdC1mb3J3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDc2XCI7IH1cblxuLmdseXBoaWNvbi1zdGVwLWZvcndhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNzdcIjsgfVxuXG4uZ2x5cGhpY29uLWVqZWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDc4XCI7IH1cblxuLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNzlcIjsgfVxuXG4uZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwODBcIjsgfVxuXG4uZ2x5cGhpY29uLXBsdXMtc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA4MVwiOyB9XG5cbi5nbHlwaGljb24tbWludXMtc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA4MlwiOyB9XG5cbi5nbHlwaGljb24tcmVtb3ZlLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwODNcIjsgfVxuXG4uZ2x5cGhpY29uLW9rLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwODRcIjsgfVxuXG4uZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwODVcIjsgfVxuXG4uZ2x5cGhpY29uLWluZm8tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA4NlwiOyB9XG5cbi5nbHlwaGljb24tc2NyZWVuc2hvdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA4N1wiOyB9XG5cbi5nbHlwaGljb24tcmVtb3ZlLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA4OFwiOyB9XG5cbi5nbHlwaGljb24tb2stY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDg5XCI7IH1cblxuLmdseXBoaWNvbi1iYW4tY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDkwXCI7IH1cblxuLmdseXBoaWNvbi1hcnJvdy1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDkxXCI7IH1cblxuLmdseXBoaWNvbi1hcnJvdy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA5MlwiOyB9XG5cbi5nbHlwaGljb24tYXJyb3ctdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwOTNcIjsgfVxuXG4uZ2x5cGhpY29uLWFycm93LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwOTRcIjsgfVxuXG4uZ2x5cGhpY29uLXNoYXJlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA5NVwiOyB9XG5cbi5nbHlwaGljb24tcmVzaXplLWZ1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwOTZcIjsgfVxuXG4uZ2x5cGhpY29uLXJlc2l6ZS1zbWFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA5N1wiOyB9XG5cbi5nbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEwMVwiOyB9XG5cbi5nbHlwaGljb24tZ2lmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEwMlwiOyB9XG5cbi5nbHlwaGljb24tbGVhZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEwM1wiOyB9XG5cbi5nbHlwaGljb24tZmlyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEwNFwiOyB9XG5cbi5nbHlwaGljb24tZXllLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMDVcIjsgfVxuXG4uZ2x5cGhpY29uLWV5ZS1jbG9zZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEwNlwiOyB9XG5cbi5nbHlwaGljb24td2FybmluZy1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTA3XCI7IH1cblxuLmdseXBoaWNvbi1wbGFuZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEwOFwiOyB9XG5cbi5nbHlwaGljb24tY2FsZW5kYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMDlcIjsgfVxuXG4uZ2x5cGhpY29uLXJhbmRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTExMFwiOyB9XG5cbi5nbHlwaGljb24tY29tbWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTExMVwiOyB9XG5cbi5nbHlwaGljb24tbWFnbmV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTEyXCI7IH1cblxuLmdseXBoaWNvbi1jaGV2cm9uLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTEzXCI7IH1cblxuLmdseXBoaWNvbi1jaGV2cm9uLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMTRcIjsgfVxuXG4uZ2x5cGhpY29uLXJldHdlZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMTVcIjsgfVxuXG4uZ2x5cGhpY29uLXNob3BwaW5nLWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMTZcIjsgfVxuXG4uZ2x5cGhpY29uLWZvbGRlci1jbG9zZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTExN1wiOyB9XG5cbi5nbHlwaGljb24tZm9sZGVyLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMThcIjsgfVxuXG4uZ2x5cGhpY29uLXJlc2l6ZS12ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTExOVwiOyB9XG5cbi5nbHlwaGljb24tcmVzaXplLWhvcml6b250YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMjBcIjsgfVxuXG4uZ2x5cGhpY29uLWhkZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEyMVwiOyB9XG5cbi5nbHlwaGljb24tYnVsbGhvcm46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMjJcIjsgfVxuXG4uZ2x5cGhpY29uLWJlbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMjNcIjsgfVxuXG4uZ2x5cGhpY29uLWNlcnRpZmljYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTI0XCI7IH1cblxuLmdseXBoaWNvbi10aHVtYnMtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMjVcIjsgfVxuXG4uZ2x5cGhpY29uLXRodW1icy1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTI2XCI7IH1cblxuLmdseXBoaWNvbi1oYW5kLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTI3XCI7IH1cblxuLmdseXBoaWNvbi1oYW5kLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMjhcIjsgfVxuXG4uZ2x5cGhpY29uLWhhbmQtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMjlcIjsgfVxuXG4uZ2x5cGhpY29uLWhhbmQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEzMFwiOyB9XG5cbi5nbHlwaGljb24tY2lyY2xlLWFycm93LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTMxXCI7IH1cblxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEzMlwiOyB9XG5cbi5nbHlwaGljb24tY2lyY2xlLWFycm93LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTMzXCI7IH1cblxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEzNFwiOyB9XG5cbi5nbHlwaGljb24tZ2xvYmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMzVcIjsgfVxuXG4uZ2x5cGhpY29uLXdyZW5jaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEzNlwiOyB9XG5cbi5nbHlwaGljb24tdGFza3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMzdcIjsgfVxuXG4uZ2x5cGhpY29uLWZpbHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTEzOFwiOyB9XG5cbi5nbHlwaGljb24tYnJpZWZjYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTM5XCI7IH1cblxuLmdseXBoaWNvbi1mdWxsc2NyZWVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTQwXCI7IH1cblxuLmdseXBoaWNvbi1kYXNoYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNDFcIjsgfVxuXG4uZ2x5cGhpY29uLXBhcGVyY2xpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE0MlwiOyB9XG5cbi5nbHlwaGljb24taGVhcnQtZW1wdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNDNcIjsgfVxuXG4uZ2x5cGhpY29uLWxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNDRcIjsgfVxuXG4uZ2x5cGhpY29uLXBob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTQ1XCI7IH1cblxuLmdseXBoaWNvbi1wdXNocGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTQ2XCI7IH1cblxuLmdseXBoaWNvbi11c2Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNDhcIjsgfVxuXG4uZ2x5cGhpY29uLWdicDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE0OVwiOyB9XG5cbi5nbHlwaGljb24tc29ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE1MFwiOyB9XG5cbi5nbHlwaGljb24tc29ydC1ieS1hbHBoYWJldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE1MVwiOyB9XG5cbi5nbHlwaGljb24tc29ydC1ieS1hbHBoYWJldC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNTJcIjsgfVxuXG4uZ2x5cGhpY29uLXNvcnQtYnktb3JkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNTNcIjsgfVxuXG4uZ2x5cGhpY29uLXNvcnQtYnktb3JkZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTU0XCI7IH1cblxuLmdseXBoaWNvbi1zb3J0LWJ5LWF0dHJpYnV0ZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNTVcIjsgfVxuXG4uZ2x5cGhpY29uLXNvcnQtYnktYXR0cmlidXRlcy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNTZcIjsgfVxuXG4uZ2x5cGhpY29uLXVuY2hlY2tlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE1N1wiOyB9XG5cbi5nbHlwaGljb24tZXhwYW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTU4XCI7IH1cblxuLmdseXBoaWNvbi1jb2xsYXBzZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTU5XCI7IH1cblxuLmdseXBoaWNvbi1jb2xsYXBzZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE2MFwiOyB9XG5cbi5nbHlwaGljb24tbG9nLWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTYxXCI7IH1cblxuLmdseXBoaWNvbi1mbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE2MlwiOyB9XG5cbi5nbHlwaGljb24tbG9nLW91dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE2M1wiOyB9XG5cbi5nbHlwaGljb24tbmV3LXdpbmRvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE2NFwiOyB9XG5cbi5nbHlwaGljb24tcmVjb3JkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTY1XCI7IH1cblxuLmdseXBoaWNvbi1zYXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTY2XCI7IH1cblxuLmdseXBoaWNvbi1vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTY3XCI7IH1cblxuLmdseXBoaWNvbi1zYXZlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE2OFwiOyB9XG5cbi5nbHlwaGljb24taW1wb3J0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTY5XCI7IH1cblxuLmdseXBoaWNvbi1leHBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNzBcIjsgfVxuXG4uZ2x5cGhpY29uLXNlbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNzFcIjsgfVxuXG4uZ2x5cGhpY29uLWZsb3BweS1kaXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTcyXCI7IH1cblxuLmdseXBoaWNvbi1mbG9wcHktc2F2ZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNzNcIjsgfVxuXG4uZ2x5cGhpY29uLWZsb3BweS1yZW1vdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNzRcIjsgfVxuXG4uZ2x5cGhpY29uLWZsb3BweS1zYXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTc1XCI7IH1cblxuLmdseXBoaWNvbi1mbG9wcHktb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE3NlwiOyB9XG5cbi5nbHlwaGljb24tY3JlZGl0LWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNzdcIjsgfVxuXG4uZ2x5cGhpY29uLXRyYW5zZmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTc4XCI7IH1cblxuLmdseXBoaWNvbi1jdXRsZXJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTc5XCI7IH1cblxuLmdseXBoaWNvbi1oZWFkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxODBcIjsgfVxuXG4uZ2x5cGhpY29uLWNvbXByZXNzZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxODFcIjsgfVxuXG4uZ2x5cGhpY29uLWVhcnBob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTgyXCI7IH1cblxuLmdseXBoaWNvbi1waG9uZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxODNcIjsgfVxuXG4uZ2x5cGhpY29uLXRvd2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTg0XCI7IH1cblxuLmdseXBoaWNvbi1zdGF0czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE4NVwiOyB9XG5cbi5nbHlwaGljb24tc2QtdmlkZW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxODZcIjsgfVxuXG4uZ2x5cGhpY29uLWhkLXZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTg3XCI7IH1cblxuLmdseXBoaWNvbi1zdWJ0aXRsZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxODhcIjsgfVxuXG4uZ2x5cGhpY29uLXNvdW5kLXN0ZXJlbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE4OVwiOyB9XG5cbi5nbHlwaGljb24tc291bmQtZG9sYnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxOTBcIjsgfVxuXG4uZ2x5cGhpY29uLXNvdW5kLTUtMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE5MVwiOyB9XG5cbi5nbHlwaGljb24tc291bmQtNi0xOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTkyXCI7IH1cblxuLmdseXBoaWNvbi1zb3VuZC03LTE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxOTNcIjsgfVxuXG4uZ2x5cGhpY29uLWNvcHlyaWdodC1tYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTk0XCI7IH1cblxuLmdseXBoaWNvbi1yZWdpc3RyYXRpb24tbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE5NVwiOyB9XG5cbi5nbHlwaGljb24tY2xvdWQtZG93bmxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxOTdcIjsgfVxuXG4uZ2x5cGhpY29uLWNsb3VkLXVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE5OFwiOyB9XG5cbi5nbHlwaGljb24tdHJlZS1jb25pZmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTk5XCI7IH1cblxuLmdseXBoaWNvbi10cmVlLWRlY2lkdW91czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIwMFwiOyB9XG5cbi5nbHlwaGljb24tY2Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMDFcIjsgfVxuXG4uZ2x5cGhpY29uLXNhdmUtZmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIwMlwiOyB9XG5cbi5nbHlwaGljb24tb3Blbi1maWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjAzXCI7IH1cblxuLmdseXBoaWNvbi1sZXZlbC11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIwNFwiOyB9XG5cbi5nbHlwaGljb24tY29weTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIwNVwiOyB9XG5cbi5nbHlwaGljb24tcGFzdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMDZcIjsgfVxuXG4uZ2x5cGhpY29uLWFsZXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjA5XCI7IH1cblxuLmdseXBoaWNvbi1lcXVhbGl6ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMTBcIjsgfVxuXG4uZ2x5cGhpY29uLWtpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMTFcIjsgfVxuXG4uZ2x5cGhpY29uLXF1ZWVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjEyXCI7IH1cblxuLmdseXBoaWNvbi1wYXduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjEzXCI7IH1cblxuLmdseXBoaWNvbi1iaXNob3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMTRcIjsgfVxuXG4uZ2x5cGhpY29uLWtuaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIxNVwiOyB9XG5cbi5nbHlwaGljb24tYmFieS1mb3JtdWxhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjE2XCI7IH1cblxuLmdseXBoaWNvbi10ZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFwyNmZhXCI7IH1cblxuLmdseXBoaWNvbi1ibGFja2JvYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjE4XCI7IH1cblxuLmdseXBoaWNvbi1iZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMTlcIjsgfVxuXG4uZ2x5cGhpY29uLWFwcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmOGZmXCI7IH1cblxuLmdseXBoaWNvbi1lcmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIyMVwiOyB9XG5cbi5nbHlwaGljb24taG91cmdsYXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFwyMzFiXCI7IH1cblxuLmdseXBoaWNvbi1sYW1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjIzXCI7IH1cblxuLmdseXBoaWNvbi1kdXBsaWNhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMjRcIjsgfVxuXG4uZ2x5cGhpY29uLXBpZ2d5LWJhbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMjVcIjsgfVxuXG4uZ2x5cGhpY29uLXNjaXNzb3JzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjI2XCI7IH1cblxuLmdseXBoaWNvbi1iaXRjb2luOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjI3XCI7IH1cblxuLmdseXBoaWNvbi1idGM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMjdcIjsgfVxuXG4uZ2x5cGhpY29uLXhidDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIyN1wiOyB9XG5cbi5nbHlwaGljb24teWVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFwwMGE1XCI7IH1cblxuLmdseXBoaWNvbi1qcHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDAwYTVcIjsgfVxuXG4uZ2x5cGhpY29uLXJ1YmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFwyMGJkXCI7IH1cblxuLmdseXBoaWNvbi1ydWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDIwYmRcIjsgfVxuXG4uZ2x5cGhpY29uLXNjYWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjMwXCI7IH1cblxuLmdseXBoaWNvbi1pY2UtbG9sbHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMzFcIjsgfVxuXG4uZ2x5cGhpY29uLWljZS1sb2xseS10YXN0ZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMzJcIjsgfVxuXG4uZ2x5cGhpY29uLWVkdWNhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIzM1wiOyB9XG5cbi5nbHlwaGljb24tb3B0aW9uLWhvcml6b250YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMzRcIjsgfVxuXG4uZ2x5cGhpY29uLW9wdGlvbi12ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIzNVwiOyB9XG5cbi5nbHlwaGljb24tbWVudS1oYW1idXJnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyMzZcIjsgfVxuXG4uZ2x5cGhpY29uLW1vZGFsLXdpbmRvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIzN1wiOyB9XG5cbi5nbHlwaGljb24tb2lsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjM4XCI7IH1cblxuLmdseXBoaWNvbi1ncmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTIzOVwiOyB9XG5cbi5nbHlwaGljb24tc3VuZ2xhc3NlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTI0MFwiOyB9XG5cbi5nbHlwaGljb24tdGV4dC1zaXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjQxXCI7IH1cblxuLmdseXBoaWNvbi10ZXh0LWNvbG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjQyXCI7IH1cblxuLmdseXBoaWNvbi10ZXh0LWJhY2tncm91bmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyNDNcIjsgfVxuXG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi10b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyNDRcIjsgfVxuXG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1ib3R0b206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyNDVcIjsgfVxuXG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1ob3Jpem9udGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjQ2XCI7IH1cblxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTI0N1wiOyB9XG5cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLXZlcnRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjQ4XCI7IH1cblxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyNDlcIjsgfVxuXG4uZ2x5cGhpY29uLXRyaWFuZ2xlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjUwXCI7IH1cblxuLmdseXBoaWNvbi10cmlhbmdsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjUxXCI7IH1cblxuLmdseXBoaWNvbi10cmlhbmdsZS1ib3R0b206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyNTJcIjsgfVxuXG4uZ2x5cGhpY29uLXRyaWFuZ2xlLXRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTI1M1wiOyB9XG5cbi5nbHlwaGljb24tY29uc29sZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTI1NFwiOyB9XG5cbi5nbHlwaGljb24tc3VwZXJzY3JpcHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyNTVcIjsgfVxuXG4uZ2x5cGhpY29uLXN1YnNjcmlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTI1NlwiOyB9XG5cbi5nbHlwaGljb24tbWVudS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjU3XCI7IH1cblxuLmdseXBoaWNvbi1tZW51LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMjU4XCI7IH1cblxuLmdseXBoaWNvbi1tZW51LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyNTlcIjsgfVxuXG4uZ2x5cGhpY29uLW1lbnUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyNjBcIjsgfVxuXG4uZ2x5cGhpY29uLWNoZXZyb24tdXAuY29sbGFwc2UtbWVudS11cDpiZWZvcmUge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLmdseXBoaWNvbi5jb2xsYXBzZS1tZW51LXVwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5pdGlhbDtcbiAgZm9udC1mYW1pbHk6ICdHbHlwaGljb25zIEhhbGZsaW5ncyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbi5nbHlwaGljb24tY2hldnJvbi1kb3duLmNvbGxhcHNlLW1lbnUtZG93bjpiZWZvcmUge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLmdseXBoaWNvbi5jb2xsYXBzZS1tZW51LWRvd24ge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbml0aWFsO1xuICBmb250LWZhbWlseTogJ0dseXBoaWNvbnMgSGFsZmxpbmdzJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuLmdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduLmN1c3RvbS1leGNsYW1hdGlvbiB7XG4gIGZvbnQtc2l6ZTogMTdweDsgfVxuXG4uZ2x5cGhpY29uLXRodW1icy11cC5jdXN0b20tdGh1bWJzIHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBjb2xvcjogXCJncmVlblwiOyB9XG5cbioge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG5odG1sIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7IH1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS40Mjg1NztcbiAgY29sb3I6ICM3Njc2NzY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2YzZjM7IH1cblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbmEge1xuICBjb2xvcjogIzFDN0VCQjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIGE6aG92ZXIsIGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjMTI1MTc4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIGE6Zm9jdXMge1xuICAgIG91dGxpbmU6IHRoaW4gZG90dGVkO1xuICAgIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7IH1cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4uaW1nLXJlc3BvbnNpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmltZy1yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogNHB4O1xuICBsaW5lLWhlaWdodDogMS40Mjg1NztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjNmMztcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmltZy1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7IH1cblxuaHIge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlZWVlOyB9XG5cbi5zci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7IH1cblxuLnNyLW9ubHktZm9jdXNhYmxlOmFjdGl2ZSwgLnNyLW9ubHktZm9jdXNhYmxlOmZvY3VzIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bzsgfVxuXG5bcm9sZT1cImJ1dHRvblwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBjb2xvcjogaW5oZXJpdDsgfVxuICBoMSBzbWFsbCxcbiAgaDEgLnNtYWxsLCBoMiBzbWFsbCxcbiAgaDIgLnNtYWxsLCBoMyBzbWFsbCxcbiAgaDMgLnNtYWxsLCBoNCBzbWFsbCxcbiAgaDQgLnNtYWxsLCBoNSBzbWFsbCxcbiAgaDUgLnNtYWxsLCBoNiBzbWFsbCxcbiAgaDYgLnNtYWxsLFxuICAuaDEgc21hbGwsXG4gIC5oMSAuc21hbGwsIC5oMiBzbWFsbCxcbiAgLmgyIC5zbWFsbCwgLmgzIHNtYWxsLFxuICAuaDMgLnNtYWxsLCAuaDQgc21hbGwsXG4gIC5oNCAuc21hbGwsIC5oNSBzbWFsbCxcbiAgLmg1IC5zbWFsbCwgLmg2IHNtYWxsLFxuICAuaDYgLnNtYWxsIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAjNzc3Nzc3OyB9XG5cbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgaDEgc21hbGwsXG4gIGgxIC5zbWFsbCwgLmgxIHNtYWxsLFxuICAuaDEgLnNtYWxsLFxuICBoMiBzbWFsbCxcbiAgaDIgLnNtYWxsLCAuaDIgc21hbGwsXG4gIC5oMiAuc21hbGwsXG4gIGgzIHNtYWxsLFxuICBoMyAuc21hbGwsIC5oMyBzbWFsbCxcbiAgLmgzIC5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA2NSU7IH1cblxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICBoNCBzbWFsbCxcbiAgaDQgLnNtYWxsLCAuaDQgc21hbGwsXG4gIC5oNCAuc21hbGwsXG4gIGg1IHNtYWxsLFxuICBoNSAuc21hbGwsIC5oNSBzbWFsbCxcbiAgLmg1IC5zbWFsbCxcbiAgaDYgc21hbGwsXG4gIGg2IC5zbWFsbCwgLmg2IHNtYWxsLFxuICAuaDYgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDc1JTsgfVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAzNnB4OyB9XG5cbmgyLCAuaDIge1xuICBmb250LXNpemU6IDMwcHg7IH1cblxuaDMsIC5oMyB7XG4gIGZvbnQtc2l6ZTogMjRweDsgfVxuXG5oNCwgLmg0IHtcbiAgZm9udC1zaXplOiAxOHB4OyB9XG5cbmg1LCAuaDUge1xuICBmb250LXNpemU6IDE0cHg7IH1cblxuaDYsIC5oNiB7XG4gIGZvbnQtc2l6ZTogMTJweDsgfVxuXG5wIHtcbiAgbWFyZ2luOiAwIDAgMTBweDsgfVxuXG4ubGVhZCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAubGVhZCB7XG4gICAgICBmb250LXNpemU6IDIxcHg7IH0gfVxuXG5zbWFsbCxcbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODUlOyB9XG5cbm1hcmssXG4ubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZBRjA7XG4gIHBhZGRpbmc6IC4yZW07IH1cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7IH1cblxuLnRleHQtbm93cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4udGV4dC1sb3dlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlOyB9XG5cbi50ZXh0LXVwcGVyY2FzZSwgLmluaXRpYWxpc20ge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi50ZXh0LWNhcGl0YWxpemUge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG4udGV4dC1tdXRlZCB7XG4gIGNvbG9yOiAjNzc3Nzc3OyB9XG5cbi50ZXh0LXByaW1hcnkge1xuICBjb2xvcjogIzFDN0VCQjsgfVxuXG5hLnRleHQtcHJpbWFyeTpob3ZlcixcbmEudGV4dC1wcmltYXJ5OmZvY3VzIHtcbiAgY29sb3I6ICMxNTYwOGY7IH1cblxuLnRleHQtc3VjY2VzcyB7XG4gIGNvbG9yOiAjMjI5MTczOyB9XG5cbmEudGV4dC1zdWNjZXNzOmhvdmVyLFxuYS50ZXh0LXN1Y2Nlc3M6Zm9jdXMge1xuICBjb2xvcjogIzE4Njg1MjsgfVxuXG4udGV4dC1pbmZvIHtcbiAgY29sb3I6ICMyNjkyOUM7IH1cblxuYS50ZXh0LWluZm86aG92ZXIsXG5hLnRleHQtaW5mbzpmb2N1cyB7XG4gIGNvbG9yOiAjMWM2YzczOyB9XG5cbi50ZXh0LXdhcm5pbmcge1xuICBjb2xvcjogI0FGN0YxODsgfVxuXG5hLnRleHQtd2FybmluZzpob3ZlcixcbmEudGV4dC13YXJuaW5nOmZvY3VzIHtcbiAgY29sb3I6ICM4MjVlMTI7IH1cblxuLnRleHQtZGFuZ2VyIHtcbiAgY29sb3I6ICNCMTNEMzE7IH1cblxuYS50ZXh0LWRhbmdlcjpob3ZlcixcbmEudGV4dC1kYW5nZXI6Zm9jdXMge1xuICBjb2xvcjogIzg5MmYyNjsgfVxuXG4uYmctcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5iZy1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFDN0VCQjsgfVxuXG5hLmJnLXByaW1hcnk6aG92ZXIsXG5hLmJnLXByaW1hcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTU2MDhmOyB9XG5cbi5iZy1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyRkNGOTsgfVxuXG5hLmJnLXN1Y2Nlc3M6aG92ZXIsXG5hLmJnLXN1Y2Nlc3M6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzlmMmU2OyB9XG5cbi5iZy1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VFRjhGQzsgfVxuXG5hLmJnLWluZm86aG92ZXIsXG5hLmJnLWluZm86Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzNlNmY0OyB9XG5cbi5iZy13YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkFGMDsgfVxuXG5hLmJnLXdhcm5pbmc6aG92ZXIsXG5hLmJnLXdhcm5pbmc6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlOWJkOyB9XG5cbi5iZy1kYW5nZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkRFRkVFOyB9XG5cbmEuYmctZGFuZ2VyOmhvdmVyLFxuYS5iZy1kYW5nZXI6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhjNGMwOyB9XG5cbi5wYWdlLWhlYWRlciB7XG4gIHBhZGRpbmctYm90dG9tOiA5cHg7XG4gIG1hcmdpbjogNDBweCAwIDIwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlZWVlOyB9XG5cbnVsLFxub2wge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIHVsIHVsLFxuICB1bCBvbCxcbiAgb2wgdWwsXG4gIG9sIG9sIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5saXN0LWlubGluZSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7IH1cbiAgLmxpc3QtaW5saW5lID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7IH1cblxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbmR0LFxuZGQge1xuICBsaW5lLWhlaWdodDogMS40Mjg1NzsgfVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbmRkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmRsLWhvcml6b250YWwgZGQ6YmVmb3JlLCAuZGwtaG9yaXpvbnRhbCBkZDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiB0YWJsZTsgfVxuXG4uZGwtaG9yaXpvbnRhbCBkZDphZnRlciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZGwtaG9yaXpvbnRhbCBkdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE2MHB4O1xuICAgIGNsZWFyOiBsZWZ0O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAuZGwtaG9yaXpvbnRhbCBkZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDE4MHB4OyB9IH1cblxuYWJiclt0aXRsZV0sXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHtcbiAgY3Vyc29yOiBoZWxwO1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICM3Nzc3Nzc7IH1cblxuLmluaXRpYWxpc20ge1xuICBmb250LXNpemU6IDkwJTsgfVxuXG5ibG9ja3F1b3RlIHtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBtYXJnaW46IDAgMCAyMHB4O1xuICBmb250LXNpemU6IDE3LjVweDtcbiAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAjZWVlZWVlOyB9XG4gIGJsb2NrcXVvdGUgcDpsYXN0LWNoaWxkLFxuICBibG9ja3F1b3RlIHVsOmxhc3QtY2hpbGQsXG4gIGJsb2NrcXVvdGUgb2w6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBibG9ja3F1b3RlIGZvb3RlcixcbiAgYmxvY2txdW90ZSBzbWFsbCxcbiAgYmxvY2txdW90ZSAuc21hbGwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICAgIGNvbG9yOiAjNzc3Nzc3OyB9XG4gICAgYmxvY2txdW90ZSBmb290ZXI6YmVmb3JlLFxuICAgIGJsb2NrcXVvdGUgc21hbGw6YmVmb3JlLFxuICAgIGJsb2NrcXVvdGUgLnNtYWxsOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDE0IFxcMDBBMCc7IH1cblxuLmJsb2NrcXVvdGUtcmV2ZXJzZSxcbmJsb2NrcXVvdGUucHVsbC1yaWdodCB7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgYm9yZGVyLXJpZ2h0OiA1cHggc29saWQgI2VlZWVlZTtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5ibG9ja3F1b3RlLXJldmVyc2UgZm9vdGVyOmJlZm9yZSxcbiAgLmJsb2NrcXVvdGUtcmV2ZXJzZSBzbWFsbDpiZWZvcmUsXG4gIC5ibG9ja3F1b3RlLXJldmVyc2UgLnNtYWxsOmJlZm9yZSxcbiAgYmxvY2txdW90ZS5wdWxsLXJpZ2h0IGZvb3RlcjpiZWZvcmUsXG4gIGJsb2NrcXVvdGUucHVsbC1yaWdodCBzbWFsbDpiZWZvcmUsXG4gIGJsb2NrcXVvdGUucHVsbC1yaWdodCAuc21hbGw6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJzsgfVxuICAuYmxvY2txdW90ZS1yZXZlcnNlIGZvb3RlcjphZnRlcixcbiAgLmJsb2NrcXVvdGUtcmV2ZXJzZSBzbWFsbDphZnRlcixcbiAgLmJsb2NrcXVvdGUtcmV2ZXJzZSAuc21hbGw6YWZ0ZXIsXG4gIGJsb2NrcXVvdGUucHVsbC1yaWdodCBmb290ZXI6YWZ0ZXIsXG4gIGJsb2NrcXVvdGUucHVsbC1yaWdodCBzbWFsbDphZnRlcixcbiAgYmxvY2txdW90ZS5wdWxsLXJpZ2h0IC5zbWFsbDphZnRlciB7XG4gICAgY29udGVudDogJ1xcMDBBMCBcXDIwMTQnOyB9XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3OyB9XG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZTsgfVxuXG5jb2RlIHtcbiAgcGFkZGluZzogMnB4IDRweDtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGNvbG9yOiAjYzcyNTRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmMmY0O1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxua2JkIHtcbiAgcGFkZGluZzogMnB4IDRweDtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7IH1cbiAga2JkIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogOS41cHg7XG4gIG1hcmdpbjogMCAwIDEwcHg7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTc7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBjb2xvcjogIzMzMzMzMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG4gIHByZSBjb2RlIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAzNDBweDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsOyB9XG5cbi5jb250YWluZXIge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH1cbiAgLmNvbnRhaW5lcjpiZWZvcmUsIC5jb250YWluZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5jb250YWluZXI6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5jb250YWluZXIge1xuICAgICAgd2lkdGg6IDc1MHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogOTcwcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTE3MHB4OyB9IH1cblxuLmNvbnRhaW5lci1mbHVpZCB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDsgfVxuICAuY29udGFpbmVyLWZsdWlkOmJlZm9yZSwgLmNvbnRhaW5lci1mbHVpZDphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLmNvbnRhaW5lci1mbHVpZDphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLnJvdyB7XG4gIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDsgfVxuICAucm93OmJlZm9yZSwgLnJvdzphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnJvdzphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLmNvbC14cy0xLCAuY29sLXNtLTEsIC5jb2wtbWQtMSwgLmNvbC1sZy0xLCAuY29sLXhzLTIsIC5jb2wtc20tMiwgLmNvbC1tZC0yLCAuY29sLWxnLTIsIC5jb2wteHMtMywgLmNvbC1zbS0zLCAuY29sLW1kLTMsIC5jb2wtbGctMywgLmNvbC14cy00LCAuY29sLXNtLTQsIC5jb2wtbWQtNCwgLmNvbC1sZy00LCAuY29sLXhzLTUsIC5jb2wtc20tNSwgLmNvbC1tZC01LCAuY29sLWxnLTUsIC5jb2wteHMtNiwgLmNvbC1zbS02LCAuY29sLW1kLTYsIC5jb2wtbGctNiwgLmNvbC14cy03LCAuY29sLXNtLTcsIC5jb2wtbWQtNywgLmNvbC1sZy03LCAuY29sLXhzLTgsIC5jb2wtc20tOCwgLmNvbC1tZC04LCAuY29sLWxnLTgsIC5jb2wteHMtOSwgLmNvbC1zbS05LCAuY29sLW1kLTksIC5jb2wtbGctOSwgLmNvbC14cy0xMCwgLmNvbC1zbS0xMCwgLmNvbC1tZC0xMCwgLmNvbC1sZy0xMCwgLmNvbC14cy0xMSwgLmNvbC1zbS0xMSwgLmNvbC1tZC0xMSwgLmNvbC1sZy0xMSwgLmNvbC14cy0xMiwgLmNvbC1zbS0xMiwgLmNvbC1tZC0xMiwgLmNvbC1sZy0xMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH1cblxuLmNvbC14cy0xLCAuY29sLXhzLTIsIC5jb2wteHMtMywgLmNvbC14cy00LCAuY29sLXhzLTUsIC5jb2wteHMtNiwgLmNvbC14cy03LCAuY29sLXhzLTgsIC5jb2wteHMtOSwgLmNvbC14cy0xMCwgLmNvbC14cy0xMSwgLmNvbC14cy0xMiB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5jb2wteHMtMSB7XG4gIHdpZHRoOiA4LjMzMzMzJTtcbiAgcGFkZGluZzogMHB4IDE1cHg7IH1cblxuLmNvbC14cy0yIHtcbiAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgcGFkZGluZzogMHB4IDE1cHg7IH1cblxuLmNvbC14cy0zIHtcbiAgd2lkdGg6IDI1JTtcbiAgcGFkZGluZzogMHB4IDE1cHg7IH1cblxuLmNvbC14cy00IHtcbiAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgcGFkZGluZzogMHB4IDE1cHg7IH1cblxuLmNvbC14cy01IHtcbiAgd2lkdGg6IDQxLjY2NjY3JTtcbiAgcGFkZGluZzogMHB4IDE1cHg7IH1cblxuLmNvbC14cy02IHtcbiAgd2lkdGg6IDUwJTtcbiAgcGFkZGluZzogMHB4IDE1cHg7IH1cblxuLmNvbC14cy03IHtcbiAgd2lkdGg6IDU4LjMzMzMzJTtcbiAgcGFkZGluZzogMHB4IDE1cHg7IH1cblxuLmNvbC14cy04IHtcbiAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgcGFkZGluZzogMHB4IDE1cHg7IH1cblxuLmNvbC14cy05IHtcbiAgd2lkdGg6IDc1JTtcbiAgcGFkZGluZzogMHB4IDE1cHg7IH1cblxuLmNvbC14cy0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMyU7XG4gIHBhZGRpbmc6IDBweCAxNXB4OyB9XG5cbi5jb2wteHMtMTEge1xuICB3aWR0aDogOTEuNjY2NjclO1xuICBwYWRkaW5nOiAwcHggMTVweDsgfVxuXG4uY29sLXhzLTEyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDBweCAxNXB4OyB9XG5cbi5jb2wteHMtcHVsbC0wIHtcbiAgcmlnaHQ6IGF1dG87IH1cblxuLmNvbC14cy1wdWxsLTEge1xuICByaWdodDogOC4zMzMzMyU7IH1cblxuLmNvbC14cy1wdWxsLTIge1xuICByaWdodDogMTYuNjY2NjclOyB9XG5cbi5jb2wteHMtcHVsbC0zIHtcbiAgcmlnaHQ6IDI1JTsgfVxuXG4uY29sLXhzLXB1bGwtNCB7XG4gIHJpZ2h0OiAzMy4zMzMzMyU7IH1cblxuLmNvbC14cy1wdWxsLTUge1xuICByaWdodDogNDEuNjY2NjclOyB9XG5cbi5jb2wteHMtcHVsbC02IHtcbiAgcmlnaHQ6IDUwJTsgfVxuXG4uY29sLXhzLXB1bGwtNyB7XG4gIHJpZ2h0OiA1OC4zMzMzMyU7IH1cblxuLmNvbC14cy1wdWxsLTgge1xuICByaWdodDogNjYuNjY2NjclOyB9XG5cbi5jb2wteHMtcHVsbC05IHtcbiAgcmlnaHQ6IDc1JTsgfVxuXG4uY29sLXhzLXB1bGwtMTAge1xuICByaWdodDogODMuMzMzMzMlOyB9XG5cbi5jb2wteHMtcHVsbC0xMSB7XG4gIHJpZ2h0OiA5MS42NjY2NyU7IH1cblxuLmNvbC14cy1wdWxsLTEyIHtcbiAgcmlnaHQ6IDEwMCU7IH1cblxuLmNvbC14cy1wdXNoLTAge1xuICBsZWZ0OiBhdXRvOyB9XG5cbi5jb2wteHMtcHVzaC0xIHtcbiAgbGVmdDogOC4zMzMzMyU7IH1cblxuLmNvbC14cy1wdXNoLTIge1xuICBsZWZ0OiAxNi42NjY2NyU7IH1cblxuLmNvbC14cy1wdXNoLTMge1xuICBsZWZ0OiAyNSU7IH1cblxuLmNvbC14cy1wdXNoLTQge1xuICBsZWZ0OiAzMy4zMzMzMyU7IH1cblxuLmNvbC14cy1wdXNoLTUge1xuICBsZWZ0OiA0MS42NjY2NyU7IH1cblxuLmNvbC14cy1wdXNoLTYge1xuICBsZWZ0OiA1MCU7IH1cblxuLmNvbC14cy1wdXNoLTcge1xuICBsZWZ0OiA1OC4zMzMzMyU7IH1cblxuLmNvbC14cy1wdXNoLTgge1xuICBsZWZ0OiA2Ni42NjY2NyU7IH1cblxuLmNvbC14cy1wdXNoLTkge1xuICBsZWZ0OiA3NSU7IH1cblxuLmNvbC14cy1wdXNoLTEwIHtcbiAgbGVmdDogODMuMzMzMzMlOyB9XG5cbi5jb2wteHMtcHVzaC0xMSB7XG4gIGxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4uY29sLXhzLXB1c2gtMTIge1xuICBsZWZ0OiAxMDAlOyB9XG5cbi5jb2wteHMtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogMCU7IH1cblxuLmNvbC14cy1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuXG4uY29sLXhzLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uY29sLXhzLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuXG4uY29sLXhzLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uY29sLXhzLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4uY29sLXhzLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuXG4uY29sLXhzLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uY29sLXhzLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4uY29sLXhzLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuXG4uY29sLXhzLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cblxuLmNvbC14cy1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG5cbi5jb2wteHMtb2Zmc2V0LTEyIHtcbiAgbWFyZ2luLWxlZnQ6IDEwMCU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2wtc20tMSwgLmNvbC1zbS0yLCAuY29sLXNtLTMsIC5jb2wtc20tNCwgLmNvbC1zbS01LCAuY29sLXNtLTYsIC5jb2wtc20tNywgLmNvbC1zbS04LCAuY29sLXNtLTksIC5jb2wtc20tMTAsIC5jb2wtc20tMTEsIC5jb2wtc20tMTIge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5jb2wtc20tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlO1xuICAgIHBhZGRpbmc6IDBweCAxNXB4OyB9XG4gIC5jb2wtc20tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICBwYWRkaW5nOiAwcHggMTVweDsgfVxuICAuY29sLXNtLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgcGFkZGluZzogMHB4IDE1cHg7IH1cbiAgLmNvbC1zbS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgIHBhZGRpbmc6IDBweCAxNXB4OyB9XG4gIC5jb2wtc20tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTtcbiAgICBwYWRkaW5nOiAwcHggMTVweDsgfVxuICAuY29sLXNtLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcGFkZGluZzogMHB4IDE1cHg7IH1cbiAgLmNvbC1zbS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlO1xuICAgIHBhZGRpbmc6IDBweCAxNXB4OyB9XG4gIC5jb2wtc20tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICBwYWRkaW5nOiAwcHggMTVweDsgfVxuICAuY29sLXNtLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gICAgcGFkZGluZzogMHB4IDE1cHg7IH1cbiAgLmNvbC1zbS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTtcbiAgICBwYWRkaW5nOiAwcHggMTVweDsgfVxuICAuY29sLXNtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclO1xuICAgIHBhZGRpbmc6IDBweCAxNXB4OyB9XG4gIC5jb2wtc20tMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDBweCAxNXB4OyB9XG4gIC5jb2wtc20tcHVsbC0wIHtcbiAgICByaWdodDogYXV0bzsgfVxuICAuY29sLXNtLXB1bGwtMSB7XG4gICAgcmlnaHQ6IDguMzMzMzMlOyB9XG4gIC5jb2wtc20tcHVsbC0yIHtcbiAgICByaWdodDogMTYuNjY2NjclOyB9XG4gIC5jb2wtc20tcHVsbC0zIHtcbiAgICByaWdodDogMjUlOyB9XG4gIC5jb2wtc20tcHVsbC00IHtcbiAgICByaWdodDogMzMuMzMzMzMlOyB9XG4gIC5jb2wtc20tcHVsbC01IHtcbiAgICByaWdodDogNDEuNjY2NjclOyB9XG4gIC5jb2wtc20tcHVsbC02IHtcbiAgICByaWdodDogNTAlOyB9XG4gIC5jb2wtc20tcHVsbC03IHtcbiAgICByaWdodDogNTguMzMzMzMlOyB9XG4gIC5jb2wtc20tcHVsbC04IHtcbiAgICByaWdodDogNjYuNjY2NjclOyB9XG4gIC5jb2wtc20tcHVsbC05IHtcbiAgICByaWdodDogNzUlOyB9XG4gIC5jb2wtc20tcHVsbC0xMCB7XG4gICAgcmlnaHQ6IDgzLjMzMzMzJTsgfVxuICAuY29sLXNtLXB1bGwtMTEge1xuICAgIHJpZ2h0OiA5MS42NjY2NyU7IH1cbiAgLmNvbC1zbS1wdWxsLTEyIHtcbiAgICByaWdodDogMTAwJTsgfVxuICAuY29sLXNtLXB1c2gtMCB7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuY29sLXNtLXB1c2gtMSB7XG4gICAgbGVmdDogOC4zMzMzMyU7IH1cbiAgLmNvbC1zbS1wdXNoLTIge1xuICAgIGxlZnQ6IDE2LjY2NjY3JTsgfVxuICAuY29sLXNtLXB1c2gtMyB7XG4gICAgbGVmdDogMjUlOyB9XG4gIC5jb2wtc20tcHVzaC00IHtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmNvbC1zbS1wdXNoLTUge1xuICAgIGxlZnQ6IDQxLjY2NjY3JTsgfVxuICAuY29sLXNtLXB1c2gtNiB7XG4gICAgbGVmdDogNTAlOyB9XG4gIC5jb2wtc20tcHVzaC03IHtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmNvbC1zbS1wdXNoLTgge1xuICAgIGxlZnQ6IDY2LjY2NjY3JTsgfVxuICAuY29sLXNtLXB1c2gtOSB7XG4gICAgbGVmdDogNzUlOyB9XG4gIC5jb2wtc20tcHVzaC0xMCB7XG4gICAgbGVmdDogODMuMzMzMzMlOyB9XG4gIC5jb2wtc20tcHVzaC0xMSB7XG4gICAgbGVmdDogOTEuNjY2NjclOyB9XG4gIC5jb2wtc20tcHVzaC0xMiB7XG4gICAgbGVmdDogMTAwJTsgfVxuICAuY29sLXNtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmNvbC1zbS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5jb2wtc20tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmNvbC1zbS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuY29sLXNtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5jb2wtc20tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmNvbC1zbS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuY29sLXNtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5jb2wtc20tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmNvbC1zbS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuY29sLXNtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuY29sLXNtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAuY29sLXNtLW9mZnNldC0xMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmNvbC1tZC0xLCAuY29sLW1kLTIsIC5jb2wtbWQtMywgLmNvbC1tZC00LCAuY29sLW1kLTUsIC5jb2wtbWQtNiwgLmNvbC1tZC03LCAuY29sLW1kLTgsIC5jb2wtbWQtOSwgLmNvbC1tZC0xMCwgLmNvbC1tZC0xMSwgLmNvbC1tZC0xMiB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmNvbC1tZC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7XG4gICAgcGFkZGluZzogMHB4IDE1cHg7IH1cbiAgLmNvbC1tZC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgIHBhZGRpbmc6IDBweCAxNXB4OyB9XG4gIC5jb2wtbWQtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBwYWRkaW5nOiAwcHggMTVweDsgfVxuICAuY29sLW1kLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgcGFkZGluZzogMHB4IDE1cHg7IH1cbiAgLmNvbC1tZC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclO1xuICAgIHBhZGRpbmc6IDBweCAxNXB4OyB9XG4gIC5jb2wtbWQtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBwYWRkaW5nOiAwcHggMTVweDsgfVxuICAuY29sLW1kLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7XG4gICAgcGFkZGluZzogMHB4IDE1cHg7IH1cbiAgLmNvbC1tZC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclO1xuICAgIHBhZGRpbmc6IDBweCAxNXB4OyB9XG4gIC5jb2wtbWQtOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgICBwYWRkaW5nOiAwcHggMTVweDsgfVxuICAuY29sLW1kLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgIHBhZGRpbmc6IDBweCAxNXB4OyB9XG4gIC5jb2wtbWQtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7XG4gICAgcGFkZGluZzogMHB4IDE1cHg7IH1cbiAgLmNvbC1tZC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMHB4IDE1cHg7IH1cbiAgLmNvbC1tZC1wdWxsLTAge1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5jb2wtbWQtcHVsbC0xIHtcbiAgICByaWdodDogOC4zMzMzMyU7IH1cbiAgLmNvbC1tZC1wdWxsLTIge1xuICAgIHJpZ2h0OiAxNi42NjY2NyU7IH1cbiAgLmNvbC1tZC1wdWxsLTMge1xuICAgIHJpZ2h0OiAyNSU7IH1cbiAgLmNvbC1tZC1wdWxsLTQge1xuICAgIHJpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgLmNvbC1tZC1wdWxsLTUge1xuICAgIHJpZ2h0OiA0MS42NjY2NyU7IH1cbiAgLmNvbC1tZC1wdWxsLTYge1xuICAgIHJpZ2h0OiA1MCU7IH1cbiAgLmNvbC1tZC1wdWxsLTcge1xuICAgIHJpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgLmNvbC1tZC1wdWxsLTgge1xuICAgIHJpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgLmNvbC1tZC1wdWxsLTkge1xuICAgIHJpZ2h0OiA3NSU7IH1cbiAgLmNvbC1tZC1wdWxsLTEwIHtcbiAgICByaWdodDogODMuMzMzMzMlOyB9XG4gIC5jb2wtbWQtcHVsbC0xMSB7XG4gICAgcmlnaHQ6IDkxLjY2NjY3JTsgfVxuICAuY29sLW1kLXB1bGwtMTIge1xuICAgIHJpZ2h0OiAxMDAlOyB9XG4gIC5jb2wtbWQtcHVzaC0wIHtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5jb2wtbWQtcHVzaC0xIHtcbiAgICBsZWZ0OiA4LjMzMzMzJTsgfVxuICAuY29sLW1kLXB1c2gtMiB7XG4gICAgbGVmdDogMTYuNjY2NjclOyB9XG4gIC5jb2wtbWQtcHVzaC0zIHtcbiAgICBsZWZ0OiAyNSU7IH1cbiAgLmNvbC1tZC1wdXNoLTQge1xuICAgIGxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuY29sLW1kLXB1c2gtNSB7XG4gICAgbGVmdDogNDEuNjY2NjclOyB9XG4gIC5jb2wtbWQtcHVzaC02IHtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLmNvbC1tZC1wdXNoLTcge1xuICAgIGxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuY29sLW1kLXB1c2gtOCB7XG4gICAgbGVmdDogNjYuNjY2NjclOyB9XG4gIC5jb2wtbWQtcHVzaC05IHtcbiAgICBsZWZ0OiA3NSU7IH1cbiAgLmNvbC1tZC1wdXNoLTEwIHtcbiAgICBsZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmNvbC1tZC1wdXNoLTExIHtcbiAgICBsZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmNvbC1tZC1wdXNoLTEyIHtcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5jb2wtbWQtb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuY29sLW1kLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmNvbC1tZC1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAuY29sLW1kLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5jb2wtbWQtb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmNvbC1tZC1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAuY29sLW1kLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5jb2wtbWQtb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmNvbC1tZC1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAuY29sLW1kLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5jb2wtbWQtb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5jb2wtbWQtb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5jb2wtbWQtb2Zmc2V0LTEyIHtcbiAgICBtYXJnaW4tbGVmdDogMTAwJTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvbC1sZy0xLCAuY29sLWxnLTIsIC5jb2wtbGctMywgLmNvbC1sZy00LCAuY29sLWxnLTUsIC5jb2wtbGctNiwgLmNvbC1sZy03LCAuY29sLWxnLTgsIC5jb2wtbGctOSwgLmNvbC1sZy0xMCwgLmNvbC1sZy0xMSwgLmNvbC1sZy0xMiB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmNvbC1sZy0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7XG4gICAgcGFkZGluZzogMHB4IDE1cHg7IH1cbiAgLmNvbC1sZy0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgIHBhZGRpbmc6IDBweCAxNXB4OyB9XG4gIC5jb2wtbGctMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBwYWRkaW5nOiAwcHggMTVweDsgfVxuICAuY29sLWxnLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgcGFkZGluZzogMHB4IDE1cHg7IH1cbiAgLmNvbC1sZy01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclO1xuICAgIHBhZGRpbmc6IDBweCAxNXB4OyB9XG4gIC5jb2wtbGctNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBwYWRkaW5nOiAwcHggMTVweDsgfVxuICAuY29sLWxnLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7XG4gICAgcGFkZGluZzogMHB4IDE1cHg7IH1cbiAgLmNvbC1sZy04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclO1xuICAgIHBhZGRpbmc6IDBweCAxNXB4OyB9XG4gIC5jb2wtbGctOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgICBwYWRkaW5nOiAwcHggMTVweDsgfVxuICAuY29sLWxnLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgIHBhZGRpbmc6IDBweCAxNXB4OyB9XG4gIC5jb2wtbGctMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7XG4gICAgcGFkZGluZzogMHB4IDE1cHg7IH1cbiAgLmNvbC1sZy0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMHB4IDE1cHg7IH1cbiAgLmNvbC1sZy1wdWxsLTAge1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5jb2wtbGctcHVsbC0xIHtcbiAgICByaWdodDogOC4zMzMzMyU7IH1cbiAgLmNvbC1sZy1wdWxsLTIge1xuICAgIHJpZ2h0OiAxNi42NjY2NyU7IH1cbiAgLmNvbC1sZy1wdWxsLTMge1xuICAgIHJpZ2h0OiAyNSU7IH1cbiAgLmNvbC1sZy1wdWxsLTQge1xuICAgIHJpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgLmNvbC1sZy1wdWxsLTUge1xuICAgIHJpZ2h0OiA0MS42NjY2NyU7IH1cbiAgLmNvbC1sZy1wdWxsLTYge1xuICAgIHJpZ2h0OiA1MCU7IH1cbiAgLmNvbC1sZy1wdWxsLTcge1xuICAgIHJpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgLmNvbC1sZy1wdWxsLTgge1xuICAgIHJpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgLmNvbC1sZy1wdWxsLTkge1xuICAgIHJpZ2h0OiA3NSU7IH1cbiAgLmNvbC1sZy1wdWxsLTEwIHtcbiAgICByaWdodDogODMuMzMzMzMlOyB9XG4gIC5jb2wtbGctcHVsbC0xMSB7XG4gICAgcmlnaHQ6IDkxLjY2NjY3JTsgfVxuICAuY29sLWxnLXB1bGwtMTIge1xuICAgIHJpZ2h0OiAxMDAlOyB9XG4gIC5jb2wtbGctcHVzaC0wIHtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5jb2wtbGctcHVzaC0xIHtcbiAgICBsZWZ0OiA4LjMzMzMzJTsgfVxuICAuY29sLWxnLXB1c2gtMiB7XG4gICAgbGVmdDogMTYuNjY2NjclOyB9XG4gIC5jb2wtbGctcHVzaC0zIHtcbiAgICBsZWZ0OiAyNSU7IH1cbiAgLmNvbC1sZy1wdXNoLTQge1xuICAgIGxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuY29sLWxnLXB1c2gtNSB7XG4gICAgbGVmdDogNDEuNjY2NjclOyB9XG4gIC5jb2wtbGctcHVzaC02IHtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLmNvbC1sZy1wdXNoLTcge1xuICAgIGxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuY29sLWxnLXB1c2gtOCB7XG4gICAgbGVmdDogNjYuNjY2NjclOyB9XG4gIC5jb2wtbGctcHVzaC05IHtcbiAgICBsZWZ0OiA3NSU7IH1cbiAgLmNvbC1sZy1wdXNoLTEwIHtcbiAgICBsZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmNvbC1sZy1wdXNoLTExIHtcbiAgICBsZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmNvbC1sZy1wdXNoLTEyIHtcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5jb2wtbGctb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuY29sLWxnLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmNvbC1sZy1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAuY29sLWxnLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5jb2wtbGctb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmNvbC1sZy1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAuY29sLWxnLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5jb2wtbGctb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmNvbC1sZy1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAuY29sLWxnLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5jb2wtbGctb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5jb2wtbGctb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5jb2wtbGctb2Zmc2V0LTEyIHtcbiAgICBtYXJnaW4tbGVmdDogMTAwJTsgfSB9XG5cbnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgY29sb3I6ICM3Nzc3Nzc7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxudGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLFxuICAudGFibGUgPiB0aGVhZCA+IHRyID4gdGQsXG4gIC50YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbiAgLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkLFxuICAudGFibGUgPiB0Zm9vdCA+IHRyID4gdGgsXG4gIC50YWJsZSA+IHRmb290ID4gdHIgPiB0ZCB7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICBsaW5lLWhlaWdodDogMS40Mjg1NztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGRkOyB9XG4gIC50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2RkZDsgfVxuICAudGFibGUgPiBjYXB0aW9uICsgdGhlYWQgPiB0cjpmaXJzdC1jaGlsZCA+IHRoLFxuICAudGFibGUgPiBjYXB0aW9uICsgdGhlYWQgPiB0cjpmaXJzdC1jaGlsZCA+IHRkLFxuICAudGFibGUgPiBjb2xncm91cCArIHRoZWFkID4gdHI6Zmlyc3QtY2hpbGQgPiB0aCxcbiAgLnRhYmxlID4gY29sZ3JvdXAgKyB0aGVhZCA+IHRyOmZpcnN0LWNoaWxkID4gdGQsXG4gIC50YWJsZSA+IHRoZWFkOmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgPiB0aCxcbiAgLnRhYmxlID4gdGhlYWQ6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCA+IHRkIHtcbiAgICBib3JkZXItdG9wOiAwOyB9XG4gIC50YWJsZSA+IHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZGRkOyB9XG4gIC50YWJsZSAudGFibGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmM2YzZjM7IH1cblxuLnRhYmxlLWNvbmRlbnNlZCA+IHRoZWFkID4gdHIgPiB0aCxcbi50YWJsZS1jb25kZW5zZWQgPiB0aGVhZCA+IHRyID4gdGQsXG4udGFibGUtY29uZGVuc2VkID4gdGJvZHkgPiB0ciA+IHRoLFxuLnRhYmxlLWNvbmRlbnNlZCA+IHRib2R5ID4gdHIgPiB0ZCxcbi50YWJsZS1jb25kZW5zZWQgPiB0Zm9vdCA+IHRyID4gdGgsXG4udGFibGUtY29uZGVuc2VkID4gdGZvb3QgPiB0ciA+IHRkIHtcbiAgcGFkZGluZzogNnB4OyB9XG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7IH1cbiAgLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRoLFxuICAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyID4gdGQsXG4gIC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHIgPiB0aCxcbiAgLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRkLFxuICAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyID4gdGgsXG4gIC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHIgPiB0ZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDsgfVxuICAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyID4gdGgsXG4gIC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHIgPiB0ZCB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4OyB9XG5cbi50YWJsZS1zdHJpcGVkID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZShvZGQpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTsgfVxuXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTsgfVxuXG50YWJsZSBjb2xbY2xhc3MqPVwiY29sLVwiXSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiB0YWJsZS1jb2x1bW47IH1cblxudGFibGUgdGRbY2xhc3MqPVwiY29sLVwiXSxcbnRhYmxlIHRoW2NsYXNzKj1cImNvbC1cIl0ge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBmbG9hdDogbm9uZTtcbiAgZGlzcGxheTogdGFibGUtY2VsbDsgfVxuXG4udGFibGUgPiB0aGVhZCA+IHRyID4gdGQuYWN0aXZlLFxuLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLmFjdGl2ZSxcbi50YWJsZSA+IHRoZWFkID4gdHIuYWN0aXZlID4gdGQsXG4udGFibGUgPiB0aGVhZCA+IHRyLmFjdGl2ZSA+IHRoLFxuLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkLmFjdGl2ZSxcbi50YWJsZSA+IHRib2R5ID4gdHIgPiB0aC5hY3RpdmUsXG4udGFibGUgPiB0Ym9keSA+IHRyLmFjdGl2ZSA+IHRkLFxuLnRhYmxlID4gdGJvZHkgPiB0ci5hY3RpdmUgPiB0aCxcbi50YWJsZSA+IHRmb290ID4gdHIgPiB0ZC5hY3RpdmUsXG4udGFibGUgPiB0Zm9vdCA+IHRyID4gdGguYWN0aXZlLFxuLnRhYmxlID4gdGZvb3QgPiB0ci5hY3RpdmUgPiB0ZCxcbi50YWJsZSA+IHRmb290ID4gdHIuYWN0aXZlID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1OyB9XG5cbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIgPiB0ZC5hY3RpdmU6aG92ZXIsXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyID4gdGguYWN0aXZlOmhvdmVyLFxuLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ci5hY3RpdmU6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHI6aG92ZXIgPiAuYWN0aXZlLFxuLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ci5hY3RpdmU6aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU4ZTg7IH1cblxuLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRkLnN1Y2Nlc3MsXG4udGFibGUgPiB0aGVhZCA+IHRyID4gdGguc3VjY2Vzcyxcbi50YWJsZSA+IHRoZWFkID4gdHIuc3VjY2VzcyA+IHRkLFxuLnRhYmxlID4gdGhlYWQgPiB0ci5zdWNjZXNzID4gdGgsXG4udGFibGUgPiB0Ym9keSA+IHRyID4gdGQuc3VjY2Vzcyxcbi50YWJsZSA+IHRib2R5ID4gdHIgPiB0aC5zdWNjZXNzLFxuLnRhYmxlID4gdGJvZHkgPiB0ci5zdWNjZXNzID4gdGQsXG4udGFibGUgPiB0Ym9keSA+IHRyLnN1Y2Nlc3MgPiB0aCxcbi50YWJsZSA+IHRmb290ID4gdHIgPiB0ZC5zdWNjZXNzLFxuLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoLnN1Y2Nlc3MsXG4udGFibGUgPiB0Zm9vdCA+IHRyLnN1Y2Nlc3MgPiB0ZCxcbi50YWJsZSA+IHRmb290ID4gdHIuc3VjY2VzcyA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyRkNGOTsgfVxuXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyID4gdGQuc3VjY2Vzczpob3Zlcixcbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIgPiB0aC5zdWNjZXNzOmhvdmVyLFxuLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ci5zdWNjZXNzOmhvdmVyID4gdGQsXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyOmhvdmVyID4gLnN1Y2Nlc3MsXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyLnN1Y2Nlc3M6aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGY3ZWY7IH1cblxuLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRkLmluZm8sXG4udGFibGUgPiB0aGVhZCA+IHRyID4gdGguaW5mbyxcbi50YWJsZSA+IHRoZWFkID4gdHIuaW5mbyA+IHRkLFxuLnRhYmxlID4gdGhlYWQgPiB0ci5pbmZvID4gdGgsXG4udGFibGUgPiB0Ym9keSA+IHRyID4gdGQuaW5mbyxcbi50YWJsZSA+IHRib2R5ID4gdHIgPiB0aC5pbmZvLFxuLnRhYmxlID4gdGJvZHkgPiB0ci5pbmZvID4gdGQsXG4udGFibGUgPiB0Ym9keSA+IHRyLmluZm8gPiB0aCxcbi50YWJsZSA+IHRmb290ID4gdHIgPiB0ZC5pbmZvLFxuLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoLmluZm8sXG4udGFibGUgPiB0Zm9vdCA+IHRyLmluZm8gPiB0ZCxcbi50YWJsZSA+IHRmb290ID4gdHIuaW5mbyA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VFRjhGQzsgfVxuXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyID4gdGQuaW5mbzpob3Zlcixcbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIgPiB0aC5pbmZvOmhvdmVyLFxuLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ci5pbmZvOmhvdmVyID4gdGQsXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyOmhvdmVyID4gLmluZm8sXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyLmluZm86aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOGVmZjg7IH1cblxuLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRkLndhcm5pbmcsXG4udGFibGUgPiB0aGVhZCA+IHRyID4gdGgud2FybmluZyxcbi50YWJsZSA+IHRoZWFkID4gdHIud2FybmluZyA+IHRkLFxuLnRhYmxlID4gdGhlYWQgPiB0ci53YXJuaW5nID4gdGgsXG4udGFibGUgPiB0Ym9keSA+IHRyID4gdGQud2FybmluZyxcbi50YWJsZSA+IHRib2R5ID4gdHIgPiB0aC53YXJuaW5nLFxuLnRhYmxlID4gdGJvZHkgPiB0ci53YXJuaW5nID4gdGQsXG4udGFibGUgPiB0Ym9keSA+IHRyLndhcm5pbmcgPiB0aCxcbi50YWJsZSA+IHRmb290ID4gdHIgPiB0ZC53YXJuaW5nLFxuLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoLndhcm5pbmcsXG4udGFibGUgPiB0Zm9vdCA+IHRyLndhcm5pbmcgPiB0ZCxcbi50YWJsZSA+IHRmb290ID4gdHIud2FybmluZyA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkFGMDsgfVxuXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyID4gdGQud2FybmluZzpob3Zlcixcbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIgPiB0aC53YXJuaW5nOmhvdmVyLFxuLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ci53YXJuaW5nOmhvdmVyID4gdGQsXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyOmhvdmVyID4gLndhcm5pbmcsXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyLndhcm5pbmc6aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYyZDc7IH1cblxuLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRkLmRhbmdlcixcbi50YWJsZSA+IHRoZWFkID4gdHIgPiB0aC5kYW5nZXIsXG4udGFibGUgPiB0aGVhZCA+IHRyLmRhbmdlciA+IHRkLFxuLnRhYmxlID4gdGhlYWQgPiB0ci5kYW5nZXIgPiB0aCxcbi50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZC5kYW5nZXIsXG4udGFibGUgPiB0Ym9keSA+IHRyID4gdGguZGFuZ2VyLFxuLnRhYmxlID4gdGJvZHkgPiB0ci5kYW5nZXIgPiB0ZCxcbi50YWJsZSA+IHRib2R5ID4gdHIuZGFuZ2VyID4gdGgsXG4udGFibGUgPiB0Zm9vdCA+IHRyID4gdGQuZGFuZ2VyLFxuLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoLmRhbmdlcixcbi50YWJsZSA+IHRmb290ID4gdHIuZGFuZ2VyID4gdGQsXG4udGFibGUgPiB0Zm9vdCA+IHRyLmRhbmdlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZERUZFRTsgfVxuXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyID4gdGQuZGFuZ2VyOmhvdmVyLFxuLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ciA+IHRoLmRhbmdlcjpob3Zlcixcbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIuZGFuZ2VyOmhvdmVyID4gdGQsXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyOmhvdmVyID4gLmRhbmdlcixcbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIuZGFuZ2VyOmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFkYWQ3OyB9XG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgbWluLWhlaWdodDogMC4wMSU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAudGFibGUtcmVzcG9uc2l2ZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7IH1cbiAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUgPiB0aGVhZCA+IHRyID4gdGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRoLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUgPiB0Zm9vdCA+IHRyID4gdGgsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRkIHtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgIGJvcmRlcjogMDsgfVxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0ciA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogMDsgfVxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHIgPiB0aDpsYXN0LWNoaWxkLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHIgPiB0ZDpsYXN0LWNoaWxkLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHIgPiB0aDpsYXN0LWNoaWxkLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHIgPiB0ZDpsYXN0LWNoaWxkLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHIgPiB0aDpsYXN0LWNoaWxkLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHIgPiB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7IH1cbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyOmxhc3QtY2hpbGQgPiB0aCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyOmxhc3QtY2hpbGQgPiB0ZCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyOmxhc3QtY2hpbGQgPiB0aCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyOmxhc3QtY2hpbGQgPiB0ZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDsgfSB9XG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMjVweDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG4gIG1pbi13aWR0aDogMDsgfVxuXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGZvbnQtc2l6ZTogMjFweDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTVlNWU1OyB9XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIG1hcmdpbjogNHB4IDAgMDtcbiAgbWFyZ2luLXRvcDogMXB4IFxcOTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgfVxuXG5pbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgfVxuXG5zZWxlY3RbbXVsdGlwbGVdLFxuc2VsZWN0W3NpemVdIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbmlucHV0W3R5cGU9XCJmaWxlXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzIHtcbiAgb3V0bGluZTogdGhpbiBkb3R0ZWQ7XG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IH1cblxub3V0cHV0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiA3cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTc7XG4gIGNvbG9yOiAjNTU1NTU1OyB9XG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzRweDtcbiAgcGFkZGluZzogNnB4IDEycHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTc7XG4gIGNvbG9yOiAjNTU1NTU1O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjQ0JENUREO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IDAuMTVzLCBib3gtc2hhZG93IGVhc2UtaW4tb3V0IDAuMTVzO1xuICAtby10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgMC4xNXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgMC4xNXM7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciBlYXNlLWluLW91dCAwLjE1cywgYm94LXNoYWRvdyBlYXNlLWluLW91dCAwLjE1czsgfVxuICAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICM2NmFmZTk7XG4gICAgb3V0bGluZTogMDtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSwgMCAwIDhweCByZ2JhKDEwMiwgMTc1LCAyMzMsIDAuNik7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpLCAwIDAgOHB4IHJnYmEoMTAyLCAxNzUsIDIzMywgMC42KTsgfVxuICAuZm9ybS1jb250cm9sOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogIzk5OTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5mb3JtLWNvbnRyb2w6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogIzk5OTsgfVxuICAuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogIzk5OTsgfVxuICAuZm9ybS1jb250cm9sOjotbXMtZXhwYW5kIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmZvcm0tY29udHJvbFtkaXNhYmxlZF0sIC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmZvcm0tY29udHJvbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5mb3JtLWNvbnRyb2xbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmZvcm0tY29udHJvbCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAwKSB7XG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdLmZvcm0tY29udHJvbCxcbiAgaW5wdXRbdHlwZT1cInRpbWVcIl0uZm9ybS1jb250cm9sLFxuICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0uZm9ybS1jb250cm9sLFxuICBpbnB1dFt0eXBlPVwibW9udGhcIl0uZm9ybS1jb250cm9sIHtcbiAgICBsaW5lLWhlaWdodDogMzRweDsgfVxuICBpbnB1dFt0eXBlPVwiZGF0ZVwiXS5pbnB1dC1zbSwgLmlucHV0LWdyb3VwLXNtID4gaW5wdXQuZm9ybS1jb250cm9sW3R5cGU9XCJkYXRlXCJdLFxuICAuaW5wdXQtZ3JvdXAtc20gPiBpbnB1dC5pbnB1dC1ncm91cC1hZGRvblt0eXBlPVwiZGF0ZVwiXSxcbiAgLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IGlucHV0LmJ0blt0eXBlPVwiZGF0ZVwiXSxcbiAgLmlucHV0LWdyb3VwLXNtIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICBpbnB1dFt0eXBlPVwidGltZVwiXS5pbnB1dC1zbSxcbiAgLmlucHV0LWdyb3VwLXNtID4gaW5wdXQuZm9ybS1jb250cm9sW3R5cGU9XCJ0aW1lXCJdLFxuICAuaW5wdXQtZ3JvdXAtc20gPiBpbnB1dC5pbnB1dC1ncm91cC1hZGRvblt0eXBlPVwidGltZVwiXSxcbiAgLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IGlucHV0LmJ0blt0eXBlPVwidGltZVwiXSxcbiAgLmlucHV0LWdyb3VwLXNtXG4gIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0uaW5wdXQtc20sXG4gIC5pbnB1dC1ncm91cC1zbSA+IGlucHV0LmZvcm0tY29udHJvbFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gIC5pbnB1dC1ncm91cC1zbSA+IGlucHV0LmlucHV0LWdyb3VwLWFkZG9uW3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IGlucHV0LmJ0blt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gIC5pbnB1dC1ncm91cC1zbVxuICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gIGlucHV0W3R5cGU9XCJtb250aFwiXS5pbnB1dC1zbSxcbiAgLmlucHV0LWdyb3VwLXNtID4gaW5wdXQuZm9ybS1jb250cm9sW3R5cGU9XCJtb250aFwiXSxcbiAgLmlucHV0LWdyb3VwLXNtID4gaW5wdXQuaW5wdXQtZ3JvdXAtYWRkb25bdHlwZT1cIm1vbnRoXCJdLFxuICAuaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gaW5wdXQuYnRuW3R5cGU9XCJtb250aFwiXSxcbiAgLmlucHV0LWdyb3VwLXNtXG4gIGlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7IH1cbiAgaW5wdXRbdHlwZT1cImRhdGVcIl0uaW5wdXQtbGcsIC5pbnB1dC1ncm91cC1sZyA+IGlucHV0LmZvcm0tY29udHJvbFt0eXBlPVwiZGF0ZVwiXSxcbiAgLmlucHV0LWdyb3VwLWxnID4gaW5wdXQuaW5wdXQtZ3JvdXAtYWRkb25bdHlwZT1cImRhdGVcIl0sXG4gIC5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiBpbnB1dC5idG5bdHlwZT1cImRhdGVcIl0sXG4gIC5pbnB1dC1ncm91cC1sZyBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgaW5wdXRbdHlwZT1cInRpbWVcIl0uaW5wdXQtbGcsXG4gIC5pbnB1dC1ncm91cC1sZyA+IGlucHV0LmZvcm0tY29udHJvbFt0eXBlPVwidGltZVwiXSxcbiAgLmlucHV0LWdyb3VwLWxnID4gaW5wdXQuaW5wdXQtZ3JvdXAtYWRkb25bdHlwZT1cInRpbWVcIl0sXG4gIC5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiBpbnB1dC5idG5bdHlwZT1cInRpbWVcIl0sXG4gIC5pbnB1dC1ncm91cC1sZ1xuICBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLmlucHV0LWxnLFxuICAuaW5wdXQtZ3JvdXAtbGcgPiBpbnB1dC5mb3JtLWNvbnRyb2xbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICAuaW5wdXQtZ3JvdXAtbGcgPiBpbnB1dC5pbnB1dC1ncm91cC1hZGRvblt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gIC5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiBpbnB1dC5idG5bdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICAuaW5wdXQtZ3JvdXAtbGdcbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICBpbnB1dFt0eXBlPVwibW9udGhcIl0uaW5wdXQtbGcsXG4gIC5pbnB1dC1ncm91cC1sZyA+IGlucHV0LmZvcm0tY29udHJvbFt0eXBlPVwibW9udGhcIl0sXG4gIC5pbnB1dC1ncm91cC1sZyA+IGlucHV0LmlucHV0LWdyb3VwLWFkZG9uW3R5cGU9XCJtb250aFwiXSxcbiAgLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IGlucHV0LmJ0blt0eXBlPVwibW9udGhcIl0sXG4gIC5pbnB1dC1ncm91cC1sZ1xuICBpbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAgIGxpbmUtaGVpZ2h0OiA0NnB4OyB9IH1cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG5cbi5yYWRpbyxcbi5jaGVja2JveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgLnJhZGlvIGxhYmVsLFxuICAuY2hlY2tib3ggbGFiZWwge1xuICAgIG1pbi1oZWlnaHQ6IDIwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbi5yYWRpby1pbmxpbmUgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbi5jaGVja2JveC1pbmxpbmUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gIG1hcmdpbi10b3A6IDRweCBcXDk7IH1cblxuLnJhZGlvICsgLnJhZGlvLFxuLmNoZWNrYm94ICsgLmNoZWNrYm94IHtcbiAgbWFyZ2luLXRvcDogLTVweDsgfVxuXG4ucmFkaW8taW5saW5lLFxuLmNoZWNrYm94LWlubGluZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4ucmFkaW8taW5saW5lICsgLnJhZGlvLWlubGluZSxcbi5jaGVja2JveC1pbmxpbmUgKyAuY2hlY2tib3gtaW5saW5lIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdW2Rpc2FibGVkXSwgaW5wdXRbdHlwZT1cInJhZGlvXCJdLmRpc2FibGVkLFxuZmllbGRzZXRbZGlzYWJsZWRdIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXVtkaXNhYmxlZF0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0uZGlzYWJsZWQsXG5maWVsZHNldFtkaXNhYmxlZF1cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuLnJhZGlvLWlubGluZS5kaXNhYmxlZCxcbmZpZWxkc2V0W2Rpc2FibGVkXSAucmFkaW8taW5saW5lLFxuLmNoZWNrYm94LWlubGluZS5kaXNhYmxlZCxcbmZpZWxkc2V0W2Rpc2FibGVkXVxuLmNoZWNrYm94LWlubGluZSB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuLnJhZGlvLmRpc2FibGVkIGxhYmVsLFxuZmllbGRzZXRbZGlzYWJsZWRdIC5yYWRpbyBsYWJlbCxcbi5jaGVja2JveC5kaXNhYmxlZCBsYWJlbCxcbmZpZWxkc2V0W2Rpc2FibGVkXVxuLmNoZWNrYm94IGxhYmVsIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gIHBhZGRpbmctdG9wOiA3cHg7XG4gIHBhZGRpbmctYm90dG9tOiA3cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1pbi1oZWlnaHQ6IDM0cHg7IH1cbiAgLmZvcm0tY29udHJvbC1zdGF0aWMuaW5wdXQtbGcsIC5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wtc3RhdGljLmZvcm0tY29udHJvbCxcbiAgLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbC1zdGF0aWMuaW5wdXQtZ3JvdXAtYWRkb24sXG4gIC5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiAuZm9ybS1jb250cm9sLXN0YXRpYy5idG4sIC5mb3JtLWNvbnRyb2wtc3RhdGljLmlucHV0LXNtLCAuaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLXN0YXRpYy5mb3JtLWNvbnRyb2wsXG4gIC5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wtc3RhdGljLmlucHV0LWdyb3VwLWFkZG9uLFxuICAuaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmZvcm0tY29udHJvbC1zdGF0aWMuYnRuIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4uaW5wdXQtc20sIC5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XG4gIGhlaWdodDogMzBweDtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbnNlbGVjdC5pbnB1dC1zbSwgLmlucHV0LWdyb3VwLXNtID4gc2VsZWN0LmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IHNlbGVjdC5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiBzZWxlY3QuYnRuIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMzBweDsgfVxuXG50ZXh0YXJlYS5pbnB1dC1zbSwgLmlucHV0LWdyb3VwLXNtID4gdGV4dGFyZWEuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gdGV4dGFyZWEuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gdGV4dGFyZWEuYnRuLFxuc2VsZWN0W211bHRpcGxlXS5pbnB1dC1zbSxcbi5pbnB1dC1ncm91cC1zbSA+IHNlbGVjdC5mb3JtLWNvbnRyb2xbbXVsdGlwbGVdLFxuLmlucHV0LWdyb3VwLXNtID4gc2VsZWN0LmlucHV0LWdyb3VwLWFkZG9uW211bHRpcGxlXSxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiBzZWxlY3QuYnRuW211bHRpcGxlXSB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uZm9ybS1ncm91cC1zbSAuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMS41O1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLmZvcm0tZ3JvdXAtc20gc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogMzBweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7IH1cblxuLmZvcm0tZ3JvdXAtc20gdGV4dGFyZWEuZm9ybS1jb250cm9sLFxuLmZvcm0tZ3JvdXAtc20gc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmZvcm0tZ3JvdXAtc20gLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICBoZWlnaHQ6IDMwcHg7XG4gIG1pbi1oZWlnaHQ6IDMycHg7XG4gIHBhZGRpbmc6IDZweCAxMHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7IH1cblxuLmlucHV0LWxnLCAuaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xuICBoZWlnaHQ6IDQ2cHg7XG4gIHBhZGRpbmc6IDEwcHggMTZweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMS4zMztcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbnNlbGVjdC5pbnB1dC1sZywgLmlucHV0LWdyb3VwLWxnID4gc2VsZWN0LmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IHNlbGVjdC5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiBzZWxlY3QuYnRuIHtcbiAgaGVpZ2h0OiA0NnB4O1xuICBsaW5lLWhlaWdodDogNDZweDsgfVxuXG50ZXh0YXJlYS5pbnB1dC1sZywgLmlucHV0LWdyb3VwLWxnID4gdGV4dGFyZWEuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gdGV4dGFyZWEuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gdGV4dGFyZWEuYnRuLFxuc2VsZWN0W211bHRpcGxlXS5pbnB1dC1sZyxcbi5pbnB1dC1ncm91cC1sZyA+IHNlbGVjdC5mb3JtLWNvbnRyb2xbbXVsdGlwbGVdLFxuLmlucHV0LWdyb3VwLWxnID4gc2VsZWN0LmlucHV0LWdyb3VwLWFkZG9uW211bHRpcGxlXSxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiBzZWxlY3QuYnRuW211bHRpcGxlXSB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uZm9ybS1ncm91cC1sZyAuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiA0NnB4O1xuICBwYWRkaW5nOiAxMHB4IDE2cHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDEuMzM7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4uZm9ybS1ncm91cC1sZyBzZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiA0NnB4O1xuICBsaW5lLWhlaWdodDogNDZweDsgfVxuXG4uZm9ybS1ncm91cC1sZyB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4uZm9ybS1ncm91cC1sZyBzZWxlY3RbbXVsdGlwbGVdLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uZm9ybS1ncm91cC1sZyAuZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gIGhlaWdodDogNDZweDtcbiAgbWluLWhlaWdodDogMzhweDtcbiAgcGFkZGluZzogMTFweCAxNnB4O1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjMzOyB9XG5cbi5oYXMtZmVlZGJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmhhcy1mZWVkYmFjayAuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0Mi41cHg7IH1cblxuLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAzNHB4O1xuICBoZWlnaHQ6IDM0cHg7XG4gIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5pbnB1dC1sZyArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssIC5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLCAuaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb24gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLCAuaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uaW5wdXQtZ3JvdXAtbGcgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICB3aWR0aDogNDZweDtcbiAgaGVpZ2h0OiA0NnB4O1xuICBsaW5lLWhlaWdodDogNDZweDsgfVxuXG4uaW5wdXQtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLCAuaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sICsgLmZvcm0tY29udHJvbC1mZWVkYmFjaywgLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uICsgLmZvcm0tY29udHJvbC1mZWVkYmFjaywgLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmlucHV0LWdyb3VwLXNtICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcbi5mb3JtLWdyb3VwLXNtIC5mb3JtLWNvbnRyb2wgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7IH1cblxuLmhhcy1zdWNjZXNzIC5oZWxwLWJsb2NrLFxuLmhhcy1zdWNjZXNzIC5jb250cm9sLWxhYmVsLFxuLmhhcy1zdWNjZXNzIC5yYWRpbyxcbi5oYXMtc3VjY2VzcyAuY2hlY2tib3gsXG4uaGFzLXN1Y2Nlc3MgLnJhZGlvLWlubGluZSxcbi5oYXMtc3VjY2VzcyAuY2hlY2tib3gtaW5saW5lLFxuLmhhcy1zdWNjZXNzLnJhZGlvIGxhYmVsLFxuLmhhcy1zdWNjZXNzLmNoZWNrYm94IGxhYmVsLFxuLmhhcy1zdWNjZXNzLnJhZGlvLWlubGluZSBsYWJlbCxcbi5oYXMtc3VjY2Vzcy5jaGVja2JveC1pbmxpbmUgbGFiZWwge1xuICBjb2xvcjogIzIyOTE3MzsgfVxuXG4uaGFzLXN1Y2Nlc3MgLmZvcm0tY29udHJvbCB7XG4gIGJvcmRlci1jb2xvcjogIzIyOTE3MztcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTsgfVxuICAuaGFzLXN1Y2Nlc3MgLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTg2ODUyO1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpLCAwIDAgNnB4ICM0NWQ0YWQ7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpLCAwIDAgNnB4ICM0NWQ0YWQ7IH1cblxuLmhhcy1zdWNjZXNzIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gIGNvbG9yOiAjMjI5MTczO1xuICBib3JkZXItY29sb3I6ICMyMjkxNzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkZDRjk7IH1cblxuLmhhcy1zdWNjZXNzIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICBjb2xvcjogIzIyOTE3MzsgfVxuXG4uaGFzLXdhcm5pbmcgLmhlbHAtYmxvY2ssXG4uaGFzLXdhcm5pbmcgLmNvbnRyb2wtbGFiZWwsXG4uaGFzLXdhcm5pbmcgLnJhZGlvLFxuLmhhcy13YXJuaW5nIC5jaGVja2JveCxcbi5oYXMtd2FybmluZyAucmFkaW8taW5saW5lLFxuLmhhcy13YXJuaW5nIC5jaGVja2JveC1pbmxpbmUsXG4uaGFzLXdhcm5pbmcucmFkaW8gbGFiZWwsXG4uaGFzLXdhcm5pbmcuY2hlY2tib3ggbGFiZWwsXG4uaGFzLXdhcm5pbmcucmFkaW8taW5saW5lIGxhYmVsLFxuLmhhcy13YXJuaW5nLmNoZWNrYm94LWlubGluZSBsYWJlbCB7XG4gIGNvbG9yOiAjQUY3RjE4OyB9XG5cbi5oYXMtd2FybmluZyAuZm9ybS1jb250cm9sIHtcbiAgYm9yZGVyLWNvbG9yOiAjQUY3RjE4O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOyB9XG4gIC5oYXMtd2FybmluZyAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICM4MjVlMTI7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSksIDAgMCA2cHggI2U2YjM0NztcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSksIDAgMCA2cHggI2U2YjM0NzsgfVxuXG4uaGFzLXdhcm5pbmcgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgY29sb3I6ICNBRjdGMTg7XG4gIGJvcmRlci1jb2xvcjogI0FGN0YxODtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkFGMDsgfVxuXG4uaGFzLXdhcm5pbmcgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIGNvbG9yOiAjQUY3RjE4OyB9XG5cbi5oYXMtZXJyb3IgLmhlbHAtYmxvY2ssXG4uaGFzLWVycm9yIC5jb250cm9sLWxhYmVsLFxuLmhhcy1lcnJvciAucmFkaW8sXG4uaGFzLWVycm9yIC5jaGVja2JveCxcbi5oYXMtZXJyb3IgLnJhZGlvLWlubGluZSxcbi5oYXMtZXJyb3IgLmNoZWNrYm94LWlubGluZSxcbi5oYXMtZXJyb3IucmFkaW8gbGFiZWwsXG4uaGFzLWVycm9yLmNoZWNrYm94IGxhYmVsLFxuLmhhcy1lcnJvci5yYWRpby1pbmxpbmUgbGFiZWwsXG4uaGFzLWVycm9yLmNoZWNrYm94LWlubGluZSBsYWJlbCB7XG4gIGNvbG9yOiAjQjEzRDMxOyB9XG5cbi5oYXMtZXJyb3IgLmZvcm0tY29udHJvbCB7XG4gIGJvcmRlci1jb2xvcjogI0IxM0QzMTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTsgfVxuICAuaGFzLWVycm9yIC5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzg5MmYyNjtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSwgMCAwIDZweCAjZDg3YTcwO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSwgMCAwIDZweCAjZDg3YTcwOyB9XG5cbi5oYXMtZXJyb3IgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgY29sb3I6ICNCMTNEMzE7XG4gIGJvcmRlci1jb2xvcjogI0IxM0QzMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZERUZFRTsgfVxuXG4uaGFzLWVycm9yIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICBjb2xvcjogI0IxM0QzMTsgfVxuXG4uaGFzLWZlZWRiYWNrIGxhYmVsIH4gLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHRvcDogMjVweDsgfVxuXG4uaGFzLWZlZWRiYWNrIGxhYmVsLnNyLW9ubHkgfiAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgdG9wOiAwOyB9XG5cbi5oZWxwLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgY29sb3I6ICNiNmI2YjY7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb3JtLWlubGluZSAuZm9ybS1ncm91cCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAuZm9ybS1pbmxpbmUgLmZvcm0tY29udHJvbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLmZvcm0taW5saW5lIC5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmZvcm0taW5saW5lIC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogaW5saW5lLXRhYmxlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAuZm9ybS1pbmxpbmUgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1hZGRvbixcbiAgICAuZm9ybS1pbmxpbmUgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4sXG4gICAgLmZvcm0taW5saW5lIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5mb3JtLWlubGluZSAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuZm9ybS1pbmxpbmUgLmNvbnRyb2wtbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAuZm9ybS1pbmxpbmUgLnJhZGlvLFxuICAuZm9ybS1pbmxpbmUgLmNoZWNrYm94IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAuZm9ybS1pbmxpbmUgLnJhZGlvIGxhYmVsLFxuICAgIC5mb3JtLWlubGluZSAuY2hlY2tib3ggbGFiZWwge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5mb3JtLWlubGluZSAucmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAuZm9ybS1pbmxpbmUgLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5mb3JtLWlubGluZSAuaGFzLWZlZWRiYWNrIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgIHRvcDogMDsgfSB9XG5cbi5mb3JtLWhvcml6b250YWwgLnJhZGlvLFxuLmZvcm0taG9yaXpvbnRhbCAuY2hlY2tib3gsXG4uZm9ybS1ob3Jpem9udGFsIC5yYWRpby1pbmxpbmUsXG4uZm9ybS1ob3Jpem9udGFsIC5jaGVja2JveC1pbmxpbmUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLXRvcDogN3B4OyB9XG5cbi5mb3JtLWhvcml6b250YWwgLnJhZGlvLFxuLmZvcm0taG9yaXpvbnRhbCAuY2hlY2tib3gge1xuICBtaW4taGVpZ2h0OiAyN3B4OyB9XG5cbi5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG4gIG1hcmdpbi1yaWdodDogMHB4OyB9XG4gIC5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXA6YmVmb3JlLCAuZm9ybS1ob3Jpem9udGFsIC5mb3JtLWdyb3VwOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAuZm9ybS1ob3Jpem9udGFsIC5mb3JtLWdyb3VwOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvcm0taG9yaXpvbnRhbCAuY29udHJvbC1sYWJlbCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogN3B4OyB9IH1cblxuLmZvcm0taG9yaXpvbnRhbCAuaGFzLWZlZWRiYWNrIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICByaWdodDogMTVweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvcm0taG9yaXpvbnRhbCAuZm9ybS1ncm91cC1sZyAuY29udHJvbC1sYWJlbCB7XG4gICAgcGFkZGluZy10b3A6IDExcHg7XG4gICAgZm9udC1zaXplOiAxOHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXAtc20gLmNvbnRyb2wtbGFiZWwge1xuICAgIHBhZGRpbmctdG9wOiA2cHg7XG4gICAgZm9udC1zaXplOiAxMnB4OyB9IH1cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgcGFkZGluZzogNnB4IDEycHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTc7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAuYnRuOmZvY3VzLCAuYnRuLmZvY3VzLCAuYnRuOmFjdGl2ZTpmb2N1cywgLmJ0bjphY3RpdmUuZm9jdXMsIC5idG4uYWN0aXZlOmZvY3VzLCAuYnRuLmFjdGl2ZS5mb2N1cyB7XG4gICAgb3V0bGluZTogdGhpbiBkb3R0ZWQ7XG4gICAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyB9XG4gIC5idG46aG92ZXIsIC5idG46Zm9jdXMsIC5idG4uZm9jdXMge1xuICAgIGNvbG9yOiAjMzMzO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAuYnRuOmFjdGl2ZSwgLmJ0bi5hY3RpdmUge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7IH1cbiAgLmJ0bi5kaXNhYmxlZCwgLmJ0bltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIG9wYWNpdHk6IDAuNjU7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTY1KTtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0W2Rpc2FibGVkXSBhLmJ0biB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5idG4tZGVmYXVsdCB7XG4gIGNvbG9yOiAjMzMzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNjY2M7IH1cbiAgLmJ0bi1kZWZhdWx0OmZvY3VzLCAuYnRuLWRlZmF1bHQuZm9jdXMge1xuICAgIGNvbG9yOiAjMzMzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gICAgYm9yZGVyLWNvbG9yOiAjOGM4YzhjOyB9XG4gIC5idG4tZGVmYXVsdDpob3ZlciB7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgICBib3JkZXItY29sb3I6ICNhZGFkYWQ7IH1cbiAgLmJ0bi1kZWZhdWx0OmFjdGl2ZSwgLmJ0bi1kZWZhdWx0LmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLWRlZmF1bHQuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogIzMzMztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICAgIGJvcmRlci1jb2xvcjogI2FkYWRhZDsgfVxuICAgIC5idG4tZGVmYXVsdDphY3RpdmU6aG92ZXIsIC5idG4tZGVmYXVsdDphY3RpdmU6Zm9jdXMsIC5idG4tZGVmYXVsdDphY3RpdmUuZm9jdXMsIC5idG4tZGVmYXVsdC5hY3RpdmU6aG92ZXIsIC5idG4tZGVmYXVsdC5hY3RpdmU6Zm9jdXMsIC5idG4tZGVmYXVsdC5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWRlZmF1bHQuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID4gLmJ0bi1kZWZhdWx0LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tZGVmYXVsdC5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgY29sb3I6ICMzMzM7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDRkNGQ0O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjOGM4YzhjOyB9XG4gIC5idG4tZGVmYXVsdDphY3RpdmUsIC5idG4tZGVmYXVsdC5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1kZWZhdWx0LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAuYnRuLWRlZmF1bHQuZGlzYWJsZWQ6aG92ZXIsIC5idG4tZGVmYXVsdC5kaXNhYmxlZDpmb2N1cywgLmJ0bi1kZWZhdWx0LmRpc2FibGVkLmZvY3VzLCAuYnRuLWRlZmF1bHRbZGlzYWJsZWRdOmhvdmVyLCAuYnRuLWRlZmF1bHRbZGlzYWJsZWRdOmZvY3VzLCAuYnRuLWRlZmF1bHRbZGlzYWJsZWRdLmZvY3VzLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1kZWZhdWx0OmhvdmVyLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1kZWZhdWx0OmZvY3VzLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1kZWZhdWx0LmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1jb2xvcjogI2NjYzsgfVxuICAuYnRuLWRlZmF1bHQgLmJhZGdlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzOyB9XG5cbi5idG4tcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUM3RUJCO1xuICBib3JkZXItY29sb3I6ICMxOTZmYTU7IH1cbiAgLmJ0bi1wcmltYXJ5OmZvY3VzLCAuYnRuLXByaW1hcnkuZm9jdXMge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxNTYwOGY7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDgyNDM2OyB9XG4gIC5idG4tcHJpbWFyeTpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE1NjA4ZjtcbiAgICBib3JkZXItY29sb3I6ICMxMTRiNzA7IH1cbiAgLmJ0bi1wcmltYXJ5OmFjdGl2ZSwgLmJ0bi1wcmltYXJ5LmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTU2MDhmO1xuICAgIGJvcmRlci1jb2xvcjogIzExNGI3MDsgfVxuICAgIC5idG4tcHJpbWFyeTphY3RpdmU6aG92ZXIsIC5idG4tcHJpbWFyeTphY3RpdmU6Zm9jdXMsIC5idG4tcHJpbWFyeTphY3RpdmUuZm9jdXMsIC5idG4tcHJpbWFyeS5hY3RpdmU6aG92ZXIsIC5idG4tcHJpbWFyeS5hY3RpdmU6Zm9jdXMsIC5idG4tcHJpbWFyeS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID4gLmJ0bi1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tcHJpbWFyeS5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTE0YjcwO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMDgyNDM2OyB9XG4gIC5idG4tcHJpbWFyeTphY3RpdmUsIC5idG4tcHJpbWFyeS5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAuYnRuLXByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idG4tcHJpbWFyeS5kaXNhYmxlZDpmb2N1cywgLmJ0bi1wcmltYXJ5LmRpc2FibGVkLmZvY3VzLCAuYnRuLXByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnRuLXByaW1hcnlbZGlzYWJsZWRdOmZvY3VzLCAuYnRuLXByaW1hcnlbZGlzYWJsZWRdLmZvY3VzLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1wcmltYXJ5OmhvdmVyLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1wcmltYXJ5OmZvY3VzLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1wcmltYXJ5LmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUM3RUJCO1xuICAgIGJvcmRlci1jb2xvcjogIzE5NmZhNTsgfVxuICAuYnRuLXByaW1hcnkgLmJhZGdlIHtcbiAgICBjb2xvcjogIzFDN0VCQjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbi5idG4tc3VjY2VzcyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjNBRTg5O1xuICBib3JkZXItY29sb3I6ICMxZjk5Nzg7IH1cbiAgLmJ0bi1zdWNjZXNzOmZvY3VzLCAuYnRuLXN1Y2Nlc3MuZm9jdXMge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxYTg0Njg7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDkyZjI1OyB9XG4gIC5idG4tc3VjY2Vzczpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFhODQ2ODtcbiAgICBib3JkZXItY29sb3I6ICMxNDY2NTA7IH1cbiAgLmJ0bi1zdWNjZXNzOmFjdGl2ZSwgLmJ0bi1zdWNjZXNzLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWE4NDY4O1xuICAgIGJvcmRlci1jb2xvcjogIzE0NjY1MDsgfVxuICAgIC5idG4tc3VjY2VzczphY3RpdmU6aG92ZXIsIC5idG4tc3VjY2VzczphY3RpdmU6Zm9jdXMsIC5idG4tc3VjY2VzczphY3RpdmUuZm9jdXMsIC5idG4tc3VjY2Vzcy5hY3RpdmU6aG92ZXIsIC5idG4tc3VjY2Vzcy5hY3RpdmU6Zm9jdXMsIC5idG4tc3VjY2Vzcy5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID4gLmJ0bi1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tc3VjY2Vzcy5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQ2NjUwO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMDkyZjI1OyB9XG4gIC5idG4tc3VjY2VzczphY3RpdmUsIC5idG4tc3VjY2Vzcy5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAuYnRuLXN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idG4tc3VjY2Vzcy5kaXNhYmxlZDpmb2N1cywgLmJ0bi1zdWNjZXNzLmRpc2FibGVkLmZvY3VzLCAuYnRuLXN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnRuLXN1Y2Nlc3NbZGlzYWJsZWRdOmZvY3VzLCAuYnRuLXN1Y2Nlc3NbZGlzYWJsZWRdLmZvY3VzLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1zdWNjZXNzOmhvdmVyLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1zdWNjZXNzOmZvY3VzLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1zdWNjZXNzLmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjNBRTg5O1xuICAgIGJvcmRlci1jb2xvcjogIzFmOTk3ODsgfVxuICAuYnRuLXN1Y2Nlc3MgLmJhZGdlIHtcbiAgICBjb2xvcjogIzIzQUU4OTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbi5idG4taW5mbyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkVDMUNDO1xuICBib3JkZXItY29sb3I6ICMyOWFkYjc7IH1cbiAgLmJ0bi1pbmZvOmZvY3VzLCAuYnRuLWluZm8uZm9jdXMge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNTlhYTI7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTI0YjRmOyB9XG4gIC5idG4taW5mbzpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI1OWFhMjtcbiAgICBib3JkZXItY29sb3I6ICMxZTdlODU7IH1cbiAgLmJ0bi1pbmZvOmFjdGl2ZSwgLmJ0bi1pbmZvLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLWluZm8uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjU5YWEyO1xuICAgIGJvcmRlci1jb2xvcjogIzFlN2U4NTsgfVxuICAgIC5idG4taW5mbzphY3RpdmU6aG92ZXIsIC5idG4taW5mbzphY3RpdmU6Zm9jdXMsIC5idG4taW5mbzphY3RpdmUuZm9jdXMsIC5idG4taW5mby5hY3RpdmU6aG92ZXIsIC5idG4taW5mby5hY3RpdmU6Zm9jdXMsIC5idG4taW5mby5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWluZm8uZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID4gLmJ0bi1pbmZvLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4taW5mby5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWU3ZTg1O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMTI0YjRmOyB9XG4gIC5idG4taW5mbzphY3RpdmUsIC5idG4taW5mby5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1pbmZvLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAuYnRuLWluZm8uZGlzYWJsZWQ6aG92ZXIsIC5idG4taW5mby5kaXNhYmxlZDpmb2N1cywgLmJ0bi1pbmZvLmRpc2FibGVkLmZvY3VzLCAuYnRuLWluZm9bZGlzYWJsZWRdOmhvdmVyLCAuYnRuLWluZm9bZGlzYWJsZWRdOmZvY3VzLCAuYnRuLWluZm9bZGlzYWJsZWRdLmZvY3VzLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1pbmZvOmhvdmVyLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1pbmZvOmZvY3VzLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1pbmZvLmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkVDMUNDO1xuICAgIGJvcmRlci1jb2xvcjogIzI5YWRiNzsgfVxuICAuYnRuLWluZm8gLmJhZGdlIHtcbiAgICBjb2xvcjogIzJFQzFDQztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbi5idG4td2FybmluZyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZCNjFDO1xuICBib3JkZXItY29sb3I6ICNmZmFlMDM7IH1cbiAgLmJ0bi13YXJuaW5nOmZvY3VzLCAuYnRuLXdhcm5pbmcuZm9jdXMge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlODlkMDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjODI1ODAwOyB9XG4gIC5idG4td2FybmluZzpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U4OWQwMDtcbiAgICBib3JkZXItY29sb3I6ICNjNDg1MDA7IH1cbiAgLmJ0bi13YXJuaW5nOmFjdGl2ZSwgLmJ0bi13YXJuaW5nLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTg5ZDAwO1xuICAgIGJvcmRlci1jb2xvcjogI2M0ODUwMDsgfVxuICAgIC5idG4td2FybmluZzphY3RpdmU6aG92ZXIsIC5idG4td2FybmluZzphY3RpdmU6Zm9jdXMsIC5idG4td2FybmluZzphY3RpdmUuZm9jdXMsIC5idG4td2FybmluZy5hY3RpdmU6aG92ZXIsIC5idG4td2FybmluZy5hY3RpdmU6Zm9jdXMsIC5idG4td2FybmluZy5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID4gLmJ0bi13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4td2FybmluZy5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzQ4NTAwO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjODI1ODAwOyB9XG4gIC5idG4td2FybmluZzphY3RpdmUsIC5idG4td2FybmluZy5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAuYnRuLXdhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idG4td2FybmluZy5kaXNhYmxlZDpmb2N1cywgLmJ0bi13YXJuaW5nLmRpc2FibGVkLmZvY3VzLCAuYnRuLXdhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLCAuYnRuLXdhcm5pbmdbZGlzYWJsZWRdOmZvY3VzLCAuYnRuLXdhcm5pbmdbZGlzYWJsZWRdLmZvY3VzLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi13YXJuaW5nOmhvdmVyLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi13YXJuaW5nOmZvY3VzLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi13YXJuaW5nLmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZCNjFDO1xuICAgIGJvcmRlci1jb2xvcjogI2ZmYWUwMzsgfVxuICAuYnRuLXdhcm5pbmcgLmJhZGdlIHtcbiAgICBjb2xvcjogI0ZGQjYxQztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbi5idG4tZGFuZ2VyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFOTRCM0I7XG4gIGJvcmRlci1jb2xvcjogI2U2MzYyNDsgfVxuICAuYnRuLWRhbmdlcjpmb2N1cywgLmJ0bi1kYW5nZXIuZm9jdXMge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkOTJhMTg7XG4gICAgYm9yZGVyLWNvbG9yOiAjN2QxODBlOyB9XG4gIC5idG4tZGFuZ2VyOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDkyYTE4O1xuICAgIGJvcmRlci1jb2xvcjogI2I5MjQxNTsgfVxuICAuYnRuLWRhbmdlcjphY3RpdmUsIC5idG4tZGFuZ2VyLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkOTJhMTg7XG4gICAgYm9yZGVyLWNvbG9yOiAjYjkyNDE1OyB9XG4gICAgLmJ0bi1kYW5nZXI6YWN0aXZlOmhvdmVyLCAuYnRuLWRhbmdlcjphY3RpdmU6Zm9jdXMsIC5idG4tZGFuZ2VyOmFjdGl2ZS5mb2N1cywgLmJ0bi1kYW5nZXIuYWN0aXZlOmhvdmVyLCAuYnRuLWRhbmdlci5hY3RpdmU6Zm9jdXMsIC5idG4tZGFuZ2VyLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiOTI0MTU7XG4gICAgICBib3JkZXItY29sb3I6ICM3ZDE4MGU7IH1cbiAgLmJ0bi1kYW5nZXI6YWN0aXZlLCAuYnRuLWRhbmdlci5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIC5idG4tZGFuZ2VyLmRpc2FibGVkOmhvdmVyLCAuYnRuLWRhbmdlci5kaXNhYmxlZDpmb2N1cywgLmJ0bi1kYW5nZXIuZGlzYWJsZWQuZm9jdXMsIC5idG4tZGFuZ2VyW2Rpc2FibGVkXTpob3ZlciwgLmJ0bi1kYW5nZXJbZGlzYWJsZWRdOmZvY3VzLCAuYnRuLWRhbmdlcltkaXNhYmxlZF0uZm9jdXMsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWRhbmdlcjpob3ZlcixcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tZGFuZ2VyOmZvY3VzLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1kYW5nZXIuZm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFOTRCM0I7XG4gICAgYm9yZGVyLWNvbG9yOiAjZTYzNjI0OyB9XG4gIC5idG4tZGFuZ2VyIC5iYWRnZSB7XG4gICAgY29sb3I6ICNFOTRCM0I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuXG4uYnRuLWxpbmsge1xuICBjb2xvcjogIzFDN0VCQjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAuYnRuLWxpbmssIC5idG4tbGluazphY3RpdmUsIC5idG4tbGluay5hY3RpdmUsIC5idG4tbGlua1tkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWxpbmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIC5idG4tbGluaywgLmJ0bi1saW5rOmhvdmVyLCAuYnRuLWxpbms6Zm9jdXMsIC5idG4tbGluazphY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmJ0bi1saW5rOmhvdmVyLCAuYnRuLWxpbms6Zm9jdXMge1xuICAgIGNvbG9yOiAjMTI1MTc4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idG4tbGlua1tkaXNhYmxlZF06aG92ZXIsIC5idG4tbGlua1tkaXNhYmxlZF06Zm9jdXMsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWxpbms6aG92ZXIsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWxpbms6Zm9jdXMge1xuICAgIGNvbG9yOiAjNzc3Nzc3O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uYnRuLWxnLCAuYnRuLWdyb3VwLWxnID4gLmJ0biB7XG4gIHBhZGRpbmc6IDEwcHggMTZweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMS4zMztcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi5idG4tc20sIC5idG4tZ3JvdXAtc20gPiAuYnRuIHtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi5idG4teHMsIC5idG4tZ3JvdXAteHMgPiAuYnRuIHtcbiAgcGFkZGluZzogMXB4IDVweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMS41O1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XG4gIG1hcmdpbi10b3A6IDVweDsgfVxuXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLmJ0bi1ibG9jayxcbmlucHV0W3R5cGU9XCJyZXNldFwiXS5idG4tYmxvY2ssXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdLmJ0bi1ibG9jayB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5mYWRlIHtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGxpbmVhcjtcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyOyB9XG4gIC5mYWRlLmluIHtcbiAgICBvcGFjaXR5OiAxOyB9XG5cbi5jb2xsYXBzZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNvbGxhcHNlLmluIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG50ci5jb2xsYXBzZS5pbiB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuXG50Ym9keS5jb2xsYXBzZS5pbiB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cDsgfVxuXG4uY29sbGFwc2luZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGhlaWdodCwgdmlzaWJpbGl0eTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogaGVpZ2h0LCB2aXNpYmlsaXR5O1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuMzVzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjM1cztcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7IH1cblxuLmNhcmV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItdG9wOiA0cHggZGFzaGVkO1xuICBib3JkZXItdG9wOiA0cHggc29saWQgXFw5O1xuICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuXG4uZHJvcHVwLFxuLmRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBvdXRsaW5lOiAwOyB9XG5cbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6IDE2MHB4O1xuICBwYWRkaW5nOiA1cHggMDtcbiAgbWFyZ2luOiAycHggMCAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDZweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xNzUpO1xuICBib3gtc2hhZG93OiAwIDZweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xNzUpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94OyB9XG4gIC5kcm9wZG93bi1tZW51LnB1bGwtcmlnaHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLW1lbnUgLmRpdmlkZXIge1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogOXB4IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTVlNWU1OyB9XG4gIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAzcHggMjBweDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6aG92ZXIsIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFDN0VCQjsgfVxuXG4uZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhLCAuZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhOmhvdmVyLCAuZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgb3V0bGluZTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFDN0VCQjsgfVxuXG4uZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGEsIC5kcm9wZG93bi1tZW51ID4gLmRpc2FibGVkID4gYTpob3ZlciwgLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhOmZvY3VzIHtcbiAgY29sb3I6ICM3Nzc3Nzc7IH1cblxuLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhOmhvdmVyLCAuZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGE6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkID0gZmFsc2UpO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5vcGVuID4gLmRyb3Bkb3duLW1lbnUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ub3BlbiA+IGEge1xuICBvdXRsaW5lOiAwOyB9XG5cbi5kcm9wZG93bi1tZW51LXJpZ2h0IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7IH1cblxuLmRyb3Bkb3duLW1lbnUtbGVmdCB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvOyB9XG5cbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogM3B4IDIwcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTc7XG4gIGNvbG9yOiAjNzc3Nzc3O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5kcm9wZG93bi1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiA5OTA7IH1cblxuLnB1bGwtcmlnaHQgPiAuZHJvcGRvd24tbWVudSB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvOyB9XG5cbi5kcm9wdXAgLmNhcmV0LFxuLm5hdmJhci1maXhlZC1ib3R0b20gLmRyb3Bkb3duIC5jYXJldCB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1ib3R0b206IDRweCBkYXNoZWQ7XG4gIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCBcXDk7XG4gIGNvbnRlbnQ6IFwiXCI7IH1cblxuLmRyb3B1cCAuZHJvcGRvd24tbWVudSxcbi5uYXZiYXItZml4ZWQtYm90dG9tIC5kcm9wZG93biAuZHJvcGRvd24tbWVudSB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAycHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZiYXItcmlnaHQgLmRyb3Bkb3duLW1lbnUge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLm5hdmJhci1yaWdodCAuZHJvcGRvd24tbWVudS1sZWZ0IHtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiBhdXRvOyB9IH1cblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAuYnRuLWdyb3VwID4gLmJ0bixcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5idG4tZ3JvdXAgPiAuYnRuOmhvdmVyLCAuYnRuLWdyb3VwID4gLmJ0bjpmb2N1cywgLmJ0bi1ncm91cCA+IC5idG46YWN0aXZlLCAuYnRuLWdyb3VwID4gLmJ0bi5hY3RpdmUsXG4gICAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46aG92ZXIsXG4gICAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46Zm9jdXMsXG4gICAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46YWN0aXZlLFxuICAgIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAyOyB9XG5cbi5idG4tZ3JvdXAgLmJ0biArIC5idG4sXG4uYnRuLWdyb3VwIC5idG4gKyAuYnRuLWdyb3VwLFxuLmJ0bi1ncm91cCAuYnRuLWdyb3VwICsgLmJ0bixcbi5idG4tZ3JvdXAgLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xuICBtYXJnaW4tbGVmdDogLTFweDsgfVxuXG4uYnRuLXRvb2xiYXIge1xuICBtYXJnaW4tbGVmdDogLTVweDsgfVxuICAuYnRuLXRvb2xiYXI6YmVmb3JlLCAuYnRuLXRvb2xiYXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5idG4tdG9vbGJhcjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmJ0bi10b29sYmFyIC5idG4sXG4gIC5idG4tdG9vbGJhciAuYnRuLWdyb3VwLFxuICAuYnRuLXRvb2xiYXIgLmlucHV0LWdyb3VwIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAuYnRuLXRvb2xiYXIgPiAuYnRuLFxuICAuYnRuLXRvb2xiYXIgPiAuYnRuLWdyb3VwLFxuICAuYnRuLXRvb2xiYXIgPiAuaW5wdXQtZ3JvdXAge1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7IH1cblxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSkge1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5idG4tZ3JvdXAgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmJ0bi1ncm91cCA+IC5idG46Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSkge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyB9XG5cbi5idG4tZ3JvdXAgPiAuYnRuOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwID4gLmRyb3Bkb3duLXRvZ2dsZTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7IH1cblxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXAge1xuICBmbG9hdDogbGVmdDsgfVxuXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG46bGFzdC1jaGlsZCxcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkgPiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyB9XG5cbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsgfVxuXG4uYnRuLWdyb3VwIC5kcm9wZG93bi10b2dnbGU6YWN0aXZlLFxuLmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGUge1xuICBvdXRsaW5lOiAwOyB9XG5cbi5idG4tZ3JvdXAgPiAuYnRuICsgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBhZGRpbmctbGVmdDogOHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7IH1cblxuLmJ0bi1ncm91cCA+IC5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLCAuYnRuLWdyb3VwLWxnLmJ0bi1ncm91cCA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XG5cbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTI1KTsgfVxuICAuYnRuLWdyb3VwLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZS5idG4tbGluayB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLmJ0biAuY2FyZXQge1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uYnRuLWxnIC5jYXJldCwgLmJ0bi1ncm91cC1sZyA+IC5idG4gLmNhcmV0IHtcbiAgYm9yZGVyLXdpZHRoOiA1cHggNXB4IDA7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7IH1cblxuLmRyb3B1cCAuYnRuLWxnIC5jYXJldCwgLmRyb3B1cCAuYnRuLWdyb3VwLWxnID4gLmJ0biAuY2FyZXQge1xuICBib3JkZXItd2lkdGg6IDAgNXB4IDVweDsgfVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bixcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmJlZm9yZSwgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogdGFibGU7IH1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6YWZ0ZXIge1xuICBjbGVhcjogYm90aDsgfVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICBmbG9hdDogbm9uZTsgfVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biArIC5idG4sXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biArIC5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cCArIC5idG4sXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMnB4O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDsgfVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAycHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDJweDsgfVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG46bGFzdC1jaGlsZCxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkgPiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7IH1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG46Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsgfVxuXG4uYnRuLWdyb3VwLWp1c3RpZmllZCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTsgfVxuICAuYnRuLWdyb3VwLWp1c3RpZmllZCA+IC5idG4sXG4gIC5idG4tZ3JvdXAtanVzdGlmaWVkID4gLmJ0bi1ncm91cCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB3aWR0aDogMSU7IH1cbiAgLmJ0bi1ncm91cC1qdXN0aWZpZWQgPiAuYnRuLWdyb3VwIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5idG4tZ3JvdXAtanVzdGlmaWVkID4gLmJ0bi1ncm91cCAuZHJvcGRvd24tbWVudSB7XG4gICAgbGVmdDogYXV0bzsgfVxuXG5bZGF0YS10b2dnbGU9XCJidXR0b25zXCJdID4gLmJ0biBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5bZGF0YS10b2dnbGU9XCJidXR0b25zXCJdID4gLmJ0biBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5bZGF0YS10b2dnbGU9XCJidXR0b25zXCJdID4gLmJ0bi1ncm91cCA+IC5idG4gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuW2RhdGEtdG9nZ2xlPVwiYnV0dG9uc1wiXSA+IC5idG4tZ3JvdXAgPiAuYnRuIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTsgfVxuICAuaW5wdXQtZ3JvdXBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzOyB9XG5cbi5pbnB1dC1ncm91cC5ob21lLXNlYXJjaCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDIwMHB4O1xuICBtYXJnaW46IDBweCAxNXB4IDE1cHggMTVweDtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1idG4sXG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7IH1cbiAgLmlucHV0LWdyb3VwLWFkZG9uOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCksXG4gIC5pbnB1dC1ncm91cC1idG46bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSxcbiAgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtYnRuIHtcbiAgd2lkdGg6IDElO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5pbnB1dC1ncm91cC1hZGRvbiB7XG4gIHBhZGRpbmc6IDZweCAxMnB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzU1NTU1NTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjQ0JENUREO1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLmlucHV0LWdyb3VwLWFkZG9uLmlucHV0LXNtLFxuICAuaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYWRkb24sXG4gIC5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiAuaW5wdXQtZ3JvdXAtYWRkb24uYnRuIHtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG4gIC5pbnB1dC1ncm91cC1hZGRvbi5pbnB1dC1sZyxcbiAgLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uLFxuICAuaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmlucHV0LWdyb3VwLWFkZG9uLmJ0biB7XG4gICAgcGFkZGluZzogMTBweCAxNnB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLmlucHV0LWdyb3VwLWFkZG9uIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgLmlucHV0LWdyb3VwLWFkZG9uIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuXG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpmaXJzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1hZGRvbjpmaXJzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4tZ3JvdXAgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5kcm9wZG93bi10b2dnbGUsXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsgfVxuXG4uaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQ6IDA7IH1cblxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6bGFzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1hZGRvbjpsYXN0LWNoaWxkLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXAgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmRyb3Bkb3duLXRvZ2dsZSxcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsgfVxuXG4uaW5wdXQtZ3JvdXAtYWRkb246bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbi5pbnB1dC1ncm91cC1idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmlucHV0LWdyb3VwLWJ0biA+IC5idG4gKyAuYnRuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4OyB9XG4gICAgLmlucHV0LWdyb3VwLWJ0biA+IC5idG46aG92ZXIsIC5pbnB1dC1ncm91cC1idG4gPiAuYnRuOmZvY3VzLCAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0bjphY3RpdmUge1xuICAgICAgei1pbmRleDogMjsgfVxuICAuaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bixcbiAgLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4tZ3JvdXAge1xuICAgIG1hcmdpbi1yaWdodDogLTFweDsgfVxuICAuaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuLFxuICAuaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuLWdyb3VwIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4OyB9XG5cbi5uYXYge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLm5hdjpiZWZvcmUsIC5uYXY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5uYXY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5uYXYgPiBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLm5hdiA+IGxpID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDEwcHggMTVweDsgfVxuICAgICAgLm5hdiA+IGxpID4gYTpob3ZlciwgLm5hdiA+IGxpID4gYTpmb2N1cyB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTsgfVxuICAgIC5uYXYgPiBsaS5kaXNhYmxlZCA+IGEge1xuICAgICAgY29sb3I6ICM3Nzc3Nzc7IH1cbiAgICAgIC5uYXYgPiBsaS5kaXNhYmxlZCA+IGE6aG92ZXIsIC5uYXYgPiBsaS5kaXNhYmxlZCA+IGE6Zm9jdXMge1xuICAgICAgICBjb2xvcjogIzc3Nzc3NztcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAubmF2IC5vcGVuID4gYSwgLm5hdiAub3BlbiA+IGE6aG92ZXIsIC5uYXYgLm9wZW4gPiBhOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xuICAgIGJvcmRlci1jb2xvcjogIzFDN0VCQjsgfVxuICAubmF2IC5uYXYtZGl2aWRlciB7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luOiA5cHggMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNWU1ZTU7IH1cbiAgLm5hdiA+IGxpID4gYSA+IGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkOyB9XG4gIC5uYXYtdGFicyA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4OyB9XG4gICAgLm5hdi10YWJzID4gbGkgPiBhIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDI4NTc7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweCAycHggMCAwOyB9XG4gICAgICAubmF2LXRhYnMgPiBsaSA+IGE6aG92ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICNlZWVlZWUgI2VlZWVlZSAjZGRkOyB9XG4gICAgLm5hdi10YWJzID4gbGkuYWN0aXZlID4gYSwgLm5hdi10YWJzID4gbGkuYWN0aXZlID4gYTpob3ZlciwgLm5hdi10YWJzID4gbGkuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgICBjb2xvcjogIzU1NTU1NTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmM2YzZjM7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLm5hdi1waWxscyA+IGxpIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm5hdi1waWxscyA+IGxpID4gYSB7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG4gIC5uYXYtcGlsbHMgPiBsaSArIGxpIHtcbiAgICBtYXJnaW4tbGVmdDogMnB4OyB9XG4gIC5uYXYtcGlsbHMgPiBsaS5hY3RpdmUgPiBhLCAubmF2LXBpbGxzID4gbGkuYWN0aXZlID4gYTpob3ZlciwgLm5hdi1waWxscyA+IGxpLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxQzdFQkI7IH1cblxuLm5hdi1zdGFja2VkID4gbGkge1xuICBmbG9hdDogbm9uZTsgfVxuICAubmF2LXN0YWNrZWQgPiBsaSArIGxpIHtcbiAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLm5hdi1qdXN0aWZpZWQsIC5uYXYtdGFicy5uYXYtanVzdGlmaWVkIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLm5hdi1qdXN0aWZpZWQgPiBsaSwgLm5hdi10YWJzLm5hdi1qdXN0aWZpZWQgPiBsaSB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgICAubmF2LWp1c3RpZmllZCA+IGxpID4gYSwgLm5hdi10YWJzLm5hdi1qdXN0aWZpZWQgPiBsaSA+IGEge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gIC5uYXYtanVzdGlmaWVkID4gLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IGF1dG87XG4gICAgbGVmdDogYXV0bzsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAubmF2LWp1c3RpZmllZCA+IGxpLCAubmF2LXRhYnMubmF2LWp1c3RpZmllZCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB3aWR0aDogMSU7IH1cbiAgICAgIC5uYXYtanVzdGlmaWVkID4gbGkgPiBhLCAubmF2LXRhYnMubmF2LWp1c3RpZmllZCA+IGxpID4gYSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4ubmF2LXRhYnMtanVzdGlmaWVkLCAubmF2LXRhYnMubmF2LWp1c3RpZmllZCB7XG4gIGJvcmRlci1ib3R0b206IDA7IH1cbiAgLm5hdi10YWJzLWp1c3RpZmllZCA+IGxpID4gYSwgLm5hdi10YWJzLm5hdi1qdXN0aWZpZWQgPiBsaSA+IGEge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLm5hdi10YWJzLWp1c3RpZmllZCA+IC5hY3RpdmUgPiBhLCAubmF2LXRhYnMubmF2LWp1c3RpZmllZCA+IC5hY3RpdmUgPiBhLFxuICAubmF2LXRhYnMtanVzdGlmaWVkID4gLmFjdGl2ZSA+IGE6aG92ZXIsXG4gIC5uYXYtdGFicy5uYXYtanVzdGlmaWVkID4gLmFjdGl2ZSA+IGE6aG92ZXIsXG4gIC5uYXYtdGFicy1qdXN0aWZpZWQgPiAuYWN0aXZlID4gYTpmb2N1cyxcbiAgLm5hdi10YWJzLm5hdi1qdXN0aWZpZWQgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAubmF2LXRhYnMtanVzdGlmaWVkID4gbGkgPiBhLCAubmF2LXRhYnMubmF2LWp1c3RpZmllZCA+IGxpID4gYSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweCAycHggMCAwOyB9XG4gICAgLm5hdi10YWJzLWp1c3RpZmllZCA+IC5hY3RpdmUgPiBhLCAubmF2LXRhYnMubmF2LWp1c3RpZmllZCA+IC5hY3RpdmUgPiBhLFxuICAgIC5uYXYtdGFicy1qdXN0aWZpZWQgPiAuYWN0aXZlID4gYTpob3ZlcixcbiAgICAubmF2LXRhYnMubmF2LWp1c3RpZmllZCA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuICAgIC5uYXYtdGFicy1qdXN0aWZpZWQgPiAuYWN0aXZlID4gYTpmb2N1cyxcbiAgICAubmF2LXRhYnMubmF2LWp1c3RpZmllZCA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNmM2YzZjM7IH0gfVxuXG4udGFiLWNvbnRlbnQgPiAudGFiLXBhbmUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi50YWItY29udGVudCA+IC5hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ubmF2LXRhYnMgLmRyb3Bkb3duLW1lbnUge1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsgfVxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICAubmF2YmFyOmJlZm9yZSwgLm5hdmJhcjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLm5hdmJhcjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm5hdmJhciB7XG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH0gfVxuXG4ubmF2YmFyLWhlYWRlcjpiZWZvcmUsIC5uYXZiYXItaGVhZGVyOmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IHRhYmxlOyB9XG5cbi5uYXZiYXItaGVhZGVyOmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZiYXItaGVhZGVyIHtcbiAgICBmbG9hdDogbGVmdDsgfSB9XG5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBvdmVyZmxvdy14OiB2aXNpYmxlO1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxuICAubmF2YmFyLWNvbGxhcHNlOmJlZm9yZSwgLm5hdmJhci1jb2xsYXBzZTphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLm5hdmJhci1jb2xsYXBzZTphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLm5hdmJhci1jb2xsYXBzZS5pbiB7XG4gICAgb3ZlcmZsb3cteTogYXV0bzsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICAgIC5uYXZiYXItY29sbGFwc2UuY29sbGFwc2Uge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5uYXZiYXItY29sbGFwc2UuaW4ge1xuICAgICAgICBvdmVyZmxvdy15OiB2aXNpYmxlOyB9XG4gICAgICAubmF2YmFyLWZpeGVkLXRvcCAubmF2YmFyLWNvbGxhcHNlLFxuICAgICAgLm5hdmJhci1zdGF0aWMtdG9wIC5uYXZiYXItY29sbGFwc2UsXG4gICAgICAubmF2YmFyLWZpeGVkLWJvdHRvbSAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cblxuLm5hdmJhci1maXhlZC10b3AgLm5hdmJhci1jb2xsYXBzZSxcbi5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXZiYXItY29sbGFwc2Uge1xuICBtYXgtaGVpZ2h0OiAzNDBweDsgfVxuICBAbWVkaWEgKG1heC1kZXZpY2Utd2lkdGg6IDQ4MHB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAubmF2YmFyLWZpeGVkLXRvcCAubmF2YmFyLWNvbGxhcHNlLFxuICAgIC5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgbWF4LWhlaWdodDogMjAwcHg7IH0gfVxuXG4uY29udGFpbmVyID4gLm5hdmJhci1oZWFkZXIsXG4uY29udGFpbmVyID4gLm5hdmJhci1jb2xsYXBzZSxcbi5jb250YWluZXItZmx1aWQgPiAubmF2YmFyLWhlYWRlcixcbi5jb250YWluZXItZmx1aWQgPiAubmF2YmFyLWNvbGxhcHNlIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgbWFyZ2luLWxlZnQ6IC0xNXB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5jb250YWluZXIgPiAubmF2YmFyLWhlYWRlcixcbiAgICAuY29udGFpbmVyID4gLm5hdmJhci1jb2xsYXBzZSxcbiAgICAuY29udGFpbmVyLWZsdWlkID4gLm5hdmJhci1oZWFkZXIsXG4gICAgLmNvbnRhaW5lci1mbHVpZCA+IC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG4ubmF2YmFyLXN0YXRpYy10b3Age1xuICB6LWluZGV4OiAxMDAwO1xuICBib3JkZXItd2lkdGg6IDAgMCAxcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm5hdmJhci1zdGF0aWMtdG9wIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH0gfVxuXG4ubmF2YmFyLWZpeGVkLXRvcCxcbi5uYXZiYXItZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAzMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAubmF2YmFyLWZpeGVkLXRvcCxcbiAgICAubmF2YmFyLWZpeGVkLWJvdHRvbSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9IH1cblxuLm5hdmJhci1maXhlZC10b3Age1xuICB0b3A6IDA7XG4gIGJvcmRlci13aWR0aDogMCAwIDFweDsgfVxuXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwOyB9XG5cbi5uYXZiYXItYnJhbmQge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogMTVweCAxNXB4O1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBoZWlnaHQ6IDUwcHg7IH1cbiAgLm5hdmJhci1icmFuZDpob3ZlciwgLm5hdmJhci1icmFuZDpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5uYXZiYXItYnJhbmQgPiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5uYXZiYXIgPiAuY29udGFpbmVyIC5uYXZiYXItYnJhbmQsXG4gICAgLm5hdmJhciA+IC5jb250YWluZXItZmx1aWQgLm5hdmJhci1icmFuZCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTE1cHg7IH0gfVxuXG4ubmF2YmFyLXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmc6IDlweCAxMHB4O1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLm5hdmJhci10b2dnbGU6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLm5hdmJhci10b2dnbGUgLmljb24tYmFyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMjJweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7IH1cbiAgLm5hdmJhci10b2dnbGUgLmljb24tYmFyICsgLmljb24tYmFyIHtcbiAgICBtYXJnaW4tdG9wOiA0cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm5hdmJhci10b2dnbGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5uYXZiYXItbmF2IHtcbiAgbWFyZ2luOiA3LjVweCAtMTVweDsgfVxuICAubmF2YmFyLW5hdiA+IGxpID4gYSB7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgICAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IGxpID4gYSxcbiAgICAgIC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiA1cHggMTVweCA1cHggMjVweDsgfVxuICAgICAgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEge1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDsgfVxuICAgICAgICAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IGxpID4gYTpob3ZlciwgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAubmF2YmFyLW5hdiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgLm5hdmJhci1uYXYgPiBsaSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAgIC5uYXZiYXItbmF2ID4gbGkgPiBhIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDsgfSB9XG5cbi5uYXZiYXItZm9ybSB7XG4gIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpLCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBtYXJnaW4tYm90dG9tOiA4cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm5hdmJhci1mb3JtIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgLm5hdmJhci1mb3JtIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgLm5hdmJhci1mb3JtIC5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5uYXZiYXItZm9ybSAuaW5wdXQtZ3JvdXAge1xuICAgICAgZGlzcGxheTogaW5saW5lLXRhYmxlO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgLm5hdmJhci1mb3JtIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYWRkb24sXG4gICAgICAubmF2YmFyLWZvcm0gLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4sXG4gICAgICAubmF2YmFyLWZvcm0gLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5uYXZiYXItZm9ybSAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLm5hdmJhci1mb3JtIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgLm5hdmJhci1mb3JtIC5yYWRpbyxcbiAgICAubmF2YmFyLWZvcm0gLmNoZWNrYm94IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgLm5hdmJhci1mb3JtIC5yYWRpbyBsYWJlbCxcbiAgICAgIC5uYXZiYXItZm9ybSAuY2hlY2tib3ggbGFiZWwge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAubmF2YmFyLWZvcm0gLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICAubmF2YmFyLWZvcm0gLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5uYXZiYXItZm9ybSAuaGFzLWZlZWRiYWNrIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgICAgdG9wOiAwOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLm5hdmJhci1mb3JtIC5mb3JtLWdyb3VwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuICAgICAgLm5hdmJhci1mb3JtIC5mb3JtLWdyb3VwOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm5hdmJhci1mb3JtIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTsgfSB9XG5cbi5uYXZiYXItbmF2ID4gbGkgPiAuZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOyB9XG5cbi5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXZiYXItbmF2ID4gbGkgPiAuZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAycHg7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7IH1cblxuLm5hdmJhci1idG4ge1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDsgfVxuICAubmF2YmFyLWJ0bi5idG4tc20sIC5idG4tZ3JvdXAtc20gPiAubmF2YmFyLWJ0bi5idG4ge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAubmF2YmFyLWJ0bi5idG4teHMsIC5idG4tZ3JvdXAteHMgPiAubmF2YmFyLWJ0bi5idG4ge1xuICAgIG1hcmdpbi10b3A6IDE0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTRweDsgfVxuXG4ubmF2YmFyLXRleHQge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5uYXZiYXItdGV4dCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZiYXItbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuICAubmF2YmFyLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4OyB9XG4gICAgLm5hdmJhci1yaWdodCB+IC5uYXZiYXItcmlnaHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuLm5hdmJhci1kZWZhdWx0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbiAgYm9yZGVyLWNvbG9yOiAjZTdlN2U3OyB9XG4gIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogIzc3NzsgfVxuICAgIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLWJyYW5kOmhvdmVyLCAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1icmFuZDpmb2N1cyB7XG4gICAgICBjb2xvcjogIzVlNWU1ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAjNzc3OyB9XG4gIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdiA+IGxpID4gYSB7XG4gICAgY29sb3I6ICM3Nzc7IH1cbiAgICAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgPiBsaSA+IGE6aG92ZXIsIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdiA+IGxpID4gYTpmb2N1cyB7XG4gICAgICBjb2xvcjogIzMzMztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdiA+IC5hY3RpdmUgPiBhLCAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgPiAuYWN0aXZlID4gYTpob3ZlciwgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2ID4gLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjNTU1O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlN2U3ZTc7IH1cbiAgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2ID4gLmRpc2FibGVkID4gYSwgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2ID4gLmRpc2FibGVkID4gYTpob3ZlciwgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2ID4gLmRpc2FibGVkID4gYTpmb2N1cyB7XG4gICAgY29sb3I6ICNjY2M7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItdG9nZ2xlIHtcbiAgICBib3JkZXItY29sb3I6ICNkZGQ7IH1cbiAgICAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci10b2dnbGU6aG92ZXIsIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLXRvZ2dsZTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkOyB9XG4gICAgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItdG9nZ2xlIC5pY29uLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODg4OyB9XG4gIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLWNvbGxhcHNlLFxuICAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1mb3JtIHtcbiAgICBib3JkZXItY29sb3I6ICNlN2U3ZTc7IH1cbiAgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2ID4gLm9wZW4gPiBhLCAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgPiAub3BlbiA+IGE6aG92ZXIsIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdiA+IC5vcGVuID4gYTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U3ZTdlNztcbiAgICBjb2xvcjogIzU1NTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEge1xuICAgICAgY29sb3I6ICM3Nzc7IH1cbiAgICAgIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IGxpID4gYTpob3ZlciwgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+IGEsIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhOmhvdmVyLCAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgICBjb2xvcjogIzU1NTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlN2U3ZTc7IH1cbiAgICAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhLCAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhOmhvdmVyLCAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjY2NjO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH0gfVxuICAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1saW5rIHtcbiAgICBjb2xvcjogIzc3NzsgfVxuICAgIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLWxpbms6aG92ZXIge1xuICAgICAgY29sb3I6ICMzMzM7IH1cbiAgLm5hdmJhci1kZWZhdWx0IC5idG4tbGluayB7XG4gICAgY29sb3I6ICM3Nzc7IH1cbiAgICAubmF2YmFyLWRlZmF1bHQgLmJ0bi1saW5rOmhvdmVyLCAubmF2YmFyLWRlZmF1bHQgLmJ0bi1saW5rOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjMzMzOyB9XG4gICAgLm5hdmJhci1kZWZhdWx0IC5idG4tbGlua1tkaXNhYmxlZF06aG92ZXIsIC5uYXZiYXItZGVmYXVsdCAuYnRuLWxpbmtbZGlzYWJsZWRdOmZvY3VzLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAubmF2YmFyLWRlZmF1bHQgLmJ0bi1saW5rOmhvdmVyLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAubmF2YmFyLWRlZmF1bHQgLmJ0bi1saW5rOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjY2NjOyB9XG5cbi5uYXZiYXItaW52ZXJzZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG4gIGJvcmRlci1jb2xvcjogIzA5MDkwOTsgfVxuICAubmF2YmFyLWludmVyc2UgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICM5ZDlkOWQ7IH1cbiAgICAubmF2YmFyLWludmVyc2UgLm5hdmJhci1icmFuZDpob3ZlciwgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItYnJhbmQ6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAubmF2YmFyLWludmVyc2UgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogIzlkOWQ5ZDsgfVxuICAubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXYgPiBsaSA+IGEge1xuICAgIGNvbG9yOiAjOWQ5ZDlkOyB9XG4gICAgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2ID4gbGkgPiBhOmhvdmVyLCAubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXYgPiBsaSA+IGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXYgPiAuYWN0aXZlID4gYSwgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2ID4gLmFjdGl2ZSA+IGE6aG92ZXIsIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDkwOTA5OyB9XG4gIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiA+IC5kaXNhYmxlZCA+IGEsIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiA+IC5kaXNhYmxlZCA+IGE6aG92ZXIsIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiA+IC5kaXNhYmxlZCA+IGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjNDQ0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLXRvZ2dsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzMzOyB9XG4gICAgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItdG9nZ2xlOmhvdmVyLCAubmF2YmFyLWludmVyc2UgLm5hdmJhci10b2dnbGU6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzsgfVxuICAgIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLXRvZ2dsZSAuaWNvbi1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAubmF2YmFyLWludmVyc2UgLm5hdmJhci1jb2xsYXBzZSxcbiAgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItZm9ybSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTAxMDEwOyB9XG4gIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiA+IC5vcGVuID4gYSwgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2ID4gLm9wZW4gPiBhOmhvdmVyLCAubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXYgPiAub3BlbiA+IGE6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTA5MDk7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICBib3JkZXItY29sb3I6ICMwOTA5MDk7IH1cbiAgICAubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgLmRpdmlkZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA5MDkwOTsgfVxuICAgIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogIzlkOWQ5ZDsgfVxuICAgICAgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhOmhvdmVyLCAubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6Zm9jdXMge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYSwgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+IGE6aG92ZXIsIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA5MDkwOTsgfVxuICAgIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGEsIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGE6aG92ZXIsIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICM0NDQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9XG4gIC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLWxpbmsge1xuICAgIGNvbG9yOiAjOWQ5ZDlkOyB9XG4gICAgLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbGluazpob3ZlciB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAubmF2YmFyLWludmVyc2UgLmJ0bi1saW5rIHtcbiAgICBjb2xvcjogIzlkOWQ5ZDsgfVxuICAgIC5uYXZiYXItaW52ZXJzZSAuYnRuLWxpbms6aG92ZXIsIC5uYXZiYXItaW52ZXJzZSAuYnRuLWxpbms6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAubmF2YmFyLWludmVyc2UgLmJ0bi1saW5rW2Rpc2FibGVkXTpob3ZlciwgLm5hdmJhci1pbnZlcnNlIC5idG4tbGlua1tkaXNhYmxlZF06Zm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5uYXZiYXItaW52ZXJzZSAuYnRuLWxpbms6aG92ZXIsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5uYXZiYXItaW52ZXJzZSAuYnRuLWxpbms6Zm9jdXMge1xuICAgICAgY29sb3I6ICM0NDQ7IH1cblxuLmJyZWFkY3J1bWIge1xuICBwYWRkaW5nOiA4cHggMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG4gIC5icmVhZGNydW1iID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5icmVhZGNydW1iID4gbGkgKyBsaTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCIvwqBcIjtcbiAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgY29sb3I6ICNlOWU5ZTk7IH1cbiAgLmJyZWFkY3J1bWIgPiAuYWN0aXZlIHtcbiAgICBjb2xvcjogIzc3Nzc3NzsgfVxuXG4ucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46IDIwcHggMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG4gIC5wYWdpbmF0aW9uID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAgIC5wYWdpbmF0aW9uID4gbGkgPiBhLFxuICAgIC5wYWdpbmF0aW9uID4gbGkgPiBzcGFuIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZzogNnB4IDEycHg7XG4gICAgICBsaW5lLWhlaWdodDogMS40Mjg1NztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiAjNzY3Njc2O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkY2UwZTA7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDsgfVxuICAgIC5wYWdpbmF0aW9uID4gbGk6Zmlyc3QtY2hpbGQgPiBhLFxuICAgIC5wYWdpbmF0aW9uID4gbGk6Zmlyc3QtY2hpbGQgPiBzcGFuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMnB4O1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMnB4OyB9XG4gICAgLnBhZ2luYXRpb24gPiBsaTpsYXN0LWNoaWxkID4gYSxcbiAgICAucGFnaW5hdGlvbiA+IGxpOmxhc3QtY2hpbGQgPiBzcGFuIHtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAycHg7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMnB4OyB9XG4gIC5wYWdpbmF0aW9uID4gbGkgPiBhOmhvdmVyLCAucGFnaW5hdGlvbiA+IGxpID4gYTpmb2N1cyxcbiAgLnBhZ2luYXRpb24gPiBsaSA+IHNwYW46aG92ZXIsXG4gIC5wYWdpbmF0aW9uID4gbGkgPiBzcGFuOmZvY3VzIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiAjNzY3Njc2O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLWNvbG9yOiAjYWFhOyB9XG4gIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IGEsIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IGE6aG92ZXIsIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IGE6Zm9jdXMsXG4gIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IHNwYW4sXG4gIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IHNwYW46aG92ZXIsXG4gIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IHNwYW46Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFDN0VCQjtcbiAgICBib3JkZXItY29sb3I6ICMxQzdFQkI7XG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gIC5wYWdpbmF0aW9uID4gLmRpc2FibGVkID4gc3BhbixcbiAgLnBhZ2luYXRpb24gPiAuZGlzYWJsZWQgPiBzcGFuOmhvdmVyLFxuICAucGFnaW5hdGlvbiA+IC5kaXNhYmxlZCA+IHNwYW46Zm9jdXMsXG4gIC5wYWdpbmF0aW9uID4gLmRpc2FibGVkID4gYSxcbiAgLnBhZ2luYXRpb24gPiAuZGlzYWJsZWQgPiBhOmhvdmVyLFxuICAucGFnaW5hdGlvbiA+IC5kaXNhYmxlZCA+IGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjNzc3Nzc3O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG4gICAgYm9yZGVyLWNvbG9yOiAjZjZmNmY2O1xuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4ucGFnaW5hdGlvbi1sZyA+IGxpID4gYSxcbi5wYWdpbmF0aW9uLWxnID4gbGkgPiBzcGFuIHtcbiAgcGFkZGluZzogMTBweCAxNnB4O1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjMzOyB9XG5cbi5wYWdpbmF0aW9uLWxnID4gbGk6Zmlyc3QtY2hpbGQgPiBhLFxuLnBhZ2luYXRpb24tbGcgPiBsaTpmaXJzdC1jaGlsZCA+IHNwYW4ge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAycHg7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDJweDsgfVxuXG4ucGFnaW5hdGlvbi1sZyA+IGxpOmxhc3QtY2hpbGQgPiBhLFxuLnBhZ2luYXRpb24tbGcgPiBsaTpsYXN0LWNoaWxkID4gc3BhbiB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAycHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAycHg7IH1cblxuLnBhZ2luYXRpb24tc20gPiBsaSA+IGEsXG4ucGFnaW5hdGlvbi1zbSA+IGxpID4gc3BhbiB7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7IH1cblxuLnBhZ2luYXRpb24tc20gPiBsaTpmaXJzdC1jaGlsZCA+IGEsXG4ucGFnaW5hdGlvbi1zbSA+IGxpOmZpcnN0LWNoaWxkID4gc3BhbiB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMnB4OyB9XG5cbi5wYWdpbmF0aW9uLXNtID4gbGk6bGFzdC1jaGlsZCA+IGEsXG4ucGFnaW5hdGlvbi1zbSA+IGxpOmxhc3QtY2hpbGQgPiBzcGFuIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDJweDsgfVxuXG4ucGFnZXIge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogMjBweCAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnBhZ2VyOmJlZm9yZSwgLnBhZ2VyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAucGFnZXI6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5wYWdlciBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lOyB9XG4gICAgLnBhZ2VyIGxpID4gYSxcbiAgICAucGFnZXIgbGkgPiBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDVweCAxNHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkY2UwZTA7XG4gICAgICBib3JkZXItcmFkaXVzOiAxNXB4OyB9XG4gICAgLnBhZ2VyIGxpID4gYTpob3ZlcixcbiAgICAucGFnZXIgbGkgPiBhOmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgLnBhZ2VyIC5uZXh0ID4gYSxcbiAgLnBhZ2VyIC5uZXh0ID4gc3BhbiB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5wYWdlciAucHJldmlvdXMgPiBhLFxuICAucGFnZXIgLnByZXZpb3VzID4gc3BhbiB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnBhZ2VyIC5kaXNhYmxlZCA+IGEsXG4gIC5wYWdlciAuZGlzYWJsZWQgPiBhOmhvdmVyLFxuICAucGFnZXIgLmRpc2FibGVkID4gYTpmb2N1cyxcbiAgLnBhZ2VyIC5kaXNhYmxlZCA+IHNwYW4ge1xuICAgIGNvbG9yOiAjNzc3Nzc3O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHBhZGRpbmc6IC4yZW0gLjZlbSAuM2VtO1xuICBmb250LXNpemU6IDc1JTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJvcmRlci1yYWRpdXM6IC4yNWVtOyB9XG4gIC5sYWJlbDplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuYnRuIC5sYWJlbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTFweDsgfVxuXG5hLmxhYmVsOmhvdmVyLCBhLmxhYmVsOmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5sYWJlbC1kZWZhdWx0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc3Nzc3NzsgfVxuICAubGFiZWwtZGVmYXVsdFtocmVmXTpob3ZlciwgLmxhYmVsLWRlZmF1bHRbaHJlZl06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1ZTVlNWU7IH1cblxuLmxhYmVsLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUM3RUJCOyB9XG4gIC5sYWJlbC1wcmltYXJ5W2hyZWZdOmhvdmVyLCAubGFiZWwtcHJpbWFyeVtocmVmXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE1NjA4ZjsgfVxuXG4ubGFiZWwtc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyM0FFODk7IH1cbiAgLmxhYmVsLXN1Y2Nlc3NbaHJlZl06aG92ZXIsIC5sYWJlbC1zdWNjZXNzW2hyZWZdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWE4NDY4OyB9XG5cbi5sYWJlbC1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJFQzFDQzsgfVxuICAubGFiZWwtaW5mb1tocmVmXTpob3ZlciwgLmxhYmVsLWluZm9baHJlZl06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNTlhYTI7IH1cblxuLmxhYmVsLXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZCNjFDOyB9XG4gIC5sYWJlbC13YXJuaW5nW2hyZWZdOmhvdmVyLCAubGFiZWwtd2FybmluZ1tocmVmXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U4OWQwMDsgfVxuXG4ubGFiZWwtZGFuZ2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U5NEIzQjsgfVxuICAubGFiZWwtZGFuZ2VyW2hyZWZdOmhvdmVyLCAubGFiZWwtZGFuZ2VyW2hyZWZdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDkyYTE4OyB9XG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAxMHB4O1xuICBwYWRkaW5nOiAzcHggN3B4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2ZmZjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc3Nzc3NztcbiAgYm9yZGVyLXJhZGl1czogMTBweDsgfVxuICAuYmFkZ2U6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmJ0biAuYmFkZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7IH1cbiAgLmJ0bi14cyAuYmFkZ2UsIC5idG4tZ3JvdXAteHMgPiAuYnRuIC5iYWRnZSxcbiAgLmJ0bi1ncm91cC14cyA+IC5idG4gLmJhZGdlIHtcbiAgICB0b3A6IDA7XG4gICAgcGFkZGluZzogMXB4IDVweDsgfVxuICAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSA+IC5iYWRnZSxcbiAgLm5hdi1waWxscyA+IC5hY3RpdmUgPiBhID4gLmJhZGdlIHtcbiAgICBjb2xvcjogIzFDN0VCQjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIC5saXN0LWdyb3VwLWl0ZW0gPiAuYmFkZ2Uge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAubGlzdC1ncm91cC1pdGVtID4gLmJhZGdlICsgLmJhZGdlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxuICAubmF2LXBpbGxzID4gbGkgPiBhID4gLmJhZGdlIHtcbiAgICBtYXJnaW4tbGVmdDogM3B4OyB9XG5cbmEuYmFkZ2U6aG92ZXIsIGEuYmFkZ2U6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmp1bWJvdHJvbiB7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7IH1cbiAgLmp1bWJvdHJvbiBoMSxcbiAgLmp1bWJvdHJvbiAuaDEge1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gIC5qdW1ib3Ryb24gcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICBmb250LXNpemU6IDIxcHg7XG4gICAgZm9udC13ZWlnaHQ6IDIwMDsgfVxuICAuanVtYm90cm9uID4gaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNkNWQ1ZDU7IH1cbiAgLmNvbnRhaW5lciAuanVtYm90cm9uLFxuICAuY29udGFpbmVyLWZsdWlkIC5qdW1ib3Ryb24ge1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDsgfVxuICAuanVtYm90cm9uIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5qdW1ib3Ryb24ge1xuICAgICAgcGFkZGluZy10b3A6IDQ4cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNDhweDsgfVxuICAgICAgLmNvbnRhaW5lciAuanVtYm90cm9uLFxuICAgICAgLmNvbnRhaW5lci1mbHVpZCAuanVtYm90cm9uIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4OyB9XG4gICAgICAuanVtYm90cm9uIGgxLFxuICAgICAgLmp1bWJvdHJvbiAuaDEge1xuICAgICAgICBmb250LXNpemU6IDYzcHg7IH0gfVxuXG4udGh1bWJuYWlsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDRweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2YzZjM7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXIgMC4ycyBlYXNlLWluLW91dDtcbiAgLW8tdHJhbnNpdGlvbjogYm9yZGVyIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGJvcmRlciAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gIC50aHVtYm5haWwgPiBpbWcsXG4gIC50aHVtYm5haWwgYSA+IGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLnRodW1ibmFpbCAuY2FwdGlvbiB7XG4gICAgcGFkZGluZzogOXB4O1xuICAgIGNvbG9yOiAjNzY3Njc2OyB9XG5cbmEudGh1bWJuYWlsOmhvdmVyLFxuYS50aHVtYm5haWw6Zm9jdXMsXG5hLnRodW1ibmFpbC5hY3RpdmUge1xuICBib3JkZXItY29sb3I6ICMxQzdFQkI7IH1cblxuLmFsZXJ0IHtcbiAgcGFkZGluZzogMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuICAuYWxlcnQgaDQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgLmFsZXJ0IC5hbGVydC1saW5rIHtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAuYWxlcnQgPiBwLFxuICAuYWxlcnQgPiB1bCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuYWxlcnQgPiBwICsgcCB7XG4gICAgbWFyZ2luLXRvcDogNXB4OyB9XG5cbi5hbGVydC1kaXNtaXNzYWJsZSxcbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDM1cHg7IH1cbiAgLmFsZXJ0LWRpc21pc3NhYmxlIC5jbG9zZSxcbiAgLmFsZXJ0LWRpc21pc3NpYmxlIC5jbG9zZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTJweDtcbiAgICByaWdodDogLTIxcHg7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cblxuLmFsZXJ0LXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGQ0Y5O1xuICBib3JkZXItY29sb3I6ICNkZGY3ZWI7XG4gIGNvbG9yOiAjMjI5MTczOyB9XG4gIC5hbGVydC1zdWNjZXNzIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjYzlmMmRmOyB9XG4gIC5hbGVydC1zdWNjZXNzIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogIzE4Njg1MjsgfVxuXG4uYWxlcnQtaW5mbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFRUY4RkM7XG4gIGJvcmRlci1jb2xvcjogI2QwZjJmNztcbiAgY29sb3I6ICMyNjkyOUM7IH1cbiAgLmFsZXJ0LWluZm8gaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNiYWVjZjM7IH1cbiAgLmFsZXJ0LWluZm8gLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiAjMWM2YzczOyB9XG5cbi5hbGVydC13YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkFGMDtcbiAgYm9yZGVyLWNvbG9yOiAjZmZlYmQ3O1xuICBjb2xvcjogI0FGN0YxODsgfVxuICAuYWxlcnQtd2FybmluZyBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZGViZDsgfVxuICAuYWxlcnQtd2FybmluZyAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6ICM4MjVlMTI7IH1cblxuLmFsZXJ0LWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGREVGRUU7XG4gIGJvcmRlci1jb2xvcjogI2ZhZDdkYjtcbiAgY29sb3I6ICNCMTNEMzE7IH1cbiAgLmFsZXJ0LWRhbmdlciBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2Y4YzBjNjsgfVxuICAuYWxlcnQtZGFuZ2VyIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogIzg5MmYyNjsgfVxuXG4uYWxlcnQuYWxlcnQtZGFuZ2VyLmN1c3RvbS1hbGVydCB7XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbiAgcGFkZGluZzogMTBweDsgfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0MHB4IDA7IH1cbiAgdG8ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfSB9XG5cbkBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0MHB4IDA7IH1cbiAgdG8ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfSB9XG5cbi5wcm9ncmVzcyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuLnByb2dyZXNzLWJhciB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFDN0VCQjtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIDAuNnMgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogd2lkdGggMC42cyBlYXNlO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjZzIGVhc2U7IH1cblxuLnByb2dyZXNzLXN0cmlwZWQgLnByb2dyZXNzLWJhcixcbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1zaXplOiA0MHB4IDQwcHg7IH1cblxuLnByb2dyZXNzLmFjdGl2ZSAucHJvZ3Jlc3MtYmFyLFxuLnByb2dyZXNzLWJhci5hY3RpdmUge1xuICAtd2Via2l0LWFuaW1hdGlvbjogcHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMnMgbGluZWFyIGluZmluaXRlO1xuICAtby1hbmltYXRpb246IHByb2dyZXNzLWJhci1zdHJpcGVzIDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBwcm9ncmVzcy1iYXItc3RyaXBlcyAycyBsaW5lYXIgaW5maW5pdGU7IH1cblxuLnByb2dyZXNzLWJhci1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIzQUU4OTsgfVxuICAucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyLXN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7IH1cblxuLnByb2dyZXNzLWJhci1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJFQzFDQzsgfVxuICAucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyLWluZm8ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7IH1cblxuLnByb2dyZXNzLWJhci13YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGQjYxQzsgfVxuICAucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyLXdhcm5pbmcge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7IH1cblxuLnByb2dyZXNzLWJhci1kYW5nZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTk0QjNCOyB9XG4gIC5wcm9ncmVzcy1zdHJpcGVkIC5wcm9ncmVzcy1iYXItZGFuZ2VyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpOyB9XG5cbi5tZWRpYSB7XG4gIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgLm1lZGlhOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5tZWRpYSxcbi5tZWRpYS1ib2R5IHtcbiAgem9vbTogMTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4ubWVkaWEtYm9keSB7XG4gIHdpZHRoOiAxMDAwMHB4OyB9XG5cbi5tZWRpYS1vYmplY3Qge1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAubWVkaWEtb2JqZWN0LmltZy10aHVtYm5haWwge1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuXG4ubWVkaWEtcmlnaHQsXG4ubWVkaWEgPiAucHVsbC1yaWdodCB7XG4gIHBhZGRpbmctbGVmdDogMTBweDsgfVxuXG4ubWVkaWEtbGVmdCxcbi5tZWRpYSA+IC5wdWxsLWxlZnQge1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG5cbi5tZWRpYS1sZWZ0LFxuLm1lZGlhLXJpZ2h0LFxuLm1lZGlhLWJvZHkge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG5cbi5tZWRpYS1taWRkbGUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5tZWRpYS1ib3R0b20ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG5cbi5tZWRpYS1oZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG5cbi5tZWRpYS1saXN0IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5saXN0LWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlZmYyZjc7IH1cbiAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDJweDtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAycHg7IH1cbiAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAycHg7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMnB4OyB9XG5cbmEubGlzdC1ncm91cC1pdGVtLFxuYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIGNvbG9yOiAjNTU1OyB9XG4gIGEubGlzdC1ncm91cC1pdGVtIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbSAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgIGNvbG9yOiAjMzMzOyB9XG4gIGEubGlzdC1ncm91cC1pdGVtOmhvdmVyLCBhLmxpc3QtZ3JvdXAtaXRlbTpmb2N1cyxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbTpob3ZlcixcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbTpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAjNTU1O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7IH1cblxuYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQsIC5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQ6aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xuICBjb2xvcjogIzc3Nzc3NztcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZywgLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZDpob3ZlciAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsIC5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQ6Zm9jdXMgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCwgLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZDpob3ZlciAubGlzdC1ncm91cC1pdGVtLXRleHQsIC5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQ6Zm9jdXMgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICBjb2xvcjogIzc3Nzc3NzsgfVxuXG4ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSwgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmZvY3VzIHtcbiAgei1pbmRleDogMjtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQzdFQkI7XG4gIGJvcmRlci1jb2xvcjogIzFDN0VCQjsgfVxuICAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsXG4gIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IHNtYWxsLFxuICAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcgPiAuc21hbGwsIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmhvdmVyIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyxcbiAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6aG92ZXIgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nID4gc21hbGwsXG4gIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmhvdmVyIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IC5zbWFsbCwgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6Zm9jdXMgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLFxuICAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTpmb2N1cyAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcgPiBzbWFsbCxcbiAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6Zm9jdXMgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nID4gLnNtYWxsIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSAubGlzdC1ncm91cC1pdGVtLXRleHQsIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmhvdmVyIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCwgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6Zm9jdXMgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICBjb2xvcjogI2IwZDlmMzsgfVxuXG4ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3Mge1xuICBjb2xvcjogIzIyOTE3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyRkNGOTsgfVxuXG5hLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzLFxuYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzIHtcbiAgY29sb3I6ICMyMjkxNzM7IH1cbiAgYS5saXN0LWdyb3VwLWl0ZW0tc3VjY2VzcyAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2VzcyAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gIGEubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3M6aG92ZXIsIGEubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3M6Zm9jdXMsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzczpob3ZlcixcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzOmZvY3VzIHtcbiAgICBjb2xvcjogIzIyOTE3MztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRmN2VmOyB9XG4gIGEubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MuYWN0aXZlLCBhLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzLmFjdGl2ZTpob3ZlciwgYS5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5hY3RpdmU6Zm9jdXMsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5hY3RpdmUsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5hY3RpdmU6aG92ZXIsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5hY3RpdmU6Zm9jdXMge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMjkxNzM7XG4gICAgYm9yZGVyLWNvbG9yOiAjMjI5MTczOyB9XG5cbi5saXN0LWdyb3VwLWl0ZW0taW5mbyB7XG4gIGNvbG9yOiAjMjY5MjlDO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVGOEZDOyB9XG5cbmEubGlzdC1ncm91cC1pdGVtLWluZm8sXG5idXR0b24ubGlzdC1ncm91cC1pdGVtLWluZm8ge1xuICBjb2xvcjogIzI2OTI5QzsgfVxuICBhLmxpc3QtZ3JvdXAtaXRlbS1pbmZvIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1pbmZvIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgYS5saXN0LWdyb3VwLWl0ZW0taW5mbzpob3ZlciwgYS5saXN0LWdyb3VwLWl0ZW0taW5mbzpmb2N1cyxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1pbmZvOmhvdmVyLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLWluZm86Zm9jdXMge1xuICAgIGNvbG9yOiAjMjY5MjlDO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkOGVmZjg7IH1cbiAgYS5saXN0LWdyb3VwLWl0ZW0taW5mby5hY3RpdmUsIGEubGlzdC1ncm91cC1pdGVtLWluZm8uYWN0aXZlOmhvdmVyLCBhLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmFjdGl2ZTpmb2N1cyxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmFjdGl2ZSxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmFjdGl2ZTpob3ZlcixcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmFjdGl2ZTpmb2N1cyB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI2OTI5QztcbiAgICBib3JkZXItY29sb3I6ICMyNjkyOUM7IH1cblxuLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nIHtcbiAgY29sb3I6ICNBRjdGMTg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZBRjA7IH1cblxuYS5saXN0LWdyb3VwLWl0ZW0td2FybmluZyxcbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZyB7XG4gIGNvbG9yOiAjQUY3RjE4OyB9XG4gIGEubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICBhLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nOmhvdmVyLCBhLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nOmZvY3VzLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmc6aG92ZXIsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZzpmb2N1cyB7XG4gICAgY29sb3I6ICNBRjdGMTg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjJkNzsgfVxuICBhLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmFjdGl2ZSwgYS5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5hY3RpdmU6aG92ZXIsIGEubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcuYWN0aXZlOmZvY3VzLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcuYWN0aXZlLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcuYWN0aXZlOmhvdmVyLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcuYWN0aXZlOmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQUY3RjE4O1xuICAgIGJvcmRlci1jb2xvcjogI0FGN0YxODsgfVxuXG4ubGlzdC1ncm91cC1pdGVtLWRhbmdlciB7XG4gIGNvbG9yOiAjQjEzRDMxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkRFRkVFOyB9XG5cbmEubGlzdC1ncm91cC1pdGVtLWRhbmdlcixcbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyIHtcbiAgY29sb3I6ICNCMTNEMzE7IH1cbiAgYS5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICBhLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXI6aG92ZXIsIGEubGlzdC1ncm91cC1pdGVtLWRhbmdlcjpmb2N1cyxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXI6aG92ZXIsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyOmZvY3VzIHtcbiAgICBjb2xvcjogI0IxM0QzMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFkYWQ3OyB9XG4gIGEubGlzdC1ncm91cC1pdGVtLWRhbmdlci5hY3RpdmUsIGEubGlzdC1ncm91cC1pdGVtLWRhbmdlci5hY3RpdmU6aG92ZXIsIGEubGlzdC1ncm91cC1pdGVtLWRhbmdlci5hY3RpdmU6Zm9jdXMsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmFjdGl2ZSxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIuYWN0aXZlOmhvdmVyLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLWRhbmdlci5hY3RpdmU6Zm9jdXMge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNCMTNEMzE7XG4gICAgYm9yZGVyLWNvbG9yOiAjQjEzRDMxOyB9XG5cbi5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDVweDsgfVxuXG4ubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogMS4zOyB9XG5cbi5wYW5lbCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpOyB9XG5cbi5wYW5lbC1ib2R5IHtcbiAgcGFkZGluZzogMTVweDsgfVxuICAucGFuZWwtYm9keTpiZWZvcmUsIC5wYW5lbC1ib2R5OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAucGFuZWwtYm9keTphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLnBhbmVsLWhlYWRpbmcge1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDFweDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMXB4OyB9XG4gIC5wYW5lbC1oZWFkaW5nID4gLmRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG5cbi5wYW5lbC10aXRsZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgY29sb3I6IGluaGVyaXQ7IH1cbiAgLnBhbmVsLXRpdGxlID4gYSxcbiAgLnBhbmVsLXRpdGxlID4gc21hbGwsXG4gIC5wYW5lbC10aXRsZSA+IC5zbWFsbCxcbiAgLnBhbmVsLXRpdGxlID4gc21hbGwgPiBhLFxuICAucGFuZWwtdGl0bGUgPiAuc21hbGwgPiBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuXG4ucGFuZWwtZm9vdGVyIHtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U5ZTllOTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDFweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMXB4OyB9XG5cbi5wYW5lbCA+IC5saXN0LWdyb3VwLFxuLnBhbmVsID4gLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5wYW5lbCA+IC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0sXG4gIC5wYW5lbCA+IC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci13aWR0aDogMXB4IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAucGFuZWwgPiAubGlzdC1ncm91cDpmaXJzdC1jaGlsZCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkLFxuICAucGFuZWwgPiAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cDpmaXJzdC1jaGlsZCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxcHg7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMXB4OyB9XG4gIC5wYW5lbCA+IC5saXN0LWdyb3VwOmxhc3QtY2hpbGQgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkLFxuICAucGFuZWwgPiAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cDpsYXN0LWNoaWxkIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMXB4O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDFweDsgfVxuXG4ucGFuZWwgPiAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsgfVxuXG4ucGFuZWwtaGVhZGluZyArIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXdpZHRoOiAwOyB9XG5cbi5saXN0LWdyb3VwICsgLnBhbmVsLWZvb3RlciB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7IH1cblxuLnBhbmVsID4gLnRhYmxlLFxuLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUsXG4ucGFuZWwgPiAucGFuZWwtY29sbGFwc2UgPiAudGFibGUge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5wYW5lbCA+IC50YWJsZSBjYXB0aW9uLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSBjYXB0aW9uLFxuICAucGFuZWwgPiAucGFuZWwtY29sbGFwc2UgPiAudGFibGUgY2FwdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH1cblxuLnBhbmVsID4gLnRhYmxlOmZpcnN0LWNoaWxkLFxuLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6Zmlyc3QtY2hpbGQgPiAudGFibGU6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMXB4O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxcHg7IH1cbiAgLnBhbmVsID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGhlYWQ6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6Zmlyc3QtY2hpbGQgPiAudGFibGU6Zmlyc3QtY2hpbGQgPiB0aGVhZDpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDFweDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMXB4OyB9XG4gICAgLnBhbmVsID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGhlYWQ6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0ZDpmaXJzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGU6Zmlyc3QtY2hpbGQgPiB0aGVhZDpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRoOmZpcnN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0aDpmaXJzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRoZWFkOmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6Zmlyc3QtY2hpbGQgPiAudGFibGU6Zmlyc3QtY2hpbGQgPiB0aGVhZDpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRoOmZpcnN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0ZDpmaXJzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMXB4OyB9XG4gICAgLnBhbmVsID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGhlYWQ6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0ZDpsYXN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRoZWFkOmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGg6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGU6Zmlyc3QtY2hpbGQgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRkOmxhc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0aDpsYXN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGhlYWQ6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0ZDpsYXN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGhlYWQ6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0aDpsYXN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0ZDpsYXN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0aDpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxcHg7IH1cblxuLnBhbmVsID4gLnRhYmxlOmxhc3QtY2hpbGQsXG4ucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpsYXN0LWNoaWxkID4gLnRhYmxlOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMXB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxcHg7IH1cbiAgLnBhbmVsID4gLnRhYmxlOmxhc3QtY2hpbGQgPiB0Ym9keTpsYXN0LWNoaWxkID4gdHI6bGFzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlOmxhc3QtY2hpbGQgPiB0Zm9vdDpsYXN0LWNoaWxkID4gdHI6bGFzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGJvZHk6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRmb290Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxcHg7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDFweDsgfVxuICAgIC5wYW5lbCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGJvZHk6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlOmxhc3QtY2hpbGQgPiB0Ym9keTpsYXN0LWNoaWxkID4gdHI6bGFzdC1jaGlsZCB0aDpmaXJzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRmb290Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkIHRkOmZpcnN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGZvb3Q6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGg6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGJvZHk6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGJvZHk6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGg6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGZvb3Q6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGZvb3Q6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMXB4OyB9XG4gICAgLnBhbmVsID4gLnRhYmxlOmxhc3QtY2hpbGQgPiB0Ym9keTpsYXN0LWNoaWxkID4gdHI6bGFzdC1jaGlsZCB0ZDpsYXN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGJvZHk6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGg6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRmb290Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkIHRkOmxhc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlOmxhc3QtY2hpbGQgPiB0Zm9vdDpsYXN0LWNoaWxkID4gdHI6bGFzdC1jaGlsZCB0aDpsYXN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRib2R5Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkIHRkOmxhc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGJvZHk6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGg6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpsYXN0LWNoaWxkID4gLnRhYmxlOmxhc3QtY2hpbGQgPiB0Zm9vdDpsYXN0LWNoaWxkID4gdHI6bGFzdC1jaGlsZCB0ZDpsYXN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRmb290Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkIHRoOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDFweDsgfVxuXG4ucGFuZWwgPiAucGFuZWwtYm9keSArIC50YWJsZSxcbi5wYW5lbCA+IC5wYW5lbC1ib2R5ICsgLnRhYmxlLXJlc3BvbnNpdmUsXG4ucGFuZWwgPiAudGFibGUgKyAucGFuZWwtYm9keSxcbi5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlICsgLnBhbmVsLWJvZHkge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDsgfVxuXG4ucGFuZWwgPiAudGFibGUgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRoLFxuLnBhbmVsID4gLnRhYmxlID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0ZCB7XG4gIGJvcmRlci10b3A6IDA7IH1cblxuLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkLFxuLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6IDA7IH1cbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRkOmZpcnN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRkOmZpcnN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHIgPiB0ZDpsYXN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyID4gdGg6bGFzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRkOmxhc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHIgPiB0aDpsYXN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyID4gdGQ6bGFzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyID4gdGg6bGFzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyID4gdGQ6bGFzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyID4gdGg6bGFzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyID4gdGQ6bGFzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyID4gdGg6bGFzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyID4gdGQ6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHI6Zmlyc3QtY2hpbGQgPiB0ZCxcbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0cjpmaXJzdC1jaGlsZCA+IHRoLFxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyOmZpcnN0LWNoaWxkID4gdGQsXG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHI6Zmlyc3QtY2hpbGQgPiB0aCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyOmZpcnN0LWNoaWxkID4gdGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0cjpmaXJzdC1jaGlsZCA+IHRoLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHI6Zmlyc3QtY2hpbGQgPiB0ZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyOmZpcnN0LWNoaWxkID4gdGgge1xuICAgIGJvcmRlci1ib3R0b206IDA7IH1cbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0cjpsYXN0LWNoaWxkID4gdGQsXG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHI6bGFzdC1jaGlsZCA+IHRoLFxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyOmxhc3QtY2hpbGQgPiB0ZCxcbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0cjpsYXN0LWNoaWxkID4gdGgsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0cjpsYXN0LWNoaWxkID4gdGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0cjpsYXN0LWNoaWxkID4gdGgsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0cjpsYXN0LWNoaWxkID4gdGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0cjpsYXN0LWNoaWxkID4gdGgge1xuICAgIGJvcmRlci1ib3R0b206IDA7IH1cblxuLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUge1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnBhbmVsLWdyb3VwIHtcbiAgbWFyZ2luOiAwcHggMTVweDsgfVxuICAucGFuZWwtZ3JvdXAgLnBhbmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuICAgIC5wYW5lbC1ncm91cCAucGFuZWwgKyAucGFuZWwge1xuICAgICAgbWFyZ2luLXRvcDogNXB4OyB9XG4gIC5wYW5lbC1ncm91cCAucGFuZWwtaGVhZGluZyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuICAgIC5wYW5lbC1ncm91cCAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5LFxuICAgIC5wYW5lbC1ncm91cCAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTllOWU5OyB9XG4gIC5wYW5lbC1ncm91cCAucGFuZWwtZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiAwOyB9XG4gICAgLnBhbmVsLWdyb3VwIC5wYW5lbC1mb290ZXIgKyAucGFuZWwtY29sbGFwc2UgLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOWU5ZTk7IH1cblxuLnBhbmVsLWRlZmF1bHQge1xuICBib3JkZXItY29sb3I6ICNlOWU5ZTk7IH1cbiAgLnBhbmVsLWRlZmF1bHQgPiAucGFuZWwtaGVhZGluZyB7XG4gICAgY29sb3I6ICM3Njc2NzY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgICBib3JkZXItY29sb3I6ICNlOWU5ZTk7IH1cbiAgICAucGFuZWwtZGVmYXVsdCA+IC5wYW5lbC1oZWFkaW5nICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogI2U5ZTllOTsgfVxuICAgIC5wYW5lbC1kZWZhdWx0ID4gLnBhbmVsLWhlYWRpbmcgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiAjZjZmNmY2O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3NjsgfVxuICAucGFuZWwtZGVmYXVsdCA+IC5wYW5lbC1mb290ZXIgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2U5ZTllOTsgfVxuXG4ucGFuZWwtcHJpbWFyeSB7XG4gIGJvcmRlci1jb2xvcjogIzFDN0VCQjsgfVxuICAucGFuZWwtcHJpbWFyeSA+IC5wYW5lbC1oZWFkaW5nIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUM3RUJCO1xuICAgIGJvcmRlci1jb2xvcjogIzFDN0VCQjsgfVxuICAgIC5wYW5lbC1wcmltYXJ5ID4gLnBhbmVsLWhlYWRpbmcgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAjMUM3RUJCOyB9XG4gICAgLnBhbmVsLXByaW1hcnkgPiAucGFuZWwtaGVhZGluZyAuYmFkZ2Uge1xuICAgICAgY29sb3I6ICMxQzdFQkI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIC5wYW5lbC1wcmltYXJ5ID4gLnBhbmVsLWZvb3RlciArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjMUM3RUJCOyB9XG5cbi5wYW5lbC1zdWNjZXNzIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGRmN2ViOyB9XG4gIC5wYW5lbC1zdWNjZXNzID4gLnBhbmVsLWhlYWRpbmcge1xuICAgIGNvbG9yOiAjMjI5MTczO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGMkZDRjk7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGRmN2ViOyB9XG4gICAgLnBhbmVsLXN1Y2Nlc3MgPiAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICNkZGY3ZWI7IH1cbiAgICAucGFuZWwtc3VjY2VzcyA+IC5wYW5lbC1oZWFkaW5nIC5iYWRnZSB7XG4gICAgICBjb2xvcjogI0YyRkNGOTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMjkxNzM7IH1cbiAgLnBhbmVsLXN1Y2Nlc3MgPiAucGFuZWwtZm9vdGVyICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNkZGY3ZWI7IH1cblxuLnBhbmVsLWluZm8ge1xuICBib3JkZXItY29sb3I6ICNkMGYyZjc7IH1cbiAgLnBhbmVsLWluZm8gPiAucGFuZWwtaGVhZGluZyB7XG4gICAgY29sb3I6ICMyNjkyOUM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VFRjhGQztcbiAgICBib3JkZXItY29sb3I6ICNkMGYyZjc7IH1cbiAgICAucGFuZWwtaW5mbyA+IC5wYW5lbC1oZWFkaW5nICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogI2QwZjJmNzsgfVxuICAgIC5wYW5lbC1pbmZvID4gLnBhbmVsLWhlYWRpbmcgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiAjRUVGOEZDO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI2OTI5QzsgfVxuICAucGFuZWwtaW5mbyA+IC5wYW5lbC1mb290ZXIgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2QwZjJmNzsgfVxuXG4ucGFuZWwtd2FybmluZyB7XG4gIGJvcmRlci1jb2xvcjogI2ZmZWJkNzsgfVxuICAucGFuZWwtd2FybmluZyA+IC5wYW5lbC1oZWFkaW5nIHtcbiAgICBjb2xvcjogI0FGN0YxODtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGQUYwO1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZWJkNzsgfVxuICAgIC5wYW5lbC13YXJuaW5nID4gLnBhbmVsLWhlYWRpbmcgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAjZmZlYmQ3OyB9XG4gICAgLnBhbmVsLXdhcm5pbmcgPiAucGFuZWwtaGVhZGluZyAuYmFkZ2Uge1xuICAgICAgY29sb3I6ICNGRkZBRjA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQUY3RjE4OyB9XG4gIC5wYW5lbC13YXJuaW5nID4gLnBhbmVsLWZvb3RlciArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmZlYmQ3OyB9XG5cbi5wYW5lbC1kYW5nZXIge1xuICBib3JkZXItY29sb3I6ICNmYWQ3ZGI7IH1cbiAgLnBhbmVsLWRhbmdlciA+IC5wYW5lbC1oZWFkaW5nIHtcbiAgICBjb2xvcjogI0IxM0QzMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkRFRkVFO1xuICAgIGJvcmRlci1jb2xvcjogI2ZhZDdkYjsgfVxuICAgIC5wYW5lbC1kYW5nZXIgPiAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICNmYWQ3ZGI7IH1cbiAgICAucGFuZWwtZGFuZ2VyID4gLnBhbmVsLWhlYWRpbmcgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiAjRkRFRkVFO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0IxM0QzMTsgfVxuICAucGFuZWwtZGFuZ2VyID4gLnBhbmVsLWZvb3RlciArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmFkN2RiOyB9XG5cbi5wYW5lbC5wYW5lbC1kZWZhdWx0LnBhbmVsLWFuYWdyYXBoIHtcbiAgbWFyZ2luOiAwcHggMTVweDsgfVxuXG4ucGFuZWwucGFuZWwtZGVmYXVsdC5wYW5lbC13aWRnZXQge1xuICBtYXJnaW4tbGVmdDogMTVweDtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG5cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5lbWJlZC1yZXNwb25zaXZlIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIC5lbWJlZC1yZXNwb25zaXZlIGlmcmFtZSxcbiAgLmVtYmVkLXJlc3BvbnNpdmUgZW1iZWQsXG4gIC5lbWJlZC1yZXNwb25zaXZlIG9iamVjdCxcbiAgLmVtYmVkLXJlc3BvbnNpdmUgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMDsgfVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS0xNmJ5OSB7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IH1cblxuLmVtYmVkLXJlc3BvbnNpdmUtNGJ5MyB7XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7IH1cblxuLndlbGwge1xuICBtaW4taGVpZ2h0OiAyMHB4O1xuICBwYWRkaW5nOiAxOXB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTNlM2UzO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpOyB9XG4gIC53ZWxsIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlci1jb2xvcjogI2RkZDtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNSk7IH1cblxuLndlbGwtbGcge1xuICBwYWRkaW5nOiAyNHB4O1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLndlbGwtc20ge1xuICBwYWRkaW5nOiA5cHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4uY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMjFweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzAwMDtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgI2ZmZjtcbiAgb3BhY2l0eTogMC4yO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MjApOyB9XG4gIC5jbG9zZTpob3ZlciwgLmNsb3NlOmZvY3VzIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NTApOyB9XG5cbmJ1dHRvbi5jbG9zZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi5tb2RhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4ubW9kYWwge1xuICBkaXNwbGF5OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTA0MDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBvdXRsaW5lOiAwOyB9XG4gIC5tb2RhbC5mYWRlIC5tb2RhbC1kaWFsb2cge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTI1JSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0yNSUpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0yNSUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0yNSUpO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBlYXNlLW91dDtcbiAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG4gICAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7IH1cbiAgLm1vZGFsLmluIC5tb2RhbC1kaWFsb2cge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG5cbi5tb2RhbC1vcGVuIC5tb2RhbCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAxMHB4OyB9XG5cbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDNweCA5cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBib3gtc2hhZG93OiAwIDNweCA5cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBvdXRsaW5lOiAwOyB9XG5cbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDQwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyB9XG4gIC5tb2RhbC1iYWNrZHJvcC5mYWRlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTsgfVxuICAubW9kYWwtYmFja2Ryb3AuaW4ge1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NTApOyB9XG5cbi5tb2RhbC1oZWFkZXIge1xuICBwYWRkaW5nOiAxNXB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTsgfVxuICAubW9kYWwtaGVhZGVyOmJlZm9yZSwgLm1vZGFsLWhlYWRlcjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLm1vZGFsLWhlYWRlcjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLm1vZGFsLWhlYWRlciAuY2xvc2Uge1xuICBtYXJnaW4tdG9wOiAtMnB4OyB9XG5cbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTc7IH1cblxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDE1cHg7IH1cblxuLm1vZGFsLWZvb3RlciB7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U1ZTVlNTsgfVxuICAubW9kYWwtZm9vdGVyOmJlZm9yZSwgLm1vZGFsLWZvb3RlcjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLm1vZGFsLWZvb3RlcjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLm1vZGFsLWZvb3RlciAuYnRuICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5tb2RhbC1mb290ZXIgLmJ0bi1ncm91cCAuYnRuICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7IH1cbiAgLm1vZGFsLWZvb3RlciAuYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIHdpZHRoOiA2MDBweDtcbiAgICBtYXJnaW46IDMwcHggYXV0bzsgfVxuICAubW9kYWwtY29udGVudCB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICBib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuICAubW9kYWwtc20ge1xuICAgIHdpZHRoOiAzMDBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubW9kYWwtbGcge1xuICAgIHdpZHRoOiA5MDBweDsgfSB9XG5cbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDcwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xuICBmb250LXNpemU6IDEycHg7XG4gIG9wYWNpdHk6IDA7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTsgfVxuICAudG9vbHRpcC5pbiB7XG4gICAgb3BhY2l0eTogMC45O1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT05MCk7IH1cbiAgLnRvb2x0aXAudG9wIHtcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgIHBhZGRpbmc6IDVweCAwOyB9XG4gIC50b29sdGlwLnJpZ2h0IHtcbiAgICBtYXJnaW4tbGVmdDogM3B4O1xuICAgIHBhZGRpbmc6IDAgNXB4OyB9XG4gIC50b29sdGlwLmJvdHRvbSB7XG4gICAgbWFyZ2luLXRvcDogM3B4O1xuICAgIHBhZGRpbmc6IDVweCAwOyB9XG4gIC50b29sdGlwLmxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xuICAgIHBhZGRpbmc6IDAgNXB4OyB9XG5cbi50b29sdGlwLWlubmVyIHtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgcGFkZGluZzogM3B4IDhweDtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi50b29sdGlwLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkOyB9XG5cbi50b29sdGlwLnRvcCAudG9vbHRpcC1hcnJvdyB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTVweDtcbiAgYm9yZGVyLXdpZHRoOiA1cHggNXB4IDA7XG4gIGJvcmRlci10b3AtY29sb3I6ICMwMDA7IH1cblxuLnRvb2x0aXAudG9wLWxlZnQgLnRvb2x0aXAtYXJyb3cge1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IC01cHg7XG4gIGJvcmRlci13aWR0aDogNXB4IDVweCAwO1xuICBib3JkZXItdG9wLWNvbG9yOiAjMDAwOyB9XG5cbi50b29sdGlwLnRvcC1yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAtNXB4O1xuICBib3JkZXItd2lkdGg6IDVweCA1cHggMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzAwMDsgfVxuXG4udG9vbHRpcC5yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAwO1xuICBtYXJnaW4tdG9wOiAtNXB4O1xuICBib3JkZXItd2lkdGg6IDVweCA1cHggNXB4IDA7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogIzAwMDsgfVxuXG4udG9vbHRpcC5sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW4tdG9wOiAtNXB4O1xuICBib3JkZXItd2lkdGg6IDVweCAwIDVweCA1cHg7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjMDAwOyB9XG5cbi50b29sdGlwLmJvdHRvbSAudG9vbHRpcC1hcnJvdyB7XG4gIHRvcDogMDtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTVweDtcbiAgYm9yZGVyLXdpZHRoOiAwIDVweCA1cHg7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICMwMDA7IH1cblxuLnRvb2x0aXAuYm90dG9tLWxlZnQgLnRvb2x0aXAtYXJyb3cge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiA1cHg7XG4gIG1hcmdpbi10b3A6IC01cHg7XG4gIGJvcmRlci13aWR0aDogMCA1cHggNXB4O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjMDAwOyB9XG5cbi50b29sdGlwLmJvdHRvbS1yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gIHRvcDogMDtcbiAgbGVmdDogNXB4O1xuICBtYXJnaW4tdG9wOiAtNXB4O1xuICBib3JkZXItd2lkdGg6IDAgNXB4IDVweDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzAwMDsgfVxuXG4ucG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDYwO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtd2lkdGg6IDI3NnB4O1xuICBwYWRkaW5nOiAxcHg7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xuICBsaW5lLWhlaWdodDogMS40Mjg1NztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyNTMzO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMjIyNTMzO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMjIyNTMzO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG4gIC5wb3BvdmVyLnRvcCB7XG4gICAgbWFyZ2luLXRvcDogLTEwcHg7IH1cbiAgLnBvcG92ZXIucmlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG4gIC5wb3BvdmVyLmJvdHRvbSB7XG4gICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAucG9wb3Zlci5sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogLTEwcHg7IH1cblxuLnBvcG92ZXItdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDhweCAxNHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjI1MzM7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMTgxYTI0O1xuICBib3JkZXItcmFkaXVzOiAxcHggMXB4IDAgMDsgfVxuXG4ucG9wb3Zlci1jb250ZW50IHtcbiAgcGFkZGluZzogOXB4IDE0cHg7IH1cblxuLnBvcG92ZXIgPiAuYXJyb3csIC5wb3BvdmVyID4gLmFycm93OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsgfVxuXG4ucG9wb3ZlciA+IC5hcnJvdyB7XG4gIGJvcmRlci13aWR0aDogMTFweDsgfVxuXG4ucG9wb3ZlciA+IC5hcnJvdzphZnRlciB7XG4gIGJvcmRlci13aWR0aDogMTBweDtcbiAgY29udGVudDogXCJcIjsgfVxuXG4ucG9wb3Zlci50b3AgPiAuYXJyb3cge1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMTFweDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzIyMjUzMztcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzIyMjUzMztcbiAgYm90dG9tOiAtMTFweDsgfVxuICAucG9wb3Zlci50b3AgPiAuYXJyb3c6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGJvdHRvbTogMXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMyMjI1MzM7IH1cblxuLnBvcG92ZXIucmlnaHQgPiAuYXJyb3cge1xuICB0b3A6IDUwJTtcbiAgbGVmdDogLTExcHg7XG4gIG1hcmdpbi10b3A6IC0xMXB4O1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjMjIyNTMzO1xuICBib3JkZXItcmlnaHQtY29sb3I6ICMyMjI1MzM7IH1cbiAgLnBvcG92ZXIucmlnaHQgPiAuYXJyb3c6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGxlZnQ6IDFweDtcbiAgICBib3R0b206IC0xMHB4O1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzIyMjUzMzsgfVxuXG4ucG9wb3Zlci5ib3R0b20gPiAuYXJyb3cge1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMTFweDtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzIyMjUzMztcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzIyMjUzMztcbiAgdG9wOiAtMTFweDsgfVxuICAucG9wb3Zlci5ib3R0b20gPiAuYXJyb3c6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIHRvcDogMXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICMyMjI1MzM7IH1cblxuLnBvcG92ZXIubGVmdCA+IC5hcnJvdyB7XG4gIHRvcDogNTAlO1xuICByaWdodDogLTExcHg7XG4gIG1hcmdpbi10b3A6IC0xMXB4O1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjMjIyNTMzO1xuICBib3JkZXItbGVmdC1jb2xvcjogIzIyMjUzMzsgfVxuICAucG9wb3Zlci5sZWZ0ID4gLmFycm93OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICByaWdodDogMXB4O1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogIzIyMjUzMztcbiAgICBib3R0b206IC0xMHB4OyB9XG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5jYXJvdXNlbC1pbm5lciA+IC5pdGVtIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IDAuNnMgZWFzZS1pbi1vdXQgbGVmdDtcbiAgICAtby10cmFuc2l0aW9uOiAwLjZzIGVhc2UtaW4tb3V0IGxlZnQ7XG4gICAgdHJhbnNpdGlvbjogMC42cyBlYXNlLWluLW91dCBsZWZ0OyB9XG4gICAgLmNhcm91c2VsLWlubmVyID4gLml0ZW0gPiBpbWcsXG4gICAgLmNhcm91c2VsLWlubmVyID4gLml0ZW0gPiBhID4gaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICBAbWVkaWEgYWxsIGFuZCAodHJhbnNmb3JtLTNkKSwgKC13ZWJraXQtdHJhbnNmb3JtLTNkKSB7XG4gICAgICAuY2Fyb3VzZWwtaW5uZXIgPiAuaXRlbSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC42cyBlYXNlLWluLW91dDtcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAwLjZzIGVhc2UtaW4tb3V0O1xuICAgICAgICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gMC42cyBlYXNlLWluLW91dDtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAtd2Via2l0LXBlcnNwZWN0aXZlOiAxMDAwcHg7XG4gICAgICAgIC1tb3otcGVyc3BlY3RpdmU6IDEwMDBweDtcbiAgICAgICAgcGVyc3BlY3RpdmU6IDEwMDBweDsgfVxuICAgICAgICAuY2Fyb3VzZWwtaW5uZXIgPiAuaXRlbS5uZXh0LCAuY2Fyb3VzZWwtaW5uZXIgPiAuaXRlbS5hY3RpdmUucmlnaHQge1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgICAgICAgIGxlZnQ6IDA7IH1cbiAgICAgICAgLmNhcm91c2VsLWlubmVyID4gLml0ZW0ucHJldiwgLmNhcm91c2VsLWlubmVyID4gLml0ZW0uYWN0aXZlLmxlZnQge1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgICAgICAgbGVmdDogMDsgfVxuICAgICAgICAuY2Fyb3VzZWwtaW5uZXIgPiAuaXRlbS5uZXh0LmxlZnQsIC5jYXJvdXNlbC1pbm5lciA+IC5pdGVtLnByZXYucmlnaHQsIC5jYXJvdXNlbC1pbm5lciA+IC5pdGVtLmFjdGl2ZSB7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgICAgbGVmdDogMDsgfSB9XG4gIC5jYXJvdXNlbC1pbm5lciA+IC5hY3RpdmUsXG4gIC5jYXJvdXNlbC1pbm5lciA+IC5uZXh0LFxuICAuY2Fyb3VzZWwtaW5uZXIgPiAucHJldiB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmNhcm91c2VsLWlubmVyID4gLmFjdGl2ZSB7XG4gICAgbGVmdDogMDsgfVxuICAuY2Fyb3VzZWwtaW5uZXIgPiAubmV4dCxcbiAgLmNhcm91c2VsLWlubmVyID4gLnByZXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmNhcm91c2VsLWlubmVyID4gLm5leHQge1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLmNhcm91c2VsLWlubmVyID4gLnByZXYge1xuICAgIGxlZnQ6IC0xMDAlOyB9XG4gIC5jYXJvdXNlbC1pbm5lciA+IC5uZXh0LmxlZnQsXG4gIC5jYXJvdXNlbC1pbm5lciA+IC5wcmV2LnJpZ2h0IHtcbiAgICBsZWZ0OiAwOyB9XG4gIC5jYXJvdXNlbC1pbm5lciA+IC5hY3RpdmUubGVmdCB7XG4gICAgbGVmdDogLTEwMCU7IH1cbiAgLmNhcm91c2VsLWlubmVyID4gLmFjdGl2ZS5yaWdodCB7XG4gICAgbGVmdDogMTAwJTsgfVxuXG4uY2Fyb3VzZWwtY29udHJvbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxNSU7XG4gIG9wYWNpdHk6IDAuNTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTUwKTtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTsgfVxuICAuY2Fyb3VzZWwtY29udHJvbC5sZWZ0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSkgMCUsIHJnYmEoMCwgMCwgMCwgMC4wMDAxKSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpIDAlLCByZ2JhKDAsIDAsIDAsIDAuMDAwMSkgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSkgMCUsIHJnYmEoMCwgMCwgMCwgMC4wMDAxKSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzgwMDAwMDAwJywgZW5kQ29sb3JzdHI9JyMwMDAwMDAwMCcsIEdyYWRpZW50VHlwZT0xKTsgfVxuICAuY2Fyb3VzZWwtY29udHJvbC5yaWdodCB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuMDAwMSkgMCUsIHJnYmEoMCwgMCwgMCwgMC41KSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAwLjAwMDEpIDAlLCByZ2JhKDAsIDAsIDAsIDAuNSkgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuMDAwMSkgMCUsIHJnYmEoMCwgMCwgMCwgMC41KSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzAwMDAwMDAwJywgZW5kQ29sb3JzdHI9JyM4MDAwMDAwMCcsIEdyYWRpZW50VHlwZT0xKTsgfVxuICAuY2Fyb3VzZWwtY29udHJvbDpob3ZlciwgLmNhcm91c2VsLWNvbnRyb2w6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9OTApOyB9XG4gIC5jYXJvdXNlbC1jb250cm9sIC5pY29uLXByZXYsXG4gIC5jYXJvdXNlbC1jb250cm9sIC5pY29uLW5leHQsXG4gIC5jYXJvdXNlbC1jb250cm9sIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LFxuICAuY2Fyb3VzZWwtY29udHJvbCAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1wcmV2LFxuICAuY2Fyb3VzZWwtY29udHJvbCAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCB7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDsgfVxuICAuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1uZXh0LFxuICAuY2Fyb3VzZWwtY29udHJvbCAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQge1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDsgfVxuICAuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1wcmV2LFxuICAuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1uZXh0IHtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1mYW1pbHk6IHNlcmlmOyB9XG4gIC5jYXJvdXNlbC1jb250cm9sIC5pY29uLXByZXY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyMDM5JzsgfVxuICAuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1uZXh0OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcMjAzYSc7IH1cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTBweDtcbiAgbGVmdDogNTAlO1xuICB6LWluZGV4OiAxNTtcbiAgd2lkdGg6IDYwJTtcbiAgbWFyZ2luLWxlZnQ6IC0zMCU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIG1hcmdpbjogMXB4O1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwIFxcOTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOyB9XG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIC5hY3RpdmUge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMTUlO1xuICByaWdodDogMTUlO1xuICBib3R0b206IDIwcHg7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpOyB9XG4gIC5jYXJvdXNlbC1jYXB0aW9uIC5idG4ge1xuICAgIHRleHQtc2hhZG93OiBub25lOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jYXJvdXNlbC1jb250cm9sIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LFxuICAuY2Fyb3VzZWwtY29udHJvbCAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQsXG4gIC5jYXJvdXNlbC1jb250cm9sIC5pY29uLXByZXYsXG4gIC5jYXJvdXNlbC1jb250cm9sIC5pY29uLW5leHQge1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMzBweDtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICBmb250LXNpemU6IDMwcHg7IH1cbiAgLmNhcm91c2VsLWNvbnRyb2wgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXG4gIC5jYXJvdXNlbC1jb250cm9sIC5pY29uLXByZXYge1xuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDsgfVxuICAuY2Fyb3VzZWwtY29udHJvbCAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQsXG4gIC5jYXJvdXNlbC1jb250cm9sIC5pY29uLW5leHQge1xuICAgIG1hcmdpbi1yaWdodDogLTEwcHg7IH1cbiAgLmNhcm91c2VsLWNhcHRpb24ge1xuICAgIGxlZnQ6IDIwJTtcbiAgICByaWdodDogMjAlO1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4OyB9XG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgICBib3R0b206IDIwcHg7IH0gfVxuXG4uY2xlYXJmaXg6YmVmb3JlLCAuY2xlYXJmaXg6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogdGFibGU7IH1cblxuLmNsZWFyZml4OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmNlbnRlci1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi5wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cblxuLnB1bGwtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnNob3cge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnRleHQtaGlkZSB7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwOyB9XG5cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmFmZml4IHtcbiAgcG9zaXRpb246IGZpeGVkOyB9XG5cbkAtbXMtdmlld3BvcnQge1xuICB3aWR0aDogZGV2aWNlLXdpZHRoOyB9XG5cbi52aXNpYmxlLXhzIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi52aXNpYmxlLXNtIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi52aXNpYmxlLW1kIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi52aXNpYmxlLWxnIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi52aXNpYmxlLXhzLWJsb2NrLFxuLnZpc2libGUteHMtaW5saW5lLFxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtc20tYmxvY2ssXG4udmlzaWJsZS1zbS1pbmxpbmUsXG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1tZC1ibG9jayxcbi52aXNpYmxlLW1kLWlubGluZSxcbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayxcbi52aXNpYmxlLWxnLWJsb2NrLFxuLnZpc2libGUtbGctaW5saW5lLFxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudmlzaWJsZS14cyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICB0YWJsZS52aXNpYmxlLXhzIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRyLnZpc2libGUteHMge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRoLnZpc2libGUteHMsXG4gIHRkLnZpc2libGUteHMge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudmlzaWJsZS14cy1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudmlzaWJsZS14cy1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC52aXNpYmxlLXhzLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAudmlzaWJsZS1zbSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICB0YWJsZS52aXNpYmxlLXNtIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRyLnZpc2libGUtc20ge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRoLnZpc2libGUtc20sXG4gIHRkLnZpc2libGUtc20ge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC52aXNpYmxlLXNtLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnZpc2libGUtc20taW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC52aXNpYmxlLXNtLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLnZpc2libGUtbWQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgdGFibGUudmlzaWJsZS1tZCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0ci52aXNpYmxlLW1kIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0aC52aXNpYmxlLW1kLFxuICB0ZC52aXNpYmxlLW1kIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLnZpc2libGUtbWQtYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLnZpc2libGUtbWQtaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAudmlzaWJsZS1tZC1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudmlzaWJsZS1sZyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICB0YWJsZS52aXNpYmxlLWxnIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRyLnZpc2libGUtbGcge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRoLnZpc2libGUtbGcsXG4gIHRkLnZpc2libGUtbGcge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnZpc2libGUtbGctYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC52aXNpYmxlLWxnLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi14cyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmhpZGRlbi1zbSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhpZGRlbi1sZyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnZpc2libGUtcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50IHtcbiAgLnZpc2libGUtcHJpbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgdGFibGUudmlzaWJsZS1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0ci52aXNpYmxlLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0aC52aXNpYmxlLXByaW50LFxuICB0ZC52aXNpYmxlLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH0gfVxuXG4udmlzaWJsZS1wcmludC1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgcHJpbnQge1xuICAgIC52aXNpYmxlLXByaW50LWJsb2NrIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG4udmlzaWJsZS1wcmludC1pbmxpbmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHByaW50IHtcbiAgICAudmlzaWJsZS1wcmludC1pbmxpbmUge1xuICAgICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH0gfVxuXG4udmlzaWJsZS1wcmludC1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHByaW50IHtcbiAgICAudmlzaWJsZS1wcmludC1pbmxpbmUtYmxvY2sge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQge1xuICAuaGlkZGVuLXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuIiwiLyohXG4gKiBCb290c3RyYXAgdjMuMy42IChodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbSlcbiAqIENvcHlyaWdodCAyMDExLTIwMTUgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqL1xuXG4vLyBDb3JlIHZhcmlhYmxlcyBhbmQgbWl4aW5zXG5AaW1wb3J0IFwiLi4vZ2xvYmFsL3ZhclwiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbWl4aW5zXCI7XG5cbi8vIFJlc2V0IGFuZCBkZXBlbmRlbmNpZXNcbkBpbXBvcnQgXCJib290c3RyYXAvbm9ybWFsaXplXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3ByaW50XCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2dseXBoaWNvbnNcIjtcblxuLy8gQ29yZSBDU1NcbkBpbXBvcnQgXCJib290c3RyYXAvc2NhZmZvbGRpbmdcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvdHlwZVwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9jb2RlXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2dyaWRcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvdGFibGVzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2Zvcm1zXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2J1dHRvbnNcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcImJvb3RzdHJhcC9jb21wb25lbnQtYW5pbWF0aW9uc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9kcm9wZG93bnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvYnV0dG9uLWdyb3Vwc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9pbnB1dC1ncm91cHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbmF2c1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9uYXZiYXJcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvYnJlYWRjcnVtYnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wYWdlclwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9sYWJlbHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvYmFkZ2VzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2p1bWJvdHJvblwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC90aHVtYm5haWxzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2FsZXJ0c1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wcm9ncmVzcy1iYXJzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL21lZGlhXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcGFuZWxzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3Jlc3BvbnNpdmUtZW1iZWRcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvd2VsbHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvY2xvc2VcIjtcblxuLy8gQ29tcG9uZW50cyB3LyBKYXZhU2NyaXB0XG5AaW1wb3J0IFwiYm9vdHN0cmFwL21vZGFsc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC90b29sdGlwXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3BvcG92ZXJzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2Nhcm91c2VsXCI7XG5cbi8vIFV0aWxpdHkgY2xhc3Nlc1xuQGltcG9ydCBcImJvb3RzdHJhcC91dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcmVzcG9uc2l2ZS11dGlsaXRpZXNcIjtcbiIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLy9cbi8vIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4vLyAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxuLy8gICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuLy9cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAxXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuLy9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8gSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuLy8gYW5kIEZpcmVmb3guXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuLy9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuLy8gMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuLy9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gMlxufVxuXG4vL1xuLy8gUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbi8vIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4vL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4vLyBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4vL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gTGlua3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbi8vXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLy9cbi8vIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbi8vIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbi8vXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vL1xuLy8gQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuLy8gY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLy9cbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4vL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vLyBFbWJlZGRlZCBjb250ZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4vL1xuXG5pbWcge1xuICBib3JkZXI6IDA7XG59XG5cbi8vXG4vLyBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbi8vXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gR3JvdXBpbmcgY29udGVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuLy9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbi8vXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbn1cblxuLy9cbi8vIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vXG4vLyBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8vIEZvcm1zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbi8vIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbi8vXG5cbi8vXG4vLyAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4vLyAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbi8vIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4vLyAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbi8vXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAxXG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgbWFyZ2luOiAwOyAvLyAzXG59XG5cbi8vXG4vLyBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbi8vXG5cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuLy8gQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbi8vIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4vLyBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4vL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLy9cbi8vIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4vLyAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbi8vIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbi8vIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4vLyAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4vL1xuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8vIDFcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxuICBjdXJzb3I6IHBvaW50ZXI7IC8vIDNcbn1cblxuLy9cbi8vIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4vL1xuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4vL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbi8vIHRoZSBVQSBzdHlsZXNoZWV0LlxuLy9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vL1xuLy8gSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuLy8gRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbi8vXG4vLyAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuLy8gMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbi8vXG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbi8vIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4vLyBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4vL1xuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy9cbi8vIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy8gMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8yXG59XG5cbi8vXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbi8vIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbi8vIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuLy9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4vLyAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4vL1xuXG5sZWdlbmQge1xuICBib3JkZXI6IDA7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbi8vXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vXG4vLyBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4vLyBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbi8vXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vIFRhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwO1xufVxuIiwiLyohIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzcyAqL1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUHJpbnQgc3R5bGVzLlxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6IGg1YnAuY29tL3Jcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBtZWRpYSBwcmludCB7XG4gICAgKixcbiAgICAqOmJlZm9yZSxcbiAgICAqOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYSxcbiAgICBhOnZpc2l0ZWQge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICBhW2hyZWZdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgfVxuXG4gICAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gICAgfVxuXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgYVtocmVmXj1cIiNcIl06YWZ0ZXIsXG4gICAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG5cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICB0aGVhZCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgLy8gaDVicC5jb20vdFxuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgb3JwaGFuczogMztcbiAgICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5idG4sXG4gICAgLmRyb3B1cCA+IC5idG4ge1xuICAgICAgICA+IC5jYXJldCB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxhYmVsIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgdGQsXG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICB0aCxcbiAgICAgICAgdGQge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG59XG4iLCIvL1xuLy8gR2x5cGhpY29ucyBmb3IgQm9vdHN0cmFwXG4vL1xuLy8gU2luY2UgaWNvbnMgYXJlIGZvbnRzLCB0aGV5IGNhbiBiZSBwbGFjZWQgYW55d2hlcmUgdGV4dCBpcyBwbGFjZWQgYW5kIGFyZVxuLy8gdGh1cyBhdXRvbWF0aWNhbGx5IHNpemVkIHRvIG1hdGNoIHRoZSBzdXJyb3VuZGluZyBjaGlsZC4gVG8gdXNlLCBjcmVhdGUgYW5cbi8vIGlubGluZSBlbGVtZW50IHdpdGggdGhlIGFwcHJvcHJpYXRlIGNsYXNzZXMsIGxpa2Ugc286XG4vL1xuLy8gPGEgaHJlZj1cIiNcIj48c3BhbiBjbGFzcz1cImdseXBoaWNvbiBnbHlwaGljb24tc3RhclwiPjwvc3Bhbj4gU3RhcjwvYT5cblxuQGF0LXJvb3Qge1xuICAvLyBJbXBvcnQgdGhlIGZvbnRzXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xuICAgIHNyYzogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90JyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90JykpO1xuICAgIHNyYzogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90PyNpZWZpeCcpLCAnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LmVvdD8jaWVmaXgnKSkgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICAgdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0ud29mZjInKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmMicpKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmJyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0ud29mZicpKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgIHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aCgnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnR0ZicpLCAnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnR0ZicpKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5zdmcjI3skaWNvbi1mb250LXN2Zy1pZH0nKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5zdmcjI3skaWNvbi1mb250LXN2Zy1pZH0nKSkgZm9ybWF0KCdzdmcnKTtcbiAgfVxufVxuXG4vLyBDYXRjaGFsbCBiYXNlY2xhc3Ncbi5nbHlwaGljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICdHbHlwaGljb25zIEhhbGZsaW5ncyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4vLyBJbmRpdmlkdWFsIGljb25zXG4uZ2x5cGhpY29uLWFzdGVyaXNrICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwwMDJhXCI7IH0gfVxuLmdseXBoaWNvbi1wbHVzICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMDAyYlwiOyB9IH1cbi5nbHlwaGljb24tZXVybyxcbi5nbHlwaGljb24tZXVyICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIwYWNcIjsgfSB9XG4uZ2x5cGhpY29uLW1pbnVzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMjEyXCI7IH0gfVxuLmdseXBoaWNvbi1jbG91ZCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjYwMVwiOyB9IH1cbi5nbHlwaGljb24tZW52ZWxvcGUgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI3MDlcIjsgfSB9XG4uZ2x5cGhpY29uLXBlbmNpbCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNzBmXCI7IH0gfVxuLmdseXBoaWNvbi1nbGFzcyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwMVwiOyB9IH1cbi5nbHlwaGljb24tbXVzaWMgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDJcIjsgfSB9XG4uZ2x5cGhpY29uLXNlYXJjaCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDAzXCI7IH0gfVxuLmdseXBoaWNvbi1oZWFydCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwNVwiOyB9IH1cbi5nbHlwaGljb24tc3RhciAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDZcIjsgfSB9XG4uZ2x5cGhpY29uLXN0YXItZW1wdHkgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA3XCI7IH0gfVxuLmdseXBoaWNvbi11c2VyICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwOFwiOyB9IH1cbi5nbHlwaGljb24tZmlsbSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDlcIjsgfSB9XG4uZ2x5cGhpY29uLXRoLWxhcmdlICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEwXCI7IH0gfVxuLmdseXBoaWNvbi10aCAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxMVwiOyB9IH1cbi5nbHlwaGljb24tdGgtbGlzdCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTJcIjsgfSB9XG4uZ2x5cGhpY29uLW9rICAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEzXCI7IH0gfVxuLmdseXBoaWNvbi1yZW1vdmUgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxNFwiOyB9IH1cbi5nbHlwaGljb24tem9vbS1pbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTVcIjsgfSB9XG4uZ2x5cGhpY29uLXpvb20tb3V0ICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE2XCI7IH0gfVxuLmdseXBoaWNvbi1vZmYgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxN1wiOyB9IH1cbi5nbHlwaGljb24tc2lnbmFsICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMThcIjsgfSB9XG4uZ2x5cGhpY29uLWNvZyAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE5XCI7IH0gfVxuLmdseXBoaWNvbi10cmFzaCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyMFwiOyB9IH1cbi5nbHlwaGljb24taG9tZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjFcIjsgfSB9XG4uZ2x5cGhpY29uLWZpbGUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIyXCI7IH0gfVxuLmdseXBoaWNvbi10aW1lICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyM1wiOyB9IH1cbi5nbHlwaGljb24tcm9hZCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjRcIjsgfSB9XG4uZ2x5cGhpY29uLWRvd25sb2FkLWFsdCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI1XCI7IH0gfVxuLmdseXBoaWNvbi1kb3dubG9hZCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyNlwiOyB9IH1cbi5nbHlwaGljb24tdXBsb2FkICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjdcIjsgfSB9XG4uZ2x5cGhpY29uLWluYm94ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI4XCI7IH0gfVxuLmdseXBoaWNvbi1wbGF5LWNpcmNsZSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyOVwiOyB9IH1cbi5nbHlwaGljb24tcmVwZWF0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzBcIjsgfSB9XG4uZ2x5cGhpY29uLXJlZnJlc2ggICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMxXCI7IH0gfVxuLmdseXBoaWNvbi1saXN0LWFsdCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzMlwiOyB9IH1cbi5nbHlwaGljb24tbG9jayAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzNcIjsgfSB9XG4uZ2x5cGhpY29uLWZsYWcgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM0XCI7IH0gfVxuLmdseXBoaWNvbi1oZWFkcGhvbmVzICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzNVwiOyB9IH1cbi5nbHlwaGljb24tdm9sdW1lLW9mZiAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzZcIjsgfSB9XG4uZ2x5cGhpY29uLXZvbHVtZS1kb3duICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM3XCI7IH0gfVxuLmdseXBoaWNvbi12b2x1bWUtdXAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzOFwiOyB9IH1cbi5nbHlwaGljb24tcXJjb2RlICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzlcIjsgfSB9XG4uZ2x5cGhpY29uLWJhcmNvZGUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQwXCI7IH0gfVxuLmdseXBoaWNvbi10YWcgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0MVwiOyB9IH1cbi5nbHlwaGljb24tdGFncyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDJcIjsgfSB9XG4uZ2x5cGhpY29uLWJvb2sgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQzXCI7IH0gfVxuLmdseXBoaWNvbi1ib29rbWFyayAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0NFwiOyB9IH1cbi5nbHlwaGljb24tcHJpbnQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDVcIjsgfSB9XG4uZ2x5cGhpY29uLWNhbWVyYSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ2XCI7IH0gfVxuLmdseXBoaWNvbi1mb250ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0N1wiOyB9IH1cbi5nbHlwaGljb24tYm9sZCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDhcIjsgfSB9XG4uZ2x5cGhpY29uLWl0YWxpYyAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ5XCI7IH0gfVxuLmdseXBoaWNvbi10ZXh0LWhlaWdodCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1MFwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC13aWR0aCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTFcIjsgfSB9XG4uZ2x5cGhpY29uLWFsaWduLWxlZnQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUyXCI7IH0gfVxuLmdseXBoaWNvbi1hbGlnbi1jZW50ZXIgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1M1wiOyB9IH1cbi5nbHlwaGljb24tYWxpZ24tcmlnaHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTRcIjsgfSB9XG4uZ2x5cGhpY29uLWFsaWduLWp1c3RpZnkgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU1XCI7IH0gfVxuLmdseXBoaWNvbi1saXN0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1NlwiOyB9IH1cbi5nbHlwaGljb24taW5kZW50LWxlZnQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTdcIjsgfSB9XG4uZ2x5cGhpY29uLWluZGVudC1yaWdodCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU4XCI7IH0gfVxuLmdseXBoaWNvbi1mYWNldGltZS12aWRlbyAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1OVwiOyB9IH1cbi5nbHlwaGljb24tcGljdHVyZSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjBcIjsgfSB9XG4uZ2x5cGhpY29uLW1hcC1tYXJrZXIgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYyXCI7IGZvbnQtc2l6ZToyMHB4fSB9XG4uZ2x5cGhpY29uLW1hcC1tYXJrZXItY3VzdG9tICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYyXCI7IGZvbnQtc2l6ZTo0MHB4fSB9XG4uZ2x5cGhpY29uLWFkanVzdCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYzXCI7IH0gfVxuLmdseXBoaWNvbi10aW50ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2NFwiOyB9IH1cbi5nbHlwaGljb24tZWRpdCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjVcIjsgfSB9XG4uZ2x5cGhpY29uLXNoYXJlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY2XCI7IH0gfVxuLmdseXBoaWNvbi1jaGVjayAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2N1wiOyB9IH1cbi5nbHlwaGljb24tbW92ZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjhcIjsgfSB9XG4uZ2x5cGhpY29uLXN0ZXAtYmFja3dhcmQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY5XCI7IH0gfVxuLmdseXBoaWNvbi1mYXN0LWJhY2t3YXJkICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3MFwiOyB9IH1cbi5nbHlwaGljb24tYmFja3dhcmQgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzFcIjsgfSB9XG4uZ2x5cGhpY29uLXBsYXkgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDcyXCI7IH0gfVxuLmdseXBoaWNvbi1wYXVzZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3M1wiOyB9IH1cbi5nbHlwaGljb24tc3RvcCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzRcIjsgfSB9XG4uZ2x5cGhpY29uLWZvcndhcmQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc1XCI7IH0gfVxuLmdseXBoaWNvbi1mYXN0LWZvcndhcmQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3NlwiOyB9IH1cbi5nbHlwaGljb24tc3RlcC1mb3J3YXJkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzdcIjsgfSB9XG4uZ2x5cGhpY29uLWVqZWN0ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc4XCI7IH0gfVxuLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3OVwiOyB9IH1cbi5nbHlwaGljb24tY2hldnJvbi1yaWdodCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODBcIjsgfSB9XG4uZ2x5cGhpY29uLXBsdXMtc2lnbiAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgxXCI7IH0gfVxuLmdseXBoaWNvbi1taW51cy1zaWduICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4MlwiOyB9IH1cbi5nbHlwaGljb24tcmVtb3ZlLXNpZ24gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODNcIjsgfSB9XG4uZ2x5cGhpY29uLW9rLXNpZ24gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg0XCI7IH0gfVxuLmdseXBoaWNvbi1xdWVzdGlvbi1zaWduICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4NVwiOyB9IH1cbi5nbHlwaGljb24taW5mby1zaWduICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODZcIjsgfSB9XG4uZ2x5cGhpY29uLXNjcmVlbnNob3QgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg3XCI7IH0gfVxuLmdseXBoaWNvbi1yZW1vdmUtY2lyY2xlICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4OFwiOyB9IH1cbi5nbHlwaGljb24tb2stY2lyY2xlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODlcIjsgfSB9XG4uZ2x5cGhpY29uLWJhbi1jaXJjbGUgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkwXCI7IH0gfVxuLmdseXBoaWNvbi1hcnJvdy1sZWZ0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5MVwiOyB9IH1cbi5nbHlwaGljb24tYXJyb3ctcmlnaHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTJcIjsgfSB9XG4uZ2x5cGhpY29uLWFycm93LXVwICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkzXCI7IH0gfVxuLmdseXBoaWNvbi1hcnJvdy1kb3duICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5NFwiOyB9IH1cbi5nbHlwaGljb24tc2hhcmUtYWx0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTVcIjsgfSB9XG4uZ2x5cGhpY29uLXJlc2l6ZS1mdWxsICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk2XCI7IH0gfVxuLmdseXBoaWNvbi1yZXNpemUtc21hbGwgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5N1wiOyB9IH1cbi5nbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDFcIjsgfSB9XG4uZ2x5cGhpY29uLWdpZnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTAyXCI7IH0gfVxuLmdseXBoaWNvbi1sZWFmICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwM1wiOyB9IH1cbi5nbHlwaGljb24tZmlyZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDRcIjsgfSB9XG4uZ2x5cGhpY29uLWV5ZS1vcGVuICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA1XCI7IH0gfVxuLmdseXBoaWNvbi1leWUtY2xvc2UgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwNlwiOyB9IH1cbi5nbHlwaGljb24td2FybmluZy1zaWduICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDdcIjsgfSB9XG4uZ2x5cGhpY29uLXBsYW5lICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA4XCI7IH0gfVxuLmdseXBoaWNvbi1jYWxlbmRhciAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwOVwiOyB9IH1cbi5nbHlwaGljb24tcmFuZG9tICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTBcIjsgfSB9XG4uZ2x5cGhpY29uLWNvbW1lbnQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTExXCI7IH0gfVxuLmdseXBoaWNvbi1tYWduZXQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExMlwiOyB9IH1cbi5nbHlwaGljb24tY2hldnJvbi11cCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTNcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZXZyb24tZG93biAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE0XCI7IH0gfVxuLmdseXBoaWNvbi1yZXR3ZWV0ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExNVwiOyB9IH1cbi5nbHlwaGljb24tc2hvcHBpbmctY2FydCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTZcIjsgfSB9XG4uZ2x5cGhpY29uLWZvbGRlci1jbG9zZSAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE3XCI7IH0gfVxuLmdseXBoaWNvbi1mb2xkZXItb3BlbiAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExOFwiOyB9IH1cbi5nbHlwaGljb24tcmVzaXplLXZlcnRpY2FsICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTlcIjsgfSB9XG4uZ2x5cGhpY29uLXJlc2l6ZS1ob3Jpem9udGFsICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIwXCI7IH0gfVxuLmdseXBoaWNvbi1oZGQgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyMVwiOyB9IH1cbi5nbHlwaGljb24tYnVsbGhvcm4gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjJcIjsgfSB9XG4uZ2x5cGhpY29uLWJlbGwgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIzXCI7IH0gfVxuLmdseXBoaWNvbi1jZXJ0aWZpY2F0ZSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyNFwiOyB9IH1cbi5nbHlwaGljb24tdGh1bWJzLXVwICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjVcIjsgfSB9XG4uZ2x5cGhpY29uLXRodW1icy1kb3duICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI2XCI7IH0gfVxuLmdseXBoaWNvbi1oYW5kLXJpZ2h0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyN1wiOyB9IH1cbi5nbHlwaGljb24taGFuZC1sZWZ0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjhcIjsgfSB9XG4uZ2x5cGhpY29uLWhhbmQtdXAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI5XCI7IH0gfVxuLmdseXBoaWNvbi1oYW5kLWRvd24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzMFwiOyB9IH1cbi5nbHlwaGljb24tY2lyY2xlLWFycm93LXJpZ2h0ICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzFcIjsgfSB9XG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1sZWZ0ICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMyXCI7IH0gfVxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctdXAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzM1wiOyB9IH1cbi5nbHlwaGljb24tY2lyY2xlLWFycm93LWRvd24gICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzRcIjsgfSB9XG4uZ2x5cGhpY29uLWdsb2JlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM1XCI7IH0gfVxuLmdseXBoaWNvbi13cmVuY2ggICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzNlwiOyB9IH1cbi5nbHlwaGljb24tdGFza3MgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzdcIjsgfSB9XG4uZ2x5cGhpY29uLWZpbHRlciAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM4XCI7IH0gfVxuLmdseXBoaWNvbi1icmllZmNhc2UgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzOVwiOyB9IH1cbi5nbHlwaGljb24tZnVsbHNjcmVlbiAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDBcIjsgfSB9XG4uZ2x5cGhpY29uLWRhc2hib2FyZCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQxXCI7IH0gfVxuLmdseXBoaWNvbi1wYXBlcmNsaXAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0MlwiOyB9IH1cbi5nbHlwaGljb24taGVhcnQtZW1wdHkgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDNcIjsgfSB9XG4uZ2x5cGhpY29uLWxpbmsgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ0XCI7IH0gfVxuLmdseXBoaWNvbi1waG9uZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0NVwiOyB9IH1cbi5nbHlwaGljb24tcHVzaHBpbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDZcIjsgfSB9XG4uZ2x5cGhpY29uLXVzZCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ4XCI7IH0gfVxuLmdseXBoaWNvbi1nYnAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0OVwiOyB9IH1cbi5nbHlwaGljb24tc29ydCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTBcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktYWxwaGFiZXQgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUxXCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LWFscGhhYmV0LWFsdCAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1MlwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1vcmRlciAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTNcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktb3JkZXItYWx0ICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU0XCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LWF0dHJpYnV0ZXMgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1NVwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1hdHRyaWJ1dGVzLWFsdCB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTZcIjsgfSB9XG4uZ2x5cGhpY29uLXVuY2hlY2tlZCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU3XCI7IH0gfVxuLmdseXBoaWNvbi1leHBhbmQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1OFwiOyB9IH1cbi5nbHlwaGljb24tY29sbGFwc2UtZG93biAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTlcIjsgfSB9XG4uZ2x5cGhpY29uLWNvbGxhcHNlLXVwICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYwXCI7IH0gfVxuLmdseXBoaWNvbi1sb2ctaW4gICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2MVwiOyB9IH1cbi5nbHlwaGljb24tZmxhc2ggICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjJcIjsgfSB9XG4uZ2x5cGhpY29uLWxvZy1vdXQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYzXCI7IH0gfVxuLmdseXBoaWNvbi1uZXctd2luZG93ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2NFwiOyB9IH1cbi5nbHlwaGljb24tcmVjb3JkICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjVcIjsgfSB9XG4uZ2x5cGhpY29uLXNhdmUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY2XCI7IH0gfVxuLmdseXBoaWNvbi1vcGVuICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2N1wiOyB9IH1cbi5nbHlwaGljb24tc2F2ZWQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjhcIjsgfSB9XG4uZ2x5cGhpY29uLWltcG9ydCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY5XCI7IH0gfVxuLmdseXBoaWNvbi1leHBvcnQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3MFwiOyB9IH1cbi5nbHlwaGljb24tc2VuZCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzFcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1kaXNrICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTcyXCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktc2F2ZWQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3M1wiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LXJlbW92ZSAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzRcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1zYXZlICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc1XCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktb3BlbiAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3NlwiOyB9IH1cbi5nbHlwaGljb24tY3JlZGl0LWNhcmQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzdcIjsgfSB9XG4uZ2x5cGhpY29uLXRyYW5zZmVyICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc4XCI7IH0gfVxuLmdseXBoaWNvbi1jdXRsZXJ5ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3OVwiOyB9IH1cbi5nbHlwaGljb24taGVhZGVyICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODBcIjsgfSB9XG4uZ2x5cGhpY29uLWNvbXByZXNzZWQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgxXCI7IH0gfVxuLmdseXBoaWNvbi1lYXJwaG9uZSAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4MlwiOyB9IH1cbi5nbHlwaGljb24tcGhvbmUtYWx0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODNcIjsgfSB9XG4uZ2x5cGhpY29uLXRvd2VyICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg0XCI7IH0gfVxuLmdseXBoaWNvbi1zdGF0cyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4NVwiOyB9IH1cbi5nbHlwaGljb24tc2QtdmlkZW8gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODZcIjsgfSB9XG4uZ2x5cGhpY29uLWhkLXZpZGVvICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg3XCI7IH0gfVxuLmdseXBoaWNvbi1zdWJ0aXRsZXMgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4OFwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtc3RlcmVvICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODlcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLWRvbGJ5ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkwXCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC01LTEgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5MVwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtNi0xICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTJcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLTctMSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkzXCI7IH0gfVxuLmdseXBoaWNvbi1jb3B5cmlnaHQtbWFyayAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5NFwiOyB9IH1cbi5nbHlwaGljb24tcmVnaXN0cmF0aW9uLW1hcmsgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTVcIjsgfSB9XG4uZ2x5cGhpY29uLWNsb3VkLWRvd25sb2FkICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk3XCI7IH0gfVxuLmdseXBoaWNvbi1jbG91ZC11cGxvYWQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5OFwiOyB9IH1cbi5nbHlwaGljb24tdHJlZS1jb25pZmVyICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTlcIjsgfSB9XG4uZ2x5cGhpY29uLXRyZWUtZGVjaWR1b3VzICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAwXCI7IH0gfVxuLmdseXBoaWNvbi1jZCAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwMVwiOyB9IH1cbi5nbHlwaGljb24tc2F2ZS1maWxlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDJcIjsgfSB9XG4uZ2x5cGhpY29uLW9wZW4tZmlsZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAzXCI7IH0gfVxuLmdseXBoaWNvbi1sZXZlbC11cCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwNFwiOyB9IH1cbi5nbHlwaGljb24tY29weSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDVcIjsgfSB9XG4uZ2x5cGhpY29uLXBhc3RlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA2XCI7IH0gfVxuLy8gVGhlIGZvbGxvd2luZyAyIEdseXBoaWNvbnMgYXJlIG9taXR0ZWQgZm9yIHRoZSB0aW1lIGJlaW5nIGJlY2F1c2Vcbi8vIHRoZXkgY3VycmVudGx5IHVzZSBVbmljb2RlIGNvZGVwb2ludHMgdGhhdCBhcmUgb3V0c2lkZSB0aGVcbi8vIEJhc2ljIE11bHRpbGluZ3VhbCBQbGFuZSAoQk1QKS4gT2xkZXIgYnVnZ3kgdmVyc2lvbnMgb2YgV2ViS2l0IGNhbid0IGhhbmRsZVxuLy8gbm9uLUJNUCBjb2RlcG9pbnRzIGluIENTUyBzdHJpbmcgZXNjYXBlcywgYW5kIHRodXMgY2FuJ3QgZGlzcGxheSB0aGVzZSB0d28gaWNvbnMuXG4vLyBOb3RhYmx5LCB0aGUgYnVnIGFmZmVjdHMgc29tZSBvbGRlciB2ZXJzaW9ucyBvZiB0aGUgQW5kcm9pZCBCcm93c2VyLlxuLy8gTW9yZSBpbmZvOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwMTA2XG4vLyAuZ2x5cGhpY29uLWRvb3IgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwxZjZhYVwiOyB9IH1cbi8vIC5nbHlwaGljb24ta2V5ICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDFmNTExXCI7IH0gfVxuLmdseXBoaWNvbi1hbGVydCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwOVwiOyB9IH1cbi5nbHlwaGljb24tZXF1YWxpemVyICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTBcIjsgfSB9XG4uZ2x5cGhpY29uLWtpbmcgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjExXCI7IH0gfVxuLmdseXBoaWNvbi1xdWVlbiAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxMlwiOyB9IH1cbi5nbHlwaGljb24tcGF3biAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTNcIjsgfSB9XG4uZ2x5cGhpY29uLWJpc2hvcCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE0XCI7IH0gfVxuLmdseXBoaWNvbi1rbmlnaHQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxNVwiOyB9IH1cbi5nbHlwaGljb24tYmFieS1mb3JtdWxhICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTZcIjsgfSB9XG4uZ2x5cGhpY29uLXRlbnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNmZhXCI7IH0gfVxuLmdseXBoaWNvbi1ibGFja2JvYXJkICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxOFwiOyB9IH1cbi5nbHlwaGljb24tYmVkICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTlcIjsgfSB9XG4uZ2x5cGhpY29uLWFwcGxlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmOGZmXCI7IH0gfVxuLmdseXBoaWNvbi1lcmFzZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyMVwiOyB9IH1cbi5nbHlwaGljb24taG91cmdsYXNzICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIzMWJcIjsgfSB9XG4uZ2x5cGhpY29uLWxhbXAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjIzXCI7IH0gfVxuLmdseXBoaWNvbi1kdXBsaWNhdGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyNFwiOyB9IH1cbi5nbHlwaGljb24tcGlnZ3ktYmFuayAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjVcIjsgfSB9XG4uZ2x5cGhpY29uLXNjaXNzb3JzICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI2XCI7IH0gfVxuLmdseXBoaWNvbi1iaXRjb2luICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyN1wiOyB9IH1cbi5nbHlwaGljb24tYnRjICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjdcIjsgfSB9XG4uZ2x5cGhpY29uLXhidCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI3XCI7IH0gfVxuLmdseXBoaWNvbi15ZW4gICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMDBhNVwiOyB9IH1cbi5nbHlwaGljb24tanB5ICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDAwYTVcIjsgfSB9XG4uZ2x5cGhpY29uLXJ1YmxlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMGJkXCI7IH0gfVxuLmdseXBoaWNvbi1ydWIgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjBiZFwiOyB9IH1cbi5nbHlwaGljb24tc2NhbGUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzBcIjsgfSB9XG4uZ2x5cGhpY29uLWljZS1sb2xseSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMxXCI7IH0gfVxuLmdseXBoaWNvbi1pY2UtbG9sbHktdGFzdGVkICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzMlwiOyB9IH1cbi5nbHlwaGljb24tZWR1Y2F0aW9uICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzNcIjsgfSB9XG4uZ2x5cGhpY29uLW9wdGlvbi1ob3Jpem9udGFsICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM0XCI7IH0gfVxuLmdseXBoaWNvbi1vcHRpb24tdmVydGljYWwgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzNVwiOyB9IH1cbi5nbHlwaGljb24tbWVudS1oYW1idXJnZXIgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzZcIjsgfSB9XG4uZ2x5cGhpY29uLW1vZGFsLXdpbmRvdyAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM3XCI7IH0gfVxuLmdseXBoaWNvbi1vaWwgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzOFwiOyB9IH1cbi5nbHlwaGljb24tZ3JhaW4gICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzlcIjsgfSB9XG4uZ2x5cGhpY29uLXN1bmdsYXNzZXMgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQwXCI7IH0gfVxuLmdseXBoaWNvbi10ZXh0LXNpemUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0MVwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC1jb2xvciAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDJcIjsgfSB9XG4uZ2x5cGhpY29uLXRleHQtYmFja2dyb3VuZCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQzXCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tdG9wICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0NFwiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLWJvdHRvbSAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDVcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1ob3Jpem9udGFseyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ2XCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tbGVmdCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0N1wiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLXZlcnRpY2FsICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDhcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1yaWdodCAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ5XCI7IH0gfVxuLmdseXBoaWNvbi10cmlhbmdsZS1yaWdodCAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1MFwiOyB9IH1cbi5nbHlwaGljb24tdHJpYW5nbGUtbGVmdCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTFcIjsgfSB9XG4uZ2x5cGhpY29uLXRyaWFuZ2xlLWJvdHRvbSAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjUyXCI7IH0gfVxuLmdseXBoaWNvbi10cmlhbmdsZS10b3AgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1M1wiOyB9IH1cbi5nbHlwaGljb24tY29uc29sZSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTRcIjsgfSB9XG4uZ2x5cGhpY29uLXN1cGVyc2NyaXB0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU1XCI7IH0gfVxuLmdseXBoaWNvbi1zdWJzY3JpcHQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1NlwiOyB9IH1cbi5nbHlwaGljb24tbWVudS1sZWZ0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTdcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtcmlnaHQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU4XCI7IH0gfVxuLmdseXBoaWNvbi1tZW51LWRvd24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1OVwiOyB9IH1cbi5nbHlwaGljb24tbWVudS11cCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNjBcIjsgfSB9XG5cblxuLmdseXBoaWNvbi1jaGV2cm9uLXVwLmNvbGxhcHNlLW1lbnUtdXAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGZsb2F0OnJpZ2h0OyB9IH1cbi5nbHlwaGljb24uY29sbGFwc2UtbWVudS11cCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGluaXRpYWw7XG4gIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cbi5nbHlwaGljb24tY2hldnJvbi1kb3duLmNvbGxhcHNlLW1lbnUtZG93biAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgZmxvYXQ6cmlnaHQ7IH0gfVxuLmdseXBoaWNvbi5jb2xsYXBzZS1tZW51LWRvd24ge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbml0aWFsO1xuICBmb250LWZhbWlseTogJ0dseXBoaWNvbnMgSGFsZmxpbmdzJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG4uZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24uY3VzdG9tLWV4Y2xhbWF0aW9ue1xuICAgIGZvbnQtc2l6ZToxN3B4O1xufVxuLmdseXBoaWNvbi10aHVtYnMtdXAuY3VzdG9tLXRodW1ic3tcbiAgZm9udC1zaXplOjIwcHg7XG4gIGNvbG9yOiBcImdyZWVuXCI7XG59IiwiLy9cbi8vIFNjYWZmb2xkaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIFJlc2V0IHRoZSBib3gtc2l6aW5nXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgcmVzZXQgbWF5IGNhdXNlIGNvbmZsaWN0cyB3aXRoIHNvbWUgdGhpcmQtcGFydHkgd2lkZ2V0cy5cbi8vIEZvciByZWNvbW1lbmRhdGlvbnMgb24gcmVzb2x2aW5nIHN1Y2ggY29uZmxpY3RzLCBzZWVcbi8vIGh0dHA6Ly9nZXRib290c3RyYXAuY29tL2dldHRpbmctc3RhcnRlZC8jdGhpcmQtYm94LXNpemluZ1xuKiB7XG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG59XG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xufVxuXG5cbi8vIEJvZHkgcmVzZXRcblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xufVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xufVxuXG4vLyBSZXNldCBmb250cyBmb3IgcmVsZXZhbnQgZWxlbWVudHNcbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuXG4vLyBMaW5rc1xuXG5hIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIHRhYi1mb2N1cztcbiAgfVxufVxuXG5cbi8vIEZpZ3VyZXNcbi8vXG4vLyBXZSByZXNldCB0aGlzIGhlcmUgYmVjYXVzZSBwcmV2aW91c2x5IE5vcm1hbGl6ZSBoYWQgbm8gYGZpZ3VyZWAgbWFyZ2lucy4gVGhpc1xuLy8gZW5zdXJlcyB3ZSBkb24ndCBicmVhayBhbnlvbmUncyB1c2Ugb2YgdGhlIGVsZW1lbnQuXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuXG4vLyBJbWFnZXNcblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4uaW1nLXJlc3BvbnNpdmUge1xuICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcbn1cblxuLy8gUm91bmRlZCBjb3JuZXJzXG4uaW1nLXJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbn1cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLy9cbi8vIEhlYWRzIHVwISBUaGlzIGlzIG1peGluLWVkIGludG8gdGh1bWJuYWlscy5sZXNzIGZvciBgLnRodW1ibmFpbGAuXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMnMgZWFzZS1pbi1vdXQpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZShpbmxpbmUtYmxvY2spO1xufVxuXG4vLyBQZXJmZWN0IGNpcmNsZVxuLmltZy1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7IC8vIHNldCByYWRpdXMgaW4gcGVyY2VudHNcbn1cblxuXG4vLyBIb3Jpem9udGFsIHJ1bGVzXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogICAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRoci1ib3JkZXI7XG59XG5cblxuLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHA6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cblxuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuLnNyLW9ubHktZm9jdXNhYmxlIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICB9XG59XG5cblxuLy8gaU9TIFwiY2xpY2thYmxlIGVsZW1lbnRzXCIgZml4IGZvciByb2xlPVwiYnV0dG9uXCJcbi8vXG4vLyBGaXhlcyBcImNsaWNrYWJpbGl0eVwiIGlzc3VlIChhbmQgbW9yZSBnZW5lcmFsbHksIHRoZSBmaXJpbmcgb2YgZXZlbnRzIHN1Y2ggYXMgZm9jdXMgYXMgd2VsbClcbi8vIGZvciB0cmFkaXRpb25hbGx5IG5vbi1mb2N1c2FibGUgZWxlbWVudHMgd2l0aCByb2xlPVwiYnV0dG9uXCJcbi8vIHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG5bcm9sZT1cImJ1dHRvblwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiIsIi8vIFZlbmRvciBQcmVmaXhlc1xuLy9cbi8vIEFsbCB2ZW5kb3IgbWl4aW5zIGFyZSBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBkdWUgdG8gdGhlIGludHJvZHVjdGlvbiBvZlxuLy8gQXV0b3ByZWZpeGVyIGluIG91ciBHcnVudGZpbGUuIFRoZXkgaGF2ZSBiZWVuIHJlbW92ZWQgaW4gdjQuXG5cbi8vIC0gQW5pbWF0aW9uc1xuLy8gLSBCYWNrZmFjZSB2aXNpYmlsaXR5XG4vLyAtIEJveCBzaGFkb3dcbi8vIC0gQm94IHNpemluZ1xuLy8gLSBDb250ZW50IGNvbHVtbnNcbi8vIC0gSHlwaGVuc1xuLy8gLSBQbGFjZWhvbGRlciB0ZXh0XG4vLyAtIFRyYW5zZm9ybWF0aW9uc1xuLy8gLSBUcmFuc2l0aW9uc1xuLy8gLSBVc2VyIFNlbGVjdFxuXG5cbi8vIEFuaW1hdGlvbnNcbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbiAgICAgICAtby1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1uYW1lKCRuYW1lKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbn1cbkBtaXhpbiBhbmltYXRpb24tZHVyYXRpb24oJGR1cmF0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1kZWxheSgkZGVsYXkpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbiAgICAgICAgICBhbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbn1cbkBtaXhpbiBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50KCRpdGVyYXRpb24tY291bnQpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xuICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1maWxsLW1vZGUoJGZpbGwtbW9kZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG4gICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcbn1cblxuLy8gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gUHJldmVudCBicm93c2VycyBmcm9tIGZsaWNrZXJpbmcgd2hlbiB1c2luZyBDU1MgM0QgdHJhbnNmb3Jtcy5cbi8vIERlZmF1bHQgdmFsdWUgaXMgYHZpc2libGVgLCBidXQgY2FuIGJlIGNoYW5nZWQgdG8gYGhpZGRlbmBcblxuQG1peGluIGJhY2tmYWNlLXZpc2liaWxpdHkoJHZpc2liaWxpdHkpIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbiAgICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbn1cblxuLy8gRHJvcCBzaGFkb3dzXG4vL1xuLy8gTm90ZTogRGVwcmVjYXRlZCBgLmJveC1zaGFkb3coKWAgYXMgb2YgdjMuMS4wIHNpbmNlIGFsbCBvZiBCb290c3RyYXAnc1xuLy8gc3VwcG9ydGVkIGJyb3dzZXJzIHRoYXQgaGF2ZSBib3ggc2hhZG93IGNhcGFiaWxpdGllcyBub3cgc3VwcG9ydCBpdC5cblxuQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICAtd2Via2l0LWJveC1zaGFkb3c6ICRzaGFkb3c7IC8vIGlPUyA8NC4zICYgQW5kcm9pZCA8NC4xXG4gICAgICAgICAgYm94LXNoYWRvdzogJHNoYWRvdztcbn1cblxuLy8gQm94IHNpemluZ1xuQG1peGluIGJveC1zaXppbmcoJGJveG1vZGVsKSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgICAtbW96LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgICAgICBib3gtc2l6aW5nOiAkYm94bW9kZWw7XG59XG5cbi8vIENTUzMgQ29udGVudCBDb2x1bW5zXG5AbWl4aW4gY29udGVudC1jb2x1bW5zKCRjb2x1bW4tY291bnQsICRjb2x1bW4tZ2FwOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLXdlYmtpdC1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gICAgIC1tb3otY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAgICAgIGNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgLXdlYmtpdC1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbiAgICAgLW1vei1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbiAgICAgICAgICBjb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbn1cblxuLy8gT3B0aW9uYWwgaHlwaGVuYXRpb25cbkBtaXhpbiBoeXBoZW5zKCRtb2RlOiBhdXRvKSB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiAkbW9kZTtcbiAgICAgLW1vei1oeXBoZW5zOiAkbW9kZTtcbiAgICAgIC1tcy1oeXBoZW5zOiAkbW9kZTsgLy8gSUUxMCtcbiAgICAgICAtby1oeXBoZW5zOiAkbW9kZTtcbiAgICAgICAgICBoeXBoZW5zOiAkbW9kZTtcbn1cblxuLy8gUGxhY2Vob2xkZXIgdGV4dFxuQG1peGluIHBsYWNlaG9sZGVyKCRjb2xvcjogJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyKSB7XG4gIC8vIEZpcmVmb3hcbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBvcGFjaXR5OiAxOyAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNlxuICB9XG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBJbnRlcm5ldCBFeHBsb3JlciAxMCtcbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciAgeyBjb2xvcjogJGNvbG9yOyB9IC8vIFNhZmFyaSBhbmQgQ2hyb21lXG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uc1xuQG1peGluIHNjYWxlKCRyYXRpby4uLikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbn1cblxuQG1peGluIHNjYWxlWCgkcmF0aW8pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xufVxuQG1peGluIHNjYWxlWSgkcmF0aW8pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xufVxuQG1peGluIHNrZXcoJHgsICR5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvNDg4NTsgSUU5K1xuICAgICAgIC1vLXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG59XG5AbWl4aW4gdHJhbnNsYXRlKCR4LCAkeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG59XG5AbWl4aW4gdHJhbnNsYXRlM2QoJHgsICR5LCAkeikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcbn1cbkBtaXhpbiByb3RhdGUoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG59XG5AbWl4aW4gcm90YXRlWCgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG59XG5AbWl4aW4gcm90YXRlWSgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG59XG5AbWl4aW4gcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgICAgICAgIHBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG59XG5AbWl4aW4gcGVyc3BlY3RpdmUtb3JpZ2luKCRwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xuICAgICAtbW96LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xuICAgICAgICAgIHBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xufVxuQG1peGluIHRyYW5zZm9ybS1vcmlnaW4oJG9yaWdpbikge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luOyAvLyBJRTkgb25seVxuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG59XG5cblxuLy8gVHJhbnNpdGlvbnNcblxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICAgICAtby10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXByb3BlcnR5KCR0cmFuc2l0aW9uLXByb3BlcnR5Li4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1kZWxheSgkdHJhbnNpdGlvbi1kZWxheSkge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xufVxuQG1peGluIHRyYW5zaXRpb24tZHVyYXRpb24oJHRyYW5zaXRpb24tZHVyYXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10cmFuc2Zvcm0oJHRyYW5zaXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xufVxuXG5cbi8vIFVzZXIgc2VsZWN0XG4vLyBGb3Igc2VsZWN0aW5nIHRleHQgb24gdGhlIHBhZ2VcblxuQG1peGluIHVzZXItc2VsZWN0KCRzZWxlY3QpIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogJHNlbGVjdDtcbiAgICAgLW1vei11c2VyLXNlbGVjdDogJHNlbGVjdDtcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogJHNlbGVjdDsgLy8gSUUxMCtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogJHNlbGVjdDtcbn1cbiIsIi8vIFdoZW4gdHJ1ZSwgYXNzZXQgcGF0aCBoZWxwZXJzIGFyZSB1c2VkLCBvdGhlcndpc2UgdGhlIHJlZ3VsYXIgQ1NTIGB1cmwoKWAgaXMgdXNlZC5cbi8vIFdoZW4gdGhlcmUgbm8gZnVuY3Rpb24gaXMgZGVmaW5lZCwgYGZuKCcnKWAgaXMgcGFyc2VkIGFzIHN0cmluZyB0aGF0IGVxdWFscyB0aGUgcmlnaHQgaGFuZCBzaWRlXG4vLyBOQjogaW4gU2FzcyAzLjMgdGhlcmUgaXMgYSBuYXRpdmUgZnVuY3Rpb246IGZ1bmN0aW9uLWV4aXN0cyh0d2JzLWZvbnQtcGF0aClcbiRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXI6ICh0d2JzLWZvbnQtcGF0aChcIlwiKSAhPSB1bnF1b3RlKCd0d2JzLWZvbnQtcGF0aChcIlwiKScpKSAhZGVmYXVsdDtcblxuLy9cbi8vIFZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLz09IENvbG9yc1xuLy9cbi8vIyMgR3JheSBhbmQgYnJhbmQgY29sb3JzIGZvciB1c2UgYWNyb3NzIEJvb3RzdHJhcC5cblxuJGdyYXktYmFzZTogICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kZ3JheS1kYXJrZXI6ICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAxMy41JSkgIWRlZmF1bHQ7IC8vICMyMjJcbiRncmF5LWRhcms6ICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDIwJSkgIWRlZmF1bHQ7ICAgLy8gIzMzM1xuJGdyYXk6ICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMzMuNSUpICFkZWZhdWx0OyAvLyAjNTU1XG4kZ3JheS1saWdodDogICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA0Ni43JSkgIWRlZmF1bHQ7IC8vICM3NzdcbiRncmF5LWxpZ2h0ZXI6ICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDkzLjUlKSAhZGVmYXVsdDsgLy8gI2VlZVxuXG4kYnJhbmQtcHJpbWFyeTogICAgICAgICAjMUM3RUJCICFkZWZhdWx0O1xuJGJyYW5kLXN1Y2Nlc3M6ICAgICAgICAgIzIzQUU4OSAhZGVmYXVsdDtcbiRicmFuZC1pbmZvOiAgICAgICAgICAgICMyRUMxQ0MgIWRlZmF1bHQ7XG4kYnJhbmQtaW5mby1hbHQ6ICAgICAgICAjNkE1NUMyICFkZWZhdWx0O1xuJGJyYW5kLXdhcm5pbmc6ICAgICAgICAgI0ZGQjYxQyAhZGVmYXVsdDtcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgICNFOTRCM0IgIWRlZmF1bHQ7XG5cbiRjb2xvci1vcmFuZ2U6ICAgICAgICAgICNGOThFMzMgIWRlZmF1bHQ7XG4kY29sb3ItdmlvbGV0OiAgICAgICAgICAkYnJhbmQtaW5mby1hbHQ7XG5cbi8vICRza2luLWRhcmtlcjogICAgICAgICAgICNcbi8vICRza2luLWRhcms6ICAgICAgICAgICAgICM7XG4kc2tpbjogICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeTtcbiRza2luLWxpZ2h0OiAgICAgICAgICAgICM0NDlERDU7XG4vLyAkc2tpbi1saWdodGVyOiAgICAgICAgICAjXG4vLyAkc2tpbi1icmlnaHQ6ICAgICAgICAgICAjXG4kZGFyazogICAgICAgICAgICAgICAgICAjMjIyNTMzICFkZWZhdWx0O1xuJGRhcmstbGlnaHQ6ICAgICAgICAgICAgIzNEM0Y1MSAhZGVmYXVsdDtcbiRicmlnaHQ6ICAgICAgICAgICAgICAgICNmYWZhZmEgIWRlZmF1bHQ7XG4kcmV2ZXJzZTogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kc3RhdGUtZGVmYXVsdC1iZzogICAgICAgICAgICAgICNmNmY2ZjYgIWRlZmF1bHQ7IC8vIGFsc286IHBhZ2luYXRpb24gYmdcbiRzdGF0ZS1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWRlZmF1bHQtYmcsIC0xMCksIDUlKSAhZGVmYXVsdDsgXG4kc3RhdGUtZGVmYXVsdC1ib3JkZXItbGlnaHQ6ICAgICNmM2YzZjMgIWRlZmF1bHQ7IFxuXG5cbi8vPT0gU2NhZmZvbGRpbmdcbi8vXG4vLyMjIFNldHRpbmdzIGZvciBzb21lIG9mIHRoZSBtb3N0IGdsb2JhbCBzdHlsZXMuXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgYDxib2R5PmAuXG4kYm9keS1iZzogICAgICAgICAgICAgICAjZjNmM2YzICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgdGV4dCBjb2xvciBvbiBgPGJvZHk+YC5cbiR0ZXh0LWNvbG9yOiAgICAgICAgICAgICM3Njc2NzYgIWRlZmF1bHQ7XG5cbi8vKiogR2xvYmFsIHRleHR1YWwgbGluayBjb2xvci5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGNvbG9yIHNldCB2aWEgYGRhcmtlbigpYCBmdW5jdGlvbi5cbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbi8vKiogTGluayBob3ZlciBkZWNvcmF0aW9uLlxuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogdW5kZXJsaW5lICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwb2dyYXBoeVxuLy9cbi8vIyMgRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgXCJMYXRvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgIEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCBtb25vc3BhY2UgZm9udHMgZm9yIGA8Y29kZT5gLCBgPGtiZD5gLCBhbmQgYDxwcmU+YC5cbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sYXJnZTogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLXNtYWxsOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcblxuJGZvbnQtc2l6ZS1oMTogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi42KSkgIWRlZmF1bHQ7IC8vIH4zNnB4XG4kZm9udC1zaXplLWgyOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjE1KSkgIWRlZmF1bHQ7IC8vIH4zMHB4XG4kZm9udC1zaXplLWgzOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNykpICFkZWZhdWx0OyAvLyB+MjRweFxuJGZvbnQtc2l6ZS1oNDogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLWg1OiAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDY6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuXG4vLyoqIFVuaXQtbGVzcyBgbGluZS1oZWlnaHRgIGZvciB1c2UgaW4gY29tcG9uZW50cyBsaWtlIGJ1dHRvbnMuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgIDEuNDI4NTcxNDI5ICFkZWZhdWx0OyAvLyAyMC8xNFxuJGxpbmUtaGVpZ2h0LWNhY3VsYXRlZDogICAyMHB4O1xuLy8qKiBDb21wdXRlZCBcImxpbmUtaGVpZ2h0XCIgKGBmb250LXNpemVgICogYGxpbmUtaGVpZ2h0YCkgZm9yIHVzZSB3aXRoIGBtYXJnaW5gLCBgcGFkZGluZ2AsIGV0Yy5cbiRsaW5lLWhlaWdodC1jb21wdXRlZDogICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSkgIWRlZmF1bHQ7IC8vIH4yMHB4XG5cbi8vKiogQnkgZGVmYXVsdCwgdGhpcyBpbmhlcml0cyBmcm9tIHRoZSBgPGJvZHk+YC5cbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAxLjEgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cblxuLy89PSBJY29ub2dyYXBoeVxuLy9cbi8vIyMgU3BlY2lmeSBjdXN0b20gbG9jYXRpb24gYW5kIGZpbGVuYW1lIG9mIHRoZSBpbmNsdWRlZCBHbHlwaGljb25zIGljb24gZm9udC4gVXNlZnVsIGZvciB0aG9zZSBpbmNsdWRpbmcgQm9vdHN0cmFwIHZpYSBCb3dlci5cblxuLy8qKiBMb2FkIGZvbnRzIGZyb20gdGhpcyBkaXJlY3RvcnkuXG4kaWNvbi1mb250LXBhdGg6ICAgICAgICAgIFwiLi4vYXNzZXRzL2ZvbnRzL1wiICFkZWZhdWx0O1xuLy8qKiBGaWxlIG5hbWUgZm9yIGFsbCBmb250IGZpbGVzLlxuJGljb24tZm9udC1uYW1lOiAgICAgICAgICBcImdseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXJcIiAhZGVmYXVsdDtcbi8vKiogRWxlbWVudCBJRCB3aXRoaW4gU1ZHIGljb24gZmlsZS5cbiRpY29uLWZvbnQtc3ZnLWlkOiAgICAgICAgXCJnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXJcIiAhZGVmYXVsdDtcblxuXG4vLz09IENvbXBvbmVudHNcbi8vXG4vLyMjIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS4gVmFsdWVzIGJhc2VkIG9uIDE0cHggdGV4dCBhbmQgMS40MjggbGluZS1oZWlnaHQgKH4yMHB4IHRvIHN0YXJ0KS5cblxuJHBhZGRpbmctYmFzZS12ZXJ0aWNhbDogICAgIDZweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDogICAxMnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1sYXJnZS12ZXJ0aWNhbDogICAgMTBweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw6ICAxNnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDogICAgNXB4ICFkZWZhdWx0O1xuJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDogIDEwcHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXhzLXZlcnRpY2FsOiAgICAgICAxcHggIWRlZmF1bHQ7XG4kcGFkZGluZy14cy1ob3Jpem9udGFsOiAgICAgNXB4ICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtbGFyZ2U6ICAgICAgICAgMS4zMyAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbWFsbDogICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICAycHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgMnB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgIDJweCAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8qKiBXaWR0aCBvZiB0aGUgYGJvcmRlcmAgZm9yIGdlbmVyYXRpbmcgY2FyZXRzIHRoYXQgaW5kaWNhdG9yIGRyb3Bkb3ducy5cbiRjYXJldC13aWR0aC1iYXNlOiAgICAgICAgICA0cHggIWRlZmF1bHQ7XG4vLyoqIENhcmV0cyBpbmNyZWFzZSBzbGlnaHRseSBpbiBzaXplIGZvciBsYXJnZXIgY29tcG9uZW50cy5cbiRjYXJldC13aWR0aC1sYXJnZTogICAgICAgICA1cHggIWRlZmF1bHQ7XG5cblxuLy89PSBUYWJsZXNcbi8vXG4vLyMjIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuLy8qKiBQYWRkaW5nIGZvciBgPHRoPmBzIGFuZCBgPHRkPmBzLlxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGZvciBjZWxscyBpbiBgLnRhYmxlLWNvbmRlbnNlZGAuXG4kdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZzogIDZweCAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYWxsIHRhYmxlcy5cbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1zdHJpcGVkYC5cbiR0YWJsZS1iZy1hY2NlbnQ6ICAgICAgICAgICAgICAgI2Y5ZjlmOSAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLWhvdmVyYC5cbiR0YWJsZS1iZy1ob3ZlcjogICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR0YWJsZS1iZy1hY3RpdmU6ICAgICAgICAgICAgICAgJHRhYmxlLWJnLWhvdmVyICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09IEJ1dHRvbnNcbi8vXG4vLyMjIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIG5vcm1hbCAhZGVmYXVsdDtcblxuJGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4kYnRuLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1wcmltYXJ5LWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXN1Y2Nlc3MtYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1pbmZvLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICAgZGFya2VuKCRidG4taW5mby1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi13YXJuaW5nLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRhbmdlci1iZzogICAgICAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKCRidG4tZGFuZ2VyLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4taW5mby1hbHQtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWFsdC1iZzogICAgICAgICAgICAgICAgICRicmFuZC1pbmZvLWFsdCAhZGVmYXVsdDtcbiRidG4taW5mby1hbHQtYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1pbmZvLWFsdC1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgJGRhcmsgIWRlZmF1bHQ7XG4kYnRuLWRhcmstYm9yZGVyOiAgICAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1kYXJrLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuLy89PSBGb3Jtc1xuLy9cbi8vIyNcblxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dCBkaXNhYmxlZD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgYDxpbnB1dD5gc1xuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcbiRpbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICNDQkQ1REQgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IFJlbmFtZSBgJGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGAkaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgaW5wdXRzIG9uIGZvY3VzXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAgICAgICAgICAgICAjNjZhZmU5ICFkZWZhdWx0O1xuXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgICAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgICAoY2VpbCgkZm9udC1zaXplLWxhcmdlICogJGxpbmUtaGVpZ2h0LWxhcmdlKSArICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtc21hbGw6ICAgICAgICAgICAgIChmbG9vcigkZm9udC1zaXplLXNtYWxsICogJGxpbmUtaGVpZ2h0LXNtYWxsKSArICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG5cbi8vKiogYC5mb3JtLWdyb3VwYCBtYXJnaW5cbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRsZWdlbmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kbGVnZW5kLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGN1cnNvciBmb3IgZm9ybSBjb250cm9scyBhbmQgYnV0dG9ucy5cbiRjdXJzb3ItZGlzYWJsZWQ6ICAgICAgICAgICAgICAgIG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG5cbi8vPT0gRHJvcGRvd25zXG4vL1xuLy8jIyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vKiogQmFja2dyb3VuZCBmb3IgdGhlIGRyb3Bkb3duIG1lbnUuXG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgLlxuJGRyb3Bkb3duLWJvcmRlcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMTUpICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgICoqZm9yIElFOCoqLlxuJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbi8vKiogRGl2aWRlciBjb2xvciBmb3IgYmV0d2VlbiBkcm9wZG93biBpdGVtcy5cbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogRHJvcGRvd24gbGluayB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbi8vKiogSG92ZXIgY29sb3IgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogSG92ZXIgYmFja2dyb3VuZCBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIHRleHQgY29sb3IuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbi8vKiogRGlzYWJsZWQgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIGZvciBoZWFkZXJzIHdpdGhpbiBkcm9wZG93biBtZW51cy5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyBOb3RlOiBEZXByZWNhdGVkICRkcm9wZG93bi1jYXJldC1jb2xvciBhcyBvZiB2My4xLjBcbiRkcm9wZG93bi1jYXJldC1jb2xvcjogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG5cblxuLy8tLSBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG4vL1xuLy8gTm90ZTogVGhlc2UgdmFyaWFibGVzIGFyZSBub3QgZ2VuZXJhdGVkIGludG8gdGhlIEN1c3RvbWl6ZXIuXG5cbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LW5hdmJhci1maXhlZDogICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kOiAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG5cblxuLy89PSBNZWRpYSBxdWVyaWVzIGJyZWFrcG9pbnRzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIGJyZWFrcG9pbnRzIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLCBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBFeHRyYSBzbWFsbCBzY3JlZW4gLyBwaG9uZVxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4teHM6ICAgICAgICAgICAgICAgICAgNDgwcHggIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHMtbWluYCBhcyBvZiB2My4yLjBcbiRzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi14cyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1waG9uZWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXBob25lOiAgICAgICAgICAgICAgICRzY3JlZW4teHMtbWluICFkZWZhdWx0O1xuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1zbWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXNtOiAgICAgICAgICAgICAgICAgIDc2OHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXNtICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXRhYmxldGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXRhYmxldDogICAgICAgICAgICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLW1kYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbWQ6ICAgICAgICAgICAgICAgICAgOTkycHggIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbWQgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWRlc2t0b3A6ICAgICAgICAgICAgICRzY3JlZW4tbWQtbWluICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZ2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnOiAgICAgICAgICAgICAgICAgIDEyMDBweCAhZGVmYXVsdDtcbiRzY3JlZW4tbGctbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1sZyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZy1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGctZGVza3RvcDogICAgICAgICAgJHNjcmVlbi1sZy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNvIG1lZGlhIHF1ZXJpZXMgZG9uJ3Qgb3ZlcmxhcCB3aGVuIHJlcXVpcmVkLCBwcm92aWRlIGEgbWF4aW11bVxuJHNjcmVlbi14cy1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1zbS1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbWQtbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLWxnLW1pbiAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gR3JpZCBzeXN0ZW1cbi8vXG4vLyMjIERlZmluZSB5b3VyIGN1c3RvbSByZXNwb25zaXZlIGdyaWQuXG5cbi8vKiogTnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYmV0d2VlbiBjb2x1bW5zLiBHZXRzIGRpdmlkZWQgaW4gaGFsZiBmb3IgdGhlIGxlZnQgYW5kIHJpZ2h0LlxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4vLyBOYXZiYXIgY29sbGFwc2Vcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWNvbWVzIHVuY29sbGFwc2VkLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludDogICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlZ2lucyBjb2xsYXBzaW5nLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXg6ICgkZ3JpZC1mbG9hdC1icmVha3BvaW50IC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBDb250YWluZXIgc2l6ZXNcbi8vXG4vLyMjIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuJGNvbnRhaW5lci10YWJsZXQ6ICAgICAgICAgICAgICg3MjBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1zbS1taW5gIGFuZCB1cC5cbiRjb250YWluZXItc206ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXRhYmxldCAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3BcbiRjb250YWluZXItZGVza3RvcDogICAgICAgICAgICAoOTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbWQtbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLW1kOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1kZXNrdG9wICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcbiRjb250YWluZXItbGFyZ2UtZGVza3RvcDogICAgICAoMTE0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLWxnLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1sZzogICAgICAgICAgICAgICAgICRjb250YWluZXItbGFyZ2UtZGVza3RvcCAhZGVmYXVsdDtcblxuXG4vLz09IE5hdmJhclxuLy9cbi8vIyNcblxuLy8gQmFzaWNzIG9mIGEgbmF2YmFyXG4kbmF2YmFyLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICRsaW5lLWhlaWdodC1jb21wdXRlZCAhZGVmYXVsdDtcbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgKCgkbmF2YmFyLWhlaWdodCAtICRsaW5lLWhlaWdodC1jb21wdXRlZCkgLyAyKSAhZGVmYXVsdDtcbiRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDogICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgI2Y4ZjhmOCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBsaW5rc1xuJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciB0b2dnbGVcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICM4ODggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLyBJbnZlcnRlZCBuYXZiYXJcbi8vIFJlc2V0IGludmVydGVkIG5hdmJhciBiYXNpY3NcbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzIyMiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXG4kbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciB0b2dnbGVcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IE5hdnNcbi8vXG4vLyMjXG5cbi8vPT09IFNoYXJlZCBuYXYgc3R5bGVzXG4kbmF2LWxpbmstcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vPT0gVGFic1xuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG4vLz09IFBpbGxzXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2luYXRpb25cbi8vXG4vLyMjXG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR0ZXh0LWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICNkY2UwZTAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICR0ZXh0LWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICNhYWEgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1kZWZhdWx0LWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWRlZmF1bHQtYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBQYWdlclxuLy9cbi8vIyNcblxuJHBhZ2VyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYmcgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kcGFnZXItaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHBhZ2VyLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG4kcGFnZXItZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IEp1bWJvdHJvblxuLy9cbi8vIyNcblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWNvbG9yOiAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tZm9udC1zaXplOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNSkpICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWZvbnQtc2l6ZTogICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogNC41KSkgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3JtIHN0YXRlcyBhbmQgYWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgY29sb3JzIGZvciBmb3JtIGZlZWRiYWNrIHN0YXRlcyBhbmQsIGJ5IGRlZmF1bHQsIGFsZXJ0cy5cblxuJHN0YXRlLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgICAgIzIyOTE3MyAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICNGMkZDRjkgIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtc3VjY2Vzcy1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICAgICAjMjY5MjlDICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgI0VFRjhGQyAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1pbmZvLWJnLCAtMTApLCA3JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS13YXJuaW5nLXRleHQ6ICAgICAgICAgICAgICNBRjdGMTggIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1iZzogICAgICAgICAgICAgICAjRkZGQUYwICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXdhcm5pbmctYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWRhbmdlci10ZXh0OiAgICAgICAgICAgICAgI0IxM0QzMSAhZGVmYXVsdDtcbiRzdGF0ZS1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICNGREVGRUUgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtZGFuZ2VyLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cblxuLy89PSBUb29sdGlwc1xuLy9cbi8vIyNcblxuLy8qKiBUb29sdGlwIG1heCB3aWR0aFxuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgdGV4dCBjb2xvclxuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBiYWNrZ3JvdW5kIGNvbG9yXG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG5cbi8vKiogVG9vbHRpcCBhcnJvdyB3aWR0aFxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIGFycm93IGNvbG9yXG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuXG4vLz09IFBvcG92ZXJzXG4vL1xuLy8jI1xuXG4vLyoqIFBvcG92ZXIgYm9keSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICRkYXJrICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG1heGltdW0gd2lkdGhcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRkYXJrICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGZhbGxiYWNrIGJvcmRlciBjb2xvclxuJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAkZGFyayAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIHRpdGxlIGJhY2tncm91bmQgY29sb3JcbiRwb3BvdmVyLXRpdGxlLWJnOiAgICAgICAgICAgICAgICAgICAgJGRhcmsgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGFycm93IGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAgICRkYXJrICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgd2lkdGhcbiRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoOiAgICAgICAgICAgKCRwb3BvdmVyLWFycm93LXdpZHRoICsgMSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgICAgJGRhcmsgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgZmFsbGJhY2sgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOiAgJGRhcmsgIWRlZmF1bHQ7XG5cblxuLy89PSBMYWJlbHNcbi8vXG4vLyMjXG5cbi8vKiogRGVmYXVsdCBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtZGVmYXVsdC1iZzogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogUHJpbWFyeSBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtcHJpbWFyeS1iZzogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtc3VjY2Vzcy1iZzogICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbi8vKiogSW5mbyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtaW5mby1iZzogICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbi8vKiogV2FybmluZyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtd2FybmluZy1iZzogICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbi8vKiogRGFuZ2VyIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kYW5nZXItYmc6ICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBsYWJlbCB0ZXh0IGNvbG9yXG4kbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEZWZhdWx0IHRleHQgY29sb3Igb2YgYSBsaW5rZWQgbGFiZWxcbiRsYWJlbC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBNb2RhbHNcbi8vXG4vLyMjXG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgdGl0bGVcbiRtb2RhbC10aXRsZS1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIHRpdGxlIGxpbmUtaGVpZ2h0XG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIGNvbnRlbnQgYXJlYVxuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvclxuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4yKSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3IgKipmb3IgSUU4KipcbiRtb2RhbC1jb250ZW50LWZhbGxiYWNrLWJvcmRlci1jb2xvcjogICAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuLy8qKiBNb2RhbCBiYWNrZHJvcCBiYWNrZ3JvdW5kIGNvbG9yXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBiYWNrZHJvcCBvcGFjaXR5XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAuNSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgaGVhZGVyIGJvcmRlciBjb2xvclxuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgI2U1ZTVlNSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgZm9vdGVyIGJvcmRlciBjb2xvclxuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgIDkwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgNjAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuXG4vLz09IEFsZXJ0c1xuLy9cbi8vIyMgRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nOiAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgYm9sZCAhZGVmYXVsdDtcblxuJGFsZXJ0LXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtaW5mby1iZzogICAgICAgICAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC13YXJuaW5nLWJnOiAgICAgICAgICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LWRhbmdlci1iZzogICAgICAgICAgICAgJHN0YXRlLWRhbmdlci1iZyAhZGVmYXVsdDtcbiRhbGVydC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyICFkZWZhdWx0O1xuXG5cbi8vPT0gUHJvZ3Jlc3MgYmFyc1xuLy9cbi8vIyNcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSB3aG9sZSBwcm9ncmVzcyBjb21wb25lbnRcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFByb2dyZXNzIGJhciB0ZXh0IGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBWYXJpYWJsZSBmb3Igc2V0dGluZyByb3VuZGVkIGNvcm5lcnMgb24gcHJvZ3Jlc3MgYmFyLlxuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIFN1Y2Nlc3MgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXN1Y2Nlc3MtYmc6ICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbi8vKiogV2FybmluZyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItd2FybmluZy1iZzogICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWRhbmdlci1iZzogICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuLy8qKiBJbmZvIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1pbmZvLWJnOiAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG5cblxuLy89PSBMaXN0IGdyb3VwXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb24gYC5saXN0LWdyb3VwLWl0ZW1gXG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIGAubGlzdC1ncm91cC1pdGVtYCBib3JkZXIgY29sb3JcbiRsaXN0LWdyb3VwLWJvcmRlcjogICAgICAgICAgICAgI2VmZjJmNyAhZGVmYXVsdDtcbi8vKiogTGlzdCBncm91cCBib3JkZXIgcmFkaXVzXG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBzaW5nbGUgbGlzdCBpdGVtcyBvbiBob3ZlclxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3Igb2YgYWN0aXZlIGxpc3QgZWxlbWVudHNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXI6ICAgICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLXRleHQtY29sb3I6ICBsaWdodGVuKCRsaXN0LWdyb3VwLWFjdGl2ZS1iZywgNDAlKSAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIG9mIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLXRleHQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1saW5rLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhvdmVyLWNvbG9yOiAgICRsaXN0LWdyb3VwLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I6ICMzMzMgIWRlZmF1bHQ7XG5cblxuLy89PSBQYW5lbHNcbi8vXG4vLyMjXG5cbiRwYW5lbC1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtYm9keS1wYWRkaW5nOiAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJHBhbmVsLWhlYWRpbmctcGFkZGluZzogICAgICAgMTBweCAxNXB4ICFkZWZhdWx0O1xuJHBhbmVsLWZvb3Rlci1wYWRkaW5nOiAgICAgICAgJHBhbmVsLWhlYWRpbmctcGFkZGluZyAhZGVmYXVsdDtcbiRwYW5lbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciBlbGVtZW50cyB3aXRoaW4gcGFuZWxzXG4kcGFuZWwtaW5uZXItYm9yZGVyOiAgICAgICAgICAkc3RhdGUtZGVmYXVsdC1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAjZmFmYWZhICFkZWZhdWx0O1xuXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWJvcmRlcjogICAgICAgICRzdGF0ZS1kZWZhdWx0LWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICRzdGF0ZS1kZWZhdWx0LWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtcHJpbWFyeS10ZXh0OiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhbmVsLXByaW1hcnktYm9yZGVyOiAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnOiAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJHBhbmVsLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1zdWNjZXNzLWhlYWRpbmctYmc6ICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLWluZm8taGVhZGluZy1iZzogICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmc6ICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuXG5cbi8vPT0gVGh1bWJuYWlsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGltYWdlXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICA0cHggIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBiYWNrZ3JvdW5kIGNvbG9yXG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJvcmRlciBjb2xvclxuJHRodW1ibmFpbC1ib3JkZXI6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJvcmRlciByYWRpdXNcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQ3VzdG9tIHRleHQgY29sb3IgZm9yIHRodW1ibmFpbCBjYXB0aW9uc1xuJHRodW1ibmFpbC1jYXB0aW9uLWNvbG9yOiAgICAgJHRleHQtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgY2FwdGlvblxuJHRodW1ibmFpbC1jYXB0aW9uLXBhZGRpbmc6ICAgOXB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gV2VsbHNcbi8vXG4vLyMjXG5cbiR3ZWxsLWJnOiAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kd2VsbC1ib3JkZXI6ICAgICAgICAgICAgICAgICBkYXJrZW4oJHdlbGwtYmcsIDclKSAhZGVmYXVsdDtcblxuXG4vLz09IEJhZGdlc1xuLy9cbi8vIyNcblxuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogTGlua2VkIGJhZGdlIHRleHQgY29sb3Igb24gaG92ZXJcbiRiYWRnZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYmFkZ2UtYmc6ICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBCYWRnZSB0ZXh0IGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xuJGJhZGdlLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhZGdlIGJhY2tncm91bmQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWJnOiAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xuJGJhZGdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgMSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBCcmVhZGNydW1ic1xuLy9cbi8vIyNcblxuJGJyZWFkY3J1bWItcGFkZGluZy12ZXJ0aWNhbDogICA4cHggIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw6IDE1cHggIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgYmFja2dyb3VuZCBjb2xvclxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAkc3RhdGUtZGVmYXVsdC1iZyAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiB0ZXh0IGNvbG9yXG4kYnJlYWRjcnVtYi1jb2xvcjogICAgICAgICAgICAgICRzdGF0ZS1kZWZhdWx0LWJvcmRlciAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBvZiBjdXJyZW50IHBhZ2UgaW4gdGhlIGJyZWFkY3J1bWJcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIFRleHR1YWwgc2VwYXJhdG9yIGZvciBiZXR3ZWVuIGJyZWFkY3J1bWIgZWxlbWVudHNcbiRicmVhZGNydW1iLXNlcGFyYXRvcjogICAgICAgICAgXCIvXCIgIWRlZmF1bHQ7XG5cblxuLy89PSBDYXJvdXNlbFxuLy9cbi8vIyNcblxuJGNhcm91c2VsLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKDAsMCwwLC42KSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gQ2xvc2Vcbi8vXG4vLyMjXG5cbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgMCAxcHggMCAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29kZVxuLy9cbi8vIyNcblxuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgI2M3MjU0ZSAhZGVmYXVsdDtcbiRjb2RlLWJnOiAgICAgICAgICAgICAgICAgICAgICNmOWYyZjQgIWRlZmF1bHQ7XG5cbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuXG4kcHJlLWJnOiAgICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRwcmUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLz09IFR5cGVcbi8vXG4vLyMjXG5cbi8vKiogSG9yaXpvbnRhbCBvZmZzZXQgZm9yIGZvcm1zIGFuZCBsaXN0cy5cbiRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWw6IDE4MHB4ICFkZWZhdWx0O1xuLy8qKiBUZXh0IG11dGVkIGNvbG9yXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQWJicmV2aWF0aW9ucyBhbmQgYWNyb255bXMgYm9yZGVyIGNvbG9yXG4kYWJici1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogSGVhZGluZ3Mgc21hbGwgY29sb3JcbiRoZWFkaW5ncy1zbWFsbC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIHNtYWxsIGNvbG9yXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBmb250IHNpemVcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBib3JkZXIgY29sb3JcbiRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjogICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFBhZ2UgaGVhZGVyIGJvcmRlciBjb2xvclxuJHBhZ2UtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogV2lkdGggb2YgaG9yaXpvbnRhbCBkZXNjcmlwdGlvbiBsaXN0IHRpdGxlc1xuJGRsLWhvcml6b250YWwtb2Zmc2V0OiAgICAgICAgJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbCAhZGVmYXVsdDtcbi8vKiogUG9pbnQgYXQgd2hpY2ggLmRsLWhvcml6b250YWwgYmVjb21lcyBob3Jpem9udGFsXG4kZGwtaG9yaXpvbnRhbC1icmVha3BvaW50OiAgICAkZ3JpZC1mbG9hdC1icmVha3BvaW50ICFkZWZhdWx0O1xuLy8qKiBIb3Jpem9udGFsIGxpbmUgY29sb3IuXG4kaHItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuIiwiLy8gV2ViS2l0LXN0eWxlIGZvY3VzXG5cbkBtaXhpbiB0YWItZm9jdXMoKSB7XG4gIC8vIERlZmF1bHRcbiAgb3V0bGluZTogdGhpbiBkb3R0ZWQ7XG4gIC8vIFdlYktpdFxuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5AbWl4aW4gaW1nLXJlc3BvbnNpdmUoJGRpc3BsYXk6IGJsb2NrKSB7XG4gIGRpc3BsYXk6ICRkaXNwbGF5O1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIGhlaWdodDogYXV0bzsgLy8gUGFydCAyOiBTY2FsZSB0aGUgaGVpZ2h0IGFjY29yZGluZyB0byB0aGUgd2lkdGgsIG90aGVyd2lzZSB5b3UgZ2V0IHN0cmV0Y2hpbmdcbn1cblxuXG4vLyBSZXRpbmEgaW1hZ2Vcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuIE5vdGUgdGhhdCB0aGVcbi8vIHNwZWxsaW5nIG9mIGBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW9gIGlzIGludGVudGlvbmFsLlxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMXh9XCIpLCBcIiN7JGZpbGUtMXh9XCIpKTtcblxuICBAbWVkaWFcbiAgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgIG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLzEpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1pbWFnZS1wYXRoKFwiI3skZmlsZS0yeH1cIiksIFwiI3skZmlsZS0yeH1cIikpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbn1cbiIsIi8vXG4vLyBUeXBvZ3JhcGh5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEhlYWRpbmdzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcblxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAkaGVhZGluZ3Mtc21hbGwtY29sb3I7XG4gIH1cbn1cblxuaDEsIC5oMSxcbmgyLCAuaDIsXG5oMywgLmgzIHtcbiAgbWFyZ2luLXRvcDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG5cbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA2NSU7XG4gIH1cbn1cbmg0LCAuaDQsXG5oNSwgLmg1LFxuaDYsIC5oNiB7XG4gIG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICB9XG59XG5cbmgxLCAuaDEgeyBmb250LXNpemU6ICRmb250LXNpemUtaDE7IH1cbmgyLCAuaDIgeyBmb250LXNpemU6ICRmb250LXNpemUtaDI7IH1cbmgzLCAuaDMgeyBmb250LXNpemU6ICRmb250LXNpemUtaDM7IH1cbmg0LCAuaDQgeyBmb250LXNpemU6ICRmb250LXNpemUtaDQ7IH1cbmg1LCAuaDUgeyBmb250LXNpemU6ICRmb250LXNpemUtaDU7IH1cbmg2LCAuaDYgeyBmb250LXNpemU6ICRmb250LXNpemUtaDY7IH1cblxuXG4vLyBCb2R5IHRleHRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxucCB7XG4gIG1hcmdpbjogMCAwICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcbn1cblxuLmxlYWQge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc2l6ZTogZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDEuMTUpKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgKiAxLjUpO1xuICB9XG59XG5cblxuLy8gRW1waGFzaXMgJiBtaXNjXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEV4OiAoMTJweCBzbWFsbCBmb250IC8gMTRweCBiYXNlIGZvbnQpICogMTAwJSA9IGFib3V0IDg1JVxuc21hbGwsXG4uc21hbGwge1xuICBmb250LXNpemU6IGZsb29yKCgxMDAlICogJGZvbnQtc2l6ZS1zbWFsbCAvICRmb250LXNpemUtYmFzZSkpO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RhdGUtd2FybmluZy1iZztcbiAgcGFkZGluZzogLjJlbTtcbn1cblxuLy8gQWxpZ25tZW50XG4udGV4dC1sZWZ0ICAgICAgICAgICB7IHRleHQtYWxpZ246IGxlZnQ7IH1cbi50ZXh0LXJpZ2h0ICAgICAgICAgIHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbi50ZXh0LWNlbnRlciAgICAgICAgIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4udGV4dC1qdXN0aWZ5ICAgICAgICB7IHRleHQtYWxpZ246IGp1c3RpZnk7IH1cbi50ZXh0LW5vd3JhcCAgICAgICAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuLnRleHQtbG93ZXJjYXNlICAgICAgeyB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlOyB9XG4udGV4dC11cHBlcmNhc2UgICAgICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbi50ZXh0LWNhcGl0YWxpemUgICAgIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cblxuLy8gQ29udGV4dHVhbCBjb2xvcnNcbi50ZXh0LW11dGVkIHtcbiAgY29sb3I6ICR0ZXh0LW11dGVkO1xufVxuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXByaW1hcnknLCAkYnJhbmQtcHJpbWFyeSk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtc3VjY2VzcycsICRzdGF0ZS1zdWNjZXNzLXRleHQpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LWluZm8nLCAkc3RhdGUtaW5mby10ZXh0KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC13YXJuaW5nJywgJHN0YXRlLXdhcm5pbmctdGV4dCk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtZGFuZ2VyJywgJHN0YXRlLWRhbmdlci10ZXh0KTtcblxuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuLy8gRm9yIG5vdyB3ZSdsbCBsZWF2ZSB0aGVzZSBhbG9uZ3NpZGUgdGhlIHRleHQgY2xhc3NlcyB1bnRpbCB2NCB3aGVuIHdlIGNhblxuLy8gc2FmZWx5IHNoaWZ0IHRoaW5ncyBhcm91bmQgKHBlciBTZW1WZXIgcnVsZXMpLlxuLmJnLXByaW1hcnkge1xuICAvLyBHaXZlbiB0aGUgY29udHJhc3QgaGVyZSwgdGhpcyBpcyB0aGUgb25seSBjbGFzcyB0byBoYXZlIGl0cyBjb2xvciBpbnZlcnRlZFxuICAvLyBhdXRvbWF0aWNhbGx5LlxuICBjb2xvcjogI2ZmZjtcbn1cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1wcmltYXJ5JywgJGJyYW5kLXByaW1hcnkpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctc3VjY2VzcycsICRzdGF0ZS1zdWNjZXNzLWJnKTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLWluZm8nLCAkc3RhdGUtaW5mby1iZyk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy13YXJuaW5nJywgJHN0YXRlLXdhcm5pbmctYmcpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctZGFuZ2VyJywgJHN0YXRlLWRhbmdlci1iZyk7XG5cblxuLy8gUGFnZSBoZWFkZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnBhZ2UtaGVhZGVyIHtcbiAgcGFkZGluZy1ib3R0b206ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgLSAxKTtcbiAgbWFyZ2luOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICogMikgMCAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcGFnZS1oZWFkZXItYm9yZGVyLWNvbG9yO1xufVxuXG5cbi8vIExpc3RzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFVub3JkZXJlZCBhbmQgT3JkZXJlZCBsaXN0c1xudWwsXG5vbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcbiAgdWwsXG4gIG9sIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vIExpc3Qgb3B0aW9uc1xuXG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgZnJvbSBgLmxpc3QtdW5zdHlsZWRgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGFzIGBAbWl4aW4gbGlzdC11bnN0eWxlZGAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xufVxuXG5cbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXG4ubGlzdC1pbmxpbmUge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xuICBtYXJnaW4tbGVmdDogLTVweDtcblxuICA+IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xuICB9XG59XG5cbi8vIERlc2NyaXB0aW9uIExpc3RzXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7IC8vIFJlbW92ZSBicm93c2VyIGRlZmF1bHRcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xufVxuZHQsXG5kZCB7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbn1cbmR0IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5kZCB7XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyBVbmRvIGJyb3dzZXIgZGVmYXVsdFxufVxuXG4vLyBIb3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3RzXG4vL1xuLy8gRGVmYXVsdHMgdG8gYmVpbmcgc3RhY2tlZCB3aXRob3V0IGFueSBvZiB0aGUgYmVsb3cgc3R5bGVzIGFwcGxpZWQsIHVudGlsIHRoZVxuLy8gZ3JpZCBicmVha3BvaW50IGlzIHJlYWNoZWQgKGRlZmF1bHQgb2Ygfjc2OHB4KS5cblxuLmRsLWhvcml6b250YWwge1xuICBkZCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7IC8vIENsZWFyIHRoZSBmbG9hdGVkIGBkdGAgaWYgYW4gZW1wdHkgYGRkYCBpcyBwcmVzZW50XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGRsLWhvcml6b250YWwtYnJlYWtwb2ludCkge1xuICAgIGR0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6ICgkZGwtaG9yaXpvbnRhbC1vZmZzZXQgLSAyMCk7XG4gICAgICBjbGVhcjogbGVmdDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgQGluY2x1ZGUgdGV4dC1vdmVyZmxvdztcbiAgICB9XG4gICAgZGQge1xuICAgICAgbWFyZ2luLWxlZnQ6ICRkbC1ob3Jpem9udGFsLW9mZnNldDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBNaXNjXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEFiYnJldmlhdGlvbnMgYW5kIGFjcm9ueW1zXG5hYmJyW3RpdGxlXSxcbi8vIEFkZCBkYXRhLSogYXR0cmlidXRlIHRvIGhlbHAgb3V0IG91ciB0b29sdGlwIHBsdWdpbiwgcGVyIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvNTI1N1xuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7XG4gIGN1cnNvcjogaGVscDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAkYWJici1ib3JkZXItY29sb3I7XG59XG4uaW5pdGlhbGlzbSB7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBAZXh0ZW5kIC50ZXh0LXVwcGVyY2FzZTtcbn1cblxuLy8gQmxvY2txdW90ZXNcbmJsb2NrcXVvdGUge1xuICBwYWRkaW5nOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBtYXJnaW46IDAgMCAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc2l6ZTogJGJsb2NrcXVvdGUtZm9udC1zaXplO1xuICBib3JkZXItbGVmdDogNXB4IHNvbGlkICRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjtcblxuICBwLFxuICB1bCxcbiAgb2wge1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIE5vdGU6IERlcHJlY2F0ZWQgc21hbGwgYW5kIC5zbWFsbCBhcyBvZiB2My4xLjBcbiAgLy8gQ29udGV4dDogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY2MFxuICBmb290ZXIsXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogODAlOyAvLyBiYWNrIHRvIGRlZmF1bHQgZm9udC1zaXplXG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDIwMTQgXFwwMEEwJzsgLy8gZW0gZGFzaCwgbmJzcFxuICAgIH1cbiAgfVxufVxuXG4vLyBPcHBvc2l0ZSBhbGlnbm1lbnQgb2YgYmxvY2txdW90ZVxuLy9cbi8vIEhlYWRzIHVwOiBgYmxvY2txdW90ZS5wdWxsLXJpZ2h0YCBoYXMgYmVlbiBkZXByZWNhdGVkIGFzIG9mIHYzLjEuMC5cbi5ibG9ja3F1b3RlLXJldmVyc2UsXG5ibG9ja3F1b3RlLnB1bGwtcmlnaHQge1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGJvcmRlci1yaWdodDogNXB4IHNvbGlkICRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gIC8vIEFjY291bnQgZm9yIGNpdGF0aW9uXG4gIGZvb3RlcixcbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgJjpiZWZvcmUgeyBjb250ZW50OiAnJzsgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ1xcMDBBMCBcXDIwMTQnOyAvLyBuYnNwLCBlbSBkYXNoXG4gICAgfVxuICB9XG59XG5cbi8vIEFkZHJlc3Nlc1xuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG59XG4iLCIvLyBUeXBvZ3JhcGh5XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuICBhI3skcGFyZW50fTpob3ZlcixcbiAgYSN7JHBhcmVudH06Zm9jdXMge1xuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxuICBhI3skcGFyZW50fTpob3ZlcixcbiAgYSN7JHBhcmVudH06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIENsZWFyZml4XG4vL1xuLy8gRm9yIG1vZGVybiBicm93c2Vyc1xuLy8gMS4gVGhlIHNwYWNlIGNvbnRlbnQgaXMgb25lIHdheSB0byBhdm9pZCBhbiBPcGVyYSBidWcgd2hlbiB0aGVcbi8vICAgIGNvbnRlbnRlZGl0YWJsZSBhdHRyaWJ1dGUgaXMgaW5jbHVkZWQgYW55d2hlcmUgZWxzZSBpbiB0aGUgZG9jdW1lbnQuXG4vLyAgICBPdGhlcndpc2UgaXQgY2F1c2VzIHNwYWNlIHRvIGFwcGVhciBhdCB0aGUgdG9wIGFuZCBib3R0b20gb2YgZWxlbWVudHNcbi8vICAgIHRoYXQgYXJlIGNsZWFyZml4ZWQuXG4vLyAyLiBUaGUgdXNlIG9mIGB0YWJsZWAgcmF0aGVyIHRoYW4gYGJsb2NrYCBpcyBvbmx5IG5lY2Vzc2FyeSBpZiB1c2luZ1xuLy8gICAgYDpiZWZvcmVgIHRvIGNvbnRhaW4gdGhlIHRvcC1tYXJnaW5zIG9mIGNoaWxkIGVsZW1lbnRzLlxuLy9cbi8vIFNvdXJjZTogaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svXG5cbkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiOyAvLyAxXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDJcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuIiwiLy8gVGV4dCBvdmVyZmxvd1xuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC1vdmVyZmxvdygpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvL1xuLy8gQ29kZSAoaW5saW5lIGFuZCBibG9jaylcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSW5saW5lIGFuZCBibG9jayBjb2RlIHN0eWxlc1xuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbn1cblxuLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBwYWRkaW5nOiAycHggNHB4O1xuICBmb250LXNpemU6IDkwJTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbn1cblxuLy8gVXNlciBpbnB1dCB0eXBpY2FsbHkgZW50ZXJlZCB2aWEga2V5Ym9hcmRcbmtiZCB7XG4gIHBhZGRpbmc6IDJweCA0cHg7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc21hbGw7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTFweCAwIHJnYmEoMCwwLDAsLjI1KTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtIDEpIC8gMik7XG4gIG1hcmdpbjogMCAwICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcbiAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlIC0gMSk7IC8vIDE0cHggdG8gMTNweFxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBjb2xvcjogJHByZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByZS1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJHByZS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6ICRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG4iLCIvL1xuLy8gR3JpZCBzeXN0ZW1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuLmNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lci1maXhlZDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICB3aWR0aDogJGNvbnRhaW5lci1zbTtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICB3aWR0aDogJGNvbnRhaW5lci1tZDtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICB3aWR0aDogJGNvbnRhaW5lci1sZztcbiAgfVxufVxuXG5cbi8vIEZsdWlkIGNvbnRhaW5lclxuLy9cbi8vIFV0aWxpemVzIHRoZSBtaXhpbiBtZWFudCBmb3IgZml4ZWQgd2lkdGggY29udGFpbmVycywgYnV0IHdpdGhvdXQgYW55IGRlZmluZWRcbi8vIHdpZHRoIGZvciBmbHVpZCwgZnVsbCB3aWR0aCBsYXlvdXRzLlxuXG4uY29udGFpbmVyLWZsdWlkIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyLWZpeGVkO1xufVxuXG5cbi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiBhbmQgY2xlYXIgdGhlIGZsb2F0cyBvZiB5b3VyIGNvbHVtbnMuXG5cbi5yb3cge1xuICBAaW5jbHVkZSBtYWtlLXJvdztcbn1cblxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucztcblxuXG4vLyBFeHRyYSBzbWFsbCBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIGV4dHJhIHNtYWxsIGRldmljZXMgbGlrZVxuLy8gc21hcnRwaG9uZXMuXG5cbkBpbmNsdWRlIG1ha2UtZ3JpZCh4cyk7XG5cblxuLy8gU21hbGwgZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgc21hbGwgZGV2aWNlIHJhbmdlLCBmcm9tIHBob25lc1xuLy8gdG8gdGFibGV0cy5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChzbSk7XG59XG5cblxuLy8gTWVkaXVtIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIGRlc2t0b3AgZGV2aWNlIHJhbmdlLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKG1kKTtcbn1cblxuXG4vLyBMYXJnZSBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBsYXJnZSBkZXNrdG9wIGRldmljZSByYW5nZS5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChsZyk7XG59XG4iLCIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuLy8gQ2VudGVyZWQgY29udGFpbmVyIGVsZW1lbnRcbkBtaXhpbiBjb250YWluZXItZml4ZWQoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogIGZsb29yKCgkZ3V0dGVyIC8gMikpO1xuICBwYWRkaW5nLXJpZ2h0OiBjZWlsKCgkZ3V0dGVyIC8gMikpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gQ3JlYXRlcyBhIHdyYXBwZXIgZm9yIGEgc2VyaWVzIG9mIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgbWFyZ2luLWxlZnQ6ICBjZWlsKCgkZ3V0dGVyIC8gLTIpKTtcbiAgbWFyZ2luLXJpZ2h0OiBmbG9vcigoJGd1dHRlciAvIC0yKSk7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgZXh0cmEgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2UteHMtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2Utc20tY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuXG4vLyBHZW5lcmF0ZSB0aGUgbWVkaXVtIGNvbHVtbnNcbkBtaXhpbiBtYWtlLW1kLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgdGhlIGxhcmdlIGNvbHVtbnNcbkBtaXhpbiBtYWtlLWxnLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGk6IDEsICRsaXN0OiBcIi5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIikge1xuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgLy8gSW5uZXIgZ3V0dGVyIHZpYSBwYWRkaW5nXG4gICAgcGFkZGluZy1sZWZ0OiAgY2VpbCgoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cbn1cblxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MsICRpOiAxLCAkbGlzdDogXCIuY29sLSN7JGNsYXNzfS0jeyRpfVwiKSB7XG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wtI3skY2xhc3N9LSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cblxuQG1peGluIGNhbGMtZ3JpZC1jb2x1bW4oJGluZGV4LCAkY2xhc3MsICR0eXBlKSB7XG4gIEBpZiAoJHR5cGUgPT0gd2lkdGgpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LSN7JGluZGV4fSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgICAgcGFkZGluZzogMHB4IDE1cHg7XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVzaCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0jeyRpbmRleH0ge1xuICAgICAgbGVmdDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID09IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdXNoLTAge1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA+IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdWxsLSN7JGluZGV4fSB7XG4gICAgICByaWdodDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1bGwpIGFuZCAoJGluZGV4ID09IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdWxsLTAge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gb2Zmc2V0KSB7XG4gICAgLmNvbC0jeyRjbGFzc30tb2Zmc2V0LSN7JGluZGV4fSB7XG4gICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGxvb3AtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zLCAkY2xhc3MsICR0eXBlKSB7XG4gIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgIEBpbmNsdWRlIGNhbGMtZ3JpZC1jb2x1bW4oJGksICRjbGFzcywgJHR5cGUpO1xuICB9XG59XG5cblxuLy8gQ3JlYXRlIGdyaWQgZm9yIHNwZWNpZmljIGNsYXNzXG5AbWl4aW4gbWFrZS1ncmlkKCRjbGFzcykge1xuICBAaW5jbHVkZSBmbG9hdC1ncmlkLWNvbHVtbnMoJGNsYXNzKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCB3aWR0aCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgcHVsbCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgcHVzaCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgb2Zmc2V0KTtcbn1cbiIsIi8vXG4vLyBUYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmc7XG59XG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG50aCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cblxuLy8gQmFzZWxpbmUgc3R5bGVzXG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgLy8gQ2VsbHNcbiAgPiB0aGVhZCxcbiAgPiB0Ym9keSxcbiAgPiB0Zm9vdCB7XG4gICAgPiB0ciB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIEJvdHRvbSBhbGlnbiBmb3IgY29sdW1uIGhlYWRpbmdzXG4gID4gdGhlYWQgPiB0ciA+IHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG4gIC8vIFJlbW92ZSB0b3AgYm9yZGVyIGZyb20gdGhlYWQgYnkgZGVmYXVsdFxuICA+IGNhcHRpb24gKyB0aGVhZCxcbiAgPiBjb2xncm91cCArIHRoZWFkLFxuICA+IHRoZWFkOmZpcnN0LWNoaWxkIHtcbiAgICA+IHRyOmZpcnN0LWNoaWxkIHtcbiAgICAgID4gdGgsXG4gICAgICA+IHRkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gQWNjb3VudCBmb3IgbXVsdGlwbGUgdGJvZHkgaW5zdGFuY2VzXG4gID4gdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAvLyBOZXN0aW5nXG4gIC50YWJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG4gIH1cbn1cblxuXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG5cbi50YWJsZS1jb25kZW5zZWQge1xuICA+IHRoZWFkLFxuICA+IHRib2R5LFxuICA+IHRmb290IHtcbiAgICA+IHRyIHtcbiAgICAgID4gdGgsXG4gICAgICA+IHRkIHtcbiAgICAgICAgcGFkZGluZzogJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gQm9yZGVyZWQgdmVyc2lvblxuLy9cbi8vIEFkZCBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgPiB0aGVhZCxcbiAgPiB0Ym9keSxcbiAgPiB0Zm9vdCB7XG4gICAgPiB0ciB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gdGhlYWQgPiB0ciB7XG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZy1hY2NlbnQ7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gID4gdGJvZHkgPiB0cjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnLWhvdmVyO1xuICB9XG59XG5cblxuLy8gVGFibGUgY2VsbCBzaXppbmdcbi8vXG4vLyBSZXNldCBkZWZhdWx0IHRhYmxlIGJlaGF2aW9yXG5cbnRhYmxlIGNvbFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgcG9zaXRpb246IHN0YXRpYzsgLy8gUHJldmVudCBib3JkZXIgaGlkaW5nIGluIEZpcmVmb3ggYW5kIElFOS0xMSAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2MjMpXG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiB0YWJsZS1jb2x1bW47XG59XG50YWJsZSB7XG4gIHRkLFxuICB0aCB7XG4gICAgJltjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IC8vIFByZXZlbnQgYm9yZGVyIGhpZGluZyBpbiBGaXJlZm94IGFuZCBJRTktMTEgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjIzKVxuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRhYmxlIGJhY2tncm91bmRzXG4vL1xuLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG5cbi8vIEdlbmVyYXRlIHRoZSBjb250ZXh0dWFsIHZhcmlhbnRzXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnYWN0aXZlJywgJHRhYmxlLWJnLWFjdGl2ZSk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnc3VjY2VzcycsICRzdGF0ZS1zdWNjZXNzLWJnKTtcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCdpbmZvJywgJHN0YXRlLWluZm8tYmcpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ3dhcm5pbmcnLCAkc3RhdGUtd2FybmluZy1iZyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnZGFuZ2VyJywgJHN0YXRlLWRhbmdlci1iZyk7XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBXcmFwIHlvdXIgdGFibGVzIGluIGAudGFibGUtcmVzcG9uc2l2ZWAgYW5kIHdlJ2xsIG1ha2UgdGhlbSBtb2JpbGUgZnJpZW5kbHlcbi8vIGJ5IGVuYWJsaW5nIGhvcml6b250YWwgc2Nyb2xsaW5nLiBPbmx5IGFwcGxpZXMgPDc2OHB4LiBFdmVyeXRoaW5nIGFib3ZlIHRoYXRcbi8vIHdpbGwgZGlzcGxheSBub3JtYWxseS5cblxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBtaW4taGVpZ2h0OiAwLjAxJTsgLy8gV29ya2Fyb3VuZCBmb3IgSUU5IGJ1ZyAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTQ4MzcpXG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICogMC43NSk7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG5cbiAgICAvLyBUaWdodGVuIHVwIHNwYWNpbmdcbiAgICA+IC50YWJsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAvLyBFbnN1cmUgdGhlIGNvbnRlbnQgZG9lc24ndCB3cmFwXG4gICAgICA+IHRoZWFkLFxuICAgICAgPiB0Ym9keSxcbiAgICAgID4gdGZvb3Qge1xuICAgICAgICA+IHRyIHtcbiAgICAgICAgICA+IHRoLFxuICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTcGVjaWFsIG92ZXJyaWRlcyBmb3IgdGhlIGJvcmRlcmVkIHRhYmxlc1xuICAgID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIGJvcmRlcjogMDtcblxuICAgICAgLy8gTnVrZSB0aGUgYXBwcm9wcmlhdGUgYm9yZGVycyBzbyB0aGF0IHRoZSBwYXJlbnQgY2FuIGhhbmRsZSB0aGVtXG4gICAgICA+IHRoZWFkLFxuICAgICAgPiB0Ym9keSxcbiAgICAgID4gdGZvb3Qge1xuICAgICAgICA+IHRyIHtcbiAgICAgICAgICA+IHRoOmZpcnN0LWNoaWxkLFxuICAgICAgICAgID4gdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgID4gdGg6bGFzdC1jaGlsZCxcbiAgICAgICAgICA+IHRkOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBPbmx5IG51a2UgdGhlIGxhc3Qgcm93J3MgYm90dG9tLWJvcmRlciBpbiBgdGJvZHlgIGFuZCBgdGZvb3RgIHNpbmNlXG4gICAgICAvLyBjaGFuY2VzIGFyZSB0aGVyZSB3aWxsIGJlIG9ubHkgb25lIGB0cmAgaW4gYSBgdGhlYWRgIGFuZCB0aGF0IHdvdWxkXG4gICAgICAvLyByZW1vdmUgdGhlIGJvcmRlciBhbHRvZ2V0aGVyLlxuICAgICAgPiB0Ym9keSxcbiAgICAgID4gdGZvb3Qge1xuICAgICAgICA+IHRyOmxhc3QtY2hpbGQge1xuICAgICAgICAgID4gdGgsXG4gICAgICAgICAgPiB0ZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlID4gdGhlYWQgPiB0cixcbiAgLnRhYmxlID4gdGJvZHkgPiB0cixcbiAgLnRhYmxlID4gdGZvb3QgPiB0ciB7XG4gICAgPiB0ZC4jeyRzdGF0ZX0sXG4gICAgPiB0aC4jeyRzdGF0ZX0sXG4gICAgJi4jeyRzdGF0ZX0gPiB0ZCxcbiAgICAmLiN7JHN0YXRlfSA+IHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXG4gIC50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIge1xuICAgID4gdGQuI3skc3RhdGV9OmhvdmVyLFxuICAgID4gdGguI3skc3RhdGV9OmhvdmVyLFxuICAgICYuI3skc3RhdGV9OmhvdmVyID4gdGQsXG4gICAgJjpob3ZlciA+IC4jeyRzdGF0ZX0sXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0aCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBGb3Jtc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBOb3JtYWxpemUgbm9uLWNvbnRyb2xzXG4vL1xuLy8gUmVzdHlsZSBhbmQgYmFzZWxpbmUgbm9uLWNvbnRyb2wgZm9ybSBlbGVtZW50cy5cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAyNXB4O1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbiAgLy8gQ2hyb21lIGFuZCBGaXJlZm94IHNldCBhIGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuICAvLyBzbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBpdCBiZWhhdmVzIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEyMzU5LlxuICBtaW4td2lkdGg6IDA7XG59XG5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgKiAxLjUpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6ICRsZWdlbmQtY29sb3I7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsZWdlbmQtYm9yZGVyLWNvbG9yO1xufVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBGb3JjZSBJRTggdG8gd3JhcCBsb25nIGNvbnRlbnQgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEzMTQxKVxuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5cbi8vIE5vcm1hbGl6ZSBmb3JtIGNvbnRyb2xzXG4vL1xuLy8gV2hpbGUgbW9zdCBvZiBvdXIgZm9ybSBzdHlsZXMgcmVxdWlyZSBleHRyYSBjbGFzc2VzLCBzb21lIGJhc2ljIG5vcm1hbGl6YXRpb25cbi8vIGlzIHJlcXVpcmVkIHRvIGVuc3VyZSBvcHRpbXVtIGRpc3BsYXkgd2l0aCBvciB3aXRob3V0IHRob3NlIGNsYXNzZXMgdG8gYmV0dGVyXG4vLyBhZGRyZXNzIGJyb3dzZXIgaW5jb25zaXN0ZW5jaWVzLlxuXG4vLyBPdmVycmlkZSBjb250ZW50LWJveCBpbiBOb3JtYWxpemUgKCogaXNuJ3Qgc3BlY2lmaWMgZW5vdWdoKVxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG59XG5cbi8vIFBvc2l0aW9uIHJhZGlvcyBhbmQgY2hlY2tib3hlcyBiZXR0ZXJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIG1hcmdpbjogNHB4IDAgMDtcbiAgbWFyZ2luLXRvcDogMXB4IFxcOTsgLy8gSUU4LTlcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gTWFrZSByYW5nZSBpbnB1dHMgYmVoYXZlIGxpa2UgdGV4dHVhbCBmb3JtIGNvbnRyb2xzXG5pbnB1dFt0eXBlPVwicmFuZ2VcIl0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIE1ha2UgbXVsdGlwbGUgc2VsZWN0IGVsZW1lbnRzIGhlaWdodCBub3QgZml4ZWRcbnNlbGVjdFttdWx0aXBsZV0sXG5zZWxlY3Rbc2l6ZV0ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEZvY3VzIGZvciBmaWxlLCByYWRpbywgYW5kIGNoZWNrYm94XG5pbnB1dFt0eXBlPVwiZmlsZVwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmb2N1cyB7XG4gIEBpbmNsdWRlIHRhYi1mb2N1cztcbn1cblxuLy8gQWRqdXN0IG91dHB1dCBlbGVtZW50XG5vdXRwdXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG59XG5cblxuLy8gQ29tbW9uIGZvcm0gY29udHJvbHNcbi8vXG4vLyBTaGFyZWQgc2l6ZSBhbmQgdHlwZSByZXNldHMgZm9yIGZvcm0gY29udHJvbHMuIEFwcGx5IGAuZm9ybS1jb250cm9sYCB0byBhbnlcbi8vIG9mIHRoZSBmb2xsb3dpbmcgZm9ybSBjb250cm9sczpcbi8vXG4vLyBzZWxlY3Rcbi8vIHRleHRhcmVhXG4vLyBpbnB1dFt0eXBlPVwidGV4dFwiXVxuLy8gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl1cbi8vIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXVxuLy8gaW5wdXRbdHlwZT1cImRhdGVcIl1cbi8vIGlucHV0W3R5cGU9XCJtb250aFwiXVxuLy8gaW5wdXRbdHlwZT1cInRpbWVcIl1cbi8vIGlucHV0W3R5cGU9XCJ3ZWVrXCJdXG4vLyBpbnB1dFt0eXBlPVwibnVtYmVyXCJdXG4vLyBpbnB1dFt0eXBlPVwiZW1haWxcIl1cbi8vIGlucHV0W3R5cGU9XCJ1cmxcIl1cbi8vIGlucHV0W3R5cGU9XCJzZWFyY2hcIl1cbi8vIGlucHV0W3R5cGU9XCJ0ZWxcIl1cbi8vIGlucHV0W3R5cGU9XCJjb2xvclwiXVxuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTsgLy8gTWFrZSBpbnB1dHMgYXQgbGVhc3QgdGhlIGhlaWdodCBvZiB0aGVpciBidXR0b24gY291bnRlcnBhcnQgKGJhc2UgbGluZS1oZWlnaHQgKyBwYWRkaW5nICsgYm9yZGVyKVxuICBwYWRkaW5nOiAkcGFkZGluZy1iYXNlLXZlcnRpY2FsICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XG4gIGJvcmRlcjogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzOyAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiA8c2VsZWN0PnMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgLjE1cywgYm94LXNoYWRvdyBlYXNlLWluLW91dCAuMTVzKTtcblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cztcblxuICAvLyBQbGFjZWhvbGRlclxuICBAaW5jbHVkZSBwbGFjZWhvbGRlcjtcblxuICAvLyBVbnN0eWxlIHRoZSBjYXJldCBvbiBgPHNlbGVjdD5gcyBpbiBJRTEwKy5cbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmW2Rpc2FibGVkXSxcbiAgJltyZWFkb25seV0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmctZGlzYWJsZWQ7XG4gICAgb3BhY2l0eTogMTsgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NVxuICB9XG5cbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgdGV4dGFyZWEmIHRvIHRleHRhcmVhLmZvcm0tY29udHJvbFxufVxuXG4vLyBSZXNldCBoZWlnaHQgZm9yIGB0ZXh0YXJlYWBzXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gU2VhcmNoIGlucHV0cyBpbiBpT1Ncbi8vXG4vLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4vLyBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbi8vIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cblxuLy8gU3BlY2lhbCBzdHlsZXMgZm9yIGlPUyB0ZW1wb3JhbCBpbnB1dHNcbi8vXG4vLyBJbiBNb2JpbGUgU2FmYXJpLCBzZXR0aW5nIGBkaXNwbGF5OiBibG9ja2Agb24gdGVtcG9yYWwgaW5wdXRzIGNhdXNlcyB0aGVcbi8vIHRleHQgd2l0aGluIHRoZSBpbnB1dCB0byBiZWNvbWUgdmVydGljYWxseSBtaXNhbGlnbmVkLiBBcyBhIHdvcmthcm91bmQsIHdlXG4vLyBzZXQgYSBwaXhlbCBsaW5lLWhlaWdodCB0aGF0IG1hdGNoZXMgdGhlIGdpdmVuIGhlaWdodCBvZiB0aGUgaW5wdXQsIGJ1dCBvbmx5XG4vLyBmb3IgU2FmYXJpLiBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTg0OFxuLy9cbi8vIE5vdGUgdGhhdCBhcyBvZiA4LjMsIGlPUyBkb2Vzbid0IHN1cHBvcnQgYGRhdGV0aW1lYCBvciBgd2Vla2AuXG5cbkBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDApIHtcbiAgaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4gIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gIGlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gICAgJi5mb3JtLWNvbnRyb2wge1xuICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgICB9XG5cbiAgICAmLmlucHV0LXNtLFxuICAgIC5pbnB1dC1ncm91cC1zbSAmIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIH1cblxuICAgICYuaW5wdXQtbGcsXG4gICAgLmlucHV0LWdyb3VwLWxnICYge1xuICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gICAgfVxuICB9XG59XG5cblxuLy8gRm9ybSBncm91cHNcbi8vXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXG4vLyBob3Jpem9udGFsIGZvcm1zLCB1c2UgdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLlxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b207XG59XG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gSW5kZW50IHRoZSBsYWJlbHMgdG8gcG9zaXRpb24gcmFkaW9zL2NoZWNrYm94ZXMgYXMgaGFuZ2luZyBjb250cm9scy5cblxuLnJhZGlvLFxuLmNoZWNrYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICBsYWJlbCB7XG4gICAgbWluLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOyAvLyBFbnN1cmUgdGhlIGlucHV0IGRvZXNuJ3QganVtcCB3aGVuIHRoZXJlIGlzIG5vIHRleHRcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbi5yYWRpby1pbmxpbmUgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbi5jaGVja2JveC1pbmxpbmUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gIG1hcmdpbi10b3A6IDRweCBcXDk7XG59XG5cbi5yYWRpbyArIC5yYWRpbyxcbi5jaGVja2JveCArIC5jaGVja2JveCB7XG4gIG1hcmdpbi10b3A6IC01cHg7IC8vIE1vdmUgdXAgc2libGluZyByYWRpb3Mgb3IgY2hlY2tib3hlcyBmb3IgdGlnaHRlciBzcGFjaW5nXG59XG5cbi8vIFJhZGlvcyBhbmQgY2hlY2tib3hlcyBvbiBzYW1lIGxpbmVcbi5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnJhZGlvLWlubGluZSArIC5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lICsgLmNoZWNrYm94LWlubGluZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4OyAvLyBzcGFjZSBvdXQgY29uc2VjdXRpdmUgaW5saW5lIGNvbnRyb2xzXG59XG5cbi8vIEFwcGx5IHNhbWUgZGlzYWJsZWQgY3Vyc29yIHR3ZWFrIGFzIGZvciBpbnB1dHNcbi8vIFNvbWUgc3BlY2lhbCBjYXJlIGlzIG5lZWRlZCBiZWNhdXNlIDxsYWJlbD5zIGRvbid0IGluaGVyaXQgdGhlaXIgcGFyZW50J3MgYGN1cnNvcmAuXG4vL1xuLy8gTm90ZTogTmVpdGhlciByYWRpb3Mgbm9yIGNoZWNrYm94ZXMgY2FuIGJlIHJlYWRvbmx5LlxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cbn1cbi8vIFRoZXNlIGNsYXNzZXMgYXJlIHVzZWQgZGlyZWN0bHkgb24gPGxhYmVsPnNcbi5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lIHtcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxufVxuLy8gVGhlc2UgY2xhc3NlcyBhcmUgdXNlZCBvbiBlbGVtZW50cyB3aXRoIDxsYWJlbD4gZGVzY2VuZGFudHNcbi5yYWRpbyxcbi5jaGVja2JveCB7XG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBsYWJlbCB7XG4gICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8gU3RhdGljIGZvcm0gY29udHJvbCB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSBgcGAgZWxlbWVudCB0byBtYWtlIGFueSBzdHJpbmcgb2YgdGV4dCBhbGlnbiB3aXRoIGxhYmVscyBpblxuLy8gYSBob3Jpem9udGFsIGZvcm0gbGF5b3V0LlxuXG4uZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gIC8vIFNpemUgaXQgYXBwcm9wcmlhdGVseSBuZXh0IHRvIHJlYWwgZm9ybSBjb250cm9sc1xuICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTtcbiAgcGFkZGluZy1ib3R0b206ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XG4gIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBmcm9tIGBwYFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1iYXNlKTtcblxuICAmLmlucHV0LWxnLFxuICAmLmlucHV0LXNtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBUaGUgYC5mb3JtLWdyb3VwLSogZm9ybS1jb250cm9sYCB2YXJpYXRpb25zIGFyZSBzYWRseSBkdXBsaWNhdGVkIHRvIGF2b2lkIHRoZVxuLy8gaXNzdWUgZG9jdW1lbnRlZCBpbiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE1MDc0LlxuXG5AaW5jbHVkZSBpbnB1dC1zaXplKCcuaW5wdXQtc20nLCAkaW5wdXQtaGVpZ2h0LXNtYWxsLCAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG4uZm9ybS1ncm91cC1zbSB7XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtYWxsO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsO1xuICB9XG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgfVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4gIHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1zbWFsbCk7XG4gICAgcGFkZGluZzogKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICsgMSkgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zbWFsbDtcbiAgfVxufVxuXG5AaW5jbHVkZSBpbnB1dC1zaXplKCcuaW5wdXQtbGcnLCAkaW5wdXQtaGVpZ2h0LWxhcmdlLCAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1sYXJnZSwgJGxpbmUtaGVpZ2h0LWxhcmdlLCAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZSk7XG4uZm9ybS1ncm91cC1sZyB7XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWxhcmdlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlO1xuICB9XG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgfVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4gIHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1sYXJnZSk7XG4gICAgcGFkZGluZzogKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICsgMSkgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sYXJnZTtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBmZWVkYmFjayBzdGF0ZXNcbi8vXG4vLyBBcHBseSBjb250ZXh0dWFsIGFuZCBzZW1hbnRpYyBzdGF0ZXMgdG8gaW5kaXZpZHVhbCBmb3JtIGNvbnRyb2xzLlxuXG4uaGFzLWZlZWRiYWNrIHtcbiAgLy8gRW5hYmxlIGFic29sdXRlIHBvc2l0aW9uaW5nXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAvLyBFbnN1cmUgaWNvbnMgZG9uJ3Qgb3ZlcmxhcCB0ZXh0XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIHBhZGRpbmctcmlnaHQ6ICgkaW5wdXQtaGVpZ2h0LWJhc2UgKiAxLjI1KTtcbiAgfVxufVxuLy8gRmVlZGJhY2sgaWNvbiAocmVxdWlyZXMgLmdseXBoaWNvbiBjbGFzc2VzKVxuLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMjsgLy8gRW5zdXJlIGljb24gaXMgYWJvdmUgaW5wdXQgZ3JvdXBzXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1iYXNlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5pbnB1dC1sZyArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uaW5wdXQtZ3JvdXAtbGcgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbn1cbi5pbnB1dC1zbSArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uaW5wdXQtZ3JvdXAtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmZvcm0tZ3JvdXAtc20gLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbn1cblxuLy8gRmVlZGJhY2sgc3RhdGVzXG4uaGFzLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtc3VjY2Vzcy10ZXh0LCAkc3RhdGUtc3VjY2Vzcy10ZXh0LCAkc3RhdGUtc3VjY2Vzcy1iZyk7XG59XG4uaGFzLXdhcm5pbmcge1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtd2FybmluZy10ZXh0LCAkc3RhdGUtd2FybmluZy10ZXh0LCAkc3RhdGUtd2FybmluZy1iZyk7XG59XG4uaGFzLWVycm9yIHtcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHN0YXRlLWRhbmdlci10ZXh0LCAkc3RhdGUtZGFuZ2VyLXRleHQsICRzdGF0ZS1kYW5nZXItYmcpO1xufVxuXG4vLyBSZXBvc2l0aW9uIGZlZWRiYWNrIGljb24gaWYgaW5wdXQgaGFzIHZpc2libGUgbGFiZWwgYWJvdmVcbi5oYXMtZmVlZGJhY2sgbGFiZWwge1xuXG4gICYgfiAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICB0b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyA1KTsgLy8gSGVpZ2h0IG9mIHRoZSBgbGFiZWxgIGFuZCBpdHMgbWFyZ2luXG4gIH1cbiAgJi5zci1vbmx5IH4gLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgdG9wOiAwO1xuICB9XG59XG5cblxuLy8gSGVscCB0ZXh0XG4vL1xuLy8gQXBwbHkgdG8gYW55IGVsZW1lbnQgeW91IHdpc2ggdG8gY3JlYXRlIGxpZ2h0IHRleHQgZm9yIHBsYWNlbWVudCBpbW1lZGlhdGVseVxuLy8gYmVsb3cgYSBmb3JtIGNvbnRyb2wuIFVzZSBmb3IgZ2VuZXJhbCBoZWxwLCBmb3JtYXR0aW5nLCBvciBpbnN0cnVjdGlvbmFsIHRleHQuXG5cbi5oZWxwLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7IC8vIGFjY291bnQgZm9yIGFueSBlbGVtZW50IHVzaW5nIGhlbHAtYmxvY2tcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjb2xvcjogbGlnaHRlbigkdGV4dC1jb2xvciwgMjUlKTsgLy8gbGlnaHRlbiB0aGUgdGV4dCBzb21lIGZvciBjb250cmFzdFxufVxuXG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgaXMgbWl4aW4tZWQgaW50byBgLm5hdmJhci1mb3JtYCBpbiBuYXZiYXJzLmxlc3MuXG5cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBmcm9tIGAuZm9ybS1pbmxpbmVgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcbkBtaXhpbiBmb3JtLWlubGluZSB7XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIEluIG5hdmJhci1mb3JtLCBhbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAuaW5wdXQtZ3JvdXAtYWRkb24sXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuLFxuICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElucHV0IGdyb3VwcyBuZWVkIHRoYXQgMTAwJSB3aWR0aCB0aG91Z2hcbiAgICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5yYWRpbyxcbiAgICAuY2hlY2tib3gge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICAuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC8vIFJlLW92ZXJyaWRlIHRoZSBmZWVkYmFjayBpY29uLlxuICAgIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG59XG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYXMgYEBtaXhpbiBmb3JtLWlubGluZWAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuLmZvcm0taW5saW5lIHtcbiAgQGluY2x1ZGUgZm9ybS1pbmxpbmU7XG59XG5cblxuXG4vLyBIb3Jpem9udGFsIGZvcm1zXG4vL1xuLy8gSG9yaXpvbnRhbCBmb3JtcyBhcmUgYnVpbHQgb24gZ3JpZCBjbGFzc2VzIGFuZCBhbGxvdyB5b3UgdG8gY3JlYXRlIGZvcm1zIHdpdGhcbi8vIGxhYmVscyBvbiB0aGUgbGVmdCBhbmQgaW5wdXRzIG9uIHRoZSByaWdodC5cblxuLmZvcm0taG9yaXpvbnRhbCB7XG5cbiAgLy8gQ29uc2lzdGVudCB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzXG4gIC8vXG4gIC8vIExhYmVscyBhbHNvIGdldCBzb21lIHJlc2V0IHN0eWxlcywgYnV0IHRoYXQgaXMgc2NvcGVkIHRvIGEgbWVkaWEgcXVlcnkgYmVsb3cuXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94LFxuICAucmFkaW8taW5saW5lLFxuICAuY2hlY2tib3gtaW5saW5lIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7IC8vIERlZmF1bHQgcGFkZGluZyBwbHVzIGEgYm9yZGVyXG4gIH1cbiAgLy8gQWNjb3VudCBmb3IgcGFkZGluZyB3ZSdyZSBhZGRpbmcgdG8gZW5zdXJlIHRoZSBhbGlnbm1lbnQgYW5kIG9mIGhlbHAgdGV4dFxuICAvLyBhbmQgb3RoZXIgY29udGVudCBiZWxvdyBpdGVtc1xuICAucmFkaW8sXG4gIC5jaGVja2JveCB7XG4gICAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSkpO1xuICB9XG5cbiAgLy8gTWFrZSBmb3JtIGdyb3VwcyBiZWhhdmUgbGlrZSByb3dzXG4gIC5mb3JtLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdztcbiAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMHB4O1xuICB9XG5cbiAgLy8gUmVzZXQgc3BhY2luZyBhbmQgcmlnaHQgYWxpZ24gbGFiZWxzLCBidXQgc2NvcGUgdG8gbWVkaWEgcXVlcmllcyBzbyB0aGF0XG4gIC8vIGxhYmVscyBvbiBuYXJyb3cgdmlld3BvcnRzIHN0YWNrIHRoZSBzYW1lIGFzIGEgZGVmYXVsdCBmb3JtIGV4YW1wbGUuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpOyAvLyBEZWZhdWx0IHBhZGRpbmcgcGx1cyBhIGJvcmRlclxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbGlkYXRpb24gc3RhdGVzXG4gIC8vXG4gIC8vIFJlcG9zaXRpb24gdGhlIGljb24gYmVjYXVzZSBpdCdzIG5vdyB3aXRoaW4gYSBncmlkIGNvbHVtbiBhbmQgY29sdW1ucyBoYXZlXG4gIC8vIGBwb3NpdGlvbjogcmVsYXRpdmU7YCBvbiB0aGVtLiBBbHNvIGFjY291bnRzIGZvciB0aGUgZ3JpZCBndXR0ZXIgcGFkZGluZy5cbiAgLmhhcy1mZWVkYmFjayAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICByaWdodDogZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcbiAgfVxuXG4gIC8vIEZvcm0gZ3JvdXAgc2l6ZXNcbiAgLy9cbiAgLy8gUXVpY2sgdXRpbGl0eSBjbGFzcyBmb3IgYXBwbHlpbmcgYC5pbnB1dC1sZ2AgYW5kIGAuaW5wdXQtc21gIHN0eWxlcyB0byB0aGVcbiAgLy8gaW5wdXRzIGFuZCBsYWJlbHMgd2l0aGluIGEgYC5mb3JtLWdyb3VwYC5cbiAgLmZvcm0tZ3JvdXAtbGcge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICsgMSk7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm0tZ3JvdXAtc20ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICsgMSk7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvcm0gdmFsaWRhdGlvbiBzdGF0ZXNcbi8vXG4vLyBVc2VkIGluIGZvcm1zLmxlc3MgdG8gZ2VuZXJhdGUgdGhlIGZvcm0gdmFsaWRhdGlvbiBDU1MgZm9yIHdhcm5pbmdzLCBlcnJvcnMsXG4vLyBhbmQgc3VjY2Vzc2VzLlxuXG5AbWl4aW4gZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHRleHQtY29sb3I6ICM1NTUsICRib3JkZXItY29sb3I6ICNjY2MsICRiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1KSB7XG4gIC8vIENvbG9yIHRoZSBsYWJlbCBhbmQgaGVscCB0ZXh0XG4gIC5oZWxwLWJsb2NrLFxuICAuY29udHJvbC1sYWJlbCxcbiAgLnJhZGlvLFxuICAuY2hlY2tib3gsXG4gIC5yYWRpby1pbmxpbmUsXG4gIC5jaGVja2JveC1pbmxpbmUsXG4gICYucmFkaW8gbGFiZWwsXG4gICYuY2hlY2tib3ggbGFiZWwsXG4gICYucmFkaW8taW5saW5lIGxhYmVsLFxuICAmLmNoZWNrYm94LWlubGluZSBsYWJlbCAge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxuICAvLyBTZXQgdGhlIGJvcmRlciBhbmQgYm94IHNoYWRvdyBvbiBzcGVjaWZpYyBpbnB1dHMgdG8gbWF0Y2hcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpOyAvLyBSZWRlY2xhcmUgc28gdHJhbnNpdGlvbnMgd29ya1xuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlci1jb2xvciwgMTAlKTtcbiAgICAgICRzaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgNnB4IGxpZ2h0ZW4oJGJvcmRlci1jb2xvciwgMjAlKTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHNoYWRvdyk7XG4gICAgfVxuICB9XG4gIC8vIFNldCB2YWxpZGF0aW9uIHN0YXRlcyBhbHNvIGZvciBhZGRvbnNcbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICB9XG4gIC8vIE9wdGlvbmFsIGZlZWRiYWNrIGljb25cbiAgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWJvcmRlci1mb2N1c2AgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGNvbG9yOiAkaW5wdXQtYm9yZGVyLWZvY3VzKSB7XG4gICRjb2xvci1yZ2JhOiByZ2JhKHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvciksIC42KTtcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgOHB4ICRjb2xvci1yZ2JhKTtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gUmVsYXRpdmUgdGV4dCBzaXplLCBwYWRkaW5nLCBhbmQgYm9yZGVyLXJhZGlpIGNoYW5nZXMgZm9yIGZvcm0gY29udHJvbHMuIEZvclxuLy8gaG9yaXpvbnRhbCBzaXppbmcsIHdyYXAgY29udHJvbHMgaW4gdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLiBgPHNlbGVjdD5gXG4vLyBlbGVtZW50IGdldHMgc3BlY2lhbCBsb3ZlIGJlY2F1c2UgaXQncyBzcGVjaWFsLCBhbmQgdGhhdCdzIGEgZmFjdCFcbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIGlucHV0LXNpemUoJHBhcmVudCwgJGlucHV0LWhlaWdodCwgJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICBzZWxlY3QjeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIH1cblxuICB0ZXh0YXJlYSN7JHBhcmVudH0sXG4gIHNlbGVjdFttdWx0aXBsZV0jeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cbiIsIi8vXG4vLyBCdXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2Ugc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBGb3IgaW5wdXQuYnRuXG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLWJhc2UtdmVydGljYWwsICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1iYXNlLCAkbGluZS1oZWlnaHQtYmFzZSwgJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICBAaW5jbHVkZSB1c2VyLXNlbGVjdChub25lKTtcblxuICAmLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBAaW5jbHVkZSB0YWItZm9jdXM7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6ICRidG4tZGVmYXVsdC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgM3B4IDVweCByZ2JhKDAsMCwwLC4xMjUpKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIEBpbmNsdWRlIG9wYWNpdHkoLjY1KTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEuYnRuXG59XG5cbmEuYnRuIHtcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyAvLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tZGVmYXVsdCB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tZGVmYXVsdC1jb2xvciwgJGJ0bi1kZWZhdWx0LWJnLCAkYnRuLWRlZmF1bHQtYm9yZGVyKTtcbn1cbi5idG4tcHJpbWFyeSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tcHJpbWFyeS1jb2xvciwgJGJ0bi1wcmltYXJ5LWJnLCAkYnRuLXByaW1hcnktYm9yZGVyKTtcbn1cbi8vIFN1Y2Nlc3MgYXBwZWFycyBhcyBncmVlblxuLmJ0bi1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1zdWNjZXNzLWNvbG9yLCAkYnRuLXN1Y2Nlc3MtYmcsICRidG4tc3VjY2Vzcy1ib3JkZXIpO1xufVxuLy8gSW5mbyBhcHBlYXJzIGFzIGJsdWUtZ3JlZW5cbi5idG4taW5mbyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4taW5mby1jb2xvciwgJGJ0bi1pbmZvLWJnLCAkYnRuLWluZm8tYm9yZGVyKTtcbn1cbi8vIFdhcm5pbmcgYXBwZWFycyBhcyBvcmFuZ2Vcbi5idG4td2FybmluZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4td2FybmluZy1jb2xvciwgJGJ0bi13YXJuaW5nLWJnLCAkYnRuLXdhcm5pbmctYm9yZGVyKTtcbn1cbi8vIERhbmdlciBhbmQgZXJyb3IgYXBwZWFyIGFzIHJlZFxuLmJ0bi1kYW5nZXIge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWRhbmdlci1jb2xvciwgJGJ0bi1kYW5nZXItYmcsICRidG4tZGFuZ2VyLWJvcmRlcik7XG59XG5cblxuLy8gTGluayBidXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgJixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJ1dHRvbiBTaXplc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1sZyB7XG4gIC8vIGxpbmUtaGVpZ2h0OiBlbnN1cmUgZXZlbi1udW1iZXJlZCBoZWlnaHQgb2YgYnV0dG9uIG5leHQgdG8gbGFyZ2UgaW5wdXRcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRmb250LXNpemUtbGFyZ2UsICRsaW5lLWhlaWdodC1sYXJnZSwgJGJ0bi1ib3JkZXItcmFkaXVzLWxhcmdlKTtcbn1cbi5idG4tc20ge1xuICAvLyBsaW5lLWhlaWdodDogZW5zdXJlIHByb3BlciBoZWlnaHQgb2YgYnV0dG9uIG5leHQgdG8gc21hbGwgaW5wdXRcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsKTtcbn1cbi5idG4teHMge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy14cy12ZXJ0aWNhbCwgJHBhZGRpbmcteHMtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkYnRuLWJvcmRlci1yYWRpdXMtc21hbGwpO1xufVxuXG5cbi8vIEJsb2NrIGJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xuLmJ0bi1ibG9jayArIC5idG4tYmxvY2sge1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbi8vIFNwZWNpZmljaXR5IG92ZXJyaWRlc1xuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAmLmJ0bi1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAyNSUpO1xuICB9XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAxMiUpO1xuICB9XG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxNyUpO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDI1JSk7XG4gICAgfVxuICB9XG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gIH1cblxuICAuYmFkZ2Uge1xuICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gQnV0dG9uIHNpemVzXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbn1cbiIsIi8vIE9wYWNpdHlcblxuQG1peGluIG9wYWNpdHkoJG9wYWNpdHkpIHtcbiAgb3BhY2l0eTogJG9wYWNpdHk7XG4gIC8vIElFOCBmaWx0ZXJcbiAgJG9wYWNpdHktaWU6ICgkb3BhY2l0eSAqIDEwMCk7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0kb3BhY2l0eS1pZSk7XG59XG4iLCIvL1xuLy8gQ29tcG9uZW50IGFuaW1hdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEhlYWRzIHVwIVxuLy9cbi8vIFdlIGRvbid0IHVzZSB0aGUgYC5vcGFjaXR5KClgIG1peGluIGhlcmUgc2luY2UgaXQgY2F1c2VzIGEgYnVnIHdpdGggdGV4dFxuLy8gZmllbGRzIGluIElFNy04LiBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzM1NTIuXG5cbi5mYWRlIHtcbiAgb3BhY2l0eTogMDtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IC4xNXMgbGluZWFyKTtcbiAgJi5pbiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uY29sbGFwc2Uge1xuICBkaXNwbGF5OiBub25lO1xuXG4gICYuaW4gICAgICB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0ciYuaW4gdG8gdHIuY29sbGFwc2UuaW5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIHRib2R5Ji5pbiB0byB0Ym9keS5jb2xsYXBzZS5pblxufVxuXG50ci5jb2xsYXBzZS5pbiAgICB7IGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuXG50Ym9keS5jb2xsYXBzZS5pbiB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cDsgfVxuXG4uY29sbGFwc2luZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5KGhlaWdodCwgdmlzaWJpbGl0eSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZHVyYXRpb24oLjM1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKGVhc2UpO1xufVxuIiwiLy9cbi8vIERyb3Bkb3duIG1lbnVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIERyb3Bkb3duIGFycm93L2NhcmV0XG4uY2FyZXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAycHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci10b3A6ICAgJGNhcmV0LXdpZHRoLWJhc2UgZGFzaGVkO1xuICBib3JkZXItdG9wOiAgICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIFxcOTsgLy8gSUU4XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAgJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChkaXYpXG4uZHJvcHVwLFxuLmRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLyBQcmV2ZW50IHRoZSBmb2N1cyBvbiB0aGUgZHJvcGRvd24gdG9nZ2xlIHdoZW4gY2xvc2luZyBkcm9wZG93bnNcbi5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudSAodWwpXG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAxNjBweDtcbiAgcGFkZGluZzogNXB4IDA7XG4gIG1hcmdpbjogMnB4IDAgMDsgLy8gb3ZlcnJpZGUgZGVmYXVsdCB1bFxuICBsaXN0LXN0eWxlOiBub25lO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRkcm9wZG93bi1mYWxsYmFjay1ib3JkZXI7IC8vIElFOCBmYWxsYmFja1xuICBib3JkZXI6IDFweCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgNnB4IDEycHggcmdiYSgwLDAsMCwuMTc1KSk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG5cbiAgLy8gQWxpZ25zIHRoZSBkcm9wZG93biBtZW51IHRvIHJpZ2h0XG4gIC8vXG4gIC8vIERlcHJlY2F0ZWQgYXMgb2YgMy4xLjAgaW4gZmF2b3Igb2YgYC5kcm9wZG93bi1tZW51LVtkaXJdYFxuICAmLnB1bGwtcmlnaHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cblxuICAvLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4gIC5kaXZpZGVyIHtcbiAgICBAaW5jbHVkZSBuYXYtZGl2aWRlcigkZHJvcGRvd24tZGl2aWRlci1iZyk7XG4gIH1cblxuICAvLyBMaW5rcyB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbiAgPiBsaSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDNweCAyMHB4O1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgfVxufVxuXG4vLyBIb3Zlci9Gb2N1cyBzdGF0ZVxuLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWJnO1xuICB9XG59XG5cbi8vIEFjdGl2ZSBzdGF0ZVxuLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYSB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnO1xuICB9XG59XG5cbi8vIERpc2FibGVkIHN0YXRlXG4vL1xuLy8gR3JheSBvdXQgdGV4dCBhbmQgZW5zdXJlIHRoZSBob3Zlci9mb2N1cyBzdGF0ZSByZW1haW5zIGdyYXlcblxuLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICB9XG5cbiAgLy8gTnVrZSBob3Zlci9mb2N1cyBlZmZlY3RzXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50XG4gICAgQGluY2x1ZGUgcmVzZXQtZmlsdGVyO1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxufVxuXG4vLyBPcGVuIHN0YXRlIGZvciB0aGUgZHJvcGRvd25cbi5vcGVuIHtcbiAgLy8gU2hvdyB0aGUgbWVudVxuICA+IC5kcm9wZG93bi1tZW51IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgb3V0bGluZSB3aGVuIDpmb2N1cyBpcyB0cmlnZ2VyZWRcbiAgPiBhIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vIE1lbnUgcG9zaXRpb25pbmdcbi8vXG4vLyBBZGQgZXh0cmEgY2xhc3MgdG8gYC5kcm9wZG93bi1tZW51YCB0byBmbGlwIHRoZSBhbGlnbm1lbnQgb2YgdGhlIGRyb3Bkb3duXG4vLyBtZW51IHdpdGggdGhlIHBhcmVudC5cbi5kcm9wZG93bi1tZW51LXJpZ2h0IHtcbiAgbGVmdDogYXV0bzsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBgLmRyb3Bkb3duLW1lbnVgXG4gIHJpZ2h0OiAwO1xufVxuLy8gV2l0aCB2Mywgd2UgZW5hYmxlZCBhdXRvLWZsaXBwaW5nIGlmIHlvdSBoYXZlIGEgZHJvcGRvd24gd2l0aGluIGEgcmlnaHRcbi8vIGFsaWduZWQgbmF2IGNvbXBvbmVudC4gVG8gZW5hYmxlIHRoZSB1bmRvaW5nIG9mIHRoYXQsIHdlIHByb3ZpZGUgYW4gb3ZlcnJpZGVcbi8vIHRvIHJlc3RvcmUgdGhlIGRlZmF1bHQgZHJvcGRvd24gbWVudSBhbGlnbm1lbnQuXG4vL1xuLy8gVGhpcyBpcyBvbmx5IGZvciBsZWZ0LWFsaWduaW5nIGEgZHJvcGRvd24gbWVudSB3aXRoaW4gYSBgLm5hdmJhci1yaWdodGAgb3Jcbi8vIGAucHVsbC1yaWdodGAgbmF2IGNvbXBvbmVudC5cbi5kcm9wZG93bi1tZW51LWxlZnQge1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDNweCAyMHB4O1xuICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRkcm9wZG93bi1oZWFkZXItY29sb3I7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbn1cblxuLy8gQmFja2Ryb3AgdG8gY2F0Y2ggYm9keSBjbGlja3Mgb24gbW9iaWxlLCBldGMuXG4uZHJvcGRvd24tYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogKCR6aW5kZXgtZHJvcGRvd24gLSAxMCk7XG59XG5cbi8vIFJpZ2h0IGFsaWduZWQgZHJvcGRvd25zXG4ucHVsbC1yaWdodCA+IC5kcm9wZG93bi1tZW51IHtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy9cbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldCwgYnJvLlxuLy8gVE9ETzogYWJzdHJhY3QgdGhpcyBzbyB0aGF0IHRoZSBuYXZiYXIgZml4ZWQgc3R5bGVzIGFyZSBub3QgcGxhY2VkIGhlcmU/XG5cbi5kcm9wdXAsXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSAuZHJvcGRvd24ge1xuICAvLyBSZXZlcnNlIHRoZSBjYXJldFxuICAuY2FyZXQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoLWJhc2UgZGFzaGVkO1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIFxcOTsgLy8gSUU4XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuICAvLyBEaWZmZXJlbnQgcG9zaXRpb25pbmcgZm9yIGJvdHRvbSB1cCBtZW51XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgfVxufVxuXG5cbi8vIENvbXBvbmVudCBhbGlnbm1lbnRcbi8vXG4vLyBSZWl0ZXJhdGUgcGVyIG5hdmJhci5sZXNzIGFuZCB0aGUgbW9kaWZpZWQgY29tcG9uZW50IGFsaWdubWVudCB0aGVyZS5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgLm5hdmJhci1yaWdodCB7XG4gICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgcmlnaHQ6IDA7IGxlZnQ6IGF1dG87XG4gICAgfVxuICAgIC8vIE5lY2Vzc2FyeSBmb3Igb3ZlcnJpZGVzIG9mIHRoZSBkZWZhdWx0IHJpZ2h0IGFsaWduZWQgbWVudS5cbiAgICAvLyBXaWxsIHJlbW92ZSBjb21lIHY0IGluIGFsbCBsaWtlbGlob29kLlxuICAgIC5kcm9wZG93bi1tZW51LWxlZnQge1xuICAgICAgbGVmdDogMDsgcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICNlNWU1ZTUpIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIDEpIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbn1cbiIsIi8vIFJlc2V0IGZpbHRlcnMgZm9yIElFXG4vL1xuLy8gV2hlbiB5b3UgbmVlZCB0byByZW1vdmUgYSBncmFkaWVudCBiYWNrZ3JvdW5kLCBkbyBub3QgZm9yZ2V0IHRvIHVzZSB0aGlzIHRvIHJlc2V0XG4vLyB0aGUgSUUgZmlsdGVyIGZvciBJRTkgYW5kIGJlbG93LlxuXG5AbWl4aW4gcmVzZXQtZmlsdGVyKCkge1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkID0gZmFsc2UpO1xufVxuIiwiLy9cbi8vIEJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgYnV0dG9uIHRvIHRoZSBmcm9udFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4uYnRuLWdyb3VwIHtcbiAgLmJ0biArIC5idG4sXG4gIC5idG4gKyAuYnRuLWdyb3VwLFxuICAuYnRuLWdyb3VwICsgLmJ0bixcbiAgLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4OyAvLyBPZmZzZXQgdGhlIGZpcnN0IGNoaWxkJ3MgbWFyZ2luXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gIC5idG4sXG4gIC5idG4tZ3JvdXAsXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAsXG4gID4gLmlucHV0LWdyb3VwIHtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICB9XG59XG5cbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gU2V0IGNvcm5lcnMgaW5kaXZpZHVhbCBiZWNhdXNlIHNvbWV0aW1lcyBhIHNpbmdsZSBidXR0b24gY2FuIGJlIGluIGEgLmJ0bi1ncm91cCBhbmQgd2UgbmVlZCA6Zmlyc3QtY2hpbGQgYW5kIDpsYXN0LWNoaWxkIHRvIGJvdGggbWF0Y2hcbi5idG4tZ3JvdXAgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gICY6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSkge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cbn1cbi8vIE5lZWQgLmRyb3Bkb3duLXRvZ2dsZSBzaW5jZSA6bGFzdC1jaGlsZCBkb2Vzbid0IGFwcGx5IGdpdmVuIGEgLmRyb3Bkb3duLW1lbnUgaW1tZWRpYXRlbHkgYWZ0ZXIgaXRcbi5idG4tZ3JvdXAgPiAuYnRuOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwID4gLmRyb3Bkb3duLXRvZ2dsZTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cblxuLy8gQ3VzdG9tIGVkaXRzIGZvciBpbmNsdWRpbmcgYnRuLWdyb3VwcyB3aXRoaW4gYnRuLWdyb3VwcyAodXNlZnVsIGZvciBpbmNsdWRpbmcgZHJvcGRvd24gYnV0dG9ucyB3aXRoaW4gYSBidG4tZ3JvdXApXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gID4gLmJ0bjpsYXN0LWNoaWxkLFxuICA+IC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuXG4vLyBPbiBhY3RpdmUgYW5kIG9wZW4sIGRvbid0IHNob3cgb3V0bGluZVxuLmJ0bi1ncm91cCAuZHJvcGRvd24tdG9nZ2xlOmFjdGl2ZSxcbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgb3V0bGluZTogMDtcbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC14cyA+IC5idG4geyBAZXh0ZW5kIC5idG4teHM7IH1cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gR2l2ZSB0aGUgbGluZSBiZXR3ZWVuIGJ1dHRvbnMgc29tZSBkZXB0aFxuLmJ0bi1ncm91cCA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBhZGRpbmctbGVmdDogMTJweDtcbiAgcGFkZGluZy1yaWdodDogMTJweDtcbn1cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBSZW1vdmUgdGhlIGdyYWRpZW50IGFuZCBzZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vIFJlcG9zaXRpb24gdGhlIGNhcmV0XG4uYnRuIC5jYXJldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLy8gQ2FyZXRzIGluIG90aGVyIGJ1dHRvbiBzaXplc1xuLmJ0bi1sZyAuY2FyZXQge1xuICBib3JkZXItd2lkdGg6ICRjYXJldC13aWR0aC1sYXJnZSAkY2FyZXQtd2lkdGgtbGFyZ2UgMDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbn1cbi8vIFVwc2lkZSBkb3duIGNhcmV0cyBmb3IgLmRyb3B1cFxuLmRyb3B1cCAuYnRuLWxnIC5jYXJldCB7XG4gIGJvcmRlci13aWR0aDogMCAkY2FyZXQtd2lkdGgtbGFyZ2UgJGNhcmV0LXdpZHRoLWxhcmdlO1xufVxuXG5cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBDbGVhciBmbG9hdHMgc28gZHJvcGRvd24gbWVudXMgY2FuIGJlIHByb3Blcmx5IHBsYWNlZFxuICA+IC5idG4tZ3JvdXAge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgID4gLmJ0biB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG4gIH1cblxuICA+IC5idG4gKyAuYnRuLFxuICA+IC5idG4gKyAuYnRuLWdyb3VwLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIHtcbiAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gICY6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG4gICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICB9XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgPiAuYnRuOmxhc3QtY2hpbGQsXG4gID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG59XG5cblxuLy8gSnVzdGlmaWVkIGJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ncm91cC1qdXN0aWZpZWQge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHdpZHRoOiAxJTtcbiAgfVxuICA+IC5idG4tZ3JvdXAgLmJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG4tZ3JvdXAgLmRyb3Bkb3duLW1lbnUge1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xuLy9cbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2Vcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxuXG5bZGF0YS10b2dnbGU9XCJidXR0b25zXCJdIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbiIsIi8vXG4vLyBJbnB1dCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEJhc2Ugc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBkcm9wZG93bnNcbiAgZGlzcGxheTogdGFibGU7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7IC8vIHByZXZlbnQgaW5wdXQgZ3JvdXBzIGZyb20gaW5oZXJpdGluZyBib3JkZXIgc3R5bGVzIGZyb20gdGFibGUgY2VsbHMgd2hlbiBwbGFjZWQgd2l0aGluIGEgdGFibGVcblxuICAvLyBVbmRvIHBhZGRpbmcgYW5kIGZsb2F0IG9mIGdyaWQgY2xhc3Nlc1xuICAmW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgLy8gRW5zdXJlIHRoYXQgdGhlIGlucHV0IGlzIGFsd2F5cyBhYm92ZSB0aGUgKmFwcGVuZGVkKiBhZGRvbiBidXR0b24gZm9yXG4gICAgLy8gcHJvcGVyIGJvcmRlciBjb2xvcnMuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAvLyBJRTkgZnViYXJzIHRoZSBwbGFjZWhvbGRlciBhdHRyaWJ1dGUgaW4gdGV4dCBpbnB1dHMgYW5kIHRoZSBhcnJvd3Mgb25cbiAgICAvLyBzZWxlY3QgZWxlbWVudHMgaW4gaW5wdXQgZ3JvdXBzLiBUbyBmaXggaXQsIHdlIGZsb2F0IHRoZSBpbnB1dC4gRGV0YWlsczpcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTYxI2lzc3VlY29tbWVudC0yODkzNjg1NVxuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBcbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuICB9XG59XG5cbi5pbnB1dC1ncm91cC5ob21lLXNlYXJjaHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIG1hcmdpbjogMHB4IDE1cHggMTVweCAxNXB4O1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLy8gU2l6aW5nIG9wdGlvbnNcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XG4gIEBleHRlbmQgLmlucHV0LWxnO1xufVxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHtcbiAgQGV4dGVuZCAuaW5wdXQtc207XG59XG5cblxuLy8gRGlzcGxheSBhcyB0YWJsZS1jZWxsXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtYnRuLFxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuXG4gICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuLy8gQWRkb24gYW5kIGFkZG9uIHdyYXBwZXIgZm9yIGJ1dHRvbnNcbi5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1idG4ge1xuICB3aWR0aDogMSU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIE1hdGNoIHRoZSBpbnB1dHNcbn1cblxuLy8gVGV4dCBpbnB1dCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5pbnB1dC1ncm91cC1hZGRvbiB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cztcblxuICAvLyBTaXppbmdcbiAgJi5pbnB1dC1zbSB7XG4gICAgcGFkZGluZzogJHBhZGRpbmctc21hbGwtdmVydGljYWwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw7XG4gIH1cbiAgJi5pbnB1dC1sZyB7XG4gICAgcGFkZGluZzogJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIH1cblxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuZHJvcGRvd24tdG9nZ2xlLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xufVxuLmlucHV0LWdyb3VwLWFkZG9uOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6bGFzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1hZGRvbjpsYXN0LWNoaWxkLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXAgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmRyb3Bkb3duLXRvZ2dsZSxcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuLmlucHV0LWdyb3VwLWFkZG9uOmxhc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLy8gQnV0dG9uIGlucHV0IGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmlucHV0LWdyb3VwLWJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gSmFua2lseSBwcmV2ZW50IGlucHV0IGJ1dHRvbiBncm91cHMgZnJvbSB3cmFwcGluZyB3aXRoIGB3aGl0ZS1zcGFjZWAgYW5kXG4gIC8vIGBmb250LXNpemVgIGluIGNvbWJpbmF0aW9uIHdpdGggYGlubGluZS1ibG9ja2Agb24gYnV0dG9ucy5cbiAgZm9udC1zaXplOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3Igc3BhY2luZywgcG9zaXRpb24gZm9yIGJyaW5naW5nIGhvdmVyZWQvZm9jdXNlZC9hY3RpdmVkXG4gIC8vIGVsZW1lbnQgYWJvdmUgdGhlIHNpYmxpbmdzLlxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICArIC5idG4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgfVxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gIH1cblxuICAvLyBOZWdhdGl2ZSBtYXJnaW4gdG8gb25seSBoYXZlIGEgMXB4IGJvcmRlciBiZXR3ZWVuIHRoZSB0d29cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgPiAuYnRuLFxuICAgID4gLmJ0bi1ncm91cCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgPiAuYnRuLFxuICAgID4gLmJ0bi1ncm91cCB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gTmF2c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubmF2IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IHVsL29sXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gID4gbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nO1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdGF0ZSBzZXRzIHRleHQgdG8gZ3JheSBhbmQgbnVrZXMgaG92ZXIvdGFiIGVmZmVjdHNcbiAgICAmLmRpc2FibGVkID4gYSB7XG4gICAgICBjb2xvcjogJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBPcGVuIGRyb3Bkb3duc1xuICAub3BlbiA+IGEge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtbGluay1ob3Zlci1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJGxpbmstY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gTmF2IGRpdmlkZXJzIChkZXByZWNhdGVkIHdpdGggdjMuMC4xKVxuICAvL1xuICAvLyBUaGlzIHNob3VsZCBoYXZlIGJlZW4gcmVtb3ZlZCBpbiB2MyB3aXRoIHRoZSBkcm9wcGluZyBvZiBgLm5hdi1saXN0YCwgYnV0XG4gIC8vIHdlIG1pc3NlZCBpdC4gV2UgZG9uJ3QgY3VycmVudGx5IHN1cHBvcnQgdGhpcyBhbnl3aGVyZSwgYnV0IGluIHRoZSBpbnRlcmVzdFxuICAvLyBvZiBtYWludGFpbmluZyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IGluIGNhc2UgeW91IHVzZSBpdCwgaXQncyBkZXByZWNhdGVkLlxuICAubmF2LWRpdmlkZXIge1xuICAgIEBpbmNsdWRlIG5hdi1kaXZpZGVyO1xuICB9XG5cbiAgLy8gUHJldmVudCBJRTggZnJvbSBtaXNwbGFjaW5nIGltZ3NcbiAgLy9cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2lzc3Vlcy85ODQjaXNzdWVjb21tZW50LTM5ODU5ODlcbiAgPiBsaSA+IGEgPiBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxufVxuXG5cbi8vIFRhYnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gR2l2ZSB0aGUgdGFicyBzb21ldGhpbmcgdG8gc2l0IG9uXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLy8gTWFrZSB0aGUgbGlzdC1pdGVtcyBvdmVybGF5IHRoZSBib3R0b20gYm9yZGVyXG4gICAgbWFyZ2luLWJvdHRvbTogLTFweDtcblxuICAgIC8vIEFjdHVhbCB0YWJzIChhcyBsaW5rcylcbiAgICA+IGEge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAwIDA7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlLCBhbmQgaXRzIDpob3ZlciB0byBvdmVycmlkZSBub3JtYWwgOmhvdmVyXG4gICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gcHVsbGluZyB0aGlzIGluIG1haW5seSBmb3IgbGVzcyBzaG9ydGhhbmRcbiAgJi5uYXYtanVzdGlmaWVkIHtcbiAgICBAZXh0ZW5kIC5uYXYtanVzdGlmaWVkO1xuICAgIEBleHRlbmQgLm5hdi10YWJzLWp1c3RpZmllZDtcbiAgfVxufVxuXG5cbi8vIFBpbGxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubmF2LXBpbGxzIHtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAvLyBMaW5rcyByZW5kZXJlZCBhcyBwaWxsc1xuICAgID4gYSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuICAgICsgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAmLmFjdGl2ZSA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gU3RhY2tlZCBwaWxsc1xuLm5hdi1zdGFja2VkIHtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgKyBsaSB7XG4gICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgLy8gbm8gbmVlZCBmb3IgdGhpcyBnYXAgYmV0d2VlbiBuYXYgaXRlbXNcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXYgdmFyaWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSnVzdGlmaWVkIG5hdiBsaW5rc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gbGkge1xuICAgIGZsb2F0OiBub25lO1xuICAgID4gYSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgfVxuICB9XG5cbiAgPiAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgPiBhIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gTW92ZSBib3JkZXJzIHRvIGFuY2hvcnMgaW5zdGVhZCBvZiBib3R0b20gb2YgbGlzdFxuLy9cbi8vIE1peGluIGZvciBhZGRpbmcgb24gdG9wIHRoZSBzaGFyZWQgYC5uYXYtanVzdGlmaWVkYCBzdHlsZXMgZm9yIG91ciB0YWJzXG4ubmF2LXRhYnMtanVzdGlmaWVkIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICA+IGxpID4gYSB7XG4gICAgLy8gT3ZlcnJpZGUgbWFyZ2luIGZyb20gLm5hdi10YWJzXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIH1cblxuICA+IC5hY3RpdmUgPiBhLFxuICA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuICA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhLFxuICAgID4gLmFjdGl2ZSA+IGE6aG92ZXIsXG4gICAgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5cbi8vIERyb3Bkb3duc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBTcGVjaWZpYyBkcm9wZG93bnNcbi5uYXYtdGFicyAuZHJvcGRvd24tbWVudSB7XG4gIC8vIG1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICBtYXJnaW4tdG9wOiAtMXB4O1xuICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbn1cbiIsIi8vXG4vLyBOYXZiYXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIFdyYXBwZXIgYW5kIGJhc2UgY2xhc3Ncbi8vXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXG5cbi5uYXZiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6ICRuYXZiYXItaGVpZ2h0OyAvLyBFbnN1cmUgYSBuYXZiYXIgYWx3YXlzIHNob3dzIChlLmcuLCB3aXRob3V0IGEgLm5hdmJhci1icmFuZCBpbiBjb2xsYXBzZWQgbW9kZSlcbiAgbWFyZ2luLWJvdHRvbTogJG5hdmJhci1tYXJnaW4tYm90dG9tO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAvLyBQcmV2ZW50IGZsb2F0cyBmcm9tIGJyZWFraW5nIHRoZSBuYXZiYXJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkbmF2YmFyLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgaGVhZGluZ1xuLy9cbi8vIEdyb3VwcyBgLm5hdmJhci1icmFuZGAgYW5kIGAubmF2YmFyLXRvZ2dsZWAgaW50byBhIHNpbmdsZSBjb21wb25lbnQgZm9yIGVhc3lcbi8vIHN0eWxpbmcgb2YgcmVzcG9uc2l2ZSBhc3BlY3RzLlxuXG4ubmF2YmFyLWhlYWRlciB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgY29sbGFwc2UgKGJvZHkpXG4vL1xuLy8gR3JvdXAgeW91ciBuYXZiYXIgY29udGVudCBpbnRvIHRoaXMgZm9yIGVhc3kgY29sbGFwc2luZyBhbmQgZXhwYW5kaW5nIGFjcm9zc1xuLy8gdmFyaW91cyBkZXZpY2Ugc2l6ZXMuIEJ5IGRlZmF1bHQsIHRoaXMgY29udGVudCBpcyBjb2xsYXBzZWQgd2hlbiA8NzY4cHgsIGJ1dFxuLy8gd2lsbCBleHBhbmQgcGFzdCB0aGF0IGZvciBhIGhvcml6b250YWwgZGlzcGxheS5cbi8vXG4vLyBUbyBzdGFydCAob24gbW9iaWxlIGRldmljZXMpIHRoZSBuYXZiYXIgbGlua3MsIGZvcm1zLCBhbmQgYnV0dG9ucyBhcmUgc3RhY2tlZFxuLy8gdmVydGljYWxseSBhbmQgaW5jbHVkZSBhIGBtYXgtaGVpZ2h0YCB0byBvdmVyZmxvdyBpbiBjYXNlIHlvdSBoYXZlIHRvbyBtdWNoXG4vLyBjb250ZW50IGZvciB0aGUgdXNlcidzIHZpZXdwb3J0LlxuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgb3ZlcmZsb3cteDogdmlzaWJsZTtcbiAgcGFkZGluZy1yaWdodDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIHBhZGRpbmctbGVmdDogICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSk7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgJi5pbiB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBzZXR0aW5nXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYuaW4ge1xuICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAvLyBVbmRvIHRoZSBjb2xsYXBzZSBzaWRlIHBhZGRpbmcgZm9yIG5hdmJhcnMgd2l0aCBjb250YWluZXJzIHRvIGVuc3VyZVxuICAgIC8vIGFsaWdubWVudCBvZiByaWdodC1hbGlnbmVkIGNvbnRlbnRzLlxuICAgIC5uYXZiYXItZml4ZWQtdG9wICYsXG4gICAgLm5hdmJhci1zdGF0aWMtdG9wICYsXG4gICAgLm5hdmJhci1maXhlZC1ib3R0b20gJiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4ubmF2YmFyLWZpeGVkLXRvcCxcbi5uYXZiYXItZml4ZWQtYm90dG9tIHtcbiAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgbWF4LWhlaWdodDogJG5hdmJhci1jb2xsYXBzZS1tYXgtaGVpZ2h0O1xuXG4gICAgQG1lZGlhIChtYXgtZGV2aWNlLXdpZHRoOiAkc2NyZWVuLXhzLW1pbikgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICBtYXgtaGVpZ2h0OiAyMDBweDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCb3RoIG5hdmJhciBoZWFkZXIgYW5kIGNvbGxhcHNlXG4vL1xuLy8gV2hlbiBhIGNvbnRhaW5lciBpcyBwcmVzZW50LCBjaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIHRoZSBoZWFkZXIgYW5kIGNvbGxhcHNlLlxuXG4uY29udGFpbmVyLFxuLmNvbnRhaW5lci1mbHVpZCB7XG4gID4gLm5hdmJhci1oZWFkZXIsXG4gID4gLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgbWFyZ2luLWxlZnQ6ICAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6ICAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBOYXZiYXIgYWxpZ25tZW50IG9wdGlvbnNcbi8vXG4vLyBEaXNwbGF5IHRoZSBuYXZiYXIgYWNyb3NzIHRoZSBlbnRpcmV0eSBvZiB0aGUgcGFnZSBvciBmaXhlZCBpdCB0byB0aGUgdG9wIG9yXG4vLyBib3R0b20gb2YgdGhlIHBhZ2UuXG5cbi8vIFN0YXRpYyB0b3AgKHVuZml4ZWQsIGJ1dCAxMDAlIHdpZGUpIG5hdmJhclxuLm5hdmJhci1zdGF0aWMtdG9wIHtcbiAgei1pbmRleDogJHppbmRleC1uYXZiYXI7XG4gIGJvcmRlci13aWR0aDogMCAwIDFweDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLy8gRml4IHRoZSB0b3AvYm90dG9tIG5hdmJhcnMgd2hlbiBzY3JlZW4gcmVhbCBlc3RhdGUgc3VwcG9ydHMgaXRcbi5uYXZiYXItZml4ZWQtdG9wLFxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW5hdmJhci1maXhlZDtcblxuICAvLyBVbmRvIHRoZSByb3VuZGVkIGNvcm5lcnNcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG4ubmF2YmFyLWZpeGVkLXRvcCB7XG4gIHRvcDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4O1xufVxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xuICBib3R0b206IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG92ZXJyaWRlIC5uYXZiYXIgZGVmYXVsdHNcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwO1xufVxuXG5cbi8vIEJyYW5kL3Byb2plY3QgbmFtZVxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6ICRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbCAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBoZWlnaHQ6ICRuYXZiYXItaGVpZ2h0O1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gID4gaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgLm5hdmJhciA+IC5jb250YWluZXIgJixcbiAgICAubmF2YmFyID4gLmNvbnRhaW5lci1mbHVpZCAmIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIHRvZ2dsZVxuLy9cbi8vIEN1c3RvbSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBgLm5hdmJhci1jb2xsYXBzZWAsIHBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlXG4vLyBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLm5hdmJhci10b2dnbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgcGFkZGluZzogOXB4IDEwcHg7XG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigzNHB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgLy8gV2UgcmVtb3ZlIHRoZSBgb3V0bGluZWAgaGVyZSwgYnV0IGxhdGVyIGNvbXBlbnNhdGUgYnkgYXR0YWNoaW5nIGA6aG92ZXJgXG4gIC8vIHN0eWxlcyB0byBgOmZvY3VzYC5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gIC8vIEJhcnNcbiAgLmljb24tYmFyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMjJweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7XG4gIH1cbiAgLmljb24tYmFyICsgLmljb24tYmFyIHtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2IGxpbmtzXG4vL1xuLy8gQnVpbGRzIG9uIHRvcCBvZiB0aGUgYC5uYXZgIGNvbXBvbmVudHMgd2l0aCBpdHMgb3duIG1vZGlmaWVyIGNsYXNzIHRvIG1ha2Vcbi8vIHRoZSBuYXYgdGhlIGZ1bGwgaGVpZ2h0IG9mIHRoZSBob3Jpem9udGFsIG5hdiAoYWJvdmUgNzY4cHgpLlxuXG4ubmF2YmFyLW5hdiB7XG4gIG1hcmdpbjogKCRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbCAvIDIpICgtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWwpO1xuXG4gID4gbGkgPiBhIHtcbiAgICBwYWRkaW5nLXRvcDogICAgMTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheSB3aGVuIGNvbGxhcHNlZFxuICAgIC5vcGVuIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgID4gbGkgPiBhLFxuICAgICAgLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICAgIHBhZGRpbmc6IDVweCAxNXB4IDVweCAyNXB4O1xuICAgICAgfVxuICAgICAgPiBsaSA+IGEge1xuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVW5jb2xsYXBzZSB0aGUgbmF2XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgPiBsaSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgID4gYSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAgICAkbmF2YmFyLXBhZGRpbmctdmVydGljYWw7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLXBhZGRpbmctdmVydGljYWw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIGZvcm1cbi8vXG4vLyBFeHRlbnNpb24gb2YgdGhlIGAuZm9ybS1pbmxpbmVgIHdpdGggc29tZSBleHRyYSBmbGF2b3IgZm9yIG9wdGltdW0gZGlzcGxheSBpblxuLy8gb3VyIG5hdmJhcnMuXG5cbi5uYXZiYXItZm9ybSB7XG4gIG1hcmdpbi1sZWZ0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIG1hcmdpbi1yaWdodDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBwYWRkaW5nOiAxMHB4ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgJHNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKSwgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkc2hhZG93KTtcblxuICAvLyBNaXhpbiBiZWhhdmlvciBmb3Igb3B0aW11bSBkaXNwbGF5XG4gIEBpbmNsdWRlIGZvcm0taW5saW5lO1xuXG4gIC5mb3JtLWdyb3VwIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWZXJ0aWNhbGx5IGNlbnRlciBpbiBleHBhbmRlZCwgaG9yaXpvbnRhbCBuYXZiYXJcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRpbnB1dC1oZWlnaHQtYmFzZSk7XG5cbiAgLy8gVW5kbyAxMDAlIHdpZHRoIGZvciBwdWxsIGNsYXNzZXNcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vLyBEcm9wZG93biBtZW51c1xuXG4vLyBNZW51IHBvc2l0aW9uIGFuZCBtZW51IGNhcmV0c1xuLm5hdmJhci1uYXYgPiBsaSA+IC5kcm9wZG93bi1tZW51IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG59XG4vLyBNZW51IHBvc2l0aW9uIGFuZCBtZW51IGNhcmV0IHN1cHBvcnQgZm9yIGRyb3B1cHMgdmlhIGV4dHJhIGRyb3B1cCBjbGFzc1xuLm5hdmJhci1maXhlZC1ib3R0b20gLm5hdmJhci1uYXYgPiBsaSA+IC5kcm9wZG93bi1tZW51IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG5hdmJhci1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG59XG5cblxuLy8gQnV0dG9ucyBpbiBuYXZiYXJzXG4vL1xuLy8gVmVydGljYWxseSBjZW50ZXIgYSBidXR0b24gd2l0aGluIGEgbmF2YmFyICh3aGVuICpub3QqIGluIGEgZm9ybSkuXG5cbi5uYXZiYXItYnRuIHtcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRpbnB1dC1oZWlnaHQtYmFzZSk7XG5cbiAgJi5idG4tc20ge1xuICAgIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkaW5wdXQtaGVpZ2h0LXNtYWxsKTtcbiAgfVxuICAmLmJ0bi14cyB7XG4gICAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKDIyKTtcbiAgfVxufVxuXG5cbi8vIFRleHQgaW4gbmF2YmFyc1xuLy9cbi8vIEFkZCBhIGNsYXNzIHRvIG1ha2UgYW55IGVsZW1lbnQgcHJvcGVybHkgYWxpZ24gaXRzZWxmIHZlcnRpY2FsbHkgd2l0aGluIHRoZSBuYXZiYXJzLlxuXG4ubmF2YmFyLXRleHQge1xuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICB9XG59XG5cblxuLy8gQ29tcG9uZW50IGFsaWdubWVudFxuLy9cbi8vIFJlcHVycG9zZSB0aGUgcHVsbCB1dGlsaXRpZXMgYXMgdGhlaXIgb3duIG5hdmJhciB1dGlsaXRpZXMgdG8gYXZvaWQgc3BlY2lmaWNpdHlcbi8vIGlzc3VlcyB3aXRoIHBhcmVudHMgYW5kIGNoYWluaW5nLiBPbmx5IGRvIHRoaXMgd2hlbiB0aGUgbmF2YmFyIGlzIHVuY29sbGFwc2VkXG4vLyB0aG91Z2ggc28gdGhhdCBuYXZiYXIgY29udGVudHMgcHJvcGVybHkgc3RhY2sgYW5kIGFsaWduIGluIG1vYmlsZS5cbi8vXG4vLyBEZWNsYXJlZCBhZnRlciB0aGUgbmF2YmFyIGNvbXBvbmVudHMgdG8gZW5zdXJlIG1vcmUgc3BlY2lmaWNpdHkgb24gdGhlIG1hcmdpbnMuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gIC5uYXZiYXItbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuICAubmF2YmFyLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG5cbiAgICB+IC5uYXZiYXItcmlnaHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBuYXZiYXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBEZWZhdWx0IG5hdmJhclxuLm5hdmJhci1kZWZhdWx0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJnO1xuICBib3JkZXItY29sb3I6ICRuYXZiYXItZGVmYXVsdC1ib3JkZXI7XG5cbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1iZztcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtY29sb3I7XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICAgID4gLmFjdGl2ZSA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ob3Zlci1iZztcbiAgICB9XG4gICAgLmljb24tYmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC10b2dnbGUtaWNvbi1iYXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1jb2xsYXBzZSxcbiAgLm5hdmJhci1mb3JtIHtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGVmYXVsdC1ib3JkZXI7XG4gIH1cblxuICAvLyBEcm9wZG93biBtZW51IGl0ZW1zXG4gIC5uYXZiYXItbmF2IHtcbiAgICAvLyBSZW1vdmUgYmFja2dyb3VuZCBjb2xvciBmcm9tIG9wZW4gZHJvcGRvd25cbiAgICA+IC5vcGVuID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgICAvLyBEcm9wZG93bnMgZ2V0IGN1c3RvbSBkaXNwbGF5IHdoZW4gY29sbGFwc2VkXG4gICAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLy8gTGlua3MgaW4gbmF2YmFyc1xuICAvL1xuICAvLyBBZGQgYSBjbGFzcyB0byBlbnN1cmUgbGlua3Mgb3V0c2lkZSB0aGUgbmF2YmFyIG5hdiBhcmUgY29sb3JlZCBjb3JyZWN0bHkuXG5cbiAgLm5hdmJhci1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gICAgJltkaXNhYmxlZF0sXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEludmVyc2UgbmF2YmFyXG5cbi5uYXZiYXItaW52ZXJzZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1iZztcbiAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYm9yZGVyO1xuXG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gRGFya2VuIHRoZSByZXNwb25zaXZlIG5hdiB0b2dnbGVcbiAgLm5hdmJhci10b2dnbGUge1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ib3JkZXItY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc7XG4gICAgfVxuICAgIC5pY29uLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtdG9nZ2xlLWljb24tYmFyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItY29sbGFwc2UsXG4gIC5uYXZiYXItZm9ybSB7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCA3JSk7XG4gIH1cblxuICAvLyBEcm9wZG93bnNcbiAgLm5hdmJhci1uYXYge1xuICAgID4gLm9wZW4gPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZztcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcbiAgICAgIC8vIERyb3Bkb3ducyBnZXQgY3VzdG9tIGRpc3BsYXlcbiAgICAgIC5vcGVuIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgPiAuZHJvcGRvd24taGVhZGVyIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRuYXZiYXItaW52ZXJzZS1ib3JkZXI7XG4gICAgICAgIH1cbiAgICAgICAgLmRpdmlkZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1ib3JkZXI7XG4gICAgICAgIH1cbiAgICAgICAgPiBsaSA+IGEge1xuICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gLmFjdGl2ZSA+IGEge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gLmRpc2FibGVkID4gYSB7XG4gICAgICAgICAgJixcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gICAgJltkaXNhYmxlZF0sXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBOYXZiYXIgdmVydGljYWwgYWxpZ25cbi8vXG4vLyBWZXJ0aWNhbGx5IGNlbnRlciBlbGVtZW50cyBpbiB0aGUgbmF2YmFyLlxuLy8gRXhhbXBsZTogYW4gZWxlbWVudCBoYXMgYSBoZWlnaHQgb2YgMzBweCwgc28gd3JpdGUgb3V0IGAubmF2YmFyLXZlcnRpY2FsLWFsaWduKDMwcHgpO2AgdG8gY2FsY3VsYXRlIHRoZSBhcHByb3ByaWF0ZSB0b3AgbWFyZ2luLlxuXG5AbWl4aW4gbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRlbGVtZW50LWhlaWdodCkge1xuICBtYXJnaW4tdG9wOiAoKCRuYXZiYXItaGVpZ2h0IC0gJGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAoKCRuYXZiYXItaGVpZ2h0IC0gJGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xufVxuIiwiLy9cbi8vIEJyZWFkY3J1bWJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5icmVhZGNydW1iIHtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy12ZXJ0aWNhbCAkYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgKyBsaTpiZWZvcmUge1xuICAgICAgLy8gW2NvbnZlcnRlcl0gV29ya2Fyb3VuZCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MvbGlic2Fzcy9pc3N1ZXMvMTExNVxuICAgICAgJG5ic3A6IFwiXFwwMGEwXCI7XG4gICAgICBjb250ZW50OiBcIiN7JGJyZWFkY3J1bWItc2VwYXJhdG9yfSN7JG5ic3B9XCI7IC8vIFVuaWNvZGUgc3BhY2UgYWRkZWQgc2luY2UgaW5saW5lLWJsb2NrIG1lYW5zIG5vbi1jb2xsYXBzaW5nIHdoaXRlLXNwYWNlXG4gICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1jb2xvcjtcbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XG4gIH1cbn1cbiIsIi8vXG4vLyBQYWdpbmF0aW9uIChtdWx0aXBsZSBwYWdlcylcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46ICRsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZTsgLy8gUmVtb3ZlIGxpc3Qtc3R5bGUgYW5kIGJsb2NrLWxldmVsIGRlZmF1bHRzXG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gQ29sbGFwc2Ugd2hpdGUtc3BhY2VcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXI7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IGxpID4gYSxcbiAgPiBsaSA+IHNwYW4ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjtcbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUgPiBhLFxuICA+IC5hY3RpdmUgPiBzcGFuIHtcbiAgICAmLFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG4gIH1cblxuICA+IC5kaXNhYmxlZCB7XG4gICAgPiBzcGFuLFxuICAgID4gc3Bhbjpob3ZlcixcbiAgICA+IHNwYW46Zm9jdXMsXG4gICAgPiBhLFxuICAgID4gYTpob3ZlcixcbiAgICA+IGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc7XG4gICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjtcbiAgICAgIGN1cnNvcjpkZWZhdWx0O1xuICAgIH1cbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIExhcmdlXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1sYXJnZSwgJGxpbmUtaGVpZ2h0LWxhcmdlLCAkYm9yZGVyLXJhZGl1cy1sYXJnZSk7XG59XG5cbi8vIFNtYWxsXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG59XG4iLCIvLyBQYWdpbmF0aW9uXG5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgPiBsaSB7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gUGFnZXIgcGFnaW5hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4ucGFnZXIge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiA1cHggMTRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdlci1iZztcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRwYWdlci1ib3JkZXI7XG4gICAgICBib3JkZXItcmFkaXVzOiAkcGFnZXItYm9yZGVyLXJhZGl1cztcbiAgICB9XG5cbiAgICA+IGE6aG92ZXIsXG4gICAgPiBhOmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdlci1ob3Zlci1iZztcbiAgICB9XG4gIH1cblxuICAubmV4dCB7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLnByZXZpb3VzIHtcbiAgICA+IGEsXG4gICAgPiBzcGFuIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgfVxuXG4gIC5kaXNhYmxlZCB7XG4gICAgPiBhLFxuICAgID4gYTpob3ZlcixcbiAgICA+IGE6Zm9jdXMsXG4gICAgPiBzcGFuIHtcbiAgICAgIGNvbG9yOiAkcGFnZXItZGlzYWJsZWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZXItYmc7XG4gICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gTGFiZWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHBhZGRpbmc6IC4yZW0gLjZlbSAuM2VtO1xuICBmb250LXNpemU6IDc1JTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGxhYmVsLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYm9yZGVyLXJhZGl1czogLjI1ZW07XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEubGFiZWxcblxuICAvLyBFbXB0eSBsYWJlbHMgY29sbGFwc2UgYXV0b21hdGljYWxseSAobm90IGF2YWlsYWJsZSBpbiBJRTgpXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBRdWljayBmaXggZm9yIGxhYmVscyBpbiBidXR0b25zXG4gIC5idG4gJiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTFweDtcbiAgfVxufVxuXG4vLyBBZGQgaG92ZXIgZWZmZWN0cywgYnV0IG9ubHkgZm9yIGxpbmtzXG5hLmxhYmVsIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRsYWJlbC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLy8gQ29sb3JzXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnMgKGxpbmtlZCBsYWJlbHMgZ2V0IGRhcmtlciBvbiA6aG92ZXIpXG5cbi5sYWJlbC1kZWZhdWx0IHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtZGVmYXVsdC1iZyk7XG59XG5cbi5sYWJlbC1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtcHJpbWFyeS1iZyk7XG59XG5cbi5sYWJlbC1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtc3VjY2Vzcy1iZyk7XG59XG5cbi5sYWJlbC1pbmZvIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtaW5mby1iZyk7XG59XG5cbi5sYWJlbC13YXJuaW5nIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtd2FybmluZy1iZyk7XG59XG5cbi5sYWJlbC1kYW5nZXIge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1kYW5nZXItYmcpO1xufVxuIiwiLy8gTGFiZWxzXG5cbkBtaXhpbiBsYWJlbC12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgJltocmVmXSB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFkZ2VzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAxMHB4O1xuICBwYWRkaW5nOiAzcHggN3B4O1xuICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkYmFkZ2UtY29sb3I7XG4gIGxpbmUtaGVpZ2h0OiAkYmFkZ2UtbGluZS1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhZGdlLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYmFkZ2UtYm9yZGVyLXJhZGl1cztcblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseSAobm90IGF2YWlsYWJsZSBpbiBJRTgpXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXG4gIC5idG4gJiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTFweDtcbiAgfVxuXG4gIC5idG4teHMgJixcbiAgLmJ0bi1ncm91cC14cyA+IC5idG4gJiB7XG4gICAgdG9wOiAwO1xuICAgIHBhZGRpbmc6IDFweCA1cHg7XG4gIH1cblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYgdG8gYS5iYWRnZVxuXG4gIC8vIEFjY291bnQgZm9yIGJhZGdlcyBpbiBuYXZzXG4gIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlID4gJixcbiAgLm5hdi1waWxscyA+IC5hY3RpdmUgPiBhID4gJiB7XG4gICAgY29sb3I6ICRiYWRnZS1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhZGdlLWFjdGl2ZS1iZztcbiAgfVxuXG4gIC5saXN0LWdyb3VwLWl0ZW0gPiAmIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cblxuICAubGlzdC1ncm91cC1pdGVtID4gJiArICYge1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICB9XG5cbiAgLm5hdi1waWxscyA+IGxpID4gYSA+ICYge1xuICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gIH1cbn1cblxuLy8gSG92ZXIgc3RhdGUsIGJ1dCBvbmx5IGZvciBsaW5rc1xuYS5iYWRnZSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkYmFkZ2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4iLCIvL1xuLy8gSnVtYm90cm9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5qdW1ib3Ryb24ge1xuICBwYWRkaW5nLXRvcDogICAgJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAkanVtYm90cm9uLXBhZGRpbmc7XG4gIGNvbG9yOiAkanVtYm90cm9uLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkanVtYm90cm9uLWJnO1xuXG4gIGgxLFxuICAuaDEge1xuICAgIGNvbG9yOiAkanVtYm90cm9uLWhlYWRpbmctY29sb3I7XG4gIH1cblxuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAoJGp1bWJvdHJvbi1wYWRkaW5nIC8gMik7XG4gICAgZm9udC1zaXplOiAkanVtYm90cm9uLWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogMjAwO1xuICB9XG5cbiAgPiBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRqdW1ib3Ryb24tYmcsIDEwJSk7XG4gIH1cblxuICAuY29udGFpbmVyICYsXG4gIC5jb250YWluZXItZmx1aWQgJiB7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7IC8vIE9ubHkgcm91bmQgY29ybmVycyBhdCBoaWdoZXIgcmVzb2x1dGlvbnMgaWYgY29udGFpbmVkIGluIGEgY29udGFpbmVyXG4gICAgcGFkZGluZy1sZWZ0OiAgKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICAgIHBhZGRpbmctcmlnaHQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgfVxuXG4gIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcGFkZGluZy10b3A6ICAgICgkanVtYm90cm9uLXBhZGRpbmcgKiAxLjYpO1xuICAgIHBhZGRpbmctYm90dG9tOiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMS42KTtcblxuICAgIC5jb250YWluZXIgJixcbiAgICAuY29udGFpbmVyLWZsdWlkICYge1xuICAgICAgcGFkZGluZy1sZWZ0OiAgKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpO1xuICAgICAgcGFkZGluZy1yaWdodDogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpO1xuICAgIH1cblxuICAgIGgxLFxuICAgIC5oMSB7XG4gICAgICBmb250LXNpemU6ICRqdW1ib3Ryb24taGVhZGluZy1mb250LXNpemU7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gVGh1bWJuYWlsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBNaXhpbiBhbmQgYWRqdXN0IHRoZSByZWd1bGFyIGltYWdlIGNsYXNzXG4udGh1bWJuYWlsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR0aHVtYm5haWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYm9yZGVyIC4ycyBlYXNlLWluLW91dCk7XG5cbiAgPiBpbWcsXG4gIGEgPiBpbWcge1xuICAgIEBpbmNsdWRlIGltZy1yZXNwb25zaXZlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJjpob3ZlciwgYSY6Zm9jdXMsIGEmLmFjdGl2ZSB0byBhLnRodW1ibmFpbDpob3ZlciwgYS50aHVtYm5haWw6Zm9jdXMsIGEudGh1bWJuYWlsLmFjdGl2ZVxuXG4gIC8vIEltYWdlIGNhcHRpb25zXG4gIC5jYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAkdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZztcbiAgICBjb2xvcjogJHRodW1ibmFpbC1jYXB0aW9uLWNvbG9yO1xuICB9XG59XG5cbi8vIEFkZCBhIGhvdmVyIHN0YXRlIGZvciBsaW5rZWQgdmVyc2lvbnMgb25seVxuYS50aHVtYm5haWw6aG92ZXIsXG5hLnRodW1ibmFpbDpmb2N1cyxcbmEudGh1bWJuYWlsLmFjdGl2ZSB7XG4gIGJvcmRlci1jb2xvcjogJGxpbmstY29sb3I7XG59XG4iLCIvL1xuLy8gQWxlcnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2Ugc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5hbGVydCB7XG4gIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAkYWxlcnQtYm9yZGVyLXJhZGl1cztcblxuICAvLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xuICBoNCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICAvLyBTcGVjaWZpZWQgZm9yIHRoZSBoNCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4gIC5hbGVydC1saW5rIHtcbiAgICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG4gIH1cblxuICAvLyBJbXByb3ZlIGFsaWdubWVudCBhbmQgc3BhY2luZyBvZiBpbm5lciBjb250ZW50XG4gID4gcCxcbiAgPiB1bCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gID4gcCArIHAge1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgfVxufVxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NhYmxlLCAvLyBUaGUgbWlzc3BlbGxlZCAuYWxlcnQtZGlzbWlzc2FibGUgd2FzIGRlcHJlY2F0ZWQgaW4gMy4yLjAuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAoJGFsZXJ0LXBhZGRpbmcgKyAyMCk7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMnB4O1xuICAgIHJpZ2h0OiAtMjFweDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBBbHRlcm5hdGUgc3R5bGVzXG4vL1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydC5cblxuLmFsZXJ0LXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1zdWNjZXNzLWJnLCAkYWxlcnQtc3VjY2Vzcy1ib3JkZXIsICRhbGVydC1zdWNjZXNzLXRleHQpO1xufVxuXG4uYWxlcnQtaW5mbyB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LWluZm8tYmcsICRhbGVydC1pbmZvLWJvcmRlciwgJGFsZXJ0LWluZm8tdGV4dCk7XG59XG5cbi5hbGVydC13YXJuaW5nIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtd2FybmluZy1iZywgJGFsZXJ0LXdhcm5pbmctYm9yZGVyLCAkYWxlcnQtd2FybmluZy10ZXh0KTtcbn1cblxuLmFsZXJ0LWRhbmdlciB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LWRhbmdlci1iZywgJGFsZXJ0LWRhbmdlci1ib3JkZXIsICRhbGVydC1kYW5nZXItdGV4dCk7XG59XG5cblxuXG4vL2N1c3RvbVxuLmFsZXJ0LmFsZXJ0LWRhbmdlci5jdXN0b20tYWxlcnR7XG4gIG1hcmdpbi1ib3R0b206MHB4O1xuICBwYWRkaW5nOiAxMHB4O1xufVxuIiwiLy8gQWxlcnRzXG5cbkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkdGV4dC1jb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJHRleHQtY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vXG4vLyBQcm9ncmVzcyBiYXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhciBhbmltYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFdlYktpdFxuQC13ZWJraXQta2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgZnJvbSAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0MHB4IDA7IH1cbiAgdG8gICAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbn1cblxuLy8gU3BlYyBhbmQgSUUxMCtcbkBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tICB7IGJhY2tncm91bmQtcG9zaXRpb246IDQwcHggMDsgfVxuICB0byAgICB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxufVxuXG5cbi8vIEJhciBpdHNlbGZcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gT3V0ZXIgY29udGFpbmVyXG4ucHJvZ3Jlc3Mge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRwcm9ncmVzcy1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLC4xKSk7XG59XG5cbi8vIEJhciBvZiBwcm9ncmVzc1xuLnByb2dyZXNzLWJhciB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBjb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWJnO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgLTFweCAwIHJnYmEoMCwwLDAsLjE1KSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24od2lkdGggLjZzIGVhc2UpO1xufVxuXG4vLyBTdHJpcGVkIGJhcnNcbi8vXG4vLyBgLnByb2dyZXNzLXN0cmlwZWQgLnByb2dyZXNzLWJhcmAgaXMgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgaW4gZmF2b3Igb2YgdGhlXG4vLyBgLnByb2dyZXNzLWJhci1zdHJpcGVkYCBjbGFzcywgd2hpY2ggeW91IGp1c3QgYWRkIHRvIGFuIGV4aXN0aW5nXG4vLyBgLnByb2dyZXNzLWJhcmAuXG4ucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyLFxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZDtcbiAgYmFja2dyb3VuZC1zaXplOiA0MHB4IDQwcHg7XG59XG5cbi8vIENhbGwgYW5pbWF0aW9uIGZvciB0aGUgYWN0aXZlIG9uZVxuLy9cbi8vIGAucHJvZ3Jlc3MuYWN0aXZlIC5wcm9ncmVzcy1iYXJgIGlzIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGluIGZhdm9yIG9mIHRoZVxuLy8gYC5wcm9ncmVzcy1iYXIuYWN0aXZlYCBhcHByb2FjaC5cbi5wcm9ncmVzcy5hY3RpdmUgLnByb2dyZXNzLWJhcixcbi5wcm9ncmVzcy1iYXIuYWN0aXZlIHtcbiAgQGluY2x1ZGUgYW5pbWF0aW9uKHByb2dyZXNzLWJhci1zdHJpcGVzIDJzIGxpbmVhciBpbmZpbml0ZSk7XG59XG5cblxuLy8gVmFyaWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ucHJvZ3Jlc3MtYmFyLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCgkcHJvZ3Jlc3MtYmFyLXN1Y2Nlc3MtYmcpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLWluZm8ge1xuICBAaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCgkcHJvZ3Jlc3MtYmFyLWluZm8tYmcpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXdhcm5pbmcge1xuICBAaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCgkcHJvZ3Jlc3MtYmFyLXdhcm5pbmctYmcpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLWRhbmdlciB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnKTtcbn1cbiIsIi8vIEdyYWRpZW50c1xuXG5cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXG5AbWl4aW4gZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93blxufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0wKTsgLy8gSUU5IGFuZCBkb3duXG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xufVxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0xKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcbn1cbkBtaXhpbiBncmFkaWVudC12ZXJ0aWNhbC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogIzU1NSwgJG91dGVyLWNvbG9yOiAjMzMzKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCIvLyBQcm9ncmVzcyBiYXJzXG5cbkBtaXhpbiBwcm9ncmVzcy1iYXItdmFyaWFudCgkY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gIC8vIERlcHJlY2F0ZWQgcGFyZW50IGNsYXNzIHJlcXVpcmVtZW50IGFzIG9mIHYzLjIuMFxuICAucHJvZ3Jlc3Mtc3RyaXBlZCAmIHtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkO1xuICB9XG59XG4iLCIubWVkaWEge1xuICAvLyBQcm9wZXIgc3BhY2luZyBiZXR3ZWVuIGluc3RhbmNlcyBvZiAubWVkaWFcbiAgbWFyZ2luLXRvcDogMTVweDtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5tZWRpYSxcbi5tZWRpYS1ib2R5IHtcbiAgem9vbTogMTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm1lZGlhLWJvZHkge1xuICB3aWR0aDogMTAwMDBweDtcbn1cblxuLm1lZGlhLW9iamVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIC8vIEZpeCBjb2xsYXBzZSBpbiB3ZWJraXQgZnJvbSBtYXgtd2lkdGg6IDEwMCUgYW5kIGRpc3BsYXk6IHRhYmxlLWNlbGwuXG4gICYuaW1nLXRodW1ibmFpbCB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5cbi5tZWRpYS1yaWdodCxcbi5tZWRpYSA+IC5wdWxsLXJpZ2h0IHtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xufVxuXG4ubWVkaWEtbGVmdCxcbi5tZWRpYSA+IC5wdWxsLWxlZnQge1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuXG4ubWVkaWEtbGVmdCxcbi5tZWRpYS1yaWdodCxcbi5tZWRpYS1ib2R5IHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLm1lZGlhLW1pZGRsZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5tZWRpYS1ib3R0b20ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIGhlYWRpbmdzIGZvciB0aWdodGVyIGRlZmF1bHQgc3BhY2luZ1xuLm1lZGlhLWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi8vIE1lZGlhIGxpc3QgdmFyaWF0aW9uXG4vL1xuLy8gVW5kbyBkZWZhdWx0IHVsL29sIHN0eWxlc1xuLm1lZGlhLWxpc3Qge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvL1xuLy8gTGlzdCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIC8vIFBsYWNlIHRoZSBib3JkZXIgb24gdGhlIGxpc3QgaXRlbXMgYW5kIG5lZ2F0aXZlIG1hcmdpbiB1cCBmb3IgYmV0dGVyIHN0eWxpbmdcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRsaXN0LWdyb3VwLWJvcmRlcjtcblxuICAvLyBSb3VuZCB0aGUgZmlyc3QgYW5kIGxhc3QgaXRlbXNcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG59XG5cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZSBpdGVtcy5cbi8vIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2hvd2luZyBzZWxlY3RlZCBpdGVtcy5cblxuYS5saXN0LWdyb3VwLWl0ZW0sXG5idXR0b24ubGlzdC1ncm91cC1pdGVtIHtcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWxpbmstY29sb3I7XG5cbiAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtbGluay1oZWFkaW5nLWNvbG9yO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG59XG5cbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0ge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICYuZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQ6aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG5cbiAgICAvLyBGb3JjZSBjb2xvciB0byBpbmhlcml0IGZvciBjdXN0b20gY29udGVudFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFjdGl2ZSBjbGFzcyBvbiBpdGVtIGl0c2VsZiwgbm90IHBhcmVudFxuICAmLmFjdGl2ZSxcbiAgJi5hY3RpdmU6aG92ZXIsXG4gICYuYWN0aXZlOmZvY3VzIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjtcblxuICAgIC8vIEZvcmNlIGNvbG9yIHRvIGluaGVyaXQgZm9yIGN1c3RvbSBjb250ZW50XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IHNtYWxsLFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IC5zbWFsbCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KHN1Y2Nlc3MsICRzdGF0ZS1zdWNjZXNzLWJnLCAkc3RhdGUtc3VjY2Vzcy10ZXh0KTtcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KGluZm8sICRzdGF0ZS1pbmZvLWJnLCAkc3RhdGUtaW5mby10ZXh0KTtcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KHdhcm5pbmcsICRzdGF0ZS13YXJuaW5nLWJnLCAkc3RhdGUtd2FybmluZy10ZXh0KTtcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KGRhbmdlciwgJHN0YXRlLWRhbmdlci1iZywgJHN0YXRlLWRhbmdlci10ZXh0KTtcblxuXG4vLyBDdXN0b20gY29udGVudCBvcHRpb25zXG4vL1xuLy8gRXh0cmEgY2xhc3NlcyBmb3IgY3JlYXRpbmcgd2VsbC1mb3JtYXR0ZWQgY29udGVudCB3aXRoaW4gYC5saXN0LWdyb3VwLWl0ZW1gcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYsIGJ1dHRvbiYgdG8gYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9LCBidXR0b24ubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfVxuICB9XG5cbiAgYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9LFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cbiAgICAmLmFjdGl2ZSxcbiAgICAmLmFjdGl2ZTpob3ZlcixcbiAgICAmLmFjdGl2ZTpmb2N1cyB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFBhbmVsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4ucGFuZWwge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRwYW5lbC1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNSkpO1xufVxuXG4vLyBQYW5lbCBjb250ZW50c1xuLnBhbmVsLWJvZHkge1xuICBwYWRkaW5nOiAkcGFuZWwtYm9keS1wYWRkaW5nO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gT3B0aW9uYWwgaGVhZGluZ1xuLnBhbmVsLWhlYWRpbmcge1xuICBwYWRkaW5nOiAkcGFuZWwtaGVhZGluZy1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcblxuICA+IC5kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBXaXRoaW4gaGVhZGluZywgc3RyaXAgYW55IGBoKmAgdGFnIG9mIGl0cyBkZWZhdWx0IG1hcmdpbnMgZm9yIHNwYWNpbmcuXG4ucGFuZWwtdGl0bGUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMTI1KSk7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gID4gYSxcbiAgPiBzbWFsbCxcbiAgPiAuc21hbGwsXG4gID4gc21hbGwgPiBhLFxuICA+IC5zbWFsbCA+IGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIE9wdGlvbmFsIGZvb3RlciAoc3RheXMgZ3JheSBpbiBldmVyeSBtb2RpZmllciBjbGFzcylcbi5wYW5lbC1mb290ZXIge1xuICBwYWRkaW5nOiAkcGFuZWwtZm9vdGVyLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1mb290ZXItYmc7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkcGFuZWwtaW5uZXItYm9yZGVyO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG59XG5cblxuLy8gTGlzdCBncm91cHMgaW4gcGFuZWxzXG4vL1xuLy8gQnkgZGVmYXVsdCwgc3BhY2Ugb3V0IGxpc3QgZ3JvdXAgY29udGVudCBmcm9tIHBhbmVsIGhlYWRpbmdzIHRvIGFjY291bnQgZm9yXG4vLyBhbnkga2luZCBvZiBjdXN0b20gY29udGVudCBiZXR3ZWVuIHRoZSB0d28uXG5cbi5wYW5lbCB7XG4gID4gLmxpc3QtZ3JvdXAsXG4gID4gLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFkZCBib3JkZXIgYm90dG9tIHJhZGl1cyBmb3IgbGFzdCBvbmVcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IC5wYW5lbC1oZWFkaW5nICsgLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG59XG4vLyBDb2xsYXBzZSBzcGFjZSBiZXR3ZWVuIHdoZW4gdGhlcmUncyBubyBhZGRpdGlvbmFsIGNvbnRlbnQuXG4ucGFuZWwtaGVhZGluZyArIC5saXN0LWdyb3VwIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxufVxuLmxpc3QtZ3JvdXAgKyAucGFuZWwtZm9vdGVyIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbn1cblxuLy8gVGFibGVzIGluIHBhbmVsc1xuLy9cbi8vIFBsYWNlIGEgbm9uLWJvcmRlcmVkIGAudGFibGVgIHdpdGhpbiBhIHBhbmVsIChub3Qgd2l0aGluIGEgYC5wYW5lbC1ib2R5YCkgYW5kXG4vLyB3YXRjaCBpdCBnbyBmdWxsIHdpZHRoLlxuXG4ucGFuZWwge1xuICA+IC50YWJsZSxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSxcbiAgPiAucGFuZWwtY29sbGFwc2UgPiAudGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBjYXB0aW9uIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJHBhbmVsLWJvZHktcGFkZGluZztcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYW5lbC1ib2R5LXBhZGRpbmc7XG4gICAgfVxuICB9XG4gIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXG4gID4gLnRhYmxlOmZpcnN0LWNoaWxkLFxuICA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG5cbiAgICA+IHRoZWFkOmZpcnN0LWNoaWxkLFxuICAgID4gdGJvZHk6Zmlyc3QtY2hpbGQge1xuICAgICAgPiB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG5cbiAgICAgICAgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgICAgIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgfVxuICAgICAgICB0ZDpsYXN0LWNoaWxkLFxuICAgICAgICB0aDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gQWRkIGJvcmRlciBib3R0b20gcmFkaXVzIGZvciBsYXN0IG9uZVxuICA+IC50YWJsZTpsYXN0LWNoaWxkLFxuICA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuXG4gICAgPiB0Ym9keTpsYXN0LWNoaWxkLFxuICAgID4gdGZvb3Q6bGFzdC1jaGlsZCB7XG4gICAgICA+IHRyOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuXG4gICAgICAgIHRkOmZpcnN0LWNoaWxkLFxuICAgICAgICB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgICAgdGQ6bGFzdC1jaGlsZCxcbiAgICAgICAgdGg6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gLnBhbmVsLWJvZHkgKyAudGFibGUsXG4gID4gLnBhbmVsLWJvZHkgKyAudGFibGUtcmVzcG9uc2l2ZSxcbiAgPiAudGFibGUgKyAucGFuZWwtYm9keSxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSArIC5wYW5lbC1ib2R5IHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuICA+IC50YWJsZSA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGgsXG4gID4gLnRhYmxlID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxuICA+IC50YWJsZS1ib3JkZXJlZCxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICAgID4gdGhlYWQsXG4gICAgPiB0Ym9keSxcbiAgICA+IHRmb290IHtcbiAgICAgID4gdHIge1xuICAgICAgICA+IHRoOmZpcnN0LWNoaWxkLFxuICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgICA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgID4gdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gdGhlYWQsXG4gICAgPiB0Ym9keSB7XG4gICAgICA+IHRyOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICA+IHRib2R5LFxuICAgID4gdGZvb3Qge1xuICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5cbi8vIENvbGxhcHNhYmxlIHBhbmVscyAoYWthLCBhY2NvcmRpb24pXG4vL1xuLy8gV3JhcCBhIHNlcmllcyBvZiBwYW5lbHMgaW4gYC5wYW5lbC1ncm91cGAgdG8gdHVybiB0aGVtIGludG8gYW4gYWNjb3JkaW9uIHdpdGhcbi8vIHRoZSBoZWxwIG9mIG91ciBjb2xsYXBzZSBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLnBhbmVsLWdyb3VwIHtcbiAgLy9tYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbjogMHB4IDE1cHg7XG5cbiAgLy8gVGlnaHRlbiB1cCBtYXJnaW4gc28gaXQncyBvbmx5IGJldHdlZW4gcGFuZWxzXG4gIC5wYW5lbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkcGFuZWwtYm9yZGVyLXJhZGl1cztcblxuICAgICsgLnBhbmVsIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICB9XG4gIH1cblxuICAucGFuZWwtaGVhZGluZyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHksXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHBhbmVsLWlubmVyLWJvcmRlcjtcbiAgICB9XG4gIH1cblxuICAucGFuZWwtZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgICsgLnBhbmVsLWNvbGxhcHNlIC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcGFuZWwtaW5uZXItYm9yZGVyO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWF0aW9uc1xuLnBhbmVsLWRlZmF1bHQge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1kZWZhdWx0LWJvcmRlciwgJHBhbmVsLWRlZmF1bHQtdGV4dCwgJHBhbmVsLWRlZmF1bHQtaGVhZGluZy1iZywgJHBhbmVsLWRlZmF1bHQtYm9yZGVyKTtcbn1cbi5wYW5lbC1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtcHJpbWFyeS1ib3JkZXIsICRwYW5lbC1wcmltYXJ5LXRleHQsICRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmcsICRwYW5lbC1wcmltYXJ5LWJvcmRlcik7XG59XG4ucGFuZWwtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyLCAkcGFuZWwtc3VjY2Vzcy10ZXh0LCAkcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnLCAkcGFuZWwtc3VjY2Vzcy1ib3JkZXIpO1xufVxuLnBhbmVsLWluZm8ge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1pbmZvLWJvcmRlciwgJHBhbmVsLWluZm8tdGV4dCwgJHBhbmVsLWluZm8taGVhZGluZy1iZywgJHBhbmVsLWluZm8tYm9yZGVyKTtcbn1cbi5wYW5lbC13YXJuaW5nIHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtd2FybmluZy1ib3JkZXIsICRwYW5lbC13YXJuaW5nLXRleHQsICRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmcsICRwYW5lbC13YXJuaW5nLWJvcmRlcik7XG59XG4ucGFuZWwtZGFuZ2VyIHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtZGFuZ2VyLWJvcmRlciwgJHBhbmVsLWRhbmdlci10ZXh0LCAkcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmcsICRwYW5lbC1kYW5nZXItYm9yZGVyKTtcbn1cblxuLnBhbmVsLnBhbmVsLWRlZmF1bHQucGFuZWwtYW5hZ3JhcGgge1xuICBtYXJnaW46IDBweCAxNXB4O1xufVxuXG4ucGFuZWwucGFuZWwtZGVmYXVsdC5wYW5lbC13aWRnZXR7XG4gIG1hcmdpbi1sZWZ0OjE1cHg7XG4gIG1hcmdpbi1yaWdodDoxNXB4O1xuICBtYXJnaW4tYm90dG9tOjE1cHg7XG59XG4iLCIvLyBQYW5lbHNcblxuQG1peGluIHBhbmVsLXZhcmlhbnQoJGJvcmRlciwgJGhlYWRpbmctdGV4dC1jb2xvciwgJGhlYWRpbmctYmctY29sb3IsICRoZWFkaW5nLWJvcmRlcikge1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJiA+IC5wYW5lbC1oZWFkaW5nIHtcbiAgICBjb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRoZWFkaW5nLWJvcmRlcjtcblxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgfVxuICB9XG4gICYgPiAucGFuZWwtZm9vdGVyIHtcbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG59XG4iLCIvLyBFbWJlZHMgcmVzcG9uc2l2ZVxuLy9cbi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3QsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLy8gTW9kaWZpZXIgY2xhc3MgZm9yIDE2OjkgYXNwZWN0IHJhdGlvXG4uZW1iZWQtcmVzcG9uc2l2ZS0xNmJ5OSB7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi8vIE1vZGlmaWVyIGNsYXNzIGZvciA0OjMgYXNwZWN0IHJhdGlvXG4uZW1iZWQtcmVzcG9uc2l2ZS00YnkzIHtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbn1cbiIsIi8vXG4vLyBXZWxsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4ud2VsbCB7XG4gIG1pbi1oZWlnaHQ6IDIwcHg7XG4gIHBhZGRpbmc6IDE5cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3ZWxsLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkd2VsbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA1KSk7XG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlci1jb2xvcjogI2RkZDtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsLjE1KTtcbiAgfVxufVxuXG4vLyBTaXplc1xuLndlbGwtbGcge1xuICBwYWRkaW5nOiAyNHB4O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbn1cbi53ZWxsLXNtIHtcbiAgcGFkZGluZzogOXB4O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcbn1cbiIsIi8vXG4vLyBDbG9zZSBpY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIGZvbnQtd2VpZ2h0OiAkY2xvc2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICB0ZXh0LXNoYWRvdzogJGNsb3NlLXRleHQtc2hhZG93O1xuICBAaW5jbHVkZSBvcGFjaXR5KC4yKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgQGluY2x1ZGUgb3BhY2l0eSguNSk7XG4gIH1cblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYnV0dG9uJiB0byBidXR0b24uY2xvc2Vcbn1cblxuLy8gQWRkaXRpb25hbCBwcm9wZXJ0aWVzIGZvciBidXR0b24gdmVyc2lvblxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG4iLCIvL1xuLy8gTW9kYWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc2hpdFxuXG4vLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbi5tb2RhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBkaXNwbGF5OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gICYuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMCwgLTI1JSk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi10cmFuc2Zvcm0oMC4zcyBlYXNlLW91dCk7XG4gIH1cbiAgJi5pbiAubW9kYWwtZGlhbG9nIHsgQGluY2x1ZGUgdHJhbnNsYXRlKDAsIDApIH1cbn1cbi5tb2RhbC1vcGVuIC5tb2RhbCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAxMHB4O1xufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOyAvL29sZCBicm93c2VycyBmYWxsYmFjayAoaWU4IGV0YylcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDNweCA5cHggcmdiYSgwLDAsMCwuNSkpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IEBpbmNsdWRlIG9wYWNpdHkoMCk7IH1cbiAgJi5pbiB7IEBpbmNsdWRlIG9wYWNpdHkoJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkpOyB9XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgcGFkZGluZzogJG1vZGFsLXRpdGxlLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG4vLyBDbG9zZSBpY29uXG4ubW9kYWwtaGVhZGVyIC5jbG9zZSB7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyAvLyByaWdodCBhbGlnbiBidXR0b25zXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7IC8vIGNsZWFyIGl0IGluIGNhc2UgZm9sa3MgdXNlIC5wdWxsLSogY2xhc3NlcyBvbiBidXR0b25zXG5cbiAgLy8gUHJvcGVybHkgc3BhY2Ugb3V0IGJ1dHRvbnNcbiAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gYWNjb3VudCBmb3IgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB3aGljaCBnZXRzIHRoZSBib3R0b20gbWFyZ2luIGxpa2UgYWxsIG90aGVyIGlucHV0c1xuICB9XG4gIC8vIGJ1dCBvdmVycmlkZSB0aGF0IGZvciBidXR0b24gZ3JvdXBzXG4gIC5idG4tZ3JvdXAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG4gIC8vIGFuZCBvdmVycmlkZSBpdCBmb3IgYmxvY2sgYnV0dG9ucyBhcyB3ZWxsXG4gIC5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIHdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG87XG4gIH1cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCA1cHggMTVweCByZ2JhKDAsMCwwLC41KSk7XG4gIH1cblxuICAvLyBNb2RhbCBzaXplc1xuICAubW9kYWwtc20geyB3aWR0aDogJG1vZGFsLXNtOyB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAubW9kYWwtbGcgeyB3aWR0aDogJG1vZGFsLWxnOyB9XG59XG4iLCIvL1xuLy8gVG9vbHRpcHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuXG4gIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG5cbiAgJi5pbiAgICAgeyBAaW5jbHVkZSBvcGFjaXR5KCR0b29sdGlwLW9wYWNpdHkpOyB9XG4gICYudG9wICAgIHsgbWFyZ2luLXRvcDogIC0zcHg7IHBhZGRpbmc6ICR0b29sdGlwLWFycm93LXdpZHRoIDA7IH1cbiAgJi5yaWdodCAgeyBtYXJnaW4tbGVmdDogIDNweDsgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy13aWR0aDsgfVxuICAmLmJvdHRvbSB7IG1hcmdpbi10b3A6ICAgM3B4OyBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwOyB9XG4gICYubGVmdCAgIHsgbWFyZ2luLWxlZnQ6IC0zcHg7IHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGg7IH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogM3B4IDhweDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xufVxuXG4vLyBBcnJvd3Ncbi50b29sdGlwLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xufVxuLy8gTm90ZTogRGVwcmVjYXRlZCAudG9wLWxlZnQsIC50b3AtcmlnaHQsIC5ib3R0b20tbGVmdCwgYW5kIC5ib3R0b20tcmlnaHQgYXMgb2YgdjMuMy4xXG4udG9vbHRpcCB7XG4gICYudG9wIC50b29sdGlwLWFycm93IHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYudG9wLWxlZnQgLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWJvdHRvbTogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLnRvcC1yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1ib3R0b206IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmJvdHRvbSAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmJvdHRvbS1sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5ib3R0b20tcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCgpIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZS5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cbiIsIi8vXG4vLyBQb3BvdmVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4ucG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1heC13aWR0aDogJHBvcG92ZXItbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAxcHg7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHBvcG92ZXJzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyOiAxcHggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDVweCAxMHB4IHJnYmEoMCwwLDAsLjIpKTtcblxuICAvLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbiAgJi50b3AgICAgIHsgbWFyZ2luLXRvcDogLSRwb3BvdmVyLWFycm93LXdpZHRoOyB9XG4gICYucmlnaHQgICB7IG1hcmdpbi1sZWZ0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxuICAmLmJvdHRvbSAgeyBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxuICAmLmxlZnQgICAgeyBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoOyB9XG59XG5cbi5wb3BvdmVyLXRpdGxlIHtcbiAgbWFyZ2luOiAwOyAvLyByZXNldCBoZWFkaW5nIG1hcmdpblxuICBwYWRkaW5nOiA4cHggMTRweDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLXRpdGxlLWJnO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2VuKCRwb3BvdmVyLXRpdGxlLWJnLCA1JSk7XG4gIGJvcmRlci1yYWRpdXM6ICgkYm9yZGVyLXJhZGl1cy1sYXJnZSAtIDEpICgkYm9yZGVyLXJhZGl1cy1sYXJnZSAtIDEpIDAgMDtcbn1cblxuLnBvcG92ZXItY29udGVudCB7XG4gIHBhZGRpbmc6IDlweCAxNHB4O1xufVxuXG4vLyBBcnJvd3Ncbi8vXG4vLyAuYXJyb3cgaXMgb3V0ZXIsIC5hcnJvdzphZnRlciBpcyBpbm5lclxuXG4ucG9wb3ZlciA+IC5hcnJvdyB7XG4gICYsXG4gICY6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICB9XG59XG4ucG9wb3ZlciA+IC5hcnJvdyB7XG4gIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG59XG4ucG9wb3ZlciA+IC5hcnJvdzphZnRlciB7XG4gIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5wb3BvdmVyIHtcbiAgJi50b3AgPiAuYXJyb3cge1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIGJvdHRvbTogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBib3R0b206IDFweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG4gICYucmlnaHQgPiAuYXJyb3cge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBtYXJnaW4tdG9wOiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjsgLy8gSUU4IGZhbGxiYWNrXG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgbGVmdDogMXB4O1xuICAgICAgYm90dG9tOiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG4gICYuYm90dG9tID4gLmFycm93IHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOyAvLyBJRTggZmFsbGJhY2tcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB0b3A6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgdG9wOiAxcHg7XG4gICAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICYubGVmdCA+IC5hcnJvdyB7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBtYXJnaW4tdG9wOiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjsgLy8gSUU4IGZhbGxiYWNrXG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICByaWdodDogMXB4O1xuICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgICAgYm90dG9tOiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQ2Fyb3VzZWxcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gV3JhcHBlciBmb3IgdGhlIHNsaWRlIGNvbnRhaW5lciBhbmQgaW5kaWNhdG9yc1xuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLml0ZW0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oLjZzIGVhc2UtaW4tb3V0IGxlZnQpO1xuXG4gICAgLy8gQWNjb3VudCBmb3IgamFua2l0dWRlIG9uIGltYWdlc1xuICAgID4gaW1nLFxuICAgID4gYSA+IGltZyB7XG4gICAgICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cblxuICAgIC8vIFdlYktpdCBDU1MzIHRyYW5zZm9ybXMgZm9yIHN1cHBvcnRlZCBkZXZpY2VzXG4gICAgQG1lZGlhIGFsbCBhbmQgKHRyYW5zZm9ybS0zZCksICgtd2Via2l0LXRyYW5zZm9ybS0zZCkge1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi10cmFuc2Zvcm0oMC42cyBlYXNlLWluLW91dCk7XG4gICAgICBAaW5jbHVkZSBiYWNrZmFjZS12aXNpYmlsaXR5KGhpZGRlbik7XG4gICAgICBAaW5jbHVkZSBwZXJzcGVjdGl2ZSgxMDAwcHgpO1xuXG4gICAgICAmLm5leHQsXG4gICAgICAmLmFjdGl2ZS5yaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgICAgJi5wcmV2LFxuICAgICAgJi5hY3RpdmUubGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICAgICYubmV4dC5sZWZ0LFxuICAgICAgJi5wcmV2LnJpZ2h0LFxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUsXG4gID4gLm5leHQsXG4gID4gLnByZXYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgPiAuYWN0aXZlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgPiAubmV4dCxcbiAgPiAucHJldiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLm5leHQge1xuICAgIGxlZnQ6IDEwMCU7XG4gIH1cbiAgPiAucHJldiB7XG4gICAgbGVmdDogLTEwMCU7XG4gIH1cbiAgPiAubmV4dC5sZWZ0LFxuICA+IC5wcmV2LnJpZ2h0IHtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgPiAuYWN0aXZlLmxlZnQge1xuICAgIGxlZnQ6IC0xMDAlO1xuICB9XG4gID4gLmFjdGl2ZS5yaWdodCB7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuXG59XG5cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5jYXJvdXNlbC1jb250cm9sIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBAaW5jbHVkZSBvcGFjaXR5KCRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHkpO1xuICBmb250LXNpemU6ICRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtc2hhZG93OiAkY2Fyb3VzZWwtdGV4dC1zaGFkb3c7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7IC8vIEZpeCBJRTkgY2xpY2stdGhydSBidWdcbiAgLy8gV2UgY2FuJ3QgaGF2ZSB0aGlzIHRyYW5zaXRpb24gaGVyZSBiZWNhdXNlIFdlYktpdCBjYW5jZWxzIHRoZSBjYXJvdXNlbFxuICAvLyBhbmltYXRpb24gaWYgeW91IHRyaXAgdGhpcyB3aGlsZSBpbiB0aGUgbWlkZGxlIG9mIGFub3RoZXIgYW5pbWF0aW9uLlxuXG4gIC8vIFNldCBncmFkaWVudHMgZm9yIGJhY2tncm91bmRzXG4gICYubGVmdCB7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6IHJnYmEoMCwwLDAsLjUpLCAkZW5kLWNvbG9yOiByZ2JhKDAsMCwwLC4wMDAxKSk7XG4gIH1cbiAgJi5yaWdodCB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogcmdiYSgwLDAsMCwuMDAwMSksICRlbmQtY29sb3I6IHJnYmEoMCwwLDAsLjUpKTtcbiAgfVxuXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC45KTtcbiAgfVxuXG4gIC8vIFRvZ2dsZXNcbiAgLmljb24tcHJldixcbiAgLmljb24tbmV4dCxcbiAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXG4gIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5pY29uLXByZXYsXG4gIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0IHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICB9XG4gIC5pY29uLW5leHQsXG4gIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCB7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICB9XG4gIC5pY29uLXByZXYsXG4gIC5pY29uLW5leHQge1xuICAgIHdpZHRoOiAgMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1mYW1pbHk6IHNlcmlmO1xuICB9XG5cblxuICAuaWNvbi1wcmV2IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDM5JzsvLyBTSU5HTEUgTEVGVC1QT0lOVElORyBBTkdMRSBRVU9UQVRJT04gTUFSSyAoVSsyMDM5KVxuICAgIH1cbiAgfVxuICAuaWNvbi1uZXh0IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDNhJzsvLyBTSU5HTEUgUklHSFQtUE9JTlRJTkcgQU5HTEUgUVVPVEFUSU9OIE1BUksgKFUrMjAzQSlcbiAgICB9XG4gIH1cbn1cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHNcbi8vXG4vLyBBZGQgYW4gdW5vcmRlcmVkIGxpc3Qgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYSBsaXN0IGl0ZW0gZm9yIGVhY2hcbi8vIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgei1pbmRleDogMTU7XG4gIHdpZHRoOiA2MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzAlO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAgMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgbWFyZ2luOiAxcHg7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIC8vIElFOC05IGhhY2sgZm9yIGV2ZW50IGhhbmRsaW5nXG4gICAgLy9cbiAgICAvLyBJbnRlcm5ldCBFeHBsb3JlciA4LTkgZG9lcyBub3Qgc3VwcG9ydCBjbGlja3Mgb24gZWxlbWVudHMgd2l0aG91dCBhIHNldFxuICAgIC8vIGBiYWNrZ3JvdW5kLWNvbG9yYC4gV2UgY2Fubm90IHVzZSBgZmlsdGVyYCBzaW5jZSB0aGF0J3Mgbm90IHZpZXdlZCBhcyBhXG4gICAgLy8gYmFja2dyb3VuZCBjb2xvciBieSB0aGUgYnJvd3Nlci4gVGh1cywgYSBoYWNrIGlzIG5lZWRlZC5cbiAgICAvLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI0ludGVybmV0X0V4cGxvcmVyXG4gICAgLy9cbiAgICAvLyBGb3IgSUU4LCB3ZSBzZXQgc29saWQgYmxhY2sgYXMgaXQgZG9lc24ndCBzdXBwb3J0IGByZ2JhKClgLiBGb3IgSUU5LCB3ZVxuICAgIC8vIHNldCBhbHBoYSB0cmFuc3BhcmVuY3kgZm9yIHRoZSBiZXN0IHJlc3VsdHMgcG9zc2libGUuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMCBcXDk7IC8vIElFOFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMCk7IC8vIElFOVxuICB9XG4gIC5hY3RpdmUge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogIDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICB9XG59XG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSGlkZGVuIGJ5IGRlZmF1bHQgZm9yIHNtYWxsZXIgdmlld3BvcnRzXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMTUlO1xuICByaWdodDogMTUlO1xuICBib3R0b206IDIwcHg7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXNoYWRvdzogJGNhcm91c2VsLXRleHQtc2hhZG93O1xuICAmIC5idG4ge1xuICAgIHRleHQtc2hhZG93OiBub25lOyAvLyBObyBzaGFkb3cgZm9yIGJ1dHRvbiBlbGVtZW50cyBpbiBjYXJvdXNlbC1jYXB0aW9uXG4gIH1cbn1cblxuXG4vLyBTY2FsZSB1cCBjb250cm9scyBmb3IgdGFibGV0cyBhbmQgdXBcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG5cbiAgLy8gU2NhbGUgdXAgdGhlIGNvbnRyb2xzIGEgc21pZGdlXG4gIC5jYXJvdXNlbC1jb250cm9sIHtcbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCxcbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQsXG4gICAgLmljb24tcHJldixcbiAgICAuaWNvbi1uZXh0IHtcbiAgICAgIHdpZHRoOiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplICogMS41KTtcbiAgICAgIGhlaWdodDogKCRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZSAqIDEuNSk7XG4gICAgICBtYXJnaW4tdG9wOiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplIC8gLTIpO1xuICAgICAgZm9udC1zaXplOiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplICogMS41KTtcbiAgICB9XG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXG4gICAgLmljb24tcHJldiB7XG4gICAgICBtYXJnaW4tbGVmdDogKCRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZSAvIC0yKTtcbiAgICB9XG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxuICAgIC5pY29uLW5leHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplIC8gLTIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNob3cgYW5kIGxlZnQgYWxpZ24gdGhlIGNhcHRpb25zXG4gIC5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgICBsZWZ0OiAyMCU7XG4gICAgcmlnaHQ6IDIwJTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIC8vIE1vdmUgdXAgdGhlIGluZGljYXRvcnNcbiAgLmNhcm91c2VsLWluZGljYXRvcnMge1xuICAgIGJvdHRvbTogMjBweDtcbiAgfVxufVxuIiwiLy9cbi8vIFV0aWxpdHkgY2xhc3Nlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBGbG9hdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmNsZWFyZml4IHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG4uY2VudGVyLWJsb2NrIHtcbiAgQGluY2x1ZGUgY2VudGVyLWJsb2NrO1xufVxuLnB1bGwtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cbi5wdWxsLWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIFRvZ2dsaW5nIGNvbnRlbnRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gTm90ZTogRGVwcmVjYXRlZCAuaGlkZSBpbiBmYXZvciBvZiAuaGlkZGVuIG9yIC5zci1vbmx5IChhcyBhcHByb3ByaWF0ZSkgaW4gdjMuMC4xXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5zaG93IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlO1xufVxuXG5cbi8vIEhpZGUgZnJvbSBzY3JlZW5yZWFkZXJzIGFuZCBicm93c2Vyc1xuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuXG4vLyBGb3IgQWZmaXggcGx1Z2luXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5hZmZpeCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cbiIsIi8vIENlbnRlci1hbGlnbiBhIGJsb2NrIGxldmVsIGVsZW1lbnRcblxuQG1peGluIGNlbnRlci1ibG9jaygpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbi8vXG4vLyBIZWFkcyB1cCEgdjMgbGF1bmNoZWQgd2l0aCBvbmx5IGAuaGlkZS10ZXh0KClgLCBidXQgcGVyIG91ciBwYXR0ZXJuIGZvclxuLy8gbWl4aW5zIGJlaW5nIHJldXNlZCBhcyBjbGFzc2VzIHdpdGggdGhlIHNhbWUgbmFtZSwgdGhpcyBkb2Vzbid0IGhvbGQgdXAuIEFzXG4vLyBvZiB2My4wLjEgd2UgaGF2ZSBhZGRlZCBgLnRleHQtaGlkZSgpYCBhbmQgZGVwcmVjYXRlZCBgLmhpZGUtdGV4dCgpYC5cbi8vXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2NvbW1pdC9hYTAzOTZlYWU3NTdcblxuLy8gRGVwcmVjYXRlZCBhcyBvZiB2My4wLjEgKGhhcyBiZWVuIHJlbW92ZWQgaW4gdjQpXG5AbWl4aW4gaGlkZS10ZXh0KCkge1xuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gTmV3IG1peGluIHRvIHVzZSBhcyBvZiB2My4wLjFcbkBtaXhpbiB0ZXh0LWhpZGUoKSB7XG4gIEBpbmNsdWRlIGhpZGUtdGV4dDtcbn1cbiIsIi8vXG4vLyBSZXNwb25zaXZlOiBVdGlsaXR5IGNsYXNzZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSUUxMCBpbiBXaW5kb3dzIChQaG9uZSkgOFxuLy9cbi8vIFN1cHBvcnQgZm9yIHJlc3BvbnNpdmUgdmlld3MgdmlhIG1lZGlhIHF1ZXJpZXMgaXMga2luZCBvZiBib3JrZWQgaW4gSUUxMCwgZm9yXG4vLyBTdXJmYWNlL2Rlc2t0b3AgaW4gc3BsaXQgdmlldyBhbmQgZm9yIFdpbmRvd3MgUGhvbmUgOC4gVGhpcyBwYXJ0aWN1bGFyIGZpeFxuLy8gbXVzdCBiZSBhY2NvbXBhbmllZCBieSBhIHNuaXBwZXQgb2YgSmF2YVNjcmlwdCB0byBzbmlmZiB0aGUgdXNlciBhZ2VudCBhbmRcbi8vIGFwcGx5IHNvbWUgY29uZGl0aW9uYWwgQ1NTIHRvICpvbmx5KiB0aGUgU3VyZmFjZS9kZXNrdG9wIFdpbmRvd3MgOC4gTG9vayBhdFxuLy8gb3VyIEdldHRpbmcgU3RhcnRlZCBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIG9uIHRoaXMgYnVnLlxuLy9cbi8vIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIGZvbGxvd2luZzpcbi8vXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMDQ5N1xuLy8gRG9jczogaHR0cDovL2dldGJvb3RzdHJhcC5jb20vZ2V0dGluZy1zdGFydGVkLyNzdXBwb3J0LWllMTAtd2lkdGhcbi8vIFNvdXJjZTogaHR0cDovL3RpbWthZGxlYy5jb20vMjAxMy8wMS93aW5kb3dzLXBob25lLTgtYW5kLWRldmljZS13aWR0aC9cbi8vIFNvdXJjZTogaHR0cDovL3RpbWthZGxlYy5jb20vMjAxMi8xMC9pZTEwLXNuYXAtbW9kZS1hbmQtcmVzcG9uc2l2ZS1kZXNpZ24vXG5cbkBhdC1yb290IHtcbiAgQC1tcy12aWV3cG9ydCB7XG4gICAgd2lkdGg6IGRldmljZS13aWR0aDtcbiAgfVxufVxuXG5cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXhzLCAudmlzaWJsZS1zbSwgLnZpc2libGUtbWQsIGFuZCAudmlzaWJsZS1sZyBhcyBvZiB2My4yLjBcblxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXhzJyk7XG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtc20nKTtcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1tZCcpO1xuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLWxnJyk7XG5cbi52aXNpYmxlLXhzLWJsb2NrLFxuLnZpc2libGUteHMtaW5saW5lLFxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtc20tYmxvY2ssXG4udmlzaWJsZS1zbS1pbmxpbmUsXG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1tZC1ibG9jayxcbi52aXNpYmxlLW1kLWlubGluZSxcbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayxcbi52aXNpYmxlLWxnLWJsb2NrLFxuLnZpc2libGUtbGctaW5saW5lLFxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS14cycpO1xufVxuLnZpc2libGUteHMtYmxvY2sge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS14cy1pbmxpbmUge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1zbScpO1xufVxuLnZpc2libGUtc20tYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXNtLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1tZCcpO1xufVxuLnZpc2libGUtbWQtYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLW1kLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcbn1cbi52aXNpYmxlLWxnLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbGctaW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi14cycpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1zbScpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1tZCcpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tbGcnKTtcbn1cblxuXG4vLyBQcmludCB1dGlsaXRpZXNcbi8vXG4vLyBNZWRpYSBxdWVyaWVzIGFyZSBwbGFjZWQgb24gdGhlIGluc2lkZSB0byBiZSBtaXhpbi1mcmllbmRseS5cblxuLy8gTm90ZTogRGVwcmVjYXRlZCAudmlzaWJsZS1wcmludCBhcyBvZiB2My4yLjBcblxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXByaW50Jyk7XG5cbkBtZWRpYSBwcmludCB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtcHJpbnQnKTtcbn1cbi52aXNpYmxlLXByaW50LWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQtaW5saW5lIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXByaW50LWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXByaW50Jyk7XG59XG4iLCIvLyBSZXNwb25zaXZlIHV0aWxpdGllc1xuXG4vL1xuLy8gTW9yZSBlYXNpbHkgaW5jbHVkZSBhbGwgdGhlIHN0YXRlcyBmb3IgcmVzcG9uc2l2ZS11dGlsaXRpZXMubGVzcy5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgkcGFyZW50KSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGFibGUjeyRwYXJlbnR9ICB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdHIjeyRwYXJlbnR9ICAgICB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRoI3skcGFyZW50fSxcbiAgdGQjeyRwYXJlbnR9ICAgICB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxufVxuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiByZXNwb25zaXZlLWludmlzaWJpbGl0eSgkcGFyZW50KSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIl19 */

body {
  text-rendering: optimizeLegibility !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important; }

::-moz-selection {
  background: #1C7EBB;
  color: #fff; }

::selection {
  background: #1C7EBB;
  color: #fff; }

::-moz-selection {
  background: #1C7EBB;
  color: #fff; }

a {
  text-decoration: none; }
  a:active, a:focus {
    text-decoration: none;
    outline: none !important; }

span.block {
  display: block; }

.no-margin {
  margin: 0; }

.no-border {
  border: 0; }

a.bg-primary {
  background-color: #1C7EBB;
  color: #fff; }
  a.bg-primary:hover, a.bg-primary:focus {
    background-color: #1C7EBB;
    color: #fff; }

a.bg-success {
  background-color: #23AE89;
  color: #fff; }
  a.bg-success:hover, a.bg-success:focus {
    background-color: #23AE89;
    color: #fff; }

a.bg-info {
  background-color: #2EC1CC;
  color: #fff; }
  a.bg-info:hover, a.bg-info:focus {
    background-color: #2EC1CC;
    color: #fff; }

a.bg-warning {
  background-color: #FFB61C;
  color: #fff; }
  a.bg-warning:hover, a.bg-warning:focus {
    background-color: #FFB61C;
    color: #fff; }

a.bg-danger {
  background-color: #E94B3B;
  color: #fff; }
  a.bg-danger:hover, a.bg-danger:focus {
    background-color: #E94B3B;
    color: #fff; }

a.bg-orange {
  background-color: #F98E33;
  color: #fff; }
  a.bg-orange:hover, a.bg-orange:focus {
    background-color: #F98E33;
    color: #fff; }

.bg-white {
  background-color: #fff;
  color: #767676; }
  .bg-white a {
    color: #767676; }
    .bg-white a:hover {
      color: #767676; }

.bg-body {
  background-color: #f3f3f3;
  color: #767676; }
  .bg-body a {
    color: #767676; }
    .bg-body a:hover {
      color: #767676; }

.bg-dark {
  background-color: #222533;
  color: #fff; }
  .bg-dark a {
    color: #fff; }
    .bg-dark a:hover {
      color: #fff; }

.bg-dark-light {
  background-color: #3D3F51;
  color: #fff; }
  .bg-dark-light a {
    color: #fff; }
    .bg-dark-light a:hover {
      color: #fff; }

.bg-black {
  background-color: #000;
  color: #fff; }
  .bg-black a {
    color: #fff; }
    .bg-black a:hover {
      color: #fff; }

.bg-primary {
  background-color: #1C7EBB;
  color: #fff; }
  .bg-primary a {
    color: #fff; }
    .bg-primary a:hover {
      color: #fff; }

.bg-primary-light {
  background-color: #449DD5;
  color: #fff; }
  .bg-primary-light a {
    color: #fff; }
    .bg-primary-light a:hover {
      color: #fff; }

.bg-success {
  background-color: #23AE89;
  color: #fff; }
  .bg-success a {
    color: #fff; }
    .bg-success a:hover {
      color: #fff; }

.bg-reverberi {
  background-color: #1C7EBB;
  color: #fff; }
  .bg-reverberi a {
    color: #fff; }
    .bg-reverberi a:hover {
      color: #fff; }

.bg-info {
  background-color: #2EC1CC;
  color: #fff; }
  .bg-info a {
    color: #fff; }
    .bg-info a:hover {
      color: #fff; }

.bg-info-alt {
  background-color: #6A55C2;
  color: #fff; }
  .bg-info-alt a {
    color: #fff; }
    .bg-info-alt a:hover {
      color: #fff; }

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

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

.bg-orange {
  background-color: #F98E33;
  color: #fff; }
  .bg-orange a {
    color: #fff; }
    .bg-orange a:hover {
      color: #fff; }

.bg-violet {
  background-color: #6A55C2;
  color: #fff; }
  .bg-violet a {
    color: #fff; }
    .bg-violet a:hover {
      color: #fff; }

.bg-dark {
  background-color: #222533;
  color: #fff;
  background-color: #5b5f63; }
  .bg-dark a {
    color: #fff; }
    .bg-dark a:hover {
      color: #fff; }

.bg-bright {
  background-color: #fafafa;
  color: #767676; }
  .bg-bright a {
    color: #767676; }
    .bg-bright a:hover {
      color: #767676; }

.bg-reverse {
  background-color: #fff;
  color: #767676; }
  .bg-reverse a {
    color: #767676; }
    .bg-reverse a:hover {
      color: #767676; }

.bg-facebook {
  background-color: #335397;
  color: #fff; }
  .bg-facebook a {
    color: #fff; }
    .bg-facebook a:hover {
      color: #fff; }

.bg-twitter {
  background-color: #00c7f7;
  color: #fff; }
  .bg-twitter a {
    color: #fff; }
    .bg-twitter a:hover {
      color: #fff; }

.bg-google-plus {
  background-color: #df4a32;
  color: #fff; }
  .bg-google-plus a {
    color: #fff; }
    .bg-google-plus a:hover {
      color: #fff; }

.bg-primary-widget {
  background-color: #1772bb;
  color: #fff; }
  .bg-primary-widget a {
    color: #fff; }
    .bg-primary-widget a:hover {
      color: #fff; }

.bg-success-widget {
  background-color: #1b4671;
  color: #fff; }
  .bg-success-widget a {
    color: #fff; }
    .bg-success-widget a:hover {
      color: #fff; }

.bg-danger-widget {
  background-color: #4694c3;
  color: #fff; }
  .bg-danger-widget a {
    color: #fff; }
    .bg-danger-widget a:hover {
      color: #fff; }

.bg-warning-widget {
  background-color: #275f96;
  color: #fff; }
  .bg-warning-widget a {
    color: #fff; }
    .bg-warning-widget a:hover {
      color: #fff; }

.bg-primary-second-widget {
  background-color: #5bb7ec;
  color: #fff; }
  .bg-primary-second-widget a {
    color: #fff; }
    .bg-primary-second-widget a:hover {
      color: #fff; }

.page-container {
  max-width: 1170px;
  margin: auto; }

.blockquote-colored {
  border-left: 5px solid #1C7EBB; }
  .blockquote-colored.pull-right {
    border-right: 5px solid #1C7EBB;
    border-left: 0; }

.gradient-text {
  font-size: 150px;
  font-weight: 300;
  color: #1C7EBB;
  background: -webkit-linear-gradient(92deg, #fb83fa, #00aced);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; }

.text-small {
  font-size: 12px; }

.text-normal {
  font-size: 14px; }

.text-huge {
  font-size: 72px; }

.text-large {
  font-size: 50px; }

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

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

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

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

.text-thin {
  font-weight: 300; }

.text-ultralight {
  font-weight: 100; }

.color-primary {
  color: #1C7EBB; }

.color-success {
  color: #23AE89; }

.color-info {
  color: #2EC1CC; }

.color-info-alt {
  color: #6A55C2; }

.color-warning {
  color: #FFB61C; }

.color-danger {
  color: #E94B3B; }

.color-dark {
  color: #222533; }

.color-reverse {
  color: #fff; }

.color-gray-darker {
  color: #222222; }

.color-gray-dark {
  color: #333333; }

.color-gray {
  color: #555555; }

.color-gray-light {
  color: #777777; }

.color-gray-lighter {
  color: #eeeeee; }

.dropcap,
.dropcap-square,
.dropcap-circle {
  display: block;
  float: left;
  font-weight: normal;
  line-height: 36px;
  margin-right: 6px;
  text-shadow: none; }

.dropcap {
  font-size: 3.1em; }

.dropcap-square,
.dropcap-circle {
  background-color: #eeeeee;
  color: #767676;
  width: 36px;
  text-align: center; }

.dropcap-square {
  border-radius: 2px;
  font-size: 2.3em; }

.dropcap-circle {
  border-radius: 50%;
  font-size: 1.78em; }

.dropcap.colored {
  color: #1C7EBB; }

.dropcap-square.colored,
.dropcap-circle.colored {
  background-color: #1C7EBB;
  color: #fff; }

.highlight {
  background-color: #222533;
  color: #fff;
  border-radius: 2px;
  padding: 2px 5px; }
  .highlight.colored {
    background-color: #1C7EBB; }

.pull-in {
  margin: 0 -15px; }

.divider {
  display: block;
  margin-top: 15px;
  margin-bottom: 15px; }
  .divider.divider-dashed {
    border: 1px dashed #e9e9e9; }
  .divider.divider-dotted {
    border: 1px dotted #e9e9e9; }

.divider-sm {
  margin-top: 10px;
  margin-bottom: 10px; }

.divider-lg {
  margin-top: 30px;
  margin-bottom: 30px; }

.divider-xl {
  margin-top: 50px;
  margin-bottom: 50px; }

.space {
  display: inline;
  padding: 5px; }

.space-md {
  padding: 15px; }

.space-lg {
  padding: 25px; }

.section-header {
  margin-bottom: 25px; }

.hr-colored {
  border-color: #1C7EBB; }

.table-dynamic .table-filters {
  margin: 10px 0;
  padding: 8px; }

.table-dynamic .filter-result-info {
  padding: 7px; }

.table-dynamic .table-bordered {
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd; }
  .table-dynamic .table-bordered thead th {
    position: relative;
    padding: 0; }
    .table-dynamic .table-bordered thead th > .th {
      position: relative;
      padding: 8px 20px 8px 8px; }
    .table-dynamic .table-bordered thead th .glyphicon-chevron-up,
    .table-dynamic .table-bordered thead th .glyphicon-chevron-down {
      position: absolute;
      color: #999; }
      .table-dynamic .table-bordered thead th .glyphicon-chevron-up:hover,
      .table-dynamic .table-bordered thead th .glyphicon-chevron-down:hover {
        color: #1C7EBB;
        cursor: pointer; }
      .table-dynamic .table-bordered thead th .glyphicon-chevron-up.active,
      .table-dynamic .table-bordered thead th .glyphicon-chevron-down.active {
        color: #1C7EBB; }
      .table-dynamic .table-bordered thead th .glyphicon-chevron-up:focus,
      .table-dynamic .table-bordered thead th .glyphicon-chevron-down:focus {
        outline: none; }
    .table-dynamic .table-bordered thead th .fa-angle-up,
    .table-dynamic .table-bordered thead th .fa-angle-down {
      position: absolute;
      color: #999;
      font-size: 16px;
      font-weight: bold; }
      .table-dynamic .table-bordered thead th .fa-angle-up:hover,
      .table-dynamic .table-bordered thead th .fa-angle-down:hover {
        color: #1C7EBB;
        cursor: pointer; }
      .table-dynamic .table-bordered thead th .fa-angle-up.active,
      .table-dynamic .table-bordered thead th .fa-angle-down.active {
        color: #1C7EBB; }
      .table-dynamic .table-bordered thead th .fa-angle-up:focus,
      .table-dynamic .table-bordered thead th .fa-angle-down:focus {
        outline: none; }
    .table-dynamic .table-bordered thead th .glyphicon-chevron-up,
    .table-dynamic .table-bordered thead th .fa-angle-up {
      top: 4px;
      right: 5px; }
    .table-dynamic .table-bordered thead th .fa-angle-down {
      top: 18px;
      right: 5px; }
    .table-dynamic .table-bordered thead th .glyphicon-chevron-down {
      top: 18px;
      right: 6px; }

.table-dynamic .table-footer {
  margin: 10px 0;
  padding: 8px; }

.table-dynamic .page-num-info span {
  padding: 6px; }

.table-dynamic .pagination-container ul {
  margin: 0; }
  .table-dynamic .pagination-container ul li:hover {
    cursor: pointer; }

@media only screen and (max-width: 800px) {
  .table-flip-scroll {
    /* sort out borders */ }
    .table-flip-scroll .cf:after {
      visibility: hidden;
      display: block;
      font-size: 0;
      content: " ";
      clear: both;
      height: 0; }
    .table-flip-scroll * html .cf {
      zoom: 1; }
    .table-flip-scroll *:first-child + html .cf {
      zoom: 1; }
    .table-flip-scroll table {
      width: 100%;
      border-collapse: collapse;
      border-spacing: 0; }
    .table-flip-scroll th,
    .table-flip-scroll td {
      margin: 0;
      vertical-align: top; }
    .table-flip-scroll th {
      text-align: left; }
    .table-flip-scroll table {
      display: block;
      position: relative;
      width: 100%; }
    .table-flip-scroll thead {
      display: block;
      float: left; }
    .table-flip-scroll tbody {
      display: block;
      width: auto;
      position: relative;
      overflow-x: auto;
      white-space: nowrap; }
    .table-flip-scroll thead tr {
      display: block; }
    .table-flip-scroll .table > thead > tr > th:first-child {
      border-top: 1px solid #ddd; }
    .table-flip-scroll th {
      display: block;
      text-align: right; }
    .table-flip-scroll tbody tr {
      display: inline-block;
      vertical-align: top; }
    .table-flip-scroll td {
      display: block;
      min-height: 1.25em;
      text-align: left; }
    .table-flip-scroll th {
      border-bottom: 0;
      border-left: 0; }
    .table-flip-scroll td {
      border-left: 0;
      border-right: 0;
      border-bottom: 0; }
    .table-flip-scroll tbody tr {
      border-left: 1px solid #babcbf; }
    .table-flip-scroll th:last-child,
    .table-flip-scroll td:last-child {
      border-bottom: 1px solid #babcbf; } }

.ui-radio {
  position: relative;
  margin: 0 20px 10px 20px;
  font-size: 14px;
  line-height: 20px;
  height: 20px; }
  .ui-radio input[type="radio"] + span:hover {
    cursor: pointer; }
    .ui-radio input[type="radio"] + span:hover:before {
      border-color: #1C7EBB; }
  .ui-radio input[type="radio"]:disabled + span:hover {
    cursor: not-allowed; }
    .ui-radio input[type="radio"]:disabled + span:hover:before {
      border-color: #ccc; }
  .ui-radio input[type="radio"] {
    display: none; }
  .ui-radio input[type="radio"] + span {
    padding-left: 10px;
    font-weight: normal; }
  .ui-radio input[type="radio"] + span:before {
    content: "";
    width: 20px;
    height: 20px;
    display: inline-block;
    vertical-align: middle;
    position: absolute;
    left: -20px;
    top: 0;
    background: white;
    border-radius: 50%;
    border: 1px solid #ccc;
    -webkit-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out; }
  .ui-radio input[type="radio"]:disabled + span:before {
    opacity: .65;
    border: 1px solid #ccc;
    cursor: no-drop; }
  .ui-radio input[type="radio"]:checked + span:before {
    border-color: #1C7EBB; }
  .ui-radio input[type="radio"]:checked + span:after {
    content: "";
    width: 8px;
    height: 8px;
    position: absolute;
    top: 6px;
    left: -14px;
    background-color: #1C7EBB;
    border-radius: 50%;
    display: block; }
  .ui-radio input[type="radio"]:disabled:checked + span:before {
    border-color: #ccc; }
  .ui-radio input[type="radio"]:disabled:checked + span:after {
    opacity: .65;
    cursor: no-drop;
    background-color: #ccc; }

.ui-checkbox {
  position: relative;
  margin: 0 20px 10px 20px; }
  .ui-checkbox input[type="checkbox"] + span:hover {
    cursor: pointer; }
    .ui-checkbox input[type="checkbox"] + span:hover:before {
      border-color: #1C7EBB; }
  .ui-checkbox input[type="checkbox"]:disabled + span:hover {
    cursor: not-allowed; }
    .ui-checkbox input[type="checkbox"]:disabled + span:hover:before {
      border-color: #ccc; }
  .ui-checkbox input[type="checkbox"] {
    display: none; }
  .ui-checkbox input[type="checkbox"] + span {
    font-weight: normal; }
  .ui-checkbox input[type="checkbox"] + span:before {
    content: "";
    width: 18px;
    height: 18px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
    margin-left: -20px;
    background-color: transparent;
    border-radius: 2px;
    border: 1px solid #ccc;
    -webkit-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out; }
  .ui-checkbox input[type="checkbox"]:disabled + span:before {
    opacity: .65;
    border: 1px solid #ccc;
    cursor: no-drop; }
  .ui-checkbox input[type="checkbox"]:checked + span:before {
    border: 1px solid #1C7EBB; }
  .ui-checkbox input[type="checkbox"]:checked + span:after {
    content: "";
    width: 8px;
    height: 8px;
    position: absolute;
    top: 7px;
    left: -15px;
    background-color: #1C7EBB;
    display: block; }
  .ui-checkbox input[type="checkbox"]:disabled:checked + span:before {
    opacity: .65;
    border: 1px solid #ccc; }
  .ui-checkbox input[type="checkbox"]:disabled:checked + span:after {
    opacity: .65;
    cursor: no-drop;
    background-color: #ccc; }

/*
@license textAngular
Author : Austin Anderson
License : 2013 MIT
Version 1.3.0

See README.md or https://github.com/fraywing/textAngular/wiki for requirements and use.
*/
body > input.ta-hidden-input {
  display: none; }

/* add generic styling for the editor */
.ui-editor {
  /* add the styling for the awesomness of the resizer */
  /* copy the popover code from bootstrap so this will work even without it */ }
  .ui-editor .ta-toolbar {
    margin: 0 0 10px; }
    .ui-editor .ta-toolbar > .btn-group {
      margin-bottom: 5px; }
  .ui-editor.ta-root.focussed > .ta-scroll-window.form-control {
    border-color: #66afe9;
    outline: 0;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }
  .ui-editor .ta-editor.ta-html, .ui-editor .ta-scroll-window.form-control {
    min-height: 300px;
    height: auto;
    overflow: auto;
    font-family: inherit;
    font-size: 100%; }
  .ui-editor .ta-scroll-window.form-control {
    position: relative;
    padding: 0; }
  .ui-editor .ta-scroll-window > .ta-bind {
    height: auto;
    min-height: 300px;
    padding: 6px 12px; }
  .ui-editor .ta-editor:focus {
    -webkit-user-select: text;
       -moz-user-select: text;
        -ms-user-select: text;
            user-select: text; }
  .ui-editor .ta-resizer-handle-overlay {
    z-index: 100;
    position: absolute;
    display: none; }
  .ui-editor .ta-resizer-handle-overlay > .ta-resizer-handle-info {
    position: absolute;
    bottom: 16px;
    right: 16px;
    border: 1px solid black;
    background-color: #FFF;
    padding: 0 4px;
    opacity: 0.7; }
  .ui-editor .ta-resizer-handle-overlay > .ta-resizer-handle-background {
    position: absolute;
    bottom: 5px;
    right: 5px;
    left: 5px;
    top: 5px;
    border: 1px solid black;
    background-color: rgba(0, 0, 0, 0.2); }
  .ui-editor .ta-resizer-handle-overlay > .ta-resizer-handle-corner {
    width: 10px;
    height: 10px;
    position: absolute; }
  .ui-editor .ta-resizer-handle-overlay > .ta-resizer-handle-corner-tl {
    top: 0;
    left: 0;
    border-left: 1px solid black;
    border-top: 1px solid black; }
  .ui-editor .ta-resizer-handle-overlay > .ta-resizer-handle-corner-tr {
    top: 0;
    right: 0;
    border-right: 1px solid black;
    border-top: 1px solid black; }
  .ui-editor .ta-resizer-handle-overlay > .ta-resizer-handle-corner-bl {
    bottom: 0;
    left: 0;
    border-left: 1px solid black;
    border-bottom: 1px solid black; }
  .ui-editor .ta-resizer-handle-overlay > .ta-resizer-handle-corner-br {
    bottom: 0;
    right: 0;
    border: 1px solid black;
    cursor: se-resize;
    background-color: white; }
  .ui-editor .popover {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1060;
    display: none;
    max-width: 276px;
    padding: 1px;
    font-size: 14px;
    font-weight: normal;
    line-height: 1.42857143;
    text-align: left;
    white-space: normal;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ccc;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 6px;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); }
  .ui-editor .popover.top {
    margin-top: -10px; }
  .ui-editor .popover.bottom {
    margin-top: 10px; }
  .ui-editor .popover-title {
    padding: 8px 14px;
    margin: 0;
    font-size: 14px;
    background-color: #f7f7f7;
    border-bottom: 1px solid #ebebeb;
    border-radius: 5px 5px 0 0; }
  .ui-editor .popover-content {
    padding: 9px 14px; }
  .ui-editor .popover > .arrow,
  .ui-editor .popover > .arrow:after {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid; }
  .ui-editor .popover > .arrow {
    border-width: 11px; }
  .ui-editor .popover > .arrow:after {
    content: "";
    border-width: 10px; }
  .ui-editor .popover.top > .arrow {
    bottom: -11px;
    left: 50%;
    margin-left: -11px;
    border-top-color: #999;
    border-top-color: rgba(0, 0, 0, 0.25);
    border-bottom-width: 0; }
  .ui-editor .popover.top > .arrow:after {
    bottom: 1px;
    margin-left: -10px;
    content: " ";
    border-top-color: #fff;
    border-bottom-width: 0; }
  .ui-editor .popover.bottom > .arrow {
    top: -11px;
    left: 50%;
    margin-left: -11px;
    border-top-width: 0;
    border-bottom-color: #999;
    border-bottom-color: rgba(0, 0, 0, 0.25); }
  .ui-editor .popover.bottom > .arrow:after {
    top: 1px;
    margin-left: -10px;
    content: " ";
    border-top-width: 0;
    border-bottom-color: #fff; }

.input-group .input-group-btn .btn {
  line-height: 20px; }

.form-control {
  border-width: 1px;
  box-shadow: none; }

.form-control:focus {
  border-color: #1C7EBB;
  box-shadow: none; }

.form-group .col-sm-10 {
  position: relative; }
  .form-group .col-sm-10 .icon {
    position: absolute;
    right: 25px;
    top: 10px; }

.input-round {
  border-radius: 25px; }

input.input-primary {
  border-color: #1C7EBB; }
  input.input-primary:focus {
    border-color: #1C7EBB; }

input.input-info {
  border-color: #2EC1CC; }
  input.input-info:focus {
    border-color: #2EC1CC; }

input.input-success {
  border-color: #23AE89; }
  input.input-success:focus {
    border-color: #23AE89; }

input.input-warning {
  border-color: #FFB61C; }
  input.input-warning:focus {
    border-color: #FFB61C; }

input.input-danger {
  border-color: #E94B3B; }
  input.input-danger:focus {
    border-color: #E94B3B; }

.ui-select {
  position: relative;
  display: inline-block;
  margin: 0 0 2px 1.2%;
  width: auto;
  height: auto;
  border: 1px solid #CBD5DD;
  border-radius: 2px; }
  .ui-select > select {
    z-index: 99;
    display: block;
    position: relative;
    padding: 10px 15px 10px 10px;
    min-width: 200px;
    width: 120%;
    border: none;
    outline: none;
    background: transparent;
    text-transform: uppercase;
    font-size: 11px;
    font-weight: bold;
    text-indent: 0.01px;
    text-overflow: '';
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none; }
  .ui-select select::-ms-expand {
    display: none; }
  .ui-select:after {
    z-index: 0;
    content: "";
    position: absolute;
    right: 8%;
    top: 50%;
    color: #CBD5DD;
    width: 0;
    margin-top: -3px;
    height: 0;
    border-top: 6px solid;
    border-right: 6px solid transparent;
    border-left: 6px solid transparent;
    pointer-events: none; }

/* Show only the native arrow */
@-moz-document url-prefix() {
  .ui-select {
    overflow: hidden; }
  .ui-select select {
    width: 120%;
    width: calc(100% + em); } }

/* Firefox focus has odd artifacts around the text, this kills that. See https://developer.mozilla.org/en-US/docs/Web/CSS/:-moz-focusring */
.ui-select select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000; }

.ui-switch input {
  display: none; }

.ui-switch i {
  display: inline-block;
  cursor: pointer;
  padding-right: 20px;
  -webkit-transition: all ease 0.2s;
  transition: all ease 0.2s;
  border-radius: 25px;
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5); }
  .ui-switch i:before {
    display: block;
    content: '';
    width: 25px;
    height: 25px;
    border-radius: 25px;
    background: white;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5); }

.ui-switch :checked + i {
  padding-right: 0;
  padding-left: 20px;
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5), inset 0 0 40px #1C7EBB; }

.ui-switch.ui-switch-success :checked + i {
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5), inset 0 0 40px #23AE89; }

.ui-switch.ui-switch-info :checked + i {
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5), inset 0 0 40px #2EC1CC; }

.ui-switch.ui-switch-warning :checked + i {
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5), inset 0 0 40px #FFB61C; }

.ui-switch.ui-switch-danger :checked + i {
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5), inset 0 0 40px #E94B3B; }

.ui-switch.ui-switch-sm i {
  padding-right: 16px;
  border-radius: 20px; }
  .ui-switch.ui-switch-sm i:before {
    width: 20px;
    height: 20px;
    border-radius: 20px; }

.ui-switch.ui-switch-sm :checked + i {
  padding-right: 0;
  padding-left: 16px;
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5), inset 0 0 32px #1C7EBB; }

.ui-switch.ui-switch-sm.ui-switch-success :checked + i {
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5), inset 0 0 32px #23AE89; }

.ui-switch.ui-switch-sm.ui-switch-info :checked + i {
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5), inset 0 0 32px #2EC1CC; }

.ui-switch.ui-switch-sm.ui-switch-warning :checked + i {
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5), inset 0 0 32px #FFB61C; }

.ui-switch.ui-switch-sm.ui-switch-danger :checked + i {
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5), inset 0 0 32px #E94B3B; }

.ui-switch.ui-switch-lg i {
  padding-right: 25px;
  border-radius: 30px; }
  .ui-switch.ui-switch-lg i:before {
    width: 30px;
    height: 30px;
    border-radius: 30px; }

.ui-switch.ui-switch-lg :checked + i {
  padding-right: 0;
  padding-left: 25px;
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5), inset 0 0 50px #1C7EBB; }

.ui-switch.ui-switch-lg.ui-switch-success :checked + i {
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5), inset 0 0 50px #23AE89; }

.ui-switch.ui-switch-lg.ui-switch-info :checked + i {
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5), inset 0 0 50px #2EC1CC; }

.ui-switch.ui-switch-lg.ui-switch-warning :checked + i {
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5), inset 0 0 50px #FFB61C; }

.ui-switch.ui-switch-lg.ui-switch-danger :checked + i {
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5), inset 0 0 50px #E94B3B; }

.form-validation .ng-valid.ng-dirty {
  border-color: #23AE89; }

.form-validation .ng-invalid.ng-dirty {
  border-color: #E94B3B; }

.btn-info-alt {
  color: #fff;
  background-color: #6A55C2;
  border-color: #5a43bb; }
  .btn-info-alt:focus, .btn-info-alt.focus {
    color: #fff;
    background-color: #513ca8;
    border-color: #2d215d; }
  .btn-info-alt:hover {
    color: #fff;
    background-color: #513ca8;
    border-color: #44338e; }
  .btn-info-alt:active, .btn-info-alt.active,
  .open > .btn-info-alt.dropdown-toggle {
    color: #fff;
    background-color: #513ca8;
    border-color: #44338e; }
    .btn-info-alt:active:hover, .btn-info-alt:active:focus, .btn-info-alt:active.focus, .btn-info-alt.active:hover, .btn-info-alt.active:focus, .btn-info-alt.active.focus,
    .open > .btn-info-alt.dropdown-toggle:hover,
    .open > .btn-info-alt.dropdown-toggle:focus,
    .open > .btn-info-alt.dropdown-toggle.focus {
      color: #fff;
      background-color: #44338e;
      border-color: #2d215d; }
  .btn-info-alt:active, .btn-info-alt.active,
  .open > .btn-info-alt.dropdown-toggle {
    background-image: none; }
  .btn-info-alt.disabled:hover, .btn-info-alt.disabled:focus, .btn-info-alt.disabled.focus, .btn-info-alt[disabled]:hover, .btn-info-alt[disabled]:focus, .btn-info-alt[disabled].focus,
  fieldset[disabled] .btn-info-alt:hover,
  fieldset[disabled] .btn-info-alt:focus,
  fieldset[disabled] .btn-info-alt.focus {
    background-color: #6A55C2;
    border-color: #5a43bb; }
  .btn-info-alt .badge {
    color: #6A55C2;
    background-color: #fff; }

.btn-dark {
  color: #fff;
  background-color: #222533;
  border-color: #181a24; }
  .btn-dark:focus, .btn-dark.focus {
    color: #fff;
    background-color: #0e0f14;
    border-color: black; }
  .btn-dark:hover {
    color: #fff;
    background-color: #0e0f14;
    border-color: black; }
  .btn-dark:active, .btn-dark.active,
  .open > .btn-dark.dropdown-toggle {
    color: #fff;
    background-color: #0e0f14;
    border-color: black; }
    .btn-dark:active:hover, .btn-dark:active:focus, .btn-dark:active.focus, .btn-dark.active:hover, .btn-dark.active:focus, .btn-dark.active.focus,
    .open > .btn-dark.dropdown-toggle:hover,
    .open > .btn-dark.dropdown-toggle:focus,
    .open > .btn-dark.dropdown-toggle.focus {
      color: #fff;
      background-color: black;
      border-color: black; }
  .btn-dark:active, .btn-dark.active,
  .open > .btn-dark.dropdown-toggle {
    background-image: none; }
  .btn-dark.disabled:hover, .btn-dark.disabled:focus, .btn-dark.disabled.focus, .btn-dark[disabled]:hover, .btn-dark[disabled]:focus, .btn-dark[disabled].focus,
  fieldset[disabled] .btn-dark:hover,
  fieldset[disabled] .btn-dark:focus,
  fieldset[disabled] .btn-dark.focus {
    background-color: #222533;
    border-color: #181a24; }
  .btn-dark .badge {
    color: #222533;
    background-color: #fff; }

.btn-line-default {
  color: #767676;
  background-color: transparent;
  border-color: #ccc; }
  .btn-line-default:hover, .btn-line-default:focus, .btn-line-default:active, .btn-line-default.active {
    color: #333;
    background-color: #fff; }
  .open .btn-line-default.dropdown-toggle {
    color: #333;
    background-color: #fff; }

.btn-line-primary {
  color: #767676;
  background-color: transparent;
  border-color: #196fa5; }
  .btn-line-primary:hover, .btn-line-primary:focus, .btn-line-primary:active, .btn-line-primary.active {
    color: #fff;
    background-color: #1C7EBB; }
  .open .btn-line-primary.dropdown-toggle {
    color: #fff;
    background-color: #1C7EBB; }

.btn-line-success {
  color: #767676;
  background-color: transparent;
  border-color: #1f9978; }
  .btn-line-success:hover, .btn-line-success:focus, .btn-line-success:active, .btn-line-success.active {
    color: #fff;
    background-color: #23AE89; }
  .open .btn-line-success.dropdown-toggle {
    color: #fff;
    background-color: #23AE89; }

.btn-line-info {
  color: #767676;
  background-color: transparent;
  border-color: #29adb7; }
  .btn-line-info:hover, .btn-line-info:focus, .btn-line-info:active, .btn-line-info.active {
    color: #fff;
    background-color: #2EC1CC; }
  .open .btn-line-info.dropdown-toggle {
    color: #fff;
    background-color: #2EC1CC; }

.btn-line-warning {
  color: #767676;
  background-color: transparent;
  border-color: #ffae03; }
  .btn-line-warning:hover, .btn-line-warning:focus, .btn-line-warning:active, .btn-line-warning.active {
    color: #fff;
    background-color: #FFB61C; }
  .open .btn-line-warning.dropdown-toggle {
    color: #fff;
    background-color: #FFB61C; }

.btn-line-danger {
  color: #767676;
  background-color: transparent;
  border-color: #e63624; }
  .btn-line-danger:hover, .btn-line-danger:focus, .btn-line-danger:active, .btn-line-danger.active {
    color: #fff;
    background-color: #E94B3B; }
  .open .btn-line-danger.dropdown-toggle {
    color: #fff;
    background-color: #E94B3B; }

.btn-line-dark {
  color: #767676;
  background-color: transparent;
  border-color: #181a24; }
  .btn-line-dark:hover, .btn-line-dark:focus, .btn-line-dark:active, .btn-line-dark.active {
    color: #fff;
    background-color: #222533; }
  .open .btn-line-dark.dropdown-toggle {
    color: #fff;
    background-color: #222533; }

.btn-direction {
  position: relative;
  border: 0;
  line-height: 20px; }

.btn-left {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0; }
  .btn-left:before {
    content: " ";
    line-height: 0;
    position: absolute;
    top: 0;
    left: -26px;
    border: 16px solid transparent;
    border-right: 10px solid #fff; }
  .btn-left:hover:before {
    border-right: 10px solid #e6e6e6; }
  .btn-left.btn-primary:before {
    border-right: 10px solid #1C7EBB; }
  .btn-left.btn-primary:hover:before {
    border-right: 10px solid #15608f; }
  .btn-left.btn-success:before {
    border-right: 10px solid #23AE89; }
  .btn-left.btn-success:hover:before {
    border-right: 10px solid #1a8468; }
  .btn-left.btn-info:before {
    border-right: 10px solid #2EC1CC; }
  .btn-left.btn-info:hover:before {
    border-right: 10px solid #259aa2; }
  .btn-left.btn-warning:before {
    border-right: 10px solid #FFB61C; }
  .btn-left.btn-warning:hover:before {
    border-right: 10px solid #e89d00; }
  .btn-left.btn-danger:before {
    border-right: 10px solid #E94B3B; }
  .btn-left.btn-danger:hover:before {
    border-right: 10px solid #d92a18; }

.btn-right {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0; }
  .btn-right:before {
    content: " ";
    line-height: 0;
    position: absolute;
    top: 0;
    right: -26px;
    border: 16px solid transparent;
    border-left: 10px solid #fff; }
  .btn-right:hover:before {
    border-left: 10px solid #e6e6e6; }
  .btn-right.btn-primary:before {
    border-left: 10px solid #1C7EBB; }
  .btn-right.btn-primary:hover:before {
    border-left: 10px solid #15608f; }
  .btn-right.btn-success:before {
    border-left: 10px solid #23AE89; }
  .btn-right.btn-success:hover:before {
    border-left: 10px solid #1a8468; }
  .btn-right.btn-info:before {
    border-left: 10px solid #2EC1CC; }
  .btn-right.btn-info:hover:before {
    border-left: 10px solid #259aa2; }
  .btn-right.btn-warning:before {
    border-left: 10px solid #FFB61C; }
  .btn-right.btn-warning:hover:before {
    border-left: 10px solid #e89d00; }
  .btn-right.btn-danger:before {
    border-left: 10px solid #E94B3B; }
  .btn-right.btn-danger:hover:before {
    border-left: 10px solid #d92a18; }

.btn-up:before {
  content: " ";
  line-height: 0;
  position: absolute;
  top: -16px;
  left: 50%;
  margin-left: -8px;
  border: 8px solid transparent;
  border-bottom: 8px solid #fff; }

.btn-up:hover:before {
  border-bottom: 8px solid #e6e6e6; }

.btn-up.btn-primary:before {
  border-bottom: 8px solid #1C7EBB; }

.btn-up.btn-primary:hover:before {
  border-bottom: 8px solid #15608f; }

.btn-up.btn-success:before {
  border-bottom: 8px solid #23AE89; }

.btn-up.btn-success:hover:before {
  border-bottom: 8px solid #1a8468; }

.btn-up.btn-info:before {
  border-bottom: 8px solid #2EC1CC; }

.btn-up.btn-info:hover:before {
  border-bottom: 8px solid #259aa2; }

.btn-up.btn-warning:before {
  border-bottom: 8px solid #FFB61C; }

.btn-up.btn-warning:hover:before {
  border-bottom: 8px solid #e89d00; }

.btn-up.btn-danger:before {
  border-bottom: 8px solid #E94B3B; }

.btn-up.btn-danger:hover:before {
  border-bottom: 8px solid #d92a18; }

.btn-down:before {
  content: " ";
  line-height: 0;
  position: absolute;
  bottom: -16px;
  left: 50%;
  margin-left: -8px;
  border: 8px solid transparent;
  border-top: 8px solid #fff; }

.btn-down:hover:before {
  border-top: 8px solid #e6e6e6; }

.btn-down.btn-primary:before {
  border-top: 8px solid #1C7EBB; }

.btn-down.btn-primary:hover:before {
  border-top: 8px solid #15608f; }

.btn-down.btn-success:before {
  border-top: 8px solid #23AE89; }

.btn-down.btn-success:hover:before {
  border-top: 8px solid #1a8468; }

.btn-down.btn-info:before {
  border-top: 8px solid #2EC1CC; }

.btn-down.btn-info:hover:before {
  border-top: 8px solid #259aa2; }

.btn-down.btn-warning:before {
  border-top: 8px solid #FFB61C; }

.btn-down.btn-warning:hover:before {
  border-top: 8px solid #e89d00; }

.btn-down.btn-danger:before {
  border-top: 8px solid #E94B3B; }

.btn-down.btn-danger:hover:before {
  border-top: 8px solid #d92a18; }

.btn-w-xs {
  min-width: 80px; }

.btn-w-sm {
  min-width: 100px; }

.btn-w-md {
  min-width: 120px; }

.btn-w-lg {
  min-width: 150px; }

.btn-round {
  border-radius: 2em; }

.btn-gap {
  margin: 5px; }

.btn-gap-h {
  margin: 0 5px; }

.btn-gap-v {
  margin: 0 0 5px; }

.btn-icon {
  display: inline-block;
  text-align: center;
  border-radius: 2px;
  height: 35px;
  width: 35px;
  line-height: 35px; }
  .btn-icon i {
    line-height: 35px; }
  .btn-icon.btn-icon-lined {
    line-height: 31px; }
    .btn-icon.btn-icon-lined i {
      line-height: 31px; }
    .btn-icon.btn-icon-lined.btn-icon-thin {
      line-height: 33px; }
      .btn-icon.btn-icon-lined.btn-icon-thin i {
        line-height: 33px; }
  .btn-icon:hover {
    color: #fff; }

.btn-icon-lined {
  display: inline-block;
  text-align: center;
  border-radius: 2px;
  background-color: #fff;
  border-width: 2px;
  border-style: solid;
  border-color: #767676;
  color: #767676;
  height: 35px;
  width: 35px;
  line-height: 35px; }
  .btn-icon-lined i {
    line-height: 35px; }
  .btn-icon-lined.btn-icon-lined {
    line-height: 31px; }
    .btn-icon-lined.btn-icon-lined i {
      line-height: 31px; }
    .btn-icon-lined.btn-icon-lined.btn-icon-thin {
      line-height: 33px; }
      .btn-icon-lined.btn-icon-lined.btn-icon-thin i {
        line-height: 33px; }
  .btn-icon-lined.btn-icon-thin {
    border-width: 1px; }
  .btn-icon-lined:hover {
    background-color: #fff;
    color: #fff; }
  .btn-icon-lined.btn-default-light {
    color: #bbb;
    border: 2px solid #bbb; }
    .btn-icon-lined.btn-default-light:hover {
      color: #bbb;
      border: 2px solid #bbb; }
  .btn-icon-lined.btn-default {
    color: #777777;
    border-color: #777777; }
    .btn-icon-lined.btn-default:hover {
      color: #777777;
      border-color: #777777; }
  .btn-icon-lined.btn-primary {
    color: #1C7EBB;
    border-color: #1C7EBB; }
  .btn-icon-lined.btn-success {
    color: #23AE89;
    border-color: #23AE89; }
  .btn-icon-lined.btn-info {
    color: #2EC1CC;
    border-color: #2EC1CC; }
  .btn-icon-lined.btn-warning {
    color: #FFB61C;
    border-color: #FFB61C; }
  .btn-icon-lined.btn-danger {
    color: #E94B3B;
    border-color: #E94B3B; }

.btn-icon-round {
  border-radius: 50%; }

.btn-icon-sm {
  height: 30px;
  width: 30px;
  line-height: 30px; }
  .btn-icon-sm i {
    line-height: 30px; }
  .btn-icon-sm.btn-icon-lined {
    line-height: 26px; }
    .btn-icon-sm.btn-icon-lined i {
      line-height: 26px; }
    .btn-icon-sm.btn-icon-lined.btn-icon-thin {
      line-height: 28px; }
      .btn-icon-sm.btn-icon-lined.btn-icon-thin i {
        line-height: 28px; }

.btn-icon-md {
  height: 45px;
  width: 45px;
  line-height: 45px; }
  .btn-icon-md i {
    line-height: 45px; }
  .btn-icon-md.btn-icon-lined {
    line-height: 41px; }
    .btn-icon-md.btn-icon-lined i {
      line-height: 41px; }
    .btn-icon-md.btn-icon-lined.btn-icon-thin {
      line-height: 43px; }
      .btn-icon-md.btn-icon-lined.btn-icon-thin i {
        line-height: 43px; }

.btn-icon-lg {
  height: 65px;
  width: 65px;
  line-height: 65px; }
  .btn-icon-lg i {
    line-height: 65px; }
  .btn-icon-lg.btn-icon-lined {
    line-height: 61px; }
    .btn-icon-lg.btn-icon-lined i {
      line-height: 61px; }
    .btn-icon-lg.btn-icon-lined.btn-icon-thin {
      line-height: 63px; }
      .btn-icon-lg.btn-icon-lined.btn-icon-thin i {
        line-height: 63px; }

.btn-icon-lg-alt {
  height: 70px;
  width: 70px;
  line-height: 70px; }
  .btn-icon-lg-alt i {
    line-height: 70px; }
  .btn-icon-lg-alt.btn-icon-lined {
    line-height: 66px; }
    .btn-icon-lg-alt.btn-icon-lined i {
      line-height: 66px; }
    .btn-icon-lg-alt.btn-icon-lined.btn-icon-thin {
      line-height: 68px; }
      .btn-icon-lg-alt.btn-icon-lined.btn-icon-thin i {
        line-height: 68px; }

.btn-icon-xl {
  height: 80px;
  width: 80px;
  line-height: 80px; }
  .btn-icon-xl i {
    line-height: 80px; }
  .btn-icon-xl.btn-icon-lined {
    line-height: 76px; }
    .btn-icon-xl.btn-icon-lined i {
      line-height: 76px; }
    .btn-icon-xl.btn-icon-lined.btn-icon-thin {
      line-height: 78px; }
      .btn-icon-xl.btn-icon-lined.btn-icon-thin i {
        line-height: 78px; }

.btn-twitter {
  color: #fff;
  background-color: #00c7f7;
  border-color: #00c7f7; }
  .btn-twitter:hover {
    color: #fff;
    text-decoration: none;
    background-color: #00a6ce;
    border-color: #0096ba; }

.btn-facebook {
  color: #fff;
  background-color: #335397;
  border-color: #335397; }
  .btn-facebook:hover {
    color: #fff;
    text-decoration: none;
    background-color: #294279;
    border-color: #243a69; }

.btn-gplus,
.btn-google-plus {
  color: #fff;
  background-color: #dd4a38;
  border-color: #dd4a38; }
  .btn-gplus:hover,
  .btn-google-plus:hover {
    color: #fff;
    text-decoration: none;
    background-color: #ca3522;
    border-color: #b8301f; }

.btn-instagram {
  color: #fff;
  background-color: #82685A;
  border-color: #82685A; }
  .btn-instagram:hover {
    color: #fff;
    text-decoration: none;
    background-color: #6a5549;
    border-color: #5e4b41; }

.btn-vimeo {
  color: #fff;
  background-color: #63879C;
  border-color: #63879C; }
  .btn-vimeo:hover {
    color: #fff;
    text-decoration: none;
    background-color: #537183;
    border-color: #4b6777; }

.btn-flickr {
  color: #fff;
  background-color: #0061DB;
  border-color: #0061DB; }
  .btn-flickr:hover {
    color: #fff;
    text-decoration: none;
    background-color: #004fb2;
    border-color: #00469e; }

.btn-github {
  color: #fff;
  background-color: #3B3B3B;
  border-color: #3B3B3B; }
  .btn-github:hover {
    color: #fff;
    text-decoration: none;
    background-color: #272727;
    border-color: #1c1c1c; }

.btn-pinterest {
  color: #fff;
  background-color: #D73532;
  border-color: #D73532; }
  .btn-pinterest:hover {
    color: #fff;
    text-decoration: none;
    background-color: #bc2725;
    border-color: #ab2421; }

.btn-tumblr {
  color: #fff;
  background-color: #586980;
  border-color: #586980; }
  .btn-tumblr:hover {
    color: #fff;
    text-decoration: none;
    background-color: #475568;
    border-color: #3f4b5c; }

.btn-linkedin {
  color: #fff;
  background-color: #018FAF;
  border-color: #018FAF; }
  .btn-linkedin:hover {
    color: #fff;
    text-decoration: none;
    background-color: #016e86;
    border-color: #015d72; }

.btn-dribbble {
  color: #fff;
  background-color: #EA73A0;
  border-color: #EA73A0; }
  .btn-dribbble:hover {
    color: #fff;
    text-decoration: none;
    background-color: #e55088;
    border-color: #e23e7c; }

.btn-stumbleupon {
  color: #fff;
  background-color: #EA4B24;
  border-color: #EA4B24; }
  .btn-stumbleupon:hover {
    color: #fff;
    text-decoration: none;
    background-color: #d13914;
    border-color: #bf3412; }

.btn-lastfm {
  color: #fff;
  background-color: #B80638;
  border-color: #B80638; }
  .btn-lastfm:hover {
    color: #fff;
    text-decoration: none;
    background-color: #90052c;
    border-color: #7d0426; }

.btn-evernote {
  color: #fff;
  background-color: #3BAB27;
  border-color: #3BAB27; }
  .btn-evernote:hover {
    color: #fff;
    text-decoration: none;
    background-color: #308a1f;
    border-color: #2a791c; }

.btn-skype {
  color: #fff;
  background-color: #00B0F6;
  border-color: #00B0F6; }
  .btn-skype:hover {
    color: #fff;
    text-decoration: none;
    background-color: #0093cd;
    border-color: #0084b9; }

.btn-soundcloud {
  color: #fff;
  background-color: #0066FF;
  border-color: #0066FF; }
  .btn-soundcloud:hover {
    color: #fff;
    text-decoration: none;
    background-color: #0056d6;
    border-color: #004ec2; }

.btn-behance {
  color: #fff;
  background-color: #B80638;
  border-color: #B80638; }
  .btn-behance:hover {
    color: #fff;
    text-decoration: none;
    background-color: #90052c;
    border-color: #7d0426; }

.btn-rss {
  color: #fff;
  background-color: #F79638;
  border-color: #F79638; }
  .btn-rss:hover {
    color: #fff;
    text-decoration: none;
    background-color: #f58111;
    border-color: #e87709; }

.btn-youtube {
  color: #fff;
  background-color: #CC181E;
  border-color: #CC181E; }
  .btn-youtube:hover {
    color: #fff;
    text-decoration: none;
    background-color: #a71419;
    border-color: #951216; }

.content-container.ng-leave {
  z-index: 9999; }

.content-container.ng-enter {
  z-index: 8888; }

/*==========  animations  ==========*/
@-webkit-keyframes spin {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }
@keyframes spin {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

.animate-spin {
  -webkit-animation: spin 3s linear infinite;
          animation: spin 3s linear infinite; }

@-webkit-keyframes fade-up-enter {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes fade-up-enter {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@-webkit-keyframes fade-up-leave {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
            transform: translateY(-20px); } }

@keyframes fade-up-leave {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
            transform: translateY(-20px); } }

.animate-fade-up.ng-enter {
  -webkit-animation: 0.35s fade-up-enter;
          animation: 0.35s fade-up-enter; }

@-webkit-keyframes animate-flip-y-enter {
  0% {
    -webkit-transform: perspective(3000px) rotateY(90deg);
            transform: perspective(3000px) rotateY(90deg);
    opacity: 0; }
  100% {
    -webkit-transform: perspective(3000px) rotateY(0deg);
            transform: perspective(3000px) rotateY(0deg);
    opacity: 1; } }

@keyframes animate-flip-y-enter {
  0% {
    -webkit-transform: perspective(3000px) rotateY(90deg);
            transform: perspective(3000px) rotateY(90deg);
    opacity: 0; }
  100% {
    -webkit-transform: perspective(3000px) rotateY(0deg);
            transform: perspective(3000px) rotateY(0deg);
    opacity: 1; } }

@-webkit-keyframes animate-flip-y-leave {
  0% {
    -webkit-transform: perspective(3000px) rotateY(0deg);
            transform: perspective(3000px) rotateY(0deg);
    opacity: 1; }
  100% {
    -webkit-transform: perspective(3000px) rotateY(-90deg);
            transform: perspective(3000px) rotateY(-90deg);
    opacity: 0; } }

@keyframes animate-flip-y-leave {
  0% {
    -webkit-transform: perspective(3000px) rotateY(0deg);
            transform: perspective(3000px) rotateY(0deg);
    opacity: 1; }
  100% {
    -webkit-transform: perspective(3000px) rotateY(-90deg);
            transform: perspective(3000px) rotateY(-90deg);
    opacity: 0; } }

.animate-flip-y.ng-enter {
  -webkit-animation: 0.35s animate-flip-y-enter ease-in-out;
          animation: 0.35s animate-flip-y-enter ease-in-out; }

@-webkit-keyframes slideInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
            transform: translateY(-2000px); }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes slideInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
            transform: translateY(-2000px); }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@-webkit-keyframes slideOutUp {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
            transform: translateY(-2000px); } }

@keyframes slideOutUp {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
            transform: translateY(-2000px); } }

.animate-vertical-slide.ng-hide-add {
  -webkit-animation: .35s slideOutUp ease-in-out;
          animation: .35s slideOutUp ease-in-out; }

.animate-vertical-slide.ng-hide-remove {
  -webkit-animation: .35s .35s slideInDown ease-in-out;
          animation: .35s .35s slideInDown ease-in-out; }

/*==========  simple ones  ==========*/
@keyframes slideOutUp {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.95);
            transform: scale(0.95); }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1); } }

.ainmate-scale-up.ng-enter {
  -webkit-animation: 0.35s slideOutUp ease-in-out;
          animation: 0.35s slideOutUp ease-in-out; }

@-webkit-keyframes slideInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(25px);
            transform: translateX(25px); }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0); } }

@keyframes slideInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(25px);
            transform: translateX(25px); }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0); } }

.ainmate-slide-in-right.ng-enter {
  -webkit-animation: 0.35s slideInRight ease-in-out;
          animation: 0.35s slideInRight ease-in-out; }

.animated {
  -webkit-animation-duration: .35s;
          animation-duration: .35s;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both; }

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite; }

.animated.hinge {
  -webkit-animation-duration: 2s;
          animation-duration: 2s; }

@-webkit-keyframes slideInUp {
  0% {
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
    visibility: visible; }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes slideInUp {
  0% {
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
    visibility: visible; }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

.slideInUp {
  -webkit-animation-name: slideInUp;
          animation-name: slideInUp; }

@-webkit-keyframes scaleInLeft {
  0% {
    -webkit-transform-origin: left top;
            transform-origin: left top;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
    opacity: 0; }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }

@keyframes scaleInLeft {
  0% {
    -webkit-transform-origin: left top;
            transform-origin: left top;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
    opacity: 0; }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }

.scaleInLeft {
  -webkit-animation-name: scaleInLeft;
          animation-name: scaleInLeft; }

@-webkit-keyframes scaleInRight {
  0% {
    -webkit-transform-origin: right top;
            transform-origin: right top;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
    opacity: 0; }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }

@keyframes scaleInRight {
  0% {
    -webkit-transform-origin: right top;
            transform-origin: right top;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
    opacity: 0; }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }

.scaleInRight {
  -webkit-animation-name: scaleInRight;
          animation-name: scaleInRight; }

@-webkit-keyframes rotateInUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
            transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  100% {
    -webkit-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: none;
            transform: none;
    opacity: 1; } }

@keyframes rotateInUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
            transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  100% {
    -webkit-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: none;
            transform: none;
    opacity: 1; } }

.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
          animation-name: rotateInUpLeft; }

@-webkit-keyframes rotateInUpRight {
  0% {
    -webkit-transform-origin: right bottom;
            transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
            transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0; }
  100% {
    -webkit-transform-origin: right bottom;
            transform-origin: right bottom;
    -webkit-transform: none;
            transform: none;
    opacity: 1; } }

@keyframes rotateInUpRight {
  0% {
    -webkit-transform-origin: right bottom;
            transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
            transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0; }
  100% {
    -webkit-transform-origin: right bottom;
            transform-origin: right bottom;
    -webkit-transform: none;
            transform: none;
    opacity: 1; } }

.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
          animation-name: rotateInUpRight; }

.dropdown-menu {
  -webkit-transform-origin: top left;
          transform-origin: top left; }
  .dropdown-menu.pull-right {
    -webkit-transform-origin: top right;
            transform-origin: top right; }

.dropdown-menu-scaleIn {
  display: block;
  opacity: 0;
  -webkit-transition: all .35s;
  transition: all .35s;
  -webkit-transform: scale(0);
          transform: scale(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.open > .dropdown-menu-scaleIn {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1); }

.badge-primary {
  background-color: #1C7EBB; }

.badge-success {
  background-color: #23AE89; }

.badge-info {
  background-color: #2EC1CC; }

.badge-warning {
  background-color: #FFB61C; }

.badge-danger {
  background-color: #E94B3B; }

.breadcrumb a {
  color: #767676; }
  .breadcrumb a:hover {
    text-decoration: none; }

.breadcrumb-alt {
  overflow: hidden;
  list-style: none;
  margin: 0 0 20px;
  padding: 0;
  width: 100%; }
  .breadcrumb-alt > li {
    float: left;
    margin: 0 25px 0 0; }
    .breadcrumb-alt > li > a {
      position: relative;
      float: left;
      background-color: #5b5f63;
      color: #ffffff;
      font-size: 12px;
      padding: 10px; }
      .breadcrumb-alt > li > a:before {
        position: absolute;
        top: 50%;
        left: -1em;
        margin-top: -1.6em;
        border-color: #5b5f63 #5b5f63 #5b5f63 rgba(0, 0, 0, 0);
        border-style: solid;
        border-width: 1.5em 0 1.7em 1em;
        content: ""; }
      .breadcrumb-alt > li > a:after {
        position: absolute;
        top: 50%;
        right: -1em;
        margin-top: -1.5em;
        border-bottom: 1.5em solid rgba(0, 0, 0, 0);
        border-left: 1em solid #5b5f63;
        border-top: 1.5em solid rgba(0, 0, 0, 0);
        content: ""; }
      .breadcrumb-alt > li > a:hover, .breadcrumb-alt > li > a.active {
        text-decoration: none;
        background-color: #1C7EBB;
        color: #fff; }
        .breadcrumb-alt > li > a:hover:before, .breadcrumb-alt > li > a.active:before {
          border-color: #1C7EBB #1C7EBB #1C7EBB rgba(0, 0, 0, 0); }
        .breadcrumb-alt > li > a:hover:after, .breadcrumb-alt > li > a.active:after {
          border-left: 1em solid #1C7EBB; }

.breadcrumb-alt.breadcrumb-home {
  padding: 0 15px 15px 26px;
  margin: 0; }

.callout {
  margin: 20px 0;
  padding: 20px;
  border-left: 3px solid #eee; }
  .callout h4 {
    margin-top: 0;
    margin-bottom: 5px; }
  .callout p:last-child {
    margin-bottom: 0; }

.callout-success {
  background-color: #f3faf3;
  border-color: #23AE89; }
  .callout-success h4 {
    color: #23AE89; }

.callout-info {
  background-color: #f4f8fa;
  border-color: #2EC1CC; }
  .callout-info h4 {
    color: #2EC1CC; }

.callout-warning {
  background-color: #fcf8f2;
  border-color: #FFB61C; }
  .callout-warning h4 {
    color: #FFB61C; }

.callout-danger {
  background-color: #fdf7f7;
  border-color: #E94B3B; }
  .callout-danger h4 {
    color: #E94B3B; }

.mdl-shadow--2dp, .card-panel, .card {
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); }

.card-panel {
  padding: 20px;
  margin: 10px 0 20px 0;
  border-radius: 2px; }

.card {
  position: relative;
  overflow: hidden;
  margin: 10px 0 20px 0;
  border-radius: 2px; }
  .card .card-title {
    font-size: 24px; }
    .card .card-title.activator {
      cursor: pointer; }
  .card .card-action > a {
    margin-right: 20px;
    text-transform: uppercase; }
  .card .card-image {
    position: relative; }
    .card .card-image img {
      border-radius: 2px 2px 0 0;
      position: relative;
      left: 0;
      right: 0;
      top: 0;
      bottom: 0;
      width: 100%; }
    .card .card-image .card-title {
      position: absolute;
      bottom: 0;
      left: 0;
      padding: 20px;
      color: #fff;
      text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25); }
  .card .card-content {
    padding: 20px;
    border-radius: 0 0 2px 2px; }
    .card .card-content p {
      margin: 0;
      color: inherit; }
    .card .card-content .card-title {
      line-height: 48px; }
    .card .card-content .card-profile-img {
      position: relative;
      z-index: 1;
      margin-top: -70px;
      border-radius: 50%;
      width: 100px;
      height: 100px;
      padding: 5px;
      background-color: #fff; }
      .card .card-content .card-profile-img img {
        width: 90px;
        height: 90px;
        border-radius: 50%; }
      .card .card-content .card-profile-img.profile-img-sm {
        margin-top: -50px;
        width: 60px;
        height: 60px;
        padding: 2px; }
        .card .card-content .card-profile-img.profile-img-sm img {
          width: 56px;
          height: 56px;
          border-radius: 50%; }
    .card .card-content .card-button .btn-icon {
      position: relative;
      z-index: 1;
      margin-top: -65px; }
  .card .card-action {
    border-top: 1px solid rgba(0, 0, 0, 0.05);
    padding: 20px; }
    .card .card-action.no-border {
      border: 0; }
  .card .card-reveal {
    padding: 20px;
    position: absolute;
    background-color: #FFF;
    width: 100%;
    overflow-y: auto;
    top: 100%;
    height: 100%;
    z-index: 1; }
    .card .card-reveal .card-title {
      cursor: pointer;
      display: block; }

.dropdown-menu {
  box-shadow: none; }
  .dropdown-menu.dropdown-dark {
    background-color: #222533; }
    .dropdown-menu.dropdown-dark.with-arrow:after {
      border-bottom: 7px solid #222533; }
    .dropdown-menu.dropdown-dark > li > a {
      color: #777777; }
  .dropdown-menu.with-arrow {
    margin-top: 0; }
    .dropdown-menu.with-arrow:before {
      content: " ";
      position: absolute;
      left: 12px;
      top: -16px;
      border: 8px solid transparent;
      border-bottom: 8px solid rgba(0, 0, 0, 0.15); }
    .dropdown-menu.with-arrow:after {
      content: " ";
      position: absolute;
      left: 13px;
      top: -14px;
      border: 7px solid transparent;
      border-bottom: 7px solid #fff; }
    .dropdown-menu.with-arrow.pull-right {
      margin-top: 0; }
      .dropdown-menu.with-arrow.pull-right:before {
        left: auto;
        right: 12px; }
      .dropdown-menu.with-arrow.pull-right:after {
        left: auto;
        right: 13px; }
    .dropdown-menu.with-arrow.panel {
      border: 0;
      box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2); }
    .dropdown-menu.with-arrow.panel-default:before {
      border-bottom: 8px solid #e9e9e9; }
    .dropdown-menu.with-arrow.panel-default:after {
      border-bottom: 7px solid #f6f6f6; }
    .dropdown-menu.with-arrow.panel-dark:before {
      border-bottom: 8px solid #222533; }
    .dropdown-menu.with-arrow.panel-dark:after {
      border-bottom: 7px solid #222533; }
    .dropdown-menu.with-arrow.panel-primary:before {
      border-bottom: 8px solid #1C7EBB; }
    .dropdown-menu.with-arrow.panel-primary:after {
      border-bottom: 7px solid #1C7EBB; }
    .dropdown-menu.with-arrow.panel-success:before {
      border-bottom: 8px solid #ddf7eb; }
    .dropdown-menu.with-arrow.panel-success:after {
      border-bottom: 7px solid #F2FCF9; }
    .dropdown-menu.with-arrow.panel-info:before {
      border-bottom: 8px solid #d0f2f7; }
    .dropdown-menu.with-arrow.panel-info:after {
      border-bottom: 7px solid #EEF8FC; }
    .dropdown-menu.with-arrow.panel-warning:before {
      border-bottom: 8px solid #ffebd7; }
    .dropdown-menu.with-arrow.panel-warning:after {
      border-bottom: 7px solid #FFFAF0; }
    .dropdown-menu.with-arrow.panel-danger:before {
      border-bottom: 8px solid #fad7db; }
    .dropdown-menu.with-arrow.panel-danger:after {
      border-bottom: 7px solid #FDEFEE; }

img.img30_30 {
  width: 30px;
  height: 30px; }

img.img64_64 {
  width: 64px;
  height: 64px; }

img.img80_80 {
  width: 80px;
  height: 80px; }

.label {
  padding: .5em .8em; }

.label-info-alt {
  background: #6A55C2; }

.list-group-item {
  padding: 15px;
  border: 1px solid #f3f3f3; }

.list-info li {
  padding: 10px;
  border-bottom: 1px solid #eee; }
  .list-info li:last-child {
    border-bottom: none; }
  .list-info li .icon {
    margin-right: 10px;
    color: #1C7EBB; }
  .list-info li label {
    width: 100px; }
  .list-info li label.space-text {
    width: 180px; }

.mail-categories .list-group .list-group-item {
  padding: 0; }
  .mail-categories .list-group .list-group-item.active > a {
    border-left: 3px solid #1C7EBB;
    color: #1C7EBB;
    background-color: #fafafa; }
  .mail-categories .list-group .list-group-item > a {
    display: block;
    padding: 15px;
    text-decoration: none;
    -webkit-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out; }
    .mail-categories .list-group .list-group-item > a:hover {
      border-left: 3px solid #1C7EBB;
      color: #1C7EBB;
      background-color: #fafafa; }
    .mail-categories .list-group .list-group-item > a > i {
      font-size: 16px;
      width: 18px;
      margin-right: 5px; }
      .mail-categories .list-group .list-group-item > a > i.fa-circle {
        font-size: 14px; }

.mail-categories .list-group-item.active,
.mail-categories .list-group-item.active:hover,
.mail-categories .list-group-item.active:focus {
  border-color: #eff2f7; }

.mail-container .mail-options {
  padding: 12px; }

.mail-container .table {
  margin-bottom: 0;
  border-top: 1px solid #ddd; }
  .mail-container .table tr:hover {
    cursor: pointer; }
  .mail-container .table tr > td {
    padding: 12px; }
    .mail-container .table tr > td > .fa-star {
      color: #ccc; }
      .mail-container .table tr > td > .fa-star.active {
        color: #E94B3B; }
  .mail-container .table label.ui-checkbox {
    margin-bottom: 0; }
  .mail-container .table .mail-unread {
    font-weight: bold;
    color: #333333; }
  .mail-container .table .mail-hightlight td {
    background-color: #FFFAF0; }

.mail-container .mail-header {
  padding: 15px 0; }
  .mail-container .mail-header h3 {
    margin-top: 0; }

.mail-container .mail-info {
  padding: 10px 15px;
  border-top: 1px solid #f1f1f1;
  border-bottom: 1px solid #f1f1f1; }
  .mail-container .mail-info .col-md-8,
  .mail-container .mail-info .col-md-4 {
    padding: 0; }

.mail-container .mail-content {
  padding: 15px 0;
  border-bottom: 1px solid #f1f1f1; }

.mail-container .mail-attachments {
  padding: 15px 0;
  border-bottom: 1px solid #f1f1f1; }
  .mail-container .mail-attachments .list-attachs img {
    max-width: 200px;
    max-height: 200px; }

.mail-container .mail-actions {
  margin-top: 10px; }

.mail-compose .form-group > input {
  border: none; }
  .mail-compose .form-group > input:focus {
    border: none; }

.mail-compose .mail-actions {
  margin-top: 10px; }

.nav-boxed {
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.2);
  background-color: #fff;
  border-radius: 2px; }
  .nav-boxed.nav-justified > li > a {
    margin: 0; }
  .nav-boxed a {
    color: #767676; }
  .nav-boxed > li > a {
    display: block;
    padding: 10px 5px;
    border-left: 0;
    border-top: 1px solid #f3f3f3; }
    @media (min-width: 768px) {
      .nav-boxed > li > a {
        border-top: 0;
        border-left: 1px solid #f3f3f3; } }
    .nav-boxed > li > a > i {
      display: block;
      width: 40px;
      height: 40px;
      line-height: 40px;
      margin: 0 auto 2px;
      font-size: 30px; }
  .nav-boxed > li:first-child > a {
    border-left: none;
    border-top: 0; }
    @media (min-width: 768px) {
      .nav-boxed > li:first-child > a {
        border-left: 1px solid #f3f3f3; } }

.panel {
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.1); }
  .panel .panel {
    box-shadow: none; }
  .panel .panel-heading {
    text-transform: uppercase; }
  .panel .panel-title {
    font-size: 14px; }
  .panel.panel-labeled {
    position: relative; }
    .panel.panel-labeled .panel-body {
      padding: 35px 15px; }
  .panel.panel-minimal .panel-heading {
    background: none;
    border: 0; }
  .panel .panel-label {
    color: #ccc;
    position: absolute;
    bottom: 5px;
    left: 7px; }
  .panel .panel-body.padding-lg {
    padding: 30px 15px; }
  .panel .panel-body.padding-xl {
    padding: 60px 15px; }
  .panel .panel-body.padding-lg-h {
    padding: 15px 30px; }

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

.panel-box {
  display: table;
  table-layout: fixed;
  width: 100%;
  height: 100%;
  text-align: center;
  border: 1px solid #ccc; }
  .panel-box .panel-item {
    display: table-cell;
    padding: 30px;
    width: 1%;
    vertical-align: top;
    border-radius: 0; }
  .panel-box .panel-left {
    border-bottom-left-radius: 2px;
    border-top-left-radius: 2px; }
  .panel-box .panel-right {
    border-bottom-right-radius: 2px;
    border-top-right-radius: 2px; }
  .panel-box.info-box i {
    line-height: 70px; }
  .panel-box .panel-top,
  .panel-box .panel-bottom {
    display: block; }
  .panel-box .panel-top {
    padding: 1px;
    border-top-right-radius: 2px;
    border-top-left-radius: 2px; }
  .panel-box .panel-bottom {
    padding: 10px;
    border-bottom-right-radius: 2px;
    border-bottom-left-radius: 2px; }
    .panel-box .panel-bottom p {
      margin: 0; }
  .panel-box .list-justified-container {
    padding: 0px 0; }
  .panel-box ul.list-justified {
    display: table;
    width: 100%;
    list-style: none;
    padding: 0; }
    .panel-box ul.list-justified > li {
      float: none;
      display: table-cell;
      padding: 10px;
      width: 1%; }
      .panel-box ul.list-justified > li:last-child {
        border: none; }
      .panel-box ul.list-justified > li p {
        margin: 0; }
  .panel-box .panel-icon,
  .panel-box .panel-img {
    display: block;
    margin: -80px auto -25px;
    border-radius: 50%;
    border: 11px solid #fff;
    width: 130px;
    height: 130px;
    line-height: 80px;
    text-align: center;
    font-size: 58px;
    text-shadow: -6px 8px 5px rgba(0, 0, 0, 0.3); }
  .panel-box .panel-icon {
    padding: 28px 35px 35px; }
  .panel-box .panel-img {
    padding: 0; }
    .panel-box .panel-img img {
      width: 100%;
      max-width: 100%; }

.mini-box {
  min-height: 120px;
  padding: 25px; }
  .mini-box .box-icon {
    display: inline-block;
    width: 70px;
    height: 70px;
    line-height: 70px;
    vertical-align: middle;
    text-align: center;
    font-size: 35px;
    border-radius: 2px; }
    .mini-box .box-icon.rounded {
      border-radius: 50%; }
  .mini-box .btn-icon,
  .mini-box .btn-icon-lined {
    margin: 0 15px 0 0;
    font-size: 32px; }
  .mini-box .box-info {
    display: inline-block;
    vertical-align: top; }
    .mini-box .box-info p {
      margin: 0; }

.panel-profile {
  border: none; }
  .panel-profile .profile {
    margin: 5px 15px 5px 5px;
    border-radius: 50%;
    padding: 5px;
    border: 1px solid rgba(0, 0, 0, 0.2); }
    .panel-profile .profile img {
      border-radius: 50%; }
  .panel-profile .list-group > li > i {
    margin-right: 10px;
    font-size: 16px;
    color: #777777;
    table-layout: fixed; }
  .panel-profile .list-justified-container {
    padding: 15px 0; }
  .panel-profile ul.list-justified {
    display: table;
    width: 100%;
    list-style: none;
    padding: 0; }
    .panel-profile ul.list-justified > li {
      float: none;
      display: table-cell;
      padding: 10px;
      width: 1%;
      border-right: 1px solid #eeeeee; }
      .panel-profile ul.list-justified > li:last-child {
        border: none; }
      .panel-profile ul.list-justified > li p {
        margin: 0; }

.popover-title {
  padding: 8px 14px 0;
  color: #aaa;
  font-weight: bold;
  border-bottom: none; }

.popover-content {
  color: #fafafa; }

.pricing-table {
  margin-bottom: 20px;
  text-align: center;
  background-color: #fcfcfc;
  color: #767676;
  border-radius: 2px;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); }
  .pricing-table > header {
    display: block;
    margin: 0;
    padding: 30px 40px;
    font-size: 22px;
    line-height: 1;
    font-weight: bold;
    text-transform: uppercase; }
  .pricing-table .pricing-price {
    padding: 14px;
    font-size: 18px;
    color: #fff;
    background-color: #ccc;
    border-bottom: 3px solid #b8b8b8; }
  .pricing-table .pricing-body > ul {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 16px; }
    .pricing-table .pricing-body > ul > li {
      padding: 12px;
      border-bottom: 1px solid rgba(0, 0, 0, 0.05);
      background-color: #f9f9f9; }
      .pricing-table .pricing-body > ul > li:nth-child(odd) {
        background-color: #eeeeee; }
      .pricing-table .pricing-body > ul > li strong {
        color: #222533; }
  .pricing-table > footer {
    padding: 30px 40px; }
    .pricing-table > footer > a {
      display: block;
      margin: 0;
      font-size: 16px; }
  .pricing-table.pricing-table-dark .pricing-price {
    background-color: #222533;
    border-bottom: 3px solid #12131b; }
  .pricing-table.pricing-table-primary .pricing-price {
    background-color: #1C7EBB;
    border-bottom: 3px solid #176698; }
  .pricing-table.pricing-table-success .pricing-price {
    background-color: #23AE89;
    border-bottom: 3px solid #1c8c6e; }
  .pricing-table.pricing-table-info .pricing-price {
    background-color: #2EC1CC;
    border-bottom: 3px solid #26a2ab; }
  .pricing-table.pricing-table-warning .pricing-price {
    background-color: #FFB61C;
    border-bottom: 3px solid #f2a400; }
  .pricing-table.pricing-table-danger .pricing-price {
    background-color: #E94B3B;
    border-bottom: 3px solid #e22c19; }

.ui-ribbon-container {
  position: relative; }
  .ui-ribbon-container .ui-ribbon-wrapper {
    position: absolute;
    overflow: hidden;
    width: 85px;
    height: 88px;
    top: -3px;
    right: -3px; }
  .ui-ribbon-container .ui-ribbon {
    position: relative;
    display: block;
    text-align: center;
    font-size: 15px;
    font-weight: bold;
    color: #fff;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    padding: 7px 0;
    left: -5px;
    top: 15px;
    width: 120px;
    line-height: 20px;
    background-color: #555555;
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }
    .ui-ribbon-container .ui-ribbon:before, .ui-ribbon-container .ui-ribbon:after {
      position: absolute;
      content: " ";
      line-height: 0;
      border-top: 2px solid #555555;
      border-left: 2px solid transparent;
      border-right: 2px solid transparent;
      bottom: -2px; }
    .ui-ribbon-container .ui-ribbon:before {
      left: 0;
      bottom: -1px; }
    .ui-ribbon-container .ui-ribbon:after {
      right: 0; }
  .ui-ribbon-container.ui-ribbon-primary .ui-ribbon {
    background-color: #1C7EBB; }
    .ui-ribbon-container.ui-ribbon-primary .ui-ribbon:before, .ui-ribbon-container.ui-ribbon-primary .ui-ribbon:after {
      border-top: 2px solid #1C7EBB; }
  .ui-ribbon-container.ui-ribbon-success .ui-ribbon {
    background-color: #23AE89; }
    .ui-ribbon-container.ui-ribbon-success .ui-ribbon:before, .ui-ribbon-container.ui-ribbon-success .ui-ribbon:after {
      border-top: 2px solid #23AE89; }
  .ui-ribbon-container.ui-ribbon-info .ui-ribbon {
    background-color: #2EC1CC; }
    .ui-ribbon-container.ui-ribbon-info .ui-ribbon:before, .ui-ribbon-container.ui-ribbon-info .ui-ribbon:after {
      border-top: 2px solid #2EC1CC; }
  .ui-ribbon-container.ui-ribbon-warning .ui-ribbon {
    background-color: #FFB61C; }
    .ui-ribbon-container.ui-ribbon-warning .ui-ribbon:before, .ui-ribbon-container.ui-ribbon-warning .ui-ribbon:after {
      border-top: 2px solid #FFB61C; }
  .ui-ribbon-container.ui-ribbon-danger .ui-ribbon {
    background-color: #E94B3B; }
    .ui-ribbon-container.ui-ribbon-danger .ui-ribbon:before, .ui-ribbon-container.ui-ribbon-danger .ui-ribbon:after {
      border-top: 2px solid #E94B3B; }

.flags-sprite,
.flags-american,
.flags-american-min,
.flags-french,
.flags-french-min,
.flags-china,
.flags-china-min,
.flags-germany,
.flags-italy,
.flags-italy-min,
.flags-japan,
.flags-japan-min,
.flags-korea,
.flags-korea-min,
.flags-portugal,
.flags-portugal-min,
.flags-russia,
.flags-russia-min,
.flags-spain-min,
.flags-spain {
  background-image: url("ui/images/flags.png");
  background-repeat: no-repeat; }

.flags-american {
  background-position: 0 0;
  height: 32px;
  width: 32px; }

.flags-china {
  background-position: 0 -32px;
  height: 32px;
  width: 32px; }

.flags-french {
  background-position: 0 -64px;
  height: 32px;
  width: 32px; }

.flags-germany {
  background-position: 0 -96px;
  height: 32px;
  width: 32px; }

.flags-italy {
  background-position: 0 -128px;
  height: 32px;
  width: 32px; }

.flags-japan {
  background-position: 0 -160px;
  height: 32px;
  width: 32px; }

.flags-korea {
  background-position: 0 -192px;
  height: 32px;
  width: 32px; }

.flags-portugal {
  background-position: 0 -224px;
  height: 32px;
  width: 32px; }

.flags-russia {
  background-position: 0 -256px;
  height: 32px;
  width: 32px; }

.flags-spain {
  background-position: 0 -288px;
  height: 32px;
  width: 32px; }

.flags-american-min {
  background-size: 16px;
  background-position: 0 0px;
  height: 16px;
  width: 32px; }

.flags-china-min {
  background-size: 16px;
  background-position: 0 -16px;
  height: 16px;
  width: 32px; }

.flags-french-min {
  background-size: 16px;
  background-position: 0 -32px;
  height: 16px;
  width: 32px; }

.flags-italy-min {
  background-size: 16px;
  background-position: 0 -64px;
  height: 16px;
  width: 32px; }

.flags-japan-min {
  background-size: 16px;
  background-position: 0 -80px;
  height: 16px;
  width: 32px; }

.flags-korea-min {
  background-size: 16px;
  background-position: 0 -96px;
  height: 16px;
  width: 32px; }

.flags-portugal-min {
  background-size: 16px;
  background-position: 0 -112px;
  height: 16px;
  width: 32px; }

.flags-russia-min {
  background-size: 16px;
  background-position: 0 -128px;
  height: 16px;
  width: 32px; }

.flags-spain-min {
  background-size: 16px;
  background-position: 0 -144px;
  height: 16px;
  width: 32px; }

.ui-timline-container {
  padding: 15px; }

.ui-timline-left .ui-timeline:before {
  left: 0; }

@media (min-width: 768px) {
  .ui-timline-left .ui-timeline .tl-item:before {
    display: none; } }

@media (min-width: 768px) {
  .ui-timline-left .ui-timeline .tl-item .tl-caption {
    margin-left: -55px; } }

@media (min-width: 768px) {
  .ui-timline-left .ui-timeline .tl-item .tl-body .tl-time {
    left: auto;
    right: 15px;
    color: #777777; } }

.ui-timeline {
  display: table;
  position: relative;
  table-layout: fixed;
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse; }
  .ui-timeline:before {
    background-color: #d5d5d5;
    bottom: 0px;
    content: "";
    position: absolute;
    left: 0;
    top: 30px;
    width: 1px;
    z-index: 0; }
    @media (min-width: 768px) {
      .ui-timeline:before {
        left: 50%; } }
  .ui-timeline .tl-item {
    display: table-row;
    margin-bottom: 5px; }
    .ui-timeline .tl-item:before {
      display: none;
      content: ""; }
      @media (min-width: 768px) {
        .ui-timeline .tl-item:before {
          display: block;
          width: 50%; } }
    .ui-timeline .tl-item .tl-caption {
      width: 150px;
      margin-left: -55px; }
      @media (min-width: 768px) {
        .ui-timeline .tl-item .tl-caption {
          margin-left: -110px; } }
    @media (min-width: 768px) {
      .ui-timeline .tl-item.alt {
        text-align: right; }
        .ui-timeline .tl-item.alt:before {
          display: none; }
        .ui-timeline .tl-item.alt:after {
          content: "";
          display: block;
          width: 50%; }
        .ui-timeline .tl-item.alt .tl-body .tl-entry {
          margin: 0 35px 15px 0; }
        .ui-timeline .tl-item.alt .tl-body .tl-time {
          right: -220px;
          left: auto;
          text-align: left; }
        .ui-timeline .tl-item.alt .tl-body .tl-icon {
          right: -53px;
          left: auto; }
        .ui-timeline .tl-item.alt .tl-body .tl-content:after {
          right: -16px;
          left: auto;
          border: 8px solid transparent;
          border-left: 8px solid rgba(255, 255, 255, 0.9); } }
    .ui-timeline .tl-item .tl-body {
      display: table-cell;
      width: 50%;
      vertical-align: top; }
      .ui-timeline .tl-item .tl-body .tl-entry {
        position: relative;
        margin: 0 0 15px 36px; }
      .ui-timeline .tl-item .tl-body .tl-time {
        z-index: 1;
        position: absolute;
        left: auto;
        right: 15px;
        top: 5px;
        width: 150px;
        color: #777777;
        line-height: 35px;
        text-align: right; }
        @media (min-width: 768px) {
          .ui-timeline .tl-item .tl-body .tl-time {
            left: -220px;
            right: auto;
            color: #767676; } }
      .ui-timeline .tl-item .tl-body .tl-icon {
        position: absolute;
        left: -53px;
        top: 5px; }
      .ui-timeline .tl-item .tl-body .tl-content {
        position: relative;
        padding: 15px;
        border-radius: 2px;
        background-color: rgba(255, 255, 255, 0.9); }
        .ui-timeline .tl-item .tl-body .tl-content:after {
          content: " ";
          line-height: 0;
          position: absolute;
          left: -16px;
          top: 15px;
          border: 8px solid transparent;
          border-right: 8px solid rgba(255, 255, 255, 0.9); }

.tooltip-inner {
  padding: .85em; }

.ui-map {
  display: block;
  height: 400px; }

.pagination-lg > li > a,
.pagination-lg > li span {
  line-height: 26px;
  padding: 10px 18px; }

.pagination > li:first-child > a,
.pagination > li:first-child > span, .pagination > li:last-child > a,
.pagination > li:last-child > span {
  border-radius: 2px; }

.pagination > li > a {
  color: #767676;
  border-radius: 2px;
  cursor: pointer; }

.pagination > li > a,
.pagination > li > span {
  padding: 5px 10px;
  margin-left: 10px; }

.pagination-sm > li > a,
.pagination-sm > li > span {
  padding: 4px 8px;
  font-size: 12px;
  line-height: 20px; }

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

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

.progress {
  box-shadow: none;
  background-color: #f5f5f5; }

.progressbar-xs {
  height: 10px; }

.progress-rounded {
  border-radius: 50px; }

.progress-bar {
  box-shadow: none; }

.progressbar-xs {
  height: 10px; }

.progressbar-sm {
  height: 15px; }

.ui-tab .nav-tabs {
  margin-bottom: 15px; }
  .ui-tab .nav-tabs.nav-justified > li.active > a {
    border-bottom-color: transparent; }
  .ui-tab .nav-tabs > li.active > a {
    background-color: #fff; }
  .ui-tab .nav-tabs a {
    color: #767676; }
    .ui-tab .nav-tabs a:hover {
      cursor: pointer; }

.ui-tab-container .nav-tabs {
  margin-bottom: 0; }
  .ui-tab-container .nav-tabs.nav-justified > li:last-child {
    border-right: 0; }
  .ui-tab-container .nav-tabs.nav-justified > li:hover > a, .ui-tab-container .nav-tabs.nav-justified > li:active > a, .ui-tab-container .nav-tabs.nav-justified > li:focus > a {
    border-width: 0 0 1px 0;
    border-style: solid;
    border-color: #ddd; }
  .ui-tab-container .nav-tabs.nav-justified > li > a {
    border-width: 0 0 1px 0;
    border-style: solid;
    border-color: #ddd; }
  .ui-tab-container .nav-tabs > li.active > a {
    color: #1C7EBB; }
  .ui-tab-container .nav-tabs > li:hover > a, .ui-tab-container .nav-tabs > li:active > a, .ui-tab-container .nav-tabs > li:focus > a {
    border: 0;
    background-color: transparent; }
  .ui-tab-container .nav-tabs > li > a {
    margin: 0;
    border: 0;
    padding: 15px 15px;
    font-weight: bold;
    border-radius: 0; }

.ui-tab-container .tab-content {
  padding: 15px 15px; }

.ui-tab-horizontal {
  border: 1px solid #ccc;
  border-radius: 2px; }
  .ui-tab-horizontal .nav-tabs {
    background-color: #f6f6f6; }
    .ui-tab-horizontal .nav-tabs > li {
      border-right: 1px solid #ddd; }
      .ui-tab-horizontal .nav-tabs > li.active:hover > a, .ui-tab-horizontal .nav-tabs > li.active:active > a, .ui-tab-horizontal .nav-tabs > li.active:focus > a {
        border: 0;
        background-color: #fff; }
      .ui-tab-horizontal .nav-tabs > li.active > a:focus, .ui-tab-horizontal .nav-tabs > li.active > a:hover, .ui-tab-horizontal .nav-tabs > li.active > a:active {
        border: 0; }

.ui-tab-vertical {
  position: relative;
  padding: 0 0 0 30%; }
  .ui-tab-vertical .nav-tabs {
    position: absolute;
    left: 0;
    top: 0;
    width: 30%;
    background-color: #f6f6f6;
    border-width: 1px 0 1px 1px;
    border-radius: 2px 0 0 2px;
    border-color: #ddd;
    border-style: solid; }
    .ui-tab-vertical .nav-tabs > li {
      width: 100%;
      float: none;
      border-bottom: 1px solid #ddd;
      margin: 0; }
      .ui-tab-vertical .nav-tabs > li:last-child {
        border-bottom: 0; }
      .ui-tab-vertical .nav-tabs > li.active:hover > a, .ui-tab-vertical .nav-tabs > li.active:active > a, .ui-tab-vertical .nav-tabs > li.active:focus > a {
        border: 0;
        background-color: #fff; }
      .ui-tab-vertical .nav-tabs > li.active > a {
        margin-right: -1px; }
        .ui-tab-vertical .nav-tabs > li.active > a:focus, .ui-tab-vertical .nav-tabs > li.active > a:hover, .ui-tab-vertical .nav-tabs > li.active > a:active {
          border: 0; }
      .ui-tab-vertical .nav-tabs > li > a {
        display: block; }
  .ui-tab-vertical .tab-content {
    border: 1px solid #ddd;
    border-radius: 0 2px 2px 0; }

.ui-tab-vertical-custom {
  position: relative;
  padding: 0 0 0 20%; }
  .ui-tab-vertical-custom .nav-tabs {
    position: absolute;
    left: 0;
    top: 0;
    width: 20%;
    background-color: #f6f6f6;
    border-width: 1px 0 1px 1px;
    border-radius: 2px 0 0 2px;
    border-color: #ddd;
    border-style: solid; }
    .ui-tab-vertical-custom .nav-tabs > li {
      width: 100%;
      float: none;
      border-bottom: 1px solid #ddd;
      margin: 0; }
      .ui-tab-vertical-custom .nav-tabs > li:last-child {
        border-bottom: 0; }
      .ui-tab-vertical-custom .nav-tabs > li.active:hover > a, .ui-tab-vertical-custom .nav-tabs > li.active:active > a, .ui-tab-vertical-custom .nav-tabs > li.active:focus > a {
        border: 0;
        background-color: #fff; }
      .ui-tab-vertical-custom .nav-tabs > li.active > a {
        margin-right: -1px; }
        .ui-tab-vertical-custom .nav-tabs > li.active > a:focus, .ui-tab-vertical-custom .nav-tabs > li.active > a:hover, .ui-tab-vertical-custom .nav-tabs > li.active > a:active {
          border: 0; }
      .ui-tab-vertical-custom .nav-tabs > li > a {
        display: block; }
  .ui-tab-vertical-custom .tab-content {
    border: 1px solid #ddd;
    border-radius: 0 2px 2px 0; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVpL2NvbXBvbmVudHMvX3NjYWZmb2xkaW5nLnNjc3MiLCJnbG9iYWwvX3Zhci5zY3NzIiwidWkvY29tcG9uZW50cy9fZ3JpZC5zY3NzIiwidWkvY29tcG9uZW50cy9fdHlwZS5zY3NzIiwidWkvY29tcG9uZW50cy9fdGFibGVzLnNjc3MiLCJ1aS9jb21wb25lbnRzL190YWJsZXMtcmVzcG9uc2l2ZS5zY3NzIiwidWkvY29tcG9uZW50cy9fZm9ybS1jaGVja2JveC1yYWRpby5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3ZlbmRvci1wcmVmaXhlcy5zY3NzIiwidWkvY29tcG9uZW50cy9fZm9ybS1lZGl0b3Iuc2NzcyIsInVpL2NvbXBvbmVudHMvX2Zvcm0tZWxlbWVudHMuc2NzcyIsInVpL2NvbXBvbmVudHMvX2Zvcm0taW5wdXQuc2NzcyIsInVpL2NvbXBvbmVudHMvX2Zvcm0tc2VsZWN0LnNjc3MiLCJ1aS9jb21wb25lbnRzL19mb3JtLXN3aXRjaC5zY3NzIiwidWkvY29tcG9uZW50cy9fZm9ybS12YWxpZGF0aW9uLnNjc3MiLCJ1aS9jb21wb25lbnRzL19idXR0b25zLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fYnV0dG9ucy5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsInVpL2NvbXBvbmVudHMvX2FuaW1hdGlvbi5zY3NzIiwidWkvY29tcG9uZW50cy9fYmFkZ2VzLnNjc3MiLCJ1aS9jb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwidWkvY29tcG9uZW50cy9fY2FsbG91dC5zY3NzIiwidWkvY29tcG9uZW50cy9fY2FyZHMuc2NzcyIsInVpL2NvbXBvbmVudHMvX2Ryb3Bkb3ducy5zY3NzIiwidWkvY29tcG9uZW50cy9faW1hZ2Utc2l6ZS5zY3NzIiwidWkvY29tcG9uZW50cy9fbGFiZWxzLnNjc3MiLCJ1aS9jb21wb25lbnRzL19saXN0LWdyb3VwLnNjc3MiLCJ1aS9jb21wb25lbnRzL19tYWlsLnNjc3MiLCJ1aS9jb21wb25lbnRzL19tYWlsLWNvbXBvc2Uuc2NzcyIsInVpL2NvbXBvbmVudHMvX25hdnMuc2NzcyIsInVpL2NvbXBvbmVudHMvX3BhbmVscy5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3BhbmVscy5zY3NzIiwidWkvY29tcG9uZW50cy9fcG9wb3ZlcnMuc2NzcyIsInVpL2NvbXBvbmVudHMvX3ByaWNpbmctdGFibGVzLnNjc3MiLCJ1aS9jb21wb25lbnRzL19yaWJib25zLnNjc3MiLCJ1aS9jb21wb25lbnRzL19zcHJpdGVzLnNjc3MiLCJ1aS9jb21wb25lbnRzL190aW1lbGluZS5zY3NzIiwidWkvY29tcG9uZW50cy9fdG9vbHRpcC5zY3NzIiwidWkvY29tcG9uZW50cy9fbWFwLnNjc3MiLCJ1aS9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCJib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwidWkvY29tcG9uZW50cy9fcHJvZ3Jlc3MtYmFycy5zY3NzIiwidWkvY29tcG9uZW50cy9fdGFiLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc0JBO0VBQ0ksOENBQTZDO0VBQzdDLCtDQUE4QztFQUM5Qyw4Q0FBNkMsRUFDaEQ7O0FBRUQ7RUFDSSxvQkNSMkI7RURTM0IsWUNVd0IsRURUM0I7O0FBSEQ7RUFDSSxvQkNSMkI7RURTM0IsWUNVd0IsRURUM0I7O0FBQ0Q7RUFDSSxvQkNaMkI7RURhM0IsWUNNd0IsRURMM0I7O0FBRUQ7RUFDSSxzQkFBcUIsRUFNeEI7RUFQRDtJQUlRLHNCQUFxQjtJQUNyQix5QkFBd0IsRUFDM0I7O0FBR0w7RUFDSSxlQUFjLEVBQ2pCOztBQUVEO0VBQ0ksVUFBUyxFQUNaOztBQUNEO0VBQ0ksVUFBUyxFQUNaOztBQUtEO0VBL0NJLDBCQ1EyQjtFRFAzQixZQzBCd0IsRURvQitCO0VBN0N2RDtJQUVJLDBCQ0l1QjtJREh2QixZQ3NCb0IsRURyQnZCOztBQTBDTDtFQWhESSwwQkNTMkI7RURSM0IsWUMwQndCLEVEcUIrQjtFQTlDdkQ7SUFFSSwwQkNLdUI7SURKdkIsWUNzQm9CLEVEckJ2Qjs7QUEyQ0w7RUFqREksMEJDVTJCO0VEVDNCLFlDMEJ3QixFRHNCeUI7RUEvQ2pEO0lBRUksMEJDTXVCO0lETHZCLFlDc0JvQixFRHJCdkI7O0FBNENMO0VBbERJLDBCQ1kyQjtFRFgzQixZQzBCd0IsRUR1QitCO0VBaER2RDtJQUVJLDBCQ1F1QjtJRFB2QixZQ3NCb0IsRURyQnZCOztBQTZDTDtFQW5ESSwwQkNhMkI7RURaM0IsWUMwQndCLEVEd0I2QjtFQWpEckQ7SUFFSSwwQkNTdUI7SURSdkIsWUNzQm9CLEVEckJ2Qjs7QUE4Q0w7RUFwREksMEJDZTJCO0VEZDNCLFlDMEJ3QixFRHlCNkI7RUFsRHJEO0lBRUksMEJDV3VCO0lEVnZCLFlDc0JvQixFRHJCdkI7O0FBaURMO0VBbEVJLHVCQWtFOEI7RUFqRTlCLGVDbUQyQixFRGNxQjtFQWhFaEQ7SUFDSSxlQ2lEdUIsRUQ3QzFCO0lBSEc7TUFDSSxlQytDbUIsRUQ5Q3RCOztBQTZEVDtFQW5FSSwwQkNrRDJCO0VEakQzQixlQ21EMkIsRURld0I7RUFqRW5EO0lBQ0ksZUNpRHVCLEVEN0MxQjtJQUhHO01BQ0ksZUMrQ21CLEVEOUN0Qjs7QUE4RFQ7RUFwRUksMEJDbUMyQjtFRGxDM0IsWUNxQ3dCLEVEOEJxQjtFQWxFN0M7SUFDSSxZQ21Db0IsRUQvQnZCO0lBSEc7TUFDSSxZQ2lDZ0IsRURoQ25COztBQStEVDtFQXJFSSwwQkNvQzJCO0VEbkMzQixZQ3FDd0IsRUQrQmlDO0VBbkV6RDtJQUNJLFlDbUNvQixFRC9CdkI7SUFIRztNQUNJLFlDaUNnQixFRGhDbkI7O0FBZ0VUO0VBdEVJLHVCQXNFOEI7RUFyRTlCLFlDcUN3QixFRGdDcUI7RUFwRTdDO0lBQ0ksWUNtQ29CLEVEL0J2QjtJQUhHO01BQ0ksWUNpQ2dCLEVEaENuQjs7QUFpRVQ7RUF2RUksMEJDbUIyQjtFRGxCM0IsWUNxQ3dCLEVEaUNpQztFQXJFekQ7SUFDSSxZQ21Db0IsRUQvQnZCO0lBSEc7TUFDSSxZQ2lDZ0IsRURoQ25COztBQWtFVDtFQXhFSSwwQkNnQzJCO0VEL0IzQixZQ3FDd0IsRURrQ29DO0VBdEU1RDtJQUNJLFlDbUNvQixFRC9CdkI7SUFIRztNQUNJLFlDaUNnQixFRGhDbkI7O0FBbUVUO0VBekVJLDBCQ29CMkI7RURuQjNCLFlDcUN3QixFRG1DaUM7RUF2RXpEO0lBQ0ksWUNtQ29CLEVEL0J2QjtJQUhHO01BQ0ksWUNpQ2dCLEVEaENuQjs7QUFvRVQ7RUExRUksMEJBMEVxQztFQXpFckMsWUNxQ3dCLEVEb0M0QjtFQXhFcEQ7SUFDSSxZQ21Db0IsRUQvQnZCO0lBSEc7TUFDSSxZQ2lDZ0IsRURoQ25COztBQXFFVDtFQTNFSSwwQkNxQjJCO0VEcEIzQixZQ3FDd0IsRURxQzJCO0VBekVuRDtJQUNJLFlDbUNvQixFRC9CdkI7SUFIRztNQUNJLFlDaUNnQixFRGhDbkI7O0FBc0VUO0VBNUVJLDBCQ3NCMkI7RURyQjNCLFlDcUN3QixFRHNDbUM7RUExRTNEO0lBQ0ksWUNtQ29CLEVEL0J2QjtJQUhHO01BQ0ksWUNpQ2dCLEVEaENuQjs7QUF1RVQ7RUE3RUksMEJDdUIyQjtFRHRCM0IsWUNxQ3dCLEVEdUNpQztFQTNFekQ7SUFDSSxZQ21Db0IsRUQvQnZCO0lBSEc7TUFDSSxZQ2lDZ0IsRURoQ25COztBQXlFVDtFQS9FSSwwQkN3QjJCO0VEdkIzQixZQ3FDd0IsRUR5QytCO0VBN0V2RDtJQUNJLFlDbUNvQixFRC9CdkI7SUFIRztNQUNJLFlDaUNnQixFRGhDbkI7O0FBMEVUO0VBaEZJLDBCQzBCMkI7RUR6QjNCLFlDcUN3QixFRDBDK0I7RUE5RXZEO0lBQ0ksWUNtQ29CLEVEL0J2QjtJQUhHO01BQ0ksWUNpQ2dCLEVEaENuQjs7QUEyRVQ7RUFqRkksMEJDc0IyQjtFRHJCM0IsWUNxQ3dCLEVEMkMrQjtFQS9FdkQ7SUFDSSxZQ21Db0IsRUQvQnZCO0lBSEc7TUFDSSxZQ2lDZ0IsRURoQ25COztBQThEVDtFQXBFSSwwQkNtQzJCO0VE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O01BQ1gsWUFBVztNQUNYLDhCeEM0UW9DO013QzNRcEMsVUFBUyxFQTBCWjtNQTNDVDtRQW1CZ0IsaUJBQWdCLEVBQ25CO01BcEJiO1FBMEJ3QixVQUFTO1FBQ1QsdUJBQXNCLEVBQ3pCO01BNUJyQjtRQWdDb0IsbUJBQWtCLEVBTXJCO1FBdENqQjtVQW9Dd0IsVUFBUyxFQUNaO01BckNyQjtRQXlDZ0IsZUFBYyxFQUNqQjtFQTFDYjtJQStDUSx1QnhDNk93QztJd0M1T3hDLDJCQUEwRCxFQUM3RCIsImZpbGUiOiJ1aS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcbkBtaXhpbiBiZy1zdHlsZSAoJGJhY2tncm91bmQsICRjb2xvcikge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGJnLXZhcmlhbnQtYWx0ICgkY29sb3IpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgY29sb3I6ICRyZXZlcnNlO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgY29sb3I6ICRyZXZlcnNlO1xuICAgIH1cbn1cblxuYm9keSB7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkICFpbXBvcnRhbnQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZSAhaW1wb3J0YW50O1xufVxuXG46OnNlbGVjdGlvbiB7XG4gICAgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG4gICAgY29sb3I6ICRyZXZlcnNlO1xufVxuOjotbW96LXNlbGVjdGlvbiB7XG4gICAgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG4gICAgY29sb3I6ICRyZXZlcnNlO1xufVxuXG5hIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1c3tcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5zcGFuLmJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm5vLW1hcmdpbiB7XG4gICAgbWFyZ2luOiAwO1xufVxuLm5vLWJvcmRlciB7XG4gICAgYm9yZGVyOiAwO1xufVxuXG4vLyBiYWNrZ3JvdW5kXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuLy8gb3ZlcnJpZGVzIEJvb3RzdHJhcFxuYS5iZy1wcmltYXJ5IHsgQGluY2x1ZGUgYmctdmFyaWFudC1hbHQgKCRicmFuZC1wcmltYXJ5KTsgfVxuYS5iZy1zdWNjZXNzIHsgQGluY2x1ZGUgYmctdmFyaWFudC1hbHQgKCRicmFuZC1zdWNjZXNzKTsgfVxuYS5iZy1pbmZvIHsgQGluY2x1ZGUgYmctdmFyaWFudC1hbHQgKCRicmFuZC1pbmZvKTsgfVxuYS5iZy13YXJuaW5nIHsgQGluY2x1ZGUgYmctdmFyaWFudC1hbHQgKCRicmFuZC13YXJuaW5nKTsgfVxuYS5iZy1kYW5nZXIgeyBAaW5jbHVkZSBiZy12YXJpYW50LWFsdCAoJGJyYW5kLWRhbmdlcik7IH1cbmEuYmctb3JhbmdlIHsgQGluY2x1ZGUgYmctdmFyaWFudC1hbHQgKCRjb2xvci1vcmFuZ2UpOyB9XG5cbi8vIG5vcm1hbFxuLmJnLXdoaXRlIHsgQGluY2x1ZGUgYmctc3R5bGUoI2ZmZiwgJHRleHQtY29sb3IpOyB9XG4uYmctYm9keSB7IEBpbmNsdWRlIGJnLXN0eWxlKCRib2R5LWJnLCAkdGV4dC1jb2xvcik7IH1cbi5iZy1kYXJrIHsgQGluY2x1ZGUgYmctc3R5bGUoJGRhcmssICRyZXZlcnNlKTsgfVxuLmJnLWRhcmstbGlnaHQgeyBAaW5jbHVkZSBiZy1zdHlsZSgkZGFyay1saWdodCwgJHJldmVyc2UpOyB9XG4uYmctYmxhY2sgeyBAaW5jbHVkZSBiZy1zdHlsZSgjMDAwLCAkcmV2ZXJzZSk7IH1cbi5iZy1wcmltYXJ5IHsgQGluY2x1ZGUgYmctc3R5bGUoJGJyYW5kLXByaW1hcnksICRyZXZlcnNlKTsgfVxuLmJnLXByaW1hcnktbGlnaHQgeyBAaW5jbHVkZSBiZy1zdHlsZSgkc2tpbi1saWdodCwgJHJldmVyc2UpOyB9XG4uYmctc3VjY2VzcyB7IEBpbmNsdWRlIGJnLXN0eWxlKCRicmFuZC1zdWNjZXNzLCAkcmV2ZXJzZSk7IH1cbi5iZy1yZXZlcmJlcmkgeyBAaW5jbHVkZSBiZy1zdHlsZSgjMUM3RUJCLCAkcmV2ZXJzZSk7IH1cbi5iZy1pbmZvIHsgQGluY2x1ZGUgYmctc3R5bGUoJGJyYW5kLWluZm8sICRyZXZlcnNlKTsgfVxuLmJnLWluZm8tYWx0IHsgQGluY2x1ZGUgYmctc3R5bGUoJGJyYW5kLWluZm8tYWx0LCAkcmV2ZXJzZSk7IH1cbi5iZy13YXJuaW5nIHsgQGluY2x1ZGUgYmctc3R5bGUoJGJyYW5kLXdhcm5pbmcsICRyZXZlcnNlKTsgfVxuXG4uYmctZGFuZ2VyIHsgQGluY2x1ZGUgYmctc3R5bGUoJGJyYW5kLWRhbmdlciwgJHJldmVyc2UpOyB9XG4uYmctb3JhbmdlIHsgQGluY2x1ZGUgYmctc3R5bGUoJGNvbG9yLW9yYW5nZSwgJHJldmVyc2UpOyB9XG4uYmctdmlvbGV0IHsgQGluY2x1ZGUgYmctc3R5bGUoJGNvbG9yLXZpb2xldCwgJHJldmVyc2UpOyB9XG4uYmctZGFyayB7IEBpbmNsdWRlIGJnLXN0eWxlKCRkYXJrLCAkcmV2ZXJzZSk7YmFja2dyb3VuZC1jb2xvcjojNWI1ZjYzOyB9XG4uYmctYnJpZ2h0IHsgQGluY2x1ZGUgYmctc3R5bGUoJGJyaWdodCwgJHRleHQtY29sb3IpOyB9XG4uYmctcmV2ZXJzZSB7IEBpbmNsdWRlIGJnLXN0eWxlKCRyZXZlcnNlLCAkdGV4dC1jb2xvcik7IH1cblxuLmJnLWZhY2Vib29rIHsgQGluY2x1ZGUgYmctc3R5bGUoIzMzNTM5NywgJHJldmVyc2UpOyB9XG4uYmctdHdpdHRlciB7IEBpbmNsdWRlIGJnLXN0eWxlKCMwMGM3ZjcsICRyZXZlcnNlKTsgfVxuLmJnLWdvb2dsZS1wbHVzIHsgQGluY2x1ZGUgYmctc3R5bGUoI2RmNGEzMiwgJHJldmVyc2UpOyB9XG5cblxuLmJnLXByaW1hcnktd2lkZ2V0IHsgQGluY2x1ZGUgYmctc3R5bGUoIzE3NzJiYiwgJHJldmVyc2UpOyB9XG4uYmctc3VjY2Vzcy13aWRnZXQgeyBAaW5jbHVkZSBiZy1zdHlsZSgjMWI0NjcxLCAkcmV2ZXJzZSk7IH1cbi5iZy1kYW5nZXItd2lkZ2V0IHsgQGluY2x1ZGUgYmctc3R5bGUoIzQ2OTRjMywgJHJldmVyc2UpOyB9XG4uYmctd2FybmluZy13aWRnZXQgeyBAaW5jbHVkZSBiZy1zdHlsZSgjMjc1Zjk2LCAkcmV2ZXJzZSk7IH1cbi5iZy1wcmltYXJ5LXNlY29uZC13aWRnZXQgeyBAaW5jbHVkZSBiZy1zdHlsZSgjNWJiN2VjLCAkcmV2ZXJzZSk7IH1cbiIsIi8vIFdoZW4gdHJ1ZSwgYXNzZXQgcGF0aCBoZWxwZXJzIGFyZSB1c2VkLCBvdGhlcndpc2UgdGhlIHJlZ3VsYXIgQ1NTIGB1cmwoKWAgaXMgdXNlZC5cbi8vIFdoZW4gdGhlcmUgbm8gZnVuY3Rpb24gaXMgZGVmaW5lZCwgYGZuKCcnKWAgaXMgcGFyc2VkIGFzIHN0cmluZyB0aGF0IGVxdWFscyB0aGUgcmlnaHQgaGFuZCBzaWRlXG4vLyBOQjogaW4gU2FzcyAzLjMgdGhlcmUgaXMgYSBuYXRpdmUgZnVuY3Rpb246IGZ1bmN0aW9uLWV4aXN0cyh0d2JzLWZvbnQtcGF0aClcbiRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXI6ICh0d2JzLWZvbnQtcGF0aChcIlwiKSAhPSB1bnF1b3RlKCd0d2JzLWZvbnQtcGF0aChcIlwiKScpKSAhZGVmYXVsdDtcblxuLy9cbi8vIFZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLz09IENvbG9yc1xuLy9cbi8vIyMgR3JheSBhbmQgYnJhbmQgY29sb3JzIGZvciB1c2UgYWNyb3NzIEJvb3RzdHJhcC5cblxuJGdyYXktYmFzZTogICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kZ3JheS1kYXJrZXI6ICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAxMy41JSkgIWRlZmF1bHQ7IC8vICMyMjJcbiRncmF5LWRhcms6ICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDIwJSkgIWRlZmF1bHQ7ICAgLy8gIzMzM1xuJGdyYXk6ICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMzMuNSUpICFkZWZhdWx0OyAvLyAjNTU1XG4kZ3JheS1saWdodDogICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA0Ni43JSkgIWRlZmF1bHQ7IC8vICM3NzdcbiRncmF5LWxpZ2h0ZXI6ICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDkzLjUlKSAhZGVmYXVsdDsgLy8gI2VlZVxuXG4kYnJhbmQtcHJpbWFyeTogICAgICAgICAjMUM3RUJCICFkZWZhdWx0O1xuJGJyYW5kLXN1Y2Nlc3M6ICAgICAgICAgIzIzQUU4OSAhZGVmYXVsdDtcbiRicmFuZC1pbmZvOiAgICAgICAgICAgICMyRUMxQ0MgIWRlZmF1bHQ7XG4kYnJhbmQtaW5mby1hbHQ6ICAgICAgICAjNkE1NUMyICFkZWZhdWx0O1xuJGJyYW5kLXdhcm5pbmc6ICAgICAgICAgI0ZGQjYxQyAhZGVmYXVsdDtcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgICNFOTRCM0IgIWRlZmF1bHQ7XG5cbiRjb2xvci1vcmFuZ2U6ICAgICAgICAgICNGOThFMzMgIWRlZmF1bHQ7XG4kY29sb3ItdmlvbGV0OiAgICAgICAgICAkYnJhbmQtaW5mby1hbHQ7XG5cbi8vICRza2luLWRhcmtlcjogICAgICAgICAgICNcbi8vICRza2luLWRhcms6ICAgICAgICAgICAgICM7XG4kc2tpbjogICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeTtcbiRza2luLWxpZ2h0OiAgICAgICAgICAgICM0NDlERDU7XG4vLyAkc2tpbi1saWdodGVyOiAgICAgICAgICAjXG4vLyAkc2tpbi1icmlnaHQ6ICAgICAgICAgICAjXG4kZGFyazogICAgICAgICAgICAgICAgICAjMjIyNTMzICFkZWZhdWx0O1xuJGRhcmstbGlnaHQ6ICAgICAgICAgICAgIzNEM0Y1MSAhZGVmYXVsdDtcbiRicmlnaHQ6ICAgICAgICAgICAgICAgICNmYWZhZmEgIWRlZmF1bHQ7XG4kcmV2ZXJzZTogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kc3RhdGUtZGVmYXVsdC1iZzogICAgICAgICAgICAgICNmNmY2ZjYgIWRlZmF1bHQ7IC8vIGFsc286IHBhZ2luYXRpb24gYmdcbiRzdGF0ZS1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWRlZmF1bHQtYmcsIC0xMCksIDUlKSAhZGVmYXVsdDsgXG4kc3RhdGUtZGVmYXVsdC1ib3JkZXItbGlnaHQ6ICAgICNmM2YzZjMgIWRlZmF1bHQ7IFxuXG5cbi8vPT0gU2NhZmZvbGRpbmdcbi8vXG4vLyMjIFNldHRpbmdzIGZvciBzb21lIG9mIHRoZSBtb3N0IGdsb2JhbCBzdHlsZXMuXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgYDxib2R5PmAuXG4kYm9keS1iZzogICAgICAgICAgICAgICAjZjNmM2YzICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgdGV4dCBjb2xvciBvbiBgPGJvZHk+YC5cbiR0ZXh0LWNvbG9yOiAgICAgICAgICAgICM3Njc2NzYgIWRlZmF1bHQ7XG5cbi8vKiogR2xvYmFsIHRleHR1YWwgbGluayBjb2xvci5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGNvbG9yIHNldCB2aWEgYGRhcmtlbigpYCBmdW5jdGlvbi5cbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbi8vKiogTGluayBob3ZlciBkZWNvcmF0aW9uLlxuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogdW5kZXJsaW5lICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwb2dyYXBoeVxuLy9cbi8vIyMgRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgXCJMYXRvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgIEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCBtb25vc3BhY2UgZm9udHMgZm9yIGA8Y29kZT5gLCBgPGtiZD5gLCBhbmQgYDxwcmU+YC5cbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sYXJnZTogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLXNtYWxsOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcblxuJGZvbnQtc2l6ZS1oMTogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi42KSkgIWRlZmF1bHQ7IC8vIH4zNnB4XG4kZm9udC1zaXplLWgyOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjE1KSkgIWRlZmF1bHQ7IC8vIH4zMHB4XG4kZm9udC1zaXplLWgzOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNykpICFkZWZhdWx0OyAvLyB+MjRweFxuJGZvbnQtc2l6ZS1oNDogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLWg1OiAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDY6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuXG4vLyoqIFVuaXQtbGVzcyBgbGluZS1oZWlnaHRgIGZvciB1c2UgaW4gY29tcG9uZW50cyBsaWtlIGJ1dHRvbnMuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgIDEuNDI4NTcxNDI5ICFkZWZhdWx0OyAvLyAyMC8xNFxuJGxpbmUtaGVpZ2h0LWNhY3VsYXRlZDogICAyMHB4O1xuLy8qKiBDb21wdXRlZCBcImxpbmUtaGVpZ2h0XCIgKGBmb250LXNpemVgICogYGxpbmUtaGVpZ2h0YCkgZm9yIHVzZSB3aXRoIGBtYXJnaW5gLCBgcGFkZGluZ2AsIGV0Yy5cbiRsaW5lLWhlaWdodC1jb21wdXRlZDogICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSkgIWRlZmF1bHQ7IC8vIH4yMHB4XG5cbi8vKiogQnkgZGVmYXVsdCwgdGhpcyBpbmhlcml0cyBmcm9tIHRoZSBgPGJvZHk+YC5cbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAxLjEgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cblxuLy89PSBJY29ub2dyYXBoeVxuLy9cbi8vIyMgU3BlY2lmeSBjdXN0b20gbG9jYXRpb24gYW5kIGZpbGVuYW1lIG9mIHRoZSBpbmNsdWRlZCBHbHlwaGljb25zIGljb24gZm9udC4gVXNlZnVsIGZvciB0aG9zZSBpbmNsdWRpbmcgQm9vdHN0cmFwIHZpYSBCb3dlci5cblxuLy8qKiBMb2FkIGZvbnRzIGZyb20gdGhpcyBkaXJlY3RvcnkuXG4kaWNvbi1mb250LXBhdGg6ICAgICAgICAgIFwiLi4vYXNzZXRzL2ZvbnRzL1wiICFkZWZhdWx0O1xuLy8qKiBGaWxlIG5hbWUgZm9yIGFsbCBmb250IGZpbGVzLlxuJGljb24tZm9udC1uYW1lOiAgICAgICAgICBcImdseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXJcIiAhZGVmYXVsdDtcbi8vKiogRWxlbWVudCBJRCB3aXRoaW4gU1ZHIGljb24gZmlsZS5cbiRpY29uLWZvbnQtc3ZnLWlkOiAgICAgICAgXCJnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXJcIiAhZGVmYXVsdDtcblxuXG4vLz09IENvbXBvbmVudHNcbi8vXG4vLyMjIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS4gVmFsdWVzIGJhc2VkIG9uIDE0cHggdGV4dCBhbmQgMS40MjggbGluZS1oZWlnaHQgKH4yMHB4IHRvIHN0YXJ0KS5cblxuJHBhZGRpbmctYmFzZS12ZXJ0aWNhbDogICAgIDZweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDogICAxMnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1sYXJnZS12ZXJ0aWNhbDogICAgMTBweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw6ICAxNnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDogICAgNXB4ICFkZWZhdWx0O1xuJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDogIDEwcHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXhzLXZlcnRpY2FsOiAgICAgICAxcHggIWRlZmF1bHQ7XG4kcGFkZGluZy14cy1ob3Jpem9udGFsOiAgICAgNXB4ICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtbGFyZ2U6ICAgICAgICAgMS4zMyAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbWFsbDogICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICAycHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgMnB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgIDJweCAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8qKiBXaWR0aCBvZiB0aGUgYGJvcmRlcmAgZm9yIGdlbmVyYXRpbmcgY2FyZXRzIHRoYXQgaW5kaWNhdG9yIGRyb3Bkb3ducy5cbiRjYXJldC13aWR0aC1iYXNlOiAgICAgICAgICA0cHggIWRlZmF1bHQ7XG4vLyoqIENhcmV0cyBpbmNyZWFzZSBzbGlnaHRseSBpbiBzaXplIGZvciBsYXJnZXIgY29tcG9uZW50cy5cbiRjYXJldC13aWR0aC1sYXJnZTogICAgICAgICA1cHggIWRlZmF1bHQ7XG5cblxuLy89PSBUYWJsZXNcbi8vXG4vLyMjIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuLy8qKiBQYWRkaW5nIGZvciBgPHRoPmBzIGFuZCBgPHRkPmBzLlxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGZvciBjZWxscyBpbiBgLnRhYmxlLWNvbmRlbnNlZGAuXG4kdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZzogIDZweCAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYWxsIHRhYmxlcy5cbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1zdHJpcGVkYC5cbiR0YWJsZS1iZy1hY2NlbnQ6ICAgICAgICAgICAgICAgI2Y5ZjlmOSAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLWhvdmVyYC5cbiR0YWJsZS1iZy1ob3ZlcjogICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR0YWJsZS1iZy1hY3RpdmU6ICAgICAgICAgICAgICAgJHRhYmxlLWJnLWhvdmVyICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09IEJ1dHRvbnNcbi8vXG4vLyMjIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIG5vcm1hbCAhZGVmYXVsdDtcblxuJGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4kYnRuLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1wcmltYXJ5LWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXN1Y2Nlc3MtYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1pbmZvLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICAgZGFya2VuKCRidG4taW5mby1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi13YXJuaW5nLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRhbmdlci1iZzogICAgICAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKCRidG4tZGFuZ2VyLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4taW5mby1hbHQtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWFsdC1iZzogICAgICAgICAgICAgICAgICRicmFuZC1pbmZvLWFsdCAhZGVmYXVsdDtcbiRidG4taW5mby1hbHQtYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1pbmZvLWFsdC1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgJGRhcmsgIWRlZmF1bHQ7XG4kYnRuLWRhcmstYm9yZGVyOiAgICAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1kYXJrLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuLy89PSBGb3Jtc1xuLy9cbi8vIyNcblxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dCBkaXNhYmxlZD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgYDxpbnB1dD5gc1xuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcbiRpbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICNDQkQ1REQgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IFJlbmFtZSBgJGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGAkaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgaW5wdXRzIG9uIGZvY3VzXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAgICAgICAgICAgICAjNjZhZmU5ICFkZWZhdWx0O1xuXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgICAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgICAoY2VpbCgkZm9udC1zaXplLWxhcmdlICogJGxpbmUtaGVpZ2h0LWxhcmdlKSArICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtc21hbGw6ICAgICAgICAgICAgIChmbG9vcigkZm9udC1zaXplLXNtYWxsICogJGxpbmUtaGVpZ2h0LXNtYWxsKSArICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG5cbi8vKiogYC5mb3JtLWdyb3VwYCBtYXJnaW5cbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRsZWdlbmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kbGVnZW5kLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGN1cnNvciBmb3IgZm9ybSBjb250cm9scyBhbmQgYnV0dG9ucy5cbiRjdXJzb3ItZGlzYWJsZWQ6ICAgICAgICAgICAgICAgIG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG5cbi8vPT0gRHJvcGRvd25zXG4vL1xuLy8jIyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vKiogQmFja2dyb3VuZCBmb3IgdGhlIGRyb3Bkb3duIG1lbnUuXG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgLlxuJGRyb3Bkb3duLWJvcmRlcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMTUpICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgICoqZm9yIElFOCoqLlxuJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbi8vKiogRGl2aWRlciBjb2xvciBmb3IgYmV0d2VlbiBkcm9wZG93biBpdGVtcy5cbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogRHJvcGRvd24gbGluayB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbi8vKiogSG92ZXIgY29sb3IgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogSG92ZXIgYmFja2dyb3VuZCBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIHRleHQgY29sb3IuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbi8vKiogRGlzYWJsZWQgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIGZvciBoZWFkZXJzIHdpdGhpbiBkcm9wZG93biBtZW51cy5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyBOb3RlOiBEZXByZWNhdGVkICRkcm9wZG93bi1jYXJldC1jb2xvciBhcyBvZiB2My4xLjBcbiRkcm9wZG93bi1jYXJldC1jb2xvcjogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG5cblxuLy8tLSBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG4vL1xuLy8gTm90ZTogVGhlc2UgdmFyaWFibGVzIGFyZSBub3QgZ2VuZXJhdGVkIGludG8gdGhlIEN1c3RvbWl6ZXIuXG5cbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LW5hdmJhci1maXhlZDogICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kOiAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG5cblxuLy89PSBNZWRpYSBxdWVyaWVzIGJyZWFrcG9pbnRzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIGJyZWFrcG9pbnRzIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLCBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBFeHRyYSBzbWFsbCBzY3JlZW4gLyBwaG9uZVxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4teHM6ICAgICAgICAgICAgICAgICAgNDgwcHggIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHMtbWluYCBhcyBvZiB2My4yLjBcbiRzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi14cyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1waG9uZWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXBob25lOiAgICAgICAgICAgICAgICRzY3JlZW4teHMtbWluICFkZWZhdWx0O1xuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1zbWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXNtOiAgICAgICAgICAgICAgICAgIDc2OHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXNtICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXRhYmxldGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXRhYmxldDogICAgICAgICAgICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLW1kYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbWQ6ICAgICAgICAgICAgICAgICAgOTkycHggIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbWQgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWRlc2t0b3A6ICAgICAgICAgICAgICRzY3JlZW4tbWQtbWluICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZ2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnOiAgICAgICAgICAgICAgICAgIDEyMDBweCAhZGVmYXVsdDtcbiRzY3JlZW4tbGctbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1sZyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZy1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGctZGVza3RvcDogICAgICAgICAgJHNjcmVlbi1sZy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNvIG1lZGlhIHF1ZXJpZXMgZG9uJ3Qgb3ZlcmxhcCB3aGVuIHJlcXVpcmVkLCBwcm92aWRlIGEgbWF4aW11bVxuJHNjcmVlbi14cy1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1zbS1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbWQtbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLWxnLW1pbiAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gR3JpZCBzeXN0ZW1cbi8vXG4vLyMjIERlZmluZSB5b3VyIGN1c3RvbSByZXNwb25zaXZlIGdyaWQuXG5cbi8vKiogTnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYmV0d2VlbiBjb2x1bW5zLiBHZXRzIGRpdmlkZWQgaW4gaGFsZiBmb3IgdGhlIGxlZnQgYW5kIHJpZ2h0LlxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4vLyBOYXZiYXIgY29sbGFwc2Vcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWNvbWVzIHVuY29sbGFwc2VkLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludDogICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlZ2lucyBjb2xsYXBzaW5nLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXg6ICgkZ3JpZC1mbG9hdC1icmVha3BvaW50IC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBDb250YWluZXIgc2l6ZXNcbi8vXG4vLyMjIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuJGNvbnRhaW5lci10YWJsZXQ6ICAgICAgICAgICAgICg3MjBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1zbS1taW5gIGFuZCB1cC5cbiRjb250YWluZXItc206ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXRhYmxldCAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3BcbiRjb250YWluZXItZGVza3RvcDogICAgICAgICAgICAoOTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbWQtbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLW1kOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1kZXNrdG9wICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcbiRjb250YWluZXItbGFyZ2UtZGVza3RvcDogICAgICAoMTE0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLWxnLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1sZzogICAgICAgICAgICAgICAgICRjb250YWluZXItbGFyZ2UtZGVza3RvcCAhZGVmYXVsdDtcblxuXG4vLz09IE5hdmJhclxuLy9cbi8vIyNcblxuLy8gQmFzaWNzIG9mIGEgbmF2YmFyXG4kbmF2YmFyLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICRsaW5lLWhlaWdodC1jb21wdXRlZCAhZGVmYXVsdDtcbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgKCgkbmF2YmFyLWhlaWdodCAtICRsaW5lLWhlaWdodC1jb21wdXRlZCkgLyAyKSAhZGVmYXVsdDtcbiRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDogICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgI2Y4ZjhmOCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBsaW5rc1xuJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciB0b2dnbGVcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICM4ODggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLyBJbnZlcnRlZCBuYXZiYXJcbi8vIFJlc2V0IGludmVydGVkIG5hdmJhciBiYXNpY3NcbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzIyMiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXG4kbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciB0b2dnbGVcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IE5hdnNcbi8vXG4vLyMjXG5cbi8vPT09IFNoYXJlZCBuYXYgc3R5bGVzXG4kbmF2LWxpbmstcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vPT0gVGFic1xuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG4vLz09IFBpbGxzXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2luYXRpb25cbi8vXG4vLyMjXG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR0ZXh0LWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICNkY2UwZTAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICR0ZXh0LWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICNhYWEgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1kZWZhdWx0LWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWRlZmF1bHQtYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBQYWdlclxuLy9cbi8vIyNcblxuJHBhZ2VyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYmcgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kcGFnZXItaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHBhZ2VyLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG4kcGFnZXItZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IEp1bWJvdHJvblxuLy9cbi8vIyNcblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWNvbG9yOiAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tZm9udC1zaXplOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNSkpICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWZvbnQtc2l6ZTogICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogNC41KSkgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3JtIHN0YXRlcyBhbmQgYWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgY29sb3JzIGZvciBmb3JtIGZlZWRiYWNrIHN0YXRlcyBhbmQsIGJ5IGRlZmF1bHQsIGFsZXJ0cy5cblxuJHN0YXRlLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgICAgIzIyOTE3MyAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICNGMkZDRjkgIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtc3VjY2Vzcy1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICAgICAjMjY5MjlDICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgI0VFRjhGQyAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1pbmZvLWJnLCAtMTApLCA3JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS13YXJuaW5nLXRleHQ6ICAgICAgICAgICAgICNBRjdGMTggIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1iZzogICAgICAgICAgICAgICAjRkZGQUYwICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXdhcm5pbmctYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWRhbmdlci10ZXh0OiAgICAgICAgICAgICAgI0IxM0QzMSAhZGVmYXVsdDtcbiRzdGF0ZS1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICNGREVGRUUgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtZGFuZ2VyLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cblxuLy89PSBUb29sdGlwc1xuLy9cbi8vIyNcblxuLy8qKiBUb29sdGlwIG1heCB3aWR0aFxuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgdGV4dCBjb2xvclxuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBiYWNrZ3JvdW5kIGNvbG9yXG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG5cbi8vKiogVG9vbHRpcCBhcnJvdyB3aWR0aFxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIGFycm93IGNvbG9yXG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuXG4vLz09IFBvcG92ZXJzXG4vL1xuLy8jI1xuXG4vLyoqIFBvcG92ZXIgYm9keSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICRkYXJrICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG1heGltdW0gd2lkdGhcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRkYXJrICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGZhbGxiYWNrIGJvcmRlciBjb2xvclxuJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAkZGFyayAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIHRpdGxlIGJhY2tncm91bmQgY29sb3JcbiRwb3BvdmVyLXRpdGxlLWJnOiAgICAgICAgICAgICAgICAgICAgJGRhcmsgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGFycm93IGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAgICRkYXJrICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgd2lkdGhcbiRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoOiAgICAgICAgICAgKCRwb3BvdmVyLWFycm93LXdpZHRoICsgMSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgICAgJGRhcmsgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgZmFsbGJhY2sgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOiAgJGRhcmsgIWRlZmF1bHQ7XG5cblxuLy89PSBMYWJlbHNcbi8vXG4vLyMjXG5cbi8vKiogRGVmYXVsdCBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtZGVmYXVsdC1iZzogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogUHJpbWFyeSBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtcHJpbWFyeS1iZzogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtc3VjY2Vzcy1iZzogICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbi8vKiogSW5mbyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtaW5mby1iZzogICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbi8vKiogV2FybmluZyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtd2FybmluZy1iZzogICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbi8vKiogRGFuZ2VyIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kYW5nZXItYmc6ICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBsYWJlbCB0ZXh0IGNvbG9yXG4kbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEZWZhdWx0IHRleHQgY29sb3Igb2YgYSBsaW5rZWQgbGFiZWxcbiRsYWJlbC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBNb2RhbHNcbi8vXG4vLyMjXG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgdGl0bGVcbiRtb2RhbC10aXRsZS1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIHRpdGxlIGxpbmUtaGVpZ2h0XG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIGNvbnRlbnQgYXJlYVxuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvclxuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4yKSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3IgKipmb3IgSUU4KipcbiRtb2RhbC1jb250ZW50LWZhbGxiYWNrLWJvcmRlci1jb2xvcjogICAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuLy8qKiBNb2RhbCBiYWNrZHJvcCBiYWNrZ3JvdW5kIGNvbG9yXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBiYWNrZHJvcCBvcGFjaXR5XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAuNSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgaGVhZGVyIGJvcmRlciBjb2xvclxuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgI2U1ZTVlNSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgZm9vdGVyIGJvcmRlciBjb2xvclxuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgIDkwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgNjAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuXG4vLz09IEFsZXJ0c1xuLy9cbi8vIyMgRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nOiAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgYm9sZCAhZGVmYXVsdDtcblxuJGFsZXJ0LXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtaW5mby1iZzogICAgICAgICAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC13YXJuaW5nLWJnOiAgICAgICAgICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LWRhbmdlci1iZzogICAgICAgICAgICAgJHN0YXRlLWRhbmdlci1iZyAhZGVmYXVsdDtcbiRhbGVydC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyICFkZWZhdWx0O1xuXG5cbi8vPT0gUHJvZ3Jlc3MgYmFyc1xuLy9cbi8vIyNcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSB3aG9sZSBwcm9ncmVzcyBjb21wb25lbnRcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFByb2dyZXNzIGJhciB0ZXh0IGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBWYXJpYWJsZSBmb3Igc2V0dGluZyByb3VuZGVkIGNvcm5lcnMgb24gcHJvZ3Jlc3MgYmFyLlxuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIFN1Y2Nlc3MgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXN1Y2Nlc3MtYmc6ICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbi8vKiogV2FybmluZyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItd2FybmluZy1iZzogICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWRhbmdlci1iZzogICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuLy8qKiBJbmZvIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1pbmZvLWJnOiAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG5cblxuLy89PSBMaXN0IGdyb3VwXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb24gYC5saXN0LWdyb3VwLWl0ZW1gXG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIGAubGlzdC1ncm91cC1pdGVtYCBib3JkZXIgY29sb3JcbiRsaXN0LWdyb3VwLWJvcmRlcjogICAgICAgICAgICAgI2VmZjJmNyAhZGVmYXVsdDtcbi8vKiogTGlzdCBncm91cCBib3JkZXIgcmFkaXVzXG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBzaW5nbGUgbGlzdCBpdGVtcyBvbiBob3ZlclxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3Igb2YgYWN0aXZlIGxpc3QgZWxlbWVudHNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXI6ICAgICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLXRleHQtY29sb3I6ICBsaWdodGVuKCRsaXN0LWdyb3VwLWFjdGl2ZS1iZywgNDAlKSAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIG9mIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLXRleHQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1saW5rLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhvdmVyLWNvbG9yOiAgICRsaXN0LWdyb3VwLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I6ICMzMzMgIWRlZmF1bHQ7XG5cblxuLy89PSBQYW5lbHNcbi8vXG4vLyMjXG5cbiRwYW5lbC1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtYm9keS1wYWRkaW5nOiAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJHBhbmVsLWhlYWRpbmctcGFkZGluZzogICAgICAgMTBweCAxNXB4ICFkZWZhdWx0O1xuJHBhbmVsLWZvb3Rlci1wYWRkaW5nOiAgICAgICAgJHBhbmVsLWhlYWRpbmctcGFkZGluZyAhZGVmYXVsdDtcbiRwYW5lbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciBlbGVtZW50cyB3aXRoaW4gcGFuZWxzXG4kcGFuZWwtaW5uZXItYm9yZGVyOiAgICAgICAgICAkc3RhdGUtZGVmYXVsdC1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAjZmFmYWZhICFkZWZhdWx0O1xuXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWJvcmRlcjogICAgICAgICRzdGF0ZS1kZWZhdWx0LWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICRzdGF0ZS1kZWZhdWx0LWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtcHJpbWFyeS10ZXh0OiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhbmVsLXByaW1hcnktYm9yZGVyOiAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnOiAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJHBhbmVsLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1zdWNjZXNzLWhlYWRpbmctYmc6ICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLWluZm8taGVhZGluZy1iZzogICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmc6ICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuXG5cbi8vPT0gVGh1bWJuYWlsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGltYWdlXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICA0cHggIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBiYWNrZ3JvdW5kIGNvbG9yXG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJvcmRlciBjb2xvclxuJHRodW1ibmFpbC1ib3JkZXI6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJvcmRlciByYWRpdXNcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQ3VzdG9tIHRleHQgY29sb3IgZm9yIHRodW1ibmFpbCBjYXB0aW9uc1xuJHRodW1ibmFpbC1jYXB0aW9uLWNvbG9yOiAgICAgJHRleHQtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgY2FwdGlvblxuJHRodW1ibmFpbC1jYXB0aW9uLXBhZGRpbmc6ICAgOXB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gV2VsbHNcbi8vXG4vLyMjXG5cbiR3ZWxsLWJnOiAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kd2VsbC1ib3JkZXI6ICAgICAgICAgICAgICAgICBkYXJrZW4oJHdlbGwtYmcsIDclKSAhZGVmYXVsdDtcblxuXG4vLz09IEJhZGdlc1xuLy9cbi8vIyNcblxuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogTGlua2VkIGJhZGdlIHRleHQgY29sb3Igb24gaG92ZXJcbiRiYWRnZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYmFkZ2UtYmc6ICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBCYWRnZSB0ZXh0IGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xuJGJhZGdlLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhZGdlIGJhY2tncm91bmQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWJnOiAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xuJGJhZGdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgMSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBCcmVhZGNydW1ic1xuLy9cbi8vIyNcblxuJGJyZWFkY3J1bWItcGFkZGluZy12ZXJ0aWNhbDogICA4cHggIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw6IDE1cHggIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgYmFja2dyb3VuZCBjb2xvclxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAkc3RhdGUtZGVmYXVsdC1iZyAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiB0ZXh0IGNvbG9yXG4kYnJlYWRjcnVtYi1jb2xvcjogICAgICAgICAgICAgICRzdGF0ZS1kZWZhdWx0LWJvcmRlciAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBvZiBjdXJyZW50IHBhZ2UgaW4gdGhlIGJyZWFkY3J1bWJcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIFRleHR1YWwgc2VwYXJhdG9yIGZvciBiZXR3ZWVuIGJyZWFkY3J1bWIgZWxlbWVudHNcbiRicmVhZGNydW1iLXNlcGFyYXRvcjogICAgICAgICAgXCIvXCIgIWRlZmF1bHQ7XG5cblxuLy89PSBDYXJvdXNlbFxuLy9cbi8vIyNcblxuJGNhcm91c2VsLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKDAsMCwwLC42KSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gQ2xvc2Vcbi8vXG4vLyMjXG5cbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgMCAxcHggMCAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29kZVxuLy9cbi8vIyNcblxuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgI2M3MjU0ZSAhZGVmYXVsdDtcbiRjb2RlLWJnOiAgICAgICAgICAgICAgICAgICAgICNmOWYyZjQgIWRlZmF1bHQ7XG5cbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuXG4kcHJlLWJnOiAgICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRwcmUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLz09IFR5cGVcbi8vXG4vLyMjXG5cbi8vKiogSG9yaXpvbnRhbCBvZmZzZXQgZm9yIGZvcm1zIGFuZCBsaXN0cy5cbiRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWw6IDE4MHB4ICFkZWZhdWx0O1xuLy8qKiBUZXh0IG11dGVkIGNvbG9yXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQWJicmV2aWF0aW9ucyBhbmQgYWNyb255bXMgYm9yZGVyIGNvbG9yXG4kYWJici1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogSGVhZGluZ3Mgc21hbGwgY29sb3JcbiRoZWFkaW5ncy1zbWFsbC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIHNtYWxsIGNvbG9yXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBmb250IHNpemVcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBib3JkZXIgY29sb3JcbiRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjogICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFBhZ2UgaGVhZGVyIGJvcmRlciBjb2xvclxuJHBhZ2UtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogV2lkdGggb2YgaG9yaXpvbnRhbCBkZXNjcmlwdGlvbiBsaXN0IHRpdGxlc1xuJGRsLWhvcml6b250YWwtb2Zmc2V0OiAgICAgICAgJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbCAhZGVmYXVsdDtcbi8vKiogUG9pbnQgYXQgd2hpY2ggLmRsLWhvcml6b250YWwgYmVjb21lcyBob3Jpem9udGFsXG4kZGwtaG9yaXpvbnRhbC1icmVha3BvaW50OiAgICAkZ3JpZC1mbG9hdC1icmVha3BvaW50ICFkZWZhdWx0O1xuLy8qKiBIb3Jpem9udGFsIGxpbmUgY29sb3IuXG4kaHItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuIiwiLnBhZ2UtY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbGFyZ2UtZGVza3RvcDtcbiAgICBtYXJnaW46IGF1dG87XG59IiwiXG4vLyBJbmNsdWRpbmc6IEdyYWRpZW50IHRleHQsIEJsb2NrcXVvdGUsIERyb3BjYXAsIEhpZ2hsaWdodCwgTGlzdCwgZGl2aWRlci9zcGFjZSwgYmFja2dyb3VuZFxuXG5cbi5ibG9ja3F1b3RlLWNvbG9yZWQge1xuICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgJGJyYW5kLXByaW1hcnk7XG4gICAgJi5wdWxsLXJpZ2h0IHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiA1cHggc29saWQgJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIH1cbn1cblxuLy8gR3JhZGllbnQgdGV4dFxuLmdyYWRpZW50LXRleHQge1xuICAgIGZvbnQtc2l6ZTogMTUwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7IC8vIGZhbGxiYWNrXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoOTJkZWcsICNmYjgzZmEsICMwMGFjZWQpO1xuICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnRleHQtc21hbGwgeyBmb250LXNpemU6IDEycHg7IH1cbi50ZXh0LW5vcm1hbCB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlOyB9XG4udGV4dC1odWdlIHsgZm9udC1zaXplOiA3MnB4OyB9XG4udGV4dC1sYXJnZSB7IGZvbnQtc2l6ZTogNTBweDsgfVxuLnNpemUtaDEgeyBmb250LXNpemU6ICRmb250LXNpemUtaDE7IH1cbi5zaXplLWgyIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgyOyB9XG4uc2l6ZS1oMyB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMzsgfVxuLnNpemUtaDQgeyBmb250LXNpemU6ICRmb250LXNpemUtaDQ7IH1cbi50ZXh0LXRoaW4geyBmb250LXdlaWdodDogMzAwOyB9XG4udGV4dC11bHRyYWxpZ2h0IHsgZm9udC13ZWlnaHQ6IDEwMDsgfVxuXG4vLyBjb2xvclxuLmNvbG9yLXByaW1hcnkgeyBjb2xvcjogJGJyYW5kLXByaW1hcnk7IH1cbi5jb2xvci1zdWNjZXNzIHsgY29sb3I6ICRicmFuZC1zdWNjZXNzOyB9XG4uY29sb3ItaW5mbyB7IGNvbG9yOiAkYnJhbmQtaW5mbzsgfVxuLmNvbG9yLWluZm8tYWx0IHsgY29sb3I6ICRicmFuZC1pbmZvLWFsdDsgfVxuLmNvbG9yLXdhcm5pbmcgeyBjb2xvcjogJGJyYW5kLXdhcm5pbmc7IH1cbi5jb2xvci1kYW5nZXIgeyBjb2xvcjogJGJyYW5kLWRhbmdlcjsgfVxuLmNvbG9yLWRhcmsgeyBjb2xvcjogJGRhcms7IH1cbi5jb2xvci1yZXZlcnNlIHsgY29sb3I6ICRyZXZlcnNlOyB9XG4uY29sb3ItZ3JheS1kYXJrZXIgeyBjb2xvcjogJGdyYXktZGFya2VyOyB9XG4uY29sb3ItZ3JheS1kYXJrIHsgY29sb3I6ICRncmF5LWRhcms7IH1cbi5jb2xvci1ncmF5IHsgY29sb3I6ICRncmF5OyB9XG4uY29sb3ItZ3JheS1saWdodCB7IGNvbG9yOiAkZ3JheS1saWdodDsgfVxuLmNvbG9yLWdyYXktbGlnaHRlciB7IGNvbG9yOiAkZ3JheS1saWdodGVyOyB9XG5cblxuLy8gRHJvcGNhcFxuLmRyb3BjYXAsXG4uZHJvcGNhcC1zcXVhcmUsXG4uZHJvcGNhcC1jaXJjbGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7ICAgICAgICBcbn1cblxuLmRyb3BjYXAge1xuICAgIGZvbnQtc2l6ZTogMy4xZW07XG59XG5cbi5kcm9wY2FwLXNxdWFyZSxcbi5kcm9wY2FwLWNpcmNsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktbGlnaHRlcjtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgd2lkdGg6IDM2cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZHJvcGNhcC1zcXVhcmUge1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7ICAgICAgICBcbiAgICBmb250LXNpemU6IDIuM2VtO1xufVxuXG4uZHJvcGNhcC1jaXJjbGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgICAgICAgIFxuICAgIGZvbnQtc2l6ZTogMS43OGVtO1xufVxuXG4uZHJvcGNhcC5jb2xvcmVkIHtcbiAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG59XG5cbi5kcm9wY2FwLXNxdWFyZS5jb2xvcmVkLFxuLmRyb3BjYXAtY2lyY2xlLmNvbG9yZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgIGNvbG9yOiAkcmV2ZXJzZTtcbn1cblxuXG4vLyBIaWdodGxpZ2h0XG4uaGlnaGxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcbiAgICBjb2xvcjogJHJldmVyc2U7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTsgICAgICAgIFxuICAgIHBhZGRpbmc6IDJweCA1cHg7XG4gICAgJi5jb2xvcmVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgfVxufVxuXG4vLyBcbi5wdWxsLWluIHtcbiAgICBtYXJnaW46IDAgLTE1cHg7XG59XG5cbi8vIGRpdmlkZXJcbi5kaXZpZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgJi5kaXZpZGVyLWRhc2hlZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IGRhc2hlZCAkc3RhdGUtZGVmYXVsdC1ib3JkZXI7XG4gICAgfVxuICAgICYuZGl2aWRlci1kb3R0ZWQge1xuICAgICAgICBib3JkZXI6IDFweCBkb3R0ZWQgJHN0YXRlLWRlZmF1bHQtYm9yZGVyO1xuICAgIH1cbn1cbi5kaXZpZGVyLXNtIHsgXG4gICAgbWFyZ2luLXRvcDogMTBweDsgXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgXG59XG4uZGl2aWRlci1sZyB7IFxuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbi5kaXZpZGVyLXhsIHsgXG4gICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG4vLyBcbi5zcGFjZSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIHBhZGRpbmc6IDVweDtcbn1cbi5zcGFjZS1tZCB7IHBhZGRpbmc6IDE1cHg7IH1cbi5zcGFjZS1sZyB7IHBhZGRpbmc6IDI1cHg7IH1cblxuLnNlY3Rpb24taGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xufVxuXG4uaHItY29sb3JlZCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbn1cblxuXG4iLCIudGFibGUtZHluYW1pYyB7XG4gICAgLy8gZmlsdGVyc1xuICAgIC50YWJsZS1maWx0ZXJzIHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICB9XG5cbiAgICAuZmlsdGVyLXJlc3VsdC1pbmZvIHtcbiAgICAgICAgcGFkZGluZzogN3B4O1xuICAgIH1cblxuICAgIC8vIHRhYmxlXG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkO1xuXG4gICAgICAgIHRoZWFkIHRoIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAmPi50aCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAyMHB4IDhweCA4cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5nbHlwaGljb24tY2hldnJvbi11cCxcbiAgICAgICAgICAgIC5nbHlwaGljb24tY2hldnJvbi1kb3duIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM5OTk7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRza2luO1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRza2luO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmEtYW5nbGUtdXAsXG4gICAgICAgICAgICAuZmEtYW5nbGUtZG93biB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHNraW47XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHNraW47XG4gICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cblxuICAgICAgICAgICAgLmdseXBoaWNvbi1jaGV2cm9uLXVwLFxuICAgICAgICAgICAgLmZhLWFuZ2xlLXVwIHtcbiAgICAgICAgICAgICAgICB0b3A6IDRweDtcbiAgICAgICAgICAgICAgICByaWdodDogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmZhLWFuZ2xlLWRvd24ge1xuICAgICAgICAgICAgICAgIHRvcDogMThweDtcbiAgICAgICAgICAgICAgICByaWdodDogNXB4O1xuICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAuZ2x5cGhpY29uLWNoZXZyb24tZG93biB7XG4gICAgICAgICAgICAgICAgdG9wOiAxOHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA2cHg7ICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gZm9vdGVyXG4gICAgLnRhYmxlLWZvb3RlcntcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICB9XG5cbiAgICAucGFnZS1udW0taW5mbyB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgcGFkZGluZzogNnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb24tY29udGFpbmVyIHtcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICBsaTpob3ZlciB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIlxuXG4vLyBmbGlwIHNjcm9sbCAoUHVyZSBDU1MpLCB0aGFua3MgdG8gaHR0cDovL2VsdmVyeS5uZXQvZGVtby9yZXNwb25zaXZlLXRhYmxlcy8jZmxpcC1zY3JvbGxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICAudGFibGUtZmxpcC1zY3JvbGwge1xuICAgICAgICAuY2Y6YWZ0ZXIgeyB2aXNpYmlsaXR5OiBoaWRkZW47IGRpc3BsYXk6IGJsb2NrOyBmb250LXNpemU6IDA7IGNvbnRlbnQ6IFwiIFwiOyBjbGVhcjogYm90aDsgaGVpZ2h0OiAwOyB9XG4gICAgICAgICogaHRtbCAuY2YgeyB6b29tOiAxOyB9XG4gICAgICAgICo6Zmlyc3QtY2hpbGQraHRtbCAuY2YgeyB6b29tOiAxOyB9XG4gICAgICAgIHRhYmxlIHsgd2lkdGg6IDEwMCU7IGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IGJvcmRlci1zcGFjaW5nOiAwOyB9XG5cbiAgICAgICAgdGgsXG4gICAgICAgIHRkIHsgbWFyZ2luOiAwOyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgICAgIHRoIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgICB0YWJsZSB7IGRpc3BsYXk6IGJsb2NrOyBwb3NpdGlvbjogcmVsYXRpdmU7IHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIHRoZWFkIHsgZGlzcGxheTogYmxvY2s7IGZsb2F0OiBsZWZ0OyB9XG4gICAgICAgIHRib2R5IHsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiBhdXRvOyBwb3NpdGlvbjogcmVsYXRpdmU7IG92ZXJmbG93LXg6IGF1dG87IHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICAgICAgdGhlYWQgdHIgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICAudGFibGUgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQgeyAvLyBhZGQgdG8gQm9vdHN0cmFwIHN0eWxlXG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDtcbiAgICAgICAgfVxuICAgICAgICB0aCB7IGRpc3BsYXk6IGJsb2NrOyB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgICAgICB0Ym9keSB0ciB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAgICAgICB0ZCB7IGRpc3BsYXk6IGJsb2NrOyBtaW4taGVpZ2h0OiAxLjI1ZW07IHRleHQtYWxpZ246IGxlZnQ7IH1cblxuXG4gICAgICAgIC8qIHNvcnQgb3V0IGJvcmRlcnMgKi9cblxuICAgICAgICB0aCB7IGJvcmRlci1ib3R0b206IDA7IGJvcmRlci1sZWZ0OiAwOyB9XG4gICAgICAgIHRkIHsgYm9yZGVyLWxlZnQ6IDA7IGJvcmRlci1yaWdodDogMDsgYm9yZGVyLWJvdHRvbTogMDsgfVxuICAgICAgICB0Ym9keSB0ciB7IGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2JhYmNiZjsgfVxuICAgICAgICB0aDpsYXN0LWNoaWxkLFxuICAgICAgICB0ZDpsYXN0LWNoaWxkIHsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiYWJjYmY7IH1cbiAgICB9XG59XG4iLCJcbi8vIFJhZGlvXG4udWktcmFkaW8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDAgMjBweCAxMHB4IDIwcHg7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgc3Bhbjpob3ZlciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl06ZGlzYWJsZWQgKyBzcGFuOmhvdmVyIHtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjY2NjO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBzcGFuIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIHNwYW46YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAvLyBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIC8vIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAtMjBweDtcbiAgICAgICAgdG9wOiAwO1xuXG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4xNXMgZWFzZS1pbi1vdXQpO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZCArIHNwYW46YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogLjY1O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICAgICAgICBjdXJzb3I6IG5vLWRyb3A7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBzcGFuOmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgfVxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgc3BhbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNnB4O1xuICAgICAgICBsZWZ0OiAtMTRweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmRpc2FibGVkOmNoZWNrZWQgKyBzcGFuOmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2NjYztcbiAgICB9XG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmRpc2FibGVkOmNoZWNrZWQgKyBzcGFuOmFmdGVyIHtcbiAgICAgICAgb3BhY2l0eTogLjY1O1xuICAgICAgICBjdXJzb3I6IG5vLWRyb3A7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG4gICAgfVxufVxuXG4vLyBDaGVja2JveFxuLnVpLWNoZWNrYm94IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwIDIwcHggMTBweCAyMHB4O1xuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIHNwYW46aG92ZXIge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkICsgc3Bhbjpob3ZlciB7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2NjYztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgc3BhbiB7XG4gICAgICAgIC8vIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBzcGFuOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYzsgICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjE1cyBlYXNlLWluLW91dCk7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkICsgc3BhbjpiZWZvcmUge1xuICAgICAgICBvcGFjaXR5OiAuNjU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgICAgIGN1cnNvcjogbm8tZHJvcDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIHNwYW46YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJyYW5kLXByaW1hcnk7XG4gICAgfVxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgc3BhbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogN3B4O1xuICAgICAgICBsZWZ0OiAtMTVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpkaXNhYmxlZDpjaGVja2VkICsgc3BhbjpiZWZvcmUge1xuICAgICAgICBvcGFjaXR5OiAuNjU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7ICAgICAgICAgXG4gICAgfVxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpkaXNhYmxlZDpjaGVja2VkICsgc3BhbjphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IC42NTtcbiAgICAgICAgY3Vyc29yOiBuby1kcm9wO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xuICAgIH1cbn0iLCIvLyBWZW5kb3IgUHJlZml4ZXNcbi8vXG4vLyBBbGwgdmVuZG9yIG1peGlucyBhcmUgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgZHVlIHRvIHRoZSBpbnRyb2R1Y3Rpb24gb2Zcbi8vIEF1dG9wcmVmaXhlciBpbiBvdXIgR3J1bnRmaWxlLiBUaGV5IGhhdmUgYmVlbiByZW1vdmVkIGluIHY0LlxuXG4vLyAtIEFuaW1hdGlvbnNcbi8vIC0gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gLSBCb3ggc2hhZG93XG4vLyAtIEJveCBzaXppbmdcbi8vIC0gQ29udGVudCBjb2x1bW5zXG4vLyAtIEh5cGhlbnNcbi8vIC0gUGxhY2Vob2xkZXIgdGV4dFxuLy8gLSBUcmFuc2Zvcm1hdGlvbnNcbi8vIC0gVHJhbnNpdGlvbnNcbi8vIC0gVXNlciBTZWxlY3RcblxuXG4vLyBBbmltYXRpb25zXG5AbWl4aW4gYW5pbWF0aW9uKCRhbmltYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgLW8tYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tbmFtZSgkbmFtZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogJG5hbWU7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWR1cmF0aW9uKCRkdXJhdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZGVsYXkoJGRlbGF5KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCgkaXRlcmF0aW9uLWNvdW50KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbiAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xufVxuQG1peGluIGFuaW1hdGlvbi1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZmlsbC1tb2RlKCRmaWxsLW1vZGUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG59XG5cbi8vIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIFByZXZlbnQgYnJvd3NlcnMgZnJvbSBmbGlja2VyaW5nIHdoZW4gdXNpbmcgQ1NTIDNEIHRyYW5zZm9ybXMuXG4vLyBEZWZhdWx0IHZhbHVlIGlzIGB2aXNpYmxlYCwgYnV0IGNhbiBiZSBjaGFuZ2VkIHRvIGBoaWRkZW5gXG5cbkBtaXhpbiBiYWNrZmFjZS12aXNpYmlsaXR5KCR2aXNpYmlsaXR5KSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG59XG5cbi8vIERyb3Agc2hhZG93c1xuLy9cbi8vIE5vdGU6IERlcHJlY2F0ZWQgYC5ib3gtc2hhZG93KClgIGFzIG9mIHYzLjEuMCBzaW5jZSBhbGwgb2YgQm9vdHN0cmFwJ3Ncbi8vIHN1cHBvcnRlZCBicm93c2VycyB0aGF0IGhhdmUgYm94IHNoYWRvdyBjYXBhYmlsaXRpZXMgbm93IHN1cHBvcnQgaXQuXG5cbkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkc2hhZG93OyAvLyBpT1MgPDQuMyAmIEFuZHJvaWQgPDQuMVxuICAgICAgICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG59XG5cbi8vIEJveCBzaXppbmdcbkBtaXhpbiBib3gtc2l6aW5nKCRib3htb2RlbCkge1xuICAtd2Via2l0LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgLW1vei1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgICAgICAgYm94LXNpemluZzogJGJveG1vZGVsO1xufVxuXG4vLyBDU1MzIENvbnRlbnQgQ29sdW1uc1xuQG1peGluIGNvbnRlbnQtY29sdW1ucygkY29sdW1uLWNvdW50LCAkY29sdW1uLWdhcDogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC13ZWJraXQtY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAtbW96LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAgICAgICBjb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gIC13ZWJraXQtY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgIC1tb3otY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgICAgICAgY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG59XG5cbi8vIE9wdGlvbmFsIGh5cGhlbmF0aW9uXG5AbWl4aW4gaHlwaGVucygkbW9kZTogYXV0bykge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogJG1vZGU7XG4gICAgIC1tb3otaHlwaGVuczogJG1vZGU7XG4gICAgICAtbXMtaHlwaGVuczogJG1vZGU7IC8vIElFMTArXG4gICAgICAgLW8taHlwaGVuczogJG1vZGU7XG4gICAgICAgICAgaHlwaGVuczogJG1vZGU7XG59XG5cbi8vIFBsYWNlaG9sZGVyIHRleHRcbkBtaXhpbiBwbGFjZWhvbGRlcigkY29sb3I6ICRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcikge1xuICAvLyBGaXJlZm94XG4gICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgb3BhY2l0eTogMTsgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjZcbiAgfVxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvbnNcbkBtaXhpbiBzY2FsZSgkcmF0aW8uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG59XG5cbkBtaXhpbiBzY2FsZVgoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbn1cbkBtaXhpbiBzY2FsZVkoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbn1cbkBtaXhpbiBza2V3KCR4LCAkeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzQ4ODU7IElFOStcbiAgICAgICAtby10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZSgkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG59XG5AbWl4aW4gcm90YXRlKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVgoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVkoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xufVxuQG1peGluIHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xufVxuQG1peGluIHBlcnNwZWN0aXZlLW9yaWdpbigkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjsgLy8gSUU5IG9ubHlcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xufVxuXG5cbi8vIFRyYW5zaXRpb25zXG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkdHJhbnNpdGlvbi1wcm9wZXJ0eS4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xufVxuQG1peGluIHRyYW5zaXRpb24tZGVsYXkoJHRyYW5zaXRpb24tZGVsYXkpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0cmFuc2l0aW9uLWR1cmF0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdHJhbnNmb3JtKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbn1cblxuXG4vLyBVc2VyIHNlbGVjdFxuLy8gRm9yIHNlbGVjdGluZyB0ZXh0IG9uIHRoZSBwYWdlXG5cbkBtaXhpbiB1c2VyLXNlbGVjdCgkc2VsZWN0KSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7IC8vIElFMTArXG4gICAgICAgICAgdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG59XG4iLCIvKlxuQGxpY2Vuc2UgdGV4dEFuZ3VsYXJcbkF1dGhvciA6IEF1c3RpbiBBbmRlcnNvblxuTGljZW5zZSA6IDIwMTMgTUlUXG5WZXJzaW9uIDEuMy4wXG5cblNlZSBSRUFETUUubWQgb3IgaHR0cHM6Ly9naXRodWIuY29tL2ZyYXl3aW5nL3RleHRBbmd1bGFyL3dpa2kgZm9yIHJlcXVpcmVtZW50cyBhbmQgdXNlLlxuKi9cblxuYm9keSA+IGlucHV0LnRhLWhpZGRlbi1pbnB1dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogYWRkIGdlbmVyaWMgc3R5bGluZyBmb3IgdGhlIGVkaXRvciAqL1xuLnVpLWVkaXRvciB7XG5cbiAgICAudGEtdG9vbGJhciB7XG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XG5cbiAgICAgICAgPiAuYnRuLWdyb3VwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgfSAgICAgICAgXG4gICAgfVxuXG4gICAgJi50YS1yb290LmZvY3Vzc2VkID4gLnRhLXNjcm9sbC13aW5kb3cuZm9ybS1jb250cm9sIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjNjZhZmU5O1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSksIDAgMCA4cHggcmdiYSgxMDIsIDE3NSwgMjMzLCAwLjYpO1xuICAgIH1cblxuICAgIC50YS1lZGl0b3IudGEtaHRtbCwgLnRhLXNjcm9sbC13aW5kb3cuZm9ybS1jb250cm9sIHtcbiAgICAgICAgbWluLWhlaWdodDogMzAwcHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICBmb250LXNpemU6IDEwMCU7XG4gICAgfVxuXG4gICAgLnRhLXNjcm9sbC13aW5kb3cuZm9ybS1jb250cm9sIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC50YS1zY3JvbGwtd2luZG93ID4gLnRhLWJpbmQge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICAgICAgICBwYWRkaW5nOiA2cHggMTJweDtcbiAgICB9XG5cbiAgICAudGEtZWRpdG9yOmZvY3VzIHtcbiAgICAgICAgdXNlci1zZWxlY3Q6IHRleHQ7XG4gICAgfVxuXG4gICAgLyogYWRkIHRoZSBzdHlsaW5nIGZvciB0aGUgYXdlc29tbmVzcyBvZiB0aGUgcmVzaXplciAqL1xuICAgIC50YS1yZXNpemVyLWhhbmRsZS1vdmVybGF5IHtcbiAgICAgICAgei1pbmRleDogMTAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnRhLXJlc2l6ZXItaGFuZGxlLW92ZXJsYXkgPiAudGEtcmVzaXplci1oYW5kbGUtaW5mbyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAxNnB4O1xuICAgICAgICByaWdodDogMTZweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgICAgIHBhZGRpbmc6IDAgNHB4O1xuICAgICAgICBvcGFjaXR5OiAwLjc7XG4gICAgfVxuXG4gICAgLnRhLXJlc2l6ZXItaGFuZGxlLW92ZXJsYXkgPiAudGEtcmVzaXplci1oYW5kbGUtYmFja2dyb3VuZCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiA1cHg7XG4gICAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICAgIGxlZnQ6IDVweDtcbiAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgfVxuXG4gICAgLnRhLXJlc2l6ZXItaGFuZGxlLW92ZXJsYXkgPiAudGEtcmVzaXplci1oYW5kbGUtY29ybmVyIHtcbiAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cblxuICAgIC50YS1yZXNpemVyLWhhbmRsZS1vdmVybGF5ID4gLnRhLXJlc2l6ZXItaGFuZGxlLWNvcm5lci10bHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGJsYWNrO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgYmxhY2s7XG4gICAgfVxuXG4gICAgLnRhLXJlc2l6ZXItaGFuZGxlLW92ZXJsYXkgPiAudGEtcmVzaXplci1oYW5kbGUtY29ybmVyLXRye1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBibGFjaztcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGJsYWNrO1xuICAgIH1cblxuICAgIC50YS1yZXNpemVyLWhhbmRsZS1vdmVybGF5ID4gLnRhLXJlc2l6ZXItaGFuZGxlLWNvcm5lci1ibHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGJsYWNrO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgYmxhY2s7XG4gICAgfVxuXG4gICAgLnRhLXJlc2l6ZXItaGFuZGxlLW92ZXJsYXkgPiAudGEtcmVzaXplci1oYW5kbGUtY29ybmVyLWJye1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgICAgICAgY3Vyc29yOiBzZS1yZXNpemU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIH1cblxuICAgIC8qIGNvcHkgdGhlIHBvcG92ZXIgY29kZSBmcm9tIGJvb3RzdHJhcCBzbyB0aGlzIHdpbGwgd29yayBldmVuIHdpdGhvdXQgaXQgKi9cbiAgICAucG9wb3ZlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiAxMDYwO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBtYXgtd2lkdGg6IDI3NnB4O1xuICAgICAgICBwYWRkaW5nOiAxcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDI4NTcxNDM7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIC4yKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAuMik7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIC4yKTtcbiAgICB9XG4gICAgLnBvcG92ZXIudG9wIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgfVxuICAgIC5wb3BvdmVyLmJvdHRvbSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxuICAgIC5wb3BvdmVyLXRpdGxlIHtcbiAgICAgICAgcGFkZGluZzogOHB4IDE0cHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ViZWJlYjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4IDVweCAwIDA7XG4gICAgfVxuICAgIC5wb3BvdmVyLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiA5cHggMTRweDtcbiAgICB9XG4gICAgLnBvcG92ZXIgPiAuYXJyb3csXG4gICAgLnBvcG92ZXIgPiAuYXJyb3c6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgICAucG9wb3ZlciA+IC5hcnJvdyB7XG4gICAgICAgIGJvcmRlci13aWR0aDogMTFweDtcbiAgICB9XG4gICAgLnBvcG92ZXIgPiAuYXJyb3c6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBib3JkZXItd2lkdGg6IDEwcHg7XG4gICAgfVxuICAgIC5wb3BvdmVyLnRvcCA+IC5hcnJvdyB7XG4gICAgICAgIGJvdHRvbTogLTExcHg7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMXB4O1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAjOTk5O1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC4yNSk7XG4gICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgfVxuICAgIC5wb3BvdmVyLnRvcCA+IC5hcnJvdzphZnRlciB7XG4gICAgICAgIGJvdHRvbTogMXB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAjZmZmO1xuICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIH1cbiAgICAucG9wb3Zlci5ib3R0b20gPiAuYXJyb3cge1xuICAgICAgICB0b3A6IC0xMXB4O1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTFweDtcbiAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzk5OTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMjUpO1xuICAgIH1cbiAgICAucG9wb3Zlci5ib3R0b20gPiAuYXJyb3c6YWZ0ZXIge1xuICAgICAgICB0b3A6IDFweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZjtcbiAgICB9XG59XG4iLCJcbi8vIEZvcm0gZ3JvdXAgLSBCdXR0b24gYWRkb25zXG4uaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biB7XG4gICAgLmJ0biB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY2FjdWxhdGVkO1xuICAgIH1cbn0iLCJcblxuLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkc2tpbjtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uZm9ybS1ncm91cCB7XG4gICAgLmNvbC1zbS0xMCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuLmlucHV0LXJvdW5kIHtcbiAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xufVxuXG5pbnB1dC5pbnB1dC1wcmltYXJ5IHtcbiAgICBib3JkZXItY29sb3I6ICRza2luO1xuICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRza2luO1xuICAgIH1cbn1cbmlucHV0LmlucHV0LWluZm8ge1xuICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLWluZm87XG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLWluZm87XG4gICAgfVxufVxuaW5wdXQuaW5wdXQtc3VjY2VzcyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtc3VjY2VzcztcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtc3VjY2VzcztcbiAgICB9XG59XG5pbnB1dC5pbnB1dC13YXJuaW5nIHtcbiAgICBib3JkZXItY29sb3I6ICRicmFuZC13YXJuaW5nO1xuICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRicmFuZC13YXJuaW5nO1xuICAgIH1cbn1cbmlucHV0LmlucHV0LWRhbmdlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtZGFuZ2VyO1xuICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRicmFuZC1kYW5nZXI7XG4gICAgfVxufVxuIiwiLnVpLXNlbGVjdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvLyBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbjogMCAwIDJweCAxLjIlO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgICA+IHNlbGVjdCB7XG4gICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHggMTBweCAxMHB4O1xuICAgICAgICBtaW4td2lkdGg6IDIwMHB4O1xuICAgICAgICB3aWR0aDogMTIwJTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDAuMDFweDtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogJyc7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBoaWRlIHNlbGVjdCBhcnJvdyBvbiB3ZWJraXRcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIH1cblxuICAgIC8vIGhpZGUgc2VsZWN0IGFycm93IG9uIElFIDEwK1xuICAgIHNlbGVjdDo6LW1zLWV4cGFuZCB7IGRpc3BsYXk6IG5vbmU7IH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiA4JTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGNvbG9yOiAkaW5wdXQtYm9yZGVyO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBib3JkZXItdG9wOiA2cHggc29saWQ7XG4gICAgICAgIGJvcmRlci1yaWdodDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItbGVmdDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBwb2ludGVyLWV2ZW50czpub25lO1xuICAgIH1cbn1cblxuLy8gSGlkZSBzZWxlY3QgYXJyb3cgaW4gRmlyZWZveCAzMCssIHRoYW5rcyBodHRwOi8vanNiaW4uY29tL3lhcnVoXG4vKiBTaG93IG9ubHkgdGhlIG5hdGl2ZSBhcnJvdyAqL1xuQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHsgXG4gICAgLnVpLXNlbGVjdCB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICAgIC51aS1zZWxlY3Qgc2VsZWN0IHtcbiAgICAgICAgd2lkdGg6IDEyMCU7XG4gICAgICAgIHdpZHRoOiAtbW96LWNhbGMoMTAwJSArIDNlbSk7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyBlbSk7XG4gICAgfVxufVxuLyogRmlyZWZveCBmb2N1cyBoYXMgb2RkIGFydGlmYWN0cyBhcm91bmQgdGhlIHRleHQsIHRoaXMga2lsbHMgdGhhdC4gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy86LW1vei1mb2N1c3JpbmcgKi9cbi51aS1zZWxlY3Qgc2VsZWN0Oi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICMwMDA7XG59XG4iLCJcbiR1aV9zd2l0Y2g6ICAgICAgICAgICAgICAgICAyNXB4O1xuJHVpX3N3aXRjaF9wYWRkaW5nOiAgICAgICAgIDIwcHg7XG4kdWlfc3dpdGNoX3NtOiAgICAgICAgICAgICAgMjBweDtcbiR1aV9zd2l0Y2hfc21fcGFkZGluZzogICAgICAxNnB4O1xuJHVpX3N3aXRjaF9sZzogICAgICAgICAgICAgIDMwcHg7XG4kdWlfc3dpdGNoX2xnX3BhZGRpbmc6ICAgICAgMjVweDtcblxuQG1peGluIHVpLXN3aXRjaC1zaXplKCRzd2l0Y2hfcGFkZGluZykge1xuICAgICYudWktc3dpdGNoLXN1Y2Nlc3MgOmNoZWNrZWQgKyBpIHtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDFweCByZ2JhKDAsMCwwLC41KSwgaW5zZXQgMCAwICgkc3dpdGNoX3BhZGRpbmcqMikgJGJyYW5kLXN1Y2Nlc3M7XG4gICAgfVxuXG4gICAgJi51aS1zd2l0Y2gtaW5mbyA6Y2hlY2tlZCArIGkge1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMXB4IHJnYmEoMCwwLDAsLjUpLCBpbnNldCAwIDAgKCRzd2l0Y2hfcGFkZGluZyoyKSAkYnJhbmQtaW5mbztcbiAgICB9XG5cbiAgICAmLnVpLXN3aXRjaC13YXJuaW5nIDpjaGVja2VkICsgaSB7XG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxcHggcmdiYSgwLDAsMCwuNSksIGluc2V0IDAgMCAoJHN3aXRjaF9wYWRkaW5nKjIpICRicmFuZC13YXJuaW5nO1xuICAgIH1cblxuICAgICYudWktc3dpdGNoLWRhbmdlciA6Y2hlY2tlZCArIGkge1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMXB4IHJnYmEoMCwwLDAsLjUpLCBpbnNldCAwIDAgKCRzd2l0Y2hfcGFkZGluZyoyKSAkYnJhbmQtZGFuZ2VyO1xuICAgIH0gICAgXG59XG5cbi8vIFB1cmUgQ1NTLCB0aGFua3MgaHR0cHM6Ly9naXRodWIuY29tL2FicGV0a292L3N3aXRjaGVyeS9pc3N1ZXMvMTNcbi51aS1zd2l0Y2gge1xuICAgIGlucHV0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICR1aV9zd2l0Y2hfcGFkZGluZztcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgZWFzZSAwLjJzKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJHVpX3N3aXRjaDtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDFweCByZ2JhKDAsMCwwLC41KSA7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHdpZHRoOiAkdWlfc3dpdGNoO1xuICAgICAgICAgICAgaGVpZ2h0OiAkdWlfc3dpdGNoO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJHVpX3N3aXRjaDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwwLDAsLjUpOyAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgOmNoZWNrZWQgKyBpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkdWlfc3dpdGNoX3BhZGRpbmc7XG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxcHggcmdiYSgwLDAsMCwuNSksIGluc2V0IDAgMCAoJHVpX3N3aXRjaF9wYWRkaW5nKjIpICRicmFuZC1wcmltYXJ5IDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSB1aS1zd2l0Y2gtc2l6ZSgkdWlfc3dpdGNoX3BhZGRpbmcpO1xuXG5cbiAgICAmLnVpLXN3aXRjaC1zbSB7XG4gICAgICAgIGkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJHVpX3N3aXRjaF9zbV9wYWRkaW5nO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJHVpX3N3aXRjaF9zbTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAkdWlfc3dpdGNoX3NtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogJHVpX3N3aXRjaF9zbTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkdWlfc3dpdGNoX3NtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgOmNoZWNrZWQgKyBpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICR1aV9zd2l0Y2hfc21fcGFkZGluZztcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxcHggcmdiYSgwLDAsMCwuNSksIGluc2V0IDAgMCAoJHVpX3N3aXRjaF9zbV9wYWRkaW5nKjIpICRicmFuZC1wcmltYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgdWktc3dpdGNoLXNpemUoJHVpX3N3aXRjaF9zbV9wYWRkaW5nKTtcbiAgICB9XG5cbiAgICAmLnVpLXN3aXRjaC1sZyB7XG4gICAgICAgIGkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJHVpX3N3aXRjaF9sZ19wYWRkaW5nO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJHVpX3N3aXRjaF9sZztcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAkdWlfc3dpdGNoX2xnO1xuICAgICAgICAgICAgICAgIGhlaWdodDogJHVpX3N3aXRjaF9sZztcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkdWlfc3dpdGNoX2xnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgOmNoZWNrZWQgKyBpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICR1aV9zd2l0Y2hfbGdfcGFkZGluZztcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxcHggcmdiYSgwLDAsMCwuNSksIGluc2V0IDAgMCAoJHVpX3N3aXRjaF9sZ19wYWRkaW5nKjIpICRicmFuZC1wcmltYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgdWktc3dpdGNoLXNpemUoJHVpX3N3aXRjaF9sZ19wYWRkaW5nKTtcbiAgICB9XG59XG5cbiIsIlxuLy8gZm9ybSB2YWxpZGF0aW9uXG4uZm9ybS12YWxpZGF0aW9ue1xuICAgIC5uZy1wcmlzdGluZSB7fSAvLyBXaGVuIGl0IGlzIGZpcnN0IGluaXRpYWxpemVkXG4gICAgLm5nLWRpcnR5IHt9IC8vIFdoZW4gdGhlIHZpZXcgY2hhbmdlc1xuICAgIC5uZy12YWxpZC5uZy1kaXJ0eSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLXN1Y2Nlc3M7XG4gICAgfVxuICAgIC5uZy1pbnZhbGlkLm5nLWRpcnR5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtZGFuZ2VyO1xuICAgIH1cbn0iLCJcbi8vIG1peGluXG5AbWl4aW4gYnV0dG9uLWxpbmUtdmFyaWFudCgkY29sb3IsICRiYWNrZ3JvdW5kLCAkYm9yZGVyKSB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gICAgLm9wZW4gJiB7XG4gICAgICAgICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGJ1dHRvbi1pY29uLXZhcmlhbnQoJHNpemUpIHtcbiAgICBoZWlnaHQ6ICRzaXplO1xuICAgIHdpZHRoOiAkc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJHNpemU7XG4gICAgaSB7IGxpbmUtaGVpZ2h0OiAkc2l6ZTsgfVxuICAgICYuYnRuLWljb24tbGluZWQge1xuICAgICAgICBsaW5lLWhlaWdodDogKCRzaXplIC0gNHB4KTtcbiAgICAgICAgaSB7IGxpbmUtaGVpZ2h0OiAoJHNpemUgLSA0cHgpOyB9XG5cbiAgICAgICAgJi5idG4taWNvbi10aGluIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAoJHNpemUgLSAycHgpO1xuICAgICAgICAgICAgaSB7IGxpbmUtaGVpZ2h0OiAoJHNpemUgLSAycHgpOyB9XG4gICAgICAgIH1cbiAgICB9ICAgIFxufVxuXG5AbWl4aW4gc29jaWFsLWJ1dHRvbi12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyKSB7XG4gICAgY29sb3I6ICRyZXZlcnNlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRyZXZlcnNlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgOCUpO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAxMiUpICAgICAgICBcbiAgICB9ICAgIFxufVxuXG4vLyBhZGQgdG8gZGVmYXVsdCBidXR0b25cbi5idG4taW5mby1hbHQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4taW5mby1hbHQtY29sb3IsICRidG4taW5mby1hbHQtYmcsICRidG4taW5mby1hbHQtYm9yZGVyKTtcbn1cbi5idG4tZGFyayB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1kYXJrLWNvbG9yLCAkYnRuLWRhcmstYmcsICRidG4tZGFyay1ib3JkZXIpO1xufVxuXG4vLyBsaW5lZCB2ZXJzaW9uXG4uYnRuLWxpbmUtZGVmYXVsdCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWxpbmUtdmFyaWFudCgkYnRuLWRlZmF1bHQtY29sb3IsICRidG4tZGVmYXVsdC1iZywgJGJ0bi1kZWZhdWx0LWJvcmRlcik7XG59XG4uYnRuLWxpbmUtcHJpbWFyeSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWxpbmUtdmFyaWFudCgkYnRuLXByaW1hcnktY29sb3IsICRidG4tcHJpbWFyeS1iZywgJGJ0bi1wcmltYXJ5LWJvcmRlcik7XG59XG4uYnRuLWxpbmUtc3VjY2VzcyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWxpbmUtdmFyaWFudCgkYnRuLXN1Y2Nlc3MtY29sb3IsICRidG4tc3VjY2Vzcy1iZywgJGJ0bi1zdWNjZXNzLWJvcmRlcik7XG59XG4uYnRuLWxpbmUtaW5mbyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWxpbmUtdmFyaWFudCgkYnRuLWluZm8tY29sb3IsICRidG4taW5mby1iZywgJGJ0bi1pbmZvLWJvcmRlcik7XG59XG4uYnRuLWxpbmUtd2FybmluZyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWxpbmUtdmFyaWFudCgkYnRuLXdhcm5pbmctY29sb3IsICRidG4td2FybmluZy1iZywgJGJ0bi13YXJuaW5nLWJvcmRlcik7XG59XG4uYnRuLWxpbmUtZGFuZ2VyIHtcbiAgICBAaW5jbHVkZSBidXR0b24tbGluZS12YXJpYW50KCRidG4tZGFuZ2VyLWNvbG9yLCAkYnRuLWRhbmdlci1iZywgJGJ0bi1kYW5nZXItYm9yZGVyKTtcbn1cbi5idG4tbGluZS1kYXJrIHtcbiAgICBAaW5jbHVkZSBidXR0b24tbGluZS12YXJpYW50KCRidG4tZGFyay1jb2xvciwgJGJ0bi1kYXJrLWJnLCAkYnRuLWRhcmstYm9yZGVyKTtcbn1cblxuLy8gXG4uYnRuLWRpcmVjdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlcjogMDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbn1cbi5idG4tbGVmdCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogLTI2cHg7XG4gICAgICAgIGJvcmRlcjogMTZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkICRidG4tZGVmYXVsdC1iZztcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCBkYXJrZW4oJGJ0bi1kZWZhdWx0LWJnLCAxMCUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ29sb3JcbiAgICAmLmJ0bi1wcmltYXJ5IHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkICRidG4tcHJpbWFyeS1iZztcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgZGFya2VuKCRidG4tcHJpbWFyeS1iZywgMTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bi1zdWNjZXNzIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkICRidG4tc3VjY2Vzcy1iZztcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgZGFya2VuKCRidG4tc3VjY2Vzcy1iZywgMTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bi1pbmZvIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkICRidG4taW5mby1iZztcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgZGFya2VuKCRidG4taW5mby1iZywgMTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bi13YXJuaW5nIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkICRidG4td2FybmluZy1iZztcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgZGFya2VuKCRidG4td2FybmluZy1iZywgMTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bi1kYW5nZXIge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgJGJ0bi1kYW5nZXItYmc7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkIGRhcmtlbigkYnRuLWRhbmdlci1iZywgMTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5idG4tcmlnaHQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogLTI2cHg7XG4gICAgICAgIGJvcmRlcjogMTZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgJGJ0bi1kZWZhdWx0LWJnO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgZGFya2VuKCRidG4tZGVmYXVsdC1iZywgMTAlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIENvbG9yXG4gICAgJi5idG4tcHJpbWFyeSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkICRidG4tcHJpbWFyeS1iZztcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCBkYXJrZW4oJGJ0bi1wcmltYXJ5LWJnLCAxMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuLXN1Y2Nlc3Mge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAkYnRuLXN1Y2Nlc3MtYmc7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgZGFya2VuKCRidG4tc3VjY2Vzcy1iZywgMTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bi1pbmZvIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgJGJ0bi1pbmZvLWJnO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkIGRhcmtlbigkYnRuLWluZm8tYmcsIDEwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5idG4td2FybmluZyB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkICRidG4td2FybmluZy1iZztcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCBkYXJrZW4oJGJ0bi13YXJuaW5nLWJnLCAxMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuLWRhbmdlciB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkICRidG4tZGFuZ2VyLWJnO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkIGRhcmtlbigkYnRuLWRhbmdlci1iZywgMTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuJGJ0bl9hcnJvd193aWR0aDogICAgIDhweDtcbi5idG4tdXAge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTE2cHg7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0kYnRuX2Fycm93X3dpZHRoO1xuICAgICAgICBib3JkZXI6ICRidG5fYXJyb3dfd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICRidG5fYXJyb3dfd2lkdGggc29saWQgJGJ0bi1kZWZhdWx0LWJnO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogJGJ0bl9hcnJvd193aWR0aCBzb2xpZCBkYXJrZW4oJGJ0bi1kZWZhdWx0LWJnLCAxMCUpO1xuICAgICAgICB9XG4gICAgfSAgXG5cbiAgICAvLyBDb2xvclxuICAgICYuYnRuLXByaW1hcnkge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAkYnRuX2Fycm93X3dpZHRoIHNvbGlkICRidG4tcHJpbWFyeS1iZztcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAkYnRuX2Fycm93X3dpZHRoIHNvbGlkIGRhcmtlbigkYnRuLXByaW1hcnktYmcsIDEwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5idG4tc3VjY2VzcyB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206ICRidG5fYXJyb3dfd2lkdGggc29saWQgJGJ0bi1zdWNjZXNzLWJnO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206ICRidG5fYXJyb3dfd2lkdGggc29saWQgZGFya2VuKCRidG4tc3VjY2Vzcy1iZywgMTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bi1pbmZvIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogJGJ0bl9hcnJvd193aWR0aCBzb2xpZCAkYnRuLWluZm8tYmc7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogJGJ0bl9hcnJvd193aWR0aCBzb2xpZCBkYXJrZW4oJGJ0bi1pbmZvLWJnLCAxMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuLXdhcm5pbmcge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAkYnRuX2Fycm93X3dpZHRoIHNvbGlkICRidG4td2FybmluZy1iZztcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAkYnRuX2Fycm93X3dpZHRoIHNvbGlkIGRhcmtlbigkYnRuLXdhcm5pbmctYmcsIDEwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5idG4tZGFuZ2VyIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogJGJ0bl9hcnJvd193aWR0aCBzb2xpZCAkYnRuLWRhbmdlci1iZztcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAkYnRuX2Fycm93X3dpZHRoIHNvbGlkIGRhcmtlbigkYnRuLWRhbmdlci1iZywgMTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0gIFxufVxuLmJ0bi1kb3duIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IC0xNnB4O1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtJGJ0bl9hcnJvd193aWR0aDtcbiAgICAgICAgYm9yZGVyOiAkYnRuX2Fycm93X3dpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItdG9wOiAkYnRuX2Fycm93X3dpZHRoIHNvbGlkICRidG4tZGVmYXVsdC1iZztcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6ICRidG5fYXJyb3dfd2lkdGggc29saWQgZGFya2VuKCRidG4tZGVmYXVsdC1iZywgMTAlKTtcbiAgICAgICAgfVxuICAgIH0gIFxuXG4gICAgLy8gQ29sb3JcbiAgICAmLmJ0bi1wcmltYXJ5IHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogJGJ0bl9hcnJvd193aWR0aCBzb2xpZCAkYnRuLXByaW1hcnktYmc7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogJGJ0bl9hcnJvd193aWR0aCBzb2xpZCBkYXJrZW4oJGJ0bi1wcmltYXJ5LWJnLCAxMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuLXN1Y2Nlc3Mge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAkYnRuX2Fycm93X3dpZHRoIHNvbGlkICRidG4tc3VjY2Vzcy1iZztcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAkYnRuX2Fycm93X3dpZHRoIHNvbGlkIGRhcmtlbigkYnRuLXN1Y2Nlc3MtYmcsIDEwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5idG4taW5mbyB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6ICRidG5fYXJyb3dfd2lkdGggc29saWQgJGJ0bi1pbmZvLWJnO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6ICRidG5fYXJyb3dfd2lkdGggc29saWQgZGFya2VuKCRidG4taW5mby1iZywgMTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bi13YXJuaW5nIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogJGJ0bl9hcnJvd193aWR0aCBzb2xpZCAkYnRuLXdhcm5pbmctYmc7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogJGJ0bl9hcnJvd193aWR0aCBzb2xpZCBkYXJrZW4oJGJ0bi13YXJuaW5nLWJnLCAxMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuLWRhbmdlciB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6ICRidG5fYXJyb3dfd2lkdGggc29saWQgJGJ0bi1kYW5nZXItYmc7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogJGJ0bl9hcnJvd193aWR0aCBzb2xpZCBkYXJrZW4oJGJ0bi1kYW5nZXItYmcsIDEwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9ICBcbn1cblxuLy9cbi5idG4tdy14cyB7IG1pbi13aWR0aDogODBweDsgfVxuLmJ0bi13LXNtIHsgbWluLXdpZHRoOiAxMDBweDsgfVxuLmJ0bi13LW1kIHsgbWluLXdpZHRoOiAxMjBweDsgfVxuLmJ0bi13LWxnIHsgbWluLXdpZHRoOiAxNTBweDsgfVxuXG4vLyBcbi5idG4tcm91bmQgeyBib3JkZXItcmFkaXVzOiAyZW07IH1cbi5idG4tZ2FwIHsgbWFyZ2luOiA1cHg7IH1cbi5idG4tZ2FwLWggeyBtYXJnaW46IDAgNXB4OyB9XG4uYnRuLWdhcC12IHsgbWFyZ2luOiAwIDAgNXB4OyB9XG5cbi8vIFxuLmJ0bi1pY29uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWljb24tdmFyaWFudCgzNXB4KTtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRyZXZlcnNlO1xuICAgIH1cbn1cbi5idG4taWNvbi1saW5lZCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRyZXZlcnNlO1xuICAgIGJvcmRlci13aWR0aDogMnB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWljb24tdmFyaWFudCgzNXB4KTtcbiAgICAmLmJ0bi1pY29uLXRoaW4ge1xuICAgICAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZXZlcnNlO1xuICAgICAgICBjb2xvcjogJHJldmVyc2U7XG4gICAgfVxuXG4gICAgLy8gXG4gICAgJi5idG4tZGVmYXVsdC1saWdodCB7XG4gICAgICAgIGNvbG9yOiAjYmJiO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjYmJiO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICNiYmI7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjYmJiO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuLWRlZmF1bHQge1xuICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGdyYXktbGlnaHQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRncmF5LWxpZ2h0O1xuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuLXByaW1hcnkge1xuICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgfVxuICAgICYuYnRuLXN1Y2Nlc3Mge1xuICAgICAgICBjb2xvcjogJGJyYW5kLXN1Y2Nlc3M7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLXN1Y2Nlc3M7XG4gICAgfVxuICAgICYuYnRuLWluZm8ge1xuICAgICAgICBjb2xvcjogJGJyYW5kLWluZm87XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLWluZm87XG4gICAgfVxuICAgICYuYnRuLXdhcm5pbmcge1xuICAgICAgICBjb2xvcjogJGJyYW5kLXdhcm5pbmc7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLXdhcm5pbmc7XG4gICAgfVxuICAgICYuYnRuLWRhbmdlciB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtZGFuZ2VyO1xuICAgICAgICBib3JkZXItY29sb3I6ICRicmFuZC1kYW5nZXI7XG4gICAgfSAgXG59XG4uYnRuLWljb24tcm91bmQge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cbi5idG4taWNvbi1zbSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWljb24tdmFyaWFudCgzMHB4KTtcbn1cbi5idG4taWNvbi1tZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWljb24tdmFyaWFudCg0NXB4KTtcbn1cbi5idG4taWNvbi1sZyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWljb24tdmFyaWFudCg2NXB4KTtcbn1cbi5idG4taWNvbi1sZy1hbHQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1pY29uLXZhcmlhbnQoNzBweCk7XG59XG4uYnRuLWljb24teGwge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1pY29uLXZhcmlhbnQoODBweCk7XG59XG5cblxuLy8gc29jaWFsIGJ1dHRvbnNcbi5idG4tdHdpdHRlciB7IEBpbmNsdWRlIHNvY2lhbC1idXR0b24tdmFyaWFudCgjMDBjN2Y3LCAjMDBjN2Y3KTsgfVxuLmJ0bi1mYWNlYm9vayB7IEBpbmNsdWRlIHNvY2lhbC1idXR0b24tdmFyaWFudCgjMzM1Mzk3LCAjMzM1Mzk3KTsgfVxuLmJ0bi1ncGx1cyxcbi5idG4tZ29vZ2xlLXBsdXMgeyBAaW5jbHVkZSBzb2NpYWwtYnV0dG9uLXZhcmlhbnQoI2RkNGEzOCwgI2RkNGEzOCk7IH1cbi5idG4taW5zdGFncmFtIHsgQGluY2x1ZGUgc29jaWFsLWJ1dHRvbi12YXJpYW50KCM4MjY4NUEsICM4MjY4NUEpOyB9XG4uYnRuLXZpbWVvIHsgQGluY2x1ZGUgc29jaWFsLWJ1dHRvbi12YXJpYW50KCM2Mzg3OUMsICM2Mzg3OUMpOyB9XG4uYnRuLWZsaWNrciB7IEBpbmNsdWRlIHNvY2lhbC1idXR0b24tdmFyaWFudCgjMDA2MURCLCAjMDA2MURCKTsgfVxuLmJ0bi1naXRodWIgeyBAaW5jbHVkZSBzb2NpYWwtYnV0dG9uLXZhcmlhbnQoIzNCM0IzQiwgIzNCM0IzQik7IH1cbi5idG4tcGludGVyZXN0IHsgQGluY2x1ZGUgc29jaWFsLWJ1dHRvbi12YXJpYW50KCNENzM1MzIsICNENzM1MzIpOyB9XG4uYnRuLXR1bWJsciB7IEBpbmNsdWRlIHNvY2lhbC1idXR0b24tdmFyaWFudCgjNTg2OTgwLCAjNTg2OTgwKTsgfVxuLmJ0bi1saW5rZWRpbiB7IEBpbmNsdWRlIHNvY2lhbC1idXR0b24tdmFyaWFudCgjMDE4RkFGLCAjMDE4RkFGKTsgfVxuLmJ0bi1kcmliYmJsZSB7IEBpbmNsdWRlIHNvY2lhbC1idXR0b24tdmFyaWFudCgjRUE3M0EwLCAjRUE3M0EwKTsgfVxuLmJ0bi1zdHVtYmxldXBvbiB7IEBpbmNsdWRlIHNvY2lhbC1idXR0b24tdmFyaWFudCgjRUE0QjI0LCAjRUE0QjI0KTsgfVxuLmJ0bi1sYXN0Zm0geyBAaW5jbHVkZSBzb2NpYWwtYnV0dG9uLXZhcmlhbnQoI0I4MDYzOCwgI0I4MDYzOCk7IH1cbi5idG4tZXZlcm5vdGUgeyBAaW5jbHVkZSBzb2NpYWwtYnV0dG9uLXZhcmlhbnQoIzNCQUIyNywgIzNCQUIyNyk7IH1cbi5idG4tc2t5cGUgeyBAaW5jbHVkZSBzb2NpYWwtYnV0dG9uLXZhcmlhbnQoIzAwQjBGNiwgIzAwQjBGNik7IH1cbi5idG4tc291bmRjbG91ZCB7IEBpbmNsdWRlIHNvY2lhbC1idXR0b24tdmFyaWFudCgjMDA2NkZGLCAjMDA2NkZGKTsgfVxuLmJ0bi1iZWhhbmNlIHsgQGluY2x1ZGUgc29jaWFsLWJ1dHRvbi12YXJpYW50KCNCODA2MzgsICNCODA2MzgpOyB9XG4uYnRuLXJzcyB7IEBpbmNsdWRlIHNvY2lhbC1idXR0b24tdmFyaWFudCgjRjc5NjM4LCAjRjc5NjM4KTsgfVxuLmJ0bi15b3V0dWJlIHsgQGluY2x1ZGUgc29jaWFsLWJ1dHRvbi12YXJpYW50KCNDQzE4MUUsICNDQzE4MUUpOyB9IiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkY29sb3IsICRiYWNrZ3JvdW5kLCAkYm9yZGVyKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDI1JSk7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDE3JSk7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcbiAgICB9XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xufVxuIiwiLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuIiwiLmNvbnRlbnQtY29udGFpbmVyLm5nLWxlYXZlICB7IHotaW5kZXg6OTk5OTsgfVxuLmNvbnRlbnQtY29udGFpbmVyLm5nLWVudGVyICB7IHotaW5kZXg6ODg4ODsgfVxuXG4vKj09PT09PT09PT0gIGFuaW1hdGlvbnMgID09PT09PT09PT0qL1xuLy8gVGhhbmtzLCBodHRwczovL2dpdGh1Yi5jb20vZGFuZWRlbi9hbmltYXRlLmNzc1xuXG4vLyBodG1sIHsgLy8gZml4IHdlYmtpdCB0cmFuc2xhdGUgY2F1c2luZyBzY29sbGJhciBpc3N1ZSwgc2lkZSBlZmZlY3Q6IHBhZ2UgZmFpbCB0byBzY3JvbGxcbi8vICAgb3ZlcmZsb3c6IGhpZGRlbjtcbi8vIH1cblxuQGtleWZyYW1lcyBzcGluIHtcbiAgICBmcm9tIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG59XG5cbi5hbmltYXRlLXNwaW4ge1xuICAgIGFuaW1hdGlvbjogc3BpbiAzcyBsaW5lYXIgaW5maW5pdGU7XG59XG5cblxuLy8gYW5pbWF0ZS1mYWRlLXVwLCBhIGNvbWJpbmF0aW9uIG9mIFwiZmFkZU91dFVwXCIgYW5kIFwiZmFkZUluVXBcIlxuQGtleWZyYW1lcyBmYWRlLXVwLWVudGVyIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICB9XG4gICAgXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGUtdXAtbGVhdmUge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbiAgICBcbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgICB9XG59XG4uYW5pbWF0ZS1mYWRlLXVwLm5nLWVudGVyLFxuLmFuaW1hdGUtZmFkZS11cC5uZy1sZWF2ZSB7XG59XG4uYW5pbWF0ZS1mYWRlLXVwLm5nLWVudGVyIHtcbiAgICBhbmltYXRpb246IDAuMzVzIGZhZGUtdXAtZW50ZXI7XG59XG4vLyAuYW5pbWF0ZS1mYWRlLXVwLm5nLWxlYXZlIHtcbi8vICAgICBAaW5jbHVkZSBhbmltYXRpb246IDAuMzVzIGZhZGUtdXAtbGVhdmUpO1xuLy8gfVxuXG5cblxuLy8gYW5pbWF0ZS1mbGlwLXksIGEgY29tYmluYXRpb24gb2YgXCJmbGlwSW5ZXCIgYW5kIFwiZmxpcE91dFlcIlxuQGtleWZyYW1lcyBhbmltYXRlLWZsaXAteS1lbnRlciB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDMwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDMwMDBweCkgcm90YXRlWSgwZGVnKTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbn1cbkBrZXlmcmFtZXMgYW5pbWF0ZS1mbGlwLXktbGVhdmUge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgzMDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDMwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbn1cbi5hbmltYXRlLWZsaXAteS5uZy1lbnRlciB7XG4gICAgYW5pbWF0aW9uOiAwLjM1cyBhbmltYXRlLWZsaXAteS1lbnRlciBlYXNlLWluLW91dDtcbn1cbi8vIC5hbmltYXRlLWZsaXAteS5uZy1sZWF2ZSB7XG4vLyAgICAgQGluY2x1ZGUgYW5pbWF0aW9uOiAwLjVzIGFuaW1hdGUtZmxpcC15LWxlYXZlKTtcbi8vIH1cblxuXG4vLyB2ZXJ0aWNhbCBzbGlkZVxuQGtleWZyYW1lcyBzbGlkZUluRG93biB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG59XG5Aa2V5ZnJhbWVzIHNsaWRlT3V0VXAge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gICAgfVxufVxuLmFuaW1hdGUtdmVydGljYWwtc2xpZGUubmctaGlkZS1hZGQge1xuICAgIGFuaW1hdGlvbjogLjM1cyBzbGlkZU91dFVwIGVhc2UtaW4tb3V0O1xufVxuLmFuaW1hdGUtdmVydGljYWwtc2xpZGUubmctaGlkZS1yZW1vdmUge1xuICAgIGFuaW1hdGlvbjogLjM1cyAuMzVzIHNsaWRlSW5Eb3duIGVhc2UtaW4tb3V0O1xufVxuXG5cbi8qPT09PT09PT09PSAgc2ltcGxlIG9uZXMgID09PT09PT09PT0qL1xuXG4vLyBzY2FsZVVwXG5Aa2V5ZnJhbWVzIHNsaWRlT3V0VXAge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG59XG4uYWlubWF0ZS1zY2FsZS11cC5uZy1lbnRlciB7XG4gICAgYW5pbWF0aW9uOiAwLjM1cyBzbGlkZU91dFVwIGVhc2UtaW4tb3V0O1xufVxuXG4vLyBcbkBrZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNXB4KTtcbiAgICB9XG4gICAgXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG59XG4uYWlubWF0ZS1zbGlkZS1pbi1yaWdodC5uZy1lbnRlciB7XG4gICAgYW5pbWF0aW9uOiAwLjM1cyBzbGlkZUluUmlnaHQgZWFzZS1pbi1vdXQ7XG59XG5cblxuLy8gXG4uYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogLjM1cztcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xufVxuLmFuaW1hdGVkLmluZmluaXRlIHtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbn1cbi5hbmltYXRlZC5oaW5nZSB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcbn1cbkBrZXlmcmFtZXMgc2xpZGVJblVwIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbn1cbi5zbGlkZUluVXAge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluVXA7XG59XG5cblxuXG5Aa2V5ZnJhbWVzIHNjYWxlSW5MZWZ0IHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC41KTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG4uc2NhbGVJbkxlZnQge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBzY2FsZUluTGVmdDtcbn1cblxuQGtleWZyYW1lcyBzY2FsZUluUmlnaHQge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC41KTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG4uc2NhbGVJblJpZ2h0IHtcbiAgICBhbmltYXRpb24tbmFtZTogc2NhbGVJblJpZ2h0O1xufVxuXG5cblxuQGtleWZyYW1lcyByb3RhdGVJblVwTGVmdCB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxufVxuLnJvdGF0ZUluVXBMZWZ0IHtcbiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5VcExlZnQ7XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlSW5VcFJpZ2h0IHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtOTBkZWcpO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG4ucm90YXRlSW5VcFJpZ2h0IHtcbiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5VcFJpZ2h0O1xufVxuXG4vLyBEcm9wZG93blxuLmRyb3Bkb3duLW1lbnUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgICYucHVsbC1yaWdodCB7XG4gICAgICAgIC8vIGxlZnQ6IGF1dG8haW1wb3J0YW50O1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgcmlnaHQ7XG4gICAgfVxufVxuLmRyb3Bkb3duLW1lbnUtc2NhbGVJbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjM1cztcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5vcGVuID4gLmRyb3Bkb3duLW1lbnUtc2NhbGVJbiB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuXG4iLCIvLyAuYmFkZ2Uge1xuLy8gICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4vLyB9XG5cbi5iYWRnZS1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbn1cblxuLmJhZGdlLXN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1zdWNjZXNzOyAgIFxufVxuXG4uYmFkZ2UtaW5mbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWluZm87ICAgXG59XG5cbi5iYWRnZS13YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtd2FybmluZzsgICBcbn1cblxuLmJhZGdlLWRhbmdlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWRhbmdlcjsgICBcbn0iLCIuYnJlYWRjcnVtYiB7XG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5icmVhZGNydW1iLWFsdCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gY2xlYXJmaXhcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgID4gbGkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luOiAwIDI1cHggMCAwO1xuXG4gICAgICAgID4gYSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YjVmNjM7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0xZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTEuNmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzViNWY2MyAjNWI1ZjYzICM1YjVmNjMgcmdiYSgwLDAsMCwwKTtcbiAgICAgICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgICAgIGJvcmRlci13aWR0aDogMS41ZW0gMCAxLjdlbSAxZW07XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICByaWdodDogLTFlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMS41ZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMS41ZW0gc29saWQgcmdiYSgwLDAsMCwwKTtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMWVtIHNvbGlkICM1YjVmNjM7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMS41ZW0gc29saWQgcmdiYSgwLDAsMCwwKTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLXByaW1hcnkgJGJyYW5kLXByaW1hcnkgJGJyYW5kLXByaW1hcnkgcmdiYSgwLDAsMCwwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxZW0gc29saWQgJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYnJlYWRjcnVtYi1hbHQuYnJlYWRjcnVtYi1ob21le1xuICAgIHBhZGRpbmc6IDAgMTVweCAxNXB4IDI2cHg7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4iLCIuY2FsbG91dCB7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICNlZWU7XG5cbiAgICBoNCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB9XG5cbiAgICBwOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cblxuLmNhbGxvdXQtc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YzZmFmMztcbiAgICBib3JkZXItY29sb3I6ICRicmFuZC1zdWNjZXNzO1xuXG4gICAgaDQge1xuICAgICAgICBjb2xvcjogJGJyYW5kLXN1Y2Nlc3M7XG4gICAgfSAgIFxufVxuXG4uY2FsbG91dC1pbmZvIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmOGZhO1xuICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLWluZm87XG5cbiAgICBoNCB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtaW5mbztcbiAgICB9XG59XG5cbi5jYWxsb3V0LXdhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmY2Y4ZjI7XG4gICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtd2FybmluZztcblxuICAgIGg0IHtcbiAgICAgICAgY29sb3I6ICRicmFuZC13YXJuaW5nO1xuICAgIH1cbn1cblxuLmNhbGxvdXQtZGFuZ2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRmN2Y3O1xuICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLWRhbmdlcjtcblxuICAgIGg0IHtcbiAgICAgICAgY29sb3I6ICRicmFuZC1kYW5nZXI7XG4gICAgfVxufVxuXG5cbiIsIi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9nb29nbGUvbWF0ZXJpYWwtZGVzaWduLWxpdGUvXG5cbi8vIENhcmRzIFxuJGNhcmQtcGFkZGluZzogICAgICAgICAgMjBweCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWNhcmQ6ICAgIDJweCAhZGVmYXVsdDtcblxuLy8gR3JpZCBWYXJpYWJsZXNcbiRlbGVtZW50LXRvcC1tYXJnaW46ICAgICAgICAoJGdyaWQtZ3V0dGVyLXdpZHRoLzMpICFkZWZhdWx0O1xuJGVsZW1lbnQtYm90dG9tLW1hcmdpbjogICAgICgkZ3JpZC1ndXR0ZXItd2lkdGgqMikvMyAhZGVmYXVsdDtcblxuLy8gc2hhZG93XG4kc2hhZG93LWtleS11bWJyYS1vcGFjaXR5OiAwLjIgIWRlZmF1bHQ7XG4kc2hhZG93LWtleS1wZW51bWJyYS1vcGFjaXR5OiAwLjE0ICFkZWZhdWx0O1xuJHNoYWRvdy1hbWJpZW50LXNoYWRvdy1vcGFjaXR5OiAwLjEyICFkZWZhdWx0O1xuQG1peGluIHNoYWRvdy0yZHAoKSB7XG4gICAgYm94LXNoYWRvdzogMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAkc2hhZG93LWtleS1wZW51bWJyYS1vcGFjaXR5KSxcbiAgICAgICAgICAgICAgICAwIDNweCAxcHggLTJweCByZ2JhKDAsIDAsIDAsICRzaGFkb3cta2V5LXVtYnJhLW9wYWNpdHkpLFxuICAgICAgICAgICAgICAgIDAgMXB4IDVweCAwIHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1hbWJpZW50LXNoYWRvdy1vcGFjaXR5KTtcbn1cbi5tZGwtc2hhZG93LS0yZHAge1xuICAgIEBpbmNsdWRlIHNoYWRvdy0yZHAoKTtcbn1cblxuLmNhcmQtcGFuZWwge1xuICAgIHBhZGRpbmc6ICRjYXJkLXBhZGRpbmc7XG4gICAgbWFyZ2luOiAkZWxlbWVudC10b3AtbWFyZ2luIDAgJGVsZW1lbnQtYm90dG9tLW1hcmdpbiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWNhcmQ7XG4gICAgQGV4dGVuZCAubWRsLXNoYWRvdy0tMmRwO1xufVxuXG4uY2FyZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luOiAkZWxlbWVudC10b3AtbWFyZ2luIDAgJGVsZW1lbnQtYm90dG9tLW1hcmdpbiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWNhcmQ7XG4gICAgQGV4dGVuZCAubWRsLXNoYWRvdy0tMmRwO1xuXG4gICAgLmNhcmQtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICYuYWN0aXZhdG9yIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJkLWFjdGlvbiA+IGEge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJkLXBhZGRpbmc7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgLmNhcmQtaW1hZ2Uge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWNhcmQgJGJvcmRlci1yYWRpdXMtY2FyZCAwIDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkLXRpdGxlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAkY2FyZC1wYWRkaW5nO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB0ZXh0LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwwLDAsLjI1KTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmNhcmQtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6ICRjYXJkLXBhZGRpbmc7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkYm9yZGVyLXJhZGl1cy1jYXJkICRib3JkZXItcmFkaXVzLWNhcmQ7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgICAgICAuY2FyZC10aXRsZSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDhweDtcbiAgICAgICAgfVxuICAgICAgICAuY2FyZC1wcm9maWxlLWltZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTcwcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4OyBcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogOTBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYucHJvZmlsZS1pbWctc20ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01MHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAycHg7IFxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1NnB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDU2cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNhcmQtYnV0dG9uIC5idG4taWNvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTY1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC1hY3Rpb24ge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgICAgICAgcGFkZGluZzogJGNhcmQtcGFkZGluZztcbiAgICAgICAgJi5uby1ib3JkZXIge1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcmQtcmV2ZWFsIHtcbiAgICAgICAgcGFkZGluZzogJGNhcmQtcGFkZGluZztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgLmNhcmQtdGl0bGUge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgIH1cbn0iLCIkYXJyb3dfc2l6ZTogICAgICAgIDdweDtcbiRhcnJvd19vdXRlcjogICAgICAgOHB4OyAvLyBvdXRlciBib3JkZXIgZm9yIGFycm93LCAkYXJyb3dfc2l6ZSArIDFcbiRhcnJvd19tYXJnaW5fdG9wOiAgMDtcblxuLmRyb3Bkb3duLW1lbnUge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAmLmRyb3Bkb3duLWRhcmsge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcbiAgICAgICAgJi53aXRoLWFycm93IHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206ICRhcnJvd19zaXplIHNvbGlkICRkYXJrOyAgICAgICAgICAgIFxuICAgICAgICAgICAgfSAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JheS1saWdodDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYud2l0aC1hcnJvdyB7XG4gICAgICAgIG1hcmdpbi10b3A6ICRhcnJvd19tYXJnaW5fdG9wO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDEycHg7XG4gICAgICAgICAgICB0b3A6ICgtJGFycm93X291dGVyICogMik7XG4gICAgICAgICAgICBib3JkZXI6ICRhcnJvd19vdXRlciBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206ICRhcnJvd19vdXRlciBzb2xpZCAkZHJvcGRvd24tYm9yZGVyOyAgICAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAxM3B4O1xuICAgICAgICAgICAgdG9wOiAoLSRhcnJvd19zaXplICogMik7XG4gICAgICAgICAgICBib3JkZXI6ICRhcnJvd19zaXplIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogJGFycm93X3NpemUgc29saWQgJGRyb3Bkb3duLWJnOyAgICAgICAgICAgIFxuICAgICAgICB9XG5cbiAgICAgICAgJi5wdWxsLXJpZ2h0IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICRhcnJvd19tYXJnaW5fdG9wO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICByaWdodDogMTJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIFxuICAgICAgICAvLyBQYW5lbFxuICAgICAgICAmLnBhbmVsIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsMCwwLC4yKTtcbiAgICAgICAgfVxuICAgICAgICAmLnBhbmVsLWRlZmF1bHQge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206ICRhcnJvd19vdXRlciBzb2xpZCAkcGFuZWwtZGVmYXVsdC1ib3JkZXI7ICAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAkYXJyb3dfc2l6ZSBzb2xpZCAkcGFuZWwtZGVmYXVsdC1oZWFkaW5nLWJnOyAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYucGFuZWwtZGFyayB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogJGFycm93X291dGVyIHNvbGlkICRkYXJrOyAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogJGFycm93X3NpemUgc29saWQgJGRhcms7ICAgICAgICAgICAgXG4gICAgICAgICAgICB9ICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICAgICAgJi5wYW5lbC1wcmltYXJ5IHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAkYXJyb3dfb3V0ZXIgc29saWQgJHBhbmVsLXByaW1hcnktYm9yZGVyOyAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogJGFycm93X3NpemUgc29saWQgJHBhbmVsLXByaW1hcnktaGVhZGluZy1iZzsgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLnBhbmVsLXN1Y2Nlc3Mge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206ICRhcnJvd19vdXRlciBzb2xpZCAkcGFuZWwtc3VjY2Vzcy1ib3JkZXI7ICAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAkYXJyb3dfc2l6ZSBzb2xpZCAkcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnOyAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYucGFuZWwtaW5mbyB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogJGFycm93X291dGVyIHNvbGlkICRwYW5lbC1pbmZvLWJvcmRlcjsgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206ICRhcnJvd19zaXplIHNvbGlkICRwYW5lbC1pbmZvLWhlYWRpbmctYmc7ICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5wYW5lbC13YXJuaW5nIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAkYXJyb3dfb3V0ZXIgc29saWQgJHBhbmVsLXdhcm5pbmctYm9yZGVyOyAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogJGFycm93X3NpemUgc29saWQgJHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZzsgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLnBhbmVsLWRhbmdlciB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogJGFycm93X291dGVyIHNvbGlkICRwYW5lbC1kYW5nZXItYm9yZGVyOyAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogJGFycm93X3NpemUgc29saWQgJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnOyAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCJpbWcge1xuICAgICYuaW1nMzBfMzAge1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgIH1cbiAgICAmLmltZzY0XzY0IHtcbiAgICAgICAgd2lkdGg6IDY0cHg7XG4gICAgICAgIGhlaWdodDogNjRweDtcbiAgICB9XG4gICAgJi5pbWc4MF84MCB7XG4gICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICBoZWlnaHQ6IDgwcHg7ICAgICAgICBcbiAgICB9XG59XG4iLCIubGFiZWwge1xuICAgIHBhZGRpbmc6IC41ZW0gLjhlbTtcbn1cblxuLmxhYmVsLWluZm8tYWx0IHtcbiAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtaW5mby1hbHQ7XG59IiwiLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkc3RhdGUtZGVmYXVsdC1ib3JkZXItbGlnaHQ7XG59XG5cblxuLmxpc3QtaW5mbyB7XG4gICAgbGkge1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZTtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHsgXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIH1cblxuICAgICAgICBsYWJlbCB7IHdpZHRoOiAxMDBweDsgfVxuICAgICAgICBsYWJlbC5zcGFjZS10ZXh0IHsgd2lkdGg6IDE4MHB4OyB9XG4gICAgfVxufVxuIiwiJGJvcmRlcl9jb2xvcjogI2YxZjFmMTtcblxuLm1haWwtY2F0ZWdvcmllcyB7XG4gICAgLmxpc3QtZ3JvdXAge1xuICAgICAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhOyAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4yNXMgZWFzZS1pbi1vdXQpO1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiBpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICYuZmEtY2lyY2xlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUsXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6aG92ZXIsXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRsaXN0LWdyb3VwLWJvcmRlcjtcbiAgICB9XG59XG5cbi5tYWlsLWNvbnRhaW5lciB7XG4gICAgLm1haWwtb3B0aW9ucyB7XG4gICAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgfVxuXG4gICAgLnRhYmxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICAgIHRyIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiB0ZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTJweDtcblxuICAgICAgICAgICAgICAgID4gLmZhLXN0YXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2NjYztcblxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLWRhbmdlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGxhYmVsLnVpLWNoZWNrYm94IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICAubWFpbC11bnJlYWQge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBjb2xvcjogJGdyYXktZGFyaztcbiAgICAgICAgfVxuICAgICAgICAubWFpbC1oaWdodGxpZ2h0IHtcbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RhdGUtd2FybmluZy1iZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tYWlsLWhlYWRlciB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgaDMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubWFpbC1pbmZvIHtcbiAgICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlcl9jb2xvcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXJfY29sb3I7XG5cbiAgICAgICAgLmNvbC1tZC04LFxuICAgICAgICAuY29sLW1kLTQge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubWFpbC1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlcl9jb2xvcjtcbiAgICB9XG4gICAgLm1haWwtYXR0YWNobWVudHMge1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyX2NvbG9yO1xuICAgIFxuICAgICAgICAubGlzdC1hdHRhY2hzIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAyMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAubWFpbC1hY3Rpb25zIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG59XG5cbiIsIi5tYWlsLWNvbXBvc2Uge1xuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgPiBpbnB1dCB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tYWlsLWFjdGlvbnMge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cbn0iLCIubmF2LWJveGVkIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMnB4IHJnYmEoMCwwLDAsLjIpO1xuXG4gICAgLy8gb3ZlcnJpZGVzIEJvb3RzdHJhcFxuICAgICYubmF2LWp1c3RpZmllZCA+IGxpID4gYSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIH1cblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRyZXZlcnNlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gICAgPiBsaSB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggNXB4O1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHN0YXRlLWRlZmF1bHQtYm9yZGVyLWxpZ2h0O1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJHN0YXRlLWRlZmF1bHQtYm9yZGVyLWxpZ2h0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAycHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6Zmlyc3QtY2hpbGQgPiBhIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkc3RhdGUtZGVmYXVsdC1ib3JkZXItbGlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gb3ZlcnJpZGVzIEJvb3RzdHJhcFxuLnBhbmVsIHtcbiAgICBib3gtc2hhZG93OiAwIDAgM3B4IHJnYmEoMCwwLDAsLjEpO1xuICAgIC8vIGZvciBwYW5lbHMgaW4gcGFuZWxcbiAgICAucGFuZWwge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgICAucGFuZWwtaGVhZGluZyB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICAgIC5wYW5lbC10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgIH1cblxuICAgICYucGFuZWwtbGFiZWxlZCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLnBhbmVsLWJvZHkge1xuICAgICAgICAgICAgcGFkZGluZzogMzVweCAxNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICYucGFuZWwtbWluaW1hbCB7XG4gICAgICAgIC5wYW5lbC1oZWFkaW5nIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnBhbmVsLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICNjY2M7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiA1cHg7XG4gICAgICAgIGxlZnQ6IDdweDtcbiAgICB9XG4gICAgLnBhbmVsLWJvZHkge1xuICAgICAgICAmLnBhZGRpbmctbGcge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCAxNXB4O1xuICAgICAgICB9XG4gICAgICAgICYucGFkZGluZy14bCB7XG4gICAgICAgICAgICBwYWRkaW5nOiA2MHB4IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgJi5wYWRkaW5nLWxnLWgge1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAzMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucGFuZWwtZGFyayB7XG4gICAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkZGFyaywgI2ZmZiwgJGRhcmssICRkYXJrKTtcbn1cblxuLy8gcGFuZWwgYm94XG4ucGFuZWwtYm94IHtcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gZW5zdXJlIGFsd2F5cyB0aGUgc2FtZSBoZWlnaHQgZm9yIHBhbmVsIGxlZnQgYW5kIHJpZ2h0XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDsgLy8gZW5zdXJlIHNhbWUgd2lkdGhcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG5cbiAgICAucGFuZWwtaXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIHdpZHRoOiAxJTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB9XG4gICAgLnBhbmVsLWxlZnQge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMgKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgIH1cbiAgICAucGFuZWwtcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzICgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICB9XG5cbiAgICAmLmluZm8tYm94IHtcbiAgICAgICAgaSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNzBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wYW5lbC10b3AsXG4gICAgLnBhbmVsLWJvdHRvbSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAucGFuZWwtdG9wIHtcbiAgICAgICAgcGFkZGluZzogMXB4O1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyAoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG4gICAgfVxuICAgIC5wYW5lbC1ib3R0b20ge1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyAoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGlzdC1qdXN0aWZpZWQtY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZzogMHB4IDA7XG4gICAgfVxuXG4gICAgdWwubGlzdC1qdXN0aWZpZWQge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDElO1xuICAgICAgICAgICAgLy8gYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGdyYXktbGlnaHRlcjtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucGFuZWwtaWNvbixcbiAgICAucGFuZWwtaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogLTgwcHggYXV0byAtMjVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBib3JkZXI6IDExcHggc29saWQgJHJldmVyc2U7XG4gICAgICAgIHdpZHRoOiAxMzBweDtcbiAgICAgICAgaGVpZ2h0OiAxMzBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDgwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiA1OHB4O1xuICAgICAgICB0ZXh0LXNoYWRvdzogLTZweCA4cHggNXB4IHJnYmEoMCwwLDAsMC4zKTtcblxuICAgIH1cbiAgICAucGFuZWwtaWNvbiB7XG4gICAgICAgIHBhZGRpbmc6IDI4cHggMzVweCAzNXB4O1xuICAgIH1cbiAgICAucGFuZWwtaW1nIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi8vIG1pbmkgYm94XG4ubWluaS1ib3gge1xuICAgIG1pbi1oZWlnaHQ6IDEyMHB4O1xuICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgLmJveC1pY29uIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogNzBweDtcbiAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNzBweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IDM1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgICAgICAgJi5yb3VuZGVkIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5idG4taWNvbixcbiAgICAuYnRuLWljb24tbGluZWQge1xuICAgICAgICAvLyBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luOiAwIDE1cHggMCAwO1xuICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgfVxuXG4gICAgLmJveC1pbmZvIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy9cbi5wYW5lbC1wcm9maWxlIHtcbiAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAucHJvZmlsZSB7XG4gICAgICAgIG1hcmdpbjogNXB4IDE1cHggNXB4IDVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAvLyBib3gtc2hhZG93OiAwIDAgMCA1cHggbGlnaHRlbigkc2tpbiwgMTAlKSwgMCAwIDEwcHggMCByZ2JhKDAsMCwwLC4yKTtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsMCwwLC4yKTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxpc3QtZ3JvdXAgPiBsaSA+IGkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgY29sb3I6ICRncmF5LWxpZ2h0O1xuICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgIH1cblxuICAgIC5saXN0LWp1c3RpZmllZC1jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgfVxuXG4gICAgdWwubGlzdC1qdXN0aWZpZWQge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDElO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGdyYXktbGlnaHRlcjtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBQYW5lbHNcblxuQG1peGluIHBhbmVsLXZhcmlhbnQoJGJvcmRlciwgJGhlYWRpbmctdGV4dC1jb2xvciwgJGhlYWRpbmctYmctY29sb3IsICRoZWFkaW5nLWJvcmRlcikge1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJiA+IC5wYW5lbC1oZWFkaW5nIHtcbiAgICBjb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRoZWFkaW5nLWJvcmRlcjtcblxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgfVxuICB9XG4gICYgPiAucGFuZWwtZm9vdGVyIHtcbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG59XG4iLCIvLyAucG9wb3ZlciB7fVxuXG4ucG9wb3Zlci10aXRsZSB7XG4gICAgcGFkZGluZzogOHB4IDE0cHggMDtcbiAgICBjb2xvcjogI2FhYTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4ucG9wb3Zlci1jb250ZW50IHtcbiAgICBjb2xvcjogJGJyaWdodDtcbn0iLCIucHJpY2luZy10YWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZmNmYztcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gICAgYm94LXNoYWRvdzogMCAwIDNweCByZ2JhKDAsMCwwLC4yKTtcblxuICAgID4gaGVhZGVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMzBweCA0MHB4O1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICAucHJpY2luZy1wcmljZSB7XG4gICAgICAgIHBhZGRpbmc6IDE0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgY29sb3I6ICRyZXZlcnNlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xuICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgZGFya2VuKCNjY2MsIDglKTtcbiAgICB9XG5cbiAgICAucHJpY2luZy1ib2R5IHtcbiAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwwLDAsLjA1KTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1saWdodGVyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZGFyaztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgID4gZm9vdGVyIHtcbiAgICAgICAgcGFkZGluZzogMzBweCA0MHB4O1xuICAgICAgICA+IGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBcbiAgICAmLnByaWNpbmctdGFibGUtZGFyayB7XG4gICAgICAgIC5wcmljaW5nLXByaWNlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIGRhcmtlbigkZGFyaywgOCUpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYucHJpY2luZy10YWJsZS1wcmltYXJ5IHtcbiAgICAgICAgLnByaWNpbmctcHJpY2Uge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgZGFya2VuKCRicmFuZC1wcmltYXJ5LCA4JSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5wcmljaW5nLXRhYmxlLXN1Y2Nlc3Mge1xuICAgICAgICAucHJpY2luZy1wcmljZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtc3VjY2VzcztcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCBkYXJrZW4oJGJyYW5kLXN1Y2Nlc3MsIDglKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnByaWNpbmctdGFibGUtaW5mbyB7XG4gICAgICAgIC5wcmljaW5nLXByaWNlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1pbmZvO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIGRhcmtlbigkYnJhbmQtaW5mbywgOCUpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYucHJpY2luZy10YWJsZS13YXJuaW5nIHtcbiAgICAgICAgLnByaWNpbmctcHJpY2Uge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXdhcm5pbmc7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgZGFya2VuKCRicmFuZC13YXJuaW5nLCA4JSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5wcmljaW5nLXRhYmxlLWRhbmdlciB7XG4gICAgICAgIC5wcmljaW5nLXByaWNlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1kYW5nZXI7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgZGFya2VuKCRicmFuZC1kYW5nZXIsIDglKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi51aS1yaWJib24tY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLnVpLXJpYmJvbi13cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB3aWR0aDogODVweDtcbiAgICAgICAgaGVpZ2h0OiA4OHB4O1xuICAgICAgICB0b3A6IC0zcHg7XG4gICAgICAgIHJpZ2h0OiAtM3B4O1xuICAgIH1cblxuICAgIC51aS1yaWJib24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiAkcmV2ZXJzZTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICBwYWRkaW5nOiA3cHggMDtcbiAgICAgICAgbGVmdDogLTVweDtcbiAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDNweCByZ2JhKDAsMCwwLDAuMyk7XG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgJGdyYXk7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3R0b206IC0ycHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIC8vIGNvbG9yXG4gICAgJi51aS1yaWJib24tcHJpbWFyeSB7XG4gICAgICAgIC51aS1yaWJib24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnVpLXJpYmJvbi1zdWNjZXNzIHtcbiAgICAgICAgLnVpLXJpYmJvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtc3VjY2VzcztcbiAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRicmFuZC1zdWNjZXNzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYudWktcmliYm9uLWluZm8ge1xuICAgICAgICAudWktcmliYm9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1pbmZvO1xuICAgICAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgJGJyYW5kLWluZm87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi51aS1yaWJib24td2FybmluZyB7XG4gICAgICAgIC51aS1yaWJib24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXdhcm5pbmc7XG4gICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkYnJhbmQtd2FybmluZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnVpLXJpYmJvbi1kYW5nZXIge1xuICAgICAgICAudWktcmliYm9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1kYW5nZXI7XG4gICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkYnJhbmQtZGFuZ2VyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59IiwiLmZsYWdzLXNwcml0ZSxcbi5mbGFncy1hbWVyaWNhbixcbi5mbGFncy1hbWVyaWNhbi1taW4sXG4uZmxhZ3MtY2hpbmEsXG4uZmxhZ3MtY2hpbmEtbWluLFxuLmZsYWdzLWZyYW5jZSxcbi5mbGFncy1nZXJtYW55LFxuLmZsYWdzLWl0YWx5LFxuLmZsYWdzLWl0YWx5LW1pbixcbi5mbGFncy1qYXBhbixcbi5mbGFncy1qYXBhbi1taW4sXG4uZmxhZ3Mta29yZWEsXG4uZmxhZ3Mta29yZWEtbWluLFxuLmZsYWdzLXBvcnR1Z2FsLFxuLmZsYWdzLXBvcnR1Z2FsLW1pbixcbi5mbGFncy1ydXNzaWEsXG4uZmxhZ3MtcnVzc2lhLW1pbixcbi5mbGFncy1zcGFpbi1taW4sXG4uZmxhZ3Mtc3BhaW57YmFja2dyb3VuZC1pbWFnZTp1cmwoJ3VpL2ltYWdlcy9mbGFncy5wbmcnKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXR9XG4uZmxhZ3MtYW1lcmljYW57YmFja2dyb3VuZC1wb3NpdGlvbjowIDA7aGVpZ2h0OjMycHg7d2lkdGg6MzJweH1cbi5mbGFncy1jaGluYXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTMycHg7aGVpZ2h0OjMycHg7d2lkdGg6MzJweH1cbi5mbGFncy1mcmFuY2V7YmFja2dyb3VuZC1wb3NpdGlvbjowIC02NHB4O2hlaWdodDozMnB4O3dpZHRoOjMycHh9XG4uZmxhZ3MtZ2VybWFueXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTk2cHg7aGVpZ2h0OjMycHg7d2lkdGg6MzJweH1cbi5mbGFncy1pdGFseXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTEyOHB4O2hlaWdodDozMnB4O3dpZHRoOjMycHh9XG4uZmxhZ3MtamFwYW57YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNjBweDtoZWlnaHQ6MzJweDt3aWR0aDozMnB4fVxuLmZsYWdzLWtvcmVhe2JhY2tncm91bmQtcG9zaXRpb246MCAtMTkycHg7aGVpZ2h0OjMycHg7d2lkdGg6MzJweH1cbi5mbGFncy1wb3J0dWdhbHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTIyNHB4O2hlaWdodDozMnB4O3dpZHRoOjMycHh9XG4uZmxhZ3MtcnVzc2lhe2JhY2tncm91bmQtcG9zaXRpb246MCAtMjU2cHg7aGVpZ2h0OjMycHg7d2lkdGg6MzJweH1cbi5mbGFncy1zcGFpbntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI4OHB4O2hlaWdodDozMnB4O3dpZHRoOjMycHh9XG4uZmxhZ3MtYW1lcmljYW4tbWlue2JhY2tncm91bmQtc2l6ZTogMTZweDsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwcHg7aGVpZ2h0OjE2cHg7d2lkdGg6MzJweH1cbi5mbGFncy1jaGluYS1taW57YmFja2dyb3VuZC1zaXplOiAxNnB4OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNnB4O2hlaWdodDoxNnB4O3dpZHRoOjMycHh9XG4uZmxhZ3MtaXRhbHktbWlue2JhY2tncm91bmQtc2l6ZTogMTZweDsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNjRweDtoZWlnaHQ6MTZweDt3aWR0aDozMnB4fVxuLmZsYWdzLWphcGFuLW1pbntiYWNrZ3JvdW5kLXNpemU6IDE2cHg7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTgwcHg7aGVpZ2h0OjE2cHg7d2lkdGg6MzJweH1cbi5mbGFncy1rb3JlYS1taW57YmFja2dyb3VuZC1zaXplOiAxNnB4OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC05NnB4O2hlaWdodDoxNnB4O3dpZHRoOjMycHh9XG4uZmxhZ3MtcG9ydHVnYWwtbWlue2JhY2tncm91bmQtc2l6ZTogMTZweDsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTEycHg7aGVpZ2h0OjE2cHg7d2lkdGg6MzJweH1cbi5mbGFncy1ydXNzaWEtbWlue2JhY2tncm91bmQtc2l6ZTogMTZweDsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTI4cHg7aGVpZ2h0OjE2cHg7d2lkdGg6MzJweH1cbi5mbGFncy1zcGFpbi1taW57YmFja2dyb3VuZC1zaXplOiAxNnB4OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNDRweDtoZWlnaHQ6MTZweDt3aWR0aDozMnB4fSIsIiRUTF9jb250ZW50X2JnOiAgICAgICAgIHJnYmEoMjU1LDI1NSwyNTUsLjkpO1xuXG4udWktdGltbGluZS1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDE1cHg7XG5cblxufVxuXG4udWktdGltbGluZS1sZWZ0IHtcbiAgICAudWktdGltZWxpbmUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRsLWl0ZW0ge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGwtY2FwdGlvbiB7XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC01NXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuXG4gICAgICAgICAgICAudGwtYm9keSB7XG4gICAgICAgICAgICAgICAgLnRsLXRpbWUge1xuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmF5LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udWktdGltZWxpbmUge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkOyAvLyBlbnN1cmUgc2FtZSB3aWR0aFxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgIGJvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkZ3JheS1saWdodGVyLCAxMCUpO1xuICAgICAgICBib3R0b206IDBweDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDMwcHg7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGwtaXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50bC1jYXB0aW9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNTVweDtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJi5hbHQge1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwJTsgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnRsLWJvZHkge1xuICAgICAgICAgICAgICAgICAgICAudGwtZW50cnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDM1cHggMTVweCAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC50bC10aW1lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMjIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAudGwtaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLTUzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC50bC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogOHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA4cHggc29saWQgJFRMX2NvbnRlbnRfYmc7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudGwtYm9keSB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgICAgICAgICAgIC50bC1lbnRyeSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHggMzZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50bC10aW1lIHtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIHRvcDogNXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQ7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTIyMHB4O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50bC1pY29uIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogLTUzcHg7XG4gICAgICAgICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudGwtdGl0bGUge31cbiAgICAgICAgICAgIC50bC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRUTF9jb250ZW50X2JnO1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTE2cHg7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiA4cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogOHB4IHNvbGlkICRUTF9jb250ZW50X2JnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiLnRvb2x0aXAtaW5uZXIge1xuICAgIHBhZGRpbmc6IC44NWVtO1xufSIsIi51aS1tYXAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogNDAwcHg7XG59IiwiLnBhZ2luYXRpb24tbGcgPiBsaSB7XG4gICAgPiBhLCBcbiAgICBzcGFuIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMThweDtcbiAgICB9XG59IFxuXG4ucGFnaW5hdGlvbiB7XG4gICAgPiBsaSB7XG5cbiAgICAgICAgLy8gb3ZlcnJpZGVzIEJvb3RzdHJhcFxuICAgICAgICAmOmZpcnN0LWNoaWxkLFxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgPiBhLFxuICAgICAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gXG4gICAgICAgID4gYSB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG4gICAgICAgID4gYSxcbiAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIH1cblxuICAgIH0gICBcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSg0cHgsIDhweCwgJGZvbnQtc2l6ZS1zbWFsbCwgICRsaW5lLWhlaWdodC1jb21wdXRlZCwgJGJvcmRlci1yYWRpdXMtc21hbGwpO1xufSIsIi8vIFBhZ2luYXRpb25cblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICA+IGxpIHtcbiAgICA+IGEsXG4gICAgPiBzcGFuIHtcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIH1cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgID4gYSxcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIG92ZXJyaWRlcyBCb290c3RyYXAgc3R5bGVcbi5wcm9ncmVzcyB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XG59XG5cbi5wcm9ncmVzc2Jhci14cyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xufVxuXG4ucHJvZ3Jlc3Mtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbn1cbi5wcm9ncmVzcy1iYXIge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8vIGN1c3RvbVxuLnByb2dyZXNzYmFyLXhzIHsgaGVpZ2h0OiAxMHB4OyB9XG4ucHJvZ3Jlc3NiYXItc20geyBoZWlnaHQ6IDE1cHg7IH0iLCIvLyBEZXBlbmRlbmN5OiBBbmd1bGFyIFVJIEJvb3RzdHJhcFxuXG4udWktdGFiIHtcbiAgICAubmF2LXRhYnMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAmLm5hdi1qdXN0aWZpZWQge1xuICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmV2ZXJzZTtcbiAgICAgICAgICAgICAgICAgICAgLy8gJjpmb2N1cyxcbiAgICAgICAgICAgICAgICAgICAgLy8gJjpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgLy8gJjphY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAvLyAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgICAgICAvLyB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udWktdGFiLWNvbnRhaW5lciB7XG4gICAgLm5hdi10YWJzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgJi5uYXYtanVzdGlmaWVkIHtcbiAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAwIDFweCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAwIDFweCAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMTVweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRhYi1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMTVweCAxNXB4O1xuICAgIH1cbn1cblxuLnVpLXRhYi1ob3Jpem9udGFsIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gICAgLm5hdi10YWJzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN0YXRlLWRlZmF1bHQtYmc7XG5cbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG59XG5cbi51aS10YWItdmVydGljYWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwIDAgMCAzMCU7XG4gICAgLm5hdi10YWJzIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzdGF0ZS1kZWZhdWx0LWJnO1xuICAgICAgICBib3JkZXItd2lkdGg6IDFweCAwIDFweCAxcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UgMCAwICRib3JkZXItcmFkaXVzLWJhc2U7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gICAgICAgIFxuICAgIH1cblxuICAgIC50YWItY29udGVudCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlIDA7XG4gICAgfVxuXG59XG5cbi51aS10YWItdmVydGljYWwtY3VzdG9tIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMCAwIDAgMjAlO1xuICAgIC5uYXYtdGFicyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RhdGUtZGVmYXVsdC1iZztcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMCAxcHggMXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlIDAgMCAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgID4gbGkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xuICAgICAgICAgICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9ICAgICAgICBcbiAgICB9XG5cbiAgICAudGFiLWNvbnRlbnQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAwO1xuICAgIH1cblxufVxuXG4iXX0= */

@media print {
  .no-print {
    display: none; } }

.ui-datepicker table {
  margin: 0 5px; }
  .ui-datepicker table th,
  .ui-datepicker table td {
    padding: 1px; }
    .ui-datepicker table th .active span,
    .ui-datepicker table td .active span {
      color: #fff; }

.ui-datepicker > .dropdown-menu:focus,
.ui-datepicker > .dropdown-menu *:focus {
  outline: none; }

.ui-timepicker td {
  padding: 1px; }

.ui-rating:hover {
  cursor: pointer; }

.ui-rating .glyphicon {
  margin-right: 2px; }

.ui-rating .glyphicon-star {
  color: #1C7EBB; }

.ui-rating.ui-rating-success .glyphicon-star {
  color: #23AE89; }

.ui-rating.ui-rating-info .glyphicon-star {
  color: #2EC1CC; }

.ui-rating.ui-rating-warning .glyphicon-star {
  color: #FFB61C; }

.ui-rating.ui-rating-danger .glyphicon-star {
  color: #E94B3B; }

.ui-typeahead > .dropdown-menu {
  right: 15px; }

.ui-rating:focus {
  outline: none; }

.ui-rating > i:focus {
  outline: none; }

.ui-accordion .panel {
  border: 1px solid #e9e9e9; }

.ui-accordion .panel-heading {
  padding: 0;
  background-color: #f6f6f6; }
  .ui-accordion .panel-heading .panel-title > a {
    display: block;
    padding: 15px;
    font-size: 14px; }
    .ui-accordion .panel-heading .panel-title > a:hover, .ui-accordion .panel-heading .panel-title > a:active, .ui-accordion .panel-heading .panel-title > a:focus {
      cursor: pointer;
      text-decoration: none; }

.ui-accordion-success .panel {
  border: 1px solid #23AE89; }

.ui-accordion-success .panel-heading {
  background-color: #23AE89;
  color: #fff; }

.ui-accordion-info .panel {
  border: 1px solid #2EC1CC; }

.ui-accordion-info .panel-heading {
  background-color: #2EC1CC;
  color: #fff; }

.ui-accordion-warning .panel {
  border: 1px solid #FFB61C; }

.ui-accordion-warning .panel-heading {
  background-color: #FFB61C;
  color: #fff; }

.ui-accordion-danger .panel {
  border: 1px solid #E94B3B; }

.ui-accordion-danger .panel-heading {
  background-color: #E94B3B;
  color: #fff; }

.ui-accordion-dark .panel {
  border: 1px solid #222533; }

.ui-accordion-dark .panel-heading {
  background-color: #222533;
  color: #fff; }

.toast-title {
  font-weight: bold; }

.toast-message {
  -ms-word-wrap: break-word;
  word-wrap: break-word; }

.toast-message a,
.toast-message label {
  color: #ffffff; }

.toast-message a:hover {
  color: #cccccc;
  text-decoration: none; }

.toast-close-button {
  position: relative;
  right: -0.3em;
  top: -0.3em;
  float: right;
  font-size: 20px;
  font-weight: bold;
  color: #ffffff;
  -webkit-text-shadow: 0 1px 0 #ffffff;
  text-shadow: 0 1px 0 #ffffff;
  opacity: 0.8;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  filter: alpha(opacity=80); }

.toast-close-button:hover,
.toast-close-button:focus {
  color: #000000;
  text-decoration: none;
  cursor: pointer;
  opacity: 0.4;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=40);
  filter: alpha(opacity=40); }

/*Additional properties for button version
 iOS requires the button element instead of an anchor tag.
 If you want the anchor version, it requires `href="#"`.*/
button.toast-close-button {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none; }

.toast-top-full-width {
  top: 0;
  right: 0;
  width: 100%; }

.toast-bottom-full-width {
  bottom: 0;
  right: 0;
  width: 100%; }

.toast-top-left {
  top: 12px;
  left: 12px; }

.toast-top-right {
  top: 12px;
  right: 12px; }

.toast-bottom-right {
  right: 12px;
  bottom: 12px; }

.toast-bottom-left {
  bottom: 12px;
  left: 12px; }

#toast-container {
  position: fixed;
  z-index: 999999;
  /*overrides*/ }

#toast-container * {
  box-sizing: border-box; }

#toast-container > div {
  margin: 0 0 6px;
  padding: 15px 15px 15px 50px;
  width: 300px;
  border-radius: 2px;
  background-position: 15px center;
  background-repeat: no-repeat;
  box-shadow: 0 0 12px #999999;
  color: #ffffff;
  opacity: 0.8;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  filter: alpha(opacity=80); }

#toast-container > :hover {
  box-shadow: 0 0 12px #000000;
  opacity: 1;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  filter: alpha(opacity=100);
  cursor: pointer; }

#toast-container > .toast-info {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGwSURBVEhLtZa9SgNBEMc9sUxxRcoUKSzSWIhXpFMhhYWFhaBg4yPYiWCXZxBLERsLRS3EQkEfwCKdjWJAwSKCgoKCcudv4O5YLrt7EzgXhiU3/4+b2ckmwVjJSpKkQ6wAi4gwhT+z3wRBcEz0yjSseUTrcRyfsHsXmD0AmbHOC9Ii8VImnuXBPglHpQ5wwSVM7sNnTG7Za4JwDdCjxyAiH3nyA2mtaTJufiDZ5dCaqlItILh1NHatfN5skvjx9Z38m69CgzuXmZgVrPIGE763Jx9qKsRozWYw6xOHdER+nn2KkO+Bb+UV5CBN6WC6QtBgbRVozrahAbmm6HtUsgtPC19tFdxXZYBOfkbmFJ1VaHA1VAHjd0pp70oTZzvR+EVrx2Ygfdsq6eu55BHYR8hlcki+n+kERUFG8BrA0BwjeAv2M8WLQBtcy+SD6fNsmnB3AlBLrgTtVW1c2QN4bVWLATaIS60J2Du5y1TiJgjSBvFVZgTmwCU+dAZFoPxGEEs8nyHC9Bwe2GvEJv2WXZb0vjdyFT4Cxk3e/kIqlOGoVLwwPevpYHT+00T+hWwXDf4AJAOUqWcDhbwAAAAASUVORK5CYII=") !important; }

#toast-container > .toast-error {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHOSURBVEhLrZa/SgNBEMZzh0WKCClSCKaIYOED+AAKeQQLG8HWztLCImBrYadgIdY+gIKNYkBFSwu7CAoqCgkkoGBI/E28PdbLZmeDLgzZzcx83/zZ2SSXC1j9fr+I1Hq93g2yxH4iwM1vkoBWAdxCmpzTxfkN2RcyZNaHFIkSo10+8kgxkXIURV5HGxTmFuc75B2RfQkpxHG8aAgaAFa0tAHqYFfQ7Iwe2yhODk8+J4C7yAoRTWI3w/4klGRgR4lO7Rpn9+gvMyWp+uxFh8+H+ARlgN1nJuJuQAYvNkEnwGFck18Er4q3egEc/oO+mhLdKgRyhdNFiacC0rlOCbhNVz4H9FnAYgDBvU3QIioZlJFLJtsoHYRDfiZoUyIxqCtRpVlANq0EU4dApjrtgezPFad5S19Wgjkc0hNVnuF4HjVA6C7QrSIbylB+oZe3aHgBsqlNqKYH48jXyJKMuAbiyVJ8KzaB3eRc0pg9VwQ4niFryI68qiOi3AbjwdsfnAtk0bCjTLJKr6mrD9g8iq/S/B81hguOMlQTnVyG40wAcjnmgsCNESDrjme7wfftP4P7SP4N3CJZdvzoNyGq2c/HWOXJGsvVg+RA/k2MC/wN6I2YA2Pt8GkAAAAASUVORK5CYII=") !important; }

#toast-container > .toast-success {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADsSURBVEhLY2AYBfQMgf///3P8+/evAIgvA/FsIF+BavYDDWMBGroaSMMBiE8VC7AZDrIFaMFnii3AZTjUgsUUWUDA8OdAH6iQbQEhw4HyGsPEcKBXBIC4ARhex4G4BsjmweU1soIFaGg/WtoFZRIZdEvIMhxkCCjXIVsATV6gFGACs4Rsw0EGgIIH3QJYJgHSARQZDrWAB+jawzgs+Q2UO49D7jnRSRGoEFRILcdmEMWGI0cm0JJ2QpYA1RDvcmzJEWhABhD/pqrL0S0CWuABKgnRki9lLseS7g2AlqwHWQSKH4oKLrILpRGhEQCw2LiRUIa4lwAAAABJRU5ErkJggg==") !important; }

#toast-container > .toast-warning {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGYSURBVEhL5ZSvTsNQFMbXZGICMYGYmJhAQIJAICYQPAACiSDB8AiICQQJT4CqQEwgJvYASAQCiZiYmJhAIBATCARJy+9rTsldd8sKu1M0+dLb057v6/lbq/2rK0mS/TRNj9cWNAKPYIJII7gIxCcQ51cvqID+GIEX8ASG4B1bK5gIZFeQfoJdEXOfgX4QAQg7kH2A65yQ87lyxb27sggkAzAuFhbbg1K2kgCkB1bVwyIR9m2L7PRPIhDUIXgGtyKw575yz3lTNs6X4JXnjV+LKM/m3MydnTbtOKIjtz6VhCBq4vSm3ncdrD2lk0VgUXSVKjVDJXJzijW1RQdsU7F77He8u68koNZTz8Oz5yGa6J3H3lZ0xYgXBK2QymlWWA+RWnYhskLBv2vmE+hBMCtbA7KX5drWyRT/2JsqZ2IvfB9Y4bWDNMFbJRFmC9E74SoS0CqulwjkC0+5bpcV1CZ8NMej4pjy0U+doDQsGyo1hzVJttIjhQ7GnBtRFN1UarUlH8F3xict+HY07rEzoUGPlWcjRFRr4/gChZgc3ZL2d8oAAAAASUVORK5CYII=") !important; }

#toast-container.toast-top-full-width > div,
#toast-container.toast-bottom-full-width > div {
  width: 96%;
  margin: auto; }

.toast {
  background-color: #333; }

.toast-success {
  background-color: #1c8c6e; }

.toast-error {
  background-color: #e22c19; }

.toast-info {
  background-color: #26a2ab; }

.toast-warning {
  background-color: #f2a400; }

/*Responsive Design*/
@media all and (max-width: 240px) {
  #toast-container > div {
    padding: 8px 8px 8px 50px;
    width: 11em; }
  #toast-container .toast-close-button {
    right: -0.2em;
    top: -0.2em; } }

@media all and (min-width: 241px) and (max-width: 480px) {
  #toast-container > div {
    padding: 8px 8px 8px 50px;
    width: 18em; }
  #toast-container .toast-close-button {
    right: -0.2em;
    top: -0.2em; } }

@media all and (min-width: 481px) and (max-width: 768px) {
  #toast-container > div {
    padding: 15px 15px 15px 50px;
    width: 25em; } }

.ui-tags-input .host {
  position: relative;
  margin: 5px 0; }
  .ui-tags-input .host:active {
    outline: none; }

.ui-tags-input .tags {
  overflow: hidden;
  word-wrap: break-word;
  cursor: text;
  display: block;
  width: 100%;
  min-height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #CBD5DD;
  border-radius: 2px; }

.ui-tags-input .tags.focused {
  outline: none; }

.ui-tags-input .tags .tag-list {
  margin: 0;
  padding: 0;
  list-style-type: none; }

.ui-tags-input .tags .tag-item {
  display: inline-block;
  float: left;
  margin: 2px;
  padding: 6px 8px;
  border-radius: 2px;
  background-color: #1C7EBB;
  color: #fff; }

.ui-tags-input .tags .tag-item .remove-button {
  margin: 0 0 0 5px;
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
  vertical-align: middle;
  color: #eeeeee;
  text-decoration: none; }

.ui-tags-input .tags .tag-item .remove-button:active {
  color: #E94B3B; }

.ui-tags-input .tags .input {
  border: 0;
  outline: none;
  margin: 2px;
  padding: 5px 0;
  padding-left: 5px;
  float: left;
  height: 30px; }

.ui-tags-input .tags .input.invalid-tag {
  color: #E94B3B; }

.ui-tags-input .tags .input::-ms-clear {
  display: none; }

.ui-tags-input .autocomplete {
  margin-top: 5px;
  position: absolute;
  padding: 5px 0;
  z-index: 999;
  width: 100%;
  background-color: white;
  border: 1px solid rgba(0, 0, 0, 0.2); }

.ui-tags-input .autocomplete .suggestion-list {
  margin: 0;
  padding: 0;
  list-style-type: none; }

.ui-tags-input .autocomplete .suggestion-item {
  overflow: hidden;
  padding: 5px 10px;
  cursor: pointer;
  white-space: nowrap;
  text-overflow: ellipsis;
  color: #222533;
  background-color: #fff; }

.ui-tags-input .autocomplete .suggestion-item.selected {
  color: white;
  background-color: #0097cf; }

.ui-tags-input .autocomplete .suggestion-item.selected em {
  color: white;
  background-color: #0097cf; }

.ui-tags-input .autocomplete .suggestion-item em {
  color: #222533;
  background-color: white; }

/*!
 * angular-loading-bar v0.6.0
 * https://chieffancypants.github.io/angular-loading-bar
 * Copyright (c) 2014 Wes Cruver
 * License: MIT
 */
/* Make clicks pass-through */
#loading-bar,
#loading-bar-spinner {
  pointer-events: none;
  -webkit-pointer-events: none;
  -webkit-transition: 350ms linear all;
  transition: 350ms linear all; }

#loading-bar.ng-enter,
#loading-bar.ng-leave.ng-leave-active,
#loading-bar-spinner.ng-enter,
#loading-bar-spinner.ng-leave.ng-leave-active {
  opacity: 0; }

#loading-bar.ng-enter.ng-enter-active,
#loading-bar.ng-leave,
#loading-bar-spinner.ng-enter.ng-enter-active,
#loading-bar-spinner.ng-leave {
  opacity: 1; }

#loading-bar .bar {
  -webkit-transition: width 350ms;
  transition: width 350ms;
  background-color: #2EC1CC;
  position: fixed;
  z-index: 10002;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  border-bottom-right-radius: 1px;
  border-top-right-radius: 1px; }

/* Fancy blur effect */
#loading-bar .peg {
  position: absolute;
  width: 70px;
  right: 0;
  top: 0;
  height: 2px;
  opacity: .45;
  box-shadow: #2EC1CC 1px 0 6px 1px;
  border-radius: 100%; }

#loading-bar-spinner {
  display: block;
  position: fixed;
  z-index: 10002;
  top: 10px;
  left: 10px; }

#loading-bar-spinner .spinner-icon {
  width: 14px;
  height: 14px;
  border: solid 2px transparent;
  border-top-color: #2EC1CC;
  border-left-color: #2EC1CC;
  border-radius: 10px;
  -webkit-animation: loading-bar-spinner 400ms linear infinite;
  animation: loading-bar-spinner 400ms linear infinite; }

@-webkit-keyframes loading-bar-spinner {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes loading-bar-spinner {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
    transform: rotate(360deg); } }

.fc {
  direction: ltr;
  text-align: left; }

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

body .fc {
  /* extra precedence to overcome jqui */
  font-size: 1em; }

.fc-view thead th {
  padding: 4px; }

/* Colors
--------------------------------------------------------------------------------------------------*/
.fc-unthemed th,
.fc-unthemed td,
.fc-unthemed hr,
.fc-unthemed thead,
.fc-unthemed tbody,
.fc-unthemed .fc-row,
.fc-unthemed .fc-popover {
  border-color: #ddd; }

.fc-unthemed .fc-popover {
  background-color: #fff; }

.fc-unthemed hr,
.fc-unthemed .fc-popover .fc-header {
  background: #eee; }

.fc-unthemed .fc-popover .fc-header .fc-close {
  color: #666; }

.fc-unthemed .fc-today {
  background: #fcf8e3; }

.fc-highlight {
  /* when user is selecting cells */
  background: #bce8f1;
  opacity: .3;
  filter: alpha(opacity=30);
  /* for IE */ }

/* Icons (inline elements with styled text that mock arrow icons)
--------------------------------------------------------------------------------------------------*/
.fc-icon {
  display: inline-block;
  font-size: 2em;
  line-height: .5em;
  height: .5em;
  /* will make the total height 1em */
  font-family: "Courier New", Courier, monospace; }

.fc-icon-left-single-arrow:after {
  content: "\02039"; }

.fc-icon-right-single-arrow:after {
  content: "\0203A"; }

.fc-icon-left-double-arrow:after {
  content: "\000AB"; }

.fc-icon-right-double-arrow:after {
  content: "\000BB"; }

.fc-icon-x:after {
  content: "\000D7"; }

/* Buttons (styled <button> tags, normalized to work cross-browser)
--------------------------------------------------------------------------------------------------*/
.fc button {
  /* dimensions */
  margin: 0;
  height: 2.1em;
  padding: 0 .6em;
  /* text & cursor */
  font-size: 1em;
  /* normalize */
  white-space: nowrap;
  cursor: pointer; }

/* Firefox has an annoying inner border */
.fc button::-moz-focus-inner {
  margin: 0;
  padding: 0; }

.fc-state-default {
  /* non-theme */
  border: 1px solid; }

.fc-state-default.fc-corner-left {
  /* non-theme */
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px; }

.fc-state-default.fc-corner-right {
  /* non-theme */
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px; }

/* icons in buttons */
.fc button .fc-icon {
  /* non-theme */
  position: relative;
  top: .05em;
  /* seems to be a good adjustment across browsers */
  margin: 0 .1em; }

/*
  button states
  borrowed from twitter bootstrap (http://twitter.github.com/bootstrap/)
*/
.fc-state-default {
  background-color: #fff;
  color: #333; }

.fc-state-hover,
.fc-state-down,
.fc-state-active,
.fc-state-disabled {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad; }

.fc-state-down,
.fc-state-active {
  background-image: none; }

.fc-state-disabled {
  cursor: default;
  background-image: none;
  opacity: 0.65;
  filter: alpha(opacity=65);
  box-shadow: none; }

/* Buttons Groups
--------------------------------------------------------------------------------------------------*/
.fc-button-group {
  display: inline-block; }

/*
every button that is not first in a button group should scootch over one pixel and cover the
previous button's border...
*/
.fc .fc-button-group > * {
  /* extra precedence b/c buttons have margin set to zero */
  float: left;
  margin: 0 0 0 -1px; }

.fc .fc-button-group > :first-child {
  /* same */
  margin-left: 0; }

/* Popover
--------------------------------------------------------------------------------------------------*/
.fc-popover {
  position: absolute;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15); }

.fc-popover .fc-header {
  padding: 2px 4px; }

.fc-popover .fc-header .fc-title {
  margin: 0 2px; }

.fc-popover .fc-header .fc-close {
  cursor: pointer; }

.fc-ltr .fc-popover .fc-header .fc-title,
.fc-rtl .fc-popover .fc-header .fc-close {
  float: left; }

.fc-rtl .fc-popover .fc-header .fc-title,
.fc-ltr .fc-popover .fc-header .fc-close {
  float: right; }

/* unthemed */
.fc-unthemed .fc-popover {
  border-width: 1px;
  border-style: solid; }

.fc-unthemed .fc-popover .fc-header .fc-close {
  font-size: 25px;
  margin-top: 4px; }

/* jqui themed */
.fc-popover > .ui-widget-header + .ui-widget-content {
  border-top: 0;
  /* where they meet, let the header have the border */ }

/* Misc Reusable Components
--------------------------------------------------------------------------------------------------*/
.fc hr {
  height: 0;
  margin: 0;
  padding: 0 0 2px;
  /* height is unreliable across browsers, so use padding */
  border-style: solid;
  border-width: 1px 0; }

.fc-clear {
  clear: both; }

.fc-bg,
.fc-highlight-skeleton,
.fc-helper-skeleton {
  /* these element should always cling to top-left/right corners */
  position: absolute;
  top: 0;
  left: 0;
  right: 0; }

.fc-bg {
  bottom: 0;
  /* strech bg to bottom edge */ }

.fc-bg table {
  height: 100%;
  /* strech bg to bottom edge */ }

/* Tables
--------------------------------------------------------------------------------------------------*/
.fc table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 1em;
  /* normalize cross-browser */ }

.fc th {
  text-align: center; }

.fc th,
.fc td {
  border-style: solid;
  border-width: 1px;
  padding: 0;
  vertical-align: top; }

.fc td.fc-today {
  border-style: double;
  /* overcome neighboring borders */ }

/* Fake Table Rows
--------------------------------------------------------------------------------------------------*/
.fc .fc-row {
  /* extra precedence to overcome themes w/ .ui-widget-content forcing a 1px border */
  /* no visible border by default. but make available if need be (scrollbar width compensation) */
  border-style: solid;
  border-width: 0; }

.fc-row table {
  /* don't put left/right border on anything within a fake row.
       the outer tbody will worry about this */
  border-left: 0 hidden transparent;
  border-right: 0 hidden transparent;
  /* no bottom borders on rows */
  border-bottom: 0 hidden transparent; }

.fc-row:first-child table {
  border-top: 0 hidden transparent;
  /* no top border on first row */ }

/* Day Row (used within the header and the DayGrid)
--------------------------------------------------------------------------------------------------*/
.fc-row {
  position: relative; }

.fc-row .fc-bg {
  z-index: 1; }

/* highlighting cells */
.fc-row .fc-highlight-skeleton {
  z-index: 2;
  bottom: 0;
  /* stretch skeleton to bottom of row */ }

.fc-row .fc-highlight-skeleton table {
  height: 100%;
  /* stretch skeleton to bottom of row */ }

.fc-row .fc-highlight-skeleton td {
  border-color: transparent; }

/*
row content (which contains day/week numbers and events) as well as "helper" (which contains
temporary rendered events).
*/
.fc-row .fc-content-skeleton {
  position: relative;
  z-index: 3;
  padding-bottom: 2px;
  /* matches the space above the events */ }

.fc-row .fc-helper-skeleton {
  z-index: 4; }

.fc-row .fc-content-skeleton td,
.fc-row .fc-helper-skeleton td {
  /* see-through to the background below */
  background: none;
  /* in case <td>s are globally styled */
  border-color: transparent;
  /* don't put a border between events and/or the day number */
  border-bottom: 0; }

.fc-row .fc-content-skeleton tbody td,
.fc-row .fc-helper-skeleton tbody td {
  /* don't put a border between event cells */
  border-top: 0; }

/* Scrolling Container
--------------------------------------------------------------------------------------------------*/
.fc-scroller {
  /* this class goes on elements for guaranteed vertical scrollbars */
  overflow-y: scroll;
  overflow-x: hidden; }

.fc-scroller > * {
  /* we expect an immediate inner element */
  position: relative;
  /* re-scope all positions */
  width: 100%;
  /* hack to force re-sizing this inner element when scrollbars appear/disappear */
  overflow: hidden;
  /* don't let negative margins or absolute positioning create further scroll */ }

/* Global Event Styles
--------------------------------------------------------------------------------------------------*/
.fc-event {
  position: relative;
  /* for resize handle and other inner positioning */
  display: block;
  /* make the <a> tag block */
  font-size: .85em;
  line-height: 1.3;
  border-width: 1px;
  /* default BORDER color */
  border-style: solid;
  /* default BORDER color */
  border-color: #2EC1CC;
  /* default BORDER color */
  border-radius: 2px;
  background-color: #fff;
  font-weight: normal;
  /* undo jqui's ui-widget-header bold */ }
  .fc-event.fc-event-success {
    border-color: #23AE89;
    /* default BORDER color */ }
  .fc-event.fc-event-warning {
    border-color: #FFB61C;
    /* default BORDER color */ }
  .fc-event.fc-event-danger {
    border-color: #E94B3B;
    /* default BORDER color */ }

/* overpower some of bootstrap's and jqui's styles on <a> tags */
.fc-event,
.fc-event:hover,
.ui-widget .fc-event {
  color: #767676;
  /* default TEXT color */
  text-decoration: none;
  /* if <a> has an href */ }

.fc-event[href],
.fc-event.fc-draggable {
  cursor: pointer;
  /* give events with links and draggable events a hand mouse pointer */ }

/* DayGrid events
----------------------------------------------------------------------------------------------------
We use the full "fc-day-grid-event" class instead of using descendants because the event won't
be a descendant of the grid when it is being dragged.
*/
.fc-day-grid-event {
  margin: 1px 2px 0;
  /* spacing between events and edges */
  padding: 4px 8px; }

/* events that are continuing to/from another week. kill rounded corners and butt up against edge */
.fc-ltr .fc-day-grid-event.fc-not-start,
.fc-rtl .fc-day-grid-event.fc-not-end {
  margin-left: 0;
  border-left-width: 0;
  padding-left: 1px;
  /* replace the border with padding */
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.fc-ltr .fc-day-grid-event.fc-not-end,
.fc-rtl .fc-day-grid-event.fc-not-start {
  margin-right: 0;
  border-right-width: 0;
  padding-right: 1px;
  /* replace the border with padding */
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.fc-day-grid-event > .fc-content {
  /* force events to be one-line tall */
  white-space: nowrap;
  overflow: hidden; }

.fc-day-grid-event .fc-time {
  font-weight: bold; }

/* resize handle (outside of fc-content, so can go outside of bounds) */
.fc-day-grid-event .fc-resizer {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 7px; }

.fc-ltr .fc-day-grid-event .fc-resizer {
  right: -3px;
  cursor: e-resize; }

.fc-rtl .fc-day-grid-event .fc-resizer {
  left: -3px;
  cursor: w-resize; }

/* Event Limiting
--------------------------------------------------------------------------------------------------*/
/* "more" link that represents hidden events */
a.fc-more {
  margin: 1px 3px;
  font-size: .85em;
  cursor: pointer;
  text-decoration: none; }

a.fc-more:hover {
  text-decoration: underline; }

.fc-limited {
  /* rows and cells that are hidden because of a "more" link */
  display: none; }

/* popover that appears when "more" link is clicked */
.fc-day-grid .fc-row {
  z-index: 1;
  /* make the "more" popover one higher than this */ }

.fc-more-popover {
  z-index: 2;
  width: 220px; }

.fc-more-popover .fc-event-container {
  padding: 10px; }

/* Toolbar
--------------------------------------------------------------------------------------------------*/
.fc-toolbar {
  text-align: center;
  margin-bottom: 1em;
  /* button layering (for border precedence) */ }
  .fc-toolbar .fc-left {
    float: left; }
  .fc-toolbar .fc-right {
    float: right; }
  .fc-toolbar .fc-center {
    display: inline-block; }
  .fc-toolbar h2 {
    margin: 0;
    font-size: 22px;
    font-weight: normal;
    line-height: 29px;
    text-transform: uppercase; }
  .fc-toolbar button {
    position: relative; }
  .fc-toolbar .fc-state-hover,
  .fc-toolbar .ui-state-hover {
    z-index: 2; }
  .fc-toolbar .fc-state-down {
    z-index: 3; }
  .fc-toolbar .fc-state-active,
  .fc-toolbar .ui-state-active {
    z-index: 4; }
  .fc-toolbar button:focus {
    z-index: 5; }

/* the things within each left/right/center section */
.fc .fc-toolbar > * > * {
  /* extra precedence to override button border margins */
  float: left;
  margin-left: .75em; }

/* the first thing within each left/center/right section */
.fc .fc-toolbar > * > :first-child {
  /* extra precedence to override button border margins */
  margin-left: 0; }

/* View Structure
--------------------------------------------------------------------------------------------------*/
/* undo twitter bootstrap's box-sizing rules. normalizes positioning techniques */
/* don't do this for the toolbar because we'll want bootstrap to style those buttons as some pt */
.fc-view-container *,
.fc-view-container *:before,
.fc-view-container *:after {
  box-sizing: content-box; }

.fc-view,
.fc-view > table {
  /* so dragged elements can be above the view's main element */
  position: relative;
  z-index: 1; }

/* BasicView
--------------------------------------------------------------------------------------------------*/
/* day row structure */
.fc-basicWeek-view .fc-content-skeleton,
.fc-basicDay-view .fc-content-skeleton {
  /* we are sure there are no day numbers in these views, so... */
  padding-top: 1px;
  /* add a pixel to make sure there are 2px padding above events */
  padding-bottom: 1em;
  /* ensure a space at bottom of cell for user selecting/clicking */ }

.fc-basic-view tbody .fc-row {
  min-height: 4em;
  /* ensure that all rows are at least this tall */ }

/* a "rigid" row will take up a constant amount of height because content-skeleton is absolute */
.fc-row.fc-rigid {
  overflow: hidden; }

.fc-row.fc-rigid .fc-content-skeleton {
  position: absolute;
  top: 0;
  left: 0;
  right: 0; }

/* week and day number styling */
.fc-basic-view .fc-week-number,
.fc-basic-view .fc-day-number {
  padding: 0 2px; }

.fc-basic-view td.fc-week-number span,
.fc-basic-view td.fc-day-number {
  padding-top: 2px;
  padding-bottom: 2px; }

.fc-basic-view .fc-week-number {
  text-align: center; }

.fc-basic-view .fc-week-number span {
  /* work around the way we do column resizing and ensure a minimum width */
  display: inline-block;
  min-width: 1.25em; }

.fc-ltr .fc-basic-view .fc-day-number {
  text-align: right; }

.fc-rtl .fc-basic-view .fc-day-number {
  text-align: left; }

.fc-day-number.fc-other-month {
  opacity: 0.3;
  filter: alpha(opacity=30);
  /* for IE */
  /* opacity with small font can sometimes look too faded
       might want to set the 'color' property instead
       making day-numbers bold also fixes the problem */ }

/* AgendaView all-day area
--------------------------------------------------------------------------------------------------*/
.fc-agenda-view .fc-day-grid {
  position: relative;
  z-index: 2;
  /* so the "more.." popover will be over the time grid */ }

.fc-agenda-view .fc-day-grid .fc-row {
  min-height: 3em;
  /* all-day section will never get shorter than this */ }

.fc-agenda-view .fc-day-grid .fc-row .fc-content-skeleton {
  padding-top: 1px;
  /* add a pixel to make sure there are 2px padding above events */
  padding-bottom: 1em;
  /* give space underneath events for clicking/selecting days */ }

/* TimeGrid axis running down the side (for both the all-day area and the slot area)
--------------------------------------------------------------------------------------------------*/
.fc .fc-axis {
  /* .fc to overcome default cell styles */
  vertical-align: middle;
  padding: 0 4px;
  white-space: nowrap; }

.fc-ltr .fc-axis {
  text-align: right; }

.fc-rtl .fc-axis {
  text-align: left; }

.ui-widget td.fc-axis {
  font-weight: normal;
  /* overcome jqui theme making it bold */ }

/* TimeGrid Structure
--------------------------------------------------------------------------------------------------*/
.fc-time-grid-container,
.fc-time-grid {
  /* so slats/bg/content/etc positions get scoped within here */
  position: relative;
  z-index: 1; }

.fc-time-grid {
  min-height: 100%;
  /* so if height setting is 'auto', .fc-bg stretches to fill height */ }

.fc-time-grid table {
  /* don't put outer borders on slats/bg/content/etc */
  border: 0 hidden transparent; }

.fc-time-grid > .fc-bg {
  z-index: 1; }

.fc-time-grid .fc-slats,
.fc-time-grid > hr {
  /* the <hr> AgendaView injects when grid is shorter than scroller */
  position: relative;
  z-index: 2; }

.fc-time-grid .fc-highlight-skeleton {
  z-index: 3; }

.fc-time-grid .fc-content-skeleton {
  position: absolute;
  z-index: 4;
  top: 0;
  left: 0;
  right: 0; }

.fc-time-grid > .fc-helper-skeleton {
  z-index: 5; }

/* TimeGrid Slats (lines that run horizontally)
--------------------------------------------------------------------------------------------------*/
.fc-slats td {
  height: 1.5em;
  border-bottom: 0;
  /* each cell is responsible for its top border */ }

.fc-slats .fc-minor td {
  border-top-style: dotted; }

.fc-slats .ui-widget-content {
  /* for jqui theme */
  background: none;
  /* see through to fc-bg */ }

/* TimeGrid Highlighting Slots
--------------------------------------------------------------------------------------------------*/
.fc-time-grid .fc-highlight-container {
  /* a div within a cell within the fc-highlight-skeleton */
  position: relative;
  /* scopes the left/right of the fc-highlight to be in the column */ }

.fc-time-grid .fc-highlight {
  position: absolute;
  left: 0;
  right: 0;
  /* top and bottom will be in by JS */ }

/* TimeGrid Event Containment
--------------------------------------------------------------------------------------------------*/
.fc-time-grid .fc-event-container {
  /* a div within a cell within the fc-content-skeleton */
  position: relative; }

.fc-ltr .fc-time-grid .fc-event-container {
  /* space on the sides of events for LTR (default) */
  margin: 0 2.5% 0 2px; }

.fc-rtl .fc-time-grid .fc-event-container {
  /* space on the sides of events for RTL */
  margin: 0 2px 0 2.5%; }

.fc-time-grid .fc-event {
  position: absolute;
  z-index: 1;
  /* scope inner z-index's */ }

/* TimeGrid Event Styling
----------------------------------------------------------------------------------------------------
We use the full "fc-time-grid-event" class instead of using descendants because the event won't
be a descendant of the grid when it is being dragged.
*/
.fc-time-grid-event.fc-not-start {
  /* events that are continuing from another day */
  /* replace space made by the top border with padding */
  border-top-width: 0;
  padding-top: 1px;
  /* remove top rounded corners */
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.fc-time-grid-event.fc-not-end {
  /* replace space made by the top border with padding */
  border-bottom-width: 0;
  padding-bottom: 1px;
  /* remove bottom rounded corners */
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

.fc-time-grid-event {
  overflow: hidden;
  /* don't let the bg flow over rounded corners */ }

.fc-time-grid-event > .fc-content {
  /* contains the time and title, but no bg and resizer */
  position: relative;
  z-index: 2;
  /* above the bg */ }

.fc-time-grid-event .fc-time,
.fc-time-grid-event .fc-title {
  padding: 0 1px; }

.fc-time-grid-event .fc-time {
  font-size: .85em;
  white-space: nowrap; }

.fc-time-grid-event .fc-bg {
  z-index: 1;
  background: #fff;
  opacity: .25;
  filter: alpha(opacity=25);
  /* for IE */ }

/* short mode, where time and title are on the same line */
.fc-time-grid-event.fc-short .fc-content {
  /* don't wrap to second line (now that contents will be inline) */
  white-space: nowrap; }

.fc-time-grid-event.fc-short .fc-time,
.fc-time-grid-event.fc-short .fc-title {
  /* put the time and title on the same line */
  display: inline-block;
  vertical-align: top; }

.fc-time-grid-event.fc-short .fc-time span {
  display: none;
  /* don't display the full time text... */ }

.fc-time-grid-event.fc-short .fc-time:before {
  content: attr(data-start);
  /* ...instead, display only the start time */ }

.fc-time-grid-event.fc-short .fc-time:after {
  content: "\000A0-\000A0";
  /* seperate with a dash, wrapped in nbsp's */ }

.fc-time-grid-event.fc-short .fc-title {
  font-size: .85em;
  /* make the title text the same size as the time */
  padding: 0;
  /* undo padding from above */ }

/* resizer */
.fc-time-grid-event .fc-resizer {
  position: absolute;
  z-index: 3;
  /* above content */
  left: 0;
  right: 0;
  bottom: 0;
  height: 8px;
  overflow: hidden;
  line-height: 8px;
  font-size: 11px;
  font-family: monospace;
  text-align: center;
  cursor: s-resize; }

.fc-time-grid-event .fc-resizer:after {
  content: "="; }

.ui-angular-wizard .steps {
  border: 1px solid #e1e1e1;
  margin-bottom: 3em;
  padding: 0;
  border-radius: 2px; }
  .ui-angular-wizard .steps h2 {
    font-size: 18px;
    line-height: 1;
    padding: 1.2em 1em;
    margin: 0;
    text-transform: uppercase;
    border-bottom: 1px solid #e1e1e1; }

.ui-angular-wizard .ui-wizard-content {
  background-color: #fafafa;
  padding: 3em 1em; }

.ui-angular-wizard .ui-wizard-actions {
  margin: 0;
  padding: 1.2em 1em;
  text-align: right;
  border-top: 1px solid #e1e1e1; }

.steps-indicator {
  /* ---- steps quantity ---- */
  right: 0;
  bottom: 0;
  left: 0;
  margin: 0;
  padding: 20px 0 0 0;
  height: 30px;
  list-style: none;
  /* --- http://www.paulirish.com/2012/box-sizing-border-box-ftw/ ---- */ }
  .steps-indicator:before {
    background-color: #E6E6E6;
    content: '';
    position: absolute;
    height: 1px; }
  .steps-indicator.steps-2:before {
    left: calc(100% / 2 / 2);
    right: calc(100% / 2 / 2); }
  .steps-indicator.steps-3:before {
    left: calc(100% / 3 / 2);
    right: calc(100% / 3 / 2); }
  .steps-indicator.steps-4:before {
    left: calc(100% / 4 / 2);
    right: calc(100% / 4 / 2); }
  .steps-indicator.steps-5:before {
    left: calc(100% / 5 / 2);
    right: calc(100% / 5 / 2); }
  .steps-indicator.steps-6:before {
    left: calc(100% / 6 / 2);
    right: calc(100% / 6 / 2); }
  .steps-indicator.steps-7:before {
    left: calc(100% / 7 / 2);
    right: calc(100% / 7 / 2); }
  .steps-indicator.steps-8:before {
    left: calc(100% / 8 / 2);
    right: calc(100% / 8 / 2); }
  .steps-indicator.steps-9:before {
    left: calc(100% / 9 / 2);
    right: calc(100% / 9 / 2); }
  .steps-indicator.steps-10:before {
    left: calc(100% / 10 / 2);
    right: calc(100% / 10 / 2); }
  .steps-indicator * {
    box-sizing: border-box; }
  .steps-indicator li {
    position: relative;
    float: left;
    margin: 0;
    padding: 0;
    padding-top: 10px;
    text-align: center;
    line-height: 15px; }
    .steps-indicator li a {
      color: #808080;
      text-decoration: none;
      text-transform: uppercase;
      font-weight: bold;
      -webkit-transition: 0.25s;
      transition: 0.25s;
      cursor: pointer; }
      .steps-indicator li a:before {
        position: absolute;
        top: -7px;
        left: calc(50% - 7px);
        width: 14px;
        height: 14px;
        border-radius: 100%;
        background-color: #E6E6E6;
        content: '';
        -webkit-transition: 0.25s;
        transition: 0.25s; }
      .steps-indicator li a:hover {
        color: #4d4d4d; }
  .steps-indicator.steps-2 li {
    width: calc(100% / 2); }
  .steps-indicator.steps-3 li {
    width: calc(100% / 3); }
  .steps-indicator.steps-4 li {
    width: calc(100% / 4); }
  .steps-indicator.steps-5 li {
    width: calc(100% / 5); }
  .steps-indicator.steps-6 li {
    width: calc(100% / 6); }
  .steps-indicator.steps-7 li {
    width: calc(100% / 7); }
  .steps-indicator.steps-8 li {
    width: calc(100% / 8); }
  .steps-indicator.steps-9 li {
    width: calc(100% / 9); }
  .steps-indicator.steps-10 li {
    width: calc(100% / 10); }
  .steps-indicator.steps-11 li {
    width: calc(100% / 11); }
  .steps-indicator li.default {
    pointer-events: none; }
    .steps-indicator li.default a:hover {
      color: #808080; }
  .steps-indicator li.current,
  .steps-indicator li.editing {
    pointer-events: none; }
  .steps-indicator li.current a:before {
    background-color: #808080; }
  .steps-indicator li.done a:before {
    background-color: #23AE89; }
  .steps-indicator li.editing a:before {
    background-color: #1C7EBB; }

html,
body,
#app-container {
  position: relative;
  min-height: 100%;
  height: 100%; }

.app {
  position: relative;
  min-height: 100%;
  height: 100%; }
  .app > .header-container.header-fixed {
    position: fixed;
    right: 0;
    left: 0;
    z-index: 1030; }
    .app > .header-container.header-fixed + .main-container {
      padding-top: 100px; }
      @media (min-width: 768px) {
        .app > .header-container.header-fixed + .main-container {
          padding-top: 50px; } }
  .app > .main-container {
    position: relative;
    min-height: 100%; }
    .app > .main-container:before {
      content: " ";
      line-height: 0;
      z-index: -2;
      position: absolute;
      display: block;
      width: 100%;
      max-width: inherit;
      top: 0;
      bottom: 0;
      background-color: #eaeaea;
      box-shadow: 0 0 2px rgba(0, 0, 0, 0.2); }
    .app > .main-container > .nav-vertical:before {
      left: 0; }
    .app > .main-container > .nav-container {
      display: none;
      z-index: 11;
      position: static;
      float: left;
      width: 220px; }
      @media (min-width: 768px) {
        .app > .main-container > .nav-container {
          display: block; } }
      .app > .main-container > .nav-container:before {
        z-index: -1;
        content: " ";
        line-height: 0;
        position: absolute;
        display: block;
        top: 0;
        bottom: 0;
        width: inherit;
        background-color: inherit;
        border-width: inherit;
        border-style: inherit;
        border-color: inherit; }
      .app > .main-container > .nav-container.nav-fixed {
        position: fixed;
        top: 100px;
        bottom: 0px;
        float: none; }
        @media (min-width: 768px) {
          .app > .main-container > .nav-container.nav-fixed {
            top: 50px;
            bottom: 70px; } }
        @media (min-width: 992px) {
          .app > .main-container > .nav-container.nav-fixed {
            top: 50px;
            bottom: 50px; } }
    .app > .main-container > .content-container {
      overflow: hidden;
      min-height: 100%;
      margin-left: 0; }
      @media (min-width: 768px) {
        .app > .main-container > .content-container {
          margin-left: 220px; } }

.layout-boxed > .header-container .top-header {
  max-width: 1200px;
  margin: 0 auto; }

.layout-boxed > .main-container {
  max-width: 1200px;
  margin: 0 auto; }

#nav-container ul {
  padding-left: 0;
  list-style: none; }

#nav-container > .nav-wrapper {
  position: relative;
  width: 100%;
  height: 250px;
  margin-bottom: 10px;
  border: 2px; }

#nav-container > .nav-wrapper-plant {
  bottom: 0px; }

.nav-container .nav ul {
  display: none; }

.nav-container .icon-has-ul {
  position: absolute;
  right: 15px;
  font-size: 10px;
  color: #767676; }

.nav-container .nav {
  margin: 0;
  padding: 0;
  -webkit-overflow-scrolling: touch;
  -webkit-overflow-scrolling: -blackberry-touch; }
  .nav-container .nav .nav-title {
    margin: 15px 15px 10px;
    font-size: 12px; }
  .nav-container .nav .divider {
    margin: 10px 0;
    border-width: 1px;
    border-style: solid; }
  .nav-container .nav > li > a > .nav-icon,
  .nav-container .nav > li > a > i {
    display: inline-block;
    margin-right: 10px;
    width: 20px;
    line-height: 1;
    text-align: center;
    font-size: 14px;
    -webkit-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out; }
  .nav-container .nav a {
    font-size: 13px;
    -webkit-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out; }
    .nav-container .nav a:active, .nav-container .nav a:focus, .nav-container .nav a:hover {
      text-decoration: none; }
  .nav-container .nav > li {
    position: relative;
    margin: 0;
    text-align: left;
    font-weight: bold;
    -webkit-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out; }
    .nav-container .nav > li:first-child > a {
      border-top: 0; }
    .nav-container .nav > li > a {
      position: relative;
      display: block;
      padding: 15px;
      -webkit-transition: all 0.25s ease-in-out;
      transition: all 0.25s ease-in-out; }
      .nav-container .nav > li > a .badge {
        position: absolute;
        top: 16px;
        right: 8px; }
    .nav-container .nav > li > .icon-has-ul {
      top: 15px;
      line-height: 19px; }
  .nav-container .nav ul a {
    position: relative;
    font-size: 13px; }
  .nav-container .nav ul .icon-has-ul {
    top: 13px;
    line-height: 18px; }
  .nav-container .nav ul li {
    position: relative;
    padding: 0; }
    .nav-container .nav ul li:last-child > a {
      border-bottom: 0; }
    .nav-container .nav ul li > a {
      position: relative;
      display: block;
      padding: 13px 0 13px 25px;
      -webkit-transition: all 0.25s ease-in-out;
      transition: all 0.25s ease-in-out; }
      .nav-container .nav ul li > a:first-child {
        border-top: none; }
      .nav-container .nav ul li > a > i {
        font-size: 9px;
        margin-right: 16px;
        line-height: 14px;
        vertical-align: middle; }
        .nav-container .nav ul li > a > i.fa-circle, .nav-container .nav ul li > a > i.fa-circle-o {
          font-size: 5px; }
        .nav-container .nav ul li > a > i.fa-caret-right {
          font-size: 9px; }
      .nav-container .nav ul li > a > .badge {
        position: absolute;
        right: 8px;
        top: 12px; }

@media (max-width: 767px) {
  .on-canvas #header {
    position: fixed;
    right: 0;
    left: 0;
    z-index: 12; }
  .on-canvas #nav-container {
    display: block;
    position: fixed;
    top: 100px;
    bottom: 0;
    float: none; }
  .on-canvas .main-container {
    overflow: hidden; }
    .on-canvas .main-container #content {
      margin-left: 220px;
      margin-right: -220px; } }

@media (min-width: 768px) {
  .app.nav-collapsed-min .slimScrollDiv {
    overflow: visible !important;
    height: auto !important; }
    .app.nav-collapsed-min .slimScrollDiv .slimScrollBar,
    .app.nav-collapsed-min .slimScrollDiv .slimScrollRail {
      display: none !important; }
  .app.nav-collapsed-min #nav-container {
    width: 60px; }
  .app.nav-collapsed-min .content-container {
    margin-left: 60px; }
  .app.nav-collapsed-min #nav-wrapper {
    overflow: visible !important; }
  .app.nav-collapsed-min #nav {
    overflow: visible !important; }
    .app.nav-collapsed-min #nav li:hover > ul, .app.nav-collapsed-min #nav li.open > ul {
      display: block !important; }
    .app.nav-collapsed-min #nav li ul {
      z-index: 9;
      position: absolute;
      left: 100%;
      top: 0;
      width: 220px;
      border-bottom-right-radius: 2px;
      border-top-right-radius: 2px;
      box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2); }
    .app.nav-collapsed-min #nav > li > a {
      padding: 15px 15px;
      text-align: center; }
      .app.nav-collapsed-min #nav > li > a > i {
        margin: 0;
        font-size: 20px; }
      .app.nav-collapsed-min #nav > li > a > span {
        display: none; }
    .app.nav-collapsed-min #nav > li > .icon-has-ul {
      display: none; }
  .app.nav-collapsed-min .nav-title {
    display: none; } }

.nav-container:before {
  content: '';
  height: 100%;
  position: absolute;
  right: 0;
  width: 2px;
  z-index: 2; }

.nav-container.bg-white:before {
  box-shadow: inset -1px 0 1px rgba(255, 255, 255, 0.3); }

.nav-container.bg-white .nav a {
  color: #767676; }

.nav-container.bg-white .nav .nav-title {
  color: #767676; }

.nav-container.bg-white .nav .divider {
  border-color: #eeeeee; }

.nav-container.bg-white .nav > li:hover > a {
  background-color: transparent;
  color: #767676; }

.nav-container.bg-white .nav > li:hover > .icon-has-ul,
.nav-container.bg-white .nav > li:hover > .icon-has-ul-h {
  color: #767676; }

.nav-container.bg-white .nav > li.active > a {
  color: #767676; }

.nav-container.bg-white .nav > li.active > .icon-has-ul {
  color: #767676; }

.nav-container.bg-white .nav > li > a:focus {
  background-color: transparent; }

.nav-container.bg-white .nav ul {
  background-color: #f6f6f6; }
  .nav-container.bg-white .nav ul > li:hover > a, .nav-container.bg-white .nav ul > li.active > a {
    background-color: #eee; }

.nav-container.bg-white .nav ul ul {
  background-color: #eee; }
  .nav-container.bg-white .nav ul ul > li:hover > a, .nav-container.bg-white .nav ul ul > li.active > a {
    background-color: #ddd; }

.nav-container.bg-white.nav-vertical .nav > li.open > a {
  background-color: #f6f6f6;
  color: #767676; }
  .nav-container.bg-white.nav-vertical .nav > li.open > a:hover, .nav-container.bg-white.nav-vertical .nav > li.open > a:focus, .nav-container.bg-white.nav-vertical .nav > li.open > a:active {
    background-color: #f6f6f6;
    color: #767676; }

.nav-container.bg-white.nav-vertical .nav > li.open > .icon-has-ul,
.nav-container.bg-white.nav-vertical .nav > li.open > .icon-has-ul-h {
  color: #767676; }

.nav-container.bg-dark {
  background-color: #222533; }
  .nav-container.bg-dark:before {
    box-shadow: inset -1px 0 1px rgba(0, 0, 0, 0.3); }
  .nav-container.bg-dark .nav a {
    color: #ccc;
    color: rgba(255, 255, 255, 0.5); }
  .nav-container.bg-dark .nav .nav-title {
    color: #666; }
  .nav-container.bg-dark .nav .divider {
    border-color: #181a24; }
  .nav-container.bg-dark .nav > li:hover > a {
    background-color: transparent;
    color: rgba(255, 255, 255, 0.8); }
  .nav-container.bg-dark .nav > li:hover > .icon-has-ul,
  .nav-container.bg-dark .nav > li:hover > .icon-has-ul-h {
    color: rgba(255, 255, 255, 0.8); }
  .nav-container.bg-dark .nav > li.active > a {
    color: rgba(255, 255, 255, 0.8); }
  .nav-container.bg-dark .nav > li.active > .icon-has-ul {
    color: rgba(255, 255, 255, 0.8); }
  .nav-container.bg-dark .nav > li > a:focus {
    background-color: transparent; }
  .nav-container.bg-dark .nav ul {
    background-color: #1c1e2a; }
    .nav-container.bg-dark .nav ul > li.open > a, .nav-container.bg-dark .nav ul > li:hover > a, .nav-container.bg-dark .nav ul > li.active > a {
      background-color: #12131b;
      color: rgba(255, 255, 255, 0.8); }
  .nav-container.bg-dark .nav ul ul {
    background-color: #12131b; }
    .nav-container.bg-dark .nav ul ul > li.open > a, .nav-container.bg-dark .nav ul ul > li:hover > a, .nav-container.bg-dark .nav ul ul > li.active > a {
      background-color: #07080b;
      color: rgba(255, 255, 255, 0.8); }
  .nav-container.bg-dark.nav-vertical .nav > li.open > a {
    background-color: #1c1e2a;
    color: rgba(255, 255, 255, 0.8); }
    .nav-container.bg-dark.nav-vertical .nav > li.open > a:hover, .nav-container.bg-dark.nav-vertical .nav > li.open > a:focus, .nav-container.bg-dark.nav-vertical .nav > li.open > a:active {
      background-color: #1c1e2a;
      color: rgba(255, 255, 255, 0.8); }
  .nav-container.bg-dark.nav-vertical .nav > li.open > .icon-has-ul,
  .nav-container.bg-dark.nav-vertical .nav > li.open > .icon-has-ul-h {
    color: rgba(255, 255, 255, 0.8); }

.footer {
  font-size: 10px;
  margin-left: 15px;
  margin-right: 15px;
  margin-bottom: 0px; }

@media screen and (min-width: 600px) {
  .footer {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    margin-left: 0px;
    margin-right: 0px; } }

@media (min-width: 768px) {
  .app.nav-collapsed-min .top-header .logo {
    width: 60px; } }

.app.nav-collapsed-min .top-header .logo .logo-text {
  display: none; }

.app.nav-collapsed-min .top-header .top-nav {
  padding: 0 0 0 60px; }

.header-container {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15); }
  .header-container > .top-header a {
    color: #aaa; }
    .header-container > .top-header a:hover {
      text-decoration: none; }
  .header-container > .top-header .dropdown-menu a {
    color: #767676; }
  .header-container > .top-header .hidden-mobile {
    display: none; }
    @media (min-width: 480px) {
      .header-container > .top-header .hidden-mobile {
        display: inline; } }
  .header-container > .top-header .logo {
    position: absolute;
    width: 100%;
    height: 50px;
    line-height: 50px;
    text-align: center; }
    @media (min-width: 768px) {
      .header-container > .top-header .logo {
        display: inline-block;
        width: 220px;
        border-right: 1px solid rgba(255, 255, 255, 0.06); } }
    .header-container > .top-header .logo .logo-icon {
      font-size: 20px; }
      .header-container > .top-header .logo .logo-icon + .logo-text {
        margin-left: 8px; }
    .header-container > .top-header .logo > a {
      font-size: 24px;
      vertical-align: middle; }
  .header-container > .top-header .menu-button {
    display: block;
    position: absolute;
    top: 8px;
    right: 20px;
    width: 46px;
    padding: 10px 12px;
    border-radius: 4px; }
    .header-container > .top-header .menu-button:hover {
      cursor: pointer;
      background-color: #15608f; }
    .header-container > .top-header .menu-button .icon-bar {
      display: block;
      width: 22px;
      height: 2px;
      border-radius: 1px;
      background-color: #fff; }
    .header-container > .top-header .menu-button .icon-bar + .icon-bar {
      margin-top: 4px; }
    @media (min-width: 768px) {
      .header-container > .top-header .menu-button {
        display: none; } }
  .header-container > .top-header .admin-options {
    z-index: 20;
    line-height: 20px; }
  .header-container > .top-header .skin-options .panel-body {
    min-width: 330px;
    background-color: #f9f9f9; }
  .header-container > .top-header .dropdown-menu.panel {
    padding: 0;
    white-space: nowrap; }
    .header-container > .top-header .dropdown-menu.panel .panel-heading,
    .header-container > .top-header .dropdown-menu.panel .panel-footer {
      padding: 10px 15px; }
    .header-container > .top-header .dropdown-menu.panel .list-group-item {
      padding: 10px 15px; }
      .header-container > .top-header .dropdown-menu.panel .list-group-item > a {
        display: block; }
    .header-container > .top-header .dropdown-menu.panel .media .media-body {
      padding-right: 75px; }
  .header-container > .top-header .top-nav {
    width: 100%;
    height: 50px;
    padding: 50px 0 0; }
    @media (min-width: 768px) {
      .header-container > .top-header .top-nav {
        padding: 0 0 0 220px; } }
    .header-container > .top-header .top-nav > ul {
      margin-bottom: 0; }
    .header-container > .top-header .top-nav .nav-left,
    .header-container > .top-header .top-nav .nav-right {
      font-size: 16px;
      line-height: 20px; }
      .header-container > .top-header .top-nav .nav-left > li,
      .header-container > .top-header .top-nav .nav-right > li {
        float: left; }
        .header-container > .top-header .top-nav .nav-left > li.nav-profile > a,
        .header-container > .top-header .top-nav .nav-right > li.nav-profile > a {
          padding: 10px 15px; }
        .header-container > .top-header .top-nav .nav-left > li.nav-profile .hidden-xs,
        .header-container > .top-header .top-nav .nav-right > li.nav-profile .hidden-xs {
          padding-right: 8px; }
        .header-container > .top-header .top-nav .nav-left > li.nav-profile i,
        .header-container > .top-header .top-nav .nav-right > li.nav-profile i {
          width: 18px;
          font-size: 16px;
          margin-right: 5px; }
        .header-container > .top-header .top-nav .nav-left > li > .toggle-min,
        .header-container > .top-header .top-nav .nav-right > li > .toggle-min {
          display: none; }
          @media (min-width: 768px) {
            .header-container > .top-header .top-nav .nav-left > li > .toggle-min,
            .header-container > .top-header .top-nav .nav-right > li > .toggle-min {
              display: block; } }
        .header-container > .top-header .top-nav .nav-left > li a:hover, .header-container > .top-header .top-nav .nav-left > li a:focus,
        .header-container > .top-header .top-nav .nav-right > li a:hover,
        .header-container > .top-header .top-nav .nav-right > li a:focus {
          text-decoration: none; }
        .header-container > .top-header .top-nav .nav-left > li > .btn-group > a,
        .header-container > .top-header .top-nav .nav-left > li > a,
        .header-container > .top-header .top-nav .nav-right > li > .btn-group > a,
        .header-container > .top-header .top-nav .nav-right > li > a {
          position: relative;
          display: block;
          height: 50px;
          padding: 15px 16px; }
          @media (min-width: 768px) {
            .header-container > .top-header .top-nav .nav-left > li > .btn-group > a,
            .header-container > .top-header .top-nav .nav-left > li > a,
            .header-container > .top-header .top-nav .nav-right > li > .btn-group > a,
            .header-container > .top-header .top-nav .nav-right > li > a {
              padding: 15px 18px; } }
          .header-container > .top-header .top-nav .nav-left > li > .btn-group > a .badge,
          .header-container > .top-header .top-nav .nav-left > li > a .badge,
          .header-container > .top-header .top-nav .nav-right > li > .btn-group > a .badge,
          .header-container > .top-header .top-nav .nav-right > li > a .badge {
            position: absolute;
            top: 6px;
            right: 3px; }
            @media (min-width: 768px) {
              .header-container > .top-header .top-nav .nav-left > li > .btn-group > a .badge,
              .header-container > .top-header .top-nav .nav-left > li > a .badge,
              .header-container > .top-header .top-nav .nav-right > li > .btn-group > a .badge,
              .header-container > .top-header .top-nav .nav-right > li > a .badge {
                background-color: transparent;
                color: #aaa; } }
        .header-container > .top-header .top-nav .nav-left > li ul.dropdown-menu a:hover,
        .header-container > .top-header .top-nav .nav-right > li ul.dropdown-menu a:hover {
          background-color: #1C7EBB;
          color: #fff; }
        .header-container > .top-header .top-nav .nav-left > li ul.dropdown-menu .glyphicon,
        .header-container > .top-header .top-nav .nav-right > li ul.dropdown-menu .glyphicon {
          margin-right: 10px; }
    .header-container > .top-header .top-nav .search-box {
      max-width: 180px;
      padding: 8px 0; }
      .header-container > .top-header .top-nav .search-box .input-group-addon {
        padding: 6px 0 6px 12px;
        border: none;
        background-color: transparent; }
      .header-container > .top-header .top-nav .search-box .form-control {
        border: none;
        background: transparent; }
    .header-container > .top-header .top-nav .nav-left {
      float: left;
      padding: 0; }
      .header-container > .top-header .top-nav .nav-left > li {
        border-right: 1px solid rgba(255, 255, 255, 0.06); }
    .header-container > .top-header .top-nav .nav-right {
      padding: 0; }
      .header-container > .top-header .top-nav .nav-right > li > a {
        text-align: center;
        color: #fff; }
        .header-container > .top-header .top-nav .nav-right > li > a .badge {
          color: #fff; }
      .header-container > .top-header .top-nav .nav-right > li:last-child .dropdown-menu.pull-right {
        right: 10px; }
  .header-container > .top-header .langs .active-flag .flag {
    margin-top: -6px; }
  .header-container > .top-header .langs .list-langs a {
    position: relative;
    padding: 0px 20px 0px 30px; }
    .header-container > .top-header .langs .list-langs a .flag {
      position: absolute;
      top: 2px;
      left: 0px; }

.skin-check {
  position: relative;
  display: block; }
  .skin-check input[type="radio"] {
    display: none; }
  .skin-check input[type="radio"] + span:hover {
    cursor: pointer; }
  .skin-check input[type="radio"] + span {
    position: relative; }
    .skin-check input[type="radio"] + span > .overlay {
      display: none;
      position: absolute;
      top: 0;
      bottom: 0;
      right: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.3);
      text-align: center;
      line-height: 30px;
      color: #fff; }
  .skin-check input[type="radio"]:checked + span > .overlay {
    display: block; }

.skin-item {
  overflow: hidden;
  display: block;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.1);
  margin-bottom: 15px; }
  .skin-item > span {
    display: block;
    float: left;
    width: 50%;
    height: 20px; }
  .skin-item .item-header {
    height: 10px; }

.header-container .dropdown {
  color: #767676; }
  .header-container .dropdown a {
    color: #767676; }
    .header-container .dropdown a:hover {
      color: #767676; }

.header-container.bg-white {
  color: #767676; }
  .header-container.bg-white .input-group-addon,
  .header-container.bg-white a {
    color: #767676; }
    .header-container.bg-white .input-group-addon:hover,
    .header-container.bg-white a:hover {
      color: #767676; }

.header-container.bg-dark {
  color: #fafafa; }
  .header-container.bg-dark .input-group-addon,
  .header-container.bg-dark a {
    color: #fafafa; }
    .header-container.bg-dark .input-group-addon:hover,
    .header-container.bg-dark a:hover {
      color: #fafafa; }

.header-container.bg-primary, .header-container.bg-success, .header-container.bg-info, .header-container.bg-info-alt, .header-container.bg-warning, .header-container.bg-danger {
  color: #fafafa; }
  .header-container.bg-primary a, .header-container.bg-success a, .header-container.bg-info a, .header-container.bg-info-alt a, .header-container.bg-warning a, .header-container.bg-danger a {
    color: #fafafa; }
    .header-container.bg-primary a:hover, .header-container.bg-success a:hover, .header-container.bg-info a:hover, .header-container.bg-info-alt a:hover, .header-container.bg-warning a:hover, .header-container.bg-danger a:hover {
      color: #fafafa; }
  .header-container.bg-primary .input-group-addon, .header-container.bg-success .input-group-addon, .header-container.bg-info .input-group-addon, .header-container.bg-info-alt .input-group-addon, .header-container.bg-warning .input-group-addon, .header-container.bg-danger .input-group-addon {
    color: #eeeeee; }
  .header-container.bg-primary ::-webkit-input-placeholder, .header-container.bg-success ::-webkit-input-placeholder, .header-container.bg-info ::-webkit-input-placeholder, .header-container.bg-info-alt ::-webkit-input-placeholder, .header-container.bg-warning ::-webkit-input-placeholder, .header-container.bg-danger ::-webkit-input-placeholder {
    color: #eaeaea; }
  .header-container.bg-primary :-moz-placeholder, .header-container.bg-success :-moz-placeholder, .header-container.bg-info :-moz-placeholder, .header-container.bg-info-alt :-moz-placeholder, .header-container.bg-warning :-moz-placeholder, .header-container.bg-danger :-moz-placeholder {
    color: #eaeaea; }
  .header-container.bg-primary ::-moz-placeholder, .header-container.bg-success ::-moz-placeholder, .header-container.bg-info ::-moz-placeholder, .header-container.bg-info-alt ::-moz-placeholder, .header-container.bg-warning ::-moz-placeholder, .header-container.bg-danger ::-moz-placeholder {
    color: #eaeaea; }
  .header-container.bg-primary :-ms-input-placeholder, .header-container.bg-success :-ms-input-placeholder, .header-container.bg-info :-ms-input-placeholder, .header-container.bg-info-alt :-ms-input-placeholder, .header-container.bg-warning :-ms-input-placeholder, .header-container.bg-danger :-ms-input-placeholder {
    color: #eaeaea; }
  .header-container.bg-primary .top-nav .nav-left > li > a .badge, .header-container.bg-success .top-nav .nav-left > li > a .badge, .header-container.bg-info .top-nav .nav-left > li > a .badge, .header-container.bg-info-alt .top-nav .nav-left > li > a .badge, .header-container.bg-warning .top-nav .nav-left > li > a .badge, .header-container.bg-danger .top-nav .nav-left > li > a .badge {
    color: #eaeaea; }

.header-container > .top-header .logo {
  border: 1px solid rgba(0, 0, 0, 0.1); }
  @media (min-width: 768px) {
    .header-container > .top-header .logo {
      border: 0; } }
  .header-container > .top-header .logo.bg-white {
    color: #222533; }
    .header-container > .top-header .logo.bg-white a {
      color: #222533; }
      .header-container > .top-header .logo.bg-white a:hover {
        color: #222533; }
    .header-container > .top-header .logo.bg-white + .menu-button .icon-bar {
      background-color: #767676; }
    .header-container > .top-header .logo.bg-white + .menu-button:hover .icon-bar {
      background-color: #fff; }
  .header-container > .top-header .logo.bg-dark, .header-container > .top-header .logo.bg-primary, .header-container > .top-header .logo.bg-success, .header-container > .top-header .logo.bg-info, .header-container > .top-header .logo.bg-info-alt, .header-container > .top-header .logo.bg-warning, .header-container > .top-header .logo.bg-danger {
    color: #fafafa; }
    .header-container > .top-header .logo.bg-dark a, .header-container > .top-header .logo.bg-primary a, .header-container > .top-header .logo.bg-success a, .header-container > .top-header .logo.bg-info a, .header-container > .top-header .logo.bg-info-alt a, .header-container > .top-header .logo.bg-warning a, .header-container > .top-header .logo.bg-danger a {
      color: #fafafa; }
      .header-container > .top-header .logo.bg-dark a:hover, .header-container > .top-header .logo.bg-primary a:hover, .header-container > .top-header .logo.bg-success a:hover, .header-container > .top-header .logo.bg-info a:hover, .header-container > .top-header .logo.bg-info-alt a:hover, .header-container > .top-header .logo.bg-warning a:hover, .header-container > .top-header .logo.bg-danger a:hover {
        color: #fafafa; }

body {
  background: #eaeaea; }

.body-wide #header,
.body-wide #nav-container {
  display: none; }

.body-wide #content {
  z-index: 2;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0;
  padding-bottom: 50px; }

.body-wide .on-canvas #content {
  margin-left: 0;
  margin-right: 0; }

.body-wide .on-canvas .main-container {
  overflow: auto; }

.body-wide .layout-boxed > .main-container {
  max-width: 100%; }

@media (min-width: 768px) {
  .app.nav-collapsed-min .top-header .logo {
    width: 50px; } }

.nav-container.bg-white .nav > li.open > a:hover, .nav-container.bg-white .nav > li.open > a:focus, .nav-container.bg-white .nav > li.open > a:active {
  border-color: #e5e5e5; }

.nav-container.bg-white .nav li > a {
  border-bottom: 1px solid #e5e5e5; }
  .nav-container.bg-white .nav li > a > i {
    border-right: 1px solid #e5e5e5; }

.nav-container.bg-white .nav ul li:last-child > a {
  border-bottom: 1px solid #e5e5e5; }

.nav-container.bg-dark .nav > li.open > a:hover, .nav-container.bg-dark .nav > li.open > a:focus, .nav-container.bg-dark .nav > li.open > a:active {
  border-color: #2e3245; }

.nav-container.bg-dark .nav li > a {
  border-bottom: 1px solid #2e3245; }
  .nav-container.bg-dark .nav li > a > i {
    border-right: 1px solid #2e3245; }

.nav-container.bg-dark .nav ul li:last-child > a {
  border-bottom: 1px solid #2e3245; }

.nav-container.bg-white .nav ul li > a, .nav-container.bg-dark .nav ul li > a {
  border: 0 !important; }
  .nav-container.bg-white .nav ul li > a > i, .nav-container.bg-dark .nav ul li > a > i {
    border: 0 !important; }

.nav-container .nav li > a > i {
  position: relative;
  display: block;
  float: left;
  width: 50px;
  text-align: center; }

.nav-container .nav > li.open > a > i:before, .nav-container .nav > li.active > a > i:before, .nav-container .nav > li:hover > a > i:before {
  color: #fff; }

.nav-container .nav > li.open > a > i .icon-bg, .nav-container .nav > li.active > a > i .icon-bg, .nav-container .nav > li:hover > a > i .icon-bg {
  left: 0; }

.nav-container .nav > li > a {
  height: 50px; }
  .nav-container .nav > li > a > i {
    height: 50px;
    line-height: 50px;
    margin: -15px 10px -15px -15px; }
    .nav-container .nav > li > a > i:before {
      position: relative;
      z-index: 1; }
    .nav-container .nav > li > a > i .icon-bg {
      position: absolute;
      z-index: 12;
      z-index: 0;
      left: -47px;
      width: 100%;
      top: 0;
      bottom: 0;
      -webkit-transition: left .2s ease-in-out;
      transition: left .2s ease-in-out; }

.nav-container .nav ul li > a > i {
  height: 44px;
  line-height: 44px;
  margin: -12px 10px -12px -25px; }

@media (min-width: 768px) {
  .app.nav-collapsed-min #nav-container {
    width: 50px; }
  .app.nav-collapsed-min .content-container {
    left: 50px; }
  .app.nav-collapsed-min #nav > li {
    width: 50px; }
    .app.nav-collapsed-min #nav > li > a {
      padding: 0; }
      .app.nav-collapsed-min #nav > li > a > i {
        font-size: 14px; }
        .app.nav-collapsed-min #nav > li > a > i:before {
          color: #fff; }
        .app.nav-collapsed-min #nav > li > a > i > .icon-bg {
          left: 0; }
  .app.nav-collapsed-min .nav-container .nav > li > a > i {
    border-right: 0; } }

.page-dashboard .mini-box {
  padding: 30px 25px; }

.page-dashboard .panel-box .panel-top .divider-xl {
  margin: 85px 0; }

.page-dashboard .panel-box .panel-bottom {
  padding: 17px 10px; }

.lt-ie9-bg {
  z-index: 11111;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #333;
  color: #999;
  padding: 100px 20px;
  text-align: center;
  font-size: 26px; }
  .lt-ie9-bg a {
    color: #f5f5f5;
    border-bottom: 2px solid #fff; }
    .lt-ie9-bg a:hover {
      text-decoration: none; }

.non-display {
  display: none; }

.page {
  padding: 15px;
  margin-bottom: 15px; }

.page-form-ele h3 {
  margin: 0; }

.body-err #content {
  background-color: #f3f3f3;
  height: 100%; }
  .body-err #content > .view-container {
    height: 100%; }

.body-err.body-wide #content {
  padding-bottom: 0; }

.page-err {
  width: 100%;
  height: 100%;
  background-color: #1f8dd1; }
  .page-err .err-status {
    background-color: #f3f3f3; }
    .page-err .err-status h1 {
      margin: 100px 0 -45px;
      color: #1C7EBB;
      font-size: 200px; }
  .page-err .err-message {
    background-color: #1C7EBB;
    padding: 24px;
    text-transform: uppercase; }
    .page-err .err-message h2 {
      font-size: 50px;
      color: #fff;
      font-weight: 300; }
  .page-err .err-body {
    padding: 100px 10px 20px; }
  .page-err .btn-goback {
    color: #fff;
    background-color: transparent;
    border-color: #fff; }
    .page-err .btn-goback:hover, .page-err .btn-goback:focus, .page-err .btn-goback:active, .page-err .btn-goback.active {
      color: #1f8dd1;
      background-color: #fff; }
    .open .page-err .btn-goback.dropdown-toggle {
      color: #1f8dd1;
      background-color: #fff; }

.body-lock #content {
  background: url("../assets/images/background/1.jpg") no-repeat center center fixed;
  background-size: cover; }

.body-lock .content-container > .view-container {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

.page-lock .lock-centered {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin-top: -65px; }
  @media screen and (min-width: 768px) {
    .page-lock .lock-centered {
      margin-top: -75px; } }

.page-lock .lock-container {
  position: relative;
  max-width: 420px;
  margin: 0 auto; }

.page-lock .lock-box {
  position: absolute;
  left: 0;
  right: 0; }
  .page-lock .lock-box .lock-user {
    background: #fff;
    width: 50%;
    float: left;
    height: 50px;
    line-height: 50px;
    margin-top: 50px;
    padding: 0 20px;
    border-bottom-left-radius: 2px;
    border-top-left-radius: 2px;
    color: #1C7EBB; }
  .page-lock .lock-box .lock-img img {
    position: absolute;
    border-radius: 50%;
    left: 40%;
    width: 80px;
    height: 80px;
    border: 6px solid #fff;
    background: #fff; }
    @media screen and (min-width: 768px) {
      .page-lock .lock-box .lock-img img {
        left: 33%;
        width: 150px;
        height: 150px;
        border: 10px solid #fff; } }
  .page-lock .lock-box .lock-pwd {
    background: #fff;
    width: 50%;
    float: right;
    height: 50px;
    line-height: 50px;
    padding: 0 0 0 50px;
    margin-top: 50px;
    border-bottom-right-radius: 2px;
    border-top-right-radius: 2px;
    color: #1C7EBB; }
    @media screen and (min-width: 768px) {
      .page-lock .lock-box .lock-pwd {
        padding: 0 0 0 80px; } }
    .page-lock .lock-box .lock-pwd input {
      width: 80%;
      height: 50px;
      color: #555555;
      border: 0; }
    .page-lock .lock-box .lock-pwd .btn-submit {
      position: absolute;
      top: 50%;
      right: 20px; }

.page-tasks .task-list .view {
  display: block; }

.page-tasks .task-list .edit {
  display: none; }

.page-tasks .task-list li.editing .view {
  display: none; }

.page-tasks .task-list li.editing .edit {
  display: block; }

.page-tasks .add-task {
  position: relative; }
  .page-tasks .add-task input {
    height: 44px;
    padding: 6px 12px 6px 40px; }
  .page-tasks .add-task a.submit-button {
    position: absolute;
    top: 12px;
    left: 12px;
    color: #777777; }

.page-tasks label {
  font-weight: normal; }

.page-tasks .filters {
  margin: 15px 0; }

.page-tasks .nav-tabs > li.active > a,
.page-tasks .nav-tabs > li.active > a:hover,
.page-tasks .nav-tabs > li.active > a:focus {
  background-color: #eaeaea; }

.page-tasks .task-list .view {
  position: relative;
  margin-bottom: 10px;
  padding: 0 12px 0 40px;
  border-radius: 2px;
  background-color: #fff;
  box-shadow: 0 0 1px rgba(0, 0, 0, 0.2); }
  .page-tasks .task-list .view:hover .glyphicon-pencil,
  .page-tasks .task-list .view:hover .glyphicon-remove {
    display: block; }
  .page-tasks .task-list .view input[type="checkbox"] {
    position: absolute;
    top: 11px;
    left: 16px; }
  .page-tasks .task-list .view label {
    line-height: 20px;
    margin: 0;
    width: 100%;
    padding: 12px 0 12px; }
  .page-tasks .task-list .view .glyphicon-pencil,
  .page-tasks .task-list .view .glyphicon-remove {
    display: none;
    position: absolute;
    top: 14px;
    color: #777777;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out; }
    .page-tasks .task-list .view .glyphicon-pencil:hover,
    .page-tasks .task-list .view .glyphicon-remove:hover {
      cursor: pointer;
      color: #333333;
      -webkit-transform: scale(1.3);
              transform: scale(1.3); }
  .page-tasks .task-list .view .glyphicon-pencil {
    right: 40px; }
  .page-tasks .task-list .view .glyphicon-remove {
    right: 16px; }

.page-tasks .task-list .completed .view label {
  color: #777777;
  text-decoration: line-through; }

.page-tasks .task-list input.edit {
  margin-bottom: 10px;
  height: 44px;
  padding: 6px 12px 6px 40px; }

.page-tasks .task-footer {
  margin: 15px 0;
  border-top: 4px double #e2e2e2;
  padding: 12px; }
  .page-tasks .task-footer .list-inline > li {
    float: left;
    width: 30%; }
    .page-tasks .task-footer .list-inline > li.first-item {
      width: 40%; }
  .page-tasks .task-footer .clear-completed {
    color: #777777;
    border-radius: 2px;
    -webkit-transition: color, .2s ease-in-out;
    transition: color, .2s ease-in-out; }
    .page-tasks .task-footer .clear-completed:hover {
      cursor: pointer;
      color: #767676; }

.page-tasks .tips h3 {
  margin-top: 0; }

.body-auth #content {
  background: none;
  background-color: #eeeeee; }

.body-auth .form-response {
  margin-left: 2%;
  margin-right: 2%; }

@media only screen and (min-width: 600px) {
  .body-auth #content {
    background-image: url("../assets/images/cal_rev.jpg");
    background-size: cover;
    margin-bottom: 0px; }
  .body-auth .login-responsive {
    background: #ffffff;
    border: 1px solid white;
    box-shadow: 0px 0px 1px 1px #1c7ebb; }
  .body-auth .form-response {
    margin-left: 0;
    margin-right: 0; } }

.container {
  position: fixed;
  height: 400px;
  width: 500px;
  top: 50%;
  left: 50%; }
  .container .form-container {
    position: relative;
    right: 250px;
    bottom: 200px; }

.page-signin .signin-header,
.page-signup .signin-header,
.page-forgot .signin-header {
  padding: 25px 0;
  background-color: #dfe0e6; }

.page-signin .logo,
.page-signup .logo,
.page-forgot .logo {
  font-size: 46px;
  font-weight: bold; }
  .page-signin .logo a,
  .page-signup .logo a,
  .page-forgot .logo a {
    color: #767676; }
    .page-signin .logo a:hover,
    .page-signup .logo a:hover,
    .page-forgot .logo a:hover {
      text-decoration: none; }

.page-signin .main-body,
.page-signup .main-body,
.page-forgot .main-body {
  padding: 20px 10px; }

.page-signin .info,
.page-signup .info,
.page-forgot .info {
  padding: 25px 0 0;
  max-width: 420px;
  margin: 0 auto 20px; }
  .page-signin .info h2,
  .page-signup .info h2,
  .page-forgot .info h2 {
    font-size: 18px;
    color: #222533; }

.page-signin .form-container,
.page-signup .form-container,
.page-forgot .form-container {
  max-width: 420px;
  margin: 10px auto; }

.page-signin .line-thru,
.page-signup .line-thru,
.page-forgot .line-thru {
  margin: 1em 0;
  display: block;
  font-size: .875em;
  font-weight: bold;
  margin-bottom: 1em;
  position: relative;
  text-align: center;
  width: 100%;
  z-index: 1; }
  .page-signin .line-thru:before,
  .page-signup .line-thru:before,
  .page-forgot .line-thru:before {
    width: 50px;
    height: 10px;
    background-color: #f3f3f3;
    content: '';
    margin: -5px 0 0 -20px;
    left: 50%;
    position: absolute;
    top: 50%;
    z-index: -1; }
  .page-signin .line-thru:after,
  .page-signup .line-thru:after,
  .page-forgot .line-thru:after {
    width: 100%;
    border-bottom: 1px solid #dadada;
    content: '';
    display: block;
    position: absolute;
    top: 49%;
    z-index: -2; }

.page-invoice .invoice-wrapper {
  padding: 0 0 30px;
  background-color: #fff; }

.invoice-inner {
  padding: 15px 15px 30px;
  background-color: #fff;
  height: 100%; }
  .invoice-inner .invoice-sum li {
    margin-bottom: 5px;
    padding: 10px;
    background-color: #f9f9f9;
    border-radius: 2px; }
  .invoice-inner .table.table-bordered {
    border: 0; }
  .invoice-inner .table .bg-dark > th {
    border: 0; }

.themify-icons {
  width: 100%;
  text-align: center; }
  .themify-icons .icon-section {
    overflow: hidden;
    margin: 0 auto 3.5em;
    width: 90%; }
  .themify-icons .icon-container {
    margin: 0 0 10px;
    display: inline-block;
    padding: .5em 0;
    width: 30%; }
    .themify-icons .icon-container [class^="ti-"],
    .themify-icons .icon-container [class*=" ti-"] {
      display: block;
      height: 80px;
      font-size: 1.5em;
      line-height: 100px;
      -webkit-transition: all .3s ease-in-out;
      transition: all .3s ease-in-out; }
    @media (min-width: 768px) {
      .themify-icons .icon-container {
        width: 15%; } }
  .themify-icons .icon-name {
    margin: 5px 0 0;
    display: block;
    color: #aaa;
    font-size: .8em;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out; }
  .themify-icons .icon-container:hover .icon-name {
    color: #222533; }
  .themify-icons .icon-container:hover [class^="ti-"],
  .themify-icons .icon-container:hover [class*=" ti-"] {
    font-size: 3em; }

.weather-icons {
  width: 100%;
  text-align: center; }
  .weather-icons .icon-section {
    overflow: hidden;
    margin: 0 auto 3.5em;
    width: 90%; }
  .weather-icons .example {
    margin: 0 0 10px;
    display: inline-block;
    padding: .5em 0;
    width: 30%; }
    .weather-icons .example .wi {
      display: block;
      height: 80px;
      font-size: 1.5em;
      line-height: 100px;
      -webkit-transition: all .3s ease-in-out;
      transition: all .3s ease-in-out; }
    @media (min-width: 768px) {
      .weather-icons .example {
        width: 15%; } }
  .weather-icons .class {
    margin: 5px 0 0;
    display: block;
    color: #aaa;
    font-size: .8em;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out; }
  .weather-icons .example:hover .class {
    color: #222533; }
  .weather-icons .example:hover .wi {
    font-size: 3em; }

.page-icons .bs-glyphicons {
  overflow: hidden; }
  .page-icons .bs-glyphicons li {
    float: left;
    width: 25%;
    height: 115px;
    padding: 10px;
    font-size: 10px;
    line-height: 1.4;
    text-align: center;
    border: 1px solid #f9f9f9; }
  .page-icons .bs-glyphicons .glyphicon {
    margin-top: 5px;
    margin-bottom: 10px;
    font-size: 24px; }
  .page-icons .bs-glyphicons .glyphicon-class {
    display: block;
    text-align: center;
    word-wrap: break-word; }

.page-icons .bs-glyphicons-list {
  padding-left: 0;
  list-style: none; }

@media screen and (min-width: 600px) {
  .row-eq-height {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; } }

.fa-download.custom-download:before {
  content: "\f019";
  font-size: 30px;
  color: #1C7EBB; }

.weather-icon-list {
  text-align: center; }
  .weather-icon-list .example {
    text-align: center;
    margin: 10px 3px; }
    .weather-icon-list .example .icon {
      font-size: 24px; }

.bs-glyphicons {
  padding-left: 0;
  padding-bottom: 1px;
  margin-bottom: 20px;
  list-style: none;
  overflow: hidden; }
  .bs-glyphicons .glyphicon {
    margin-top: 5px;
    margin-bottom: 10px;
    font-size: 24px; }
  .bs-glyphicons .glyphicon-class {
    display: block;
    text-align: center; }
  .bs-glyphicons li {
    float: left;
    width: 25%;
    height: 115px;
    padding: 10px;
    margin: 0 -1px -1px 0;
    font-size: 12px;
    line-height: 1.4;
    text-align: center;
    border: 1px solid #ddd; }
    @media (min-width: 768px) {
      .bs-glyphicons li {
        width: 12.5%; } }

.page-grid .grid-structure .row {
  margin-top: 10px; }
  .page-grid .grid-structure .row .widget-container {
    margin-top: 5px;
    background: #eee;
    padding: 10px 15px 12px;
    min-height: 0;
    border-radius: 2px; }

.page-form-ele .list-checkbox-radio li:nth-child(even) {
  margin-bottom: 20px; }

.page-form-ele .list-checkbox-radio li > div {
  float: left;
  margin-right: 10px; }

.demoslider-container {
  max-width: 600px;
  margin: auto; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImdsb2JhbC9fc2hhcmVkLnNjc3MiLCJwbHVnaW5zL2FuZ3VsYXItYm9vdHN0cmFwL19hbmd1bGFyLWJvb3RzdHJhcC5zY3NzIiwiZ2xvYmFsL192YXIuc2NzcyIsInBsdWdpbnMvYW5ndWxhci1ib290c3RyYXAvX2FjY29yZGlvbi5zY3NzIiwicGx1Z2lucy9fdG9hc3RyLnNjc3MiLCJwbHVnaW5zL19uZy10YWdzLWlucHV0LnNjc3MiLCJwbHVnaW5zL19hbmd1bGFyLWxvYWRpbmctYmFyLnNjc3MiLCJwbHVnaW5zL19mdWxsY2FsZW5kYXIuc2NzcyIsInBsdWdpbnMvX2FuZ3VsYXItd2l6YXJkLnNjc3MiLCJsYXlvdXQvX2xheW91dHMuc2NzcyIsImdsb2JhbC9fdmFyLXBhZ2VzLnNjc3MiLCJsYXlvdXQvX2xheW91dC1ib3hlZC5zY3NzIiwibGF5b3V0L19uYXYuc2NzcyIsImxheW91dC9fbmF2LW9mZi1jYW52YXMuc2NzcyIsImxheW91dC9fbmF2LW1pbi5zY3NzIiwiYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsImxheW91dC9fbmF2LWNvbG9yLnNjc3MiLCJsYXlvdXQvX2Zvb3Rlci5zY3NzIiwibGF5b3V0L19oZWFkZXIuc2NzcyIsImxheW91dC9fYm9keS5zY3NzIiwibGF5b3V0L19uYXYtcmFpbmJvdy5zY3NzIiwicGFnZXMvX2Rhc2hib2FyZC5zY3NzIiwicGFnZXMvX3BhZ2VzLnNjc3MiLCJwYWdlcy9fZXJyb3Iuc2NzcyIsInBhZ2VzL19sb2NrLXNjcmVlbi5zY3NzIiwicGFnZXMvX3Rhc2tzLnNjc3MiLCJwYWdlcy9fYXV0aC5zY3NzIiwicGFnZXMvX2ludm9pY2Uuc2NzcyIsInBhZ2VzL191aS5zY3NzIiwicGFnZXMvX2RlbW8uc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNHO0lBQ0ssY0FBWSxFQUNmLEVBQUE7O0FDREw7RUFFUSxjQUFhLEVBU2hCO0VBWEw7O0lBS1ksYUFB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WCxXQUFVO0lBQ1YsY0FBYTtJQUNiLGNBQWE7SUFDYixzQkFBcUI7SUFDckIsZ0JBQWU7SUFDZixpQkFBZ0I7SUFDaEIsbUJBQWtCO0lBQ2xCLHVCQUFzQixFQUN6QjtJQWJHO01BbkJSO1FBb0JZLGFBQVksRUFZbkIsRUFBQTs7QUFHTDtFQUNJLGlCQUFnQixFQVVuQjtFQVhEO0lBSVEsZ0JBQWU7SUFDZixpQkFBZ0I7SUFDaEIsd0JBQXVCO0lBQ3ZCLGNBQWE7SUFDYixtQjNCdUV1QixFMkJ0RTFCOztBQUtMO0VBR1ksb0JBQW1CLEVBQ3RCOztBQUpUO0VBT1ksWUFBVztFQUNYLG1CQUFrQixFQUNyQjs7QUFLVDtFQUNJLGlCQUFnQjtFQUNoQixhQUFZLEVBQ2YiLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAbWVkaWEgcHJpbnQge1xuICAgLm5vLXByaW50e1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxufVxuXG4iLCJcbi8vIERhdGVwaWNrZXJcbi51aS1kYXRlcGlja2VyIHtcbiAgICB0YWJsZSB7XG4gICAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICAgIHRoLFxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcHg7XG5cbiAgICAgICAgICAgIC5hY3RpdmUgc3BhbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRyZXZlcnNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICo6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vLyBUaW1lcGlja2VyXG4udWktdGltZXBpY2tlciB7XG4gICAgdGQge1xuICAgICAgICBwYWRkaW5nOiAxcHg7XG4gICAgfVxufVxuXG5cbi8vIFJhdGluZ1xuLnVpLXJhdGluZyB7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAuZ2x5cGhpY29uIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgfVxuXG4gICAgLy8gd2hlbiBhY3RpdmVcbiAgICAuZ2x5cGhpY29uLXN0YXIge1xuICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgfVxuICAgICYudWktcmF0aW5nLXN1Y2Nlc3Mge1xuICAgICAgICAuZ2x5cGhpY29uLXN0YXIge1xuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1zdWNjZXNzO1xuICAgICAgICB9ICAgICAgICBcbiAgICB9XG4gICAgJi51aS1yYXRpbmctaW5mbyB7XG4gICAgICAgIC5nbHlwaGljb24tc3RhciB7XG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLWluZm87XG4gICAgICAgIH0gICAgICAgIFxuICAgIH1cbiAgICAmLnVpLXJhdGluZy13YXJuaW5nIHtcbiAgICAgICAgLmdseXBoaWNvbi1zdGFyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtd2FybmluZztcbiAgICAgICAgfSAgICAgICAgXG4gICAgfVxuICAgICYudWktcmF0aW5nLWRhbmdlciB7XG4gICAgICAgIC5nbHlwaGljb24tc3RhciB7XG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLWRhbmdlcjtcbiAgICAgICAgfSAgICAgICAgXG4gICAgfVxufVxuXG4vLyBUeXBlYWhlYWRcbi51aS10eXBlYWhlYWQge1xuICAgID4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICByaWdodDogKCRncmlkLWd1dHRlci13aWR0aC8yKTtcbiAgICB9XG59XG5cbi51aS1yYXRpbmcge1xuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgID4gaSB7XG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvLyBXaGVuIHRydWUsIGFzc2V0IHBhdGggaGVscGVycyBhcmUgdXNlZCwgb3RoZXJ3aXNlIHRoZSByZWd1bGFyIENTUyBgdXJsKClgIGlzIHVzZWQuXG4vLyBXaGVuIHRoZXJlIG5vIGZ1bmN0aW9uIGlzIGRlZmluZWQsIGBmbignJylgIGlzIHBhcnNlZCBhcyBzdHJpbmcgdGhhdCBlcXVhbHMgdGhlIHJpZ2h0IGhhbmQgc2lkZVxuLy8gTkI6IGluIFNhc3MgMy4zIHRoZXJlIGlzIGEgbmF0aXZlIGZ1bmN0aW9uOiBmdW5jdGlvbi1leGlzdHModHdicy1mb250LXBhdGgpXG4kYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyOiAodHdicy1mb250LXBhdGgoXCJcIikgIT0gdW5xdW90ZSgndHdicy1mb250LXBhdGgoXCJcIiknKSkgIWRlZmF1bHQ7XG5cbi8vXG4vLyBWYXJpYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy89PSBDb2xvcnNcbi8vXG4vLyMjIEdyYXkgYW5kIGJyYW5kIGNvbG9ycyBmb3IgdXNlIGFjcm9zcyBCb290c3RyYXAuXG5cbiRncmF5LWJhc2U6ICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJGdyYXktZGFya2VyOiAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMTMuNSUpICFkZWZhdWx0OyAvLyAjMjIyXG4kZ3JheS1kYXJrOiAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAyMCUpICFkZWZhdWx0OyAgIC8vICMzMzNcbiRncmF5OiAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDMzLjUlKSAhZGVmYXVsdDsgLy8gIzU1NVxuJGdyYXktbGlnaHQ6ICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgNDYuNyUpICFkZWZhdWx0OyAvLyAjNzc3XG4kZ3JheS1saWdodGVyOiAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA5My41JSkgIWRlZmF1bHQ7IC8vICNlZWVcblxuJGJyYW5kLXByaW1hcnk6ICAgICAgICAgIzFDN0VCQiAhZGVmYXVsdDtcbiRicmFuZC1zdWNjZXNzOiAgICAgICAgICMyM0FFODkgIWRlZmF1bHQ7XG4kYnJhbmQtaW5mbzogICAgICAgICAgICAjMkVDMUNDICFkZWZhdWx0O1xuJGJyYW5kLWluZm8tYWx0OiAgICAgICAgIzZBNTVDMiAhZGVmYXVsdDtcbiRicmFuZC13YXJuaW5nOiAgICAgICAgICNGRkI2MUMgIWRlZmF1bHQ7XG4kYnJhbmQtZGFuZ2VyOiAgICAgICAgICAjRTk0QjNCICFkZWZhdWx0O1xuXG4kY29sb3Itb3JhbmdlOiAgICAgICAgICAjRjk4RTMzICFkZWZhdWx0O1xuJGNvbG9yLXZpb2xldDogICAgICAgICAgJGJyYW5kLWluZm8tYWx0O1xuXG4vLyAkc2tpbi1kYXJrZXI6ICAgICAgICAgICAjXG4vLyAkc2tpbi1kYXJrOiAgICAgICAgICAgICAjO1xuJHNraW46ICAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnk7XG4kc2tpbi1saWdodDogICAgICAgICAgICAjNDQ5REQ1O1xuLy8gJHNraW4tbGlnaHRlcjogICAgICAgICAgI1xuLy8gJHNraW4tYnJpZ2h0OiAgICAgICAgICAgI1xuJGRhcms6ICAgICAgICAgICAgICAgICAgIzIyMjUzMyAhZGVmYXVsdDtcbiRkYXJrLWxpZ2h0OiAgICAgICAgICAgICMzRDNGNTEgIWRlZmF1bHQ7XG4kYnJpZ2h0OiAgICAgICAgICAgICAgICAjZmFmYWZhICFkZWZhdWx0O1xuJHJldmVyc2U6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJHN0YXRlLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAjZjZmNmY2ICFkZWZhdWx0OyAvLyBhbHNvOiBwYWdpbmF0aW9uIGJnXG4kc3RhdGUtZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1kZWZhdWx0LWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7IFxuJHN0YXRlLWRlZmF1bHQtYm9yZGVyLWxpZ2h0OiAgICAjZjNmM2YzICFkZWZhdWx0OyBcblxuXG4vLz09IFNjYWZmb2xkaW5nXG4vL1xuLy8jIyBTZXR0aW5ncyBmb3Igc29tZSBvZiB0aGUgbW9zdCBnbG9iYWwgc3R5bGVzLlxuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIGA8Ym9keT5gLlxuJGJvZHktYmc6ICAgICAgICAgICAgICAgI2YzZjNmMyAhZGVmYXVsdDtcbi8vKiogR2xvYmFsIHRleHQgY29sb3Igb24gYDxib2R5PmAuXG4kdGV4dC1jb2xvcjogICAgICAgICAgICAjNzY3Njc2ICFkZWZhdWx0O1xuXG4vLyoqIEdsb2JhbCB0ZXh0dWFsIGxpbmsgY29sb3IuXG4kbGluay1jb2xvcjogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogTGluayBob3ZlciBjb2xvciBzZXQgdmlhIGBkYXJrZW4oKWAgZnVuY3Rpb24uXG4kbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4vLyoqIExpbmsgaG92ZXIgZGVjb3JhdGlvbi5cbiRsaW5rLWhvdmVyLWRlY29yYXRpb246IHVuZGVybGluZSAhZGVmYXVsdDtcblxuXG4vLz09IFR5cG9ncmFwaHlcbi8vXG4vLyMjIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogIFwiTGF0b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiAgICAgICBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgbW9ub3NwYWNlIGZvbnRzIGZvciBgPGNvZGU+YCwgYDxrYmQ+YCwgYW5kIGA8cHJlPmAuXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgMTRweCAhZGVmYXVsdDtcbiRmb250LXNpemUtbGFyZ2U6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1zbWFsbDogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbiRmb250LXNpemUtaDE6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuNikpICFkZWZhdWx0OyAvLyB+MzZweFxuJGZvbnQtc2l6ZS1oMjogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi4xNSkpICFkZWZhdWx0OyAvLyB+MzBweFxuJGZvbnQtc2l6ZS1oMzogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjcpKSAhZGVmYXVsdDsgLy8gfjI0cHhcbiRmb250LXNpemUtaDQ6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1oNTogICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg2OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcblxuLy8qKiBVbml0LWxlc3MgYGxpbmUtaGVpZ2h0YCBmb3IgdXNlIGluIGNvbXBvbmVudHMgbGlrZSBidXR0b25zLlxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAxLjQyODU3MTQyOSAhZGVmYXVsdDsgLy8gMjAvMTRcbiRsaW5lLWhlaWdodC1jYWN1bGF0ZWQ6ICAgMjBweDtcbi8vKiogQ29tcHV0ZWQgXCJsaW5lLWhlaWdodFwiIChgZm9udC1zaXplYCAqIGBsaW5lLWhlaWdodGApIGZvciB1c2Ugd2l0aCBgbWFyZ2luYCwgYHBhZGRpbmdgLCBldGMuXG4kbGluZS1oZWlnaHQtY29tcHV0ZWQ6ICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSkpICFkZWZhdWx0OyAvLyB+MjBweFxuXG4vLyoqIEJ5IGRlZmF1bHQsIHRoaXMgaW5oZXJpdHMgZnJvbSB0aGUgYDxib2R5PmAuXG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgMS4xICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuXG5cbi8vPT0gSWNvbm9ncmFwaHlcbi8vXG4vLyMjIFNwZWNpZnkgY3VzdG9tIGxvY2F0aW9uIGFuZCBmaWxlbmFtZSBvZiB0aGUgaW5jbHVkZWQgR2x5cGhpY29ucyBpY29uIGZvbnQuIFVzZWZ1bCBmb3IgdGhvc2UgaW5jbHVkaW5nIEJvb3RzdHJhcCB2aWEgQm93ZXIuXG5cbi8vKiogTG9hZCBmb250cyBmcm9tIHRoaXMgZGlyZWN0b3J5LlxuJGljb24tZm9udC1wYXRoOiAgICAgICAgICBcIi4uL2Fzc2V0cy9mb250cy9cIiAhZGVmYXVsdDtcbi8vKiogRmlsZSBuYW1lIGZvciBhbGwgZm9udCBmaWxlcy5cbiRpY29uLWZvbnQtbmFtZTogICAgICAgICAgXCJnbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyXCIgIWRlZmF1bHQ7XG4vLyoqIEVsZW1lbnQgSUQgd2l0aGluIFNWRyBpY29uIGZpbGUuXG4kaWNvbi1mb250LXN2Zy1pZDogICAgICAgIFwiZ2x5cGhpY29uc19oYWxmbGluZ3NyZWd1bGFyXCIgIWRlZmF1bHQ7XG5cblxuLy89PSBDb21wb25lbnRzXG4vL1xuLy8jIyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuIFZhbHVlcyBiYXNlZCBvbiAxNHB4IHRleHQgYW5kIDEuNDI4IGxpbmUtaGVpZ2h0ICh+MjBweCB0byBzdGFydCkuXG5cbiRwYWRkaW5nLWJhc2UtdmVydGljYWw6ICAgICA2cHggIWRlZmF1bHQ7XG4kcGFkZGluZy1iYXNlLWhvcml6b250YWw6ICAgMTJweCAhZGVmYXVsdDtcblxuJHBhZGRpbmctbGFyZ2UtdmVydGljYWw6ICAgIDEwcHggIWRlZmF1bHQ7XG4kcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOiAgMTZweCAhZGVmYXVsdDtcblxuJHBhZGRpbmctc21hbGwtdmVydGljYWw6ICAgIDVweCAhZGVmYXVsdDtcbiRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw6ICAxMHB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy14cy12ZXJ0aWNhbDogICAgICAgMXB4ICFkZWZhdWx0O1xuJHBhZGRpbmcteHMtaG9yaXpvbnRhbDogICAgIDVweCAhZGVmYXVsdDtcblxuJGxpbmUtaGVpZ2h0LWxhcmdlOiAgICAgICAgIDEuMzMgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc21hbGw6ICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1cy1iYXNlOiAgICAgICAgMnB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgIDJweCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAycHggIWRlZmF1bHQ7XG5cbi8vKiogR2xvYmFsIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgYmFja2dyb3VuZCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vKiogV2lkdGggb2YgdGhlIGBib3JkZXJgIGZvciBnZW5lcmF0aW5nIGNhcmV0cyB0aGF0IGluZGljYXRvciBkcm9wZG93bnMuXG4kY2FyZXQtd2lkdGgtYmFzZTogICAgICAgICAgNHB4ICFkZWZhdWx0O1xuLy8qKiBDYXJldHMgaW5jcmVhc2Ugc2xpZ2h0bHkgaW4gc2l6ZSBmb3IgbGFyZ2VyIGNvbXBvbmVudHMuXG4kY2FyZXQtd2lkdGgtbGFyZ2U6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVGFibGVzXG4vL1xuLy8jIyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbi8vKiogUGFkZGluZyBmb3IgYDx0aD5gcyBhbmQgYDx0ZD5gcy5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBmb3IgY2VsbHMgaW4gYC50YWJsZS1jb25kZW5zZWRgLlxuJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc6ICA2cHggIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGFsbCB0YWJsZXMuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtc3RyaXBlZGAuXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgICNmOWY5ZjkgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1ob3ZlcmAuXG4kdGFibGUtYmctaG92ZXI6ICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlciAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRhYmxlIGFuZCBjZWxsIGJvcmRlcnMuXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBCdXR0b25zXG4vL1xuLy8jIyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XG5cbiRidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tcHJpbWFyeS1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1zdWNjZXNzLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbiRidG4taW5mby1ib3JkZXI6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnRuLWluZm8tYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4td2FybmluZy1iZzogICAgICAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4td2FybmluZy1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkYnRuLWRhbmdlci1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWluZm8tYWx0LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4taW5mby1hbHQtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtaW5mby1hbHQgIWRlZmF1bHQ7XG4kYnRuLWluZm8tYWx0LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4taW5mby1hbHQtYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tZGFyay1iZzogICAgICAgICAgICAgICAgICAgICRkYXJrICFkZWZhdWx0O1xuJGJ0bi1kYXJrLWJvcmRlcjogICAgICAgICAgICAgICAgZGFya2VuKCRidG4tZGFyay1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cbi8vPT0gRm9ybXNcbi8vXG4vLyMjXG5cbi8vKiogYDxpbnB1dD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQgZGlzYWJsZWQ+YCBiYWNrZ3JvdW5kIGNvbG9yXG4kaW5wdXQtYmctZGlzYWJsZWQ6ICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGA8aW5wdXQ+YHNcbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuLy8qKiBgPGlucHV0PmAgYm9yZGVyIGNvbG9yXG4kaW5wdXQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAjQ0JENUREICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBSZW5hbWUgYCRpbnB1dC1ib3JkZXItcmFkaXVzYCB0byBgJGlucHV0LWJvcmRlci1yYWRpdXMtYmFzZWAgaW4gdjRcbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuLy8qKiBTbWFsbCBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGlucHV0cyBvbiBmb2N1c1xuJGlucHV0LWJvcmRlci1mb2N1czogICAgICAgICAgICAgIzY2YWZlOSAhZGVmYXVsdDtcblxuLy8qKiBQbGFjZWhvbGRlciB0ZXh0IGNvbG9yXG4kaW5wdXQtY29sb3ItcGxhY2Vob2xkZXI6ICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1iYXNlOiAgICAgICAgICAgICAgKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1sYXJnZTogICAgICAgICAgICAgKGNlaWwoJGZvbnQtc2l6ZS1sYXJnZSAqICRsaW5lLWhlaWdodC1sYXJnZSkgKyAoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuLy8qKiBTbWFsbCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LXNtYWxsOiAgICAgICAgICAgICAoZmxvb3IoJGZvbnQtc2l6ZS1zbWFsbCAqICRsaW5lLWhlaWdodC1zbWFsbCkgKyAoJHBhZGRpbmctc21hbGwtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuXG4vLyoqIGAuZm9ybS1ncm91cGAgbWFyZ2luXG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kbGVnZW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJGxlZ2VuZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2U1ZTVlNSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0ZXh0dWFsIGlucHV0IGFkZG9uc1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogQm9yZGVyIGNvbG9yIGZvciB0ZXh0dWFsIGlucHV0IGFkZG9uc1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlciAhZGVmYXVsdDtcblxuLy8qKiBEaXNhYmxlZCBjdXJzb3IgZm9yIGZvcm0gY29udHJvbHMgYW5kIGJ1dHRvbnMuXG4kY3Vyc29yLWRpc2FibGVkOiAgICAgICAgICAgICAgICBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuXG4vLz09IERyb3Bkb3duc1xuLy9cbi8vIyMgRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4vLyoqIEJhY2tncm91bmQgZm9yIHRoZSBkcm9wZG93biBtZW51LlxuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogRHJvcGRvd24gbWVudSBgYm9yZGVyLWNvbG9yYC5cbiRkcm9wZG93bi1ib3JkZXI6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjE1KSAhZGVmYXVsdDtcbi8vKiogRHJvcGRvd24gbWVudSBgYm9yZGVyLWNvbG9yYCAqKmZvciBJRTgqKi5cbiRkcm9wZG93bi1mYWxsYmFjay1ib3JkZXI6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4vLyoqIERpdmlkZXIgY29sb3IgZm9yIGJldHdlZW4gZHJvcGRvd24gaXRlbXMuXG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuXG4vLyoqIERyb3Bkb3duIGxpbmsgdGV4dCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4vLyoqIEhvdmVyIGNvbG9yIGZvciBkcm9wZG93biBsaW5rcy5cbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEhvdmVyIGJhY2tncm91bmQgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgaGVhZGVycyB3aXRoaW4gZHJvcGRvd24gbWVudXMuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8gTm90ZTogRGVwcmVjYXRlZCAkZHJvcGRvd24tY2FyZXQtY29sb3IgYXMgb2YgdjMuMS4wXG4kZHJvcGRvd24tY2FyZXQtY29sb3I6ICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuXG5cbi8vLS0gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuLy9cbi8vIE5vdGU6IFRoZXNlIHZhcmlhYmxlcyBhcmUgbm90IGdlbmVyYXRlZCBpbnRvIHRoZSBDdXN0b21pemVyLlxuXG4kemluZGV4LW5hdmJhcjogICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuJHppbmRleC1uYXZiYXItZml4ZWQ6ICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2dyb3VuZDogIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAxMDQwICFkZWZhdWx0O1xuXG5cbi8vPT0gTWVkaWEgcXVlcmllcyBicmVha3BvaW50c1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBicmVha3BvaW50cyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSwgYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gRXh0cmEgc21hbGwgc2NyZWVuIC8gcGhvbmVcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14c2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXhzOiAgICAgICAgICAgICAgICAgIDQ4MHB4ICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzLW1pbmAgYXMgb2YgdjMuMi4wXG4kc2NyZWVuLXhzLW1pbjogICAgICAgICAgICAgICRzY3JlZW4teHMgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tcGhvbmVgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1waG9uZTogICAgICAgICAgICAgICAkc2NyZWVuLXhzLW1pbiAhZGVmYXVsdDtcblxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tc21gIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1zbTogICAgICAgICAgICAgICAgICA3NjhweCAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1zbSAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi10YWJsZXRgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi10YWJsZXQ6ICAgICAgICAgICAgICAkc2NyZWVuLXNtLW1pbiAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1tZGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLW1kOiAgICAgICAgICAgICAgICAgIDk5MnB4ICFkZWZhdWx0O1xuJHNjcmVlbi1tZC1taW46ICAgICAgICAgICAgICAkc2NyZWVuLW1kICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1kZXNrdG9wOiAgICAgICAgICAgICAkc2NyZWVuLW1kLW1pbiAhZGVmYXVsdDtcblxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGdgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1sZzogICAgICAgICAgICAgICAgICAxMjAwcHggIWRlZmF1bHQ7XG4kc2NyZWVuLWxnLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbGcgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGctZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnLWRlc2t0b3A6ICAgICAgICAgICRzY3JlZW4tbGctbWluICFkZWZhdWx0O1xuXG4vLyBTbyBtZWRpYSBxdWVyaWVzIGRvbid0IG92ZXJsYXAgd2hlbiByZXF1aXJlZCwgcHJvdmlkZSBhIG1heGltdW1cbiRzY3JlZW4teHMtbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tc20tbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLW1kLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1tZC1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1sZy1taW4gLSAxKSAhZGVmYXVsdDtcblxuXG4vLz09IEdyaWQgc3lzdGVtXG4vL1xuLy8jIyBEZWZpbmUgeW91ciBjdXN0b20gcmVzcG9uc2l2ZSBncmlkLlxuXG4vLyoqIE51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkLlxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGJldHdlZW4gY29sdW1ucy4gR2V0cyBkaXZpZGVkIGluIGhhbGYgZm9yIHRoZSBsZWZ0IGFuZCByaWdodC5cbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAzMHB4ICFkZWZhdWx0O1xuLy8gTmF2YmFyIGNvbGxhcHNlXG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVjb21lcyB1bmNvbGxhcHNlZC5cbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQ6ICAgICAkc2NyZWVuLXNtLW1pbiAhZGVmYXVsdDtcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWdpbnMgY29sbGFwc2luZy5cbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4OiAoJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29udGFpbmVyIHNpemVzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbiRjb250YWluZXItdGFibGV0OiAgICAgICAgICAgICAoNzIwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tc20tbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLXNtOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci10YWJsZXQgIWRlZmF1bHQ7XG5cbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXG4kY29udGFpbmVyLWRlc2t0b3A6ICAgICAgICAgICAgKDk0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLW1kLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1tZDogICAgICAgICAgICAgICAgICRjb250YWluZXItZGVza3RvcCAhZGVmYXVsdDtcblxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4kY29udGFpbmVyLWxhcmdlLWRlc2t0b3A6ICAgICAgKDExNDBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1sZy1taW5gIGFuZCB1cC5cbiRjb250YWluZXItbGc6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWxhcmdlLWRlc2t0b3AgIWRlZmF1bHQ7XG5cblxuLy89PSBOYXZiYXJcbi8vXG4vLyMjXG5cbi8vIEJhc2ljcyBvZiBhIG5hdmJhclxuJG5hdmJhci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICA1MHB4ICFkZWZhdWx0O1xuJG5hdmJhci1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAkbGluZS1oZWlnaHQtY29tcHV0ZWQgIWRlZmF1bHQ7XG4kbmF2YmFyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgIGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSkgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICgoJG5hdmJhci1oZWlnaHQgLSAkbGluZS1oZWlnaHQtY29tcHV0ZWQpIC8gMikgIWRlZmF1bHQ7XG4kbmF2YmFyLWNvbGxhcHNlLW1heC1oZWlnaHQ6ICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICNmOGY4ZjggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgbGlua3NcbiRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAjNzc3ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgYnJhbmQgbGFiZWxcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWJnOiAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgdG9nZ2xlXG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWhvdmVyLWJnOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAjODg4ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy8gSW52ZXJ0ZWQgbmF2YmFyXG4vLyBSZXNldCBpbnZlcnRlZCBuYXZiYXIgYmFzaWNzXG4kbmF2YmFyLWludmVyc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICMyMjIgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDEwJSkgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBsaW5rc1xuJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWxpZ2h0LCAxNSUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgYnJhbmQgbGFiZWxcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgdG9nZ2xlXG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWhvdmVyLWJnOiAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWljb24tYmFyLWJnOiAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cblxuLy89PSBOYXZzXG4vL1xuLy8jI1xuXG4vLz09PSBTaGFyZWQgbmF2IHN0eWxlc1xuJG5hdi1saW5rLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kbmF2LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtZGlzYWJsZWQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLz09IFRhYnNcbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgI2RkZCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdi10YWJzLWp1c3RpZmllZC1hY3RpdmUtbGluay1ib3JkZXItY29sb3I6ICAgICAkYm9keS1iZyAhZGVmYXVsdDtcblxuLy89PSBQaWxsc1xuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy89PSBQYWdpbmF0aW9uXG4vL1xuLy8jI1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAjZGNlMGUwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXI6ICAgICAgICAgICAgICAjYWFhICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAkc3RhdGUtZGVmYXVsdC1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1kZWZhdWx0LWJnICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnZXJcbi8vXG4vLyMjXG5cbiRwYWdlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYm9yZGVyICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuJHBhZ2VyLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24taG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwYWdlci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdlci1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuJHBhZ2VyLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy89PSBKdW1ib3Ryb25cbi8vXG4vLyMjXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1jb2xvcjogICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWZvbnQtc2l6ZTogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjUpKSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1mb250LXNpemU6ICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDQuNSkpICFkZWZhdWx0O1xuXG5cbi8vPT0gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xuLy9cbi8vIyMgRGVmaW5lIGNvbG9ycyBmb3IgZm9ybSBmZWVkYmFjayBzdGF0ZXMgYW5kLCBieSBkZWZhdWx0LCBhbGVydHMuXG5cbiRzdGF0ZS1zdWNjZXNzLXRleHQ6ICAgICAgICAgICAgICMyMjkxNzMgIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAjRjJGQ0Y5ICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXN1Y2Nlc3MtYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWluZm8tdGV4dDogICAgICAgICAgICAgICAgIzI2OTI5QyAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICNFRUY4RkMgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtaW5mby1iZywgLTEwKSwgNyUpICFkZWZhdWx0O1xuXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjQUY3RjE4ICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgI0ZGRkFGMCAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS13YXJuaW5nLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1kYW5nZXItdGV4dDogICAgICAgICAgICAgICNCMTNEMzEgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAjRkRFRkVFICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWRhbmdlci1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG5cbi8vPT0gVG9vbHRpcHNcbi8vXG4vLyMjXG5cbi8vKiogVG9vbHRpcCBtYXggd2lkdGhcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIHRleHQgY29sb3JcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgYmFja2dyb3VuZCBjb2xvclxuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuXG4vLyoqIFRvb2x0aXAgYXJyb3cgd2lkdGhcbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgIDVweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBhcnJvdyBjb2xvclxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBQb3BvdmVyc1xuLy9cbi8vIyNcblxuLy8qKiBQb3BvdmVyIGJvZHkgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZGFyayAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBtYXhpbXVtIHdpZHRoXG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGJvcmRlciBjb2xvclxuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZGFyayAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBmYWxsYmFjayBib3JkZXIgY29sb3JcbiRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvcjogICAgICAgJGRhcmsgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciB0aXRsZSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci10aXRsZS1iZzogICAgICAgICAgICAgICAgICAgICRkYXJrICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgYXJyb3cgd2lkdGhcbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgICAkZGFyayAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDogICAgICAgICAgICgkcG9wb3Zlci1hcnJvdy13aWR0aCArIDEpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICAgICRkYXJrICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGZhbGxiYWNrIGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjogICRkYXJrICFkZWZhdWx0O1xuXG5cbi8vPT0gTGFiZWxzXG4vL1xuLy8jI1xuXG4vLyoqIERlZmF1bHQgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRlZmF1bHQtYmc6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIFByaW1hcnkgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXByaW1hcnktYmc6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIFN1Y2Nlc3MgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4vLyoqIEluZm8gbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWluZm8tYmc6ICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4vLyoqIFdhcm5pbmcgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXdhcm5pbmctYmc6ICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgbGFiZWwgdGV4dCBjb2xvclxuJGxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIGEgbGlua2VkIGxhYmVsXG4kbGFiZWwtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gTW9kYWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIHRpdGxlXG4kbW9kYWwtdGl0bGUtcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCB0aXRsZSBsaW5lLWhlaWdodFxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBjb250ZW50IGFyZWFcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3JcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yICoqZm9yIElFOCoqXG4kbW9kYWwtY29udGVudC1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogTW9kYWwgYmFja2Ryb3AgYmFja2dyb3VuZCBjb2xvclxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgYmFja2Ryb3Agb3BhY2l0eVxuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgLjUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGhlYWRlciBib3JkZXIgY29sb3JcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICNlNWU1ZTUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGZvb3RlciBib3JkZXIgY29sb3JcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICA5MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgIDYwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBBbGVydHNcbi8vXG4vLyMjIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZzogICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgIGJvbGQgIWRlZmF1bHQ7XG5cbiRhbGVydC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LWluZm8tYmc6ICAgICAgICAgICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XG4kYWxlcnQtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtd2FybmluZy1iZzogICAgICAgICAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1kYW5nZXItYmc6ICAgICAgICAgICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcblxuXG4vLz09IFByb2dyZXNzIGJhcnNcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgd2hvbGUgcHJvZ3Jlc3MgY29tcG9uZW50XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBQcm9ncmVzcyBiYXIgdGV4dCBjb2xvclxuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVmFyaWFibGUgZm9yIHNldHRpbmcgcm91bmRlZCBjb3JuZXJzIG9uIHByb2dyZXNzIGJhci5cbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1zdWNjZXNzLWJnOiAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4vLyoqIFdhcm5pbmcgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXdhcm5pbmctYmc6ICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbi8vKiogRGFuZ2VyIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1kYW5nZXItYmc6ICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbi8vKiogSW5mbyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItaW5mby1iZzogICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuXG5cbi8vPT0gTGlzdCBncm91cFxuLy9cbi8vIyNcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9uIGAubGlzdC1ncm91cC1pdGVtYFxuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBgLmxpc3QtZ3JvdXAtaXRlbWAgYm9yZGVyIGNvbG9yXG4kbGlzdC1ncm91cC1ib3JkZXI6ICAgICAgICAgICAgICNlZmYyZjcgIWRlZmF1bHQ7XG4vLyoqIExpc3QgZ3JvdXAgYm9yZGVyIHJhZGl1c1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2Ygc2luZ2xlIGxpc3QgaXRlbXMgb24gaG92ZXJcbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogQm9yZGVyIGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGVsZW1lbnRzXG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyOiAgICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yOiAgbGlnaHRlbigkbGlzdC1ncm91cC1hY3RpdmUtYmcsIDQwJSkgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtbGluay1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjogICAkbGlzdC1ncm91cC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1oZWFkaW5nLWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFuZWxzXG4vL1xuLy8jI1xuXG4kcGFuZWwtYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhbmVsLWJvZHktcGFkZGluZzogICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRwYW5lbC1oZWFkaW5nLXBhZGRpbmc6ICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRwYW5lbC1mb290ZXItcGFkZGluZzogICAgICAgICRwYW5lbC1oZWFkaW5nLXBhZGRpbmcgIWRlZmF1bHQ7XG4kcGFuZWwtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgZWxlbWVudHMgd2l0aGluIHBhbmVsc1xuJHBhbmVsLWlubmVyLWJvcmRlcjogICAgICAgICAgJHN0YXRlLWRlZmF1bHQtYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLWZvb3Rlci1iZzogICAgICAgICAgICAgI2ZhZmFmYSAhZGVmYXVsdDtcblxuJHBhbmVsLWRlZmF1bHQtdGV4dDogICAgICAgICAgJHRleHQtY29sb3IgIWRlZmF1bHQ7XG4kcGFuZWwtZGVmYXVsdC1ib3JkZXI6ICAgICAgICAkc3RhdGUtZGVmYXVsdC1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtZGVmYXVsdC1oZWFkaW5nLWJnOiAgICAkc3RhdGUtZGVmYXVsdC1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLXByaW1hcnktdGV4dDogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWJvcmRlcjogICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhbmVsLXByaW1hcnktaGVhZGluZy1iZzogICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYW5lbC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1pbmZvLWhlYWRpbmctYmc6ICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZzogICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnOiAgICAgJHN0YXRlLWRhbmdlci1iZyAhZGVmYXVsdDtcblxuXG4vLz09IFRodW1ibmFpbHNcbi8vXG4vLyMjXG5cbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBpbWFnZVxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgNHB4ICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYmFja2dyb3VuZCBjb2xvclxuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBib3JkZXIgY29sb3JcbiR0aHVtYm5haWwtYm9yZGVyOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBib3JkZXIgcmFkaXVzXG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEN1c3RvbSB0ZXh0IGNvbG9yIGZvciB0aHVtYm5haWwgY2FwdGlvbnNcbiR0aHVtYm5haWwtY2FwdGlvbi1jb2xvcjogICAgICR0ZXh0LWNvbG9yICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGNhcHRpb25cbiR0aHVtYm5haWwtY2FwdGlvbi1wYWRkaW5nOiAgIDlweCAhZGVmYXVsdDtcblxuXG4vLz09IFdlbGxzXG4vL1xuLy8jI1xuXG4kd2VsbC1iZzogICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHdlbGwtYm9yZGVyOiAgICAgICAgICAgICAgICAgZGFya2VuKCR3ZWxsLWJnLCA3JSkgIWRlZmF1bHQ7XG5cblxuLy89PSBCYWRnZXNcbi8vXG4vLyMjXG5cbiRiYWRnZS1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIExpbmtlZCBiYWRnZSB0ZXh0IGNvbG9yIG9uIGhvdmVyXG4kYmFkZ2UtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xuJGJhZGdlLWJnOiAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogQmFkZ2UgdGV4dCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBCYWRnZSBiYWNrZ3JvdW5kIGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xuJGJhZGdlLWFjdGl2ZS1iZzogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1saW5lLWhlaWdodDogICAgICAgICAgIDEgIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAxMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQnJlYWRjcnVtYnNcbi8vXG4vLyMjXG5cbiRicmVhZGNydW1iLXBhZGRpbmctdmVydGljYWw6ICAgOHB4ICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy1ob3Jpem9udGFsOiAxNXB4ICFkZWZhdWx0O1xuLy8qKiBCcmVhZGNydW1iIGJhY2tncm91bmQgY29sb3JcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgJHN0YXRlLWRlZmF1bHQtYmcgIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgdGV4dCBjb2xvclxuJGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgICAgICAkc3RhdGUtZGVmYXVsdC1ib3JkZXIgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgY3VycmVudCBwYWdlIGluIHRoZSBicmVhZGNydW1iXG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBUZXh0dWFsIHNlcGFyYXRvciBmb3IgYmV0d2VlbiBicmVhZGNydW1iIGVsZW1lbnRzXG4kYnJlYWRjcnVtYi1zZXBhcmF0b3I6ICAgICAgICAgIFwiL1wiICFkZWZhdWx0O1xuXG5cbi8vPT0gQ2Fyb3VzZWxcbi8vXG4vLyMjXG5cbiRjYXJvdXNlbC10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgwLDAsMCwuNikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENsb3NlXG4vL1xuLy8jI1xuXG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgIDAgMXB4IDAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENvZGVcbi8vXG4vLyMjXG5cbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICNjNzI1NGUgIWRlZmF1bHQ7XG4kY29kZS1iZzogICAgICAgICAgICAgICAgICAgICAjZjlmMmY0ICFkZWZhdWx0O1xuXG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuJHByZS1iZzogICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcHJlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBUeXBlXG4vL1xuLy8jI1xuXG4vLyoqIEhvcml6b250YWwgb2Zmc2V0IGZvciBmb3JtcyBhbmQgbGlzdHMuXG4kY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsOiAxODBweCAhZGVmYXVsdDtcbi8vKiogVGV4dCBtdXRlZCBjb2xvclxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEFiYnJldmlhdGlvbnMgYW5kIGFjcm9ueW1zIGJvcmRlciBjb2xvclxuJGFiYnItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEhlYWRpbmdzIHNtYWxsIGNvbG9yXG4kaGVhZGluZ3Mtc21hbGwtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBzbWFsbCBjb2xvclxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgZm9udCBzaXplXG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgYm9yZGVyIGNvbG9yXG4kYmxvY2txdW90ZS1ib3JkZXItY29sb3I6ICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBQYWdlIGhlYWRlciBib3JkZXIgY29sb3JcbiRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFdpZHRoIG9mIGhvcml6b250YWwgZGVzY3JpcHRpb24gbGlzdCB0aXRsZXNcbiRkbC1ob3Jpem9udGFsLW9mZnNldDogICAgICAgICRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWwgIWRlZmF1bHQ7XG4vLyoqIFBvaW50IGF0IHdoaWNoIC5kbC1ob3Jpem9udGFsIGJlY29tZXMgaG9yaXpvbnRhbFxuJGRsLWhvcml6b250YWwtYnJlYWtwb2ludDogICAgJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAhZGVmYXVsdDtcbi8vKiogSG9yaXpvbnRhbCBsaW5lIGNvbG9yLlxuJGhyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiIsIi51aS1hY2NvcmRpb24ge1xuXG4gICAgLnBhbmVsLWdyb3VwIHtcbiAgICAgICAgLnBhbmVsLWhlYWRpbmcgKyAucGFuZWwtY29sbGFwc2UgLnBhbmVsLWJvZHkge1xuICAgICAgICAgICAgLy9ib3JkZXItdG9wOiAxcHggc29saWQgJHN0YXRlLWRlZmF1bHQtYm9yZGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBhbmVsIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHN0YXRlLWRlZmF1bHQtYm9yZGVyO1xuICAgIH1cblxuICAgIC5wYW5lbC1oZWFkaW5nIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN0YXRlLWRlZmF1bHQtYmc7XG4gICAgICAgIC5wYW5lbC10aXRsZSA+IGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6YWN0aXZlLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnVpLWFjY29yZGlvbi1zdWNjZXNzIHtcbiAgICAucGFuZWwge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYnJhbmQtc3VjY2VzcztcbiAgICB9XG4gICAgLnBhbmVsLWhlYWRpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtc3VjY2VzcztcbiAgICAgICAgY29sb3I6ICRyZXZlcnNlO1xuICAgIH1cbn1cbi51aS1hY2NvcmRpb24taW5mbyB7XG4gICAgLnBhbmVsIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJyYW5kLWluZm87XG4gICAgfVxuICAgIC5wYW5lbC1oZWFkaW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWluZm87XG4gICAgICAgIGNvbG9yOiAkcmV2ZXJzZTtcbiAgICB9XG59XG4udWktYWNjb3JkaW9uLXdhcm5pbmcge1xuICAgIC5wYW5lbCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRicmFuZC13YXJuaW5nO1xuICAgIH1cbiAgICAucGFuZWwtaGVhZGluZyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC13YXJuaW5nO1xuICAgICAgICBjb2xvcjogJHJldmVyc2U7XG4gICAgfVxufVxuLnVpLWFjY29yZGlvbi1kYW5nZXIge1xuICAgIC5wYW5lbCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRicmFuZC1kYW5nZXI7XG4gICAgfVxuICAgIC5wYW5lbC1oZWFkaW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWRhbmdlcjtcbiAgICAgICAgY29sb3I6ICRyZXZlcnNlO1xuICAgIH1cbn1cbi51aS1hY2NvcmRpb24tZGFyayB7XG4gICAgLnBhbmVsIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcms7XG4gICAgfVxuICAgIC5wYW5lbC1oZWFkaW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcms7XG4gICAgICAgIGNvbG9yOiAkcmV2ZXJzZTtcbiAgICB9XG59IiwiXG4vLyBEZXBlbmRlbmN5OiBodHRwczovL2dpdGh1Yi5jb20vQ29kZVNldmVuL3RvYXN0clxuXG4kYmdfY29sb3JfZGVmYXVsdDogICAgICAjMzMzO1xuJGJnX2NvbG9yX3N1Y2Nlc3M6ICAgICAgJGJyYW5kLXN1Y2Nlc3M7XG4kYmdfY29sb3JfaW5mbzogICAgICAgICAkYnJhbmQtaW5mbztcbiRiZ19jb2xvcl93YXJuaW5nOiAgICAgICRicmFuZC13YXJuaW5nO1xuJGJnX2NvbG9yX2Vycm9yOiAgICAgICAgJGJyYW5kLWRhbmdlcjtcbiR0b2FzdF9ib3JkZXItcmFkaXVzOiAgICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbi8vIGRlZmF1bHQ6ICRiZ19jb2xvcl9zdWNjZXNzOiAgICAgICM1MWEzNTE7XG4vLyBkZWZhdWx0OiAkYmdfY29sb3JfaW5mbzogICAgICAgICAjMmY5NmI0O1xuLy8gZGVmYXVsdDogJGJnX2NvbG9yX3dhcm5pbmc6ICAgICAgI2Y4OTQwNjtcbi8vIGRlZmF1bHQ6ICRiZ19jb2xvcl9lcnJvcjogICAgICAgICNiZDM2MmY7XG5cbi50b2FzdC10aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLnRvYXN0LW1lc3NhZ2Uge1xuICAtbXMtd29yZC13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4udG9hc3QtbWVzc2FnZSBhLFxuLnRvYXN0LW1lc3NhZ2UgbGFiZWwge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi50b2FzdC1tZXNzYWdlIGE6aG92ZXIge1xuICBjb2xvcjogI2NjY2NjYztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4udG9hc3QtY2xvc2UtYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByaWdodDogLTAuM2VtO1xuICB0b3A6IC0wLjNlbTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgLXdlYmtpdC10ZXh0LXNoYWRvdzogMCAxcHggMCAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMCAjZmZmZmZmO1xuICBvcGFjaXR5OiAwLjg7XG4gIC1tcy1maWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTgwKTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTgwKTtcbn1cbi50b2FzdC1jbG9zZS1idXR0b246aG92ZXIsXG4udG9hc3QtY2xvc2UtYnV0dG9uOmZvY3VzIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwLjQ7XG4gIC1tcy1maWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTQwKTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTQwKTtcbn1cblxuLypBZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIGJ1dHRvbiB2ZXJzaW9uXG4gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuKi9cbmJ1dHRvbi50b2FzdC1jbG9zZS1idXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cbi50b2FzdC10b3AtZnVsbC13aWR0aCB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnRvYXN0LWJvdHRvbS1mdWxsLXdpZHRoIHtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4udG9hc3QtdG9wLWxlZnQge1xuICB0b3A6IDEycHg7XG4gIGxlZnQ6IDEycHg7XG59XG4udG9hc3QtdG9wLXJpZ2h0IHtcbiAgdG9wOiAxMnB4O1xuICByaWdodDogMTJweDtcbn1cbi50b2FzdC1ib3R0b20tcmlnaHQge1xuICByaWdodDogMTJweDtcbiAgYm90dG9tOiAxMnB4O1xufVxuLnRvYXN0LWJvdHRvbS1sZWZ0IHtcbiAgYm90dG9tOiAxMnB4O1xuICBsZWZ0OiAxMnB4O1xufVxuI3RvYXN0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTk5OTk5O1xuICAvKm92ZXJyaWRlcyovXG5cbn1cbiN0b2FzdC1jb250YWluZXIgKiB7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuI3RvYXN0LWNvbnRhaW5lciA+IGRpdiB7XG4gIG1hcmdpbjogMCAwIDZweDtcbiAgcGFkZGluZzogMTVweCAxNXB4IDE1cHggNTBweDtcbiAgd2lkdGg6IDMwMHB4O1xuICBib3JkZXItcmFkaXVzOiAkdG9hc3RfYm9yZGVyLXJhZGl1cztcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTVweCBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIC1tb3otYm94LXNoYWRvdzogMCAwIDEycHggIzk5OTk5OTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMTJweCAjOTk5OTk5O1xuICBib3gtc2hhZG93OiAwIDAgMTJweCAjOTk5OTk5O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgb3BhY2l0eTogMC44O1xuICAtbXMtZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT04MCk7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT04MCk7XG59XG4jdG9hc3QtY29udGFpbmVyID4gOmhvdmVyIHtcbiAgLW1vei1ib3gtc2hhZG93OiAwIDAgMTJweCAjMDAwMDAwO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAxMnB4ICMwMDAwMDA7XG4gIGJveC1zaGFkb3c6IDAgMCAxMnB4ICMwMDAwMDA7XG4gIG9wYWNpdHk6IDE7XG4gIC1tcy1maWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTEwMCk7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4jdG9hc3QtY29udGFpbmVyID4gLnRvYXN0LWluZm8ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJnQUFBQVlDQVlBQUFEZ2R6MzRBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNNQUFBN0RBY2R2cUdRQUFBR3dTVVJCVkVoTHRaYTlTZ05CRU1jOXNVeHhSY29VS1N6U1dJaFhwRk1oaFlXRmhhQmc0eVBZaVdDWFp4QkxFUnNMUlMzRVFrRWZ3Q0tkaldKQXdTS0Nnb0tDY3VkdjRPNVlMcnQ3RXpnWGhpVTMvNCtiMmNrbXdWakpTcEtrUTZ3QWk0Z3doVCt6M3dSQmNFejB5alNzZVVUcmNSeWZzSHNYbUQwQW1iSE9DOUlpOFZJbW51WEJQZ2xIcFE1d3dTVk03c05uVEc3WmE0SndEZENqeHlBaUgzbnlBMm10YVRKdWZpRFo1ZENhcWxJdElMaDFOSGF0Zk41c2t2ang5WjM4bTY5Q2d6dVhtWmdWclBJR0U3NjNKeDlxS3NSb3pXWXc2eE9IZEVSK25uMktrTytCYitVVjVDQk42V0M2UXRCZ2JSVm96cmFoQWJtbTZIdFVzZ3RQQzE5dEZkeFhaWUJPZmtibUZKMVZhSEExVkFIamQwcHA3MG9UWnp2UitFVnJ4MllnZmRzcTZldTU1QkhZUjhobGNraStuK2tFUlVGRzhCckEwQndqZUF2Mk04V0xRQnRjeStTRDZmTnNtbkIzQWxCTHJnVHRWVzFjMlFONGJWV0xBVGFJUzYwSjJEdTV5MVRpSmdqU0J2RlZaZ1Rtd0NVK2RBWkZvUHhHRUVzOG55SEM5QndlMkd2RUp2MldYWmIwdmpkeUZUNEN4azNlL2tJcWxPR29WTHd3UGV2cFlIVCswMFQraFd3WERmNEFKQU9VcVdjRGhid0FBQUFBU1VWT1JLNUNZSUk9XCIpICFpbXBvcnRhbnQ7XG59XG4jdG9hc3QtY29udGFpbmVyID4gLnRvYXN0LWVycm9yIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCZ0FBQUFZQ0FZQUFBRGdkejM0QUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQUpjRWhaY3dBQURzTUFBQTdEQWNkdnFHUUFBQUhPU1VSQlZFaExyWmEvU2dOQkVNWnpoMFdLQ0NsU0NLYUlZT0VEK0FBS2VRUUxHOEhXenRMQ0ltQnJZYWRnSWRZK2dJS05Za0JGU3d1N0NBb3FDZ2trb0dCSS9FMjhQZGJMWm1lRExnelp6Y3g4My96WjJTU1hDMWo5ZnIrSTFIcTkzZzJ5eEg0aXdNMXZrb0JXQWR4Q21welR4ZmtOMlJjeVpOYUhGSWtTbzEwKzhrZ3hrWElVUlY1SEd4VG1GdWM3NUIyUmZRa3B4SEc4YUFnYUFGYTB0QUhxWUZmUTdJd2UyeWhPRGs4K0o0Qzd5QW9SVFdJM3cvNGtsR1JnUjRsTzdScG45K2d2TXlXcCt1eEZoOCtIK0FSbGdOMW5KdUp1UUFZdk5rRW53R0ZjazE4RXI0cTNlZ0VjL29PK21oTGRLZ1J5aGRORmlhY0MwcmxPQ2JoTlZ6NEg5Rm5BWWdEQnZVM1FJaW9abEpGTEp0c29IWVJEZmlab1V5SXhxQ3RScFZsQU5xMEVVNGRBcGpydGdlelBGYWQ1UzE5V2dqa2MwaE5WbnVGNEhqVkE2QzdRclNJYnlsQitvWmUzYUhnQnNxbE5xS1lINDhqWHlKS011QWJpeVZKOEt6YUIzZVJjMHBnOVZ3UTRuaUZyeUk2OHFpT2kzQWJqd2RzZm5BdGswYkNqVExKS3I2bXJEOWc4aXEvUy9CODFoZ3VPTWxRVG5WeUc0MHdBY2pubWdzQ05FU0Ryam1lN3dmZnRQNFA3U1A0TjNDSlpkdnpvTnlHcTJjL0hXT1hKR3N2VmcrUkEvazJNQy93TjZJMllBMlB0OEdrQUFBQUFTVVZPUks1Q1lJST1cIikgIWltcG9ydGFudDtcbn1cbiN0b2FzdC1jb250YWluZXIgPiAudG9hc3Qtc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQmdBQUFBWUNBWUFBQURnZHozNEFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUFKY0VoWmN3QUFEc01BQUE3REFjZHZxR1FBQUFEc1NVUkJWRWhMWTJBWUJmUU1nZi8vLzNQOCsvZXZBSWd2QS9Gc0lGK0JhdllERFdNQkdyb2FTTU1CaUU4VkM3QVpEcklGYU1GbmlpM0FaVGpVZ3NVVVdVREE4T2RBSDZpUWJRRWh3NEh5R3NQRWNLQlhCSUM0QVJoZXg0RzRCc2ptd2VVMXNvSUZhR2cvV3RvRlpSSVpkRXZJTWh4a0NDalhJVnNBVFY2Z0ZHQUNzNFJzdzBFR2dJSUgzUUpZSmdIU0FSUVpEcldBQitqYXd6Z3MrUTJVTzQ5RDdqblJTUkdvRUZSSUxjZG1FTVdHSTBjbTBKSjJRcFlBMVJEdmNtekpFV2hBQmhEL3BxckwwUzBDV3VBQktnblJraTlsTHNlUzdnMkFscXdIV1FTS0g0b0tMcklMcFJHaEVRQ3cyTGlSVUlhNGx3QUFBQUJKUlU1RXJrSmdnZz09XCIpICFpbXBvcnRhbnQ7XG59XG4jdG9hc3QtY29udGFpbmVyID4gLnRvYXN0LXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJnQUFBQVlDQVlBQUFEZ2R6MzRBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNNQUFBN0RBY2R2cUdRQUFBR1lTVVJCVkVoTDVaU3ZUc05RRk1iWFpHSUNNWUdZbUpoQVFJSkFJQ1lRUEFBQ2lTREI4QWlJQ1FRSlQ0Q3FRRXdnSnZZQVNBUUNpWmlZbUpoQUlCQVRDQVJKeSs5clRzbGRkOHNLdTFNMCtkTGIwNTd2Ni9sYnEvMnJLMG1TL1RSTmo5Y1dOQUtQWUlKSUk3Z0l4Q2NRNTFjdnFJRCtHSUVYOEFTRzRCMWJLNWdJWkZlUWZvSmRFWE9mZ1g0UUFRZzdrSDJBNjV5UTg3bHl4YjI3c2dna0F6QXVGaGJiZzFLMmtnQ2tCMWJWd3lJUjltMkw3UFJQSWhEVUlYZ0d0eUt3NTc1eXozbFROczZYNEpYbmpWK0xLTS9tM015ZG5UYnRPS0lqdHo2VmhDQnE0dlNtM25jZHJEMmxrMFZnVVhTVktqVkRKWEp6aWpXMVJRZHNVN0Y3N0hlOHU2OGtvTlpUejhPejV5R2E2SjNIM2xaMHhZZ1hCSzJReW1sV1dBK1JXblloc2tMQnYydm1FK2hCTUN0YkE3S1g1ZHJXeVJULzJKc3FaMkl2ZkI5WTRiV0ROTUZiSlJGbUM5RTc0U29TMENxdWx3amtDMCs1YnBjVjFDWjhOTWVqNHBqeTBVK2RvRFFzR3lvMWh6Vkp0dElqaFE3R25CdFJGTjFVYXJVbEg4RjN4aWN0K0hZMDdyRXpvVUdQbFdjalJGUnI0L2dDaFpnYzNaTDJkOG9BQUFBQVNVVk9SSzVDWUlJPVwiKSAhaW1wb3J0YW50O1xufVxuI3RvYXN0LWNvbnRhaW5lci50b2FzdC10b3AtZnVsbC13aWR0aCA+IGRpdixcbiN0b2FzdC1jb250YWluZXIudG9hc3QtYm90dG9tLWZ1bGwtd2lkdGggPiBkaXYge1xuICB3aWR0aDogOTYlO1xuICBtYXJnaW46IGF1dG87XG59XG5cbi50b2FzdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZ19jb2xvcl9kZWZhdWx0O1xufVxuLnRvYXN0LXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnX2NvbG9yX3N1Y2Nlc3MsIDglKTtcbn1cbi50b2FzdC1lcnJvciB7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmdfY29sb3JfZXJyb3IsIDglKTtcbn1cbi50b2FzdC1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiZ19jb2xvcl9pbmZvLCA4JSk7XG59XG4udG9hc3Qtd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmdfY29sb3Jfd2FybmluZywgOCUpO1xufVxuLypSZXNwb25zaXZlIERlc2lnbiovXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAyNDBweCkge1xuICAjdG9hc3QtY29udGFpbmVyID4gZGl2IHtcbiAgICBwYWRkaW5nOiA4cHggOHB4IDhweCA1MHB4O1xuICAgIHdpZHRoOiAxMWVtO1xuICB9XG4gICN0b2FzdC1jb250YWluZXIgLnRvYXN0LWNsb3NlLWJ1dHRvbiB7XG4gICAgcmlnaHQ6IC0wLjJlbTtcbiAgICB0b3A6IC0wLjJlbTtcbiAgfVxufVxuQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogMjQxcHgpIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAjdG9hc3QtY29udGFpbmVyID4gZGl2IHtcbiAgICBwYWRkaW5nOiA4cHggOHB4IDhweCA1MHB4O1xuICAgIHdpZHRoOiAxOGVtO1xuICB9XG4gICN0b2FzdC1jb250YWluZXIgLnRvYXN0LWNsb3NlLWJ1dHRvbiB7XG4gICAgcmlnaHQ6IC0wLjJlbTtcbiAgICB0b3A6IC0wLjJlbTtcbiAgfVxufVxuQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogNDgxcHgpIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAjdG9hc3QtY29udGFpbmVyID4gZGl2IHtcbiAgICBwYWRkaW5nOiAxNXB4IDE1cHggMTVweCA1MHB4O1xuICAgIHdpZHRoOiAyNWVtO1xuICB9XG59XG4iLCJcbi51aS10YWdzLWlucHV0IHtcbiAgICAuaG9zdCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50YWdzIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgICAgICBjdXJzb3I6IHRleHQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlOyAvLyBNYWtlIGlucHV0cyBhdCBsZWFzdCB0aGUgaGVpZ2h0IG9mIHRoZWlyIGJ1dHRvbiBjb3VudGVycGFydCAoYmFzZSBsaW5lLWhlaWdodCArIHBhZGRpbmcgKyBib3JkZXIpXG4gICAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWJvcmRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXM7XG4gICAgfVxuICAgIC50YWdzLmZvY3VzZWQge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgICAudGFncyAudGFnLWxpc3Qge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICB9XG4gICAgLnRhZ3MgLnRhZy1pdGVtIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luOiAycHg7XG4gICAgICAgIHBhZGRpbmc6IDZweCA4cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICBjb2xvcjogJHJldmVyc2U7XG4gICAgfVxuICAgIC50YWdzIC50YWctaXRlbS5zZWxlY3RlZCB7XG4gICAgfVxuICAgIC50YWdzIC50YWctaXRlbSAucmVtb3ZlLWJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgNXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgY29sb3I6ICRncmF5LWxpZ2h0ZXI7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gICAgLnRhZ3MgLnRhZy1pdGVtIC5yZW1vdmUtYnV0dG9uOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtZGFuZ2VyO1xuICAgIH1cbiAgICAudGFncyAuaW5wdXQge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMnB4O1xuICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAvLyBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgIH1cbiAgICAudGFncyAuaW5wdXQuaW52YWxpZC10YWcge1xuICAgICAgICBjb2xvcjogJGJyYW5kLWRhbmdlcjtcbiAgICB9XG4gICAgLnRhZ3MgLmlucHV0OjotbXMtY2xlYXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5hdXRvY29tcGxldGUge1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICAgIHotaW5kZXg6IDk5OTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgfVxuICAgIC5hdXRvY29tcGxldGUgLnN1Z2dlc3Rpb24tbGlzdCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIH1cbiAgICAuYXV0b2NvbXBsZXRlIC5zdWdnZXN0aW9uLWl0ZW0ge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgY29sb3I6ICRkYXJrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmV2ZXJzZTtcbiAgICB9XG4gICAgLmF1dG9jb21wbGV0ZSAuc3VnZ2VzdGlvbi1pdGVtLnNlbGVjdGVkIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA5N2NmO1xuICAgIH1cbiAgICAuYXV0b2NvbXBsZXRlIC5zdWdnZXN0aW9uLWl0ZW0uc2VsZWN0ZWQgZW0ge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDk3Y2Y7XG4gICAgfVxuICAgIC5hdXRvY29tcGxldGUgLnN1Z2dlc3Rpb24taXRlbSBlbSB7XG4gICAgICAgIGNvbG9yOiAkZGFyaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgfVxufVxuIiwiLyohXG4gKiBhbmd1bGFyLWxvYWRpbmctYmFyIHYwLjYuMFxuICogaHR0cHM6Ly9jaGllZmZhbmN5cGFudHMuZ2l0aHViLmlvL2FuZ3VsYXItbG9hZGluZy1iYXJcbiAqIENvcHlyaWdodCAoYykgMjAxNCBXZXMgQ3J1dmVyXG4gKiBMaWNlbnNlOiBNSVRcbiAqL1xuXG4vKiBNYWtlIGNsaWNrcyBwYXNzLXRocm91Z2ggKi9cblxuJGxvYWRlcl9jb2xvcjogJGJyYW5kLWluZm87XG4kbG9hZGVyX2hlaWdodDogM3B4O1xuXG5cbiNsb2FkaW5nLWJhcixcbiNsb2FkaW5nLWJhci1zcGlubmVyIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAtd2Via2l0LXBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogMzUwbXMgbGluZWFyIGFsbDtcbiAgICAtbW96LXRyYW5zaXRpb246IDM1MG1zIGxpbmVhciBhbGw7XG4gICAgLW8tdHJhbnNpdGlvbjogMzUwbXMgbGluZWFyIGFsbDtcbiAgICB0cmFuc2l0aW9uOiAzNTBtcyBsaW5lYXIgYWxsO1xufVxuXG4jbG9hZGluZy1iYXIubmctZW50ZXIsXG4jbG9hZGluZy1iYXIubmctbGVhdmUubmctbGVhdmUtYWN0aXZlLFxuI2xvYWRpbmctYmFyLXNwaW5uZXIubmctZW50ZXIsXG4jbG9hZGluZy1iYXItc3Bpbm5lci5uZy1sZWF2ZS5uZy1sZWF2ZS1hY3RpdmUge1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbiNsb2FkaW5nLWJhci5uZy1lbnRlci5uZy1lbnRlci1hY3RpdmUsXG4jbG9hZGluZy1iYXIubmctbGVhdmUsXG4jbG9hZGluZy1iYXItc3Bpbm5lci5uZy1lbnRlci5uZy1lbnRlci1hY3RpdmUsXG4jbG9hZGluZy1iYXItc3Bpbm5lci5uZy1sZWF2ZSB7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuI2xvYWRpbmctYmFyIC5iYXIge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggMzUwbXM7XG4gICAgLW1vei10cmFuc2l0aW9uOiB3aWR0aCAzNTBtcztcbiAgICAtby10cmFuc2l0aW9uOiB3aWR0aCAzNTBtcztcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAzNTBtcztcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsb2FkZXJfY29sb3I7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDEwMDAyO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJGxvYWRlcl9oZWlnaHQ7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDFweDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMXB4O1xufVxuXG4vKiBGYW5jeSBibHVyIGVmZmVjdCAqL1xuI2xvYWRpbmctYmFyIC5wZWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNzBweDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgb3BhY2l0eTogLjQ1O1xuICAgIGJveC1zaGFkb3c6ICRsb2FkZXJfY29sb3IgMXB4IDAgNnB4IDFweDtcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG59XG5cbiNsb2FkaW5nLWJhci1zcGlubmVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMTAwMDI7XG4gICAgdG9wOiAxMHB4O1xuICAgIGxlZnQ6IDEwcHg7XG59XG5cbiNsb2FkaW5nLWJhci1zcGlubmVyIC5zcGlubmVyLWljb24ge1xuICAgIHdpZHRoOiAxNHB4O1xuICAgIGhlaWdodDogMTRweDtcblxuICAgIGJvcmRlcjogIHNvbGlkIDJweCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAgJGxvYWRlcl9jb2xvcjtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJGxvYWRlcl9jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuXG4gICAgLXdlYmtpdC1hbmltYXRpb246IGxvYWRpbmctYmFyLXNwaW5uZXIgNDAwbXMgbGluZWFyIGluZmluaXRlO1xuICAgIC1tb3otYW5pbWF0aW9uOiAgICBsb2FkaW5nLWJhci1zcGlubmVyIDQwMG1zIGxpbmVhciBpbmZpbml0ZTtcbiAgICAtbXMtYW5pbWF0aW9uOiAgICAgbG9hZGluZy1iYXItc3Bpbm5lciA0MDBtcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgLW8tYW5pbWF0aW9uOiAgICAgIGxvYWRpbmctYmFyLXNwaW5uZXIgNDAwbXMgbGluZWFyIGluZmluaXRlO1xuICAgIGFuaW1hdGlvbjogICAgICAgICBsb2FkaW5nLWJhci1zcGlubmVyIDQwMG1zIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgbG9hZGluZy1iYXItc3Bpbm5lciB7XG4gICAgMCUgICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7ICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgICAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5ALW1vei1rZXlmcmFtZXMgbG9hZGluZy1iYXItc3Bpbm5lciB7XG4gICAgMCUgICB7IC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7ICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgICAxMDAlIHsgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5ALW8ta2V5ZnJhbWVzIGxvYWRpbmctYmFyLXNwaW5uZXIge1xuICAgIDAlICAgeyAtby10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAgIDEwMCUgeyAtby10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5ALW1zLWtleWZyYW1lcyBsb2FkaW5nLWJhci1zcGlubmVyIHtcbiAgICAwJSAgIHsgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gICAgMTAwJSB7IC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5Aa2V5ZnJhbWVzIGxvYWRpbmctYmFyLXNwaW5uZXIge1xuICAgIDAlICAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG4iLCIvLyBCYXNlZCBvbiBGdWxsQ2FsZW5kYXIgdjIuMS4xIFN0eWxlc2hlZXRcblxuXG4uZmMge1xuICAgIGRpcmVjdGlvbjogbHRyO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cblxufVxuXG4uZmMtcnRsIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuYm9keSAuZmMgeyAvKiBleHRyYSBwcmVjZWRlbmNlIHRvIG92ZXJjb21lIGpxdWkgKi9cbiAgICBmb250LXNpemU6IDFlbTtcbn1cblxuLmZjLXZpZXcge1xuICAgIHRoZWFkIHtcbiAgICAgICAgdGgge1xuICAgICAgICAgICAgcGFkZGluZzogNHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uZmMtdW50aGVtZWQgdGgsXG4uZmMtdW50aGVtZWQgdGQsXG4uZmMtdW50aGVtZWQgaHIsXG4uZmMtdW50aGVtZWQgdGhlYWQsXG4uZmMtdW50aGVtZWQgdGJvZHksXG4uZmMtdW50aGVtZWQgLmZjLXJvdyxcbi5mYy11bnRoZW1lZCAuZmMtcG9wb3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGRkO1xufVxuXG4uZmMtdW50aGVtZWQgLmZjLXBvcG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5mYy11bnRoZW1lZCBocixcbi5mYy11bnRoZW1lZCAuZmMtcG9wb3ZlciAuZmMtaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZWVlO1xufVxuXG4uZmMtdW50aGVtZWQgLmZjLXBvcG92ZXIgLmZjLWhlYWRlciAuZmMtY2xvc2Uge1xuICAgIGNvbG9yOiAjNjY2O1xufVxuXG4uZmMtdW50aGVtZWQgLmZjLXRvZGF5IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmNmOGUzO1xufVxuXG4uZmMtaGlnaGxpZ2h0IHsgLyogd2hlbiB1c2VyIGlzIHNlbGVjdGluZyBjZWxscyAqL1xuICAgIGJhY2tncm91bmQ6ICNiY2U4ZjE7XG4gICAgb3BhY2l0eTogLjM7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTMwKTsgLyogZm9yIElFICovXG59XG5cblxuLyogSWNvbnMgKGlubGluZSBlbGVtZW50cyB3aXRoIHN0eWxlZCB0ZXh0IHRoYXQgbW9jayBhcnJvdyBpY29ucylcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmZjLWljb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBsaW5lLWhlaWdodDogLjVlbTtcbiAgICBoZWlnaHQ6IC41ZW07IC8qIHdpbGwgbWFrZSB0aGUgdG90YWwgaGVpZ2h0IDFlbSAqL1xuICAgIGZvbnQtZmFtaWx5OiBcIkNvdXJpZXIgTmV3XCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbn1cblxuLmZjLWljb24tbGVmdC1zaW5nbGUtYXJyb3c6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFwwMjAzOVwiO1xufVxuXG4uZmMtaWNvbi1yaWdodC1zaW5nbGUtYXJyb3c6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFwwMjAzQVwiO1xufVxuXG4uZmMtaWNvbi1sZWZ0LWRvdWJsZS1hcnJvdzphZnRlciB7XG4gICAgY29udGVudDogXCJcXDAwMEFCXCI7XG59XG5cbi5mYy1pY29uLXJpZ2h0LWRvdWJsZS1hcnJvdzphZnRlciB7XG4gICAgY29udGVudDogXCJcXDAwMEJCXCI7XG59XG5cbi5mYy1pY29uLXg6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFwwMDBEN1wiO1xufVxuXG5cbi8qIEJ1dHRvbnMgKHN0eWxlZCA8YnV0dG9uPiB0YWdzLCBub3JtYWxpemVkIHRvIHdvcmsgY3Jvc3MtYnJvd3Nlcilcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmZjIGJ1dHRvbiB7XG4gICAgLyogZGltZW5zaW9ucyAqL1xuICAgIG1hcmdpbjogMDtcbiAgICBoZWlnaHQ6IDIuMWVtO1xuICAgIHBhZGRpbmc6IDAgLjZlbTtcblxuICAgIC8qIHRleHQgJiBjdXJzb3IgKi9cbiAgICBmb250LXNpemU6IDFlbTsgLyogbm9ybWFsaXplICovXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qIEZpcmVmb3ggaGFzIGFuIGFubm95aW5nIGlubmVyIGJvcmRlciAqL1xuLmZjIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7IG1hcmdpbjogMDsgcGFkZGluZzogMDsgfVxuICAgIFxuLmZjLXN0YXRlLWRlZmF1bHQgeyAvKiBub24tdGhlbWUgKi9cbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbn1cblxuLmZjLXN0YXRlLWRlZmF1bHQuZmMtY29ybmVyLWxlZnQgeyAvKiBub24tdGhlbWUgKi9cbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xufVxuXG4uZmMtc3RhdGUtZGVmYXVsdC5mYy1jb3JuZXItcmlnaHQgeyAvKiBub24tdGhlbWUgKi9cbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4O1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG59XG5cbi8qIGljb25zIGluIGJ1dHRvbnMgKi9cblxuLmZjIGJ1dHRvbiAuZmMtaWNvbiB7IC8qIG5vbi10aGVtZSAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC4wNWVtOyAvKiBzZWVtcyB0byBiZSBhIGdvb2QgYWRqdXN0bWVudCBhY3Jvc3MgYnJvd3NlcnMgKi9cbiAgICBtYXJnaW46IDAgLjFlbTtcbn1cbiAgICBcbi8qXG4gIGJ1dHRvbiBzdGF0ZXNcbiAgYm9ycm93ZWQgZnJvbSB0d2l0dGVyIGJvb3RzdHJhcCAoaHR0cDovL3R3aXR0ZXIuZ2l0aHViLmNvbS9ib290c3RyYXAvKVxuKi9cblxuLmZjLXN0YXRlLWRlZmF1bHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidG4tZGVmYXVsdC1iZztcbiAgICBjb2xvcjogJGJ0bi1kZWZhdWx0LWNvbG9yO1xufVxuXG4uZmMtc3RhdGUtaG92ZXIsXG4uZmMtc3RhdGUtZG93bixcbi5mYy1zdGF0ZS1hY3RpdmUsXG4uZmMtc3RhdGUtZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkYnRuLWRlZmF1bHQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRidG4tZGVmYXVsdC1iZywgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJ0bi1kZWZhdWx0LWJvcmRlciwgMTIlKTtcbn1cblxuLmZjLXN0YXRlLWRvd24sXG4uZmMtc3RhdGUtYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4uZmMtc3RhdGUtZGlzYWJsZWQge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIG9wYWNpdHk6IDAuNjU7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTY1KTtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG5cbi8qIEJ1dHRvbnMgR3JvdXBzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5mYy1idXR0b24tZ3JvdXAge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLypcbmV2ZXJ5IGJ1dHRvbiB0aGF0IGlzIG5vdCBmaXJzdCBpbiBhIGJ1dHRvbiBncm91cCBzaG91bGQgc2Nvb3RjaCBvdmVyIG9uZSBwaXhlbCBhbmQgY292ZXIgdGhlXG5wcmV2aW91cyBidXR0b24ncyBib3JkZXIuLi5cbiovXG5cbi5mYyAuZmMtYnV0dG9uLWdyb3VwID4gKiB7IC8qIGV4dHJhIHByZWNlZGVuY2UgYi9jIGJ1dHRvbnMgaGF2ZSBtYXJnaW4gc2V0IHRvIHplcm8gKi9cbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDAgMCAwIC0xcHg7XG59XG5cbi5mYyAuZmMtYnV0dG9uLWdyb3VwID4gOmZpcnN0LWNoaWxkIHsgLyogc2FtZSAqL1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG5cbi8qIFBvcG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmZjLXBvcG92ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3gtc2hhZG93OiAwIDJweCA2cHggcmdiYSgwLDAsMCwuMTUpO1xufVxuXG4uZmMtcG9wb3ZlciAuZmMtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAycHggNHB4O1xufVxuXG4uZmMtcG9wb3ZlciAuZmMtaGVhZGVyIC5mYy10aXRsZSB7XG4gICAgbWFyZ2luOiAwIDJweDtcbn1cblxuLmZjLXBvcG92ZXIgLmZjLWhlYWRlciAuZmMtY2xvc2Uge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmZjLWx0ciAuZmMtcG9wb3ZlciAuZmMtaGVhZGVyIC5mYy10aXRsZSxcbi5mYy1ydGwgLmZjLXBvcG92ZXIgLmZjLWhlYWRlciAuZmMtY2xvc2Uge1xuICAgIGZsb2F0OiBsZWZ0O1xufVxuXG4uZmMtcnRsIC5mYy1wb3BvdmVyIC5mYy1oZWFkZXIgLmZjLXRpdGxlLFxuLmZjLWx0ciAuZmMtcG9wb3ZlciAuZmMtaGVhZGVyIC5mYy1jbG9zZSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4vKiB1bnRoZW1lZCAqL1xuXG4uZmMtdW50aGVtZWQgLmZjLXBvcG92ZXIge1xuICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi5mYy11bnRoZW1lZCAuZmMtcG9wb3ZlciAuZmMtaGVhZGVyIC5mYy1jbG9zZSB7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuICAgIG1hcmdpbi10b3A6IDRweDtcbn1cblxuLyoganF1aSB0aGVtZWQgKi9cblxuLmZjLXBvcG92ZXIgPiAudWktd2lkZ2V0LWhlYWRlciArIC51aS13aWRnZXQtY29udGVudCB7XG4gICAgYm9yZGVyLXRvcDogMDsgLyogd2hlcmUgdGhleSBtZWV0LCBsZXQgdGhlIGhlYWRlciBoYXZlIHRoZSBib3JkZXIgKi9cbn1cblxuXG4vKiBNaXNjIFJldXNhYmxlIENvbXBvbmVudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmZjIGhyIHtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMCAycHg7IC8qIGhlaWdodCBpcyB1bnJlbGlhYmxlIGFjcm9zcyBicm93c2Vycywgc28gdXNlIHBhZGRpbmcgKi9cbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMXB4IDA7XG59XG5cbi5mYy1jbGVhciB7XG4gICAgY2xlYXI6IGJvdGg7XG59XG5cbi5mYy1iZyxcbi5mYy1oaWdobGlnaHQtc2tlbGV0b24sXG4uZmMtaGVscGVyLXNrZWxldG9uIHtcbiAgICAvKiB0aGVzZSBlbGVtZW50IHNob3VsZCBhbHdheXMgY2xpbmcgdG8gdG9wLWxlZnQvcmlnaHQgY29ybmVycyAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbn1cblxuLmZjLWJnIHtcbiAgICBib3R0b206IDA7IC8qIHN0cmVjaCBiZyB0byBib3R0b20gZWRnZSAqL1xufVxuXG4uZmMtYmcgdGFibGUge1xuICAgIGhlaWdodDogMTAwJTsgLyogc3RyZWNoIGJnIHRvIGJvdHRvbSBlZGdlICovXG59XG5cblxuLyogVGFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5mYyB0YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMWVtOyAvKiBub3JtYWxpemUgY3Jvc3MtYnJvd3NlciAqL1xufVxuXG4uZmMgdGgge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmZjIHRoLFxuLmZjIHRkIHtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLmZjIHRkLmZjLXRvZGF5IHtcbiAgICBib3JkZXItc3R5bGU6IGRvdWJsZTsgLyogb3ZlcmNvbWUgbmVpZ2hib3JpbmcgYm9yZGVycyAqL1xufVxuXG5cbi8qIEZha2UgVGFibGUgUm93c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uZmMgLmZjLXJvdyB7IC8qIGV4dHJhIHByZWNlZGVuY2UgdG8gb3ZlcmNvbWUgdGhlbWVzIHcvIC51aS13aWRnZXQtY29udGVudCBmb3JjaW5nIGEgMXB4IGJvcmRlciAqL1xuICAgIC8qIG5vIHZpc2libGUgYm9yZGVyIGJ5IGRlZmF1bHQuIGJ1dCBtYWtlIGF2YWlsYWJsZSBpZiBuZWVkIGJlIChzY3JvbGxiYXIgd2lkdGggY29tcGVuc2F0aW9uKSAqL1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xufVxuXG4uZmMtcm93IHRhYmxlIHtcbiAgICAvKiBkb24ndCBwdXQgbGVmdC9yaWdodCBib3JkZXIgb24gYW55dGhpbmcgd2l0aGluIGEgZmFrZSByb3cuXG4gICAgICAgdGhlIG91dGVyIHRib2R5IHdpbGwgd29ycnkgYWJvdXQgdGhpcyAqL1xuICAgIGJvcmRlci1sZWZ0OiAwIGhpZGRlbiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDAgaGlkZGVuIHRyYW5zcGFyZW50O1xuXG4gICAgLyogbm8gYm90dG9tIGJvcmRlcnMgb24gcm93cyAqL1xuICAgIGJvcmRlci1ib3R0b206IDAgaGlkZGVuIHRyYW5zcGFyZW50OyBcbn1cblxuLmZjLXJvdzpmaXJzdC1jaGlsZCB0YWJsZSB7XG4gICAgYm9yZGVyLXRvcDogMCBoaWRkZW4gdHJhbnNwYXJlbnQ7IC8qIG5vIHRvcCBib3JkZXIgb24gZmlyc3Qgcm93ICovXG59XG5cblxuLyogRGF5IFJvdyAodXNlZCB3aXRoaW4gdGhlIGhlYWRlciBhbmQgdGhlIERheUdyaWQpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5mYy1yb3cge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZjLXJvdyAuZmMtYmcge1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi8qIGhpZ2hsaWdodGluZyBjZWxscyAqL1xuXG4uZmMtcm93IC5mYy1oaWdobGlnaHQtc2tlbGV0b24ge1xuICAgIHotaW5kZXg6IDI7XG4gICAgYm90dG9tOiAwOyAvKiBzdHJldGNoIHNrZWxldG9uIHRvIGJvdHRvbSBvZiByb3cgKi9cbn1cblxuLmZjLXJvdyAuZmMtaGlnaGxpZ2h0LXNrZWxldG9uIHRhYmxlIHtcbiAgICBoZWlnaHQ6IDEwMCU7IC8qIHN0cmV0Y2ggc2tlbGV0b24gdG8gYm90dG9tIG9mIHJvdyAqL1xufVxuXG4uZmMtcm93IC5mYy1oaWdobGlnaHQtc2tlbGV0b24gdGQge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qXG5yb3cgY29udGVudCAod2hpY2ggY29udGFpbnMgZGF5L3dlZWsgbnVtYmVycyBhbmQgZXZlbnRzKSBhcyB3ZWxsIGFzIFwiaGVscGVyXCIgKHdoaWNoIGNvbnRhaW5zXG50ZW1wb3JhcnkgcmVuZGVyZWQgZXZlbnRzKS5cbiovXG5cbi5mYy1yb3cgLmZjLWNvbnRlbnQtc2tlbGV0b24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAzO1xuICAgIHBhZGRpbmctYm90dG9tOiAycHg7IC8qIG1hdGNoZXMgdGhlIHNwYWNlIGFib3ZlIHRoZSBldmVudHMgKi9cbn1cblxuLmZjLXJvdyAuZmMtaGVscGVyLXNrZWxldG9uIHtcbiAgICB6LWluZGV4OiA0O1xufVxuXG4uZmMtcm93IC5mYy1jb250ZW50LXNrZWxldG9uIHRkLFxuLmZjLXJvdyAuZmMtaGVscGVyLXNrZWxldG9uIHRkIHtcbiAgICAvKiBzZWUtdGhyb3VnaCB0byB0aGUgYmFja2dyb3VuZCBiZWxvdyAqL1xuICAgIGJhY2tncm91bmQ6IG5vbmU7IC8qIGluIGNhc2UgPHRkPnMgYXJlIGdsb2JhbGx5IHN0eWxlZCAqL1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAvKiBkb24ndCBwdXQgYSBib3JkZXIgYmV0d2VlbiBldmVudHMgYW5kL29yIHRoZSBkYXkgbnVtYmVyICovXG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmZjLXJvdyAuZmMtY29udGVudC1za2VsZXRvbiB0Ym9keSB0ZCwgLyogY2VsbHMgd2l0aCBldmVudHMgaW5zaWRlIChzbyBOT1QgdGhlIGRheSBudW1iZXIgY2VsbCkgKi9cbi5mYy1yb3cgLmZjLWhlbHBlci1za2VsZXRvbiB0Ym9keSB0ZCB7XG4gICAgLyogZG9uJ3QgcHV0IGEgYm9yZGVyIGJldHdlZW4gZXZlbnQgY2VsbHMgKi9cbiAgICBib3JkZXItdG9wOiAwO1xufVxuXG5cbi8qIFNjcm9sbGluZyBDb250YWluZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmZjLXNjcm9sbGVyIHsgLyogdGhpcyBjbGFzcyBnb2VzIG9uIGVsZW1lbnRzIGZvciBndWFyYW50ZWVkIHZlcnRpY2FsIHNjcm9sbGJhcnMgKi9cbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG4uZmMtc2Nyb2xsZXIgPiAqIHsgLyogd2UgZXhwZWN0IGFuIGltbWVkaWF0ZSBpbm5lciBlbGVtZW50ICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvKiByZS1zY29wZSBhbGwgcG9zaXRpb25zICovXG4gICAgd2lkdGg6IDEwMCU7IC8qIGhhY2sgdG8gZm9yY2UgcmUtc2l6aW5nIHRoaXMgaW5uZXIgZWxlbWVudCB3aGVuIHNjcm9sbGJhcnMgYXBwZWFyL2Rpc2FwcGVhciAqL1xuICAgIG92ZXJmbG93OiBoaWRkZW47IC8qIGRvbid0IGxldCBuZWdhdGl2ZSBtYXJnaW5zIG9yIGFic29sdXRlIHBvc2l0aW9uaW5nIGNyZWF0ZSBmdXJ0aGVyIHNjcm9sbCAqL1xufVxuXG5cbi8qIEdsb2JhbCBFdmVudCBTdHlsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmZjLWV2ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8qIGZvciByZXNpemUgaGFuZGxlIGFuZCBvdGhlciBpbm5lciBwb3NpdGlvbmluZyAqL1xuICAgIGRpc3BsYXk6IGJsb2NrOyAvKiBtYWtlIHRoZSA8YT4gdGFnIGJsb2NrICovXG4gICAgZm9udC1zaXplOiAuODVlbTtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIGJvcmRlci13aWR0aDogMXB4OyAvKiBkZWZhdWx0IEJPUkRFUiBjb2xvciAqL1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7IC8qIGRlZmF1bHQgQk9SREVSIGNvbG9yICovXG4gICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtaW5mbzsgLyogZGVmYXVsdCBCT1JERVIgY29sb3IgKi9cbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgLyogdW5kbyBqcXVpJ3MgdWktd2lkZ2V0LWhlYWRlciBib2xkICovXG5cbiAgICAmLmZjLWV2ZW50LXN1Y2Nlc3Mge1xuICAgICAgICBib3JkZXItY29sb3I6ICRicmFuZC1zdWNjZXNzOyAvKiBkZWZhdWx0IEJPUkRFUiBjb2xvciAqL1xuICAgIH1cbiAgICAmLmZjLWV2ZW50LXdhcm5pbmcge1xuICAgICAgICBib3JkZXItY29sb3I6ICRicmFuZC13YXJuaW5nOyAvKiBkZWZhdWx0IEJPUkRFUiBjb2xvciAqL1xuICAgIH1cbiAgICAmLmZjLWV2ZW50LWRhbmdlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLWRhbmdlcjsgLyogZGVmYXVsdCBCT1JERVIgY29sb3IgKi9cbiAgICB9XG59XG5cbi8qIG92ZXJwb3dlciBzb21lIG9mIGJvb3RzdHJhcCdzIGFuZCBqcXVpJ3Mgc3R5bGVzIG9uIDxhPiB0YWdzICovXG4uZmMtZXZlbnQsXG4uZmMtZXZlbnQ6aG92ZXIsXG4udWktd2lkZ2V0IC5mYy1ldmVudCB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yOyAvKiBkZWZhdWx0IFRFWFQgY29sb3IgKi9cbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IC8qIGlmIDxhPiBoYXMgYW4gaHJlZiAqL1xufVxuXG4uZmMtZXZlbnRbaHJlZl0sXG4uZmMtZXZlbnQuZmMtZHJhZ2dhYmxlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IC8qIGdpdmUgZXZlbnRzIHdpdGggbGlua3MgYW5kIGRyYWdnYWJsZSBldmVudHMgYSBoYW5kIG1vdXNlIHBvaW50ZXIgKi9cbn1cblxuXG4vKiBEYXlHcmlkIGV2ZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuV2UgdXNlIHRoZSBmdWxsIFwiZmMtZGF5LWdyaWQtZXZlbnRcIiBjbGFzcyBpbnN0ZWFkIG9mIHVzaW5nIGRlc2NlbmRhbnRzIGJlY2F1c2UgdGhlIGV2ZW50IHdvbid0XG5iZSBhIGRlc2NlbmRhbnQgb2YgdGhlIGdyaWQgd2hlbiBpdCBpcyBiZWluZyBkcmFnZ2VkLlxuKi9cblxuLmZjLWRheS1ncmlkLWV2ZW50IHtcbiAgICBtYXJnaW46IDFweCAycHggMDsgLyogc3BhY2luZyBiZXR3ZWVuIGV2ZW50cyBhbmQgZWRnZXMgKi9cbiAgICBwYWRkaW5nOiA0cHggOHB4O1xufVxuXG4vKiBldmVudHMgdGhhdCBhcmUgY29udGludWluZyB0by9mcm9tIGFub3RoZXIgd2Vlay4ga2lsbCByb3VuZGVkIGNvcm5lcnMgYW5kIGJ1dHQgdXAgYWdhaW5zdCBlZGdlICovXG5cbi5mYy1sdHIgLmZjLWRheS1ncmlkLWV2ZW50LmZjLW5vdC1zdGFydCxcbi5mYy1ydGwgLmZjLWRheS1ncmlkLWV2ZW50LmZjLW5vdC1lbmQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMXB4OyAvKiByZXBsYWNlIHRoZSBib3JkZXIgd2l0aCBwYWRkaW5nICovXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuXG4uZmMtbHRyIC5mYy1kYXktZ3JpZC1ldmVudC5mYy1ub3QtZW5kLFxuLmZjLXJ0bCAuZmMtZGF5LWdyaWQtZXZlbnQuZmMtbm90LXN0YXJ0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFweDsgLyogcmVwbGFjZSB0aGUgYm9yZGVyIHdpdGggcGFkZGluZyAqL1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uZmMtZGF5LWdyaWQtZXZlbnQgPiAuZmMtY29udGVudCB7IC8qIGZvcmNlIGV2ZW50cyB0byBiZSBvbmUtbGluZSB0YWxsICovXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZmMtZGF5LWdyaWQtZXZlbnQgLmZjLXRpbWUge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKiByZXNpemUgaGFuZGxlIChvdXRzaWRlIG9mIGZjLWNvbnRlbnQsIHNvIGNhbiBnbyBvdXRzaWRlIG9mIGJvdW5kcykgKi9cblxuLmZjLWRheS1ncmlkLWV2ZW50IC5mYy1yZXNpemVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogN3B4O1xufVxuXG4uZmMtbHRyIC5mYy1kYXktZ3JpZC1ldmVudCAuZmMtcmVzaXplciB7XG4gICAgcmlnaHQ6IC0zcHg7XG4gICAgY3Vyc29yOiBlLXJlc2l6ZTtcbn1cblxuLmZjLXJ0bCAuZmMtZGF5LWdyaWQtZXZlbnQgLmZjLXJlc2l6ZXIge1xuICAgIGxlZnQ6IC0zcHg7XG4gICAgY3Vyc29yOiB3LXJlc2l6ZTtcbn1cblxuXG4vKiBFdmVudCBMaW1pdGluZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBcIm1vcmVcIiBsaW5rIHRoYXQgcmVwcmVzZW50cyBoaWRkZW4gZXZlbnRzICovXG5cbmEuZmMtbW9yZSB7XG4gICAgbWFyZ2luOiAxcHggM3B4O1xuICAgIGZvbnQtc2l6ZTogLjg1ZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuYS5mYy1tb3JlOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmZjLWxpbWl0ZWQgeyAvKiByb3dzIGFuZCBjZWxscyB0aGF0IGFyZSBoaWRkZW4gYmVjYXVzZSBvZiBhIFwibW9yZVwiIGxpbmsgKi9cbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBwb3BvdmVyIHRoYXQgYXBwZWFycyB3aGVuIFwibW9yZVwiIGxpbmsgaXMgY2xpY2tlZCAqL1xuXG4uZmMtZGF5LWdyaWQgLmZjLXJvdyB7XG4gICAgei1pbmRleDogMTsgLyogbWFrZSB0aGUgXCJtb3JlXCIgcG9wb3ZlciBvbmUgaGlnaGVyIHRoYW4gdGhpcyAqL1xufVxuXG4uZmMtbW9yZS1wb3BvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIHdpZHRoOiAyMjBweDtcbn1cblxuLmZjLW1vcmUtcG9wb3ZlciAuZmMtZXZlbnQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAxMHB4O1xufVxuXG4vKiBUb29sYmFyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5mYy10b29sYmFyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuXG4gICAgLmZjLWxlZnQge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAuZmMtcmlnaHQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuXG4gICAgLmZjLWNlbnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBsaW5lLWhlaWdodDogMjlweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICAvKiBidXR0b24gbGF5ZXJpbmcgKGZvciBib3JkZXIgcHJlY2VkZW5jZSkgKi9cblxuICAgIGJ1dHRvbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuZmMtc3RhdGUtaG92ZXIsXG4gICAgLnVpLXN0YXRlLWhvdmVyIHtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gICAgICAgIFxuICAgIC5mYy1zdGF0ZS1kb3duIHtcbiAgICAgICAgei1pbmRleDogMztcbiAgICB9XG5cbiAgICAuZmMtc3RhdGUtYWN0aXZlLFxuICAgIC51aS1zdGF0ZS1hY3RpdmUge1xuICAgICAgICB6LWluZGV4OiA0O1xuICAgIH1cblxuICAgIGJ1dHRvbjpmb2N1cyB7XG4gICAgICAgIHotaW5kZXg6IDU7XG4gICAgfVxufVxuXG4vKiB0aGUgdGhpbmdzIHdpdGhpbiBlYWNoIGxlZnQvcmlnaHQvY2VudGVyIHNlY3Rpb24gKi9cbi5mYyAuZmMtdG9vbGJhciA+ICogPiAqIHsgLyogZXh0cmEgcHJlY2VkZW5jZSB0byBvdmVycmlkZSBidXR0b24gYm9yZGVyIG1hcmdpbnMgKi9cbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogLjc1ZW07XG59XG5cbi8qIHRoZSBmaXJzdCB0aGluZyB3aXRoaW4gZWFjaCBsZWZ0L2NlbnRlci9yaWdodCBzZWN0aW9uICovXG4uZmMgLmZjLXRvb2xiYXIgPiAqID4gOmZpcnN0LWNoaWxkIHsgLyogZXh0cmEgcHJlY2VkZW5jZSB0byBvdmVycmlkZSBidXR0b24gYm9yZGVyIG1hcmdpbnMgKi9cbiAgICBtYXJnaW4tbGVmdDogMDtcbn1cblxuXG4vKiBWaWV3IFN0cnVjdHVyZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiB1bmRvIHR3aXR0ZXIgYm9vdHN0cmFwJ3MgYm94LXNpemluZyBydWxlcy4gbm9ybWFsaXplcyBwb3NpdGlvbmluZyB0ZWNobmlxdWVzICovXG4vKiBkb24ndCBkbyB0aGlzIGZvciB0aGUgdG9vbGJhciBiZWNhdXNlIHdlJ2xsIHdhbnQgYm9vdHN0cmFwIHRvIHN0eWxlIHRob3NlIGJ1dHRvbnMgYXMgc29tZSBwdCAqL1xuLmZjLXZpZXctY29udGFpbmVyICosXG4uZmMtdmlldy1jb250YWluZXIgKjpiZWZvcmUsXG4uZmMtdmlldy1jb250YWluZXIgKjphZnRlciB7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbi5mYy12aWV3LCAvKiBzY29wZSBwb3NpdGlvbmluZyBhbmQgei1pbmRleCdzIGZvciBldmVyeXRoaW5nIHdpdGhpbiB0aGUgdmlldyAqL1xuLmZjLXZpZXcgPiB0YWJsZSB7IC8qIHNvIGRyYWdnZWQgZWxlbWVudHMgY2FuIGJlIGFib3ZlIHRoZSB2aWV3J3MgbWFpbiBlbGVtZW50ICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi8qIEJhc2ljVmlld1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBkYXkgcm93IHN0cnVjdHVyZSAqL1xuXG4uZmMtYmFzaWNXZWVrLXZpZXcgLmZjLWNvbnRlbnQtc2tlbGV0b24sXG4uZmMtYmFzaWNEYXktdmlldyAuZmMtY29udGVudC1za2VsZXRvbiB7XG4gICAgLyogd2UgYXJlIHN1cmUgdGhlcmUgYXJlIG5vIGRheSBudW1iZXJzIGluIHRoZXNlIHZpZXdzLCBzby4uLiAqL1xuICAgIHBhZGRpbmctdG9wOiAxcHg7IC8qIGFkZCBhIHBpeGVsIHRvIG1ha2Ugc3VyZSB0aGVyZSBhcmUgMnB4IHBhZGRpbmcgYWJvdmUgZXZlbnRzICovXG4gICAgcGFkZGluZy1ib3R0b206IDFlbTsgLyogZW5zdXJlIGEgc3BhY2UgYXQgYm90dG9tIG9mIGNlbGwgZm9yIHVzZXIgc2VsZWN0aW5nL2NsaWNraW5nICovXG59XG5cbi5mYy1iYXNpYy12aWV3IHRib2R5IC5mYy1yb3cge1xuICAgIG1pbi1oZWlnaHQ6IDRlbTsgLyogZW5zdXJlIHRoYXQgYWxsIHJvd3MgYXJlIGF0IGxlYXN0IHRoaXMgdGFsbCAqL1xufVxuXG4vKiBhIFwicmlnaWRcIiByb3cgd2lsbCB0YWtlIHVwIGEgY29uc3RhbnQgYW1vdW50IG9mIGhlaWdodCBiZWNhdXNlIGNvbnRlbnQtc2tlbGV0b24gaXMgYWJzb2x1dGUgKi9cblxuLmZjLXJvdy5mYy1yaWdpZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmZjLXJvdy5mYy1yaWdpZCAuZmMtY29udGVudC1za2VsZXRvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG4vKiB3ZWVrIGFuZCBkYXkgbnVtYmVyIHN0eWxpbmcgKi9cblxuLmZjLWJhc2ljLXZpZXcgLmZjLXdlZWstbnVtYmVyLFxuLmZjLWJhc2ljLXZpZXcgLmZjLWRheS1udW1iZXIge1xuICAgIHBhZGRpbmc6IDAgMnB4O1xufVxuXG4uZmMtYmFzaWMtdmlldyB0ZC5mYy13ZWVrLW51bWJlciBzcGFuLFxuLmZjLWJhc2ljLXZpZXcgdGQuZmMtZGF5LW51bWJlciB7XG4gICAgcGFkZGluZy10b3A6IDJweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnB4O1xufVxuXG4uZmMtYmFzaWMtdmlldyAuZmMtd2Vlay1udW1iZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmZjLWJhc2ljLXZpZXcgLmZjLXdlZWstbnVtYmVyIHNwYW4ge1xuICAgIC8qIHdvcmsgYXJvdW5kIHRoZSB3YXkgd2UgZG8gY29sdW1uIHJlc2l6aW5nIGFuZCBlbnN1cmUgYSBtaW5pbXVtIHdpZHRoICovXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1pbi13aWR0aDogMS4yNWVtO1xufVxuXG4uZmMtbHRyIC5mYy1iYXNpYy12aWV3IC5mYy1kYXktbnVtYmVyIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmZjLXJ0bCAuZmMtYmFzaWMtdmlldyAuZmMtZGF5LW51bWJlciB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmZjLWRheS1udW1iZXIuZmMtb3RoZXItbW9udGgge1xuICAgIG9wYWNpdHk6IDAuMztcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MzApOyAvKiBmb3IgSUUgKi9cbiAgICAvKiBvcGFjaXR5IHdpdGggc21hbGwgZm9udCBjYW4gc29tZXRpbWVzIGxvb2sgdG9vIGZhZGVkXG4gICAgICAgbWlnaHQgd2FudCB0byBzZXQgdGhlICdjb2xvcicgcHJvcGVydHkgaW5zdGVhZFxuICAgICAgIG1ha2luZyBkYXktbnVtYmVycyBib2xkIGFsc28gZml4ZXMgdGhlIHByb2JsZW0gKi9cbn1cblxuLyogQWdlbmRhVmlldyBhbGwtZGF5IGFyZWFcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmZjLWFnZW5kYS12aWV3IC5mYy1kYXktZ3JpZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7IC8qIHNvIHRoZSBcIm1vcmUuLlwiIHBvcG92ZXIgd2lsbCBiZSBvdmVyIHRoZSB0aW1lIGdyaWQgKi9cbn1cblxuLmZjLWFnZW5kYS12aWV3IC5mYy1kYXktZ3JpZCAuZmMtcm93IHtcbiAgICBtaW4taGVpZ2h0OiAzZW07IC8qIGFsbC1kYXkgc2VjdGlvbiB3aWxsIG5ldmVyIGdldCBzaG9ydGVyIHRoYW4gdGhpcyAqL1xufVxuXG4uZmMtYWdlbmRhLXZpZXcgLmZjLWRheS1ncmlkIC5mYy1yb3cgLmZjLWNvbnRlbnQtc2tlbGV0b24ge1xuICAgIHBhZGRpbmctdG9wOiAxcHg7IC8qIGFkZCBhIHBpeGVsIHRvIG1ha2Ugc3VyZSB0aGVyZSBhcmUgMnB4IHBhZGRpbmcgYWJvdmUgZXZlbnRzICovXG4gICAgcGFkZGluZy1ib3R0b206IDFlbTsgLyogZ2l2ZSBzcGFjZSB1bmRlcm5lYXRoIGV2ZW50cyBmb3IgY2xpY2tpbmcvc2VsZWN0aW5nIGRheXMgKi9cbn1cblxuXG4vKiBUaW1lR3JpZCBheGlzIHJ1bm5pbmcgZG93biB0aGUgc2lkZSAoZm9yIGJvdGggdGhlIGFsbC1kYXkgYXJlYSBhbmQgdGhlIHNsb3QgYXJlYSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmZjIC5mYy1heGlzIHsgLyogLmZjIHRvIG92ZXJjb21lIGRlZmF1bHQgY2VsbCBzdHlsZXMgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHBhZGRpbmc6IDAgNHB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5mYy1sdHIgLmZjLWF4aXMge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uZmMtcnRsIC5mYy1heGlzIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udWktd2lkZ2V0IHRkLmZjLWF4aXMge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IC8qIG92ZXJjb21lIGpxdWkgdGhlbWUgbWFraW5nIGl0IGJvbGQgKi9cbn1cblxuXG4vKiBUaW1lR3JpZCBTdHJ1Y3R1cmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmZjLXRpbWUtZ3JpZC1jb250YWluZXIsIC8qIHNvIHNjcm9sbCBjb250YWluZXIncyB6LWluZGV4IGlzIGJlbG93IGFsbC1kYXkgKi9cbi5mYy10aW1lLWdyaWQgeyAvKiBzbyBzbGF0cy9iZy9jb250ZW50L2V0YyBwb3NpdGlvbnMgZ2V0IHNjb3BlZCB3aXRoaW4gaGVyZSAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xufVxuXG4uZmMtdGltZS1ncmlkIHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlOyAvKiBzbyBpZiBoZWlnaHQgc2V0dGluZyBpcyAnYXV0bycsIC5mYy1iZyBzdHJldGNoZXMgdG8gZmlsbCBoZWlnaHQgKi9cbn1cblxuLmZjLXRpbWUtZ3JpZCB0YWJsZSB7IC8qIGRvbid0IHB1dCBvdXRlciBib3JkZXJzIG9uIHNsYXRzL2JnL2NvbnRlbnQvZXRjICovXG4gICAgYm9yZGVyOiAwIGhpZGRlbiB0cmFuc3BhcmVudDtcbn1cblxuLmZjLXRpbWUtZ3JpZCA+IC5mYy1iZyB7XG4gICAgei1pbmRleDogMTtcbn1cblxuLmZjLXRpbWUtZ3JpZCAuZmMtc2xhdHMsXG4uZmMtdGltZS1ncmlkID4gaHIgeyAvKiB0aGUgPGhyPiBBZ2VuZGFWaWV3IGluamVjdHMgd2hlbiBncmlkIGlzIHNob3J0ZXIgdGhhbiBzY3JvbGxlciAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xufVxuXG4uZmMtdGltZS1ncmlkIC5mYy1oaWdobGlnaHQtc2tlbGV0b24ge1xuICAgIHotaW5kZXg6IDM7XG59XG5cbi5mYy10aW1lLWdyaWQgLmZjLWNvbnRlbnQtc2tlbGV0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA0O1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG4uZmMtdGltZS1ncmlkID4gLmZjLWhlbHBlci1za2VsZXRvbiB7XG4gICAgei1pbmRleDogNTtcbn1cblxuXG4vKiBUaW1lR3JpZCBTbGF0cyAobGluZXMgdGhhdCBydW4gaG9yaXpvbnRhbGx5KVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uZmMtc2xhdHMgdGQge1xuICAgIGhlaWdodDogMS41ZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMDsgLyogZWFjaCBjZWxsIGlzIHJlc3BvbnNpYmxlIGZvciBpdHMgdG9wIGJvcmRlciAqL1xufVxuXG4uZmMtc2xhdHMgLmZjLW1pbm9yIHRkIHtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBkb3R0ZWQ7XG59XG5cbi5mYy1zbGF0cyAudWktd2lkZ2V0LWNvbnRlbnQgeyAvKiBmb3IganF1aSB0aGVtZSAqL1xuICAgIGJhY2tncm91bmQ6IG5vbmU7IC8qIHNlZSB0aHJvdWdoIHRvIGZjLWJnICovXG59XG5cblxuLyogVGltZUdyaWQgSGlnaGxpZ2h0aW5nIFNsb3RzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5mYy10aW1lLWdyaWQgLmZjLWhpZ2hsaWdodC1jb250YWluZXIgeyAvKiBhIGRpdiB3aXRoaW4gYSBjZWxsIHdpdGhpbiB0aGUgZmMtaGlnaGxpZ2h0LXNrZWxldG9uICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvKiBzY29wZXMgdGhlIGxlZnQvcmlnaHQgb2YgdGhlIGZjLWhpZ2hsaWdodCB0byBiZSBpbiB0aGUgY29sdW1uICovXG59XG5cbi5mYy10aW1lLWdyaWQgLmZjLWhpZ2hsaWdodCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgLyogdG9wIGFuZCBib3R0b20gd2lsbCBiZSBpbiBieSBKUyAqL1xufVxuXG5cbi8qIFRpbWVHcmlkIEV2ZW50IENvbnRhaW5tZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5mYy10aW1lLWdyaWQgLmZjLWV2ZW50LWNvbnRhaW5lciB7IC8qIGEgZGl2IHdpdGhpbiBhIGNlbGwgd2l0aGluIHRoZSBmYy1jb250ZW50LXNrZWxldG9uICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZmMtbHRyIC5mYy10aW1lLWdyaWQgLmZjLWV2ZW50LWNvbnRhaW5lciB7IC8qIHNwYWNlIG9uIHRoZSBzaWRlcyBvZiBldmVudHMgZm9yIExUUiAoZGVmYXVsdCkgKi9cbiAgICBtYXJnaW46IDAgMi41JSAwIDJweDtcbn1cblxuLmZjLXJ0bCAuZmMtdGltZS1ncmlkIC5mYy1ldmVudC1jb250YWluZXIgeyAvKiBzcGFjZSBvbiB0aGUgc2lkZXMgb2YgZXZlbnRzIGZvciBSVEwgKi9cbiAgICBtYXJnaW46IDAgMnB4IDAgMi41JTtcbn1cblxuLmZjLXRpbWUtZ3JpZCAuZmMtZXZlbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxOyAvKiBzY29wZSBpbm5lciB6LWluZGV4J3MgKi9cbn1cblxuXG4vKiBUaW1lR3JpZCBFdmVudCBTdHlsaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5XZSB1c2UgdGhlIGZ1bGwgXCJmYy10aW1lLWdyaWQtZXZlbnRcIiBjbGFzcyBpbnN0ZWFkIG9mIHVzaW5nIGRlc2NlbmRhbnRzIGJlY2F1c2UgdGhlIGV2ZW50IHdvbid0XG5iZSBhIGRlc2NlbmRhbnQgb2YgdGhlIGdyaWQgd2hlbiBpdCBpcyBiZWluZyBkcmFnZ2VkLlxuKi9cblxuLmZjLXRpbWUtZ3JpZC1ldmVudC5mYy1ub3Qtc3RhcnQgeyAvKiBldmVudHMgdGhhdCBhcmUgY29udGludWluZyBmcm9tIGFub3RoZXIgZGF5ICovXG4gICAgLyogcmVwbGFjZSBzcGFjZSBtYWRlIGJ5IHRoZSB0b3AgYm9yZGVyIHdpdGggcGFkZGluZyAqL1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgcGFkZGluZy10b3A6IDFweDtcblxuICAgIC8qIHJlbW92ZSB0b3Agcm91bmRlZCBjb3JuZXJzICovXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLmZjLXRpbWUtZ3JpZC1ldmVudC5mYy1ub3QtZW5kIHtcbiAgICAvKiByZXBsYWNlIHNwYWNlIG1hZGUgYnkgdGhlIHRvcCBib3JkZXIgd2l0aCBwYWRkaW5nICovXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXB4O1xuXG4gICAgLyogcmVtb3ZlIGJvdHRvbSByb3VuZGVkIGNvcm5lcnMgKi9cbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uZmMtdGltZS1ncmlkLWV2ZW50IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyAvKiBkb24ndCBsZXQgdGhlIGJnIGZsb3cgb3ZlciByb3VuZGVkIGNvcm5lcnMgKi9cbn1cblxuLmZjLXRpbWUtZ3JpZC1ldmVudCA+IC5mYy1jb250ZW50IHsgLyogY29udGFpbnMgdGhlIHRpbWUgYW5kIHRpdGxlLCBidXQgbm8gYmcgYW5kIHJlc2l6ZXIgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjsgLyogYWJvdmUgdGhlIGJnICovXG59XG5cbi5mYy10aW1lLWdyaWQtZXZlbnQgLmZjLXRpbWUsXG4uZmMtdGltZS1ncmlkLWV2ZW50IC5mYy10aXRsZSB7XG4gICAgcGFkZGluZzogMCAxcHg7XG59XG5cbi5mYy10aW1lLWdyaWQtZXZlbnQgLmZjLXRpbWUge1xuICAgIGZvbnQtc2l6ZTogLjg1ZW07XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmZjLXRpbWUtZ3JpZC1ldmVudCAuZmMtYmcge1xuICAgIHotaW5kZXg6IDE7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBvcGFjaXR5OiAuMjU7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTI1KTsgLyogZm9yIElFICovXG59XG5cbi8qIHNob3J0IG1vZGUsIHdoZXJlIHRpbWUgYW5kIHRpdGxlIGFyZSBvbiB0aGUgc2FtZSBsaW5lICovXG5cbi5mYy10aW1lLWdyaWQtZXZlbnQuZmMtc2hvcnQgLmZjLWNvbnRlbnQge1xuICAgIC8qIGRvbid0IHdyYXAgdG8gc2Vjb25kIGxpbmUgKG5vdyB0aGF0IGNvbnRlbnRzIHdpbGwgYmUgaW5saW5lKSAqL1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5mYy10aW1lLWdyaWQtZXZlbnQuZmMtc2hvcnQgLmZjLXRpbWUsXG4uZmMtdGltZS1ncmlkLWV2ZW50LmZjLXNob3J0IC5mYy10aXRsZSB7XG4gICAgLyogcHV0IHRoZSB0aW1lIGFuZCB0aXRsZSBvbiB0aGUgc2FtZSBsaW5lICovXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi5mYy10aW1lLWdyaWQtZXZlbnQuZmMtc2hvcnQgLmZjLXRpbWUgc3BhbiB7XG4gICAgZGlzcGxheTogbm9uZTsgLyogZG9uJ3QgZGlzcGxheSB0aGUgZnVsbCB0aW1lIHRleHQuLi4gKi9cbn1cblxuLmZjLXRpbWUtZ3JpZC1ldmVudC5mYy1zaG9ydCAuZmMtdGltZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1zdGFydCk7IC8qIC4uLmluc3RlYWQsIGRpc3BsYXkgb25seSB0aGUgc3RhcnQgdGltZSAqL1xufVxuXG4uZmMtdGltZS1ncmlkLWV2ZW50LmZjLXNob3J0IC5mYy10aW1lOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcMDAwQTAtXFwwMDBBMFwiOyAvKiBzZXBlcmF0ZSB3aXRoIGEgZGFzaCwgd3JhcHBlZCBpbiBuYnNwJ3MgKi9cbn1cblxuLmZjLXRpbWUtZ3JpZC1ldmVudC5mYy1zaG9ydCAuZmMtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogLjg1ZW07IC8qIG1ha2UgdGhlIHRpdGxlIHRleHQgdGhlIHNhbWUgc2l6ZSBhcyB0aGUgdGltZSAqL1xuICAgIHBhZGRpbmc6IDA7IC8qIHVuZG8gcGFkZGluZyBmcm9tIGFib3ZlICovXG59XG5cbi8qIHJlc2l6ZXIgKi9cblxuLmZjLXRpbWUtZ3JpZC1ldmVudCAuZmMtcmVzaXplciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDM7IC8qIGFib3ZlIGNvbnRlbnQgKi9cbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IDhweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGxpbmUtaGVpZ2h0OiA4cHg7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcy1yZXNpemU7XG59XG5cbi5mYy10aW1lLWdyaWQtZXZlbnQgLmZjLXJlc2l6ZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiPVwiO1xufVxuIiwiJHd6LWNvbG9yLWRlZmF1bHQ6ICNFNkU2RTY7XG4kd3otY29sb3ItY3VycmVudDogIzgwODA4MDtcbiR3ei1jb2xvci1kb25lOiAgICAkYnJhbmQtc3VjY2VzcztcbiR3ei1jb2xvci1lZGl0aW5nOiAkYnJhbmQtcHJpbWFyeTtcblxuLnVpLWFuZ3VsYXItd2l6YXJkIHtcbiAgICAuc3RlcHMge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTFlMWUxO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzZW07XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWg0O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjJlbSAxZW07XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMWUxZTE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudWktd2l6YXJkLWNvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xuICAgICAgICBwYWRkaW5nOiAzZW0gMWVtO1xuICAgIH1cblxuICAgIC51aS13aXphcmQtYWN0aW9ucyB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMS4yZW0gMWVtO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMWUxZTE7XG4gICAgfVxufVxuXG4uc3RlcHMtaW5kaWNhdG9yIHtcbiAgICAvKiAtLS0tIHN0ZXBzIHF1YW50aXR5IC0tLS0gKi9cblxuXG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDIwcHggMCAwIDA7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgXG5cblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHd6LWNvbG9yLWRlZmF1bHQ7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgIH1cblxuICAgICYuc3RlcHMtMjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiBjYWxjKDEwMCUgLyAyIC8gMik7XG4gICAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgLyAyIC8gMik7XG4gICAgfVxuXG4gICAgJi5zdGVwcy0zOmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAvIDMgLyAyKTtcbiAgICAgICAgcmlnaHQ6IGNhbGMoMTAwJSAvIDMgLyAyKTtcbiAgICB9XG5cbiAgICAmLnN0ZXBzLTQ6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogY2FsYygxMDAlIC8gNCAvIDIpO1xuICAgICAgICByaWdodDogY2FsYygxMDAlIC8gNCAvIDIpO1xuICAgIH1cblxuICAgICYuc3RlcHMtNTpiZWZvcmUge1xuICAgICAgICBsZWZ0OiBjYWxjKDEwMCUgLyA1IC8gMik7XG4gICAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgLyA1IC8gMik7XG4gICAgfVxuXG4gICAgJi5zdGVwcy02OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAvIDYgLyAyKTtcbiAgICAgICAgcmlnaHQ6IGNhbGMoMTAwJSAvIDYgLyAyKTtcbiAgICB9XG5cbiAgICAmLnN0ZXBzLTc6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogY2FsYygxMDAlIC8gNyAvIDIpO1xuICAgICAgICByaWdodDogY2FsYygxMDAlIC8gNyAvIDIpO1xuICAgIH1cblxuICAgICYuc3RlcHMtODpiZWZvcmUge1xuICAgICAgICBsZWZ0OiBjYWxjKDEwMCUgLyA4IC8gMik7XG4gICAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgLyA4IC8gMik7XG4gICAgfVxuXG4gICAgJi5zdGVwcy05OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAvIDkgLyAyKTtcbiAgICAgICAgcmlnaHQ6IGNhbGMoMTAwJSAvIDkgLyAyKTtcbiAgICB9XG5cbiAgICAmLnN0ZXBzLTEwOmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAvIDEwIC8gMik7XG4gICAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgLyAxMCAvIDIpO1xuICAgIH1cblxuICAgIC8qIC0tLSBodHRwOi8vd3d3LnBhdWxpcmlzaC5jb20vMjAxMi9ib3gtc2l6aW5nLWJvcmRlci1ib3gtZnR3LyAtLS0tICovXG4gICAgKiB7IFxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDsgXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxuXG5cbiAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHd6LWNvbG9yLWN1cnJlbnQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjI1cztcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IC03cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogY2FsYyg1MCUgLSA3cHgpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3ei1jb2xvci1kZWZhdWx0O1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuMjVzO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogZGFya2VuKCR3ei1jb2xvci1jdXJyZW50LCAyMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGVwcy0yICBsaSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyKTtcbiAgICB9XG5cbiAgICAmLnN0ZXBzLTMgIGxpIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpOyAgIFxuICAgIH1cblxuICAgICYuc3RlcHMtNCAgbGkge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gNCk7XG4gICAgfVxuXG4gICAgJi5zdGVwcy01ICBsaSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyA1KTtcbiAgICB9XG5cbiAgICAmLnN0ZXBzLTYgIGxpIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDYpO1xuICAgIH1cblxuICAgICYuc3RlcHMtNyAgbGkge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gNyk7XG4gICAgfVxuXG4gICAgJi5zdGVwcy04ICBsaSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyA4KTtcbiAgICB9XG5cbiAgICAmLnN0ZXBzLTkgIGxpIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDkpO1xuICAgIH1cblxuICAgICYuc3RlcHMtMTAgbGkgIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDEwKTtcbiAgICB9XG5cbiAgICAmLnN0ZXBzLTExIGxpICB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAxMSk7XG4gICAgfVxuXG4gICAgbGkuZGVmYXVsdCB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgICAgIGE6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICR3ei1jb2xvci1jdXJyZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbGkuY3VycmVudCxcbiAgICBsaS5lZGl0aW5nIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgbGkuY3VycmVudCBhOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3ei1jb2xvci1jdXJyZW50O1xuICAgIH1cblxuICAgIGxpLmRvbmUgYTpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd3otY29sb3ItZG9uZTtcbiAgICB9XG5cbiAgICBsaS5lZGl0aW5nIGE6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHd6LWNvbG9yLWVkaXRpbmc7XG4gICAgfVxufVxuIiwiXG5odG1sLFxuYm9keSxcbiNhcHAtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogMTAwJTsgLy8gaW1wb3J0YW50IVxuICAgIGhlaWdodDogMTAwJTsgLy8gaW1wb3J0YW50IVxufVxuXG4vLyBkZWZhdWx0XG4uYXBwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogMTAwJTsgLy8gaW1wb3J0YW50IVxuICAgIGhlaWdodDogMTAwJTsgLy8gaW1wb3J0YW50IVxuXG4gICAgPiAuaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgICAgICYuaGVhZGVyLWZpeGVkIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6ICR6aW5kZXgtbmF2YmFyLWZpeGVkO1xuXG4gICAgICAgICAgICAmICsgLm1haW4tY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogJGhlYWRlcl9oZWlnaHQgKiAyO1xuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiRzY3JlZW4tc20pIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6ICRoZWFkZXJfaGVpZ2h0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLnRvcC1oZWFkZXIge31cbiAgICB9XG5cbiAgICA+IC5tYWluLWNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWluLWhlaWdodDogMTAwJTsgLy8gaW1wb3J0YW50IVxuICAgICAgICAmOmJlZm9yZSB7IC8vIGNvbnRlbnQgY29udGFpbmVyIGJhY2tncm91bmQgZm9yIGJveGVkIGxheW91dFxuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IC0yOyAvLyBzbyB0aGF0IGl0IGlzIGJlbmVhdGggc2lkZWJhclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogaW5oZXJpdDsgLy9cbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluX2NvbnRhaW5lcl9iZztcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAycHggcmdiYSgwLDAsMCwuMik7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5uYXYtdmVydGljYWwge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IC5uYXYtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB6LWluZGV4OiAxMTsgLy8gc2hvdWxkIGJlIGhpZ2h0ZXIgdGhhbiB0b3AgaGVhZGVyXG4gICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogMjIwcHg7XG4gICAgICAgICAgICAvLyBib3JkZXItd2lkdGg6IDAgMXB4IDAgMDtcbiAgICAgICAgICAgIC8vIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgICAgICAvLyBib3JkZXItY29sb3I6IGRhcmtlbigkc2lkZWJhcl9iZywgMTAlKTtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiRzY3JlZW4tc20pIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTsgLy8gc28gdGhhdCBpdCBpcyBiZW5lYXRoIHRvcCBoZWFkZXJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIGJvcmRlci13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICBib3JkZXItc3R5bGU6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5uYXYtZml4ZWQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgICAgICB0b3A6ICRoZWFkZXJfaGVpZ2h0ICogMjtcbiAgICAgICAgICAgICAgICBib3R0b206IDBweDtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDokc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogJGhlYWRlcl9oZWlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogNzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6JHNjcmVlbi1tZCkge1xuICAgICAgICAgICAgICAgICAgICB0b3A6ICRoZWFkZXJfaGVpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDUwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG5cbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAvLyBAaW5jbHVkZSB0cmFuc2l0aW9uKG5vbmUpO1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6JHNjcmVlbi1zbSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG4iLCJcbi8vIExheW91dFxuJGJveGVkX2xheW91dF93aWR0aDogICAgMTIwMHB4O1xuJHNjcmVlbi1zbS1tYXg6ICAgICAgICAgKCRzY3JlZW4tc20gLSAxKTtcblxuLy8gVG9wIGhlYWRlclxuJGhlYWRlcl9oZWlnaHQ6ICAgICAgICAgICAgIDUwcHg7ICAgICAgICAgICAvLyoqIFxuJGhlYWRlcl9saW5lX2hlaWdodDogICAgICAgIDIwcHg7ICAgICAgICAgICAvLyoqIGxpbmUtaGVpZ2h0IG9mIHRoZSBoZWFkZXIgdGV4dFxuJGhlYWRlcl9jb250YWluZXJfYmc6ICAgICAgICRkYXJrO1xuJGhlYWRlci1ib3JkZXI6ICAgICAgICAgICAgIHJnYmEoMjU1LDI1NSwyNTUsLjA2KTtcbiRoZWFkZXJfbGlua19jb2xvcjogICAgICAgICAjYWFhO1xuXG4vLyBNYWluIGNvbnRhaW5lciwgbGlrZSBib2R5X2JnXG4kbWFpbl9jb250YWluZXJfYmc6ICAgICAgICAgI2VhZWFlYTtcblxuXG5cbi8vID0gU2lkZWJhciwgZGVmYXVsdCBpcyB2ZXJ0aWNhbCA9XG4kbmF2LXRyYW5zaXRpb25fZHVyYXRpb246IC4yNXM7XG5cbi8vIExpZ2h0IGJhY2tncm91bmQgc2lkZWJhclxuJGxpZ2h0X2JnX2xpbmtfaG92ZXJfYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50OyAvLyNmNmY2ZjY7XG4kbGlnaHRfYmdfbGlua19ob3Zlcl9jb2xvcjogICAgICAgICAgJHRleHQtY29sb3I7XG4kbGlnaHRfYmdfbGlua19hY3RpdmVfYmc6ICAgICAgICAgICAgI2Y2ZjZmNjtcbiRsaWdodF9iZ19saW5rX2FjdGl2ZV9jb2xvcjogICAgICAgICAkdGV4dC1jb2xvcjtcbiRsaWdodF9iZ19saW5rX29wZW5fYmc6ICAgICAgICAgICAgICAkbGlnaHRfYmdfbGlua19hY3RpdmVfYmc7ICAgICAgLy8gdmVydGljYWwgbmF2IG9ubHlcbiRsaWdodF9iZ19saW5rX29wZW5fY29sb3I6ICAgICAgICAgICAkbGlnaHRfYmdfbGlua19hY3RpdmVfY29sb3I7ICAgLy8gdmVydGljYWwgbmF2IG9ubHlcblxuJGxpZ2h0X2JnX3N1Yl9uYXZfYmc6ICAgICAgICAgICAgICAgICRsaWdodF9iZ19saW5rX2FjdGl2ZV9iZztcbiRsaWdodF9iZ19zdWJfbGlua19hY3RpdmVfY29sb3I6ICAgICAkYnJhbmQtcHJpbWFyeTtcblxuJGxpZ2h0X2JnX3N1YjJfbmF2X2JnOiAgICAgICAgICAgICAgICNlZWU7XG4kbGlnaHRfYmdfc3ViMl9saW5rX2FjdGl2ZV9jb2xvcjogICAgJGJyYW5kLXByaW1hcnk7XG5cbiRsaWdodF9iZ19zdWIzX25hdl9iZzogICAgICAgICAgICAgICAjZGRkO1xuXG5cbi8vIERhcmsgYmFja2dyb3VuZCBzaWRlYmFyXG4kZGFya19iZ19saW5rX2hvdmVyX2JnOiAgICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XG4kZGFya19iZ19saW5rX2hvdmVyX2NvbG9yOiAgICAgICAgICAgcmdiYSgyNTUsMjU1LDI1NSwuOCk7XG4kZGFya19iZ19saW5rX2FjdGl2ZV9iZzogICAgICAgICAgICAgZGFya2VuKCRkYXJrLCAzJSk7XG4kZGFya19iZ19saW5rX2FjdGl2ZV9jb2xvcjogICAgICAgICAgcmdiYSgyNTUsMjU1LDI1NSwuOCk7XG4kZGFya19iZ19saW5rX29wZW5fYmc6ICAgICAgICAgICAgICAgJGRhcmtfYmdfbGlua19hY3RpdmVfYmc7ICAgICAgLy8gdmVydGljYWwgbmF2IG9ubHlcbiRkYXJrX2JnX2xpbmtfb3Blbl9jb2xvcjogICAgICAgICAgICAkZGFya19iZ19saW5rX2FjdGl2ZV9jb2xvcjsgICAvLyB2ZXJ0aWNhbCBuYXYgb25seVxuXG4kZGFya19iZ19zdWJfbmF2X2JnOiAgICAgICAgICAgICAgICAgJGRhcmtfYmdfbGlua19hY3RpdmVfYmc7XG4kZGFya19iZ19zdWJfbGlua19hY3RpdmVfY29sb3I6ICAgICAgJGRhcmtfYmdfbGlua19hY3RpdmVfY29sb3I7XG5cbiRkYXJrX2JnX3N1YjJfbmF2X2JnOiAgICAgICAgICAgICAgICBkYXJrZW4oJGRhcmtfYmdfc3ViX25hdl9iZywgNSUpO1xuJGRhcmtfYmdfc3ViMl9saW5rX2FjdGl2ZV9jb2xvcjogICAgICRicmFuZC1wcmltYXJ5O1xuXG4kZGFya19iZ19zdWIzX25hdl9iZzogICAgICAgICAgICAgICAgZGFya2VuKCRkYXJrX2JnX3N1YjJfbmF2X2JnLCA1JSk7XG4iLCIubGF5b3V0LWJveGVkIHtcbiAgICA+IC5oZWFkZXItY29udGFpbmVyIHtcbiAgICAgICAgLnRvcC1oZWFkZXIge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAkYm94ZWRfbGF5b3V0X3dpZHRoO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICA+IC5tYWluLWNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogJGJveGVkX2xheW91dF93aWR0aDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxufVxuIiwiI25hdi1jb250YWluZXIge1xuICAgIHVsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgID4gLm5hdi13cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAyNTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgYm9yZGVyOiAycHg7XG4gICAgfVxuXG4gICAgPiAubmF2LXdyYXBwZXItcGxhbnQge1xuICAgICAgICBib3R0b206IDBweDtcbiAgICB9XG59XG4vLyBMYXlvdXRcbi5uYXYtY29udGFpbmVyIHtcbiAgICAubmF2IHtcbiAgICAgICAgPiBsaSB7fVxuICAgICAgICAvLyBhbGwgc3ViIHVsXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4vLyBTdHlsZVxuLm5hdi1jb250YWluZXIge1xuICAgIC5pY29uLWhhcy11bCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIH1cbiAgICAvL1xuICAgIC5uYXYge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IC1ibGFja2JlcnJ5LXRvdWNoO1xuXG4gICAgICAgIC5uYXYtdGl0bGUge1xuICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDE1cHggMTBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICB9XG5cbiAgICAgICAgID4gbGkgPiBhID4gLm5hdi1pY29uLFxuICAgICAgICA+IGxpID4gYSA+IGkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAkbmF2LXRyYW5zaXRpb25fZHVyYXRpb24gZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAkbmF2LXRyYW5zaXRpb25fZHVyYXRpb24gZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICAgICY6YWN0aXZlLFxuICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gbGkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsICRuYXYtdHJhbnNpdGlvbl9kdXJhdGlvbiBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCA+IGEge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsICRuYXYtdHJhbnNpdGlvbl9kdXJhdGlvbiBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgICAgIC5iYWRnZSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiAuaWNvbi1oYXMtdWwge1xuICAgICAgICAgICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTlweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBzdWIgbWVudVxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaWNvbi1oYXMtdWwge1xuICAgICAgICAgICAgICAgIHRvcDogMTNweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTNweCAwIDEzcHggMjVweDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsICRuYXYtdHJhbnNpdGlvbl9kdXJhdGlvbiBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+IGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYuZmEtY2lyY2xlLFxuICAgICAgICAgICAgICAgICAgICAgICAgJi5mYS1jaXJjbGUtbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYuZmEtY2FyZXQtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogOXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPiAuYmFkZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIC5vbi1jYW52YXMge1xuICAgICAgICAjaGVhZGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDEyOyAvLyBzbyB0aGF0IGRyb3AgZG93biBpcyBvdmVyIG9uIG9mZi1jYW52YXMgbmF2XG4gICAgICAgIH1cblxuICAgICAgICAjbmF2LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIHRvcDogJGhlYWRlcl9oZWlnaHQgKiAyO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAubWFpbi1jb250YWluZXIge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICNjb250ZW50IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMjIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAuYXBwLm5hdi1jb2xsYXBzZWQtbWluIHtcblxuICAgICAgICAvLyBkZWZhdWx0XG4gICAgICAgIC5zbGltU2Nyb2xsRGl2IHtcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7IC8vIG92ZXJyaWRlcyBzbGltU2Nyb2xsIHBsdWdpblxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIC5zbGltU2Nyb2xsQmFyLFxuICAgICAgICAgICAgLnNsaW1TY3JvbGxSYWlsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAjbmF2LWNvbnRhaW5lciB7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgfVxuICAgICAgICAuY29udGVudC1jb250YWluZXIge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDYwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAjbmF2LXdyYXBwZXIge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAjbmF2IHtcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgICAgICAgICA+IHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA5O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIyMHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAxcHggMXB4IDNweCByZ2JhKDAsMCwwLC4yKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIGZpcnN0IGxldmVsIG1lbnVcbiAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMTVweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgID4gaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBvbmx5IGhpZGUgZm9yIGZpcnN0IGxldmVsXG4gICAgICAgICAgICAgICAgPiAuaWNvbi1oYXMtdWwge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXYtdGl0bGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgfVxufSIsIi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbiIsIi5uYXYtY29udGFpbmVyIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgJi5iZy13aGl0ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IC0xcHggMCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICAgICAgICB9XG4gICAgICAgIC5uYXYge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubmF2LXRpdGxlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRncmF5LWxpZ2h0ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0X2JnX2xpbmtfaG92ZXJfYmc7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0X2JnX2xpbmtfaG92ZXJfY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPiAuaWNvbi1oYXMtdWwsXG4gICAgICAgICAgICAgICAgICAgID4gLmljb24taGFzLXVsLWggeyBjb2xvcjogJGxpZ2h0X2JnX2xpbmtfaG92ZXJfY29sb3I7IH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0X2JnX2xpbmtfYWN0aXZlX2JnO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodF9iZ19saW5rX2FjdGl2ZV9jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICA+IC5pY29uLWhhcy11bCB7IGNvbG9yOiAkbGlnaHRfYmdfbGlua19hY3RpdmVfY29sb3I7IH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBvdmVycmlkZXMgQm9vdHN0cmFwIFxuICAgICAgICAgICAgICAgID4gYTpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodF9iZ19saW5rX2hvdmVyX2JnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gc3ViIG1lbnVcbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRfYmdfc3ViX25hdl9iZztcblxuICAgICAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodF9iZ19zdWIyX25hdl9iZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIHN1YjIgbWVudVxuICAgICAgICAgICAgdWwgdWwge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodF9iZ19zdWIyX25hdl9iZztcbiAgICAgICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRfYmdfc3ViM19uYXZfYmc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFZlcnRpY2FsIE5BViBvbmx5XG4gICAgICAgICYubmF2LXZlcnRpY2FsIHtcbiAgICAgICAgICAgIC5uYXYge1xuICAgICAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgICAgICAvLyBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLDAsMCwuMDYpO1xuICAgICAgICAgICAgICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRfYmdfbGlua19vcGVuX2JnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHRfYmdfbGlua19vcGVuX2NvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodF9iZ19saW5rX29wZW5fYmc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHRfYmdfbGlua19vcGVuX2NvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgID4gLmljb24taGFzLXVsLFxuICAgICAgICAgICAgICAgICAgICAgICAgPiAuaWNvbi1oYXMtdWwtaCB7IGNvbG9yOiAkbGlnaHRfYmdfbGlua19vcGVuX2NvbG9yOyB9ICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gICAgICAgIFxuICAgIH1cblxuICAgICYuYmctZGFyayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAtMXB4IDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgICAgICAgfVxuICAgICAgICAubmF2IHtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNjY2M7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubmF2LXRpdGxlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRpdmlkZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRkYXJrLCA1JSk7XG4gICAgICAgICAgICB9XG5cblxuICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFya19iZ19saW5rX2hvdmVyX2JnO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrX2JnX2xpbmtfaG92ZXJfY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPiAuaWNvbi1oYXMtdWwsXG4gICAgICAgICAgICAgICAgICAgID4gLmljb24taGFzLXVsLWggeyBjb2xvcjogJGRhcmtfYmdfbGlua19ob3Zlcl9jb2xvcjsgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFya19iZ19saW5rX2FjdGl2ZV9iZztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZGFya19iZ19saW5rX2FjdGl2ZV9jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICA+IC5pY29uLWhhcy11bCB7IGNvbG9yOiAkZGFya19iZ19saW5rX2FjdGl2ZV9jb2xvcjsgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBvdmVycmlkZXMgQm9vdHN0cmFwIFxuICAgICAgICAgICAgICAgID4gYTpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrX2JnX2xpbmtfaG92ZXJfYmc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBzdWIgbWVudVxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrX2JnX3N1Yl9uYXZfYmc7XG5cbiAgICAgICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgICAgICAgJi5vcGVuLFxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrX2JnX3N1YjJfbmF2X2JnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZGFya19iZ19saW5rX2FjdGl2ZV9jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gc3ViMiBtZW51XG4gICAgICAgICAgICB1bCB1bCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtfYmdfc3ViMl9uYXZfYmc7XG4gICAgICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgICAgICYub3BlbixcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFya19iZ19zdWIzX25hdl9iZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGRhcmtfYmdfbGlua19hY3RpdmVfY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gVmVydGljYWwgTkFWIG9ubHlcbiAgICAgICAgJi5uYXYtdmVydGljYWwge1xuICAgICAgICAgICAgLm5hdiB7XG4gICAgICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LCAwLjA1KTtcbiAgICAgICAgICAgICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtfYmdfbGlua19vcGVuX2JnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZGFya19iZ19saW5rX29wZW5fY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtfYmdfbGlua19vcGVuX2JnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGRhcmtfYmdfbGlua19vcGVuX2NvbG9yOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgPiAuaWNvbi1oYXMtdWwsXG4gICAgICAgICAgICAgICAgICAgICAgICA+IC5pY29uLWhhcy11bC1oIHsgY29sb3I6ICRkYXJrX2JnX2xpbmtfb3Blbl9jb2xvcjsgfSAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9ICBcblxuICAgIH1cblxufVxuXG4iLCJcclxuLmZvb3RlcntcclxuICBmb250LXNpemU6IDEwcHg7XHJcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDBweDtcclxuXHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcblxyXG4gIC5tYWluLWNvbnRhaW5lcntcclxuXHJcbiAgfVxyXG5cclxuICAuZm9vdGVye1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDBweDtcclxuICAgIG1hcmdpbi1yaWdodDogMHB4O1xyXG4gIH1cclxufVxyXG4iLCJcbi8vIFdoZW4gTmF2IGNvbGxhcHNlZFxuLmFwcC5uYXYtY29sbGFwc2VkLW1pbiB7XG4gICAgLnRvcC1oZWFkZXIge1xuICAgICAgICAubG9nbyB7XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4OyAvLyA1OSArIDEgKGJvcmRlcilcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxvZ28tdGV4dCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50b3AtbmF2IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDYwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vXG4uaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgLy8gaGVpZ2h0OiggJGhlYWRlcl9oZWlnaHQgKiAyKTtcbiAgICAvLyBAbWVkaWEgKG1pbi13aWR0aDokc2NyZWVuLXNtKSB7XG4gICAgLy8gICAgIGhlaWdodDogJGhlYWRlcl9oZWlnaHQ7XG4gICAgLy8gfVxuICAgIGJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsMCwwLC4xNSk7XG5cbiAgICA+IC50b3AtaGVhZGVyIHtcbiAgICAgICAgLy8gc2hhcmVkXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRoZWFkZXJfbGlua19jb2xvcjtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5oaWRkZW4tbW9iaWxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cykge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vXG4gICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAkaGVhZGVyX2hlaWdodDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGVyX2hlaWdodDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMjBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkaGVhZGVyLWJvcmRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxvZ28taWNvbiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgKyAubG9nby10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvL1xuICAgICAgICAubWVudS1idXR0b24ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6ICAoICRoZWFkZXJfaGVpZ2h0LzIgLSAxN3B4KTtcbiAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDQ2cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEycHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRicmFuZC1wcmltYXJ5LCAxMCUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaWNvbi1iYXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMnB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmljb24tYmFyICsgLmljb24tYmFyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vXG4gICAgICAgIC5hZG1pbi1vcHRpb25zIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDIwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuc2tpbi1vcHRpb25zIHtcbiAgICAgICAgICAgIC5wYW5lbC1ib2R5IHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDMzMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvL1xuICAgICAgICAuZHJvcGRvd24tbWVudS5wYW5lbCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAgICAgLnBhbmVsLWhlYWRpbmcsXG4gICAgICAgICAgICAucGFuZWwtZm9vdGVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tZWRpYSB7XG4gICAgICAgICAgICAgICAgLm1lZGlhLWJvZHkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3NXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgLy9cbiAgICAgICAgLnRvcC1uYXYge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6ICRoZWFkZXJfaGVpZ2h0O1xuICAgICAgICAgICAgcGFkZGluZzogJGhlYWRlcl9oZWlnaHQgMCAwO1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAyMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy9cbiAgICAgICAgICAgIC5uYXYtbGVmdCxcbiAgICAgICAgICAgIC5uYXYtcmlnaHQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogJGhlYWRlcl9saW5lX2hlaWdodDtcblxuICAgICAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgJi5uYXYtcHJvZmlsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6ICggJGhlYWRlcl9oZWlnaHQvMiAtIDE1cHggKSAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgLmhpZGRlbi14cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPiAudG9nZ2xlLW1pbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6JHNjcmVlbi1zbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPiAuYnRuLWdyb3VwID4gYSxcbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAkaGVhZGVyX2hlaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6ICggKCRoZWFkZXJfaGVpZ2h0IC0gJGhlYWRlcl9saW5lX2hlaWdodCkvMiApIDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDokc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogKCAoJGhlYWRlcl9oZWlnaHQgLSAkaGVhZGVyX2xpbmVfaGVpZ2h0KS8yICkgMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmJhZGdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDokc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGhlYWRlcl9saW5rX2NvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHVsLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgYTpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNraW47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5nbHlwaGljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuXG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlYXJjaC1ib3gge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTgwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogKCRoZWFkZXJfaGVpZ2h0LzIgLSAxN3B4KSAwO1xuXG4gICAgICAgICAgICAgICAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDAgNnB4IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvL1xuICAgICAgICAgICAgLm5hdi1sZWZ0IHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkaGVhZGVyLWJvcmRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAubmF2LXJpZ2h0IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5iYWRnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LnB1bGwtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy9cbiAgICAgICAgLmxhbmdzIHtcbiAgICAgICAgICAgIC5hY3RpdmUtZmxhZyB7XG4gICAgICAgICAgICAgICAgLmZsYWcge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxpc3QtbGFuZ3Mge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweCAyMHB4IDBweCAzMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIC5mbGFnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblxuICAgIH1cblxufVxuXG5cblxuXG4vL1xuLnNraW4tY2hlY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIHNwYW46aG92ZXIge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgc3BhbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgPiAub3ZlcmxheSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC4zKTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIHNwYW4ge1xuICAgICAgICA+IC5vdmVybGF5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi5za2luLWl0ZW0ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsMCwwLC4xKTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgPiBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgfVxuXG4gICAgLml0ZW0taGVhZGVyIHtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgIH1cbn1cblxuXG4vLyBIZWFkZXIgLSBDb2xvclxuLmhlYWRlci1jb250YWluZXIge1xuICAgIC8vIFRleHQgY29sb3IgaW4gZHJvcGRvd24gaXMgYWx3YXlzIHRoZSBzYW1lXG4gICAgLmRyb3Bkb3duIHtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYmctd2hpdGUge1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XG5cbiAgICAgICAgLmlucHV0LWdyb3VwLWFkZG9uLFxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJnLWRhcmsge1xuICAgICAgICBjb2xvcjogJGJyaWdodDtcblxuICAgICAgICAuaW5wdXQtZ3JvdXAtYWRkb24sXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRicmlnaHQ7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJnLXByaW1hcnksXG4gICAgJi5iZy1zdWNjZXNzLFxuICAgICYuYmctaW5mbyxcbiAgICAmLmJnLWluZm8tYWx0LFxuICAgICYuYmctd2FybmluZyxcbiAgICAmLmJnLWRhbmdlciB7XG4gICAgICAgIGNvbG9yOiAkYnJpZ2h0O1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYnJpZ2h0O1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQtZ3JvdXAtYWRkb24geyBjb2xvcjogJGdyYXktbGlnaHRlcjsgfVxuICAgICAgICA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogI2VhZWFlYTsgfVxuICAgICAgICA6LW1vei1wbGFjZWhvbGRlciB7IGNvbG9yOiAjZWFlYWVhOyB9IC8vIEZpcmVmb3ggMTgtXG4gICAgICAgIDo6LW1vei1wbGFjZWhvbGRlciB7ICBjb2xvcjogI2VhZWFlYTsgfSAvLyBGaXJlZm94IDE5K1xuICAgICAgICA6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtjb2xvcjogI2VhZWFlYTsgfVxuXG4gICAgICAgIC50b3AtbmF2IC5uYXYtbGVmdCA+IGxpID4gYSAuYmFkZ2Uge1xuICAgICAgICAgICAgY29sb3I6ICNlYWVhZWE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvL1xuICAgID4gLnRvcC1oZWFkZXIge1xuICAgICAgICAubG9nbyB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsMCwwLC4xKTtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYmctd2hpdGUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZGFyaztcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrO1xuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZGFyaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgKyAubWVudS1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAuaWNvbi1iYXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRleHQtY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pY29uLWJhciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJldmVyc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYmctZGFyayxcbiAgICAgICAgICAgICYuYmctcHJpbWFyeSxcbiAgICAgICAgICAgICYuYmctc3VjY2VzcyxcbiAgICAgICAgICAgICYuYmctaW5mbyxcbiAgICAgICAgICAgICYuYmctaW5mby1hbHQsXG4gICAgICAgICAgICAmLmJnLXdhcm5pbmcsXG4gICAgICAgICAgICAmLmJnLWRhbmdlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmlnaHQ7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG59XG4iLCJib2R5IHtcbiAgICBiYWNrZ3JvdW5kOiAkbWFpbl9jb250YWluZXJfYmc7XG59XG5cbi8vID0gRm9yIGZ1bGxzY3JlZW4gcGFnZXMgPSBcbi5ib2R5LXdpZGUge1xuICAgIC8vIGhpZGUgaGVhZGVyIGFuZCBzaWRlYmFyXG4gICAgI2hlYWRlcixcbiAgICAjbmF2LWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgI2NvbnRlbnQge1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIC8vIGJvdHRvbTogMDsgLy8gRml4IGxvbmcgY29udGVudCBjYW4ndCBzY3JvbGwgKG92ZXJmbG93IGhpZGRlbikgcHJvYmxlbVxuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgIH1cblxuICAgIC8vIEhpZGUgbWFyZ2lucyB0aGF0IGNhdXNlZCBieSBvcGVuZWQgb2ZmLWNhbnZhcyBuYXZcbiAgICAub24tY2FudmFzICNjb250ZW50IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gICAgLy8gRml4IGxvbmcgY29udGVudCBjYW4ndCBzY3JvbGwgKG92ZXJmbG93IGhpZGRlbikgcHJvYmxlbSBjYXVzZWQgYnkgb3BlbmVkIG9mZi1jYW52YXMgbmF2XG4gICAgLm9uLWNhbnZhcyAubWFpbi1jb250YWluZXIge1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICB9XG5cbiAgICAvLyBPdmVycmlkZXMgYm94ZWQgbGF5b3V0XG4gICAgLmxheW91dC1ib3hlZCA+IC5tYWluLWNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG59XG4iLCIkbGlnaHRfYmdfbmF2X2JvcmRlcjogI2U1ZTVlNTtcbiRkYXJrX2JnX25hdl9ib3JkZXI6IGxpZ2h0ZW4oJGRhcmssIDYlKTtcblxuXG4vLyBPdmVycmlkZSBoZWFkZXIgXG4uYXBwLm5hdi1jb2xsYXBzZWQtbWluIHtcbiAgICAudG9wLWhlYWRlciB7XG4gICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7IC8vIDQ5ICsgMSAoYm9yZGVyKVxuICAgICAgICAgICAgfSBcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gXG4ubmF2LWNvbnRhaW5lciB7XG5cbiAgICAgJi5iZy13aGl0ZSB7XG4gICAgICAgIC5uYXYge1xuICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgICAgICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGxpZ2h0X2JnX25hdl9ib3JkZXI7IC8vIG92ZXJyaWRlcyBCb290c3RyYXAgMy4zLnhcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxpID4gYSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodF9iZ19uYXZfYm9yZGVyO1xuXG4gICAgICAgICAgICAgICAgPiBpIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGxpZ2h0X2JnX25hdl9ib3JkZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB1bCBsaSB7XG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHRfYmdfbmF2X2JvcmRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgfVxuICAgICAmLmJnLWRhcmsge1xuICAgICAgICAubmF2IHtcbiAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRkYXJrX2JnX25hdl9ib3JkZXI7IC8vIG92ZXJyaWRlcyBCb290c3RyYXAgMy4zLnhcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxpID4gYSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrX2JnX25hdl9ib3JkZXI7XG5cbiAgICAgICAgICAgICAgICA+IGkge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkZGFya19iZ19uYXZfYm9yZGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHVsIGxpIHtcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrX2JnX25hdl9ib3JkZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgIH1cblxuICAgIC8vIHJlbW92ZSBib3JkZXIgZm9yIHN1YiB1bFxuICAgICYuYmctd2hpdGUsXG4gICAgJi5iZy1kYXJrIHtcbiAgICAgICAgLm5hdiB7XG4gICAgICAgICAgICB1bCBsaSB7XG4gICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgID4gaSB7IGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm5hdiB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgID4gYSB7XG5cbiAgICAgICAgICAgICAgICA+IGkge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFxuICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICYub3BlbixcbiAgICAgICAgICAgICYuYWN0aXZlLFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGxpbmtfYWN0aXZlX2JnO1xuICAgICAgICAgICAgICAgICAgICA+IGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcmV2ZXJzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIC5pY29uLWJnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcblxuICAgICAgICAgICAgICAgID4gaSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogLTE1cHggMTBweCAtMTVweCAtMTVweDtcbiAgICAgICAgICAgICAgICAgICAgLy8gdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAuaWNvbi1iZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxMjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtNDdweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogbGVmdCAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG5cblxuICAgICAgICAvLyBzdWIgdWxcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgID4gaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogLTEycHggMTBweCAtMTJweCAtMjVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQ29sbGFwc2VkIG5hdlxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAuYXBwLm5hdi1jb2xsYXBzZWQtbWluIHtcbiAgICAgICAgI25hdi1jb250YWluZXIge1xuICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGxlZnQ6IDUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgI25hdiB7XG4gICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICA+IGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcmV2ZXJzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgID4gLmljb24tYmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXYtY29udGFpbmVyIC5uYXYgPiBsaSA+IGEgPiBpIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIucGFnZS1kYXNoYm9hcmQge1xuICAgIC5taW5pLWJveCB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMjVweDtcbiAgICB9XG5cbiAgICAucGFuZWwtYm94IHtcbiAgICAgICAgLnBhbmVsLXRvcCAuZGl2aWRlci14bCB7XG4gICAgICAgICAgICBtYXJnaW46IDg1cHggMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wYW5lbC1ib3R0b20ge1xuICAgICAgICAgICAgcGFkZGluZzogMTdweCAxMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiXG4vLyBPbGQgYnJvd3NlcnNcbi5sdC1pZTktYmcge1xuICAgIHotaW5kZXg6IDExMTExO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgICBjb2xvcjogIzk5OTtcbiAgICBwYWRkaW5nOiAxMDBweCAyMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDI2cHg7XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICNmNWY1ZjU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZmZmO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vLyBcbi5ub24tZGlzcGxheSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBhZ2Uge1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnBhZ2UtZm9ybS1lbGUge1xuICAgIGgzIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbn1cbiIsIi5ib2R5LWVyciB7XG4gICAgI2NvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgID4gLnZpZXctY29udGFpbmVyIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYm9keS13aWRlIHtcbiAgICAgICAgI2NvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wYWdlLWVyciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGJyYW5kLXByaW1hcnksIDUlKTtcblxuICAgIC5lcnItc3RhdHVzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIG1hcmdpbjogMTAwcHggMCAtNDVweDtcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjAwcHg7ICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICB9XG4gICAgLmVyci1tZXNzYWdlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIHBhZGRpbmc6IDI0cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICAgICAgICAgIGNvbG9yOiAkcmV2ZXJzZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZXJyLWJvZHkge1xuICAgICAgICBwYWRkaW5nOiAxMDBweCAxMHB4IDIwcHg7XG4gICAgfVxuXG4gICAgLmJ0bi1nb2JhY2sge1xuICAgICAgICBjb2xvcjogJHJldmVyc2U7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkcmV2ZXJzZTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGJyYW5kLXByaW1hcnksIDUlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZXZlcnNlO1xuICAgICAgICB9XG4gICAgICAgIC5vcGVuICYge1xuICAgICAgICAgICAgJi5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRicmFuZC1wcmltYXJ5LCA1JSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJldmVyc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn0iLCIvLyBsb2NrIHNjcmVlblxuLmJvZHktbG9jayB7XG4gICAgI2NvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIjeyRpbWFnZV9wYXRofWJhY2tncm91bmQvMS5qcGdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIgZml4ZWQ7IFxuICAgICAgICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIC1tb3otYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgLW8tYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICB9XG5cbiAgICAuY29udGVudC1jb250YWluZXIgPiAudmlldy1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICB9XG5cbn1cblxuLnBhZ2UtbG9jayB7XG5cbiAgICAubG9jay1jZW50ZXJlZCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAtNjVweDtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNzVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sb2NrLWNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWF4LXdpZHRoOiA0MjBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgLy8gLmxvY2stdGltZSB7XG4gICAgICAgIC8vICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLy8gICAgIGNvbG9yOiAkcmV2ZXJzZTtcbiAgICAgICAgLy8gICAgIGZvbnQtc2l6ZTogMTAwcHg7XG4gICAgICAgIC8vICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICAvLyAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAvLyAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAvLyAgICAgZm9udC13ZWlnaHQ6IDEwMDtcblxuICAgICAgICAvLyAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgICAvLyAgICAgICAgIGZvbnQtc2l6ZTogMTI1cHg7XG4gICAgICAgIC8vICAgICB9ICAgICAgICAgIFxuICAgICAgICAvLyB9XG4gICAgfVxuXG4gICAgLmxvY2stYm94IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcblxuICAgICAgICAubG9jay11c2VyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRyZXZlcnNlO1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgLmxvY2staW1nIGltZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBsZWZ0OiA0MCU7XG4gICAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgICAgIGJvcmRlcjogNnB4IHNvbGlkICRyZXZlcnNlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHJldmVyc2U7XG5cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAzMyU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkICRyZXZlcnNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxvY2stcHdkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRyZXZlcnNlO1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgNTBweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNjcmVlbi1zbSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDgwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXk7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuLXN1Ym1pdCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgfSAgICAgICAgICBcbiAgICAgICAgfVxuXG4gICAgfVxufSIsIi5wYWdlLXRhc2tzIHtcblxuICAgIC8vIGVzc2VudGlhbFxuICAgIC50YXNrLWxpc3Qge1xuICAgICAgICBcbiAgICAgICAgLy8gd2hlbiBpbml0XG4gICAgICAgIC52aWV3IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLmVkaXQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHdoZW4gZWRpdGluZ1xuICAgICAgICBsaS5lZGl0aW5nIHtcblxuICAgICAgICAgICAgLnZpZXcge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5lZGl0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLy8gYWRkLW9uIHN0eWxlXG5cbiAgICAuYWRkLXRhc2sge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgaGVpZ2h0OiA0NHB4O1xuICAgICAgICAgICAgcGFkZGluZzogNnB4IDEycHggNnB4IDQwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBhLnN1Ym1pdC1idXR0b24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxMnB4O1xuICAgICAgICAgICAgbGVmdDogMTJweDtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JheS1saWdodDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG5cbiAgICAvLyBmaWx0ZXJzXG4gICAgLmZpbHRlcnMge1xuICAgICAgICBtYXJnaW46IDE1cHggMDtcbiAgICB9XG4gICAgLm5hdi10YWJzPmxpLmFjdGl2ZT5hLFxuICAgIC5uYXYtdGFicz5saS5hY3RpdmU+YTpob3ZlcixcbiAgICAubmF2LXRhYnM+bGkuYWN0aXZlPmE6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbl9jb250YWluZXJfYmc7XG4gICAgfVxuXG4gICAgLnRhc2stbGlzdCB7XG4gICAgICAgIC8vIHdoZW4gaW5pdFxuICAgICAgICAudmlldyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMnB4IDAgNDBweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmV2ZXJzZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLDAsMCwuMik7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAuZ2x5cGhpY29uLXBlbmNpbCxcbiAgICAgICAgICAgICAgICAuZ2x5cGhpY29uLXJlbW92ZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAxMXB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE2cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTJweCAwIDEycHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5nbHlwaGljb24tcGVuY2lsLFxuICAgICAgICAgICAgLmdseXBoaWNvbi1yZW1vdmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMTRweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQ7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktZGFyaztcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5nbHlwaGljb24tcGVuY2lsIHtcbiAgICAgICAgICAgICAgICByaWdodDogNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5nbHlwaGljb24tcmVtb3ZlIHtcbiAgICAgICAgICAgICAgICByaWdodDogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb21wbGV0ZWQgLnZpZXcge1xuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheS1saWdodDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gd2hlbiBlZGl0aW5nXG4gICAgICAgIGlucHV0LmVkaXQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIGhlaWdodDogNDRweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxMnB4IDZweCA0MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRhc2stZm9vdGVyIHtcbiAgICAgICAgbWFyZ2luOiAxNXB4IDA7XG4gICAgICAgIGJvcmRlci10b3A6IDRweCBkb3VibGUgZGFya2VuKCRncmF5LWxpZ2h0ZXIsIDUlKTtcbiAgICAgICAgcGFkZGluZzogMTJweDtcblxuICAgICAgICAubGlzdC1pbmxpbmU+bGkge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICAgICAgJi5maXJzdC1pdGVtIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNsZWFyLWNvbXBsZXRlZCB7XG4gICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IsIC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGlwcyB7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmJvZHktYXV0aCB7XG5cbiAgICAjY29udGVudCB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTtcbiAgICB9XG5cbiAgICAuZm9ybS1yZXNwb25zZSB7XG4gICAgICBtYXJnaW4tbGVmdDogMiU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIlO1xuICAgIH1cblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpXG4gICAge1xuICAgICAgICAjY29udGVudFxuICAgICAgICB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRpbWFnZV9wYXRofWNhbF9yZXYuanBnXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2dpbi1yZXNwb25zaXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMXB4IDFweCAjMWM3ZWJiO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tcmVzcG9uc2Uge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG5cbiAgICAvLyAjY29udGVudCB7XG4gICAgLy8gICAgIC8qYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTsqL1xuICAgIC8vICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRpbWFnZV9wYXRofXJldmVyX2JhY2tncl80LmpwZ1wiKTtcbiAgICAvLyAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAvLyAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgIC8vXG4gICAgLy8gfVxufVxuXG4uY29udGFpbmVye1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICAgIHdpZHRoOiA1MDBweDtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG5cbiAgICAgICAgLmZvcm0tY29udGFpbmVye1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcmlnaHQ6IDI1MHB4O1xuICAgICAgICAgICAgYm90dG9tOiAyMDBweDtcbiAgICAgICAgfVxufVxuXG5cbi5wYWdlLXNpZ25pbixcbi8vLnBhZ2UtY2hhbmdlLFxuLnBhZ2Utc2lnbnVwLFxuLnBhZ2UtZm9yZ290IHtcblxuICAgIC8vXG4gICAgLnNpZ25pbi1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZmUwZTY7XG4gICAgfVxuXG4gICAgLmxvZ28ge1xuICAgICAgICBmb250LXNpemU6IDQ2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vXG4gICAgLm1haW4tYm9keSB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgICB9XG5cbiAgICAuaW5mbyB7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMCAwO1xuICAgICAgICBtYXgtd2lkdGg6IDQyMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIGNvbG9yOiAkZGFyaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb3JtLWNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogNDIwcHg7XG4gICAgICAgIG1hcmdpbjogMTBweCBhdXRvO1xuXG5cbiAgICB9XG5cbiAgICAvLyBMaW5lIHRocm91Z2hcbiAgICAubGluZS10aHJ1IHtcbiAgICAgICAgbWFyZ2luOiAxZW0gMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIG1hcmdpbjogLTVweCAwIDAgLTIwcHg7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2VuKCRib2R5LWJnLCAxMCUpO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNDklO1xuICAgICAgICAgICAgei1pbmRleDogLTI7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucGFnZS1pbnZvaWNlIHtcbiAgICAuaW52b2ljZS13cmFwcGVyIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZXZlcnNlO1xuICAgIH1cblxufVxuXG4uaW52b2ljZS1pbm5lciB7XG4gICAgcGFkZGluZzogMTVweCAxNXB4IDMwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJldmVyc2U7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLmludm9pY2Utc3VtIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZy1hY2NlbnQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlIHtcbiAgICAgICAgJi50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuYmctZGFyayB7XG4gICAgICAgICAgICA+IHRoIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiXG5cbi8vIGljb25zXG4udGhlbWlmeS1pY29ucyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLmljb24tc2VjdGlvbiB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDMuNWVtO1xuICAgICAgICB3aWR0aDogOTAlO1xuICAgIH1cblxuICAgIC5pY29uLWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogLjVlbSAwO1xuICAgICAgICB3aWR0aDogMzAlO1xuXG4gICAgICAgIFtjbGFzc149XCJ0aS1cIl0sXG4gICAgICAgIFtjbGFzcyo9XCIgdGktXCJdIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNSU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaWNvbi1uYW1lIHtcbiAgICAgICAgbWFyZ2luOiA1cHggMCAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY29sb3I6ICNhYWE7XG4gICAgICAgIGZvbnQtc2l6ZTogLjhlbTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICB9XG5cbiAgICAuaWNvbi1jb250YWluZXI6aG92ZXIge1xuICAgICAgICAuaWNvbi1uYW1lIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZGFyaztcbiAgICAgICAgfVxuXG4gICAgICAgIFtjbGFzc149XCJ0aS1cIl0sXG4gICAgICAgIFtjbGFzcyo9XCIgdGktXCJdIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogM2VtO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi8vIHdlYXRoZXIgaWNvbnNcbi53ZWF0aGVyLWljb25zIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAuaWNvbi1zZWN0aW9uIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMy41ZW07XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgfVxuXG4gICAgLmV4YW1wbGUge1xuICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IC41ZW0gMDtcbiAgICAgICAgd2lkdGg6IDMwJTtcblxuICAgICAgICAud2kge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgICAgICAgd2lkdGg6IDE1JTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jbGFzcyB7XG4gICAgICAgIG1hcmdpbjogNXB4IDAgMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbG9yOiAjYWFhO1xuICAgICAgICBmb250LXNpemU6IC44ZW07XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgfVxuXG4gICAgLmV4YW1wbGU6aG92ZXIge1xuICAgICAgICAuY2xhc3Mge1xuICAgICAgICAgICAgY29sb3I6ICRkYXJrO1xuICAgICAgICB9XG5cbiAgICAgICAgLndpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogM2VtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucGFnZS1pY29ucyB7XG4gICAgLy8gQm9vdHN0cmFwIEdseXBoaWNvbnNcbiAgICAuYnMtZ2x5cGhpY29ucyB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMTVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2Y5ZjlmOTtcbiAgICAgICAgICAgIC8vICY6aG92ZXIgeyBjb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7IH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5nbHlwaGljb24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nbHlwaGljb24tY2xhc3Mge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmJzLWdseXBoaWNvbnMtbGlzdCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gIC5yb3ctZXEtaGVpZ2h0IHtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbi5mYS1kb3dubG9hZC5jdXN0b20tZG93bmxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTlcIjtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBjb2xvcjogIzFDN0VCQjtcbn1cbiIsIlxuLy8gd2VhdGhlciBpY29uc1xuLndlYXRoZXItaWNvbi1saXN0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgLmV4YW1wbGUge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMTBweCAzcHg7XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBnbHlwaGljb25zIGljb25zXG4uYnMtZ2x5cGhpY29ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAuZ2x5cGhpY29uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgfVxuXG4gICAgLmdseXBoaWNvbi1jbGFzcyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMi41JTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICBoZWlnaHQ6IDExNXB4O1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBtYXJnaW46IDAgLTFweCAtMXB4IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICAgIH1cbn1cblxuLnBhZ2UtZ3JpZCAuZ3JpZC1zdHJ1Y3R1cmUgLnJvdyB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgIC53aWRnZXQtY29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZWVlO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHggMTJweDtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICB9XG5cbn1cblxuLy8gZm9ybSBcbi5wYWdlLWZvcm0tZWxlIHtcbiAgICAubGlzdC1jaGVja2JveC1yYWRpbyBsaSB7XG4gICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmID4gZGl2IHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBkZW1vIHNsaWRlciBcbi5kZW1vc2xpZGVyLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICBtYXJnaW46IGF1dG87XG59Il19 */

@charset "UTF-8";

/*!
 * animate.css -http://daneden.me/animate
 * Version - 3.5.1
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2016 Daniel Eden
 */

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

.animated.flipOutX,
.animated.flipOutY,
.animated.bounceIn,
.animated.bounceOut {
  -webkit-animation-duration: .75s;
  animation-duration: .75s;
}

@-webkit-keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }

  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }

  90% {
    -webkit-transform: translate3d(0,-4px,0);
    transform: translate3d(0,-4px,0);
  }
}

@keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }

  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }

  90% {
    -webkit-transform: translate3d(0,-4px,0);
    transform: translate3d(0,-4px,0);
  }
}

.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom;
}

@-webkit-keyframes flash {
  from, 50%, to {
    opacity: 1;
  }

  25%, 75% {
    opacity: 0;
  }
}

@keyframes flash {
  from, 50%, to {
    opacity: 1;
  }

  25%, 75% {
    opacity: 0;
  }
}

.flash {
  -webkit-animation-name: flash;
  animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

@-webkit-keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(.95, 1.05, 1);
    transform: scale3d(.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, .95, 1);
    transform: scale3d(1.05, .95, 1);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(.95, 1.05, 1);
    transform: scale3d(.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, .95, 1);
    transform: scale3d(1.05, .95, 1);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand;
}

@-webkit-keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}

@keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}

.shake {
  -webkit-animation-name: shake;
  animation-name: shake;
}

@-webkit-keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }

  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }

  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }

  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }

  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }

  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }

  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }

  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }

  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.headShake {
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-name: headShake;
  animation-name: headShake;
}

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }

  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }

  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }

  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }

  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }

  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }

  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }

  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }

  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

.swing {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}

@-webkit-keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  10%, 20% {
    -webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
  }

  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  10%, 20% {
    -webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
  }

  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none;
  }

  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }

  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }

  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }

  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }

  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none;
  }

  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }

  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }

  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }

  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }

  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}

@-webkit-keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none;
  }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }

  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

@keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none;
  }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }

  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

.jello {
  -webkit-animation-name: jello;
  animation-name: jello;
  -webkit-transform-origin: center;
  transform-origin: center;
}

@-webkit-keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(.9, .9, .9);
    transform: scale3d(.9, .9, .9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(.97, .97, .97);
    transform: scale3d(.97, .97, .97);
  }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(.9, .9, .9);
    transform: scale3d(.9, .9, .9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(.97, .97, .97);
    transform: scale3d(.97, .97, .97);
  }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.bounceIn {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}

@-webkit-keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}

@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(.9, .9, .9);
    transform: scale3d(.9, .9, .9);
  }

  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }
}

@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(.9, .9, .9);
    transform: scale3d(.9, .9, .9);
  }

  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }
}

.bounceOut {
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
}

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}

@-webkit-keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes fadeOutDown {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

@keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes fadeOutRight {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes fadeOutUp {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

@-webkit-keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) scale3d(.95, .95, .95);
    transform: perspective(400px) scale3d(.95, .95, .95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

@keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) scale3d(.95, .95, .95);
    transform: perspective(400px) scale3d(.95, .95, .95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip;
}

@-webkit-keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX;
}

@-webkit-keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY;
}

@-webkit-keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

@keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

.flipOutX {
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}

@keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}

.flipOutY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY;
}

@-webkit-keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1;
  }

  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1;
  }

  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOut {
  from {
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}

@keyframes lightSpeedOut {
  from {
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}

.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

@-webkit-keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}

@-webkit-keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}

@-webkit-keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}

@-webkit-keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}

@-webkit-keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}

@-webkit-keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}

@keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}

.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}

@-webkit-keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}

.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}

@-webkit-keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}

@-webkit-keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}

.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}

@-webkit-keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}

@keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}

.hinge {
  -webkit-animation-name: hinge;
  animation-name: hinge;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}

@keyframes rollOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}

.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}

@-webkit-keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  50% {
    opacity: 1;
  }
}

@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  50% {
    opacity: 1;
  }
}

.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}

@-webkit-keyframes zoomOut {
  from {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  to {
    opacity: 0;
  }
}

@keyframes zoomOut {
  from {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  to {
    opacity: 0;
  }
}

.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown;
}

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(.1) translate3d(-2000px, 0, 0);
    transform: scale(.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(.1) translate3d(-2000px, 0, 0);
    transform: scale(.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft;
}

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(.1) translate3d(2000px, 0, 0);
    transform: scale(.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(.1) translate3d(2000px, 0, 0);
    transform: scale(.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight;
}

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
}

@-webkit-keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}

@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}

table { border-collapse: collapse; }
.percent {
    position: absolute; width: 100%; height: 14px; z-index: 1; text-align: center; font-size: 0.8em; color: white;
}
.progress-bar {
    width: 100%; height: 14px;
    border-radius: 10px;
    border: 1px solid #CCC;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#6666cc), to(#4b4b95));
    border-image: initial;
}
.uploaded {
    padding: 0;
    height: 14px;
    border-radius: 10px;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#66cc00), to(#4b9500));
    border-image: initial;
}
.dropbox {
    position: relative;
    margin-left: 15px;
    margin-right: 15px;
    height: 250px;
    border: 2px solid #DDD;
    border-radius: 8px;
    background-color: #def0ff;
    text-align: center;
    color: #BBB;
    font-size: 2em;
    font-family: Arial, sans-serif;
}
.dropbox span {/*
    vertical-align: middle;
    display: block;
    width: 100%;
    height: 100%;
    margin-top: 75px;*/
}
.dropbox.not-available {
    background-color: #F88;
}
.dropbox.over {
    background-color: #bfb;
}

.container-grag-and-drop{
    height: 100%;
}

.fa.fa-arrow-down.drag-and-drop{
    display: list-item;
    margin-top: 65px;
}
.fa.fa-arrow-down.drag-and-drop:before{
    font-size: 80px;
}
.fa.fa-plus-circle.custom{
    position: fixed;
    bottom: 15px;
    right: 30px;
}
.fa.fa-plus-circle.custom:before{
    font-size:55px;
    color: #1c7ebb;
}
.container-upload{
    margin-top: 25px;
    margin-left: 15px;
    margin-right: 15px;
}

.container-upload label,
.container-upload input{
    display: inline-block;
}

.table-custom{
    text-align:center;
}

/* Smartphones ----------- */
@media only screen and (max-width: 760px) {
  .isMobile { display: none; }
}

@charset "UTF-8";.fancybox-enabled{overflow:hidden}.fancybox-enabled body{overflow:visible;height:100%}.fancybox-container{position:fixed;top:0;left:0;width:100%;height:100%;z-index:99993;-webkit-backface-visibility:hidden;backface-visibility:hidden}.fancybox-container~.fancybox-container{z-index:99992}.fancybox-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f0f11;opacity:0;transition-timing-function:cubic-bezier(.55,.06,.68,.19);-webkit-backface-visibility:hidden;backface-visibility:hidden}.fancybox-container--ready .fancybox-bg{opacity:.87;transition-timing-function:cubic-bezier(.22,.61,.36,1)}.fancybox-controls{position:absolute;top:0;left:0;right:0;text-align:center;opacity:0;z-index:99994;transition:opacity .2s;pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;direction:ltr}.fancybox-show-controls .fancybox-controls{opacity:1}.fancybox-infobar{display:none}.fancybox-show-infobar .fancybox-infobar{display:inline-block;pointer-events:all}.fancybox-infobar__body{display:inline-block;width:70px;line-height:44px;font-size:13px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;text-align:center;color:#ddd;background-color:rgba(30,30,30,.7);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:subpixel-antialiased}.fancybox-buttons{position:absolute;top:0;right:0;display:none;pointer-events:all}.fancybox-show-buttons .fancybox-buttons{display:block}.fancybox-slider-wrap{overflow:hidden;direction:ltr}.fancybox-slider,.fancybox-slider-wrap{position:absolute;top:0;left:0;bottom:0;right:0;padding:0;margin:0;z-index:99993;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-tap-highlight-color:transparent}.fancybox-slide{position:absolute;top:0;left:0;width:100%;height:100%;margin:0;padding:0;overflow:auto;outline:none;white-space:normal;box-sizing:border-box;text-align:center;z-index:99994;-webkit-overflow-scrolling:touch}.fancybox-slide:before{content:"";height:100%;width:0}.fancybox-slide:before,.fancybox-slide>*{display:inline-block;vertical-align:middle}.fancybox-slide>*{position:relative;padding:24px;margin:44px 0;border-width:0;text-align:left;background-color:#fff;overflow:auto;box-sizing:border-box}.fancybox-slide--image{overflow:hidden}.fancybox-slide--image:before{display:none}.fancybox-content{display:inline-block;position:relative;margin:44px auto;padding:0;border:0;width:80%;height:calc(100% - 88px);vertical-align:middle;line-height:normal;text-align:left;white-space:normal;outline:none;font-size:16px;font-family:Arial,sans-serif;box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-overflow-scrolling:touch}.fancybox-iframe{display:block;margin:0;padding:0;border:0;width:100%;height:100%;background:#fff}.fancybox-slide--video .fancybox-content,.fancybox-slide--video .fancybox-iframe{background:transparent}.fancybox-placeholder{z-index:99995;background:transparent;cursor:default;overflow:visible;-webkit-transform-origin:top left;transform-origin:top left;background-size:100% 100%;background-repeat:no-repeat;-webkit-backface-visibility:hidden;backface-visibility:hidden}.fancybox-image,.fancybox-placeholder,.fancybox-spaceball{position:absolute;top:0;left:0;margin:0;padding:0;border:0}.fancybox-image,.fancybox-spaceball{width:100%;height:100%;max-width:none;max-height:none;background:transparent;background-size:100% 100%}.fancybox-controls--canzoomOut .fancybox-placeholder{cursor:zoom-out}.fancybox-controls--canzoomIn .fancybox-placeholder{cursor:zoom-in}.fancybox-controls--canGrab .fancybox-placeholder{cursor:-webkit-grab;cursor:grab}.fancybox-controls--isGrabbing .fancybox-placeholder{cursor:-webkit-grabbing;cursor:grabbing}.fancybox-spaceball{z-index:1}.fancybox-tmp{position:absolute;top:-9999px;left:-9999px;visibility:hidden}.fancybox-error{position:absolute;margin:0;padding:40px;top:50%;left:50%;width:380px;max-width:100%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);background:#fff;cursor:default}.fancybox-error p{margin:0;padding:0;color:#444;font:16px/20px Helvetica Neue,Helvetica,Arial,sans-serif}.fancybox-close-small{position:absolute;top:0;right:0;width:44px;height:44px;padding:0;margin:0;border:0;border-radius:0;outline:none;background:transparent;z-index:10;cursor:pointer}.fancybox-close-small:after{content:"×";position:absolute;top:5px;right:5px;width:30px;height:30px;font:20px/30px Arial,Helvetica Neue,Helvetica,sans-serif;color:#888;font-weight:300;text-align:center;border-radius:50%;border-width:0;background:#fff;transition:background .2s;box-sizing:border-box;z-index:2}.fancybox-close-small:focus:after{outline:1px dotted #888}.fancybox-slide--video .fancybox-close-small{top:-36px;right:-36px;background:transparent}.fancybox-close-small:hover:after{color:#555;background:#eee}.fancybox-caption-wrap{position:absolute;bottom:0;left:0;right:0;padding:60px 30px 0;z-index:99998;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-sizing:border-box;background:linear-gradient(180deg,transparent 0,rgba(0,0,0,.1) 20%,rgba(0,0,0,.2) 40%,rgba(0,0,0,.6) 80%,rgba(0,0,0,.8));opacity:0;transition:opacity .2s;pointer-events:none}.fancybox-show-caption .fancybox-caption-wrap{opacity:1}.fancybox-caption{padding:30px 0;border-top:1px solid hsla(0,0%,100%,.4);font-size:14px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;color:#fff;line-height:20px;-webkit-text-size-adjust:none}.fancybox-caption a,.fancybox-caption button{pointer-events:all}.fancybox-caption a{color:#fff;text-decoration:underline}.fancybox-button{display:inline-block;position:relative;width:44px;height:44px;line-height:44px;margin:0;padding:0;border:0;border-radius:0;cursor:pointer;background:transparent;color:#fff;box-sizing:border-box;vertical-align:top;outline:none}.fancybox-button--disabled{cursor:default;pointer-events:none}.fancybox-button,.fancybox-infobar__body{background:rgba(30,30,30,.6)}.fancybox-button:hover{background:rgba(0,0,0,.8)}.fancybox-button:after,.fancybox-button:before{content:"";pointer-events:none;position:absolute;border-color:#fff;background-color:currentColor;color:currentColor;opacity:.9;box-sizing:border-box;display:inline-block}.fancybox-button--disabled:after,.fancybox-button--disabled:before{opacity:.5}.fancybox-button--left:after{left:20px;-webkit-transform:rotate(-135deg);transform:rotate(-135deg)}.fancybox-button--left:after,.fancybox-button--right:after{top:18px;width:6px;height:6px;background:transparent;border-top:2px solid currentColor;border-right:2px solid currentColor}.fancybox-button--right:after{right:20px;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.fancybox-button--left{border-bottom-left-radius:5px}.fancybox-button--right{border-bottom-right-radius:5px}.fancybox-button--close{float:right}.fancybox-button--close:after,.fancybox-button--close:before{content:"";display:inline-block;position:absolute;height:2px;width:16px;top:calc(50% - 1px);left:calc(50% - 8px)}.fancybox-button--close:before{-webkit-transform:rotate(45deg);transform:rotate(45deg)}.fancybox-button--close:after{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.fancybox-loading{border:6px solid hsla(0,0%,39%,.4);border-top:6px solid hsla(0,0%,100%,.6);border-radius:100%;height:50px;width:50px;-webkit-animation:a .8s infinite linear;animation:a .8s infinite linear;background:transparent;position:absolute;top:50%;left:50%;margin-top:-25px;margin-left:-25px;z-index:99999}@-webkit-keyframes a{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes a{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@media (max-width:800px){.fancybox-controls{text-align:left}.fancybox-button--left,.fancybox-button--right,.fancybox-buttons button:not(.fancybox-button--close){display:none!important}.fancybox-caption{padding:20px 0;margin:0}}.fancybox-button--fullscreen:before{width:15px;height:11px;left:15px;top:16px;border:2px solid;background:none}.fancybox-button--play:before{top:16px;left:18px;width:0;height:0;border-top:6px inset transparent;border-bottom:6px inset transparent;border-left:10px solid;border-radius:1px;background:transparent}.fancybox-button--pause:before{top:16px;left:18px;width:7px;height:11px;border-style:solid;border-width:0 2px;background:transparent}.fancybox-button--thumbs span{font-size:23px}.fancybox-button--thumbs:before{top:20px;left:21px;width:3px;height:3px;box-shadow:0 -4px 0,-4px -4px 0,4px -4px 0,inset 0 0 0 32px,-4px 0 0,4px 0 0,0 4px 0,-4px 4px 0,4px 4px 0}.fancybox-container--thumbs .fancybox-caption-wrap,.fancybox-container--thumbs .fancybox-controls,.fancybox-container--thumbs .fancybox-slider-wrap{right:220px}.fancybox-thumbs{position:absolute;top:0;right:0;bottom:0;left:auto;width:220px;margin:0;padding:5px 5px 0 0;background:#fff;z-index:99993;word-break:normal;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:transparent;box-sizing:border-box}.fancybox-thumbs>ul{list-style:none;position:absolute;position:relative;width:100%;height:100%;margin:0;padding:0;overflow-x:hidden;overflow-y:auto;font-size:0}.fancybox-thumbs>ul>li{float:left;overflow:hidden;max-width:50%;padding:0;margin:0;width:105px;height:75px;position:relative;cursor:pointer;outline:none;border:5px solid #fff;border-top-width:0;border-right-width:0;-webkit-tap-highlight-color:transparent;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-sizing:border-box}li.fancybox-thumbs-loading{background:rgba(0,0,0,.1)}.fancybox-thumbs>ul>li>img{position:absolute;top:0;left:0;min-width:100%;min-height:100%;max-width:none;max-height:none;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.fancybox-thumbs>ul>li:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:2px;border:4px solid #4ea7f9;z-index:99991;opacity:0;transition:all .2s cubic-bezier(.25,.46,.45,.94)}.fancybox-thumbs>ul>li.fancybox-thumbs-active:before{opacity:1}@media (max-width:800px){.fancybox-thumbs{display:none!important}.fancybox-container--thumbs .fancybox-caption-wrap,.fancybox-container--thumbs .fancybox-controls,.fancybox-container--thumbs .fancybox-slider-wrap{right:0}}
@charset "UTF-8";.fancybox-enabled{overflow:hidden}.fancybox-enabled body{overflow:visible;height:100%}.fancybox-container{position:fixed;top:0;left:0;width:100%;height:100%;z-index:99993;-webkit-backface-visibility:hidden;backface-visibility:hidden}.fancybox-container~.fancybox-container{z-index:99992}.fancybox-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f0f11;opacity:0;transition-timing-function:cubic-bezier(.55,.06,.68,.19);-webkit-backface-visibility:hidden;backface-visibility:hidden}.fancybox-container--ready .fancybox-bg{opacity:.87;transition-timing-function:cubic-bezier(.22,.61,.36,1)}.fancybox-controls{position:absolute;top:0;left:0;right:0;text-align:center;opacity:0;z-index:99994;transition:opacity .2s;pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;direction:ltr}.fancybox-show-controls .fancybox-controls{opacity:1}.fancybox-infobar{display:none}.fancybox-show-infobar .fancybox-infobar{display:inline-block;pointer-events:all}.fancybox-infobar__body{display:inline-block;width:70px;line-height:44px;font-size:13px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;text-align:center;color:#ddd;background-color:rgba(30,30,30,.7);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:subpixel-antialiased}.fancybox-buttons{position:absolute;top:0;right:0;display:none;pointer-events:all}.fancybox-show-buttons .fancybox-buttons{display:block}.fancybox-slider-wrap{overflow:hidden;direction:ltr}.fancybox-slider,.fancybox-slider-wrap{position:absolute;top:0;left:0;bottom:0;right:0;padding:0;margin:0;z-index:99993;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-tap-highlight-color:transparent}.fancybox-slide{position:absolute;top:0;left:0;width:100%;height:100%;margin:0;padding:0;overflow:auto;outline:none;white-space:normal;box-sizing:border-box;text-align:center;z-index:99994;-webkit-overflow-scrolling:touch}.fancybox-slide:before{content:"";height:100%;width:0}.fancybox-slide:before,.fancybox-slide>*{display:inline-block;vertical-align:middle}.fancybox-slide>*{position:relative;padding:24px;margin:44px 0;border-width:0;text-align:left;background-color:#fff;overflow:auto;box-sizing:border-box}.fancybox-slide--image{overflow:hidden}.fancybox-slide--image:before{display:none}.fancybox-content{display:inline-block;position:relative;margin:44px auto;padding:0;border:0;width:80%;height:calc(100% - 88px);vertical-align:middle;line-height:normal;text-align:left;white-space:normal;outline:none;font-size:16px;font-family:Arial,sans-serif;box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-overflow-scrolling:touch}.fancybox-iframe{display:block;margin:0;padding:0;border:0;width:100%;height:100%;background:#fff}.fancybox-slide--video .fancybox-content,.fancybox-slide--video .fancybox-iframe{background:transparent}.fancybox-placeholder{z-index:99995;background:transparent;cursor:default;overflow:visible;-webkit-transform-origin:top left;transform-origin:top left;background-size:100% 100%;background-repeat:no-repeat;-webkit-backface-visibility:hidden;backface-visibility:hidden}.fancybox-image,.fancybox-placeholder,.fancybox-spaceball{position:absolute;top:0;left:0;margin:0;padding:0;border:0}.fancybox-image,.fancybox-spaceball{width:100%;height:100%;max-width:none;max-height:none;background:transparent;background-size:100% 100%}.fancybox-controls--canzoomOut .fancybox-placeholder{cursor:zoom-out}.fancybox-controls--canzoomIn .fancybox-placeholder{cursor:zoom-in}.fancybox-controls--canGrab .fancybox-placeholder{cursor:-webkit-grab;cursor:grab}.fancybox-controls--isGrabbing .fancybox-placeholder{cursor:-webkit-grabbing;cursor:grabbing}.fancybox-spaceball{z-index:1}.fancybox-tmp{position:absolute;top:-9999px;left:-9999px;visibility:hidden}.fancybox-error{position:absolute;margin:0;padding:40px;top:50%;left:50%;width:380px;max-width:100%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);background:#fff;cursor:default}.fancybox-error p{margin:0;padding:0;color:#444;font:16px/20px Helvetica Neue,Helvetica,Arial,sans-serif}.fancybox-close-small{position:absolute;top:0;right:0;width:44px;height:44px;padding:0;margin:0;border:0;border-radius:0;outline:none;background:transparent;z-index:10;cursor:pointer}.fancybox-close-small:after{content:"×";position:absolute;top:5px;right:5px;width:30px;height:30px;font:20px/30px Arial,Helvetica Neue,Helvetica,sans-serif;color:#888;font-weight:300;text-align:center;border-radius:50%;border-width:0;background:#fff;transition:background .2s;box-sizing:border-box;z-index:2}.fancybox-close-small:focus:after{outline:1px dotted #888}.fancybox-slide--video .fancybox-close-small{top:-36px;right:-36px;background:transparent}.fancybox-close-small:hover:after{color:#555;background:#eee}.fancybox-caption-wrap{position:absolute;bottom:0;left:0;right:0;padding:60px 30px 0;z-index:99998;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-sizing:border-box;background:linear-gradient(180deg,transparent 0,rgba(0,0,0,.1) 20%,rgba(0,0,0,.2) 40%,rgba(0,0,0,.6) 80%,rgba(0,0,0,.8));opacity:0;transition:opacity .2s;pointer-events:none}.fancybox-show-caption .fancybox-caption-wrap{opacity:1}.fancybox-caption{padding:30px 0;border-top:1px solid hsla(0,0%,100%,.4);font-size:14px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;color:#fff;line-height:20px;-webkit-text-size-adjust:none}.fancybox-caption a,.fancybox-caption button{pointer-events:all}.fancybox-caption a{color:#fff;text-decoration:underline}.fancybox-button{display:inline-block;position:relative;width:44px;height:44px;line-height:44px;margin:0;padding:0;border:0;border-radius:0;cursor:pointer;background:transparent;color:#fff;box-sizing:border-box;vertical-align:top;outline:none}.fancybox-button--disabled{cursor:default;pointer-events:none}.fancybox-button,.fancybox-infobar__body{background:rgba(30,30,30,.6)}.fancybox-button:hover{background:rgba(0,0,0,.8)}.fancybox-button:after,.fancybox-button:before{content:"";pointer-events:none;position:absolute;border-color:#fff;background-color:currentColor;color:currentColor;opacity:.9;box-sizing:border-box;display:inline-block}.fancybox-button--disabled:after,.fancybox-button--disabled:before{opacity:.5}.fancybox-button--left:after{left:20px;-webkit-transform:rotate(-135deg);transform:rotate(-135deg)}.fancybox-button--left:after,.fancybox-button--right:after{top:18px;width:6px;height:6px;background:transparent;border-top:2px solid currentColor;border-right:2px solid currentColor}.fancybox-button--right:after{right:20px;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.fancybox-button--left{border-bottom-left-radius:5px}.fancybox-button--right{border-bottom-right-radius:5px}.fancybox-button--close{float:right}.fancybox-button--close:after,.fancybox-button--close:before{content:"";display:inline-block;position:absolute;height:2px;width:16px;top:calc(50% - 1px);left:calc(50% - 8px)}.fancybox-button--close:before{-webkit-transform:rotate(45deg);transform:rotate(45deg)}.fancybox-button--close:after{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.fancybox-loading{border:6px solid hsla(0,0%,39%,.4);border-top:6px solid hsla(0,0%,100%,.6);border-radius:100%;height:50px;width:50px;-webkit-animation:a .8s infinite linear;animation:a .8s infinite linear;background:transparent;position:absolute;top:50%;left:50%;margin-top:-25px;margin-left:-25px;z-index:99999}@-webkit-keyframes a{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes a{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@media (max-width:800px){.fancybox-controls{text-align:left}.fancybox-button--left,.fancybox-button--right,.fancybox-buttons button:not(.fancybox-button--close){display:none!important}.fancybox-caption{padding:20px 0;margin:0}}.fancybox-button--fullscreen:before{width:15px;height:11px;left:15px;top:16px;border:2px solid;background:none}.fancybox-button--play:before{top:16px;left:18px;width:0;height:0;border-top:6px inset transparent;border-bottom:6px inset transparent;border-left:10px solid;border-radius:1px;background:transparent}.fancybox-button--pause:before{top:16px;left:18px;width:7px;height:11px;border-style:solid;border-width:0 2px;background:transparent}.fancybox-button--thumbs span{font-size:23px}.fancybox-button--thumbs:before{top:20px;left:21px;width:3px;height:3px;box-shadow:0 -4px 0,-4px -4px 0,4px -4px 0,inset 0 0 0 32px,-4px 0 0,4px 0 0,0 4px 0,-4px 4px 0,4px 4px 0}.fancybox-container--thumbs .fancybox-caption-wrap,.fancybox-container--thumbs .fancybox-controls,.fancybox-container--thumbs .fancybox-slider-wrap{right:220px}.fancybox-thumbs{position:absolute;top:0;right:0;bottom:0;left:auto;width:220px;margin:0;padding:5px 5px 0 0;background:#fff;z-index:99993;word-break:normal;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:transparent;box-sizing:border-box}.fancybox-thumbs>ul{list-style:none;position:absolute;position:relative;width:100%;height:100%;margin:0;padding:0;overflow-x:hidden;overflow-y:auto;font-size:0}.fancybox-thumbs>ul>li{float:left;overflow:hidden;max-width:50%;padding:0;margin:0;width:105px;height:75px;position:relative;cursor:pointer;outline:none;border:5px solid #fff;border-top-width:0;border-right-width:0;-webkit-tap-highlight-color:transparent;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-sizing:border-box}li.fancybox-thumbs-loading{background:rgba(0,0,0,.1)}.fancybox-thumbs>ul>li>img{position:absolute;top:0;left:0;min-width:100%;min-height:100%;max-width:none;max-height:none;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.fancybox-thumbs>ul>li:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:2px;border:4px solid #4ea7f9;z-index:99991;opacity:0;transition:all .2s cubic-bezier(.25,.46,.45,.94)}.fancybox-thumbs>ul>li.fancybox-thumbs-active:before{opacity:1}@media (max-width:800px){.fancybox-thumbs{display:none!important}.fancybox-container--thumbs .fancybox-caption-wrap,.fancybox-container--thumbs .fancybox-controls,.fancybox-container--thumbs .fancybox-slider-wrap{right:0}}
#loading-custom {
    width: 100%;
    height: 100%;
    /*position: absolute;*/
    position: fixed;
    background: black;
    opacity:0.7;
    z-index: 10000;
    top: 0;
    left: 0;
    overflow: auto;
}

#loading-bar-spinner-custom {
    pointer-events: none;
    -webkit-pointer-events: none;
    -webkit-transition: 350ms linear all;
    -moz-transition: 350ms linear all;
    -o-transition: 350ms linear all;
    transition: 350ms linear all;
}

#loading-bar-spinner-custom.ng-enter,
#loading-bar-spinner-custom.ng-leave.ng-leave-active {
    opacity: 0;
}

#loading-bar-spinner-custom.ng-enter.ng-enter-active,
#loading-bar-spinner-custom.ng-leave {
    opacity: 1;
}

#loading-bar-spinner-custom {
    display: block;
    position: fixed;
    z-index: 10002;
    top: 50%;
    left: 50%;
    margin-left:-50px;
    margin-top:-50px;
}

#loading-bar-spinner-custom .spinner-icon-custom {
    width: 100px;
    height: 100px;

    border:  solid 10px transparent;
    border-top-color:  #29d;
    border-left-color: #29d;
    border-radius: 50%;

    -webkit-animation: loading-bar-spinner 400ms linear infinite;
    -moz-animation:    loading-bar-spinner 400ms linear infinite;
    -ms-animation:     loading-bar-spinner 400ms linear infinite;
    -o-animation:      loading-bar-spinner 400ms linear infinite;
    animation:         loading-bar-spinner 400ms linear infinite;
}
